@titan-design/react-ui 0.13.0 → 0.14.0
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/README.md +14 -0
- package/dist/bodymap.js +129 -76
- package/dist/bodymap.js.map +1 -1
- package/dist/bodymap.mjs +129 -76
- package/dist/bodymap.mjs.map +1 -1
- package/dist/index.d.mts +117 -26
- package/dist/index.d.ts +117 -26
- package/dist/index.js +677 -450
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +673 -451
- package/dist/index.mjs.map +1 -1
- package/dist/{pages-_3Ajpiqu.d.ts → pages-CsjsUn0G.d.ts} +30 -13
- package/dist/{pages-CpW3OB3g.d.mts → pages-ZbT_pD_U.d.mts} +30 -13
- package/dist/pages.d.mts +1 -1
- package/dist/pages.d.ts +1 -1
- package/dist/pages.js +676 -701
- package/dist/pages.js.map +1 -1
- package/dist/pages.mjs +676 -701
- package/dist/pages.mjs.map +1 -1
- package/dist/theme/index.d.mts +31 -7
- package/dist/theme/index.d.ts +31 -7
- package/dist/theme/index.js +84 -20
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/index.mjs +83 -21
- package/dist/theme/index.mjs.map +1 -1
- package/dist/theme/tokens-css.js +84 -20
- package/dist/theme/tokens-css.js.map +1 -1
- package/dist/theme/tokens-css.mjs +84 -20
- package/dist/theme/tokens-css.mjs.map +1 -1
- package/dist/theme/tokens.d.mts +56 -7
- package/dist/theme/tokens.d.ts +56 -7
- package/dist/theme/tokens.js +72 -20
- package/dist/theme/tokens.js.map +1 -1
- package/dist/theme/tokens.mjs +71 -21
- package/dist/theme/tokens.mjs.map +1 -1
- package/docs/render-testing-pattern.md +130 -0
- package/package.json +1 -1
- package/src/arch/Architecture.stories.tsx +3 -1
- package/src/arch/arch-graph.json +74 -72
- package/src/components/custom/ActiveWork/InitiativeBrief.tsx +2 -1
- package/src/components/custom/CircularTimer/CircularTimer.stories.tsx +8 -3
- package/src/components/custom/EmptyState/EmptyState.stories.tsx +1 -1
- package/src/components/custom/Gauge/Gauge.stories.tsx +4 -1
- package/src/components/custom/Gauge/Gauge.tsx +3 -1
- package/src/components/custom/Scatter/Scatter.stories.tsx +10 -7
- package/src/components/custom/Scatter/Scatter.tsx +6 -4
- package/src/components/custom/Sidebar/Sidebar.stories.tsx +1 -1
- package/src/components/custom/Table/Table.stories.tsx +1 -1
- package/src/components/custom/Table/Table.tsx +2 -2
- package/src/components/custom/Treemap/Treemap.stories.tsx +13 -10
- package/src/components/custom/Treemap/Treemap.tsx +4 -1
- package/src/components/custom/Workout/ActiveWorkoutPage.stories.tsx +2 -1
- package/src/components/custom/Workout/BaseBadge.stories.tsx +11 -7
- package/src/components/custom/Workout/BaseBadge.tsx +3 -2
- package/src/components/custom/Workout/BodyMap.tsx +5 -3
- package/src/components/custom/Workout/BodyMapDetailPanel.stories.tsx +13 -3
- package/src/components/custom/Workout/BodyMapDetailPanel.tsx +5 -3
- package/src/components/custom/Workout/CapacityBandChart.stories.tsx +2 -1
- package/src/components/custom/Workout/CapacityBandChart.tsx +5 -3
- package/src/components/custom/Workout/DeviationBar.test.tsx +5 -2
- package/src/components/custom/Workout/DeviationBar.tsx +5 -2
- package/src/components/custom/Workout/DualVelocityStrip.stories.tsx +7 -6
- package/src/components/custom/Workout/DualVelocityStrip.test.tsx +29 -16
- package/src/components/custom/Workout/ExerciseCard.stories.tsx +8 -8
- package/src/components/custom/Workout/ExerciseCard.test.tsx +39 -19
- package/src/components/custom/Workout/ExerciseCard.tsx +92 -167
- package/src/components/custom/Workout/ExerciseCardHeading.stories.tsx +89 -6
- package/src/components/custom/Workout/ExerciseCardHeading.test.tsx +189 -1
- package/src/components/custom/Workout/ExerciseCardHeading.tsx +167 -18
- package/src/components/custom/Workout/ExerciseDetailPage.tsx +3 -2
- package/src/components/custom/Workout/ExerciseHeading.tsx +192 -47
- package/src/components/custom/Workout/ExerciseIndicator.stories.tsx +6 -5
- package/src/components/custom/Workout/InputBar.tsx +4 -2
- package/src/components/custom/Workout/IntensityBar.tsx +4 -1
- package/src/components/custom/Workout/MesoCard.tsx +2 -1
- package/src/components/custom/Workout/MesoStatusCard.tsx +11 -10
- package/src/components/custom/Workout/PlaceholderStrip.stories.tsx +8 -3
- package/src/components/custom/Workout/PrHistoryModal.stories.tsx +12 -2
- package/src/components/custom/Workout/README.md +58 -12
- package/src/components/custom/Workout/ReadinessCheck.tsx +4 -2
- package/src/components/custom/Workout/RestTimer.stories.tsx +13 -2
- package/src/components/custom/Workout/RestTimer.tsx +4 -2
- package/src/components/custom/Workout/SegmentedBar.stories.tsx +16 -12
- package/src/components/custom/Workout/SegmentedBar.tsx +4 -3
- package/src/components/custom/Workout/SetStrip.stories.tsx +3 -2
- package/src/components/custom/Workout/SetsRepsLoad.tsx +23 -9
- package/src/components/custom/Workout/Sparkline.stories.tsx +13 -10
- package/src/components/custom/Workout/StrengthTrendChart.stories.tsx +2 -1
- package/src/components/custom/Workout/StrengthTrendChart.tsx +8 -6
- package/src/components/custom/Workout/TempoDisplay.stories.tsx +4 -3
- package/src/components/custom/Workout/TempoDisplay.tsx +2 -0
- package/src/components/custom/Workout/VelocityStrip.dual.stories.tsx +3 -2
- package/src/components/custom/Workout/VelocityStrip.expanded.stories.tsx +1 -1
- package/src/components/custom/Workout/VelocityStrip.hero.stories.tsx +40 -0
- package/src/components/custom/Workout/VelocityStrip.test.tsx +48 -6
- package/src/components/custom/Workout/VelocityStrip.tsx +23 -14
- package/src/components/custom/Workout/ZoneTrack.stories.tsx +3 -1
- package/src/components/custom/Workout/exerciseRowState.ts +29 -0
- package/src/components/custom/Workout/index.ts +12 -2
- package/src/components/custom/Workout/metricText.stories.tsx +9 -8
- package/src/components/custom/Workout/metricText.tsx +4 -2
- package/src/components/custom/Workout/setHeadingKit.tsx +12 -10
- package/src/components/custom/Workout/velocity-story-kit.tsx +2 -2
- package/src/components/custom/charts/README.md +5 -0
- package/src/components/custom/charts/SetBarChart.test.tsx +16 -0
- package/src/components/custom/charts/SetBarChart.tsx +14 -5
- package/src/components/custom/charts/flatBarGeometry.test.ts +41 -0
- package/src/components/custom/charts/flatBarGeometry.ts +32 -0
- package/src/components/custom/stepper/Stepper.tsx +8 -6
- package/src/components/ui/alert/Alert.stories.tsx +14 -4
- package/src/components/ui/alert/Alert.tsx +24 -3
- package/src/components/ui/button/Button.tsx +12 -12
- package/src/components/ui/checkbox/Checkbox.tsx +2 -2
- package/src/components/ui/data-row/DataRow.stories.tsx +6 -2
- package/src/components/ui/drawer/Drawer.tsx +4 -1
- package/src/components/ui/icon-box/IconBox.tsx +8 -6
- package/src/components/ui/indicator/Indicator.stories.tsx +4 -3
- package/src/components/ui/list-item/ListItem.stories.tsx +7 -4
- package/src/components/ui/modal/Modal.tsx +2 -0
- package/src/components/ui/pill/Pill.stories.tsx +53 -0
- package/src/components/ui/pill/Pill.tsx +10 -6
- package/src/components/ui/popover/Popover.stories.tsx +1 -1
- package/src/components/ui/progress/Progress.tsx +9 -6
- package/src/components/ui/radio/Radio.tsx +1 -1
- package/src/components/ui/section/Section.stories.tsx +10 -10
- package/src/components/ui/select/Select.tsx +2 -1
- package/src/components/ui/spinner/Spinner.tsx +3 -1
- package/src/components/ui/stack/Stack.stories.tsx +7 -7
- package/src/components/ui/surface/Surface.stories.tsx +75 -28
- package/src/components/ui/switch/Switch.tsx +1 -1
- package/src/components/ui/tabs/Tabs.tsx +4 -2
- package/src/components/ui/toast/Toast.tsx +6 -4
- package/src/components/ui/toolbar-button/ToolbarButton.tsx +13 -6
- package/src/stories/PresetShowcase.stories.tsx +1 -1
- package/src/test/no-raw-color.test.ts +39 -0
- package/src/theme/Alpha.stories.tsx +103 -0
- package/src/theme/ProposedTokensVW82.stories.tsx +414 -0
- package/src/theme/config.ts +12 -0
- package/src/theme/global.css +15 -3
- package/src/theme/subtle-tone-weight.test.ts +163 -0
- package/src/theme/tailwind-var-opacity.test.ts +163 -0
- package/src/theme/tokens/primitives.ts +33 -0
- package/src/theme/tokens/semantic-hex-guard.test.ts +322 -0
- package/src/theme/tokens/semantic.ts +56 -20
- package/src/utils/colors.alpha-adoption.test.ts +408 -0
- package/tailwind.config.js +50 -9
package/dist/theme/tokens.d.mts
CHANGED
|
@@ -61,6 +61,8 @@ declare const semanticColorsLight: {
|
|
|
61
61
|
readonly 'brand-secondary-active': "#22465F";
|
|
62
62
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
63
63
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
64
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
65
|
+
readonly 'on-brand-secondary-subtle': "#307B9B";
|
|
64
66
|
readonly 'status-success': "#2ED573";
|
|
65
67
|
readonly 'status-success-light': "#58F69E";
|
|
66
68
|
readonly 'status-success-dark': "#298732";
|
|
@@ -93,6 +95,10 @@ declare const semanticColorsLight: {
|
|
|
93
95
|
readonly 'status-info-subtle': "#EFF8FF";
|
|
94
96
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
95
97
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
98
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
99
|
+
readonly 'on-status-error-subtle': "#D14343";
|
|
100
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
101
|
+
readonly 'on-status-info-subtle': "#2196F3";
|
|
96
102
|
readonly 'on-status-success': "#FFFFFF";
|
|
97
103
|
readonly 'on-status-error': "#FFFFFF";
|
|
98
104
|
readonly 'on-status-warning': "#FFFFFF";
|
|
@@ -166,13 +172,15 @@ declare const semanticColorsDark: {
|
|
|
166
172
|
readonly 'brand-secondary': "#307B9B";
|
|
167
173
|
readonly 'brand-secondary-light': "#2697B7";
|
|
168
174
|
readonly 'brand-secondary-dark': "#2A617F";
|
|
169
|
-
readonly 'brand-secondary-subtle': "rgba(
|
|
175
|
+
readonly 'brand-secondary-subtle': "rgba(34, 211, 238, 0.12)";
|
|
170
176
|
readonly 'brand-secondary-muted': "rgba(48, 123, 155, 0.30)";
|
|
171
177
|
readonly 'brand-secondary-strong': "rgba(48, 123, 155, 0.50)";
|
|
172
178
|
readonly 'brand-secondary-hover': "#2697B7";
|
|
173
179
|
readonly 'brand-secondary-active': "#01B5D1";
|
|
174
180
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
175
181
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
182
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
183
|
+
readonly 'on-brand-secondary-subtle': "#22D3EE";
|
|
176
184
|
readonly 'status-success': "#2ED573";
|
|
177
185
|
readonly 'status-success-light': "#58F69E";
|
|
178
186
|
readonly 'status-success-dark': "#298732";
|
|
@@ -184,7 +192,7 @@ declare const semanticColorsDark: {
|
|
|
184
192
|
readonly 'status-error': "#D14343";
|
|
185
193
|
readonly 'status-error-light': "#E05254";
|
|
186
194
|
readonly 'status-error-dark': "#A4221C";
|
|
187
|
-
readonly 'status-error-subtle': "rgba(
|
|
195
|
+
readonly 'status-error-subtle': "rgba(247, 113, 117, 0.08)";
|
|
188
196
|
readonly 'status-error-muted': "rgba(209, 67, 67, 0.30)";
|
|
189
197
|
readonly 'status-error-strong': "rgba(209, 67, 67, 0.50)";
|
|
190
198
|
readonly 'status-error-vivid': "#FF4757";
|
|
@@ -202,13 +210,17 @@ declare const semanticColorsDark: {
|
|
|
202
210
|
readonly 'status-info': "#2196F3";
|
|
203
211
|
readonly 'status-info-light': "#78C2FF";
|
|
204
212
|
readonly 'status-info-dark': "#1072CB";
|
|
205
|
-
readonly 'status-info-subtle': "rgba(
|
|
213
|
+
readonly 'status-info-subtle': "rgba(120, 194, 255, 0.12)";
|
|
206
214
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
207
215
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
208
216
|
readonly 'on-status-success': "#FFFFFF";
|
|
209
217
|
readonly 'on-status-error': "#FFFFFF";
|
|
210
218
|
readonly 'on-status-warning': "#FFFFFF";
|
|
211
219
|
readonly 'on-status-info': "#FFFFFF";
|
|
220
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
221
|
+
readonly 'on-status-error-subtle': "#F77175";
|
|
222
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
223
|
+
readonly 'on-status-info-subtle': "#78C2FF";
|
|
212
224
|
readonly 'result-improve': "#4caf50";
|
|
213
225
|
readonly 'result-improve-light': "rgba(76, 175, 80, 0.16)";
|
|
214
226
|
readonly 'result-improve-dark': "#248a24";
|
|
@@ -385,6 +397,8 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
385
397
|
readonly 'brand-secondary-active': "#22465F";
|
|
386
398
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
387
399
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
400
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
401
|
+
readonly 'on-brand-secondary-subtle': "#307B9B";
|
|
388
402
|
readonly 'status-success': "#2ED573";
|
|
389
403
|
readonly 'status-success-light': "#58F69E";
|
|
390
404
|
readonly 'status-success-dark': "#298732";
|
|
@@ -417,6 +431,10 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
417
431
|
readonly 'status-info-subtle': "#EFF8FF";
|
|
418
432
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
419
433
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
434
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
435
|
+
readonly 'on-status-error-subtle': "#D14343";
|
|
436
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
437
|
+
readonly 'on-status-info-subtle': "#2196F3";
|
|
420
438
|
readonly 'on-status-success': "#FFFFFF";
|
|
421
439
|
readonly 'on-status-error': "#FFFFFF";
|
|
422
440
|
readonly 'on-status-warning': "#FFFFFF";
|
|
@@ -489,13 +507,15 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
489
507
|
readonly 'brand-secondary': "#307B9B";
|
|
490
508
|
readonly 'brand-secondary-light': "#2697B7";
|
|
491
509
|
readonly 'brand-secondary-dark': "#2A617F";
|
|
492
|
-
readonly 'brand-secondary-subtle': "rgba(
|
|
510
|
+
readonly 'brand-secondary-subtle': "rgba(34, 211, 238, 0.12)";
|
|
493
511
|
readonly 'brand-secondary-muted': "rgba(48, 123, 155, 0.30)";
|
|
494
512
|
readonly 'brand-secondary-strong': "rgba(48, 123, 155, 0.50)";
|
|
495
513
|
readonly 'brand-secondary-hover': "#2697B7";
|
|
496
514
|
readonly 'brand-secondary-active': "#01B5D1";
|
|
497
515
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
498
516
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
517
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
518
|
+
readonly 'on-brand-secondary-subtle': "#22D3EE";
|
|
499
519
|
readonly 'status-success': "#2ED573";
|
|
500
520
|
readonly 'status-success-light': "#58F69E";
|
|
501
521
|
readonly 'status-success-dark': "#298732";
|
|
@@ -507,7 +527,7 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
507
527
|
readonly 'status-error': "#D14343";
|
|
508
528
|
readonly 'status-error-light': "#E05254";
|
|
509
529
|
readonly 'status-error-dark': "#A4221C";
|
|
510
|
-
readonly 'status-error-subtle': "rgba(
|
|
530
|
+
readonly 'status-error-subtle': "rgba(247, 113, 117, 0.08)";
|
|
511
531
|
readonly 'status-error-muted': "rgba(209, 67, 67, 0.30)";
|
|
512
532
|
readonly 'status-error-strong': "rgba(209, 67, 67, 0.50)";
|
|
513
533
|
readonly 'status-error-vivid': "#FF4757";
|
|
@@ -525,13 +545,17 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
525
545
|
readonly 'status-info': "#2196F3";
|
|
526
546
|
readonly 'status-info-light': "#78C2FF";
|
|
527
547
|
readonly 'status-info-dark': "#1072CB";
|
|
528
|
-
readonly 'status-info-subtle': "rgba(
|
|
548
|
+
readonly 'status-info-subtle': "rgba(120, 194, 255, 0.12)";
|
|
529
549
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
530
550
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
531
551
|
readonly 'on-status-success': "#FFFFFF";
|
|
532
552
|
readonly 'on-status-error': "#FFFFFF";
|
|
533
553
|
readonly 'on-status-warning': "#FFFFFF";
|
|
534
554
|
readonly 'on-status-info': "#FFFFFF";
|
|
555
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
556
|
+
readonly 'on-status-error-subtle': "#F77175";
|
|
557
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
558
|
+
readonly 'on-status-info-subtle': "#78C2FF";
|
|
535
559
|
readonly 'result-improve': "#4caf50";
|
|
536
560
|
readonly 'result-improve-light': "rgba(76, 175, 80, 0.16)";
|
|
537
561
|
readonly 'result-improve-dark': "#248a24";
|
|
@@ -620,6 +644,31 @@ declare const primitiveColors: {
|
|
|
620
644
|
* regenerating the ramp, so it stays a pin.
|
|
621
645
|
*/
|
|
622
646
|
declare const alertRedVivid: "#FF4757";
|
|
647
|
+
/**
|
|
648
|
+
* Result/outcome palette anchors (VW-83): Material-style green/red/grey chosen
|
|
649
|
+
* for the result-improve/-degrade/-inconclusive tokens. No `primitiveRamps` step
|
|
650
|
+
* matches any of these exactly (the ramps are OKLCH-generated with a different
|
|
651
|
+
* hue/chroma arc), so they are pinned by name here rather than left as raw hex
|
|
652
|
+
* in semantic.ts — same pattern as {@link alertRedVivid}.
|
|
653
|
+
*/
|
|
654
|
+
declare const resultPaletteColors: {
|
|
655
|
+
readonly improve: "#4caf50";
|
|
656
|
+
readonly improveDark: "#248a24";
|
|
657
|
+
readonly degrade: "#ef5350";
|
|
658
|
+
readonly degradeDark: "#b30000";
|
|
659
|
+
readonly inconclusive: "#9E9A97";
|
|
660
|
+
};
|
|
661
|
+
/**
|
|
662
|
+
* One-off semantic literals (VW-83) with no exact `greyRamp`/`primitiveRamps`
|
|
663
|
+
* match, pinned by name instead of left as raw hex in semantic.ts.
|
|
664
|
+
*/
|
|
665
|
+
declare const semanticPins: {
|
|
666
|
+
readonly textPrimaryLight: "#121828";
|
|
667
|
+
readonly textSecondaryLight: "#65748B";
|
|
668
|
+
readonly backgroundBaseLight: "#EBEBEB";
|
|
669
|
+
readonly dividerLight: "#E8E9EB";
|
|
670
|
+
readonly focusIndigoDark: "#828DF8";
|
|
671
|
+
};
|
|
623
672
|
/**
|
|
624
673
|
* Unified warm-neutral grey ramp (TD-07.14)
|
|
625
674
|
*
|
|
@@ -969,4 +1018,4 @@ declare const primitiveZIndex: {
|
|
|
969
1018
|
readonly tooltip: 1800;
|
|
970
1019
|
};
|
|
971
1020
|
|
|
972
|
-
export { CATEGORICAL_CVD_SAFE_MAX, type CategoricalVariant, SURFACE_PLANE_STEPS, type ThemeMode, alertRedVivid, bestTextColor, buttonSizes, categoricalPalette, discreteRainbow, divergingScale, getCategoricalColor, getDiscreteRainbowColor, getSemanticColors, greyRamp, primitiveBorderRadius, primitiveBreakpoints, primitiveColors, primitiveRamps, primitiveSpacing, primitiveTypography, primitiveZIndex, semanticColorsDark, semanticColorsLight, semanticTypography, sequentialEffort };
|
|
1021
|
+
export { CATEGORICAL_CVD_SAFE_MAX, type CategoricalVariant, SURFACE_PLANE_STEPS, type ThemeMode, alertRedVivid, bestTextColor, buttonSizes, categoricalPalette, discreteRainbow, divergingScale, getCategoricalColor, getDiscreteRainbowColor, getSemanticColors, greyRamp, primitiveBorderRadius, primitiveBreakpoints, primitiveColors, primitiveRamps, primitiveSpacing, primitiveTypography, primitiveZIndex, resultPaletteColors, semanticColorsDark, semanticColorsLight, semanticPins, semanticTypography, sequentialEffort };
|
package/dist/theme/tokens.d.ts
CHANGED
|
@@ -61,6 +61,8 @@ declare const semanticColorsLight: {
|
|
|
61
61
|
readonly 'brand-secondary-active': "#22465F";
|
|
62
62
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
63
63
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
64
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
65
|
+
readonly 'on-brand-secondary-subtle': "#307B9B";
|
|
64
66
|
readonly 'status-success': "#2ED573";
|
|
65
67
|
readonly 'status-success-light': "#58F69E";
|
|
66
68
|
readonly 'status-success-dark': "#298732";
|
|
@@ -93,6 +95,10 @@ declare const semanticColorsLight: {
|
|
|
93
95
|
readonly 'status-info-subtle': "#EFF8FF";
|
|
94
96
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
95
97
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
98
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
99
|
+
readonly 'on-status-error-subtle': "#D14343";
|
|
100
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
101
|
+
readonly 'on-status-info-subtle': "#2196F3";
|
|
96
102
|
readonly 'on-status-success': "#FFFFFF";
|
|
97
103
|
readonly 'on-status-error': "#FFFFFF";
|
|
98
104
|
readonly 'on-status-warning': "#FFFFFF";
|
|
@@ -166,13 +172,15 @@ declare const semanticColorsDark: {
|
|
|
166
172
|
readonly 'brand-secondary': "#307B9B";
|
|
167
173
|
readonly 'brand-secondary-light': "#2697B7";
|
|
168
174
|
readonly 'brand-secondary-dark': "#2A617F";
|
|
169
|
-
readonly 'brand-secondary-subtle': "rgba(
|
|
175
|
+
readonly 'brand-secondary-subtle': "rgba(34, 211, 238, 0.12)";
|
|
170
176
|
readonly 'brand-secondary-muted': "rgba(48, 123, 155, 0.30)";
|
|
171
177
|
readonly 'brand-secondary-strong': "rgba(48, 123, 155, 0.50)";
|
|
172
178
|
readonly 'brand-secondary-hover': "#2697B7";
|
|
173
179
|
readonly 'brand-secondary-active': "#01B5D1";
|
|
174
180
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
175
181
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
182
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
183
|
+
readonly 'on-brand-secondary-subtle': "#22D3EE";
|
|
176
184
|
readonly 'status-success': "#2ED573";
|
|
177
185
|
readonly 'status-success-light': "#58F69E";
|
|
178
186
|
readonly 'status-success-dark': "#298732";
|
|
@@ -184,7 +192,7 @@ declare const semanticColorsDark: {
|
|
|
184
192
|
readonly 'status-error': "#D14343";
|
|
185
193
|
readonly 'status-error-light': "#E05254";
|
|
186
194
|
readonly 'status-error-dark': "#A4221C";
|
|
187
|
-
readonly 'status-error-subtle': "rgba(
|
|
195
|
+
readonly 'status-error-subtle': "rgba(247, 113, 117, 0.08)";
|
|
188
196
|
readonly 'status-error-muted': "rgba(209, 67, 67, 0.30)";
|
|
189
197
|
readonly 'status-error-strong': "rgba(209, 67, 67, 0.50)";
|
|
190
198
|
readonly 'status-error-vivid': "#FF4757";
|
|
@@ -202,13 +210,17 @@ declare const semanticColorsDark: {
|
|
|
202
210
|
readonly 'status-info': "#2196F3";
|
|
203
211
|
readonly 'status-info-light': "#78C2FF";
|
|
204
212
|
readonly 'status-info-dark': "#1072CB";
|
|
205
|
-
readonly 'status-info-subtle': "rgba(
|
|
213
|
+
readonly 'status-info-subtle': "rgba(120, 194, 255, 0.12)";
|
|
206
214
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
207
215
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
208
216
|
readonly 'on-status-success': "#FFFFFF";
|
|
209
217
|
readonly 'on-status-error': "#FFFFFF";
|
|
210
218
|
readonly 'on-status-warning': "#FFFFFF";
|
|
211
219
|
readonly 'on-status-info': "#FFFFFF";
|
|
220
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
221
|
+
readonly 'on-status-error-subtle': "#F77175";
|
|
222
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
223
|
+
readonly 'on-status-info-subtle': "#78C2FF";
|
|
212
224
|
readonly 'result-improve': "#4caf50";
|
|
213
225
|
readonly 'result-improve-light': "rgba(76, 175, 80, 0.16)";
|
|
214
226
|
readonly 'result-improve-dark': "#248a24";
|
|
@@ -385,6 +397,8 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
385
397
|
readonly 'brand-secondary-active': "#22465F";
|
|
386
398
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
387
399
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
400
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
401
|
+
readonly 'on-brand-secondary-subtle': "#307B9B";
|
|
388
402
|
readonly 'status-success': "#2ED573";
|
|
389
403
|
readonly 'status-success-light': "#58F69E";
|
|
390
404
|
readonly 'status-success-dark': "#298732";
|
|
@@ -417,6 +431,10 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
417
431
|
readonly 'status-info-subtle': "#EFF8FF";
|
|
418
432
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
419
433
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
434
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
435
|
+
readonly 'on-status-error-subtle': "#D14343";
|
|
436
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
437
|
+
readonly 'on-status-info-subtle': "#2196F3";
|
|
420
438
|
readonly 'on-status-success': "#FFFFFF";
|
|
421
439
|
readonly 'on-status-error': "#FFFFFF";
|
|
422
440
|
readonly 'on-status-warning': "#FFFFFF";
|
|
@@ -489,13 +507,15 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
489
507
|
readonly 'brand-secondary': "#307B9B";
|
|
490
508
|
readonly 'brand-secondary-light': "#2697B7";
|
|
491
509
|
readonly 'brand-secondary-dark': "#2A617F";
|
|
492
|
-
readonly 'brand-secondary-subtle': "rgba(
|
|
510
|
+
readonly 'brand-secondary-subtle': "rgba(34, 211, 238, 0.12)";
|
|
493
511
|
readonly 'brand-secondary-muted': "rgba(48, 123, 155, 0.30)";
|
|
494
512
|
readonly 'brand-secondary-strong': "rgba(48, 123, 155, 0.50)";
|
|
495
513
|
readonly 'brand-secondary-hover': "#2697B7";
|
|
496
514
|
readonly 'brand-secondary-active': "#01B5D1";
|
|
497
515
|
readonly 'on-brand-primary': "#FFFFFF";
|
|
498
516
|
readonly 'on-brand-secondary': "#FFFFFF";
|
|
517
|
+
readonly 'on-brand-primary-subtle': "#FF7900";
|
|
518
|
+
readonly 'on-brand-secondary-subtle': "#22D3EE";
|
|
499
519
|
readonly 'status-success': "#2ED573";
|
|
500
520
|
readonly 'status-success-light': "#58F69E";
|
|
501
521
|
readonly 'status-success-dark': "#298732";
|
|
@@ -507,7 +527,7 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
507
527
|
readonly 'status-error': "#D14343";
|
|
508
528
|
readonly 'status-error-light': "#E05254";
|
|
509
529
|
readonly 'status-error-dark': "#A4221C";
|
|
510
|
-
readonly 'status-error-subtle': "rgba(
|
|
530
|
+
readonly 'status-error-subtle': "rgba(247, 113, 117, 0.08)";
|
|
511
531
|
readonly 'status-error-muted': "rgba(209, 67, 67, 0.30)";
|
|
512
532
|
readonly 'status-error-strong': "rgba(209, 67, 67, 0.50)";
|
|
513
533
|
readonly 'status-error-vivid': "#FF4757";
|
|
@@ -525,13 +545,17 @@ declare function getSemanticColors(mode: ThemeMode): {
|
|
|
525
545
|
readonly 'status-info': "#2196F3";
|
|
526
546
|
readonly 'status-info-light': "#78C2FF";
|
|
527
547
|
readonly 'status-info-dark': "#1072CB";
|
|
528
|
-
readonly 'status-info-subtle': "rgba(
|
|
548
|
+
readonly 'status-info-subtle': "rgba(120, 194, 255, 0.12)";
|
|
529
549
|
readonly 'status-info-muted': "rgba(33, 150, 243, 0.30)";
|
|
530
550
|
readonly 'status-info-strong': "rgba(33, 150, 243, 0.50)";
|
|
531
551
|
readonly 'on-status-success': "#FFFFFF";
|
|
532
552
|
readonly 'on-status-error': "#FFFFFF";
|
|
533
553
|
readonly 'on-status-warning': "#FFFFFF";
|
|
534
554
|
readonly 'on-status-info': "#FFFFFF";
|
|
555
|
+
readonly 'on-status-success-subtle': "#2ED573";
|
|
556
|
+
readonly 'on-status-error-subtle': "#F77175";
|
|
557
|
+
readonly 'on-status-warning-subtle': "#F9B415";
|
|
558
|
+
readonly 'on-status-info-subtle': "#78C2FF";
|
|
535
559
|
readonly 'result-improve': "#4caf50";
|
|
536
560
|
readonly 'result-improve-light': "rgba(76, 175, 80, 0.16)";
|
|
537
561
|
readonly 'result-improve-dark': "#248a24";
|
|
@@ -620,6 +644,31 @@ declare const primitiveColors: {
|
|
|
620
644
|
* regenerating the ramp, so it stays a pin.
|
|
621
645
|
*/
|
|
622
646
|
declare const alertRedVivid: "#FF4757";
|
|
647
|
+
/**
|
|
648
|
+
* Result/outcome palette anchors (VW-83): Material-style green/red/grey chosen
|
|
649
|
+
* for the result-improve/-degrade/-inconclusive tokens. No `primitiveRamps` step
|
|
650
|
+
* matches any of these exactly (the ramps are OKLCH-generated with a different
|
|
651
|
+
* hue/chroma arc), so they are pinned by name here rather than left as raw hex
|
|
652
|
+
* in semantic.ts — same pattern as {@link alertRedVivid}.
|
|
653
|
+
*/
|
|
654
|
+
declare const resultPaletteColors: {
|
|
655
|
+
readonly improve: "#4caf50";
|
|
656
|
+
readonly improveDark: "#248a24";
|
|
657
|
+
readonly degrade: "#ef5350";
|
|
658
|
+
readonly degradeDark: "#b30000";
|
|
659
|
+
readonly inconclusive: "#9E9A97";
|
|
660
|
+
};
|
|
661
|
+
/**
|
|
662
|
+
* One-off semantic literals (VW-83) with no exact `greyRamp`/`primitiveRamps`
|
|
663
|
+
* match, pinned by name instead of left as raw hex in semantic.ts.
|
|
664
|
+
*/
|
|
665
|
+
declare const semanticPins: {
|
|
666
|
+
readonly textPrimaryLight: "#121828";
|
|
667
|
+
readonly textSecondaryLight: "#65748B";
|
|
668
|
+
readonly backgroundBaseLight: "#EBEBEB";
|
|
669
|
+
readonly dividerLight: "#E8E9EB";
|
|
670
|
+
readonly focusIndigoDark: "#828DF8";
|
|
671
|
+
};
|
|
623
672
|
/**
|
|
624
673
|
* Unified warm-neutral grey ramp (TD-07.14)
|
|
625
674
|
*
|
|
@@ -969,4 +1018,4 @@ declare const primitiveZIndex: {
|
|
|
969
1018
|
readonly tooltip: 1800;
|
|
970
1019
|
};
|
|
971
1020
|
|
|
972
|
-
export { CATEGORICAL_CVD_SAFE_MAX, type CategoricalVariant, SURFACE_PLANE_STEPS, type ThemeMode, alertRedVivid, bestTextColor, buttonSizes, categoricalPalette, discreteRainbow, divergingScale, getCategoricalColor, getDiscreteRainbowColor, getSemanticColors, greyRamp, primitiveBorderRadius, primitiveBreakpoints, primitiveColors, primitiveRamps, primitiveSpacing, primitiveTypography, primitiveZIndex, semanticColorsDark, semanticColorsLight, semanticTypography, sequentialEffort };
|
|
1021
|
+
export { CATEGORICAL_CVD_SAFE_MAX, type CategoricalVariant, SURFACE_PLANE_STEPS, type ThemeMode, alertRedVivid, bestTextColor, buttonSizes, categoricalPalette, discreteRainbow, divergingScale, getCategoricalColor, getDiscreteRainbowColor, getSemanticColors, greyRamp, primitiveBorderRadius, primitiveBreakpoints, primitiveColors, primitiveRamps, primitiveSpacing, primitiveTypography, primitiveZIndex, resultPaletteColors, semanticColorsDark, semanticColorsLight, semanticPins, semanticTypography, sequentialEffort };
|
package/dist/theme/tokens.js
CHANGED
|
@@ -7,6 +7,26 @@ var primitiveColors = {
|
|
|
7
7
|
transparent: "transparent"
|
|
8
8
|
};
|
|
9
9
|
var alertRedVivid = "#FF4757";
|
|
10
|
+
var resultPaletteColors = {
|
|
11
|
+
improve: "#4caf50",
|
|
12
|
+
improveDark: "#248a24",
|
|
13
|
+
degrade: "#ef5350",
|
|
14
|
+
degradeDark: "#b30000",
|
|
15
|
+
inconclusive: "#9E9A97"
|
|
16
|
+
};
|
|
17
|
+
var semanticPins = {
|
|
18
|
+
// Cool navy-black; darker and more blue-shifted than any warm greyRamp step.
|
|
19
|
+
textPrimaryLight: "#121828",
|
|
20
|
+
// Cool blue-grey; outside greyRamp's warm (R>=G>=B) scale.
|
|
21
|
+
textSecondaryLight: "#65748B",
|
|
22
|
+
// Pure neutral grey (R=G=B); no warm greyRamp step lands on it exactly.
|
|
23
|
+
backgroundBaseLight: "#EBEBEB",
|
|
24
|
+
// Near-neutral grey, kept one step off backgroundBaseLight by design.
|
|
25
|
+
dividerLight: "#E8E9EB",
|
|
26
|
+
// Periwinkle/indigo; more purple than any primitiveRamps.blue step. Shared by
|
|
27
|
+
// dark-mode text-link, border-focus and border-input-focus.
|
|
28
|
+
focusIndigoDark: "#828DF8"
|
|
29
|
+
};
|
|
10
30
|
var greyRamp = {
|
|
11
31
|
50: "#F9F6F3",
|
|
12
32
|
// L*97.0 W6
|
|
@@ -439,6 +459,12 @@ var semanticColorsLight = {
|
|
|
439
459
|
// Text on brand backgrounds (on-*)
|
|
440
460
|
"on-brand-primary": primitiveColors.white,
|
|
441
461
|
"on-brand-secondary": primitiveColors.white,
|
|
462
|
+
// Text ON a `-subtle` fill. Light mode keeps today's pairing (the base token) so
|
|
463
|
+
// nothing moves here: light has the same disease mirrored — a light rung on a
|
|
464
|
+
// near-white ramp[50] fill — but correcting it belongs with the light-mode pass
|
|
465
|
+
// in AW-121, not this one.
|
|
466
|
+
"on-brand-primary-subtle": primitiveRamps.orange[400],
|
|
467
|
+
"on-brand-secondary-subtle": primitiveRamps.cyan[600],
|
|
442
468
|
// Status colors (status-*)
|
|
443
469
|
"status-success": primitiveRamps.green[300],
|
|
444
470
|
"status-success-light": primitiveRamps.green[200],
|
|
@@ -474,21 +500,26 @@ var semanticColorsLight = {
|
|
|
474
500
|
"status-info-subtle": primitiveRamps.blue[50],
|
|
475
501
|
"status-info-muted": "rgba(33, 150, 243, 0.30)",
|
|
476
502
|
"status-info-strong": "rgba(33, 150, 243, 0.50)",
|
|
503
|
+
// Text ON a `-subtle` fill — see the on-brand-*-subtle note above.
|
|
504
|
+
"on-status-success-subtle": primitiveRamps.green[300],
|
|
505
|
+
"on-status-error-subtle": primitiveRamps.red[600],
|
|
506
|
+
"on-status-warning-subtle": primitiveRamps.amber[300],
|
|
507
|
+
"on-status-info-subtle": primitiveRamps.blue[500],
|
|
477
508
|
// Text on status backgrounds (on-status-*)
|
|
478
509
|
"on-status-success": primitiveColors.white,
|
|
479
510
|
"on-status-error": primitiveColors.white,
|
|
480
511
|
"on-status-warning": primitiveColors.white,
|
|
481
512
|
"on-status-info": primitiveColors.white,
|
|
482
513
|
// Result/outcome indicators (result-*)
|
|
483
|
-
"result-improve":
|
|
514
|
+
"result-improve": resultPaletteColors.improve,
|
|
484
515
|
// Green - positive outcome
|
|
485
516
|
"result-improve-light": "rgba(76, 175, 80, 0.12)",
|
|
486
|
-
"result-improve-dark":
|
|
487
|
-
"result-degrade":
|
|
517
|
+
"result-improve-dark": resultPaletteColors.improveDark,
|
|
518
|
+
"result-degrade": resultPaletteColors.degrade,
|
|
488
519
|
// Red - negative outcome
|
|
489
520
|
"result-degrade-light": "rgba(239, 83, 80, 0.12)",
|
|
490
|
-
"result-degrade-dark":
|
|
491
|
-
"result-inconclusive":
|
|
521
|
+
"result-degrade-dark": resultPaletteColors.degradeDark,
|
|
522
|
+
"result-inconclusive": resultPaletteColors.inconclusive,
|
|
492
523
|
// Gray - no clear result
|
|
493
524
|
"result-inconclusive-light": "rgba(158, 154, 151, 0.12)",
|
|
494
525
|
"result-neutral": greyRamp[600],
|
|
@@ -520,8 +551,8 @@ var semanticColorsLight = {
|
|
|
520
551
|
"data-10": discreteRainbow[22],
|
|
521
552
|
// Dark Orange
|
|
522
553
|
// Text colors (text-*)
|
|
523
|
-
"text-primary":
|
|
524
|
-
"text-secondary":
|
|
554
|
+
"text-primary": semanticPins.textPrimaryLight,
|
|
555
|
+
"text-secondary": semanticPins.textSecondaryLight,
|
|
525
556
|
"text-tertiary": greyRamp[400],
|
|
526
557
|
"text-disabled": "rgba(55, 65, 81, 0.48)",
|
|
527
558
|
"text-inverse": primitiveColors.white,
|
|
@@ -537,7 +568,7 @@ var semanticColorsLight = {
|
|
|
537
568
|
"surface-input": greyRamp[50],
|
|
538
569
|
// Input field background (filled variant)
|
|
539
570
|
// Background colors (background-*)
|
|
540
|
-
"background-base":
|
|
571
|
+
"background-base": semanticPins.backgroundBaseLight,
|
|
541
572
|
"background-default": primitiveColors.white,
|
|
542
573
|
"background-subtle": greyRamp[50],
|
|
543
574
|
// Frame/bezel chrome — top bar + side nav shell, one step below
|
|
@@ -568,7 +599,7 @@ var semanticColorsLight = {
|
|
|
568
599
|
"interactive-disabled": "rgba(55, 65, 81, 0.12)",
|
|
569
600
|
"interactive-disabled-text": "rgba(55, 65, 81, 0.26)",
|
|
570
601
|
// Divider
|
|
571
|
-
divider:
|
|
602
|
+
divider: semanticPins.dividerLight,
|
|
572
603
|
// Avatar default
|
|
573
604
|
"avatar-background": greyRamp[600],
|
|
574
605
|
"avatar-text": primitiveColors.white
|
|
@@ -586,7 +617,7 @@ var semanticColorsDark = {
|
|
|
586
617
|
"brand-secondary": primitiveRamps.cyan[600],
|
|
587
618
|
"brand-secondary-light": primitiveRamps.cyan[500],
|
|
588
619
|
"brand-secondary-dark": primitiveRamps.cyan[700],
|
|
589
|
-
"brand-secondary-subtle": "rgba(
|
|
620
|
+
"brand-secondary-subtle": "rgba(34, 211, 238, 0.12)",
|
|
590
621
|
"brand-secondary-muted": "rgba(48, 123, 155, 0.30)",
|
|
591
622
|
"brand-secondary-strong": "rgba(48, 123, 155, 0.50)",
|
|
592
623
|
"brand-secondary-hover": primitiveRamps.cyan[500],
|
|
@@ -594,6 +625,14 @@ var semanticColorsDark = {
|
|
|
594
625
|
// Text on brand backgrounds
|
|
595
626
|
"on-brand-primary": primitiveColors.white,
|
|
596
627
|
"on-brand-secondary": primitiveColors.white,
|
|
628
|
+
// Text ON a `-subtle` fill. Its own role: `brand-primary` and friends are tuned to
|
|
629
|
+
// carry a white label as a solid fill, which makes the two deepest of them
|
|
630
|
+
// (cyan[600], red[600]) too dark to read as text on a dark plane. Levelling the
|
|
631
|
+
// family at rung 300 puts every tone within OKLCH L 0.769-0.813 instead of
|
|
632
|
+
// 0.550-0.813. Brand is deliberately left at its own orange[400] (operator, AW-133)
|
|
633
|
+
// so the Voltras tone never drifts; it is the one tone under AA on a raised card.
|
|
634
|
+
"on-brand-primary-subtle": primitiveRamps.orange[400],
|
|
635
|
+
"on-brand-secondary-subtle": primitiveRamps.cyan[300],
|
|
597
636
|
// Status colors
|
|
598
637
|
"status-success": primitiveRamps.green[300],
|
|
599
638
|
"status-success-light": primitiveRamps.green[200],
|
|
@@ -607,7 +646,10 @@ var semanticColorsDark = {
|
|
|
607
646
|
"status-error": primitiveRamps.red[600],
|
|
608
647
|
"status-error-light": primitiveRamps.red[500],
|
|
609
648
|
"status-error-dark": primitiveRamps.red[700],
|
|
610
|
-
|
|
649
|
+
// Alpha 0.08, not the family's 0.12: error's label is red[400], a rung darker than
|
|
650
|
+
// its siblings so it reads RED rather than pink (rung 300 has only 0.121 chroma).
|
|
651
|
+
// Thinning the fill buys back the contrast that extra darkness costs. See AW-133.
|
|
652
|
+
"status-error-subtle": "rgba(247, 113, 117, 0.08)",
|
|
611
653
|
"status-error-muted": "rgba(209, 67, 67, 0.30)",
|
|
612
654
|
"status-error-strong": "rgba(209, 67, 67, 0.50)",
|
|
613
655
|
"status-error-vivid": alertRedVivid,
|
|
@@ -625,7 +667,7 @@ var semanticColorsDark = {
|
|
|
625
667
|
"status-info": primitiveRamps.blue[500],
|
|
626
668
|
"status-info-light": primitiveRamps.blue[300],
|
|
627
669
|
"status-info-dark": primitiveRamps.blue[600],
|
|
628
|
-
"status-info-subtle": "rgba(
|
|
670
|
+
"status-info-subtle": "rgba(120, 194, 255, 0.12)",
|
|
629
671
|
"status-info-muted": "rgba(33, 150, 243, 0.30)",
|
|
630
672
|
"status-info-strong": "rgba(33, 150, 243, 0.50)",
|
|
631
673
|
// Text on status backgrounds
|
|
@@ -633,14 +675,22 @@ var semanticColorsDark = {
|
|
|
633
675
|
"on-status-error": primitiveColors.white,
|
|
634
676
|
"on-status-warning": primitiveColors.white,
|
|
635
677
|
"on-status-info": primitiveColors.white,
|
|
678
|
+
// Text ON a `-subtle` fill — see the on-brand-*-subtle note above. Error is the
|
|
679
|
+
// second deliberate exception to the rung-300 rule (operator, AW-133): red[300]
|
|
680
|
+
// levelled perfectly but read PINK, because a red that light can only hold 0.121
|
|
681
|
+
// chroma. red[400] carries 0.165 and reads red; its fill is thinned to compensate.
|
|
682
|
+
"on-status-success-subtle": primitiveRamps.green[300],
|
|
683
|
+
"on-status-error-subtle": primitiveRamps.red[400],
|
|
684
|
+
"on-status-warning-subtle": primitiveRamps.amber[300],
|
|
685
|
+
"on-status-info-subtle": primitiveRamps.blue[300],
|
|
636
686
|
// Result/outcome indicators (result-*)
|
|
637
|
-
"result-improve":
|
|
687
|
+
"result-improve": resultPaletteColors.improve,
|
|
638
688
|
"result-improve-light": "rgba(76, 175, 80, 0.16)",
|
|
639
|
-
"result-improve-dark":
|
|
640
|
-
"result-degrade":
|
|
689
|
+
"result-improve-dark": resultPaletteColors.improveDark,
|
|
690
|
+
"result-degrade": resultPaletteColors.degrade,
|
|
641
691
|
"result-degrade-light": "rgba(239, 83, 80, 0.16)",
|
|
642
|
-
"result-degrade-dark":
|
|
643
|
-
"result-inconclusive":
|
|
692
|
+
"result-degrade-dark": resultPaletteColors.degradeDark,
|
|
693
|
+
"result-inconclusive": resultPaletteColors.inconclusive,
|
|
644
694
|
"result-inconclusive-light": "rgba(158, 154, 151, 0.16)",
|
|
645
695
|
"result-neutral": greyRamp[400],
|
|
646
696
|
// Text on result backgrounds
|
|
@@ -671,7 +721,7 @@ var semanticColorsDark = {
|
|
|
671
721
|
"text-tertiary": greyRamp[500],
|
|
672
722
|
"text-disabled": "rgba(255, 255, 255, 0.38)",
|
|
673
723
|
"text-inverse": greyRamp[950],
|
|
674
|
-
"text-link":
|
|
724
|
+
"text-link": semanticPins.focusIndigoDark,
|
|
675
725
|
"text-link-hover": primitiveRamps.blue[400],
|
|
676
726
|
// Surface colors - dark backgrounds — warm-tapered DERIVED ramp (TD-surface-tokens,
|
|
677
727
|
// S-1, re-spaced S-3). Shipped verbatim from `deriveSurfaceRamp()` — see
|
|
@@ -721,10 +771,10 @@ var semanticColorsDark = {
|
|
|
721
771
|
// plane, so it keeps its job without collision.
|
|
722
772
|
"border-prominent": greyRamp[800],
|
|
723
773
|
// high-visibility divider
|
|
724
|
-
"border-focus":
|
|
774
|
+
"border-focus": semanticPins.focusIndigoDark,
|
|
725
775
|
"border-input": greyRamp[700],
|
|
726
776
|
"border-input-hover": greyRamp[600],
|
|
727
|
-
"border-input-focus":
|
|
777
|
+
"border-input-focus": semanticPins.focusIndigoDark,
|
|
728
778
|
"border-input-error": primitiveRamps.red[500],
|
|
729
779
|
// Alpha hairline separators — the primary separation cue (§4/S-2). Self-
|
|
730
780
|
// normalizing: composites toward white by ~the same amount on ANY plane, so
|
|
@@ -896,8 +946,10 @@ exports.primitiveRamps = primitiveRamps;
|
|
|
896
946
|
exports.primitiveSpacing = primitiveSpacing;
|
|
897
947
|
exports.primitiveTypography = primitiveTypography;
|
|
898
948
|
exports.primitiveZIndex = primitiveZIndex;
|
|
949
|
+
exports.resultPaletteColors = resultPaletteColors;
|
|
899
950
|
exports.semanticColorsDark = semanticColorsDark;
|
|
900
951
|
exports.semanticColorsLight = semanticColorsLight;
|
|
952
|
+
exports.semanticPins = semanticPins;
|
|
901
953
|
exports.semanticTypography = semanticTypography;
|
|
902
954
|
exports.sequentialEffort = sequentialEffort;
|
|
903
955
|
//# sourceMappingURL=tokens.js.map
|