@polyxd/react 0.2.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/NOTICE +13 -0
  2. package/README.md +15 -2
  3. package/dist/components/avatar.js +5 -36
  4. package/dist/components/avatar.js.map +1 -1
  5. package/dist/components/chart.js +4 -87
  6. package/dist/components/chart.js.map +1 -1
  7. package/dist/components/content.d.ts +0 -8
  8. package/dist/components/content.js +27 -349
  9. package/dist/components/content.js.map +1 -1
  10. package/dist/components/filter.js +1 -1
  11. package/dist/components/filter.js.map +1 -1
  12. package/dist/components/flow.js +11 -85
  13. package/dist/components/flow.js.map +1 -1
  14. package/dist/components/index.js +6 -1
  15. package/dist/components/index.js.map +1 -1
  16. package/dist/components/inputs.d.ts +2 -12
  17. package/dist/components/inputs.js +5 -47
  18. package/dist/components/inputs.js.map +1 -1
  19. package/dist/components/marks.js +5 -20
  20. package/dist/components/marks.js.map +1 -1
  21. package/dist/components/navigation.d.ts +2 -0
  22. package/dist/components/navigation.js +31 -19
  23. package/dist/components/navigation.js.map +1 -1
  24. package/dist/components/pickers.js +12 -160
  25. package/dist/components/pickers.js.map +1 -1
  26. package/dist/components/shell.d.ts +41 -0
  27. package/dist/components/shell.js +190 -0
  28. package/dist/components/shell.js.map +1 -0
  29. package/dist/components/split.d.ts +11 -0
  30. package/dist/components/split.js +85 -0
  31. package/dist/components/split.js.map +1 -0
  32. package/dist/components/structure.d.ts +8 -0
  33. package/dist/components/structure.js +12 -1
  34. package/dist/components/structure.js.map +1 -1
  35. package/dist/components/table.js +10 -17
  36. package/dist/components/table.js.map +1 -1
  37. package/dist/components/tree.js +6 -57
  38. package/dist/components/tree.js.map +1 -1
  39. package/dist/context.d.ts +34 -46
  40. package/dist/context.js +10 -7
  41. package/dist/context.js.map +1 -1
  42. package/dist/data.d.ts +2 -26
  43. package/dist/data.js +2 -51
  44. package/dist/data.js.map +1 -1
  45. package/dist/format.d.ts +2 -14
  46. package/dist/format.js +2 -69
  47. package/dist/format.js.map +1 -1
  48. package/dist/frame.d.ts +19 -0
  49. package/dist/frame.js +21 -0
  50. package/dist/frame.js.map +1 -0
  51. package/dist/index.d.ts +2 -1
  52. package/dist/index.js +2 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/skeleton.d.ts +2 -1
  55. package/dist/skeleton.js +9 -25
  56. package/dist/skeleton.js.map +1 -1
  57. package/dist/surface.d.ts +7 -3
  58. package/dist/surface.js +15 -13
  59. package/dist/surface.js.map +1 -1
  60. package/package.json +11 -6
  61. package/preview/polyxd.css +2 -0
  62. package/preview/polyxd.js +63 -0
  63. package/src/styles.css +611 -8
  64. package/themes/brutalist.css +300 -0
  65. package/themes/civic.css +300 -0
  66. package/themes/editorial.css +300 -0
  67. package/themes/finance.css +300 -0
  68. package/themes/glass.css +300 -0
  69. package/themes/health.css +300 -0
  70. package/themes/mono.css +300 -0
  71. package/themes/neon.css +300 -0
  72. package/themes/pastel.css +300 -0
  73. package/themes/sketch.css +356 -0
  74. package/themes/terminal.css +300 -0
  75. package/themes/wireframe.css +328 -0
