@astherix/ui 0.40.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,462 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "@astherix/ui theme",
4
+ "description": "Theme settings for @astherix/ui. Turn into CSS with `npx jm-ui theme`, or apply at runtime with <ThemeProvider>.",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "properties": {
8
+ "$schema": {
9
+ "type": "string"
10
+ },
11
+ "colors": {
12
+ "type": "object",
13
+ "additionalProperties": false,
14
+ "properties": {
15
+ "primary": {
16
+ "oneOf": [
17
+ {
18
+ "type": "string",
19
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
20
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
21
+ },
22
+ {
23
+ "type": "object",
24
+ "required": [
25
+ "light"
26
+ ],
27
+ "additionalProperties": false,
28
+ "properties": {
29
+ "light": {
30
+ "type": "string",
31
+ "description": "The color in light mode (hex)."
32
+ },
33
+ "dark": {
34
+ "type": "string",
35
+ "description": "The color in dark mode. Worked out from light if left out."
36
+ },
37
+ "foreground": {
38
+ "type": "string",
39
+ "description": "Text and icons on the color in light mode."
40
+ },
41
+ "darkForeground": {
42
+ "type": "string",
43
+ "description": "Text and icons on the color in dark mode."
44
+ }
45
+ }
46
+ }
47
+ ],
48
+ "description": "Buttons, links, focus rings and selected states."
49
+ },
50
+ "secondary": {
51
+ "oneOf": [
52
+ {
53
+ "type": "string",
54
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
55
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
56
+ },
57
+ {
58
+ "type": "object",
59
+ "required": [
60
+ "light"
61
+ ],
62
+ "additionalProperties": false,
63
+ "properties": {
64
+ "light": {
65
+ "type": "string",
66
+ "description": "The color in light mode (hex)."
67
+ },
68
+ "dark": {
69
+ "type": "string",
70
+ "description": "The color in dark mode. Worked out from light if left out."
71
+ },
72
+ "foreground": {
73
+ "type": "string",
74
+ "description": "Text and icons on the color in light mode."
75
+ },
76
+ "darkForeground": {
77
+ "type": "string",
78
+ "description": "Text and icons on the color in dark mode."
79
+ }
80
+ }
81
+ }
82
+ ],
83
+ "description": "Second accent (e.g. Switch color=\"secondary\")."
84
+ },
85
+ "tertiary": {
86
+ "oneOf": [
87
+ {
88
+ "type": "string",
89
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
90
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
91
+ },
92
+ {
93
+ "type": "object",
94
+ "required": [
95
+ "light"
96
+ ],
97
+ "additionalProperties": false,
98
+ "properties": {
99
+ "light": {
100
+ "type": "string",
101
+ "description": "The color in light mode (hex)."
102
+ },
103
+ "dark": {
104
+ "type": "string",
105
+ "description": "The color in dark mode. Worked out from light if left out."
106
+ },
107
+ "foreground": {
108
+ "type": "string",
109
+ "description": "Text and icons on the color in light mode."
110
+ },
111
+ "darkForeground": {
112
+ "type": "string",
113
+ "description": "Text and icons on the color in dark mode."
114
+ }
115
+ }
116
+ }
117
+ ],
118
+ "description": "Third accent (e.g. Switch color=\"tertiary\")."
119
+ },
120
+ "success": {
121
+ "oneOf": [
122
+ {
123
+ "type": "string",
124
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
125
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
126
+ },
127
+ {
128
+ "type": "object",
129
+ "required": [
130
+ "light"
131
+ ],
132
+ "additionalProperties": false,
133
+ "properties": {
134
+ "light": {
135
+ "type": "string",
136
+ "description": "The color in light mode (hex)."
137
+ },
138
+ "dark": {
139
+ "type": "string",
140
+ "description": "The color in dark mode. Worked out from light if left out."
141
+ },
142
+ "foreground": {
143
+ "type": "string",
144
+ "description": "Text and icons on the color in light mode."
145
+ },
146
+ "darkForeground": {
147
+ "type": "string",
148
+ "description": "Text and icons on the color in dark mode."
149
+ }
150
+ }
151
+ }
152
+ ]
153
+ },
154
+ "warning": {
155
+ "oneOf": [
156
+ {
157
+ "type": "string",
158
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
159
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
160
+ },
161
+ {
162
+ "type": "object",
163
+ "required": [
164
+ "light"
165
+ ],
166
+ "additionalProperties": false,
167
+ "properties": {
168
+ "light": {
169
+ "type": "string",
170
+ "description": "The color in light mode (hex)."
171
+ },
172
+ "dark": {
173
+ "type": "string",
174
+ "description": "The color in dark mode. Worked out from light if left out."
175
+ },
176
+ "foreground": {
177
+ "type": "string",
178
+ "description": "Text and icons on the color in light mode."
179
+ },
180
+ "darkForeground": {
181
+ "type": "string",
182
+ "description": "Text and icons on the color in dark mode."
183
+ }
184
+ }
185
+ }
186
+ ]
187
+ },
188
+ "danger": {
189
+ "oneOf": [
190
+ {
191
+ "type": "string",
192
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
193
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
194
+ },
195
+ {
196
+ "type": "object",
197
+ "required": [
198
+ "light"
199
+ ],
200
+ "additionalProperties": false,
201
+ "properties": {
202
+ "light": {
203
+ "type": "string",
204
+ "description": "The color in light mode (hex)."
205
+ },
206
+ "dark": {
207
+ "type": "string",
208
+ "description": "The color in dark mode. Worked out from light if left out."
209
+ },
210
+ "foreground": {
211
+ "type": "string",
212
+ "description": "Text and icons on the color in light mode."
213
+ },
214
+ "darkForeground": {
215
+ "type": "string",
216
+ "description": "Text and icons on the color in dark mode."
217
+ }
218
+ }
219
+ }
220
+ ]
221
+ },
222
+ "info": {
223
+ "oneOf": [
224
+ {
225
+ "type": "string",
226
+ "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$",
227
+ "description": "A hex color. Hover, pressed and dark-mode shades are worked out from it."
228
+ },
229
+ {
230
+ "type": "object",
231
+ "required": [
232
+ "light"
233
+ ],
234
+ "additionalProperties": false,
235
+ "properties": {
236
+ "light": {
237
+ "type": "string",
238
+ "description": "The color in light mode (hex)."
239
+ },
240
+ "dark": {
241
+ "type": "string",
242
+ "description": "The color in dark mode. Worked out from light if left out."
243
+ },
244
+ "foreground": {
245
+ "type": "string",
246
+ "description": "Text and icons on the color in light mode."
247
+ },
248
+ "darkForeground": {
249
+ "type": "string",
250
+ "description": "Text and icons on the color in dark mode."
251
+ }
252
+ }
253
+ }
254
+ ]
255
+ },
256
+ "background": {
257
+ "oneOf": [
258
+ {
259
+ "type": "string"
260
+ },
261
+ {
262
+ "type": "object",
263
+ "required": [
264
+ "light"
265
+ ],
266
+ "additionalProperties": false,
267
+ "properties": {
268
+ "light": {
269
+ "type": "string"
270
+ },
271
+ "dark": {
272
+ "type": "string"
273
+ }
274
+ }
275
+ }
276
+ ],
277
+ "description": "Page background."
278
+ },
279
+ "surface": {
280
+ "oneOf": [
281
+ {
282
+ "type": "string"
283
+ },
284
+ {
285
+ "type": "object",
286
+ "required": [
287
+ "light"
288
+ ],
289
+ "additionalProperties": false,
290
+ "properties": {
291
+ "light": {
292
+ "type": "string"
293
+ },
294
+ "dark": {
295
+ "type": "string"
296
+ }
297
+ }
298
+ }
299
+ ],
300
+ "description": "Cards, fields and menus."
301
+ },
302
+ "foreground": {
303
+ "oneOf": [
304
+ {
305
+ "type": "string"
306
+ },
307
+ {
308
+ "type": "object",
309
+ "required": [
310
+ "light"
311
+ ],
312
+ "additionalProperties": false,
313
+ "properties": {
314
+ "light": {
315
+ "type": "string"
316
+ },
317
+ "dark": {
318
+ "type": "string"
319
+ }
320
+ }
321
+ }
322
+ ],
323
+ "description": "Main text."
324
+ },
325
+ "muted": {
326
+ "oneOf": [
327
+ {
328
+ "type": "string"
329
+ },
330
+ {
331
+ "type": "object",
332
+ "required": [
333
+ "light"
334
+ ],
335
+ "additionalProperties": false,
336
+ "properties": {
337
+ "light": {
338
+ "type": "string"
339
+ },
340
+ "dark": {
341
+ "type": "string"
342
+ }
343
+ }
344
+ }
345
+ ],
346
+ "description": "Secondary text."
347
+ },
348
+ "border": {
349
+ "oneOf": [
350
+ {
351
+ "type": "string"
352
+ },
353
+ {
354
+ "type": "object",
355
+ "required": [
356
+ "light"
357
+ ],
358
+ "additionalProperties": false,
359
+ "properties": {
360
+ "light": {
361
+ "type": "string"
362
+ },
363
+ "dark": {
364
+ "type": "string"
365
+ }
366
+ }
367
+ }
368
+ ],
369
+ "description": "Hairlines and field borders."
370
+ }
371
+ }
372
+ },
373
+ "fonts": {
374
+ "type": "object",
375
+ "additionalProperties": false,
376
+ "properties": {
377
+ "sans": {
378
+ "type": "string",
379
+ "description": "Body font stack, e.g. \"Inter, system-ui, sans-serif\"."
380
+ },
381
+ "heading": {
382
+ "type": "string",
383
+ "description": "Heading font stack (defaults to sans)."
384
+ },
385
+ "mono": {
386
+ "type": "string"
387
+ },
388
+ "googleFonts": {
389
+ "type": "array",
390
+ "items": {
391
+ "type": "string"
392
+ },
393
+ "description": "Google Fonts to load, e.g. [\"Inter:wght@400..700\"]."
394
+ }
395
+ }
396
+ },
397
+ "radius": {
398
+ "description": "Corner roundness.",
399
+ "oneOf": [
400
+ {
401
+ "enum": [
402
+ "none",
403
+ "sm",
404
+ "md",
405
+ "lg"
406
+ ]
407
+ },
408
+ {
409
+ "type": "object",
410
+ "additionalProperties": false,
411
+ "properties": {
412
+ "control": {
413
+ "type": "string"
414
+ },
415
+ "controlSm": {
416
+ "type": "string"
417
+ },
418
+ "controlLg": {
419
+ "type": "string"
420
+ },
421
+ "card": {
422
+ "type": "string"
423
+ },
424
+ "modal": {
425
+ "type": "string"
426
+ }
427
+ }
428
+ }
429
+ ]
430
+ },
431
+ "density": {
432
+ "description": "Spacing and control sizes.",
433
+ "oneOf": [
434
+ {
435
+ "enum": [
436
+ "compact",
437
+ "comfortable",
438
+ "spacious"
439
+ ]
440
+ },
441
+ {
442
+ "type": "number",
443
+ "minimum": 0.6,
444
+ "maximum": 1.6
445
+ }
446
+ ]
447
+ },
448
+ "shadows": {
449
+ "enum": [
450
+ "none",
451
+ "subtle",
452
+ "default",
453
+ "strong"
454
+ ],
455
+ "description": "Shadow strength."
456
+ },
457
+ "baseFontSize": {
458
+ "type": "string",
459
+ "description": "Root font size, e.g. \"16px\". Scales everything sized in rem."
460
+ }
461
+ }
462
+ }