@sentropic/design-system-themes 0.3.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.
@@ -0,0 +1,186 @@
1
+ /* Generated by packages/themes/scripts/build-css.mjs. */
2
+ /* Theme: Entropic (entropic) */
3
+ [data-st-theme="entropic"] {
4
+ --st-semantic-surface-default: #ffffff;
5
+ --st-semantic-surface-subtle: #f8fafc;
6
+ --st-semantic-surface-raised: #ffffff;
7
+ --st-semantic-surface-inverse: #0f172a;
8
+ --st-semantic-surface-overlay: rgb(15 23 42 / 0.48);
9
+ --st-semantic-text-primary: #0f172a;
10
+ --st-semantic-text-secondary: #475569;
11
+ --st-semantic-text-muted: #64748b;
12
+ --st-semantic-text-inverse: #ffffff;
13
+ --st-semantic-text-link: oklch(50% 0.134 242.749);
14
+ --st-semantic-border-subtle: #e2e8f0;
15
+ --st-semantic-border-strong: #94a3b8;
16
+ --st-semantic-border-interactive: oklch(50% 0.134 242.749);
17
+ --st-semantic-action-primary: oklch(50% 0.134 242.749);
18
+ --st-semantic-action-primaryText: #ffffff;
19
+ --st-semantic-action-secondary: #f8fafc;
20
+ --st-semantic-action-secondaryText: #0f172a;
21
+ --st-semantic-action-danger: #dc2626;
22
+ --st-semantic-feedback-success: #16a34a;
23
+ --st-semantic-feedback-warning: #d97706;
24
+ --st-semantic-feedback-error: #dc2626;
25
+ --st-semantic-feedback-info: #2563eb;
26
+ --st-semantic-status-pending: #d97706;
27
+ --st-semantic-status-processing: #2563eb;
28
+ --st-semantic-status-completed: #16a34a;
29
+ --st-semantic-status-failed: #dc2626;
30
+ --st-semantic-data-category1: #4E79A7;
31
+ --st-semantic-data-category2: #F28E2B;
32
+ --st-semantic-data-category3: #E15759;
33
+ --st-semantic-data-category4: #76B7B2;
34
+ --st-semantic-data-category5: #59A14F;
35
+ --st-semantic-data-category6: #EDC948;
36
+ --st-semantic-data-category7: #B07AA1;
37
+ --st-semantic-data-category8: #FF9DA7;
38
+ --st-component-button-radius: 0.375rem;
39
+ --st-component-button-primaryBackground: oklch(50% 0.134 242.749);
40
+ --st-component-button-primaryText: #ffffff;
41
+ --st-component-button-secondaryBackground: #f8fafc;
42
+ --st-component-button-secondaryText: #0f172a;
43
+ --st-component-link-text: oklch(50% 0.134 242.749);
44
+ --st-component-link-hoverText: oklch(50% 0.134 242.749);
45
+ --st-component-link-disabledText: #64748b;
46
+ --st-component-link-focusRing: oklch(50% 0.134 242.749);
47
+ --st-component-alert-background: #ffffff;
48
+ --st-component-alert-text: #0f172a;
49
+ --st-component-alert-border: #e2e8f0;
50
+ --st-component-alert-infoBorder: #2563eb;
51
+ --st-component-alert-successBorder: #16a34a;
52
+ --st-component-alert-warningBorder: #d97706;
53
+ --st-component-alert-errorBorder: #dc2626;
54
+ --st-component-alert-radius: 0.5rem;
55
+ --st-component-card-background: #ffffff;
56
+ --st-component-card-border: #e2e8f0;
57
+ --st-component-card-radius: 0.5rem;
58
+ --st-component-card-shadow: 0 1px 2px rgb(15 23 42 / 0.08);
59
+ --st-component-menu-background: #ffffff;
60
+ --st-component-menu-border: #e2e8f0;
61
+ --st-component-menu-text: #0f172a;
62
+ --st-component-menu-itemHoverBackground: #f8fafc;
63
+ --st-component-menu-disabledText: #64748b;
64
+ --st-component-menu-radius: 0.375rem;
65
+ --st-component-menu-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
66
+ --st-component-popover-background: #ffffff;
67
+ --st-component-popover-border: #e2e8f0;
68
+ --st-component-popover-text: #0f172a;
69
+ --st-component-popover-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
70
+ --st-component-popover-radius: 0.5rem;
71
+ --st-component-popover-zIndex: 80;
72
+ --st-component-dropdown-background: #ffffff;
73
+ --st-component-dropdown-border: #e2e8f0;
74
+ --st-component-dropdown-text: #0f172a;
75
+ --st-component-dropdown-optionHoverBackground: #f8fafc;
76
+ --st-component-dropdown-selectedBackground: oklch(50% 0.134 242.749);
77
+ --st-component-dropdown-selectedText: #ffffff;
78
+ --st-component-dropdown-radius: 0.375rem;
79
+ --st-component-dropdown-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
80
+ --st-component-input-background: #ffffff;
81
+ --st-component-input-border: #e2e8f0;
82
+ --st-component-input-focusRing: oklch(50% 0.134 242.749);
83
+ --st-component-input-radius: 0.375rem;
84
+ --st-component-field-labelText: #0f172a;
85
+ --st-component-field-helpText: #475569;
86
+ --st-component-field-errorText: #dc2626;
87
+ --st-component-field-gap: 0.5rem;
88
+ --st-component-field-maxWidth: 28rem;
89
+ --st-component-control-background: #ffffff;
90
+ --st-component-control-text: #0f172a;
91
+ --st-component-control-placeholderText: #64748b;
92
+ --st-component-control-border: #e2e8f0;
93
+ --st-component-control-hoverBorder: #94a3b8;
94
+ --st-component-control-focusRing: oklch(50% 0.134 242.749);
95
+ --st-component-control-invalidBorder: #dc2626;
96
+ --st-component-control-disabledBackground: #f8fafc;
97
+ --st-component-control-disabledText: #64748b;
98
+ --st-component-control-radius: 0.375rem;
99
+ --st-component-control-smHeight: 2rem;
100
+ --st-component-control-mdHeight: 2.5rem;
101
+ --st-component-control-lgHeight: 3rem;
102
+ --st-component-selection-checkedBackground: oklch(50% 0.134 242.749);
103
+ --st-component-selection-checkedText: #ffffff;
104
+ --st-component-selection-border: #e2e8f0;
105
+ --st-component-selection-switchTrack: #94a3b8;
106
+ --st-component-selection-switchTrackChecked: oklch(50% 0.134 242.749);
107
+ --st-component-selection-switchThumb: #ffffff;
108
+ --st-component-overlay-backdrop: rgb(15 23 42 / 0.48);
109
+ --st-component-overlay-surface: #ffffff;
110
+ --st-component-overlay-border: #e2e8f0;
111
+ --st-component-overlay-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
112
+ --st-component-overlay-radius: 0.5rem;
113
+ --st-component-overlay-zIndex: 90;
114
+ --st-component-drawer-backdrop: rgb(15 23 42 / 0.48);
115
+ --st-component-drawer-surface: #ffffff;
116
+ --st-component-drawer-border: #e2e8f0;
117
+ --st-component-drawer-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
118
+ --st-component-drawer-width: 24rem;
119
+ --st-component-drawer-zIndex: 90;
120
+ --st-component-emptyState-background: #f8fafc;
121
+ --st-component-emptyState-border: #e2e8f0;
122
+ --st-component-emptyState-titleText: #0f172a;
123
+ --st-component-emptyState-messageText: #475569;
124
+ --st-component-emptyState-radius: 0.5rem;
125
+ --st-component-loadingState-indicator: oklch(50% 0.134 242.749);
126
+ --st-component-loadingState-track: #f8fafc;
127
+ --st-component-loadingState-text: #475569;
128
+ --st-component-loadingState-radius: 999px;
129
+ --st-component-tooltip-background: #0f172a;
130
+ --st-component-tooltip-text: #ffffff;
131
+ --st-component-tooltip-radius: 0.375rem;
132
+ --st-component-tooltip-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
133
+ --st-component-tooltip-zIndex: 80;
134
+ --st-component-toast-background: #ffffff;
135
+ --st-component-toast-text: #0f172a;
136
+ --st-component-toast-border: #e2e8f0;
137
+ --st-component-toast-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
138
+ --st-component-toast-radius: 0.5rem;
139
+ --st-component-toast-infoBorder: #2563eb;
140
+ --st-component-toast-successBorder: #16a34a;
141
+ --st-component-toast-warningBorder: #d97706;
142
+ --st-component-toast-errorBorder: #dc2626;
143
+ --st-component-toast-zIndex: 100;
144
+ --st-component-dataTable-headerBackground: #f8fafc;
145
+ --st-component-dataTable-rowBackground: #ffffff;
146
+ --st-component-dataTable-rowHoverBackground: #f8fafc;
147
+ --st-component-dataTable-border: #e2e8f0;
148
+ --st-component-dataTable-text: #0f172a;
149
+ --st-component-dataTable-captionText: #475569;
150
+ --st-component-dataTable-radius: 0.5rem;
151
+ --st-component-tabs-activeText: #0f172a;
152
+ --st-component-tabs-inactiveText: #475569;
153
+ --st-component-tabs-border: #e2e8f0;
154
+ --st-component-tabs-indicator: oklch(50% 0.134 242.749);
155
+ --st-component-tabs-panelBackground: #ffffff;
156
+ --st-component-pagination-background: #ffffff;
157
+ --st-component-pagination-border: #e2e8f0;
158
+ --st-component-pagination-text: #0f172a;
159
+ --st-component-pagination-activeBackground: oklch(50% 0.134 242.749);
160
+ --st-component-pagination-activeText: #ffffff;
161
+ --st-component-pagination-disabledText: #64748b;
162
+ --st-component-pagination-radius: 0.375rem;
163
+ --st-component-breadcrumb-text: #475569;
164
+ --st-component-breadcrumb-currentText: #0f172a;
165
+ --st-component-breadcrumb-separator: #64748b;
166
+ --st-component-breadcrumb-linkText: oklch(50% 0.134 242.749);
167
+ --st-component-sideNav-background: #ffffff;
168
+ --st-component-sideNav-border: #e2e8f0;
169
+ --st-component-sideNav-itemText: #475569;
170
+ --st-component-sideNav-activeBackground: #f8fafc;
171
+ --st-component-sideNav-activeText: #0f172a;
172
+ --st-component-sideNav-width: 16rem;
173
+ --st-component-chat-userBubbleBackground: oklch(50% 0.134 242.749);
174
+ --st-component-chat-userBubbleText: #ffffff;
175
+ --st-component-chat-assistantBubbleBackground: #f8fafc;
176
+ --st-component-chat-assistantBubbleText: #0f172a;
177
+ --st-component-chat-composerSurface: #ffffff;
178
+ --st-component-chat-toolCallSurface: #f8fafc;
179
+ --st-component-graph-panelBackground: #0f172a;
180
+ --st-component-graph-panelText: #ffffff;
181
+ --st-component-graph-edgeDefault: rgb(226 232 240 / 0.56);
182
+ --st-component-graph-community1: #4E79A7;
183
+ --st-component-graph-community2: #F28E2B;
184
+ --st-component-graph-community3: #E15759;
185
+ --st-component-graph-community4: #76B7B2;
186
+ }
package/css/forge.css ADDED
@@ -0,0 +1,186 @@
1
+ /* Generated by packages/themes/scripts/build-css.mjs. */
2
+ /* Theme: Sent Tech Forge (forge) */
3
+ [data-st-theme="forge"] {
4
+ --st-semantic-surface-default: #ffffff;
5
+ --st-semantic-surface-subtle: #f8fafc;
6
+ --st-semantic-surface-raised: #ffffff;
7
+ --st-semantic-surface-inverse: #0f172a;
8
+ --st-semantic-surface-overlay: rgb(15 23 42 / 0.48);
9
+ --st-semantic-text-primary: #0f172a;
10
+ --st-semantic-text-secondary: #475569;
11
+ --st-semantic-text-muted: #64748b;
12
+ --st-semantic-text-inverse: #ffffff;
13
+ --st-semantic-text-link: oklch(50% 0.134 242.749);
14
+ --st-semantic-border-subtle: #e2e8f0;
15
+ --st-semantic-border-strong: #94a3b8;
16
+ --st-semantic-border-interactive: oklch(50% 0.134 242.749);
17
+ --st-semantic-action-primary: hsl(215 70% 25%);
18
+ --st-semantic-action-primaryText: hsl(0 0% 100%);
19
+ --st-semantic-action-secondary: #f8fafc;
20
+ --st-semantic-action-secondaryText: #0f172a;
21
+ --st-semantic-action-danger: #dc2626;
22
+ --st-semantic-feedback-success: #16a34a;
23
+ --st-semantic-feedback-warning: #d97706;
24
+ --st-semantic-feedback-error: #dc2626;
25
+ --st-semantic-feedback-info: #2563eb;
26
+ --st-semantic-status-pending: #d97706;
27
+ --st-semantic-status-processing: #2563eb;
28
+ --st-semantic-status-completed: #16a34a;
29
+ --st-semantic-status-failed: #dc2626;
30
+ --st-semantic-data-category1: #4E79A7;
31
+ --st-semantic-data-category2: #F28E2B;
32
+ --st-semantic-data-category3: #E15759;
33
+ --st-semantic-data-category4: #76B7B2;
34
+ --st-semantic-data-category5: #59A14F;
35
+ --st-semantic-data-category6: #EDC948;
36
+ --st-semantic-data-category7: #B07AA1;
37
+ --st-semantic-data-category8: #FF9DA7;
38
+ --st-component-button-radius: 0.375rem;
39
+ --st-component-button-primaryBackground: oklch(50% 0.134 242.749);
40
+ --st-component-button-primaryText: #ffffff;
41
+ --st-component-button-secondaryBackground: #f8fafc;
42
+ --st-component-button-secondaryText: #0f172a;
43
+ --st-component-link-text: oklch(50% 0.134 242.749);
44
+ --st-component-link-hoverText: oklch(50% 0.134 242.749);
45
+ --st-component-link-disabledText: #64748b;
46
+ --st-component-link-focusRing: oklch(50% 0.134 242.749);
47
+ --st-component-alert-background: #ffffff;
48
+ --st-component-alert-text: #0f172a;
49
+ --st-component-alert-border: #e2e8f0;
50
+ --st-component-alert-infoBorder: #2563eb;
51
+ --st-component-alert-successBorder: #16a34a;
52
+ --st-component-alert-warningBorder: #d97706;
53
+ --st-component-alert-errorBorder: #dc2626;
54
+ --st-component-alert-radius: 0.5rem;
55
+ --st-component-card-background: #ffffff;
56
+ --st-component-card-border: #e2e8f0;
57
+ --st-component-card-radius: 0.5rem;
58
+ --st-component-card-shadow: 0 1px 2px rgb(15 23 42 / 0.08);
59
+ --st-component-menu-background: #ffffff;
60
+ --st-component-menu-border: #e2e8f0;
61
+ --st-component-menu-text: #0f172a;
62
+ --st-component-menu-itemHoverBackground: #f8fafc;
63
+ --st-component-menu-disabledText: #64748b;
64
+ --st-component-menu-radius: 0.375rem;
65
+ --st-component-menu-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
66
+ --st-component-popover-background: #ffffff;
67
+ --st-component-popover-border: #e2e8f0;
68
+ --st-component-popover-text: #0f172a;
69
+ --st-component-popover-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
70
+ --st-component-popover-radius: 0.5rem;
71
+ --st-component-popover-zIndex: 80;
72
+ --st-component-dropdown-background: #ffffff;
73
+ --st-component-dropdown-border: #e2e8f0;
74
+ --st-component-dropdown-text: #0f172a;
75
+ --st-component-dropdown-optionHoverBackground: #f8fafc;
76
+ --st-component-dropdown-selectedBackground: oklch(50% 0.134 242.749);
77
+ --st-component-dropdown-selectedText: #ffffff;
78
+ --st-component-dropdown-radius: 0.375rem;
79
+ --st-component-dropdown-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
80
+ --st-component-input-background: #ffffff;
81
+ --st-component-input-border: #e2e8f0;
82
+ --st-component-input-focusRing: oklch(50% 0.134 242.749);
83
+ --st-component-input-radius: 0.375rem;
84
+ --st-component-field-labelText: #0f172a;
85
+ --st-component-field-helpText: #475569;
86
+ --st-component-field-errorText: #dc2626;
87
+ --st-component-field-gap: 0.5rem;
88
+ --st-component-field-maxWidth: 28rem;
89
+ --st-component-control-background: #ffffff;
90
+ --st-component-control-text: #0f172a;
91
+ --st-component-control-placeholderText: #64748b;
92
+ --st-component-control-border: #e2e8f0;
93
+ --st-component-control-hoverBorder: #94a3b8;
94
+ --st-component-control-focusRing: oklch(50% 0.134 242.749);
95
+ --st-component-control-invalidBorder: #dc2626;
96
+ --st-component-control-disabledBackground: #f8fafc;
97
+ --st-component-control-disabledText: #64748b;
98
+ --st-component-control-radius: 0.375rem;
99
+ --st-component-control-smHeight: 2rem;
100
+ --st-component-control-mdHeight: 2.5rem;
101
+ --st-component-control-lgHeight: 3rem;
102
+ --st-component-selection-checkedBackground: oklch(50% 0.134 242.749);
103
+ --st-component-selection-checkedText: #ffffff;
104
+ --st-component-selection-border: #e2e8f0;
105
+ --st-component-selection-switchTrack: #94a3b8;
106
+ --st-component-selection-switchTrackChecked: oklch(50% 0.134 242.749);
107
+ --st-component-selection-switchThumb: #ffffff;
108
+ --st-component-overlay-backdrop: rgb(15 23 42 / 0.48);
109
+ --st-component-overlay-surface: #ffffff;
110
+ --st-component-overlay-border: #e2e8f0;
111
+ --st-component-overlay-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
112
+ --st-component-overlay-radius: 0.5rem;
113
+ --st-component-overlay-zIndex: 90;
114
+ --st-component-drawer-backdrop: rgb(15 23 42 / 0.48);
115
+ --st-component-drawer-surface: #ffffff;
116
+ --st-component-drawer-border: #e2e8f0;
117
+ --st-component-drawer-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
118
+ --st-component-drawer-width: 24rem;
119
+ --st-component-drawer-zIndex: 90;
120
+ --st-component-emptyState-background: #f8fafc;
121
+ --st-component-emptyState-border: #e2e8f0;
122
+ --st-component-emptyState-titleText: #0f172a;
123
+ --st-component-emptyState-messageText: #475569;
124
+ --st-component-emptyState-radius: 0.5rem;
125
+ --st-component-loadingState-indicator: oklch(50% 0.134 242.749);
126
+ --st-component-loadingState-track: #f8fafc;
127
+ --st-component-loadingState-text: #475569;
128
+ --st-component-loadingState-radius: 999px;
129
+ --st-component-tooltip-background: #0f172a;
130
+ --st-component-tooltip-text: #ffffff;
131
+ --st-component-tooltip-radius: 0.375rem;
132
+ --st-component-tooltip-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
133
+ --st-component-tooltip-zIndex: 80;
134
+ --st-component-toast-background: #ffffff;
135
+ --st-component-toast-text: #0f172a;
136
+ --st-component-toast-border: #e2e8f0;
137
+ --st-component-toast-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
138
+ --st-component-toast-radius: 0.5rem;
139
+ --st-component-toast-infoBorder: #2563eb;
140
+ --st-component-toast-successBorder: #16a34a;
141
+ --st-component-toast-warningBorder: #d97706;
142
+ --st-component-toast-errorBorder: #dc2626;
143
+ --st-component-toast-zIndex: 100;
144
+ --st-component-dataTable-headerBackground: #f8fafc;
145
+ --st-component-dataTable-rowBackground: #ffffff;
146
+ --st-component-dataTable-rowHoverBackground: #f8fafc;
147
+ --st-component-dataTable-border: #e2e8f0;
148
+ --st-component-dataTable-text: #0f172a;
149
+ --st-component-dataTable-captionText: #475569;
150
+ --st-component-dataTable-radius: 0.5rem;
151
+ --st-component-tabs-activeText: #0f172a;
152
+ --st-component-tabs-inactiveText: #475569;
153
+ --st-component-tabs-border: #e2e8f0;
154
+ --st-component-tabs-indicator: oklch(50% 0.134 242.749);
155
+ --st-component-tabs-panelBackground: #ffffff;
156
+ --st-component-pagination-background: #ffffff;
157
+ --st-component-pagination-border: #e2e8f0;
158
+ --st-component-pagination-text: #0f172a;
159
+ --st-component-pagination-activeBackground: oklch(50% 0.134 242.749);
160
+ --st-component-pagination-activeText: #ffffff;
161
+ --st-component-pagination-disabledText: #64748b;
162
+ --st-component-pagination-radius: 0.375rem;
163
+ --st-component-breadcrumb-text: #475569;
164
+ --st-component-breadcrumb-currentText: #0f172a;
165
+ --st-component-breadcrumb-separator: #64748b;
166
+ --st-component-breadcrumb-linkText: oklch(50% 0.134 242.749);
167
+ --st-component-sideNav-background: #ffffff;
168
+ --st-component-sideNav-border: #e2e8f0;
169
+ --st-component-sideNav-itemText: #475569;
170
+ --st-component-sideNav-activeBackground: #f8fafc;
171
+ --st-component-sideNav-activeText: #0f172a;
172
+ --st-component-sideNav-width: 16rem;
173
+ --st-component-chat-userBubbleBackground: oklch(50% 0.134 242.749);
174
+ --st-component-chat-userBubbleText: #ffffff;
175
+ --st-component-chat-assistantBubbleBackground: #f8fafc;
176
+ --st-component-chat-assistantBubbleText: #0f172a;
177
+ --st-component-chat-composerSurface: #ffffff;
178
+ --st-component-chat-toolCallSurface: #f8fafc;
179
+ --st-component-graph-panelBackground: #0f172a;
180
+ --st-component-graph-panelText: #ffffff;
181
+ --st-component-graph-edgeDefault: rgb(226 232 240 / 0.56);
182
+ --st-component-graph-community1: #4E79A7;
183
+ --st-component-graph-community2: #F28E2B;
184
+ --st-component-graph-community3: #E15759;
185
+ --st-component-graph-community4: #76B7B2;
186
+ }
@@ -0,0 +1,186 @@
1
+ /* Generated by packages/themes/scripts/build-css.mjs. */
2
+ /* Theme: Sent Tech (sent-tech) */
3
+ [data-st-theme="sent-tech"] {
4
+ --st-semantic-surface-default: #ffffff;
5
+ --st-semantic-surface-subtle: #f8fafc;
6
+ --st-semantic-surface-raised: #ffffff;
7
+ --st-semantic-surface-inverse: #0f172a;
8
+ --st-semantic-surface-overlay: rgb(15 23 42 / 0.48);
9
+ --st-semantic-text-primary: #0f172a;
10
+ --st-semantic-text-secondary: #475569;
11
+ --st-semantic-text-muted: #64748b;
12
+ --st-semantic-text-inverse: #ffffff;
13
+ --st-semantic-text-link: oklch(50% 0.134 242.749);
14
+ --st-semantic-border-subtle: #e2e8f0;
15
+ --st-semantic-border-strong: #94a3b8;
16
+ --st-semantic-border-interactive: oklch(50% 0.134 242.749);
17
+ --st-semantic-action-primary: oklch(50% 0.134 242.749);
18
+ --st-semantic-action-primaryText: #ffffff;
19
+ --st-semantic-action-secondary: #f8fafc;
20
+ --st-semantic-action-secondaryText: #0f172a;
21
+ --st-semantic-action-danger: #dc2626;
22
+ --st-semantic-feedback-success: #16a34a;
23
+ --st-semantic-feedback-warning: #d97706;
24
+ --st-semantic-feedback-error: #dc2626;
25
+ --st-semantic-feedback-info: #2563eb;
26
+ --st-semantic-status-pending: #d97706;
27
+ --st-semantic-status-processing: #2563eb;
28
+ --st-semantic-status-completed: #16a34a;
29
+ --st-semantic-status-failed: #dc2626;
30
+ --st-semantic-data-category1: #4E79A7;
31
+ --st-semantic-data-category2: #F28E2B;
32
+ --st-semantic-data-category3: #E15759;
33
+ --st-semantic-data-category4: #76B7B2;
34
+ --st-semantic-data-category5: #59A14F;
35
+ --st-semantic-data-category6: #EDC948;
36
+ --st-semantic-data-category7: #B07AA1;
37
+ --st-semantic-data-category8: #FF9DA7;
38
+ --st-component-button-radius: 0.375rem;
39
+ --st-component-button-primaryBackground: oklch(50% 0.134 242.749);
40
+ --st-component-button-primaryText: #ffffff;
41
+ --st-component-button-secondaryBackground: #f8fafc;
42
+ --st-component-button-secondaryText: #0f172a;
43
+ --st-component-link-text: oklch(50% 0.134 242.749);
44
+ --st-component-link-hoverText: oklch(50% 0.134 242.749);
45
+ --st-component-link-disabledText: #64748b;
46
+ --st-component-link-focusRing: oklch(50% 0.134 242.749);
47
+ --st-component-alert-background: #ffffff;
48
+ --st-component-alert-text: #0f172a;
49
+ --st-component-alert-border: #e2e8f0;
50
+ --st-component-alert-infoBorder: #2563eb;
51
+ --st-component-alert-successBorder: #16a34a;
52
+ --st-component-alert-warningBorder: #d97706;
53
+ --st-component-alert-errorBorder: #dc2626;
54
+ --st-component-alert-radius: 0.5rem;
55
+ --st-component-card-background: #ffffff;
56
+ --st-component-card-border: #e2e8f0;
57
+ --st-component-card-radius: 0.5rem;
58
+ --st-component-card-shadow: 0 1px 2px rgb(15 23 42 / 0.08);
59
+ --st-component-menu-background: #ffffff;
60
+ --st-component-menu-border: #e2e8f0;
61
+ --st-component-menu-text: #0f172a;
62
+ --st-component-menu-itemHoverBackground: #f8fafc;
63
+ --st-component-menu-disabledText: #64748b;
64
+ --st-component-menu-radius: 0.375rem;
65
+ --st-component-menu-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
66
+ --st-component-popover-background: #ffffff;
67
+ --st-component-popover-border: #e2e8f0;
68
+ --st-component-popover-text: #0f172a;
69
+ --st-component-popover-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
70
+ --st-component-popover-radius: 0.5rem;
71
+ --st-component-popover-zIndex: 80;
72
+ --st-component-dropdown-background: #ffffff;
73
+ --st-component-dropdown-border: #e2e8f0;
74
+ --st-component-dropdown-text: #0f172a;
75
+ --st-component-dropdown-optionHoverBackground: #f8fafc;
76
+ --st-component-dropdown-selectedBackground: oklch(50% 0.134 242.749);
77
+ --st-component-dropdown-selectedText: #ffffff;
78
+ --st-component-dropdown-radius: 0.375rem;
79
+ --st-component-dropdown-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
80
+ --st-component-input-background: #ffffff;
81
+ --st-component-input-border: #e2e8f0;
82
+ --st-component-input-focusRing: oklch(50% 0.134 242.749);
83
+ --st-component-input-radius: 0.375rem;
84
+ --st-component-field-labelText: #0f172a;
85
+ --st-component-field-helpText: #475569;
86
+ --st-component-field-errorText: #dc2626;
87
+ --st-component-field-gap: 0.5rem;
88
+ --st-component-field-maxWidth: 28rem;
89
+ --st-component-control-background: #ffffff;
90
+ --st-component-control-text: #0f172a;
91
+ --st-component-control-placeholderText: #64748b;
92
+ --st-component-control-border: #e2e8f0;
93
+ --st-component-control-hoverBorder: #94a3b8;
94
+ --st-component-control-focusRing: oklch(50% 0.134 242.749);
95
+ --st-component-control-invalidBorder: #dc2626;
96
+ --st-component-control-disabledBackground: #f8fafc;
97
+ --st-component-control-disabledText: #64748b;
98
+ --st-component-control-radius: 0.375rem;
99
+ --st-component-control-smHeight: 2rem;
100
+ --st-component-control-mdHeight: 2.5rem;
101
+ --st-component-control-lgHeight: 3rem;
102
+ --st-component-selection-checkedBackground: oklch(50% 0.134 242.749);
103
+ --st-component-selection-checkedText: #ffffff;
104
+ --st-component-selection-border: #e2e8f0;
105
+ --st-component-selection-switchTrack: #94a3b8;
106
+ --st-component-selection-switchTrackChecked: oklch(50% 0.134 242.749);
107
+ --st-component-selection-switchThumb: #ffffff;
108
+ --st-component-overlay-backdrop: rgb(15 23 42 / 0.48);
109
+ --st-component-overlay-surface: #ffffff;
110
+ --st-component-overlay-border: #e2e8f0;
111
+ --st-component-overlay-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
112
+ --st-component-overlay-radius: 0.5rem;
113
+ --st-component-overlay-zIndex: 90;
114
+ --st-component-drawer-backdrop: rgb(15 23 42 / 0.48);
115
+ --st-component-drawer-surface: #ffffff;
116
+ --st-component-drawer-border: #e2e8f0;
117
+ --st-component-drawer-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
118
+ --st-component-drawer-width: 24rem;
119
+ --st-component-drawer-zIndex: 90;
120
+ --st-component-emptyState-background: #f8fafc;
121
+ --st-component-emptyState-border: #e2e8f0;
122
+ --st-component-emptyState-titleText: #0f172a;
123
+ --st-component-emptyState-messageText: #475569;
124
+ --st-component-emptyState-radius: 0.5rem;
125
+ --st-component-loadingState-indicator: oklch(50% 0.134 242.749);
126
+ --st-component-loadingState-track: #f8fafc;
127
+ --st-component-loadingState-text: #475569;
128
+ --st-component-loadingState-radius: 999px;
129
+ --st-component-tooltip-background: #0f172a;
130
+ --st-component-tooltip-text: #ffffff;
131
+ --st-component-tooltip-radius: 0.375rem;
132
+ --st-component-tooltip-shadow: 0 8px 24px rgb(15 23 42 / 0.12);
133
+ --st-component-tooltip-zIndex: 80;
134
+ --st-component-toast-background: #ffffff;
135
+ --st-component-toast-text: #0f172a;
136
+ --st-component-toast-border: #e2e8f0;
137
+ --st-component-toast-shadow: 0 18px 45px rgb(15 23 42 / 0.18);
138
+ --st-component-toast-radius: 0.5rem;
139
+ --st-component-toast-infoBorder: #2563eb;
140
+ --st-component-toast-successBorder: #16a34a;
141
+ --st-component-toast-warningBorder: #d97706;
142
+ --st-component-toast-errorBorder: #dc2626;
143
+ --st-component-toast-zIndex: 100;
144
+ --st-component-dataTable-headerBackground: #f8fafc;
145
+ --st-component-dataTable-rowBackground: #ffffff;
146
+ --st-component-dataTable-rowHoverBackground: #f8fafc;
147
+ --st-component-dataTable-border: #e2e8f0;
148
+ --st-component-dataTable-text: #0f172a;
149
+ --st-component-dataTable-captionText: #475569;
150
+ --st-component-dataTable-radius: 0.5rem;
151
+ --st-component-tabs-activeText: #0f172a;
152
+ --st-component-tabs-inactiveText: #475569;
153
+ --st-component-tabs-border: #e2e8f0;
154
+ --st-component-tabs-indicator: oklch(50% 0.134 242.749);
155
+ --st-component-tabs-panelBackground: #ffffff;
156
+ --st-component-pagination-background: #ffffff;
157
+ --st-component-pagination-border: #e2e8f0;
158
+ --st-component-pagination-text: #0f172a;
159
+ --st-component-pagination-activeBackground: oklch(50% 0.134 242.749);
160
+ --st-component-pagination-activeText: #ffffff;
161
+ --st-component-pagination-disabledText: #64748b;
162
+ --st-component-pagination-radius: 0.375rem;
163
+ --st-component-breadcrumb-text: #475569;
164
+ --st-component-breadcrumb-currentText: #0f172a;
165
+ --st-component-breadcrumb-separator: #64748b;
166
+ --st-component-breadcrumb-linkText: oklch(50% 0.134 242.749);
167
+ --st-component-sideNav-background: #ffffff;
168
+ --st-component-sideNav-border: #e2e8f0;
169
+ --st-component-sideNav-itemText: #475569;
170
+ --st-component-sideNav-activeBackground: #f8fafc;
171
+ --st-component-sideNav-activeText: #0f172a;
172
+ --st-component-sideNav-width: 16rem;
173
+ --st-component-chat-userBubbleBackground: oklch(50% 0.134 242.749);
174
+ --st-component-chat-userBubbleText: #ffffff;
175
+ --st-component-chat-assistantBubbleBackground: #f8fafc;
176
+ --st-component-chat-assistantBubbleText: #0f172a;
177
+ --st-component-chat-composerSurface: #ffffff;
178
+ --st-component-chat-toolCallSurface: #f8fafc;
179
+ --st-component-graph-panelBackground: #0f172a;
180
+ --st-component-graph-panelText: #ffffff;
181
+ --st-component-graph-edgeDefault: rgb(226 232 240 / 0.56);
182
+ --st-component-graph-community1: #4E79A7;
183
+ --st-component-graph-community2: #F28E2B;
184
+ --st-component-graph-community3: #E15759;
185
+ --st-component-graph-community4: #76B7B2;
186
+ }
@@ -0,0 +1,7 @@
1
+ export interface CompileThemeOptions {
2
+ selector?: string;
3
+ namespace?: string;
4
+ }
5
+ export declare function compileTheme(input: unknown, options?: CompileThemeOptions): string;
6
+ export declare function compileThemeStyleTag(input: unknown, options?: CompileThemeOptions): string;
7
+ //# sourceMappingURL=compile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,mBAAwB,GAAG,MAAM,CAMtF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,mBAAwB,GAAG,MAAM,CAI9F"}
@@ -0,0 +1,15 @@
1
+ import { toCssVariables } from "@sentropic/design-system-tokens";
2
+ import { assertTenantTheme } from "./schema.js";
3
+ export function compileTheme(input, options = {}) {
4
+ assertTenantTheme(input);
5
+ const theme = input;
6
+ const selector = options.selector ?? `[data-st-theme="${theme.id}"]`;
7
+ const namespace = options.namespace ?? "st";
8
+ return toCssVariables(theme.tokens, selector, namespace);
9
+ }
10
+ export function compileThemeStyleTag(input, options = {}) {
11
+ assertTenantTheme(input);
12
+ const theme = input;
13
+ return `<style data-st-theme-style="${theme.id}">\n${compileTheme(theme, options)}</style>`;
14
+ }
15
+ //# sourceMappingURL=compile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,aAAa,CAAC;AAOlE,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,UAA+B,EAAE;IAC5E,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzB,MAAM,KAAK,GAAG,KAAoB,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,mBAAmB,KAAK,CAAC,EAAE,IAAI,CAAC;IACrE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC5C,OAAO,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc,EAAE,UAA+B,EAAE;IACpF,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzB,MAAM,KAAK,GAAG,KAAoB,CAAC;IACnC,OAAO,+BAA+B,KAAK,CAAC,EAAE,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC;AAC9F,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=compile.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.test.d.ts","sourceRoot":"","sources":["../src/compile.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import { readFileSync } from "node:fs";
2
+ import { join } from "node:path";
3
+ import { describe, expect, it } from "vitest";
4
+ import { compileTheme } from "./compile.js";
5
+ import { sentTechTheme } from "./themes/sent-tech.js";
6
+ describe("compileTheme", () => {
7
+ it("compiles a tenant theme into scoped CSS variables", () => {
8
+ const css = compileTheme(sentTechTheme);
9
+ expect(css).toContain('[data-st-theme="sent-tech"]');
10
+ expect(css).toContain("--st-semantic-action-primary:");
11
+ expect(css).toContain("--st-component-chat-composerSurface:");
12
+ });
13
+ it("rejects malformed themes", () => {
14
+ expect(() => compileTheme({ id: "", label: "Broken", mode: "light", tokens: {} })).toThrow("Theme id is required");
15
+ });
16
+ it("exports build-time CSS for Forge low-coupling integration", () => {
17
+ const css = readFileSync(join(process.cwd(), "css", "forge.css"), "utf8");
18
+ expect(css).toContain('[data-st-theme="forge"]');
19
+ expect(css).toContain("--st-semantic-action-primary");
20
+ expect(css).toContain("--st-component-dataTable-headerBackground");
21
+ });
22
+ });
23
+ //# sourceMappingURL=compile.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.test.js","sourceRoot":"","sources":["../src/compile.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,GAAG,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;QACxC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CACxF,sBAAsB,CACvB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;QACtD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,2CAA2C,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { foundation, semantic, component } from "@sentropic/design-system-tokens";
2
+ export type { TokenTree, TokenValue } from "@sentropic/design-system-tokens";
3
+ export type { TenantTheme, ThemeMode } from "./schema.js";
4
+ export { assertTenantTheme } from "./schema.js";
5
+ export { compileTheme, compileThemeStyleTag } from "./compile.js";
6
+ export { sentTechTheme } from "./themes/sent-tech.js";
7
+ export { forgeTheme } from "./themes/forge.js";
8
+ export { entropicTheme } from "./themes/entropic.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAClF,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7E,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ export { foundation, semantic, component } from "@sentropic/design-system-tokens";
2
+ export { assertTenantTheme } from "./schema.js";
3
+ export { compileTheme, compileThemeStyleTag } from "./compile.js";
4
+ export { sentTechTheme } from "./themes/sent-tech.js";
5
+ export { forgeTheme } from "./themes/forge.js";
6
+ export { entropicTheme } from "./themes/entropic.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGlF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { TokenTree } from "@sentropic/design-system-tokens";
2
+ export type ThemeMode = "light" | "dark";
3
+ export interface TenantTheme {
4
+ id: string;
5
+ label: string;
6
+ mode: ThemeMode;
7
+ tokens: TokenTree;
8
+ }
9
+ export declare function assertTenantTheme(input: unknown): asserts input is TenantTheme;
10
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAiB9E"}
package/dist/schema.js ADDED
@@ -0,0 +1,19 @@
1
+ export function assertTenantTheme(input) {
2
+ if (!input || typeof input !== "object") {
3
+ throw new Error("Theme must be an object");
4
+ }
5
+ const theme = input;
6
+ if (typeof theme.id !== "string" || theme.id.trim().length === 0) {
7
+ throw new Error("Theme id is required");
8
+ }
9
+ if (typeof theme.label !== "string" || theme.label.trim().length === 0) {
10
+ throw new Error("Theme label is required");
11
+ }
12
+ if (theme.mode !== "light" && theme.mode !== "dark") {
13
+ throw new Error("Theme mode must be light or dark");
14
+ }
15
+ if (!theme.tokens || typeof theme.tokens !== "object") {
16
+ throw new Error("Theme tokens are required");
17
+ }
18
+ }
19
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,KAAK,GAAG,KAAgC,CAAC;IAC/C,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TenantTheme } from "../schema.js";
2
+ export declare const entropicTheme: TenantTheme;
3
+ //# sourceMappingURL=entropic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entropic.d.ts","sourceRoot":"","sources":["../../src/themes/entropic.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,aAAa,EAAE,WAsB3B,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { component, semantic } from "@sentropic/design-system-tokens";
2
+ export const entropicTheme = {
3
+ id: "entropic",
4
+ label: "Entropic",
5
+ mode: "light",
6
+ tokens: {
7
+ semantic: {
8
+ ...semantic,
9
+ action: {
10
+ ...semantic.action,
11
+ primary: "oklch(50% 0.134 242.749)",
12
+ primaryText: "#ffffff"
13
+ }
14
+ },
15
+ component: {
16
+ ...component,
17
+ chat: {
18
+ ...component.chat,
19
+ composerSurface: "#ffffff",
20
+ toolCallSurface: "#f8fafc"
21
+ }
22
+ }
23
+ }
24
+ };
25
+ //# sourceMappingURL=entropic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entropic.js","sourceRoot":"","sources":["../../src/themes/entropic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGtE,MAAM,CAAC,MAAM,aAAa,GAAgB;IACxC,EAAE,EAAE,UAAU;IACd,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,MAAM,EAAE;gBACN,GAAG,QAAQ,CAAC,MAAM;gBAClB,OAAO,EAAE,0BAA0B;gBACnC,WAAW,EAAE,SAAS;aACvB;SACF;QACD,SAAS,EAAE;YACT,GAAG,SAAS;YACZ,IAAI,EAAE;gBACJ,GAAG,SAAS,CAAC,IAAI;gBACjB,eAAe,EAAE,SAAS;gBAC1B,eAAe,EAAE,SAAS;aAC3B;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TenantTheme } from "../schema.js";
2
+ export declare const forgeTheme: TenantTheme;
3
+ //# sourceMappingURL=forge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forge.d.ts","sourceRoot":"","sources":["../../src/themes/forge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,UAAU,EAAE,WAexB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { component, semantic } from "@sentropic/design-system-tokens";
2
+ export const forgeTheme = {
3
+ id: "forge",
4
+ label: "Sent Tech Forge",
5
+ mode: "light",
6
+ tokens: {
7
+ semantic: {
8
+ ...semantic,
9
+ action: {
10
+ ...semantic.action,
11
+ primary: "hsl(215 70% 25%)",
12
+ primaryText: "hsl(0 0% 100%)"
13
+ }
14
+ },
15
+ component
16
+ }
17
+ };
18
+ //# sourceMappingURL=forge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forge.js","sourceRoot":"","sources":["../../src/themes/forge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGtE,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,iBAAiB;IACxB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,MAAM,EAAE;gBACN,GAAG,QAAQ,CAAC,MAAM;gBAClB,OAAO,EAAE,kBAAkB;gBAC3B,WAAW,EAAE,gBAAgB;aAC9B;SACF;QACD,SAAS;KACV;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TenantTheme } from "../schema.js";
2
+ export declare const sentTechTheme: TenantTheme;
3
+ //# sourceMappingURL=sent-tech.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sent-tech.d.ts","sourceRoot":"","sources":["../../src/themes/sent-tech.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,aAAa,EAAE,WAQ3B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { component, semantic } from "@sentropic/design-system-tokens";
2
+ export const sentTechTheme = {
3
+ id: "sent-tech",
4
+ label: "Sent Tech",
5
+ mode: "light",
6
+ tokens: {
7
+ semantic,
8
+ component
9
+ }
10
+ };
11
+ //# sourceMappingURL=sent-tech.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sent-tech.js","sourceRoot":"","sources":["../../src/themes/sent-tech.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGtE,MAAM,CAAC,MAAM,aAAa,GAAgB;IACxC,EAAE,EAAE,WAAW;IACf,KAAK,EAAE,WAAW;IAClB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE;QACN,QAAQ;QACR,SAAS;KACV;CACF,CAAC"}
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@sentropic/design-system-themes",
3
+ "version": "0.3.0",
4
+ "type": "module",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/rhanka/sent-tech-design-system.git",
11
+ "directory": "packages/themes"
12
+ },
13
+ "sideEffects": [
14
+ "**/*.css"
15
+ ],
16
+ "main": "./dist/index.js",
17
+ "types": "./dist/index.d.ts",
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "import": "./dist/index.js"
22
+ },
23
+ "./css/sent-tech.css": "./css/sent-tech.css",
24
+ "./css/forge.css": "./css/forge.css",
25
+ "./css/entropic.css": "./css/entropic.css"
26
+ },
27
+ "files": [
28
+ "dist",
29
+ "css"
30
+ ],
31
+ "dependencies": {
32
+ "@sentropic/design-system-tokens": "0.3.0"
33
+ },
34
+ "scripts": {
35
+ "build": "tsc -p tsconfig.json && npm run build:css",
36
+ "build:css": "node scripts/build-css.mjs",
37
+ "check": "tsc -p tsconfig.json --noEmit",
38
+ "test": "vitest run src"
39
+ }
40
+ }