makersclaw 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD-PARTY-NOTICES.md +180 -0
- package/package.json +3 -2
- package/r/annotate.json +62 -0
- package/r/approval-request.json +52 -0
- package/r/audio-player.json +74 -0
- package/r/auth-form.json +55 -0
- package/r/board.json +10 -6
- package/r/calendar-view.json +105 -0
- package/r/cart.json +62 -0
- package/r/chart.json +83 -0
- package/r/chat.json +95 -0
- package/r/code-editor.json +94 -0
- package/r/comment-box.json +64 -0
- package/r/contact-section.json +53 -0
- package/r/core.json +205 -8
- package/r/csv-import.json +63 -0
- package/r/data-table.json +69 -0
- package/r/diagram.json +74 -0
- package/r/doc-editor.json +82 -0
- package/r/doc-page.json +61 -0
- package/r/email-render.json +73 -0
- package/r/faq.json +50 -0
- package/r/file-upload.json +54 -0
- package/r/flow-canvas.json +93 -0
- package/r/footer.json +52 -0
- package/r/gantt.json +70 -0
- package/r/job-panel.json +12 -7
- package/r/json-editor.json +66 -0
- package/r/map.json +89 -0
- package/r/menubar.json +52 -0
- package/r/mind-map.json +67 -0
- package/r/navigation-menu.json +52 -0
- package/r/order-detail.json +54 -0
- package/r/org-chart.json +66 -0
- package/r/page-builder.json +105 -0
- package/r/payment-methods.json +51 -0
- package/r/pdf-document.json +79 -0
- package/r/pdf-viewer.json +88 -0
- package/r/product-detail.json +76 -0
- package/r/product-grid.json +65 -0
- package/r/record-form.json +67 -0
- package/r/record-notes.json +55 -0
- package/r/registry.json +3411 -29
- package/r/search-dialog.json +51 -0
- package/r/settings-list.json +66 -0
- package/r/setup-checklist.json +51 -0
- package/r/share-dialog.json +52 -0
- package/r/sidebar.json +69 -0
- package/r/signature-pad.json +72 -0
- package/r/sketch-canvas.json +99 -0
- package/r/spreadsheet.json +90 -0
- package/r/stat-cards.json +66 -0
- package/r/task-list.json +63 -0
- package/r/task-model.json +98 -0
- package/r/testimonials.json +52 -0
- package/r/transaction-list.json +53 -0
- package/r/whiteboard.json +66 -0
- package/registry/blocks/annotate/README.md +179 -0
- package/registry/blocks/annotate/annotate-data.js +250 -0
- package/registry/blocks/annotate/annotate.jsx +646 -0
- package/registry/blocks/annotate/block.json +10 -0
- package/registry/blocks/annotate/demo.jsx +135 -0
- package/registry/blocks/annotate/index.js +15 -0
- package/registry/blocks/approval-request/README.md +116 -0
- package/registry/blocks/approval-request/approval-request.jsx +386 -0
- package/registry/blocks/approval-request/block.json +10 -0
- package/registry/blocks/approval-request/demo.jsx +127 -0
- package/registry/blocks/approval-request/index.js +4 -0
- package/registry/blocks/audio-player/README.md +167 -0
- package/registry/blocks/audio-player/audio-player.jsx +623 -0
- package/registry/blocks/audio-player/block.json +14 -0
- package/registry/blocks/audio-player/colors.js +109 -0
- package/registry/blocks/audio-player/demo.jsx +209 -0
- package/registry/blocks/audio-player/index.js +6 -0
- package/registry/blocks/audio-player/time.js +67 -0
- package/registry/blocks/audio-player/wavesurfer.js +9 -0
- package/registry/blocks/auth-form/README.md +126 -0
- package/registry/blocks/auth-form/auth-form.jsx +568 -0
- package/registry/blocks/auth-form/block.json +10 -0
- package/registry/blocks/auth-form/demo.jsx +131 -0
- package/registry/blocks/auth-form/index.js +3 -0
- package/registry/blocks/board/README.md +55 -5
- package/registry/blocks/board/block.json +2 -2
- package/registry/blocks/board/board.jsx +230 -86
- package/registry/blocks/board/demo.jsx +103 -24
- package/registry/blocks/calendar-view/README.md +180 -0
- package/registry/blocks/calendar-view/agenda.jsx +147 -0
- package/registry/blocks/calendar-view/block.json +76 -0
- package/registry/blocks/calendar-view/calendar-model.js +442 -0
- package/registry/blocks/calendar-view/calendar.jsx +627 -0
- package/registry/blocks/calendar-view/demo.jsx +195 -0
- package/registry/blocks/calendar-view/draft.jsx +49 -0
- package/registry/blocks/calendar-view/index.js +39 -0
- package/registry/blocks/calendar-view/month.jsx +346 -0
- package/registry/blocks/calendar-view/paint.js +69 -0
- package/registry/blocks/calendar-view/time-grid.jsx +527 -0
- package/registry/blocks/calendar-view/tray.jsx +87 -0
- package/registry/blocks/cart/README.md +146 -0
- package/registry/blocks/cart/block.json +10 -0
- package/registry/blocks/cart/cart.jsx +597 -0
- package/registry/blocks/cart/demo.jsx +98 -0
- package/registry/blocks/cart/index.js +4 -0
- package/registry/blocks/cart/money.js +28 -0
- package/registry/blocks/chart/README.md +316 -0
- package/registry/blocks/chart/block.json +10 -0
- package/registry/blocks/chart/cartesian.jsx +642 -0
- package/registry/blocks/chart/core.jsx +262 -0
- package/registry/blocks/chart/demo.jsx +357 -0
- package/registry/blocks/chart/heatmap.jsx +336 -0
- package/registry/blocks/chart/index.js +8 -0
- package/registry/blocks/chart/pie.jsx +245 -0
- package/registry/blocks/chart/sparkline.jsx +88 -0
- package/registry/blocks/chat/README.md +273 -0
- package/registry/blocks/chat/attachment.jsx +95 -0
- package/registry/blocks/chat/block.json +10 -0
- package/registry/blocks/chat/chat.jsx +132 -0
- package/registry/blocks/chat/composer.jsx +364 -0
- package/registry/blocks/chat/demo.jsx +578 -0
- package/registry/blocks/chat/header.jsx +34 -0
- package/registry/blocks/chat/index.js +9 -0
- package/registry/blocks/chat/message.jsx +450 -0
- package/registry/blocks/chat/scroller.jsx +247 -0
- package/registry/blocks/chat/text.jsx +104 -0
- package/registry/blocks/code-editor/README.md +210 -0
- package/registry/blocks/code-editor/block.json +22 -0
- package/registry/blocks/code-editor/code-editor.jsx +534 -0
- package/registry/blocks/code-editor/codemirror.js +38 -0
- package/registry/blocks/code-editor/demo.jsx +205 -0
- package/registry/blocks/code-editor/index.js +8 -0
- package/registry/blocks/code-editor/json.js +317 -0
- package/registry/blocks/code-editor/sql.js +136 -0
- package/registry/blocks/code-editor/text.js +101 -0
- package/registry/blocks/code-editor/theme.js +186 -0
- package/registry/blocks/comment-box/README.md +123 -0
- package/registry/blocks/comment-box/block.json +10 -0
- package/registry/blocks/comment-box/comment-body.jsx +217 -0
- package/registry/blocks/comment-box/comment-box.jsx +198 -0
- package/registry/blocks/comment-box/comment-time.jsx +77 -0
- package/registry/blocks/comment-box/demo.jsx +141 -0
- package/registry/blocks/comment-box/index.js +8 -0
- package/registry/blocks/contact-section/README.md +152 -0
- package/registry/blocks/contact-section/block.json +11 -0
- package/registry/blocks/contact-section/contact-section.jsx +509 -0
- package/registry/blocks/contact-section/demo.jsx +93 -0
- package/registry/blocks/contact-section/index.js +4 -0
- package/registry/blocks/csv-import/README.md +133 -0
- package/registry/blocks/csv-import/block.json +13 -0
- package/registry/blocks/csv-import/csv-import.jsx +479 -0
- package/registry/blocks/csv-import/demo.jsx +106 -0
- package/registry/blocks/csv-import/import.js +200 -0
- package/registry/blocks/csv-import/index.js +7 -0
- package/registry/blocks/data-table/README.md +386 -0
- package/registry/blocks/data-table/block.json +10 -0
- package/registry/blocks/data-table/data-table.jsx +1164 -0
- package/registry/blocks/data-table/demo.jsx +588 -0
- package/registry/blocks/data-table/index.js +5 -0
- package/registry/blocks/data-table/model.js +169 -0
- package/registry/blocks/diagram/README.md +108 -0
- package/registry/blocks/diagram/block.json +13 -0
- package/registry/blocks/diagram/demo.jsx +113 -0
- package/registry/blocks/diagram/diagram.jsx +481 -0
- package/registry/blocks/diagram/index.js +7 -0
- package/registry/blocks/diagram/mermaid.js +52 -0
- package/registry/blocks/diagram/palette.js +313 -0
- package/registry/blocks/diagram/source.js +98 -0
- package/registry/blocks/doc-editor/README.md +215 -0
- package/registry/blocks/doc-editor/block.json +15 -0
- package/registry/blocks/doc-editor/demo.jsx +225 -0
- package/registry/blocks/doc-editor/doc-editor.jsx +291 -0
- package/registry/blocks/doc-editor/doc.js +309 -0
- package/registry/blocks/doc-editor/index.js +7 -0
- package/registry/blocks/doc-editor/schema.jsx +56 -0
- package/registry/blocks/doc-editor/shadcn-classes.js +110 -0
- package/registry/blocks/doc-editor/theme.js +82 -0
- package/registry/blocks/doc-page/README.md +119 -0
- package/registry/blocks/doc-page/autosave.js +104 -0
- package/registry/blocks/doc-page/block.json +10 -0
- package/registry/blocks/doc-page/demo.jsx +137 -0
- package/registry/blocks/doc-page/doc-page.jsx +276 -0
- package/registry/blocks/doc-page/index.js +4 -0
- package/registry/blocks/email-render/README.md +151 -0
- package/registry/blocks/email-render/block.json +14 -0
- package/registry/blocks/email-render/demo.jsx +153 -0
- package/registry/blocks/email-render/doc-email.jsx +210 -0
- package/registry/blocks/email-render/email.jsx +221 -0
- package/registry/blocks/email-render/index.js +10 -0
- package/registry/blocks/email-render/render.js +50 -0
- package/registry/blocks/email-render/theme.js +215 -0
- package/registry/blocks/faq/README.md +101 -0
- package/registry/blocks/faq/block.json +11 -0
- package/registry/blocks/faq/demo.jsx +89 -0
- package/registry/blocks/faq/faq.jsx +220 -0
- package/registry/blocks/faq/index.js +4 -0
- package/registry/blocks/file-upload/README.md +138 -0
- package/registry/blocks/file-upload/block.json +10 -0
- package/registry/blocks/file-upload/demo.jsx +204 -0
- package/registry/blocks/file-upload/file-upload.jsx +635 -0
- package/registry/blocks/file-upload/index.js +4 -0
- package/registry/blocks/flow-canvas/README.md +420 -0
- package/registry/blocks/flow-canvas/block.json +13 -0
- package/registry/blocks/flow-canvas/board.js +819 -0
- package/registry/blocks/flow-canvas/chrome.jsx +649 -0
- package/registry/blocks/flow-canvas/context.jsx +35 -0
- package/registry/blocks/flow-canvas/demo.jsx +249 -0
- package/registry/blocks/flow-canvas/edges.jsx +107 -0
- package/registry/blocks/flow-canvas/flow-canvas.jsx +1329 -0
- package/registry/blocks/flow-canvas/index.js +41 -0
- package/registry/blocks/flow-canvas/nodes.jsx +392 -0
- package/registry/blocks/flow-canvas/theme.js +174 -0
- package/registry/blocks/footer/README.md +133 -0
- package/registry/blocks/footer/block.json +11 -0
- package/registry/blocks/footer/demo.jsx +119 -0
- package/registry/blocks/footer/footer.jsx +406 -0
- package/registry/blocks/footer/index.js +4 -0
- package/registry/blocks/gantt/README.md +220 -0
- package/registry/blocks/gantt/block.json +10 -0
- package/registry/blocks/gantt/demo.jsx +148 -0
- package/registry/blocks/gantt/gantt.jsx +923 -0
- package/registry/blocks/gantt/index.js +7 -0
- package/registry/blocks/gantt/rows.jsx +468 -0
- package/registry/blocks/gantt/schedule.js +278 -0
- package/registry/blocks/job-panel/README.md +80 -0
- package/registry/blocks/job-panel/block.json +3 -3
- package/registry/blocks/job-panel/demo.jsx +230 -3
- package/registry/blocks/job-panel/job-panel.jsx +169 -3
- package/registry/blocks/json-editor/README.md +133 -0
- package/registry/blocks/json-editor/block.json +10 -0
- package/registry/blocks/json-editor/demo.jsx +92 -0
- package/registry/blocks/json-editor/index.js +7 -0
- package/registry/blocks/json-editor/json-editor.jsx +305 -0
- package/registry/blocks/json-editor/json-tree.jsx +393 -0
- package/registry/blocks/json-editor/tree.js +225 -0
- package/registry/blocks/map/README.md +221 -0
- package/registry/blocks/map/block.json +14 -0
- package/registry/blocks/map/demo.jsx +201 -0
- package/registry/blocks/map/geo.js +198 -0
- package/registry/blocks/map/index.js +8 -0
- package/registry/blocks/map/list.jsx +128 -0
- package/registry/blocks/map/map-view.jsx +715 -0
- package/registry/blocks/map/maplibre.js +30 -0
- package/registry/blocks/map/marks.jsx +146 -0
- package/registry/blocks/map/theme.js +142 -0
- package/registry/blocks/menubar/README.md +109 -0
- package/registry/blocks/menubar/block.json +10 -0
- package/registry/blocks/menubar/demo.jsx +128 -0
- package/registry/blocks/menubar/index.js +4 -0
- package/registry/blocks/menubar/menubar.jsx +199 -0
- package/registry/blocks/mind-map/README.md +206 -0
- package/registry/blocks/mind-map/block.json +10 -0
- package/registry/blocks/mind-map/demo.jsx +103 -0
- package/registry/blocks/mind-map/index.js +31 -0
- package/registry/blocks/mind-map/mind-map.jsx +1125 -0
- package/registry/blocks/mind-map/topic.jsx +143 -0
- package/registry/blocks/mind-map/tree.js +645 -0
- package/registry/blocks/navigation-menu/README.md +124 -0
- package/registry/blocks/navigation-menu/block.json +10 -0
- package/registry/blocks/navigation-menu/demo.jsx +84 -0
- package/registry/blocks/navigation-menu/index.js +4 -0
- package/registry/blocks/navigation-menu/navigation-menu.jsx +448 -0
- package/registry/blocks/order-detail/README.md +109 -0
- package/registry/blocks/order-detail/block.json +10 -0
- package/registry/blocks/order-detail/demo.jsx +88 -0
- package/registry/blocks/order-detail/index.js +4 -0
- package/registry/blocks/order-detail/order-detail.jsx +354 -0
- package/registry/blocks/org-chart/README.md +145 -0
- package/registry/blocks/org-chart/block.json +10 -0
- package/registry/blocks/org-chart/demo.jsx +94 -0
- package/registry/blocks/org-chart/index.js +7 -0
- package/registry/blocks/org-chart/org-chart.jsx +631 -0
- package/registry/blocks/org-chart/org.js +245 -0
- package/registry/blocks/org-chart/person.jsx +96 -0
- package/registry/blocks/page-builder/README.md +257 -0
- package/registry/blocks/page-builder/block.json +14 -0
- package/registry/blocks/page-builder/demo.jsx +145 -0
- package/registry/blocks/page-builder/grapes.js +18 -0
- package/registry/blocks/page-builder/index.js +11 -0
- package/registry/blocks/page-builder/page-builder.jsx +704 -0
- package/registry/blocks/page-builder/page-view.jsx +33 -0
- package/registry/blocks/page-builder/page.js +118 -0
- package/registry/blocks/page-builder/panels.jsx +588 -0
- package/registry/blocks/page-builder/sections.js +209 -0
- package/registry/blocks/page-builder/theme.js +87 -0
- package/registry/blocks/page-builder/thumbs.jsx +189 -0
- package/registry/blocks/page-builder/tokens.js +329 -0
- package/registry/blocks/payment-methods/README.md +104 -0
- package/registry/blocks/payment-methods/block.json +10 -0
- package/registry/blocks/payment-methods/demo.jsx +71 -0
- package/registry/blocks/payment-methods/index.js +4 -0
- package/registry/blocks/payment-methods/payment-methods.jsx +302 -0
- package/registry/blocks/pdf-document/README.md +213 -0
- package/registry/blocks/pdf-document/block.json +13 -0
- package/registry/blocks/pdf-document/demo.jsx +136 -0
- package/registry/blocks/pdf-document/index.js +33 -0
- package/registry/blocks/pdf-document/money.js +83 -0
- package/registry/blocks/pdf-document/pdf-document.jsx +144 -0
- package/registry/blocks/pdf-document/primitives.jsx +271 -0
- package/registry/blocks/pdf-document/quote.jsx +179 -0
- package/registry/blocks/pdf-document/theme.js +193 -0
- package/registry/blocks/pdf-viewer/README.md +191 -0
- package/registry/blocks/pdf-viewer/block.json +14 -0
- package/registry/blocks/pdf-viewer/demo.jsx +252 -0
- package/registry/blocks/pdf-viewer/helpers.js +270 -0
- package/registry/blocks/pdf-viewer/index.js +8 -0
- package/registry/blocks/pdf-viewer/notes.jsx +195 -0
- package/registry/blocks/pdf-viewer/pdf-viewer.jsx +1368 -0
- package/registry/blocks/pdf-viewer/pdfjs.js +37 -0
- package/registry/blocks/pdf-viewer/ssr-shim-end.js +6 -0
- package/registry/blocks/pdf-viewer/ssr-shim.js +44 -0
- package/registry/blocks/product-detail/README.md +217 -0
- package/registry/blocks/product-detail/block.json +10 -0
- package/registry/blocks/product-detail/demo.jsx +233 -0
- package/registry/blocks/product-detail/index.js +7 -0
- package/registry/blocks/product-detail/price.jsx +115 -0
- package/registry/blocks/product-detail/product-detail.jsx +348 -0
- package/registry/blocks/product-detail/product-media.jsx +102 -0
- package/registry/blocks/product-detail/product-options.jsx +144 -0
- package/registry/blocks/product-grid/README.md +162 -0
- package/registry/blocks/product-grid/block.json +10 -0
- package/registry/blocks/product-grid/demo.jsx +255 -0
- package/registry/blocks/product-grid/index.js +5 -0
- package/registry/blocks/product-grid/product-card.jsx +232 -0
- package/registry/blocks/product-grid/product-grid.jsx +235 -0
- package/registry/blocks/record-form/README.md +196 -0
- package/registry/blocks/record-form/block.json +10 -0
- package/registry/blocks/record-form/demo.jsx +525 -0
- package/registry/blocks/record-form/index.js +4 -0
- package/registry/blocks/record-form/record-fields.jsx +457 -0
- package/registry/blocks/record-form/record-form.jsx +415 -0
- package/registry/blocks/record-form/rules.js +81 -0
- package/registry/blocks/record-notes/README.md +139 -0
- package/registry/blocks/record-notes/block.json +10 -0
- package/registry/blocks/record-notes/demo.jsx +179 -0
- package/registry/blocks/record-notes/index.js +4 -0
- package/registry/blocks/record-notes/record-notes.jsx +266 -0
- package/registry/blocks/search-dialog/README.md +108 -0
- package/registry/blocks/search-dialog/block.json +10 -0
- package/registry/blocks/search-dialog/demo.jsx +116 -0
- package/registry/blocks/search-dialog/index.js +3 -0
- package/registry/blocks/search-dialog/search-dialog.jsx +235 -0
- package/registry/blocks/settings-list/README.md +171 -0
- package/registry/blocks/settings-list/block.json +10 -0
- package/registry/blocks/settings-list/demo.jsx +333 -0
- package/registry/blocks/settings-list/index.js +4 -0
- package/registry/blocks/settings-list/row-state.jsx +93 -0
- package/registry/blocks/settings-list/settings-list.jsx +349 -0
- package/registry/blocks/settings-list/settings-matrix.jsx +118 -0
- package/registry/blocks/setup-checklist/README.md +142 -0
- package/registry/blocks/setup-checklist/block.json +10 -0
- package/registry/blocks/setup-checklist/demo.jsx +159 -0
- package/registry/blocks/setup-checklist/index.js +4 -0
- package/registry/blocks/setup-checklist/setup-checklist.jsx +446 -0
- package/registry/blocks/share-dialog/README.md +113 -0
- package/registry/blocks/share-dialog/block.json +10 -0
- package/registry/blocks/share-dialog/demo.jsx +140 -0
- package/registry/blocks/share-dialog/index.js +3 -0
- package/registry/blocks/share-dialog/share-dialog.jsx +384 -0
- package/registry/blocks/sidebar/README.md +190 -0
- package/registry/blocks/sidebar/block.json +43 -0
- package/registry/blocks/sidebar/demo.jsx +577 -0
- package/registry/blocks/sidebar/index.js +4 -0
- package/registry/blocks/sidebar/sidebar-panel.jsx +149 -0
- package/registry/blocks/sidebar/sidebar.jsx +864 -0
- package/registry/blocks/signature-pad/README.md +137 -0
- package/registry/blocks/signature-pad/block.json +13 -0
- package/registry/blocks/signature-pad/colors.js +115 -0
- package/registry/blocks/signature-pad/demo.jsx +94 -0
- package/registry/blocks/signature-pad/index.js +6 -0
- package/registry/blocks/signature-pad/pad.js +7 -0
- package/registry/blocks/signature-pad/signature-pad.jsx +434 -0
- package/registry/blocks/signature-pad/signature.js +68 -0
- package/registry/blocks/sketch-canvas/README.md +280 -0
- package/registry/blocks/sketch-canvas/block.json +13 -0
- package/registry/blocks/sketch-canvas/demo.jsx +159 -0
- package/registry/blocks/sketch-canvas/excalidraw.js +40 -0
- package/registry/blocks/sketch-canvas/index.js +9 -0
- package/registry/blocks/sketch-canvas/palette.js +226 -0
- package/registry/blocks/sketch-canvas/sketch-canvas.jsx +1188 -0
- package/registry/blocks/sketch-canvas/sketch.js +179 -0
- package/registry/blocks/sketch-canvas/ssr-shim-end.js +6 -0
- package/registry/blocks/sketch-canvas/ssr-shim.js +45 -0
- package/registry/blocks/sketch-canvas/stamps.js +104 -0
- package/registry/blocks/sketch-canvas/theme.js +131 -0
- package/registry/blocks/spreadsheet/README.md +307 -0
- package/registry/blocks/spreadsheet/block.json +13 -0
- package/registry/blocks/spreadsheet/cells.jsx +455 -0
- package/registry/blocks/spreadsheet/chrome.jsx +325 -0
- package/registry/blocks/spreadsheet/demo.jsx +177 -0
- package/registry/blocks/spreadsheet/grid.js +387 -0
- package/registry/blocks/spreadsheet/index.js +34 -0
- package/registry/blocks/spreadsheet/spreadsheet.jsx +1732 -0
- package/registry/blocks/spreadsheet/types.js +473 -0
- package/registry/blocks/stat-cards/README.md +173 -0
- package/registry/blocks/stat-cards/block.json +10 -0
- package/registry/blocks/stat-cards/demo.jsx +257 -0
- package/registry/blocks/stat-cards/index.js +4 -0
- package/registry/blocks/stat-cards/stat-cards.jsx +307 -0
- package/registry/blocks/stat-cards/usage.jsx +243 -0
- package/registry/blocks/task-list/README.md +176 -0
- package/registry/blocks/task-list/block.json +10 -0
- package/registry/blocks/task-list/demo.jsx +134 -0
- package/registry/blocks/task-list/index.js +5 -0
- package/registry/blocks/task-list/task-list.jsx +907 -0
- package/registry/blocks/task-model/README.md +455 -0
- package/registry/blocks/task-model/block.json +167 -0
- package/registry/blocks/task-model/changes.js +89 -0
- package/registry/blocks/task-model/dates.js +371 -0
- package/registry/blocks/task-model/demo.jsx +215 -0
- package/registry/blocks/task-model/dnd.jsx +240 -0
- package/registry/blocks/task-model/index.js +97 -0
- package/registry/blocks/task-model/model.js +919 -0
- package/registry/blocks/task-model/parts.jsx +449 -0
- package/registry/blocks/task-model/toolbar.jsx +271 -0
- package/registry/blocks/testimonials/README.md +139 -0
- package/registry/blocks/testimonials/block.json +11 -0
- package/registry/blocks/testimonials/demo.jsx +137 -0
- package/registry/blocks/testimonials/index.js +4 -0
- package/registry/blocks/testimonials/testimonials.jsx +430 -0
- package/registry/blocks/transaction-list/README.md +126 -0
- package/registry/blocks/transaction-list/block.json +10 -0
- package/registry/blocks/transaction-list/demo.jsx +79 -0
- package/registry/blocks/transaction-list/index.js +4 -0
- package/registry/blocks/transaction-list/transaction-list.jsx +383 -0
- package/registry/blocks/whiteboard/README.md +179 -0
- package/registry/blocks/whiteboard/block.json +10 -0
- package/registry/blocks/whiteboard/demo.jsx +169 -0
- package/registry/blocks/whiteboard/index.js +6 -0
- package/registry/blocks/whiteboard/templates.js +150 -0
- package/registry/blocks/whiteboard/whiteboard.jsx +721 -0
- package/src/install.mjs +18 -0
- package/src/shadcn.mjs +8 -0
- package/templates/next/files/README.md +145 -11
- package/templates/next/files/app/globals.css +55 -4
- package/templates/next/files/check/run.mjs +3 -3
- package/templates/next/files/components/ui/avatar.jsx +141 -0
- package/templates/next/files/components/ui/breadcrumb.jsx +149 -0
- package/templates/next/files/components/ui/button-group.jsx +70 -0
- package/templates/next/files/components/ui/button.jsx +132 -12
- package/templates/next/files/components/ui/calendar.jsx +609 -0
- package/templates/next/files/components/ui/carousel.jsx +281 -0
- package/templates/next/files/components/ui/collapsible.jsx +208 -0
- package/templates/next/files/components/ui/combobox.jsx +608 -0
- package/templates/next/files/components/ui/command.jsx +577 -0
- package/templates/next/files/components/ui/context-menu.jsx +191 -0
- package/templates/next/files/components/ui/date-picker.jsx +360 -0
- package/templates/next/files/components/ui/distribution.jsx +117 -0
- package/templates/next/files/components/ui/feedback.jsx +143 -0
- package/templates/next/files/components/ui/field.jsx +115 -3
- package/templates/next/files/components/ui/file-input.jsx +234 -0
- package/templates/next/files/components/ui/icon.jsx +130 -8
- package/templates/next/files/components/ui/image.jsx +143 -0
- package/templates/next/files/components/ui/index.js +47 -2
- package/templates/next/files/components/ui/input-group.jsx +213 -0
- package/templates/next/files/components/ui/input-otp.jsx +170 -0
- package/templates/next/files/components/ui/item.jsx +206 -0
- package/templates/next/files/components/ui/menu.jsx +454 -82
- package/templates/next/files/components/ui/notice.jsx +126 -14
- package/templates/next/files/components/ui/pagination.jsx +156 -0
- package/templates/next/files/components/ui/popover.jsx +284 -0
- package/templates/next/files/components/ui/radio.jsx +193 -0
- package/templates/next/files/components/ui/rating.jsx +131 -0
- package/templates/next/files/components/ui/resizable.jsx +338 -0
- package/templates/next/files/components/ui/scroll-area.jsx +123 -0
- package/templates/next/files/components/ui/separator.jsx +119 -0
- package/templates/next/files/components/ui/sheet.jsx +96 -11
- package/templates/next/files/components/ui/slider.jsx +174 -0
- package/templates/next/files/components/ui/stat.jsx +574 -0
- package/templates/next/files/components/ui/steps.jsx +338 -0
- package/templates/next/files/components/ui/swatch.jsx +33 -0
- package/templates/next/files/components/ui/table.jsx +130 -0
- package/templates/next/files/components/ui/toast.jsx +440 -0
- package/templates/next/files/components/ui/toggle.jsx +195 -0
- package/templates/next/files/components/ui/tooltip.jsx +270 -0
- package/templates/next/template.json +264 -8
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { cx } from "./cx";
|
|
2
|
+
|
|
3
|
+
// ButtonGroup — buttons that belong together drawn as one attached
|
|
4
|
+
// piece: a split "Save | ▾", a pager "‹ 2 of 9 ›", a zoom "− 100% +".
|
|
5
|
+
// It only reshapes its children (square inner corners, one shared border
|
|
6
|
+
// between neighbours); each child stays the Button, IconButton or Menu
|
|
7
|
+
// it is, with its own behaviour and focus. Server-safe (no hooks).
|
|
8
|
+
//
|
|
9
|
+
// orientation horizontal (the default) · vertical
|
|
10
|
+
// size md · sm — match the buttons inside
|
|
11
|
+
// variant secondary (the default) · primary · quiet — how a Menu's
|
|
12
|
+
// trigger inside is drawn, to match its neighbours (the
|
|
13
|
+
// Buttons keep their own variant)
|
|
14
|
+
// aria-label what the group is for ("Pagination", "Text alignment")
|
|
15
|
+
//
|
|
16
|
+
// Secondary buttons share their borders, so they need no separator.
|
|
17
|
+
// Primary and quiet buttons have no visible border: put a
|
|
18
|
+
// <ButtonGroupSeparator /> between them. A group is for a few related
|
|
19
|
+
// actions — a toolbar with sections is several groups with a gap.
|
|
20
|
+
|
|
21
|
+
const ORIENT = {
|
|
22
|
+
horizontal: cx(
|
|
23
|
+
"inline-flex flex-row items-stretch",
|
|
24
|
+
"[&>:where(:not([popover]))]:rounded-none [&>:first-child]:rounded-l-md [&>:last-child]:rounded-r-md [&>:has(+[popover]:last-child)]:rounded-r-md",
|
|
25
|
+
"[&>:not(:first-child):not([popover])]:border-l-0 [&>[role=separator]]:w-px",
|
|
26
|
+
),
|
|
27
|
+
vertical: cx(
|
|
28
|
+
"inline-flex flex-col items-stretch",
|
|
29
|
+
"[&>:where(:not([popover]))]:rounded-none [&>:first-child]:rounded-t-md [&>:last-child]:rounded-b-md [&>:has(+[popover]:last-child)]:rounded-b-md",
|
|
30
|
+
"[&>:not(:first-child):not([popover])]:border-t-0 [&>[role=separator]]:h-px",
|
|
31
|
+
),
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
// A Menu renders a bare trigger; inside a group it wears its neighbours' look.
|
|
35
|
+
const MENU = {
|
|
36
|
+
secondary: "[&>[aria-haspopup]]:border [&>[aria-haspopup]]:border-border [&>[aria-haspopup]]:bg-secondary [&>[aria-haspopup]]:text-secondary-foreground [&>[aria-haspopup]]:hover:bg-accent",
|
|
37
|
+
primary: "[&>[aria-haspopup]]:border [&>[aria-haspopup]]:border-transparent [&>[aria-haspopup]]:bg-primary [&>[aria-haspopup]]:text-primary-foreground [&>[aria-haspopup]]:hover:bg-primary [&>[aria-haspopup]]:hover:opacity-90",
|
|
38
|
+
quiet: "[&>[aria-haspopup]]:border [&>[aria-haspopup]]:border-transparent",
|
|
39
|
+
};
|
|
40
|
+
const MENU_SIZE = {
|
|
41
|
+
md: "[&>[aria-haspopup]]:min-h-11 [&>[aria-haspopup]]:min-w-11",
|
|
42
|
+
sm: "[&>[aria-haspopup]]:min-h-9 [&>[aria-haspopup]]:min-w-9",
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export function ButtonGroup({ orientation = "horizontal", size = "md", variant = "secondary", className, children, ...rest }) {
|
|
46
|
+
return (
|
|
47
|
+
<div
|
|
48
|
+
role="group"
|
|
49
|
+
aria-orientation={orientation === "vertical" ? "vertical" : undefined}
|
|
50
|
+
className={cx(
|
|
51
|
+
ORIENT[orientation] ?? ORIENT.horizontal,
|
|
52
|
+
MENU[variant] ?? MENU.secondary,
|
|
53
|
+
MENU_SIZE[size] ?? MENU_SIZE.md,
|
|
54
|
+
// The focused child's ring draws over its neighbours.
|
|
55
|
+
"[&>:not([popover])]:relative [&>:focus-visible]:z-10",
|
|
56
|
+
className,
|
|
57
|
+
)}
|
|
58
|
+
{...rest}
|
|
59
|
+
>
|
|
60
|
+
{children}
|
|
61
|
+
</div>
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/** The line between two buttons whose borders do not show (primary,
|
|
66
|
+
* quiet). The group sizes it; in a vertical group pass
|
|
67
|
+
* orientation="horizontal" so a screen reader hears it right. */
|
|
68
|
+
export function ButtonGroupSeparator({ orientation = "vertical", className }) {
|
|
69
|
+
return <div role="separator" aria-orientation={orientation} className={cx("shrink-0 self-stretch bg-border", className)} />;
|
|
70
|
+
}
|
|
@@ -1,23 +1,72 @@
|
|
|
1
1
|
import Link from "next/link";
|
|
2
2
|
import { cx } from "./cx";
|
|
3
3
|
import { Icon } from "./icon";
|
|
4
|
+
import { Spinner } from "./feedback";
|
|
4
5
|
|
|
5
|
-
// Button — every action in the app.
|
|
6
|
+
// Button — every action in the app. One shape, 44px targets
|
|
6
7
|
// (mobile first: a thumb hits it). `href` makes it a next/link (base
|
|
7
8
|
// path applied); `icon` names one from ./icon. Never style a <button>
|
|
8
9
|
// by hand in a surface: the look is the workspace's, the behaviour is
|
|
9
10
|
// the browser's, and this is the only place both meet.
|
|
10
11
|
//
|
|
11
12
|
// variant primary (the one main action per surface) · secondary ·
|
|
12
|
-
// quiet (no fill) · danger (destructive, red text) ·
|
|
13
|
-
//
|
|
13
|
+
// quiet (no fill) · danger (destructive, red text) ·
|
|
14
|
+
// link (text only: inline, no box, padding or min-height — it
|
|
15
|
+
// wraps and truncates with the sentence it sits in) · nav (a navigation row: quiet, full
|
|
16
|
+
// width, start-aligned, normal weight; aria-current="page"
|
|
17
|
+
// fills it and sets it medium)
|
|
18
|
+
// size md (44px) · sm (36px, for dense rows and rails); a link has
|
|
19
|
+
// no height, so for it md and sm are text-sm and `inherit`
|
|
20
|
+
// takes the surrounding text's size and weight
|
|
21
|
+
// align center (the default) · start (label at the leading edge, for
|
|
22
|
+
// a full-width row of your own; nav is always start)
|
|
23
|
+
// loading true while its action runs: a spinner over the label (the
|
|
24
|
+
// width does not jump), aria-busy, and disabled so a second
|
|
25
|
+
// click cannot fire it again
|
|
26
|
+
// tone a link's colour: primary (the default, text-primary) · muted
|
|
27
|
+
// (text-muted-foreground, foreground on hover — a secondary
|
|
28
|
+
// link beside a heading, "What's new", "View all"); only a
|
|
29
|
+
// link reads it
|
|
30
|
+
// iconOnly a square at the size (IconButton sets it; a Button whose
|
|
31
|
+
// only child is an <Icon> should too)
|
|
32
|
+
//
|
|
33
|
+
// cx does not merge classes: a className can add, never override, what a
|
|
34
|
+
// variant or size already sets. Anything a surface needs to vary is a
|
|
35
|
+
// prop here, not a className fight.
|
|
14
36
|
|
|
15
37
|
const VARIANTS = {
|
|
16
38
|
primary: "bg-primary text-primary-foreground hover:opacity-90 border-transparent",
|
|
17
39
|
secondary: "bg-secondary text-secondary-foreground border-border hover:bg-accent",
|
|
18
40
|
quiet: "bg-transparent text-foreground border-transparent hover:bg-accent",
|
|
19
41
|
danger: "bg-transparent text-destructive border-border hover:bg-accent",
|
|
20
|
-
link: "
|
|
42
|
+
link: "underline-offset-4 hover:underline",
|
|
43
|
+
nav:
|
|
44
|
+
"w-full min-w-0 bg-transparent text-foreground border-transparent hover:bg-accent " +
|
|
45
|
+
"[&[aria-current]:not([aria-current=false])]:bg-accent [&[aria-current]:not([aria-current=false])]:text-accent-foreground",
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// A link's colour, apart from its variant so a secondary link is a prop
|
|
49
|
+
// and not a text-muted-foreground laid over text-primary.
|
|
50
|
+
const LINK_TONES = {
|
|
51
|
+
primary: "text-primary",
|
|
52
|
+
muted: "text-muted-foreground hover:text-foreground",
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
// The shape each variant is drawn in. A nav row spaces its icon wider.
|
|
56
|
+
// A link is text in a line: inline, not a flex box — no border, padding
|
|
57
|
+
// or height, it wraps where the sentence wraps and truncates with it. Its
|
|
58
|
+
// icons sit on the text's line: `icon` leads, an <Icon> child trails.
|
|
59
|
+
const SHAPE = {
|
|
60
|
+
box: "inline-flex items-center gap-2 rounded-md border whitespace-nowrap",
|
|
61
|
+
nav: "inline-flex items-center gap-3 rounded-md border whitespace-nowrap",
|
|
62
|
+
link: "inline rounded-sm [&>svg]:ml-1 [&>svg]:inline-block [&>svg]:align-[-0.125em]",
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
// Weight lives apart from the shape so a nav row can be normal weight
|
|
66
|
+
// (its current row medium) without laying one font weight over another.
|
|
67
|
+
const WEIGHT = {
|
|
68
|
+
box: "font-medium",
|
|
69
|
+
nav: "font-normal [&[aria-current]:not([aria-current=false])]:font-medium",
|
|
21
70
|
};
|
|
22
71
|
|
|
23
72
|
const SIZES = {
|
|
@@ -25,6 +74,27 @@ const SIZES = {
|
|
|
25
74
|
sm: "min-h-9 px-3 text-sm",
|
|
26
75
|
};
|
|
27
76
|
|
|
77
|
+
// A link's sizes are only its text: md and sm as every other button,
|
|
78
|
+
// inherit for a link inside a sentence.
|
|
79
|
+
const LINK_SIZES = {
|
|
80
|
+
md: "text-sm font-medium",
|
|
81
|
+
sm: "text-sm font-medium",
|
|
82
|
+
inherit: "",
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
// IconButton's squares. Their own entries, never a px-0 laid over a
|
|
86
|
+
// size's padding: cx does not merge classes, so which of two paddings
|
|
87
|
+
// wins is CSS order, not the order they were written in.
|
|
88
|
+
const ICON_SIZES = {
|
|
89
|
+
md: "size-11 px-0 text-sm",
|
|
90
|
+
sm: "size-9 px-0 text-sm",
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
const ALIGN = {
|
|
94
|
+
center: "justify-center",
|
|
95
|
+
start: "justify-start text-left",
|
|
96
|
+
};
|
|
97
|
+
|
|
28
98
|
export function Button({
|
|
29
99
|
variant = "secondary",
|
|
30
100
|
size = "md",
|
|
@@ -33,31 +103,80 @@ export function Button({
|
|
|
33
103
|
className,
|
|
34
104
|
children,
|
|
35
105
|
type = "button",
|
|
106
|
+
loading = false,
|
|
107
|
+
disabled,
|
|
108
|
+
iconOnly = false,
|
|
109
|
+
align = "center",
|
|
110
|
+
tone = "primary",
|
|
36
111
|
...rest
|
|
37
112
|
}) {
|
|
113
|
+
const look = VARIANTS[variant] ? variant : "secondary";
|
|
114
|
+
const link = look === "link";
|
|
115
|
+
const nav = look === "nav";
|
|
116
|
+
const sizeClass = link
|
|
117
|
+
? LINK_SIZES[size] ?? LINK_SIZES.md
|
|
118
|
+
: iconOnly
|
|
119
|
+
? ICON_SIZES[size] ?? ICON_SIZES.md
|
|
120
|
+
: SIZES[size] ?? SIZES.md;
|
|
38
121
|
const classes = cx(
|
|
39
|
-
"
|
|
122
|
+
SHAPE[link ? "link" : nav ? "nav" : "box"],
|
|
123
|
+
!link && (nav ? WEIGHT.nav : WEIGHT.box),
|
|
124
|
+
!link && !iconOnly && (ALIGN[nav ? "start" : align] ?? ALIGN.center),
|
|
125
|
+
iconOnly && ALIGN.center,
|
|
40
126
|
"outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",
|
|
41
127
|
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
42
|
-
VARIANTS[
|
|
43
|
-
|
|
128
|
+
VARIANTS[look],
|
|
129
|
+
link && (LINK_TONES[tone] ?? LINK_TONES.primary),
|
|
130
|
+
sizeClass,
|
|
131
|
+
// Busy is not unavailable: the button keeps its full colour.
|
|
132
|
+
loading && "relative disabled:aria-busy:opacity-100 disabled:aria-busy:cursor-progress",
|
|
133
|
+
loading && href && "pointer-events-none opacity-50",
|
|
44
134
|
className,
|
|
45
135
|
);
|
|
46
|
-
const
|
|
136
|
+
const lead = icon ? (
|
|
137
|
+
link ? (
|
|
138
|
+
<span className="mr-1 inline-block align-[-0.125em]">
|
|
139
|
+
<Icon name={icon} />
|
|
140
|
+
</span>
|
|
141
|
+
) : (
|
|
142
|
+
<Icon name={icon} />
|
|
143
|
+
)
|
|
144
|
+
) : null;
|
|
145
|
+
const content = (
|
|
47
146
|
<>
|
|
48
|
-
{
|
|
147
|
+
{lead}
|
|
49
148
|
{children}
|
|
50
149
|
</>
|
|
51
150
|
);
|
|
151
|
+
// Loading: the label stays in place (transparent, still the accessible
|
|
152
|
+
// name) so the button keeps its width; the spinner sits on top of it.
|
|
153
|
+
const body = loading ? (
|
|
154
|
+
<>
|
|
155
|
+
<span className="inline-flex items-center gap-2 opacity-0">{content}</span>
|
|
156
|
+
<span className="absolute inset-0 grid place-items-center">
|
|
157
|
+
<Spinner size="sm" label={null} />
|
|
158
|
+
</span>
|
|
159
|
+
</>
|
|
160
|
+
) : (
|
|
161
|
+
content
|
|
162
|
+
);
|
|
52
163
|
if (href) {
|
|
53
164
|
return (
|
|
54
|
-
<Link
|
|
165
|
+
<Link
|
|
166
|
+
href={href}
|
|
167
|
+
className={classes}
|
|
168
|
+
aria-busy={loading || undefined}
|
|
169
|
+
aria-disabled={loading || undefined}
|
|
170
|
+
tabIndex={loading ? -1 : undefined}
|
|
171
|
+
disabled={disabled}
|
|
172
|
+
{...rest}
|
|
173
|
+
>
|
|
55
174
|
{body}
|
|
56
175
|
</Link>
|
|
57
176
|
);
|
|
58
177
|
}
|
|
59
178
|
return (
|
|
60
|
-
<button type={type} className={classes} {...rest}>
|
|
179
|
+
<button type={type} className={classes} disabled={loading || disabled} aria-busy={loading || undefined} {...rest}>
|
|
61
180
|
{body}
|
|
62
181
|
</button>
|
|
63
182
|
);
|
|
@@ -72,7 +191,8 @@ export function IconButton({ icon, label, size = "md", variant = "quiet", classN
|
|
|
72
191
|
size={size}
|
|
73
192
|
aria-label={label}
|
|
74
193
|
title={label}
|
|
75
|
-
|
|
194
|
+
iconOnly
|
|
195
|
+
className={cx("shrink-0", className)}
|
|
76
196
|
{...rest}
|
|
77
197
|
>
|
|
78
198
|
<Icon name={icon} size={size === "sm" ? 16 : 18} />
|