@casinogate/ui 1.4.0 → 1.5.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.
Files changed (121) hide show
  1. package/README.md +4 -9
  2. package/dist/assets/css/root.css +403 -21
  3. package/dist/assets/css/theme.css +38 -0
  4. package/dist/components/badge/badge.stories.svelte +81 -0
  5. package/dist/components/badge/badge.stories.svelte.d.ts +19 -0
  6. package/dist/components/badge/badge.svelte +30 -0
  7. package/dist/components/badge/badge.svelte.d.ts +4 -0
  8. package/dist/components/badge/exports.d.ts +1 -0
  9. package/dist/components/badge/exports.js +1 -0
  10. package/dist/components/badge/index.d.ts +2 -0
  11. package/dist/components/badge/index.js +1 -0
  12. package/dist/components/badge/styles.d.ts +99 -0
  13. package/dist/components/badge/styles.js +126 -0
  14. package/dist/components/badge/types.d.ts +8 -0
  15. package/dist/components/badge/types.js +1 -0
  16. package/dist/components/breadcrumb/breadcrumb.stories.svelte +60 -0
  17. package/dist/components/breadcrumb/breadcrumb.stories.svelte.d.ts +19 -0
  18. package/dist/components/breadcrumb/breadcrumb.svelte +32 -0
  19. package/dist/components/breadcrumb/breadcrumb.svelte.d.ts +4 -0
  20. package/dist/components/breadcrumb/components/breadcrumb.item.svelte +16 -0
  21. package/dist/components/breadcrumb/components/breadcrumb.item.svelte.d.ts +4 -0
  22. package/dist/components/breadcrumb/components/breadcrumb.link.svelte +29 -0
  23. package/dist/components/breadcrumb/components/breadcrumb.link.svelte.d.ts +4 -0
  24. package/dist/components/breadcrumb/components/breadcrumb.list.svelte +16 -0
  25. package/dist/components/breadcrumb/components/breadcrumb.list.svelte.d.ts +4 -0
  26. package/dist/components/breadcrumb/components/breadcrumb.page.svelte +19 -0
  27. package/dist/components/breadcrumb/components/breadcrumb.page.svelte.d.ts +4 -0
  28. package/dist/components/breadcrumb/components/breadcrumb.root.svelte +22 -0
  29. package/dist/components/breadcrumb/components/breadcrumb.root.svelte.d.ts +4 -0
  30. package/dist/components/breadcrumb/components/breadcrumb.separator.svelte +24 -0
  31. package/dist/components/breadcrumb/components/breadcrumb.separator.svelte.d.ts +4 -0
  32. package/dist/components/breadcrumb/exports-primitive.d.ts +6 -0
  33. package/dist/components/breadcrumb/exports-primitive.js +6 -0
  34. package/dist/components/breadcrumb/exports.d.ts +1 -0
  35. package/dist/components/breadcrumb/exports.js +1 -0
  36. package/dist/components/breadcrumb/index.d.ts +3 -0
  37. package/dist/components/breadcrumb/index.js +2 -0
  38. package/dist/components/breadcrumb/styles.d.ts +62 -0
  39. package/dist/components/breadcrumb/styles.js +18 -0
  40. package/dist/components/breadcrumb/types.d.ts +19 -0
  41. package/dist/components/breadcrumb/types.js +1 -0
  42. package/dist/components/icons/caret-down.svelte +3 -3
  43. package/dist/components/icons/caret-up.svelte +3 -3
  44. package/dist/components/icons/check.svelte +3 -3
  45. package/dist/components/icons/checkmark.svelte +12 -0
  46. package/dist/components/icons/checkmark.svelte.d.ts +3 -0
  47. package/dist/components/icons/chevron-down.svelte +3 -3
  48. package/dist/components/icons/chevron-left.svelte +3 -3
  49. package/dist/components/icons/chevron-right.svelte +3 -3
  50. package/dist/components/icons/chevron-small-down.svelte +3 -3
  51. package/dist/components/icons/chevron-small-left.svelte +3 -3
  52. package/dist/components/icons/chevron-small-right.svelte +3 -3
  53. package/dist/components/icons/chevron-small-up.svelte +3 -3
  54. package/dist/components/icons/chevron-up.svelte +3 -3
  55. package/dist/components/icons/dots.svelte +5 -5
  56. package/dist/components/icons/error.svelte +3 -3
  57. package/dist/components/icons/exports.d.ts +2 -0
  58. package/dist/components/icons/exports.js +2 -0
  59. package/dist/components/icons/eye-crossed.svelte +3 -3
  60. package/dist/components/icons/eye.svelte +3 -3
  61. package/dist/components/icons/info.svelte +3 -3
  62. package/dist/components/icons/minus.svelte +3 -3
  63. package/dist/components/icons/sidebar-toggle.svelte +4 -4
  64. package/dist/components/icons/slash.svelte +9 -0
  65. package/dist/components/icons/slash.svelte.d.ts +3 -0
  66. package/dist/components/icons/sort.svelte +4 -4
  67. package/dist/components/icons/spinner.svelte +3 -3
  68. package/dist/components/icons/success.svelte +3 -3
  69. package/dist/components/icons/warning.svelte +3 -3
  70. package/dist/components/index.d.ts +2 -0
  71. package/dist/components/index.js +2 -0
  72. package/dist/components/navigation/components/navigation.content.svelte +2 -2
  73. package/dist/components/navigation/components/navigation.root.svelte +2 -0
  74. package/dist/components/navigation/components/navigation.sub-content.svelte +12 -5
  75. package/dist/components/navigation/components/navigation.svelte.d.ts +2 -0
  76. package/dist/components/navigation/navigation.stories.svelte +5 -5
  77. package/dist/components/navigation/styles.js +1 -2
  78. package/dist/components/navigation/types.d.ts +7 -1
  79. package/dist/components/popover/styles.d.ts +3 -3
  80. package/dist/components/popover/styles.js +1 -1
  81. package/dist/components/select/components/select.content.svelte +31 -0
  82. package/dist/components/select/components/select.content.svelte.d.ts +3 -25
  83. package/dist/components/select/components/select.group-heading.svelte +19 -0
  84. package/dist/components/select/components/select.group-heading.svelte.d.ts +4 -0
  85. package/dist/components/select/components/select.group.svelte +8 -0
  86. package/dist/components/select/components/select.group.svelte.d.ts +4 -0
  87. package/dist/components/select/components/select.item.svelte +38 -0
  88. package/dist/components/select/components/select.item.svelte.d.ts +3 -25
  89. package/dist/components/select/components/select.portal.svelte +10 -0
  90. package/dist/components/select/components/select.portal.svelte.d.ts +3 -0
  91. package/dist/components/select/components/select.trigger.svelte +28 -27
  92. package/dist/components/select/components/select.viewport.svelte +24 -0
  93. package/dist/components/select/components/select.viewport.svelte.d.ts +3 -25
  94. package/dist/components/select/exports-primitive.d.ts +6 -0
  95. package/dist/components/select/exports-primitive.js +6 -0
  96. package/dist/components/select/exports.d.ts +1 -0
  97. package/dist/components/select/exports.js +1 -0
  98. package/dist/components/select/index.d.ts +2 -1
  99. package/dist/components/select/index.js +1 -0
  100. package/dist/components/select/select.stories.svelte +178 -15
  101. package/dist/components/select/select.stories.svelte.d.ts +3 -17
  102. package/dist/components/select/select.svelte +141 -0
  103. package/dist/components/select/select.svelte.d.ts +4 -0
  104. package/dist/components/select/styles.d.ts +15 -3
  105. package/dist/components/select/styles.js +24 -8
  106. package/dist/components/select/types.d.ts +42 -4
  107. package/dist/components/textarea/exports.d.ts +1 -0
  108. package/dist/components/textarea/exports.js +1 -0
  109. package/dist/components/textarea/index.d.ts +2 -0
  110. package/dist/components/textarea/index.js +1 -0
  111. package/dist/components/textarea/styles.d.ts +54 -0
  112. package/dist/components/textarea/styles.js +39 -0
  113. package/dist/components/textarea/textarea.stories.svelte +36 -0
  114. package/dist/components/textarea/textarea.stories.svelte.d.ts +19 -0
  115. package/dist/components/textarea/textarea.svelte +22 -0
  116. package/dist/components/textarea/textarea.svelte.d.ts +4 -0
  117. package/dist/components/textarea/types.d.ts +6 -0
  118. package/dist/components/textarea/types.js +1 -0
  119. package/dist/internal/types/html-attributes.d.ts +2 -1
  120. package/dist/internal/utils/tailwindcss.js +16 -0
  121. package/package.json +2 -1
