diff --git a/src/config/defaultKhanegiUiConfig.ts b/src/config/defaultKhanegiUiConfig.ts index 1029512..91fd27e 100644 --- a/src/config/defaultKhanegiUiConfig.ts +++ b/src/config/defaultKhanegiUiConfig.ts @@ -80,6 +80,7 @@ export function createDefaultKhanegiUiConfig() { light: { ...navyGoldLight }, }, borderRadius: { sm: 8, md: 12, lg: 16 }, + buttonGradient: true, }, navigation: { type: 'both', diff --git a/src/pages/UiConfigPage.vue b/src/pages/UiConfigPage.vue index bbce5fe..3596adc 100644 --- a/src/pages/UiConfigPage.vue +++ b/src/pages/UiConfigPage.vue @@ -179,6 +179,21 @@ function onSidebarDragEnd() { const hasDefaultSnapshot = computed(() => Boolean(config.defaultSnapshot)) const isCustom = computed(() => selectedPreset.value === 'custom') +const buttonGradientEnabled = computed({ + get: () => (config.app?.theme as any)?.buttonGradient !== false, + set: (val: boolean) => { + if (!config.app.theme) return + ;(config.app.theme as any).buttonGradient = val + }, +}) + +function onButtonGradientChange(val: boolean) { + selectedPreset.value = 'custom' + config.app.theme.presetId = 'custom' + ;(config.app.theme as any).buttonGradient = val + syncAdvancedJson() +} + /** رنگ‌های همان حالتی که در پیش‌نمایش دیده می‌شود (dark/light) */ const activePreviewColors = computed(() => { const schemes = config.app.theme.schemes @@ -576,6 +591,24 @@ onMounted(load) +
+
+
+

سایه و گرادیانت طلایی دکمه‌ها

+

+ نمایش هاله و گرادیانت طلایی زیر دکمه‌های اصلی و فرم‌ها در اپلیکیشن +

+
+ +
+
+

رنگ‌ها {{ isCustom ? '(سفارشی)' : '(فقط‌خواندنی تا انتخاب سفارشی)' }}