@tanstack/devtools-ui 0.3.2 → 0.3.4

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.
Files changed (70) hide show
  1. package/dist/esm/components/header.d.ts +9 -0
  2. package/dist/esm/components/header.js +50 -0
  3. package/dist/esm/components/header.js.map +1 -0
  4. package/dist/esm/components/icons.d.ts +15 -0
  5. package/dist/esm/components/icons.js +61 -0
  6. package/dist/esm/components/icons.js.map +1 -0
  7. package/dist/esm/components/main-panel.js +1 -3
  8. package/dist/esm/components/main-panel.js.map +1 -1
  9. package/dist/esm/components/theme.d.ts +12 -0
  10. package/dist/esm/components/theme.js +30 -0
  11. package/dist/esm/components/theme.js.map +1 -0
  12. package/dist/esm/components/tree.d.ts +1 -0
  13. package/dist/esm/components/tree.js +219 -93
  14. package/dist/esm/components/tree.js.map +1 -1
  15. package/dist/esm/icons.d.ts +1 -0
  16. package/dist/esm/icons.js +17 -0
  17. package/dist/esm/icons.js.map +1 -0
  18. package/dist/esm/index.d.ts +2 -0
  19. package/dist/esm/index.js +7 -1
  20. package/dist/esm/index.js.map +1 -1
  21. package/dist/esm/styles/tokens.js +12 -2
  22. package/dist/esm/styles/tokens.js.map +1 -1
  23. package/dist/esm/styles/use-styles.d.ts +16 -2
  24. package/dist/esm/styles/use-styles.js +208 -68
  25. package/dist/esm/styles/use-styles.js.map +1 -1
  26. package/package.json +7 -6
  27. package/src/components/header.tsx +44 -0
  28. package/src/components/icons.tsx +1586 -0
  29. package/src/components/main-panel.tsx +6 -3
  30. package/src/components/theme.tsx +34 -0
  31. package/src/components/tree.tsx +148 -32
  32. package/src/icons.ts +1 -0
  33. package/src/index.ts +2 -0
  34. package/src/styles/use-styles.ts +212 -69
  35. package/dist/cjs/components/button.cjs +0 -23
  36. package/dist/cjs/components/button.cjs.map +0 -1
  37. package/dist/cjs/components/button.d.cts +0 -11
  38. package/dist/cjs/components/checkbox.cjs +0 -55
  39. package/dist/cjs/components/checkbox.cjs.map +0 -1
  40. package/dist/cjs/components/checkbox.d.cts +0 -8
  41. package/dist/cjs/components/input.cjs +0 -57
  42. package/dist/cjs/components/input.cjs.map +0 -1
  43. package/dist/cjs/components/input.d.cts +0 -10
  44. package/dist/cjs/components/logo.cjs +0 -95
  45. package/dist/cjs/components/logo.cjs.map +0 -1
  46. package/dist/cjs/components/logo.d.cts +0 -1
  47. package/dist/cjs/components/main-panel.cjs +0 -24
  48. package/dist/cjs/components/main-panel.cjs.map +0 -1
  49. package/dist/cjs/components/main-panel.d.cts +0 -8
  50. package/dist/cjs/components/section.cjs +0 -75
  51. package/dist/cjs/components/section.cjs.map +0 -1
  52. package/dist/cjs/components/section.d.cts +0 -5
  53. package/dist/cjs/components/select.cjs +0 -59
  54. package/dist/cjs/components/select.cjs.map +0 -1
  55. package/dist/cjs/components/select.d.cts +0 -13
  56. package/dist/cjs/components/tag.cjs +0 -40
  57. package/dist/cjs/components/tag.cjs.map +0 -1
  58. package/dist/cjs/components/tag.d.cts +0 -7
  59. package/dist/cjs/components/tree.cjs +0 -237
  60. package/dist/cjs/components/tree.cjs.map +0 -1
  61. package/dist/cjs/components/tree.d.cts +0 -3
  62. package/dist/cjs/index.cjs +0 -24
  63. package/dist/cjs/index.cjs.map +0 -1
  64. package/dist/cjs/index.d.cts +0 -9
  65. package/dist/cjs/styles/tokens.cjs +0 -184
  66. package/dist/cjs/styles/tokens.cjs.map +0 -1
  67. package/dist/cjs/styles/tokens.d.cts +0 -298
  68. package/dist/cjs/styles/use-styles.cjs +0 -461
  69. package/dist/cjs/styles/use-styles.cjs.map +0 -1
  70. package/dist/cjs/styles/use-styles.d.cts +0 -53
