@owp/core 2.5.8 → 2.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/index16.js +4 -4
- package/dist/_virtual/index17.js +4 -4
- package/dist/_virtual/index18.js +4 -4
- package/dist/_virtual/index19.js +4 -4
- package/dist/components/OwpDialog/OwpDialog.js +67 -46
- package/dist/components/OwpDialog/OwpDialog.js.map +1 -1
- package/dist/components/OwpSelectorBase/OwpSelectorAutocomplete.js +162 -153
- package/dist/components/OwpSelectorBase/OwpSelectorAutocomplete.js.map +1 -1
- package/dist/components/OwpTable/OwpDataTable.js +297 -283
- package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
- package/dist/components/OwpTable/OwpFieldTable.js +98 -86
- package/dist/components/OwpTable/OwpFieldTable.js.map +1 -1
- package/dist/components/OwpTable/OwpTable.js +145 -127
- package/dist/components/OwpTable/OwpTable.js.map +1 -1
- package/dist/components/OwpTable/internal/defaultTableStyle.js +21 -15
- package/dist/components/OwpTable/internal/defaultTableStyle.js.map +1 -1
- package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js +195 -147
- package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js.map +1 -1
- package/dist/constants/tableTheme.js.map +1 -1
- package/dist/features/themePreview/components/ThemePreviewCanvas.js +300 -263
- package/dist/features/themePreview/components/ThemePreviewCanvas.js.map +1 -1
- package/dist/features/themePreview/components/ThemePreviewCanvasSections.js +148 -141
- package/dist/features/themePreview/components/ThemePreviewCanvasSections.js.map +1 -1
- package/dist/features/themePreview/components/ThemePreviewColorField.js +168 -138
- package/dist/features/themePreview/components/ThemePreviewColorField.js.map +1 -1
- package/dist/features/themePreview/components/ThemePreviewControls.js +410 -218
- package/dist/features/themePreview/components/ThemePreviewControls.js.map +1 -1
- package/dist/features/themePreview/components/themePreviewCanvas.shared.js +145 -125
- package/dist/features/themePreview/components/themePreviewCanvas.shared.js.map +1 -1
- package/dist/features/themePreview/configs/table.js +4 -2
- package/dist/features/themePreview/configs/table.js.map +1 -1
- package/dist/features/themePreview/dialogs/ThemePreviewDialog.js +124 -118
- package/dist/features/themePreview/dialogs/ThemePreviewDialog.js.map +1 -1
- package/dist/features/themePreview/hooks/useThemePreview.js +275 -193
- package/dist/features/themePreview/hooks/useThemePreview.js.map +1 -1
- package/dist/features/themePreview/utils/themePreviewDefinitions.js +8 -0
- package/dist/features/themePreview/utils/themePreviewDefinitions.js.map +1 -1
- package/dist/features/themePreview/utils/themePreviewSettings.js +188 -151
- package/dist/features/themePreview/utils/themePreviewSettings.js.map +1 -1
- package/dist/features/themePreview.js +18 -17
- package/dist/layout/components/toggles/NavigationSearchToggle.js +3 -3
- package/dist/layout/components/toolbar/ToolbarLayout.js +36 -35
- package/dist/layout/components/toolbar/ToolbarLayout.js.map +1 -1
- package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/RestartAltOutlined.js +9 -0
- package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/RestartAltOutlined.js.map +1 -0
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/constants.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
- package/dist/node_modules/.pnpm/react-overlays@5.2.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/react-overlays/esm/Portal.js +1 -1
- package/dist/owp-app.css +1 -1
- package/dist/types/components/OwpDialog/OwpDialog.d.ts +2 -0
- package/dist/types/components/OwpTable/OwpFieldTable.d.ts +3 -2
- package/dist/types/components/OwpTable/internal/defaultTableStyle.d.ts +2 -0
- package/dist/types/constants/tableTheme.d.ts +1 -0
- package/dist/types/features/themePreview/components/ThemePreviewColorField.d.ts +3 -1
- package/dist/types/features/themePreview/components/ThemePreviewControls.d.ts +4 -1
- package/dist/types/features/themePreview/configs/settings.d.ts +2 -0
- package/dist/types/features/themePreview/configs/table.d.ts +2 -0
- package/dist/types/features/themePreview/hooks/useThemePreview.d.ts +3 -0
- package/dist/types/features/themePreview/utils/index.d.ts +1 -1
- package/dist/types/features/themePreview/utils/themePreviewSettings.d.ts +11 -1
- package/dist/types/types/OwpTableThemeTypes.d.ts +8 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useThemePreview.js","sources":["../../../../src/features/themePreview/hooks/useThemePreview.ts"],"sourcesContent":["import {\n clearThemePreviewAppliedSettings,\n getThemePreviewTemporaryState,\n persistThemePreviewAppliedSettings,\n persistThemePreviewTemporaryState,\n type ThemePreviewTemporaryState,\n} from '@/features/themePreview/configs/previewStorage';\nimport {\n defaultSnackbarProviderProps,\n defaultSnackbarTheme,\n type SnackbarProviderTheme,\n} from '@/features/themePreview/configs/snackbar';\nimport { useGetCurrentSettings, useSetDefaultSettings } from '@/hooks';\nimport type { OwpSettingsConfigType } from '@/types';\nimport { isEqual, merge } from 'es-toolkit/compat';\nimport { useMemo, useState } from 'react';\nimport type { PartialDeep } from 'type-fest';\nimport type {\n ThemePreviewMode,\n ThemePreviewPresetKeyBySection,\n ThemePreviewPresetSectionKey,\n ThemePreviewPresetThemes,\n ThemePreviewSectionKey,\n ThemePreviewSettings,\n} from '../types';\nimport {\n applyThemePreviewPreset,\n cloneThemePreviewSettings,\n getThemePreviewDraftSettings,\n getThemePreviewPresetOptions,\n getThemePreviewPresetOptionsByMode,\n getThemePreviewResetSettings,\n getThemePreviewSelectionState,\n isThemePreviewCustomSection,\n setThemePreviewDraftSettings,\n setThemePreviewPaletteValue,\n setThemePreviewPaletteValues,\n setThemePreviewSelectionState,\n THEME_PREVIEW_CUSTOM_PRESET_KEY,\n} from '../utils';\nimport dayjs from 'dayjs';\n\ninterface UseThemePreviewOptions {\n initialSection?: ThemePreviewSectionKey;\n initialPresetKeys: ThemePreviewPresetKeyBySection;\n presetThemes: ThemePreviewPresetThemes;\n resetTheme: PartialDeep<OwpSettingsConfigType['theme']>;\n}\n\ntype ThemePreviewSettingsWithSnackbarProviderProps = OwpSettingsConfigType & {\n snackbarProviderProps?: SnackbarProviderTheme;\n};\n\nconst themePreviewCustomPresetKeys = {\n main: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n navbar: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n toolbar: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n} satisfies ThemePreviewPresetKeyBySection;\n\nfunction isThemePreviewPresetSectionKey(\n sectionKey: ThemePreviewSectionKey,\n): sectionKey is ThemePreviewPresetSectionKey {\n return !isThemePreviewCustomSection(sectionKey);\n}\n\nfunction getThemePreviewSelectedModes(settings: OwpSettingsConfigType) {\n return {\n main: settings.theme.main.palette.mode === 'dark' ? 'dark' : 'light',\n navbar: settings.theme.navbar.palette.mode === 'dark' ? 'dark' : 'light',\n toolbar: settings.theme.toolbar.palette.mode === 'dark' ? 'dark' : 'light',\n } satisfies Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n}\n\nfunction createThemePreviewTemporaryState(\n activeSection: ThemePreviewSectionKey,\n draftSettings: ThemePreviewSettings,\n selectedPresetKeys: ThemePreviewPresetKeyBySection,\n selectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n saveType: ThemePreviewTemporaryState['saveType'],\n) {\n return {\n draftSettings: cloneThemePreviewSettings(draftSettings),\n savedAt: dayjs().toISOString(),\n saveType,\n selectionState: {\n activeSection,\n selectedModes,\n selectedPresetKeys,\n },\n version: 1,\n } satisfies ThemePreviewTemporaryState;\n}\n\nfunction createThemePreviewTemporaryComparableState(\n activeSection: ThemePreviewSectionKey,\n draftSettings: ThemePreviewSettings,\n selectedPresetKeys: ThemePreviewPresetKeyBySection,\n selectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n) {\n return {\n draftSettings,\n selectionState: {\n activeSection,\n selectedModes,\n selectedPresetKeys,\n },\n };\n}\n\nexport function useThemePreview({\n initialSection = 'main',\n initialPresetKeys: _initialPresetKeys,\n presetThemes,\n resetTheme,\n}: UseThemePreviewOptions) {\n const currentSettings = useGetCurrentSettings() as OwpSettingsConfigType;\n const setDefaultSettings = useSetDefaultSettings();\n const presetOptions = useMemo(() => getThemePreviewPresetOptions(presetThemes), [presetThemes]);\n const initialDraftSettings = getThemePreviewDraftSettings(currentSettings);\n const initialSelectionState = useMemo(\n () => getThemePreviewSelectionState(currentSettings, _initialPresetKeys),\n [currentSettings, _initialPresetKeys],\n );\n const resetSettings = useMemo(\n () => getThemePreviewResetSettings(currentSettings, resetTheme, defaultSnackbarTheme),\n [currentSettings, resetTheme],\n );\n const currentSnackbarTheme = useMemo(\n () => merge({}, defaultSnackbarTheme, currentSettings.snackbar),\n [currentSettings],\n );\n const currentSnackbarProviderProps = useMemo(\n () =>\n merge(\n {},\n defaultSnackbarProviderProps,\n (currentSettings as ThemePreviewSettingsWithSnackbarProviderProps)\n .snackbarProviderProps,\n ) as SnackbarProviderTheme,\n [currentSettings],\n );\n\n const [activeSection, setActiveSection] = useState<ThemePreviewSectionKey>(initialSection);\n const [draftSettings, setDraftSettings] = useState<ThemePreviewSettings>(() => initialDraftSettings);\n const [selectedPresetKeys, setSelectedPresetKeys] = useState<ThemePreviewPresetKeyBySection>(\n initialSelectionState.selectedPresetKeys,\n );\n const [selectedModes, setSelectedModes] = useState<\n Record<ThemePreviewPresetSectionKey, ThemePreviewMode>\n >(initialSelectionState.selectedModes);\n const [temporarySnapshot, setTemporarySnapshot] = useState(() => getThemePreviewTemporaryState());\n const [temporaryComparableSnapshot, setTemporaryComparableSnapshot] = useState(() =>\n createThemePreviewTemporaryComparableState(\n initialSection,\n initialDraftSettings,\n initialSelectionState.selectedPresetKeys,\n initialSelectionState.selectedModes,\n ),\n );\n const hasTemporarySnapshot = Boolean(temporarySnapshot);\n const hasTemporaryChanges =\n !isEqual(\n createThemePreviewTemporaryComparableState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n ),\n temporaryComparableSnapshot,\n );\n const canApplyToMain =\n !isEqual(currentSettings.theme, draftSettings.theme) ||\n !isEqual(currentSnackbarTheme, draftSettings.snackbar) ||\n !isEqual(currentSnackbarProviderProps, draftSettings.snackbarProviderProps);\n\n const persistSelectionState = (\n nextPresetKeys: ThemePreviewPresetKeyBySection,\n nextSelectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n ) => {\n setThemePreviewSelectionState({\n selectedPresetKeys: nextPresetKeys,\n selectedModes: nextSelectedModes,\n });\n };\n\n const persistDraftSettings = (nextDraftSettings: ThemePreviewSettings) => {\n setThemePreviewDraftSettings(nextDraftSettings);\n return nextDraftSettings;\n };\n const commitDraftSettings = (nextDraftSettings: ThemePreviewSettings) => {\n setDraftSettings(nextDraftSettings);\n return persistDraftSettings(nextDraftSettings);\n };\n\n const commitSelectionState = (\n nextPresetKeys: ThemePreviewPresetKeyBySection,\n nextSelectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n ) => {\n setSelectedPresetKeys(nextPresetKeys);\n setSelectedModes(nextSelectedModes);\n persistSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handlePaletteValueChange = (path: string, value: string) => {\n commitDraftSettings(setThemePreviewPaletteValue(draftSettings, activeSection, path, value));\n\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n };\n\n commitSelectionState(nextPresetKeys, selectedModes);\n };\n\n const handlePaletteValuesChange = (updates: Array<{ path: string; value: string }>) => {\n if (!updates.length) {\n return;\n }\n\n commitDraftSettings(setThemePreviewPaletteValues(draftSettings, activeSection, updates));\n\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n };\n\n commitSelectionState(nextPresetKeys, selectedModes);\n };\n\n const handlePresetModeChange = (mode: ThemePreviewMode) => {\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextSelectedModes = {\n ...selectedModes,\n [activeSection]: mode,\n };\n\n const nextPresetOption = getThemePreviewPresetOptionsByMode(\n presetOptions,\n activeSection,\n mode,\n )[0];\n\n if (!nextPresetOption) {\n commitSelectionState(selectedPresetKeys, nextSelectedModes);\n return;\n }\n\n const presetTheme = presetThemes[nextPresetOption.key];\n\n if (!presetTheme) {\n commitSelectionState(selectedPresetKeys, nextSelectedModes);\n return;\n }\n\n commitDraftSettings(applyThemePreviewPreset(draftSettings, activeSection, presetTheme));\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: nextPresetOption.key,\n };\n\n commitSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handlePresetKeyChange = (presetKey: string) => {\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n if (presetKey === THEME_PREVIEW_CUSTOM_PRESET_KEY) {\n return;\n }\n\n const presetTheme = presetThemes[presetKey];\n\n if (!presetTheme) {\n return;\n }\n\n commitDraftSettings(applyThemePreviewPreset(draftSettings, activeSection, presetTheme));\n const nextSelectedModes = {\n ...selectedModes,\n [activeSection]: presetTheme.palette.mode === 'dark' ? 'dark' : 'light',\n };\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: presetKey,\n };\n\n commitSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handleReset = () => {\n const nextDraftSettings = merge({}, cloneThemePreviewSettings(resetSettings), {\n snackbarProviderProps: defaultSnackbarProviderProps,\n }) as ThemePreviewSettings;\n const nextSelectedModes = {\n main: resetTheme.main?.palette?.mode === 'dark' ? 'dark' : 'light',\n navbar: resetTheme.navbar?.palette?.mode === 'dark' ? 'dark' : 'light',\n toolbar: resetTheme.toolbar?.palette?.mode === 'dark' ? 'dark' : 'light',\n } satisfies Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n\n commitDraftSettings(nextDraftSettings);\n commitSelectionState(_initialPresetKeys, nextSelectedModes);\n setTemporaryComparableSnapshot(\n createThemePreviewTemporaryComparableState(\n activeSection,\n nextDraftSettings,\n _initialPresetKeys,\n nextSelectedModes,\n ),\n );\n clearThemePreviewAppliedSettings();\n setDefaultSettings({\n theme: resetTheme,\n snackbar: defaultSnackbarTheme,\n snackbarProviderProps: defaultSnackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleApplyToMain = () => {\n const nextTemporaryState = createThemePreviewTemporaryState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n 'manual',\n );\n\n setThemePreviewDraftSettings(draftSettings);\n persistSelectionState(selectedPresetKeys, selectedModes);\n persistThemePreviewTemporaryState(nextTemporaryState);\n persistThemePreviewAppliedSettings({\n theme: draftSettings.theme,\n snackbar: draftSettings.snackbar,\n snackbarProviderProps: draftSettings.snackbarProviderProps,\n });\n setTemporarySnapshot(nextTemporaryState);\n setTemporaryComparableSnapshot({\n draftSettings,\n selectionState: nextTemporaryState.selectionState,\n });\n setDefaultSettings({\n theme: draftSettings.theme,\n snackbar: draftSettings.snackbar,\n snackbarProviderProps: draftSettings.snackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleLoadSettings = (\n theme: OwpSettingsConfigType['theme'],\n snackbarTheme = defaultSnackbarTheme,\n snackbarProviderProps: SnackbarProviderTheme = defaultSnackbarProviderProps,\n ) => {\n const nextDraftSettings = merge({}, currentSettings, {\n theme,\n snackbar: merge({}, defaultSnackbarTheme, snackbarTheme),\n snackbarProviderProps: merge(\n {},\n defaultSnackbarProviderProps,\n snackbarProviderProps,\n ),\n }) as ThemePreviewSettings;\n const nextSelectedModes = getThemePreviewSelectedModes(nextDraftSettings);\n\n commitDraftSettings(nextDraftSettings);\n commitSelectionState(themePreviewCustomPresetKeys, nextSelectedModes);\n setTemporaryComparableSnapshot(\n createThemePreviewTemporaryComparableState(\n activeSection,\n nextDraftSettings,\n themePreviewCustomPresetKeys,\n nextSelectedModes,\n ),\n );\n persistThemePreviewAppliedSettings({\n theme,\n snackbar: nextDraftSettings.snackbar,\n snackbarProviderProps: nextDraftSettings.snackbarProviderProps,\n });\n setDefaultSettings({\n theme,\n snackbar: nextDraftSettings.snackbar,\n snackbarProviderProps: nextDraftSettings.snackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleTemporarySave = (saveType: ThemePreviewTemporaryState['saveType'] = 'manual') => {\n const nextTemporaryState = createThemePreviewTemporaryState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n saveType,\n );\n\n persistThemePreviewTemporaryState(nextTemporaryState);\n setTemporarySnapshot(nextTemporaryState);\n setTemporaryComparableSnapshot({\n draftSettings,\n selectionState: nextTemporaryState.selectionState,\n });\n };\n\n const handleTemporaryLoad = () => {\n const temporaryState = getThemePreviewTemporaryState();\n\n if (!temporaryState) {\n return false;\n }\n\n const nextDraftSettings = cloneThemePreviewSettings(\n merge({}, currentSettings, temporaryState.draftSettings) as ThemePreviewSettings,\n );\n const nextSelectedPresetKeys = merge(\n {},\n selectedPresetKeys,\n temporaryState.selectionState.selectedPresetKeys,\n ) as ThemePreviewPresetKeyBySection;\n const nextSelectedModes = merge(\n {},\n selectedModes,\n temporaryState.selectionState.selectedModes,\n ) as Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n const nextActiveSection = temporaryState.selectionState.activeSection;\n\n commitDraftSettings(nextDraftSettings);\n setActiveSection(nextActiveSection);\n commitSelectionState(nextSelectedPresetKeys, nextSelectedModes);\n setTemporarySnapshot(temporaryState);\n setTemporaryComparableSnapshot({\n draftSettings: nextDraftSettings,\n selectionState: temporaryState.selectionState,\n });\n\n return true;\n };\n\n return {\n activeSection,\n canApplyToMain,\n draftSettings,\n hasTemporaryChanges,\n hasTemporarySnapshot,\n presetOptions,\n selectedModes,\n selectedPresetKeys,\n setActiveSection,\n handlePaletteValueChange,\n handlePaletteValuesChange,\n handleApplyToMain,\n handleLoadSettings,\n handlePresetKeyChange,\n handlePresetModeChange,\n handleReset,\n handleTemporaryLoad,\n handleTemporarySave,\n };\n}\n"],"names":["themePreviewCustomPresetKeys","THEME_PREVIEW_CUSTOM_PRESET_KEY","isThemePreviewPresetSectionKey","sectionKey","isThemePreviewCustomSection","__name","getThemePreviewSelectedModes","settings","createThemePreviewTemporaryState","activeSection","draftSettings","selectedPresetKeys","selectedModes","saveType","cloneThemePreviewSettings","dayjs","createThemePreviewTemporaryComparableState","useThemePreview","initialSection","_initialPresetKeys","presetThemes","resetTheme","currentSettings","useGetCurrentSettings","setDefaultSettings","useSetDefaultSettings","presetOptions","useMemo","getThemePreviewPresetOptions","initialDraftSettings","getThemePreviewDraftSettings","initialSelectionState","getThemePreviewSelectionState","resetSettings","getThemePreviewResetSettings","defaultSnackbarTheme","currentSnackbarTheme","merge","currentSnackbarProviderProps","defaultSnackbarProviderProps","setActiveSection","useState","setDraftSettings","setSelectedPresetKeys","setSelectedModes","temporarySnapshot","setTemporarySnapshot","getThemePreviewTemporaryState","temporaryComparableSnapshot","setTemporaryComparableSnapshot","hasTemporarySnapshot","hasTemporaryChanges","isEqual","canApplyToMain","persistSelectionState","nextPresetKeys","nextSelectedModes","setThemePreviewSelectionState","persistDraftSettings","nextDraftSettings","setThemePreviewDraftSettings","commitDraftSettings","commitSelectionState","path","value","setThemePreviewPaletteValue","updates","setThemePreviewPaletteValues","nextTemporaryState","persistThemePreviewTemporaryState","persistThemePreviewAppliedSettings","theme","snackbarTheme","snackbarProviderProps","presetKey","presetTheme","applyThemePreviewPreset","mode","nextPresetOption","getThemePreviewPresetOptionsByMode","_b","_a","_d","_c","_f","_e","clearThemePreviewAppliedSettings","temporaryState","nextSelectedPresetKeys","nextActiveSection"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useThemePreview.js","sources":["../../../../src/features/themePreview/hooks/useThemePreview.ts"],"sourcesContent":["import {\n clearThemePreviewAppliedSettings,\n getThemePreviewTemporaryState,\n persistThemePreviewAppliedSettings,\n persistThemePreviewTemporaryState,\n type ThemePreviewTemporaryState,\n} from '@/features/themePreview/configs/previewStorage';\nimport {\n defaultSnackbarProviderProps,\n defaultSnackbarTheme,\n type SnackbarProviderTheme,\n} from '@/features/themePreview/configs/snackbar';\nimport { useGetCurrentSettings, useSetDefaultSettings } from '@/hooks';\nimport type { OwpSettingsConfigType } from '@/types';\nimport { isEqual, merge } from 'es-toolkit/compat';\nimport { useMemo, useState } from 'react';\nimport type { PartialDeep } from 'type-fest';\nimport type {\n ThemePreviewMode,\n ThemePreviewPresetKeyBySection,\n ThemePreviewPresetSectionKey,\n ThemePreviewPresetThemes,\n ThemePreviewSectionKey,\n ThemePreviewSettings,\n} from '../types';\nimport {\n applyThemePreviewPreset,\n cloneThemePreviewSettings,\n getThemePreviewDraftSettings,\n getThemePreviewMatchedPresetKeys,\n getThemePreviewPresetOptions,\n getThemePreviewPresetOptionsByMode,\n getThemePreviewResetSettings,\n getThemePreviewSelectionState,\n isThemePreviewCustomSection,\n setThemePreviewDraftSettings,\n setThemePreviewPaletteValue,\n setThemePreviewPaletteValues,\n setThemePreviewSelectionState,\n THEME_PREVIEW_CUSTOM_PRESET_KEY,\n} from '../utils';\nimport dayjs from 'dayjs';\n\ninterface UseThemePreviewOptions {\n initialSection?: ThemePreviewSectionKey;\n initialPresetKeys: ThemePreviewPresetKeyBySection;\n presetThemes: ThemePreviewPresetThemes;\n resetTheme: PartialDeep<OwpSettingsConfigType['theme']>;\n}\n\ntype ThemePreviewSettingsWithSnackbarProviderProps = OwpSettingsConfigType & {\n snackbarProviderProps?: SnackbarProviderTheme;\n};\n\nconst THEME_PREVIEW_SNACKBAR_PROVIDER_PROPS_PATH_PREFIX = 'snackbarProviderProps.';\n\nfunction isThemePreviewPresetSectionKey(\n sectionKey: ThemePreviewSectionKey,\n): sectionKey is ThemePreviewPresetSectionKey {\n return !isThemePreviewCustomSection(sectionKey);\n}\n\nfunction getThemePreviewSelectedModes(settings: OwpSettingsConfigType) {\n return {\n main: settings.theme.main.palette.mode === 'dark' ? 'dark' : 'light',\n navbar: settings.theme.navbar.palette.mode === 'dark' ? 'dark' : 'light',\n toolbar: settings.theme.toolbar.palette.mode === 'dark' ? 'dark' : 'light',\n } satisfies Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n}\n\nfunction createThemePreviewTemporaryState(\n activeSection: ThemePreviewSectionKey,\n draftSettings: ThemePreviewSettings,\n selectedPresetKeys: ThemePreviewPresetKeyBySection,\n selectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n saveType: ThemePreviewTemporaryState['saveType'],\n) {\n return {\n draftSettings: cloneThemePreviewSettings(draftSettings),\n savedAt: dayjs().toISOString(),\n saveType,\n selectionState: {\n activeSection,\n selectedModes,\n selectedPresetKeys,\n },\n version: 1,\n } satisfies ThemePreviewTemporaryState;\n}\n\nfunction createThemePreviewTemporaryComparableState(\n activeSection: ThemePreviewSectionKey,\n draftSettings: ThemePreviewSettings,\n selectedPresetKeys: ThemePreviewPresetKeyBySection,\n selectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n) {\n return {\n draftSettings,\n selectionState: {\n activeSection,\n selectedModes,\n selectedPresetKeys,\n },\n };\n}\n\nfunction getResetSectionTarget(\n settings: ThemePreviewSettings,\n sectionKey: ThemePreviewSectionKey,\n) {\n switch (sectionKey) {\n case 'grid':\n return settings.theme.main.grid;\n case 'table':\n return settings.theme.main.table;\n case 'snackbar':\n return settings.snackbar;\n default:\n return settings.theme[sectionKey].palette;\n }\n}\n\nfunction canUseEmptyResetValue(sectionKey: ThemePreviewSectionKey) {\n return sectionKey === 'grid' || sectionKey === 'table';\n}\n\nfunction getResetPathValue(\n settings: ThemePreviewSettings,\n sectionKey: ThemePreviewSectionKey,\n path: string,\n) {\n const [pathSource, resolvedPath] = path.startsWith(THEME_PREVIEW_SNACKBAR_PROVIDER_PROPS_PATH_PREFIX)\n ? [\n settings.snackbarProviderProps,\n path.slice(THEME_PREVIEW_SNACKBAR_PROVIDER_PROPS_PATH_PREFIX.length),\n ]\n : [getResetSectionTarget(settings, sectionKey), path];\n\n const pathKeys = resolvedPath.split('.');\n let currentValue: unknown = pathSource;\n\n for (const pathKey of pathKeys) {\n if (\n !currentValue ||\n typeof currentValue !== 'object' ||\n !(pathKey in (currentValue as Record<string, unknown>))\n ) {\n return {\n found: false,\n value: '',\n } as const;\n }\n\n currentValue = (currentValue as Record<string, unknown>)[pathKey];\n }\n\n if (typeof currentValue === 'number') {\n return {\n found: true,\n value: String(currentValue),\n } as const;\n }\n\n if (typeof currentValue === 'string') {\n if (!currentValue.trim() && !canUseEmptyResetValue(sectionKey)) {\n return {\n found: false,\n value: '',\n } as const;\n }\n\n return {\n found: true,\n value: currentValue,\n } as const;\n }\n\n return {\n found: false,\n value: '',\n } as const;\n}\n\nexport function useThemePreview({\n initialSection = 'main',\n initialPresetKeys: _initialPresetKeys,\n presetThemes,\n resetTheme,\n}: UseThemePreviewOptions) {\n const currentSettings = useGetCurrentSettings() as OwpSettingsConfigType;\n const setDefaultSettings = useSetDefaultSettings();\n const presetOptions = useMemo(() => getThemePreviewPresetOptions(presetThemes), [presetThemes]);\n const initialDraftSettings = getThemePreviewDraftSettings(currentSettings);\n const [openedDraftSettings] = useState(() => cloneThemePreviewSettings(initialDraftSettings));\n const initialSelectionState = useMemo(\n () => getThemePreviewSelectionState(currentSettings, _initialPresetKeys, presetThemes),\n [currentSettings, _initialPresetKeys, presetThemes],\n );\n const resetSettings = useMemo(\n () => getThemePreviewResetSettings(currentSettings, resetTheme, defaultSnackbarTheme),\n [currentSettings, resetTheme],\n );\n const currentSnackbarTheme = useMemo(\n () => merge({}, defaultSnackbarTheme, currentSettings.snackbar),\n [currentSettings],\n );\n const currentSnackbarProviderProps = useMemo(\n () =>\n merge(\n {},\n defaultSnackbarProviderProps,\n (currentSettings as ThemePreviewSettingsWithSnackbarProviderProps)\n .snackbarProviderProps,\n ) as SnackbarProviderTheme,\n [currentSettings],\n );\n\n const [activeSection, setActiveSection] = useState<ThemePreviewSectionKey>(initialSection);\n const [draftSettings, setDraftSettings] = useState<ThemePreviewSettings>(() => initialDraftSettings);\n const [selectedPresetKeys, setSelectedPresetKeys] = useState<ThemePreviewPresetKeyBySection>(\n initialSelectionState.selectedPresetKeys,\n );\n const [selectedModes, setSelectedModes] = useState<\n Record<ThemePreviewPresetSectionKey, ThemePreviewMode>\n >(initialSelectionState.selectedModes);\n const [resetVersion, setResetVersion] = useState(0);\n const [temporarySnapshot, setTemporarySnapshot] = useState(() => getThemePreviewTemporaryState());\n const [temporaryComparableSnapshot, setTemporaryComparableSnapshot] = useState(() =>\n createThemePreviewTemporaryComparableState(\n initialSection,\n initialDraftSettings,\n initialSelectionState.selectedPresetKeys,\n initialSelectionState.selectedModes,\n ),\n );\n const hasTemporarySnapshot = Boolean(temporarySnapshot);\n const hasTemporaryChanges =\n !isEqual(\n createThemePreviewTemporaryComparableState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n ),\n temporaryComparableSnapshot,\n );\n const canApplyToMain =\n !isEqual(currentSettings.theme, draftSettings.theme) ||\n !isEqual(currentSnackbarTheme, draftSettings.snackbar) ||\n !isEqual(currentSnackbarProviderProps, draftSettings.snackbarProviderProps);\n\n const persistSelectionState = (\n nextPresetKeys: ThemePreviewPresetKeyBySection,\n nextSelectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n ) => {\n setThemePreviewSelectionState({\n selectedPresetKeys: nextPresetKeys,\n selectedModes: nextSelectedModes,\n });\n };\n\n const persistDraftSettings = (nextDraftSettings: ThemePreviewSettings) => {\n setThemePreviewDraftSettings(nextDraftSettings);\n return nextDraftSettings;\n };\n const commitDraftSettings = (nextDraftSettings: ThemePreviewSettings) => {\n setDraftSettings(nextDraftSettings);\n return persistDraftSettings(nextDraftSettings);\n };\n\n const commitSelectionState = (\n nextPresetKeys: ThemePreviewPresetKeyBySection,\n nextSelectedModes: Record<ThemePreviewPresetSectionKey, ThemePreviewMode>,\n ) => {\n setSelectedPresetKeys(nextPresetKeys);\n setSelectedModes(nextSelectedModes);\n persistSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handlePaletteValueChange = (path: string, value: string) => {\n const nextDraftSettings = setThemePreviewPaletteValue(draftSettings, activeSection, path, value);\n\n commitDraftSettings(nextDraftSettings);\n\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n };\n\n commitSelectionState(nextPresetKeys, selectedModes);\n };\n\n const handlePaletteValuesChange = (updates: Array<{ path: string; value: string }>) => {\n if (!updates.length) {\n return;\n }\n\n const nextDraftSettings = setThemePreviewPaletteValues(draftSettings, activeSection, updates);\n\n commitDraftSettings(nextDraftSettings);\n\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: THEME_PREVIEW_CUSTOM_PRESET_KEY,\n };\n\n commitSelectionState(nextPresetKeys, selectedModes);\n };\n\n const handlePaletteValuesReset = (paths: string[]) => {\n const uniquePaths = [...new Set(paths)];\n\n if (!uniquePaths.length) {\n return;\n }\n\n const updates = uniquePaths.map((path) => {\n const temporaryValue = temporarySnapshot\n ? getResetPathValue(\n temporarySnapshot.draftSettings as ThemePreviewSettings,\n activeSection,\n path,\n )\n : { found: false, value: '' };\n const initialValue = getResetPathValue(openedDraftSettings, activeSection, path);\n const currentValue = getResetPathValue(draftSettings, activeSection, path);\n\n return {\n path,\n value: temporaryValue.found\n ? temporaryValue.value\n : initialValue.found\n ? initialValue.value\n : currentValue.value,\n };\n });\n\n const nextDraftSettings = setThemePreviewPaletteValues(draftSettings, activeSection, updates);\n\n commitDraftSettings(nextDraftSettings);\n\n setResetVersion((prevState) => prevState + 1);\n };\n\n const handlePaletteValueReset = (path: string) => {\n handlePaletteValuesReset([path]);\n };\n\n const handlePresetModeChange = (mode: ThemePreviewMode) => {\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n const nextSelectedModes = {\n ...selectedModes,\n [activeSection]: mode,\n };\n\n const nextPresetOption = getThemePreviewPresetOptionsByMode(\n presetOptions,\n activeSection,\n mode,\n )[0];\n\n if (!nextPresetOption) {\n commitSelectionState(selectedPresetKeys, nextSelectedModes);\n return;\n }\n\n const presetTheme = presetThemes[nextPresetOption.key];\n\n if (!presetTheme) {\n commitSelectionState(selectedPresetKeys, nextSelectedModes);\n return;\n }\n\n commitDraftSettings(applyThemePreviewPreset(draftSettings, activeSection, presetTheme));\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: nextPresetOption.key,\n };\n\n commitSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handlePresetKeyChange = (presetKey: string) => {\n if (!isThemePreviewPresetSectionKey(activeSection)) {\n return;\n }\n\n if (presetKey === THEME_PREVIEW_CUSTOM_PRESET_KEY) {\n return;\n }\n\n const presetTheme = presetThemes[presetKey];\n\n if (!presetTheme) {\n return;\n }\n\n commitDraftSettings(applyThemePreviewPreset(draftSettings, activeSection, presetTheme));\n const nextSelectedModes = {\n ...selectedModes,\n [activeSection]: presetTheme.palette.mode === 'dark' ? 'dark' : 'light',\n };\n const nextPresetKeys = {\n ...selectedPresetKeys,\n [activeSection]: presetKey,\n };\n\n commitSelectionState(nextPresetKeys, nextSelectedModes);\n };\n\n const handleReset = () => {\n const nextDraftSettings = merge({}, cloneThemePreviewSettings(resetSettings), {\n snackbarProviderProps: defaultSnackbarProviderProps,\n }) as ThemePreviewSettings;\n const nextSelectedModes = {\n main: resetTheme.main?.palette?.mode === 'dark' ? 'dark' : 'light',\n navbar: resetTheme.navbar?.palette?.mode === 'dark' ? 'dark' : 'light',\n toolbar: resetTheme.toolbar?.palette?.mode === 'dark' ? 'dark' : 'light',\n } satisfies Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n\n commitDraftSettings(nextDraftSettings);\n commitSelectionState(_initialPresetKeys, nextSelectedModes);\n setTemporaryComparableSnapshot(\n createThemePreviewTemporaryComparableState(\n activeSection,\n nextDraftSettings,\n _initialPresetKeys,\n nextSelectedModes,\n ),\n );\n clearThemePreviewAppliedSettings();\n setDefaultSettings({\n theme: resetTheme,\n snackbar: defaultSnackbarTheme,\n snackbarProviderProps: defaultSnackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleApplyToMain = () => {\n const nextTemporaryState = createThemePreviewTemporaryState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n 'manual',\n );\n\n setThemePreviewDraftSettings(draftSettings);\n persistSelectionState(selectedPresetKeys, selectedModes);\n persistThemePreviewTemporaryState(nextTemporaryState);\n persistThemePreviewAppliedSettings({\n theme: draftSettings.theme,\n snackbar: draftSettings.snackbar,\n snackbarProviderProps: draftSettings.snackbarProviderProps,\n });\n setTemporarySnapshot(nextTemporaryState);\n setTemporaryComparableSnapshot({\n draftSettings,\n selectionState: nextTemporaryState.selectionState,\n });\n setDefaultSettings({\n theme: draftSettings.theme,\n snackbar: draftSettings.snackbar,\n snackbarProviderProps: draftSettings.snackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleLoadSettings = (\n theme: OwpSettingsConfigType['theme'],\n snackbarTheme = defaultSnackbarTheme,\n snackbarProviderProps: SnackbarProviderTheme = defaultSnackbarProviderProps,\n ) => {\n const nextDraftSettings = merge({}, currentSettings, {\n theme,\n snackbar: merge({}, defaultSnackbarTheme, snackbarTheme),\n snackbarProviderProps: merge(\n {},\n defaultSnackbarProviderProps,\n snackbarProviderProps,\n ),\n }) as ThemePreviewSettings;\n const nextSelectedModes = getThemePreviewSelectedModes(nextDraftSettings);\n const nextSelectedPresetKeys = getThemePreviewMatchedPresetKeys(\n nextDraftSettings,\n presetThemes,\n presetOptions,\n );\n\n commitDraftSettings(nextDraftSettings);\n commitSelectionState(nextSelectedPresetKeys, nextSelectedModes);\n setTemporaryComparableSnapshot(\n createThemePreviewTemporaryComparableState(\n activeSection,\n nextDraftSettings,\n nextSelectedPresetKeys,\n nextSelectedModes,\n ),\n );\n persistThemePreviewAppliedSettings({\n theme,\n snackbar: nextDraftSettings.snackbar,\n snackbarProviderProps: nextDraftSettings.snackbarProviderProps,\n });\n setDefaultSettings({\n theme,\n snackbar: nextDraftSettings.snackbar,\n snackbarProviderProps: nextDraftSettings.snackbarProviderProps,\n } as PartialDeep<OwpSettingsConfigType>);\n };\n\n const handleTemporarySave = (saveType: ThemePreviewTemporaryState['saveType'] = 'manual') => {\n const nextTemporaryState = createThemePreviewTemporaryState(\n activeSection,\n draftSettings,\n selectedPresetKeys,\n selectedModes,\n saveType,\n );\n\n persistThemePreviewTemporaryState(nextTemporaryState);\n setTemporarySnapshot(nextTemporaryState);\n setTemporaryComparableSnapshot({\n draftSettings,\n selectionState: nextTemporaryState.selectionState,\n });\n };\n\n const handleTemporaryLoad = () => {\n const temporaryState = getThemePreviewTemporaryState();\n\n if (!temporaryState) {\n return false;\n }\n\n const nextDraftSettings = cloneThemePreviewSettings(\n merge({}, currentSettings, temporaryState.draftSettings) as ThemePreviewSettings,\n );\n const nextSelectedPresetKeys = merge(\n {},\n selectedPresetKeys,\n temporaryState.selectionState.selectedPresetKeys,\n ) as ThemePreviewPresetKeyBySection;\n const nextSelectedModes = merge(\n {},\n selectedModes,\n temporaryState.selectionState.selectedModes,\n ) as Record<ThemePreviewPresetSectionKey, ThemePreviewMode>;\n const nextActiveSection = temporaryState.selectionState.activeSection;\n const resolvedSelectedPresetKeys = getThemePreviewMatchedPresetKeys(\n nextDraftSettings,\n presetThemes,\n presetOptions,\n );\n const resolvedSelectedModes = getThemePreviewSelectedModes(nextDraftSettings);\n\n commitDraftSettings(nextDraftSettings);\n setActiveSection(nextActiveSection);\n commitSelectionState(\n isEqual(nextSelectedPresetKeys, resolvedSelectedPresetKeys)\n ? nextSelectedPresetKeys\n : resolvedSelectedPresetKeys,\n isEqual(nextSelectedModes, resolvedSelectedModes) ? nextSelectedModes : resolvedSelectedModes,\n );\n setTemporarySnapshot(temporaryState);\n setTemporaryComparableSnapshot({\n draftSettings: nextDraftSettings,\n selectionState: {\n ...temporaryState.selectionState,\n selectedModes: resolvedSelectedModes,\n selectedPresetKeys: resolvedSelectedPresetKeys,\n },\n });\n\n return true;\n };\n\n return {\n activeSection,\n canApplyToMain,\n draftSettings,\n hasTemporaryChanges,\n hasTemporarySnapshot,\n presetOptions,\n resetVersion,\n selectedModes,\n selectedPresetKeys,\n setActiveSection,\n handlePaletteValueChange,\n handlePaletteValuesChange,\n handlePaletteValueReset,\n handlePaletteValuesReset,\n handleApplyToMain,\n handleLoadSettings,\n handlePresetKeyChange,\n handlePresetModeChange,\n handleReset,\n handleTemporaryLoad,\n handleTemporarySave,\n };\n}\n"],"names":["THEME_PREVIEW_SNACKBAR_PROVIDER_PROPS_PATH_PREFIX","isThemePreviewPresetSectionKey","sectionKey","isThemePreviewCustomSection","__name","getThemePreviewSelectedModes","settings","createThemePreviewTemporaryState","activeSection","draftSettings","selectedPresetKeys","selectedModes","saveType","cloneThemePreviewSettings","dayjs","createThemePreviewTemporaryComparableState","getResetSectionTarget","canUseEmptyResetValue","getResetPathValue","path","pathSource","resolvedPath","pathKeys","currentValue","pathKey","useThemePreview","initialSection","_initialPresetKeys","presetThemes","resetTheme","currentSettings","useGetCurrentSettings","setDefaultSettings","useSetDefaultSettings","presetOptions","useMemo","getThemePreviewPresetOptions","initialDraftSettings","getThemePreviewDraftSettings","openedDraftSettings","useState","initialSelectionState","getThemePreviewSelectionState","resetSettings","getThemePreviewResetSettings","defaultSnackbarTheme","currentSnackbarTheme","merge","currentSnackbarProviderProps","defaultSnackbarProviderProps","setActiveSection","setDraftSettings","setSelectedPresetKeys","setSelectedModes","resetVersion","setResetVersion","temporarySnapshot","setTemporarySnapshot","getThemePreviewTemporaryState","temporaryComparableSnapshot","setTemporaryComparableSnapshot","hasTemporarySnapshot","hasTemporaryChanges","isEqual","canApplyToMain","persistSelectionState","nextPresetKeys","nextSelectedModes","setThemePreviewSelectionState","persistDraftSettings","nextDraftSettings","setThemePreviewDraftSettings","commitDraftSettings","commitSelectionState","handlePaletteValueChange","value","setThemePreviewPaletteValue","THEME_PREVIEW_CUSTOM_PRESET_KEY","handlePaletteValuesChange","updates","setThemePreviewPaletteValues","handlePaletteValuesReset","paths","uniquePaths","temporaryValue","initialValue","prevState","nextTemporaryState","persistThemePreviewTemporaryState","persistThemePreviewAppliedSettings","theme","snackbarTheme","snackbarProviderProps","nextSelectedPresetKeys","getThemePreviewMatchedPresetKeys","presetKey","presetTheme","applyThemePreviewPreset","mode","nextPresetOption","getThemePreviewPresetOptionsByMode","_b","_a","_d","_c","_f","_e","clearThemePreviewAppliedSettings","temporaryState","nextActiveSection","resolvedSelectedPresetKeys","resolvedSelectedModes"],"mappings":"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"}
|
|
@@ -389,6 +389,14 @@ const s = [
|
|
|
389
389
|
key: "tableFieldHeader",
|
|
390
390
|
label: "Field Header",
|
|
391
391
|
fields: [
|
|
392
|
+
{
|
|
393
|
+
path: "field.header.backgroundColor",
|
|
394
|
+
label: "Background"
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
path: "field.header.color",
|
|
398
|
+
label: "Header Text"
|
|
399
|
+
},
|
|
392
400
|
{
|
|
393
401
|
path: "field.header.fontSize",
|
|
394
402
|
label: "Font Size",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themePreviewDefinitions.js","sources":["../../../../src/features/themePreview/utils/themePreviewDefinitions.ts"],"sourcesContent":["import type { ThemePreviewFieldGroup, ThemePreviewSectionKey, ThemePreviewSectionOption } from '../types';\n\nexport const themePreviewSectionOptions: ThemePreviewSectionOption[] = [\n {\n key: 'main',\n label: 'Main',\n description: '페이지 본문, 카드, 버튼 preview',\n },\n {\n key: 'navbar',\n label: 'Navbar',\n description: '좌측 navigation 영역 preview',\n },\n {\n key: 'toolbar',\n label: 'Toolbar',\n description: '상단 toolbar 영역 preview',\n },\n {\n key: 'grid',\n label: 'Grid',\n description: 'Grid header / cell preview',\n },\n {\n key: 'table',\n label: 'Table',\n description: 'Field Table / Basic Table / Data Table preview',\n },\n {\n key: 'snackbar',\n label: 'Snackbar',\n description: 'Snackbar variant preview',\n },\n];\n\nconst surfaceFieldGroup: ThemePreviewFieldGroup = {\n key: 'surface',\n label: 'Surface',\n fields: [\n {\n path: 'background.default',\n label: 'Background Default',\n },\n {\n path: 'background.paper',\n label: 'Background Paper',\n },\n {\n path: 'divider',\n label: 'Divider',\n allowAlpha: true,\n },\n ],\n};\n\nconst textFieldGroup: ThemePreviewFieldGroup = {\n key: 'text',\n label: 'Text',\n fields: [\n {\n path: 'text.primary',\n label: 'Text Primary',\n },\n {\n path: 'text.secondary',\n label: 'Text Secondary',\n },\n {\n path: 'text.disabled',\n label: 'Text Disabled',\n },\n ],\n};\n\nconst brandFieldGroup: ThemePreviewFieldGroup = {\n key: 'brand',\n label: 'Brand',\n fields: [\n {\n path: 'primary.main',\n label: 'Primary Main',\n },\n {\n path: 'primary.light',\n label: 'Primary Light',\n },\n {\n path: 'primary.dark',\n label: 'Primary Dark',\n },\n {\n path: 'primary.contrastText',\n label: 'Primary Contrast',\n },\n {\n path: 'secondary.main',\n label: 'Secondary Main',\n },\n {\n path: 'secondary.light',\n label: 'Secondary Light',\n },\n {\n path: 'secondary.dark',\n label: 'Secondary Dark',\n },\n {\n path: 'secondary.contrastText',\n label: 'Secondary Contrast',\n },\n ],\n};\n\nconst mainThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n {\n ...brandFieldGroup,\n label: 'Buttons',\n fields: [\n ...brandFieldGroup.fields,\n {\n path: 'info.main',\n label: 'Info Main',\n },\n {\n path: 'info.contrastText',\n label: 'Info Contrast',\n },\n {\n path: 'warning.main',\n label: 'Warning Main',\n },\n {\n path: 'warning.contrastText',\n label: 'Warning Contrast',\n },\n {\n path: 'error.main',\n label: 'Error Main',\n },\n {\n path: 'error.contrastText',\n label: 'Error Contrast',\n },\n {\n path: 'success.main',\n label: 'Success Main',\n },\n {\n path: 'success.contrastText',\n label: 'Success Contrast',\n },\n ],\n },\n];\n\nconst navbarThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n { ...brandFieldGroup, label: 'Item buttons' },\n];\n\nconst snackbarProviderFieldGroup: ThemePreviewFieldGroup = {\n key: 'snackbarProvider',\n label: 'Provider',\n fields: [\n {\n path: 'snackbarProviderProps.maxSnack',\n label: 'Max Snack',\n description: '예: 5',\n showColorPicker: false,\n },\n {\n path: 'snackbarProviderProps.autoHideDuration',\n label: 'Auto Hide Duration',\n description: '예: 3000',\n showColorPicker: false,\n },\n {\n path: 'snackbarProviderProps.anchorOrigin.vertical',\n label: 'Anchor Vertical',\n description: '예: top',\n showColorPicker: false,\n options: [\n { label: 'top', value: 'top' },\n { label: 'bottom', value: 'bottom' },\n ],\n },\n {\n path: 'snackbarProviderProps.anchorOrigin.horizontal',\n label: 'Anchor Horizontal',\n description: '예: center',\n showColorPicker: false,\n options: [\n { label: 'left', value: 'left' },\n { label: 'center', value: 'center' },\n { label: 'right', value: 'right' },\n ],\n },\n {\n path: 'snackbarProviderProps.style.fontSize',\n label: 'Font Size',\n description: '예: 1.25',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n {\n path: 'snackbarProviderProps.style.lineHeight',\n label: 'Line Height',\n description: '예: 1.75',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n};\n\nconst toolbarThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n];\n\nconst themePreviewGridFieldGroups: ThemePreviewFieldGroup[] = [\n {\n key: 'gridHeader',\n label: 'Header',\n fields: [\n {\n path: 'header.backgroundColor',\n label: 'Header Background',\n },\n {\n path: 'header.color',\n label: 'Header Text',\n },\n {\n path: 'header.fontSize',\n label: 'Header Font Size',\n description: '예: 14',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'gridBody',\n label: 'Body',\n fields: [\n {\n path: 'body.backgroundColor',\n label: 'Body Background',\n },\n {\n path: 'body.color',\n label: 'Body Text',\n },\n {\n path: 'body.fillBackgroundColor',\n label: 'Fill Background',\n },\n ],\n },\n {\n key: 'gridRow',\n label: 'Row',\n fields: [\n {\n path: 'row.backgroundColor',\n label: 'Row Background',\n },\n {\n path: 'row.solidBackgroundColor',\n label: 'Solid Background',\n },\n ],\n },\n {\n key: 'gridCell',\n label: 'Cell',\n fields: [\n {\n path: 'cell.fontSize',\n label: 'Cell Font Size',\n description: '예: 13',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'gridState',\n label: 'State',\n fields: [\n {\n path: 'state.hoverRowBackgroundColor',\n label: 'Hover Row Background',\n },\n {\n path: 'state.hoverRowBorderColor',\n label: 'Hover Row Border',\n },\n {\n path: 'state.selectedCellBackgroundColor',\n label: 'Selected Cell Background',\n },\n {\n path: 'state.selectedRowBackgroundColor',\n label: 'Selected Row Background',\n },\n {\n path: 'state.focusedRowBackgroundColor',\n label: 'Focused Row Background',\n },\n {\n path: 'state.focusedRowBorderColor',\n label: 'Focused Row Border',\n },\n {\n path: 'state.hoverCellBackgroundColor',\n label: 'Hover Cell Background',\n },\n {\n path: 'state.hoverCellBorderColor',\n label: 'Hover Cell Border',\n },\n {\n path: 'state.focusedCellBackgroundColor',\n label: 'Focused Cell Background',\n },\n {\n path: 'state.focusedCellBorderColor',\n label: 'Focused Cell Border',\n },\n {\n path: 'state.editingCellBorderColor',\n label: 'Editing Cell Border',\n },\n {\n path: 'state.focusedCellRectBackgroundColor',\n label: 'Focused Cell Rect Background',\n },\n ],\n },\n {\n key: 'gridEdit',\n label: 'Edit',\n fields: [\n {\n path: 'editable.backgroundColor',\n label: 'Editable Cell Background',\n },\n {\n path: 'changed.backgroundColor',\n label: 'Changed Cell Background',\n },\n ],\n },\n];\n\nconst themePreviewTableFieldGroups: ThemePreviewFieldGroup[] = [\n {\n key: 'tableFrame',\n label: 'Frame',\n fields: [\n {\n path: 'borderRadius',\n label: 'Outer Radius',\n description: '예: 4',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'tableHeader',\n label: 'Header',\n fields: [\n {\n path: 'header.backgroundColor',\n label: 'Header Background',\n },\n {\n path: 'header.color',\n label: 'Header Text',\n },\n {\n path: 'header.fontSize',\n label: 'Header Font Size',\n description: '예: 1.5',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableCell',\n label: 'Cell',\n fields: [\n {\n path: 'cell.fontSize',\n label: 'Cell Font Size',\n description: '예: 1.4',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableFieldHeader',\n label: 'Field Header',\n fields: [\n {\n path: 'field.header.fontSize',\n label: 'Font Size',\n description: '예: 1.7',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n {\n path: 'field.header.fontWeight',\n label: 'Font Weight',\n description: '예: 600',\n showColorPicker: false,\n },\n ],\n },\n {\n key: 'tableFieldCell',\n label: 'Field Value',\n fields: [\n {\n path: 'field.cell.backgroundColor',\n label: 'Background',\n },\n {\n path: 'field.cell.fontSize',\n label: 'Font Size',\n description: '예: 1.7',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableRow',\n label: 'Row',\n fields: [\n {\n path: 'row.backgroundColor',\n label: 'Background',\n },\n {\n path: 'row.selectedBackgroundColor',\n label: 'Selected',\n },\n {\n path: 'row.hoverBackgroundColor',\n label: 'Hover',\n },\n ],\n },\n];\n\nconst themePreviewSnackbarFieldGroups: ThemePreviewFieldGroup[] = [\n snackbarProviderFieldGroup,\n {\n key: 'snackbarDefault',\n label: 'Default',\n fields: [\n {\n path: 'default.backgroundColor',\n label: 'Background',\n },\n {\n path: 'default.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarSuccess',\n label: 'Success',\n fields: [\n {\n path: 'success.backgroundColor',\n label: 'Background',\n },\n {\n path: 'success.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarInfo',\n label: 'Info',\n fields: [\n {\n path: 'info.backgroundColor',\n label: 'Background',\n },\n {\n path: 'info.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarWarning',\n label: 'Warning',\n fields: [\n {\n path: 'warning.backgroundColor',\n label: 'Background',\n },\n {\n path: 'warning.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarError',\n label: 'Error',\n fields: [\n {\n path: 'error.backgroundColor',\n label: 'Background',\n },\n {\n path: 'error.color',\n label: 'Text',\n },\n ],\n },\n];\n\nexport const themePreviewFieldGroupsBySection = {\n main: mainThemePreviewPaletteFieldGroups,\n navbar: navbarThemePreviewPaletteFieldGroups,\n toolbar: toolbarThemePreviewPaletteFieldGroups,\n grid: themePreviewGridFieldGroups,\n table: themePreviewTableFieldGroups,\n snackbar: themePreviewSnackbarFieldGroups,\n} satisfies Record<ThemePreviewSectionKey, ThemePreviewFieldGroup[]>;\n"],"names":["themePreviewSectionOptions","surfaceFieldGroup","textFieldGroup","brandFieldGroup","mainThemePreviewPaletteFieldGroups","navbarThemePreviewPaletteFieldGroups","snackbarProviderFieldGroup","toolbarThemePreviewPaletteFieldGroups","themePreviewGridFieldGroups","themePreviewTableFieldGroups","themePreviewSnackbarFieldGroups","themePreviewFieldGroupsBySection"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"themePreviewDefinitions.js","sources":["../../../../src/features/themePreview/utils/themePreviewDefinitions.ts"],"sourcesContent":["import type { ThemePreviewFieldGroup, ThemePreviewSectionKey, ThemePreviewSectionOption } from '../types';\n\nexport const themePreviewSectionOptions: ThemePreviewSectionOption[] = [\n {\n key: 'main',\n label: 'Main',\n description: '페이지 본문, 카드, 버튼 preview',\n },\n {\n key: 'navbar',\n label: 'Navbar',\n description: '좌측 navigation 영역 preview',\n },\n {\n key: 'toolbar',\n label: 'Toolbar',\n description: '상단 toolbar 영역 preview',\n },\n {\n key: 'grid',\n label: 'Grid',\n description: 'Grid header / cell preview',\n },\n {\n key: 'table',\n label: 'Table',\n description: 'Field Table / Basic Table / Data Table preview',\n },\n {\n key: 'snackbar',\n label: 'Snackbar',\n description: 'Snackbar variant preview',\n },\n];\n\nconst surfaceFieldGroup: ThemePreviewFieldGroup = {\n key: 'surface',\n label: 'Surface',\n fields: [\n {\n path: 'background.default',\n label: 'Background Default',\n },\n {\n path: 'background.paper',\n label: 'Background Paper',\n },\n {\n path: 'divider',\n label: 'Divider',\n allowAlpha: true,\n },\n ],\n};\n\nconst textFieldGroup: ThemePreviewFieldGroup = {\n key: 'text',\n label: 'Text',\n fields: [\n {\n path: 'text.primary',\n label: 'Text Primary',\n },\n {\n path: 'text.secondary',\n label: 'Text Secondary',\n },\n {\n path: 'text.disabled',\n label: 'Text Disabled',\n },\n ],\n};\n\nconst brandFieldGroup: ThemePreviewFieldGroup = {\n key: 'brand',\n label: 'Brand',\n fields: [\n {\n path: 'primary.main',\n label: 'Primary Main',\n },\n {\n path: 'primary.light',\n label: 'Primary Light',\n },\n {\n path: 'primary.dark',\n label: 'Primary Dark',\n },\n {\n path: 'primary.contrastText',\n label: 'Primary Contrast',\n },\n {\n path: 'secondary.main',\n label: 'Secondary Main',\n },\n {\n path: 'secondary.light',\n label: 'Secondary Light',\n },\n {\n path: 'secondary.dark',\n label: 'Secondary Dark',\n },\n {\n path: 'secondary.contrastText',\n label: 'Secondary Contrast',\n },\n ],\n};\n\nconst mainThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n {\n ...brandFieldGroup,\n label: 'Buttons',\n fields: [\n ...brandFieldGroup.fields,\n {\n path: 'info.main',\n label: 'Info Main',\n },\n {\n path: 'info.contrastText',\n label: 'Info Contrast',\n },\n {\n path: 'warning.main',\n label: 'Warning Main',\n },\n {\n path: 'warning.contrastText',\n label: 'Warning Contrast',\n },\n {\n path: 'error.main',\n label: 'Error Main',\n },\n {\n path: 'error.contrastText',\n label: 'Error Contrast',\n },\n {\n path: 'success.main',\n label: 'Success Main',\n },\n {\n path: 'success.contrastText',\n label: 'Success Contrast',\n },\n ],\n },\n];\n\nconst navbarThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n { ...brandFieldGroup, label: 'Item buttons' },\n];\n\nconst snackbarProviderFieldGroup: ThemePreviewFieldGroup = {\n key: 'snackbarProvider',\n label: 'Provider',\n fields: [\n {\n path: 'snackbarProviderProps.maxSnack',\n label: 'Max Snack',\n description: '예: 5',\n showColorPicker: false,\n },\n {\n path: 'snackbarProviderProps.autoHideDuration',\n label: 'Auto Hide Duration',\n description: '예: 3000',\n showColorPicker: false,\n },\n {\n path: 'snackbarProviderProps.anchorOrigin.vertical',\n label: 'Anchor Vertical',\n description: '예: top',\n showColorPicker: false,\n options: [\n { label: 'top', value: 'top' },\n { label: 'bottom', value: 'bottom' },\n ],\n },\n {\n path: 'snackbarProviderProps.anchorOrigin.horizontal',\n label: 'Anchor Horizontal',\n description: '예: center',\n showColorPicker: false,\n options: [\n { label: 'left', value: 'left' },\n { label: 'center', value: 'center' },\n { label: 'right', value: 'right' },\n ],\n },\n {\n path: 'snackbarProviderProps.style.fontSize',\n label: 'Font Size',\n description: '예: 1.25',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n {\n path: 'snackbarProviderProps.style.lineHeight',\n label: 'Line Height',\n description: '예: 1.75',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n};\n\nconst toolbarThemePreviewPaletteFieldGroups: ThemePreviewFieldGroup[] = [\n surfaceFieldGroup,\n textFieldGroup,\n];\n\nconst themePreviewGridFieldGroups: ThemePreviewFieldGroup[] = [\n {\n key: 'gridHeader',\n label: 'Header',\n fields: [\n {\n path: 'header.backgroundColor',\n label: 'Header Background',\n },\n {\n path: 'header.color',\n label: 'Header Text',\n },\n {\n path: 'header.fontSize',\n label: 'Header Font Size',\n description: '예: 14',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'gridBody',\n label: 'Body',\n fields: [\n {\n path: 'body.backgroundColor',\n label: 'Body Background',\n },\n {\n path: 'body.color',\n label: 'Body Text',\n },\n {\n path: 'body.fillBackgroundColor',\n label: 'Fill Background',\n },\n ],\n },\n {\n key: 'gridRow',\n label: 'Row',\n fields: [\n {\n path: 'row.backgroundColor',\n label: 'Row Background',\n },\n {\n path: 'row.solidBackgroundColor',\n label: 'Solid Background',\n },\n ],\n },\n {\n key: 'gridCell',\n label: 'Cell',\n fields: [\n {\n path: 'cell.fontSize',\n label: 'Cell Font Size',\n description: '예: 13',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'gridState',\n label: 'State',\n fields: [\n {\n path: 'state.hoverRowBackgroundColor',\n label: 'Hover Row Background',\n },\n {\n path: 'state.hoverRowBorderColor',\n label: 'Hover Row Border',\n },\n {\n path: 'state.selectedCellBackgroundColor',\n label: 'Selected Cell Background',\n },\n {\n path: 'state.selectedRowBackgroundColor',\n label: 'Selected Row Background',\n },\n {\n path: 'state.focusedRowBackgroundColor',\n label: 'Focused Row Background',\n },\n {\n path: 'state.focusedRowBorderColor',\n label: 'Focused Row Border',\n },\n {\n path: 'state.hoverCellBackgroundColor',\n label: 'Hover Cell Background',\n },\n {\n path: 'state.hoverCellBorderColor',\n label: 'Hover Cell Border',\n },\n {\n path: 'state.focusedCellBackgroundColor',\n label: 'Focused Cell Background',\n },\n {\n path: 'state.focusedCellBorderColor',\n label: 'Focused Cell Border',\n },\n {\n path: 'state.editingCellBorderColor',\n label: 'Editing Cell Border',\n },\n {\n path: 'state.focusedCellRectBackgroundColor',\n label: 'Focused Cell Rect Background',\n },\n ],\n },\n {\n key: 'gridEdit',\n label: 'Edit',\n fields: [\n {\n path: 'editable.backgroundColor',\n label: 'Editable Cell Background',\n },\n {\n path: 'changed.backgroundColor',\n label: 'Changed Cell Background',\n },\n ],\n },\n];\n\nconst themePreviewTableFieldGroups: ThemePreviewFieldGroup[] = [\n {\n key: 'tableFrame',\n label: 'Frame',\n fields: [\n {\n path: 'borderRadius',\n label: 'Outer Radius',\n description: '예: 4',\n showColorPicker: false,\n valueFormat: 'px-number',\n },\n ],\n },\n {\n key: 'tableHeader',\n label: 'Header',\n fields: [\n {\n path: 'header.backgroundColor',\n label: 'Header Background',\n },\n {\n path: 'header.color',\n label: 'Header Text',\n },\n {\n path: 'header.fontSize',\n label: 'Header Font Size',\n description: '예: 1.5',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableCell',\n label: 'Cell',\n fields: [\n {\n path: 'cell.fontSize',\n label: 'Cell Font Size',\n description: '예: 1.4',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableFieldHeader',\n label: 'Field Header',\n fields: [\n {\n path: 'field.header.backgroundColor',\n label: 'Background',\n },\n {\n path: 'field.header.color',\n label: 'Header Text',\n },\n {\n path: 'field.header.fontSize',\n label: 'Font Size',\n description: '예: 1.7',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n {\n path: 'field.header.fontWeight',\n label: 'Font Weight',\n description: '예: 600',\n showColorPicker: false,\n },\n ],\n },\n {\n key: 'tableFieldCell',\n label: 'Field Value',\n fields: [\n {\n path: 'field.cell.backgroundColor',\n label: 'Background',\n },\n {\n path: 'field.cell.fontSize',\n label: 'Font Size',\n description: '예: 1.7',\n showColorPicker: false,\n valueFormat: 'rem-number',\n },\n ],\n },\n {\n key: 'tableRow',\n label: 'Row',\n fields: [\n {\n path: 'row.backgroundColor',\n label: 'Background',\n },\n {\n path: 'row.selectedBackgroundColor',\n label: 'Selected',\n },\n {\n path: 'row.hoverBackgroundColor',\n label: 'Hover',\n },\n ],\n },\n];\n\nconst themePreviewSnackbarFieldGroups: ThemePreviewFieldGroup[] = [\n snackbarProviderFieldGroup,\n {\n key: 'snackbarDefault',\n label: 'Default',\n fields: [\n {\n path: 'default.backgroundColor',\n label: 'Background',\n },\n {\n path: 'default.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarSuccess',\n label: 'Success',\n fields: [\n {\n path: 'success.backgroundColor',\n label: 'Background',\n },\n {\n path: 'success.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarInfo',\n label: 'Info',\n fields: [\n {\n path: 'info.backgroundColor',\n label: 'Background',\n },\n {\n path: 'info.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarWarning',\n label: 'Warning',\n fields: [\n {\n path: 'warning.backgroundColor',\n label: 'Background',\n },\n {\n path: 'warning.color',\n label: 'Text',\n },\n ],\n },\n {\n key: 'snackbarError',\n label: 'Error',\n fields: [\n {\n path: 'error.backgroundColor',\n label: 'Background',\n },\n {\n path: 'error.color',\n label: 'Text',\n },\n ],\n },\n];\n\nexport const themePreviewFieldGroupsBySection = {\n main: mainThemePreviewPaletteFieldGroups,\n navbar: navbarThemePreviewPaletteFieldGroups,\n toolbar: toolbarThemePreviewPaletteFieldGroups,\n grid: themePreviewGridFieldGroups,\n table: themePreviewTableFieldGroups,\n snackbar: themePreviewSnackbarFieldGroups,\n} satisfies Record<ThemePreviewSectionKey, ThemePreviewFieldGroup[]>;\n"],"names":["themePreviewSectionOptions","surfaceFieldGroup","textFieldGroup","brandFieldGroup","mainThemePreviewPaletteFieldGroups","navbarThemePreviewPaletteFieldGroups","snackbarProviderFieldGroup","toolbarThemePreviewPaletteFieldGroups","themePreviewGridFieldGroups","themePreviewTableFieldGroups","themePreviewSnackbarFieldGroups","themePreviewFieldGroupsBySection"],"mappings":"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"}
|