ant-design-vue/components/theme/convertLegacyToken.ts

1108 lines
41 KiB
TypeScript
Raw Normal View History

2023-04-21 14:52:32 +08:00
import type { MapToken } from './interface';
import formatToken from './util/alias';
export default function convertLegacyToken(mapToken: MapToken) {
const token = formatToken(mapToken as any);
const raw = {
theme: 'default',
'ant-prefix': 'ant',
'html-selector': 'html',
// -------- Colors -----------
// >>> Primary
'primary-color': token.colorPrimary,
'primary-color-hover': token.colorPrimaryHover,
'primary-color-active': token.colorPrimaryActive,
'primary-color-outline': 'fade(@primary-color, @outline-fade)',
'processing-color': token.colorPrimary,
// >>> Info
'info-color': token.colorInfo,
'info-color-deprecated-bg': token.colorInfoBg,
'info-color-deprecated-border': token.colorInfoBorder,
// >>> Success
'success-color': token.colorSuccess,
'success-color-hover': token.colorSuccessBgHover,
'success-color-active': token.colorSuccessActive,
'success-color-outline': 'fade(@success-color, @outline-fade)',
'success-color-deprecated-bg': token.colorSuccessBg,
'success-color-deprecated-border': token.colorSuccessBorder,
// >>> Warning
'warning-color': token.colorWarning,
'warning-color-hover': token.colorWarningHover,
'warning-color-active': token.colorWarningActive,
'warning-color-outline': 'fade(@warning-color, @outline-fade)',
'warning-color-deprecated-bg': token.colorWarningBg,
'warning-color-deprecated-border': token.colorWarningBorder,
// >>> Error
'error-color': token.colorError,
'error-color-hover': token.colorErrorHover,
'error-color-active': token.colorErrorActive,
'error-color-outline': 'fade(@error-color, @outline-fade)',
'error-color-deprecated-bg': token.colorErrorBg,
'error-color-deprecated-border': token.colorErrorBorder,
'highlight-color': token.colorHighlight,
'normal-color': '#d9d9d9',
white: token.colorWhite,
black: '#000',
// Color used by default to control hover and active backgrounds and for
// alert info backgrounds.
'primary-1': token.colorPrimaryBg,
'primary-2': token.colorPrimaryBgHover,
'primary-3': token.colorPrimaryBorder,
'primary-4': token.colorPrimaryBorderHover,
'primary-5': token.colorPrimaryHover,
'primary-6': token.colorPrimary,
'primary-7': token.colorPrimaryActive,
'primary-8': token.colorPrimaryTextHover,
'primary-9': token.colorPrimaryText,
'primary-10': token.colorPrimaryTextActive,
// Base Scaffolding Variables
// ---
// Background color for `<body>`
'body-background': token.colorBgBase,
// Base background color for most components
'component-background': token.colorBgContainer,
// Popover background color
'popover-background': token.colorBgElevated,
'popover-customize-border-color': token.colorSplit,
'font-family': token.fontFamily,
'code-family': "'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace",
'text-color': token.colorText,
'text-color-secondary': token.colorTextSecondary,
'text-color-inverse': token.colorWhite,
'icon-color': token.colorIcon,
'icon-color-hover': token.colorIconHover,
'heading-color': token.colorTextHeading,
'text-color-dark': 'fade(@white, 85%)',
'text-color-secondary-dark': 'fade(@white, 65%)',
'text-selection-bg': token.colorPrimary,
'font-variant-base': 'tabular-nums',
'font-feature-settings-base': 'tnum',
'font-size-base': token.fontSize,
'font-size-lg': token.fontSizeLG,
'font-size-sm': token.fontSizeSM,
'heading-1-size': token.fontSizeHeading1,
'heading-2-size': token.fontSizeHeading2,
'heading-3-size': token.fontSizeHeading3,
'heading-4-size': token.fontSizeHeading4,
'heading-5-size': token.fontSizeHeading5,
// https://github.com/ant-design/ant-design/issues/20210
'line-height-base': token.lineHeight,
'border-radius-base': token.borderRadius,
'border-radius-sm': token.borderRadiusSM,
// control border
'control-border-radius': token.borderRadius,
// arrow border
'arrow-border-radius': token.borderRadiusSM, // 2px;
// vertical paddings
'padding-lg': token.paddingLG,
'padding-md': token.padding,
'padding-sm': token.paddingSM,
'padding-xs': token.paddingXS,
'padding-xss': token.paddingXXS,
// vertical padding for all form controls
'control-padding-horizontal': token.paddingSM, //@padding-sm;
'control-padding-horizontal-sm': token.paddingXS, // @padding-xs;
// vertical margins
'margin-lg': token.marginLG,
'margin-md': token.margin,
'margin-sm': token.marginSM,
'margin-xs': token.marginXS,
'margin-xss': token.marginXXS,
// height rules
'height-base': token.controlHeight,
'height-lg': token.controlHeightLG,
'height-sm': token.controlHeightSM,
// The background colors for active and hover states for things like
// list items or table cells.
'item-active-bg': token.controlItemBgActive,
'item-hover-bg': token.controlItemBgHover,
// ICONFONT
'iconfont-css-prefix': 'anticon',
// LINK
'link-color': token.colorLink,
'link-hover-color': token.colorLinkHover,
'link-active-color': token.colorLinkActive,
'link-decoration': 'none',
'link-hover-decoration': 'none',
'link-focus-decoration': 'none',
'link-focus-outline': 0,
// Animation
'ease-base-out': token.motionEaseOut,
'ease-base-in': 'cubic-bezier(0.9, 0, 0.3, 0.7)',
'ease-out': token.motionEaseOut,
'ease-in': 'cubic-bezier(0.55, 0.055, 0.675, 0.19)',
'ease-in-out': token.motionEaseInOut,
'ease-out-back': token.motionEaseOutBack,
'ease-in-back': 'cubic-bezier(0.71, -0.46, 0.88, 0.6)',
'ease-in-out-back': 'cubic-bezier(0.71, -0.46, 0.29, 1.46)',
'ease-out-circ': token.motionEaseOutCirc,
'ease-in-circ': 'cubic-bezier(0.6, 0.04, 0.98, 0.34)',
'ease-in-out-circ': token.motionEaseInOutCirc,
'ease-out-quint': token.motionEaseOutQuint,
'ease-in-quint': token.motionEaseInQuint,
'ease-in-out-quint': 'cubic-bezier(0.86, 0, 0.07, 1)',
// Border color
'border-color-base': token.colorBorder,
'border-color-split': token.colorSplit,
'border-color-inverse': token.colorWhite,
'border-width-base': token.lineWidth,
'border-style-base': 'solid',
// Outline
'outline-blur-size': 0,
'outline-width': token.controlOutlineWidth,
'outline-color': token.controlOutline,
'outline-fade': '20%',
'background-color-light': 'hsv(0, 0, 98%)', // background of header and selected item
'background-color-base': 'hsv(0, 0, 96%)', // Default grey background color
// Disabled states
'disabled-color': token.colorTextDisabled,
'disabled-bg': token.colorBgContainerDisabled,
'disabled-active-bg': token.colorBgContainerDisabled, // tint(@black, 90%);
'disabled-color-dark': 'fade(#fff, 35%)',
// Shadow
'shadow-color': 'rgba(0, 0, 0, 0.15)',
'shadow-color-inverse': token.colorBgContainer,
'box-shadow-base': token.boxShadow,
'shadow-1-up': token.boxShadowDrawerUp,
'shadow-1-down': token.boxShadowDrawerDown,
'shadow-1-left': token.boxShadowDrawerLeft,
'shadow-1-right': token.boxShadowDrawerRight,
'shadow-2': token.boxShadowSecondary,
// ==========================================================================
// == Components ==
// ==========================================================================
// Buttons
'btn-font-weight': '400',
'btn-border-radius-base': '@border-radius-base',
'btn-border-radius-sm': '@border-radius-base',
'btn-border-width': '@border-width-base',
'btn-border-style': '@border-style-base',
'btn-shadow': '0 2px 0 rgba(0, 0, 0, 0.015)',
'btn-primary-shadow': '0 2px 0 rgba(0, 0, 0, 0.045)',
'btn-text-shadow': '0 -1px 0 rgba(0, 0, 0, 0.12)',
'btn-primary-color': '#fff',
'btn-primary-bg': '@primary-color',
'btn-default-color': '@text-color',
'btn-default-bg': '@component-background',
'btn-default-border': '@border-color-base',
'btn-danger-color': '#fff',
'btn-danger-bg': '@error-color',
'btn-danger-border': '@error-color',
'btn-disable-color': '@disabled-color',
'btn-disable-bg': '@disabled-bg',
'btn-disable-border': '@border-color-base',
'btn-default-ghost-color': '@component-background',
'btn-default-ghost-bg': 'transparent',
'btn-default-ghost-border': '@component-background',
'btn-font-size-lg': '@font-size-lg',
'btn-font-size-sm': '@font-size-base',
'btn-padding-horizontal-base': '@padding-md - 1px',
'btn-padding-horizontal-lg': '@btn-padding-horizontal-base',
'btn-padding-horizontal-sm': '@padding-xs - 1px',
'btn-height-base': '@height-base',
'btn-height-lg': '@height-lg',
'btn-height-sm': '@height-sm',
'btn-line-height': '@line-height-base',
'btn-circle-size': '@btn-height-base',
'btn-circle-size-lg': '@btn-height-lg',
'btn-circle-size-sm': '@btn-height-sm',
'btn-square-size': '@btn-height-base',
'btn-square-size-lg': '@btn-height-lg',
'btn-square-size-sm': '@btn-height-sm',
'btn-square-only-icon-size': '@font-size-base + 2px',
'btn-square-only-icon-size-sm': '@font-size-base',
'btn-square-only-icon-size-lg': '@btn-font-size-lg + 2px',
'btn-group-border': '@primary-5',
'btn-link-hover-bg': 'transparent',
'btn-text-hover-bg': 'rgba(0, 0, 0, 0.018)',
// Checkbox
'checkbox-size': '16px',
'checkbox-color': '@primary-color',
'checkbox-check-color': '#fff',
'checkbox-check-bg': '@checkbox-check-color',
'checkbox-border-width': '@border-width-base',
'checkbox-border-radius': '@border-radius-base',
'checkbox-group-item-margin-right': '8px',
// Descriptions
'descriptions-bg': '#fafafa',
'descriptions-title-margin-bottom': '20px',
'descriptions-default-padding': '@padding-md @padding-lg',
'descriptions-middle-padding': '@padding-sm @padding-lg',
'descriptions-small-padding': '@padding-xs @padding-md',
'descriptions-item-padding-bottom': '@padding-md',
'descriptions-item-trailing-colon': 'true',
'descriptions-item-label-colon-margin-right': '8px',
'descriptions-item-label-colon-margin-left': '2px',
'descriptions-extra-color': '@text-color',
// Divider
'divider-text-padding': '1em',
'divider-orientation-margin': '5%',
'divider-color': 'rgba(0, 0, 0, 6%)',
'divider-vertical-gutter': '8px',
// Dropdown
'dropdown-selected-color': '@primary-color',
'dropdown-menu-submenu-disabled-bg': '@component-background',
'dropdown-selected-bg': '@item-active-bg',
// Empty
'empty-font-size': '@font-size-base',
// Radio
'radio-size': '16px',
'radio-top': '0.2em',
'radio-border-width': '1px',
'radio-dot-size': '@radio-size - 8px',
'radio-dot-color': '@primary-color',
'radio-dot-disabled-color': 'fade(@black, 20%)',
'radio-solid-checked-color': '@component-background',
// Radio buttons
'radio-button-bg': '@btn-default-bg',
'radio-button-checked-bg': '@btn-default-bg',
'radio-button-color': '@btn-default-color',
'radio-button-hover-color': '@primary-5',
'radio-button-active-color': '@primary-7',
'radio-button-padding-horizontal': '@padding-md - 1px',
'radio-disabled-button-checked-bg': '@disabled-active-bg',
'radio-disabled-button-checked-color': '@disabled-color',
'radio-wrapper-margin-right': '8px',
// Media queries breakpoints
// @screen-xs and @screen-xs-min is not used in Grid
// smallest break point is @screen-md
'screen-xs': '480px',
'screen-xs-min': '@screen-xs',
// 👆 Extra small screen / phone
// 👇 Small screen / tablet
'screen-sm': '576px',
'screen-sm-min': '@screen-sm',
// Medium screen / desktop
'screen-md': '768px',
'screen-md-min': '@screen-md',
// Large screen / wide desktop
'screen-lg': '992px',
'screen-lg-min': '@screen-lg',
// Extra large screen / full hd
'screen-xl': '1200px',
'screen-xl-min': '@screen-xl',
// Extra extra large screen / large desktop
'screen-xxl': '1600px',
'screen-xxl-min': '@screen-xxl',
// provide a maximum
'screen-xs-max': '(@screen-sm-min - 1px)',
'screen-sm-max': '(@screen-md-min - 1px)',
'screen-md-max': '(@screen-lg-min - 1px)',
'screen-lg-max': '(@screen-xl-min - 1px)',
'screen-xl-max': '(@screen-xxl-min - 1px)',
// Grid system
'grid-columns': '24',
// Layout
'layout-body-background': '#f0f2f5',
'layout-header-background': '#001529',
'layout-header-height': '64px',
'layout-header-padding': '0 50px',
'layout-header-color': '@text-color',
'layout-footer-padding': '24px 50px',
'layout-footer-background': '@layout-body-background',
'layout-sider-background': '@layout-header-background',
'layout-trigger-height': '48px',
'layout-trigger-background': '#002140',
'layout-trigger-color': '#fff',
'layout-zero-trigger-width': '36px',
'layout-zero-trigger-height': '42px',
// Layout light theme
'layout-sider-background-light': '#fff',
'layout-trigger-background-light': '#fff',
'layout-trigger-color-light': '@text-color',
// z-index list, order by `z-index`
'zindex-badge': 'auto',
'zindex-table-fixed': '2',
'zindex-affix': '10',
'zindex-back-top': '10',
'zindex-picker-panel': '10',
'zindex-popup-close': '10',
'zindex-modal': '1000',
'zindex-modal-mask': '1000',
'zindex-message': '1010',
'zindex-notification': '1010',
'zindex-popover': '1030',
'zindex-dropdown': '1050',
'zindex-picker': '1050',
'zindex-popoconfirm': '1060',
'zindex-tooltip': '1070',
'zindex-image': '1080',
// Animation
'animation-duration-slow': '0.3s', // Modal
'animation-duration-base': '0.2s',
'animation-duration-fast': '0.1s', // Tooltip
//CollapsePanel
'collapse-panel-border-radius': '@border-radius-base',
//Dropdown
'dropdown-menu-bg': '@component-background',
'dropdown-vertical-padding': '5px',
'dropdown-edge-child-vertical-padding': '4px',
'dropdown-font-size': '@font-size-base',
'dropdown-line-height': '22px',
// Form
// ---
'label-required-color': '@highlight-color',
'label-color': '@heading-color',
'form-warning-input-bg': '@input-bg',
'form-item-margin-bottom': '24px',
'form-item-trailing-colon': 'true',
'form-vertical-label-padding': '0 0 8px',
'form-vertical-label-margin': '0',
'form-item-label-font-size': '@font-size-base',
'form-item-label-height': '@input-height-base',
'form-item-label-colon-margin-right': '8px',
'form-item-label-colon-margin-left': '2px',
'form-error-input-bg': '@input-bg',
// Input
// ---
'input-height-base': '@height-base',
'input-height-lg': '@height-lg',
'input-height-sm': '@height-sm',
'input-padding-horizontal': '@control-padding-horizontal - 1px',
'input-padding-horizontal-base': '@input-padding-horizontal',
'input-padding-horizontal-sm': '@control-padding-horizontal-sm - 1px',
'input-padding-horizontal-lg': '@input-padding-horizontal',
'input-padding-vertical-base': `max(
(round(((@input-height-base - @font-size-base * @line-height-base) / 2) * 10) / 10) -
@border-width-base,
3px
)`,
'input-padding-vertical-sm': `max(
(round(((@input-height-sm - @font-size-base * @line-height-base) / 2) * 10) / 10) -
@border-width-base,
0
)`,
'input-padding-vertical-lg': `(
ceil(((@input-height-lg - @font-size-lg * @line-height-base) / 2) * 10) / 10
) - @border-width-base`,
'input-placeholder-color': 'hsv(0, 0, 75%)',
'input-color': '@text-color',
'input-icon-color': '@input-color',
'input-border-color': '@border-color-base',
'input-bg': '@component-background',
'input-number-hover-border-color': '@input-hover-border-color',
'input-number-handler-active-bg': '#f4f4f4',
'input-number-handler-hover-bg': '@primary-5',
'input-number-handler-bg': '@component-background',
'input-number-handler-border-color': '@border-color-base',
'input-addon-bg': '@background-color-light',
'input-hover-border-color': '@primary-5',
'input-disabled-bg': '@disabled-bg',
'input-outline-offset': '0 0',
'input-icon-hover-color': 'fade(@black, 85%)',
'input-disabled-color': '@disabled-color',
// Mentions
// ---
'mentions-dropdown-bg': '@component-background',
'mentions-dropdown-menu-item-hover-bg': '@mentions-dropdown-bg',
// Select
// ---
'select-border-color': '@border-color-base',
'select-item-selected-color': '@text-color',
'select-item-selected-font-weight': '600',
'select-dropdown-bg': '@component-background',
'select-item-selected-bg': '@primary-1',
'select-item-active-bg': '@item-hover-bg',
'select-dropdown-vertical-padding': '@dropdown-vertical-padding',
'select-dropdown-font-size': '@dropdown-font-size',
'select-dropdown-line-height': '@dropdown-line-height',
'select-dropdown-height': '32px',
'select-background': '@component-background',
'select-clear-background': '@select-background',
'select-selection-item-bg': '@background-color-base',
'select-selection-item-border-color': '@border-color-split',
'select-single-item-height-lg': '40px',
'select-multiple-item-height': '@input-height-base - @input-padding-vertical-base * 2', // Normal 24px
'select-multiple-item-height-lg': '32px',
'select-multiple-item-spacing-half': 'ceil((@input-padding-vertical-base / 2))',
'select-multiple-disabled-background': '@input-disabled-bg',
'select-multiple-item-disabled-color': '#bfbfbf',
'select-multiple-item-disabled-border-color': '@select-border-color',
// Cascader
// ---
'cascader-bg': '@component-background',
'cascader-item-selected-bg': '@primary-1',
'cascader-menu-bg': '@component-background',
'cascader-menu-border-color-split': '@border-color-split',
// Cascader
// ----
'cascader-dropdown-vertical-padding': '@dropdown-vertical-padding',
'cascader-dropdown-edge-child-vertical-padding': '@dropdown-edge-child-vertical-padding',
'cascader-dropdown-font-size': '@dropdown-font-size',
'cascader-dropdown-line-height': '@dropdown-line-height',
// Anchor
// ---
'anchor-bg': 'transparent',
'anchor-border-color': '@border-color-split',
'anchor-link-top': '4px',
'anchor-link-left': '16px',
'anchor-link-padding': '@anchor-link-top 0 @anchor-link-top @anchor-link-left',
// Tooltip
// ---
// Tooltip max width
'tooltip-max-width': '250px',
// Tooltip text color
'tooltip-color': '#fff',
// Tooltip background color
'tooltip-bg': 'rgba(0, 0, 0, 0.75)',
// Tooltip arrow width
'tooltip-arrow-width': '8px * sqrt(2)',
// Tooltip distance with trigger
'tooltip-distance': '@tooltip-arrow-width - 1px + 4px',
// Tooltip arrow color
'tooltip-arrow-color': '@tooltip-bg',
'tooltip-border-radius': '@border-radius-base',
// Popover
// ---
// Popover body background color
'popover-bg': '@component-background',
// Popover text color
'popover-color': '@text-color',
// Popover maximum width
'popover-min-width': '177px',
'popover-min-height': '32px',
// Popover arrow width
'popover-arrow-width': '@tooltip-arrow-width',
// Popover arrow color
'popover-arrow-color': '@popover-bg',
// Popover outer arrow width
// Popover outer arrow color
'popover-arrow-outer-color': '@popover-bg',
// Popover distance with trigger
'popover-distance': '@popover-arrow-width + 4px',
'popover-padding-horizontal': '@padding-md',
// Modal
// --
'modal-header-padding-vertical': '@padding-md',
'modal-header-padding-horizontal': '@padding-lg',
'modal-body-padding': '@padding-lg',
'modal-header-bg': '@component-background',
'modal-header-padding': '@modal-header-padding-vertical @modal-header-padding-horizontal',
'modal-header-border-width': '@border-width-base',
'modal-header-border-style': '@border-style-base',
'modal-header-title-line-height': '22px',
'modal-header-title-font-size': '@font-size-lg',
'modal-header-border-color-split': '@border-color-split',
'modal-header-close-size':
'@modal-header-title-line-height + 2 * @modal-header-padding-vertical',
'modal-content-bg': '@component-background',
'modal-heading-color': '@heading-color',
'modal-close-color': '@text-color-secondary',
'modal-footer-bg': 'transparent',
'modal-footer-border-color-split': '@border-color-split',
'modal-footer-border-style': '@border-style-base',
'modal-footer-padding-vertical': '10px',
'modal-footer-padding-horizontal': '16px',
'modal-footer-border-width': '@border-width-base',
'modal-mask-bg': 'fade(@black, 45%)',
'modal-confirm-body-padding': '32px 32px 24px',
'modal-confirm-title-font-size': '@font-size-lg',
'modal-border-radius': '@border-radius-base',
// Progress
// --
'progress-default-color': '@processing-color',
'progress-remaining-color': '@background-color-base',
'progress-info-text-color': '@progress-text-color',
'progress-radius': '100px',
'progress-steps-item-bg': '#f3f3f3',
'progress-text-font-size': '1em',
'progress-text-color': '@text-color', // This is for circle text color, should be renamed better
'progress-circle-text-font-size': '1em',
// Menu
// ---
'menu-inline-toplevel-item-height': '40px',
'menu-item-height': '40px',
'menu-item-group-height': '@line-height-base',
'menu-collapsed-width': '80px',
'menu-bg': '@component-background',
'menu-popup-bg': '@component-background',
'menu-item-color': '@text-color',
'menu-inline-submenu-bg': '@background-color-light',
'menu-highlight-color': '@primary-color',
'menu-highlight-danger-color': '@error-color',
'menu-item-active-bg': '@primary-1',
'menu-item-active-danger-bg': '@red-1',
'menu-item-active-border-width': '3px',
'menu-item-group-title-color': '@text-color-secondary',
'menu-item-vertical-margin': '4px',
'menu-item-font-size': '@font-size-base',
'menu-item-boundary-margin': '8px',
'menu-item-padding-horizontal': '20px',
'menu-item-padding': '0 @menu-item-padding-horizontal',
'menu-horizontal-line-height': '46px',
'menu-icon-margin-right': '10px',
'menu-icon-size': '@menu-item-font-size',
'menu-icon-size-lg': '@font-size-lg',
'menu-item-group-title-font-size': '@menu-item-font-size',
// dark theme
'menu-dark-color': '@text-color-secondary-dark',
'menu-dark-danger-color': '@error-color',
'menu-dark-bg': '@layout-header-background',
'menu-dark-arrow-color': '#fff',
'menu-dark-inline-submenu-bg': '#000c17',
'menu-dark-highlight-color': '#fff',
'menu-dark-item-active-bg': '@primary-color',
'menu-dark-item-active-danger-bg': '@error-color',
'menu-dark-selected-item-icon-color': '@white',
'menu-dark-selected-item-text-color': '@white',
'menu-dark-item-hover-bg': 'transparent',
// Spin
// ---
'spin-dot-size-sm': '14px',
'spin-dot-size': '20px',
'spin-dot-size-lg': '32px',
// Table
// --
'table-bg': '@component-background',
'table-header-bg': '@background-color-light',
'table-header-color': '@heading-color',
'table-header-sort-bg': '@background-color-base',
'table-body-sort-bg': '#fafafa',
'table-row-hover-bg': '@background-color-light',
'table-selected-row-color': 'inherit',
'table-selected-row-bg': '@primary-1',
'table-body-selected-sort-bg': '@table-selected-row-bg',
'table-selected-row-hover-bg': 'darken(@table-selected-row-bg, 2%)',
'table-expanded-row-bg': '#fbfbfb',
'table-padding-vertical': '16px',
'table-padding-horizontal': '16px',
'table-padding-vertical-md': '(@table-padding-vertical * 3 / 4)',
'table-padding-horizontal-md': '(@table-padding-horizontal / 2)',
'table-padding-vertical-sm': '(@table-padding-vertical / 2)',
'table-padding-horizontal-sm': '(@table-padding-horizontal / 2)',
'table-border-color': '@border-color-split',
'table-border-radius-base': '@border-radius-base',
'table-footer-bg': '@background-color-light',
'table-footer-color': '@heading-color',
'table-header-bg-sm': '@table-header-bg',
'table-font-size': '@font-size-base',
'table-font-size-md': '@table-font-size',
'table-font-size-sm': '@table-font-size',
'table-header-cell-split-color': 'rgba(0, 0, 0, 0.06)',
// Sorter
// Legacy: `table-header-sort-active-bg` is used for hover not real active
'table-header-sort-active-bg': 'rgba(0, 0, 0, 0.04)',
'table-fixed-header-sort-active-bg': 'hsv(0, 0, 96%)',
// Filter
'table-header-filter-active-bg': 'rgba(0, 0, 0, 0.04)',
'table-filter-btns-bg': 'inherit',
'table-filter-dropdown-bg': '@component-background',
'table-expand-icon-bg': '@component-background',
'table-selection-column-width': '32px',
// Sticky
'table-sticky-scroll-bar-bg': 'fade(#000, 35%)',
'table-sticky-scroll-bar-radius': '4px',
// Tag
// --
'tag-border-radius': '@border-radius-base',
'tag-default-bg': '@background-color-light',
'tag-default-color': '@text-color',
'tag-font-size': '@font-size-sm',
'tag-line-height': '20px',
// TimePicker
// ---
'picker-bg': '@component-background',
'picker-basic-cell-hover-color': '@item-hover-bg',
'picker-basic-cell-active-with-range-color': '@primary-1',
'picker-basic-cell-hover-with-range-color': 'lighten(@primary-color, 35%)',
'picker-basic-cell-disabled-bg': 'rgba(0, 0, 0, 0.04)',
'picker-border-color': '@border-color-split',
'picker-date-hover-range-border-color': 'lighten(@primary-color, 20%)',
'picker-date-hover-range-color': '@picker-basic-cell-hover-with-range-color',
'picker-time-panel-column-width': '56px',
'picker-time-panel-column-height': '224px',
'picker-time-panel-cell-height': '28px',
'picker-panel-cell-height': '24px',
'picker-panel-cell-width': '36px',
'picker-text-height': '40px',
'picker-panel-without-time-cell-height': '66px',
// Calendar
// ---
'calendar-bg': '@component-background',
'calendar-input-bg': '@input-bg',
'calendar-border-color': '@border-color-inverse',
'calendar-item-active-bg': '@item-active-bg',
'calendar-column-active-bg': 'fade(@calendar-item-active-bg, 20%)',
'calendar-full-bg': '@calendar-bg',
'calendar-full-panel-bg': '@calendar-full-bg',
// Carousel
// ---
'carousel-dot-width': '16px',
'carousel-dot-height': '3px',
'carousel-dot-active-width': '24px',
// Badge
// ---
'badge-height': '20px',
'badge-height-sm': '14px',
'badge-dot-size': '6px',
'badge-font-size': '@font-size-sm',
'badge-font-size-sm': '@font-size-sm',
'badge-font-weight': 'normal',
'badge-status-size': '6px',
'badge-text-color': '@component-background',
'badge-color': '@highlight-color',
// Rate
// ---
'rate-star-color': '@yellow-6',
'rate-star-bg': '@border-color-split',
'rate-star-size': '20px',
'rate-star-hover-scale': 'scale(1.1)',
// Card
// ---
'card-head-color': '@heading-color',
'card-head-background': 'transparent',
'card-head-font-size': '@font-size-lg',
'card-head-font-size-sm': '@font-size-base',
'card-head-padding': '16px',
'card-head-padding-sm': '(@card-head-padding / 2)',
'card-head-height': '48px',
'card-head-height-sm': '36px',
'card-inner-head-padding': '12px',
'card-padding-base': '24px',
'card-padding-base-sm': '(@card-padding-base / 2)',
'card-actions-background': '@component-background',
'card-actions-li-margin': '12px 0',
'card-skeleton-bg': '#cfd8dc',
'card-background': '@component-background',
'card-shadow': `0 1px 2px -2px rgba(0, 0, 0, 0.16), 0 3px 6px 0 rgba(0, 0, 0, 0.12),
0 5px 12px 4px rgba(0, 0, 0, 0.09)`,
'card-radius': '@border-radius-base',
'card-head-tabs-margin-bottom': '-17px',
'card-head-extra-color': '@text-color',
// Comment
// ---
'comment-bg': 'inherit',
'comment-padding-base': '@padding-md 0',
'comment-nest-indent': '44px',
'comment-font-size-base': '@font-size-base',
'comment-font-size-sm': '@font-size-sm',
'comment-author-name-color': '@text-color-secondary',
'comment-author-time-color': '#ccc',
'comment-action-color': '@text-color-secondary',
'comment-action-hover-color': '#595959',
'comment-actions-margin-bottom': 'inherit',
'comment-actions-margin-top': '@margin-sm',
'comment-content-detail-p-margin-bottom': 'inherit',
// Tabs
// ---
'tabs-card-head-background': '@background-color-light',
'tabs-card-height': '40px',
'tabs-card-active-color': '@primary-color',
'tabs-card-horizontal-padding': `(
(@tabs-card-height - floor(@font-size-base * @line-height-base)) / 2
) - @border-width-base @padding-md`,
'tabs-card-horizontal-padding-sm': '6px @padding-md',
'tabs-card-horizontal-padding-lg': '7px @padding-md 6px',
'tabs-title-font-size': '@font-size-base',
'tabs-title-font-size-lg': '@font-size-lg',
'tabs-title-font-size-sm': '@font-size-base',
'tabs-ink-bar-color': '@primary-color',
'tabs-bar-margin': '0 0 @margin-md 0',
'tabs-horizontal-gutter': '32px',
'tabs-horizontal-margin': '0 0 0 @tabs-horizontal-gutter',
'tabs-horizontal-margin-rtl': '0 0 0 32px',
'tabs-horizontal-padding': '@padding-sm 0',
'tabs-horizontal-padding-lg': '@padding-md 0',
'tabs-horizontal-padding-sm': '@padding-xs 0',
'tabs-vertical-padding': '@padding-xs @padding-lg',
'tabs-vertical-margin': '@margin-md 0 0 0',
'tabs-scrolling-size': '32px',
'tabs-highlight-color': '@primary-color',
'tabs-hover-color': '@primary-5',
'tabs-active-color': '@primary-7',
'tabs-card-gutter': '2px',
'tabs-card-tab-active-border-top': '2px solid transparent',
// BackTop
// ---
'back-top-color': '#fff',
'back-top-bg': '@text-color-secondary',
'back-top-hover-bg': '@text-color',
// Avatar
// ---
'avatar-size-base': '32px',
'avatar-size-lg': '40px',
'avatar-size-sm': '24px',
'avatar-font-size-base': '18px',
'avatar-font-size-lg': '24px',
'avatar-font-size-sm': '14px',
'avatar-bg': '#ccc',
'avatar-color': '#fff',
'avatar-border-radius': '@border-radius-base',
'avatar-group-overlapping': '-8px',
'avatar-group-space': '3px',
'avatar-group-border-color': '#fff',
// Switch
// ---
'switch-height': '22px',
'switch-sm-height': '16px',
'switch-min-width': '44px',
'switch-sm-min-width': '28px',
'switch-disabled-opacity': '0.4',
'switch-color': '@primary-color',
'switch-bg': '@component-background',
'switch-shadow-color': 'fade(#00230b, 20%)',
'switch-padding': '2px',
'switch-inner-margin-min': 'ceil(@switch-height * 0.3)',
'switch-inner-margin-max': 'ceil(@switch-height * 1.1)',
'switch-sm-inner-margin-min': 'ceil(@switch-sm-height * 0.3)',
'switch-sm-inner-margin-max': 'ceil(@switch-sm-height * 1.1)',
// Pagination
// ---
'pagination-item-bg': '@component-background',
'pagination-item-size': '@height-base',
'pagination-item-size-sm': '24px',
'pagination-font-family': '@font-family',
'pagination-font-weight-active': '500',
'pagination-item-bg-active': '@component-background',
'pagination-item-link-bg': '@component-background',
'pagination-item-disabled-color-active': '@disabled-color',
'pagination-item-disabled-bg-active': '@disabled-active-bg',
'pagination-item-input-bg': '@component-background',
'pagination-mini-options-size-changer-top': '0px',
// PageHeader
// ---
'page-header-padding': '@padding-lg',
'page-header-padding-vertical': '@padding-md',
'page-header-padding-breadcrumb': '@padding-sm',
'page-header-content-padding-vertical': '@padding-sm',
'page-header-back-color': '#000',
'page-header-ghost-bg': 'inherit',
'page-header-heading-title': '@heading-4-size',
'page-header-heading-sub-title': '14px',
'page-header-tabs-tab-font-size': '16px',
// Breadcrumb
// ---
'breadcrumb-base-color': '@text-color-secondary',
'breadcrumb-last-item-color': '@text-color',
'breadcrumb-font-size': '@font-size-base',
'breadcrumb-icon-font-size': '@font-size-base',
'breadcrumb-link-color': '@text-color-secondary',
'breadcrumb-link-color-hover': '@text-color',
'breadcrumb-separator-color': '@text-color-secondary',
'breadcrumb-separator-margin': '0 @padding-xs',
// Slider
// ---
'slider-margin': '10px 6px 10px',
'slider-rail-background-color': '@background-color-base',
'slider-rail-background-color-hover': '#e1e1e1',
'slider-track-background-color': '@primary-3',
'slider-track-background-color-hover': '@primary-4',
'slider-handle-border-width': '2px',
'slider-handle-background-color': '@component-background',
'slider-handle-color': '@primary-3',
'slider-handle-color-hover': '@primary-4',
'slider-handle-color-focus': 'tint(@primary-color, 20%)',
'slider-handle-color-focus-shadow': 'fade(@primary-color, 12%)',
'slider-handle-color-tooltip-open': '@primary-color',
'slider-handle-size': '14px',
'slider-handle-margin-top': '-5px',
'slider-handle-margin-left': '-5px',
'slider-handle-shadow': '0',
'slider-dot-border-color': '@border-color-split',
'slider-dot-border-color-active': 'tint(@primary-color, 50%)',
'slider-disabled-color': '@disabled-color',
'slider-disabled-background-color': '@component-background',
// Tree
// ---
'tree-bg': '@component-background',
'tree-title-height': '24px',
'tree-child-padding': '18px',
'tree-directory-selected-color': '#fff',
'tree-directory-selected-bg': '@primary-color',
'tree-node-hover-bg': '@item-hover-bg',
'tree-node-selected-bg': '@primary-2',
// Collapse
// ---
'collapse-header-padding': '@padding-sm @padding-md',
'collapse-header-padding-extra': '40px',
'collapse-header-bg': '@background-color-light',
'collapse-content-padding': '@padding-md',
'collapse-content-bg': '@component-background',
'collapse-header-arrow-left': '16px',
// Skeleton
// ---
'skeleton-color': 'rgba(190, 190, 190, 0.2)',
'skeleton-to-color': 'shade(@skeleton-color, 5%)',
'skeleton-paragraph-margin-top': '28px',
'skeleton-paragraph-li-margin-top': '@margin-md',
'skeleton-paragraph-li-height': '16px',
'skeleton-title-height': '16px',
'skeleton-title-paragraph-margin-top': '@margin-lg',
// Transfer
// ---
'transfer-header-height': '40px',
'transfer-item-height': '@height-base',
'transfer-disabled-bg': '@disabled-bg',
'transfer-list-height': '200px',
'transfer-item-hover-bg': '@item-hover-bg',
'transfer-item-selected-hover-bg': 'darken(@item-active-bg, 2%)',
'transfer-item-padding-vertical': '6px',
'transfer-list-search-icon-top': '12px',
// Message
// ---
'message-notice-content-padding': '10px 16px',
'message-notice-content-bg': '@component-background',
// Motion
// ---
'wave-animation-width': '6px',
// Alert
// ---
'alert-success-border-color': token.colorSuccessBorder,
'alert-success-bg-color': token.colorSuccessBg,
'alert-success-icon-color': token.colorSuccess,
'alert-info-border-color': token.colorInfoBorder,
'alert-info-bg-color': token.colorInfoBg,
'alert-info-icon-color': token.colorInfo,
'alert-warning-border-color': token.colorWarningBorder,
'alert-warning-bg-color': token.colorWarningBg,
'alert-warning-icon-color': token.colorWarning,
'alert-error-border-color': token.colorErrorBorder,
'alert-error-bg-color': token.colorErrorBg,
'alert-error-icon-color': '@error-color',
'alert-message-color': '@heading-color',
'alert-text-color': '@text-color',
'alert-close-color': '@text-color-secondary',
'alert-close-hover-color': '@icon-color-hover',
'alert-padding-vertical': '@padding-xs',
'alert-padding-horizontal': '@padding-md - 1px',
'alert-no-icon-padding-vertical': '@padding-xs',
'alert-with-description-no-icon-padding-vertical': '@padding-md - 1px',
'alert-with-description-padding-vertical': '@padding-md - 1px',
'alert-with-description-padding': `@alert-with-description-padding-vertical 15px
@alert-with-description-no-icon-padding-vertical @alert-with-description-icon-size`,
'alert-icon-top': '8px + @font-size-base * (@line-height-base / 2) - (@font-size-base / 2)',
'alert-with-description-icon-size': '24px',
// List
// ---
'list-header-background': 'transparent',
'list-footer-background': 'transparent',
'list-empty-text-padding': '@padding-md',
'list-item-padding': '@padding-sm 0',
'list-item-padding-sm': '@padding-xs @padding-md',
'list-item-padding-lg': '16px 24px',
'list-item-meta-margin-bottom': '@padding-md',
'list-item-meta-avatar-margin-right': '@padding-md',
'list-item-meta-title-margin-bottom': '@padding-sm',
'list-customize-card-bg': '@component-background',
'list-item-meta-description-font-size': '@font-size-base',
// Statistic
// ---
'statistic-title-font-size': '@font-size-base',
'statistic-content-font-size': '24px',
'statistic-unit-font-size': '24px',
'statistic-font-family': '@font-family',
// Drawer
// ---
'drawer-header-padding': '@padding-md @padding-lg',
'drawer-body-padding': '@padding-lg',
'drawer-bg': '@component-background',
'drawer-footer-padding-vertical': '@modal-footer-padding-vertical',
'drawer-footer-padding-horizontal': '@modal-footer-padding-horizontal',
'drawer-header-close-size': '56px',
'drawer-title-font-size': '@font-size-lg',
'drawer-title-line-height': '22px',
// Timeline
// ---
'timeline-width': '2px',
'timeline-color': '@border-color-split',
'timeline-dot-border-width': '2px',
'timeline-dot-color': '@primary-color',
'timeline-dot-bg': '@component-background',
'timeline-item-padding-bottom': '20px',
// Typography
// ---
'typography-title-font-weight': '600',
'typography-title-margin-top': '1.2em',
'typography-title-margin-bottom': '0.5em',
// Upload
// ---
'upload-actions-color': '@text-color-secondary',
// Steps
// ---
'process-tail-color': '@border-color-split',
'steps-nav-arrow-color': 'fade(@black, 25%)',
'steps-background': '@component-background',
'steps-icon-size': '32px',
'steps-icon-custom-size': '@steps-icon-size',
'steps-icon-custom-top': '0px',
'steps-icon-custom-font-size': '24px',
'steps-icon-top': '-0.5px',
'steps-icon-font-size': '@font-size-lg',
'steps-icon-margin': '0 8px 0 0',
'steps-title-line-height': '@height-base',
'steps-small-icon-size': '24px',
'steps-small-icon-margin': '0 8px 0 0',
'steps-dot-size': '8px',
'steps-dot-top': '2px',
'steps-current-dot-size': '10px',
'steps-description-max-width': '140px',
'steps-nav-content-max-width': 'auto',
'steps-vertical-icon-width': '16px',
'steps-vertical-tail-width': '16px',
'steps-vertical-tail-width-sm': '12px',
// Notification
// ---
'notification-bg': '@component-background',
'notification-padding-vertical': '16px',
'notification-padding-horizontal': '24px',
// Result
// ---
'result-title-font-size': '24px',
'result-subtitle-font-size': '@font-size-base',
'result-icon-font-size': '72px',
'result-extra-margin': '24px 0 0 0',
// Image
// ---
'image-size-base': '48px',
'image-font-size-base': '24px',
'image-bg': '#f5f5f5',
'image-color': '#fff',
'image-mask-font-size': '16px',
'image-preview-operation-size': '18px',
'image-preview-operation-color': '@text-color-dark',
'image-preview-operation-disabled-color': 'fade(@image-preview-operation-color, 25%)',
// Segmented
// ---
'segmented-bg': 'fade(@black, 4%)',
'segmented-hover-bg': 'fade(@black, 6%)',
'segmented-selected-bg': '@white',
'segmented-label-color': 'fade(@black, 65%)',
'segmented-label-hover-color': '#262626',
} as const;
// Fill colors. e.g. '@red-1', '@yellow-6'
Object.keys(token).forEach((key: any) => {
if (key !== key.toLowerCase()) {
return;
}
const value = token[key];
if (typeof value === 'string') {
raw[key] = value;
}
});
// Convert to string
const returnData: Record<keyof typeof raw, string> = {} as any;
Object.keys(raw).forEach(key => {
const value = raw[key];
if (typeof value === 'function') {
returnData[key] = value(raw);
} else if (typeof value === 'number' && !key.includes('line-height')) {
returnData[key] = `${value}px`;
} else {
returnData[key] = `${value}`;
}
});
return returnData;
}