@tmorrow/cre8-wc 2.0.4 → 2.0.5

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 (194) hide show
  1. package/a2ui/build-knowledge-graph.py +297 -0
  2. package/a2ui/catalog +240 -0
  3. package/a2ui/catalog-kg.json +6704 -0
  4. package/a2ui/catalog.json +576 -84
  5. package/a2ui/catalog.svg +3295 -0
  6. package/a2ui/demo.html +5 -49
  7. package/a2ui/examples/card-gallery.json +786 -0
  8. package/a2ui/examples/dating-grid.json +456 -0
  9. package/a2ui/examples/llm-observability.json +1719 -0
  10. package/a2ui/examples/portfolio.json +341 -0
  11. package/a2ui/generate-catalog.mjs +3 -0
  12. package/cdn/cre8-wc.esm.js +3057 -2438
  13. package/cdn/cre8-wc.esm.js.map +1 -1
  14. package/cdn/cre8-wc.min.js +1801 -1204
  15. package/cdn/cre8-wc.min.js.map +1 -1
  16. package/lib/components/accordion/accordion.d.ts +1 -0
  17. package/lib/components/accordion/accordion.d.ts.map +1 -1
  18. package/lib/components/accordion/accordion.js +1 -0
  19. package/lib/components/accordion/accordion.js.map +1 -1
  20. package/lib/components/accordion-item/accordion-item.d.ts +1 -0
  21. package/lib/components/accordion-item/accordion-item.d.ts.map +1 -1
  22. package/lib/components/accordion-item/accordion-item.js +1 -0
  23. package/lib/components/accordion-item/accordion-item.js.map +1 -1
  24. package/lib/components/alert/alert.d.ts +6 -0
  25. package/lib/components/alert/alert.d.ts.map +1 -1
  26. package/lib/components/alert/alert.js +6 -0
  27. package/lib/components/alert/alert.js.map +1 -1
  28. package/lib/components/button/button.d.ts +2 -0
  29. package/lib/components/button/button.d.ts.map +1 -1
  30. package/lib/components/button/button.js +2 -0
  31. package/lib/components/button/button.js.map +1 -1
  32. package/lib/components/button/button.styles.d.ts.map +1 -1
  33. package/lib/components/button/button.styles.js +1120 -557
  34. package/lib/components/button/button.styles.js.map +1 -1
  35. package/lib/components/button-group/button-group.d.ts +9 -0
  36. package/lib/components/button-group/button-group.d.ts.map +1 -1
  37. package/lib/components/button-group/button-group.js +8 -0
  38. package/lib/components/button-group/button-group.js.map +1 -1
  39. package/lib/components/button-group/button-group.styles.d.ts.map +1 -1
  40. package/lib/components/button-group/button-group.styles.js +12 -0
  41. package/lib/components/button-group/button-group.styles.js.map +1 -1
  42. package/lib/components/card/card.d.ts +1 -1
  43. package/lib/components/card/card.d.ts.map +1 -1
  44. package/lib/components/card/card.js +1 -0
  45. package/lib/components/card/card.js.map +1 -1
  46. package/lib/components/card/card.styles.d.ts.map +1 -1
  47. package/lib/components/card/card.styles.js +8 -0
  48. package/lib/components/card/card.styles.js.map +1 -1
  49. package/lib/components/checkbox-field-item/checkbox-field-item.d.ts +6 -0
  50. package/lib/components/checkbox-field-item/checkbox-field-item.d.ts.map +1 -1
  51. package/lib/components/checkbox-field-item/checkbox-field-item.js +6 -0
  52. package/lib/components/checkbox-field-item/checkbox-field-item.js.map +1 -1
  53. package/lib/components/checkbox-field-item/checkbox-field-item.styles.js +1 -1
  54. package/lib/components/checkbox-field-item/checkbox-field-item.styles.js.map +1 -1
  55. package/lib/components/date-picker/date-picker.d.ts +5 -0
  56. package/lib/components/date-picker/date-picker.d.ts.map +1 -1
  57. package/lib/components/date-picker/date-picker.js +12 -10
  58. package/lib/components/date-picker/date-picker.js.map +1 -1
  59. package/lib/components/dropdown/dropdown.d.ts +2 -0
  60. package/lib/components/dropdown/dropdown.d.ts.map +1 -1
  61. package/lib/components/dropdown/dropdown.js +2 -0
  62. package/lib/components/dropdown/dropdown.js.map +1 -1
  63. package/lib/components/dropdown-item/dropdown-item.d.ts +8 -0
  64. package/lib/components/dropdown-item/dropdown-item.d.ts.map +1 -1
  65. package/lib/components/dropdown-item/dropdown-item.js +15 -2
  66. package/lib/components/dropdown-item/dropdown-item.js.map +1 -1
  67. package/lib/components/feature/feature.d.ts +4 -0
  68. package/lib/components/feature/feature.d.ts.map +1 -1
  69. package/lib/components/feature/feature.js +4 -1
  70. package/lib/components/feature/feature.js.map +1 -1
  71. package/lib/components/field/field.d.ts +2 -0
  72. package/lib/components/field/field.d.ts.map +1 -1
  73. package/lib/components/field/field.js +3 -0
  74. package/lib/components/field/field.js.map +1 -1
  75. package/lib/components/global-nav-item/global-nav-item.d.ts +2 -0
  76. package/lib/components/global-nav-item/global-nav-item.d.ts.map +1 -1
  77. package/lib/components/global-nav-item/global-nav-item.js +2 -0
  78. package/lib/components/global-nav-item/global-nav-item.js.map +1 -1
  79. package/lib/components/header/header.d.ts +2 -0
  80. package/lib/components/header/header.d.ts.map +1 -1
  81. package/lib/components/header/header.js +2 -0
  82. package/lib/components/header/header.js.map +1 -1
  83. package/lib/components/hero/hero.d.ts +4 -0
  84. package/lib/components/hero/hero.d.ts.map +1 -1
  85. package/lib/components/hero/hero.js +4 -0
  86. package/lib/components/hero/hero.js.map +1 -1
  87. package/lib/components/hero/hero.styles.d.ts.map +1 -1
  88. package/lib/components/hero/hero.styles.js +13 -0
  89. package/lib/components/hero/hero.styles.js.map +1 -1
  90. package/lib/components/icon/icon.d.ts +3 -0
  91. package/lib/components/icon/icon.d.ts.map +1 -1
  92. package/lib/components/icon/icon.js +7 -5
  93. package/lib/components/icon/icon.js.map +1 -1
  94. package/lib/components/link/link.d.ts +2 -0
  95. package/lib/components/link/link.d.ts.map +1 -1
  96. package/lib/components/link/link.js +2 -0
  97. package/lib/components/link/link.js.map +1 -1
  98. package/lib/components/link-list-item/link-list-item.d.ts +2 -0
  99. package/lib/components/link-list-item/link-list-item.d.ts.map +1 -1
  100. package/lib/components/link-list-item/link-list-item.js +2 -0
  101. package/lib/components/link-list-item/link-list-item.js.map +1 -1
  102. package/lib/components/modal/modal.d.ts +4 -0
  103. package/lib/components/modal/modal.d.ts.map +1 -1
  104. package/lib/components/modal/modal.js +4 -0
  105. package/lib/components/modal/modal.js.map +1 -1
  106. package/lib/components/multi-select/multi-select.d.ts +4 -0
  107. package/lib/components/multi-select/multi-select.d.ts.map +1 -1
  108. package/lib/components/multi-select/multi-select.js +5 -2
  109. package/lib/components/multi-select/multi-select.js.map +1 -1
  110. package/lib/components/page-header/page-header.d.ts +1 -0
  111. package/lib/components/page-header/page-header.d.ts.map +1 -1
  112. package/lib/components/page-header/page-header.js +3 -2
  113. package/lib/components/page-header/page-header.js.map +1 -1
  114. package/lib/components/pagination/pagination.d.ts +7 -0
  115. package/lib/components/pagination/pagination.d.ts.map +1 -1
  116. package/lib/components/pagination/pagination.js +7 -0
  117. package/lib/components/pagination/pagination.js.map +1 -1
  118. package/lib/components/percent-bar/percent-bar.d.ts.map +1 -1
  119. package/lib/components/percent-bar/percent-bar.js +1 -0
  120. package/lib/components/percent-bar/percent-bar.js.map +1 -1
  121. package/lib/components/popover/popover.d.ts +6 -0
  122. package/lib/components/popover/popover.d.ts.map +1 -1
  123. package/lib/components/popover/popover.js +7 -1
  124. package/lib/components/popover/popover.js.map +1 -1
  125. package/lib/components/primary-nav-item/primary-nav-item.d.ts +2 -0
  126. package/lib/components/primary-nav-item/primary-nav-item.d.ts.map +1 -1
  127. package/lib/components/primary-nav-item/primary-nav-item.js +2 -0
  128. package/lib/components/primary-nav-item/primary-nav-item.js.map +1 -1
  129. package/lib/components/remove-tag/remove-tag.d.ts +2 -0
  130. package/lib/components/remove-tag/remove-tag.d.ts.map +1 -1
  131. package/lib/components/remove-tag/remove-tag.js +3 -1
  132. package/lib/components/remove-tag/remove-tag.js.map +1 -1
  133. package/lib/components/section/section.d.ts +1 -0
  134. package/lib/components/section/section.d.ts.map +1 -1
  135. package/lib/components/section/section.js +1 -0
  136. package/lib/components/section/section.js.map +1 -1
  137. package/lib/components/select/select.d.ts +2 -0
  138. package/lib/components/select/select.d.ts.map +1 -1
  139. package/lib/components/select/select.js +5 -1
  140. package/lib/components/select/select.js.map +1 -1
  141. package/lib/components/split-button/split-button.d.ts +3 -0
  142. package/lib/components/split-button/split-button.d.ts.map +1 -1
  143. package/lib/components/split-button/split-button.js.map +1 -1
  144. package/lib/components/tab/tab.d.ts +2 -0
  145. package/lib/components/tab/tab.d.ts.map +1 -1
  146. package/lib/components/tab/tab.js +2 -0
  147. package/lib/components/tab/tab.js.map +1 -1
  148. package/lib/components/table-object/table-object.d.ts +2 -0
  149. package/lib/components/table-object/table-object.d.ts.map +1 -1
  150. package/lib/components/table-object/table-object.js +2 -0
  151. package/lib/components/table-object/table-object.js.map +1 -1
  152. package/lib/components/table-row/table-row.d.ts +1 -0
  153. package/lib/components/table-row/table-row.d.ts.map +1 -1
  154. package/lib/components/table-row/table-row.js +1 -0
  155. package/lib/components/table-row/table-row.js.map +1 -1
  156. package/lib/components/tag/tag.d.ts +5 -0
  157. package/lib/components/tag/tag.d.ts.map +1 -1
  158. package/lib/components/tag/tag.js +2 -0
  159. package/lib/components/tag/tag.js.map +1 -1
  160. package/lib/components/tag-list/tag-list.d.ts +2 -0
  161. package/lib/components/tag-list/tag-list.d.ts.map +1 -1
  162. package/lib/components/tag-list/tag-list.js +2 -0
  163. package/lib/components/tag-list/tag-list.js.map +1 -1
  164. package/lib/components/text-link/text-link.d.ts +1 -0
  165. package/lib/components/text-link/text-link.d.ts.map +1 -1
  166. package/lib/components/text-link/text-link.js +1 -0
  167. package/lib/components/text-link/text-link.js.map +1 -1
  168. package/lib/components/tooltip/tooltip.d.ts +6 -0
  169. package/lib/components/tooltip/tooltip.d.ts.map +1 -1
  170. package/lib/components/tooltip/tooltip.js +3 -0
  171. package/lib/components/tooltip/tooltip.js.map +1 -1
  172. package/lib/design-tokens/brands/claude-terracotta/css/tokens_brand.css +85 -0
  173. package/lib/design-tokens/brands/claude-terracotta/css/tokens_claude-terracotta.css +1 -0
  174. package/lib/design-tokens/brands/claude-terracotta/css/tokens_claude-terracotta.module.d.ts +3 -0
  175. package/lib/design-tokens/brands/claude-terracotta/css/tokens_claude-terracotta.module.d.ts.map +1 -0
  176. package/lib/design-tokens/brands/claude-terracotta/css/tokens_claude-terracotta.module.js +90 -0
  177. package/lib/design-tokens/brands/claude-terracotta/css/tokens_claude-terracotta.module.js.map +1 -0
  178. package/lib/design-tokens/brands/cre8-a2ui/css/tokens_brand.css +1 -0
  179. package/lib/design-tokens/brands/cre8-teal/css/tokens_brand.css +87 -0
  180. package/lib/design-tokens/brands/cre8-teal/css/tokens_cre8-teal.css +1 -0
  181. package/lib/design-tokens/brands/cre8-teal/css/tokens_cre8-teal.module.d.ts +3 -0
  182. package/lib/design-tokens/brands/cre8-teal/css/tokens_cre8-teal.module.d.ts.map +1 -0
  183. package/lib/design-tokens/brands/cre8-teal/css/tokens_cre8-teal.module.js +90 -0
  184. package/lib/design-tokens/brands/cre8-teal/css/tokens_cre8-teal.module.js.map +1 -0
  185. package/lib/scripts/generate-react-manifest.d.ts +20 -0
  186. package/lib/scripts/generate-react-manifest.d.ts.map +1 -0
  187. package/lib/scripts/generate-react-manifest.js +154 -0
  188. package/lib/scripts/generate-react-manifest.js.map +1 -0
  189. package/mcp-manifest.json +203 -38
  190. package/package.json +10 -4
  191. package/react-manifest.json +3594 -0
  192. package/dist/leaf.png +0 -0
  193. package/dist/leafDS.png +0 -0
  194. package/dist/leafLogo.svg +0 -1
