@techsio/ui-kit 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +165 -0
- package/dist/atoms/badge.js +66 -0
- package/dist/atoms/button.js +275 -0
- package/dist/atoms/error-text.js +38 -0
- package/dist/atoms/extra-text.js +27 -0
- package/dist/atoms/icon.js +42 -0
- package/dist/atoms/image.js +11 -0
- package/dist/atoms/input.js +83 -0
- package/dist/atoms/label.js +43 -0
- package/dist/atoms/link-button.js +51 -0
- package/dist/atoms/link.js +23 -0
- package/dist/atoms/numeric-input.js +221 -0
- package/dist/atoms/rating.js +117 -0
- package/dist/atoms/textarea.js +81 -0
- package/dist/atoms/tooltip.js +119 -0
- package/dist/molecules/accordion.js +245 -0
- package/dist/molecules/breadcrumb.js +168 -0
- package/dist/molecules/carousel.js +333 -0
- package/dist/molecules/checkbox.js +92 -0
- package/dist/molecules/color-select.js +159 -0
- package/dist/molecules/combobox.js +253 -0
- package/dist/molecules/dialog.js +313 -0
- package/dist/molecules/form-checkbox.js +59 -0
- package/dist/molecules/form-input.js +55 -0
- package/dist/molecules/form-numeric-input.js +47 -0
- package/dist/molecules/form-textarea.js +54 -0
- package/dist/molecules/menu.js +302 -0
- package/dist/molecules/pagination.js +184 -0
- package/dist/molecules/popover.js +152 -0
- package/dist/molecules/product-card.js +194 -0
- package/dist/molecules/search-form.js +106 -0
- package/dist/molecules/select.js +217 -0
- package/dist/molecules/slider.js +249 -0
- package/dist/molecules/steps.js +178 -0
- package/dist/molecules/switch.js +109 -0
- package/dist/molecules/tabs.js +211 -0
- package/dist/molecules/toast.js +126 -0
- package/dist/molecules/tree-view.js +451 -0
- package/dist/organisms/footer.js +209 -0
- package/dist/organisms/header.js +245 -0
- package/dist/organisms/table.js +233 -0
- package/dist/src/atoms/badge.d.ts +59 -0
- package/dist/src/atoms/badge.d.ts.map +1 -0
- package/dist/src/atoms/button.d.ts +97 -0
- package/dist/src/atoms/button.d.ts.map +1 -0
- package/dist/src/atoms/error-text.d.ts +29 -0
- package/dist/src/atoms/error-text.d.ts.map +1 -0
- package/dist/src/atoms/extra-text.d.ts +27 -0
- package/dist/src/atoms/extra-text.d.ts.map +1 -0
- package/dist/src/atoms/icon.d.ts +65 -0
- package/dist/src/atoms/icon.d.ts.map +1 -0
- package/dist/src/atoms/image.d.ts +17 -0
- package/dist/src/atoms/image.d.ts.map +1 -0
- package/dist/src/atoms/input.d.ts +78 -0
- package/dist/src/atoms/input.d.ts.map +1 -0
- package/dist/src/atoms/label.d.ts +41 -0
- package/dist/src/atoms/label.d.ts.map +1 -0
- package/dist/src/atoms/link-button.d.ts +129 -0
- package/dist/src/atoms/link-button.d.ts.map +1 -0
- package/dist/src/atoms/link.d.ts +17 -0
- package/dist/src/atoms/link.d.ts.map +1 -0
- package/dist/src/atoms/numeric-input.d.ts +64 -0
- package/dist/src/atoms/numeric-input.d.ts.map +1 -0
- package/dist/src/atoms/rating.d.ts +108 -0
- package/dist/src/atoms/rating.d.ts.map +1 -0
- package/dist/src/atoms/textarea.d.ts +81 -0
- package/dist/src/atoms/textarea.d.ts.map +1 -0
- package/dist/src/atoms/tooltip.d.ts +88 -0
- package/dist/src/atoms/tooltip.d.ts.map +1 -0
- package/dist/src/molecules/accordion.d.ts +182 -0
- package/dist/src/molecules/accordion.d.ts.map +1 -0
- package/dist/src/molecules/breadcrumb.d.ts +117 -0
- package/dist/src/molecules/breadcrumb.d.ts.map +1 -0
- package/dist/src/molecules/carousel.d.ts +261 -0
- package/dist/src/molecules/carousel.d.ts.map +1 -0
- package/dist/src/molecules/checkbox.d.ts +19 -0
- package/dist/src/molecules/checkbox.d.ts.map +1 -0
- package/dist/src/molecules/color-select.d.ts +20 -0
- package/dist/src/molecules/color-select.d.ts.map +1 -0
- package/dist/src/molecules/combobox.d.ts +141 -0
- package/dist/src/molecules/combobox.d.ts.map +1 -0
- package/dist/src/molecules/dialog.d.ts +234 -0
- package/dist/src/molecules/dialog.d.ts.map +1 -0
- package/dist/src/molecules/form-checkbox.d.ts +15 -0
- package/dist/src/molecules/form-checkbox.d.ts.map +1 -0
- package/dist/src/molecules/form-input.d.ts +14 -0
- package/dist/src/molecules/form-input.d.ts.map +1 -0
- package/dist/src/molecules/form-numeric-input.d.ts +14 -0
- package/dist/src/molecules/form-numeric-input.d.ts.map +1 -0
- package/dist/src/molecules/form-textarea.d.ts +14 -0
- package/dist/src/molecules/form-textarea.d.ts.map +1 -0
- package/dist/src/molecules/menu.d.ts +153 -0
- package/dist/src/molecules/menu.d.ts.map +1 -0
- package/dist/src/molecules/pagination.d.ts +123 -0
- package/dist/src/molecules/pagination.d.ts.map +1 -0
- package/dist/src/molecules/popover.d.ts +124 -0
- package/dist/src/molecules/popover.d.ts.map +1 -0
- package/dist/src/molecules/product-card.d.ts +160 -0
- package/dist/src/molecules/product-card.d.ts.map +1 -0
- package/dist/src/molecules/search-form.d.ts +39 -0
- package/dist/src/molecules/search-form.d.ts.map +1 -0
- package/dist/src/molecules/select.d.ts +126 -0
- package/dist/src/molecules/select.d.ts.map +1 -0
- package/dist/src/molecules/slider.d.ts +120 -0
- package/dist/src/molecules/slider.d.ts.map +1 -0
- package/dist/src/molecules/steps.d.ts +96 -0
- package/dist/src/molecules/steps.d.ts.map +1 -0
- package/dist/src/molecules/switch.d.ts +71 -0
- package/dist/src/molecules/switch.d.ts.map +1 -0
- package/dist/src/molecules/tabs.d.ts +207 -0
- package/dist/src/molecules/tabs.d.ts.map +1 -0
- package/dist/src/molecules/toast.d.ts +83 -0
- package/dist/src/molecules/toast.d.ts.map +1 -0
- package/dist/src/molecules/tree-view.d.ts +202 -0
- package/dist/src/molecules/tree-view.d.ts.map +1 -0
- package/dist/src/organisms/footer.d.ts +254 -0
- package/dist/src/organisms/footer.d.ts.map +1 -0
- package/dist/src/organisms/header.d.ts +186 -0
- package/dist/src/organisms/header.d.ts.map +1 -0
- package/dist/src/organisms/table.d.ts +250 -0
- package/dist/src/organisms/table.d.ts.map +1 -0
- package/dist/src/templates/accordion.d.ts +15 -0
- package/dist/src/templates/accordion.d.ts.map +1 -0
- package/dist/src/templates/carousel.d.ts +13 -0
- package/dist/src/templates/carousel.d.ts.map +1 -0
- package/dist/src/templates/numeric-input.d.ts +14 -0
- package/dist/src/templates/numeric-input.d.ts.map +1 -0
- package/dist/src/templates/product-card.d.ts +33 -0
- package/dist/src/templates/product-card.d.ts.map +1 -0
- package/dist/src/templates/tabs.d.ts +16 -0
- package/dist/src/templates/tabs.d.ts.map +1 -0
- package/dist/src/types/zag.d.ts +19 -0
- package/dist/src/types/zag.d.ts.map +1 -0
- package/dist/src/utils.d.ts +4 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/templates/accordion.js +37 -0
- package/dist/templates/carousel.js +55 -0
- package/dist/templates/numeric-input.js +49 -0
- package/dist/templates/product-card.js +92 -0
- package/dist/templates/tabs.js +34 -0
- package/dist/types/zag.js +0 -0
- package/dist/utils.js +20 -0
- package/package.json +126 -0
- package/src/tokens/_base.css +25 -0
- package/src/tokens/_colors.css +5 -0
- package/src/tokens/_layout.css +34 -0
- package/src/tokens/_semantic.css +360 -0
- package/src/tokens/_spacing.css +22 -0
- package/src/tokens/_typography.css +17 -0
- package/src/tokens/components/atoms/_badge.css +61 -0
- package/src/tokens/components/atoms/_button.css +215 -0
- package/src/tokens/components/atoms/_icon.css +122 -0
- package/src/tokens/components/atoms/_input.css +125 -0
- package/src/tokens/components/atoms/_numeric-input.css +57 -0
- package/src/tokens/components/atoms/_rating.css +33 -0
- package/src/tokens/components/atoms/_textarea.css +93 -0
- package/src/tokens/components/atoms/_tooltip.css +21 -0
- package/src/tokens/components/components.css +32 -0
- package/src/tokens/components/molecules/_accordion.css +85 -0
- package/src/tokens/components/molecules/_breadcrumb.css +44 -0
- package/src/tokens/components/molecules/_carousel.css +72 -0
- package/src/tokens/components/molecules/_checkbox.css +29 -0
- package/src/tokens/components/molecules/_color-select.css +61 -0
- package/src/tokens/components/molecules/_combobox.css +116 -0
- package/src/tokens/components/molecules/_dialog.css +75 -0
- package/src/tokens/components/molecules/_menu.css +48 -0
- package/src/tokens/components/molecules/_pagination.css +75 -0
- package/src/tokens/components/molecules/_popover.css +39 -0
- package/src/tokens/components/molecules/_product-card.css +85 -0
- package/src/tokens/components/molecules/_search-form.css +10 -0
- package/src/tokens/components/molecules/_select.css +88 -0
- package/src/tokens/components/molecules/_slider.css +75 -0
- package/src/tokens/components/molecules/_steps.css +54 -0
- package/src/tokens/components/molecules/_switch.css +62 -0
- package/src/tokens/components/molecules/_tabs.css +69 -0
- package/src/tokens/components/molecules/_toast.css +77 -0
- package/src/tokens/components/molecules/_tree-view.css +80 -0
- package/src/tokens/components/molecules/index.css +2 -0
- package/src/tokens/components/organisms/_footer.css +90 -0
- package/src/tokens/components/organisms/_header.css +86 -0
- package/src/tokens/components/organisms/_table.css +63 -0
- package/src/tokens/index.css +67 -0
- package/src/tokens/tokens-only.css +66 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
@theme static {
|
|
2
|
+
/* === BASE TOKEN MAPPING === */
|
|
3
|
+
--color-tree-bg: var(--color-base);
|
|
4
|
+
--color-tree-fg: var(--color-fg-primary);
|
|
5
|
+
--color-tree-border: var(--color-border-primary);
|
|
6
|
+
--color-tree-icon-hover: var(--color-fg-primary);
|
|
7
|
+
--color-tree-accent: var(--color-primary);
|
|
8
|
+
|
|
9
|
+
/* === STATE VARIATIONS === */
|
|
10
|
+
--color-tree-node-bg-hover: var(--color-primary-hover);
|
|
11
|
+
--color-tree-node-bg-selected: transparent;
|
|
12
|
+
--color-tree-fg-hover: var(--color-fg-reverse);
|
|
13
|
+
--color-tree-fg-selected: var(--color-tree-accent);
|
|
14
|
+
|
|
15
|
+
/* === ROOT === */
|
|
16
|
+
--color-tree-root-bg: transparent;
|
|
17
|
+
|
|
18
|
+
/* === LABEL === */
|
|
19
|
+
--color-tree-label-fg: var(--color-tree-fg);
|
|
20
|
+
|
|
21
|
+
/* === NODE === */
|
|
22
|
+
--color-tree-ring: var(--color-ring);
|
|
23
|
+
|
|
24
|
+
/* === INDENT GUIDE === */
|
|
25
|
+
--color-tree-indent-bg: var(--color-tree-border);
|
|
26
|
+
--width-tree-indent: 1px;
|
|
27
|
+
|
|
28
|
+
/* === DISABLED STATES === */
|
|
29
|
+
--opacity-tree-disabled: 60%;
|
|
30
|
+
|
|
31
|
+
/* === SPACING === */
|
|
32
|
+
--tree-indent-per-level: var(--spacing-100);
|
|
33
|
+
--spacing-tree-icon: var(--spacing-150);
|
|
34
|
+
--padding-tree-node: var(--spacing-100);
|
|
35
|
+
|
|
36
|
+
/* === TYPOGRAPHY === */
|
|
37
|
+
/* Tree text size */
|
|
38
|
+
--text-tree-sm: var(--text-sm);
|
|
39
|
+
--text-tree-md: var(--text-md);
|
|
40
|
+
--text-tree-lg: var(--text-lg);
|
|
41
|
+
|
|
42
|
+
/* Node icon size */
|
|
43
|
+
--text-tree-icon-sm: var(--text-icon-sm);
|
|
44
|
+
--text-tree-icon-md: var(--text-icon-md);
|
|
45
|
+
--text-tree-icon-lg: var(--text-icon-lg);
|
|
46
|
+
|
|
47
|
+
--text-tree-indicator-sm: var(--text-icon-md);
|
|
48
|
+
--text-tree-indicator-md: var(--text-icon-lg);
|
|
49
|
+
--text-tree-indicator-lg: var(--text-icon-xl);
|
|
50
|
+
|
|
51
|
+
/* Tree font weight */
|
|
52
|
+
--font-weight-tree-label: var(--font-weight-medium);
|
|
53
|
+
|
|
54
|
+
/* === BORDERS & RADIUS === */
|
|
55
|
+
--radius-tree: 0;
|
|
56
|
+
/* === OPACITY === */
|
|
57
|
+
--opacity-tree-indent: 100%;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* Tree Icons - using semantic tokens */
|
|
61
|
+
|
|
62
|
+
@utility token-icon-tree-node {
|
|
63
|
+
@apply icon-[mdi--folder];
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
@utility token-icon-tree-node-open {
|
|
67
|
+
@apply icon-[mdi--folder-open];
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@utility token-icon-tree-item {
|
|
71
|
+
@apply icon-[mdi--file-document];
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
@utility token-icon-tree-indicator {
|
|
75
|
+
@apply icon-[mdi--chevron-right];
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
@utility token-icon-tree-indicator-open {
|
|
79
|
+
@apply icon-[mdi--chevron-down];
|
|
80
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
@theme static {
|
|
2
|
+
--footer-cols: repeat(auto-fit, minmax(22%, 1fr));
|
|
3
|
+
|
|
4
|
+
/* === COLORS === */
|
|
5
|
+
--color-footer: var(--color-surface);
|
|
6
|
+
|
|
7
|
+
/* Background */
|
|
8
|
+
--color-footer-bg: var(--color-footer);
|
|
9
|
+
--color-footer-container-bg: var(--color-footer);
|
|
10
|
+
--color-footer-section-bg: var(--color-footer);
|
|
11
|
+
--color-footer-list-bg: var(--color-footer);
|
|
12
|
+
--color-footer-bottom-bg: var(--color-footer);
|
|
13
|
+
|
|
14
|
+
/* Foreground */
|
|
15
|
+
--color-footer-fg-primary: var(--color-fg-primary);
|
|
16
|
+
--color-footer-fg-secondary: var(--color-fg-secondary);
|
|
17
|
+
|
|
18
|
+
--color-footer-title-fg: var(--color-footer-fg-primary);
|
|
19
|
+
--color-footer-title-fg-hover: var(--color-primary);
|
|
20
|
+
--color-footer-link-fg: var(--color-footer-fg-secondary);
|
|
21
|
+
--color-footer-link-fg-hover: var(--color-primary);
|
|
22
|
+
--color-footer-text-fg: var(--color-footer-fg-secondary);
|
|
23
|
+
|
|
24
|
+
/* Divider & Bottom */
|
|
25
|
+
--color-footer-divider-bg: var(--color-fg-reverse);
|
|
26
|
+
|
|
27
|
+
/* === TYPOGRAPHY === */
|
|
28
|
+
--text-footer-title-sm: var(--text-md);
|
|
29
|
+
--text-footer-title-md: var(--text-lg);
|
|
30
|
+
--text-footer-title-lg: var(--text-xl);
|
|
31
|
+
|
|
32
|
+
--text-footer-link-sm: var(--text-sm);
|
|
33
|
+
--text-footer-link-md: var(--text-md);
|
|
34
|
+
--text-footer-link-lg: var(--text-lg);
|
|
35
|
+
|
|
36
|
+
--text-footer-text-sm: var(--text-xs);
|
|
37
|
+
--text-footer-text-md: var(--text-sm);
|
|
38
|
+
--text-footer-text-lg: var(--text-md);
|
|
39
|
+
|
|
40
|
+
--font-weight-footer-title: var(--font-weight-semibold);
|
|
41
|
+
--font-weight-footer-link: var(--font-weight-normal);
|
|
42
|
+
|
|
43
|
+
/* === SIZES === */
|
|
44
|
+
--container-footer-sm: var(--container-sm);
|
|
45
|
+
--container-footer-md: var(--container-md);
|
|
46
|
+
--container-footer-max: var(--container-max-w);
|
|
47
|
+
|
|
48
|
+
/* === SPACING === */
|
|
49
|
+
/* Root padding */
|
|
50
|
+
--padding-footer-root-sm: var(--spacing-100);
|
|
51
|
+
--padding-footer-root-md: var(--spacing-200);
|
|
52
|
+
--padding-footer-root-lg: var(--spacing-300);
|
|
53
|
+
|
|
54
|
+
/* Container spacing */
|
|
55
|
+
--spacing-footer-container-sm: var(--spacing-300);
|
|
56
|
+
--spacing-footer-container-md: var(--spacing-400);
|
|
57
|
+
--spacing-footer-container-lg: var(--spacing-500);
|
|
58
|
+
|
|
59
|
+
/* Section spacing */
|
|
60
|
+
--spacing-footer-section-sm: var(--spacing-50);
|
|
61
|
+
--spacing-footer-section-md: var(--spacing-100);
|
|
62
|
+
--spacing-footer-section-lg: var(--spacing-150);
|
|
63
|
+
|
|
64
|
+
/* List spacing */
|
|
65
|
+
--spacing-footer-list-gap: var(--spacing-100);
|
|
66
|
+
--spacing-footer-list-gap-sm: var(--spacing-50);
|
|
67
|
+
--spacing-footer-list-gap-md: var(--spacing-100);
|
|
68
|
+
--spacing-footer-list-gap-lg: var(--spacing-150);
|
|
69
|
+
|
|
70
|
+
/* Bottom padding */
|
|
71
|
+
--padding-footer-bottom: var(--spacing-300);
|
|
72
|
+
--padding-footer-bottom-sm: var(--spacing-200);
|
|
73
|
+
--padding-footer-bottom-md: var(--spacing-300);
|
|
74
|
+
--padding-footer-bottom-lg: var(--spacing-400);
|
|
75
|
+
|
|
76
|
+
/* Divider margins */
|
|
77
|
+
--margin-footer-divider-sm: var(--spacing-200);
|
|
78
|
+
--margin-footer-divider-md: var(--spacing-300);
|
|
79
|
+
--margin-footer-divider-lg: var(--spacing-400);
|
|
80
|
+
|
|
81
|
+
/* === BORDERS & EFFECTS === */
|
|
82
|
+
--border-width-footer: var(--border-width-md);
|
|
83
|
+
--color-footer-border: var(--color-red-600);
|
|
84
|
+
--height-footer-divider: 2px;
|
|
85
|
+
|
|
86
|
+
--radius-footer: 0;
|
|
87
|
+
|
|
88
|
+
/* === BREAKPOINTS === */
|
|
89
|
+
--breakpoint-footer-mobile: 768px;
|
|
90
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
@media (width < 48rem) {
|
|
3
|
+
--spacing-header-nav-sm: var(--spacing-50);
|
|
4
|
+
--spacing-header-nav-md: var(--spacing-100);
|
|
5
|
+
--spacing-header-nav-lg: var(--spacing-150);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@theme static {
|
|
10
|
+
/* === REFERENCE LAYER === */
|
|
11
|
+
/* These tokens reference semantic tokens from _semantic.css */
|
|
12
|
+
--color-header: var(--color-surface);
|
|
13
|
+
--color-header-accent: var(--color-primary);
|
|
14
|
+
|
|
15
|
+
/* Reference typhography */
|
|
16
|
+
--text-header-sm: var(--text-sm);
|
|
17
|
+
--text-header-md: var(--text-md);
|
|
18
|
+
--text-header-lg: var(--text-lg);
|
|
19
|
+
|
|
20
|
+
/* === DERIVED COLORS === */
|
|
21
|
+
/* Background colors */
|
|
22
|
+
--color-header-bg: var(--color-header);
|
|
23
|
+
|
|
24
|
+
/* === ITEMS === */
|
|
25
|
+
--color-header-nav-item-bg: transparent;
|
|
26
|
+
--color-header-nav-item-bg-hover: transparent;
|
|
27
|
+
|
|
28
|
+
--text-header-item-sm: var(--text-header-sm);
|
|
29
|
+
--text-header-item-md: var(--text-header-md);
|
|
30
|
+
--text-header-item-lg: var(--text-header-lg);
|
|
31
|
+
|
|
32
|
+
/* === ACTIONS === */
|
|
33
|
+
|
|
34
|
+
/* Foreground colors */
|
|
35
|
+
--color-header-fg: var(--color-fg-primary);
|
|
36
|
+
--color-header-nav-fg: var(--color-fg-secondary);
|
|
37
|
+
--color-header-nav-fg-hover: var(--color-header-fg);
|
|
38
|
+
--color-header-nav-fg-active: var(--color-header-accent);
|
|
39
|
+
--color-header-actions-fg: var(--color-primary);
|
|
40
|
+
--color-header-actions-fg-hover: var(--color-header-fg);
|
|
41
|
+
|
|
42
|
+
/* Border colors */
|
|
43
|
+
|
|
44
|
+
/* === SIZE === */
|
|
45
|
+
/* Width constraints */
|
|
46
|
+
--width-header-max: 100%;
|
|
47
|
+
|
|
48
|
+
/* === SPACING === */
|
|
49
|
+
/* Section spacing */
|
|
50
|
+
--spacing-header-container: var(--spacing-100);
|
|
51
|
+
|
|
52
|
+
--padding-header-item-sm: var(--spacing-100);
|
|
53
|
+
--padding-header-item-md: var(--spacing-150);
|
|
54
|
+
--padding-header-item-lg: var(--spacing-200);
|
|
55
|
+
|
|
56
|
+
--spacing-header-nav-sm: var(--spacing-200);
|
|
57
|
+
--spacing-header-nav-md: var(--spacing-300);
|
|
58
|
+
--spacing-header-nav-lg: var(--spacing-400);
|
|
59
|
+
|
|
60
|
+
--spacing-header-actions-sm: var(--spacing-200);
|
|
61
|
+
--spacing-header-actions-md: var(--spacing-300);
|
|
62
|
+
--spacing-header-actions-lg: var(--spacing-400);
|
|
63
|
+
|
|
64
|
+
/* === TYPOGRAPHY === */
|
|
65
|
+
--font-weight-header-nav: var(--font-weight-medium);
|
|
66
|
+
--font-weight-header-nav-active: var(--font-weight-semibold);
|
|
67
|
+
|
|
68
|
+
/* === Z-INDEX === */
|
|
69
|
+
/* Mobile menu hamburger colors */
|
|
70
|
+
--color-header-hamburger-fg: var(--color-fg-primary);
|
|
71
|
+
--color-header-hamburger-fg-hover: var(--color-fg-secondary);
|
|
72
|
+
|
|
73
|
+
/* hamburger button */
|
|
74
|
+
--text-header-hamburger-sm: var(--text-header-sm);
|
|
75
|
+
--text-header-hamburger-md: var(--text-header-md);
|
|
76
|
+
--text-header-hamburger-lg: var(--text-header-lg);
|
|
77
|
+
|
|
78
|
+
--padding-header-hamburger-sm: var(--spacing-100);
|
|
79
|
+
--padding-header-hamburger-md: var(--spacing-150);
|
|
80
|
+
--padding-header-hamburger-lg: var(--spacing-200);
|
|
81
|
+
|
|
82
|
+
/* breakpoint */
|
|
83
|
+
--container-header-desktop: 48rem;
|
|
84
|
+
|
|
85
|
+
--duration-header: 300ms;
|
|
86
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@theme static {
|
|
2
|
+
/* === BASE COLOR MAPPING === */
|
|
3
|
+
--color-table: var(--color-surface);
|
|
4
|
+
--color-table-border: var(--color-border-primary);
|
|
5
|
+
--color-table-accent: var(--color-primary);
|
|
6
|
+
|
|
7
|
+
/* === DERIVED COLORS === */
|
|
8
|
+
/* Background colors */
|
|
9
|
+
--color-table-bg: var(--color-table);
|
|
10
|
+
--color-table-header-bg: oklch(
|
|
11
|
+
from var(--color-table-bg) calc(l - var(--surface-increment)) c h
|
|
12
|
+
);
|
|
13
|
+
--color-table-footer-bg: var(--color-table-header-bg);
|
|
14
|
+
--color-table-row-bg: transparent;
|
|
15
|
+
--color-table-row-bg-hover: oklch(
|
|
16
|
+
from var(--color-table-bg) calc(l + var(--state-hover)) c h
|
|
17
|
+
);
|
|
18
|
+
--color-table-row-bg-selected: --alpha(var(--color-table-accent) / 0.1);
|
|
19
|
+
--color-table-row-striped-bg-primary: oklch(
|
|
20
|
+
from var(--color-table-bg) calc(l - var(--surface-increment)) c h
|
|
21
|
+
);
|
|
22
|
+
--color-table-row-striped-bg-secondary: var(--color-table-row-bg);
|
|
23
|
+
|
|
24
|
+
/* Foreground colors */
|
|
25
|
+
--color-table-fg: var(--color-fg-primary);
|
|
26
|
+
--color-table-header-fg: var(--color-fg-primary);
|
|
27
|
+
--color-table-footer-fg: var(--color-fg-secondary);
|
|
28
|
+
--color-table-caption-fg: var(--color-fg-secondary);
|
|
29
|
+
|
|
30
|
+
/* === SPACING === */
|
|
31
|
+
/* Cell padding */
|
|
32
|
+
--padding-table-cell-sm: var(--spacing-100) var(--spacing-150);
|
|
33
|
+
--padding-table-cell-md: var(--spacing-150) var(--spacing-200);
|
|
34
|
+
--padding-table-cell-lg: var(--spacing-200) var(--spacing-250);
|
|
35
|
+
|
|
36
|
+
/* Caption padding */
|
|
37
|
+
--padding-table-caption-sm: var(--spacing-100);
|
|
38
|
+
--padding-table-caption-md: var(--spacing-150);
|
|
39
|
+
--padding-table-caption-lg: var(--spacing-200);
|
|
40
|
+
|
|
41
|
+
/* === TYPOGRAPHY === */
|
|
42
|
+
/* Font weights */
|
|
43
|
+
--font-weight-table-header: var(--font-weight-semibold);
|
|
44
|
+
--font-weight-table-footer: var(--font-weight-medium);
|
|
45
|
+
--font-weight-table-caption: var(--font-weight-normal);
|
|
46
|
+
|
|
47
|
+
/* Text sizes for table content */
|
|
48
|
+
--text-table-sm: var(--text-sm);
|
|
49
|
+
--text-table-md: var(--text-md);
|
|
50
|
+
--text-table-lg: var(--text-lg);
|
|
51
|
+
|
|
52
|
+
/* Caption text sizes */
|
|
53
|
+
--text-table-caption-sm: var(--text-xs);
|
|
54
|
+
--text-table-caption-md: var(--text-sm);
|
|
55
|
+
--text-table-caption-lg: var(--text-md);
|
|
56
|
+
|
|
57
|
+
/* === BORDERS & RADIUS === */
|
|
58
|
+
--border-width-table: var(--border-width-sm);
|
|
59
|
+
--radius-table: var(--radius-sm);
|
|
60
|
+
|
|
61
|
+
/* === SHADOWS === */
|
|
62
|
+
--shadow-table-outline: var(--shadow-sm);
|
|
63
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
@plugin 'tailwindcss-animate';
|
|
3
|
+
|
|
4
|
+
/* Primitive tokens */
|
|
5
|
+
@import "./_base.css";
|
|
6
|
+
@import "./_colors.css";
|
|
7
|
+
@import "./_spacing.css";
|
|
8
|
+
@import "./_typography.css";
|
|
9
|
+
@import "./_layout.css";
|
|
10
|
+
|
|
11
|
+
/* Semantic tokens (dependent on primitives) */
|
|
12
|
+
@import "./_semantic.css";
|
|
13
|
+
|
|
14
|
+
/* Component tokens (dependent on semantic) */
|
|
15
|
+
@import "./components/components.css";
|
|
16
|
+
|
|
17
|
+
:root {
|
|
18
|
+
color-scheme: light dark;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.light {
|
|
22
|
+
color-scheme: light;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.dark {
|
|
26
|
+
color-scheme: dark;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.always-light {
|
|
30
|
+
color-scheme: light;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.always-dark {
|
|
34
|
+
color-scheme: dark;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@media (prefers-color-scheme: light) {
|
|
38
|
+
.reverse {
|
|
39
|
+
color-scheme: dark;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@media (prefers-color-scheme: dark) {
|
|
44
|
+
.reverse {
|
|
45
|
+
color-scheme: light;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.light .reverse {
|
|
50
|
+
color-scheme: dark;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.dark .reverse {
|
|
54
|
+
color-scheme: light;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
body {
|
|
58
|
+
background-color: var(--color-base);
|
|
59
|
+
color: var(--color-fg-primary);
|
|
60
|
+
|
|
61
|
+
font-family: system-ui, sans-serif;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.sbdocs-preview {
|
|
65
|
+
background-color: var(--color-base) !important;
|
|
66
|
+
color: var(--color-fg-primary) !important;
|
|
67
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/* Tokens only - without Tailwind import */
|
|
2
|
+
/* This file is for apps that import Tailwind themselves */
|
|
3
|
+
|
|
4
|
+
/* Primitive tokens */
|
|
5
|
+
@import "./_base.css";
|
|
6
|
+
@import "./_colors.css";
|
|
7
|
+
@import "./_spacing.css";
|
|
8
|
+
@import "./_typography.css";
|
|
9
|
+
|
|
10
|
+
/* Semantic tokens (dependent on primitives) */
|
|
11
|
+
@import "./_semantic.css";
|
|
12
|
+
|
|
13
|
+
/* Component tokens (dependent on semantic) */
|
|
14
|
+
@import "./components/components.css";
|
|
15
|
+
|
|
16
|
+
/* Base styles */
|
|
17
|
+
:root {
|
|
18
|
+
color-scheme: light dark;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.light {
|
|
22
|
+
color-scheme: light;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.dark {
|
|
26
|
+
color-scheme: dark;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.always-light {
|
|
30
|
+
color-scheme: light;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.always-dark {
|
|
34
|
+
color-scheme: dark;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@media (prefers-color-scheme: light) {
|
|
38
|
+
.reverse {
|
|
39
|
+
color-scheme: dark;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@media (prefers-color-scheme: dark) {
|
|
44
|
+
.reverse {
|
|
45
|
+
color-scheme: light;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.light .reverse {
|
|
50
|
+
color-scheme: dark;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.dark .reverse {
|
|
54
|
+
color-scheme: light;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
body {
|
|
58
|
+
background-color: var(--color-base);
|
|
59
|
+
color: var(--color-fg-primary);
|
|
60
|
+
font-family: system-ui, sans-serif;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.sbdocs-preview {
|
|
64
|
+
background-color: var(--color-base) !important;
|
|
65
|
+
color: var(--color-fg-primary) !important;
|
|
66
|
+
}
|