@hkyhy/marsun-components-core 0.1.75 → 0.1.76
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/components/Form/SuperSelect.js +77 -67
- package/dist/components/Form/SuperSelect.js.map +1 -1
- package/dist/components/FormInfo/style.module.scss.js +51 -51
- package/dist/marsun-components-core.css +1 -1
- package/dist/styles/global.css +1 -1
- package/dist/theme/theme.js +2 -2
- package/dist/theme/theme.js.map +1 -1
- package/package.json +1 -1
package/dist/theme/theme.js
CHANGED
|
@@ -106,9 +106,9 @@ function d(o) {
|
|
|
106
106
|
borderColor: e.borderSeparator,
|
|
107
107
|
// headerCellSplitColor: 'transparent',
|
|
108
108
|
cellPaddingBlock: 8,
|
|
109
|
-
cellPaddingInline:
|
|
109
|
+
cellPaddingInline: 8,
|
|
110
110
|
cellPaddingBlockMD: 6,
|
|
111
|
-
cellPaddingInlineMD:
|
|
111
|
+
cellPaddingInlineMD: 8,
|
|
112
112
|
cellPaddingBlockSM: 6,
|
|
113
113
|
cellPaddingInlineSM: 8,
|
|
114
114
|
fontSize: 14,
|
package/dist/theme/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sources":["../../src/theme/theme.ts"],"sourcesContent":["import type { ThemeConfig } from 'antd';\nimport { LAYOUT_TOKENS, PALETTE } from './constants';\n\n/**\n * Marsun Components Core - Ant Design 主题配置\n *\n * 分层说明:\n * 1. Design Token(全局层):颜色、字号、间距、圆角等基础变量\n * 2. Semantic Token(语义层):别名 token,映射全局 token 的语义用途\n * 3. Component Token(组件层):按组件定制,替代 global.css 中的 :global 覆盖\n */\n\n/**\n * 根据主色生成完整的 Ant Design 主题配置\n * @param primaryColor - 主题主色,来自系统设置\n */\nexport function generateTheme(primaryColor: string): ThemeConfig {\n return {\n token: {\n // ====== 颜色 ======\n colorPrimary: primaryColor,\n colorSuccess: PALETTE.success,\n colorWarning: PALETTE.warning,\n colorError: PALETTE.error,\n colorInfo: PALETTE.info,\n colorLink: primaryColor,\n colorTextBase: PALETTE.textBase,\n\n // 文字\n colorText: PALETTE.textBase,\n colorTextSecondary: PALETTE.textSecondary,\n colorTextTertiary: PALETTE.textTertiary,\n colorTextDisabled: PALETTE.textDisabled,\n\n // 背景\n colorBgContainer: PALETTE.bgWhite,\n colorBgLayout: PALETTE.bgGrey,\n colorBgElevated: PALETTE.bgWhite,\n // colorTextLightSolid 勿改为 tooltip 深色 — Button primary 文字依赖此 token(须为浅色)\n\n // 边框\n colorBorder: PALETTE.borderSeparator,\n colorBorderSecondary: PALETTE.borderSeparator,\n colorSplit: PALETTE.borderSeparator,\n\n // 填充\n colorFill: PALETTE.bgGreyDark,\n colorFillSecondary: PALETTE.bgGreyNormal,\n colorFillTertiary: PALETTE.bgGreyLight,\n colorFillQuaternary: PALETTE.bgGrey,\n\n // ====== 字体 ======\n fontSize: 14,\n fontSizeSM: 12,\n fontSizeLG: 16,\n fontSizeXL: 20,\n fontSizeHeading1: 38,\n fontSizeHeading2: 30,\n fontSizeHeading3: 24,\n fontSizeHeading4: 20,\n fontSizeHeading5: 16,\n fontFamily:\n \"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'\",\n lineHeight: 1.8,\n lineHeightSM: 1.5,\n lineHeightLG: 2.2,\n\n // ====== 圆角 ======\n borderRadius: 4,\n borderRadiusSM: 2,\n borderRadiusLG: 8,\n\n // ====== 间距 ======\n padding: 16,\n paddingSM: 12,\n paddingLG: 24,\n paddingXL: 32,\n paddingXS: 8,\n margin: 16,\n marginSM: 12,\n marginLG: 24,\n marginXL: 32,\n marginXS: 8,\n\n // ====== 阴影 ======\n boxShadow:\n '0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px 0 rgba(0, 0, 0, 0.02)',\n boxShadowSecondary:\n '0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05)',\n\n // ====== 动画 ======\n motionDurationSlow: '0.3s',\n motionDurationMid: '0.2s',\n motionDurationFast: '0.1s',\n\n // ====== 控件 ======\n controlHeight: 32,\n controlHeightSM: 24,\n controlHeightLG: 40,\n controlHeightXS: 16,\n\n // ====== 弹层 ======\n zIndexPopupBase: LAYOUT_TOKENS.zIndexPopupBase,\n },\n\n components: {\n // ====== Button ======\n Button: {\n contentFontSizeSM: 12,\n contentFontSizeLG: 16,\n contentLineHeightSM: 1.5,\n paddingInlineSM: 8,\n paddingInline: 12,\n paddingInlineLG: 16,\n defaultShadow: 'none',\n primaryShadow: 'none',\n dangerShadow: 'none',\n borderRadius: 4,\n borderRadiusSM: 4,\n borderRadiusLG: 4,\n primaryColor: PALETTE.bgWhite,\n dangerColor: PALETTE.bgWhite,\n },\n\n // ====== Table ======\n Table: {\n headerBg: PALETTE.bgBlueTint,\n headerColor: PALETTE.textBase,\n headerBorderRadius: 4,\n headerSortActiveBg: PALETTE.bgGreyNormal,\n headerSortHoverBg: PALETTE.bgGreyNormal,\n headerFilterHoverBg: PALETTE.bgGreyNormal,\n rowHoverBg: PALETTE.bgGrey,\n // rowHoverColor: PALETTE.textBase,\n rowSelectedBg: `${primaryColor}10`,\n rowSelectedHoverBg: `${primaryColor}20`,\n borderColor: PALETTE.borderSeparator,\n // headerCellSplitColor: 'transparent',\n cellPaddingBlock: 8,\n cellPaddingInline: 24,\n cellPaddingBlockMD: 6,\n cellPaddingInlineMD: 24,\n cellPaddingBlockSM: 6,\n cellPaddingInlineSM: 8,\n fontSize: 14,\n fontSizeSM: 12,\n },\n\n // ====== Pagination ======\n Pagination: {\n fontSize: 12,\n itemSize: 24,\n itemSizeSM: 20,\n itemActiveBg: primaryColor,\n itemActiveColor: PALETTE.bgWhite,\n itemInputBg: PALETTE.bgWhite,\n // itemBorderColor: PALETTE.borderLight,\n // itemBorderRadiusSM: 2,\n },\n\n // ====== Modal ======\n Modal: {\n contentBg: PALETTE.bgWhite,\n headerBg: PALETTE.bgWhite,\n footerBg: PALETTE.bgWhite,\n titleFontSize: 16,\n titleLineHeight: 1.5,\n },\n\n // ====== Menu ======\n Menu: {\n itemBorderRadius: 4,\n itemMarginBlock: 4,\n itemMarginInline: 8,\n itemHeight: 40,\n itemColor: PALETTE.textBase,\n itemHoverColor: primaryColor,\n itemSelectedColor: primaryColor,\n itemSelectedBg: `${primaryColor}10`,\n subMenuItemBorderRadius: 4,\n collapsedIconSize: 16,\n iconMarginInlineEnd: 10,\n },\n\n // ====== Select ======\n Select: {\n optionSelectedBg: `${primaryColor}10`,\n optionSelectedColor: primaryColor,\n optionFontSize: 14,\n optionLineHeight: 1.8,\n optionPadding: '5px 12px',\n selectorBg: PALETTE.bgWhite,\n singleItemHeightLG: 40,\n },\n\n // ====== Input ======\n Input: {\n colorTextDisabled: PALETTE.textDisabled,\n colorBgContainerDisabled: PALETTE.bgGreyNormal,\n },\n\n // ====== Tooltip ======\n Tooltip: {\n colorBgSpotlight: PALETTE.tooltipBg,\n colorTextLightSolid: PALETTE.tooltipColor,\n zIndexPopup: LAYOUT_TOKENS.zIndexPopupBase,\n },\n\n // ====== Popover ======\n Popover: {\n borderRadiusLG: 4,\n },\n\n // ====== Alert ======\n Alert: {\n withDescriptionIconSize: 14,\n // defaultBg: `${PALETTE.primary}10`,\n // infoBg: `${PALETTE.info}10`,\n // successBg: `${PALETTE.success}10`,\n // warningBg: `${PALETTE.warning}10`,\n // errorBg: `${PALETTE.error}10`,\n },\n\n // ====== Tag ======\n Tag: {\n borderRadiusSM: 4,\n defaultBg: 'rgba(102, 102, 102, 0.06)',\n defaultColor: PALETTE.textSecondary,\n },\n\n // ====== Card ======\n Card: {\n borderRadiusLG: 4,\n },\n\n // ====== Descriptions ======\n Descriptions: {\n labelBg: PALETTE.bgGrey,\n labelColor: PALETTE.textSecondary,\n contentColor: PALETTE.textBase,\n },\n\n // ====== Dropdown ======\n Dropdown: {\n borderRadiusLG: 4,\n paddingBlock: 4,\n },\n\n // ====== Checkbox ======\n Checkbox: {\n // marginInlineEnd: 8,\n },\n\n // ====== Segmented ======\n Segmented: {\n itemSelectedBg: PALETTE.bgWhite,\n itemColor: PALETTE.textSecondary,\n itemSelectedColor: PALETTE.textBase,\n // containerBg: PALETTE.bgGreyNormal,\n },\n\n // ====== Tabs ======\n Tabs: {\n itemSelectedColor: primaryColor,\n itemHoverColor: primaryColor,\n inkBarColor: primaryColor,\n },\n\n // ====== Form ======\n Form: {\n labelColor: PALETTE.textBase,\n labelFontSize: 14,\n verticalLabelPadding: '0 0 4px',\n },\n\n // ====== Timeline ======\n Timeline: {\n dotBg: 'transparent',\n itemPaddingBottom: 20,\n },\n\n // ====== Empty ======\n Empty: {},\n\n // ====== Spin ======\n Spin: {\n colorPrimary: primaryColor,\n },\n\n // ====== Upload ======\n Upload: {\n colorPrimary: primaryColor,\n colorPrimaryHover: primaryColor,\n },\n },\n };\n}\n\n/**\n * 将 hex 颜色解析为 RGB 分量\n */\nfunction hexToRgb(hex: string): { r: number; g: number; b: number } {\n const h = hex.replace('#', '');\n return {\n r: parseInt(h.substring(0, 2), 16),\n g: parseInt(h.substring(2, 4), 16),\n b: parseInt(h.substring(4, 6), 16),\n };\n}\n\n/**\n * 批量设置某颜色的透明度系列 CSS 变量\n */\nfunction setColorVariants(root: HTMLElement, prefix: string, hex: string): void {\n const { r, g, b } = hexToRgb(hex);\n root.style.setProperty(`--${prefix}-bg`, `rgba(${r}, ${g}, ${b}, 0.06)`);\n root.style.setProperty(`--${prefix}-bg-hover`, `rgba(${r}, ${g}, ${b}, 0.10)`);\n root.style.setProperty(`--${prefix}-bg-active`, `rgba(${r}, ${g}, ${b}, 0.16)`);\n root.style.setProperty(`--${prefix}-border`, `rgba(${r}, ${g}, ${b}, 0.20)`);\n root.style.setProperty(`--${prefix}-fill`, `rgba(${r}, ${g}, ${b}, 0.10)`);\n}\n\n/**\n * 将 antd 主题色同步到 CSS 变量\n * 用于 SCSS 和非 antd 组件的样式引用\n */\nexport function applyThemeToCssVariables(primaryColor: string): void {\n const root = document.documentElement;\n\n root.style.setProperty('--primary-color', primaryColor);\n root.style.setProperty('--success-color', PALETTE.success);\n root.style.setProperty('--info-color', PALETTE.info);\n root.style.setProperty('--error-color', PALETTE.error);\n root.style.setProperty('--warning-color', PALETTE.warning);\n\n // @kne/* 兼容别名(form-info 必填星号用 --color-warning,对齐主题红)\n root.style.setProperty('--color-primary', primaryColor);\n root.style.setProperty('--color-success', PALETTE.success);\n root.style.setProperty('--color-info', PALETTE.info);\n root.style.setProperty('--color-error', PALETTE.error);\n root.style.setProperty('--color-warning', PALETTE.error);\n\n root.style.setProperty('--layout-header-height', LAYOUT_TOKENS.headerHeight);\n root.style.setProperty('--layout-sider-width', LAYOUT_TOKENS.siderWidth);\n\n root.style.setProperty('--font-size-default', LAYOUT_TOKENS.fontSizeDefault);\n root.style.setProperty('--font-size-small', LAYOUT_TOKENS.fontSizeSmall);\n root.style.setProperty('--font-size-large', LAYOUT_TOKENS.fontSizeLarge);\n root.style.setProperty('--font-size-18', LAYOUT_TOKENS.fontSize18);\n root.style.setProperty('--font-size-24', LAYOUT_TOKENS.fontSize24);\n\n root.style.setProperty('--line-height-default', LAYOUT_TOKENS.lineHeightDefault);\n root.style.setProperty('--line-height-middle', LAYOUT_TOKENS.lineHeightMiddle);\n root.style.setProperty('--line-height-small', LAYOUT_TOKENS.lineHeightSmall);\n root.style.setProperty('--line-height-large', LAYOUT_TOKENS.lineHeightLarge);\n\n root.style.setProperty('--font-color', PALETTE.textBase);\n root.style.setProperty('--font-color-disabled', PALETTE.textDisabled);\n root.style.setProperty('--font-color-grey', PALETTE.textSecondary);\n root.style.setProperty('--font-color-grey-1', PALETTE.textTertiary);\n root.style.setProperty('--font-color-grey-2', PALETTE.borderBase);\n root.style.setProperty('--font-color-grey-3', PALETTE.borderLight);\n root.style.setProperty('--font-color-grey-4', PALETTE.borderLighter);\n\n root.style.setProperty('--bg-color-white', PALETTE.bgWhite);\n root.style.setProperty('--bg-color-grey', PALETTE.bgGrey);\n root.style.setProperty('--bg-color-grey-1', PALETTE.bgGreyLight);\n root.style.setProperty('--bg-color-grey-2', PALETTE.bgGreyNormal);\n root.style.setProperty('--bg-color-grey-3', PALETTE.bgGreyDark);\n root.style.setProperty('--bg-color-grey-4', PALETTE.bgBlueTint);\n\n root.style.setProperty('--tag-default', PALETTE.tagDefault);\n root.style.setProperty('--tag-success', PALETTE.tagSuccess);\n root.style.setProperty('--tag-progress', PALETTE.tagProgress);\n root.style.setProperty('--tag-danger', PALETTE.tagDanger);\n root.style.setProperty('--tag-info', PALETTE.tagInfo);\n root.style.setProperty('--tag-other', PALETTE.tagOther);\n\n root.style.setProperty('--file-icon-word', PALETTE.fileIconWord);\n root.style.setProperty('--file-icon-pdf', PALETTE.fileIconPdf);\n root.style.setProperty('--file-icon-excel', PALETTE.fileIconExcel);\n root.style.setProperty('--file-icon-ppt', PALETTE.fileIconPpt);\n root.style.setProperty('--file-icon-image', PALETTE.fileIconImage);\n root.style.setProperty('--file-icon-markdown', PALETTE.fileIconMarkdown);\n root.style.setProperty('--file-icon-visio', PALETTE.fileIconVisio);\n root.style.setProperty('--file-icon-archive', PALETTE.fileIconArchive);\n root.style.setProperty('--file-icon-folder', PALETTE.fileIconFolder);\n root.style.setProperty('--file-icon-other', PALETTE.fileIconOther);\n\n root.style.setProperty('--tooltip-bg', PALETTE.tooltipBg);\n root.style.setProperty('--tooltip-color', PALETTE.tooltipColor);\n root.style.setProperty('--tooltip-info-bg', PALETTE.bgWhite);\n root.style.setProperty('--tooltip-info-color', PALETTE.textBase);\n\n setColorVariants(root, 'primary-color', primaryColor);\n setColorVariants(root, 'success-color', PALETTE.success);\n setColorVariants(root, 'info-color', PALETTE.info);\n setColorVariants(root, 'error-color', PALETTE.error);\n setColorVariants(root, 'warning-color', PALETTE.warning);\n\n // kne form-info:--primary-color-06 / --primary-color-5\n const { r, g, b } = hexToRgb(primaryColor);\n root.style.setProperty('--primary-color-06', `rgba(${r}, ${g}, ${b}, 0.06)`);\n root.style.setProperty('--primary-color-5', `rgba(${r}, ${g}, ${b}, 0.20)`);\n}\n\n/** 项目级 CSS 变量覆盖(在 applyThemeToCssVariables 之后调用) */\nexport function applyCssTokenOverrides(\n overrides: Record<string, string>,\n target: HTMLElement = document.documentElement,\n): void {\n Object.entries(overrides).forEach(([key, value]) => {\n const varName = key.startsWith('--') ? key : `--${key}`;\n target.style.setProperty(varName, value);\n });\n}\n"],"names":["generateTheme","primaryColor","PALETTE","LAYOUT_TOKENS","hexToRgb","hex","h","setColorVariants","root","prefix","r","g","b","applyThemeToCssVariables","applyCssTokenOverrides","overrides","target","key","value","varName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theme.js","sources":["../../src/theme/theme.ts"],"sourcesContent":["import type { ThemeConfig } from 'antd';\nimport { LAYOUT_TOKENS, PALETTE } from './constants';\n\n/**\n * Marsun Components Core - Ant Design 主题配置\n *\n * 分层说明:\n * 1. Design Token(全局层):颜色、字号、间距、圆角等基础变量\n * 2. Semantic Token(语义层):别名 token,映射全局 token 的语义用途\n * 3. Component Token(组件层):按组件定制,替代 global.css 中的 :global 覆盖\n */\n\n/**\n * 根据主色生成完整的 Ant Design 主题配置\n * @param primaryColor - 主题主色,来自系统设置\n */\nexport function generateTheme(primaryColor: string): ThemeConfig {\n return {\n token: {\n // ====== 颜色 ======\n colorPrimary: primaryColor,\n colorSuccess: PALETTE.success,\n colorWarning: PALETTE.warning,\n colorError: PALETTE.error,\n colorInfo: PALETTE.info,\n colorLink: primaryColor,\n colorTextBase: PALETTE.textBase,\n\n // 文字\n colorText: PALETTE.textBase,\n colorTextSecondary: PALETTE.textSecondary,\n colorTextTertiary: PALETTE.textTertiary,\n colorTextDisabled: PALETTE.textDisabled,\n\n // 背景\n colorBgContainer: PALETTE.bgWhite,\n colorBgLayout: PALETTE.bgGrey,\n colorBgElevated: PALETTE.bgWhite,\n // colorTextLightSolid 勿改为 tooltip 深色 — Button primary 文字依赖此 token(须为浅色)\n\n // 边框\n colorBorder: PALETTE.borderSeparator,\n colorBorderSecondary: PALETTE.borderSeparator,\n colorSplit: PALETTE.borderSeparator,\n\n // 填充\n colorFill: PALETTE.bgGreyDark,\n colorFillSecondary: PALETTE.bgGreyNormal,\n colorFillTertiary: PALETTE.bgGreyLight,\n colorFillQuaternary: PALETTE.bgGrey,\n\n // ====== 字体 ======\n fontSize: 14,\n fontSizeSM: 12,\n fontSizeLG: 16,\n fontSizeXL: 20,\n fontSizeHeading1: 38,\n fontSizeHeading2: 30,\n fontSizeHeading3: 24,\n fontSizeHeading4: 20,\n fontSizeHeading5: 16,\n fontFamily:\n \"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'\",\n lineHeight: 1.8,\n lineHeightSM: 1.5,\n lineHeightLG: 2.2,\n\n // ====== 圆角 ======\n borderRadius: 4,\n borderRadiusSM: 2,\n borderRadiusLG: 8,\n\n // ====== 间距 ======\n padding: 16,\n paddingSM: 12,\n paddingLG: 24,\n paddingXL: 32,\n paddingXS: 8,\n margin: 16,\n marginSM: 12,\n marginLG: 24,\n marginXL: 32,\n marginXS: 8,\n\n // ====== 阴影 ======\n boxShadow:\n '0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px 0 rgba(0, 0, 0, 0.02)',\n boxShadowSecondary:\n '0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05)',\n\n // ====== 动画 ======\n motionDurationSlow: '0.3s',\n motionDurationMid: '0.2s',\n motionDurationFast: '0.1s',\n\n // ====== 控件 ======\n controlHeight: 32,\n controlHeightSM: 24,\n controlHeightLG: 40,\n controlHeightXS: 16,\n\n // ====== 弹层 ======\n zIndexPopupBase: LAYOUT_TOKENS.zIndexPopupBase,\n },\n\n components: {\n // ====== Button ======\n Button: {\n contentFontSizeSM: 12,\n contentFontSizeLG: 16,\n contentLineHeightSM: 1.5,\n paddingInlineSM: 8,\n paddingInline: 12,\n paddingInlineLG: 16,\n defaultShadow: 'none',\n primaryShadow: 'none',\n dangerShadow: 'none',\n borderRadius: 4,\n borderRadiusSM: 4,\n borderRadiusLG: 4,\n primaryColor: PALETTE.bgWhite,\n dangerColor: PALETTE.bgWhite,\n },\n\n // ====== Table ======\n Table: {\n headerBg: PALETTE.bgBlueTint,\n headerColor: PALETTE.textBase,\n headerBorderRadius: 4,\n headerSortActiveBg: PALETTE.bgGreyNormal,\n headerSortHoverBg: PALETTE.bgGreyNormal,\n headerFilterHoverBg: PALETTE.bgGreyNormal,\n rowHoverBg: PALETTE.bgGrey,\n // rowHoverColor: PALETTE.textBase,\n rowSelectedBg: `${primaryColor}10`,\n rowSelectedHoverBg: `${primaryColor}20`,\n borderColor: PALETTE.borderSeparator,\n // headerCellSplitColor: 'transparent',\n cellPaddingBlock: 8,\n cellPaddingInline: 8,\n cellPaddingBlockMD: 6,\n cellPaddingInlineMD: 8,\n cellPaddingBlockSM: 6,\n cellPaddingInlineSM: 8,\n fontSize: 14,\n fontSizeSM: 12,\n },\n\n // ====== Pagination ======\n Pagination: {\n fontSize: 12,\n itemSize: 24,\n itemSizeSM: 20,\n itemActiveBg: primaryColor,\n itemActiveColor: PALETTE.bgWhite,\n itemInputBg: PALETTE.bgWhite,\n // itemBorderColor: PALETTE.borderLight,\n // itemBorderRadiusSM: 2,\n },\n\n // ====== Modal ======\n Modal: {\n contentBg: PALETTE.bgWhite,\n headerBg: PALETTE.bgWhite,\n footerBg: PALETTE.bgWhite,\n titleFontSize: 16,\n titleLineHeight: 1.5,\n },\n\n // ====== Menu ======\n Menu: {\n itemBorderRadius: 4,\n itemMarginBlock: 4,\n itemMarginInline: 8,\n itemHeight: 40,\n itemColor: PALETTE.textBase,\n itemHoverColor: primaryColor,\n itemSelectedColor: primaryColor,\n itemSelectedBg: `${primaryColor}10`,\n subMenuItemBorderRadius: 4,\n collapsedIconSize: 16,\n iconMarginInlineEnd: 10,\n },\n\n // ====== Select ======\n Select: {\n optionSelectedBg: `${primaryColor}10`,\n optionSelectedColor: primaryColor,\n optionFontSize: 14,\n optionLineHeight: 1.8,\n optionPadding: '5px 12px',\n selectorBg: PALETTE.bgWhite,\n singleItemHeightLG: 40,\n },\n\n // ====== Input ======\n Input: {\n colorTextDisabled: PALETTE.textDisabled,\n colorBgContainerDisabled: PALETTE.bgGreyNormal,\n },\n\n // ====== Tooltip ======\n Tooltip: {\n colorBgSpotlight: PALETTE.tooltipBg,\n colorTextLightSolid: PALETTE.tooltipColor,\n zIndexPopup: LAYOUT_TOKENS.zIndexPopupBase,\n },\n\n // ====== Popover ======\n Popover: {\n borderRadiusLG: 4,\n },\n\n // ====== Alert ======\n Alert: {\n withDescriptionIconSize: 14,\n // defaultBg: `${PALETTE.primary}10`,\n // infoBg: `${PALETTE.info}10`,\n // successBg: `${PALETTE.success}10`,\n // warningBg: `${PALETTE.warning}10`,\n // errorBg: `${PALETTE.error}10`,\n },\n\n // ====== Tag ======\n Tag: {\n borderRadiusSM: 4,\n defaultBg: 'rgba(102, 102, 102, 0.06)',\n defaultColor: PALETTE.textSecondary,\n },\n\n // ====== Card ======\n Card: {\n borderRadiusLG: 4,\n },\n\n // ====== Descriptions ======\n Descriptions: {\n labelBg: PALETTE.bgGrey,\n labelColor: PALETTE.textSecondary,\n contentColor: PALETTE.textBase,\n },\n\n // ====== Dropdown ======\n Dropdown: {\n borderRadiusLG: 4,\n paddingBlock: 4,\n },\n\n // ====== Checkbox ======\n Checkbox: {\n // marginInlineEnd: 8,\n },\n\n // ====== Segmented ======\n Segmented: {\n itemSelectedBg: PALETTE.bgWhite,\n itemColor: PALETTE.textSecondary,\n itemSelectedColor: PALETTE.textBase,\n // containerBg: PALETTE.bgGreyNormal,\n },\n\n // ====== Tabs ======\n Tabs: {\n itemSelectedColor: primaryColor,\n itemHoverColor: primaryColor,\n inkBarColor: primaryColor,\n },\n\n // ====== Form ======\n Form: {\n labelColor: PALETTE.textBase,\n labelFontSize: 14,\n verticalLabelPadding: '0 0 4px',\n },\n\n // ====== Timeline ======\n Timeline: {\n dotBg: 'transparent',\n itemPaddingBottom: 20,\n },\n\n // ====== Empty ======\n Empty: {},\n\n // ====== Spin ======\n Spin: {\n colorPrimary: primaryColor,\n },\n\n // ====== Upload ======\n Upload: {\n colorPrimary: primaryColor,\n colorPrimaryHover: primaryColor,\n },\n },\n };\n}\n\n/**\n * 将 hex 颜色解析为 RGB 分量\n */\nfunction hexToRgb(hex: string): { r: number; g: number; b: number } {\n const h = hex.replace('#', '');\n return {\n r: parseInt(h.substring(0, 2), 16),\n g: parseInt(h.substring(2, 4), 16),\n b: parseInt(h.substring(4, 6), 16),\n };\n}\n\n/**\n * 批量设置某颜色的透明度系列 CSS 变量\n */\nfunction setColorVariants(root: HTMLElement, prefix: string, hex: string): void {\n const { r, g, b } = hexToRgb(hex);\n root.style.setProperty(`--${prefix}-bg`, `rgba(${r}, ${g}, ${b}, 0.06)`);\n root.style.setProperty(`--${prefix}-bg-hover`, `rgba(${r}, ${g}, ${b}, 0.10)`);\n root.style.setProperty(`--${prefix}-bg-active`, `rgba(${r}, ${g}, ${b}, 0.16)`);\n root.style.setProperty(`--${prefix}-border`, `rgba(${r}, ${g}, ${b}, 0.20)`);\n root.style.setProperty(`--${prefix}-fill`, `rgba(${r}, ${g}, ${b}, 0.10)`);\n}\n\n/**\n * 将 antd 主题色同步到 CSS 变量\n * 用于 SCSS 和非 antd 组件的样式引用\n */\nexport function applyThemeToCssVariables(primaryColor: string): void {\n const root = document.documentElement;\n\n root.style.setProperty('--primary-color', primaryColor);\n root.style.setProperty('--success-color', PALETTE.success);\n root.style.setProperty('--info-color', PALETTE.info);\n root.style.setProperty('--error-color', PALETTE.error);\n root.style.setProperty('--warning-color', PALETTE.warning);\n\n // @kne/* 兼容别名(form-info 必填星号用 --color-warning,对齐主题红)\n root.style.setProperty('--color-primary', primaryColor);\n root.style.setProperty('--color-success', PALETTE.success);\n root.style.setProperty('--color-info', PALETTE.info);\n root.style.setProperty('--color-error', PALETTE.error);\n root.style.setProperty('--color-warning', PALETTE.error);\n\n root.style.setProperty('--layout-header-height', LAYOUT_TOKENS.headerHeight);\n root.style.setProperty('--layout-sider-width', LAYOUT_TOKENS.siderWidth);\n\n root.style.setProperty('--font-size-default', LAYOUT_TOKENS.fontSizeDefault);\n root.style.setProperty('--font-size-small', LAYOUT_TOKENS.fontSizeSmall);\n root.style.setProperty('--font-size-large', LAYOUT_TOKENS.fontSizeLarge);\n root.style.setProperty('--font-size-18', LAYOUT_TOKENS.fontSize18);\n root.style.setProperty('--font-size-24', LAYOUT_TOKENS.fontSize24);\n\n root.style.setProperty('--line-height-default', LAYOUT_TOKENS.lineHeightDefault);\n root.style.setProperty('--line-height-middle', LAYOUT_TOKENS.lineHeightMiddle);\n root.style.setProperty('--line-height-small', LAYOUT_TOKENS.lineHeightSmall);\n root.style.setProperty('--line-height-large', LAYOUT_TOKENS.lineHeightLarge);\n\n root.style.setProperty('--font-color', PALETTE.textBase);\n root.style.setProperty('--font-color-disabled', PALETTE.textDisabled);\n root.style.setProperty('--font-color-grey', PALETTE.textSecondary);\n root.style.setProperty('--font-color-grey-1', PALETTE.textTertiary);\n root.style.setProperty('--font-color-grey-2', PALETTE.borderBase);\n root.style.setProperty('--font-color-grey-3', PALETTE.borderLight);\n root.style.setProperty('--font-color-grey-4', PALETTE.borderLighter);\n\n root.style.setProperty('--bg-color-white', PALETTE.bgWhite);\n root.style.setProperty('--bg-color-grey', PALETTE.bgGrey);\n root.style.setProperty('--bg-color-grey-1', PALETTE.bgGreyLight);\n root.style.setProperty('--bg-color-grey-2', PALETTE.bgGreyNormal);\n root.style.setProperty('--bg-color-grey-3', PALETTE.bgGreyDark);\n root.style.setProperty('--bg-color-grey-4', PALETTE.bgBlueTint);\n\n root.style.setProperty('--tag-default', PALETTE.tagDefault);\n root.style.setProperty('--tag-success', PALETTE.tagSuccess);\n root.style.setProperty('--tag-progress', PALETTE.tagProgress);\n root.style.setProperty('--tag-danger', PALETTE.tagDanger);\n root.style.setProperty('--tag-info', PALETTE.tagInfo);\n root.style.setProperty('--tag-other', PALETTE.tagOther);\n\n root.style.setProperty('--file-icon-word', PALETTE.fileIconWord);\n root.style.setProperty('--file-icon-pdf', PALETTE.fileIconPdf);\n root.style.setProperty('--file-icon-excel', PALETTE.fileIconExcel);\n root.style.setProperty('--file-icon-ppt', PALETTE.fileIconPpt);\n root.style.setProperty('--file-icon-image', PALETTE.fileIconImage);\n root.style.setProperty('--file-icon-markdown', PALETTE.fileIconMarkdown);\n root.style.setProperty('--file-icon-visio', PALETTE.fileIconVisio);\n root.style.setProperty('--file-icon-archive', PALETTE.fileIconArchive);\n root.style.setProperty('--file-icon-folder', PALETTE.fileIconFolder);\n root.style.setProperty('--file-icon-other', PALETTE.fileIconOther);\n\n root.style.setProperty('--tooltip-bg', PALETTE.tooltipBg);\n root.style.setProperty('--tooltip-color', PALETTE.tooltipColor);\n root.style.setProperty('--tooltip-info-bg', PALETTE.bgWhite);\n root.style.setProperty('--tooltip-info-color', PALETTE.textBase);\n\n setColorVariants(root, 'primary-color', primaryColor);\n setColorVariants(root, 'success-color', PALETTE.success);\n setColorVariants(root, 'info-color', PALETTE.info);\n setColorVariants(root, 'error-color', PALETTE.error);\n setColorVariants(root, 'warning-color', PALETTE.warning);\n\n // kne form-info:--primary-color-06 / --primary-color-5\n const { r, g, b } = hexToRgb(primaryColor);\n root.style.setProperty('--primary-color-06', `rgba(${r}, ${g}, ${b}, 0.06)`);\n root.style.setProperty('--primary-color-5', `rgba(${r}, ${g}, ${b}, 0.20)`);\n}\n\n/** 项目级 CSS 变量覆盖(在 applyThemeToCssVariables 之后调用) */\nexport function applyCssTokenOverrides(\n overrides: Record<string, string>,\n target: HTMLElement = document.documentElement,\n): void {\n Object.entries(overrides).forEach(([key, value]) => {\n const varName = key.startsWith('--') ? key : `--${key}`;\n target.style.setProperty(varName, value);\n });\n}\n"],"names":["generateTheme","primaryColor","PALETTE","LAYOUT_TOKENS","hexToRgb","hex","h","setColorVariants","root","prefix","r","g","b","applyThemeToCssVariables","applyCssTokenOverrides","overrides","target","key","value","varName"],"mappings":"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"}
|