@wtasnorg/candi 0.0.22

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,94 @@
1
+ /*
2
+ * Scandinavian Theme - Utility Classes
3
+ */
4
+
5
+ /* Text colors */
6
+ .candi-text-subtle {
7
+ color: var(--candi-text-subtle);
8
+ }
9
+
10
+ .candi-text-muted {
11
+ color: var(--candi-text-muted);
12
+ }
13
+
14
+ .candi-text-accent {
15
+ color: var(--candi-accent);
16
+ }
17
+
18
+ .candi-text-warm {
19
+ color: var(--candi-secondary);
20
+ }
21
+
22
+ /* Spacing - Lagom (generous but balanced) */
23
+ .candi-p-cozy {
24
+ padding: 1.5rem;
25
+ }
26
+
27
+ .candi-p-relaxed {
28
+ padding: 2.5rem;
29
+ }
30
+
31
+ .candi-p-spacious {
32
+ padding: 4rem;
33
+ }
34
+
35
+ .candi-gap-cozy {
36
+ gap: 1.5rem;
37
+ }
38
+
39
+ .candi-gap-airy {
40
+ gap: 2.5rem;
41
+ }
42
+
43
+ /* Surfaces */
44
+ .candi-surface {
45
+ background-color: var(--candi-surface);
46
+ }
47
+
48
+ .candi-elevated {
49
+ background-color: var(--candi-elevated);
50
+ }
51
+
52
+ .candi-bg {
53
+ background-color: var(--candi-bg);
54
+ }
55
+
56
+ /* Borders */
57
+ .candi-border {
58
+ border: 1px solid var(--candi-border);
59
+ }
60
+
61
+ .candi-border-strong {
62
+ border: 1px solid var(--candi-border-strong);
63
+ }
64
+
65
+ /* Shadows */
66
+ .candi-shadow {
67
+ box-shadow: var(--candi-shadow);
68
+ }
69
+
70
+ .candi-shadow-md {
71
+ box-shadow: var(--candi-shadow-md);
72
+ }
73
+
74
+ .candi-shadow-lg {
75
+ box-shadow: var(--candi-shadow-lg);
76
+ }
77
+
78
+ /* Border radius */
79
+ .candi-rounded {
80
+ border-radius: 0.75rem;
81
+ }
82
+
83
+ .candi-rounded-lg {
84
+ border-radius: 1rem;
85
+ }
86
+
87
+ .candi-rounded-xl {
88
+ border-radius: 1.5rem;
89
+ }
90
+
91
+ /* Transition */
92
+ .candi-transition {
93
+ transition: all 0.25s ease;
94
+ }
@@ -0,0 +1,334 @@
1
+ /**
2
+ * Candi Design System - Tailwind CSS v4 Theme
3
+ *
4
+ * AUTO-GENERATED FILE - DO NOT EDIT MANUALLY
5
+ * This file is generated by: npm run build (scripts/sync-colors.js)
6
+ * Source of truth: src/data/colors.js
7
+ * Manual changes will be overwritten on next build.
8
+ *
9
+ * This CSS file provides the complete Candi theme for Tailwind v4.
10
+ * Import this file in your main CSS to get all design tokens.
11
+ */
12
+
13
+ @theme {
14
+ /* @tokens-start-v4 */
15
+ --color-candi-bg: oklch(98% 0.008 85);
16
+ --color-candi-surface: oklch(95.5% 0.012 85);
17
+ --color-candi-elevated: oklch(100% 0 0);
18
+ --color-candi-text: oklch(28% 0.015 250);
19
+ --color-candi-text-subtle: oklch(50% 0.01 250);
20
+ --color-candi-text-muted: oklch(62% 0.008 250);
21
+ --color-candi-border: oklch(90% 0.008 85);
22
+ --color-candi-border-strong: oklch(82% 0.01 85);
23
+ --color-candi-divider: oklch(88% 0.006 85);
24
+ --color-candi-accent: oklch(52% 0.06 230);
25
+ --color-candi-accent-subtle: oklch(85% 0.03 230);
26
+ --color-candi-on-accent: oklch(100% 0 0);
27
+ --color-candi-secondary: oklch(58% 0.12 55);
28
+ --color-candi-secondary-subtle: oklch(88% 0.04 55);
29
+ --color-candi-on-secondary: oklch(100% 0 0);
30
+ --color-candi-success: oklch(52% 0.08 145);
31
+ --color-candi-on-success: oklch(100% 0 0);
32
+ --color-candi-warning: oklch(68% 0.13 70);
33
+ --color-candi-on-warning: oklch(20% 0.02 70);
34
+ --color-candi-error: oklch(58% 0.12 25);
35
+ --color-candi-on-error: oklch(100% 0 0);
36
+ --color-candi-info: oklch(55% 0.1 240);
37
+ --color-candi-on-info: oklch(100% 0 0);
38
+ --color-candi-link: oklch(50% 0.08 230);
39
+ --color-candi-disabled: oklch(75% 0.005 250);
40
+ --color-candi-overlay: oklch(0% 0 0 / 0.5);
41
+ --color-candi-scrim: oklch(0% 0 0 / 0.32);
42
+ --color-candi-inverse-surface: oklch(25% 0.015 250);
43
+ --color-candi-inverse-text: oklch(92% 0.01 85);
44
+ --color-candi-shadow: 0 2px 8px rgba(45, 50, 57, 0.06);
45
+ --color-candi-shadow-md: 0 4px 20px rgba(45, 50, 57, 0.1);
46
+ --color-candi-shadow-lg: 0 8px 40px rgba(45, 50, 57, 0.15);
47
+ --color-candi-shadow-color: oklch(25% 0.01 250 / 0.15);
48
+ --color-candi-focus-ring: oklch(52% 0.06 230 / 0.4);
49
+ --color-candi-syntax-keyword: oklch(60% 0.15 0);
50
+ --color-candi-syntax-type: oklch(65% 0.12 280);
51
+ --color-candi-syntax-var: oklch(65% 0.1 200);
52
+ --color-candi-syntax-const: oklch(70% 0.14 50);
53
+ --color-candi-syntax-func: oklch(55% 0.12 240);
54
+ --color-candi-syntax-string: oklch(60% 0.12 140);
55
+ --color-candi-hover: oklch(0% 0 0 / 0.05);
56
+ --color-candi-active: oklch(0% 0 0 / 0.1);
57
+ --color-candi-terminal-black: oklch(25% 0.01 250);
58
+ --color-candi-terminal-red: oklch(58% 0.12 25);
59
+ --color-candi-terminal-green: oklch(52% 0.08 145);
60
+ --color-candi-terminal-yellow: oklch(68% 0.13 70);
61
+ --color-candi-terminal-blue: oklch(52% 0.06 230);
62
+ --color-candi-terminal-magenta: oklch(60% 0.15 0);
63
+ --color-candi-terminal-cyan: oklch(65% 0.1 200);
64
+ --color-candi-terminal-white: oklch(92% 0.01 85);
65
+
66
+ /* Terminal Palette */
67
+ --color-candi-terminal-black: oklch(25% 0.01 250);
68
+ --color-candi-terminal-red: var(--color-candi-error);
69
+ --color-candi-terminal-green: var(--color-candi-success);
70
+ --color-candi-terminal-yellow: var(--color-candi-warning);
71
+ --color-candi-terminal-blue: var(--color-candi-accent);
72
+ --color-candi-terminal-magenta: var(--color-candi-syntax-keyword);
73
+ --color-candi-terminal-cyan: var(--color-candi-syntax-var);
74
+ --color-candi-terminal-white: var(--color-candi-text);
75
+ /* @tokens-end-v4 */
76
+ }
77
+
78
+ /* Dark Mode Variant */
79
+ @variant dark (&:where(.dark, .dark *));
80
+
81
+ /* Backward compatibility and Theme Implementation */
82
+ :root {
83
+ /* @tokens-start-root */
84
+ --candi-bg: oklch(98% 0.008 85);
85
+ --candi-surface: oklch(95.5% 0.012 85);
86
+ --candi-elevated: oklch(100% 0 0);
87
+ --candi-text: oklch(28% 0.015 250);
88
+ --candi-text-subtle: oklch(50% 0.01 250);
89
+ --candi-text-muted: oklch(62% 0.008 250);
90
+ --candi-border: oklch(90% 0.008 85);
91
+ --candi-border-strong: oklch(82% 0.01 85);
92
+ --candi-divider: oklch(88% 0.006 85);
93
+ --candi-accent: oklch(52% 0.06 230);
94
+ --candi-accent-subtle: oklch(85% 0.03 230);
95
+ --candi-on-accent: oklch(100% 0 0);
96
+ --candi-secondary: oklch(58% 0.12 55);
97
+ --candi-secondary-subtle: oklch(88% 0.04 55);
98
+ --candi-on-secondary: oklch(100% 0 0);
99
+ --candi-success: oklch(52% 0.08 145);
100
+ --candi-on-success: oklch(100% 0 0);
101
+ --candi-warning: oklch(68% 0.13 70);
102
+ --candi-on-warning: oklch(20% 0.02 70);
103
+ --candi-error: oklch(58% 0.12 25);
104
+ --candi-on-error: oklch(100% 0 0);
105
+ --candi-info: oklch(55% 0.1 240);
106
+ --candi-on-info: oklch(100% 0 0);
107
+ --candi-link: oklch(50% 0.08 230);
108
+ --candi-disabled: oklch(75% 0.005 250);
109
+ --candi-overlay: oklch(0% 0 0 / 0.5);
110
+ --candi-scrim: oklch(0% 0 0 / 0.32);
111
+ --candi-inverse-surface: oklch(25% 0.015 250);
112
+ --candi-inverse-text: oklch(92% 0.01 85);
113
+ --candi-shadow: 0 2px 8px rgba(45, 50, 57, 0.06);
114
+ --candi-shadow-md: 0 4px 20px rgba(45, 50, 57, 0.1);
115
+ --candi-shadow-lg: 0 8px 40px rgba(45, 50, 57, 0.15);
116
+ --candi-shadow-color: oklch(25% 0.01 250 / 0.15);
117
+ --candi-focus-ring: oklch(52% 0.06 230 / 0.4);
118
+ --candi-syntax-keyword: oklch(60% 0.15 0);
119
+ --candi-syntax-type: oklch(65% 0.12 280);
120
+ --candi-syntax-var: oklch(65% 0.1 200);
121
+ --candi-syntax-const: oklch(70% 0.14 50);
122
+ --candi-syntax-func: oklch(55% 0.12 240);
123
+ --candi-syntax-string: oklch(60% 0.12 140);
124
+ --candi-hover: oklch(0% 0 0 / 0.05);
125
+ --candi-active: oklch(0% 0 0 / 0.1);
126
+ --candi-terminal-black: oklch(25% 0.01 250);
127
+ --candi-terminal-red: oklch(58% 0.12 25);
128
+ --candi-terminal-green: oklch(52% 0.08 145);
129
+ --candi-terminal-yellow: oklch(68% 0.13 70);
130
+ --candi-terminal-blue: oklch(52% 0.06 230);
131
+ --candi-terminal-magenta: oklch(60% 0.15 0);
132
+ --candi-terminal-cyan: oklch(65% 0.1 200);
133
+ --candi-terminal-white: oklch(92% 0.01 85);
134
+
135
+ /* Terminal Palette */
136
+ --candi-terminal-black: oklch(25% 0.01 250);
137
+ --candi-terminal-red: var(--candi-error);
138
+ --candi-terminal-green: var(--candi-success);
139
+ --candi-terminal-yellow: var(--candi-warning);
140
+ --candi-terminal-blue: var(--candi-accent);
141
+ --candi-terminal-magenta: var(--candi-syntax-keyword);
142
+ --candi-terminal-cyan: var(--candi-syntax-var);
143
+ --candi-terminal-white: var(--candi-text);
144
+ /* @tokens-end-root */
145
+
146
+ /* Map Tailwind v4 variables to light mode defaults */
147
+ /* @tokens-start-v4-map */
148
+ --color-candi-bg: var(--candi-bg);
149
+ --color-candi-surface: var(--candi-surface);
150
+ --color-candi-elevated: var(--candi-elevated);
151
+ --color-candi-text: var(--candi-text);
152
+ --color-candi-text-subtle: var(--candi-text-subtle);
153
+ --color-candi-text-muted: var(--candi-text-muted);
154
+ --color-candi-border: var(--candi-border);
155
+ --color-candi-border-strong: var(--candi-border-strong);
156
+ --color-candi-divider: var(--candi-divider);
157
+ --color-candi-accent: var(--candi-accent);
158
+ --color-candi-accent-subtle: var(--candi-accent-subtle);
159
+ --color-candi-on-accent: var(--candi-on-accent);
160
+ --color-candi-secondary: var(--candi-secondary);
161
+ --color-candi-secondary-subtle: var(--candi-secondary-subtle);
162
+ --color-candi-on-secondary: var(--candi-on-secondary);
163
+ --color-candi-success: var(--candi-success);
164
+ --color-candi-on-success: var(--candi-on-success);
165
+ --color-candi-warning: var(--candi-warning);
166
+ --color-candi-on-warning: var(--candi-on-warning);
167
+ --color-candi-error: var(--candi-error);
168
+ --color-candi-on-error: var(--candi-on-error);
169
+ --color-candi-info: var(--candi-info);
170
+ --color-candi-on-info: var(--candi-on-info);
171
+ --color-candi-link: var(--candi-link);
172
+ --color-candi-disabled: var(--candi-disabled);
173
+ --color-candi-overlay: var(--candi-overlay);
174
+ --color-candi-scrim: var(--candi-scrim);
175
+ --color-candi-inverse-surface: var(--candi-inverse-surface);
176
+ --color-candi-inverse-text: var(--candi-inverse-text);
177
+ --color-candi-shadow: var(--candi-shadow);
178
+ --color-candi-shadow-md: var(--candi-shadow-md);
179
+ --color-candi-shadow-lg: var(--candi-shadow-lg);
180
+ --color-candi-shadow-color: var(--candi-shadow-color);
181
+ --color-candi-focus-ring: var(--candi-focus-ring);
182
+ --color-candi-syntax-keyword: var(--candi-syntax-keyword);
183
+ --color-candi-syntax-type: var(--candi-syntax-type);
184
+ --color-candi-syntax-var: var(--candi-syntax-var);
185
+ --color-candi-syntax-const: var(--candi-syntax-const);
186
+ --color-candi-syntax-func: var(--candi-syntax-func);
187
+ --color-candi-syntax-string: var(--candi-syntax-string);
188
+ --color-candi-hover: var(--candi-hover);
189
+ --color-candi-active: var(--candi-active);
190
+ --color-candi-terminal-black: var(--candi-terminal-black);
191
+ --color-candi-terminal-red: var(--candi-terminal-red);
192
+ --color-candi-terminal-green: var(--candi-terminal-green);
193
+ --color-candi-terminal-yellow: var(--candi-terminal-yellow);
194
+ --color-candi-terminal-blue: var(--candi-terminal-blue);
195
+ --color-candi-terminal-magenta: var(--candi-terminal-magenta);
196
+ --color-candi-terminal-cyan: var(--candi-terminal-cyan);
197
+ --color-candi-terminal-white: var(--candi-terminal-white);
198
+ --color-candi-terminal-black: var(--candi-terminal-black);
199
+ --color-candi-terminal-red: var(--candi-terminal-red);
200
+ --color-candi-terminal-green: var(--candi-terminal-green);
201
+ --color-candi-terminal-yellow: var(--candi-terminal-yellow);
202
+ --color-candi-terminal-blue: var(--candi-terminal-blue);
203
+ --color-candi-terminal-magenta: var(--candi-terminal-magenta);
204
+ --color-candi-terminal-cyan: var(--candi-terminal-cyan);
205
+ --color-candi-terminal-white: var(--color-candi-text);
206
+ /* @tokens-end-v4-map */
207
+ }
208
+
209
+ .dark {
210
+ /* @tokens-start-dark-root */
211
+ --candi-bg: oklch(18% 0.015 250);
212
+ --candi-surface: oklch(22% 0.012 250);
213
+ --candi-elevated: oklch(25% 0.015 250);
214
+ --candi-text: oklch(92% 0.01 85);
215
+ --candi-text-subtle: oklch(72% 0.008 85);
216
+ --candi-text-muted: oklch(58% 0.006 85);
217
+ --candi-border: oklch(30% 0.01 250);
218
+ --candi-border-strong: oklch(40% 0.012 250);
219
+ --candi-divider: oklch(28% 0.008 250);
220
+ --candi-accent: oklch(62% 0.08 230);
221
+ --candi-accent-subtle: oklch(35% 0.04 230);
222
+ --candi-on-accent: oklch(15% 0.01 230);
223
+ --candi-secondary: oklch(65% 0.12 55);
224
+ --candi-secondary-subtle: oklch(30% 0.05 55);
225
+ --candi-on-secondary: oklch(15% 0.02 55);
226
+ --candi-success: oklch(60% 0.1 145);
227
+ --candi-on-success: oklch(15% 0.02 145);
228
+ --candi-warning: oklch(72% 0.13 70);
229
+ --candi-on-warning: oklch(15% 0.02 70);
230
+ --candi-error: oklch(65% 0.12 25);
231
+ --candi-on-error: oklch(15% 0.02 25);
232
+ --candi-info: oklch(65% 0.1 240);
233
+ --candi-on-info: oklch(15% 0.02 240);
234
+ --candi-link: oklch(60% 0.08 230);
235
+ --candi-disabled: oklch(45% 0.005 250);
236
+ --candi-overlay: oklch(0% 0 0 / 0.7);
237
+ --candi-scrim: oklch(0% 0 0 / 0.6);
238
+ --candi-inverse-surface: oklch(92% 0.008 85);
239
+ --candi-inverse-text: oklch(25% 0.015 250);
240
+ --candi-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
241
+ --candi-shadow-md: 0 4px 20px rgba(0, 0, 0, 0.35);
242
+ --candi-shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.45);
243
+ --candi-shadow-color: oklch(0% 0 0 / 0.4);
244
+ --candi-focus-ring: oklch(62% 0.08 230 / 0.5);
245
+ --candi-syntax-keyword: oklch(70% 0.15 0);
246
+ --candi-syntax-type: oklch(75% 0.12 280);
247
+ --candi-syntax-var: oklch(75% 0.1 200);
248
+ --candi-syntax-const: oklch(80% 0.14 50);
249
+ --candi-syntax-func: oklch(65% 0.12 240);
250
+ --candi-syntax-string: oklch(70% 0.12 140);
251
+ --candi-hover: oklch(100% 0 0 / 0.1);
252
+ --candi-active: oklch(100% 0 0 / 0.2);
253
+ --candi-terminal-black: oklch(15% 0.01 250);
254
+ --candi-terminal-red: oklch(65% 0.12 25);
255
+ --candi-terminal-green: oklch(60% 0.1 145);
256
+ --candi-terminal-yellow: oklch(72% 0.13 70);
257
+ --candi-terminal-blue: oklch(62% 0.08 230);
258
+ --candi-terminal-magenta: oklch(70% 0.15 0);
259
+ --candi-terminal-cyan: oklch(75% 0.1 200);
260
+ --candi-terminal-white: oklch(92% 0.01 85);
261
+
262
+ /* Terminal Palette */
263
+ --candi-terminal-black: oklch(15% 0.01 250);
264
+ --candi-terminal-red: var(--candi-error);
265
+ --candi-terminal-green: var(--candi-success);
266
+ --candi-terminal-yellow: var(--candi-warning);
267
+ --candi-terminal-blue: var(--candi-accent);
268
+ --candi-terminal-magenta: var(--candi-syntax-keyword);
269
+ --candi-terminal-cyan: var(--candi-syntax-var);
270
+ --candi-terminal-white: var(--candi-text);
271
+ /* @tokens-end-dark-root */
272
+
273
+ /* Map Tailwind v4 variables to dark mode overrides */
274
+ /* @tokens-start-v4-map-dark */
275
+ --color-candi-bg: var(--candi-bg);
276
+ --color-candi-surface: var(--candi-surface);
277
+ --color-candi-elevated: var(--candi-elevated);
278
+ --color-candi-text: var(--candi-text);
279
+ --color-candi-text-subtle: var(--candi-text-subtle);
280
+ --color-candi-text-muted: var(--candi-text-muted);
281
+ --color-candi-border: var(--candi-border);
282
+ --color-candi-border-strong: var(--candi-border-strong);
283
+ --color-candi-divider: var(--candi-divider);
284
+ --color-candi-accent: var(--candi-accent);
285
+ --color-candi-accent-subtle: var(--candi-accent-subtle);
286
+ --color-candi-on-accent: var(--candi-on-accent);
287
+ --color-candi-secondary: var(--candi-secondary);
288
+ --color-candi-secondary-subtle: var(--candi-secondary-subtle);
289
+ --color-candi-on-secondary: var(--candi-on-secondary);
290
+ --color-candi-success: var(--candi-success);
291
+ --color-candi-on-success: var(--candi-on-success);
292
+ --color-candi-warning: var(--candi-warning);
293
+ --color-candi-on-warning: var(--candi-on-warning);
294
+ --color-candi-error: var(--candi-error);
295
+ --color-candi-on-error: var(--candi-on-error);
296
+ --color-candi-info: var(--candi-info);
297
+ --color-candi-on-info: var(--candi-on-info);
298
+ --color-candi-link: var(--candi-link);
299
+ --color-candi-disabled: var(--candi-disabled);
300
+ --color-candi-overlay: var(--candi-overlay);
301
+ --color-candi-scrim: var(--candi-scrim);
302
+ --color-candi-inverse-surface: var(--candi-inverse-surface);
303
+ --color-candi-inverse-text: var(--candi-inverse-text);
304
+ --color-candi-shadow: var(--candi-shadow);
305
+ --color-candi-shadow-md: var(--candi-shadow-md);
306
+ --color-candi-shadow-lg: var(--candi-shadow-lg);
307
+ --color-candi-shadow-color: var(--candi-shadow-color);
308
+ --color-candi-focus-ring: var(--candi-focus-ring);
309
+ --color-candi-syntax-keyword: var(--candi-syntax-keyword);
310
+ --color-candi-syntax-type: var(--candi-syntax-type);
311
+ --color-candi-syntax-var: var(--candi-syntax-var);
312
+ --color-candi-syntax-const: var(--candi-syntax-const);
313
+ --color-candi-syntax-func: var(--candi-syntax-func);
314
+ --color-candi-syntax-string: var(--candi-syntax-string);
315
+ --color-candi-hover: var(--candi-hover);
316
+ --color-candi-active: var(--candi-active);
317
+ --color-candi-terminal-black: var(--candi-terminal-black);
318
+ --color-candi-terminal-red: var(--candi-terminal-red);
319
+ --color-candi-terminal-green: var(--candi-terminal-green);
320
+ --color-candi-terminal-yellow: var(--candi-terminal-yellow);
321
+ --color-candi-terminal-blue: var(--candi-terminal-blue);
322
+ --color-candi-terminal-magenta: var(--candi-terminal-magenta);
323
+ --color-candi-terminal-cyan: var(--candi-terminal-cyan);
324
+ --color-candi-terminal-white: var(--candi-terminal-white);
325
+ --color-candi-terminal-black: var(--candi-terminal-black);
326
+ --color-candi-terminal-red: var(--candi-terminal-red);
327
+ --color-candi-terminal-green: var(--candi-terminal-green);
328
+ --color-candi-terminal-yellow: var(--candi-terminal-yellow);
329
+ --color-candi-terminal-blue: var(--candi-terminal-blue);
330
+ --color-candi-terminal-magenta: var(--candi-terminal-magenta);
331
+ --color-candi-terminal-cyan: var(--candi-terminal-cyan);
332
+ --color-candi-terminal-white: var(--color-candi-text);
333
+ /* @tokens-end-v4-map-dark */
334
+ }
package/package.json ADDED
@@ -0,0 +1,102 @@
1
+ {
2
+ "name": "@wtasnorg/candi",
3
+ "version": "0.0.22",
4
+ "description": "A Tailwind CSS theme inspired by Nordic/Scandinavian Hygge & Lagom design principles",
5
+ "keywords": [
6
+ "tailwindcss",
7
+ "theme",
8
+ "scandinavian",
9
+ "nordic",
10
+ "hygge",
11
+ "lagom",
12
+ "css",
13
+ "design-system"
14
+ ],
15
+ "author": "wtasg <5f87le8sh@mozmail.com>",
16
+ "license": "MIT",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/wtasg/candi.git"
20
+ },
21
+ "publishConfig": {
22
+ "access": "public"
23
+ },
24
+ "main": "dist/index.js",
25
+ "module": "dist/index.mjs",
26
+ "types": "dist/index.d.ts",
27
+ "exports": {
28
+ ".": {
29
+ "types": "./dist/index.d.ts",
30
+ "import": "./dist/index.mjs",
31
+ "require": "./dist/index.js"
32
+ },
33
+ "./theme": {
34
+ "import": "./dist/theme.mjs",
35
+ "require": "./dist/theme.js"
36
+ },
37
+ "./plugin": {
38
+ "import": "./dist/plugin.mjs",
39
+ "require": "./dist/plugin.js"
40
+ },
41
+ "./css": "./dist/scandinavian.css",
42
+ "./css/base": "./dist/base.css",
43
+ "./css/components": "./dist/components.css",
44
+ "./css/utilities": "./dist/utilities.css",
45
+ "./v4": "./dist/v4/theme.css",
46
+ "./colors": {
47
+ "types": "./dist/index.d.ts",
48
+ "import": "./dist/colors.mjs",
49
+ "require": "./dist/colors.js"
50
+ }
51
+ },
52
+ "files": [
53
+ "dist",
54
+ "README.md"
55
+ ],
56
+ "scripts": {
57
+ "build": "node scripts/build.js",
58
+ "build:flutter": "node scripts/build-flutter.js",
59
+ "build:vscode": "node scripts/build-vscode.js",
60
+ "build:vim": "node scripts/build-vim.js",
61
+ "build:kde": "node scripts/build-kde.js",
62
+ "build:konsole": "node scripts/build-konsole.js",
63
+ "build:gnome": "node scripts/build-gnome.js",
64
+ "build:obsidian": "node scripts/build-obsidian.js",
65
+ "build:all": "npm run build && npm run build:flutter && npm run build:vscode && npm run build:vim && npm run build:kde && npm run build:konsole && npm run build:gnome && npm run build:obsidian",
66
+ "prepublishOnly": "npm run build:all",
67
+ "test:color": "node scripts/test-color.js",
68
+ "test:colors": "node scripts/test-color-conversions.js",
69
+ "test:flutter": "cd flutter && flutter test",
70
+ "test:vscode": "node scripts/test-vscode.js",
71
+ "test:vim": "node scripts/test-vim.js",
72
+ "test:kde": "node scripts/test-kde.js",
73
+ "test:konsole": "node scripts/test-konsole.js",
74
+ "test:gnome": "node scripts/test-gnome.js",
75
+ "test:obsidian": "node scripts/test-obsidian.js",
76
+ "test:all": "npm run test:color && npm run test:colors && npm run test:flutter && npm run test:vscode && npm run test:vim && npm run test:kde && npm run test:konsole && npm run test:gnome && npm run test:obsidian",
77
+ "test": "npm run test:all",
78
+ "vscode:package": "cd vscode && npx -y @vscode/vsce package",
79
+ "flutter:pub": "cd flutter && flutter pub get",
80
+ "flutter:pub-upgrade": "cd flutter && flutter pub upgrade",
81
+ "flutter:pub-upgrade-dry-run": "cd flutter && flutter pub upgrade --dry-run",
82
+ "flutter:pub-publish": "cd flutter && flutter pub publish",
83
+ "flutter:pub-publish-dry-run": "cd flutter && flutter pub publish --dry-run",
84
+ "artifact": "node scripts/package-artifacts.js",
85
+ "lint:dart": "node scripts/lint-dart.js",
86
+ "lint:md": "markdownlint-cli2 \"**/*.md\" \"!node_modules\" \"!website/node_modules\"",
87
+ "lint:md:fix": "markdownlint-cli2 --fix \"**/*.md\" \"!node_modules\" \"!website/node_modules\"",
88
+ "lint:all": "npm run lint:dart && npm run lint:md",
89
+ "publish:github": "npm publish --registry=https://npm.pkg.github.com",
90
+ "publish:npm": "npm publish --registry=https://registry.npmjs.org"
91
+ },
92
+ "peerDependencies": {
93
+ "tailwindcss": ">=3.0.0 || >=4.0.0"
94
+ },
95
+ "engines": {
96
+ "node": ">=24.0.0"
97
+ },
98
+ "devDependencies": {
99
+ "markdownlint-cli2": "^0.20.0",
100
+ "tailwindcss": "^3.4.19"
101
+ }
102
+ }