@profpowell/vb-design-system 0.1.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 (104) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +122 -0
  3. package/dist/vb-design-system.css +993 -0
  4. package/dist/vb-design-system.js +4482 -0
  5. package/dist/vb-design-system.min.css +1 -0
  6. package/dist/vb-design-system.min.js +513 -0
  7. package/package.json +78 -0
  8. package/src/index.css +21 -0
  9. package/src/index.js +24 -0
  10. package/src/lib/bundle-registry.js +156 -0
  11. package/src/lib/vb-element.js +96 -0
  12. package/src/patterns/do-dont.css +86 -0
  13. package/src/patterns/token-table.css +67 -0
  14. package/src/utils/copy-init.js +287 -0
  15. package/src/web-components/accessibility-specimen/api.json +51 -0
  16. package/src/web-components/accessibility-specimen/logic.js +232 -0
  17. package/src/web-components/accessibility-specimen/static.html +41 -0
  18. package/src/web-components/accessibility-specimen/styles.css +156 -0
  19. package/src/web-components/brand-specimen/api.json +37 -0
  20. package/src/web-components/brand-specimen/logic.js +61 -0
  21. package/src/web-components/brand-specimen/static.html +77 -0
  22. package/src/web-components/brand-specimen/styles.css +10 -0
  23. package/src/web-components/breakpoint-specimen/api.json +44 -0
  24. package/src/web-components/breakpoint-specimen/logic.js +186 -0
  25. package/src/web-components/breakpoint-specimen/static.html +38 -0
  26. package/src/web-components/breakpoint-specimen/styles.css +180 -0
  27. package/src/web-components/color-palette/api.json +73 -0
  28. package/src/web-components/color-palette/logic.js +280 -0
  29. package/src/web-components/color-palette/static.html +54 -0
  30. package/src/web-components/color-palette/styles.css +113 -0
  31. package/src/web-components/color-picker/_color-utils.js +210 -0
  32. package/src/web-components/component-sampler/api.json +15 -0
  33. package/src/web-components/component-sampler/logic.js +120 -0
  34. package/src/web-components/component-sampler/static.html +47 -0
  35. package/src/web-components/component-sampler/styles.css +9 -0
  36. package/src/web-components/font-pairer/_font-data.js +95 -0
  37. package/src/web-components/font-pairer/api.json +56 -0
  38. package/src/web-components/font-pairer/logic.js +401 -0
  39. package/src/web-components/font-pairer/static.html +9 -0
  40. package/src/web-components/font-pairer/styles.css +10 -0
  41. package/src/web-components/gradient-builder/_gradient-utils.js +54 -0
  42. package/src/web-components/gradient-builder/api.json +63 -0
  43. package/src/web-components/gradient-builder/logic.js +261 -0
  44. package/src/web-components/gradient-builder/static.html +9 -0
  45. package/src/web-components/gradient-builder/styles.css +10 -0
  46. package/src/web-components/icon-set/api.json +39 -0
  47. package/src/web-components/icon-set/logic.js +133 -0
  48. package/src/web-components/icon-set/static.html +36 -0
  49. package/src/web-components/icon-set/styles.css +82 -0
  50. package/src/web-components/icon-specimen/api.json +46 -0
  51. package/src/web-components/icon-specimen/logic.js +67 -0
  52. package/src/web-components/icon-specimen/static.html +39 -0
  53. package/src/web-components/icon-specimen/styles.css +38 -0
  54. package/src/web-components/layout-specimen/api.json +12 -0
  55. package/src/web-components/layout-specimen/logic.js +219 -0
  56. package/src/web-components/layout-specimen/static.html +22 -0
  57. package/src/web-components/layout-specimen/styles.css +95 -0
  58. package/src/web-components/motion-specimen/api.json +54 -0
  59. package/src/web-components/motion-specimen/logic.js +146 -0
  60. package/src/web-components/motion-specimen/static.html +13 -0
  61. package/src/web-components/motion-specimen/styles.css +29 -0
  62. package/src/web-components/palette-generator/_palette-utils.js +133 -0
  63. package/src/web-components/palette-generator/api.json +79 -0
  64. package/src/web-components/palette-generator/logic.js +288 -0
  65. package/src/web-components/palette-generator/static.html +47 -0
  66. package/src/web-components/palette-generator/styles.css +36 -0
  67. package/src/web-components/semantic-palette/_color-math.js +149 -0
  68. package/src/web-components/semantic-palette/api.json +41 -0
  69. package/src/web-components/semantic-palette/logic.js +400 -0
  70. package/src/web-components/semantic-palette/static.html +42 -0
  71. package/src/web-components/semantic-palette/styles.css +20 -0
  72. package/src/web-components/spacing-specimen/api.json +63 -0
  73. package/src/web-components/spacing-specimen/logic.js +132 -0
  74. package/src/web-components/spacing-specimen/static.html +71 -0
  75. package/src/web-components/spacing-specimen/styles.css +58 -0
  76. package/src/web-components/theme-catalog/api.json +14 -0
  77. package/src/web-components/theme-catalog/logic.js +228 -0
  78. package/src/web-components/theme-catalog/static.html +15 -0
  79. package/src/web-components/theme-export/api.json +18 -0
  80. package/src/web-components/theme-export/dtcg-serialize.js +417 -0
  81. package/src/web-components/theme-export/logic.js +201 -0
  82. package/src/web-components/theme-export/static.html +12 -0
  83. package/src/web-components/theme-export/theme-css-parse.js +93 -0
  84. package/src/web-components/theme-import/api.json +14 -0
  85. package/src/web-components/theme-import/catalog/atlassian.tokens.json +303 -0
  86. package/src/web-components/theme-import/catalog/bootstrap.tokens.json +304 -0
  87. package/src/web-components/theme-import/catalog/carbon.tokens.json +301 -0
  88. package/src/web-components/theme-import/catalog/catppuccin-mocha.tokens.json +301 -0
  89. package/src/web-components/theme-import/catalog/govuk.tokens.json +301 -0
  90. package/src/web-components/theme-import/catalog/manifest.json +132 -0
  91. package/src/web-components/theme-import/catalog/material.tokens.json +289 -0
  92. package/src/web-components/theme-import/catalog/salesforce.tokens.json +301 -0
  93. package/src/web-components/theme-import/catalog/tailwind.tokens.json +302 -0
  94. package/src/web-components/theme-import/dtcg-deserialize.js +322 -0
  95. package/src/web-components/theme-import/logic.js +263 -0
  96. package/src/web-components/theme-import/static.html +15 -0
  97. package/src/web-components/token-specimen/api.json +24 -0
  98. package/src/web-components/token-specimen/logic.js +256 -0
  99. package/src/web-components/token-specimen/static.html +47 -0
  100. package/src/web-components/token-specimen/styles.css +10 -0
  101. package/src/web-components/type-specimen/api.json +91 -0
  102. package/src/web-components/type-specimen/logic.js +156 -0
  103. package/src/web-components/type-specimen/static.html +84 -0
  104. package/src/web-components/type-specimen/styles.css +131 -0