package/README.md CHANGED
@@ -872,9 +872,12 @@ packages/cg-ui/
872
872
 
873
873
  ```text
874
874
  src/components/my-component/
875
+ ├── components/ # Primitive parts (if multi-part component)
875
876
  ├── my-component.svelte # Main component
876
877
  ├── my-component.stories.svelte # Storybook stories
877
- ├── index.ts # Exports
878
+ ├── exports.ts # Exports presets
879
+ ├── exports-primitive.ts # Exports primitives
880
+ ├── index.ts # Public API exports
878
881
  └── README.md # Documentation (optional)
879
882
  ```
880
883
 
@@ -891,13 +894,6 @@ packages/cg-ui/
891
894
 
892
895
  ### Component Guidelines
893
896
 
894
- - ✅ **Accessibility First**: Use bits-ui primitives when available
895
- - ✅ **Type Safety**: Provide comprehensive TypeScript definitions
896
- - ✅ **CSS Variables**: Use semantic variables, not hardcoded colors
897
- - ✅ **Documentation**: Add Storybook stories with examples
898
- - ✅ **Consistency**: Follow patterns from existing components
899
- - ✅ **Testing**: (Coming soon) Write unit and integration tests
900
-
901
897
  ### Adding New CSS Variables
902
898
 
903
899
  1. **Add to palette** (`:root` in `theme.css`)
@@ -960,7 +956,6 @@ ISC
960
956
 
