@adia-ai/a2ui-corpus 0.6.22 → 0.6.24

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 (242) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/catalog-a2ui_0_9.json +6 -1
  3. package/chunk-embeddings.json +1 -1
  4. package/chunks/_index.json +2000 -133
  5. package/chunks/accordion-settings.json +1 -1
  6. package/chunks/agent-activity-feed.json +1 -1
  7. package/chunks/agent-canvas-shell.json +282 -1
  8. package/chunks/agent-command-palette-search.json +1 -1
  9. package/chunks/agent-reasoning-collapsed.json +1 -1
  10. package/chunks/agent-tool-call-result.json +1 -1
  11. package/chunks/agent-trace-timeline.json +1 -1
  12. package/chunks/ai-streaming-response.json +1 -1
  13. package/chunks/alert-banner.json +1 -1
  14. package/chunks/auth-account-deleted-actions.json +37 -1
  15. package/chunks/auth-account-deleted.json +152 -1
  16. package/chunks/auth-card-content.json +14 -1
  17. package/chunks/auth-card-header.json +14 -1
  18. package/chunks/auth-email-entry.json +1 -1
  19. package/chunks/auth-email-verify-confirm.json +37 -1
  20. package/chunks/auth-email-verify.json +141 -1
  21. package/chunks/auth-forbidden-actions.json +45 -1
  22. package/chunks/auth-forbidden.json +160 -1
  23. package/chunks/auth-invite-actions.json +35 -1
  24. package/chunks/auth-invite-team-card.json +75 -1
  25. package/chunks/auth-link-expired-form.json +50 -1
  26. package/chunks/auth-link-expired.json +163 -1
  27. package/chunks/auth-locked-account.json +162 -1
  28. package/chunks/auth-locked-recovery-options.json +47 -1
  29. package/chunks/auth-mfa-enrollment-submit.json +39 -1
  30. package/chunks/auth-mfa-enrollment.json +1 -1
  31. package/chunks/auth-mfa-fallback-actions.json +39 -1
  32. package/chunks/auth-mfa-recovery.json +48 -1
  33. package/chunks/auth-new-password-form.json +62 -1
  34. package/chunks/auth-new-password.json +1 -1
  35. package/chunks/auth-oauth-fallback-actions.json +38 -1
  36. package/chunks/auth-oauth-interstitial.json +143 -1
  37. package/chunks/auth-password-challenge.json +81 -1
  38. package/chunks/auth-password-reset-form.json +49 -1
  39. package/chunks/auth-password-reset.json +1 -1
  40. package/chunks/auth-profile-form.json +59 -1
  41. package/chunks/auth-profile-setup.json +162 -1
  42. package/chunks/auth-reset-sent.json +137 -1
  43. package/chunks/auth-session-expired-actions.json +38 -1
  44. package/chunks/auth-session-expired.json +153 -1
  45. package/chunks/auth-signin-card-email.json +1 -1
  46. package/chunks/auth-signin-card-magic-link.json +1 -1
  47. package/chunks/auth-signin-card-mfa.json +1 -1
  48. package/chunks/auth-signin-card-otp.json +1 -1
  49. package/chunks/auth-signin-card-password.json +1 -1
  50. package/chunks/auth-signin-card-recovery.json +167 -1
  51. package/chunks/auth-signout-actions.json +37 -1
  52. package/chunks/auth-signout.json +142 -1
  53. package/chunks/auth-signup-email-entry.json +51 -1
  54. package/chunks/auth-signup-entry.json +1 -1
  55. package/chunks/auth-signup-social-auths.json +41 -1
  56. package/chunks/auth-signup-verify.json +149 -1
  57. package/chunks/auth-social-auths.json +49 -1
  58. package/chunks/auth-sso-providers.json +41 -1
  59. package/chunks/auth-sso-required.json +160 -1
  60. package/chunks/auth-team-invite.json +228 -1
  61. package/chunks/avatar-group-overflow.json +1 -1
  62. package/chunks/breadcrumb-nav.json +1 -1
  63. package/chunks/calendar-month-view.json +1 -1
  64. package/chunks/card-header-with-description.json +35 -1
  65. package/chunks/chart-with-filter-pills.json +1 -1
  66. package/chunks/chat-page-shell.json +1 -1
  67. package/chunks/chat-streaming-surface.json +1 -1
  68. package/chunks/color-picker-swatches.json +1 -1
  69. package/chunks/command-palette.json +1 -1
  70. package/chunks/commerce-pricing-tiers.json +1 -1
  71. package/chunks/comparison-table.json +1 -1
  72. package/chunks/conversion-funnel-6step.json +1 -1
  73. package/chunks/dashboard-acquisition-panel.json +17 -39
  74. package/chunks/dashboard-admin-page.json +2 -2
  75. package/chunks/dashboard-audience-kpis.json +153 -3
  76. package/chunks/dashboard-audience-panel.json +4 -8
  77. package/chunks/dashboard-behavior-panel.json +1 -1
  78. package/chunks/dashboard-chart-recent.json +7 -5
  79. package/chunks/dashboard-cohort-retention.json +72 -1
  80. package/chunks/dashboard-conversion-panel.json +1 -1
  81. package/chunks/dashboard-country-list.json +292 -1
  82. package/chunks/dashboard-filter-bar.json +1 -1
  83. package/chunks/dashboard-funnel.json +1 -1
  84. package/chunks/dashboard-kpi-grid.json +7 -9
  85. package/chunks/dashboard-notifications-feed.json +421 -2
  86. package/chunks/dashboard-notifications-panel.json +3 -2
  87. package/chunks/dashboard-overview-panel.json +12 -15
  88. package/chunks/dashboard-page-header.json +1 -1
  89. package/chunks/dashboard-pages-table.json +75 -1
  90. package/chunks/dashboard-quick-actions.json +105 -1
  91. package/chunks/dashboard-reports-panel.json +3 -2
  92. package/chunks/dashboard-reports-table.json +82 -2
  93. package/chunks/dashboard-spark-cards.json +7 -5
  94. package/chunks/dashboard-storage-card.json +93 -1
  95. package/chunks/dashboard-tabs.json +1 -1
  96. package/chunks/dashboard-team-actions-storage.json +7 -5
  97. package/chunks/dashboard-team-list.json +322 -1
  98. package/chunks/dashboard-traffic-channels.json +136 -3
  99. package/chunks/dashboard-transactions-table.json +4 -3
  100. package/chunks/date-time-picker-form.json +1 -1
  101. package/chunks/destructive-confirm-modal.json +1 -1
  102. package/chunks/divider-text-label.json +1 -1
  103. package/chunks/doc-editor-shell.json +334 -1
  104. package/chunks/drawer-2fa-key.json +250 -2
  105. package/chunks/drawer-2fa-sms.json +234 -2
  106. package/chunks/drawer-2fa-totp.json +346 -2
  107. package/chunks/drawer-cancel-sub.json +325 -2
  108. package/chunks/drawer-change-plan.json +468 -2
  109. package/chunks/drawer-custom-roles.json +667 -2
  110. package/chunks/drawer-data-start.json +139 -2
  111. package/chunks/drawer-delete-account.json +309 -2
  112. package/chunks/drawer-delete-workspace.json +323 -2
  113. package/chunks/drawer-discord.json +429 -2
  114. package/chunks/drawer-figma.json +390 -2
  115. package/chunks/drawer-first-dashboard.json +206 -2
  116. package/chunks/drawer-gcal.json +452 -2
  117. package/chunks/drawer-github.json +557 -2
  118. package/chunks/drawer-invite.json +355 -2
  119. package/chunks/drawer-payment-method.json +4 -3
  120. package/chunks/drawer-report.json +556 -2
  121. package/chunks/drawer-revoke-session.json +271 -2
  122. package/chunks/drawer-role.json +158 -2
  123. package/chunks/drawer-slack.json +408 -2
  124. package/chunks/drawer-smtp.json +456 -2
  125. package/chunks/drawer-source.json +273 -2
  126. package/chunks/drawer-transaction.json +452 -2
  127. package/chunks/editor-code-pane.json +1 -1
  128. package/chunks/editor-page-shell.json +127 -1
  129. package/chunks/editor-preview-pane.json +1 -1
  130. package/chunks/empty-state-danger.json +57 -0
  131. package/chunks/empty-state-minimal.json +44 -0
  132. package/chunks/empty-state-warning.json +52 -0
  133. package/chunks/empty-state.json +1 -1
  134. package/chunks/error-404-actions.json +40 -1
  135. package/chunks/error-404.json +1 -1
  136. package/chunks/error-500-actions.json +47 -1
  137. package/chunks/error-500.json +1 -1
  138. package/chunks/error-maintenance-actions.json +39 -1
  139. package/chunks/error-maintenance.json +1 -1
  140. package/chunks/error-page-shell.json +1 -1
  141. package/chunks/faq-accordion.json +1 -1
  142. package/chunks/file-upload-dnd.json +1 -1
  143. package/chunks/footer-multi-column.json +1 -1
  144. package/chunks/footer-primary-only.json +30 -1
  145. package/chunks/form-page-shell.json +1 -1
  146. package/chunks/gallery-page-shell.json +1 -1
  147. package/chunks/hero-section-split.json +1 -1
  148. package/chunks/icon-text-row.json +45 -1
  149. package/chunks/image-carousel.json +1 -1
  150. package/chunks/image-tile.json +78 -1
  151. package/chunks/image-upload-preview.json +1 -1
  152. package/chunks/inventory-list-stock.json +1 -1
  153. package/chunks/kanban-board-3col.json +2 -10
  154. package/chunks/kanban-page-shell.json +1 -1
  155. package/chunks/kbd-shortcuts.json +1 -1
  156. package/chunks/labeled-textarea.json +1 -1
  157. package/chunks/leaderboard-table.json +1 -1
  158. package/chunks/linked-record-row.json +1 -1
  159. package/chunks/marketing-hero-cta.json +1 -1
  160. package/chunks/marketing-page-shell.json +1 -1
  161. package/chunks/masonry-gallery.json +1 -1
  162. package/chunks/member-edit-drawer.json +251 -1
  163. package/chunks/metadata-description-list.json +95 -1
  164. package/chunks/multi-step-wizard.json +1 -1
  165. package/chunks/notification-toast-row.json +1 -1
  166. package/chunks/onb-completion.json +104 -1
  167. package/chunks/onb-extension-install.json +114 -1
  168. package/chunks/onb-hero-welcome.json +53 -1
  169. package/chunks/onb-import-picker.json +73 -1
  170. package/chunks/onb-mobile-handoff.json +108 -1
  171. package/chunks/onb-notification-prefs.json +68 -1
  172. package/chunks/onb-persona-picker.json +69 -1
  173. package/chunks/onb-provider-tiles.json +114 -1
  174. package/chunks/onb-settings-review.json +234 -1
  175. package/chunks/onb-step-footer.json +14 -1
  176. package/chunks/onb-step-header.json +14 -1
  177. package/chunks/onb-step-progress.json +13 -1
  178. package/chunks/onb-step-shell.json +1 -1
  179. package/chunks/onb-story-pane.json +14 -1
  180. package/chunks/onb-tutorial-steps.json +180 -1
  181. package/chunks/pagination-controls.json +1 -1
  182. package/chunks/playground-a2ui.json +169 -1
  183. package/chunks/playground-app-shell.json +422 -2
  184. package/chunks/playground-chat.json +85 -2
  185. package/chunks/playground-construct-canvas.json +107 -1
  186. package/chunks/playground-gen-ui.json +200 -1
  187. package/chunks/playground-render-preview.json +287 -1
  188. package/chunks/playground-streams-bridge.json +353 -1
  189. package/chunks/playground-table-toolbar.json +20 -1
  190. package/chunks/popover-with-content.json +1 -1
  191. package/chunks/progress-tracker-milestones.json +1 -1
  192. package/chunks/real-time-metrics-dashboard.json +3 -2
  193. package/chunks/reg-address-form.json +1 -1
  194. package/chunks/reg-billing-card.json +1 -1
  195. package/chunks/reg-brand-scrape.json +324 -1
  196. package/chunks/reg-departments-toggle.json +246 -2
  197. package/chunks/reg-extended-profile.json +405 -1
  198. package/chunks/reg-final-done.json +358 -2
  199. package/chunks/reg-helpdesk-grid.json +420 -2
  200. package/chunks/reg-import-picker.json +116 -1
  201. package/chunks/reg-integrations-grid.json +280 -2
  202. package/chunks/reg-invite-form.json +1 -1
  203. package/chunks/reg-legal-entity.json +313 -1
  204. package/chunks/reg-org-chart-review.json +501 -1
  205. package/chunks/reg-profile-identity.json +166 -1
  206. package/chunks/reg-step-footer.json +14 -1
  207. package/chunks/reg-step-header.json +13 -1
  208. package/chunks/reg-step-progress.json +13 -1
  209. package/chunks/reg-step-shell.json +2 -2
  210. package/chunks/reg-story-pane.json +14 -1
  211. package/chunks/reg-success-summary.json +157 -1
  212. package/chunks/reg-team-size.json +142 -1
  213. package/chunks/reg-usecase-picker.json +89 -1
  214. package/chunks/reg-workspace-name.json +1 -1
  215. package/chunks/responsive-grid-pattern.json +71 -0
  216. package/chunks/responsive-kpi-grid.json +166 -0
  217. package/chunks/responsive-row-pattern.json +71 -0
  218. package/chunks/responsive-wrap-at-pattern.json +76 -0
  219. package/chunks/search-with-filters.json +1 -1
  220. package/chunks/section-with-stack.json +37 -1
  221. package/chunks/settings-admin-page.json +5 -8
  222. package/chunks/settings-appearance.json +1 -1
  223. package/chunks/settings-billing-plan.json +95 -2
  224. package/chunks/settings-general-form.json +1 -1
  225. package/chunks/settings-integrations.json +8 -8
  226. package/chunks/settings-members-invite.json +106 -1
  227. package/chunks/settings-notifications.json +1 -1
  228. package/chunks/settings-page-shell.json +1 -1
  229. package/chunks/settings-profile-security.json +1 -1
  230. package/chunks/sidebar-collapsible-nav.json +1 -1
  231. package/chunks/slider-range-controls.json +1 -1
  232. package/chunks/tabs-with-panels.json +1 -1
  233. package/chunks/testimonial-grid.json +1 -1
  234. package/chunks/text-card.json +44 -5
  235. package/chunks/timeline-events.json +1 -1
  236. package/chunks/toolbar-icons.json +1 -1
  237. package/chunks/toolbar-tooltips.json +1 -1
  238. package/chunks/user-identity-row.json +66 -1
  239. package/chunks/user-profile-card.json +1 -1
  240. package/chunks/users-table-badge.json +1 -1
  241. package/chunks/video-player-controls.json +1 -1
  242. package/package.json +1 -1
