Browse Source
* style: remove redundant code * feat(style): add preset colour style generation method (cherry picked from commit 1266e42ba27accb48a6544e3eddaa4a94daef00c) * feat: uniform preset colour generation css selector method (cherry picked from commit 5af87e8d5ffcfd23e755946167f200c0565f8222) * chore: merge preset colors (cherry picked from commit 05040dfb703f60a3ea1715326748c508acbf41a6) * chore: update (cherry picked from commit 241b40a1361469487a6a3e8f1ad07a25d250463d) * chore: remove Badge preset inverse colors * chore: remove fix 删除的这部分其实一个 Bug,但是为了给 PR 减负(尽可能单一, 后面新开一个 PR 来修复这个问题 * suggestions accepted Update components/style/presetColor.tsx Co-authored-by: MadCcc <1075746765@qq.com> Co-authored-by: MadCcc <1075746765@qq.com>pull/40068/head
Wuxh
2 years ago
committed by
GitHub
14 changed files with 130 additions and 126 deletions
@ -1,6 +0,0 @@ |
|||
import { PresetColorTypes } from '../_util/colors'; |
|||
|
|||
// eslint-disable-next-line import/prefer-default-export
|
|||
export function isPresetColor(color?: string): boolean { |
|||
return PresetColorTypes.includes(color as any); |
|||
} |
@ -0,0 +1,35 @@ |
|||
/* eslint-disable import/prefer-default-export */ |
|||
import type { CSSObject } from '@ant-design/cssinjs'; |
|||
import type { AliasToken, PresetColorKey } from '../theme/internal'; |
|||
import { PresetColors } from '../theme/internal'; |
|||
import type { TokenWithCommonCls } from '../theme/util/genComponentStyleHook'; |
|||
|
|||
interface CalcColor { |
|||
/** token[`${colorKey}-1`] */ |
|||
lightColor: string; |
|||
/** token[`${colorKey}-3`] */ |
|||
lightBorderColor: string; |
|||
/** token[`${colorKey}-6`] */ |
|||
darkColor: string; |
|||
/** token[`${colorKey}-7`] */ |
|||
textColor: string; |
|||
} |
|||
|
|||
type GenCSS = (colorKey: PresetColorKey, calcColor: CalcColor) => CSSObject; |
|||
|
|||
export function genPresetColor<Token extends TokenWithCommonCls<AliasToken>>( |
|||
token: Token, |
|||
genCss: GenCSS, |
|||
): CSSObject { |
|||
return PresetColors.reduce((prev: CSSObject, colorKey: PresetColorKey) => { |
|||
const lightColor = token[`${colorKey}-1`]; |
|||
const lightBorderColor = token[`${colorKey}-3`]; |
|||
const darkColor = token[`${colorKey}-6`]; |
|||
const textColor = token[`${colorKey}-7`]; |
|||
|
|||
return { |
|||
...prev, |
|||
...genCss(colorKey, { lightColor, lightBorderColor, darkColor, textColor }), |
|||
}; |
|||
}, {} as CSSObject); |
|||
} |
Loading…
Reference in new issue