@@ -0,0 +1,301 @@
1
+ {
2
+ "color": {
3
+ "primary": {
4
+ "$type": "color",
5
+ "$value": {
6
+ "colorSpace": "srgb",
7
+ "components": [
8
+ 0.0588,
9
+ 0.3843,
10
+ 0.9961
11
+ ],
12
+ "hex": "#0f62fe"
13
+ }
14
+ },
15
+ "primary-hover": {
16
+ "$type": "color",
17
+ "$value": {
18
+ "colorSpace": "srgb",
19
+ "components": [
20
+ 0,
21
+ 0.3137,
22
+ 0.902
23
+ ],
24
+ "hex": "#0050e6"
25
+ }
26
+ },
27
+ "primary-active": {
28
+ "$type": "color",
29
+ "$value": {
30
+ "colorSpace": "srgb",
31
+ "components": [
32
+ 0,
33
+ 0.1765,
34
+ 0.6118
35
+ ],
36
+ "hex": "#002d9c"
37
+ }
38
+ },
39
+ "secondary": {
40
+ "$type": "color",
41
+ "$value": {
42
+ "colorSpace": "srgb",
43
+ "components": [
44
+ 0.2235,
45
+ 0.2235,
46
+ 0.2235
47
+ ],
48
+ "hex": "#393939"
49
+ }
50
+ },
51
+ "accent": {
52
+ "$type": "color",
53
+ "$value": {
54
+ "colorSpace": "srgb",
55
+ "components": [
56
+ 0.0588,
57
+ 0.3843,
58
+ 0.9961
59
+ ],
60
+ "hex": "#0f62fe"
61
+ }
62
+ },
63
+ "background": {
64
+ "$type": "color",
65
+ "$value": {
66
+ "colorSpace": "srgb",
67
+ "components": [
68
+ 0.9569,
69
+ 0.9569,
70
+ 0.9569
71
+ ],
72
+ "hex": "#f4f4f4"
73
+ }
74
+ },
75
+ "surface": {
76
+ "$type": "color",
77
+ "$value": {
78
+ "colorSpace": "srgb",
79
+ "components": [
80
+ 1,
81
+ 1,
82
+ 1
83
+ ],
84
+ "hex": "#ffffff"
85
+ }
86
+ },
87
+ "surface-raised": {
88
+ "$type": "color",
89
+ "$value": {
90
+ "colorSpace": "srgb",
91
+ "components": [
92
+ 0.8784,
93
+ 0.8784,
94
+ 0.8784
95
+ ],
96
+ "hex": "#e0e0e0"
97
+ }
98
+ },
99
+ "surface-sunken": {
100
+ "$type": "color",
101
+ "$value": {
102
+ "colorSpace": "srgb",
103
+ "components": [
104
+ 0.9098,
105
+ 0.9098,
106
+ 0.9098
107
+ ],
108
+ "hex": "#e8e8e8"
109
+ }
110
+ },
111
+ "border": {
112
+ "$type": "color",
113
+ "$value": {
114
+ "colorSpace": "srgb",
115
+ "components": [
116
+ 0.5529,
117
+ 0.5529,
118
+ 0.5529
119
+ ],
120
+ "hex": "#8d8d8d"
121
+ }
122
+ },
123
+ "border-subtle": {
124
+ "$type": "color",
125
+ "$value": {
126
+ "colorSpace": "srgb",
127
+ "components": [
128
+ 0.7765,
129
+ 0.7765,
130
+ 0.7765
131
+ ],
132
+ "hex": "#c6c6c6"
133
+ }
134
+ },
135
+ "text": {
136
+ "$type": "color",
137
+ "$value": {
138
+ "colorSpace": "srgb",
139
+ "components": [
140
+ 0.0863,
141
+ 0.0863,
142
+ 0.0863
143
+ ],
144
+ "hex": "#161616"
145
+ }
146
+ },
147
+ "text-muted": {
148
+ "$type": "color",
149
+ "$value": {
150
+ "colorSpace": "srgb",
151
+ "components": [
152
+ 0.3216,
153
+ 0.3216,
154
+ 0.3216
155
+ ],
156
+ "hex": "#525252"
157
+ }
158
+ },
159
+ "text-on-primary": {
160
+ "$type": "color",
161
+ "$value": {
162
+ "colorSpace": "srgb",
163
+ "components": [
164
+ 1,
165
+ 1,
166
+ 1
167
+ ],
168
+ "hex": "#ffffff"
169
+ }
170
+ },
171
+ "error": {
172
+ "$type": "color",
173
+ "$value": {
174
+ "colorSpace": "srgb",
175
+ "components": [
176
+ 0.8549,
177
+ 0.1176,
178
+ 0.1569
179
+ ],
180
+ "hex": "#da1e28"
181
+ }
182
+ },
183
+ "success": {
184
+ "$type": "color",
185
+ "$value": {
186
+ "colorSpace": "srgb",
187
+ "components": [
188
+ 0.098,
189
+ 0.502,
190
+ 0.2196
191
+ ],
192
+ "hex": "#198038"
193
+ }
194
+ },
195
+ "warning": {
196
+ "$type": "color",
197
+ "$value": {
198
+ "colorSpace": "srgb",
199
+ "components": [
200
+ 0.9451,
201
+ 0.7608,
202
+ 0.1059
203
+ ],
204
+ "hex": "#f1c21b"
205
+ }
206
+ },
207
+ "info": {
208
+ "$type": "color",
209
+ "$value": {
210
+ "colorSpace": "srgb",
211
+ "components": [
212
+ 0,
213
+ 0.2627,
214
+ 0.8078
215
+ ],
216
+ "hex": "#0043ce"
217
+ }
218
+ }
219
+ },
220
+ "typography": {
221
+ "family": {
222
+ "sans": {
223
+ "$type": "fontFamily",
224
+ "$value": [
225
+ "IBM Plex Sans",
226
+ "Arial",
227
+ "sans-serif"
228
+ ]
229
+ }
230
+ },
231
+ "size": {
232
+ "md": {
233
+ "$type": "dimension",
234
+ "$value": {
235
+ "value": 0.875,
236
+ "unit": "rem"
237
+ }
238
+ }
239
+ },
240
+ "lineHeight": {
241
+ "normal": {
242
+ "$type": "number",
243
+ "$value": 1.5
244
+ }
245
+ }
246
+ },
247
+ "border": {
248
+ "radius": {
249
+ "xs": {
250
+ "$type": "dimension",
251
+ "$value": {
252
+ "value": 0,
253
+ "unit": "rem"
254
+ }
255
+ },
256
+ "s": {
257
+ "$type": "dimension",
258
+ "$value": {
259
+ "value": 0,
260
+ "unit": "rem"
261
+ }
262
+ },
263
+ "m": {
264
+ "$type": "dimension",
265
+ "$value": {
266
+ "value": 0,
267
+ "unit": "rem"
268
+ }
269
+ },
270
+ "l": {
271
+ "$type": "dimension",
272
+ "$value": {
273
+ "value": 0,
274
+ "unit": "rem"
275
+ }
276
+ },
277
+ "xl": {
278
+ "$type": "dimension",
279
+ "$value": {
280
+ "value": 0,
281
+ "unit": "rem"
282
+ }
283
+ }
284
+ }
285
+ },
286
+ "$extensions": {
287
+ "com.vanilla-breeze": {
288
+ "spec": "2025.10",
289
+ "vbVersion": "catalog-2026-05-15",
290
+ "catalog": true,
291
+ "source": {
292
+ "name": "IBM Carbon",
293
+ "homepage": "https://carbondesignsystem.com/",
294
+ "tokenSource": "https://carbondesignsystem.com/elements/color/tokens/",
295
+ "license": "Apache-2.0",
296
+ "attribution": "© IBM Corporation. Carbon Design System.",
297
+ "syncedAt": "2026-05-15"
298
+ }
299
+ }
300
+ }
301
+ }
@@ -0,0 +1,301 @@
1
+ {
2
+ "color": {
3
+ "primary": {
4
+ "$type": "color",
5
+ "$value": {
6
+ "colorSpace": "srgb",
7
+ "components": [
8
+ 0.7961,
9
+ 0.651,
10
+ 0.9686
11
+ ],
12
+ "hex": "#cba6f7"
13
+ }
14
+ },
15
+ "primary-hover": {
16
+ "$type": "color",
17
+ "$value": {
18
+ "colorSpace": "srgb",
19
+ "components": [
20
+ 0.7059,
21
+ 0.5725,
22
+ 0.9176
23
+ ],
24
+ "hex": "#b492ea"
25
+ }
26
+ },
27
+ "primary-active": {
28
+ "$type": "color",
29
+ "$value": {
30
+ "colorSpace": "srgb",
31
+ "components": [
32
+ 0.6157,
33
+ 0.4863,
34
+ 0.8588
35
+ ],
36
+ "hex": "#9d7cdb"
37
+ }
38
+ },
39
+ "secondary": {
40
+ "$type": "color",
41
+ "$value": {
42
+ "colorSpace": "srgb",
43
+ "components": [
44
+ 0.5373,
45
+ 0.7059,
46
+ 0.9804
47
+ ],
48
+ "hex": "#89b4fa"
49
+ }
50
+ },
51
+ "accent": {
52
+ "$type": "color",
53
+ "$value": {
54
+ "colorSpace": "srgb",
55
+ "components": [
56
+ 0.9529,
57
+ 0.5451,
58
+ 0.6588
59
+ ],
60
+ "hex": "#f38ba8"
61
+ }
62
+ },
63
+ "background": {
64
+ "$type": "color",
65
+ "$value": {
66
+ "colorSpace": "srgb",
67
+ "components": [
68
+ 0.1176,
69
+ 0.1176,
70
+ 0.1804
71
+ ],
72
+ "hex": "#1e1e2e"
73
+ }
74
+ },
75
+ "surface": {
76
+ "$type": "color",
77
+ "$value": {
78
+ "colorSpace": "srgb",
79
+ "components": [
80
+ 0.0941,
81
+ 0.0941,
82
+ 0.1451
83
+ ],
84
+ "hex": "#181825"
85
+ }
86
+ },
87
+ "surface-raised": {
88
+ "$type": "color",
89
+ "$value": {
90
+ "colorSpace": "srgb",
91
+ "components": [
92
+ 0.1922,
93
+ 0.1961,
94
+ 0.2667
95
+ ],
96
+ "hex": "#313244"
97
+ }
98
+ },
99
+ "surface-sunken": {
100
+ "$type": "color",
101
+ "$value": {
102
+ "colorSpace": "srgb",
103
+ "components": [
104
+ 0.0667,
105
+ 0.0667,
106
+ 0.1059
107
+ ],
108
+ "hex": "#11111b"
109
+ }
110
+ },
111
+ "border": {
112
+ "$type": "color",
113
+ "$value": {
114
+ "colorSpace": "srgb",
115
+ "components": [
116
+ 0.2706,
117
+ 0.2784,
118
+ 0.3529
119
+ ],
120
+ "hex": "#45475a"
121
+ }
122
+ },
123
+ "border-subtle": {
124
+ "$type": "color",
125
+ "$value": {
126
+ "colorSpace": "srgb",
127
+ "components": [
128
+ 0.1922,
129
+ 0.1961,
130
+ 0.2667
131
+ ],
132
+ "hex": "#313244"
133
+ }
134
+ },
135
+ "text": {
136
+ "$type": "color",
137
+ "$value": {
138
+ "colorSpace": "srgb",
139
+ "components": [
140
+ 0.8039,
141
+ 0.8392,
142
+ 0.9569
143
+ ],
144
+ "hex": "#cdd6f4"
145
+ }
146
+ },
147
+ "text-muted": {
148
+ "$type": "color",
149
+ "$value": {
150
+ "colorSpace": "srgb",
151
+ "components": [
152
+ 0.651,
153
+ 0.6784,
154
+ 0.7843
155
+ ],
156
+ "hex": "#a6adc8"
157
+ }
158
+ },
159
+ "text-on-primary": {
160
+ "$type": "color",
161
+ "$value": {
162
+ "colorSpace": "srgb",
163
+ "components": [
164
+ 0.1176,
165
+ 0.1176,
166
+ 0.1804
167
+ ],
168
+ "hex": "#1e1e2e"
169
+ }
170
+ },
171
+ "error": {
172
+ "$type": "color",
173
+ "$value": {
174
+ "colorSpace": "srgb",
175
+ "components": [
176
+ 0.9529,
177
+ 0.5451,
178
+ 0.6588
179
+ ],
180
+ "hex": "#f38ba8"
181
+ }
182
+ },
183
+ "success": {
184
+ "$type": "color",
185
+ "$value": {
186
+ "colorSpace": "srgb",
187
+ "components": [
188
+ 0.651,
189
+ 0.8902,
190
+ 0.6314
191
+ ],
192
+ "hex": "#a6e3a1"
193
+ }
194
+ },
195
+ "warning": {
196
+ "$type": "color",
197
+ "$value": {
198
+ "colorSpace": "srgb",
199
+ "components": [
200
+ 0.9765,
201
+ 0.8863,
202
+ 0.6863
203
+ ],
204
+ "hex": "#f9e2af"
205
+ }
206
+ },
207
+ "info": {
208
+ "$type": "color",
209
+ "$value": {
210
+ "colorSpace": "srgb",
211
+ "components": [
212
+ 0.5373,
213
+ 0.7059,
214
+ 0.9804
215
+ ],
216
+ "hex": "#89b4fa"
217
+ }
218
+ }
219
+ },
220
+ "typography": {
221
+ "family": {
222
+ "sans": {
223
+ "$type": "fontFamily",
224
+ "$value": [
225
+ "Inter",
226
+ "system-ui",
227
+ "sans-serif"
228
+ ]
229
+ }
230
+ },
231
+ "size": {
232
+ "md": {
233
+ "$type": "dimension",
234
+ "$value": {
235
+ "value": 1,
236
+ "unit": "rem"
237
+ }
238
+ }
239
+ },
240
+ "lineHeight": {
241
+ "normal": {
242
+ "$type": "number",
243
+ "$value": 1.5
244
+ }
245
+ }
246
+ },
247
+ "border": {
248
+ "radius": {
249
+ "xs": {
250
+ "$type": "dimension",
251
+ "$value": {
252
+ "value": 0.25,
253
+ "unit": "rem"
254
+ }
255
+ },
256
+ "s": {
257
+ "$type": "dimension",
258
+ "$value": {
259
+ "value": 0.375,
260
+ "unit": "rem"
261
+ }
262
+ },
263
+ "m": {
264
+ "$type": "dimension",
265
+ "$value": {
266
+ "value": 0.5,
267
+ "unit": "rem"
268
+ }
269
+ },
270
+ "l": {
271
+ "$type": "dimension",
272
+ "$value": {
273
+ "value": 0.75,
274
+ "unit": "rem"
275
+ }
276
+ },
277
+ "xl": {
278
+ "$type": "dimension",
279
+ "$value": {
280
+ "value": 1,
281
+ "unit": "rem"
282
+ }
283
+ }
284
+ }
285
+ },
286
+ "$extensions": {
287
+ "com.vanilla-breeze": {
288
+ "spec": "2025.10",
289
+ "vbVersion": "catalog-2026-05-15",
290
+ "catalog": true,
291
+ "source": {
292
+ "name": "Catppuccin Mocha",
293
+ "homepage": "https://catppuccin.com/",
294
+ "tokenSource": "https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md",
295
+ "license": "MIT",
296
+ "attribution": "Catppuccin — © Catppuccin Org.",
297
+ "syncedAt": "2026-05-15"
298
+ }
299
+ }
300
+ }
301
+ }