@@ -29,5 +29,338 @@
29
29
  "attrs": {},
30
30
  "html": "<article style=\"display:flex; height:100vh;\">\n <section style=\"flex:1; display:flex; flex-direction:column; min-width:0;\">\n <header data-chunk-slot=\"toolbar\" style=\"padding:var(--a-space-2) var(--a-space-3); border-bottom:1px solid var(--a-border-subtle); display:flex; align-items:center; justify-content:space-between;\">\n <row-ui gap=\"2\" align=\"center\">\n <button-ui icon=\"bold\" variant=\"ghost\" size=\"sm\"></button-ui>\n <button-ui icon=\"italic\" variant=\"ghost\" size=\"sm\"></button-ui>\n <separator-ui orientation=\"vertical\"></separator-ui>\n <button-ui icon=\"list\" variant=\"ghost\" size=\"sm\"></button-ui>\n <button-ui icon=\"code\" variant=\"ghost\" size=\"sm\"></button-ui>\n </row-ui>\n <row-ui gap=\"2\">\n <button-ui text=\"Share\" variant=\"outline\" size=\"sm\" icon=\"share\"></button-ui>\n <button-ui text=\"Publish\" variant=\"primary\" size=\"sm\" icon=\"globe\"></button-ui>\n </row-ui>\n </header>\n\n <section style=\"flex:1; display:flex; overflow:hidden;\">\n <section data-chunk-slot=\"editor\" style=\"flex:1; padding:var(--a-space-4); overflow:auto;\">\n <stack-ui gap=\"3\" style=\"max-width:720px; margin:0 auto;\">\n <input-ui placeholder=\"Document title\" size=\"lg\" style=\"font-weight:600;\"></input-ui>\n <textarea-ui placeholder=\"Start writing…\" style=\"min-height:400px; resize:vertical;\"></textarea-ui>\n </stack-ui>\n </section>\n\n <aside data-chunk-slot=\"preview\" style=\"width:360px; border-left:1px solid var(--a-border-subtle); padding:var(--a-space-3); overflow:auto; background:var(--a-bg-subtle);\">\n <stack-ui gap=\"3\">\n <text-ui strong size=\"sm\">Preview</text-ui>\n <card-ui padding=\"md\">\n <section bleed>\n <text-ui color=\"subtle\">Rendered preview will appear here.</text-ui>\n </section>\n </card-ui>\n </stack-ui>\n </aside>\n </section>\n </section>\n\n <aside data-chunk-slot=\"metadata\" style=\"width:240px; border-left:1px solid var(--a-border-subtle); padding:var(--a-space-3); overflow:auto;\">\n <stack-ui gap=\"4\">\n <text-ui strong size=\"sm\">Metadata</text-ui>\n <stack-ui gap=\"1\">\n <label-ui>Status</label-ui>\n <select-ui>\n <option>Draft</option>\n <option>Review</option>\n <option>Published</option>\n </select-ui>\n </stack-ui>\n <stack-ui gap=\"1\">\n <label-ui>Tags</label-ui>\n <input-ui placeholder=\"Add tags…\"></input-ui>\n </stack-ui>\n <stack-ui gap=\"1\">\n <label-ui>Author</label-ui>\n <row-ui gap=\"2\" align=\"center\">\n <avatar-ui size=\"sm\" src=\"/avatar.png\"></avatar-ui>\n <text-ui size=\"sm\">Alex Chen</text-ui>\n </row-ui>\n </stack-ui>\n </stack-ui>\n </aside>\n</article>",
