diff --git a/client/src/modules/contentmanager.js b/client/src/modules/contentmanager.js index c53bbaf1..2a806b68 100644 --- a/client/src/modules/contentmanager.js +++ b/client/src/modules/contentmanager.js @@ -173,6 +173,7 @@ export default class { const configs = { defaultConfig: readConfig.defaultConfig, + schemes: readConfig.configSchemes, userConfig } diff --git a/client/src/modules/plugin.js b/client/src/modules/plugin.js index 3c944897..0a4aa768 100644 --- a/client/src/modules/plugin.js +++ b/client/src/modules/plugin.js @@ -51,6 +51,7 @@ export default class Plugin { get main() { return this.__pluginInternals.main } get defaultConfig() { return this.configs.defaultConfig } get userConfig() { return this.configs.userConfig } + get configSchemes() { return this.configs.schemes } get id() { return this.info.id || this.name.replace(/[^a-zA-Z0-9-]/g, '-').replace(/--/g, '-') } get name() { return this.info.name } get authors() { return this.info.authors } diff --git a/client/src/modules/theme.js b/client/src/modules/theme.js index 34081010..2bfcb5f6 100644 --- a/client/src/modules/theme.js +++ b/client/src/modules/theme.js @@ -51,6 +51,7 @@ export default class Theme { get main() { return this.__themeInternals.main } get defaultConfig() { return this.configs.defaultConfig } get userConfig() { return this.configs.userConfig } + get configSchemes() { return this.configs.schemes } get id() { return this.info.id || this.name.toLowerCase().replace(/[^a-zA-Z0-9-]/g, '-').replace(/\s+/g, '-') } get name() { return this.info.name } get authors() { return this.info.authors } diff --git a/client/src/styles/partials/bdsettings/index.scss b/client/src/styles/partials/bdsettings/index.scss index 9b482385..258a9019 100644 --- a/client/src/styles/partials/bdsettings/index.scss +++ b/client/src/styles/partials/bdsettings/index.scss @@ -3,3 +3,4 @@ @import './plugins.scss'; @import './card.scss'; @import './tooltips.scss'; +@import './settings-schemes.scss'; diff --git a/client/src/styles/partials/bdsettings/settings-schemes.scss b/client/src/styles/partials/bdsettings/settings-schemes.scss new file mode 100644 index 00000000..b7cdf98b --- /dev/null +++ b/client/src/styles/partials/bdsettings/settings-schemes.scss @@ -0,0 +1,56 @@ +.bd-settings-schemes { + margin-bottom: 15px; + border-bottom: 1px solid rgba(114, 118, 126, 0.3); + + .bd-settings-schemes-container { + margin-right: -15px; + } +} + +.bd-settings-scheme { + display: inline-block; + width: calc(33.3% - 15px); + margin: 0 15px 15px 0; + cursor: pointer; + vertical-align: top; + + .bd-settings-modal & { + width: calc(50% - 15px); + + .bd-settings-scheme-icon { + height: 120px; + } + } + + .bd-settings-scheme-icon { + box-sizing: border-box; + width: 100%; + height: 120px; + border: 2px solid $coldimwhite; + border-radius: 3px; + transition: border-color 0.2s ease; + margin-bottom: 15px; + background: center / cover no-repeat #2f3136; + } + + .bd-settings-scheme-name { + font-weight: 500; + color: #f6f6f7; + } + + .bd-settings-scheme-hint { + flex: 1 1 auto; + color: #72767d; + font-size: 14px; + font-weight: 500; + margin-top: 10px; + } + + &.bd-active { + cursor: default; + + .bd-settings-scheme-icon { + border-color: $colbdblue; + } + } +} diff --git a/client/src/ui/components/BdSettings.vue b/client/src/ui/components/BdSettings.vue index 986848b6..b3073676 100644 --- a/client/src/ui/components/BdSettings.vue +++ b/client/src/ui/components/BdSettings.vue @@ -33,7 +33,7 @@
- +
diff --git a/client/src/ui/components/bd/SettingsPanel.vue b/client/src/ui/components/bd/SettingsPanel.vue index 2ed3b8f8..ee20c27b 100644 --- a/client/src/ui/components/bd/SettingsPanel.vue +++ b/client/src/ui/components/bd/SettingsPanel.vue @@ -9,39 +9,93 @@ */