@adea-ai/themes 0.8.9 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accents.d.ts +30 -1
- package/dist/accents.d.ts.map +1 -1
- package/dist/accents.js +63 -0
- package/dist/accents.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/normalize.d.ts +10 -0
- package/dist/normalize.d.ts.map +1 -1
- package/dist/normalize.js +8 -3
- package/dist/normalize.js.map +1 -1
- package/package.json +1 -1
- package/src/accents.ts +93 -1
- package/src/index.ts +1 -0
- package/src/normalize.ts +8 -3
package/dist/accents.d.ts
CHANGED
|
@@ -43,7 +43,8 @@
|
|
|
43
43
|
* one and why the tint below can stay an expression. `shiftLightness` is what keeps
|
|
44
44
|
* the step uniform *and* the hue intact — a mix toward a neutral cannot do both.
|
|
45
45
|
*/
|
|
46
|
-
import type { ThemeAppearance } from './schema.js';
|
|
46
|
+
import type { AdeaTheme, ThemeAppearance } from './schema.js';
|
|
47
|
+
import { ACCENT_PREFERENCE } from './normalize.js';
|
|
47
48
|
/** One accent preset: a named primary, per appearance. */
|
|
48
49
|
export type AccentPreset = {
|
|
49
50
|
/** The `data-accent` value. */
|
|
@@ -129,6 +130,34 @@ export declare const ACCENT_SUBTLE_ALPHA: Readonly<Record<ThemeAppearance, numbe
|
|
|
129
130
|
* {@link ACCENT_SUBTLE_ALPHA}.
|
|
130
131
|
*/
|
|
131
132
|
export declare function primarySubtleCss(appearance: ThemeAppearance, primaryVariable?: string): string;
|
|
133
|
+
/**
|
|
134
|
+
* ## The accents a theme offers
|
|
135
|
+
*
|
|
136
|
+
* The {@link ACCENTS} presets are brand colours: the same six everywhere, chosen
|
|
137
|
+
* once. They read as visitors on a theme whose palette disagrees with them — a
|
|
138
|
+
* Gruvbox canvas with a cool cyan primary is two palettes sharing one window. A
|
|
139
|
+
* theme also carries colours of its *own* that are accent-shaped: its ANSI row is
|
|
140
|
+
* full of vivid, hue-distinct colours that the palette's authors already tuned to
|
|
141
|
+
* sit on that theme's surfaces.
|
|
142
|
+
*
|
|
143
|
+
* `themeAccentPresets` offers those. It pairs the two appearances on the accent
|
|
144
|
+
* slots {@link ACCENT_PREFERENCE} ranks, keeps a slot only when it clears the
|
|
145
|
+
* same floors a catalogue accent must clear — chroma, the raised-surface floor
|
|
146
|
+
* against the theme's own canvas, and a legible label — and returns the theme's
|
|
147
|
+
* values verbatim. Nothing here authors a colour: the slots are the palette's, the
|
|
148
|
+
* floors are the catalogue's, and the pairing is the only new decision.
|
|
149
|
+
*
|
|
150
|
+
* The ids are role-shaped (`ansi-blue`), not value-shaped, so a stored accent
|
|
151
|
+
* survives switching themes: the blue stays the blue, of whichever theme is
|
|
152
|
+
* active. That is what "pulled from the selected theme" means — the offering
|
|
153
|
+
* follows the theme, and so does the resolved colour.
|
|
154
|
+
*/
|
|
155
|
+
export type ThemeAccentSlot = (typeof ACCENT_PREFERENCE)[number];
|
|
156
|
+
/**
|
|
157
|
+
* The accent slots the theme pair offers, ordered by preference, floors enforced.
|
|
158
|
+
* A slot survives only when both appearances can offer it.
|
|
159
|
+
*/
|
|
160
|
+
export declare function themeAccentPresets(light: AdeaTheme, dark: AdeaTheme): AccentPreset[];
|
|
132
161
|
/**
|
|
133
162
|
* The five declarations an accent sets, as CSS values.
|
|
134
163
|
*
|
package/dist/accents.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accents.d.ts","sourceRoot":"","sources":["../src/accents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"accents.d.ts","sourceRoot":"","sources":["../src/accents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAW,eAAe,EAAE,MAAM,aAAa,CAAA;AAGtE,OAAO,EACL,iBAAiB,EAIlB,MAAM,gBAAgB,CAAA;AAEvB,0DAA0D;AAC1D,MAAM,MAAM,YAAY,GAAG;IACzB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAA;IACnB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,EAAE,SAAS,YAAY,EA2CzC,CAAA;AAEF,mFAAmF;AACnF,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EAAsD,CAAA;AAE9F,8BAA8B;AAC9B,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAE9D;AAED,6CAA6C;AAC7C,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,GAAG,MAAM,CAErF;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED,4EAA4E;AAC5E,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,OAAO,CAAA;AAErC;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,MAAM,CAKjF;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAGxE,CAAA;AAEF;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,eAAe,EAC3B,eAAe,SAAc,GAC5B,MAAM,CAER;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AA0ChE;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,YAAY,EAAE,CAgBpF;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,eAAe;AAC3B,qFAAqF;AACrF,eAAe,SAAc,GAC5B,WAAW,CAYb"}
|
package/dist/accents.js
CHANGED
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
* the step uniform *and* the hue intact — a mix toward a neutral cannot do both.
|
|
45
45
|
*/
|
|
46
46
|
import { contrastRatio, formatOklch, parseColor, shiftLightness } from './oklch.js';
|
|
47
|
+
import { ACCENT_PREFERENCE, CONTRAST_FLOORS, MINIMUM_ACCENT_CHROMA, REPAIR_BUDGET, } from './normalize.js';
|
|
47
48
|
/**
|
|
48
49
|
* The presets.
|
|
49
50
|
*
|
|
@@ -188,6 +189,68 @@ export const ACCENT_SUBTLE_ALPHA = Object.freeze({
|
|
|
188
189
|
export function primarySubtleCss(appearance, primaryVariable = '--primary') {
|
|
189
190
|
return `color-mix(in oklch, var(${primaryVariable}) ${ACCENT_SUBTLE_ALPHA[appearance]}%, transparent)`;
|
|
190
191
|
}
|
|
192
|
+
const REPAIR_STEP = 0.002;
|
|
193
|
+
/**
|
|
194
|
+
* A slot's offerable value on one theme: the palette's own colour when it already
|
|
195
|
+
* clears the accent floors on that theme's canvas, otherwise the catalogue's
|
|
196
|
+
* contrast repair — lightness moved, hue and chroma kept, direction away from the
|
|
197
|
+
* canvas, within the accent budget — applied to reach the raised-surface floor
|
|
198
|
+
* with a legible label. `undefined` when even the budget cannot get there, which
|
|
199
|
+
* is the one case where the theme honestly cannot offer the slot.
|
|
200
|
+
*/
|
|
201
|
+
function offeredSlotValue(theme, slot) {
|
|
202
|
+
const original = theme.ansi[slot];
|
|
203
|
+
const value = parseColor(original);
|
|
204
|
+
const background = parseColor(theme.colors.background);
|
|
205
|
+
if (!value || !background)
|
|
206
|
+
return undefined;
|
|
207
|
+
if (value.c < MINIMUM_ACCENT_CHROMA)
|
|
208
|
+
return undefined;
|
|
209
|
+
// Measured in the canonical form the offer commits, so a repair cannot
|
|
210
|
+
// converge on a value that rounding then pushes back below the floor.
|
|
211
|
+
const clearsFloors = (candidate) => {
|
|
212
|
+
const canonical = parseColor(formatOklch(candidate));
|
|
213
|
+
if (!canonical)
|
|
214
|
+
return false;
|
|
215
|
+
return (contrastRatio(canonical, background) >= CONTRAST_FLOORS.accentRaised &&
|
|
216
|
+
accentForegroundContrast(formatOklch(canonical)) >= CONTRAST_FLOORS.accentForeground);
|
|
217
|
+
};
|
|
218
|
+
if (clearsFloors(value))
|
|
219
|
+
return original;
|
|
220
|
+
const direction = value.l >= background.l ? 1 : -1;
|
|
221
|
+
const maximumSteps = Math.floor(REPAIR_BUDGET.accent / REPAIR_STEP);
|
|
222
|
+
for (let index = 1; index <= maximumSteps; index += 1) {
|
|
223
|
+
const candidate = { ...value, l: value.l + direction * REPAIR_STEP * index };
|
|
224
|
+
if (candidate.l <= 0 || candidate.l >= 1)
|
|
225
|
+
break;
|
|
226
|
+
if (clearsFloors(candidate))
|
|
227
|
+
return formatOklch(candidate);
|
|
228
|
+
}
|
|
229
|
+
return undefined;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* The accent slots the theme pair offers, ordered by preference, floors enforced.
|
|
233
|
+
* A slot survives only when both appearances can offer it.
|
|
234
|
+
*/
|
|
235
|
+
export function themeAccentPresets(light, dark) {
|
|
236
|
+
const offered = new Map();
|
|
237
|
+
for (const slot of ACCENT_PREFERENCE) {
|
|
238
|
+
const lightValue = offeredSlotValue(light, slot);
|
|
239
|
+
if (lightValue === undefined)
|
|
240
|
+
continue;
|
|
241
|
+
const darkValue = offeredSlotValue(dark, slot);
|
|
242
|
+
if (darkValue === undefined)
|
|
243
|
+
continue;
|
|
244
|
+
offered.set(slot, { light: lightValue, dark: darkValue });
|
|
245
|
+
}
|
|
246
|
+
return [...offered].map(([slot, value]) => ({
|
|
247
|
+
id: `ansi-${slot}`,
|
|
248
|
+
label: slot.charAt(0).toUpperCase() + slot.slice(1),
|
|
249
|
+
description: `The theme's own ${slot} colour.`,
|
|
250
|
+
light: value.light,
|
|
251
|
+
dark: value.dark,
|
|
252
|
+
}));
|
|
253
|
+
}
|
|
191
254
|
export function accentRoles(preset, appearance,
|
|
192
255
|
/** The property the subtle tint is built from. A consumer may pass its own alias. */
|
|
193
256
|
primaryVariable = '--primary') {
|
package/dist/accents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accents.js","sourceRoot":"","sources":["../src/accents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAIH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"accents.js","sourceRoot":"","sources":["../src/accents.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
export type { AdeaAnsi, AdeaTheme, AdeaThemeColors, AdeaThemeRecord, AnsiKey, ThemeAppearance, ThemeColorKey, ThemeFamily, ThemeMetadata, ThemeProvenance, ShadcnThemeProjection, } from './schema.js';
|
|
46
46
|
export { ANSI_KEYS, THEME_COLOR_KEYS } from './schema.js';
|
|
47
47
|
export type { AccentPreset, AccentRoles } from './accents.js';
|
|
48
|
-
export { ACCENTS, ACCENT_HOVER_STEP, ACCENT_IDS, ACCENT_SUBTLE_ALPHA, accentForeground, accentForegroundContrast, accentRoles, accentValue, getAccent, primaryHover, primarySubtleCss, } from './accents.js';
|
|
48
|
+
export { ACCENTS, ACCENT_HOVER_STEP, ACCENT_IDS, ACCENT_SUBTLE_ALPHA, accentForeground, accentForegroundContrast, accentRoles, accentValue, getAccent, primaryHover, primarySubtleCss, themeAccentPresets, } from './accents.js';
|
|
49
49
|
export { DEFAULT_THEME_IDS, getBase24Scheme, getTheme, hasTheme, resolveTheme, themeCount, themeFamilies, themeIds, themes, themesByAppearance, toTheme, } from './catalogue.js';
|
|
50
50
|
export type { ContrastRepair, Oklch } from './oklch.js';
|
|
51
51
|
export { contrastRatio, deltaEok, formatOklch, gamutMap, hexToOklch, inGamut, mix, oklchToHex, parseColor, parseOklch, relativeLuminance, repairContrast, shiftLightness, } from './oklch.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAGH,YAAY,EACV,QAAQ,EACR,SAAS,EACT,eAAe,EACf,eAAe,EACf,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,EACf,qBAAqB,GACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAEzD,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
* ```
|
|
44
44
|
*/
|
|
45
45
|
export { ANSI_KEYS, THEME_COLOR_KEYS } from './schema.js';
|
|
46
|
-
export { ACCENTS, ACCENT_HOVER_STEP, ACCENT_IDS, ACCENT_SUBTLE_ALPHA, accentForeground, accentForegroundContrast, accentRoles, accentValue, getAccent, primaryHover, primarySubtleCss, } from './accents.js';
|
|
46
|
+
export { ACCENTS, ACCENT_HOVER_STEP, ACCENT_IDS, ACCENT_SUBTLE_ALPHA, accentForeground, accentForegroundContrast, accentRoles, accentValue, getAccent, primaryHover, primarySubtleCss, themeAccentPresets, } from './accents.js';
|
|
47
47
|
/* --- The catalogue ------------------------------------------------------ */
|
|
48
48
|
export { DEFAULT_THEME_IDS, getBase24Scheme, getTheme, hasTheme, resolveTheme, themeCount, themeFamilies, themeIds, themes, themesByAppearance, toTheme, } from './catalogue.js';
|
|
49
49
|
export { contrastRatio, deltaEok, formatOklch, gamutMap, hexToOklch, inGamut, mix, oklchToHex, parseColor, parseOklch, relativeLuminance, repairContrast, shiftLightness, } from './oklch.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAgBH,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAGzD,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAgBH,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAGzD,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAErB,8EAA8E;AAC9E,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,aAAa,EACb,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,OAAO,GACR,MAAM,gBAAgB,CAAA;AAIvB,OAAO,EACL,aAAa,EACb,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,UAAU,EACV,OAAO,EACP,GAAG,EACH,UAAU,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,GACf,MAAM,YAAY,CAAA;AAInB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,eAAe,CAAA;AAItB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAIhE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,IAAI,GACL,MAAM,aAAa,CAAA;AAIpB,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,QAAQ,GACT,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAG9F,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAGxD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAGjE,OAAO,EACL,cAAc,EACd,SAAS,EACT,2BAA2B,EAC3B,WAAW,EACX,eAAe,GAChB,MAAM,sBAAsB,CAAA"}
|
package/dist/normalize.d.ts
CHANGED
|
@@ -103,6 +103,16 @@ export declare const CONTRAST_FLOORS: Readonly<{
|
|
|
103
103
|
/** A selection must be visible under the text it selects. */
|
|
104
104
|
readonly selection: 1.2;
|
|
105
105
|
}>;
|
|
106
|
+
export declare const REPAIR_BUDGET: Readonly<{
|
|
107
|
+
/** Body text: some palettes publish a foreground that fails on their own canvas. */
|
|
108
|
+
text: 0.2;
|
|
109
|
+
status: 0.24;
|
|
110
|
+
accent: 0.24;
|
|
111
|
+
}>;
|
|
112
|
+
/** The accent preference order, best first. */
|
|
113
|
+
export declare const ACCENT_PREFERENCE: readonly ["blue", "magenta", "cyan", "green"];
|
|
114
|
+
/** The smallest chroma a colour needs before it reads as "a colour" rather than grey. */
|
|
115
|
+
export declare const MINIMUM_ACCENT_CHROMA = 0.035;
|
|
106
116
|
/** A theme's source description, as the catalogue declares it. */
|
|
107
117
|
export interface ThemeSourceSpec {
|
|
108
118
|
id: string;
|
package/dist/normalize.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EACf,eAAe,EACf,OAAO,EACP,qBAAqB,EACrB,eAAe,EACf,eAAe,EAChB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAGL,iBAAiB,EAMlB,MAAM,YAAY,CAAA;AAInB;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe;mBACpB,GAAG;wBACE,GAAG;IACd,mDAAmD;yBACvC,CAAC;qBACL,GAAG;IACX;;;;;;;;;OASG;2BACW,CAAC;+BACG,GAAG;IACrB;;OAEG;qBACK,GAAG;IACX;;;;;;;;;;;;;;;OAeG;2BACW,CAAC;IACf,0DAA0D;qBAClD,IAAI;0BACC,IAAI;IACjB,2EAA2E;sBAClE,IAAI;IACb,6DAA6D;wBAClD,GAAG;EACL,CAAA;
|
|
1
|
+
{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"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"}
|
package/dist/normalize.js
CHANGED
|
@@ -116,14 +116,19 @@ export const CONTRAST_FLOORS = Object.freeze({
|
|
|
116
116
|
function distortionOf(attempt) {
|
|
117
117
|
return attempt.blended ? attempt.repair.delta * 3 : attempt.repair.delta;
|
|
118
118
|
}
|
|
119
|
-
const REPAIR_BUDGET = Object.freeze({
|
|
119
|
+
export const REPAIR_BUDGET = Object.freeze({
|
|
120
120
|
/** Body text: some palettes publish a foreground that fails on their own canvas. */
|
|
121
121
|
text: 0.2,
|
|
122
122
|
status: 0.24,
|
|
123
123
|
accent: 0.24,
|
|
124
124
|
});
|
|
125
125
|
/** The accent preference order, best first. */
|
|
126
|
-
const ACCENT_PREFERENCE = [
|
|
126
|
+
export const ACCENT_PREFERENCE = [
|
|
127
|
+
'blue',
|
|
128
|
+
'magenta',
|
|
129
|
+
'cyan',
|
|
130
|
+
'green',
|
|
131
|
+
];
|
|
127
132
|
/**
|
|
128
133
|
* How much stronger body text must be than the secondary rung.
|
|
129
134
|
*
|
|
@@ -133,7 +138,7 @@ const ACCENT_PREFERENCE = ['blue', 'magenta', 'cyan', 'green'];
|
|
|
133
138
|
*/
|
|
134
139
|
const MINIMUM_LADDER_GAP = 0.4;
|
|
135
140
|
/** The smallest chroma a colour needs before it reads as "a colour" rather than grey. */
|
|
136
|
-
const MINIMUM_ACCENT_CHROMA = 0.035;
|
|
141
|
+
export const MINIMUM_ACCENT_CHROMA = 0.035;
|
|
137
142
|
const SURFACE_STEPS = Object.freeze({
|
|
138
143
|
surface: 0.035,
|
|
139
144
|
surfaceElevated: 0.065,
|
package/dist/normalize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../src/normalize.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/accents.ts
CHANGED
|
@@ -44,9 +44,15 @@
|
|
|
44
44
|
* the step uniform *and* the hue intact — a mix toward a neutral cannot do both.
|
|
45
45
|
*/
|
|
46
46
|
|
|
47
|
-
import type { ThemeAppearance } from './schema.js'
|
|
47
|
+
import type { AdeaTheme, AnsiKey, ThemeAppearance } from './schema.js'
|
|
48
48
|
import type { Oklch } from './oklch.js'
|
|
49
49
|
import { contrastRatio, formatOklch, parseColor, shiftLightness } from './oklch.js'
|
|
50
|
+
import {
|
|
51
|
+
ACCENT_PREFERENCE,
|
|
52
|
+
CONTRAST_FLOORS,
|
|
53
|
+
MINIMUM_ACCENT_CHROMA,
|
|
54
|
+
REPAIR_BUDGET,
|
|
55
|
+
} from './normalize.js'
|
|
50
56
|
|
|
51
57
|
/** One accent preset: a named primary, per appearance. */
|
|
52
58
|
export type AccentPreset = {
|
|
@@ -216,6 +222,92 @@ export function primarySubtleCss(
|
|
|
216
222
|
return `color-mix(in oklch, var(${primaryVariable}) ${ACCENT_SUBTLE_ALPHA[appearance]}%, transparent)`
|
|
217
223
|
}
|
|
218
224
|
|
|
225
|
+
/**
|
|
226
|
+
* ## The accents a theme offers
|
|
227
|
+
*
|
|
228
|
+
* The {@link ACCENTS} presets are brand colours: the same six everywhere, chosen
|
|
229
|
+
* once. They read as visitors on a theme whose palette disagrees with them — a
|
|
230
|
+
* Gruvbox canvas with a cool cyan primary is two palettes sharing one window. A
|
|
231
|
+
* theme also carries colours of its *own* that are accent-shaped: its ANSI row is
|
|
232
|
+
* full of vivid, hue-distinct colours that the palette's authors already tuned to
|
|
233
|
+
* sit on that theme's surfaces.
|
|
234
|
+
*
|
|
235
|
+
* `themeAccentPresets` offers those. It pairs the two appearances on the accent
|
|
236
|
+
* slots {@link ACCENT_PREFERENCE} ranks, keeps a slot only when it clears the
|
|
237
|
+
* same floors a catalogue accent must clear — chroma, the raised-surface floor
|
|
238
|
+
* against the theme's own canvas, and a legible label — and returns the theme's
|
|
239
|
+
* values verbatim. Nothing here authors a colour: the slots are the palette's, the
|
|
240
|
+
* floors are the catalogue's, and the pairing is the only new decision.
|
|
241
|
+
*
|
|
242
|
+
* The ids are role-shaped (`ansi-blue`), not value-shaped, so a stored accent
|
|
243
|
+
* survives switching themes: the blue stays the blue, of whichever theme is
|
|
244
|
+
* active. That is what "pulled from the selected theme" means — the offering
|
|
245
|
+
* follows the theme, and so does the resolved colour.
|
|
246
|
+
*/
|
|
247
|
+
export type ThemeAccentSlot = (typeof ACCENT_PREFERENCE)[number]
|
|
248
|
+
|
|
249
|
+
const REPAIR_STEP = 0.002
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* A slot's offerable value on one theme: the palette's own colour when it already
|
|
253
|
+
* clears the accent floors on that theme's canvas, otherwise the catalogue's
|
|
254
|
+
* contrast repair — lightness moved, hue and chroma kept, direction away from the
|
|
255
|
+
* canvas, within the accent budget — applied to reach the raised-surface floor
|
|
256
|
+
* with a legible label. `undefined` when even the budget cannot get there, which
|
|
257
|
+
* is the one case where the theme honestly cannot offer the slot.
|
|
258
|
+
*/
|
|
259
|
+
function offeredSlotValue(theme: AdeaTheme, slot: ThemeAccentSlot): string | undefined {
|
|
260
|
+
const original = theme.ansi[slot as AnsiKey]
|
|
261
|
+
const value = parseColor(original)
|
|
262
|
+
const background = parseColor(theme.colors.background)
|
|
263
|
+
if (!value || !background) return undefined
|
|
264
|
+
if (value.c < MINIMUM_ACCENT_CHROMA) return undefined
|
|
265
|
+
|
|
266
|
+
// Measured in the canonical form the offer commits, so a repair cannot
|
|
267
|
+
// converge on a value that rounding then pushes back below the floor.
|
|
268
|
+
const clearsFloors = (candidate: Oklch): boolean => {
|
|
269
|
+
const canonical = parseColor(formatOklch(candidate))
|
|
270
|
+
if (!canonical) return false
|
|
271
|
+
return (
|
|
272
|
+
contrastRatio(canonical, background) >= CONTRAST_FLOORS.accentRaised &&
|
|
273
|
+
accentForegroundContrast(formatOklch(canonical)) >= CONTRAST_FLOORS.accentForeground
|
|
274
|
+
)
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
if (clearsFloors(value)) return original
|
|
278
|
+
|
|
279
|
+
const direction = value.l >= background.l ? 1 : -1
|
|
280
|
+
const maximumSteps = Math.floor(REPAIR_BUDGET.accent / REPAIR_STEP)
|
|
281
|
+
for (let index = 1; index <= maximumSteps; index += 1) {
|
|
282
|
+
const candidate = { ...value, l: value.l + direction * REPAIR_STEP * index }
|
|
283
|
+
if (candidate.l <= 0 || candidate.l >= 1) break
|
|
284
|
+
if (clearsFloors(candidate)) return formatOklch(candidate)
|
|
285
|
+
}
|
|
286
|
+
return undefined
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
/**
|
|
290
|
+
* The accent slots the theme pair offers, ordered by preference, floors enforced.
|
|
291
|
+
* A slot survives only when both appearances can offer it.
|
|
292
|
+
*/
|
|
293
|
+
export function themeAccentPresets(light: AdeaTheme, dark: AdeaTheme): AccentPreset[] {
|
|
294
|
+
const offered = new Map<ThemeAccentSlot, { light: string; dark: string }>()
|
|
295
|
+
for (const slot of ACCENT_PREFERENCE) {
|
|
296
|
+
const lightValue = offeredSlotValue(light, slot)
|
|
297
|
+
if (lightValue === undefined) continue
|
|
298
|
+
const darkValue = offeredSlotValue(dark, slot)
|
|
299
|
+
if (darkValue === undefined) continue
|
|
300
|
+
offered.set(slot, { light: lightValue, dark: darkValue })
|
|
301
|
+
}
|
|
302
|
+
return [...offered].map(([slot, value]) => ({
|
|
303
|
+
id: `ansi-${slot}`,
|
|
304
|
+
label: slot.charAt(0).toUpperCase() + slot.slice(1),
|
|
305
|
+
description: `The theme's own ${slot} colour.`,
|
|
306
|
+
light: value.light,
|
|
307
|
+
dark: value.dark,
|
|
308
|
+
}))
|
|
309
|
+
}
|
|
310
|
+
|
|
219
311
|
/**
|
|
220
312
|
* The five declarations an accent sets, as CSS values.
|
|
221
313
|
*
|
package/src/index.ts
CHANGED
package/src/normalize.ts
CHANGED
|
@@ -141,7 +141,7 @@ function distortionOf(attempt: { repair: ContrastRepair; blended: boolean }): nu
|
|
|
141
141
|
return attempt.blended ? attempt.repair.delta * 3 : attempt.repair.delta
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
const REPAIR_BUDGET = Object.freeze({
|
|
144
|
+
export const REPAIR_BUDGET = Object.freeze({
|
|
145
145
|
/** Body text: some palettes publish a foreground that fails on their own canvas. */
|
|
146
146
|
text: 0.2,
|
|
147
147
|
status: 0.24,
|
|
@@ -149,7 +149,12 @@ const REPAIR_BUDGET = Object.freeze({
|
|
|
149
149
|
})
|
|
150
150
|
|
|
151
151
|
/** The accent preference order, best first. */
|
|
152
|
-
const ACCENT_PREFERENCE = [
|
|
152
|
+
export const ACCENT_PREFERENCE = [
|
|
153
|
+
'blue',
|
|
154
|
+
'magenta',
|
|
155
|
+
'cyan',
|
|
156
|
+
'green',
|
|
157
|
+
] as const satisfies readonly AnsiKey[]
|
|
153
158
|
|
|
154
159
|
/**
|
|
155
160
|
* How much stronger body text must be than the secondary rung.
|
|
@@ -161,7 +166,7 @@ const ACCENT_PREFERENCE = ['blue', 'magenta', 'cyan', 'green'] as const satisfie
|
|
|
161
166
|
const MINIMUM_LADDER_GAP = 0.4
|
|
162
167
|
|
|
163
168
|
/** The smallest chroma a colour needs before it reads as "a colour" rather than grey. */
|
|
164
|
-
const MINIMUM_ACCENT_CHROMA = 0.035
|
|
169
|
+
export const MINIMUM_ACCENT_CHROMA = 0.035
|
|
165
170
|
|
|
166
171
|
/** A theme's source description, as the catalogue declares it. */
|
|
167
172
|
export interface ThemeSourceSpec {
|