@threelight/ui 0.2.0-alpha.1 → 0.3.0-alpha.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 +52 -140
- package/css/base.css +660 -457
- package/dist/index.d.ts +240 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +103 -87
- package/dist/index.js.map +1 -1
- package/examples/index.html +150 -111
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const threelightUiPackage: {
|
|
2
2
|
readonly name: "@threelight/ui";
|
|
3
|
-
readonly purpose: "
|
|
3
|
+
readonly purpose: "Short-class CSS, role tokens, and metadata for service UI systems.";
|
|
4
|
+
readonly contract: "alpha-reset";
|
|
4
5
|
};
|
|
5
6
|
export declare const themeFamilies: readonly ["default"];
|
|
6
7
|
export type ThemeFamily = (typeof themeFamilies)[number];
|
|
@@ -8,40 +9,250 @@ export declare const themeModes: readonly ["light", "dark"];
|
|
|
8
9
|
export type ThemeMode = (typeof themeModes)[number];
|
|
9
10
|
export declare const toneNames: readonly ["neutral", "primary", "info", "success", "warning", "danger"];
|
|
10
11
|
export type ToneName = (typeof toneNames)[number];
|
|
11
|
-
export declare const stateNames: readonly ["loading", "empty", "error"];
|
|
12
|
+
export declare const stateNames: readonly ["loading", "empty", "error", "success"];
|
|
12
13
|
export type StateName = (typeof stateNames)[number];
|
|
14
|
+
export declare const sizeNames: readonly ["sm", "md", "lg"];
|
|
15
|
+
export type SizeName = (typeof sizeNames)[number];
|
|
16
|
+
export declare const densityNames: readonly ["comfortable", "compact"];
|
|
17
|
+
export type DensityName = (typeof densityNames)[number];
|
|
18
|
+
export declare const variantNames: readonly ["solid", "soft", "outline", "ghost", "plain"];
|
|
19
|
+
export type VariantName = (typeof variantNames)[number];
|
|
20
|
+
export declare const stageNames: readonly ["core", "candidate"];
|
|
21
|
+
export type StageName = (typeof stageNames)[number];
|
|
22
|
+
export declare const categoryNames: readonly ["action", "data-display", "feedback", "form", "layout", "navigation", "pattern", "surface", "typography", "utility"];
|
|
23
|
+
export type CategoryName = (typeof categoryNames)[number];
|
|
24
|
+
export type ComponentContract = {
|
|
25
|
+
readonly name: string;
|
|
26
|
+
readonly className: string;
|
|
27
|
+
readonly stage: StageName;
|
|
28
|
+
readonly category: CategoryName;
|
|
29
|
+
readonly parts?: readonly string[];
|
|
30
|
+
};
|
|
31
|
+
export declare const componentContracts: readonly [{
|
|
32
|
+
readonly name: "app-shell";
|
|
33
|
+
readonly className: "tl-app-shell";
|
|
34
|
+
readonly stage: "candidate";
|
|
35
|
+
readonly category: "layout";
|
|
36
|
+
readonly parts: readonly ["sidebar", "topbar", "main", "content"];
|
|
37
|
+
}, {
|
|
38
|
+
readonly name: "side-nav";
|
|
39
|
+
readonly className: "tl-side-nav";
|
|
40
|
+
readonly stage: "candidate";
|
|
41
|
+
readonly category: "navigation";
|
|
42
|
+
readonly parts: readonly ["group", "label", "item", "badge"];
|
|
43
|
+
}, {
|
|
44
|
+
readonly name: "top-bar";
|
|
45
|
+
readonly className: "tl-top-bar";
|
|
46
|
+
readonly stage: "candidate";
|
|
47
|
+
readonly category: "navigation";
|
|
48
|
+
readonly parts: readonly ["title", "actions"];
|
|
49
|
+
}, {
|
|
50
|
+
readonly name: "stack";
|
|
51
|
+
readonly className: "tl-stack";
|
|
52
|
+
readonly stage: "core";
|
|
53
|
+
readonly category: "layout";
|
|
54
|
+
}, {
|
|
55
|
+
readonly name: "cluster";
|
|
56
|
+
readonly className: "tl-cluster";
|
|
57
|
+
readonly stage: "core";
|
|
58
|
+
readonly category: "layout";
|
|
59
|
+
}, {
|
|
60
|
+
readonly name: "grid";
|
|
61
|
+
readonly className: "tl-grid";
|
|
62
|
+
readonly stage: "core";
|
|
63
|
+
readonly category: "layout";
|
|
64
|
+
}, {
|
|
65
|
+
readonly name: "toolbar";
|
|
66
|
+
readonly className: "tl-toolbar";
|
|
67
|
+
readonly stage: "candidate";
|
|
68
|
+
readonly category: "layout";
|
|
69
|
+
readonly parts: readonly ["group", "actions"];
|
|
70
|
+
}, {
|
|
71
|
+
readonly name: "heading";
|
|
72
|
+
readonly className: "tl-heading";
|
|
73
|
+
readonly stage: "core";
|
|
74
|
+
readonly category: "typography";
|
|
75
|
+
}, {
|
|
76
|
+
readonly name: "text";
|
|
77
|
+
readonly className: "tl-text";
|
|
78
|
+
readonly stage: "core";
|
|
79
|
+
readonly category: "typography";
|
|
80
|
+
}, {
|
|
81
|
+
readonly name: "caption";
|
|
82
|
+
readonly className: "tl-caption";
|
|
83
|
+
readonly stage: "core";
|
|
84
|
+
readonly category: "typography";
|
|
85
|
+
}, {
|
|
86
|
+
readonly name: "mono";
|
|
87
|
+
readonly className: "tl-mono";
|
|
88
|
+
readonly stage: "core";
|
|
89
|
+
readonly category: "typography";
|
|
90
|
+
}, {
|
|
91
|
+
readonly name: "button";
|
|
92
|
+
readonly className: "tl-button";
|
|
93
|
+
readonly stage: "core";
|
|
94
|
+
readonly category: "action";
|
|
95
|
+
readonly parts: readonly ["icon", "label"];
|
|
96
|
+
}, {
|
|
97
|
+
readonly name: "icon-button";
|
|
98
|
+
readonly className: "tl-icon-button";
|
|
99
|
+
readonly stage: "core";
|
|
100
|
+
readonly category: "action";
|
|
101
|
+
readonly parts: readonly ["icon"];
|
|
102
|
+
}, {
|
|
103
|
+
readonly name: "badge";
|
|
104
|
+
readonly className: "tl-badge";
|
|
105
|
+
readonly stage: "core";
|
|
106
|
+
readonly category: "feedback";
|
|
107
|
+
}, {
|
|
108
|
+
readonly name: "alert";
|
|
109
|
+
readonly className: "tl-alert";
|
|
110
|
+
readonly stage: "core";
|
|
111
|
+
readonly category: "feedback";
|
|
112
|
+
readonly parts: readonly ["icon", "content", "title", "description", "actions"];
|
|
113
|
+
}, {
|
|
114
|
+
readonly name: "toast";
|
|
115
|
+
readonly className: "tl-toast";
|
|
116
|
+
readonly stage: "candidate";
|
|
117
|
+
readonly category: "feedback";
|
|
118
|
+
readonly parts: readonly ["icon", "content", "title", "description", "actions", "close"];
|
|
119
|
+
}, {
|
|
120
|
+
readonly name: "toast-region";
|
|
121
|
+
readonly className: "tl-toast-region";
|
|
122
|
+
readonly stage: "candidate";
|
|
123
|
+
readonly category: "feedback";
|
|
124
|
+
}, {
|
|
125
|
+
readonly name: "empty-state";
|
|
126
|
+
readonly className: "tl-empty-state";
|
|
127
|
+
readonly stage: "candidate";
|
|
128
|
+
readonly category: "feedback";
|
|
129
|
+
readonly parts: readonly ["content", "actions"];
|
|
130
|
+
}, {
|
|
131
|
+
readonly name: "card";
|
|
132
|
+
readonly className: "tl-card";
|
|
133
|
+
readonly stage: "core";
|
|
134
|
+
readonly category: "surface";
|
|
135
|
+
readonly parts: readonly ["header", "title", "description", "body", "footer"];
|
|
136
|
+
}, {
|
|
137
|
+
readonly name: "panel";
|
|
138
|
+
readonly className: "tl-panel";
|
|
139
|
+
readonly stage: "core";
|
|
140
|
+
readonly category: "surface";
|
|
141
|
+
readonly parts: readonly ["header", "title", "description", "body", "footer"];
|
|
142
|
+
}, {
|
|
143
|
+
readonly name: "data-panel";
|
|
144
|
+
readonly className: "tl-data-panel";
|
|
145
|
+
readonly stage: "candidate";
|
|
146
|
+
readonly category: "surface";
|
|
147
|
+
readonly parts: readonly ["header", "body", "footer"];
|
|
148
|
+
}, {
|
|
149
|
+
readonly name: "field";
|
|
150
|
+
readonly className: "tl-field";
|
|
151
|
+
readonly stage: "core";
|
|
152
|
+
readonly category: "form";
|
|
153
|
+
readonly parts: readonly ["label", "control", "help", "error"];
|
|
154
|
+
}, {
|
|
155
|
+
readonly name: "input";
|
|
156
|
+
readonly className: "tl-input";
|
|
157
|
+
readonly stage: "core";
|
|
158
|
+
readonly category: "form";
|
|
159
|
+
}, {
|
|
160
|
+
readonly name: "select";
|
|
161
|
+
readonly className: "tl-select";
|
|
162
|
+
readonly stage: "core";
|
|
163
|
+
readonly category: "form";
|
|
164
|
+
}, {
|
|
165
|
+
readonly name: "switch";
|
|
166
|
+
readonly className: "tl-switch";
|
|
167
|
+
readonly stage: "core";
|
|
168
|
+
readonly category: "form";
|
|
169
|
+
readonly parts: readonly ["track", "thumb", "label"];
|
|
170
|
+
}, {
|
|
171
|
+
readonly name: "tabs";
|
|
172
|
+
readonly className: "tl-tabs";
|
|
173
|
+
readonly stage: "core";
|
|
174
|
+
readonly category: "navigation";
|
|
175
|
+
readonly parts: readonly ["list", "tab", "panel"];
|
|
176
|
+
}, {
|
|
177
|
+
readonly name: "table";
|
|
178
|
+
readonly className: "tl-table";
|
|
179
|
+
readonly stage: "core";
|
|
180
|
+
readonly category: "data-display";
|
|
181
|
+
readonly parts: readonly ["head", "body", "row", "cell"];
|
|
182
|
+
}, {
|
|
183
|
+
readonly name: "code-block";
|
|
184
|
+
readonly className: "tl-code-block";
|
|
185
|
+
readonly stage: "core";
|
|
186
|
+
readonly category: "data-display";
|
|
187
|
+
readonly parts: readonly ["content", "copy"];
|
|
188
|
+
}, {
|
|
189
|
+
readonly name: "filter-bar";
|
|
190
|
+
readonly className: "tl-filter-bar";
|
|
191
|
+
readonly stage: "candidate";
|
|
192
|
+
readonly category: "pattern";
|
|
193
|
+
readonly parts: readonly ["group", "actions"];
|
|
194
|
+
}, {
|
|
195
|
+
readonly name: "metric-card";
|
|
196
|
+
readonly className: "tl-metric-card";
|
|
197
|
+
readonly stage: "candidate";
|
|
198
|
+
readonly category: "data-display";
|
|
199
|
+
readonly parts: readonly ["label", "value", "delta"];
|
|
200
|
+
}, {
|
|
201
|
+
readonly name: "metric-group";
|
|
202
|
+
readonly className: "tl-metric-group";
|
|
203
|
+
readonly stage: "candidate";
|
|
204
|
+
readonly category: "data-display";
|
|
205
|
+
}, {
|
|
206
|
+
readonly name: "settings-section";
|
|
207
|
+
readonly className: "tl-settings-section";
|
|
208
|
+
readonly stage: "candidate";
|
|
209
|
+
readonly category: "pattern";
|
|
210
|
+
readonly parts: readonly ["summary", "content", "actions"];
|
|
211
|
+
}, {
|
|
212
|
+
readonly name: "stepper";
|
|
213
|
+
readonly className: "tl-stepper";
|
|
214
|
+
readonly stage: "candidate";
|
|
215
|
+
readonly category: "pattern";
|
|
216
|
+
readonly parts: readonly ["item", "marker", "label"];
|
|
217
|
+
}, {
|
|
218
|
+
readonly name: "choice-card";
|
|
219
|
+
readonly className: "tl-choice-card";
|
|
220
|
+
readonly stage: "candidate";
|
|
221
|
+
readonly category: "pattern";
|
|
222
|
+
readonly parts: readonly ["media", "title", "description"];
|
|
223
|
+
}, {
|
|
224
|
+
readonly name: "docs-shell";
|
|
225
|
+
readonly className: "tl-docs-shell";
|
|
226
|
+
readonly stage: "candidate";
|
|
227
|
+
readonly category: "layout";
|
|
228
|
+
readonly parts: readonly ["sidebar", "content", "toc"];
|
|
229
|
+
}, {
|
|
230
|
+
readonly name: "sr-only";
|
|
231
|
+
readonly className: "tl-sr-only";
|
|
232
|
+
readonly stage: "core";
|
|
233
|
+
readonly category: "utility";
|
|
234
|
+
}, {
|
|
235
|
+
readonly name: "truncate";
|
|
236
|
+
readonly className: "tl-truncate";
|
|
237
|
+
readonly stage: "core";
|
|
238
|
+
readonly category: "utility";
|
|
239
|
+
}];
|
|
240
|
+
export type ComponentName = (typeof componentContracts)[number]['name'];
|
|
241
|
+
export type ComponentClassName = (typeof componentContracts)[number]['className'];
|
|
242
|
+
export declare const componentClasses: Record<ComponentName, ComponentClassName>;
|
|
243
|
+
export declare const partClasses: string[];
|
|
244
|
+
export declare const primitiveClasses: readonly string[];
|
|
245
|
+
export declare const tokenNames: readonly ["--tl-color-canvas", "--tl-color-surface", "--tl-color-layer", "--tl-color-content-primary", "--tl-color-content-secondary", "--tl-color-content-subtle", "--tl-color-border-subtle", "--tl-color-border-strong", "--tl-color-focus", ...string[], "--tl-font-sans", "--tl-font-mono", "--tl-font-size-xs", "--tl-font-size-sm", "--tl-font-size-md", "--tl-font-size-lg", "--tl-font-size-xl", "--tl-space-1", "--tl-space-2", "--tl-space-3", "--tl-space-4", "--tl-space-5", "--tl-space-6", "--tl-space-8", "--tl-radius-control", "--tl-radius-card", "--tl-radius-panel", "--tl-shadow-card", "--tl-shadow-popover", "--tl-density-comfortable", "--tl-density-compact", "--tl-motion-duration-fast", "--tl-motion-duration-base", "--tl-motion-ease-standard"];
|
|
246
|
+
export type TokenName = (typeof tokenNames)[number];
|
|
13
247
|
export declare const themeAttributes: {
|
|
14
248
|
readonly root: "data-tl-root";
|
|
15
249
|
readonly theme: "data-tl-theme";
|
|
16
250
|
readonly mode: "data-tl-mode";
|
|
17
251
|
readonly tone: "data-tl-tone";
|
|
18
252
|
readonly state: "data-tl-state";
|
|
253
|
+
readonly size: "data-tl-size";
|
|
254
|
+
readonly density: "data-tl-density";
|
|
255
|
+
readonly variant: "data-tl-variant";
|
|
256
|
+
readonly stage: "data-tl-stage";
|
|
19
257
|
};
|
|
20
|
-
export declare const primitiveClasses: {
|
|
21
|
-
readonly component: readonly ["tl-component-button", "tl-component-card", "tl-component-panel", "tl-component-input", "tl-component-badge", "tl-component-alert", "tl-component-display", "tl-component-heading", "tl-component-body", "tl-component-caption", "tl-component-meta", "tl-component-label", "tl-component-action-text", "tl-component-metric", "tl-component-code", "tl-component-field", "tl-component-help"];
|
|
22
|
-
readonly pattern: readonly ["tl-pattern-page-header", "tl-pattern-empty-state"];
|
|
23
|
-
readonly patternPart: readonly ["tl-pattern-page-header__content", "tl-pattern-page-header__actions", "tl-pattern-empty-state__content", "tl-pattern-empty-state__actions"];
|
|
24
|
-
readonly layout: readonly ["tl-layout-section", "tl-layout-stack", "tl-layout-cluster", "tl-layout-grid"];
|
|
25
|
-
readonly utility: readonly ["tl-utility-sr-only", "tl-utility-truncate"];
|
|
26
|
-
};
|
|
27
|
-
export declare const componentClasses: readonly ["tl-component-button", "tl-component-card", "tl-component-panel", "tl-component-input", "tl-component-badge", "tl-component-alert", "tl-component-display", "tl-component-heading", "tl-component-body", "tl-component-caption", "tl-component-meta", "tl-component-label", "tl-component-action-text", "tl-component-metric", "tl-component-code", "tl-component-field", "tl-component-help"];
|
|
28
|
-
export declare const patternClasses: readonly ["tl-pattern-page-header", "tl-pattern-empty-state"];
|
|
29
|
-
export declare const patternPartClasses: readonly ["tl-pattern-page-header__content", "tl-pattern-page-header__actions", "tl-pattern-empty-state__content", "tl-pattern-empty-state__actions"];
|
|
30
|
-
export declare const layoutClasses: readonly ["tl-layout-section", "tl-layout-stack", "tl-layout-cluster", "tl-layout-grid"];
|
|
31
|
-
export declare const utilityClasses: readonly ["tl-utility-sr-only", "tl-utility-truncate"];
|
|
32
|
-
export type PrimitiveGroup = keyof typeof primitiveClasses;
|
|
33
|
-
export type PrimitiveClass = (typeof primitiveClasses)[PrimitiveGroup][number];
|
|
34
|
-
export type ComponentClass = (typeof componentClasses)[number];
|
|
35
|
-
export type PatternClass = (typeof patternClasses)[number];
|
|
36
|
-
export type PatternPartClass = (typeof patternPartClasses)[number];
|
|
37
|
-
export type LayoutClass = (typeof layoutClasses)[number];
|
|
38
|
-
export type UtilityClass = (typeof utilityClasses)[number];
|
|
39
|
-
export declare const semanticTokenNames: readonly ["--tl-color-canvas", "--tl-color-surface", "--tl-color-layer", "--tl-color-content-primary", "--tl-color-content-secondary", "--tl-color-content-subtle", "--tl-color-border-subtle", "--tl-color-border-strong", "--tl-color-focus", "--tl-font-sans", "--tl-font-mono", "--tl-font-size-display", "--tl-font-size-heading", "--tl-font-size-body", "--tl-font-size-caption", "--tl-font-size-metric", "--tl-space-1", "--tl-space-2", "--tl-space-3", "--tl-space-4", "--tl-space-5", "--tl-space-6", "--tl-space-8", "--tl-space-10", "--tl-radius-sm", "--tl-radius-md", "--tl-radius-lg", "--tl-shadow-sm"];
|
|
40
|
-
export type SemanticTokenName = (typeof semanticTokenNames)[number];
|
|
41
|
-
export declare const toneTokenNames: ("--tl-color-primary-fill" | "--tl-color-info-fill" | "--tl-color-success-fill" | "--tl-color-warning-fill" | "--tl-color-danger-fill" | "--tl-color-primary-content" | "--tl-color-info-content" | "--tl-color-success-content" | "--tl-color-warning-content" | "--tl-color-danger-content" | "--tl-color-primary-soft" | "--tl-color-info-soft" | "--tl-color-success-soft" | "--tl-color-warning-soft" | "--tl-color-danger-soft" | "--tl-color-primary-border" | "--tl-color-info-border" | "--tl-color-success-border" | "--tl-color-warning-border" | "--tl-color-danger-border")[];
|
|
42
|
-
export type ToneTokenName = (typeof toneTokenNames)[number];
|
|
43
|
-
export declare const componentTokenNames: readonly ["--tl-component-background", "--tl-component-content", "--tl-component-content-muted", "--tl-component-border", "--tl-button-background", "--tl-button-content", "--tl-button-border", "--tl-button-disabled-background", "--tl-button-disabled-content", "--tl-button-disabled-border", "--tl-badge-background", "--tl-badge-content", "--tl-badge-border"];
|
|
44
|
-
export type ComponentTokenName = (typeof componentTokenNames)[number];
|
|
45
|
-
export declare const tokenNames: readonly ["--tl-color-canvas", "--tl-color-surface", "--tl-color-layer", "--tl-color-content-primary", "--tl-color-content-secondary", "--tl-color-content-subtle", "--tl-color-border-subtle", "--tl-color-border-strong", "--tl-color-focus", "--tl-font-sans", "--tl-font-mono", "--tl-font-size-display", "--tl-font-size-heading", "--tl-font-size-body", "--tl-font-size-caption", "--tl-font-size-metric", "--tl-space-1", "--tl-space-2", "--tl-space-3", "--tl-space-4", "--tl-space-5", "--tl-space-6", "--tl-space-8", "--tl-space-10", "--tl-radius-sm", "--tl-radius-md", "--tl-radius-lg", "--tl-shadow-sm", ...("--tl-color-primary-fill" | "--tl-color-info-fill" | "--tl-color-success-fill" | "--tl-color-warning-fill" | "--tl-color-danger-fill" | "--tl-color-primary-content" | "--tl-color-info-content" | "--tl-color-success-content" | "--tl-color-warning-content" | "--tl-color-danger-content" | "--tl-color-primary-soft" | "--tl-color-info-soft" | "--tl-color-success-soft" | "--tl-color-warning-soft" | "--tl-color-danger-soft" | "--tl-color-primary-border" | "--tl-color-info-border" | "--tl-color-success-border" | "--tl-color-warning-border" | "--tl-color-danger-border")[], "--tl-component-background", "--tl-component-content", "--tl-component-content-muted", "--tl-component-border", "--tl-button-background", "--tl-button-content", "--tl-button-border", "--tl-button-disabled-background", "--tl-button-disabled-content", "--tl-button-disabled-border", "--tl-badge-background", "--tl-badge-content", "--tl-badge-border"];
|
|
46
|
-
export type TokenName = (typeof tokenNames)[number];
|
|
47
258
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB;;;;CAItB,CAAA;AAEV,eAAO,MAAM,aAAa,sBAAuB,CAAA;AACjD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,eAAO,MAAM,UAAU,4BAA6B,CAAA;AACpD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,SAAS,yEAOZ,CAAA;AACV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD,eAAO,MAAM,UAAU,mDAAoD,CAAA;AAC3E,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,SAAS,6BAA8B,CAAA;AACpD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD,eAAO,MAAM,YAAY,qCAAsC,CAAA;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAEvD,eAAO,MAAM,YAAY,yDAA0D,CAAA;AACnF,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAEvD,eAAO,MAAM,UAAU,gCAAiC,CAAA;AACxD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,aAAa,gIAWhB,CAAA;AACV,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAEzD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAA;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCkB,CAAA;AAEjD,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAA;AACvE,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAA;AAEjF,eAAO,MAAM,gBAAgB,EAExB,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAA;AAE9C,eAAO,MAAM,WAAW,EAInB,MAAM,EAAE,CAAA;AAEb,eAAO,MAAM,gBAAgB,mBAGnB,CAAA;AAoDV,eAAO,MAAM,UAAU,ivBAIb,CAAA;AAEV,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,eAAe;;;;;;;;;;CAUlB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export const threelightUiPackage = {
|
|
2
2
|
name: '@threelight/ui',
|
|
3
|
-
purpose: '
|
|
3
|
+
purpose: 'Short-class CSS, role tokens, and metadata for service UI systems.',
|
|
4
|
+
contract: 'alpha-reset',
|
|
4
5
|
};
|
|
5
6
|
export const themeFamilies = ['default'];
|
|
6
7
|
export const themeModes = ['light', 'dark'];
|
|
@@ -12,55 +13,69 @@ export const toneNames = [
|
|
|
12
13
|
'warning',
|
|
13
14
|
'danger',
|
|
14
15
|
];
|
|
15
|
-
export const stateNames = ['loading', 'empty', 'error'];
|
|
16
|
-
export const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
16
|
+
export const stateNames = ['loading', 'empty', 'error', 'success'];
|
|
17
|
+
export const sizeNames = ['sm', 'md', 'lg'];
|
|
18
|
+
export const densityNames = ['comfortable', 'compact'];
|
|
19
|
+
export const variantNames = ['solid', 'soft', 'outline', 'ghost', 'plain'];
|
|
20
|
+
export const stageNames = ['core', 'candidate'];
|
|
21
|
+
export const categoryNames = [
|
|
22
|
+
'action',
|
|
23
|
+
'data-display',
|
|
24
|
+
'feedback',
|
|
25
|
+
'form',
|
|
26
|
+
'layout',
|
|
27
|
+
'navigation',
|
|
28
|
+
'pattern',
|
|
29
|
+
'surface',
|
|
30
|
+
'typography',
|
|
31
|
+
'utility',
|
|
32
|
+
];
|
|
33
|
+
export const componentContracts = [
|
|
34
|
+
{ name: 'app-shell', className: 'tl-app-shell', stage: 'candidate', category: 'layout', parts: ['sidebar', 'topbar', 'main', 'content'] },
|
|
35
|
+
{ name: 'side-nav', className: 'tl-side-nav', stage: 'candidate', category: 'navigation', parts: ['group', 'label', 'item', 'badge'] },
|
|
36
|
+
{ name: 'top-bar', className: 'tl-top-bar', stage: 'candidate', category: 'navigation', parts: ['title', 'actions'] },
|
|
37
|
+
{ name: 'stack', className: 'tl-stack', stage: 'core', category: 'layout' },
|
|
38
|
+
{ name: 'cluster', className: 'tl-cluster', stage: 'core', category: 'layout' },
|
|
39
|
+
{ name: 'grid', className: 'tl-grid', stage: 'core', category: 'layout' },
|
|
40
|
+
{ name: 'toolbar', className: 'tl-toolbar', stage: 'candidate', category: 'layout', parts: ['group', 'actions'] },
|
|
41
|
+
{ name: 'heading', className: 'tl-heading', stage: 'core', category: 'typography' },
|
|
42
|
+
{ name: 'text', className: 'tl-text', stage: 'core', category: 'typography' },
|
|
43
|
+
{ name: 'caption', className: 'tl-caption', stage: 'core', category: 'typography' },
|
|
44
|
+
{ name: 'mono', className: 'tl-mono', stage: 'core', category: 'typography' },
|
|
45
|
+
{ name: 'button', className: 'tl-button', stage: 'core', category: 'action', parts: ['icon', 'label'] },
|
|
46
|
+
{ name: 'icon-button', className: 'tl-icon-button', stage: 'core', category: 'action', parts: ['icon'] },
|
|
47
|
+
{ name: 'badge', className: 'tl-badge', stage: 'core', category: 'feedback' },
|
|
48
|
+
{ name: 'alert', className: 'tl-alert', stage: 'core', category: 'feedback', parts: ['icon', 'content', 'title', 'description', 'actions'] },
|
|
49
|
+
{ name: 'toast', className: 'tl-toast', stage: 'candidate', category: 'feedback', parts: ['icon', 'content', 'title', 'description', 'actions', 'close'] },
|
|
50
|
+
{ name: 'toast-region', className: 'tl-toast-region', stage: 'candidate', category: 'feedback' },
|
|
51
|
+
{ name: 'empty-state', className: 'tl-empty-state', stage: 'candidate', category: 'feedback', parts: ['content', 'actions'] },
|
|
52
|
+
{ name: 'card', className: 'tl-card', stage: 'core', category: 'surface', parts: ['header', 'title', 'description', 'body', 'footer'] },
|
|
53
|
+
{ name: 'panel', className: 'tl-panel', stage: 'core', category: 'surface', parts: ['header', 'title', 'description', 'body', 'footer'] },
|
|
54
|
+
{ name: 'data-panel', className: 'tl-data-panel', stage: 'candidate', category: 'surface', parts: ['header', 'body', 'footer'] },
|
|
55
|
+
{ name: 'field', className: 'tl-field', stage: 'core', category: 'form', parts: ['label', 'control', 'help', 'error'] },
|
|
56
|
+
{ name: 'input', className: 'tl-input', stage: 'core', category: 'form' },
|
|
57
|
+
{ name: 'select', className: 'tl-select', stage: 'core', category: 'form' },
|
|
58
|
+
{ name: 'switch', className: 'tl-switch', stage: 'core', category: 'form', parts: ['track', 'thumb', 'label'] },
|
|
59
|
+
{ name: 'tabs', className: 'tl-tabs', stage: 'core', category: 'navigation', parts: ['list', 'tab', 'panel'] },
|
|
60
|
+
{ name: 'table', className: 'tl-table', stage: 'core', category: 'data-display', parts: ['head', 'body', 'row', 'cell'] },
|
|
61
|
+
{ name: 'code-block', className: 'tl-code-block', stage: 'core', category: 'data-display', parts: ['content', 'copy'] },
|
|
62
|
+
{ name: 'filter-bar', className: 'tl-filter-bar', stage: 'candidate', category: 'pattern', parts: ['group', 'actions'] },
|
|
63
|
+
{ name: 'metric-card', className: 'tl-metric-card', stage: 'candidate', category: 'data-display', parts: ['label', 'value', 'delta'] },
|
|
64
|
+
{ name: 'metric-group', className: 'tl-metric-group', stage: 'candidate', category: 'data-display' },
|
|
65
|
+
{ name: 'settings-section', className: 'tl-settings-section', stage: 'candidate', category: 'pattern', parts: ['summary', 'content', 'actions'] },
|
|
66
|
+
{ name: 'stepper', className: 'tl-stepper', stage: 'candidate', category: 'pattern', parts: ['item', 'marker', 'label'] },
|
|
67
|
+
{ name: 'choice-card', className: 'tl-choice-card', stage: 'candidate', category: 'pattern', parts: ['media', 'title', 'description'] },
|
|
68
|
+
{ name: 'docs-shell', className: 'tl-docs-shell', stage: 'candidate', category: 'layout', parts: ['sidebar', 'content', 'toc'] },
|
|
69
|
+
{ name: 'sr-only', className: 'tl-sr-only', stage: 'core', category: 'utility' },
|
|
70
|
+
{ name: 'truncate', className: 'tl-truncate', stage: 'core', category: 'utility' },
|
|
71
|
+
];
|
|
72
|
+
export const componentClasses = Object.fromEntries(componentContracts.map((contract) => [contract.name, contract.className]));
|
|
73
|
+
export const partClasses = componentContracts.flatMap((contract) => ('parts' in contract ? contract.parts : []).map((part) => `${contract.className}__${part}`));
|
|
74
|
+
export const primitiveClasses = [
|
|
75
|
+
...componentContracts.map((contract) => contract.className),
|
|
76
|
+
...partClasses,
|
|
77
|
+
];
|
|
78
|
+
const semanticColorTokenNames = [
|
|
64
79
|
'--tl-color-canvas',
|
|
65
80
|
'--tl-color-surface',
|
|
66
81
|
'--tl-color-layer',
|
|
@@ -70,13 +85,23 @@ export const semanticTokenNames = [
|
|
|
70
85
|
'--tl-color-border-subtle',
|
|
71
86
|
'--tl-color-border-strong',
|
|
72
87
|
'--tl-color-focus',
|
|
88
|
+
];
|
|
89
|
+
const toneTokenNames = toneNames.flatMap((tone) => tone === 'neutral'
|
|
90
|
+
? []
|
|
91
|
+
: [
|
|
92
|
+
`--tl-color-${tone}-fill`,
|
|
93
|
+
`--tl-color-${tone}-content`,
|
|
94
|
+
`--tl-color-${tone}-soft`,
|
|
95
|
+
`--tl-color-${tone}-border`,
|
|
96
|
+
]);
|
|
97
|
+
const roleTokenNames = [
|
|
73
98
|
'--tl-font-sans',
|
|
74
99
|
'--tl-font-mono',
|
|
75
|
-
'--tl-font-size-
|
|
76
|
-
'--tl-font-size-
|
|
77
|
-
'--tl-font-size-
|
|
78
|
-
'--tl-font-size-
|
|
79
|
-
'--tl-font-size-
|
|
100
|
+
'--tl-font-size-xs',
|
|
101
|
+
'--tl-font-size-sm',
|
|
102
|
+
'--tl-font-size-md',
|
|
103
|
+
'--tl-font-size-lg',
|
|
104
|
+
'--tl-font-size-xl',
|
|
80
105
|
'--tl-space-1',
|
|
81
106
|
'--tl-space-2',
|
|
82
107
|
'--tl-space-3',
|
|
@@ -84,40 +109,31 @@ export const semanticTokenNames = [
|
|
|
84
109
|
'--tl-space-5',
|
|
85
110
|
'--tl-space-6',
|
|
86
111
|
'--tl-space-8',
|
|
87
|
-
'--tl-
|
|
88
|
-
'--tl-radius-
|
|
89
|
-
'--tl-radius-
|
|
90
|
-
'--tl-
|
|
91
|
-
'--tl-shadow-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
`--tl-color-${tone}-fill`,
|
|
98
|
-
`--tl-color-${tone}-content`,
|
|
99
|
-
`--tl-color-${tone}-soft`,
|
|
100
|
-
`--tl-color-${tone}-border`,
|
|
101
|
-
];
|
|
102
|
-
});
|
|
103
|
-
export const componentTokenNames = [
|
|
104
|
-
'--tl-component-background',
|
|
105
|
-
'--tl-component-content',
|
|
106
|
-
'--tl-component-content-muted',
|
|
107
|
-
'--tl-component-border',
|
|
108
|
-
'--tl-button-background',
|
|
109
|
-
'--tl-button-content',
|
|
110
|
-
'--tl-button-border',
|
|
111
|
-
'--tl-button-disabled-background',
|
|
112
|
-
'--tl-button-disabled-content',
|
|
113
|
-
'--tl-button-disabled-border',
|
|
114
|
-
'--tl-badge-background',
|
|
115
|
-
'--tl-badge-content',
|
|
116
|
-
'--tl-badge-border',
|
|
112
|
+
'--tl-radius-control',
|
|
113
|
+
'--tl-radius-card',
|
|
114
|
+
'--tl-radius-panel',
|
|
115
|
+
'--tl-shadow-card',
|
|
116
|
+
'--tl-shadow-popover',
|
|
117
|
+
'--tl-density-comfortable',
|
|
118
|
+
'--tl-density-compact',
|
|
119
|
+
'--tl-motion-duration-fast',
|
|
120
|
+
'--tl-motion-duration-base',
|
|
121
|
+
'--tl-motion-ease-standard',
|
|
117
122
|
];
|
|
118
123
|
export const tokenNames = [
|
|
119
|
-
...
|
|
124
|
+
...semanticColorTokenNames,
|
|
120
125
|
...toneTokenNames,
|
|
121
|
-
...
|
|
126
|
+
...roleTokenNames,
|
|
122
127
|
];
|
|
128
|
+
export const themeAttributes = {
|
|
129
|
+
root: 'data-tl-root',
|
|
130
|
+
theme: 'data-tl-theme',
|
|
131
|
+
mode: 'data-tl-mode',
|
|
132
|
+
tone: 'data-tl-tone',
|
|
133
|
+
state: 'data-tl-state',
|
|
134
|
+
size: 'data-tl-size',
|
|
135
|
+
density: 'data-tl-density',
|
|
136
|
+
variant: 'data-tl-variant',
|
|
137
|
+
stage: 'data-tl-stage',
|
|
138
|
+
};
|
|
123
139
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|