31
31
  "source": "catalog/page-shells/app/doc-editor/doc-editor.contents.html",
32
- "captured_at": "2026-05-21T19:10:53.888Z"
32
+ "metadata": {
33
+ "domain": "layout",
34
+ "description": "Document editor shell — full-height split-pane editor with code pane and preview.",
35
+ "keywords": [
36
+ "editor",
37
+ "shell",
38
+ "document",
39
+ "split",
40
+ "pane",
41
+ "code",
42
+ "preview",
43
+ "full",
44
+ "height"
45
+ ]
46
+ },
47
+ "captured_at": "2026-05-22T22:31:46.761Z",
48
+ "template": [
49
+ {
50
+ "id": "button",
51
+ "component": "Button",
52
+ "icon": "bold",
53
+ "size": "sm",
54
+ "variant": "ghost"
55
+ },
56
+ {
57
+ "id": "button-2",
58
+ "component": "Button",
59
+ "icon": "italic",
60
+ "size": "sm",
61
+ "variant": "ghost"
62
+ },
63
+ {
64
+ "id": "column",
65
+ "component": "Column"
66
+ },
67
+ {
68
+ "id": "button-3",
69
+ "component": "Button",
70
+ "icon": "list",
71
+ "size": "sm",
72
+ "variant": "ghost"
73
+ },
74
+ {
75
+ "id": "button-4",
76
+ "component": "Button",
77
+ "icon": "code",
78
+ "size": "sm",
79
+ "variant": "ghost"
80
+ },
81
+ {
82
+ "id": "row",
83
+ "component": "Row",
84
+ "align": "center",
85
+ "gap": "2",
86
+ "children": [
87
+ "button",
88
+ "button-2",
89
+ "column",
90
+ "button-3",
91
+ "button-4"
92
+ ]
93
+ },
94
+ {
95
+ "id": "button-5",
96
+ "component": "Button",
97
+ "icon": "share",
98
+ "size": "sm",
99
+ "text": "Share",
100
+ "variant": "outline"
101
+ },
102
+ {
103
+ "id": "button-6",
104
+ "component": "Button",
105
+ "icon": "globe",
106
+ "size": "sm",
107
+ "text": "Publish",
108
+ "variant": "primary"
109
+ },
110
+ {
111
+ "id": "row-2",
112
+ "component": "Row",
113
+ "gap": "2",
114
+ "children": [
115
+ "button-5",
116
+ "button-6"
117
+ ]
118
+ },
119
+ {
120
+ "id": "header",
121
+ "component": "Header",
122
+ "data-chunk-slot": "toolbar",
123
+ "children": [
124
+ "row",
125
+ "row-2"
126
+ ]
127
+ },
128
+ {
129
+ "id": "input",
130
+ "component": "Input",
131
+ "placeholder": "Document title"
132
+ },
133
+ {
134
+ "id": "text-area",
135
+ "component": "TextArea",
136
+ "placeholder": "Start writing…"
137
+ },
138
+ {
139
+ "id": "stack",
140
+ "component": "Stack",
141
+ "children": [
142
+ "input",
143
+ "text-area"
144
+ ]
145
+ },
146
+ {
147
+ "id": "section-3",
148
+ "component": "Section",
149
+ "data-chunk-slot": "editor",
150
+ "children": [
151
+ "stack"
152
+ ]
153
+ },
154
+ {
155
+ "id": "text",
156
+ "component": "Text",
157
+ "size": "sm",
158
+ "strong": true,
159
+ "textContent": "Preview"
160
+ },
161
+ {
162
+ "id": "text-2",
163
+ "component": "Text",
164
+ "color": "subtle",
165
+ "textContent": "Rendered preview will appear here."
166
+ },
167
+ {
168
+ "id": "section-4",
169
+ "component": "Section",
170
+ "bleed": true,
171
+ "children": [
172
+ "column-2"
173
+ ]
174
+ },
175
+ {
176
+ "id": "column-2",
177
+ "component": "Column",
178
+ "children": [
179
+ "text-2"
180
+ ]
181
+ },
182
+ {
183
+ "id": "card",
184
+ "component": "Card",
185
+ "padding": "md",
186
+ "children": [
187
+ "section-4"
188
+ ]
189
+ },
190
+ {
191
+ "id": "stack-2",
192
+ "component": "Stack",
193
+ "children": [
194
+ "text",
195
+ "card"
196
+ ]
197
+ },
198
+ {
199
+ "id": "sidebar",
200
+ "component": "Sidebar",
201
+ "data-chunk-slot": "preview",
202
+ "children": [
203
+ "stack-2"
204
+ ]
205
+ },
206
+ {
207
+ "id": "section-2",
208
+ "component": "Section",
209
+ "children": [
210
+ "section-3",
211
+ "sidebar"
212
+ ]
213
+ },
214
+ {
215
+ "id": "section",
216
+ "component": "Section",
217
+ "children": [
218
+ "header",
219
+ "section-2"
220
+ ]
221
+ },
222
+ {
223
+ "id": "text-3",
224
+ "component": "Text",
225
+ "size": "sm",
226
+ "strong": true,
227
+ "textContent": "Metadata"
228
+ },
229
+ {
230
+ "id": "text-4",
231
+ "component": "Text",
232
+ "textContent": "Status",
233
+ "variant": "body"
234
+ },
235
+ {
236
+ "id": "text-5",
237
+ "component": "Text",
238
+ "textContent": "Draft",
239
+ "variant": "body"
240
+ },
241
+ {
242
+ "id": "text-6",
243
+ "component": "Text",
244
+ "textContent": "Review",
245
+ "variant": "body"
246
+ },
247
+ {
248
+ "id": "text-7",
249
+ "component": "Text",
250
+ "textContent": "Published",
251
+ "variant": "body"
252
+ },
253
+ {
254
+ "id": "choice-picker",
255
+ "component": "ChoicePicker",
256
+ "children": [
257
+ "text-5",
258
+ "text-6",
259
+ "text-7"
260
+ ]
261
+ },
262
+ {
263
+ "id": "stack-4",
264
+ "component": "Stack",
265
+ "children": [
266
+ "text-4",
267
+ "choice-picker"
268
+ ]
269
+ },
270
+ {
271
+ "id": "text-8",
272
+ "component": "Text",
273
+ "textContent": "Tags",
274
+ "variant": "body"
275
+ },
276
+ {
277
+ "id": "input-2",
278
+ "component": "Input",
279
+ "placeholder": "Add tags…"
280
+ },
281
+ {
282
+ "id": "stack-5",
283
+ "component": "Stack",
284
+ "children": [
285
+ "text-8",
286
+ "input-2"
287
+ ]
288
+ },
289
+ {
290
+ "id": "text-9",
291
+ "component": "Text",
292
+ "textContent": "Author",
293
+ "variant": "body"
294
+ },
295
+ {
296
+ "id": "avatar",
297
+ "component": "Avatar",
298
+ "size": "sm",
299
+ "src": "/avatar.png"
300
+ },
301
+ {
302
+ "id": "text-10",
303
+ "component": "Text",
304
+ "size": "sm",
305
+ "textContent": "Alex Chen"
306
+ },
307
+ {
308
+ "id": "row-3",
309
+ "component": "Row",
310
+ "align": "center",
311
+ "gap": "2",
312
+ "children": [
313
+ "avatar",
314
+ "text-10"
315
+ ]
316
+ },
317
+ {
318
+ "id": "stack-6",
319
+ "component": "Stack",
320
+ "children": [
321
+ "text-9",
322
+ "row-3"
323
+ ]
324
+ },
325
+ {
326
+ "id": "stack-3",
327
+ "component": "Stack",
328
+ "children": [
329
+ "text-3",
330
+ "stack-4",
331
+ "stack-5",
332
+ "stack-6"
333
+ ]
334
+ },
335
+ {
336
+ "id": "sidebar-2",
337
+ "component": "Sidebar",
338
+ "data-chunk-slot": "metadata",
339
+ "children": [
340
+ "stack-3"
341
+ ]
342
+ },
343
+ {
344
+ "id": "column-9",
345
+ "component": "Column",
346
+ "children": [
347
+ "section",
348
+ "sidebar-2"
349
+ ]
350
+ },
351
+ {
352
+ "id": "section-5",
353
+ "component": "Section",
354
+ "children": [
355
+ "column-9"
356
+ ]
357
+ },
358
+ {
359
+ "id": "root",
360
+ "component": "Card",
361
+ "children": [
362
+ "section-5"
363
+ ]
364
+ }
365
+ ]
33
366
  }
