@decantr/content 3.8.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 (593) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +58 -0
  3. package/archetypes/about-hybrid.json +104 -0
  4. package/archetypes/admin-analytics.json +63 -0
  5. package/archetypes/admin-moderation.json +87 -0
  6. package/archetypes/admin-overview.json +77 -0
  7. package/archetypes/agent-orchestrator.json +178 -0
  8. package/archetypes/agent-studio.json +154 -0
  9. package/archetypes/ai-chatbot.json +121 -0
  10. package/archetypes/ai-transparency.json +140 -0
  11. package/archetypes/alert-manager-pro.json +154 -0
  12. package/archetypes/api-console.json +130 -0
  13. package/archetypes/api-reference.json +95 -0
  14. package/archetypes/appointment-center.json +113 -0
  15. package/archetypes/asset-browser.json +90 -0
  16. package/archetypes/audit-center.json +103 -0
  17. package/archetypes/auth-flow-enterprise.json +140 -0
  18. package/archetypes/auth-flow.json +101 -0
  19. package/archetypes/auth-full.json +199 -0
  20. package/archetypes/auth-gateway.json +76 -0
  21. package/archetypes/billing-portal.json +75 -0
  22. package/archetypes/billing.json +74 -0
  23. package/archetypes/budget-planner.json +63 -0
  24. package/archetypes/budget-transparency.json +117 -0
  25. package/archetypes/buyer-dashboard.json +124 -0
  26. package/archetypes/changelog-center.json +96 -0
  27. package/archetypes/character-library.json +113 -0
  28. package/archetypes/citation-tools.json +98 -0
  29. package/archetypes/cloud-infrastructure.json +253 -0
  30. package/archetypes/cloud-marketing.json +111 -0
  31. package/archetypes/collaboration-hub.json +87 -0
  32. package/archetypes/community-feed.json +131 -0
  33. package/archetypes/config-editor.json +136 -0
  34. package/archetypes/contact.json +82 -0
  35. package/archetypes/content-author.json +121 -0
  36. package/archetypes/content-editor.json +82 -0
  37. package/archetypes/content-newsletter.json +111 -0
  38. package/archetypes/content-reader.json +135 -0
  39. package/archetypes/content-site.json +112 -0
  40. package/archetypes/contract-center.json +120 -0
  41. package/archetypes/cook-mode.json +57 -0
  42. package/archetypes/copilot-settings.json +87 -0
  43. package/archetypes/copilot-workspace.json +110 -0
  44. package/archetypes/creator-content.json +128 -0
  45. package/archetypes/creator-dashboard.json +105 -0
  46. package/archetypes/creator-earnings.json +100 -0
  47. package/archetypes/creator-subscribers.json +99 -0
  48. package/archetypes/creator-tiers.json +76 -0
  49. package/archetypes/crm-dashboard.json +199 -0
  50. package/archetypes/crm-email.json +88 -0
  51. package/archetypes/crm-intelligence.json +85 -0
  52. package/archetypes/crm-meetings.json +95 -0
  53. package/archetypes/customer-loyalty.json +75 -0
  54. package/archetypes/customer-management.json +76 -0
  55. package/archetypes/daily-operations.json +62 -0
  56. package/archetypes/dashboard-core.json +87 -0
  57. package/archetypes/data-repository.json +81 -0
  58. package/archetypes/deal-workspace.json +126 -0
  59. package/archetypes/doc-browser.json +111 -0
  60. package/archetypes/document-editor.json +147 -0
  61. package/archetypes/document-vault.json +119 -0
  62. package/archetypes/ecommerce-admin.json +138 -0
  63. package/archetypes/ecommerce-checkout.json +57 -0
  64. package/archetypes/ecommerce.json +138 -0
  65. package/archetypes/emissions-dashboard.json +136 -0
  66. package/archetypes/engagement-hub.json +157 -0
  67. package/archetypes/eval-suite.json +142 -0
  68. package/archetypes/event-discovery.json +130 -0
  69. package/archetypes/experiment-tracker.json +83 -0
  70. package/archetypes/fan-checkout.json +107 -0
  71. package/archetypes/fan-library.json +99 -0
  72. package/archetypes/fan-storefront.json +106 -0
  73. package/archetypes/financial-dashboard.json +127 -0
  74. package/archetypes/game-catalog.json +120 -0
  75. package/archetypes/gaming-community.json +196 -0
  76. package/archetypes/governance-center.json +82 -0
  77. package/archetypes/health-records.json +111 -0
  78. package/archetypes/instrument-booking.json +82 -0
  79. package/archetypes/inventory-supplies.json +72 -0
  80. package/archetypes/investment-tracker.json +82 -0
  81. package/archetypes/investor-portal.json +124 -0
  82. package/archetypes/job-monitor.json +109 -0
  83. package/archetypes/kitchen-display.json +58 -0
  84. package/archetypes/lab-notebook.json +83 -0
  85. package/archetypes/landing-hero.json +145 -0
  86. package/archetypes/landing-legal.json +101 -0
  87. package/archetypes/landing-resources.json +127 -0
  88. package/archetypes/launch-campaign.json +393 -0
  89. package/archetypes/legal.json +107 -0
  90. package/archetypes/listing-browser.json +160 -0
  91. package/archetypes/log-explorer-pro.json +106 -0
  92. package/archetypes/log-viewer.json +123 -0
  93. package/archetypes/maintenance-center.json +116 -0
  94. package/archetypes/marketing-ai-studio.json +117 -0
  95. package/archetypes/marketing-civic.json +116 -0
  96. package/archetypes/marketing-climate.json +94 -0
  97. package/archetypes/marketing-content.json +109 -0
  98. package/archetypes/marketing-copilot.json +100 -0
  99. package/archetypes/marketing-creator.json +132 -0
  100. package/archetypes/marketing-crm.json +96 -0
  101. package/archetypes/marketing-deal-room.json +100 -0
  102. package/archetypes/marketing-devtool.json +139 -0
  103. package/archetypes/marketing-docs.json +92 -0
  104. package/archetypes/marketing-ecommerce.json +69 -0
  105. package/archetypes/marketing-esports.json +89 -0
  106. package/archetypes/marketing-events.json +89 -0
  107. package/archetypes/marketing-finance.json +69 -0
  108. package/archetypes/marketing-fractional.json +74 -0
  109. package/archetypes/marketing-health.json +100 -0
  110. package/archetypes/marketing-landing.json +65 -0
  111. package/archetypes/marketing-legal.json +86 -0
  112. package/archetypes/marketing-marketplace.json +121 -0
  113. package/archetypes/marketing-observability.json +95 -0
  114. package/archetypes/marketing-pipeline.json +108 -0
  115. package/archetypes/marketing-platform.json +129 -0
  116. package/archetypes/marketing-producer.json +88 -0
  117. package/archetypes/marketing-productivity.json +139 -0
  118. package/archetypes/marketing-realestate.json +101 -0
  119. package/archetypes/marketing-recipe.json +69 -0
  120. package/archetypes/marketing-research.json +72 -0
  121. package/archetypes/marketing-restaurant.json +53 -0
  122. package/archetypes/marketing-saas-v2.json +75 -0
  123. package/archetypes/marketing-saas.json +119 -0
  124. package/archetypes/marketing-swipecircle.json +185 -0
  125. package/archetypes/marketing-video-studio.json +121 -0
  126. package/archetypes/marketplace-messaging.json +106 -0
  127. package/archetypes/matter-management.json +104 -0
  128. package/archetypes/meeting-archive.json +131 -0
  129. package/archetypes/menu-management.json +73 -0
  130. package/archetypes/metrics-monitor.json +164 -0
  131. package/archetypes/metrics-overview-dashboard.json +112 -0
  132. package/archetypes/music-workspace.json +104 -0
  133. package/archetypes/notifications.json +68 -0
  134. package/archetypes/offset-marketplace.json +134 -0
  135. package/archetypes/onboarding-wizard.json +203 -0
  136. package/archetypes/order-fulfillment.json +83 -0
  137. package/archetypes/order-management.json +71 -0
  138. package/archetypes/organizer-dashboard.json +146 -0
  139. package/archetypes/owner-dashboard.json +112 -0
  140. package/archetypes/ownership-dashboard.json +97 -0
  141. package/archetypes/patient-dashboard.json +142 -0
  142. package/archetypes/pipeline-builder.json +116 -0
  143. package/archetypes/pm-financials.json +126 -0
  144. package/archetypes/portfolio-about.json +85 -0
  145. package/archetypes/portfolio-blog.json +71 -0
  146. package/archetypes/portfolio-overview.json +76 -0
  147. package/archetypes/portfolio-showcase.json +71 -0
  148. package/archetypes/portfolio.json +122 -0
  149. package/archetypes/product-management.json +84 -0
  150. package/archetypes/project-library.json +111 -0
  151. package/archetypes/prompt-director.json +118 -0
  152. package/archetypes/prompt-library.json +135 -0
  153. package/archetypes/property-manager.json +158 -0
  154. package/archetypes/qa-workflow.json +116 -0
  155. package/archetypes/recipe-browser.json +83 -0
  156. package/archetypes/recipe-community.json +126 -0
  157. package/archetypes/recipe-creator.json +71 -0
  158. package/archetypes/recipe-social.json +95 -0
  159. package/archetypes/recipefork-ai-kitchen.json +95 -0
  160. package/archetypes/recipefork-auth.json +79 -0
  161. package/archetypes/recipefork-cookbooks.json +104 -0
  162. package/archetypes/recipefork-landing.json +101 -0
  163. package/archetypes/recipefork-profile.json +180 -0
  164. package/archetypes/recipefork-recipe-authoring.json +216 -0
  165. package/archetypes/recipefork-recipe-detail.json +139 -0
  166. package/archetypes/recipefork-social.json +103 -0
  167. package/archetypes/registry-browser.json +121 -0
  168. package/archetypes/render-monitor.json +114 -0
  169. package/archetypes/reporting-center.json +107 -0
  170. package/archetypes/research-workspace.json +127 -0
  171. package/archetypes/restaurant-floor.json +74 -0
  172. package/archetypes/review-system.json +84 -0
  173. package/archetypes/saas-analytics.json +69 -0
  174. package/archetypes/saas-billing-v2.json +77 -0
  175. package/archetypes/saas-dashboard.json +127 -0
  176. package/archetypes/saas-overview.json +77 -0
  177. package/archetypes/sample-inventory.json +80 -0
  178. package/archetypes/scrim-scheduler.json +103 -0
  179. package/archetypes/search-hub.json +87 -0
  180. package/archetypes/secondary-market.json +83 -0
  181. package/archetypes/seller-dashboard.json +169 -0
  182. package/archetypes/server-station.json +61 -0
  183. package/archetypes/service-requests.json +141 -0
  184. package/archetypes/session-rooms.json +92 -0
  185. package/archetypes/settings-full.json +164 -0
  186. package/archetypes/settings.json +67 -0
  187. package/archetypes/source-catalog.json +116 -0
  188. package/archetypes/spatial-workspace.json +115 -0
  189. package/archetypes/sponsor-dashboard.json +103 -0
  190. package/archetypes/storefront-browse.json +97 -0
  191. package/archetypes/supply-chain.json +112 -0
  192. package/archetypes/swipe-feed.json +469 -0
  193. package/archetypes/team-management.json +95 -0
  194. package/archetypes/team-operations.json +131 -0
  195. package/archetypes/team-workspace.json +71 -0
  196. package/archetypes/telehealth-room.json +78 -0
  197. package/archetypes/tenant-manager.json +129 -0
  198. package/archetypes/tenant-payments.json +105 -0
  199. package/archetypes/tenant-portal.json +135 -0
  200. package/archetypes/tenant-switcher-dashboard.json +154 -0
  201. package/archetypes/terminal-home.json +127 -0
  202. package/archetypes/ticket-checkout.json +84 -0
  203. package/archetypes/tool-registry.json +111 -0
  204. package/archetypes/trace-explorer.json +113 -0
  205. package/archetypes/trace-viewer.json +112 -0
  206. package/archetypes/track-library.json +90 -0
  207. package/archetypes/transaction-history.json +77 -0
  208. package/archetypes/transformation-editor.json +117 -0
  209. package/archetypes/usage-billing.json +146 -0
  210. package/archetypes/user-dashboard.json +155 -0
  211. package/archetypes/video-editor.json +158 -0
  212. package/archetypes/vod-review.json +97 -0
  213. package/archetypes/webhook-manager.json +108 -0
  214. package/archetypes/workspace-home.json +105 -0
  215. package/archetypes/workspace-settings.json +140 -0
  216. package/blueprints/agent-marketplace.json +222 -0
  217. package/blueprints/agent-studio.json +291 -0
  218. package/blueprints/ai-copilot-shell.json +163 -0
  219. package/blueprints/ai-native-crm.json +269 -0
  220. package/blueprints/ai-video-studio.json +93 -0
  221. package/blueprints/carbon-ai-portal.json +252 -0
  222. package/blueprints/civic-platform.json +91 -0
  223. package/blueprints/climate-dashboard.json +90 -0
  224. package/blueprints/cloud-platform.json +219 -0
  225. package/blueprints/content-site.json +110 -0
  226. package/blueprints/content-studio.json +120 -0
  227. package/blueprints/creator-monetization-platform.json +373 -0
  228. package/blueprints/data-pipeline-studio.json +263 -0
  229. package/blueprints/deal-room.json +88 -0
  230. package/blueprints/ecommerce-admin.json +253 -0
  231. package/blueprints/ecommerce.json +242 -0
  232. package/blueprints/esports-hq.json +116 -0
  233. package/blueprints/event-community-hub.json +251 -0
  234. package/blueprints/financial-dashboard.json +237 -0
  235. package/blueprints/fractional-ownership.json +89 -0
  236. package/blueprints/gaming-platform.json +171 -0
  237. package/blueprints/health-wellness-portal.json +252 -0
  238. package/blueprints/knowledge-base.json +176 -0
  239. package/blueprints/legal-research.json +90 -0
  240. package/blueprints/multi-tenant-platform.json +257 -0
  241. package/blueprints/observability-platform.json +275 -0
  242. package/blueprints/portfolio.json +164 -0
  243. package/blueprints/producer-studio.json +156 -0
  244. package/blueprints/product-landing.json +112 -0
  245. package/blueprints/property-management-portal.json +384 -0
  246. package/blueprints/realtime-collaboration-workspace.json +300 -0
  247. package/blueprints/recipe-community.json +259 -0
  248. package/blueprints/recipefork.json +194 -0
  249. package/blueprints/registry-platform.json +204 -0
  250. package/blueprints/research-lab.json +92 -0
  251. package/blueprints/restaurant-ops.json +104 -0
  252. package/blueprints/retro-launch-campaign.json +205 -0
  253. package/blueprints/saas-dashboard.json +246 -0
  254. package/blueprints/spatial-collaboration.json +172 -0
  255. package/blueprints/swipecircle.json +253 -0
  256. package/blueprints/terminal-dashboard.json +282 -0
  257. package/blueprints/two-sided-marketplace.json +293 -0
  258. package/dist/index.d.ts +178 -0
  259. package/dist/index.js +582 -0
  260. package/dist/index.js.map +1 -0
  261. package/package.json +75 -0
  262. package/patterns/account-settings.json +149 -0
  263. package/patterns/activity-feed.json +154 -0
  264. package/patterns/adaptive-density-panel.json +130 -0
  265. package/patterns/agent-handoff-zone.json +97 -0
  266. package/patterns/agent-swarm-canvas.json +136 -0
  267. package/patterns/agent-timeline.json +119 -0
  268. package/patterns/alert-rule-builder.json +127 -0
  269. package/patterns/ambient-status-ring.json +125 -0
  270. package/patterns/api-explorer.json +131 -0
  271. package/patterns/api-key-row.json +119 -0
  272. package/patterns/ar-annotation.json +137 -0
  273. package/patterns/arrangement-canvas.json +72 -0
  274. package/patterns/ascii-chart.json +138 -0
  275. package/patterns/audit-trail.json +123 -0
  276. package/patterns/auth-form.json +209 -0
  277. package/patterns/avatar-grid-tile.json +118 -0
  278. package/patterns/backer-progress-console.json +137 -0
  279. package/patterns/backer-wall-ticker.json +127 -0
  280. package/patterns/before-after.json +105 -0
  281. package/patterns/block-toolbar.json +129 -0
  282. package/patterns/blueprint-anatomy.json +112 -0
  283. package/patterns/blueprint-launch-hero.json +113 -0
  284. package/patterns/booking-calendar.json +125 -0
  285. package/patterns/bottom-tab-bar.json +117 -0
  286. package/patterns/breadcrumb-nav.json +111 -0
  287. package/patterns/budget-sankey.json +103 -0
  288. package/patterns/calendar-view.json +143 -0
  289. package/patterns/campaign-marquee-hero.json +167 -0
  290. package/patterns/cap-table.json +121 -0
  291. package/patterns/card-grid.json +202 -0
  292. package/patterns/case-brief-card.json +113 -0
  293. package/patterns/character-sheet.json +102 -0
  294. package/patterns/chart-grid.json +129 -0
  295. package/patterns/chat-header.json +105 -0
  296. package/patterns/chat-input.json +106 -0
  297. package/patterns/chat-message.json +122 -0
  298. package/patterns/chat-thread.json +120 -0
  299. package/patterns/checklist-card.json +96 -0
  300. package/patterns/checkout-flow.json +148 -0
  301. package/patterns/chip-multiselect.json +118 -0
  302. package/patterns/citation-graph.json +118 -0
  303. package/patterns/command-palette.json +115 -0
  304. package/patterns/command-rail.json +123 -0
  305. package/patterns/comment-thread.json +155 -0
  306. package/patterns/comparison-table.json +121 -0
  307. package/patterns/contact-form.json +135 -0
  308. package/patterns/content-card-grid.json +151 -0
  309. package/patterns/content-detail-hero.json +129 -0
  310. package/patterns/content-feed.json +141 -0
  311. package/patterns/content-uploader.json +137 -0
  312. package/patterns/continue-screen-cta.json +135 -0
  313. package/patterns/contract-diff.json +110 -0
  314. package/patterns/contract-explorer.json +119 -0
  315. package/patterns/conversation-list.json +109 -0
  316. package/patterns/creator-profile.json +127 -0
  317. package/patterns/cta-banner.json +103 -0
  318. package/patterns/cta-section.json +122 -0
  319. package/patterns/cta.json +124 -0
  320. package/patterns/data-source-connector.json +131 -0
  321. package/patterns/data-table.json +138 -0
  322. package/patterns/dataset-card.json +127 -0
  323. package/patterns/daw-transport-bar.json +66 -0
  324. package/patterns/deal-pipeline-board.json +124 -0
  325. package/patterns/deal-stage-gates.json +102 -0
  326. package/patterns/depth-layered-canvas.json +105 -0
  327. package/patterns/detail-header.json +140 -0
  328. package/patterns/diff-view.json +122 -0
  329. package/patterns/dividend-ledger.json +120 -0
  330. package/patterns/doc-editor.json +147 -0
  331. package/patterns/document-vault.json +129 -0
  332. package/patterns/drag-sort-list.json +119 -0
  333. package/patterns/earnings-dashboard.json +132 -0
  334. package/patterns/emissions-sankey.json +113 -0
  335. package/patterns/emoji-reaction-bar.json +115 -0
  336. package/patterns/esports-matchday-command.json +132 -0
  337. package/patterns/eval-dashboard.json +131 -0
  338. package/patterns/expense-tracker.json +130 -0
  339. package/patterns/featured-launchpad-list.json +114 -0
  340. package/patterns/features.json +118 -0
  341. package/patterns/file-browser.json +148 -0
  342. package/patterns/filter-bar.json +146 -0
  343. package/patterns/footer.json +115 -0
  344. package/patterns/form-sections.json +180 -0
  345. package/patterns/form.json +190 -0
  346. package/patterns/founder-comic-strip.json +126 -0
  347. package/patterns/generative-card-grid.json +130 -0
  348. package/patterns/gesture-control-overlay.json +134 -0
  349. package/patterns/governance-ballot.json +126 -0
  350. package/patterns/help-modal.json +155 -0
  351. package/patterns/hero-split.json +125 -0
  352. package/patterns/hero.json +227 -0
  353. package/patterns/holographic-control-bar.json +114 -0
  354. package/patterns/hotkey-bar.json +97 -0
  355. package/patterns/how-it-works.json +118 -0
  356. package/patterns/identity-summary.json +115 -0
  357. package/patterns/instrument-schedule.json +131 -0
  358. package/patterns/intake-form-wizard.json +134 -0
  359. package/patterns/intent-radar.json +115 -0
  360. package/patterns/json-viewer.json +129 -0
  361. package/patterns/kanban-board.json +133 -0
  362. package/patterns/kds-ticket-rail.json +133 -0
  363. package/patterns/kpi-grid.json +123 -0
  364. package/patterns/launch-update-log.json +129 -0
  365. package/patterns/launchpad-flow.json +107 -0
  366. package/patterns/leaderboard.json +143 -0
  367. package/patterns/lease-manager.json +129 -0
  368. package/patterns/legal-prose.json +120 -0
  369. package/patterns/live-room-stage.json +63 -0
  370. package/patterns/log-stream.json +150 -0
  371. package/patterns/logo-strip.json +93 -0
  372. package/patterns/maintenance-board.json +127 -0
  373. package/patterns/maintenance-ticket.json +156 -0
  374. package/patterns/map-view.json +140 -0
  375. package/patterns/match-celebration.json +133 -0
  376. package/patterns/matter-card.json +113 -0
  377. package/patterns/mention-popup.json +85 -0
  378. package/patterns/metric-gauge.json +141 -0
  379. package/patterns/mixer-console.json +69 -0
  380. package/patterns/mobile-profile-hero.json +138 -0
  381. package/patterns/moderation-queue-item.json +129 -0
  382. package/patterns/morphing-topology.json +113 -0
  383. package/patterns/namespace-badge.json +93 -0
  384. package/patterns/nav-header.json +110 -0
  385. package/patterns/neural-feedback-loop.json +124 -0
  386. package/patterns/notebook-entry.json +129 -0
  387. package/patterns/notification-center.json +136 -0
  388. package/patterns/offset-cart.json +109 -0
  389. package/patterns/onboarding-wizard.json +130 -0
  390. package/patterns/org-governance-panel.json +101 -0
  391. package/patterns/page-tree.json +143 -0
  392. package/patterns/payment-history.json +130 -0
  393. package/patterns/payout-settings.json +130 -0
  394. package/patterns/permission-matrix.json +129 -0
  395. package/patterns/petition-card.json +106 -0
  396. package/patterns/pipeline-cards.json +99 -0
  397. package/patterns/player-form-tracker.json +111 -0
  398. package/patterns/pledge-checkout-panel.json +145 -0
  399. package/patterns/pnl-dashboard.json +116 -0
  400. package/patterns/post-list.json +147 -0
  401. package/patterns/presence-avatars.json +129 -0
  402. package/patterns/press-kit-shelf.json +132 -0
  403. package/patterns/pricing-usage.json +118 -0
  404. package/patterns/pricing.json +137 -0
  405. package/patterns/producer-split-workbench.json +57 -0
  406. package/patterns/product-box-spec-panel.json +126 -0
  407. package/patterns/product-card.json +120 -0
  408. package/patterns/product-grid.json +140 -0
  409. package/patterns/progress-bar.json +124 -0
  410. package/patterns/prompt-playground.json +129 -0
  411. package/patterns/property-card.json +112 -0
  412. package/patterns/property-detail.json +124 -0
  413. package/patterns/property-grid.json +137 -0
  414. package/patterns/prose-section.json +102 -0
  415. package/patterns/protocol-step.json +128 -0
  416. package/patterns/prototype-demo-bezel.json +137 -0
  417. package/patterns/qa-thread.json +109 -0
  418. package/patterns/quick-start.json +88 -0
  419. package/patterns/recipefork-activity-feed.json +51 -0
  420. package/patterns/recipefork-chef-ingredients-display.json +48 -0
  421. package/patterns/recipefork-chef-ingredients-editor.json +52 -0
  422. package/patterns/recipefork-chef-instruction-editor.json +59 -0
  423. package/patterns/recipefork-chef-instructions-display.json +54 -0
  424. package/patterns/recipefork-cookbook-assignment.json +51 -0
  425. package/patterns/recipefork-cooking-tips-display.json +43 -0
  426. package/patterns/recipefork-cooking-tips-editor.json +46 -0
  427. package/patterns/recipefork-fork-provenance.json +50 -0
  428. package/patterns/recipefork-kitchen-chat.json +103 -0
  429. package/patterns/recipefork-photo-generator.json +123 -0
  430. package/patterns/recipefork-presentation-display.json +45 -0
  431. package/patterns/recipefork-presentation-editor.json +52 -0
  432. package/patterns/recipefork-recipe-card.json +123 -0
  433. package/patterns/recipefork-recipe-metadata-form.json +58 -0
  434. package/patterns/recipefork-recipe-mode-switch.json +52 -0
  435. package/patterns/recipefork-recipe-story-editor.json +51 -0
  436. package/patterns/recipefork-simple-recipe-editor.json +49 -0
  437. package/patterns/redline-track-changes.json +113 -0
  438. package/patterns/registry-discovery-cta-grid.json +93 -0
  439. package/patterns/registry-link-list.json +118 -0
  440. package/patterns/relationship-graph.json +127 -0
  441. package/patterns/remote-cursor.json +103 -0
  442. package/patterns/render-queue.json +102 -0
  443. package/patterns/rent-reminder.json +140 -0
  444. package/patterns/rent-roll.json +112 -0
  445. package/patterns/reputation-badge.json +111 -0
  446. package/patterns/retro-table.json +128 -0
  447. package/patterns/reward-tier-selector.json +137 -0
  448. package/patterns/sample-tracker.json +127 -0
  449. package/patterns/scene-storyboard.json +104 -0
  450. package/patterns/scope-breakdown.json +108 -0
  451. package/patterns/scoreboard-live.json +116 -0
  452. package/patterns/scrim-calendar.json +114 -0
  453. package/patterns/search-filter-bar.json +141 -0
  454. package/patterns/secure-document-viewer.json +107 -0
  455. package/patterns/service-catalog.json +94 -0
  456. package/patterns/service-map.json +133 -0
  457. package/patterns/session-inspector.json +62 -0
  458. package/patterns/session-manager.json +89 -0
  459. package/patterns/settings-nav.json +106 -0
  460. package/patterns/share-modal.json +157 -0
  461. package/patterns/share-quest-panel.json +134 -0
  462. package/patterns/shot-grid.json +104 -0
  463. package/patterns/skeleton-loader.json +114 -0
  464. package/patterns/slash-command.json +80 -0
  465. package/patterns/sparkline-cell.json +103 -0
  466. package/patterns/spatial-card-stack.json +133 -0
  467. package/patterns/spatial-presence-ring.json +103 -0
  468. package/patterns/split-calculator.json +104 -0
  469. package/patterns/split-pane.json +112 -0
  470. package/patterns/stats-bar.json +125 -0
  471. package/patterns/stats-detail.json +102 -0
  472. package/patterns/stats-overview.json +132 -0
  473. package/patterns/stats-section.json +90 -0
  474. package/patterns/status-bar.json +101 -0
  475. package/patterns/status-board.json +92 -0
  476. package/patterns/stem-browser.json +58 -0
  477. package/patterns/stem-stack.json +101 -0
  478. package/patterns/stepper.json +115 -0
  479. package/patterns/storefront-hero.json +120 -0
  480. package/patterns/stretch-goal-ladder.json +128 -0
  481. package/patterns/subscriber-list.json +135 -0
  482. package/patterns/supply-chain-map.json +109 -0
  483. package/patterns/swipe-action-bar.json +119 -0
  484. package/patterns/swipe-card.json +126 -0
  485. package/patterns/table-map.json +134 -0
  486. package/patterns/target-progress-ring.json +103 -0
  487. package/patterns/team-member-row.json +139 -0
  488. package/patterns/tech-pills.json +69 -0
  489. package/patterns/tenant-card.json +150 -0
  490. package/patterns/tenant-directory.json +118 -0
  491. package/patterns/tenant-payment-setup.json +98 -0
  492. package/patterns/terminal-emulator.json +117 -0
  493. package/patterns/testimonials.json +133 -0
  494. package/patterns/tier-builder.json +131 -0
  495. package/patterns/tier-card.json +118 -0
  496. package/patterns/tier-upgrade-card.json +144 -0
  497. package/patterns/timeline-scrubber.json +107 -0
  498. package/patterns/timeline.json +140 -0
  499. package/patterns/toast-notification.json +123 -0
  500. package/patterns/tool-list.json +89 -0
  501. package/patterns/trace-waterfall.json +123 -0
  502. package/patterns/trade-modal.json +132 -0
  503. package/patterns/transcript-stream.json +125 -0
  504. package/patterns/tree-view.json +124 -0
  505. package/patterns/unit-detail.json +100 -0
  506. package/patterns/unit-list.json +106 -0
  507. package/patterns/unlock-gate.json +132 -0
  508. package/patterns/usage-meter.json +113 -0
  509. package/patterns/vacancy-tracker.json +106 -0
  510. package/patterns/valuation-chart.json +126 -0
  511. package/patterns/version-history.json +140 -0
  512. package/patterns/video-room.json +142 -0
  513. package/patterns/vod-annotator.json +112 -0
  514. package/patterns/voice-command-palette.json +127 -0
  515. package/patterns/voice-waveform.json +120 -0
  516. package/patterns/voting-breakdown.json +101 -0
  517. package/patterns/waveform-track.json +102 -0
  518. package/patterns/webhook-debugger.json +116 -0
  519. package/patterns/workflow-canvas.json +147 -0
  520. package/patterns/workspace-region-stack.json +74 -0
  521. package/schemas/archetype.v2.json +145 -0
  522. package/schemas/blueprint.v1.json +225 -0
  523. package/schemas/common.v1.json +337 -0
  524. package/schemas/content-health-report.v1.json +255 -0
  525. package/schemas/content-intelligence.v1.json +142 -0
  526. package/schemas/essence.v4.json +430 -0
  527. package/schemas/execution-pack.common.v1.json +207 -0
  528. package/schemas/page-pack.v1.json +106 -0
  529. package/schemas/pattern.v2.json +232 -0
  530. package/schemas/public-content-list.v1.json +28 -0
  531. package/schemas/public-content-record.v1.json +91 -0
  532. package/schemas/public-content-summary.v1.json +132 -0
  533. package/schemas/registry-intelligence-summary.v1.json +81 -0
  534. package/schemas/search-response.v1.json +28 -0
  535. package/schemas/section-pack.v1.json +128 -0
  536. package/schemas/shell.v1.json +69 -0
  537. package/schemas/showcase-manifest-entry.v1.json +92 -0
  538. package/schemas/showcase-manifest.v1.json +28 -0
  539. package/schemas/showcase-shortlist.v1.json +36 -0
  540. package/schemas/theme.v1.json +190 -0
  541. package/shells/canvas-overlay.json +94 -0
  542. package/shells/centered.json +49 -0
  543. package/shells/chat-portal.json +153 -0
  544. package/shells/copilot-overlay.json +156 -0
  545. package/shells/full-bleed.json +100 -0
  546. package/shells/immersive-stage.json +89 -0
  547. package/shells/minimal-header.json +103 -0
  548. package/shells/mobile-tab-bar.json +119 -0
  549. package/shells/recipefork-top-nav.json +74 -0
  550. package/shells/sidebar-aside.json +163 -0
  551. package/shells/sidebar-main-footer.json +158 -0
  552. package/shells/sidebar-main.json +175 -0
  553. package/shells/sidebar-right.json +128 -0
  554. package/shells/terminal-split.json +95 -0
  555. package/shells/three-column-browser.json +215 -0
  556. package/shells/top-nav-footer.json +114 -0
  557. package/shells/top-nav-main.json +103 -0
  558. package/shells/top-nav-sidebar.json +130 -0
  559. package/shells/workspace-aside.json +181 -0
  560. package/themes/auradecantism.json +601 -0
  561. package/themes/bespoke.json +433 -0
  562. package/themes/bioluminescent.json +217 -0
  563. package/themes/bistro.json +422 -0
  564. package/themes/carbon-neon.json +458 -0
  565. package/themes/carbon.json +429 -0
  566. package/themes/cinema.json +479 -0
  567. package/themes/clean.json +261 -0
  568. package/themes/counsel.json +431 -0
  569. package/themes/dopamine.json +237 -0
  570. package/themes/earth.json +453 -0
  571. package/themes/editorial.json +237 -0
  572. package/themes/estate.json +559 -0
  573. package/themes/fintech.json +472 -0
  574. package/themes/gaming-guild.json +341 -0
  575. package/themes/glassmorphism.json +309 -0
  576. package/themes/government.json +481 -0
  577. package/themes/healthcare.json +480 -0
  578. package/themes/lab.json +437 -0
  579. package/themes/launchpad.json +320 -0
  580. package/themes/liquid-glass.json +223 -0
  581. package/themes/luminarum.json +598 -0
  582. package/themes/neo-tokyo.json +451 -0
  583. package/themes/neon-cyber.json +280 -0
  584. package/themes/neon-dark.json +220 -0
  585. package/themes/paper.json +496 -0
  586. package/themes/prismatic.json +217 -0
  587. package/themes/recipefork.json +278 -0
  588. package/themes/retro-arcade.json +620 -0
  589. package/themes/retro.json +240 -0
  590. package/themes/studio-dark.json +437 -0
  591. package/themes/studio.json +488 -0
  592. package/themes/swipecircle.json +533 -0
  593. package/themes/terminal.json +549 -0