961
957
  - **Questions?** Check the [Storybook documentation](https://static.casinogate.dev/components/master/)
962
958
  - **Issues?** Contact the UI team or file an issue
963
- - **Feature Requests?** Submit a proposal through the team channels
964
959
 
965
960
  ---
966
961
 
@@ -212,6 +212,12 @@
212
212
  .cgui\:left-1\/2 {
213
213
  left: calc(1/2 * 100%);
214
214
  }
215
+ .cgui\:z-\(--cg-ui-z-index-popover\) {
216
+ z-index: var(--cg-ui-z-index-popover);
217
+ }
218
+ .cgui\:z-\(--cg-ui-z-index-select\) {
219
+ z-index: var(--cg-ui-z-index-select);
220
+ }
215
221
  .cgui\:z-1 {
216
222
  z-index: 1;
217
223
  }
@@ -303,6 +309,9 @@
303
309
  .cgui\:h-\(--app-shell-header-height\) {
304
310
  height: var(--app-shell-header-height);
305
311
  }
312
+ .cgui\:h-\(--bits-select-anchor-height\) {
313
+ height: var(--bits-select-anchor-height);
314
+ }
306
315
  .cgui\:h-3 {
307
316
  height: calc(var(--cgui-spacing) * 3);
308
317
  }
@@ -360,6 +369,9 @@
360
369
  .cgui\:h-full {
361
370
  height: 100%;
362
371
  }
372
+ .cgui\:max-h-\(--bits-select-content-available-height\) {
373
+ max-height: var(--bits-select-content-available-height);
374
+ }
363
375
  .cgui\:min-h-7\.5 {
364
376
  min-height: calc(var(--cgui-spacing) * 7.5);
365
377
  }
@@ -432,6 +444,9 @@
432
444
  .cgui\:max-w-100 {
433
445
  max-width: calc(var(--cgui-spacing) * 100);
434
446
  }
447
+ .cgui\:min-w-\(--bits-select-anchor-width\) {
448
+ min-width: var(--bits-select-anchor-width);
449
+ }
435
450
  .cgui\:min-w-0 {
436
451
  min-width: calc(var(--cgui-spacing) * 0);
437
452
  }
@@ -453,6 +468,9 @@
453
468
  .cgui\:grow {
454
469
  flex-grow: 1;
455
470
  }
471
+ .cgui\:origin-\(--bits-select-content-transform-origin\) {
472
+ transform-origin: var(--bits-select-content-transform-origin);
473
+ }
456
474
  .cgui\:-translate-x-1\/2 {
457
475
  --tw-translate-x: calc(calc(1/2 * 100%) * -1);
458
476
  translate: var(--tw-translate-x) var(--tw-translate-y);
@@ -477,12 +495,27 @@
477
495
  .cgui\:cursor-col-resize {
478
496
  cursor: col-resize;
479
497
  }
498
+ .cgui\:cursor-default {
499
+ cursor: default;
500
+ }
501
+ .cgui\:cursor-not-allowed {
502
+ cursor: not-allowed;
503
+ }
480
504
  .cgui\:cursor-pointer {
481
505
  cursor: pointer;
482
506
  }
483
507
  .cgui\:touch-none {
484
508
  touch-action: none;
485
509
  }
510
+ .cgui\:resize-none {
511
+ resize: none;
512
+ }
513
+ .cgui\:resize-y {
514
+ resize: vertical;
515
+ }
516
+ .cgui\:scroll-my-1 {
517
+ scroll-margin-block: calc(var(--cgui-spacing) * 1);
518
+ }
486
519
  .cgui\:flex-col {
487
520
  flex-direction: column;
488
521
  }
@@ -501,15 +534,15 @@
501
534
  .cgui\:items-stretch {
502
535
  align-items: stretch;
503
536
  }
537
+ .cgui\:justify-between {
538
+ justify-content: space-between;
539
+ }
504
540
  .cgui\:justify-center {
505
541
  justify-content: center;
506
542
  }
507
543
  .cgui\:justify-end {
508
544
  justify-content: flex-end;
509
545
  }
510
- .cgui\:justify-start {
511
- justify-content: flex-start;
512
- }
513
546
  .cgui\:gap-1 {
514
547
  gap: calc(var(--cgui-spacing) * 1);
515
548
  }
@@ -545,12 +578,20 @@
545
578
  .cgui\:self-stretch {
546
579
  align-self: stretch;
547
580
  }
581
+ .cgui\:truncate {
582
+ overflow: hidden;
583
+ text-overflow: ellipsis;
584
+ white-space: nowrap;
585
+ }
548
586
  .cgui\:overflow-auto {
549
587
  overflow: auto;
550
588
  }
551
589
  .cgui\:overflow-hidden {
552
590
  overflow: hidden;
553
591
  }
592
+ .cgui\:overflow-x-hidden {
593
+ overflow-x: hidden;
594
+ }
554
595
  .cgui\:overflow-y-auto {
555
596
  overflow-y: auto;
556
597
  }
@@ -610,6 +651,9 @@
610
651
  .cgui\:border-stroke-divider {
611
652
  border-color: var(--cg-ui-palette-neutral-20);
612
653
  }
654
+ .cgui\:border-stroke-error {
655
+ border-color: var(--cg-ui-palette-system-error-100);
656
+ }
613
657
  .cgui\:border-stroke-primary {
614
658
  border-color: var(--cg-ui-palette-primary-80);
615
659
  }
@@ -652,6 +696,30 @@
652
696
  .cgui\:bg-primary-80 {
653
697
  background-color: var(--cg-ui-palette-primary-80);
654
698
  }
699
+ .cgui\:bg-state-error {
700
+ background-color: var(--cg-ui-palette-system-error-100);
701
+ }
702
+ .cgui\:bg-state-error-light {
703
+ background-color: var(--cg-ui-palette-system-error-10);
704
+ }
705
+ .cgui\:bg-state-info {
706
+ background-color: var(--cg-ui-palette-system-info-100);
707
+ }
708
+ .cgui\:bg-state-info-light {
709
+ background-color: var(--cg-ui-palette-system-info-10);
710
+ }
711
+ .cgui\:bg-state-success {
712
+ background-color: var(--cg-ui-palette-system-success-100);
713
+ }
714
+ .cgui\:bg-state-success-light {
715
+ background-color: var(--cg-ui-palette-system-success-10);
716
+ }
717
+ .cgui\:bg-state-warning {
718
+ background-color: var(--cg-ui-palette-system-warning-100);
719
+ }
720
+ .cgui\:bg-state-warning-light {
721
+ background-color: var(--cg-ui-palette-system-warning-10);
722
+ }
655
723
  .cgui\:bg-stroke-divider {
656
724
  background-color: var(--cg-ui-palette-neutral-20);
657
725
  }
@@ -661,6 +729,12 @@
661
729
  .cgui\:bg-surface-light {
662
730
  background-color: var(--cg-ui-palette-neutral-20);
663
731
  }
732
+ .cgui\:bg-surface-light\/50 {
733
+ background-color: var(--cg-ui-palette-neutral-20);
734
+ @supports (color: color-mix(in lab, red, red)) {
735
+ background-color: color-mix(in oklab, var(--cg-ui-palette-neutral-20) 50%, transparent);
736
+ }
737
+ }
664
738
  .cgui\:bg-surface-lightest {
665
739
  background-color: var(--cg-ui-palette-neutral-10);
666
740
  }
@@ -721,6 +795,9 @@
721
795
  .cgui\:p-4 {
722
796
  padding: calc(var(--cgui-spacing) * 4);
723
797
  }
798
+ .cgui\:px-1\.5 {
799
+ padding-inline: calc(var(--cgui-spacing) * 1.5);
800
+ }
724
801
  .cgui\:px-2 {
725
802
  padding-inline: calc(var(--cgui-spacing) * 2);
726
803
  }
@@ -730,12 +807,18 @@
730
807
  .cgui\:px-3 {
731
808
  padding-inline: calc(var(--cgui-spacing) * 3);
732
809
  }
810
+ .cgui\:px-3\.5 {
811
+ padding-inline: calc(var(--cgui-spacing) * 3.5);
812
+ }
733
813
  .cgui\:px-4 {
734
814
  padding-inline: calc(var(--cgui-spacing) * 4);
735
815
  }
736
816
  .cgui\:px-6 {
737
817
  padding-inline: calc(var(--cgui-spacing) * 6);
738
818
  }
819
+ .cgui\:py-0\.5 {
820
+ padding-block: calc(var(--cgui-spacing) * 0.5);
821
+ }
739
822
  .cgui\:py-1 {
740
823
  padding-block: calc(var(--cgui-spacing) * 1);
741
824
  }
@@ -806,6 +889,10 @@
806
889
  font-size: var(--cg-ui-fz-caption-2);
807
890
  line-height: var(--tw-leading, var(--cg-ui-lh-caption-2));
808
891
  }
892
+ .cgui\:text-heading-2 {
893
+ font-size: var(--cg-ui-fz-heading-2);
894
+ line-height: var(--tw-leading, var(--cg-ui-lh-heading-2));
895
+ }
809
896
  .cgui\:text-sm {
810
897
  font-size: var(--cgui-text-sm);
811
898
  line-height: var(--tw-leading, var(--cgui-text-sm--line-height));
@@ -843,6 +930,12 @@
843
930
  .cgui\:text-fg-semilight {
844
931
  color: var(--cg-ui-palette-neutral-40);
845
932
  }
933
+ .cgui\:text-fg-success {
934
+ color: var(--cg-ui-palette-system-success-100);
935
+ }
936
+ .cgui\:text-fg-warning {
937
+ color: var(--cg-ui-palette-system-warning-100);
938
+ }
846
939
  .cgui\:text-fg-white {
847
940
  color: var(--cg-ui-palette-neutral-0);
848
941
  }
@@ -891,13 +984,30 @@
891
984
  --tw-shadow: var(--cg-ui-shadow-segment-item);
892
985
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
893
986
  }
987
+ .cgui\:shadow-select {
988
+ --tw-shadow: var(--cg-ui-shadow-select);
989
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
990
+ }
894
991
  .cgui\:shadow-toast {
895
992
  --tw-shadow: var(--cg-ui-shadow-toast);
896
993
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
897
994
  }
995
+ .cgui\:outline-hidden {
996
+ --tw-outline-style: none;
997
+ outline-style: none;
998
+ @media (forced-colors: active) {
999
+ outline: 2px solid transparent;
1000
+ outline-offset: 2px;
1001
+ }
1002
+ }
898
1003
  .cgui\:outline-stroke-focus {
899
1004
  outline-color: var(--cg-ui-palette-primary-60);
900
1005
  }
1006
+ .cgui\:transition-\[opacity\] {
1007
+ transition-property: opacity;
1008
+ transition-timing-function: var(--tw-ease, var(--cgui-default-transition-timing-function));
1009
+ transition-duration: var(--tw-duration, var(--cgui-default-transition-duration));
1010
+ }
901
1011
  .cgui\:transition-all {
902
1012
  transition-property: all;
903
1013
  transition-timing-function: var(--tw-ease, var(--cgui-default-transition-timing-function));
@@ -931,12 +1041,24 @@
931
1041
  .cgui\:scrollbar-thumb-rounded-full {
932
1042
  --scrollbar-thumb-radius: 9999px;
933
1043
  }
1044
+ .cgui\:scrollbar-thumb-rounded-md {
1045
+ --scrollbar-thumb-radius: calc(var(--cg-ui-number-md) * 1px);
1046
+ }
934
1047
  .cgui\:scrollbar-thumb-surface-regular {
935
1048
  --scrollbar-thumb: var(--cg-ui-palette-neutral-50);
936
1049
  }
1050
+ .cgui\:scrollbar-thumb-surface-regular\/40 {
1051
+ --scrollbar-thumb: var(--cg-ui-palette-neutral-50);
1052
+ @supports (color: color-mix(in lab, red, red)) {
1053
+ --scrollbar-thumb: color-mix(in oklab, var(--cg-ui-palette-neutral-50) 40%, transparent);
1054
+ }
1055
+ }
937
1056
  .cgui\:scrollbar-track-rounded-full {
938
1057
  --scrollbar-track-radius: 9999px;
939
1058
  }
1059
+ .cgui\:scrollbar-track-rounded-md {
1060
+ --scrollbar-track-radius: calc(var(--cg-ui-number-md) * 1px);
1061
+ }
940
1062
  .cgui\:scrollbar-track-surface-lightest {
941
1063
  --scrollbar-track: var(--cg-ui-palette-neutral-10);
942
1064
  }
@@ -979,6 +1101,11 @@
979
1101
  padding-block: calc(var(--cgui-spacing) * 3);
980
1102
  }
981
1103
  }
