diff --git a/client/src/styles/partials/generic/forms/text.scss b/client/src/styles/partials/generic/forms/text.scss index 738af627..9bd64a7c 100644 --- a/client/src/styles/partials/generic/forms/text.scss +++ b/client/src/styles/partials/generic/forms/text.scss @@ -139,3 +139,48 @@ } } } + +.bd-textInput { + background-color: rgba(0, 0, 0, 0.1); + border: 1px solid rgba(0, 0, 0, 0.3); + border-radius: 3px; + box-sizing: border-box; + color: #f6f6f7; + font-size: 14px; + transition: border .5s ease; + + &:focus { + border: 1px solid #3ecc9c; + } +} + +.bd-fancySearch { + display: flex; + justify-content: flex-end; + transform: translateY(80px) translateX(-140px); + transition: all .5s ease-in-out; + + &::before { + content: "Search by name, description or tag..."; + color: #f6f6f7; + position: relative; + top: -20px; + left: 245px; + transition: opacity .5s ease-in-out; + } + + &.bd-active { + transform: none; + + &::before { + opacity: 0; + } + } + + .bd-textInput { + padding: 10px; + display: flex; + min-height: 40px; + width: 250px; + } +} diff --git a/client/src/ui/components/bd/ThemesView.vue b/client/src/ui/components/bd/ThemesView.vue index 1554aba3..70ad2c10 100644 --- a/client/src/ui/components/bd/ThemesView.vue +++ b/client/src/ui/components/bd/ThemesView.vue @@ -26,6 +26,9 @@
+
+ +

Loading

@@ -66,7 +69,6 @@ async showOnline() { this.local = false; if (this.loadingOnline || this.onlineThemes) return; - await this.refreshOnline(); }, async refreshLocal() { await this.ThemeManager.refreshThemes(); @@ -136,6 +138,10 @@ return Modals.contentSettings(theme, null, { dont_clone }); + }, + searchInput(e) { + this.loadingOnline = true; + setTimeout(this.refreshOnline, 1000); } } }