@@ -0,0 +1,148 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "file-browser",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "File Browser",
7
+ "description": "File and folder tree with preview panel, breadcrumb navigation, and multi-select for comprehensive file management.",
8
+ "category": "content-management",
9
+ "tags": [
10
+ "2026",
11
+ "files",
12
+ "folders",
13
+ "tree",
14
+ "file-manager",
15
+ "drag-and-drop",
16
+ "content-management",
17
+ "preview"
18
+ ],
19
+ "components": [
20
+ "FolderTree",
21
+ "FileList",
22
+ "FileCard",
23
+ "FileRow",
24
+ "PreviewPanel",
25
+ "BreadcrumbBar",
26
+ "ActionBar",
27
+ "UploadDropzone"
28
+ ],
29
+ "default_preset": "split",
30
+ "presets": {
31
+ "tree": {
32
+ "description": "Sidebar folder tree navigation with a flat file list on the right — traditional file manager layout optimized for deep folder hierarchies",
33
+ "layout": {
34
+ "layout": "split",
35
+ "atoms": "_flex _row _h-full _bg-surface _border _rounded"
36
+ }
37
+ },
38
+ "grid": {
39
+ "description": "Icon grid view showing file cards with thumbnails and names in a responsive masonry-like grid — best for visual browsing of images and documents",
40
+ "layout": {
41
+ "layout": "grid",
42
+ "atoms": "_grid _grid-cols-auto-fill _gap-4 _p-4 _bg-surface"
43
+ }
44
+ },
45
+ "list": {
46
+ "description": "Table-style list view with sortable columns (name, size, type, modified date) — optimized for detailed file information and bulk operations",
47
+ "layout": {
48
+ "layout": "stack",
49
+ "atoms": "_flex _col _h-full _bg-surface _border _rounded"
50
+ }
51
+ },
52
+ "split": {
53
+ "description": "Three-panel layout: folder tree left, file list center, preview panel right — the most comprehensive view combining navigation, listing, and preview in one screen",
54
+ "layout": {
55
+ "layout": "split",
56
+ "atoms": "_flex _row _h-full _bg-surface _border _rounded"
57
+ }
58
+ }
59
+ },
60
+ "visual_brief": "A two-or-three-panel file management interface with clean lines and clear visual hierarchy. The leftmost panel is the FolderTree (240px wide, collapsible): a vertical list of folders with indentation levels (16px per level) connected by thin vertical and horizontal connector lines (1px solid var(--d-border-subtle), gray) forming an ASCII-tree-like structure. Folder icons are small (16px) filled folder shapes that rotate open (chevron turns 90deg) when expanded. The active/selected folder has an accent-tinted background row (var(--d-accent) at 10% opacity) with accent-colored text. Hovering any folder row shows a subtle background tint. The center panel is the FileList (flex: 1, fills remaining space). Above it spans the BreadcrumbBar: a horizontal path showing the current location as clickable segments separated by chevron-right icons (e.g., 'Home > Projects > Design > Assets'), each segment in text-sm with hover underline, the final segment in font-semibold. Below the breadcrumb is the ActionBar: a horizontal toolbar with icon+label buttons for Upload, New Folder, Delete, and a view-mode toggle (grid/list icons), plus a search input on the right side (240px wide, with a search icon prefix). The file list itself renders either as FileCards in grid mode (120px wide cards with a 64px icon/thumbnail centered above the filename) or FileRows in list mode (table rows with columns: checkbox, icon, name, size, type, date modified, each sortable by clicking the column header). File icons use distinct shapes and colors per type: documents are blue page icons, images are green landscape icons, code files are purple bracket icons, archives are amber box icons, PDFs are red document icons. Selected files have an accent-tinted background (var(--d-accent) at 8% opacity) with a visible checkbox checked state. Multi-select is supported via Shift+click (range) and Ctrl/Cmd+click (additive). The rightmost panel is the PreviewPanel (320px wide, slides in from the right when a file is selected). It shows: a large thumbnail or file-type icon at the top (200px max-height), the filename (text-base font-semibold), file metadata in a key-value list (Size, Type, Created, Modified, Owner — each as text-sm rows), and quick action buttons (Download, Share, Rename, Delete) as ghost-style icon+label buttons. The UploadDropzone activates on drag-over: a full-area overlay (position: absolute, inset: 0, z-index above all content) with a dashed border (3px dashed var(--d-accent), border-radius 12px), translucent accent-tinted background (var(--d-accent) at 8%), and a centered column with a large upload cloud icon (48px) and 'Drop files to upload' text (text-lg, text-accent). During file drag operations, a ghost badge follows the cursor showing the count of files being moved ('3 files') in a small accent pill.",
61
+ "layout_hints": {
62
+ "container": "multi-panel",
63
+ "note": "The split preset uses a three-panel layout with resizable dividers. The folder tree and preview panels are collapsible. Panel widths should be adjustable via drag handles on the divider borders.",
64
+ "folder_tree": "Connector lines use a combination of vertical lines (from parent to last child) and horizontal stubs (from vertical line to folder icon). Use CSS ::before pseudo-elements on each tree item. Indent each level by 16px.",
65
+ "file_icons": "File type icons MUST be visually distinct — do not use a generic file icon for everything. Use color-coded icons: blue for documents (.doc, .txt), green for images (.png, .jpg), purple for code (.js, .ts, .py), amber for archives (.zip, .tar), red for PDFs. This color coding is essential for quick visual scanning.",
66
+ "selection": "Selected files must have a clearly visible accent background tint AND a checked checkbox. Multi-select interactions: click selects single, Shift+click selects range, Ctrl/Cmd+click toggles individual selection.",
67
+ "preview_panel": "The preview panel should only appear when a file (not folder) is selected. For image files, show an actual thumbnail. For other files, show a large file-type icon. The panel slides in from the right edge with a 250ms animation."
68
+ },
69
+ "default_layout": {
70
+ "layout": "split",
71
+ "atoms": "_flex _row _h-full _bg-surface _rounded _border _overflow-hidden",
72
+ "slots": {
73
+ "folder-tree": "Left panel, 240px wide (resizable, min 180px, max 360px), with a right border (1px solid var(--d-border-subtle)). Contains a vertical scrollable list of folder entries. Each entry is a horizontal row: an expand/collapse chevron (16px, rotates 0deg→90deg on expand, hidden for empty folders), a folder icon (16px, filled style, accent-colored when selected), and the folder name (text-sm, truncated with ellipsis). Indentation: each nesting level adds 16px of left padding. Connector lines: a thin vertical line (1px solid var(--d-border-muted)) runs from a parent's expand icon down to its last child, with horizontal stubs (12px wide) branching to each child. The active folder row has background: color-mix(in srgb, var(--d-accent) 10%, transparent) with the folder name in accent color and font-medium. Hover rows get a subtle background tint (var(--d-bg-muted)). Right-click opens a context menu (Rename, Delete, New Subfolder). The panel header shows 'Folders' in text-xs uppercase tracking-wide text-muted with a collapse button (chevron-left icon) on the right.",
74
+ "breadcrumb-bar": "Horizontal bar above the file list area, height 40px, padding 0 16px, flex items center, border-bottom 1px solid var(--d-border-subtle). Shows the current folder path as a series of clickable text segments: each segment is a text-sm link (text-muted, hover: text-foreground, hover: underline) separated by chevron-right icons (12px, text-muted). The final (current) segment is text-foreground font-semibold and is not clickable. If the path is too long, early segments collapse into a '...' dropdown that reveals the full path on click. A home icon (16px) precedes the first segment as a clickable root link.",
75
+ "action-bar": "Horizontal toolbar below the breadcrumb bar, height 44px, padding 0 12px, flex items center gap-2, border-bottom 1px solid var(--d-border-subtle). Left section: Upload button (primary variant, small size, upload-cloud icon + 'Upload' text), New Folder button (ghost variant, folder-plus icon + 'New Folder'), Delete button (ghost variant, trash icon, text-error, disabled unless files are selected, shows selected count). Separator (1px vertical line, 20px tall, var(--d-border-muted)). View toggle: two icon buttons (grid-view and list-view) where the active mode has accent background. Right section: search input (240px wide, border-radius 8px, search icon prefix, placeholder 'Search files...', text-sm). When files are selected, an additional '3 selected' indicator appears with a 'Clear selection' text button.",
76
+ "file-list": "Center panel, flex: 1, scrollable vertically. In list mode: a table layout with a sticky header row showing column names (Checkbox, Name, Size, Type, Modified) in text-xs uppercase tracking-wide text-muted font-medium. Each column header is clickable to sort (shows an up/down arrow indicator). Rows alternate between transparent and var(--d-bg-muted) at 30% opacity for scanability. Each FileRow: height 44px, flex items center, padding 0 12px. Row contents: checkbox (18px, rounded-sm, accent-checked), file type icon (20px, color-coded), file name (text-sm, flex-1, truncated), file size (text-xs, text-muted, 80px wide), file type label (text-xs, text-muted, 100px wide), modified date (text-xs, text-muted, 140px wide). Selected rows have accent-tinted background. Hover rows get subtle background. Double-click opens file/folder. In grid mode: a responsive grid (grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)), gap 16px, padding 16px). Each FileCard: a vertical stack (width fills grid cell) with a centered icon or thumbnail (64px height area), file name below (text-xs, text-center, max 2 lines with line-clamp-2), and a selected state showing an accent ring around the card. Hover lifts the card slightly (translateY(-2px), shadow increase).",
77
+ "preview-panel": "Right panel, 320px wide (resizable, min 240px, max 480px), with a left border (1px solid var(--d-border-subtle)). Slides in from the right when a file is selected, slides out when deselected. Top section: a large preview area (padding 24px, centered) showing either a thumbnail image (max-width 100%, max-height 200px, object-fit contain, rounded 8px with subtle shadow) or a large file-type icon (72px) on a muted circular background (120px diameter). Below: the filename (text-base font-semibold, padding 0 24px, word-break), then a metadata section (padding 16px 24px) with key-value rows: each row has a label (text-xs text-muted uppercase, 80px wide) and a value (text-sm text-foreground). Metadata includes: Size, Type, Created, Modified, Owner, Location. Below metadata: a divider line, then a row of quick-action ghost buttons (Download, Share, Rename, Move, Delete) with icon + label, arranged as a flex-wrap row with 8px gap. The Delete button uses text-error color.",
78
+ "upload-dropzone": "An overlay that activates when files are dragged over the browser window. Position: absolute, inset: 0, z-index: 50 (above all panel content). Border: 3px dashed var(--d-accent) with border-radius 12px. Background: color-mix(in srgb, var(--d-accent) 8%, var(--d-bg-surface) 92%). Contains a centered vertical flex column: a large cloud-upload icon (48px, text-accent), 'Drop files to upload' heading (text-lg, font-semibold, text-accent), and 'or click to browse' subtext (text-sm, text-muted). The overlay fades in over 200ms when drag enters and fades out over 150ms when drag leaves. On drop, transitions to an upload progress state showing a progress bar and file list."
79
+ }
80
+ },
81
+ "accessibility": {
82
+ "role": "application",
83
+ "aria-label": "File browser",
84
+ "announcements": [
85
+ "Navigated to folder {name}",
86
+ "{count} files selected",
87
+ "File {name} preview opened",
88
+ "Uploading {count} files — {percent}% complete",
89
+ "File {name} deleted",
90
+ "Sorted by {column} {ascending|descending}"
91
+ ],
92
+ "keyboard": [
93
+ "Tab: move focus between folder tree, file list, and preview panel",
94
+ "Arrow Up/Down: navigate files in list, folders in tree",
95
+ "Arrow Left/Right: collapse/expand folders in tree, move between columns in list",
96
+ "Enter: open selected file or navigate into folder",
97
+ "Space: toggle file selection",
98
+ "Shift+Arrow: extend selection range",
99
+ "Ctrl/Cmd+A: select all files in current folder",
100
+ "Delete/Backspace: delete selected files (with confirmation)",
101
+ "Ctrl/Cmd+C/V: copy/paste files",
102
+ "F2: rename selected file",
103
+ "Ctrl/Cmd+Shift+N: create new folder",
104
+ "Escape: clear selection or close preview panel"
105
+ ]
106
+ },
107
+ "responsive": {
108
+ "mobile": "Single-panel layout only. Folder tree becomes a full-screen overlay triggered by a hamburger/folder icon in the action bar. File list defaults to a simplified list view (name + icon + size only, no table columns). Preview panel becomes a bottom sheet on file tap. Breadcrumb bar shows only the current folder name with a back arrow. Action bar simplifies to essential actions behind an overflow menu. Upload dropzone is replaced by an upload button that opens the system file picker. Multi-select uses a long-press to enter selection mode with checkboxes.",
109
+ "tablet": "Two-panel layout: folder tree (collapsible) + file list. Preview panel is a slide-over overlay from the right (50% width). Grid view shows 4-5 columns of file cards. Action bar shows primary actions with remaining in overflow. Drag-and-drop supported for file organization. Breadcrumb bar shows full path with horizontal scroll if needed.",
110
+ "desktop": "Full three-panel split layout. All panels visible simultaneously with resizable dividers (drag handles on borders). Folder tree 240px, file list flex, preview 320px. Full table columns in list view with sortable headers. Keyboard shortcuts fully enabled. Right-click context menus on files and folders. Drag-and-drop between folders with visual drop indicators. Search input with real-time filtering and type-ahead."
111
+ },
112
+ "motion": {
113
+ "micro": {
114
+ "row-hover": "background-color transition 100ms ease-out",
115
+ "card-hover": "translateY(-2px) + shadow increase, 150ms ease-out",
116
+ "folder-expand": "chevron rotates 0→90deg, 200ms ease-out; children slide down with stagger 50ms each",
117
+ "checkbox-check": "scale bounce 1.0→1.2→1.0, 200ms ease-out with checkmark draw animation"
118
+ },
119
+ "transitions": {
120
+ "preview-open": "Preview panel slides in from right edge, width 0→320px, 250ms ease-out with content fade-in 150ms delay",
121
+ "preview-close": "Panel slides out to right, 200ms ease-in, content fades immediately",
122
+ "view-switch": "Cross-fade between grid and list views, 200ms ease-in-out with content scale 0.98→1.0",
123
+ "dropzone-activate": "Overlay fades in from opacity 0→1 over 200ms with border dash animation"
124
+ },
125
+ "ambient": {
126
+ "upload-progress": "Progress bar fills with smooth width transition, striped gradient animation moving left-to-right at 1s linear infinite",
127
+ "drag-ghost": "File count badge follows cursor with 50ms position lerp for smooth trailing effect"
128
+ }
129
+ },
130
+ "interactions": [
131
+ "click-select",
132
+ "hover-reveal",
133
+ "animate-on-mount",
134
+ "keyboard-navigation"
135
+ ],
136
+ "composition": {
137
+ "FileBrowser": "Browser(d-section, flex-row, full-height) > [FolderTree?(d-surface) + MainArea(flex-col, flex-1) + PreviewPanel?(d-surface)]",
138
+ "MainArea": "Area(flex-col) > [BreadcrumbBar + ActionBar + FileList(scrollable)]",
139
+ "FolderTree": "Tree(d-surface, scrollable, resizable) > FolderEntry*(indented, connectors) > [Chevron + FolderIcon + Name]",
140
+ "FileList": "List(d-surface, scrollable) > FileRow*(d-interactive) | FileCard*(d-interactive)",
141
+ "FileRow": "Row(d-interactive, flex-row) > [Checkbox + TypeIcon + Name + Size + Type + Modified]",
142
+ "FileCard": "Card(d-interactive, flex-col, centered) > [Thumbnail|TypeIcon + FileName]",
143
+ "PreviewPanel": "Panel(d-surface, slide-in, resizable) > [Preview(image|icon) + Filename + Metadata(key-value) + QuickActions]",
144
+ "BreadcrumbBar": "Bar(d-annotation, flex-row) > Segment*(clickable, chevron-separated)",
145
+ "ActionBar": "Bar(d-control, flex-row) > [UploadButton + NewFolderButton + DeleteButton + ViewToggle + SearchInput]",
146
+ "UploadDropzone": "Overlay(d-interactive, dashed-border, centered) > [UploadIcon + DropText + BrowseLink]"
147
+ }
148
+ }
@@ -0,0 +1,146 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "filter-bar",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Filter Bar",
7
+ "description": "Search input and filter controls for filtering page content. Sits above data-consuming patterns like data-table, card-grid, and activity-feed.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Input",
14
+ "Select",
15
+ "Button",
16
+ "Badge",
17
+ "icon"
18
+ ],
19
+ "charts": []
20
+ }
21
+ },
22
+ "components": [
23
+ "Input",
24
+ "Select",
25
+ "Button",
26
+ "Badge",
27
+ "icon"
28
+ ],
29
+ "default_preset": "standard",
30
+ "presets": {
31
+ "standard": {
32
+ "description": "Search input + dropdown filters + action buttons in a horizontal bar",
33
+ "components": [
34
+ "Input",
35
+ "Select",
36
+ "Button",
37
+ "icon"
38
+ ],
39
+ "layout": {
40
+ "layout": "row",
41
+ "atoms": "_flex _row _gap3 _aic _w[100%] _py2",
42
+ "slots": {
43
+ "search": "Search Input with placeholder text",
44
+ "filters": "One or more Select dropdowns for category/status filtering",
45
+ "actions": "Action Buttons (clear, apply, etc.)"
46
+ }
47
+ }
48
+ },
49
+ "compact": {
50
+ "description": "Search input only, filters in a collapsible popover",
51
+ "components": [
52
+ "Input",
53
+ "Select",
54
+ "Button",
55
+ "Badge",
56
+ "icon"
57
+ ],
58
+ "layout": {
59
+ "layout": "row",
60
+ "atoms": "_flex _row _gap2 _aic _w[100%] _py1",
61
+ "slots": {
62
+ "search": "Search Input, takes full width",
63
+ "filter-toggle": "Button that opens a Popover with filter Select controls",
64
+ "active-filters": "Badge chips showing currently active filters"
65
+ }
66
+ }
67
+ },
68
+ "advanced": {
69
+ "description": "Multi-row with filter chips, saved filters, and clear-all",
70
+ "components": [
71
+ "Input",
72
+ "Select",
73
+ "Button",
74
+ "Badge",
75
+ "icon"
76
+ ],
77
+ "layout": {
78
+ "layout": "column",
79
+ "atoms": "_flex _col _gap2 _w[100%] _py2",
80
+ "slots": {
81
+ "search-row": "Top row: Search Input + filter dropdowns + action Buttons",
82
+ "chips-row": "Second row: Badge filter chips showing active filters with remove buttons",
83
+ "saved-filters": "Optional row: saved filter presets as outline Buttons"
84
+ }
85
+ }
86
+ }
87
+ },
88
+ "default_layout": {
89
+ "layout": "row",
90
+ "atoms": "_flex _row _gap3 _aic _w[100%] _py2",
91
+ "slots": {
92
+ "search": "Search Input with placeholder text",
93
+ "filters": "One or more Select dropdowns for category/status filtering",
94
+ "actions": "Action Buttons (clear, apply, etc.)"
95
+ }
96
+ },
97
+ "io": {
98
+ "produces": [
99
+ "search",
100
+ "filters",
101
+ "status"
102
+ ],
103
+ "consumes": [],
104
+ "actions": [
105
+ "clear",
106
+ "apply"
107
+ ]
108
+ },
109
+ "visual_brief": "Horizontal bar containing a search input with magnifying glass icon on the left, one or more dropdown Select filters in the middle (category, status, date range), and action buttons on the right (Clear All, Apply). Active filters may display as small removable badge chips below the bar. The compact preset places the search input and filters in a single tight row. The advanced preset adds an expandable panel with additional filter fields (date pickers, range sliders, checkboxes).",
110
+ "layout_hints": {
111
+ "control_priority": "Search and primary filters should read as one coherent control band. Secondary filters belong in an expandable surface before they crowd the main row.",
112
+ "chip_rhythm": "Active-filter chips should wrap cleanly and remain clearly dismissible without turning the bar into a chip cloud.",
113
+ "mobile_behavior": "Collapsed mobile filters must preserve the same filter model as desktop, not introduce a different semantic ordering."
114
+ },
115
+ "responsive": {
116
+ "mobile": "Search input takes full width on its own row. Filter selects stack below or collapse into a 'Filters' button that opens a bottom sheet. Active filter chips wrap to multiple lines.",
117
+ "tablet": "Search and primary filters fit in one row. Less common filters in a collapsible section.",
118
+ "desktop": "All elements in a single horizontal row. Advanced filters expand inline below the bar."
119
+ },
120
+ "motion": {
121
+ "micro": "Filter chips, toggles, and dropdown affordances may animate softly on hover and selection over 120-180ms.",
122
+ "transitions": "Expanded filter panels and chip removals should animate over 150-240ms without making the bar feel noisy."
123
+ },
124
+ "interactions": [
125
+ "inline-edit",
126
+ "animate-on-mount",
127
+ "keyboard-navigation"
128
+ ],
129
+ "accessibility": {
130
+ "role": "search",
131
+ "aria-label": "Filter bar",
132
+ "keyboard": [
133
+ "Tab moves through search, filter, and apply/clear controls in logical order.",
134
+ "Arrow keys may move between segmented or tab-like filter controls."
135
+ ],
136
+ "announcements": [
137
+ "Active filter changes and result-count updates should be announced clearly."
138
+ ],
139
+ "focus_management": "Expanded filter surfaces should move focus into the panel and return it to the invoking control on close."
140
+ },
141
+ "composition": {
142
+ "FilterBar": "Row(d-control, full-width) > [SearchInput(d-control, icon: search) + FilterSelects > Select(d-control)[] + ActionButtons(d-interactive)]",
143
+ "ActiveFilters": "Row(gap-2) > FilterChip(d-annotation, removable)[]",
144
+ "AdvancedFilters": "Panel(d-surface, expandable) > [FilterRow > Select[] + SavedFilters > Button(variant: outline)[]]"
145
+ }
146
+ }
@@ -0,0 +1,115 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "footer",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Footer",
7
+ "description": "Page footer with link columns, social icons, and copyright notice.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Link",
14
+ "icon"
15
+ ],
16
+ "charts": []
17
+ }
18
+ },
19
+ "components": [
20
+ "Link",
21
+ "icon"
22
+ ],
23
+ "default_preset": "standard",
24
+ "presets": {
25
+ "standard": {
26
+ "description": "Multi-column footer with link groups, social icons, and copyright",
27
+ "components": [
28
+ "Link",
29
+ "icon"
30
+ ],
31
+ "layout": {
32
+ "layout": "stack",
33
+ "atoms": "_flex _col _gap8 _px6 _py8 _borderT",
34
+ "slots": {
35
+ "columns": "Grid of link groups: _grid _gc2 _md:gc4 _gap6",
36
+ "column-heading": "Group heading with _textsm _fontbold _fgmuted _uppercase _tracking[wider]",
37
+ "column-links": "Vertical list of links with _flex _col _gap2",
38
+ "bottom-bar": "Horizontal bar: logo/copyright left, social icons right with _flex _jcsb _aic",
39
+ "social-icons": "Row of social media icon links with _flex _gap3"
40
+ }
41
+ }
42
+ },
43
+ "simple": {
44
+ "description": "Single-row footer with links and copyright",
45
+ "components": [
46
+ "Link"
47
+ ],
48
+ "layout": {
49
+ "layout": "row",
50
+ "atoms": "_flex _aic _jcsb _px6 _py4 _borderT _fgmuted",
51
+ "slots": {
52
+ "links": "Horizontal footer links",
53
+ "copyright": "Copyright text"
54
+ }
55
+ }
56
+ }
57
+ },
58
+ "visual_brief": "Full-width footer section with a top border separating it from page content. The standard preset uses a multi-column grid layout: 3-4 columns of link groups, each headed by an uppercase, small, bold, muted label (e.g. 'Product', 'Company', 'Resources'). Links beneath each heading are regular-weight, muted text that brightens on hover. Below the columns, a bottom bar contains the logo or brand name on the left with a copyright line, and social media icon links (GitHub, Twitter, LinkedIn) on the right. The simple preset is a single horizontal row with inline links on one side and copyright on the other. Background uses the page surface color or a slightly darker shade.",
59
+ "responsive": {
60
+ "mobile": "Link columns stack to 2-column grid (gc2). Bottom bar stacks vertically — copyright above, social icons below, both centered. Padding reduces to px4 py6.",
61
+ "tablet": "Three or four columns depending on content. Bottom bar stays horizontal. Comfortable spacing.",
62
+ "desktop": "Full four-column grid with generous gap6 spacing. Bottom bar horizontal with logo left, social right. Full px6 py8 padding."
63
+ },
64
+ "layout_hints": {
65
+ "footer_priority": "Column groupings and utility links should read clearly before social or decorative elements. The footer should feel like a calm endpoint to the page, not a second hero.",
66
+ "bottom_bar_role": "Brand, copyright, and social actions belong in a restrained support band beneath the primary link grid.",
67
+ "mobile_translation": "When stacked, preserve the same information hierarchy so the footer remains scannable rather than collapsing into a dense wall of links."
68
+ },
69
+ "motion": {
70
+ "micro": "Links and social icons may brighten or underline subtly on hover and focus.",
71
+ "transitions": "Footer interactions should feel calm and understated, reinforcing that this is a utility surface rather than a marketing flourish."
72
+ },
73
+ "interactions": [
74
+ "hover-reveal",
75
+ "keyboard-navigation"
76
+ ],
77
+ "accessibility": {
78
+ "role": "contentinfo",
79
+ "aria-label": "Site footer",
80
+ "keyboard": [
81
+ "Footer links and social actions should follow a predictable top-to-bottom, left-to-right reading order."
82
+ ],
83
+ "announcements": [
84
+ "Link group headings and their links should be exposed semantically so the footer remains navigable without relying on column layout alone."
85
+ ]
86
+ },
87
+ "layout_hints": {
88
+ "footer_priority": "Column groupings and utility links should read clearly before social or decorative elements. The footer should feel like a calm endpoint to the page, not a second hero.",
89
+ "bottom_bar_role": "Brand, copyright, and social actions belong in a restrained support band beneath the primary link grid.",
90
+ "mobile_translation": "When stacked, preserve the same information hierarchy so the footer remains scannable rather than collapsing into a dense wall of links."
91
+ },
92
+ "motion": {
93
+ "micro": "Links and social icons may brighten or underline subtly on hover and focus.",
94
+ "transitions": "Footer interactions should feel calm and understated, reinforcing that this is a utility surface rather than a marketing flourish."
95
+ },
96
+ "accessibility": {
97
+ "role": "contentinfo",
98
+ "aria-label": "Site footer",
99
+ "keyboard": [
100
+ "Footer links and social actions should follow a predictable top-to-bottom, left-to-right reading order."
101
+ ],
102
+ "announcements": [
103
+ "Link group headings and their links should be exposed semantically so the footer remains navigable without relying on column layout alone."
104
+ ]
105
+ },
106
+ "default_layout": {
107
+ "layout": "stack",
108
+ "atoms": "_flex _col _gap8 _px6 _py8 _borderT",
109
+ "slots": {
110
+ "columns": "Grid of link groups",
111
+ "bottom-bar": "Logo/copyright and social icons",
112
+ "copyright": "Copyright notice"
113
+ }
114
+ }
115
+ }
@@ -0,0 +1,180 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "form-sections",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Form Sections",
7
+ "description": "Grouped form fields organized in labeled sections with validation",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Card",
14
+ "Input",
15
+ "Select",
16
+ "Switch",
17
+ "Checkbox",
18
+ "Button",
19
+ "Label",
20
+ "Textarea",
21
+ "RadioGroup"
22
+ ],
23
+ "charts": []
24
+ }
25
+ },
26
+ "components": [
27
+ "Card",
28
+ "Input",
29
+ "Select",
30
+ "Switch",
31
+ "Checkbox",
32
+ "Button",
33
+ "Label",
34
+ "Textarea",
35
+ "RadioGroup"
36
+ ],
37
+ "default_preset": "settings",
38
+ "presets": {
39
+ "settings": {
40
+ "description": "Vertical stack of sections, each with a title/description on the left and form fields on the right (2-column layout per section). Save button at bottom.",
41
+ "components": [
42
+ "Card",
43
+ "Input",
44
+ "Select",
45
+ "Switch",
46
+ "Button",
47
+ "Label",
48
+ "Textarea"
49
+ ],
50
+ "layout": {
51
+ "layout": "stack",
52
+ "atoms": "_flex _col _gap6 _p4",
53
+ "slots": {
54
+ "section": "Card with 2-column layout: labels left, fields right",
55
+ "section-title": "Section heading with _heading4 and description with _bodysm _fgmuted",
56
+ "field-group": "Grid of form fields with _grid _gc1 _lg:gc2 _gap4",
57
+ "actions": "Bottom-aligned save/cancel buttons"
58
+ }
59
+ }
60
+ },
61
+ "creation": {
62
+ "description": "Single-column wizard-like form with sections as steps. Progress indicator at top, prev/next buttons.",
63
+ "components": [
64
+ "Card",
65
+ "Input",
66
+ "Select",
67
+ "Checkbox",
68
+ "Button",
69
+ "Label",
70
+ "Textarea"
71
+ ],
72
+ "layout": {
73
+ "layout": "stack",
74
+ "atoms": "_flex _col _gap6 _p4 _mw[640px] _mx[auto]",
75
+ "slots": {
76
+ "progress": "Step indicator bar at top showing current/total steps",
77
+ "step-card": "Single Card containing current step fields",
78
+ "step-title": "Step heading with _heading4",
79
+ "field-group": "Vertical stack of form fields with _flex _col _gap4",
80
+ "navigation": "Prev/Next buttons at bottom"
81
+ }
82
+ }
83
+ },
84
+ "structured": {
85
+ "description": "Dense form with fieldsets, collapsible sections, and inline validation. Good for complex data entry.",
86
+ "components": [
87
+ "Card",
88
+ "Input",
89
+ "Select",
90
+ "Checkbox",
91
+ "RadioGroup",
92
+ "Button",
93
+ "Label",
94
+ "Textarea"
95
+ ],
96
+ "layout": {
97
+ "layout": "stack",
98
+ "atoms": "_flex _col _gap4 _p4",
99
+ "slots": {
100
+ "fieldset": "Collapsible Card section with border and legend-style title",
101
+ "field-row": "Horizontal field groups with _grid _gc2 _gap4 for dense layout",
102
+ "inline-validation": "Error text below fields with _textsm _fgdestructive",
103
+ "actions": "Button group with save, cancel, reset"
104
+ }
105
+ }
106
+ }
107
+ },
108
+ "visual_brief": "Vertical stack of grouped form fields. Each section has a heading/description on the left and form controls on the right (2-column at desktop, stacked on mobile). Labels above fields. Max-width 640px. Single card wrapping or no card. Save/cancel buttons at bottom.",
109
+ "layout_hints": {
110
+ "label_position": "stacked",
111
+ "note": "Labels go ABOVE their field, not side-by-side. This prevents the label-field gap problem at wide viewports.",
112
+ "max_width": "Form content should be constrained to max-width: 40rem (640px). Full-width forms are hard to read.",
113
+ "section_grouping": "Group related fields under section headers. Use a SINGLE d-surface card for the entire form, OR no card at all. Do NOT wrap each section in its own separate card.",
114
+ "icon_placement": "Section header icons render INLINE with the heading text (icon left of heading, vertically centered), not floating outside the card border.",
115
+ "select_styling": "Apply d-control to ALL form elements including <select>. Add appearance: none and a custom SVG chevron for consistent styling.",
116
+ "textarea": "Textareas should have min-height: 6rem to visually differentiate from single-line inputs."
117
+ },
118
+ "motion": {
119
+ "micro": "Collapsible sections expand/collapse with 250ms ease height transition. Validation errors shake the invalid field with a 300ms horizontal oscillation (translateX +/-4px).",
120
+ "transitions": "Section content fades in on expand with 200ms ease. Step transitions in creation preset cross-fade over 250ms."
121
+ },
122
+ "interactions": [
123
+ "animate-on-mount",
124
+ "inline-edit",
125
+ "keyboard-navigation"
126
+ ],
127
+ "responsive": {
128
+ "mobile": "Collapse all sections to a single column. Section titles stack above fields, actions become full-width when helpful, and dense structured layouts reduce to simple vertical groups.",
129
+ "tablet": "Preserve the section rhythm while allowing field groups to split into two columns only when labels and controls still read clearly.",
130
+ "desktop": "Use the intended multi-column section layout, but keep the overall form constrained in width so long label or helper text blocks remain readable."
131
+ },
132
+ "accessibility": {
133
+ "role": "form",
134
+ "aria-label": "Form",
135
+ "keyboard": [
136
+ "Tab navigates between form fields",
137
+ "Shift+Tab navigates backwards between fields",
138
+ "Enter submits when focus is on submit button",
139
+ "Space toggles checkboxes and switches",
140
+ "Arrow keys navigate within radio groups"
141
+ ],
142
+ "announcements": [
143
+ "Validation error: {field} — {message}",
144
+ "Section {name} expanded",
145
+ "Section {name} collapsed",
146
+ "Form submitted successfully"
147
+ ],
148
+ "focus_management": "First invalid field receives focus on failed validation. On section expand, focus moves to first field in the section. On step change in creation preset, focus moves to first field of new step."
149
+ },
150
+ "default_layout": {
151
+ "layout": "stack",
152
+ "atoms": "_flex _col _gap6 _p4",
153
+ "slots": {
154
+ "section": "Card with 2-column layout: labels left, fields right",
155
+ "section-title": "Section heading with _heading4 and description",
156
+ "field-group": "Grid of form fields with _grid _gc1 _lg:gc2 _gap4",
157
+ "actions": "Bottom-aligned save/cancel buttons"
158
+ }
159
+ },
160
+ "io": {
161
+ "consumes": [
162
+ "data"
163
+ ],
164
+ "produces": [
165
+ "form-data"
166
+ ],
167
+ "actions": [
168
+ "save",
169
+ "cancel",
170
+ "reset"
171
+ ]
172
+ },
173
+ "composition": {
174
+ "FormSections": "Container(d-section, flex-col, gap-6) > [Section[] + ActionButtons]",
175
+ "Section": "Card(d-surface) > [SectionTitle(heading4) + Description?(text-muted) + FieldGroup(d-control, grid: 1/2-col)]",
176
+ "FieldGroup": "Grid > Field[]",
177
+ "Field": "Stack(flex-col) > [Label(font-medium) + Input(d-control) + ErrorText?(d-annotation, text-destructive)]",
178
+ "ActionButtons": "Row(d-interactive) > [SaveButton(variant: primary) + CancelButton(variant: ghost)]"
179
+ }
180
+ }