@@ -9,7 +9,255 @@
9
9
  "side": "right",
10
10
  "size": "md"
11
11
  },
12
- "html": "<drawer-ui id=\"drawer-2fa-key\" side=\"right\" size=\"md\">\n <header>\n <span slot=\"icon\">\n <avatar-ui icon=\"key\"></avatar-ui>\n </span>\n <span slot=\"heading\">\n <text-ui strong>Add a security key</text-ui>\n </span>\n <span slot=\"action\"></span>\n </header>\n <section>\n <text-ui color=\"subtle\" size=\"sm\">Hardware factors (YubiKey, Titan, built-in TPM) resist phishing and SIM-swap.</text-ui>\n </section>\n <section>\n <col-ui gap=\"4\">\n <alert-ui\n variant=\"info\"\n icon=\"info\"\n text=\"Your browser will prompt for the key when you click Register. Follow the device's instructions — usually a tap or press.\"\n ></alert-ui>\n <divider-ui></divider-ui>\n <col-ui gap=\"3\">\n <text-ui strong>Key details</text-ui>\n <field-ui label=\"Key name\" hint=\"Pick something you'll recognize later.\">\n <input-ui placeholder=\"e.g. YubiKey 5C adia (desk)\"></input-ui>\n </field-ui>\n <field-ui label=\"Key type\">\n <select-ui value=\"fido2\">\n <option value=\"fido2\">FIDO2 / WebAuthn</option>\n <option value=\"u2f\">U2F (legacy)</option>\n <option value=\"platform\">Platform authenticator (Touch ID, Windows Hello)</option>\n </select-ui>\n </field-ui>\n <field-ui label=\"Require for every sign-in\" inline>\n <switch-ui></switch-ui>\n </field-ui>\n <field-ui label=\"Allow for step-up (sensitive actions only)\" inline>\n <switch-ui checked></switch-ui>\n </field-ui>\n </col-ui>\n <divider-ui></divider-ui>\n <col-ui gap=\"2\">\n <text-ui strong>Registered keys</text-ui>\n <text-ui color=\"subtle\" size=\"sm\">None yet. Registration runs entirely on your device — we only see the public key.</text-ui>\n </col-ui>\n </col-ui>\n </section>\n <footer slot=\"footer\">\n <grid-ui>\n <button-ui text=\"Cancel\" variant=\"ghost\" onclick=\"this.closest('drawer-ui').open = false\"></button-ui>\n <button-ui text=\"Register key\" icon=\"key\" variant=\"primary\" onclick=\"this.closest('drawer-ui').open = false\"></button-ui>\n </grid-ui>\n </footer>\n</drawer-ui>",
12
+ "html": "<drawer-ui id=\"drawer-2fa-key\" side=\"right\" size=\"md\">\n <header>\n <span slot=\"icon\">\n <avatar-ui icon=\"key\"></avatar-ui>\n </span>\n <span slot=\"heading\">\n <text-ui strong>Add a security key</text-ui>\n </span>\n <span slot=\"action\" size=\"sm\"></span>\n </header>\n <section>\n <text-ui color=\"subtle\" size=\"sm\">Hardware factors (YubiKey, Titan, built-in TPM) resist phishing and SIM-swap.</text-ui>\n </section>\n <section>\n <col-ui gap=\"4\">\n <alert-ui\n variant=\"info\"\n icon=\"info\"\n text=\"Your browser will prompt for the key when you click Register. Follow the device's instructions — usually a tap or press.\"\n ></alert-ui>\n <divider-ui></divider-ui>\n <col-ui gap=\"3\">\n <text-ui strong>Key details</text-ui>\n <field-ui label=\"Key name\" hint=\"Pick something you'll recognize later.\">\n <input-ui placeholder=\"e.g. YubiKey 5C adia (desk)\"></input-ui>\n </field-ui>\n <field-ui label=\"Key type\">\n <select-ui value=\"fido2\">\n <option value=\"fido2\">FIDO2 / WebAuthn</option>\n <option value=\"u2f\">U2F (legacy)</option>\n <option value=\"platform\">Platform authenticator (Touch ID, Windows Hello)</option>\n </select-ui>\n </field-ui>\n <field-ui label=\"Require for every sign-in\" inline>\n <switch-ui></switch-ui>\n </field-ui>\n <field-ui label=\"Allow for step-up (sensitive actions only)\" inline>\n <switch-ui checked></switch-ui>\n </field-ui>\n </col-ui>\n <divider-ui></divider-ui>\n <col-ui gap=\"2\">\n <text-ui strong>Registered keys</text-ui>\n <text-ui color=\"subtle\" size=\"sm\">None yet. Registration runs entirely on your device — we only see the public key.</text-ui>\n </col-ui>\n </col-ui>\n </section>\n <footer slot=\"footer\">\n <grid-ui>\n <button-ui text=\"Cancel\" variant=\"ghost\" onclick=\"this.closest('drawer-ui').open = false\"></button-ui>\n <button-ui text=\"Register key\" icon=\"key\" variant=\"primary\" onclick=\"this.closest('drawer-ui').open = false\"></button-ui>\n </grid-ui>\n </footer>\n</drawer-ui>",
13
13
  "source": "apps/saas/app/profile-security/profile-security.contents.html",