1104
+ .cgui\:group-data-\[state\=open\]\/select-trigger\:-rotate-180 {
1105
+ &:is(:where(.cgui\:group\/select-trigger)[data-state="open"] *) {
1106
+ rotate: calc(180deg * -1);
1107
+ }
1108
+ }
982
1109
  .cgui\:placeholder\:text-fg-regular {
983
1110
  &::placeholder {
984
1111
  color: var(--cg-ui-palette-neutral-50);
@@ -1071,6 +1198,13 @@
1071
1198
  }
1072
1199
  }
1073
1200
  }
1201
+ .cgui\:hover\:text-fg-darkest {
1202
+ &:hover {
1203
+ @media (hover: hover) {
1204
+ color: var(--cg-ui-palette-neutral-100);
1205
+ }
1206
+ }
1207
+ }
1074
1208
  .cgui\:hover\:text-primary-60 {
1075
1209
  &:hover {
1076
1210
  @media (hover: hover) {
@@ -1287,38 +1421,60 @@
1287
1421
  color: var(--cg-ui-palette-primary-80);
1288
1422
  }
1289
1423
  }
1290
- .cgui\:data-\[slot\=end-chevron\]\:right-0 {
1291
- &[data-slot="end-chevron"] {
1292
- right: calc(var(--cgui-spacing) * 0);
1424
+ .cgui\:data-\[side\=bottom\]\:translate-y-1 {
1425
+ &[data-side="bottom"] {
1426
+ --tw-translate-y: calc(var(--cgui-spacing) * 1);
1427
+ translate: var(--tw-translate-x) var(--tw-translate-y);
1293
1428
  }
1294
1429
  }
1295
- .cgui\:data-\[slot\=end-chevron\]\:right-2 {
1296
- &[data-slot="end-chevron"] {
1297
- right: calc(var(--cgui-spacing) * 2);
1430
+ .cgui\:data-\[side\=bottom\]\:slide-in-from-top-2 {
1431
+ &[data-side="bottom"] {
1432
+ --tw-enter-translate-y: calc(2*var(--spacing)*-1);
1298
1433
  }
1299
1434
  }
1300
- .cgui\:data-\[slot\=end-chevron\]\:-translate-x-1\/2 {
1301
- &[data-slot="end-chevron"] {
1302
- --tw-translate-x: calc(calc(1/2 * 100%) * -1);
1435
+ .cgui\:data-\[side\=left\]\:-translate-x-1 {
1436
+ &[data-side="left"] {
1437
+ --tw-translate-x: calc(var(--cgui-spacing) * -1);
1303
1438
  translate: var(--tw-translate-x) var(--tw-translate-y);
1304
1439
  }
1305
1440
  }
1306
- .cgui\:data-\[slot\=start-chevron\]\:left-0 {
1307
- &[data-slot="start-chevron"] {
1308
- left: calc(var(--cgui-spacing) * 0);
1441
+ .cgui\:data-\[side\=left\]\:slide-in-from-right-2 {
1442
+ &[data-side="left"] {
1443
+ --tw-enter-translate-x: calc(2*var(--spacing));
1309
1444
  }
1310
1445
  }
1311
- .cgui\:data-\[slot\=start-chevron\]\:left-2 {
1312
- &[data-slot="start-chevron"] {
1313
- left: calc(var(--cgui-spacing) * 2);
1446
+ .cgui\:data-\[side\=right\]\:translate-x-1 {
1447
+ &[data-side="right"] {
1448
+ --tw-translate-x: calc(var(--cgui-spacing) * 1);
1449
+ translate: var(--tw-translate-x) var(--tw-translate-y);
1314
1450
  }
1315
1451
  }
1316
- .cgui\:data-\[slot\=start-chevron\]\:translate-x-1\/2 {
1317
- &[data-slot="start-chevron"] {
1318
- --tw-translate-x: calc(1/2 * 100%);
1452
+ .cgui\:data-\[side\=right\]\:slide-in-from-left-2 {
1453
+ &[data-side="right"] {
1454
+ --tw-enter-translate-x: calc(2*var(--spacing)*-1);
1455
+ }
1456
+ }
1457
+ .cgui\:data-\[side\=top\]\:-translate-y-1 {
1458
+ &[data-side="top"] {
1459
+ --tw-translate-y: calc(var(--cgui-spacing) * -1);
1319
1460
  translate: var(--tw-translate-x) var(--tw-translate-y);
1320
1461
  }
1321
1462
  }
1463
+ .cgui\:data-\[side\=top\]\:slide-in-from-bottom-2 {
1464
+ &[data-side="top"] {
1465
+ --tw-enter-translate-y: calc(2*var(--spacing));
1466
+ }
1467
+ }
1468
+ .cgui\:data-\[slot\=end-chevron\]\:right-2 {
1469
+ &[data-slot="end-chevron"] {
1470
+ right: calc(var(--cgui-spacing) * 2);
1471
+ }
1472
+ }
1473
+ .cgui\:data-\[slot\=start-chevron\]\:left-2 {
1474
+ &[data-slot="start-chevron"] {
1475
+ left: calc(var(--cgui-spacing) * 2);
1476
+ }
1477
+ }
1322
1478
  .cgui\:data-\[start-chevron\]\:left-2\.5 {
1323
1479
  &[data-start-chevron] {
1324
1480
  left: calc(var(--cgui-spacing) * 2.5);
@@ -1377,11 +1533,45 @@
1377
1533
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1378
1534
  }
1379
1535
  }
1536
+ .cgui\:data-\[state\=closed\]\:animate-out {
1537
+ &[data-state="closed"] {
1538
+ animation: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
1539
+ }
1540
+ }
1541
+ .cgui\:data-\[state\=closed\]\:fade-out-0 {
1542
+ &[data-state="closed"] {
1543
+ --tw-exit-opacity: calc(0/100);
1544
+ --tw-exit-opacity: 0;
1545
+ }
1546
+ }
1547
+ .cgui\:data-\[state\=closed\]\:zoom-out-95 {
1548
+ &[data-state="closed"] {
1549
+ --tw-exit-scale: calc(95*1%);
1550
+ --tw-exit-scale: .95;
1551
+ }
1552
+ }
1380
1553
  .cgui\:data-\[state\=indeterminate\]\:border-surface-primary {
1381
1554
  &[data-state="indeterminate"] {
1382
1555
  border-color: var(--cg-ui-palette-primary-80);
1383
1556
  }
1384
1557
  }
1558
+ .cgui\:data-\[state\=open\]\:animate-in {
1559
+ &[data-state="open"] {
1560
+ animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
1561
+ }
1562
+ }
1563
+ .cgui\:data-\[state\=open\]\:fade-in-0 {
1564
+ &[data-state="open"] {
1565
+ --tw-enter-opacity: calc(0/100);
1566
+ --tw-enter-opacity: 0;
1567
+ }
1568
+ }
1569
+ .cgui\:data-\[state\=open\]\:zoom-in-95 {
1570
+ &[data-state="open"] {
1571
+ --tw-enter-scale: calc(95*1%);
1572
+ --tw-enter-scale: .95;
1573
+ }
1574
+ }
1385
1575
  .cgui\:data-\[sub-content\=\"false\"\]\:group-data-\[compact\=true\]\/navigation\:justify-center {
1386
1576
  &[data-sub-content="false"] {
1387
1577
  &:is(:where(.cgui\:group\/navigation)[data-compact="true"] *) {
@@ -1389,6 +1579,14 @@
1389
1579
  }
1390
1580
  }
1391
1581
  }
1582
+ .cgui\:scrollbar-hover\:scrollbar-thumb-surface-regular\/60 {
1583
+ &::-webkit-scrollbar-thumb:hover {
1584
+ --scrollbar-thumb: var(--cg-ui-palette-neutral-50);
1585
+ @supports (color: color-mix(in lab, red, red)) {
1586
+ --scrollbar-thumb: color-mix(in oklab, var(--cg-ui-palette-neutral-50) 60%, transparent);
1587
+ }
1588
+ }
1589
+ }
1392
1590
  .cgui\:\[\&_\[data-slot\=\"icon\"\]\]\:size-6 {
1393
1591
  & [data-slot="icon"] {
1394
1592
  width: calc(var(--cgui-spacing) * 6);
@@ -1463,6 +1661,16 @@
1463
1661
  }
1464
1662
  }
1465
1663
  }
1664
+ .cgui\:\[\&_svg\]\:pointer-events-none {
1665
+ & svg {
1666
+ pointer-events: none;
1667
+ }
1668
+ }
1669
+ .cgui\:\[\&_svg\]\:shrink-0 {
1670
+ & svg {
1671
+ flex-shrink: 0;
1672
+ }
1673
+ }
1466
1674
  .cgui\:\[\&_tr\]\:h-10 {
1467
1675
  & tr {
1468
1676
  height: calc(var(--cgui-spacing) * 10);
@@ -1552,6 +1760,131 @@
1552
1760
  flex: 1;
1553
1761
  }
1554
1762
  }
1763
+ .cgui\:\[\&\>svg\]\:pointer-events-none {
1764
+ &>svg {
1765
+ pointer-events: none;
1766
+ }
1767
+ }
1768
+ .cgui\:\[\&\>svg\]\:size-3\.5 {
1769
+ &>svg {
1770
+ width: calc(var(--cgui-spacing) * 3.5);
1771
+ height: calc(var(--cgui-spacing) * 3.5);
1772
+ }
1773
+ }
1774
+ .cgui\:\[\&\>svg\]\:size-5 {
1775
+ &>svg {
1776
+ width: calc(var(--cgui-spacing) * 5);
1777
+ height: calc(var(--cgui-spacing) * 5);
1778
+ }
1779
+ }
1780
+ .cgui\:\[\&\>svg\]\:size-5\.5 {
1781
+ &>svg {
1782
+ width: calc(var(--cgui-spacing) * 5.5);
1783
+ height: calc(var(--cgui-spacing) * 5.5);
1784
+ }
1785
+ }
1786
+ .cgui\:\[\&\>svg\]\:size-6 {
1787
+ &>svg {
1788
+ width: calc(var(--cgui-spacing) * 6);
1789
+ height: calc(var(--cgui-spacing) * 6);
1790
+ }
1791
+ }
1792
+ .cgui\:\[\&\>svg\]\:size-6\.5 {
1793
+ &>svg {
1794
+ width: calc(var(--cgui-spacing) * 6.5);
1795
+ height: calc(var(--cgui-spacing) * 6.5);
1796
+ }
1797
+ }
1798
+ .cgui\:\[\&\>svg\]\:size-7 {
1799
+ &>svg {
1800
+ width: calc(var(--cgui-spacing) * 7);
1801
+ height: calc(var(--cgui-spacing) * 7);
1802
+ }
1803
+ }
1804
+ }
1805
+ @property --tw-animation-delay {
1806
+ syntax: "*";
1807
+ inherits: false;
1808
+ initial-value: 0s;
1809
+ }
1810
+ @property --tw-animation-direction {
1811
+ syntax: "*";
1812
+ inherits: false;
1813
+ initial-value: normal;
1814
+ }
1815
+ @property --tw-animation-duration {
1816
+ syntax: "*";
1817
+ inherits: false;
1818
+ }
1819
+ @property --tw-animation-fill-mode {
1820
+ syntax: "*";
1821
+ inherits: false;
1822
+ initial-value: none;
1823
+ }
1824
+ @property --tw-animation-iteration-count {
1825
+ syntax: "*";
1826
+ inherits: false;
1827
+ initial-value: 1;
1828
+ }
1829
+ @property --tw-enter-blur {
1830
+ syntax: "*";
1831
+ inherits: false;
1832
+ initial-value: 0;
1833
+ }
1834
+ @property --tw-enter-opacity {
1835
+ syntax: "*";
1836
+ inherits: false;
1837
+ initial-value: 1;
1838
+ }
1839
+ @property --tw-enter-rotate {
1840
+ syntax: "*";
1841
+ inherits: false;
1842
+ initial-value: 0;
1843
+ }
1844
+ @property --tw-enter-scale {
1845
+ syntax: "*";
1846
+ inherits: false;
1847
+ initial-value: 1;
1848
+ }
1849
+ @property --tw-enter-translate-x {
1850
+ syntax: "*";
1851
+ inherits: false;
1852
+ initial-value: 0;
1853
+ }
1854
+ @property --tw-enter-translate-y {
1855
+ syntax: "*";
1856
+ inherits: false;
1857
+ initial-value: 0;
1858
+ }
1859
+ @property --tw-exit-blur {
1860
+ syntax: "*";
1861
+ inherits: false;
1862
+ initial-value: 0;
1863
+ }
1864
+ @property --tw-exit-opacity {
1865
+ syntax: "*";
1866
+ inherits: false;
1867
+ initial-value: 1;
1868
+ }
1869
+ @property --tw-exit-rotate {
1870
+ syntax: "*";
1871
+ inherits: false;
1872
+ initial-value: 0;
1873
+ }
1874
+ @property --tw-exit-scale {
1875
+ syntax: "*";
1876
+ inherits: false;
1877
+ initial-value: 1;
1878
+ }
1879
+ @property --tw-exit-translate-x {
1880
+ syntax: "*";
1881
+ inherits: false;
1882
+ initial-value: 0;
1883
+ }
1884
+ @property --tw-exit-translate-y {
1885
+ syntax: "*";
1886
+ inherits: false;
1887
+ initial-value: 0;
1555
1888
  }
1556
1889
  :root {
1557
1890
  --cg-ui-primary-hue: 220;
@@ -1596,6 +1929,7 @@
1596
1929
  --cg-ui-shadow-switch-thumb: 0px 1px 1px 0px hsla(0, 0%, 0%, 0.25);
1597
1930
  --cg-ui-shadow-segment-item: 0px 0px 4px 0px hsla(0, 0%, 0%, 0.1);
1598
1931
  --cg-ui-shadow-popover: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
1932
+ --cg-ui-shadow-select: 0px 2px 8px 0px hsla(0, 0%, 0%, 0.25);
1599
1933
  --cg-ui-fz-base: 16;
1600
1934
  --cg-ui-fz-heading: calc(16 / var(--cg-ui-fz-base) * 1rem);
1601
1935
  --cg-ui-lh-heading: calc(22 / var(--cg-ui-fz-base) * 1rem);
@@ -1609,6 +1943,23 @@
1609
1943
  --cg-ui-lh-caption: calc(18 / var(--cg-ui-fz-base) * 1rem);
1610
1944
  --cg-ui-fz-caption-2: calc(12 / var(--cg-ui-fz-base) * 1rem);
1611
1945
  --cg-ui-lh-caption-2: calc(16 / var(--cg-ui-fz-base) * 1rem);
1946
+ --cg-ui-z-index-base: 0;
1947
+ --cg-ui-z-index-content: 1;
1948
+ --cg-ui-z-index-sticky: 10;
1949
+ --cg-ui-z-index-fixed: 20;
1950
+ --cg-ui-z-index-dropdown: 50;
1951
+ --cg-ui-z-index-select: 50;
1952
+ --cg-ui-z-index-popover: 100;
1953
+ --cg-ui-z-index-collapsible: 100;
1954
+ --cg-ui-z-index-tooltip: 200;
1955
+ --cg-ui-z-index-navigation: 250;
1956
+ --cg-ui-z-index-modal: 300;
1957
+ --cg-ui-z-index-dialog: 300;
1958
+ --cg-ui-z-index-backdrop: 300;
1959
+ --cg-ui-z-index-toast: 400;
1960
+ --cg-ui-z-index-notification: 400;
1961
+ --cg-ui-z-index-critical: 500;
1962
+ --cg-ui-z-index-loading: 500;
1612
1963
  }
1613
1964
  .dark, [data-theme='dark'] {
1614
1965
  --cg-ui-primary-hue: 160;
@@ -1976,6 +2327,20 @@
1976
2327
  opacity: 0.5;
1977
2328
  }
1978
2329
  }
2330
+ @keyframes enter {
2331
+ from {
2332
+ opacity: var(--tw-enter-opacity,1);
2333
+ transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));
2334
+ filter: blur(var(--tw-enter-blur,0));
2335
+ }
2336
+ }
2337
+ @keyframes exit {
2338
+ to {
2339
+ opacity: var(--tw-exit-opacity,1);
2340
+ transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));
2341
+ filter: blur(var(--tw-exit-blur,0));
2342
+ }
2343
+ }
1979
2344
  @layer properties {
1980
2345
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
1981
2346
  *, ::before, ::after, ::backdrop {
@@ -2016,6 +2381,23 @@
2016
2381
  --tw-duration: initial;
2017
2382
  --tw-ease: initial;
2018
2383
  --tw-content: "";
2384
+ --tw-animation-delay: 0s;
2385
+ --tw-animation-direction: normal;
2386
+ --tw-animation-duration: initial;
2387
+ --tw-animation-fill-mode: none;
2388
+ --tw-animation-iteration-count: 1;
2389
+ --tw-enter-blur: 0;
2390
+ --tw-enter-opacity: 1;
2391
+ --tw-enter-rotate: 0;
2392
+ --tw-enter-scale: 1;
2393
+ --tw-enter-translate-x: 0;
2394
+ --tw-enter-translate-y: 0;
2395
+ --tw-exit-blur: 0;
2396
+ --tw-exit-opacity: 1;
2397
+ --tw-exit-rotate: 0;
2398
+ --tw-exit-scale: 1;
2399
+ --tw-exit-translate-x: 0;
2400
+ --tw-exit-translate-y: 0;
2019
2401
  }
2020
2402
  }
2021
2403
  }