@@ -0,0 +1,341 @@
1
+ {
2
+ "component": "cre8-layout-section",
3
+ "children": [
4
+ {
5
+ "component": "cre8-band",
6
+ "props": { "variant": "branded" },
7
+ "children": [
8
+ {
9
+ "component": "cre8-hero",
10
+ "props": { "align": "center" },
11
+ "children": [
12
+ {
13
+ "component": "cre8-heading",
14
+ "props": { "type": "display-default", "tagVariant": "h1" },
15
+ "children": ["Taylor Rivera"]
16
+ },
17
+ {
18
+ "component": "cre8-heading",
19
+ "props": { "type": "title-large", "tagVariant": "h2" },
20
+ "children": ["Product designer building agent-driven UIs"]
21
+ },
22
+ {
23
+ "component": "cre8-text-passage",
24
+ "props": { "size": "large" },
25
+ "children": [
26
+ "I design and ship interfaces where AI agents compose the UI itself. Based in Brooklyn, shipping from a laptop and a lot of coffee."
27
+ ]
28
+ },
29
+ {
30
+ "component": "cre8-button-group",
31
+ "children": [
32
+ {
33
+ "component": "cre8-button",
34
+ "props": {
35
+ "text": "View work",
36
+ "variant": "primary",
37
+ "href": "#work"
38
+ },
39
+ "events": { "click": "scroll-to-work" }
40
+ },
41
+ {
42
+ "component": "cre8-button",
43
+ "props": {
44
+ "text": "Get in touch",
45
+ "variant": "tertiary",
46
+ "href": "mailto:hi@taylorrivera.dev"
47
+ },
48
+ "events": { "click": "open-email" }
49
+ }
50
+ ]
51
+ }
52
+ ]
53
+ }
54
+ ]
55
+ },
56
+
57
+ {
58
+ "component": "cre8-layout-section",
59
+ "children": [
60
+ {
61
+ "component": "cre8-heading",
62
+ "props": { "type": "headline-large", "tagVariant": "h2" },
63
+ "children": ["About"]
64
+ },
65
+ {
66
+ "component": "cre8-text-passage",
67
+ "children": [
68
+ "Ten years designing and building across the stack: Lit web components, Next.js, Supabase, and whatever Anthropic ships next. I like making the AI do the boring parts so I can focus on what a thing should feel like."
69
+ ]
70
+ }
71
+ ]
72
+ },
73
+
74
+ {
75
+ "component": "cre8-layout-section",
76
+ "children": [
77
+ {
78
+ "component": "cre8-heading",
79
+ "props": { "type": "headline-large", "tagVariant": "h2" },
80
+ "children": ["Featured work"]
81
+ },
82
+ {
83
+ "component": "cre8-grid",
84
+ "props": { "variant": "3up", "gap": "lg" },
85
+ "children": [
86
+ {
87
+ "component": "cre8-grid-item",
88
+ "children": [
89
+ {
90
+ "component": "cre8-card",
91
+ "slots": {
92
+ "header": [
93
+ {
94
+ "component": "cre8-heading",
95
+ "props": { "type": "title-default", "tagVariant": "h3" },
96
+ "children": ["A2UI Renderer for cre8-wc"]
97
+ }
98
+ ],
99
+ "default": [
100
+ {
101
+ "component": "cre8-text-passage",
102
+ "props": { "size": "small" },
103
+ "children": [
104
+ "Zero-dep runtime that validates and renders AI-emitted component trees against a JSON Schema catalog generated from the design system's manifest."
105
+ ]
106
+ },
107
+ {
108
+ "component": "cre8-button",
109
+ "props": {
110
+ "text": "Read case study",
111
+ "variant": "secondary",
112
+ "href": "/work/a2ui"
113
+ },
114
+ "events": { "click": "open-project:a2ui" }
115
+ }
116
+ ]
117
+ }
118
+ }
119
+ ]
120
+ },
121
+ {
122
+ "component": "cre8-grid-item",
123
+ "children": [
124
+ {
125
+ "component": "cre8-card",
126
+ "slots": {
127
+ "header": [
128
+ {
129
+ "component": "cre8-heading",
130
+ "props": { "type": "title-default", "tagVariant": "h3" },
131
+ "children": ["Cre8 MCP Server"]
132
+ }
133
+ ],
134
+ "default": [
135
+ {
136
+ "component": "cre8-text-passage",
137
+ "props": { "size": "small" },
138
+ "children": [
139
+ "An MCP server that exposes the cre8-wc catalog and an A2UI spec validator to any AI agent. Ships as @tmorrow/cre8-mcp."
140
+ ]
141
+ },
142
+ {
143
+ "component": "cre8-button",
144
+ "props": {
145
+ "text": "View on GitHub",
146
+ "variant": "secondary",
147
+ "href": "https://github.com/tmorrowdev/Cre8-Components",
148
+ "target": "_blank"
149
+ },
150
+ "events": { "click": "open-project:cre8-mcp" }
151
+ }
152
+ ]
153
+ }
154
+ }
155
+ ]
156
+ },
157
+ {
158
+ "component": "cre8-grid-item",
159
+ "children": [
160
+ {
161
+ "component": "cre8-card",
162
+ "slots": {
163
+ "header": [
164
+ {
165
+ "component": "cre8-heading",
166
+ "props": { "type": "title-default", "tagVariant": "h3" },
167
+ "children": ["cre8-wc design system"]
168
+ }
169
+ ],
170
+ "default": [
171
+ {
172
+ "component": "cre8-text-passage",
173
+ "props": { "size": "small" },
174
+ "children": [
175
+ "85 Lit web components with auto-registration, React wrappers, and a CDN bundle. Used by internal tooling at a Fortune-500 healthcare company."
176
+ ]
177
+ },
178
+ {
179
+ "component": "cre8-button",
180
+ "props": {
181
+ "text": "Browse components",
182
+ "variant": "secondary",
183
+ "href": "/work/cre8-wc"
184
+ },
185
+ "events": { "click": "open-project:cre8-wc" }
186
+ }
187
+ ]
188
+ }
189
+ }
190
+ ]
191
+ }
192
+ ]
193
+ }
194
+ ]
195
+ },
196
+
197
+ {
198
+ "component": "cre8-layout-section",
199
+ "children": [
200
+ {
201
+ "component": "cre8-heading",
202
+ "props": { "type": "headline-large", "tagVariant": "h2" },
203
+ "children": ["Toolbox"]
204
+ },
205
+ {
206
+ "component": "cre8-grid",
207
+ "props": { "variant": "4up", "gap": "sm" },
208
+ "children": [
209
+ {
210
+ "component": "cre8-grid-item",
211
+ "children": [
212
+ {
213
+ "component": "cre8-tag",
214
+ "props": { "text": "TypeScript", "variant": "branded", "shape": "round" }
215
+ }
216
+ ]
217
+ },
218
+ {
219
+ "component": "cre8-grid-item",
220
+ "children": [
221
+ {
222
+ "component": "cre8-tag",
223
+ "props": { "text": "Lit", "variant": "branded", "shape": "round" }
224
+ }
225
+ ]
226
+ },
227
+ {
228
+ "component": "cre8-grid-item",
229
+ "children": [
230
+ {
231
+ "component": "cre8-tag",
232
+ "props": { "text": "Next.js", "variant": "branded", "shape": "round" }
233
+ }
234
+ ]
235
+ },
236
+ {
237
+ "component": "cre8-grid-item",
238
+ "children": [
239
+ {
240
+ "component": "cre8-tag",
241
+ "props": { "text": "Supabase", "variant": "branded", "shape": "round" }
242
+ }
243
+ ]
244
+ },
245
+ {
246
+ "component": "cre8-grid-item",
247
+ "children": [
248
+ {
249
+ "component": "cre8-tag",
250
+ "props": { "text": "Figma", "variant": "neutral", "shape": "round" }
251
+ }
252
+ ]
253
+ },
254
+ {
255
+ "component": "cre8-grid-item",
256
+ "children": [
257
+ {
258
+ "component": "cre8-tag",
259
+ "props": { "text": "Anthropic SDK", "variant": "neutral", "shape": "round" }
260
+ }
261
+ ]
262
+ },
263
+ {
264
+ "component": "cre8-grid-item",
265
+ "children": [
266
+ {
267
+ "component": "cre8-tag",
268
+ "props": { "text": "Vercel", "variant": "neutral", "shape": "round" }
269
+ }
270
+ ]
271
+ },
272
+ {
273
+ "component": "cre8-grid-item",
274
+ "children": [
275
+ {
276
+ "component": "cre8-tag",
277
+ "props": { "text": "Tailwind", "variant": "neutral", "shape": "round" }
278
+ }
279
+ ]
280
+ }
281
+ ]
282
+ }
283
+ ]
284
+ },
285
+
286
+ {
287
+ "component": "cre8-divider"
288
+ },
289
+
290
+ {
291
+ "component": "cre8-layout-section",
292
+ "children": [
293
+ {
294
+ "component": "cre8-heading",
295
+ "props": { "type": "headline-default", "tagVariant": "h2" },
296
+ "children": ["Let's build something"]
297
+ },
298
+ {
299
+ "component": "cre8-text-passage",
300
+ "children": [
301
+ "Open to freelance work, collaborations, and talking to anyone shipping agent-UI systems."
302
+ ]
303
+ },
304
+ {
305
+ "component": "cre8-button-group",
306
+ "children": [
307
+ {
308
+ "component": "cre8-button",
309
+ "props": {
310
+ "text": "Email",
311
+ "variant": "primary",
312
+ "href": "mailto:hi@taylorrivera.dev"
313
+ },
314
+ "events": { "click": "open-email" }
315
+ },
316
+ {
317
+ "component": "cre8-button",
318
+ "props": {
319
+ "text": "GitHub",
320
+ "variant": "tertiary",
321
+ "href": "https://github.com/tmorrowdev",
322
+ "target": "_blank"
323
+ },
324
+ "events": { "click": "open-github" }
325
+ },
326
+ {
327
+ "component": "cre8-button",
328
+ "props": {
329
+ "text": "LinkedIn",
330
+ "variant": "tertiary",
331
+ "href": "https://linkedin.com/in/taylorrivera",
332
+ "target": "_blank"
333
+ },
334
+ "events": { "click": "open-linkedin" }
335
+ }
336
+ ]
337
+ }
338
+ ]
339
+ }
340
+ ]
341
+ }
@@ -46,6 +46,9 @@ const TS_TYPE_RESOLVERS = {
46
46
  };
47
47
 
48
48
  const PROP_OVERRIDES = {
49
+ 'cre8-chart.data': { type: 'object', description: 'Chart.js data object with labels and datasets arrays.' },
50
+ 'cre8-chart.options': { type: 'object', description: 'Chart.js options object.' },
51
+ 'cre8-chart.colors': { type: 'array', items: { type: 'string' }, description: 'Dataset colors.' },
49
52
  'cre8-heading.type': {
50
53
  type: 'string',
51
54
  enum: [