@saitec/ui 0.1.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.

Potentially problematic release.


This version of @saitec/ui might be problematic. Click here for more details.

Files changed (138) hide show
  1. package/README.md +64 -0
  2. package/fesm2022/saitec-ui-autocomplete.mjs +214 -0
  3. package/fesm2022/saitec-ui-autocomplete.mjs.map +1 -0
  4. package/fesm2022/saitec-ui-badge.mjs +26 -0
  5. package/fesm2022/saitec-ui-badge.mjs.map +1 -0
  6. package/fesm2022/saitec-ui-button.mjs +35 -0
  7. package/fesm2022/saitec-ui-button.mjs.map +1 -0
  8. package/fesm2022/saitec-ui-card.mjs +28 -0
  9. package/fesm2022/saitec-ui-card.mjs.map +1 -0
  10. package/fesm2022/saitec-ui-checkbox.mjs +87 -0
  11. package/fesm2022/saitec-ui-checkbox.mjs.map +1 -0
  12. package/fesm2022/saitec-ui-chip.mjs +32 -0
  13. package/fesm2022/saitec-ui-chip.mjs.map +1 -0
  14. package/fesm2022/saitec-ui-confirm.mjs +93 -0
  15. package/fesm2022/saitec-ui-confirm.mjs.map +1 -0
  16. package/fesm2022/saitec-ui-core.mjs +4 -0
  17. package/fesm2022/saitec-ui-core.mjs.map +1 -0
  18. package/fesm2022/saitec-ui-date-picker.mjs +92 -0
  19. package/fesm2022/saitec-ui-date-picker.mjs.map +1 -0
  20. package/fesm2022/saitec-ui-dialog.mjs +95 -0
  21. package/fesm2022/saitec-ui-dialog.mjs.map +1 -0
  22. package/fesm2022/saitec-ui-divider.mjs +22 -0
  23. package/fesm2022/saitec-ui-divider.mjs.map +1 -0
  24. package/fesm2022/saitec-ui-drawer.mjs +96 -0
  25. package/fesm2022/saitec-ui-drawer.mjs.map +1 -0
  26. package/fesm2022/saitec-ui-fieldset.mjs +32 -0
  27. package/fesm2022/saitec-ui-fieldset.mjs.map +1 -0
  28. package/fesm2022/saitec-ui-file-upload.mjs +206 -0
  29. package/fesm2022/saitec-ui-file-upload.mjs.map +1 -0
  30. package/fesm2022/saitec-ui-form-field.mjs +30 -0
  31. package/fesm2022/saitec-ui-form-field.mjs.map +1 -0
  32. package/fesm2022/saitec-ui-input-number.mjs +250 -0
  33. package/fesm2022/saitec-ui-input-number.mjs.map +1 -0
  34. package/fesm2022/saitec-ui-input.mjs +95 -0
  35. package/fesm2022/saitec-ui-input.mjs.map +1 -0
  36. package/fesm2022/saitec-ui-menu.mjs +46 -0
  37. package/fesm2022/saitec-ui-menu.mjs.map +1 -0
  38. package/fesm2022/saitec-ui-menubar.mjs +72 -0
  39. package/fesm2022/saitec-ui-menubar.mjs.map +1 -0
  40. package/fesm2022/saitec-ui-message.mjs +28 -0
  41. package/fesm2022/saitec-ui-message.mjs.map +1 -0
  42. package/fesm2022/saitec-ui-multiselect.mjs +209 -0
  43. package/fesm2022/saitec-ui-multiselect.mjs.map +1 -0
  44. package/fesm2022/saitec-ui-panel.mjs +32 -0
  45. package/fesm2022/saitec-ui-panel.mjs.map +1 -0
  46. package/fesm2022/saitec-ui-progress-spinner.mjs +24 -0
  47. package/fesm2022/saitec-ui-progress-spinner.mjs.map +1 -0
  48. package/fesm2022/saitec-ui-select.mjs +105 -0
  49. package/fesm2022/saitec-ui-select.mjs.map +1 -0
  50. package/fesm2022/saitec-ui-table.mjs +172 -0
  51. package/fesm2022/saitec-ui-table.mjs.map +1 -0
  52. package/fesm2022/saitec-ui-tabs.mjs +170 -0
  53. package/fesm2022/saitec-ui-tabs.mjs.map +1 -0
  54. package/fesm2022/saitec-ui-tag.mjs +26 -0
  55. package/fesm2022/saitec-ui-tag.mjs.map +1 -0
  56. package/fesm2022/saitec-ui-textarea.mjs +95 -0
  57. package/fesm2022/saitec-ui-textarea.mjs.map +1 -0
  58. package/fesm2022/saitec-ui-toast.mjs +109 -0
  59. package/fesm2022/saitec-ui-toast.mjs.map +1 -0
  60. package/fesm2022/saitec-ui-toggle-switch.mjs +85 -0
  61. package/fesm2022/saitec-ui-toggle-switch.mjs.map +1 -0
  62. package/fesm2022/saitec-ui-toolbar.mjs +20 -0
  63. package/fesm2022/saitec-ui-toolbar.mjs.map +1 -0
  64. package/fesm2022/saitec-ui-tooltip.mjs +219 -0
  65. package/fesm2022/saitec-ui-tooltip.mjs.map +1 -0
  66. package/fesm2022/saitec-ui.mjs +22 -0
  67. package/fesm2022/saitec-ui.mjs.map +1 -0
  68. package/lib/core/themes/dark.css +233 -0
  69. package/lib/core/themes/light.css +210 -0
  70. package/lib/core/tokens/components/autocomplete.css +26 -0
  71. package/lib/core/tokens/components/badge.css +26 -0
  72. package/lib/core/tokens/components/button.css +90 -0
  73. package/lib/core/tokens/components/card.css +15 -0
  74. package/lib/core/tokens/components/checkbox.css +17 -0
  75. package/lib/core/tokens/components/chip.css +16 -0
  76. package/lib/core/tokens/components/confirm.css +8 -0
  77. package/lib/core/tokens/components/date-picker.css +18 -0
  78. package/lib/core/tokens/components/dialog.css +18 -0
  79. package/lib/core/tokens/components/divider.css +9 -0
  80. package/lib/core/tokens/components/drawer.css +16 -0
  81. package/lib/core/tokens/components/fieldset.css +15 -0
  82. package/lib/core/tokens/components/file-upload.css +31 -0
  83. package/lib/core/tokens/components/form-field.css +14 -0
  84. package/lib/core/tokens/components/input-number.css +20 -0
  85. package/lib/core/tokens/components/input.css +31 -0
  86. package/lib/core/tokens/components/menu.css +19 -0
  87. package/lib/core/tokens/components/menubar.css +18 -0
  88. package/lib/core/tokens/components/message.css +29 -0
  89. package/lib/core/tokens/components/multiselect.css +25 -0
  90. package/lib/core/tokens/components/panel.css +18 -0
  91. package/lib/core/tokens/components/progress-spinner.css +10 -0
  92. package/lib/core/tokens/components/select.css +18 -0
  93. package/lib/core/tokens/components/table.css +32 -0
  94. package/lib/core/tokens/components/tabs.css +18 -0
  95. package/lib/core/tokens/components/tag.css +29 -0
  96. package/lib/core/tokens/components/textarea.css +19 -0
  97. package/lib/core/tokens/components/toast.css +22 -0
  98. package/lib/core/tokens/components/toggle-switch.css +17 -0
  99. package/lib/core/tokens/components/toolbar.css +11 -0
  100. package/lib/core/tokens/components/tooltip.css +12 -0
  101. package/lib/core/tokens/components.css +50 -0
  102. package/lib/core/tokens/foundations.css +132 -0
  103. package/lib/core/tokens/primitives.css +159 -0
  104. package/package.json +162 -0
  105. package/styles.css +7 -0
  106. package/types/saitec-ui-autocomplete.d.ts +50 -0
  107. package/types/saitec-ui-badge.d.ts +15 -0
  108. package/types/saitec-ui-button.d.ts +22 -0
  109. package/types/saitec-ui-card.d.ts +13 -0
  110. package/types/saitec-ui-checkbox.d.ts +33 -0
  111. package/types/saitec-ui-chip.d.ts +13 -0
  112. package/types/saitec-ui-confirm.d.ts +38 -0
  113. package/types/saitec-ui-core.d.ts +7 -0
  114. package/types/saitec-ui-date-picker.d.ts +35 -0
  115. package/types/saitec-ui-dialog.d.ts +29 -0
  116. package/types/saitec-ui-divider.d.ts +13 -0
  117. package/types/saitec-ui-drawer.d.ts +31 -0
  118. package/types/saitec-ui-fieldset.d.ts +13 -0
  119. package/types/saitec-ui-file-upload.d.ts +43 -0
  120. package/types/saitec-ui-form-field.d.ts +14 -0
  121. package/types/saitec-ui-input-number.d.ts +60 -0
  122. package/types/saitec-ui-input.d.ts +39 -0
  123. package/types/saitec-ui-menu.d.ts +17 -0
  124. package/types/saitec-ui-menubar.d.ts +21 -0
  125. package/types/saitec-ui-message.d.ts +15 -0
  126. package/types/saitec-ui-multiselect.d.ts +54 -0
  127. package/types/saitec-ui-panel.d.ts +13 -0
  128. package/types/saitec-ui-progress-spinner.d.ts +13 -0
  129. package/types/saitec-ui-select.d.ts +36 -0
  130. package/types/saitec-ui-table.d.ts +57 -0
  131. package/types/saitec-ui-tabs.d.ts +57 -0
  132. package/types/saitec-ui-tag.d.ts +15 -0
  133. package/types/saitec-ui-textarea.d.ts +37 -0
  134. package/types/saitec-ui-toast.d.ts +43 -0
  135. package/types/saitec-ui-toggle-switch.d.ts +32 -0
  136. package/types/saitec-ui-toolbar.d.ts +9 -0
  137. package/types/saitec-ui-tooltip.d.ts +38 -0
  138. package/types/saitec-ui.d.ts +8 -0
