MCPcopy Create free account
hub / github.com/anomalyco/opencode / readPalette

Function readPalette

packages/ui/src/theme/v2/resolve.ts:72–106  ·  view source on GitHub ↗
(variant: ThemeVariant)

Source from the content-addressed store, hash-verified

70}
71
72function readPalette(variant: ThemeVariant): PaletteInput {
73 if ("palette" in variant && variant.palette) {
74 const palette = variant.palette
75 return {
76 neutral: palette.neutral,
77 ink: palette.ink,
78 primary: palette.primary,
79 accent: palette.accent ?? palette.info,
80 success: palette.success,
81 warning: palette.warning,
82 error: palette.error,
83 info: palette.info,
84 interactive: palette.interactive ?? palette.primary,
85 diffAdd: palette.diffAdd ?? shift(palette.success, { c: 0.55, l: 0.14 }),
86 diffDelete: palette.diffDelete ?? palette.error,
87 }
88 }
89 if ("seeds" in variant && variant.seeds) {
90 const seeds = variant.seeds
91 return {
92 neutral: seeds.neutral,
93 ink: seeds.neutral,
94 primary: seeds.primary,
95 accent: seeds.info,
96 success: seeds.success,
97 warning: seeds.warning,
98 error: seeds.error,
99 info: seeds.info,
100 interactive: seeds.interactive,
101 diffAdd: seeds.diffAdd,
102 diffDelete: seeds.diffDelete,
103 }
104 }
105 throw new Error("Theme variant requires `palette` or `seeds`")
106}
107
108/** Build v2 primitive ramps (100 = lightest). Alpha ramps are static in `v2/styles/colors.css`. */
109export function generateV2Primitives(variant: ThemeVariant, isDark: boolean): Record<string, V2ColorValue> {

Callers 2

generateV2PrimitivesFunction · 0.85
resolveThemeVariantV2Function · 0.85

Calls 1

shiftFunction · 0.90

Tested by

no test coverage detected