|
@@ -554,12 +554,14 @@ const generateButtonTheme = (colors: BaseColors, alias: Aliases) => ({
|
|
|
},
|
|
|
});
|
|
|
|
|
|
-const generateUtils = (colors: BaseColors) => ({
|
|
|
- tooltipUnderline: {
|
|
|
- textDecoration: `underline dotted ${colors.gray300}`,
|
|
|
+const generateUtils = (colors: BaseColors, aliases: Aliases) => ({
|
|
|
+ tooltipUnderline: (underlineColor: ColorOrAlias = 'gray300') => ({
|
|
|
+ textDecoration: `underline dotted ${
|
|
|
+ colors[underlineColor] ?? aliases[underlineColor]
|
|
|
+ }`,
|
|
|
textDecorationThickness: '0.75px',
|
|
|
textUnderlineOffset: '1.25px',
|
|
|
- },
|
|
|
+ }),
|
|
|
});
|
|
|
|
|
|
const iconSizes = {
|
|
@@ -810,7 +812,7 @@ export const lightTheme = {
|
|
|
...darkColors,
|
|
|
...darkAliases,
|
|
|
},
|
|
|
- ...generateUtils(lightColors),
|
|
|
+ ...generateUtils(lightColors, lightAliases),
|
|
|
alert: generateAlertTheme(lightColors, lightAliases),
|
|
|
badge: generateBadgeTheme(lightColors),
|
|
|
button: generateButtonTheme(lightColors, lightAliases),
|
|
@@ -833,7 +835,7 @@ export const darkTheme: Theme = {
|
|
|
...lightColors,
|
|
|
...lightAliases,
|
|
|
},
|
|
|
- ...generateUtils(darkColors),
|
|
|
+ ...generateUtils(darkColors, lightAliases),
|
|
|
alert: generateAlertTheme(darkColors, darkAliases),
|
|
|
badge: generateBadgeTheme(darkColors),
|
|
|
button: generateButtonTheme(darkColors, darkAliases),
|
|
@@ -848,9 +850,9 @@ export const darkTheme: Theme = {
|
|
|
};
|
|
|
|
|
|
export type Theme = typeof lightTheme;
|
|
|
-export type Aliases = typeof lightAliases;
|
|
|
-
|
|
|
export type Color = keyof typeof lightColors;
|
|
|
+export type Aliases = typeof lightAliases;
|
|
|
+export type ColorOrAlias = keyof Aliases | Color;
|
|
|
export type IconSize = keyof typeof iconSizes;
|
|
|
|
|
|
export default commonTheme;
|