@@ -0,0 +1,25 @@
1
+ /* SUI MultiSelect Tokens */
2
+
3
+ :root {
4
+ --sui-multiselect-height: var(--sui-control-height-md);
5
+ --sui-multiselect-padding-x: var(--sui-control-padding-x-md);
6
+ --sui-multiselect-radius: var(--sui-control-radius);
7
+ --sui-multiselect-border-width: var(--sui-border-width);
8
+ --sui-multiselect-background: var(--sui-color-surface);
9
+ --sui-multiselect-text: var(--sui-color-content);
10
+ --sui-multiselect-placeholder: var(--sui-color-content-muted);
11
+ --sui-multiselect-border: var(--sui-color-border);
12
+ --sui-multiselect-border-hover: var(--sui-color-border-strong);
13
+ --sui-multiselect-border-focus: var(--sui-color-primary);
14
+ --sui-multiselect-focus-color: var(--sui-color-focus);
15
+
16
+ --sui-multiselect-panel-background: var(--sui-color-surface);
17
+ --sui-multiselect-panel-border: var(--sui-color-border);
18
+ --sui-multiselect-panel-radius: var(--sui-control-radius);
19
+ --sui-multiselect-panel-shadow: var(--sui-shadow-lg);
20
+ --sui-multiselect-panel-z-index: var(--sui-z-dropdown);
21
+ --sui-multiselect-option-text: var(--sui-color-content);
22
+ --sui-multiselect-option-background-hover: var(--sui-color-surface-hover);
23
+ --sui-multiselect-option-background-selected: var(--sui-color-selection-background);
24
+ --sui-multiselect-empty-text: var(--sui-color-content-muted);
25
+ }
@@ -0,0 +1,18 @@
1
+ /* SUI Panel Tokens */
2
+
3
+ :root {
4
+ --sui-panel-background: var(--sui-color-surface);
5
+ --sui-panel-text: var(--sui-color-content);
6
+ --sui-panel-border: var(--sui-color-border);
7
+ --sui-panel-border-width: var(--sui-border-width);
8
+ --sui-panel-radius: var(--sui-container-radius);
9
+ --sui-panel-header-background: var(--sui-color-surface-alt);
10
+ --sui-panel-header-text: var(--sui-color-content);
11
+ --sui-panel-header-padding: var(--sui-container-padding-md);
12
+ --sui-panel-header-border: var(--sui-color-border);
13
+ --sui-panel-header-font-weight: var(--sui-font-weight-semibold);
14
+ --sui-panel-content-background: var(--sui-color-surface);
15
+ --sui-panel-content-padding: var(--sui-container-padding-lg);
16
+ --sui-panel-footer-border: var(--sui-color-border);
17
+ --sui-panel-footer-padding: var(--sui-container-padding-md);
18
+ }
@@ -0,0 +1,10 @@
1
+ /* SUI Progress Spinner Tokens */
2
+
3
+ :root {
4
+ --sui-progress-spinner-size-sm: 1rem;
5
+ --sui-progress-spinner-size-md: 2rem;
6
+ --sui-progress-spinner-size-lg: 3rem;
7
+ --sui-progress-spinner-color: var(--sui-color-primary);
8
+ --sui-progress-spinner-track: var(--sui-color-border);
9
+ --sui-progress-spinner-duration: 700ms;
10
+ }
@@ -0,0 +1,18 @@
1
+ /* SUI Select Tokens */
2
+
3
+ :root {
4
+ --sui-select-height: var(--sui-control-height-md);
5
+ --sui-select-padding-x: var(--sui-control-padding-x-md);
6
+ --sui-select-radius: var(--sui-control-radius);
7
+ --sui-select-border-width: var(--sui-border-width);
8
+ --sui-select-background: var(--sui-color-surface);
9
+ --sui-select-text: var(--sui-color-content);
10
+ --sui-select-placeholder: var(--sui-color-content-muted);
11
+ --sui-select-border: var(--sui-color-border);
12
+ --sui-select-border-hover: var(--sui-color-border-strong);
13
+ --sui-select-border-focus: var(--sui-color-primary);
14
+ --sui-select-focus-color: var(--sui-color-focus);
15
+ --sui-select-disabled-background: var(--sui-color-surface-alt);
16
+ --sui-select-disabled-text: var(--sui-color-content-disabled);
17
+ --sui-select-disabled-opacity: var(--sui-disabled-opacity);
18
+ }
@@ -0,0 +1,32 @@
1
+ /* SUI Table Tokens */
2
+
3
+ :root {
4
+ --sui-table-background: var(--sui-color-surface);
5
+ --sui-table-color: var(--sui-color-content);
6
+ --sui-table-text: var(--sui-color-content);
7
+ --sui-table-border: var(--sui-color-border);
8
+ --sui-table-border-color: var(--sui-color-border);
9
+ --sui-table-border-width: var(--sui-border-width);
10
+ --sui-table-border-radius: var(--sui-container-radius);
11
+ --sui-table-font-size: var(--sui-control-font-size-sm);
12
+
13
+ --sui-table-header-background: var(--sui-color-surface-alt);
14
+ --sui-table-header-text: var(--sui-color-content);
15
+ --sui-table-header-font-weight: var(--sui-font-weight-semibold);
16
+ --sui-table-sort-icon-color: var(--sui-color-content-muted);
17
+ --sui-table-focus-color: var(--sui-color-focus);
18
+
19
+ --sui-table-row-background: var(--sui-color-surface);
20
+ --sui-table-row-hover-background: var(--sui-color-surface-hover);
21
+ --sui-table-row-background-selected: var(--sui-color-selection-background);
22
+ --sui-table-row-border: var(--sui-color-border);
23
+ --sui-table-striped-background: var(--sui-color-surface-alt);
24
+
25
+ --sui-table-cell-padding-x: var(--sui-space-4);
26
+ --sui-table-cell-padding-y: var(--sui-space-3);
27
+ --sui-table-compact-padding-x: var(--sui-space-3);
28
+ --sui-table-compact-padding-y: var(--sui-space-1);
29
+
30
+ --sui-table-state-color: var(--sui-color-content-muted);
31
+ --sui-table-empty-text: var(--sui-color-content-muted);
32
+ }
@@ -0,0 +1,18 @@
1
+ /* SUI Tabs Tokens */
2
+
3
+ :root {
4
+ --sui-tabs-text: var(--sui-color-content);
5
+ --sui-tabs-border: var(--sui-color-border);
6
+ --sui-tabs-gap: var(--sui-space-1);
7
+ --sui-tab-padding-x: var(--sui-space-4);
8
+ --sui-tab-padding-y: var(--sui-space-3);
9
+ --sui-tab-text: var(--sui-color-content-muted);
10
+ --sui-tab-text-hover: var(--sui-color-content);
11
+ --sui-tab-text-active: var(--sui-color-primary);
12
+ --sui-tab-background-hover: var(--sui-color-surface-hover);
13
+ --sui-tab-active-border: var(--sui-color-primary);
14
+ --sui-tab-focus-color: var(--sui-color-focus);
15
+ --sui-tab-disabled-text: var(--sui-color-content-disabled);
16
+ --sui-tabpanel-padding: var(--sui-container-padding-md);
17
+ --sui-tabpanel-border: var(--sui-color-border);
18
+ }
@@ -0,0 +1,29 @@
1
+ /* SUI Tag Tokens */
2
+
3
+ :root {
4
+ --sui-tag-radius: var(--sui-radius-md);
5
+ --sui-tag-gap: var(--sui-space-1);
6
+ --sui-tag-font-weight: var(--sui-font-weight-medium);
7
+ --sui-tag-padding-x-sm: var(--sui-space-2);
8
+ --sui-tag-padding-y-sm: var(--sui-space-1);
9
+ --sui-tag-padding-x-md: var(--sui-space-3);
10
+ --sui-tag-padding-y-md: var(--sui-space-1);
11
+ --sui-tag-padding-x-lg: var(--sui-space-3);
12
+ --sui-tag-padding-y-lg: var(--sui-space-2);
13
+ --sui-tag-font-size-sm: var(--sui-control-font-size-xs);
14
+ --sui-tag-font-size-md: var(--sui-control-font-size-sm);
15
+ --sui-tag-font-size-lg: var(--sui-control-font-size-md);
16
+
17
+ --sui-tag-primary-background: var(--sui-color-selection-background);
18
+ --sui-tag-primary-text: var(--sui-color-selection-text);
19
+ --sui-tag-secondary-background: var(--sui-color-surface-alt);
20
+ --sui-tag-secondary-text: var(--sui-color-content-muted);
21
+ --sui-tag-success-background: var(--sui-color-success-surface);
22
+ --sui-tag-success-text: var(--sui-color-success-surface-text);
23
+ --sui-tag-info-background: var(--sui-color-info-surface);
24
+ --sui-tag-info-text: var(--sui-color-info-surface-text);
25
+ --sui-tag-warning-background: var(--sui-color-warning-surface);
26
+ --sui-tag-warning-text: var(--sui-color-warning-surface-text);
27
+ --sui-tag-danger-background: var(--sui-color-danger-surface);
28
+ --sui-tag-danger-text: var(--sui-color-danger-surface-text);
29
+ }
@@ -0,0 +1,19 @@
1
+ /* SUI Textarea Tokens */
2
+
3
+ :root {
4
+ --sui-textarea-padding-x: var(--sui-control-padding-x-md);
5
+ --sui-textarea-padding-y: var(--sui-space-3);
6
+ --sui-textarea-radius: var(--sui-control-radius);
7
+ --sui-textarea-border-width: var(--sui-border-width);
8
+ --sui-textarea-background: var(--sui-color-surface);
9
+ --sui-textarea-text: var(--sui-color-content);
10
+ --sui-textarea-placeholder: var(--sui-color-content-muted);
11
+ --sui-textarea-border: var(--sui-color-border);
12
+ --sui-textarea-border-hover: var(--sui-color-border-strong);
13
+ --sui-textarea-border-focus: var(--sui-color-primary);
14
+ --sui-textarea-focus-color: var(--sui-color-focus);
15
+ --sui-textarea-border-invalid: var(--sui-color-danger);
16
+ --sui-textarea-disabled-background: var(--sui-color-surface-alt);
17
+ --sui-textarea-disabled-text: var(--sui-color-content-disabled);
18
+ --sui-textarea-disabled-opacity: var(--sui-disabled-opacity);
19
+ }
@@ -0,0 +1,22 @@
1
+ /* SUI Toast Tokens */
2
+
3
+ :root {
4
+ --sui-toast-width: 24rem;
5
+ --sui-toast-background: var(--sui-color-surface);
6
+ --sui-toast-text: var(--sui-color-content);
7
+ --sui-toast-border-width: var(--sui-border-width);
8
+ --sui-toast-radius: var(--sui-container-radius);
9
+ --sui-toast-shadow: var(--sui-shadow-lg);
10
+ --sui-toast-padding: var(--sui-container-padding-md);
11
+ --sui-toast-gap: var(--sui-space-3);
12
+ --sui-toast-z-index: var(--sui-z-toast);
13
+
14
+ --sui-toast-success-border: var(--sui-color-success-border);
15
+ --sui-toast-success-icon: var(--sui-color-success);
16
+ --sui-toast-info-border: var(--sui-color-info-border);
17
+ --sui-toast-info-icon: var(--sui-color-info);
18
+ --sui-toast-warning-border: var(--sui-color-warning-border);
19
+ --sui-toast-warning-icon: var(--sui-color-warning);
20
+ --sui-toast-danger-border: var(--sui-color-danger-border);
21
+ --sui-toast-danger-icon: var(--sui-color-danger);
22
+ }
@@ -0,0 +1,17 @@
1
+ /* SUI Toggle Switch Tokens */
2
+
3
+ :root {
4
+ --sui-toggle-switch-width: 2.5rem;
5
+ --sui-toggle-switch-height: 1.5rem;
6
+ --sui-toggle-switch-padding: 0.125rem;
7
+ --sui-toggle-switch-radius: 9999px;
8
+ --sui-toggle-switch-background: var(--sui-color-border-strong);
9
+ --sui-toggle-switch-background-hover: var(--sui-color-content-muted);
10
+ --sui-toggle-switch-checked-background: var(--sui-color-primary);
11
+ --sui-toggle-switch-checked-background-hover: var(--sui-color-primary-hover);
12
+ --sui-toggle-switch-thumb-background: var(--sui-color-content-inverse);
13
+ --sui-toggle-switch-focus-color: var(--sui-color-focus);
14
+ --sui-toggle-switch-label-text: var(--sui-color-content);
15
+ --sui-toggle-switch-gap: var(--sui-space-2);
16
+ --sui-toggle-switch-disabled-opacity: var(--sui-disabled-opacity);
17
+ }
@@ -0,0 +1,11 @@
1
+ /* SUI Toolbar Tokens */
2
+
3
+ :root {
4
+ --sui-toolbar-background: var(--sui-color-surface);
5
+ --sui-toolbar-text: var(--sui-color-content);
6
+ --sui-toolbar-border: var(--sui-color-border);
7
+ --sui-toolbar-border-width: var(--sui-border-width);
8
+ --sui-toolbar-radius: var(--sui-container-radius);
9
+ --sui-toolbar-padding: var(--sui-space-3);
10
+ --sui-toolbar-gap: var(--sui-space-3);
11
+ }
@@ -0,0 +1,12 @@
1
+ /* SUI Tooltip Tokens */
2
+
3
+ :root {
4
+ --sui-tooltip-background: var(--sui-color-content);
5
+ --sui-tooltip-text: var(--sui-color-content-inverse);
6
+ --sui-tooltip-radius: var(--sui-radius-sm);
7
+ --sui-tooltip-padding-x: var(--sui-space-2);
8
+ --sui-tooltip-padding-y: var(--sui-space-1);
9
+ --sui-tooltip-font-size: var(--sui-control-font-size-xs);
10
+ --sui-tooltip-shadow: var(--sui-shadow-md);
11
+ --sui-tooltip-z-index: var(--sui-z-tooltip);
12
+ }
@@ -0,0 +1,50 @@
1
+ /*
2
+ * SUI Component Tokens
3
+ *
4
+ * Aggregate entry point for all component-specific design tokens.
5
+ *
6
+ * Individual component token definitions live under:
7
+ *
8
+ * ./components/
9
+ */
10
+
11
+ @import "./components/form-field.css";
12
+
13
+ @import "./components/button.css";
14
+ @import "./components/input.css";
15
+ @import "./components/textarea.css";
16
+ @import "./components/checkbox.css";
17
+ @import "./components/toggle-switch.css";
18
+ @import "./components/input-number.css";
19
+ @import "./components/date-picker.css";
20
+
21
+ @import "./components/select.css";
22
+ @import "./components/autocomplete.css";
23
+ @import "./components/multiselect.css";
24
+
25
+ @import "./components/badge.css";
26
+ @import "./components/tag.css";
27
+ @import "./components/chip.css";
28
+ @import "./components/message.css";
29
+
30
+ @import "./components/divider.css";
31
+ @import "./components/card.css";
32
+ @import "./components/panel.css";
33
+ @import "./components/fieldset.css";
34
+ @import "./components/toolbar.css";
35
+
36
+ @import "./components/progress-spinner.css";
37
+
38
+ @import "./components/dialog.css";
39
+ @import "./components/drawer.css";
40
+ @import "./components/tooltip.css";
41
+ @import "./components/toast.css";
42
+ @import "./components/confirm.css";
43
+
44
+ @import "./components/menu.css";
45
+ @import "./components/menubar.css";
46
+ @import "./components/tabs.css";
47
+
48
+ @import "./components/table.css";
49
+
50
+ @import "./components/file-upload.css";
@@ -0,0 +1,132 @@
1
+ /*
2
+ * SUI Design System
3
+ * Global semantic tokens.
4
+ */
5
+
6
+ :root {
7
+ /*
8
+ * Spacing
9
+ */
10
+
11
+ --sui-space-1: 0.25rem;
12
+ --sui-space-2: 0.5rem;
13
+ --sui-space-3: 0.75rem;
14
+ --sui-space-4: 1rem;
15
+ --sui-space-5: 1.25rem;
16
+ --sui-space-6: 1.5rem;
17
+ --sui-space-8: 2rem;
18
+
19
+
20
+ /*
21
+ * Control sizes
22
+ */
23
+
24
+ --sui-control-height-xs: 1.5rem;
25
+ --sui-control-height-sm: 2rem;
26
+ --sui-control-height-md: 2.5rem;
27
+ --sui-control-height-lg: 3rem;
28
+ --sui-control-height-xl: 3.5rem;
29
+
30
+ --sui-control-padding-x-xs: var(--sui-space-2);
31
+ --sui-control-padding-x-sm: var(--sui-space-3);
32
+ --sui-control-padding-x-md: var(--sui-space-4);
33
+ --sui-control-padding-x-lg: var(--sui-space-5);
34
+ --sui-control-padding-x-xl: var(--sui-space-6);
35
+
36
+
37
+ /*
38
+ * Typography
39
+ */
40
+
41
+ --sui-control-font-size-xs: 0.75rem;
42
+ --sui-control-font-size-sm: 0.875rem;
43
+ --sui-control-font-size-md: 0.875rem;
44
+ --sui-control-font-size-lg: 1rem;
45
+ --sui-control-font-size-xl: 1.125rem;
46
+
47
+ --sui-font-weight-normal: 400;
48
+ --sui-font-weight-medium: 500;
49
+ --sui-font-weight-semibold: 600;
50
+ --sui-font-weight-bold: 700;
51
+
52
+
53
+ /*
54
+ * Borders
55
+ */
56
+
57
+ --sui-border-width: 1px;
58
+ --sui-border-width-strong: 2px;
59
+
60
+ --sui-control-radius:
61
+ var(--sui-radius-md);
62
+
63
+ --sui-container-radius:
64
+ var(--sui-radius-lg);
65
+
66
+
67
+ /*
68
+ * Containers
69
+ */
70
+
71
+ --sui-container-padding-sm:
72
+ var(--sui-space-3);
73
+
74
+ --sui-container-padding-md:
75
+ var(--sui-space-4);
76
+
77
+ --sui-container-padding-lg:
78
+ var(--sui-space-6);
79
+
80
+ --sui-container-shadow:
81
+ var(--sui-shadow-sm);
82
+
83
+
84
+ /*
85
+ * Focus
86
+ */
87
+
88
+ --sui-focus-ring-width: 2px;
89
+ --sui-focus-ring-offset: 2px;
90
+
91
+
92
+ /*
93
+ * Disabled
94
+ */
95
+
96
+ --sui-disabled-opacity: 0.5;
97
+
98
+
99
+ /*
100
+ * Motion
101
+ */
102
+
103
+ --sui-duration-fast: 100ms;
104
+ --sui-duration-normal: 150ms;
105
+ --sui-duration-slow: 250ms;
106
+
107
+ --sui-easing-standard:
108
+ cubic-bezier(0.2, 0, 0, 1);
109
+
110
+
111
+ /*
112
+ * Icons
113
+ */
114
+
115
+ --sui-icon-size-sm: 1rem;
116
+ --sui-icon-size-md: 1.25rem;
117
+ --sui-icon-size-lg: 1.5rem;
118
+
119
+
120
+ /*
121
+ * Z-index
122
+ */
123
+
124
+ --sui-z-base: 0;
125
+ --sui-z-dropdown: 1000;
126
+ --sui-z-sticky: 1100;
127
+ --sui-z-overlay: 1200;
128
+ --sui-z-dialog: 1300;
129
+ --sui-z-popover: 1400;
130
+ --sui-z-tooltip: 1500;
131
+ --sui-z-toast: 1600;
132
+ }
@@ -0,0 +1,159 @@
1
+ /*
2
+ * SUI Design System
3
+ * Primitive design tokens and Tailwind integration.
4
+ *
5
+ * Components should normally NOT use the primitive colors directly.
6
+ * Prefer semantic tokens such as:
7
+ *
8
+ * --sui-color-primary
9
+ * --sui-color-surface
10
+ * --sui-color-content
11
+ *
12
+ * Or Tailwind utilities generated from them:
13
+ *
14
+ * bg-primary
15
+ * bg-surface
16
+ * text-content
17
+ * border-border
18
+ */
19
+
20
+ :root {
21
+ /*
22
+ * Typography
23
+ */
24
+
25
+ --sui-font-sans:
26
+ Inter,
27
+ ui-sans-serif,
28
+ system-ui,
29
+ -apple-system,
30
+ BlinkMacSystemFont,
31
+ "Segoe UI",
32
+ sans-serif;
33
+
34
+ --sui-font-mono:
35
+ "Cascadia Code",
36
+ "SFMono-Regular",
37
+ Consolas,
38
+ "Liberation Mono",
39
+ monospace;
40
+
41
+
42
+ /*
43
+ * Brand
44
+ */
45
+
46
+ --sui-palette-brand-50: #eff6ff;
47
+ --sui-palette-brand-100: #dbeafe;
48
+ --sui-palette-brand-200: #bfdbfe;
49
+ --sui-palette-brand-300: #93c5fd;
50
+ --sui-palette-brand-400: #60a5fa;
51
+ --sui-palette-brand-500: #3b82f6;
52
+ --sui-palette-brand-600: #2563eb;
53
+ --sui-palette-brand-700: #1d4ed8;
54
+ --sui-palette-brand-800: #1e40af;
55
+ --sui-palette-brand-900: #1e3a8a;
56
+ --sui-palette-brand-950: #172554;
57
+
58
+
59
+ /*
60
+ * Neutral
61
+ */
62
+
63
+ --sui-palette-neutral-0: #ffffff;
64
+ --sui-palette-neutral-50: #f9fafb;
65
+ --sui-palette-neutral-100: #f3f4f6;
66
+ --sui-palette-neutral-200: #e5e7eb;
67
+ --sui-palette-neutral-300: #d1d5db;
68
+ --sui-palette-neutral-400: #9ca3af;
69
+ --sui-palette-neutral-500: #6b7280;
70
+ --sui-palette-neutral-600: #4b5563;
71
+ --sui-palette-neutral-700: #374151;
72
+ --sui-palette-neutral-800: #1f2937;
73
+ --sui-palette-neutral-900: #111827;
74
+ --sui-palette-neutral-950: #030712;
75
+
76
+
77
+ /*
78
+ * Success
79
+ */
80
+
81
+ --sui-palette-success-50: #f0fdf4;
82
+ --sui-palette-success-100: #dcfce7;
83
+ --sui-palette-success-400: #4ade80;
84
+ --sui-palette-success-500: #22c55e;
85
+ --sui-palette-success-600: #16a34a;
86
+ --sui-palette-success-700: #15803d;
87
+
88
+
89
+ /*
90
+ * Warning
91
+ */
92
+
93
+ --sui-palette-warning-50: #fffbeb;
94
+ --sui-palette-warning-100: #fef3c7;
95
+ --sui-palette-warning-400: #fbbf24;
96
+ --sui-palette-warning-500: #f59e0b;
97
+ --sui-palette-warning-600: #d97706;
98
+ --sui-palette-warning-700: #b45309;
99
+
100
+
101
+ /*
102
+ * Danger
103
+ */
104
+
105
+ --sui-palette-danger-50: #fef2f2;
106
+ --sui-palette-danger-100: #fee2e2;
107
+ --sui-palette-danger-400: #f87171;
108
+ --sui-palette-danger-500: #ef4444;
109
+ --sui-palette-danger-600: #dc2626;
110
+ --sui-palette-danger-700: #b91c1c;
111
+
112
+
113
+ /*
114
+ * Information
115
+ */
116
+
117
+ --sui-palette-info-50: #f0f9ff;
118
+ --sui-palette-info-100: #e0f2fe;
119
+ --sui-palette-info-400: #38bdf8;
120
+ --sui-palette-info-500: #0ea5e9;
121
+ --sui-palette-info-600: #0284c7;
122
+ --sui-palette-info-700: #0369a1;
123
+
124
+
125
+ /*
126
+ * Radius
127
+ */
128
+
129
+ --sui-radius-xs: 0.125rem;
130
+ --sui-radius-sm: 0.25rem;
131
+ --sui-radius-md: 0.375rem;
132
+ --sui-radius-lg: 0.5rem;
133
+ --sui-radius-xl: 0.75rem;
134
+ --sui-radius-2xl: 1rem;
135
+
136
+
137
+ /*
138
+ * Shadows
139
+ */
140
+
141
+ --sui-shadow-xs:
142
+ 0 1px 2px rgb(0 0 0 / 5%);
143
+
144
+ --sui-shadow-sm:
145
+ 0 1px 3px rgb(0 0 0 / 10%),
146
+ 0 1px 2px rgb(0 0 0 / 6%);
147
+
148
+ --sui-shadow-md:
149
+ 0 4px 6px rgb(0 0 0 / 7%),
150
+ 0 2px 4px rgb(0 0 0 / 6%);
151
+
152
+ --sui-shadow-lg:
153
+ 0 10px 15px rgb(0 0 0 / 10%),
154
+ 0 4px 6px rgb(0 0 0 / 5%);
155
+
156
+ --sui-shadow-xl:
157
+ 0 20px 25px rgb(0 0 0 / 10%),
158
+ 0 8px 10px rgb(0 0 0 / 4%);
159
+ }