@fastwork/xosmoz-theme 0.63.0 → 0.65.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 CHANGED
@@ -71,9 +71,7 @@ Surface and layout colors that adapt between light and dark themes.
71
71
  | `--xz-color-text-300` | Tertiary/disabled text (60% opacity) |
72
72
  | `--xz-color-bg-100` | Extreme base background (near-black in light, near-white in dark) |
73
73
  | `--xz-color-bg-200` | Darker base background |
74
- | `--xz-color-fg-100` | Text on `bg-100` (white in light, black in dark) |
75
- | `--xz-color-soft-100` | Very subtle overlay (4% opacity of bg) |
76
- | `--xz-color-soft-200` | Subtle overlay (7% opacity of bg) |
74
+ | `--xz-color-text-fg` | Text on `bg-100` (white in light, black in dark) |
77
75
  | `--xz-color-line-50` | Subtle borders |
78
76
  | `--xz-color-line-100` | Default borders |
79
77
  | `--xz-color-line-200` | Strong/emphasized borders |
@@ -96,7 +94,7 @@ Each category follows the same token structure — replace `{name}` with the cat
96
94
  | `--xz-color-{name}-line-300` | Strong colored border (active states) |
97
95
  | `--xz-color-{name}-bg-100` | Solid fill (buttons, tags) |
98
96
  | `--xz-color-{name}-bg-200` | Darker solid fill (hover state) |
99
- | `--xz-color-{name}-fg-100` | Text on solid backgrounds — pair with `bg-100`/`bg-200` (typically white) |
97
+ | `--xz-color-{name}-text-fg` | Text on solid backgrounds — pair with `bg-100`/`bg-200` (typically white) |
100
98
  | `--xz-color-{name}-text-100` | Colored text on surfaces (links, labels) |
101
99
  | `--xz-color-{name}-text-200` | Darker colored text on surfaces |
102
100
 
@@ -106,7 +104,7 @@ Each category follows the same token structure — replace `{name}` with the cat
106
104
  /* Primary button */
107
105
  .btn-primary {
108
106
  background: var(--xz-color-primary-bg-100);
109
- color: var(--xz-color-primary-fg-100); /* white text on solid bg */
107
+ color: var(--xz-color-primary-text-fg); /* white text on solid bg */
110
108
  }
111
109
  .btn-primary:hover {
112
110
  background: var(--xz-color-primary-bg-200);
@@ -310,7 +308,7 @@ Override any CSS variable for a custom theme:
310
308
  --xz-color-text-100: oklch(0.20 0.006 285);
311
309
  --xz-color-line-50: oklch(0.95 0 1 / 0.95);
312
310
  --xz-color-primary-bg-100: oklch(0.58 0.25 30);
313
- --xz-color-primary-fg-100: oklch(1 0 0 / 0.95);
311
+ --xz-color-primary-text-fg: oklch(1 0 0 / 0.95);
314
312
  --xz-color-primary-text-100: oklch(0.58 0.25 30);
315
313
  /* override other variables as needed */
316
314
  }
@@ -341,7 +339,7 @@ Then activate it:
341
339
  ```css
342
340
  .btn-primary {
343
341
  background: var(--xz-color-primary-bg-100);
344
- color: var(--xz-color-primary-fg-100);
342
+ color: var(--xz-color-primary-text-fg);
345
343
  font: var(--xz-font-subtitle1-bold);
346
344
  border: none;
347
345
  border-radius: 0.5rem;
@@ -372,7 +370,7 @@ Then activate it:
372
370
 
373
371
  .alert-danger {
374
372
  background: var(--xz-color-danger-bg-100);
375
- color: var(--xz-color-danger-fg-100);
373
+ color: var(--xz-color-danger-text-fg);
376
374
  }
377
375
  ```
378
376
 
@@ -35,16 +35,16 @@ class XzBaseScale {
35
35
  Color get shade200 => _shades[200]!;
36
36
  Color get shade300 => _shades[300]!;
37
37
  Color get shade400 => _shades[400]!;
38
+ Color get shadeNaN => _shades[NaN]!;
38
39
  }
