@matteoaliano/forest-ui 0.2.1 → 0.2.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.
@@ -194,10 +194,249 @@ var widths = {
194
194
  "5xl": 1600,
195
195
  "6xl": 1920
196
196
  };
197
+ var text = {
198
+ primary: colors.gray[900],
199
+ secondary: colors.gray[700],
200
+ secondaryHover: colors.gray[800],
201
+ tertiary: colors.gray[600],
202
+ tertiaryHover: colors.gray[700],
203
+ quaternary: colors.gray[500],
204
+ disabled: colors.gray[500],
205
+ placeholder: colors.gray[500],
206
+ placeholderSubtle: colors.gray[300],
207
+ white: colors.base.white,
208
+ brandPrimary: colors.brand[900],
209
+ brandSecondary: colors.brand[700],
210
+ brandTertiary: colors.brand[600],
211
+ brandTertiaryAlt: colors.brand[600],
212
+ primaryOnBrand: colors.base.white,
213
+ secondaryOnBrand: colors.brand[200],
214
+ tertiaryOnBrand: colors.brand[200],
215
+ quaternaryOnBrand: colors.brand[300],
216
+ errorPrimary: colors.error[600],
217
+ warningPrimary: colors.warning[600],
218
+ successPrimary: colors.success[600]
219
+ };
220
+ var bg = {
221
+ primary: colors.base.white,
222
+ primaryAlt: colors.base.white,
223
+ primaryHover: colors.gray[50],
224
+ primarySolid: colors.gray[950],
225
+ secondary: colors.gray[50],
226
+ secondaryAlt: colors.gray[50],
227
+ secondarySubtle: colors.gray[25],
228
+ secondaryHover: colors.gray[100],
229
+ secondarySolid: colors.gray[600],
230
+ tertiary: colors.gray[100],
231
+ quaternary: colors.gray[200],
232
+ active: colors.gray[50],
233
+ disabled: colors.gray[100],
234
+ disabledSubtle: colors.gray[50],
235
+ overlay: colors.gray[950],
236
+ brandPrimary: colors.brand[50],
237
+ brandPrimaryAlt: colors.brand[50],
238
+ brandSecondary: colors.brand[100],
239
+ brandSolid: colors.brand[600],
240
+ brandSolidHover: colors.brand[700],
241
+ brandSection: colors.brand[800],
242
+ brandSectionSubtle: colors.brand[700],
243
+ errorPrimary: colors.error[50],
244
+ errorSecondary: colors.error[100],
245
+ errorSolid: colors.error[600],
246
+ warningPrimary: colors.warning[50],
247
+ warningSecondary: colors.warning[100],
248
+ warningSolid: colors.warning[600],
249
+ successPrimary: colors.success[50],
250
+ successSecondary: colors.success[100],
251
+ successSolid: colors.success[600]
252
+ };
253
+ var fg = {
254
+ primary: colors.gray[900],
255
+ secondary: colors.gray[700],
256
+ secondaryHover: colors.gray[800],
257
+ tertiary: colors.gray[600],
258
+ tertiaryHover: colors.gray[700],
259
+ quaternary: colors.gray[500],
260
+ quaternaryHover: colors.gray[600],
261
+ quinary: colors.gray[400],
262
+ quinaryHover: colors.gray[500],
263
+ senary: colors.gray[300],
264
+ white: colors.base.white,
265
+ disabled: colors.gray[400],
266
+ disabledSubtle: colors.gray[300],
267
+ brandPrimary: colors.brand[600],
268
+ brandPrimaryAlt: colors.brand[600],
269
+ brandSecondary: colors.brand[500],
270
+ errorPrimary: colors.error[600],
271
+ errorSecondary: colors.error[500],
272
+ warningPrimary: colors.warning[600],
273
+ warningSecondary: colors.warning[500],
274
+ successPrimary: colors.success[600],
275
+ successSecondary: colors.success[500]
276
+ };
277
+ var border = {
278
+ primary: colors.gray[300],
279
+ secondary: colors.gray[200],
280
+ tertiary: colors.gray[100],
281
+ disabled: colors.gray[300],
282
+ disabledSubtle: colors.gray[200],
283
+ brand: colors.brand[300],
284
+ brandSolid: colors.brand[600],
285
+ brandSolidAlt: colors.brand[600],
286
+ error: colors.error[300],
287
+ errorSolid: colors.error[600]
288
+ };
289
+ var buttonColors = {
290
+ primary: {
291
+ bg: colors.brand[600],
292
+ bgHover: colors.brand[700],
293
+ fg: colors.base.white,
294
+ fgHover: colors.base.white,
295
+ border: colors.brand[600],
296
+ borderHover: colors.brand[700]
297
+ },
298
+ secondary: {
299
+ bg: colors.base.white,
300
+ bgHover: colors.gray[50],
301
+ fg: colors.gray[700],
302
+ fgHover: colors.gray[800],
303
+ border: colors.gray[300],
304
+ borderHover: colors.gray[300]
305
+ },
306
+ secondaryColor: {
307
+ bg: colors.base.white,
308
+ bgHover: colors.brand[50],
309
+ fg: colors.brand[700],
310
+ fgHover: colors.brand[800],
311
+ border: colors.brand[300],
312
+ borderHover: colors.brand[300]
313
+ },
314
+ tertiary: {
315
+ fg: colors.gray[600],
316
+ fgHover: colors.gray[700],
317
+ bgHover: colors.gray[50]
318
+ },
319
+ tertiaryColor: {
320
+ fg: colors.brand[700],
321
+ fgHover: colors.brand[800],
322
+ bgHover: colors.brand[50]
323
+ },
324
+ primaryError: {
325
+ bg: colors.error[600],
326
+ bgHover: colors.error[700],
327
+ fg: colors.base.white,
328
+ fgHover: colors.base.white,
329
+ border: colors.error[600],
330
+ borderHover: colors.error[700]
331
+ },
332
+ secondaryError: {
333
+ bg: colors.base.white,
334
+ bgHover: colors.error[50],
335
+ fg: colors.error[700],
336
+ fgHover: colors.error[800],
337
+ border: colors.error[300],
338
+ borderHover: colors.error[300]
339
+ },
340
+ tertiaryError: {
341
+ fg: colors.error[700],
342
+ fgHover: colors.error[800],
343
+ bgHover: colors.error[50]
344
+ }
345
+ };
346
+ var avatarColors = {
347
+ bg: colors.gray[100],
348
+ contrastBorder: "#00000014",
349
+ profilePhotoBorder: colors.base.white,
350
+ focusBorder: "#98a2b324"
351
+ };
352
+ var breadcrumbColors = {
353
+ fg: colors.gray[600],
354
+ fgHover: colors.gray[700],
355
+ bgHover: colors.gray[50],
356
+ brandBgHover: colors.brand[50],
357
+ brandFgHover: colors.brand[700],
358
+ iconFg: colors.gray[500],
359
+ iconFgHover: colors.gray[700],
360
+ brandIconFgHover: colors.brand[700]
361
+ };
362
+ var iconColors = {
363
+ fgBrand: colors.brand[600],
364
+ fgBrandOnBrand: colors.brand[200],
365
+ featuredModernBorder: colors.gray[200],
366
+ featuredLightFgBrand: colors.brand[600],
367
+ featuredLightFgGray: colors.gray[500],
368
+ featuredLightFgError: colors.error[600],
369
+ featuredLightFgWarning: colors.warning[600],
370
+ featuredLightFgSuccess: colors.success[600],
371
+ featuredDarkFgBrand: colors.base.white,
372
+ featuredDarkFgGray: colors.base.white,
373
+ featuredDarkFgError: colors.base.white,
374
+ featuredDarkFgWarning: colors.base.white,
375
+ featuredDarkFgSuccess: colors.base.white
376
+ };
377
+ var navColors = {
378
+ itemIconFg: colors.gray[500],
379
+ itemIconFgActive: colors.gray[500],
380
+ itemButtonIconFg: colors.gray[500],
381
+ itemButtonIconFgActive: colors.gray[700]
382
+ };
383
+ var sliderColors = {
384
+ handleBorder: colors.brand[600],
385
+ handleBg: colors.base.white
386
+ };
387
+ var toggleColors = {
388
+ buttonFgDisabled: colors.gray[50]
389
+ };
390
+ var chartColors = {
391
+ axisFg: colors.gray[200],
392
+ gridlineFg: colors.gray[100],
393
+ labelFg: colors.gray[600],
394
+ labelFgEmphasis: colors.gray[700],
395
+ bg: colors.base.white,
396
+ bgAlt: colors.gray[50],
397
+ tooltipBg: colors.gray[950],
398
+ tooltipFg: colors.base.white,
399
+ crosshairFg: colors.gray[500],
400
+ legendFg: colors.gray[700],
401
+ series1Fg: colors.blue[600],
402
+ series1FgHover: colors.blue[700],
403
+ series1Bg: colors.blue[100],
404
+ series1BgHover: colors.blue[200],
405
+ series2Fg: colors.brand[600],
406
+ series2FgHover: colors.brand[700],
407
+ series2Bg: colors.brand[100],
408
+ series2BgHover: colors.brand[200]
409
+ };
410
+ var alpha = {
411
+ white: {
412
+ 10: "#ffffff1a",
413
+ 20: "#ffffff33",
414
+ 30: "#ffffff4d",
415
+ 40: "#ffffff66",
416
+ 50: "#ffffff80",
417
+ 60: "#ffffff99",
418
+ 70: "#ffffffb3",
419
+ 80: "#ffffffcc",
420
+ 90: "#ffffffe6",
421
+ 100: "#ffffff"
422
+ },
423
+ black: {
424
+ 10: "#0000001a",
425
+ 20: "#00000033",
426
+ 30: "#0000004d",
427
+ 40: "#00000066",
428
+ 50: "#00000080",
429
+ 60: "#00000099",
430
+ 70: "#000000b3",
431
+ 80: "#000000cc",
432
+ 90: "#000000e6",
433
+ 100: "#000000"
434
+ }
435
+ };
197
436
 