14
- "captured_at": "2026-05-21T19:10:53.888Z"
14
+ "metadata": {
15
+ "domain": "settings",
16
+ "description": "Hardware security key 2FA setup drawer — register FIDO2/WebAuthn key for two-factor auth.",
17
+ "keywords": [
18
+ "drawer",
19
+ "2fa",
20
+ "security",
21
+ "key",
22
+ "webauthn",
23
+ "fido",
24
+ "hardware",
25
+ "setup",
26
+ "settings"
27
+ ]
28
+ },
29
+ "captured_at": "2026-05-22T22:31:46.761Z",
30
+ "template": [
31
+ {
32
+ "id": "text",
33
+ "component": "Text",
34
+ "variant": "body"
35
+ },
36
+ {
37
+ "id": "text-2",
38
+ "component": "Text",
39
+ "variant": "body",
40
+ "textContent": "Add a security key"
41
+ },
42
+ {
43
+ "id": "text-3",
44
+ "component": "Text",
45
+ "variant": "body",
46
+ "size": "sm"
47
+ },
48
+ {
49
+ "id": "header",
50
+ "component": "Header",
51
+ "children": [
52
+ "text",
53
+ "text-2",
54
+ "text-3"
55
+ ]
56
+ },
57
+ {
58
+ "id": "text-4",
59
+ "component": "Text",
60
+ "color": "subtle",
61
+ "size": "sm",
62
+ "textContent": "Hardware factors (YubiKey, Titan, built-in TPM) resist phishing and SIM-swap."
63
+ },
64
+ {
65
+ "id": "section",
66
+ "component": "Section",
67
+ "children": [
68
+ "text-4"
69
+ ]
70
+ },
71
+ {
72
+ "id": "alert",
73
+ "component": "Alert",
74
+ "icon": "info",
75
+ "text": "Your browser will prompt for the key when you click Register. Follow the device's instructions — usually a tap or press.",
76
+ "variant": "info"
77
+ },
78
+ {
79
+ "id": "divider",
80
+ "component": "Divider"
81
+ },
82
+ {
83
+ "id": "text-5",
84
+ "component": "Text",
85
+ "strong": true,
86
+ "textContent": "Key details"
87
+ },
88
+ {
89
+ "id": "input",
90
+ "component": "Input",
91
+ "placeholder": "e.g. YubiKey 5C adia (desk)"
92
+ },
93
+ {
94
+ "id": "field",
95
+ "component": "Field",
96
+ "hint": "Pick something you'll recognize later.",
97
+ "label": "Key name",
98
+ "children": [
99
+ "input"
100
+ ]
101
+ },
102
+ {
103
+ "id": "text-6",
104
+ "component": "Text",
105
+ "textContent": "FIDO2 / WebAuthn",
106
+ "variant": "body"
107
+ },
108
+ {
109
+ "id": "text-7",
110
+ "component": "Text",
111
+ "textContent": "U2F (legacy)",
112
+ "variant": "body"
113
+ },
114
+ {
115
+ "id": "text-8",
116
+ "component": "Text",
117
+ "textContent": "Platform authenticator (Touch ID, Windows Hello)",
118
+ "variant": "body"
119
+ },
120
+ {
121
+ "id": "choice-picker",
122
+ "component": "ChoicePicker",
123
+ "value": "fido2",
124
+ "children": [
125
+ "text-6",
126
+ "text-7",
127
+ "text-8"
128
+ ]
129
+ },
130
+ {
131
+ "id": "field-2",
132
+ "component": "Field",
133
+ "label": "Key type",
134
+ "children": [
135
+ "choice-picker"
136
+ ]
137
+ },
138
+ {
139
+ "id": "toggle",
140
+ "component": "Toggle"
141
+ },
142
+ {
143
+ "id": "field-3",
144
+ "component": "Field",
145
+ "inline": true,
146
+ "label": "Require for every sign-in",
147
+ "children": [
148
+ "toggle"
149
+ ]
150
+ },
151
+ {
152
+ "id": "toggle-2",
153
+ "component": "Toggle",
154
+ "checked": true
155
+ },
156
+ {
157
+ "id": "field-4",
158
+ "component": "Field",
159
+ "inline": true,
160
+ "label": "Allow for step-up (sensitive actions only)",
161
+ "children": [
162
+ "toggle-2"
163
+ ]
164
+ },
165
+ {
166
+ "id": "column-2",
167
+ "component": "Column",
168
+ "gap": "3",
169
+ "children": [
170
+ "text-5",
171
+ "field",
172
+ "field-2",
173
+ "field-3",
174
+ "field-4"
175
+ ]
176
+ },
177
+ {
178
+ "id": "divider-2",
179
+ "component": "Divider"
180
+ },
181
+ {
182
+ "id": "text-9",
183
+ "component": "Text",
184
+ "strong": true,
185
+ "textContent": "Registered keys"
186
+ },
187
+ {
188
+ "id": "text-10",
189
+ "component": "Text",
190
+ "color": "subtle",
191
+ "size": "sm",
192
+ "textContent": "None yet. Registration runs entirely on your device — we only see the public key."
193
+ },
194
+ {
195
+ "id": "column-6",
196
+ "component": "Column",
197
+ "gap": "2",
198
+ "children": [
199
+ "text-9",
200
+ "text-10"
201
+ ]
202
+ },
203
+ {
204
+ "id": "column",
205
+ "component": "Column",
206
+ "gap": "4",
207
+ "children": [
208
+ "alert",
209
+ "divider",
210
+ "column-2",
211
+ "divider-2",
212
+ "column-6"
213
+ ]
214
+ },
215
+ {
216
+ "id": "section-2",
217
+ "component": "Section",
218
+ "children": [
219
+ "column"
220
+ ]
221
+ },
222
+ {
223
+ "id": "button",
224
+ "component": "Button",
225
+ "text": "Cancel",
226
+ "variant": "ghost"
227
+ },
228
+ {
229
+ "id": "button-2",
230
+ "component": "Button",
231
+ "icon": "key",
232
+ "text": "Register key",
233
+ "variant": "primary"
234
+ },
235
+ {
236
+ "id": "grid",
237
+ "component": "Grid",
238
+ "children": [
239
+ "button",
240
+ "button-2"
241
+ ]
242
+ },
243
+ {
244
+ "id": "footer",
245
+ "component": "Footer",
246
+ "children": [
247
+ "grid"
248
+ ]
249
+ },
250
+ {
251
+ "id": "root",
252
+ "component": "Drawer",
253
+ "side": "right",
254
+ "size": "md",
255
+ "children": [
256
+ "header",
257
+ "section",
258
+ "section-2",
259
+ "footer"
260
+ ]
261
+ }
262
+ ]
15
263
  }