theme tab support

This commit is contained in:
Henry Jameson 2025-07-02 23:24:19 +03:00
commit 1bc53262d6
2 changed files with 8 additions and 9 deletions

View file

@ -31,6 +31,7 @@ import {
getCssRules, getCssRules,
getScopedVersion getScopedVersion
} from 'src/services/theme_data/css_utils.js' } from 'src/services/theme_data/css_utils.js'
import { createStyleSheet, adoptStyleSheets } from 'src/services/style_setter/style_setter.js'
import ColorInput from 'src/components/color_input/color_input.vue' import ColorInput from 'src/components/color_input/color_input.vue'
import RangeInput from 'src/components/range_input/range_input.vue' import RangeInput from 'src/components/range_input/range_input.vue'
@ -68,7 +69,6 @@ const colorConvert = (color) => {
export default { export default {
data () { data () {
return { return {
themeV3Preview: [],
themeImporter: newImporter({ themeImporter: newImporter({
validator: this.importValidator, validator: this.importValidator,
onImport: this.onImport, onImport: this.onImport,
@ -697,10 +697,15 @@ export default {
liteMode: true liteMode: true
}) })
this.themeV3Preview = getScopedVersion( const sheet = createStyleSheet('theme-tab-overall-preview')
const rule = getScopedVersion(
getCssRules(theme3.eager), getCssRules(theme3.eager),
'#theme-preview' '&'
).join('\n') ).join('\n')
sheet.addRule('#theme-preview {\n' + rule + '\n}')
sheet.ready = true
adoptStyleSheets()
} }
}, },
watch: { watch: {

View file

@ -123,12 +123,6 @@
</div> </div>
</div> </div>
<!-- eslint-disable vue/no-v-html vue/no-v-text-v-html-on-component -->
<component
:is="'style'"
v-html="themeV3Preview"
/>
<!-- eslint-enable vue/no-v-html vue/no-v-text-v-html-on-component -->
<preview id="theme-preview" /> <preview id="theme-preview" />
<div> <div>