198
437
  // src/theme/palette.ts
199
438
  function buildPalette(tokens) {
200
- const { colors: colors2 } = tokens;
439
+ const { colors: colors2, text: text2, bg: bg2, fg: fg2, border: border2 } = tokens;
201
440
  return {
202
441
  primary: {
203
442
  main: colors2.brand[600],
@@ -236,26 +475,30 @@ function buildPalette(tokens) {
236
475
  contrastText: colors2.base.white
237
476
  },
238
477
  background: {
239
- default: colors2.base.white,
240
- paper: colors2.base.white
478
+ default: bg2.primary,
479
+ paper: bg2.primary
241
480
  },
242
481
  text: {
243
- primary: colors2.gray[900],
244
- secondary: colors2.gray[700],
245
- disabled: colors2.gray[500]
482
+ primary: text2.primary,
483
+ secondary: text2.secondary,
484
+ disabled: text2.disabled
246
485
  },
247
- divider: colors2.gray[200],
486
+ divider: border2.secondary,
248
487
  action: {
249
- active: colors2.gray[600],
250
- hover: colors2.gray[50],
251
- selected: colors2.brand[50],
252
- disabled: colors2.gray[400],
253
- disabledBackground: colors2.gray[100]
488
+ active: fg2.tertiary,
489
+ hover: bg2.primaryHover,
490
+ selected: bg2.brandPrimary,
491
+ disabled: fg2.disabled,
492
+ disabledBackground: bg2.disabled
254
493
  }
255
494
  };
256
495
  }
257
496
  var palette = buildPalette({
258
- colors
497
+ colors,
498
+ text,
499
+ bg,
500
+ fg,
501
+ border
259
502
  });
260
503
 
261
504
  // src/theme/typography.ts
@@ -350,7 +593,17 @@ var typography = buildTypography({
350
593
 
351
594
  // src/theme/components.ts
352
595
  function buildComponents(tokens) {
353
- const { colors: colors2, radius: radius2, focusRings: focusRings2, shadows: tokenShadows } = tokens;
596
+ const {
597
+ colors: colors2,
598
+ radius: radius2,
599
+ focusRings: focusRings2,
600
+ shadows: tokenShadows,
601
+ text: text2,
602
+ bg: bg2,
603
+ fg: fg2,
604
+ border: border2,
605
+ buttonColors: buttonColors2
606
+ } = tokens;
354
607
  return {
355
608
  // ─── Button ─────────────────────────────────────────────────────
356
609
  MuiButton: {
@@ -361,43 +614,42 @@ function buildComponents(tokens) {
361
614
  root: {
362
615
  borderRadius: radius2.md,
363
616
  fontWeight: 600,
617
+ boxShadow: tokenShadows.xs,
618
+ height: 32,
619
+ padding: "6px 12px",
620
+ fontSize: 14,
621
+ lineHeight: "20px",
364
622
  "&:focus-visible": {
365
623
  boxShadow: focusRings2.brandShadowXs
366
624
  }
367
625
  },
368
- sizeLarge: {
369
- padding: "12px 20px",
370
- fontSize: 16,
371
- lineHeight: "24px"
372
- },
373
- sizeMedium: {
374
- padding: "10px 16px",
375
- fontSize: 14,
376
- lineHeight: "20px"
377
- },
378
- sizeSmall: {
379
- padding: "8px 14px",
380
- fontSize: 14,
381
- lineHeight: "20px"
382
- },
383
626
  containedPrimary: {
384
- backgroundColor: colors2.brand[600],
627
+ backgroundColor: buttonColors2.primary.bg,
385
628
  "&:hover": {
386
- backgroundColor: colors2.brand[700]
629
+ backgroundColor: buttonColors2.primary.bgHover
387
630
  }
388
631
  },
389
632
  outlinedPrimary: {
390
- borderColor: colors2.brand[300],
391
- color: colors2.brand[700],
633
+ borderColor: buttonColors2.secondaryColor.border,
634
+ color: buttonColors2.secondaryColor.fg,
392
635
  "&:hover": {
393
- backgroundColor: colors2.brand[50],
394
- borderColor: colors2.brand[300]
636
+ backgroundColor: buttonColors2.secondaryColor.bgHover,
637
+ borderColor: buttonColors2.secondaryColor.borderHover
638
+ }
639
+ },
640
+ outlinedSecondary: {
641
+ borderColor: buttonColors2.secondary.border,
642
+ "&:hover": {
643
+ borderColor: buttonColors2.secondary.borderHover
395
644
  }
396
645
  },
646
+ text: {
647
+ boxShadow: "none"
648
+ },
397
649
  textPrimary: {
398
- color: colors2.brand[700],
650
+ color: buttonColors2.tertiaryColor.fg,
399
651
  "&:hover": {
400
- backgroundColor: colors2.brand[50]
652
+ backgroundColor: buttonColors2.tertiaryColor.bgHover
401
653
  }
402
654
  }
403
655
  }
@@ -413,7 +665,7 @@ function buildComponents(tokens) {
413
665
  },
414
666
  grouped: {
415
667
  "&:not(:last-of-type)": {
416
- borderRight: `1px solid ${colors2.brand[700]}`
668
+ borderRight: `1px solid ${buttonColors2.primary.borderHover}`
417
669
  }
418
670
  }
419
671
  }
@@ -431,9 +683,9 @@ function buildComponents(tokens) {
431
683
  }
432
684
  },
433
685
  primary: {
434
- backgroundColor: colors2.brand[600],
686
+ backgroundColor: buttonColors2.primary.bg,
435
687
  "&:hover": {
436
- backgroundColor: colors2.brand[700]
688
+ backgroundColor: buttonColors2.primary.bgHover
437
689
  }
438
690
  }
439
691
  }
@@ -445,37 +697,46 @@ function buildComponents(tokens) {
445
697
  size: "small"
446
698
  }
447
699
  },
700
+ MuiInputBase: {
701
+ styleOverrides: {
702
+ input: {
703
+ "&::placeholder": {
704
+ color: text2.placeholder,
705
+ WebkitTextFillColor: text2.placeholder,
706
+ fontWeight: 400,
707
+ opacity: 1
708
+ }
709
+ }
710
+ }
711
+ },
448
712
  MuiOutlinedInput: {
449
713
  styleOverrides: {
450
714
  root: {
451
715
  borderRadius: radius2.md,
716
+ boxShadow: tokenShadows.xs,
452
717
  "&:hover .MuiOutlinedInput-notchedOutline": {
453
- borderColor: colors2.brand[300]
718
+ borderColor: border2.brand
454
719
  },
455
720
  "&.Mui-focused .MuiOutlinedInput-notchedOutline": {
456
- borderColor: colors2.brand[600],
721
+ borderColor: border2.brandSolid,
457
722
  borderWidth: 1,
458
723
  boxShadow: "none"
459
724
  },
460
725
  "&.Mui-error .MuiOutlinedInput-notchedOutline": {
461
- borderColor: colors2.error[300]
726
+ borderColor: border2.error
462
727
  },
463
728
  "&.Mui-error.Mui-focused .MuiOutlinedInput-notchedOutline": {
464
- borderColor: colors2.error[600],
729
+ borderColor: border2.errorSolid,
465
730
  boxShadow: "none"
466
731
  }
467
732
  },
468
733
  notchedOutline: {
469
- borderColor: colors2.gray[300]
734
+ borderColor: border2.primary
470
735
  },
471
736
  input: {
472
737
  padding: "10px 14px",
473
738
  fontSize: 16,
474
- lineHeight: "24px",
475
- "&::placeholder": {
476
- color: colors2.gray[500],
477
- opacity: 1
478
- }
739
+ lineHeight: "24px"
479
740
  },
480
741
  inputSizeSmall: {
481
742
  padding: "8px 12px",
@@ -484,17 +745,30 @@ function buildComponents(tokens) {
484
745
  }
485
746
  }
486
747
  },
748
+ MuiFormLabel: {
749
+ styleOverrides: {
750
+ root: {
751
+ color: text2.placeholder,
752
+ "&.Mui-focused": {
753
+ color: text2.placeholder
754
+ },
755
+ "&.Mui-error": {
756
+ color: text2.errorPrimary
757
+ }
758
+ }
759
+ }
760
+ },
487
761
  MuiInputLabel: {
488
762
  styleOverrides: {
489
763
  root: {
490
764
  fontSize: 14,
491
765
  fontWeight: 500,
492
- color: colors2.gray[700],
766
+ color: text2.placeholder,
493
767
  "&.Mui-focused": {
494
- color: colors2.gray[700]
768
+ color: text2.placeholder
495
769
  },
496
770
  "&.Mui-error": {
497
- color: colors2.error[600]
771
+ color: text2.errorPrimary
498
772
  }
499
773
  }
500
774
  }
@@ -507,7 +781,7 @@ function buildComponents(tokens) {
507
781
  marginTop: 6,
508
782
  marginLeft: 0,
509
783
  "&.Mui-error": {
510
- color: colors2.error[600]
784
+ color: text2.errorPrimary
511
785
  }
512
786
  }
513
787
  }
@@ -518,8 +792,15 @@ function buildComponents(tokens) {
518
792
  size: "small"
519
793
  },
520
794
  styleOverrides: {
795
+ select: {
796
+ "&.MuiSelect-select": {
797
+ "&[aria-placeholder], &:empty + .MuiSelect-nativeInput[value='']~&": {
798
+ color: text2.placeholder
799
+ }
800
+ }
801
+ },
521
802
  icon: {
522
- color: colors2.gray[500]
803
+ color: text2.placeholder
523
804
  }
524
805
  }
525
806
  },
@@ -529,7 +810,7 @@ function buildComponents(tokens) {
529
810
  paper: {
530
811
  borderRadius: radius2.md,
531
812
  boxShadow: tokenShadows.lg,
532
- border: `1px solid ${colors2.gray[200]}`,
813
+ border: `1px solid ${border2.secondary}`,
533
814
  marginTop: 4
534
815
  },
535
816
  option: {
@@ -537,10 +818,10 @@ function buildComponents(tokens) {
537
818
  lineHeight: "24px",
538
819
  padding: "10px 14px",
539
820
  "&.Mui-focused": {
540
- backgroundColor: colors2.gray[50]
821
+ backgroundColor: bg2.primaryHover
541
822
  },
542
823
  '&[aria-selected="true"]': {
543
- backgroundColor: colors2.brand[50]
824
+ backgroundColor: bg2.brandPrimary
544
825
  }
545
826
  },
546
827
  listbox: {
@@ -555,17 +836,17 @@ function buildComponents(tokens) {
555
836
  },
556
837
  styleOverrides: {
557
838
  root: {
558
- color: colors2.gray[300],
839
+ color: border2.primary,
559
840
  borderRadius: radius2.xs,
560
841
  padding: 0,
561
842
  width: 20,
562
843
  height: 20,
563
844
  "&:hover": {
564
845
  backgroundColor: "transparent",
565
- color: colors2.brand[600]
846
+ color: fg2.brandPrimary
566
847
  },
567
848
  "&.Mui-checked": {
568
- color: colors2.brand[600]
849
+ color: fg2.brandPrimary
569
850
  },
570
851
  "&.Mui-checked:hover": {
571
852
  color: colors2.brand[700]
@@ -576,7 +857,7 @@ function buildComponents(tokens) {
576
857
  borderRadius: radius2.xs
577
858
  },
578
859
  "&.Mui-disabled": {
579
- color: colors2.gray[300]
860
+ color: border2.primary
580
861
  }
581
862
  }
582
863
  }
@@ -588,14 +869,14 @@ function buildComponents(tokens) {
588
869
  },
589
870
  styleOverrides: {
590
871
  root: {
591
- color: colors2.gray[300],
872
+ color: border2.primary,
592
873
  padding: 0,
593
874
  "&:hover": {
594
875
  backgroundColor: "transparent",
595
- color: colors2.brand[600]
876
+ color: fg2.brandPrimary
596
877
  },
597
878
  "&.Mui-checked": {
598
- color: colors2.brand[600]
879
+ color: fg2.brandPrimary
599
880
  },
600
881
  "&.Mui-checked:hover": {
601
882
  color: colors2.brand[700]
@@ -606,7 +887,7 @@ function buildComponents(tokens) {
606
887
  borderRadius: radius2.full
607
888
  },
608
889
  "&.Mui-disabled": {
609
- color: colors2.gray[300]
890
+ color: border2.primary
610
891
  }
611
892
  }
612
893
  }
@@ -626,9 +907,9 @@ function buildComponents(tokens) {
626
907
  padding: 2,
627
908
  "&.Mui-checked": {
628
909
  transform: "translateX(20px)",
629
- color: colors2.base.white,
910
+ color: fg2.white,
630
911
  "& + .MuiSwitch-track": {
631
- backgroundColor: colors2.brand[600],
912
+ backgroundColor: fg2.brandPrimary,
632
913
  opacity: 1
633
914
  }
634
915
  },
@@ -639,7 +920,7 @@ function buildComponents(tokens) {
639
920
  boxShadow: focusRings2.brand
640
921
  },
641
922
  "&.Mui-disabled .MuiSwitch-thumb": {
642
- color: colors2.gray[100]
923
+ color: bg2.disabled
643
924
  },
644
925
  "&.Mui-disabled + .MuiSwitch-track": {
645
926
  opacity: 0.5
@@ -652,7 +933,7 @@ function buildComponents(tokens) {
652
933
  },
653
934
  track: {
654
935
  borderRadius: radius2.full,
655
- backgroundColor: colors2.gray[200],
936
+ backgroundColor: border2.secondary,
656
937
  opacity: 1
657
938
  }
658
939
  }
@@ -661,23 +942,24 @@ function buildComponents(tokens) {
661
942
  MuiToggleButton: {
662
943
  styleOverrides: {
663
944
  root: {
664
- borderRadius: radius2.md,
665
- borderColor: colors2.gray[300],
666
- color: colors2.gray[700],
945
+ borderColor: border2.primary,
946
+ color: text2.secondary,
667
947
  fontSize: 14,
668
948
  fontWeight: 600,
669
949
  lineHeight: "20px",
670
- padding: "8px 14px",
950
+ height: 32,
951
+ padding: "6px 12px",
671
952
  textTransform: "none",
672
953
  "&:hover": {
673
- backgroundColor: colors2.gray[50]
954
+ backgroundColor: bg2.primaryHover,
955
+ borderColor: border2.primary
674
956
  },
675
957
  "&.Mui-selected": {
676
- backgroundColor: colors2.brand[50],
677
- color: colors2.brand[700],
678
- borderColor: colors2.brand[300],
958
+ backgroundColor: bg2.brandPrimary,
959
+ color: buttonColors2.secondaryColor.fg,
960
+ borderColor: border2.brand,
679
961
  "&:hover": {
680
- backgroundColor: colors2.brand[100]
962
+ backgroundColor: bg2.brandSecondary
681
963
  }
682
964
  },
683
965
  "&:focus-visible": {
@@ -689,15 +971,21 @@ function buildComponents(tokens) {
689
971
  MuiToggleButtonGroup: {
690
972
  styleOverrides: {
691
973
  root: {
692
- borderRadius: radius2.md
974
+ borderRadius: radius2.md,
975
+ overflow: "hidden"
693
976
  },
694
977
  grouped: {
978
+ borderRadius: 0,
695
979
  "&:not(:first-of-type)": {
696
- borderRadius: radius2.md,
697
980
  marginLeft: -1
698
981
  },
699
982
  "&:first-of-type": {
700
- borderRadius: radius2.md
983
+ borderTopLeftRadius: radius2.md,
984
+ borderBottomLeftRadius: radius2.md
985
+ },
986
+ "&:last-of-type": {
987
+ borderTopRightRadius: radius2.md,
988
+ borderBottomRightRadius: radius2.md
701
989
  }
702
990
  }
703
991
  }
@@ -710,8 +998,8 @@ function buildComponents(tokens) {
710
998
  styleOverrides: {
711
999
  root: {
712
1000
  borderRadius: radius2.xl,
713
- border: `1px solid ${colors2.gray[200]}`,
714
- backgroundColor: colors2.base.white,
1001
+ border: `1px solid ${border2.secondary}`,
1002
+ backgroundColor: bg2.primary,
715
1003
  overflow: "hidden"
716
1004
  }
717
1005
  }
@@ -761,31 +1049,31 @@ function buildComponents(tokens) {
761
1049
  },
762
1050
  elevation1: {
763
1051
  boxShadow: tokenShadows.xs,
764
- border: `1px solid ${colors2.gray[200]}`
1052
+ border: `1px solid ${border2.secondary}`
765
1053
  },
766
1054
  elevation2: {
767
1055
  boxShadow: tokenShadows.sm,
768
- border: `1px solid ${colors2.gray[200]}`
1056
+ border: `1px solid ${border2.secondary}`
769
1057
  },
770
1058
  elevation3: {
771
1059
  boxShadow: tokenShadows.md,
772
- border: `1px solid ${colors2.gray[200]}`
1060
+ border: `1px solid ${border2.secondary}`
773
1061
  },
774
1062
  elevation4: {
775
1063
  boxShadow: tokenShadows.lg,
776
- border: `1px solid ${colors2.gray[200]}`
1064
+ border: `1px solid ${border2.secondary}`
777
1065
  },
778
1066
  elevation8: {
779
1067
  boxShadow: tokenShadows.xl,
780
- border: `1px solid ${colors2.gray[200]}`
1068
+ border: `1px solid ${border2.secondary}`
781
1069
  },
782
1070
  elevation16: {
783
1071
  boxShadow: tokenShadows["2xl"],
784
- border: `1px solid ${colors2.gray[200]}`
1072
+ border: `1px solid ${border2.secondary}`
785
1073
  },
786
1074
  elevation24: {
787
1075
  boxShadow: tokenShadows["3xl"],
788
- border: `1px solid ${colors2.gray[200]}`
1076
+ border: `1px solid ${border2.secondary}`
789
1077
  }
790
1078
  }
791
1079
  },
@@ -797,7 +1085,7 @@ function buildComponents(tokens) {
797
1085
  },
798
1086
  styleOverrides: {
799
1087
  root: {
800
- border: `1px solid ${colors2.gray[200]}`,
1088
+ border: `1px solid ${border2.secondary}`,
801
1089
  borderRadius: radius2.lg,
802
1090
  "&:not(:last-child)": {
803
1091
  marginBottom: 8
@@ -820,7 +1108,7 @@ function buildComponents(tokens) {
820
1108
  minHeight: 56,
821
1109
  "&.Mui-expanded": {
822
1110
  minHeight: 56,
823
- borderBottom: `1px solid ${colors2.gray[200]}`
1111
+ borderBottom: `1px solid ${border2.secondary}`
824
1112
  }
825
1113
  },
826
1114
  content: {
@@ -846,8 +1134,8 @@ function buildComponents(tokens) {
846
1134
  },
847
1135
  styleOverrides: {
848
1136
  root: {
849
- borderBottom: `1px solid ${colors2.gray[200]}`,
850
- backgroundColor: colors2.base.white
1137
+ borderBottom: `1px solid ${border2.secondary}`,
1138
+ backgroundColor: bg2.primary
851
1139
  }
852
1140
  }
853
1141
  },
@@ -871,9 +1159,68 @@ function buildComponents(tokens) {
871
1159
  MuiChip: {
872
1160
  styleOverrides: {
873
1161
  root: {
874
- borderRadius: radius2.md,
875
- fontWeight: 500,
876
- fontSize: 14
1162
+ borderRadius: radius2.md
1163
+ },
1164
+ label: {
1165
+ fontWeight: 500
1166
+ },
1167
+ sizeSmall: {
1168
+ fontSize: 12,
1169
+ height: 20
1170
+ },
1171
+ sizeMedium: {
1172
+ fontSize: 14,
1173
+ height: 24,
1174
+ "& .MuiChip-deleteIcon": { fontSize: 16 }
1175
+ },
1176
+ colorDefault: {
1177
+ "&.MuiChip-filled": {
1178
+ backgroundColor: colors2.gray[50],
1179
+ color: colors2.gray[700],
1180
+ "& .MuiChip-deleteIcon": { color: colors2.gray[400] }
1181
+ }
1182
+ },
1183
+ colorPrimary: {
1184
+ "&.MuiChip-filled": {
1185
+ backgroundColor: colors2.brand[50],
1186
+ color: colors2.brand[700],
1187
+ "& .MuiChip-deleteIcon": { color: colors2.brand[400] }
1188
+ }
1189
+ },
1190
+ colorSecondary: {
1191
+ "&.MuiChip-filled": {
1192
+ backgroundColor: colors2.gray[50],
1193
+ color: colors2.gray[700],
1194
+ "& .MuiChip-deleteIcon": { color: colors2.gray[400] }
1195
+ }
1196
+ },
1197
+ colorError: {
1198
+ "&.MuiChip-filled": {
1199
+ backgroundColor: colors2.error[50],
1200
+ color: colors2.error[700],
1201
+ "& .MuiChip-deleteIcon": { color: colors2.error[400] }
1202
+ }
1203
+ },
1204
+ colorWarning: {
1205
+ "&.MuiChip-filled": {
1206
+ backgroundColor: colors2.warning[50],
1207
+ color: colors2.warning[700],
1208
+ "& .MuiChip-deleteIcon": { color: colors2.warning[400] }
1209
+ }
1210
+ },
1211
+ colorSuccess: {
1212
+ "&.MuiChip-filled": {
1213
+ backgroundColor: colors2.success[50],
1214
+ color: colors2.success[700],
1215
+ "& .MuiChip-deleteIcon": { color: colors2.success[400] }
1216
+ }
1217
+ },
1218
+ colorInfo: {
1219
+ "&.MuiChip-filled": {
1220
+ backgroundColor: colors2.blue[50],
1221
+ color: colors2.blue[700],
1222
+ "& .MuiChip-deleteIcon": { color: colors2.blue[400] }
1223
+ }
877
1224
  }
878
1225
  }
879
1226
  },
@@ -888,7 +1235,7 @@ function buildComponents(tokens) {
888
1235
  fontSize: 14,
889
1236
  lineHeight: "20px",
890
1237
  fontWeight: 500,
891
- color: colors2.gray[700]
1238
+ color: text2.secondary
892
1239
  }
893
1240
  }
894
1241
  },
@@ -904,29 +1251,29 @@ function buildComponents(tokens) {
904
1251
  MuiTableCell: {
905
1252
  styleOverrides: {
906
1253
  root: {
907
- borderBottom: `1px solid ${colors2.gray[200]}`,
1254
+ borderBottom: `1px solid ${border2.secondary}`,
908
1255
  padding: "16px 24px",
909
1256
  fontSize: 14,
910
1257
  lineHeight: "20px",
911
- color: colors2.gray[600]
1258
+ color: fg2.tertiary
912
1259
  },
913
1260
  head: {
914
- backgroundColor: colors2.gray[50],
915
- color: colors2.gray[600],
1261
+ backgroundColor: bg2.secondary,
1262
+ color: fg2.tertiary,
916
1263
  fontWeight: 500,
917
1264
  fontSize: 12,
918
1265
  lineHeight: "18px"
919
1266
  },
920
1267
  body: {
921
- color: colors2.gray[600]
1268
+ color: fg2.tertiary
922
1269
  }
923
1270
  }
924
1271
  },
925
1272
  MuiTableHead: {
926
1273
  styleOverrides: {
927
1274
  root: {
928
- backgroundColor: colors2.gray[50],
929
- borderBottom: `1px solid ${colors2.gray[200]}`
1275
+ backgroundColor: bg2.secondary,
1276
+ borderBottom: `1px solid ${border2.secondary}`
930
1277
  }
931
1278
  }
932
1279
  },
@@ -937,12 +1284,12 @@ function buildComponents(tokens) {
937
1284
  border: 0
938
1285
  },
939
1286
  "&:hover": {
940
- backgroundColor: colors2.gray[50]
1287
+ backgroundColor: bg2.primaryHover
941
1288
  },
942
1289
  "&.Mui-selected": {
943
- backgroundColor: colors2.brand[50],
1290
+ backgroundColor: bg2.brandPrimary,
944
1291
  "&:hover": {
945
- backgroundColor: colors2.brand[50]
1292
+ backgroundColor: bg2.brandPrimary
946
1293
  }
947
1294
  }
948
1295
  }
@@ -952,7 +1299,7 @@ function buildComponents(tokens) {
952
1299
  styleOverrides: {
953
1300
  root: {
954
1301
  borderRadius: radius2.xl,
955
- border: `1px solid ${colors2.gray[200]}`,
1302
+ border: `1px solid ${border2.secondary}`,
956
1303
  boxShadow: "none"
957
1304
  }
958
1305
  }
@@ -969,16 +1316,16 @@ function buildComponents(tokens) {
969
1316
  borderRadius: radius2.full
970
1317
  },
971
1318
  colorPrimary: {
972
- backgroundColor: colors2.brand[600]
1319
+ backgroundColor: bg2.brandSolid
973
1320
  },
974
1321
  colorError: {
975
- backgroundColor: colors2.error[600]
1322
+ backgroundColor: bg2.errorSolid
976
1323
  },
977
1324
  colorSuccess: {
978
- backgroundColor: colors2.success[600]
1325
+ backgroundColor: bg2.successSolid
979
1326
  },
980
1327
  colorWarning: {
981
- backgroundColor: colors2.warning[600]
1328
+ backgroundColor: bg2.warningSolid
982
1329
  },
983
1330
  dot: {
984
1331
  minWidth: 8,
@@ -991,7 +1338,7 @@ function buildComponents(tokens) {
991
1338
  MuiDivider: {
992
1339
  styleOverrides: {
993
1340
  root: {
994
- borderColor: colors2.gray[200]
1341
+ borderColor: border2.secondary
995
1342
  }
996
1343
  }
997
1344
  },
@@ -1009,13 +1356,13 @@ function buildComponents(tokens) {
1009
1356
  borderRadius: radius2.sm,
1010
1357
  padding: "8px 12px",
1011
1358
  "&:hover": {
1012
- backgroundColor: colors2.gray[50]
1359
+ backgroundColor: bg2.primaryHover
1013
1360
  },
1014
1361
  "&.Mui-selected": {
1015
- backgroundColor: colors2.brand[50],
1016
- color: colors2.brand[700],
1362
+ backgroundColor: bg2.brandPrimary,
1363
+ color: buttonColors2.secondaryColor.fg,
1017
1364
  "&:hover": {
1018
- backgroundColor: colors2.brand[100]
1365
+ backgroundColor: bg2.brandSecondary
1019
1366
  }
1020
1367
  }
1021
1368
  }
@@ -1025,7 +1372,7 @@ function buildComponents(tokens) {
1025
1372
  styleOverrides: {
1026
1373
  root: {
1027
1374
  minWidth: 36,
1028
- color: colors2.gray[500]
1375
+ color: fg2.quaternary
1029
1376
  }
1030
1377
  }
1031
1378
  },
@@ -1035,12 +1382,12 @@ function buildComponents(tokens) {
1035
1382
  fontSize: 14,
1036
1383
  lineHeight: "20px",
1037
1384
  fontWeight: 500,
1038
- color: colors2.gray[700]
1385
+ color: text2.secondary
1039
1386
  },
1040
1387
  secondary: {
1041
1388
  fontSize: 14,
1042
1389
  lineHeight: "20px",
1043
- color: colors2.gray[500]
1390
+ color: text2.quaternary
1044
1391
  }
1045
1392
  }
1046
1393
  },
@@ -1048,8 +1395,8 @@ function buildComponents(tokens) {
1048
1395
  MuiTooltip: {
1049
1396
  styleOverrides: {
1050
1397
  tooltip: {
1051
- backgroundColor: colors2.gray[900],
1052
- color: colors2.base.white,
1398
+ backgroundColor: bg2.primarySolid,
1399
+ color: text2.white,
1053
1400
  fontSize: 12,
1054
1401
  lineHeight: "18px",
1055
1402
  fontWeight: 600,
@@ -1058,7 +1405,7 @@ function buildComponents(tokens) {
1058
1405
  boxShadow: tokenShadows.lg
1059
1406
  },
1060
1407
  arrow: {
1061
- color: colors2.gray[900]
1408
+ color: bg2.primarySolid
1062
1409
  }
1063
1410
  }
1064
1411
  },
@@ -1072,30 +1419,31 @@ function buildComponents(tokens) {
1072
1419
  borderRadius: radius2.xl,
1073
1420
  fontSize: 14,
1074
1421
  lineHeight: "20px",
1075
- padding: "12px 16px"
1422
+ padding: "12px 16px",
1423
+ alignItems: "center"
1076
1424
  },
1077
1425
  standardError: {
1078
- backgroundColor: colors2.error[50],
1426
+ backgroundColor: bg2.errorPrimary,
1079
1427
  color: colors2.error[700],
1080
- border: `1px solid ${colors2.error[300]}`,
1428
+ border: `1px solid ${border2.error}`,
1081
1429
  "& .MuiAlert-icon": {
1082
- color: colors2.error[600]
1430
+ color: fg2.errorPrimary
1083
1431
  }
1084
1432
  },
1085
1433
  standardWarning: {
1086
- backgroundColor: colors2.warning[50],
1434
+ backgroundColor: bg2.warningPrimary,
1087
1435
  color: colors2.warning[700],
1088
1436
  border: `1px solid ${colors2.warning[300]}`,
1089
1437
  "& .MuiAlert-icon": {
1090
- color: colors2.warning[600]
1438
+ color: fg2.warningPrimary
1091
1439
  }
1092
1440
  },
1093
1441
  standardSuccess: {
1094
- backgroundColor: colors2.success[50],
1442
+ backgroundColor: bg2.successPrimary,
1095
1443
  color: colors2.success[700],
1096
1444
  border: `1px solid ${colors2.success[300]}`,
1097
1445
  "& .MuiAlert-icon": {
1098
- color: colors2.success[600]
1446
+ color: fg2.successPrimary
1099
1447
  }
1100
1448
  },
1101
1449
  standardInfo: {
@@ -1107,7 +1455,8 @@ function buildComponents(tokens) {
1107
1455
  }
1108
1456
  },
1109
1457
  icon: {
1110
- padding: "2px 0"
1458
+ padding: 0,
1459
+ marginRight: 12
1111
1460
  }
1112
1461
  }
1113
1462
  },
@@ -1145,7 +1494,7 @@ function buildComponents(tokens) {
1145
1494
  fontSize: 18,
1146
1495
  lineHeight: "28px",
1147
1496
  fontWeight: 600,
1148
- color: colors2.gray[900],
1497
+ color: text2.primary,
1149
1498
  padding: "24px 24px 0"
1150
1499
  }
1151
1500
  }
@@ -1156,7 +1505,7 @@ function buildComponents(tokens) {
1156
1505
  padding: "20px 24px",
1157
1506
  fontSize: 14,
1158
1507
  lineHeight: "20px",
1159
- color: colors2.gray[600]
1508
+ color: text2.tertiary
1160
1509
  }
1161
1510
  }
1162
1511
  },
@@ -1174,14 +1523,14 @@ function buildComponents(tokens) {
1174
1523
  root: {
1175
1524
  borderRadius: radius2.full,
1176
1525
  height: 8,
1177
- backgroundColor: colors2.gray[200]
1526
+ backgroundColor: border2.secondary
1178
1527
  },
1179
1528
  barColorPrimary: {
1180
- backgroundColor: colors2.brand[600],
1529
+ backgroundColor: fg2.brandPrimary,
1181
1530
  borderRadius: radius2.full
1182
1531
  },
1183
1532
  barColorSecondary: {
1184
- backgroundColor: colors2.gray[600],
1533
+ backgroundColor: bg2.secondarySolid,
1185
1534
  borderRadius: radius2.full
1186
1535
  }
1187
1536
  }
@@ -1189,10 +1538,10 @@ function buildComponents(tokens) {
1189
1538
  MuiCircularProgress: {
1190
1539
  styleOverrides: {
1191
1540
  colorPrimary: {
1192
- color: colors2.brand[600]
1541
+ color: fg2.brandPrimary
1193
1542
  },
1194
1543
  colorSecondary: {
1195
- color: colors2.gray[600]
1544
+ color: bg2.secondarySolid
1196
1545
  }
1197
1546
  }
1198
1547
  },
@@ -1203,7 +1552,7 @@ function buildComponents(tokens) {
1203
1552
  },
1204
1553
  styleOverrides: {
1205
1554
  root: {
1206
- backgroundColor: colors2.gray[100]
1555
+ backgroundColor: bg2.tertiary
1207
1556
  },
1208
1557
  rounded: {
1209
1558
  borderRadius: radius2.md
@@ -1217,8 +1566,8 @@ function buildComponents(tokens) {
1217
1566
  MuiSnackbarContent: {
1218
1567
  styleOverrides: {
1219
1568
  root: {
1220
- backgroundColor: colors2.gray[900],
1221
- color: colors2.base.white,
1569
+ backgroundColor: bg2.primarySolid,
1570
+ color: text2.white,
1222
1571
  borderRadius: radius2.xl,
1223
1572
  boxShadow: tokenShadows.lg,
1224
1573
  fontSize: 14,
@@ -1246,6 +1595,62 @@ function buildComponents(tokens) {
1246
1595
  overline: "span"
1247
1596
  }
1248
1597
  }
1598
+ },
1599
+ // ─── DataGrid (@mui/x-data-grid) ──────────────────────────────
1600
+ // Not part of MUI core's Components<Theme> type, so we merge via assertion.
1601
+ ...{
1602
+ MuiDataGrid: {
1603
+ styleOverrides: {
1604
+ root: {
1605
+ border: `1px solid ${border2.secondary}`,
1606
+ borderRadius: radius2.xl,
1607
+ fontFamily: "inherit",
1608
+ "& .MuiDataGrid-withBorderColor": {
1609
+ borderColor: border2.secondary
1610
+ }
1611
+ },
1612
+ columnHeaders: {
1613
+ backgroundColor: bg2.secondary
1614
+ },
1615
+ columnHeader: {
1616
+ fontSize: 12,
1617
+ lineHeight: "18px",
1618
+ fontWeight: 500,
1619
+ color: fg2.tertiary,
1620
+ "&:focus, &:focus-within": {
1621
+ outline: "none"
1622
+ }
1623
+ },
1624
+ columnHeaderTitle: {
1625
+ fontWeight: 500
1626
+ },
1627
+ cell: {
1628
+ fontSize: 14,
1629
+ lineHeight: "20px",
1630
+ color: fg2.tertiary,
1631
+ "&:focus, &:focus-within": {
1632
+ outline: "none"
1633
+ }
1634
+ },
1635
+ row: {
1636
+ "&:hover": {
1637
+ backgroundColor: bg2.primaryHover
1638
+ },
1639
+ "&.Mui-selected": {
1640
+ backgroundColor: bg2.brandPrimary,
1641
+ "&:hover": {
1642
+ backgroundColor: bg2.brandPrimary
1643
+ }
1644
+ }
1645
+ },
1646
+ footerContainer: {
1647
+ borderTop: `1px solid ${border2.secondary}`
1648
+ },
1649
+ columnSeparator: {
1650
+ color: border2.secondary
1651
+ }
1652
+ }
1653
+ }
1249
1654
  }
1250
1655
  };
1251
1656
  }
@@ -1253,8 +1658,12 @@ var components = buildComponents({
1253
1658
  colors,
1254
1659
  radius,
1255
1660
  focusRings,
1256
- shadows
1257
- });
1661
+ shadows,
1662
+ text,
1663
+ bg,
1664
+ fg,
1665
+ border,
1666
+ buttonColors});
1258
1667
 
1259
1668
  // src/theme/shadows.ts
1260
1669
  function buildShadows(tokens) {
@@ -1348,7 +1757,20 @@ var forestPreset = {
1348
1757
  fontWeight,
1349
1758
  display,
1350
1759
  container,
1351
- widths
1760
+ widths,
1761
+ text,
1762
+ bg,
1763
+ fg,
1764
+ border,
1765
+ buttonColors,
1766
+ avatarColors,
1767
+ breadcrumbColors,
1768
+ iconColors,
1769
+ navColors,
1770
+ sliderColors,
1771
+ toggleColors,
1772
+ chartColors,
1773
+ alpha
1352
1774
  }
1353
1775
  }
1354
1776
  }
@@ -1379,6 +1801,6 @@ var forestThemeOptions = {
1379
1801
  };
1380
1802
  var forestTheme = createTheme(forestThemeOptions);
1381
1803
 
1382
- export { buildTheme, buildThemeOptions, colors, components, container, display, focusRings, fontFamily, fontSize, fontWeight, forestPreset, forestTheme, forestThemeOptions, getAvailablePresets, getPreset, lineHeight, palette, radius, registerPreset, shadows, shadows2, spacing, typography, widths };
1383
- //# sourceMappingURL=chunk-5C6DAZT2.mjs.map
1384
- //# sourceMappingURL=chunk-5C6DAZT2.mjs.map
1804
+ export { alpha, avatarColors, bg, border, breadcrumbColors, buildTheme, buildThemeOptions, buttonColors, chartColors, colors, components, container, display, fg, focusRings, fontFamily, fontSize, fontWeight, forestPreset, forestTheme, forestThemeOptions, getAvailablePresets, getPreset, iconColors, lineHeight, navColors, palette, radius, registerPreset, shadows, shadows2, sliderColors, spacing, text, toggleColors, typography, widths };
1805
+ //# sourceMappingURL=chunk-C3OBHPIS.mjs.map
1806
+ //# sourceMappingURL=chunk-C3OBHPIS.mjs.map