@tangle-network/brand 1.10.3 → 1.11.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/CHANGELOG.md +9 -0
- package/bin/drift-baseline.json +1437 -0
- package/bin/tangle-drift.mjs +456 -0
- package/package.json +9 -3
- package/src/styles/ladders.css +144 -0
- package/src/styles/legacy-light.css +131 -19
- package/src/styles/system.css +0 -18
- package/src/styles/tokens.css +134 -18
- package/src/styles/tokens.test.ts +41 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* GENERATED by scripts/gen-compat.mjs. Do not edit.
|
|
2
2
|
* Source: tokens.css + named-themes.css
|
|
3
|
-
* SHA-256:
|
|
3
|
+
* SHA-256: b64dbb9e556b1004d80e40b70ac487da2695bd6f4d59a0d91c39278261570d62
|
|
4
4
|
* Light-default compatibility; all explicit modes remain canonical.
|
|
5
5
|
*/
|
|
6
6
|
:where(:root),
|
|
@@ -130,15 +130,71 @@
|
|
|
130
130
|
--surface-info-bg: #2d4e67;
|
|
131
131
|
--surface-info-border: #3d7292;
|
|
132
132
|
--surface-info-text: #67cdff;
|
|
133
|
-
--
|
|
134
|
-
--
|
|
135
|
-
--
|
|
136
|
-
--
|
|
137
|
-
--
|
|
138
|
-
--
|
|
139
|
-
--
|
|
140
|
-
--
|
|
141
|
-
--
|
|
133
|
+
--tone-violet-bg: #4e3a60;
|
|
134
|
+
--tone-violet-bg-hover: #583d71;
|
|
135
|
+
--tone-violet-bg-selected: #624080;
|
|
136
|
+
--tone-violet-border: #8457aa;
|
|
137
|
+
--tone-violet-border-selected: #d19dff;
|
|
138
|
+
--tone-violet-text: #ecd9fa;
|
|
139
|
+
--tone-violet-icon: #d19dff;
|
|
140
|
+
--tone-orange-bg: #583c2b;
|
|
141
|
+
--tone-orange-bg-hover: #664029;
|
|
142
|
+
--tone-orange-bg-selected: #724327;
|
|
143
|
+
--tone-orange-border: #a35829;
|
|
144
|
+
--tone-orange-border-selected: #ff801f;
|
|
145
|
+
--tone-orange-text: #ffe0c2;
|
|
146
|
+
--tone-orange-icon: #ff801f;
|
|
147
|
+
--tone-teal-bg: #2a4744;
|
|
148
|
+
--tone-teal-bg-hover: #28504b;
|
|
149
|
+
--tone-teal-bg-selected: #265751;
|
|
150
|
+
--tone-teal-border: #207e73;
|
|
151
|
+
--tone-teal-border-selected: #0eb39e;
|
|
152
|
+
--tone-teal-text: #adf0dd;
|
|
153
|
+
--tone-teal-icon: #0eb39e;
|
|
154
|
+
--tone-blue-bg: #25455e;
|
|
155
|
+
--tone-blue-bg-hover: #224c6c;
|
|
156
|
+
--tone-blue-bg-selected: #1f537b;
|
|
157
|
+
--tone-blue-border: #2870bd;
|
|
158
|
+
--tone-blue-border-selected: #70b8ff;
|
|
159
|
+
--tone-blue-text: #c2e6ff;
|
|
160
|
+
--tone-blue-icon: #70b8ff;
|
|
161
|
+
--tone-pink-bg: #5e344f;
|
|
162
|
+
--tone-pink-bg-hover: #6d3659;
|
|
163
|
+
--tone-pink-bg-selected: #7b3762;
|
|
164
|
+
--tone-pink-border: #a84885;
|
|
165
|
+
--tone-pink-border-selected: #ff8dcc;
|
|
166
|
+
--tone-pink-text: #fdd1ea;
|
|
167
|
+
--tone-pink-icon: #ff8dcc;
|
|
168
|
+
--tone-brown-bg: #494038;
|
|
169
|
+
--tone-brown-bg-hover: #54473c;
|
|
170
|
+
--tone-brown-bg-selected: #5c4c3e;
|
|
171
|
+
--tone-brown-border: #7c5f46;
|
|
172
|
+
--tone-brown-border-selected: #dbb594;
|
|
173
|
+
--tone-brown-text: #f2e1ca;
|
|
174
|
+
--tone-brown-icon: #dbb594;
|
|
175
|
+
--tone-cyan-bg: #27464d;
|
|
176
|
+
--tone-cyan-bg-hover: #234f59;
|
|
177
|
+
--tone-cyan-bg-selected: #205662;
|
|
178
|
+
--tone-cyan-border: #11809c;
|
|
179
|
+
--tone-cyan-border-selected: #23afd0;
|
|
180
|
+
--tone-cyan-text: #b6ecf7;
|
|
181
|
+
--tone-cyan-icon: #23afd0;
|
|
182
|
+
--tone-lime-bg: #404536;
|
|
183
|
+
--tone-lime-bg-hover: #444b37;
|
|
184
|
+
--tone-lime-bg-selected: #495239;
|
|
185
|
+
--tone-lime-border: #577538;
|
|
186
|
+
--tone-lime-border-selected: #bdee63;
|
|
187
|
+
--tone-lime-text: #e3f7ba;
|
|
188
|
+
--tone-lime-icon: #bdee63;
|
|
189
|
+
--surface-violet-bg: #4e3a60;
|
|
190
|
+
--surface-violet-border: #8457aa;
|
|
191
|
+
--surface-violet-text: #d19dff;
|
|
192
|
+
--surface-orange-bg: #583c2b;
|
|
193
|
+
--surface-orange-border: #a35829;
|
|
194
|
+
--surface-orange-text: #ffa057;
|
|
195
|
+
--surface-teal-bg: #2a4744;
|
|
196
|
+
--surface-teal-border: #207e73;
|
|
197
|
+
--surface-teal-text: #0bd8b6;
|
|
142
198
|
--run-mix-succeeded: #76edb9;
|
|
143
199
|
--run-mix-waiting: #e9b642;
|
|
144
200
|
--run-mix-failed: #e1918e;
|
|
@@ -391,15 +447,71 @@
|
|
|
391
447
|
--surface-info-bg: #f0f9ff;
|
|
392
448
|
--surface-info-border: #bae6fd;
|
|
393
449
|
--surface-info-text: #0369a1;
|
|
394
|
-
--
|
|
395
|
-
--
|
|
396
|
-
--
|
|
397
|
-
--
|
|
398
|
-
--
|
|
399
|
-
--
|
|
400
|
-
--
|
|
401
|
-
--
|
|
402
|
-
--
|
|
450
|
+
--tone-violet-bg: #f7edfe;
|
|
451
|
+
--tone-violet-bg-hover: #f2e2fc;
|
|
452
|
+
--tone-violet-bg-selected: #ead5f9;
|
|
453
|
+
--tone-violet-border: #e0c4f4;
|
|
454
|
+
--tone-violet-border-selected: #8e4ec6;
|
|
455
|
+
--tone-violet-text: #402060;
|
|
456
|
+
--tone-violet-icon: #8e4ec6;
|
|
457
|
+
--tone-orange-bg: #ffefd6;
|
|
458
|
+
--tone-orange-bg-hover: #ffdfb5;
|
|
459
|
+
--tone-orange-bg-selected: #ffd19a;
|
|
460
|
+
--tone-orange-border: #ffc182;
|
|
461
|
+
--tone-orange-border-selected: #cc4e00;
|
|
462
|
+
--tone-orange-text: #582d1d;
|
|
463
|
+
--tone-orange-icon: #cc4e00;
|
|
464
|
+
--tone-teal-bg: #e0f8f3;
|
|
465
|
+
--tone-teal-bg-hover: #ccf3ea;
|
|
466
|
+
--tone-teal-bg-selected: #b8eae0;
|
|
467
|
+
--tone-teal-border: #a1ded2;
|
|
468
|
+
--tone-teal-border-selected: #008573;
|
|
469
|
+
--tone-teal-text: #0d3d38;
|
|
470
|
+
--tone-teal-icon: #008573;
|
|
471
|
+
--tone-blue-bg: #e6f4fe;
|
|
472
|
+
--tone-blue-bg-hover: #d5efff;
|
|
473
|
+
--tone-blue-bg-selected: #c2e5ff;
|
|
474
|
+
--tone-blue-border: #acd8fc;
|
|
475
|
+
--tone-blue-border-selected: #0d74ce;
|
|
476
|
+
--tone-blue-text: #113264;
|
|
477
|
+
--tone-blue-icon: #0d74ce;
|
|
478
|
+
--tone-pink-bg: #fee9f5;
|
|
479
|
+
--tone-pink-bg-hover: #fbdcef;
|
|
480
|
+
--tone-pink-bg-selected: #f6cee7;
|
|
481
|
+
--tone-pink-border: #efbfdd;
|
|
482
|
+
--tone-pink-border-selected: #cf3897;
|
|
483
|
+
--tone-pink-text: #651249;
|
|
484
|
+
--tone-pink-icon: #cf3897;
|
|
485
|
+
--tone-brown-bg: #f6eee7;
|
|
486
|
+
--tone-brown-bg-hover: #f0e4d9;
|
|
487
|
+
--tone-brown-bg-selected: #ebdaca;
|
|
488
|
+
--tone-brown-border: #e4cdb7;
|
|
489
|
+
--tone-brown-border-selected: #815e46;
|
|
490
|
+
--tone-brown-text: #3e332e;
|
|
491
|
+
--tone-brown-icon: #815e46;
|
|
492
|
+
--tone-cyan-bg: #def7f9;
|
|
493
|
+
--tone-cyan-bg-hover: #caf1f6;
|
|
494
|
+
--tone-cyan-bg-selected: #b5e9f0;
|
|
495
|
+
--tone-cyan-border: #9ddde7;
|
|
496
|
+
--tone-cyan-border-selected: #107d98;
|
|
497
|
+
--tone-cyan-text: #0d3c48;
|
|
498
|
+
--tone-cyan-icon: #107d98;
|
|
499
|
+
--tone-lime-bg: #eef6d6;
|
|
500
|
+
--tone-lime-bg-hover: #e2f0bd;
|
|
501
|
+
--tone-lime-bg-selected: #d3e7a6;
|
|
502
|
+
--tone-lime-border: #c2da91;
|
|
503
|
+
--tone-lime-border-selected: #5c7c2f;
|
|
504
|
+
--tone-lime-text: #37401c;
|
|
505
|
+
--tone-lime-icon: #5c7c2f;
|
|
506
|
+
--surface-violet-bg: #f7edfe;
|
|
507
|
+
--surface-violet-border: #e0c4f4;
|
|
508
|
+
--surface-violet-text: #8145b5;
|
|
509
|
+
--surface-orange-bg: #ffefd6;
|
|
510
|
+
--surface-orange-border: #ffc182;
|
|
511
|
+
--surface-orange-text: #bc4904;
|
|
512
|
+
--surface-teal-bg: #e0f8f3;
|
|
513
|
+
--surface-teal-border: #a1ded2;
|
|
514
|
+
--surface-teal-text: #017d6d;
|
|
403
515
|
--run-mix-succeeded: #3c9b78;
|
|
404
516
|
--run-mix-waiting: #c16227;
|
|
405
517
|
--run-mix-failed: #cd342f;
|
package/src/styles/system.css
CHANGED
|
@@ -123,15 +123,6 @@
|
|
|
123
123
|
--surface-info-bg: var(--blue-3);
|
|
124
124
|
--surface-info-border: var(--blue-6);
|
|
125
125
|
--surface-info-text: var(--blue-11);
|
|
126
|
-
--surface-violet-bg: var(--iris-3);
|
|
127
|
-
--surface-violet-border: var(--iris-6);
|
|
128
|
-
--surface-violet-text: var(--iris-11);
|
|
129
|
-
--surface-orange-bg: var(--orange-3);
|
|
130
|
-
--surface-orange-border: var(--orange-6);
|
|
131
|
-
--surface-orange-text: var(--orange-11);
|
|
132
|
-
--surface-teal-bg: var(--grass-3);
|
|
133
|
-
--surface-teal-border: var(--grass-6);
|
|
134
|
-
--surface-teal-text: var(--grass-11);
|
|
135
126
|
--surface-neutral-bg: var(--mauve-3);
|
|
136
127
|
--surface-neutral-border: var(--mauve-6);
|
|
137
128
|
--surface-neutral-text: var(--mauve-11);
|
|
@@ -324,15 +315,6 @@
|
|
|
324
315
|
--surface-info-bg: var(--blue-3);
|
|
325
316
|
--surface-info-border: var(--blue-6);
|
|
326
317
|
--surface-info-text: var(--blue-12);
|
|
327
|
-
--surface-violet-bg: var(--iris-3);
|
|
328
|
-
--surface-violet-border: var(--iris-6);
|
|
329
|
-
--surface-violet-text: var(--iris-12);
|
|
330
|
-
--surface-orange-bg: var(--orange-3);
|
|
331
|
-
--surface-orange-border: var(--orange-6);
|
|
332
|
-
--surface-orange-text: var(--orange-12);
|
|
333
|
-
--surface-teal-bg: var(--grass-3);
|
|
334
|
-
--surface-teal-border: var(--grass-6);
|
|
335
|
-
--surface-teal-text: var(--grass-12);
|
|
336
318
|
--surface-neutral-bg: var(--mauve-3);
|
|
337
319
|
--surface-neutral-border: var(--mauve-6);
|
|
338
320
|
--surface-neutral-text: var(--mauve-11);
|
package/src/styles/tokens.css
CHANGED
|
@@ -206,15 +206,73 @@
|
|
|
206
206
|
--surface-info-bg: #2d4e67;
|
|
207
207
|
--surface-info-border: #3d7292;
|
|
208
208
|
--surface-info-text: #67cdff;
|
|
209
|
-
|
|
210
|
-
--
|
|
211
|
-
--
|
|
212
|
-
--
|
|
213
|
-
--
|
|
214
|
-
--
|
|
215
|
-
--
|
|
216
|
-
--
|
|
217
|
-
--
|
|
209
|
+
/* tones:begin — generated by scripts/gen-ladders.mjs; edit its CATEGORY map, not these lines. */
|
|
210
|
+
--tone-violet-bg: #4e3a60;
|
|
211
|
+
--tone-violet-bg-hover: #583d71;
|
|
212
|
+
--tone-violet-bg-selected: #624080;
|
|
213
|
+
--tone-violet-border: #8457aa;
|
|
214
|
+
--tone-violet-border-selected: #d19dff;
|
|
215
|
+
--tone-violet-text: #ecd9fa;
|
|
216
|
+
--tone-violet-icon: #d19dff;
|
|
217
|
+
--tone-orange-bg: #583c2b;
|
|
218
|
+
--tone-orange-bg-hover: #664029;
|
|
219
|
+
--tone-orange-bg-selected: #724327;
|
|
220
|
+
--tone-orange-border: #a35829;
|
|
221
|
+
--tone-orange-border-selected: #ff801f;
|
|
222
|
+
--tone-orange-text: #ffe0c2;
|
|
223
|
+
--tone-orange-icon: #ff801f;
|
|
224
|
+
--tone-teal-bg: #2a4744;
|
|
225
|
+
--tone-teal-bg-hover: #28504b;
|
|
226
|
+
--tone-teal-bg-selected: #265751;
|
|
227
|
+
--tone-teal-border: #207e73;
|
|
228
|
+
--tone-teal-border-selected: #0eb39e;
|
|
229
|
+
--tone-teal-text: #adf0dd;
|
|
230
|
+
--tone-teal-icon: #0eb39e;
|
|
231
|
+
--tone-blue-bg: #25455e;
|
|
232
|
+
--tone-blue-bg-hover: #224c6c;
|
|
233
|
+
--tone-blue-bg-selected: #1f537b;
|
|
234
|
+
--tone-blue-border: #2870bd;
|
|
235
|
+
--tone-blue-border-selected: #70b8ff;
|
|
236
|
+
--tone-blue-text: #c2e6ff;
|
|
237
|
+
--tone-blue-icon: #70b8ff;
|
|
238
|
+
--tone-pink-bg: #5e344f;
|
|
239
|
+
--tone-pink-bg-hover: #6d3659;
|
|
240
|
+
--tone-pink-bg-selected: #7b3762;
|
|
241
|
+
--tone-pink-border: #a84885;
|
|
242
|
+
--tone-pink-border-selected: #ff8dcc;
|
|
243
|
+
--tone-pink-text: #fdd1ea;
|
|
244
|
+
--tone-pink-icon: #ff8dcc;
|
|
245
|
+
--tone-brown-bg: #494038;
|
|
246
|
+
--tone-brown-bg-hover: #54473c;
|
|
247
|
+
--tone-brown-bg-selected: #5c4c3e;
|
|
248
|
+
--tone-brown-border: #7c5f46;
|
|
249
|
+
--tone-brown-border-selected: #dbb594;
|
|
250
|
+
--tone-brown-text: #f2e1ca;
|
|
251
|
+
--tone-brown-icon: #dbb594;
|
|
252
|
+
--tone-cyan-bg: #27464d;
|
|
253
|
+
--tone-cyan-bg-hover: #234f59;
|
|
254
|
+
--tone-cyan-bg-selected: #205662;
|
|
255
|
+
--tone-cyan-border: #11809c;
|
|
256
|
+
--tone-cyan-border-selected: #23afd0;
|
|
257
|
+
--tone-cyan-text: #b6ecf7;
|
|
258
|
+
--tone-cyan-icon: #23afd0;
|
|
259
|
+
--tone-lime-bg: #404536;
|
|
260
|
+
--tone-lime-bg-hover: #444b37;
|
|
261
|
+
--tone-lime-bg-selected: #495239;
|
|
262
|
+
--tone-lime-border: #577538;
|
|
263
|
+
--tone-lime-border-selected: #bdee63;
|
|
264
|
+
--tone-lime-text: #e3f7ba;
|
|
265
|
+
--tone-lime-icon: #bdee63;
|
|
266
|
+
--surface-violet-bg: #4e3a60;
|
|
267
|
+
--surface-violet-border: #8457aa;
|
|
268
|
+
--surface-violet-text: #d19dff;
|
|
269
|
+
--surface-orange-bg: #583c2b;
|
|
270
|
+
--surface-orange-border: #a35829;
|
|
271
|
+
--surface-orange-text: #ffa057;
|
|
272
|
+
--surface-teal-bg: #2a4744;
|
|
273
|
+
--surface-teal-border: #207e73;
|
|
274
|
+
--surface-teal-text: #0bd8b6;
|
|
275
|
+
/* tones:end */
|
|
218
276
|
|
|
219
277
|
/* Run-mix ramp — the fills of a proportional status bar.
|
|
220
278
|
*
|
|
@@ -588,15 +646,73 @@
|
|
|
588
646
|
--surface-info-bg: #f0f9ff;
|
|
589
647
|
--surface-info-border: #bae6fd;
|
|
590
648
|
--surface-info-text: #0369a1;
|
|
591
|
-
|
|
592
|
-
--
|
|
593
|
-
--
|
|
594
|
-
--
|
|
595
|
-
--
|
|
596
|
-
--
|
|
597
|
-
--
|
|
598
|
-
--
|
|
599
|
-
--
|
|
649
|
+
/* tones:begin — generated by scripts/gen-ladders.mjs; edit its CATEGORY map, not these lines. */
|
|
650
|
+
--tone-violet-bg: #f7edfe;
|
|
651
|
+
--tone-violet-bg-hover: #f2e2fc;
|
|
652
|
+
--tone-violet-bg-selected: #ead5f9;
|
|
653
|
+
--tone-violet-border: #e0c4f4;
|
|
654
|
+
--tone-violet-border-selected: #8e4ec6;
|
|
655
|
+
--tone-violet-text: #402060;
|
|
656
|
+
--tone-violet-icon: #8e4ec6;
|
|
657
|
+
--tone-orange-bg: #ffefd6;
|
|
658
|
+
--tone-orange-bg-hover: #ffdfb5;
|
|
659
|
+
--tone-orange-bg-selected: #ffd19a;
|
|
660
|
+
--tone-orange-border: #ffc182;
|
|
661
|
+
--tone-orange-border-selected: #cc4e00;
|
|
662
|
+
--tone-orange-text: #582d1d;
|
|
663
|
+
--tone-orange-icon: #cc4e00;
|
|
664
|
+
--tone-teal-bg: #e0f8f3;
|
|
665
|
+
--tone-teal-bg-hover: #ccf3ea;
|
|
666
|
+
--tone-teal-bg-selected: #b8eae0;
|
|
667
|
+
--tone-teal-border: #a1ded2;
|
|
668
|
+
--tone-teal-border-selected: #008573;
|
|
669
|
+
--tone-teal-text: #0d3d38;
|
|
670
|
+
--tone-teal-icon: #008573;
|
|
671
|
+
--tone-blue-bg: #e6f4fe;
|
|
672
|
+
--tone-blue-bg-hover: #d5efff;
|
|
673
|
+
--tone-blue-bg-selected: #c2e5ff;
|
|
674
|
+
--tone-blue-border: #acd8fc;
|
|
675
|
+
--tone-blue-border-selected: #0d74ce;
|
|
676
|
+
--tone-blue-text: #113264;
|
|
677
|
+
--tone-blue-icon: #0d74ce;
|
|
678
|
+
--tone-pink-bg: #fee9f5;
|
|
679
|
+
--tone-pink-bg-hover: #fbdcef;
|
|
680
|
+
--tone-pink-bg-selected: #f6cee7;
|
|
681
|
+
--tone-pink-border: #efbfdd;
|
|
682
|
+
--tone-pink-border-selected: #cf3897;
|
|
683
|
+
--tone-pink-text: #651249;
|
|
684
|
+
--tone-pink-icon: #cf3897;
|
|
685
|
+
--tone-brown-bg: #f6eee7;
|
|
686
|
+
--tone-brown-bg-hover: #f0e4d9;
|
|
687
|
+
--tone-brown-bg-selected: #ebdaca;
|
|
688
|
+
--tone-brown-border: #e4cdb7;
|
|
689
|
+
--tone-brown-border-selected: #815e46;
|
|
690
|
+
--tone-brown-text: #3e332e;
|
|
691
|
+
--tone-brown-icon: #815e46;
|
|
692
|
+
--tone-cyan-bg: #def7f9;
|
|
693
|
+
--tone-cyan-bg-hover: #caf1f6;
|
|
694
|
+
--tone-cyan-bg-selected: #b5e9f0;
|
|
695
|
+
--tone-cyan-border: #9ddde7;
|
|
696
|
+
--tone-cyan-border-selected: #107d98;
|
|
697
|
+
--tone-cyan-text: #0d3c48;
|
|
698
|
+
--tone-cyan-icon: #107d98;
|
|
699
|
+
--tone-lime-bg: #eef6d6;
|
|
700
|
+
--tone-lime-bg-hover: #e2f0bd;
|
|
701
|
+
--tone-lime-bg-selected: #d3e7a6;
|
|
702
|
+
--tone-lime-border: #c2da91;
|
|
703
|
+
--tone-lime-border-selected: #5c7c2f;
|
|
704
|
+
--tone-lime-text: #37401c;
|
|
705
|
+
--tone-lime-icon: #5c7c2f;
|
|
706
|
+
--surface-violet-bg: #f7edfe;
|
|
707
|
+
--surface-violet-border: #e0c4f4;
|
|
708
|
+
--surface-violet-text: #8145b5;
|
|
709
|
+
--surface-orange-bg: #ffefd6;
|
|
710
|
+
--surface-orange-border: #ffc182;
|
|
711
|
+
--surface-orange-text: #bc4904;
|
|
712
|
+
--surface-teal-bg: #e0f8f3;
|
|
713
|
+
--surface-teal-border: #a1ded2;
|
|
714
|
+
--surface-teal-text: #017d6d;
|
|
715
|
+
/* tones:end */
|
|
600
716
|
|
|
601
717
|
/* Run-mix ramp — the fills of a proportional status bar.
|
|
602
718
|
*
|
|
@@ -520,3 +520,44 @@ describe("dark status surfaces carry their tone in hue, not weight", () => {
|
|
|
520
520
|
});
|
|
521
521
|
}
|
|
522
522
|
});
|
|
523
|
+
|
|
524
|
+
describe("categorical tones are a complete, legible family", () => {
|
|
525
|
+
// gen-ladders.mjs solves these and refuses to write a failing set; this holds
|
|
526
|
+
// the written file to the same floors, so a hand edit inside the generated
|
|
527
|
+
// region fails here before `gen-ladders --check` is even run.
|
|
528
|
+
const CATEGORIES = ["violet", "orange", "teal", "blue", "pink", "brown", "cyan", "lime"];
|
|
529
|
+
const ROLES = ["bg", "bg-hover", "bg-selected", "border", "border-selected", "text", "icon"];
|
|
530
|
+
for (const [theme, spine] of [
|
|
531
|
+
["dark", DARK],
|
|
532
|
+
["light", LIGHT],
|
|
533
|
+
] as const) {
|
|
534
|
+
for (const tone of CATEGORIES) {
|
|
535
|
+
it(`${theme} ${tone}: text and icon clear their floors on every fill`, () => {
|
|
536
|
+
for (const role of ROLES) hexIn(spine, `tone-${tone}-${role}`);
|
|
537
|
+
for (const fill of ["bg", "bg-hover", "bg-selected"]) {
|
|
538
|
+
const under = hexIn(spine, `tone-${tone}-${fill}`);
|
|
539
|
+
expect(
|
|
540
|
+
contrastRatio(hexIn(spine, `tone-${tone}-text`), under),
|
|
541
|
+
`${theme} --tone-${tone}-text on --tone-${tone}-${fill}`,
|
|
542
|
+
).toBeGreaterThanOrEqual(4.5);
|
|
543
|
+
expect(
|
|
544
|
+
contrastRatio(hexIn(spine, `tone-${tone}-icon`), under),
|
|
545
|
+
`${theme} --tone-${tone}-icon on --tone-${tone}-${fill}`,
|
|
546
|
+
).toBeGreaterThanOrEqual(3);
|
|
547
|
+
}
|
|
548
|
+
});
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
it("keeps the shipped --surface-{violet,orange,teal}-* names on the family, with legible text", () => {
|
|
552
|
+
for (const spine of [DARK, LIGHT]) {
|
|
553
|
+
for (const tone of ["violet", "orange", "teal"]) {
|
|
554
|
+
for (const role of ["bg", "border"]) {
|
|
555
|
+
expect(hexIn(spine, `surface-${tone}-${role}`)).toEqual(hexIn(spine, `tone-${tone}-${role}`));
|
|
556
|
+
}
|
|
557
|
+
expect(
|
|
558
|
+
contrastRatio(hexIn(spine, `surface-${tone}-text`), hexIn(spine, `surface-${tone}-bg`)),
|
|
559
|
+
).toBeGreaterThanOrEqual(4.5);
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
});
|
|
563
|
+
});
|