okchroma 0.1.1 → 0.1.2
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-lib/index.cjs
CHANGED
|
@@ -30,7 +30,9 @@ __export(index_exports, {
|
|
|
30
30
|
PAPER_100: () => PAPER_100,
|
|
31
31
|
RESOLVER_ID: () => RESOLVER_ID,
|
|
32
32
|
SCALE_STOP_COUNT: () => SCALE_STOP_COUNT,
|
|
33
|
+
SCRIM_ALPHA: () => SCRIM_ALPHA,
|
|
33
34
|
SECONDARY_DISTINCT_DELTA_E: () => SECONDARY_DISTINCT_DELTA_E,
|
|
35
|
+
SHADOW_ALPHAS: () => SHADOW_ALPHAS,
|
|
34
36
|
SIGNALS: () => SIGNALS2,
|
|
35
37
|
SIGNAL_EMIT_NAME: () => SIGNAL_EMIT_NAME,
|
|
36
38
|
SIGNAL_SCALES: () => SIGNAL_SCALES,
|
|
@@ -42,6 +44,8 @@ __export(index_exports, {
|
|
|
42
44
|
STAMP_STATE_LEAVES: () => STAMP_STATE_LEAVES,
|
|
43
45
|
SUBTLE_PASTEL_K: () => SUBTLE_PASTEL_K,
|
|
44
46
|
SUBTLE_TINT_MULT: () => SUBTLE_TINT_MULT,
|
|
47
|
+
SURFACE_PLANE_LAW: () => SURFACE_PLANE_LAW,
|
|
48
|
+
SYSTEM_LEAF: () => SYSTEM_LEAF,
|
|
45
49
|
brandCss: () => brandCss,
|
|
46
50
|
checkAllCollisions: () => checkAllCollisions,
|
|
47
51
|
checkCollision: () => checkCollision,
|
|
@@ -3406,6 +3410,33 @@ var STAMP_LEAF = {
|
|
|
3406
3410
|
EDGE: STAMP_STATE_LEAVES[STAMP_EDGE],
|
|
3407
3411
|
ON: STAMP_STATE_LEAVES[STAMP_ON]
|
|
3408
3412
|
};
|
|
3413
|
+
var SYSTEM_LEAF = {
|
|
3414
|
+
ABS_BLACK: "system/abs-black",
|
|
3415
|
+
ABS_WHITE: "system/abs-white",
|
|
3416
|
+
SURFACE: {
|
|
3417
|
+
DIM: "system/surface/dim",
|
|
3418
|
+
LOW: "system/surface/low",
|
|
3419
|
+
MID: "system/surface/mid",
|
|
3420
|
+
HIGH: "system/surface/high"
|
|
3421
|
+
},
|
|
3422
|
+
ALPHA: {
|
|
3423
|
+
TRANSPARENT: "system/alpha/transparent",
|
|
3424
|
+
SCRIM: "system/alpha/abs-black-060",
|
|
3425
|
+
INK: "system/alpha/ink",
|
|
3426
|
+
OFFSET_006: "system/alpha/006",
|
|
3427
|
+
OFFSET_008: "system/alpha/008",
|
|
3428
|
+
OFFSET_016: "system/alpha/016",
|
|
3429
|
+
SHADOW_04: "system/alpha/shadow-04",
|
|
3430
|
+
SHADOW_08: "system/alpha/shadow-08",
|
|
3431
|
+
SHADOW_12: "system/alpha/shadow-12"
|
|
3432
|
+
}
|
|
3433
|
+
};
|
|
3434
|
+
var SURFACE_PLANE_LAW = {
|
|
3435
|
+
[SYSTEM_LEAF.SURFACE.DIM]: { light: SHARED_NAMES[3], dark: PAPER_100 },
|
|
3436
|
+
[SYSTEM_LEAF.SURFACE.LOW]: { light: SHARED_NAMES[2], dark: SHARED_NAMES[1] },
|
|
3437
|
+
[SYSTEM_LEAF.SURFACE.MID]: { light: SHARED_NAMES[1], dark: SHARED_NAMES[2] },
|
|
3438
|
+
[SYSTEM_LEAF.SURFACE.HIGH]: { light: PAPER_100, dark: SHARED_NAMES[3] }
|
|
3439
|
+
};
|
|
3409
3440
|
var TOKEN_ORDER = [
|
|
3410
3441
|
...Object.values(SHARED_NAMES),
|
|
3411
3442
|
STAMP_FILL,
|
|
@@ -3451,6 +3482,12 @@ var OFFSET_ALPHAS = { 6: 0.06, 8: 0.08, 16: 0.16 };
|
|
|
3451
3482
|
var ctaBorderRung = (prefix) => prefix === CSS_NEUTRAL ? 8 : prefix === CSS_SECONDARY ? 6 : 16;
|
|
3452
3483
|
var offsetLeafName = (rung) => String(rung).padStart(3, "0");
|
|
3453
3484
|
var offsetVarName = (rung) => `--alpha-${offsetLeafName(rung)}`;
|
|
3485
|
+
var SHADOW_ALPHAS = {
|
|
3486
|
+
4: { light: 0.04, dark: 0.32 },
|
|
3487
|
+
8: { light: 0.08, dark: 0.48 },
|
|
3488
|
+
12: { light: 0.12, dark: 0.64 }
|
|
3489
|
+
};
|
|
3490
|
+
var SCRIM_ALPHA = 0.6;
|
|
3454
3491
|
var TRANSPARENT_VAR = "--alpha-transparent";
|
|
3455
3492
|
var offsetRgba = (rung, mode) => mode === "light" ? `rgba(0, 0, 0, ${OFFSET_ALPHAS[rung]})` : `rgba(255, 255, 255, ${OFFSET_ALPHAS[rung]})`;
|
|
3456
3493
|
var alphaRootVars = (mode) => [
|
|
@@ -3868,6 +3905,28 @@ function themeToFigma(r, input) {
|
|
|
3868
3905
|
ctaFamily(sig.scale, mode, sig.name)
|
|
3869
3906
|
);
|
|
3870
3907
|
}
|
|
3908
|
+
const pole = (white, alpha) => {
|
|
3909
|
+
const c = white ? 1 : 0;
|
|
3910
|
+
return {
|
|
3911
|
+
$type: "color",
|
|
3912
|
+
$value: { colorSpace: "srgb", components: [c, c, c], alpha, hex: white ? "#ffffff" : "#000000" }
|
|
3913
|
+
};
|
|
3914
|
+
};
|
|
3915
|
+
putLeaf(g2, SYSTEM_LEAF.ABS_BLACK, colorFromHex(false));
|
|
3916
|
+
putLeaf(g2, SYSTEM_LEAF.ABS_WHITE, colorFromHex(true));
|
|
3917
|
+
for (const [path, law] of Object.entries(SURFACE_PLANE_LAW)) {
|
|
3918
|
+
const tok = neutralGroup[law[mode]];
|
|
3919
|
+
if (tok && "$type" in tok) putLeaf(g2, path, tok);
|
|
3920
|
+
}
|
|
3921
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.TRANSPARENT, pole(true, 0));
|
|
3922
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SCRIM, pole(false, SCRIM_ALPHA));
|
|
3923
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.INK, pole(mode === "dark", SOFT_ON_CTA_ALPHA[mode]));
|
|
3924
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_006, OFFSET_TOKEN(6, mode));
|
|
3925
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_008, OFFSET_TOKEN(8, mode));
|
|
3926
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_016, OFFSET_TOKEN(16, mode));
|
|
3927
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_04, pole(false, SHADOW_ALPHAS[4][mode]));
|
|
3928
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_08, pole(false, SHADOW_ALPHAS[8][mode]));
|
|
3929
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_12, pole(false, SHADOW_ALPHAS[12][mode]));
|
|
3871
3930
|
return g2;
|
|
3872
3931
|
};
|
|
3873
3932
|
return { light: build("light"), dark: build("dark") };
|
package/dist-lib/index.mjs
CHANGED
|
@@ -3332,6 +3332,33 @@ var STAMP_LEAF = {
|
|
|
3332
3332
|
EDGE: STAMP_STATE_LEAVES[STAMP_EDGE],
|
|
3333
3333
|
ON: STAMP_STATE_LEAVES[STAMP_ON]
|
|
3334
3334
|
};
|
|
3335
|
+
var SYSTEM_LEAF = {
|
|
3336
|
+
ABS_BLACK: "system/abs-black",
|
|
3337
|
+
ABS_WHITE: "system/abs-white",
|
|
3338
|
+
SURFACE: {
|
|
3339
|
+
DIM: "system/surface/dim",
|
|
3340
|
+
LOW: "system/surface/low",
|
|
3341
|
+
MID: "system/surface/mid",
|
|
3342
|
+
HIGH: "system/surface/high"
|
|
3343
|
+
},
|
|
3344
|
+
ALPHA: {
|
|
3345
|
+
TRANSPARENT: "system/alpha/transparent",
|
|
3346
|
+
SCRIM: "system/alpha/abs-black-060",
|
|
3347
|
+
INK: "system/alpha/ink",
|
|
3348
|
+
OFFSET_006: "system/alpha/006",
|
|
3349
|
+
OFFSET_008: "system/alpha/008",
|
|
3350
|
+
OFFSET_016: "system/alpha/016",
|
|
3351
|
+
SHADOW_04: "system/alpha/shadow-04",
|
|
3352
|
+
SHADOW_08: "system/alpha/shadow-08",
|
|
3353
|
+
SHADOW_12: "system/alpha/shadow-12"
|
|
3354
|
+
}
|
|
3355
|
+
};
|
|
3356
|
+
var SURFACE_PLANE_LAW = {
|
|
3357
|
+
[SYSTEM_LEAF.SURFACE.DIM]: { light: SHARED_NAMES[3], dark: PAPER_100 },
|
|
3358
|
+
[SYSTEM_LEAF.SURFACE.LOW]: { light: SHARED_NAMES[2], dark: SHARED_NAMES[1] },
|
|
3359
|
+
[SYSTEM_LEAF.SURFACE.MID]: { light: SHARED_NAMES[1], dark: SHARED_NAMES[2] },
|
|
3360
|
+
[SYSTEM_LEAF.SURFACE.HIGH]: { light: PAPER_100, dark: SHARED_NAMES[3] }
|
|
3361
|
+
};
|
|
3335
3362
|
var TOKEN_ORDER = [
|
|
3336
3363
|
...Object.values(SHARED_NAMES),
|
|
3337
3364
|
STAMP_FILL,
|
|
@@ -3377,6 +3404,12 @@ var OFFSET_ALPHAS = { 6: 0.06, 8: 0.08, 16: 0.16 };
|
|
|
3377
3404
|
var ctaBorderRung = (prefix) => prefix === CSS_NEUTRAL ? 8 : prefix === CSS_SECONDARY ? 6 : 16;
|
|
3378
3405
|
var offsetLeafName = (rung) => String(rung).padStart(3, "0");
|
|
3379
3406
|
var offsetVarName = (rung) => `--alpha-${offsetLeafName(rung)}`;
|
|
3407
|
+
var SHADOW_ALPHAS = {
|
|
3408
|
+
4: { light: 0.04, dark: 0.32 },
|
|
3409
|
+
8: { light: 0.08, dark: 0.48 },
|
|
3410
|
+
12: { light: 0.12, dark: 0.64 }
|
|
3411
|
+
};
|
|
3412
|
+
var SCRIM_ALPHA = 0.6;
|
|
3380
3413
|
var TRANSPARENT_VAR = "--alpha-transparent";
|
|
3381
3414
|
var offsetRgba = (rung, mode) => mode === "light" ? `rgba(0, 0, 0, ${OFFSET_ALPHAS[rung]})` : `rgba(255, 255, 255, ${OFFSET_ALPHAS[rung]})`;
|
|
3382
3415
|
var alphaRootVars = (mode) => [
|
|
@@ -3794,6 +3827,28 @@ function themeToFigma(r, input) {
|
|
|
3794
3827
|
ctaFamily(sig.scale, mode, sig.name)
|
|
3795
3828
|
);
|
|
3796
3829
|
}
|
|
3830
|
+
const pole = (white, alpha) => {
|
|
3831
|
+
const c = white ? 1 : 0;
|
|
3832
|
+
return {
|
|
3833
|
+
$type: "color",
|
|
3834
|
+
$value: { colorSpace: "srgb", components: [c, c, c], alpha, hex: white ? "#ffffff" : "#000000" }
|
|
3835
|
+
};
|
|
3836
|
+
};
|
|
3837
|
+
putLeaf(g2, SYSTEM_LEAF.ABS_BLACK, colorFromHex(false));
|
|
3838
|
+
putLeaf(g2, SYSTEM_LEAF.ABS_WHITE, colorFromHex(true));
|
|
3839
|
+
for (const [path, law] of Object.entries(SURFACE_PLANE_LAW)) {
|
|
3840
|
+
const tok = neutralGroup[law[mode]];
|
|
3841
|
+
if (tok && "$type" in tok) putLeaf(g2, path, tok);
|
|
3842
|
+
}
|
|
3843
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.TRANSPARENT, pole(true, 0));
|
|
3844
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SCRIM, pole(false, SCRIM_ALPHA));
|
|
3845
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.INK, pole(mode === "dark", SOFT_ON_CTA_ALPHA[mode]));
|
|
3846
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_006, OFFSET_TOKEN(6, mode));
|
|
3847
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_008, OFFSET_TOKEN(8, mode));
|
|
3848
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.OFFSET_016, OFFSET_TOKEN(16, mode));
|
|
3849
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_04, pole(false, SHADOW_ALPHAS[4][mode]));
|
|
3850
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_08, pole(false, SHADOW_ALPHAS[8][mode]));
|
|
3851
|
+
putLeaf(g2, SYSTEM_LEAF.ALPHA.SHADOW_12, pole(false, SHADOW_ALPHAS[12][mode]));
|
|
3797
3852
|
return g2;
|
|
3798
3853
|
};
|
|
3799
3854
|
return { light: build("light"), dark: build("dark") };
|
|
@@ -3872,7 +3927,9 @@ export {
|
|
|
3872
3927
|
PAPER_100,
|
|
3873
3928
|
RESOLVER_ID,
|
|
3874
3929
|
SCALE_STOP_COUNT,
|
|
3930
|
+
SCRIM_ALPHA,
|
|
3875
3931
|
SECONDARY_DISTINCT_DELTA_E,
|
|
3932
|
+
SHADOW_ALPHAS,
|
|
3876
3933
|
SIGNALS2 as SIGNALS,
|
|
3877
3934
|
SIGNAL_EMIT_NAME,
|
|
3878
3935
|
SIGNAL_SCALES,
|
|
@@ -3884,6 +3941,8 @@ export {
|
|
|
3884
3941
|
STAMP_STATE_LEAVES,
|
|
3885
3942
|
SUBTLE_PASTEL_K,
|
|
3886
3943
|
SUBTLE_TINT_MULT,
|
|
3944
|
+
SURFACE_PLANE_LAW,
|
|
3945
|
+
SYSTEM_LEAF,
|
|
3887
3946
|
brandCss,
|
|
3888
3947
|
checkAllCollisions,
|
|
3889
3948
|
checkCollision,
|
|
@@ -17,6 +17,22 @@ export declare const ctaBorderRung: (prefix: string) => OffsetRung;
|
|
|
17
17
|
export declare const offsetLeafName: (rung: OffsetRung) => string;
|
|
18
18
|
export declare const offsetVarName: (rung: OffsetRung) => string;
|
|
19
19
|
export declare const offsetTokenPath: (rung: OffsetRung) => string;
|
|
20
|
+
export declare const SHADOW_ALPHAS: {
|
|
21
|
+
readonly 4: {
|
|
22
|
+
readonly light: 0.04;
|
|
23
|
+
readonly dark: 0.32;
|
|
24
|
+
};
|
|
25
|
+
readonly 8: {
|
|
26
|
+
readonly light: 0.08;
|
|
27
|
+
readonly dark: 0.48;
|
|
28
|
+
};
|
|
29
|
+
readonly 12: {
|
|
30
|
+
readonly light: 0.12;
|
|
31
|
+
readonly dark: 0.64;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export type ShadowRung = keyof typeof SHADOW_ALPHAS;
|
|
35
|
+
export declare const SCRIM_ALPHA = 0.6;
|
|
20
36
|
export declare const TRANSPARENT_VAR = "--alpha-transparent";
|
|
21
37
|
export declare const offsetRgba: (rung: OffsetRung, mode: "light" | "dark") => string;
|
|
22
38
|
export declare const alphaRootVars: (mode: "light" | "dark") => string[];
|
|
@@ -15,6 +15,31 @@ export declare const STAMP_LEAF: {
|
|
|
15
15
|
readonly EDGE: string;
|
|
16
16
|
readonly ON: string;
|
|
17
17
|
};
|
|
18
|
+
export declare const SYSTEM_LEAF: {
|
|
19
|
+
readonly ABS_BLACK: "system/abs-black";
|
|
20
|
+
readonly ABS_WHITE: "system/abs-white";
|
|
21
|
+
readonly SURFACE: {
|
|
22
|
+
readonly DIM: "system/surface/dim";
|
|
23
|
+
readonly LOW: "system/surface/low";
|
|
24
|
+
readonly MID: "system/surface/mid";
|
|
25
|
+
readonly HIGH: "system/surface/high";
|
|
26
|
+
};
|
|
27
|
+
readonly ALPHA: {
|
|
28
|
+
readonly TRANSPARENT: "system/alpha/transparent";
|
|
29
|
+
readonly SCRIM: "system/alpha/abs-black-060";
|
|
30
|
+
readonly INK: "system/alpha/ink";
|
|
31
|
+
readonly OFFSET_006: "system/alpha/006";
|
|
32
|
+
readonly OFFSET_008: "system/alpha/008";
|
|
33
|
+
readonly OFFSET_016: "system/alpha/016";
|
|
34
|
+
readonly SHADOW_04: "system/alpha/shadow-04";
|
|
35
|
+
readonly SHADOW_08: "system/alpha/shadow-08";
|
|
36
|
+
readonly SHADOW_12: "system/alpha/shadow-12";
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export declare const SURFACE_PLANE_LAW: Record<string, {
|
|
40
|
+
light: string;
|
|
41
|
+
dark: string;
|
|
42
|
+
}>;
|
|
18
43
|
export declare const CONTRACT_INVARIANT_ROWS: ReadonlySet<string>;
|
|
19
44
|
export declare const EXT_NON_OVERRIDABLE: (p: string) => boolean;
|
|
20
45
|
export declare const EXT_OVERRIDABLE_SYSTEM: (p: string) => boolean;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export { generateScale, generateNeutralScale, generateSubtleSecondary, type GeneratedScale, type ColorStop, type GenerateOptions, type NeutralLevel, type ContrastProfile, } from './engine/colorEngine';
|
|
2
2
|
export { resolveBrand, resolveTheme, resolveLinkTrio, resolveLinkInverseTrio, DEFAULT_LINK_HEX, SIGNAL_SCALES, signalScalesFor, SECONDARY_DISTINCT_DELTA_E, SUBTLE_TINT_MULT, SUBTLE_PASTEL_K, OUTLINE_HOVER_ALPHA, type ResolvedBrand, type ResolvedTheme, type ResolvedSecondary, type SecondaryLevel, type SecondaryStyle, type SignalOverride, } from './engine/resolve';
|
|
3
|
-
export { brandCss, neutralCss, signalsCss, stopsToVars, toHex, stopHex, OFFSET_ALPHAS, ctaNeedsBorder, ctaBorderRung, pageStopFor, } from './engine/cssRender';
|
|
3
|
+
export { brandCss, neutralCss, signalsCss, stopsToVars, toHex, stopHex, OFFSET_ALPHAS, SHADOW_ALPHAS, SCRIM_ALPHA, type ShadowRung, ctaNeedsBorder, ctaBorderRung, pageStopFor, } from './engine/cssRender';
|
|
4
4
|
export { CSS_FAMILY } from './engine/tokenDescriptions';
|
|
5
5
|
export { themeToFigma, type FigmaGroup, type FigmaColorToken, type ThemeInput, } from './engine/figmaRender';
|
|
6
6
|
export { emitDtcgRamp, resolveDtcgRamp, parseToken, EXT_KEY, RESOLVER_ID, type DtcgRampGroup, type DtcgRequirementToken, type DtcgSeedToken, type DtcgColorValue, } from './engine/requirements/dtcg';
|
|
7
7
|
export { MODE_SPECS, type ModeSpec } from './engine/requirements/spec';
|
|
8
|
-
export { stopTokenName, tokenOrder, SCALE_STOP_COUNT, PAPER_100, INK_0, STAMP_FILL, STAMP_FILL_HOVER, STAMP_FILL_PRESSED, STAMP_EDGE, STAMP_ON, STAMP_STATE_LEAVES, } from './engine/tokenNames';
|
|
8
|
+
export { stopTokenName, tokenOrder, SCALE_STOP_COUNT, PAPER_100, INK_0, STAMP_FILL, STAMP_FILL_HOVER, STAMP_FILL_PRESSED, STAMP_EDGE, STAMP_ON, STAMP_STATE_LEAVES, SYSTEM_LEAF, SURFACE_PLANE_LAW, } from './engine/tokenNames';
|
|
9
9
|
export { SIGNAL_EMIT_NAME } from './engine/signals';
|
|
10
10
|
export { classifyArchetype, type Archetype } from './engine/archetypes';
|
|
11
11
|
export { SIGNALS, type SignalDef } from './engine/signals';
|
package/package.json
CHANGED