(variant: ThemeVariant, isDark: boolean)
| 107 | |
| 108 | /** Build v2 primitive ramps (100 = lightest). Alpha ramps are static in `v2/styles/colors.css`. */ |
| 109 | export function generateV2Primitives(variant: ThemeVariant, isDark: boolean): Record<string, V2ColorValue> { |
| 110 | const colors = readPalette(variant) |
| 111 | const grey = generateV2NeutralScale(colors.neutral, colors.ink, isDark) |
| 112 | const blue = generateV2HueScale(colors.interactive, isDark) |
| 113 | const green = generateV2HueScale(colors.success, isDark) |
| 114 | const yellow = generateV2HueScale(colors.warning, isDark) |
| 115 | const red = generateV2HueScale(colors.error, isDark) |
| 116 | const purple = generateV2HueScale(colors.accent, isDark) |
| 117 | const pink = generateV2HueScale(colors.info, isDark) |
| 118 | const orange = generateV2HueScale(shift(colors.warning, { h: -22, l: -0.082, c: 0.94 }), isDark) |
| 119 | const cyan = generateV2HueScale(shift(colors.info, { h: -12, l: 0.128, c: 1.12 }), isDark) |
| 120 | |
| 121 | return { |
| 122 | ...V2_PRIMITIVES_DEFAULT, |
| 123 | ...assignHueRamp("grey", grey), |
| 124 | ...assignHueRamp("blue", blue), |
| 125 | ...assignHueRamp("green", green), |
| 126 | ...assignHueRamp("yellow", yellow), |
| 127 | ...assignHueRamp("red", red), |
| 128 | ...assignHueRamp("purple", purple), |
| 129 | ...assignHueRamp("pink", pink), |
| 130 | ...assignHueRamp("orange", orange), |
| 131 | ...assignHueRamp("cyan", cyan), |
| 132 | } |
| 133 | } |
| 134 | |
| 135 | export function resolveThemeVariantV2(variant: ThemeVariant, isDark: boolean): ResolvedV2Theme { |
| 136 | const primitives = generateV2Primitives(variant, isDark) |
no test coverage detected