39
40
 
40
- /// Semantic role color with soft, softSolid, line, bg, fg, text sub-groups.
41
+ /// Semantic role color with soft, softSolid, line, bg, text sub-groups.
41
42
  class XzRoleColor {
42
43
  const XzRoleColor({
43
44
  this.soft = const {},
44
45
  this.softSolid = const {},
45
46
  this.line = const {},
46
47
  this.bg = const {},
47
- this.fg = const {},
48
48
  this.text = const {},
49
49
  });
50
50
 
@@ -52,7 +52,6 @@ class XzRoleColor {
52
52
  final Map<int, Color> softSolid;
53
53
  final Map<int, Color> line;
54
54
  final Map<int, Color> bg;
55
- final Map<int, Color> fg;
56
55
  final Map<int, Color> text;
57
56
 
58
57
  Color get soft100 => soft[100]!;
@@ -64,7 +63,6 @@ class XzRoleColor {
64
63
  Color get line300 => line[300]!;
65
64
  Color get bg100 => bg[100]!;
66
65
  Color get bg200 => bg[200]!;
67
- Color get fg100 => fg[100]!;
68
66
  Color get text100 => text[100]!;
69
67
  }
70
68
 
@@ -108,8 +106,6 @@ class XzColors {
108
106
  const XzColors._({
109
107
  required this.bg,
110
108
  required this.surface,
111
- required this.fg,
112
- required this.soft,
113
109
  required this.text,
114
110
  required this.line,
115
111
  required this.primary,
@@ -134,8 +130,6 @@ class XzColors {
134
130
  // ── Semantic base (theme-dependent) ──
135
131
  final XzBaseScale bg;
136
132
  final XzBaseScale surface;
137
- final XzBaseScale fg;
138
- final XzBaseScale soft;
139
133
  final XzBaseScale text;
140
134
  final XzBaseScale line;
141
135
 
@@ -160,17 +154,11 @@ class XzColors {
160
154
  300: Color(0xFFEEEEEE),
161
155
  400: Color(0xFFE4E4E4),
162
156
  }),
163
- fg: XzBaseScale({
164
- 100: Color(0xFFFFFFFF),
165
- }),
166
- soft: XzBaseScale({
167
- 100: Color(0x0A2B313B),
168
- 200: Color(0x122B313B),
169
- }),
170
157
  text: XzBaseScale({
171
158
  100: Color(0xFF161616),
172
159
  200: Color(0xB3161616),
173
160
  300: Color(0x99161616),
161
+ NaN: Color(0xFFFFFFFF),
174
162
  }),
175
163
  line: XzBaseScale({
176
164
  50: Color(0xF7EBEFF5),
@@ -180,11 +168,11 @@ class XzColors {
180
168
  }),
181
169
  primary: XzRoleColor(
182
170
  soft: {
183
- 100: Color(0x26CCDFFF),
171
+ 100: Color(0x2698BFFF),
184
172
  200: Color(0x4098BFFF),
185
173
  },
186
174
  softSolid: {
187
- 100: Color(0xFFF2F5F9),
175
+ 100: Color(0xFFEAF0FA),
188
176
  200: Color(0xFFE0EAFB),
189
177
  },
190
178
  line: {
@@ -196,21 +184,19 @@ class XzColors {
196
184
  100: Color(0xFF0669FF),
197
185
  200: Color(0xFF005CE4),
198
186
  },
199
- fg: {
200
- 100: Color(0xFFFFFFFF),
201
- },
202
187
  text: {
203
188
  100: Color(0xFF0063F5),
204
189
  200: Color(0xFF003EA0),
190
+ NaN: Color(0xFFFFFFFF),
205
191
  },
206
192
  ),
207
193
  danger: XzRoleColor(
208
194
  soft: {
209
- 100: Color(0x26FFD2CA),
195
+ 100: Color(0x26FFA193),
210
196
  200: Color(0x40FFA193),
211
197
  },
212
198
  softSolid: {
213
- 100: Color(0xFFFAF3F1),
199
+ 100: Color(0xFFFBEBE9),
214
200
  200: Color(0xFFFCE3DF),
215
201
  },
216
202
  line: {
@@ -222,21 +208,19 @@ class XzColors {
222
208
  100: Color(0xFFE32A20),
223
209
  200: Color(0xFFD10606),
224
210
  },
225
- fg: {
226
- 100: Color(0xFFFFFFFF),
227
- },
228
211
  text: {
229
212
  100: Color(0xFFD40F0B),
230
213
  200: Color(0xFF8B0001),
214
+ NaN: Color(0xFFFFFFFF),
231
215
  },
232
216
  ),
233
217
  success: XzRoleColor(
234
218
  soft: {
235
- 100: Color(0x2682FF83),
219
+ 100: Color(0x264AE052),
236
220
  200: Color(0x404AE052),
237
221
  },
238
222
  softSolid: {
239
- 100: Color(0xFFE9FAE8),
223
+ 100: Color(0xFFE3F6E2),
240
224
  200: Color(0xFFD4F4D2),
241
225
  },
242
226
  line: {
@@ -248,21 +232,19 @@ class XzColors {
248
232
  100: Color(0xFF15C02D),
249
233
  200: Color(0xFF00AE23),
250
234
  },
251
- fg: {
252
- 100: Color(0xF2000000),
253
- },
254
235
  text: {
255
236
  100: Color(0xFF008A19),
256
237
  200: Color(0xFF00580C),
238
+ NaN: Color(0xF2000000),
257
239
  },
258
240
  ),
259
241
  warning: XzRoleColor(
260
242
  soft: {
261
- 100: Color(0x26FFD798),
243
+ 100: Color(0x26F6AF00),
262
244
  200: Color(0x40F6AF00),
263
245
  },
264
246
  softSolid: {
265
- 100: Color(0xFFFAF4EA),
247
+ 100: Color(0xFFF9EEDD),
266
248
  200: Color(0xFFF9E7CB),
267
249
  },
268
250
  line: {
@@ -274,21 +256,19 @@ class XzColors {
274
256
  100: Color(0xFFFFB508),
275
257
  200: Color(0xFFEBA600),
276
258
  },
277
- fg: {
278
- 100: Color(0xF2000000),
279
- },
280
259
  text: {
281
260
  100: Color(0xFF956800),
282
261
  200: Color(0xFF5F4100),
262
+ NaN: Color(0xF2000000),
283
263
  },
284
264
  ),
285
265
  info: XzRoleColor(
286
266
  soft: {
287
- 100: Color(0x269BEDFF),
267
+ 100: Color(0x2622D4F1),
288
268
  200: Color(0x4022D4F1),
289
269
  },
290
270
  softSolid: {
291
- 100: Color(0xFFECF7F9),
271
+ 100: Color(0xFFE1F3F8),
292
272
  200: Color(0xFFD1F0F7),
293
273
  },
294
274
  line: {
@@ -300,21 +280,19 @@ class XzColors {
300
280
  100: Color(0xFF00CAE7),
301
281
  200: Color(0xFF00B9D3),
302
282
  },
303
- fg: {
304
- 100: Color(0xF2000000),
305
- },
306
283
  text: {
307
284
  100: Color(0xFF008093),
308
285
  200: Color(0xFF00515E),
286
+ NaN: Color(0xF2000000),
309
287
  },
310
288
  ),
311
289
  neutral: XzRoleColor(
312
290
  soft: {
313
- 100: Color(0x26D2DFF4),
291
+ 100: Color(0x26B2BFD3),
314
292
  200: Color(0x40B2BFD3),
315
293
  },
316
294
  softSolid: {
317
- 100: Color(0xFFF3F4F8),
295
+ 100: Color(0xFFEEF0F3),
318
296
  200: Color(0xFFE6EAEF),
319
297
  },
320
298
  line: {
@@ -326,12 +304,10 @@ class XzColors {
326
304
  100: Color(0xFF798598),
327
305
  200: Color(0xFF6A7689),
328
306
  },
329
- fg: {
330
- 100: Color(0xFFFFFFFF),
331
- },
332
307
  text: {
333
308
  100: Color(0xFF677285),
334
309
  200: Color(0xFF3E4859),
310
+ NaN: Color(0xFFFFFFFF),
335
311
  },
336
312
  ),
337
313
  );
@@ -349,17 +325,11 @@ class XzColors {
349
325
  300: Color(0xFF373C47),
350
326
  400: Color(0xFF3B3F4B),
351
327
  }),
352
- fg: XzBaseScale({
353
- 100: Color(0xFF000000),
354
- }),
355
- soft: XzBaseScale({
356
- 100: Color(0x0AF1F5FC),
357
- 200: Color(0x12F1F5FC),
358
- }),
359
328
  text: XzBaseScale({
360
329
  100: Color(0xFFF2F2F2),
361
330
  200: Color(0xA6F2F2F2),
362
331
  300: Color(0x8CF2F2F2),
332
+ NaN: Color(0xFF000000),
363
333
  }),
364
334
  line: XzBaseScale({
365
335
  50: Color(0xF23E424D),
@@ -385,12 +355,10 @@ class XzColors {
385
355
  100: Color(0xFF0669FF),
386
356
  200: Color(0xFF347EFF),
387
357
  },
388
- fg: {
389
- 100: Color(0xFFFFFFFF),
390
- },
391
358
  text: {
392
359
  100: Color(0xFF7EAEFF),
393
360
  200: Color(0xFFB2CFFF),
361
+ NaN: Color(0xFFFFFFFF),
394
362
  },
395
363
  ),
396
364
  danger: XzRoleColor(
@@ -411,12 +379,10 @@ class XzColors {
411
379
  100: Color(0xFFE32A20),
412
380
  200: Color(0xFFF64032),
413
381
  },
414
- fg: {
415
- 100: Color(0xFFFFFFFF),
416
- },
417
382
  text: {
418
383
  100: Color(0xFFFF8575),
419
384
  200: Color(0xFFFFBAAF),
385
+ NaN: Color(0xFFFFFFFF),
420
386
  },
421
387
  ),
422
388
  success: XzRoleColor(
@@ -437,12 +403,10 @@ class XzColors {
437
403
  100: Color(0xFF15C02D),
438
404
  200: Color(0xFF35D141),
439
405
  },
440
- fg: {
441
- 100: Color(0xF2000000),
442
- },
443
406
  text: {
444
407
  100: Color(0xFF4BCD51),
445
408
  200: Color(0xFF6FEE72),
409
+ NaN: Color(0xF2000000),
446
410
  },
447
411
  ),
448
412
  warning: XzRoleColor(
@@ -463,12 +427,10 @@ class XzColors {
463
427
  100: Color(0xFFFFB508),
464
428
  200: Color(0xFFFFCC76),
465
429
  },
466
- fg: {
467
- 100: Color(0xF2000000),
468
- },
469
430
  text: {
470
431
  100: Color(0xFFE2A000),
471
432
  200: Color(0xFFFFC257),
433
+ NaN: Color(0xF2000000),
472
434
  },
473
435
  ),
474
436
  info: XzRoleColor(
@@ -489,12 +451,10 @@ class XzColors {
489
451
  100: Color(0xFF00CAE7),
490
452
  200: Color(0xFF31DBF8),
491
453
  },
492
- fg: {
493
- 100: Color(0xF2000000),
494
- },
495
454
  text: {
496
455
  100: Color(0xFF00C3DF),
497
456
  200: Color(0xFF50E3FF),
457
+ NaN: Color(0xF2000000),
498
458
  },
499
459
  ),
500
460
  neutral: XzRoleColor(
@@ -515,12 +475,10 @@ class XzColors {
515
475
  100: Color(0xFF798598),
516
476
  200: Color(0xFF8894A7),
517
477
  },
518
- fg: {
519
- 100: Color(0xFFFFFFFF),
520
- },
521
478
  text: {
522
479
  100: Color(0xFFA2AFC3),
523
480
  200: Color(0xFFC2CFE3),
481
+ NaN: Color(0xFFFFFFFF),
524
482
  },
525
483
  ),
526
484
  );
Binary file