@@ -1,461 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const goober = require("goober");
4
- const solidJs = require("solid-js");
5
- const tokens = require("./tokens.cjs");
6
- function _interopNamespaceDefault(e) {
7
- const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
8
- if (e) {
9
- for (const k in e) {
10
- if (k !== "default") {
11
- const d = Object.getOwnPropertyDescriptor(e, k);
12
- Object.defineProperty(n, k, d.get ? d : {
13
- enumerable: true,
14
- get: () => e[k]
15
- });
16
- }
17
- }
18
- }
19
- n.default = e;
20
- return Object.freeze(n);
21
- }
22
- const goober__namespace = /* @__PURE__ */ _interopNamespaceDefault(goober);
23
- const buttonVariantColors = {
24
- primary: {
25
- bg: tokens.tokens.colors.purple[500],
26
- hover: tokens.tokens.colors.purple[600],
27
- active: tokens.tokens.colors.purple[700],
28
- text: "#fff",
29
- border: tokens.tokens.colors.purple[500]
30
- },
31
- secondary: {
32
- bg: tokens.tokens.colors.gray[800],
33
- hover: tokens.tokens.colors.gray[700],
34
- active: tokens.tokens.colors.gray[600],
35
- text: tokens.tokens.colors.gray[100],
36
- border: tokens.tokens.colors.gray[700]
37
- },
38
- info: {
39
- bg: tokens.tokens.colors.blue[500],
40
- hover: tokens.tokens.colors.blue[600],
41
- active: tokens.tokens.colors.blue[700],
42
- text: "#fff",
43
- border: tokens.tokens.colors.blue[500]
44
- },
45
- warning: {
46
- bg: tokens.tokens.colors.yellow[500],
47
- hover: tokens.tokens.colors.yellow[600],
48
- active: tokens.tokens.colors.yellow[700],
49
- text: "#fff",
50
- border: tokens.tokens.colors.yellow[500]
51
- },
52
- danger: {
53
- bg: tokens.tokens.colors.red[500],
54
- hover: tokens.tokens.colors.red[600],
55
- active: tokens.tokens.colors.red[700],
56
- text: "#fff",
57
- border: tokens.tokens.colors.red[500]
58
- },
59
- success: {
60
- bg: tokens.tokens.colors.green[500],
61
- hover: tokens.tokens.colors.green[600],
62
- active: tokens.tokens.colors.green[700],
63
- text: "#fff",
64
- border: tokens.tokens.colors.green[500]
65
- }
66
- };
67
- const stylesFactory = (theme = "dark") => {
68
- const { colors, font, size, alpha } = tokens.tokens;
69
- const { fontFamily } = font;
70
- const css = goober__namespace.css;
71
- const t = (light, dark) => theme === "light" ? light : dark;
72
- return {
73
- logo: css`
74
- cursor: pointer;
75
- display: flex;
76
- flex-direction: column;
77
- background-color: transparent;
78
- border: none;
79
- width: ${size[12]};
80
- height: ${size[12]};
81
- font-family: ${fontFamily.sans};
82
- gap: ${tokens.tokens.size[0.5]};
83
- padding: 0px;
84
- &:hover {
85
- opacity: 0.7;
86
- }
87
- `,
88
- selectWrapper: css`
89
- width: 100%;
90
- max-width: 300px;
91
- display: flex;
92
- flex-direction: column;
93
- gap: 0.375rem;
94
- `,
95
- selectContainer: css`
96
- width: 100%;
97
- `,
98
- selectLabel: css`
99
- font-size: 0.875rem;
100
- font-weight: 500;
101
- color: ${colors.gray[100]};
102
- text-align: left;
103
- `,
104
- selectDescription: css`
105
- font-size: 0.8rem;
106
- color: ${colors.gray[400]};
107
- margin: 0;
108
- line-height: 1.3;
109
- text-align: left;
110
- `,
111
- select: css`
112
- appearance: none;
113
- width: 100%;
114
- padding: 0.75rem 3rem 0.75rem 0.75rem;
115
- border-radius: 0.5rem;
116
- background-color: ${colors.darkGray[800]};
117
- color: ${colors.gray[100]};
118
- border: 1px solid ${colors.gray[700]};
119
- font-size: 0.875rem;
120
- transition: all 0.2s ease;
121
- cursor: pointer;
122
-
123
- /* Custom arrow */
124
- background-image: url("data:image/svg+xml;utf8,<svg fill='%236b7280' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
125
- background-repeat: no-repeat;
126
- background-position: right 0.75rem center;
127
- background-size: 1.25rem;
128
-
129
- &:hover {
130
- border-color: ${colors.gray[600]};
131
- }
132
-
133
- &:focus {
134
- outline: none;
135
- border-color: ${colors.purple[400]};
136
- box-shadow: 0 0 0 3px ${colors.purple[400]}${alpha[20]};
137
- }
138
- `,
139
- inputWrapper: css`
140
- width: 100%;
141
- max-width: 300px;
142
- display: flex;
143
- flex-direction: column;
144
- gap: 0.375rem;
145
- `,
146
- inputContainer: css`
147
- width: 100%;
148
- `,
149
- inputLabel: css`
150
- font-size: 0.875rem;
151
- font-weight: 500;
152
- color: ${colors.gray[100]};
153
- text-align: left;
154
- `,
155
- inputDescription: css`
156
- font-size: 0.8rem;
157
- color: ${colors.gray[400]};
158
- margin: 0;
159
- line-height: 1.3;
160
- text-align: left;
161
- `,
162
- input: css`
163
- appearance: none;
164
- width: 100%;
165
- padding: 0.75rem;
166
- border-radius: 0.5rem;
167
- background-color: ${colors.darkGray[800]};
168
- color: ${colors.gray[100]};
169
- border: 1px solid ${colors.gray[700]};
170
- font-size: 0.875rem;
171
- font-family: ${fontFamily.mono};
172
- transition: all 0.2s ease;
173
-
174
- &::placeholder {
175
- color: ${colors.gray[500]};
176
- }
177
-
178
- &:hover {
179
- border-color: ${colors.gray[600]};
180
- }
181
-
182
- &:focus {
183
- outline: none;
184
- border-color: ${colors.purple[400]};
185
- box-shadow: 0 0 0 3px ${colors.purple[400]}${alpha[20]};
186
- }
187
- `,
188
- checkboxWrapper: css`
189
- display: flex;
190
- align-items: flex-start;
191
- gap: 0.75rem;
192
- cursor: pointer;
193
- user-select: none;
194
- padding: 0.5rem;
195
- border-radius: 0.5rem;
196
- transition: background-color 0.2s ease;
197
-
198
- &:hover {
199
- background-color: ${colors.darkGray[800]};
200
- }
201
- `,
202
- checkboxContainer: css`
203
- width: 100%;
204
- `,
205
- checkboxLabelContainer: css`
206
- display: flex;
207
- flex-direction: column;
208
- gap: 0.25rem;
209
- flex: 1;
210
- `,
211
- checkbox: css`
212
- appearance: none;
213
- width: 1.25rem;
214
- height: 1.25rem;
215
- border: 2px solid ${colors.gray[700]};
216
- border-radius: 0.375rem;
217
- background-color: ${colors.darkGray[800]};
218
- display: grid;
219
- place-items: center;
220
- transition: all 0.2s ease;
221
- flex-shrink: 0;
222
- margin-top: 0.125rem;
223
-
224
- &:hover {
225
- border-color: ${colors.purple[400]};
226
- }
227
-
228
- &:checked {
229
- background-color: ${colors.purple[500]};
230
- border-color: ${colors.purple[500]};
231
- }
232
-
233
- &:checked::after {
234
- content: '';
235
- width: 0.4rem;
236
- height: 0.6rem;
237
- border: solid white;
238
- border-width: 0 2px 2px 0;
239
- transform: rotate(45deg);
240
- margin-top: -3px;
241
- }
242
- `,
243
- checkboxLabel: css`
244
- color: ${colors.gray[100]};
245
- font-size: 0.875rem;
246
- font-weight: 500;
247
- line-height: 1.4;
248
- text-align: left;
249
- `,
250
- checkboxDescription: css`
251
- color: ${colors.gray[400]};
252
- font-size: 0.8rem;
253
- line-height: 1.3;
254
- text-align: left;
255
- `,
256
- button: {
257
- base: css`
258
- display: inline-flex;
259
- align-items: center;
260
- justify-content: center;
261
- font-family: ${tokens.tokens.font.fontFamily.sans};
262
- font-size: 0.8rem;
263
- font-weight: 500;
264
- border-radius: 0.2rem;
265
- padding: 0.2rem 0.6rem;
266
- cursor: pointer;
267
- transition:
268
- background 0.2s,
269
- color 0.2s,
270
- border 0.2s,
271
- box-shadow 0.2s;
272
- outline: none;
273
- border-width: 1px;
274
- border-style: solid;
275
- `,
276
- variant(variant, outline, ghost) {
277
- const v = buttonVariantColors[variant];
278
- if (ghost) {
279
- return css`
280
- background: transparent;
281
- color: ${v.bg};
282
- border-color: transparent;
283
- &:hover {
284
- background: ${tokens.tokens.colors.purple[100]};
285
- }
286
- &:active {
287
- background: ${tokens.tokens.colors.purple[200]};
288
- }
289
- `;
290
- }
291
- if (outline) {
292
- return css`
293
- background: transparent;
294
- color: ${v.bg};
295
- border-color: ${v.bg};
296
- &:hover {
297
- background: ${tokens.tokens.colors.purple[100]};
298
- border-color: ${v.hover};
299
- }
300
- &:active {
301
- background: ${tokens.tokens.colors.purple[200]};
302
- border-color: ${v.active};
303
- }
304
- `;
305
- }
306
- return css`
307
- background: ${v.bg};
308
- color: ${v.text};
309
- border-color: ${v.border};
310
- &:hover {
311
- background: ${v.hover};
312
- border-color: ${v.hover};
313
- }
314
- &:active {
315
- background: ${v.active};
316
- border-color: ${v.active};
317
- }
318
- `;
319
- }
320
- },
321
- tag: {
322
- dot: (color) => css`
323
- width: ${tokens.tokens.size[1.5]};
324
- height: ${tokens.tokens.size[1.5]};
325
- border-radius: ${tokens.tokens.border.radius.full};
326
- background-color: ${tokens.tokens.colors[color][500]};
327
- `,
328
- base: css`
329
- display: flex;
330
- gap: ${tokens.tokens.size[1.5]};
331
- box-sizing: border-box;
332
- height: ${tokens.tokens.size[6.5]};
333
- background: ${t(colors.gray[50], colors.darkGray[500])};
334
- color: ${t(colors.gray[700], colors.gray[300])};
335
- border-radius: ${tokens.tokens.border.radius.sm};
336
- font-size: ${font.size.sm};
337
- padding: ${tokens.tokens.size[1]};
338
- padding-left: ${tokens.tokens.size[1.5]};
339
- align-items: center;
340
- font-weight: ${font.weight.medium};
341
- border: ${t("1px solid " + colors.gray[300], "1px solid transparent")};
342
- user-select: none;
343
- position: relative;
344
- &:focus-visible {
345
- outline-offset: 2px;
346
- outline: 2px solid ${colors.blue[800]};
347
- }
348
- `,
349
- label: css`
350
- font-size: ${font.size.xs};
351
- `,
352
- count: css`
353
- font-size: ${font.size.xs};
354
- padding: 0 5px;
355
- display: flex;
356
- align-items: center;
357
- justify-content: center;
358
- color: ${t(colors.gray[500], colors.gray[400])};
359
- background-color: ${t(colors.gray[200], colors.darkGray[300])};
360
- border-radius: 2px;
361
- font-variant-numeric: tabular-nums;
362
- height: ${tokens.tokens.size[4.5]};
363
- `
364
- },
365
- tree: {
366
- collapsible: css`
367
- cursor: pointer;
368
- transition: all 0.2s ease;
369
- &:hover {
370
- background-color: ${colors.darkGray[700]};
371
- border-radius: ${tokens.tokens.border.radius.sm};
372
- padding: 0 ${tokens.tokens.size[1]};
373
- }
374
- `,
375
- valueCollapsed: css`
376
- color: ${colors.gray[400]};
377
- `,
378
- valueFunction: css`
379
- color: ${colors.cyan[400]};
380
- `,
381
- valueString: css`
382
- color: ${colors.green[400]};
383
- `,
384
- valueNumber: css`
385
- color: ${colors.yellow[400]};
386
- `,
387
- valueBoolean: css`
388
- color: ${colors.pink[400]};
389
- `,
390
- valueNull: css`
391
- color: ${colors.gray[400]};
392
- font-style: italic;
393
- `,
394
- valueKey: css`
395
- color: ${colors.blue[300]};
396
- `,
397
- valueBraces: css`
398
- color: ${colors.gray[500]};
399
- `,
400
- valueContainer: (isRoot) => css`
401
- display: block;
402
- margin-left: ${isRoot ? "0" : "1rem"};
403
- `
404
- },
405
- section: {
406
- main: css`
407
- margin-bottom: 2rem;
408
- padding: 1.5rem;
409
- background-color: ${colors.darkGray[800]};
410
- border: 1px solid ${colors.gray[700]};
411
- border-radius: 0.75rem;
412
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
413
- `,
414
- title: css`
415
- font-size: 1.125rem;
416
- font-weight: 600;
417
- color: ${colors.gray[100]};
418
- margin: 0 0 1rem 0;
419
- padding-bottom: 0.5rem;
420
- border-bottom: 1px solid ${colors.gray[700]};
421
- display: flex;
422
- align-items: center;
423
- gap: 0.5rem;
424
- text-align: left;
425
- `,
426
- icon: css`
427
- height: 20px;
428
- width: 20px;
429
- & > svg {
430
- height: 100%;
431
- width: 100%;
432
- }
433
- color: ${colors.purple[400]};
434
- `,
435
- description: css`
436
- color: ${colors.gray[400]};
437
- font-size: 0.875rem;
438
- margin: 0 0 1.5rem 0;
439
- line-height: 1.5;
440
- text-align: left;
441
- `
442
- },
443
- mainPanel: {
444
- panel: css`
445
- padding: 0;
446
- background: ${colors.darkGray[700]};
447
- overflow-y: auto;
448
- height: 100%;
449
- `,
450
- withPadding: css`
451
- padding: ${tokens.tokens.size[4]};
452
- `
453
- }
454
- };
455
- };
456
- function useStyles() {
457
- const [_styles] = solidJs.createSignal(stylesFactory());
458
- return _styles;
459
- }
460
- exports.useStyles = useStyles;
461
- //# sourceMappingURL=use-styles.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-styles.cjs","sources":["../../../src/styles/use-styles.ts"],"sourcesContent":["import * as goober from 'goober'\nimport { createSignal } from 'solid-js'\nimport { tokens } from './tokens'\nimport type { ButtonVariant } from '../components/button'\n\nconst buttonVariantColors: Record<\n ButtonVariant,\n { bg: string; hover: string; active: string; text: string; border: string }\n> = {\n primary: {\n bg: tokens.colors.purple[500],\n hover: tokens.colors.purple[600],\n active: tokens.colors.purple[700],\n text: '#fff',\n border: tokens.colors.purple[500],\n },\n secondary: {\n bg: tokens.colors.gray[800],\n hover: tokens.colors.gray[700],\n active: tokens.colors.gray[600],\n text: tokens.colors.gray[100],\n border: tokens.colors.gray[700],\n },\n info: {\n bg: tokens.colors.blue[500],\n hover: tokens.colors.blue[600],\n active: tokens.colors.blue[700],\n text: '#fff',\n border: tokens.colors.blue[500],\n },\n warning: {\n bg: tokens.colors.yellow[500],\n hover: tokens.colors.yellow[600],\n active: tokens.colors.yellow[700],\n text: '#fff',\n border: tokens.colors.yellow[500],\n },\n danger: {\n bg: tokens.colors.red[500],\n hover: tokens.colors.red[600],\n active: tokens.colors.red[700],\n text: '#fff',\n border: tokens.colors.red[500],\n },\n success: {\n bg: tokens.colors.green[500],\n hover: tokens.colors.green[600],\n active: tokens.colors.green[700],\n text: '#fff',\n border: tokens.colors.green[500],\n },\n}\nconst stylesFactory = (theme: 'light' | 'dark' = 'dark') => {\n const { colors, font, size, alpha } = tokens\n const { fontFamily } = font\n const css = goober.css\n const t = (light: string, dark: string) => (theme === 'light' ? light : dark)\n\n return {\n logo: css`\n cursor: pointer;\n display: flex;\n flex-direction: column;\n background-color: transparent;\n border: none;\n width: ${size[12]};\n height: ${size[12]};\n font-family: ${fontFamily.sans};\n gap: ${tokens.size[0.5]};\n padding: 0px;\n &:hover {\n opacity: 0.7;\n }\n `,\n\n selectWrapper: css`\n width: 100%;\n max-width: 300px;\n display: flex;\n flex-direction: column;\n gap: 0.375rem;\n `,\n selectContainer: css`\n width: 100%;\n `,\n selectLabel: css`\n font-size: 0.875rem;\n font-weight: 500;\n color: ${colors.gray[100]};\n text-align: left;\n `,\n selectDescription: css`\n font-size: 0.8rem;\n color: ${colors.gray[400]};\n margin: 0;\n line-height: 1.3;\n text-align: left;\n `,\n select: css`\n appearance: none;\n width: 100%;\n padding: 0.75rem 3rem 0.75rem 0.75rem;\n border-radius: 0.5rem;\n background-color: ${colors.darkGray[800]};\n color: ${colors.gray[100]};\n border: 1px solid ${colors.gray[700]};\n font-size: 0.875rem;\n transition: all 0.2s ease;\n cursor: pointer;\n\n /* Custom arrow */\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='%236b7280' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>\");\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 1.25rem;\n\n &:hover {\n border-color: ${colors.gray[600]};\n }\n\n &:focus {\n outline: none;\n border-color: ${colors.purple[400]};\n box-shadow: 0 0 0 3px ${colors.purple[400]}${alpha[20]};\n }\n `,\n inputWrapper: css`\n width: 100%;\n max-width: 300px;\n display: flex;\n flex-direction: column;\n gap: 0.375rem;\n `,\n inputContainer: css`\n width: 100%;\n `,\n inputLabel: css`\n font-size: 0.875rem;\n font-weight: 500;\n color: ${colors.gray[100]};\n text-align: left;\n `,\n inputDescription: css`\n font-size: 0.8rem;\n color: ${colors.gray[400]};\n margin: 0;\n line-height: 1.3;\n text-align: left;\n `,\n input: css`\n appearance: none;\n width: 100%;\n padding: 0.75rem;\n border-radius: 0.5rem;\n background-color: ${colors.darkGray[800]};\n color: ${colors.gray[100]};\n border: 1px solid ${colors.gray[700]};\n font-size: 0.875rem;\n font-family: ${fontFamily.mono};\n transition: all 0.2s ease;\n\n &::placeholder {\n color: ${colors.gray[500]};\n }\n\n &:hover {\n border-color: ${colors.gray[600]};\n }\n\n &:focus {\n outline: none;\n border-color: ${colors.purple[400]};\n box-shadow: 0 0 0 3px ${colors.purple[400]}${alpha[20]};\n }\n `,\n checkboxWrapper: css`\n display: flex;\n align-items: flex-start;\n gap: 0.75rem;\n cursor: pointer;\n user-select: none;\n padding: 0.5rem;\n border-radius: 0.5rem;\n transition: background-color 0.2s ease;\n\n &:hover {\n background-color: ${colors.darkGray[800]};\n }\n `,\n checkboxContainer: css`\n width: 100%;\n `,\n checkboxLabelContainer: css`\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n flex: 1;\n `,\n checkbox: css`\n appearance: none;\n width: 1.25rem;\n height: 1.25rem;\n border: 2px solid ${colors.gray[700]};\n border-radius: 0.375rem;\n background-color: ${colors.darkGray[800]};\n display: grid;\n place-items: center;\n transition: all 0.2s ease;\n flex-shrink: 0;\n margin-top: 0.125rem;\n\n &:hover {\n border-color: ${colors.purple[400]};\n }\n\n &:checked {\n background-color: ${colors.purple[500]};\n border-color: ${colors.purple[500]};\n }\n\n &:checked::after {\n content: '';\n width: 0.4rem;\n height: 0.6rem;\n border: solid white;\n border-width: 0 2px 2px 0;\n transform: rotate(45deg);\n margin-top: -3px;\n }\n `,\n checkboxLabel: css`\n color: ${colors.gray[100]};\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.4;\n text-align: left;\n `,\n checkboxDescription: css`\n color: ${colors.gray[400]};\n font-size: 0.8rem;\n line-height: 1.3;\n text-align: left;\n `,\n button: {\n base: css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-family: ${tokens.font.fontFamily.sans};\n font-size: 0.8rem;\n font-weight: 500;\n border-radius: 0.2rem;\n padding: 0.2rem 0.6rem;\n cursor: pointer;\n transition:\n background 0.2s,\n color 0.2s,\n border 0.2s,\n box-shadow 0.2s;\n outline: none;\n border-width: 1px;\n border-style: solid;\n `,\n variant(variant: ButtonVariant, outline?: boolean, ghost?: boolean) {\n const v = buttonVariantColors[variant]\n if (ghost) {\n return css`\n background: transparent;\n color: ${v.bg};\n border-color: transparent;\n &:hover {\n background: ${tokens.colors.purple[100]};\n }\n &:active {\n background: ${tokens.colors.purple[200]};\n }\n `\n }\n if (outline) {\n return css`\n background: transparent;\n color: ${v.bg};\n border-color: ${v.bg};\n &:hover {\n background: ${tokens.colors.purple[100]};\n border-color: ${v.hover};\n }\n &:active {\n background: ${tokens.colors.purple[200]};\n border-color: ${v.active};\n }\n `\n }\n // Default solid button\n return css`\n background: ${v.bg};\n color: ${v.text};\n border-color: ${v.border};\n &:hover {\n background: ${v.hover};\n border-color: ${v.hover};\n }\n &:active {\n background: ${v.active};\n border-color: ${v.active};\n }\n `\n },\n },\n tag: {\n dot: (color: keyof typeof tokens.colors) => css`\n width: ${tokens.size[1.5]};\n height: ${tokens.size[1.5]};\n border-radius: ${tokens.border.radius.full};\n background-color: ${tokens.colors[color][500]};\n `,\n base: css`\n display: flex;\n gap: ${tokens.size[1.5]};\n box-sizing: border-box;\n height: ${tokens.size[6.5]};\n background: ${t(colors.gray[50], colors.darkGray[500])};\n color: ${t(colors.gray[700], colors.gray[300])};\n border-radius: ${tokens.border.radius.sm};\n font-size: ${font.size.sm};\n padding: ${tokens.size[1]};\n padding-left: ${tokens.size[1.5]};\n align-items: center;\n font-weight: ${font.weight.medium};\n border: ${t('1px solid ' + colors.gray[300], '1px solid transparent')};\n user-select: none;\n position: relative;\n &:focus-visible {\n outline-offset: 2px;\n outline: 2px solid ${colors.blue[800]};\n }\n `,\n label: css`\n font-size: ${font.size.xs};\n `,\n count: css`\n font-size: ${font.size.xs};\n padding: 0 5px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${t(colors.gray[500], colors.gray[400])};\n background-color: ${t(colors.gray[200], colors.darkGray[300])};\n border-radius: 2px;\n font-variant-numeric: tabular-nums;\n height: ${tokens.size[4.5]};\n `,\n },\n tree: {\n collapsible: css`\n cursor: pointer;\n transition: all 0.2s ease;\n &:hover {\n background-color: ${colors.darkGray[700]};\n border-radius: ${tokens.border.radius.sm};\n padding: 0 ${tokens.size[1]};\n }\n `,\n valueCollapsed: css`\n color: ${colors.gray[400]};\n `,\n valueFunction: css`\n color: ${colors.cyan[400]};\n `,\n valueString: css`\n color: ${colors.green[400]};\n `,\n valueNumber: css`\n color: ${colors.yellow[400]};\n `,\n valueBoolean: css`\n color: ${colors.pink[400]};\n `,\n valueNull: css`\n color: ${colors.gray[400]};\n font-style: italic;\n `,\n valueKey: css`\n color: ${colors.blue[300]};\n `,\n valueBraces: css`\n color: ${colors.gray[500]};\n `,\n valueContainer: (isRoot: boolean) => css`\n display: block;\n margin-left: ${isRoot ? '0' : '1rem'};\n `,\n },\n section: {\n main: css`\n margin-bottom: 2rem;\n padding: 1.5rem;\n background-color: ${colors.darkGray[800]};\n border: 1px solid ${colors.gray[700]};\n border-radius: 0.75rem;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n `,\n title: css`\n font-size: 1.125rem;\n font-weight: 600;\n color: ${colors.gray[100]};\n margin: 0 0 1rem 0;\n padding-bottom: 0.5rem;\n border-bottom: 1px solid ${colors.gray[700]};\n display: flex;\n align-items: center;\n gap: 0.5rem;\n text-align: left;\n `,\n icon: css`\n height: 20px;\n width: 20px;\n & > svg {\n height: 100%;\n width: 100%;\n }\n color: ${colors.purple[400]};\n `,\n description: css`\n color: ${colors.gray[400]};\n font-size: 0.875rem;\n margin: 0 0 1.5rem 0;\n line-height: 1.5;\n text-align: left;\n `,\n },\n mainPanel: {\n panel: css`\n padding: 0;\n background: ${colors.darkGray[700]};\n overflow-y: auto;\n height: 100%;\n `,\n withPadding: css`\n padding: ${tokens.size[4]};\n `,\n },\n }\n}\n\nexport function useStyles() {\n const [_styles] = createSignal(stylesFactory())\n return _styles\n}\n"],"names":["tokens","goober","createSignal"],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- import { tokens } from './tokens.cjs';
2
- import { ButtonVariant } from '../components/button.cjs';
3
- export declare function useStyles(): import('solid-js').Accessor<{
4
- logo: string;
5
- selectWrapper: string;
6
- selectContainer: string;
7
- selectLabel: string;
8
- selectDescription: string;
9
- select: string;
10
- inputWrapper: string;
11
- inputContainer: string;
12
- inputLabel: string;
13
- inputDescription: string;
14
- input: string;
15
- checkboxWrapper: string;
16
- checkboxContainer: string;
17
- checkboxLabelContainer: string;
18
- checkbox: string;
19
- checkboxLabel: string;
20
- checkboxDescription: string;
21
- button: {
22
- base: string;
23
- variant(variant: ButtonVariant, outline?: boolean, ghost?: boolean): string;
24
- };
25
- tag: {
26
- dot: (color: keyof typeof tokens.colors) => string;
27
- base: string;
28
- label: string;
29
- count: string;
30
- };
31
- tree: {
32
- collapsible: string;
33
- valueCollapsed: string;
34
- valueFunction: string;
35
- valueString: string;
36
- valueNumber: string;
37
- valueBoolean: string;
38
- valueNull: string;
39
- valueKey: string;
40
- valueBraces: string;
41
- valueContainer: (isRoot: boolean) => string;
42
- };
43
- section: {
44
- main: string;
45
- title: string;
46
- icon: string;
47
- description: string;
48
- };
49
- mainPanel: {
50
- panel: string;
51
- withPadding: string;
52
- };
53
- }>;