@@ -0,0 +1,300 @@
1
+ /* Generated by @polyxd/react scripts/build-themes.ts from the terminal pack. Do not edit. */
2
+
3
+ [data-pxd-theme="terminal"]:not([data-pxd-mode]),
4
+ [data-pxd-theme="terminal"][data-pxd-mode="dark"] {
5
+ --pxd-color-surface-default: #0b0f0c;
6
+ --pxd-color-surface-subtle: #121a14;
7
+ --pxd-color-surface-raised: #0f1511;
8
+ --pxd-color-surface-overlay: #151d17;
9
+ --pxd-color-surface-inverse: #e8ffe8;
10
+ --pxd-color-scrim: rgba(0, 0, 0, 0.7);
11
+ --pxd-color-text-default: #d6e9d6;
12
+ --pxd-color-text-muted: #8fb08f;
13
+ --pxd-color-text-inverse: #0b0f0c;
14
+ --pxd-color-text-link: #7ee787;
15
+ --pxd-color-border-default: #24312a;
16
+ --pxd-color-border-strong: #527058;
17
+ --pxd-color-border-focus: #ffb000;
18
+ --pxd-color-action-primary-background: #3fb950;
19
+ --pxd-color-action-primary-foreground: #0b0f0c;
20
+ --pxd-color-action-secondary-background: #121a14;
21
+ --pxd-color-action-secondary-foreground: #d6e9d6;
22
+ --pxd-color-action-secondary-border: #527058;
23
+ --pxd-color-action-danger-background: #ff6b5b;
24
+ --pxd-color-action-danger-foreground: #0b0f0c;
25
+ --pxd-color-selection-background: #0f2a17;
26
+ --pxd-color-selection-foreground: #8de39c;
27
+ --pxd-color-status-info-background: #12262e;
28
+ --pxd-color-status-info-foreground: #8fd8f0;
29
+ --pxd-color-status-info-emphasis: #4cc2e6;
30
+ --pxd-color-status-success-background: #0f2a17;
31
+ --pxd-color-status-success-foreground: #8de39c;
32
+ --pxd-color-status-success-emphasis: #3fb950;
33
+ --pxd-color-status-warning-background: #2e2308;
34
+ --pxd-color-status-warning-foreground: #ffd27a;
35
+ --pxd-color-status-warning-emphasis: #ffb000;
36
+ --pxd-color-status-danger-background: #331512;
37
+ --pxd-color-status-danger-foreground: #ffa198;
38
+ --pxd-color-status-danger-emphasis: #ff6b5b;
39
+ --pxd-color-data-categorical-1: #3fb950;
40
+ --pxd-color-data-categorical-2: #ffb000;
41
+ --pxd-color-data-categorical-3: #4cc2e6;
42
+ --pxd-color-data-categorical-4: #ff6b5b;
43
+ --pxd-color-data-categorical-5: #d59bff;
44
+ --pxd-color-data-categorical-6: #e6e6e6;
45
+ --pxd-color-data-positive: #3fb950;
46
+ --pxd-color-data-negative: #ff6b5b;
47
+ --pxd-color-data-neutral: #8fb08f;
48
+ --pxd-type-title-page-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
49
+ --pxd-type-title-page-size: 22px;
50
+ --pxd-type-title-page-weight: 700;
51
+ --pxd-type-title-page-line-height: 1.25;
52
+ --pxd-type-title-page-letter-spacing: 0px;
53
+ --pxd-type-title-section-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
54
+ --pxd-type-title-section-size: 17px;
55
+ --pxd-type-title-section-weight: 700;
56
+ --pxd-type-title-section-line-height: 1.3;
57
+ --pxd-type-title-section-letter-spacing: 0px;
58
+ --pxd-type-title-item-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
59
+ --pxd-type-title-item-size: 15px;
60
+ --pxd-type-title-item-weight: 700;
61
+ --pxd-type-title-item-line-height: 1.4;
62
+ --pxd-type-title-item-letter-spacing: 0px;
63
+ --pxd-type-body-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
64
+ --pxd-type-body-default-size: 16px;
65
+ --pxd-type-body-default-weight: 400;
66
+ --pxd-type-body-default-line-height: 1.5;
67
+ --pxd-type-body-default-letter-spacing: 0px;
68
+ --pxd-type-body-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
69
+ --pxd-type-body-small-size: 13px;
70
+ --pxd-type-body-small-weight: 400;
71
+ --pxd-type-body-small-line-height: 1.45;
72
+ --pxd-type-body-small-letter-spacing: 0px;
73
+ --pxd-type-label-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
74
+ --pxd-type-label-default-size: 13px;
75
+ --pxd-type-label-default-weight: 500;
76
+ --pxd-type-label-default-line-height: 1.4;
77
+ --pxd-type-label-default-letter-spacing: 0px;
78
+ --pxd-type-label-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
79
+ --pxd-type-label-small-size: 11px;
80
+ --pxd-type-label-small-weight: 500;
81
+ --pxd-type-label-small-line-height: 1.4;
82
+ --pxd-type-label-small-letter-spacing: 0.3px;
83
+ --pxd-type-numeric-display-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
84
+ --pxd-type-numeric-display-size: 26px;
85
+ --pxd-type-numeric-display-weight: 700;
86
+ --pxd-type-numeric-display-line-height: 1.15;
87
+ --pxd-type-numeric-display-letter-spacing: 0px;
88
+ --pxd-space-inset-compact: 6px;
89
+ --pxd-space-inset-default: 10px;
90
+ --pxd-space-inset-comfortable: 16px;
91
+ --pxd-space-stack-tight: 2px;
92
+ --pxd-space-stack-default: 6px;
93
+ --pxd-space-stack-loose: 10px;
94
+ --pxd-space-stack-section: 24px;
95
+ --pxd-space-inline-tight: 4px;
96
+ --pxd-space-inline-default: 8px;
97
+ --pxd-space-inline-loose: 12px;
98
+ --pxd-size-target-min: 36px;
99
+ --pxd-size-icon-small: 14px;
100
+ --pxd-size-icon-default: 18px;
101
+ --pxd-radius-small: 2px;
102
+ --pxd-radius-control: 2px;
103
+ --pxd-radius-default: 2px;
104
+ --pxd-radius-large: 4px;
105
+ --pxd-radius-full: 4px;
106
+ --pxd-border-width-default: 1px;
107
+ --pxd-border-width-strong: 2px;
108
+ --pxd-focus-ring-width: 2px;
109
+ --pxd-focus-ring-offset: 1px;
110
+ --pxd-measure-max: 75;
111
+ --pxd-opacity-state-hover: 0.08;
112
+ --pxd-opacity-state-pressed: 0.16;
113
+ --pxd-opacity-state-focus: 0.16;
114
+ --pxd-opacity-state-disabled: 0.45;
115
+ --pxd-shadow-raised: 0px 0px 0px 0px rgba(0, 0, 0, 0);
116
+ --pxd-shadow-overlay: 0px 0px 0px 1px #527058;
117
+ --pxd-motion-duration-instant: 0ms;
118
+ --pxd-motion-duration-short: 60ms;
119
+ --pxd-motion-duration-medium: 100ms;
120
+ --pxd-motion-duration-long: 150ms;
121
+ --pxd-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
122
+ --pxd-motion-easing-enter: cubic-bezier(0, 0, 0.2, 1);
123
+ --pxd-motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
124
+
125
+ /* shadcn/ui variable names, so shadcn components follow this pack too */
126
+ --background: var(--pxd-color-surface-default);
127
+ --foreground: var(--pxd-color-text-default);
128
+ --card: var(--pxd-color-surface-raised);
129
+ --card-foreground: var(--pxd-color-text-default);
130
+ --popover: var(--pxd-color-surface-overlay);
131
+ --popover-foreground: var(--pxd-color-text-default);
132
+ --primary: var(--pxd-color-action-primary-background);
133
+ --primary-foreground: var(--pxd-color-action-primary-foreground);
134
+ --secondary: var(--pxd-color-action-secondary-background);
135
+ --secondary-foreground: var(--pxd-color-action-secondary-foreground);
136
+ --muted: var(--pxd-color-surface-subtle);
137
+ --muted-foreground: var(--pxd-color-text-muted);
138
+ --accent: var(--pxd-color-selection-background);
139
+ --accent-foreground: var(--pxd-color-selection-foreground);
140
+ --destructive: var(--pxd-color-action-danger-background);
141
+ --border: var(--pxd-color-border-default);
142
+ --input: var(--pxd-color-border-strong);
143
+ --ring: var(--pxd-color-border-focus);
144
+ --radius: var(--pxd-radius-default);
145
+ --chart-1: var(--pxd-color-data-categorical-1);
146
+ --chart-2: var(--pxd-color-data-categorical-2);
147
+ --chart-3: var(--pxd-color-data-categorical-3);
148
+ --chart-4: var(--pxd-color-data-categorical-4);
149
+ --chart-5: var(--pxd-color-data-categorical-5);
150
+ color-scheme: dark;
151
+ }
152
+
153
+ [data-pxd-theme="terminal"][data-pxd-mode="light"] {
154
+ --pxd-color-surface-default: #f4f7f2;
155
+ --pxd-color-surface-subtle: #e8eee5;
156
+ --pxd-color-surface-raised: #fbfcfa;
157
+ --pxd-color-surface-overlay: #ffffff;
158
+ --pxd-color-surface-inverse: #0f1a12;
159
+ --pxd-color-scrim: rgba(15, 26, 18, 0.5);
160
+ --pxd-color-text-default: #0f1a12;
161
+ --pxd-color-text-muted: #4c6650;
162
+ --pxd-color-text-inverse: #f4f7f2;
163
+ --pxd-color-text-link: #1f7a30;
164
+ --pxd-color-border-default: #c5d1c6;
165
+ --pxd-color-border-strong: #5f7a63;
166
+ --pxd-color-border-focus: #8a5a00;
167
+ --pxd-color-action-primary-background: #1f7a30;
168
+ --pxd-color-action-primary-foreground: #ffffff;
169
+ --pxd-color-action-secondary-background: #f4f7f2;
170
+ --pxd-color-action-secondary-foreground: #0f1a12;
171
+ --pxd-color-action-secondary-border: #5f7a63;
172
+ --pxd-color-action-danger-background: #b3261e;
173
+ --pxd-color-action-danger-foreground: #ffffff;
174
+ --pxd-color-selection-background: #d9f0dc;
175
+ --pxd-color-selection-foreground: #12501e;
176
+ --pxd-color-status-info-background: #dceef5;
177
+ --pxd-color-status-info-foreground: #0f4a5c;
178
+ --pxd-color-status-info-emphasis: #0e6f8a;
179
+ --pxd-color-status-success-background: #d9f0dc;
180
+ --pxd-color-status-success-foreground: #12501e;
181
+ --pxd-color-status-success-emphasis: #1f7a30;
182
+ --pxd-color-status-warning-background: #fbeccc;
183
+ --pxd-color-status-warning-foreground: #5c3d00;
184
+ --pxd-color-status-warning-emphasis: #8a5a00;
185
+ --pxd-color-status-danger-background: #f7dcd9;
186
+ --pxd-color-status-danger-foreground: #7a1c16;
187
+ --pxd-color-status-danger-emphasis: #b3261e;
188
+ --pxd-color-data-categorical-1: #1f7a30;
189
+ --pxd-color-data-categorical-2: #8a5a00;
190
+ --pxd-color-data-categorical-3: #0e6f8a;
191
+ --pxd-color-data-categorical-4: #b3261e;
192
+ --pxd-color-data-categorical-5: #6b3fa0;
193
+ --pxd-color-data-categorical-6: #3d3d3d;
194
+ --pxd-color-data-positive: #1f7a30;
195
+ --pxd-color-data-negative: #b3261e;
196
+ --pxd-color-data-neutral: #5f7a63;
197
+ --pxd-type-title-page-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
198
+ --pxd-type-title-page-size: 22px;
199
+ --pxd-type-title-page-weight: 700;
200
+ --pxd-type-title-page-line-height: 1.25;
201
+ --pxd-type-title-page-letter-spacing: 0px;
202
+ --pxd-type-title-section-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
203
+ --pxd-type-title-section-size: 17px;
204
+ --pxd-type-title-section-weight: 700;
205
+ --pxd-type-title-section-line-height: 1.3;
206
+ --pxd-type-title-section-letter-spacing: 0px;
207
+ --pxd-type-title-item-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
208
+ --pxd-type-title-item-size: 15px;
209
+ --pxd-type-title-item-weight: 700;
210
+ --pxd-type-title-item-line-height: 1.4;
211
+ --pxd-type-title-item-letter-spacing: 0px;
212
+ --pxd-type-body-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
213
+ --pxd-type-body-default-size: 16px;
214
+ --pxd-type-body-default-weight: 400;
215
+ --pxd-type-body-default-line-height: 1.5;
216
+ --pxd-type-body-default-letter-spacing: 0px;
217
+ --pxd-type-body-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
218
+ --pxd-type-body-small-size: 13px;
219
+ --pxd-type-body-small-weight: 400;
220
+ --pxd-type-body-small-line-height: 1.45;
221
+ --pxd-type-body-small-letter-spacing: 0px;
222
+ --pxd-type-label-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
223
+ --pxd-type-label-default-size: 13px;
224
+ --pxd-type-label-default-weight: 500;
225
+ --pxd-type-label-default-line-height: 1.4;
226
+ --pxd-type-label-default-letter-spacing: 0px;
227
+ --pxd-type-label-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
228
+ --pxd-type-label-small-size: 11px;
229
+ --pxd-type-label-small-weight: 500;
230
+ --pxd-type-label-small-line-height: 1.4;
231
+ --pxd-type-label-small-letter-spacing: 0.3px;
232
+ --pxd-type-numeric-display-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
233
+ --pxd-type-numeric-display-size: 26px;
234
+ --pxd-type-numeric-display-weight: 700;
235
+ --pxd-type-numeric-display-line-height: 1.15;
236
+ --pxd-type-numeric-display-letter-spacing: 0px;
237
+ --pxd-space-inset-compact: 6px;
238
+ --pxd-space-inset-default: 10px;
239
+ --pxd-space-inset-comfortable: 16px;
240
+ --pxd-space-stack-tight: 2px;
241
+ --pxd-space-stack-default: 6px;
242
+ --pxd-space-stack-loose: 10px;
243
+ --pxd-space-stack-section: 24px;
244
+ --pxd-space-inline-tight: 4px;
245
+ --pxd-space-inline-default: 8px;
246
+ --pxd-space-inline-loose: 12px;
247
+ --pxd-size-target-min: 36px;
248
+ --pxd-size-icon-small: 14px;
249
+ --pxd-size-icon-default: 18px;
250
+ --pxd-radius-small: 2px;
251
+ --pxd-radius-control: 2px;
252
+ --pxd-radius-default: 2px;
253
+ --pxd-radius-large: 4px;
254
+ --pxd-radius-full: 4px;
255
+ --pxd-border-width-default: 1px;
256
+ --pxd-border-width-strong: 2px;
257
+ --pxd-focus-ring-width: 2px;
258
+ --pxd-focus-ring-offset: 1px;
259
+ --pxd-measure-max: 75;
260
+ --pxd-opacity-state-hover: 0.08;
261
+ --pxd-opacity-state-pressed: 0.16;
262
+ --pxd-opacity-state-focus: 0.16;
263
+ --pxd-opacity-state-disabled: 0.45;
264
+ --pxd-shadow-raised: 0px 0px 0px 0px rgba(0, 0, 0, 0);
265
+ --pxd-shadow-overlay: 0px 0px 0px 1px #5f7a63;
266
+ --pxd-motion-duration-instant: 0ms;
267
+ --pxd-motion-duration-short: 60ms;
268
+ --pxd-motion-duration-medium: 100ms;
269
+ --pxd-motion-duration-long: 150ms;
270
+ --pxd-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
271
+ --pxd-motion-easing-enter: cubic-bezier(0, 0, 0.2, 1);
272
+ --pxd-motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
273
+
274
+ /* shadcn/ui variable names, so shadcn components follow this pack too */
275
+ --background: var(--pxd-color-surface-default);
276
+ --foreground: var(--pxd-color-text-default);
277
+ --card: var(--pxd-color-surface-raised);
278
+ --card-foreground: var(--pxd-color-text-default);
279
+ --popover: var(--pxd-color-surface-overlay);
280
+ --popover-foreground: var(--pxd-color-text-default);
281
+ --primary: var(--pxd-color-action-primary-background);
282
+ --primary-foreground: var(--pxd-color-action-primary-foreground);
283
+ --secondary: var(--pxd-color-action-secondary-background);
284
+ --secondary-foreground: var(--pxd-color-action-secondary-foreground);
285
+ --muted: var(--pxd-color-surface-subtle);
286
+ --muted-foreground: var(--pxd-color-text-muted);
287
+ --accent: var(--pxd-color-selection-background);
288
+ --accent-foreground: var(--pxd-color-selection-foreground);
289
+ --destructive: var(--pxd-color-action-danger-background);
290
+ --border: var(--pxd-color-border-default);
291
+ --input: var(--pxd-color-border-strong);
292
+ --ring: var(--pxd-color-border-focus);
293
+ --radius: var(--pxd-radius-default);
294
+ --chart-1: var(--pxd-color-data-categorical-1);
295
+ --chart-2: var(--pxd-color-data-categorical-2);
296
+ --chart-3: var(--pxd-color-data-categorical-3);
297
+ --chart-4: var(--pxd-color-data-categorical-4);
298
+ --chart-5: var(--pxd-color-data-categorical-5);
299
+ color-scheme: light;
300
+ }
@@ -0,0 +1,328 @@
1
+ /* Generated by @polyxd/react scripts/build-themes.ts from the wireframe pack. Do not edit. */
2
+
3
+ [data-pxd-theme="wireframe"]:not([data-pxd-mode]),
4
+ [data-pxd-theme="wireframe"][data-pxd-mode="light"] {
5
+ --pxd-color-surface-default: #ffffff;
6
+ --pxd-color-surface-subtle: #f4f4f4;
7
+ --pxd-color-surface-raised: #ffffff;
8
+ --pxd-color-surface-overlay: #ffffff;
9
+ --pxd-color-surface-inverse: #333333;
10
+ --pxd-color-scrim: rgba(0, 0, 0, 0.4);
11
+ --pxd-color-text-default: #222222;
12
+ --pxd-color-text-muted: #5e5e5e;
13
+ --pxd-color-text-inverse: #ffffff;
14
+ --pxd-color-text-link: #1a5fd6;
15
+ --pxd-color-border-default: #9c9c9c;
16
+ --pxd-color-border-strong: #767676;
17
+ --pxd-color-border-focus: #1a5fd6;
18
+ --pxd-color-action-primary-background: #1a5fd6;
19
+ --pxd-color-action-primary-foreground: #ffffff;
20
+ --pxd-color-action-secondary-background: #ffffff;
21
+ --pxd-color-action-secondary-foreground: #222222;
22
+ --pxd-color-action-secondary-border: #767676;
23
+ --pxd-color-action-danger-background: #333333;
24
+ --pxd-color-action-danger-foreground: #ffffff;
25
+ --pxd-color-selection-background: #e8f0fc;
26
+ --pxd-color-selection-foreground: #183f8a;
27
+ --pxd-color-status-info-background: #e8f0fc;
28
+ --pxd-color-status-info-foreground: #183f8a;
29
+ --pxd-color-status-info-emphasis: #1a5fd6;
30
+ --pxd-color-status-success-background: #f4f4f4;
31
+ --pxd-color-status-success-foreground: #222222;
32
+ --pxd-color-status-success-emphasis: #474747;
33
+ --pxd-color-status-warning-background: #e6e6e6;
34
+ --pxd-color-status-warning-foreground: #222222;
35
+ --pxd-color-status-warning-emphasis: #767676;
36
+ --pxd-color-status-danger-background: #e6e6e6;
37
+ --pxd-color-status-danger-foreground: #222222;
38
+ --pxd-color-status-danger-emphasis: #333333;
39
+ --pxd-color-data-categorical-1: #1a5fd6;
40
+ --pxd-color-data-categorical-2: #222222;
41
+ --pxd-color-data-categorical-3: #474747;
42
+ --pxd-color-data-categorical-4: #5e5e5e;
43
+ --pxd-color-data-categorical-5: #767676;
44
+ --pxd-color-data-categorical-6: #183f8a;
45
+ --pxd-color-data-positive: #333333;
46
+ --pxd-color-data-negative: #1a5fd6;
47
+ --pxd-color-data-neutral: #767676;
48
+ --pxd-type-title-page-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
49
+ --pxd-type-title-page-size: 28px;
50
+ --pxd-type-title-page-weight: 600;
51
+ --pxd-type-title-page-line-height: 1.25;
52
+ --pxd-type-title-page-letter-spacing: 0px;
53
+ --pxd-type-title-section-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
54
+ --pxd-type-title-section-size: 20px;
55
+ --pxd-type-title-section-weight: 600;
56
+ --pxd-type-title-section-line-height: 1.3;
57
+ --pxd-type-title-section-letter-spacing: 0px;
58
+ --pxd-type-title-item-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
59
+ --pxd-type-title-item-size: 16px;
60
+ --pxd-type-title-item-weight: 600;
61
+ --pxd-type-title-item-line-height: 1.4;
62
+ --pxd-type-title-item-letter-spacing: 0px;
63
+ --pxd-type-body-default-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
64
+ --pxd-type-body-default-size: 16px;
65
+ --pxd-type-body-default-weight: 400;
66
+ --pxd-type-body-default-line-height: 1.5;
67
+ --pxd-type-body-default-letter-spacing: 0px;
68
+ --pxd-type-body-small-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
69
+ --pxd-type-body-small-size: 14px;
70
+ --pxd-type-body-small-weight: 400;
71
+ --pxd-type-body-small-line-height: 1.5;
72
+ --pxd-type-body-small-letter-spacing: 0px;
73
+ --pxd-type-label-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
74
+ --pxd-type-label-default-size: 13px;
75
+ --pxd-type-label-default-weight: 500;
76
+ --pxd-type-label-default-line-height: 1.4;
77
+ --pxd-type-label-default-letter-spacing: 0.3px;
78
+ --pxd-type-label-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
79
+ --pxd-type-label-small-size: 12px;
80
+ --pxd-type-label-small-weight: 500;
81
+ --pxd-type-label-small-line-height: 1.4;
82
+ --pxd-type-label-small-letter-spacing: 0.4px;
83
+ --pxd-type-numeric-display-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
84
+ --pxd-type-numeric-display-size: 26px;
85
+ --pxd-type-numeric-display-weight: 500;
86
+ --pxd-type-numeric-display-line-height: 1.2;
87
+ --pxd-type-numeric-display-letter-spacing: 0px;
88
+ --pxd-space-inset-compact: 8px;
89
+ --pxd-space-inset-default: 16px;
90
+ --pxd-space-inset-comfortable: 24px;
91
+ --pxd-space-stack-tight: 4px;
92
+ --pxd-space-stack-default: 8px;
93
+ --pxd-space-stack-loose: 16px;
94
+ --pxd-space-stack-section: 32px;
95
+ --pxd-space-inline-tight: 4px;
96
+ --pxd-space-inline-default: 8px;
97
+ --pxd-space-inline-loose: 16px;
98
+ --pxd-size-target-min: 44px;
99
+ --pxd-size-icon-small: 16px;
100
+ --pxd-size-icon-default: 20px;
101
+ --pxd-radius-small: 2px;
102
+ --pxd-radius-control: 4px;
103
+ --pxd-radius-default: 4px;
104
+ --pxd-radius-large: 6px;
105
+ --pxd-radius-full: 999px;
106
+ --pxd-border-width-default: 1px;
107
+ --pxd-border-width-strong: 2px;
108
+ --pxd-focus-ring-width: 2px;
109
+ --pxd-focus-ring-offset: 2px;
110
+ --pxd-measure-max: 65;
111
+ --pxd-opacity-state-hover: 0.06;
112
+ --pxd-opacity-state-pressed: 0.12;
113
+ --pxd-opacity-state-focus: 0.12;
114
+ --pxd-opacity-state-disabled: 0.4;
115
+ --pxd-shadow-raised: 0px 0px 0px 0px rgba(0, 0, 0, 0);
116
+ --pxd-shadow-overlay: 0px 0px 0px 0px rgba(0, 0, 0, 0);
117
+ --pxd-motion-duration-instant: 0ms;
118
+ --pxd-motion-duration-short: 0ms;
119
+ --pxd-motion-duration-medium: 0ms;
120
+ --pxd-motion-duration-long: 0ms;
121
+ --pxd-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
122
+ --pxd-motion-easing-enter: cubic-bezier(0, 0, 0.2, 1);
123
+ --pxd-motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
124
+
125
+ /* shadcn/ui variable names, so shadcn components follow this pack too */
126
+ --background: var(--pxd-color-surface-default);
127
+ --foreground: var(--pxd-color-text-default);
128
+ --card: var(--pxd-color-surface-raised);
129
+ --card-foreground: var(--pxd-color-text-default);
130
+ --popover: var(--pxd-color-surface-overlay);
131
+ --popover-foreground: var(--pxd-color-text-default);
132
+ --primary: var(--pxd-color-action-primary-background);
133
+ --primary-foreground: var(--pxd-color-action-primary-foreground);
134
+ --secondary: var(--pxd-color-action-secondary-background);
135
+ --secondary-foreground: var(--pxd-color-action-secondary-foreground);
136
+ --muted: var(--pxd-color-surface-subtle);
137
+ --muted-foreground: var(--pxd-color-text-muted);
138
+ --accent: var(--pxd-color-selection-background);
139
+ --accent-foreground: var(--pxd-color-selection-foreground);
140
+ --destructive: var(--pxd-color-action-danger-background);
141
+ --border: var(--pxd-color-border-default);
142
+ --input: var(--pxd-color-border-strong);
143
+ --ring: var(--pxd-color-border-focus);
144
+ --radius: var(--pxd-radius-default);
145
+ --chart-1: var(--pxd-color-data-categorical-1);
146
+ --chart-2: var(--pxd-color-data-categorical-2);
147
+ --chart-3: var(--pxd-color-data-categorical-3);
148
+ --chart-4: var(--pxd-color-data-categorical-4);
149
+ --chart-5: var(--pxd-color-data-categorical-5);
150
+ color-scheme: light;
151
+ }
152
+
153
+ [data-pxd-theme="wireframe"][data-pxd-mode="dark"] {
154
+ --pxd-color-surface-default: #1c1c1c;
155
+ --pxd-color-surface-subtle: #242424;
156
+ --pxd-color-surface-raised: #2a2a2a;
157
+ --pxd-color-surface-overlay: #303030;
158
+ --pxd-color-surface-inverse: #eaeaea;
159
+ --pxd-color-scrim: rgba(0, 0, 0, 0.6);
160
+ --pxd-color-text-default: #eaeaea;
161
+ --pxd-color-text-muted: #ababab;
162
+ --pxd-color-text-inverse: #1c1c1c;
163
+ --pxd-color-text-link: #7fb0ff;
164
+ --pxd-color-border-default: #5a5a5a;
165
+ --pxd-color-border-strong: #8c8c8c;
166
+ --pxd-color-border-focus: #7fb0ff;
167
+ --pxd-color-action-primary-background: #7fb0ff;
168
+ --pxd-color-action-primary-foreground: #1c1c1c;
169
+ --pxd-color-action-secondary-background: #1c1c1c;
170
+ --pxd-color-action-secondary-foreground: #eaeaea;
171
+ --pxd-color-action-secondary-border: #8c8c8c;
172
+ --pxd-color-action-danger-background: #cfcfcf;
173
+ --pxd-color-action-danger-foreground: #1c1c1c;
174
+ --pxd-color-selection-background: #26385a;
175
+ --pxd-color-selection-foreground: #cfe0ff;
176
+ --pxd-color-status-info-background: #26385a;
177
+ --pxd-color-status-info-foreground: #cfe0ff;
178
+ --pxd-color-status-info-emphasis: #7fb0ff;
179
+ --pxd-color-status-success-background: #242424;
180
+ --pxd-color-status-success-foreground: #eaeaea;
181
+ --pxd-color-status-success-emphasis: #ababab;
182
+ --pxd-color-status-warning-background: #303030;
183
+ --pxd-color-status-warning-foreground: #eaeaea;
184
+ --pxd-color-status-warning-emphasis: #8c8c8c;
185
+ --pxd-color-status-danger-background: #303030;
186
+ --pxd-color-status-danger-foreground: #eaeaea;
187
+ --pxd-color-status-danger-emphasis: #cfcfcf;
188
+ --pxd-color-data-categorical-1: #7fb0ff;
189
+ --pxd-color-data-categorical-2: #eaeaea;
190
+ --pxd-color-data-categorical-3: #ababab;
191
+ --pxd-color-data-categorical-4: #8c8c8c;
192
+ --pxd-color-data-categorical-5: #cfcfcf;
193
+ --pxd-color-data-categorical-6: #cfe0ff;
194
+ --pxd-color-data-positive: #cfcfcf;
195
+ --pxd-color-data-negative: #7fb0ff;
196
+ --pxd-color-data-neutral: #8c8c8c;
197
+ --pxd-type-title-page-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
198
+ --pxd-type-title-page-size: 28px;
199
+ --pxd-type-title-page-weight: 600;
200
+ --pxd-type-title-page-line-height: 1.25;
201
+ --pxd-type-title-page-letter-spacing: 0px;
202
+ --pxd-type-title-section-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
203
+ --pxd-type-title-section-size: 20px;
204
+ --pxd-type-title-section-weight: 600;
205
+ --pxd-type-title-section-line-height: 1.3;
206
+ --pxd-type-title-section-letter-spacing: 0px;
207
+ --pxd-type-title-item-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
208
+ --pxd-type-title-item-size: 16px;
209
+ --pxd-type-title-item-weight: 600;
210
+ --pxd-type-title-item-line-height: 1.4;
211
+ --pxd-type-title-item-letter-spacing: 0px;
212
+ --pxd-type-body-default-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
213
+ --pxd-type-body-default-size: 16px;
214
+ --pxd-type-body-default-weight: 400;
215
+ --pxd-type-body-default-line-height: 1.5;
216
+ --pxd-type-body-default-letter-spacing: 0px;
217
+ --pxd-type-body-small-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
218
+ --pxd-type-body-small-size: 14px;
219
+ --pxd-type-body-small-weight: 400;
220
+ --pxd-type-body-small-line-height: 1.5;
221
+ --pxd-type-body-small-letter-spacing: 0px;
222
+ --pxd-type-label-default-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
223
+ --pxd-type-label-default-size: 13px;
224
+ --pxd-type-label-default-weight: 500;
225
+ --pxd-type-label-default-line-height: 1.4;
226
+ --pxd-type-label-default-letter-spacing: 0.3px;
227
+ --pxd-type-label-small-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
228
+ --pxd-type-label-small-size: 12px;
229
+ --pxd-type-label-small-weight: 500;
230
+ --pxd-type-label-small-line-height: 1.4;
231
+ --pxd-type-label-small-letter-spacing: 0.4px;
232
+ --pxd-type-numeric-display-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
233
+ --pxd-type-numeric-display-size: 26px;
234
+ --pxd-type-numeric-display-weight: 500;
235
+ --pxd-type-numeric-display-line-height: 1.2;
236
+ --pxd-type-numeric-display-letter-spacing: 0px;
237
+ --pxd-space-inset-compact: 8px;
238
+ --pxd-space-inset-default: 16px;
239
+ --pxd-space-inset-comfortable: 24px;
240
+ --pxd-space-stack-tight: 4px;
241
+ --pxd-space-stack-default: 8px;
242
+ --pxd-space-stack-loose: 16px;
243
+ --pxd-space-stack-section: 32px;
244
+ --pxd-space-inline-tight: 4px;
245
+ --pxd-space-inline-default: 8px;
246
+ --pxd-space-inline-loose: 16px;
247
+ --pxd-size-target-min: 44px;
248
+ --pxd-size-icon-small: 16px;
249
+ --pxd-size-icon-default: 20px;
250
+ --pxd-radius-small: 2px;
251
+ --pxd-radius-control: 4px;
252
+ --pxd-radius-default: 4px;
253
+ --pxd-radius-large: 6px;
254
+ --pxd-radius-full: 999px;
255
+ --pxd-border-width-default: 1px;
256
+ --pxd-border-width-strong: 2px;
257
+ --pxd-focus-ring-width: 2px;
258
+ --pxd-focus-ring-offset: 2px;
259
+ --pxd-measure-max: 65;
260
+ --pxd-opacity-state-hover: 0.06;
261
+ --pxd-opacity-state-pressed: 0.12;
262
+ --pxd-opacity-state-focus: 0.12;
263
+ --pxd-opacity-state-disabled: 0.4;
264
+ --pxd-shadow-raised: 0px 0px 0px 0px rgba(0, 0, 0, 0);
265
+ --pxd-shadow-overlay: 0px 0px 0px 0px rgba(0, 0, 0, 0);
266
+ --pxd-motion-duration-instant: 0ms;
267
+ --pxd-motion-duration-short: 0ms;
268
+ --pxd-motion-duration-medium: 0ms;
269
+ --pxd-motion-duration-long: 0ms;
270
+ --pxd-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
271
+ --pxd-motion-easing-enter: cubic-bezier(0, 0, 0.2, 1);
272
+ --pxd-motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
273
+
274
+ /* shadcn/ui variable names, so shadcn components follow this pack too */
275
+ --background: var(--pxd-color-surface-default);
276
+ --foreground: var(--pxd-color-text-default);
277
+ --card: var(--pxd-color-surface-raised);
278
+ --card-foreground: var(--pxd-color-text-default);
279
+ --popover: var(--pxd-color-surface-overlay);
280
+ --popover-foreground: var(--pxd-color-text-default);
281
+ --primary: var(--pxd-color-action-primary-background);
282
+ --primary-foreground: var(--pxd-color-action-primary-foreground);
283
+ --secondary: var(--pxd-color-action-secondary-background);
284
+ --secondary-foreground: var(--pxd-color-action-secondary-foreground);
285
+ --muted: var(--pxd-color-surface-subtle);
286
+ --muted-foreground: var(--pxd-color-text-muted);
287
+ --accent: var(--pxd-color-selection-background);
288
+ --accent-foreground: var(--pxd-color-selection-foreground);
289
+ --destructive: var(--pxd-color-action-danger-background);
290
+ --border: var(--pxd-color-border-default);
291
+ --input: var(--pxd-color-border-strong);
292
+ --ring: var(--pxd-color-border-focus);
293
+ --radius: var(--pxd-radius-default);
294
+ --chart-1: var(--pxd-color-data-categorical-1);
295
+ --chart-2: var(--pxd-color-data-categorical-2);
296
+ --chart-3: var(--pxd-color-data-categorical-3);
297
+ --chart-4: var(--pxd-color-data-categorical-4);
298
+ --chart-5: var(--pxd-color-data-categorical-5);
299
+ color-scheme: dark;
300
+ }
301
+
302
+ /* Extras from the wireframe pack's manifest: what tokens can't express, appended verbatim, scoped to this theme. */
303
+ /*
304
+ * Wireframe: what tokens can't draw. The theme compiler appends this file verbatim to themes/wireframe.css.
305
+ * Every rule is scoped to [data-pxd-theme="wireframe"], and every colour is a token variable, so recolouring
306
+ * the tokens recolours this too. Delete the "extras" line in manifest.json and the pack is plain tokens.
307
+ */
308
+
309
+ /* Containers and fields are dashed: a box that stands for a box. */
310
+ [data-pxd-theme="wireframe"] .pxd-card,
311
+ [data-pxd-theme="wireframe"] .pxd-input,
312
+ [data-pxd-theme="wireframe"] .pxd-panel,
313
+ [data-pxd-theme="wireframe"] .pxd-status,
314
+ [data-pxd-theme="wireframe"] .pxd-dropzone,
315
+ [data-pxd-theme="wireframe"] .pxd-button-secondary {
316
+ border-style: dashed;
317
+ }
318
+
319
+ /* A media placeholder is a hatched box, which is what a wireframe has always drawn where a picture will go. */
320
+ [data-pxd-theme="wireframe"] .pxd-media,
321
+ [data-pxd-theme="wireframe"] .pxd-media-placeholder,
322
+ [data-pxd-theme="wireframe"] .pxd-media-audio-placeholder,
323
+ [data-pxd-theme="wireframe"] .pxd-qr-placeholder,
324
+ [data-pxd-theme="wireframe"] .pxd-gallery-image {
325
+ background-color: var(--pxd-color-surface-subtle);
326
+ background-image: repeating-linear-gradient(-45deg, transparent 0 7px, var(--pxd-color-border-default) 7px 8px);
327
+ border: var(--pxd-border-width-default) dashed var(--pxd-color-border-strong);
328
+ }