@epicbagel/saas-kit 0.0.0-stage → 1.0.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/LICENSE +21 -0
- package/README.md +71 -2
- package/THIRD_PARTY_NOTICES.md +47 -0
- package/dist/chunk-23UMHZ4S.cjs +124 -0
- package/dist/chunk-2BHI5ZWJ.cjs +117 -0
- package/dist/chunk-2HTYXBDU.cjs +34 -0
- package/dist/chunk-2XDFTB2W.cjs +35 -0
- package/dist/chunk-35YMAIEL.js +135 -0
- package/dist/chunk-373W6VAD.cjs +82 -0
- package/dist/chunk-3BZ4CQHW.js +94 -0
- package/dist/chunk-3OWGL4Q2.js +65 -0
- package/dist/chunk-3QT5VYZ3.js +141 -0
- package/dist/chunk-4HWCNRK4.js +117 -0
- package/dist/chunk-4LXN6GLZ.cjs +44 -0
- package/dist/chunk-4NN7EA3W.js +222 -0
- package/dist/chunk-62UTAG2C.js +152 -0
- package/dist/chunk-667ZCM4X.cjs +72 -0
- package/dist/chunk-6RVPQGYS.js +181 -0
- package/dist/chunk-6T2EULKN.cjs +42 -0
- package/dist/chunk-7CRDYV3C.js +137 -0
- package/dist/chunk-BEJJN2SY.cjs +73 -0
- package/dist/chunk-BGLGRUPP.cjs +31 -0
- package/dist/chunk-CS7DM3NV.js +98 -0
- package/dist/chunk-CTYOW3V2.cjs +59 -0
- package/dist/chunk-D4ZL2OEQ.js +61 -0
- package/dist/chunk-DFB4ILN6.cjs +137 -0
- package/dist/chunk-E2TQMDO7.js +34 -0
- package/dist/chunk-EIY5LLSP.js +82 -0
- package/dist/chunk-EJP2L5QV.cjs +74 -0
- package/dist/chunk-F73ONTCK.js +73 -0
- package/dist/chunk-F7JHSZNT.js +73 -0
- package/dist/chunk-FJLINIC6.js +48 -0
- package/dist/chunk-FLPYZNWZ.js +124 -0
- package/dist/chunk-FNDBM67K.cjs +61 -0
- package/dist/chunk-G54TQV2R.cjs +222 -0
- package/dist/chunk-G6SRSWXB.js +32 -0
- package/dist/chunk-G76JANB4.js +138 -0
- package/dist/chunk-GL5CV4FF.js +59 -0
- package/dist/chunk-GMJWBGTJ.js +34 -0
- package/dist/chunk-GRZMUGT6.cjs +94 -0
- package/dist/chunk-GXHGMI3Z.cjs +48 -0
- package/dist/chunk-H2O6NMLZ.js +52 -0
- package/dist/chunk-H2UFRLLN.cjs +100 -0
- package/dist/chunk-H7TETFLB.js +39 -0
- package/dist/chunk-HQRWRRZJ.js +179 -0
- package/dist/chunk-HYSWE75T.js +67 -0
- package/dist/chunk-HYTILYE5.js +31 -0
- package/dist/chunk-I6GUOEBO.cjs +61 -0
- package/dist/chunk-IQZLUT2Y.cjs +34 -0
- package/dist/chunk-J3GQXM37.js +61 -0
- package/dist/chunk-J6NXDZR5.js +145 -0
- package/dist/chunk-JH4GAGOQ.cjs +34 -0
- package/dist/chunk-KGFL3VWY.cjs +62 -0
- package/dist/chunk-KN4RPX35.js +36 -0
- package/dist/chunk-KWLSBTB2.cjs +34 -0
- package/dist/chunk-L4DH72UF.cjs +179 -0
- package/dist/chunk-LELBCBDT.cjs +52 -0
- package/dist/chunk-LELFPLTE.js +55 -0
- package/dist/chunk-LI5EOSQG.js +171 -0
- package/dist/chunk-LIE6W3QT.js +42 -0
- package/dist/chunk-MLHNYRFX.js +411 -0
- package/dist/chunk-NBUWGRQO.js +31 -0
- package/dist/chunk-NE3ZVJ6G.cjs +67 -0
- package/dist/chunk-NQK5ZWC7.cjs +31 -0
- package/dist/chunk-NW3OWKBN.js +57 -0
- package/dist/chunk-OICAYRVH.js +34 -0
- package/dist/chunk-PIU5SSUV.js +25 -0
- package/dist/chunk-PNWNU6JW.cjs +171 -0
- package/dist/chunk-PPX2VPGI.cjs +138 -0
- package/dist/chunk-PQUSJEXL.cjs +51 -0
- package/dist/chunk-QD63LB2F.js +62 -0
- package/dist/chunk-QMA3WVB7.js +51 -0
- package/dist/chunk-QNZYQLNP.js +125 -0
- package/dist/chunk-R35FT53G.cjs +25 -0
- package/dist/chunk-R3DQS6U4.cjs +135 -0
- package/dist/chunk-R4AIM3BQ.js +72 -0
- package/dist/chunk-R5L4CM6V.cjs +202 -0
- package/dist/chunk-RRRD5EUI.js +202 -0
- package/dist/chunk-RSFEKQDR.cjs +181 -0
- package/dist/chunk-RWWOFWLP.cjs +510 -0
- package/dist/chunk-SGW4FWBX.cjs +411 -0
- package/dist/chunk-T2ZFSPE4.cjs +36 -0
- package/dist/chunk-U2NES7VR.cjs +32 -0
- package/dist/chunk-UGF2K6NR.js +510 -0
- package/dist/chunk-V4LE2HWP.js +166 -0
- package/dist/chunk-V5SPFLKW.cjs +145 -0
- package/dist/chunk-V7542UGX.js +31 -0
- package/dist/chunk-VBPPFC7X.cjs +66 -0
- package/dist/chunk-VGTINL5Q.cjs +39 -0
- package/dist/chunk-VKIGJNJR.cjs +57 -0
- package/dist/chunk-W5HPHEE7.cjs +31 -0
- package/dist/chunk-W5I4FN7G.cjs +78 -0
- package/dist/chunk-WABCLRBR.cjs +65 -0
- package/dist/chunk-WDXEJDMO.cjs +141 -0
- package/dist/chunk-WNXVGUBF.cjs +40 -0
- package/dist/chunk-WQJKUKBL.cjs +125 -0
- package/dist/chunk-XAPPU3MD.js +35 -0
- package/dist/chunk-XLIAY56V.cjs +55 -0
- package/dist/chunk-YEW65ASC.js +66 -0
- package/dist/chunk-YG7FBJRM.js +40 -0
- package/dist/chunk-YWAQRAXP.js +78 -0
- package/dist/chunk-YYFVG5A6.cjs +152 -0
- package/dist/chunk-ZAITUDYD.cjs +166 -0
- package/dist/chunk-ZRLUUZHK.js +32 -0
- package/dist/chunk-ZWZAAGQF.js +44 -0
- package/dist/hooks/use-copy-to-clipboard.cjs +7 -0
- package/dist/hooks/use-copy-to-clipboard.d.cts +12 -0
- package/dist/hooks/use-copy-to-clipboard.d.ts +12 -0
- package/dist/hooks/use-copy-to-clipboard.js +7 -0
- package/dist/hooks/use-layout-preference.cjs +51 -0
- package/dist/hooks/use-layout-preference.d.cts +10 -0
- package/dist/hooks/use-layout-preference.d.ts +10 -0
- package/dist/hooks/use-layout-preference.js +51 -0
- package/dist/hooks/use-mobile.cjs +7 -0
- package/dist/hooks/use-mobile.d.cts +3 -0
- package/dist/hooks/use-mobile.d.ts +3 -0
- package/dist/hooks/use-mobile.js +7 -0
- package/dist/lib/date-utils.cjs +15 -0
- package/dist/lib/date-utils.d.cts +16 -0
- package/dist/lib/date-utils.d.ts +16 -0
- package/dist/lib/date-utils.js +14 -0
- package/dist/lib/filter-types.cjs +161 -0
- package/dist/lib/filter-types.d.cts +60 -0
- package/dist/lib/filter-types.d.ts +60 -0
- package/dist/lib/filter-types.js +160 -0
- package/dist/lib/neutral-theme.cjs +238 -0
- package/dist/lib/neutral-theme.d.cts +92 -0
- package/dist/lib/neutral-theme.d.ts +92 -0
- package/dist/lib/neutral-theme.js +236 -0
- package/dist/lib/status-colors.cjs +18 -0
- package/dist/lib/status-colors.d.cts +76 -0
- package/dist/lib/status-colors.d.ts +76 -0
- package/dist/lib/status-colors.js +17 -0
- package/dist/lib/utils.cjs +9 -0
- package/dist/lib/utils.d.cts +9 -0
- package/dist/lib/utils.d.ts +9 -0
- package/dist/lib/utils.js +8 -0
- package/dist/primitives/activity-feed.cjs +177 -0
- package/dist/primitives/activity-feed.d.cts +78 -0
- package/dist/primitives/activity-feed.d.ts +78 -0
- package/dist/primitives/activity-feed.js +177 -0
- package/dist/primitives/activity-log.cjs +79 -0
- package/dist/primitives/activity-log.d.cts +55 -0
- package/dist/primitives/activity-log.d.ts +55 -0
- package/dist/primitives/activity-log.js +79 -0
- package/dist/primitives/agent-comment.cjs +39 -0
- package/dist/primitives/agent-comment.d.cts +33 -0
- package/dist/primitives/agent-comment.d.ts +33 -0
- package/dist/primitives/agent-comment.js +39 -0
- package/dist/primitives/alert-dialog.cjs +30 -0
- package/dist/primitives/alert-dialog.d.cts +23 -0
- package/dist/primitives/alert-dialog.d.ts +23 -0
- package/dist/primitives/alert-dialog.js +30 -0
- package/dist/primitives/alert.cjs +12 -0
- package/dist/primitives/alert.d.cts +26 -0
- package/dist/primitives/alert.d.ts +26 -0
- package/dist/primitives/alert.js +12 -0
- package/dist/primitives/anchor-target.cjs +13 -0
- package/dist/primitives/anchor-target.d.cts +7 -0
- package/dist/primitives/anchor-target.d.ts +7 -0
- package/dist/primitives/anchor-target.js +13 -0
- package/dist/primitives/anchor.cjs +35 -0
- package/dist/primitives/anchor.d.cts +16 -0
- package/dist/primitives/anchor.d.ts +16 -0
- package/dist/primitives/anchor.js +35 -0
- package/dist/primitives/archive-confirmation-dialog.cjs +50 -0
- package/dist/primitives/archive-confirmation-dialog.d.cts +12 -0
- package/dist/primitives/archive-confirmation-dialog.d.ts +12 -0
- package/dist/primitives/archive-confirmation-dialog.js +50 -0
- package/dist/primitives/aspect-ratio.cjs +8 -0
- package/dist/primitives/aspect-ratio.d.cts +6 -0
- package/dist/primitives/aspect-ratio.d.ts +6 -0
- package/dist/primitives/aspect-ratio.js +8 -0
- package/dist/primitives/attachment.cjs +203 -0
- package/dist/primitives/attachment.d.cts +28 -0
- package/dist/primitives/attachment.d.ts +28 -0
- package/dist/primitives/attachment.js +203 -0
- package/dist/primitives/avatar.cjs +12 -0
- package/dist/primitives/avatar.d.cts +22 -0
- package/dist/primitives/avatar.d.ts +22 -0
- package/dist/primitives/avatar.js +12 -0
- package/dist/primitives/badge.cjs +10 -0
- package/dist/primitives/badge.d.cts +27 -0
- package/dist/primitives/badge.d.ts +27 -0
- package/dist/primitives/badge.js +10 -0
- package/dist/primitives/board-view-internals.cjs +16 -0
- package/dist/primitives/board-view-internals.d.cts +33 -0
- package/dist/primitives/board-view-internals.d.ts +33 -0
- package/dist/primitives/board-view-internals.js +16 -0
- package/dist/primitives/board-view.cjs +108 -0
- package/dist/primitives/board-view.d.cts +39 -0
- package/dist/primitives/board-view.d.ts +39 -0
- package/dist/primitives/board-view.js +108 -0
- package/dist/primitives/browser-preview.cjs +62 -0
- package/dist/primitives/browser-preview.d.cts +41 -0
- package/dist/primitives/browser-preview.d.ts +41 -0
- package/dist/primitives/browser-preview.js +62 -0
- package/dist/primitives/button.cjs +10 -0
- package/dist/primitives/button.d.cts +32 -0
- package/dist/primitives/button.d.ts +32 -0
- package/dist/primitives/button.js +10 -0
- package/dist/primitives/calendar.cjs +11 -0
- package/dist/primitives/calendar.d.cts +13 -0
- package/dist/primitives/calendar.d.ts +13 -0
- package/dist/primitives/calendar.js +11 -0
- package/dist/primitives/call-card.cjs +195 -0
- package/dist/primitives/call-card.d.cts +86 -0
- package/dist/primitives/call-card.d.ts +86 -0
- package/dist/primitives/call-card.js +195 -0
- package/dist/primitives/callout.cjs +8 -0
- package/dist/primitives/callout.d.cts +41 -0
- package/dist/primitives/callout.d.ts +41 -0
- package/dist/primitives/callout.js +8 -0
- package/dist/primitives/card.cjs +18 -0
- package/dist/primitives/card.d.cts +55 -0
- package/dist/primitives/card.d.ts +55 -0
- package/dist/primitives/card.js +18 -0
- package/dist/primitives/checkbox.cjs +8 -0
- package/dist/primitives/checkbox.d.cts +20 -0
- package/dist/primitives/checkbox.d.ts +20 -0
- package/dist/primitives/checkbox.js +8 -0
- package/dist/primitives/chip-tabs.cjs +10 -0
- package/dist/primitives/chip-tabs.d.cts +39 -0
- package/dist/primitives/chip-tabs.d.ts +39 -0
- package/dist/primitives/chip-tabs.js +10 -0
- package/dist/primitives/code-block.cjs +56 -0
- package/dist/primitives/code-block.d.cts +35 -0
- package/dist/primitives/code-block.d.ts +35 -0
- package/dist/primitives/code-block.js +56 -0
- package/dist/primitives/collapsible-section.cjs +69 -0
- package/dist/primitives/collapsible-section.d.cts +24 -0
- package/dist/primitives/collapsible-section.d.ts +24 -0
- package/dist/primitives/collapsible-section.js +69 -0
- package/dist/primitives/collapsible.cjs +12 -0
- package/dist/primitives/collapsible.d.cts +14 -0
- package/dist/primitives/collapsible.d.ts +14 -0
- package/dist/primitives/collapsible.js +12 -0
- package/dist/primitives/compact-app-shell.cjs +40 -0
- package/dist/primitives/compact-app-shell.d.cts +12 -0
- package/dist/primitives/compact-app-shell.d.ts +12 -0
- package/dist/primitives/compact-app-shell.js +40 -0
- package/dist/primitives/compact-log.cjs +39 -0
- package/dist/primitives/compact-log.d.cts +19 -0
- package/dist/primitives/compact-log.d.ts +19 -0
- package/dist/primitives/compact-log.js +39 -0
- package/dist/primitives/confirm-bar.cjs +101 -0
- package/dist/primitives/confirm-bar.d.cts +60 -0
- package/dist/primitives/confirm-bar.d.ts +60 -0
- package/dist/primitives/confirm-bar.js +101 -0
- package/dist/primitives/connection-status-bar.cjs +243 -0
- package/dist/primitives/connection-status-bar.d.cts +52 -0
- package/dist/primitives/connection-status-bar.d.ts +52 -0
- package/dist/primitives/connection-status-bar.js +243 -0
- package/dist/primitives/connection.cjs +206 -0
- package/dist/primitives/connection.d.cts +126 -0
- package/dist/primitives/connection.d.ts +126 -0
- package/dist/primitives/connection.js +206 -0
- package/dist/primitives/contact-header.cjs +60 -0
- package/dist/primitives/contact-header.d.cts +54 -0
- package/dist/primitives/contact-header.d.ts +54 -0
- package/dist/primitives/contact-header.js +60 -0
- package/dist/primitives/copy-button.cjs +10 -0
- package/dist/primitives/copy-button.d.cts +21 -0
- package/dist/primitives/copy-button.d.ts +21 -0
- package/dist/primitives/copy-button.js +10 -0
- package/dist/primitives/count-badge.cjs +9 -0
- package/dist/primitives/count-badge.d.cts +21 -0
- package/dist/primitives/count-badge.d.ts +21 -0
- package/dist/primitives/count-badge.js +9 -0
- package/dist/primitives/decision-actions.cjs +66 -0
- package/dist/primitives/decision-actions.d.cts +31 -0
- package/dist/primitives/decision-actions.d.ts +31 -0
- package/dist/primitives/decision-actions.js +66 -0
- package/dist/primitives/definition-list.cjs +65 -0
- package/dist/primitives/definition-list.d.cts +23 -0
- package/dist/primitives/definition-list.d.ts +23 -0
- package/dist/primitives/definition-list.js +65 -0
- package/dist/primitives/delete-confirmation-dialog.cjs +11 -0
- package/dist/primitives/delete-confirmation-dialog.d.cts +23 -0
- package/dist/primitives/delete-confirmation-dialog.d.ts +23 -0
- package/dist/primitives/delete-confirmation-dialog.js +11 -0
- package/dist/primitives/dialog.cjs +26 -0
- package/dist/primitives/dialog.d.cts +44 -0
- package/dist/primitives/dialog.d.ts +44 -0
- package/dist/primitives/dialog.js +26 -0
- package/dist/primitives/drawer.cjs +26 -0
- package/dist/primitives/drawer.d.cts +36 -0
- package/dist/primitives/drawer.d.ts +36 -0
- package/dist/primitives/drawer.js +26 -0
- package/dist/primitives/dropdown-menu.cjs +36 -0
- package/dist/primitives/dropdown-menu.d.cts +34 -0
- package/dist/primitives/dropdown-menu.d.ts +34 -0
- package/dist/primitives/dropdown-menu.js +36 -0
- package/dist/primitives/editable-list.cjs +108 -0
- package/dist/primitives/editable-list.d.cts +23 -0
- package/dist/primitives/editable-list.d.ts +23 -0
- package/dist/primitives/editable-list.js +108 -0
- package/dist/primitives/empty-state.cjs +9 -0
- package/dist/primitives/empty-state.d.cts +54 -0
- package/dist/primitives/empty-state.d.ts +54 -0
- package/dist/primitives/empty-state.js +9 -0
- package/dist/primitives/eyebrow.cjs +8 -0
- package/dist/primitives/eyebrow.d.cts +21 -0
- package/dist/primitives/eyebrow.d.ts +21 -0
- package/dist/primitives/eyebrow.js +8 -0
- package/dist/primitives/feature-empty-state.cjs +133 -0
- package/dist/primitives/feature-empty-state.d.cts +42 -0
- package/dist/primitives/feature-empty-state.d.ts +42 -0
- package/dist/primitives/feature-empty-state.js +133 -0
- package/dist/primitives/field.cjs +260 -0
- package/dist/primitives/field.d.cts +43 -0
- package/dist/primitives/field.d.ts +43 -0
- package/dist/primitives/field.js +260 -0
- package/dist/primitives/file-dropzone.cjs +118 -0
- package/dist/primitives/file-dropzone.d.cts +36 -0
- package/dist/primitives/file-dropzone.d.ts +36 -0
- package/dist/primitives/file-dropzone.js +118 -0
- package/dist/primitives/filter-bar.cjs +20 -0
- package/dist/primitives/filter-bar.d.cts +25 -0
- package/dist/primitives/filter-bar.d.ts +25 -0
- package/dist/primitives/filter-bar.js +20 -0
- package/dist/primitives/flex-item.cjs +34 -0
- package/dist/primitives/flex-item.d.cts +18 -0
- package/dist/primitives/flex-item.d.ts +18 -0
- package/dist/primitives/flex-item.js +34 -0
- package/dist/primitives/grid.cjs +47 -0
- package/dist/primitives/grid.d.cts +18 -0
- package/dist/primitives/grid.d.ts +18 -0
- package/dist/primitives/grid.js +47 -0
- package/dist/primitives/heading.cjs +8 -0
- package/dist/primitives/heading.d.cts +28 -0
- package/dist/primitives/heading.d.ts +28 -0
- package/dist/primitives/heading.js +8 -0
- package/dist/primitives/hidden-control.cjs +13 -0
- package/dist/primitives/hidden-control.d.cts +7 -0
- package/dist/primitives/hidden-control.d.ts +7 -0
- package/dist/primitives/hidden-control.js +13 -0
- package/dist/primitives/icon.cjs +8 -0
- package/dist/primitives/icon.d.cts +22 -0
- package/dist/primitives/icon.d.ts +22 -0
- package/dist/primitives/icon.js +8 -0
- package/dist/primitives/image.cjs +52 -0
- package/dist/primitives/image.d.cts +21 -0
- package/dist/primitives/image.d.ts +21 -0
- package/dist/primitives/image.js +52 -0
- package/dist/primitives/inline-code.cjs +34 -0
- package/dist/primitives/inline-code.d.cts +15 -0
- package/dist/primitives/inline-code.d.ts +15 -0
- package/dist/primitives/inline-code.js +34 -0
- package/dist/primitives/input.cjs +8 -0
- package/dist/primitives/input.d.cts +23 -0
- package/dist/primitives/input.d.ts +23 -0
- package/dist/primitives/input.js +8 -0
- package/dist/primitives/inset.cjs +20 -0
- package/dist/primitives/inset.d.cts +12 -0
- package/dist/primitives/inset.d.ts +12 -0
- package/dist/primitives/inset.js +20 -0
- package/dist/primitives/interactive-card.cjs +11 -0
- package/dist/primitives/interactive-card.d.cts +68 -0
- package/dist/primitives/interactive-card.d.ts +68 -0
- package/dist/primitives/interactive-card.js +11 -0
- package/dist/primitives/label.cjs +8 -0
- package/dist/primitives/label.d.cts +12 -0
- package/dist/primitives/label.d.ts +12 -0
- package/dist/primitives/label.js +8 -0
- package/dist/primitives/line-break.cjs +10 -0
- package/dist/primitives/line-break.d.cts +6 -0
- package/dist/primitives/line-break.d.ts +6 -0
- package/dist/primitives/line-break.js +10 -0
- package/dist/primitives/list.cjs +68 -0
- package/dist/primitives/list.d.cts +35 -0
- package/dist/primitives/list.d.ts +35 -0
- package/dist/primitives/list.js +68 -0
- package/dist/primitives/load-more-button.cjs +10 -0
- package/dist/primitives/load-more-button.d.cts +42 -0
- package/dist/primitives/load-more-button.d.ts +42 -0
- package/dist/primitives/load-more-button.js +10 -0
- package/dist/primitives/loading.cjs +10 -0
- package/dist/primitives/loading.d.cts +5 -0
- package/dist/primitives/loading.d.ts +5 -0
- package/dist/primitives/loading.js +10 -0
- package/dist/primitives/message.cjs +95 -0
- package/dist/primitives/message.d.cts +13 -0
- package/dist/primitives/message.d.ts +13 -0
- package/dist/primitives/message.js +95 -0
- package/dist/primitives/native-select.cjs +33 -0
- package/dist/primitives/native-select.d.cts +15 -0
- package/dist/primitives/native-select.d.ts +15 -0
- package/dist/primitives/native-select.js +33 -0
- package/dist/primitives/page-header-actions.cjs +11 -0
- package/dist/primitives/page-header-actions.d.cts +49 -0
- package/dist/primitives/page-header-actions.d.ts +49 -0
- package/dist/primitives/page-header-actions.js +11 -0
- package/dist/primitives/page-header.cjs +72 -0
- package/dist/primitives/page-header.d.cts +40 -0
- package/dist/primitives/page-header.d.ts +40 -0
- package/dist/primitives/page-header.js +72 -0
- package/dist/primitives/page-shell.cjs +46 -0
- package/dist/primitives/page-shell.d.cts +44 -0
- package/dist/primitives/page-shell.d.ts +44 -0
- package/dist/primitives/page-shell.js +46 -0
- package/dist/primitives/page-tabs.cjs +63 -0
- package/dist/primitives/page-tabs.d.cts +28 -0
- package/dist/primitives/page-tabs.d.ts +28 -0
- package/dist/primitives/page-tabs.js +63 -0
- package/dist/primitives/panel-section.cjs +52 -0
- package/dist/primitives/panel-section.d.cts +20 -0
- package/dist/primitives/panel-section.d.ts +20 -0
- package/dist/primitives/panel-section.js +52 -0
- package/dist/primitives/person-avatar.cjs +57 -0
- package/dist/primitives/person-avatar.d.cts +33 -0
- package/dist/primitives/person-avatar.d.ts +33 -0
- package/dist/primitives/person-avatar.js +57 -0
- package/dist/primitives/phone.cjs +69 -0
- package/dist/primitives/phone.d.cts +50 -0
- package/dist/primitives/phone.d.ts +50 -0
- package/dist/primitives/phone.js +69 -0
- package/dist/primitives/popover.cjs +12 -0
- package/dist/primitives/popover.d.cts +14 -0
- package/dist/primitives/popover.d.ts +14 -0
- package/dist/primitives/popover.js +12 -0
- package/dist/primitives/progress.cjs +31 -0
- package/dist/primitives/progress.d.cts +6 -0
- package/dist/primitives/progress.d.ts +6 -0
- package/dist/primitives/progress.js +31 -0
- package/dist/primitives/quick-filters.cjs +10 -0
- package/dist/primitives/quick-filters.d.cts +36 -0
- package/dist/primitives/quick-filters.d.ts +36 -0
- package/dist/primitives/quick-filters.js +10 -0
- package/dist/primitives/radio-group.cjs +46 -0
- package/dist/primitives/radio-group.d.cts +7 -0
- package/dist/primitives/radio-group.d.ts +7 -0
- package/dist/primitives/radio-group.js +46 -0
- package/dist/primitives/resource-card.cjs +104 -0
- package/dist/primitives/resource-card.d.cts +93 -0
- package/dist/primitives/resource-card.d.ts +93 -0
- package/dist/primitives/resource-card.js +104 -0
- package/dist/primitives/resource-list.cjs +28 -0
- package/dist/primitives/resource-list.d.cts +103 -0
- package/dist/primitives/resource-list.d.ts +103 -0
- package/dist/primitives/resource-list.js +28 -0
- package/dist/primitives/responsive-dialog.cjs +142 -0
- package/dist/primitives/responsive-dialog.d.cts +56 -0
- package/dist/primitives/responsive-dialog.d.ts +56 -0
- package/dist/primitives/responsive-dialog.js +142 -0
- package/dist/primitives/responsive-view.cjs +29 -0
- package/dist/primitives/responsive-view.d.cts +10 -0
- package/dist/primitives/responsive-view.d.ts +10 -0
- package/dist/primitives/responsive-view.js +29 -0
- package/dist/primitives/rich-text.cjs +43 -0
- package/dist/primitives/rich-text.d.cts +14 -0
- package/dist/primitives/rich-text.d.ts +14 -0
- package/dist/primitives/rich-text.js +43 -0
- package/dist/primitives/scroll-area.cjs +10 -0
- package/dist/primitives/scroll-area.d.cts +13 -0
- package/dist/primitives/scroll-area.d.ts +13 -0
- package/dist/primitives/scroll-area.js +10 -0
- package/dist/primitives/section-header.cjs +51 -0
- package/dist/primitives/section-header.d.cts +22 -0
- package/dist/primitives/section-header.d.ts +22 -0
- package/dist/primitives/section-header.js +51 -0
- package/dist/primitives/section.cjs +39 -0
- package/dist/primitives/section.d.cts +22 -0
- package/dist/primitives/section.d.ts +22 -0
- package/dist/primitives/section.js +39 -0
- package/dist/primitives/select.cjs +26 -0
- package/dist/primitives/select.d.cts +25 -0
- package/dist/primitives/select.d.ts +25 -0
- package/dist/primitives/select.js +26 -0
- package/dist/primitives/selection-overlay.cjs +24 -0
- package/dist/primitives/selection-overlay.d.cts +7 -0
- package/dist/primitives/selection-overlay.d.ts +7 -0
- package/dist/primitives/selection-overlay.js +24 -0
- package/dist/primitives/sentiment-dot.cjs +15 -0
- package/dist/primitives/sentiment-dot.d.cts +42 -0
- package/dist/primitives/sentiment-dot.d.ts +42 -0
- package/dist/primitives/sentiment-dot.js +15 -0
- package/dist/primitives/separator.cjs +8 -0
- package/dist/primitives/separator.d.cts +9 -0
- package/dist/primitives/separator.d.ts +9 -0
- package/dist/primitives/separator.js +8 -0
- package/dist/primitives/sheet.cjs +27 -0
- package/dist/primitives/sheet.d.cts +48 -0
- package/dist/primitives/sheet.d.ts +48 -0
- package/dist/primitives/sheet.js +27 -0
- package/dist/primitives/skeleton.cjs +8 -0
- package/dist/primitives/skeleton.d.cts +15 -0
- package/dist/primitives/skeleton.d.ts +15 -0
- package/dist/primitives/skeleton.js +8 -0
- package/dist/primitives/spacer.cjs +20 -0
- package/dist/primitives/spacer.d.cts +11 -0
- package/dist/primitives/spacer.d.ts +11 -0
- package/dist/primitives/spacer.js +20 -0
- package/dist/primitives/split-action-button.cjs +95 -0
- package/dist/primitives/split-action-button.d.cts +41 -0
- package/dist/primitives/split-action-button.d.ts +41 -0
- package/dist/primitives/split-action-button.js +95 -0
- package/dist/primitives/stack.cjs +8 -0
- package/dist/primitives/stack.d.cts +63 -0
- package/dist/primitives/stack.d.ts +63 -0
- package/dist/primitives/stack.js +8 -0
- package/dist/primitives/status-badge.cjs +9 -0
- package/dist/primitives/status-badge.d.cts +20 -0
- package/dist/primitives/status-badge.d.ts +20 -0
- package/dist/primitives/status-badge.js +9 -0
- package/dist/primitives/status-icon-tile.cjs +32 -0
- package/dist/primitives/status-icon-tile.d.cts +12 -0
- package/dist/primitives/status-icon-tile.d.ts +12 -0
- package/dist/primitives/status-icon-tile.js +32 -0
- package/dist/primitives/status-icon.cjs +8 -0
- package/dist/primitives/status-icon.d.cts +18 -0
- package/dist/primitives/status-icon.d.ts +18 -0
- package/dist/primitives/status-icon.js +8 -0
- package/dist/primitives/status-panel.cjs +83 -0
- package/dist/primitives/status-panel.d.cts +25 -0
- package/dist/primitives/status-panel.d.ts +25 -0
- package/dist/primitives/status-panel.js +83 -0
- package/dist/primitives/switch-field.cjs +44 -0
- package/dist/primitives/switch-field.d.cts +17 -0
- package/dist/primitives/switch-field.d.ts +17 -0
- package/dist/primitives/switch-field.js +44 -0
- package/dist/primitives/switch.cjs +8 -0
- package/dist/primitives/switch.d.cts +6 -0
- package/dist/primitives/switch.d.ts +6 -0
- package/dist/primitives/switch.js +8 -0
- package/dist/primitives/tabs.cjs +14 -0
- package/dist/primitives/tabs.d.cts +36 -0
- package/dist/primitives/tabs.d.ts +36 -0
- package/dist/primitives/tabs.js +14 -0
- package/dist/primitives/tag-input.cjs +90 -0
- package/dist/primitives/tag-input.d.cts +13 -0
- package/dist/primitives/tag-input.d.ts +13 -0
- package/dist/primitives/tag-input.js +90 -0
- package/dist/primitives/text.cjs +8 -0
- package/dist/primitives/text.d.cts +51 -0
- package/dist/primitives/text.d.ts +51 -0
- package/dist/primitives/text.js +8 -0
- package/dist/primitives/textarea.cjs +37 -0
- package/dist/primitives/textarea.d.cts +12 -0
- package/dist/primitives/textarea.d.ts +12 -0
- package/dist/primitives/textarea.js +37 -0
- package/dist/primitives/thinking-screen.cjs +87 -0
- package/dist/primitives/thinking-screen.d.cts +46 -0
- package/dist/primitives/thinking-screen.d.ts +46 -0
- package/dist/primitives/thinking-screen.js +87 -0
- package/dist/primitives/timeline.cjs +13 -0
- package/dist/primitives/timeline.d.cts +54 -0
- package/dist/primitives/timeline.d.ts +54 -0
- package/dist/primitives/timeline.js +13 -0
- package/dist/primitives/toggle-group.cjs +51 -0
- package/dist/primitives/toggle-group.d.cts +18 -0
- package/dist/primitives/toggle-group.d.ts +18 -0
- package/dist/primitives/toggle-group.js +51 -0
- package/dist/primitives/toggle.cjs +10 -0
- package/dist/primitives/toggle.d.cts +15 -0
- package/dist/primitives/toggle.d.ts +15 -0
- package/dist/primitives/toggle.js +10 -0
- package/dist/primitives/tooltip.cjs +14 -0
- package/dist/primitives/tooltip.d.cts +9 -0
- package/dist/primitives/tooltip.d.ts +9 -0
- package/dist/primitives/tooltip.js +14 -0
- package/dist/primitives/voice-dictation-button.cjs +244 -0
- package/dist/primitives/voice-dictation-button.d.cts +41 -0
- package/dist/primitives/voice-dictation-button.d.ts +41 -0
- package/dist/primitives/voice-dictation-button.js +244 -0
- package/package.json +1243 -3
- package/src/styles/components/attachment.css +61 -0
- package/src/styles/components/message.css +29 -0
- package/src/styles/components.css +3 -0
- package/src/styles/globals.css +10 -0
- package/src/styles/keyframes.css +26 -0
- package/src/styles/palette.gen.css +150 -0
- package/src/styles/shadcn.css +631 -0
- package/src/styles/source.css +4 -0
- package/src/styles/tokens/base.css +36 -0
- package/src/styles/tokens/container.css +9 -0
- package/src/styles/tokens/forms.css +61 -0
- package/src/styles/tokens/theme.css +93 -0
- package/src/styles/tokens.css +17 -0
- package/src/styles/utilities.css +9 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
ScrollArea
|
|
4
|
+
} from "./chunk-LELFPLTE.js";
|
|
5
|
+
import {
|
|
6
|
+
Select,
|
|
7
|
+
SelectContent,
|
|
8
|
+
SelectItem,
|
|
9
|
+
SelectTrigger,
|
|
10
|
+
SelectValue
|
|
11
|
+
} from "./chunk-J6NXDZR5.js";
|
|
12
|
+
import {
|
|
13
|
+
CountBadge
|
|
14
|
+
} from "./chunk-H7TETFLB.js";
|
|
15
|
+
import {
|
|
16
|
+
Skeleton
|
|
17
|
+
} from "./chunk-YEW65ASC.js";
|
|
18
|
+
|
|
19
|
+
// src/primitives/board-view-internals.tsx
|
|
20
|
+
import { ChevronRight } from "lucide-react";
|
|
21
|
+
import { useState } from "react";
|
|
22
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
23
|
+
function BoardColumnComponent({
|
|
24
|
+
column,
|
|
25
|
+
items,
|
|
26
|
+
loading,
|
|
27
|
+
getItemId,
|
|
28
|
+
renderCard,
|
|
29
|
+
renderColumnHeader,
|
|
30
|
+
renderEmpty,
|
|
31
|
+
dragItemId,
|
|
32
|
+
onDragStart,
|
|
33
|
+
onDragEnd,
|
|
34
|
+
onMove,
|
|
35
|
+
columnMinHeight
|
|
36
|
+
}) {
|
|
37
|
+
const [isDropTarget, setIsDropTarget] = useState(false);
|
|
38
|
+
const handleDrop = (e) => {
|
|
39
|
+
e.preventDefault();
|
|
40
|
+
setIsDropTarget(false);
|
|
41
|
+
const itemId = e.dataTransfer.getData("text/board-item-id");
|
|
42
|
+
const fromColumn = e.dataTransfer.getData("text/board-column-id");
|
|
43
|
+
if (!itemId || fromColumn === column.id) return;
|
|
44
|
+
const parsed = Number(itemId);
|
|
45
|
+
onMove?.(Number.isNaN(parsed) ? itemId : parsed, fromColumn, column.id);
|
|
46
|
+
};
|
|
47
|
+
return /* @__PURE__ */ jsxs(
|
|
48
|
+
"div",
|
|
49
|
+
{
|
|
50
|
+
onDragOver: (e) => {
|
|
51
|
+
if (dragItemId !== null) {
|
|
52
|
+
e.preventDefault();
|
|
53
|
+
setIsDropTarget(true);
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
onDragLeave: () => setIsDropTarget(false),
|
|
57
|
+
onDrop: handleDrop,
|
|
58
|
+
className: `rounded-md flex flex-col transition-colors ${isDropTarget ? "bg-primary/10 ring-2 ring-primary/40" : "bg-muted/30"}`,
|
|
59
|
+
style: { minHeight: columnMinHeight },
|
|
60
|
+
children: [
|
|
61
|
+
renderColumnHeader ? renderColumnHeader(column, items) : /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between px-3 py-2.5 border-b", children: [
|
|
62
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs font-medium uppercase tracking-wider", children: column.label }),
|
|
63
|
+
/* @__PURE__ */ jsx(CountBadge, { value: items.length, variant: "secondary" })
|
|
64
|
+
] }),
|
|
65
|
+
/* @__PURE__ */ jsx(ScrollArea, { className: "flex-1", children: /* @__PURE__ */ jsx("div", { className: "p-2 space-y-2", children: loading && items.length === 0 ? Array.from({ length: 2 }).map((_, i) => /* @__PURE__ */ jsx(Skeleton, { className: "h-20 w-full" }, i)) : items.length === 0 ? renderEmpty ? renderEmpty(column) : /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground text-center py-6", children: isDropTarget ? "Drop to move here" : "Empty" }) : items.map((item) => {
|
|
66
|
+
const id = getItemId(item);
|
|
67
|
+
return /* @__PURE__ */ jsx(
|
|
68
|
+
"div",
|
|
69
|
+
{
|
|
70
|
+
draggable: !!onMove,
|
|
71
|
+
onDragStart: (e) => {
|
|
72
|
+
e.dataTransfer.setData("text/board-item-id", String(id));
|
|
73
|
+
e.dataTransfer.setData("text/board-column-id", column.id);
|
|
74
|
+
e.dataTransfer.effectAllowed = "move";
|
|
75
|
+
onDragStart(id);
|
|
76
|
+
},
|
|
77
|
+
onDragEnd,
|
|
78
|
+
className: onMove ? `cursor-grab active:cursor-grabbing ${dragItemId === id ? "opacity-40 ring-2 ring-primary rounded-md" : ""}` : "",
|
|
79
|
+
children: renderCard(item, column.id)
|
|
80
|
+
},
|
|
81
|
+
id
|
|
82
|
+
);
|
|
83
|
+
}) }) })
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
function MobileBoardView({
|
|
89
|
+
columns,
|
|
90
|
+
grouped,
|
|
91
|
+
activeColumnId,
|
|
92
|
+
onActiveColumnChange,
|
|
93
|
+
loading,
|
|
94
|
+
getItemId,
|
|
95
|
+
renderCard,
|
|
96
|
+
renderEmpty,
|
|
97
|
+
onMove
|
|
98
|
+
}) {
|
|
99
|
+
const activeColumn = columns.find((c) => c.id === activeColumnId) ?? columns[0];
|
|
100
|
+
const items = activeColumn ? grouped[activeColumn.id] ?? [] : [];
|
|
101
|
+
return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
102
|
+
/* @__PURE__ */ jsx("div", { className: "flex gap-1.5 overflow-x-auto pb-1 -mx-1 px-1 scrollbar-none", children: columns.map((col) => {
|
|
103
|
+
const count = (grouped[col.id] ?? []).length;
|
|
104
|
+
const isActive = col.id === activeColumn.id;
|
|
105
|
+
return /* @__PURE__ */ jsxs(
|
|
106
|
+
"button",
|
|
107
|
+
{
|
|
108
|
+
type: "button",
|
|
109
|
+
onClick: () => onActiveColumnChange(col.id),
|
|
110
|
+
className: `flex items-center gap-1.5 whitespace-nowrap rounded-full px-3 py-1.5 text-xs font-medium transition-colors shrink-0 ${isActive ? "bg-foreground text-background" : "bg-muted text-muted-foreground"}`,
|
|
111
|
+
children: [
|
|
112
|
+
col.label,
|
|
113
|
+
count > 0 && /* @__PURE__ */ jsx(CountBadge, { value: count, variant: "secondary" })
|
|
114
|
+
]
|
|
115
|
+
},
|
|
116
|
+
col.id
|
|
117
|
+
);
|
|
118
|
+
}) }),
|
|
119
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-2", children: loading && items.length === 0 ? Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ jsx(Skeleton, { className: "h-20 w-full rounded-lg" }, i)) : items.length === 0 ? renderEmpty ? renderEmpty(activeColumn) : /* @__PURE__ */ jsxs("p", { className: "text-sm text-muted-foreground text-center py-8", children: [
|
|
120
|
+
"No items in ",
|
|
121
|
+
activeColumn.label
|
|
122
|
+
] }) : items.map((item) => {
|
|
123
|
+
const id = getItemId(item);
|
|
124
|
+
return /* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
125
|
+
renderCard(item, activeColumn.id),
|
|
126
|
+
onMove && /* @__PURE__ */ jsx("div", { className: "absolute top-2 right-2", onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsxs(
|
|
127
|
+
Select,
|
|
128
|
+
{
|
|
129
|
+
value: activeColumn.id,
|
|
130
|
+
onValueChange: (toCol) => {
|
|
131
|
+
if (toCol !== activeColumn.id) {
|
|
132
|
+
onMove(id, activeColumn.id, toCol);
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
children: [
|
|
136
|
+
/* @__PURE__ */ jsxs(SelectTrigger, { className: "h-7 text-[10px] w-auto gap-1 px-2 bg-background/80 backdrop-blur-sm", children: [
|
|
137
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-3 w-3" }),
|
|
138
|
+
/* @__PURE__ */ jsx(SelectValue, {})
|
|
139
|
+
] }),
|
|
140
|
+
/* @__PURE__ */ jsx(SelectContent, { children: columns.map((col) => /* @__PURE__ */ jsx(SelectItem, { value: col.id, className: "text-xs", children: col.label }, col.id)) })
|
|
141
|
+
]
|
|
142
|
+
}
|
|
143
|
+
) })
|
|
144
|
+
] }, id);
|
|
145
|
+
}) })
|
|
146
|
+
] });
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
export {
|
|
150
|
+
BoardColumnComponent,
|
|
151
|
+
MobileBoardView
|
|
152
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
5
|
+
|
|
6
|
+
// src/primitives/alert.tsx
|
|
7
|
+
var _classvarianceauthority = require('class-variance-authority');
|
|
8
|
+
var _react = require('react');
|
|
9
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
10
|
+
var alertVariants = _classvarianceauthority.cva.call(void 0,
|
|
11
|
+
"relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",
|
|
12
|
+
{
|
|
13
|
+
variants: {
|
|
14
|
+
variant: {
|
|
15
|
+
default: "border-border bg-background text-foreground",
|
|
16
|
+
destructive: "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive",
|
|
17
|
+
warning: "border-amber-500/50 bg-amber-500/10 text-amber-800 dark:text-amber-300 [&>svg]:text-amber-600",
|
|
18
|
+
success: "border-emerald-500/40 bg-emerald-500/10 text-emerald-800 dark:text-emerald-300 [&>svg]:text-emerald-600"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
defaultVariants: {
|
|
22
|
+
variant: "default"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
var Alert = _react.forwardRef.call(void 0, ({ className, variant, marginBottom = "none", marginTop = "none", padding = "default", radius = "lg", textSize = "inherit", layout = "block", justify = "start", align = "start", ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27
|
+
"div",
|
|
28
|
+
{
|
|
29
|
+
ref,
|
|
30
|
+
role: "alert",
|
|
31
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
32
|
+
alertVariants({ variant }),
|
|
33
|
+
marginBottom === "md" && "mb-3",
|
|
34
|
+
marginTop === "md" && "mt-4",
|
|
35
|
+
padding === "compact" && "px-3 py-2",
|
|
36
|
+
radius === "md" && "rounded-md",
|
|
37
|
+
radius === "xl" && "rounded-xl",
|
|
38
|
+
textSize === "xs" && "text-xs",
|
|
39
|
+
textSize === "sm" && "text-sm",
|
|
40
|
+
layout === "row" && "flex gap-3",
|
|
41
|
+
justify === "between" && "justify-between",
|
|
42
|
+
align === "center" && "items-center",
|
|
43
|
+
className
|
|
44
|
+
),
|
|
45
|
+
...props
|
|
46
|
+
}
|
|
47
|
+
));
|
|
48
|
+
Alert.displayName = "Alert";
|
|
49
|
+
var AlertTitle = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
50
|
+
"h5",
|
|
51
|
+
{
|
|
52
|
+
ref,
|
|
53
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, "mb-1 font-medium leading-none tracking-tight", className),
|
|
54
|
+
...props
|
|
55
|
+
}
|
|
56
|
+
));
|
|
57
|
+
AlertTitle.displayName = "AlertTitle";
|
|
58
|
+
var AlertDescription = _react.forwardRef.call(void 0, ({ className, spacing = "none", ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
59
|
+
"div",
|
|
60
|
+
{
|
|
61
|
+
ref,
|
|
62
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, "text-sm [&_p]:leading-relaxed", spacing === "tight" && "space-y-1", className),
|
|
63
|
+
...props
|
|
64
|
+
}
|
|
65
|
+
));
|
|
66
|
+
AlertDescription.displayName = "AlertDescription";
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription;
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "./chunk-G6SRSWXB.js";
|
|
5
|
+
|
|
6
|
+
// src/primitives/stack.tsx
|
|
7
|
+
import { forwardRef } from "react";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
var gapStyles = {
|
|
10
|
+
none: "gap-0",
|
|
11
|
+
xs: "gap-1",
|
|
12
|
+
sm: "gap-2",
|
|
13
|
+
compact: "gap-3",
|
|
14
|
+
md: "gap-4",
|
|
15
|
+
lg: "gap-6"
|
|
16
|
+
};
|
|
17
|
+
var directionStyles = {
|
|
18
|
+
vertical: "flex flex-col",
|
|
19
|
+
horizontal: "flex flex-row"
|
|
20
|
+
};
|
|
21
|
+
var alignStyles = {
|
|
22
|
+
start: "items-start",
|
|
23
|
+
center: "items-center",
|
|
24
|
+
end: "items-end",
|
|
25
|
+
stretch: "items-stretch",
|
|
26
|
+
baseline: "items-baseline"
|
|
27
|
+
};
|
|
28
|
+
var justifyStyles = {
|
|
29
|
+
start: "justify-start",
|
|
30
|
+
center: "justify-center",
|
|
31
|
+
end: "justify-end",
|
|
32
|
+
between: "justify-between"
|
|
33
|
+
};
|
|
34
|
+
var Stack = forwardRef(
|
|
35
|
+
function Stack2({
|
|
36
|
+
gap = "md",
|
|
37
|
+
direction = "vertical",
|
|
38
|
+
reverse = false,
|
|
39
|
+
align = "stretch",
|
|
40
|
+
justify = "start",
|
|
41
|
+
wrap = false,
|
|
42
|
+
grow = false,
|
|
43
|
+
shrink = true,
|
|
44
|
+
minWidth = "auto",
|
|
45
|
+
minHeight = "auto",
|
|
46
|
+
height = "auto",
|
|
47
|
+
overflow = "visible",
|
|
48
|
+
marginTop = "none",
|
|
49
|
+
marginBottom = "none",
|
|
50
|
+
marginEnd = "none",
|
|
51
|
+
marginStart = "none",
|
|
52
|
+
overlap = "none",
|
|
53
|
+
padding = "none",
|
|
54
|
+
paddingX = "none",
|
|
55
|
+
paddingY = "none",
|
|
56
|
+
paddingTop = "none",
|
|
57
|
+
paddingBottom = "none",
|
|
58
|
+
border = "none",
|
|
59
|
+
tone = "inherit",
|
|
60
|
+
textSize = "inherit",
|
|
61
|
+
surface = "none",
|
|
62
|
+
radius = "none",
|
|
63
|
+
width = "auto",
|
|
64
|
+
textAlign = "start",
|
|
65
|
+
columnGap = "none",
|
|
66
|
+
rowGap = "none",
|
|
67
|
+
font = "sans",
|
|
68
|
+
transform = "none",
|
|
69
|
+
tracking = "normal",
|
|
70
|
+
maxWidth = "none",
|
|
71
|
+
maxHeight = "none",
|
|
72
|
+
centered = false,
|
|
73
|
+
opacity = "full",
|
|
74
|
+
interaction = "none",
|
|
75
|
+
selected = false,
|
|
76
|
+
divided = false,
|
|
77
|
+
gridSpan = "auto",
|
|
78
|
+
as,
|
|
79
|
+
className,
|
|
80
|
+
...props
|
|
81
|
+
}, ref) {
|
|
82
|
+
const Component = as ?? "div";
|
|
83
|
+
return /* @__PURE__ */ jsx(
|
|
84
|
+
Component,
|
|
85
|
+
{
|
|
86
|
+
ref,
|
|
87
|
+
className: cn(
|
|
88
|
+
directionStyles[direction],
|
|
89
|
+
reverse && (direction === "horizontal" ? "flex-row-reverse" : "flex-col-reverse"),
|
|
90
|
+
gapStyles[gap],
|
|
91
|
+
alignStyles[align],
|
|
92
|
+
justifyStyles[justify],
|
|
93
|
+
wrap && "flex-wrap",
|
|
94
|
+
grow && "flex-1",
|
|
95
|
+
!shrink && "shrink-0",
|
|
96
|
+
minWidth === "zero" && "min-w-0",
|
|
97
|
+
minHeight === "zero" && "min-h-0",
|
|
98
|
+
height === "full" && "h-full",
|
|
99
|
+
overflow === "hidden" && "overflow-hidden",
|
|
100
|
+
overflow === "auto" && "overflow-auto",
|
|
101
|
+
overflow === "x-auto" && "overflow-x-auto",
|
|
102
|
+
overflow === "y-auto" && "overflow-y-auto",
|
|
103
|
+
marginTop === "xs" && "mt-1",
|
|
104
|
+
marginTop === "sm" && "mt-2",
|
|
105
|
+
marginTop === "md" && "mt-4",
|
|
106
|
+
marginTop === "lg" && "mt-6",
|
|
107
|
+
marginBottom === "md" && "mb-3",
|
|
108
|
+
marginBottom === "lg" && "mb-8",
|
|
109
|
+
marginEnd === "negative-xs" && "-mr-1",
|
|
110
|
+
marginStart === "auto" && "ml-auto",
|
|
111
|
+
overlap === "sm" && "-space-x-2",
|
|
112
|
+
padding === "xs" && "p-[10px]",
|
|
113
|
+
padding === "sm" && "p-[14px]",
|
|
114
|
+
padding === "control" && "px-3 py-2",
|
|
115
|
+
padding === "compact" && "p-3",
|
|
116
|
+
padding === "md" && "p-[22px]",
|
|
117
|
+
padding === "lg" && "p-[26px]",
|
|
118
|
+
padding === "action-row" && "px-4 py-3",
|
|
119
|
+
padding === "card-header" && "px-5 pt-5 pb-2",
|
|
120
|
+
padding === "card-footer" && "px-5 pb-2",
|
|
121
|
+
paddingX === "md" && "px-[22px]",
|
|
122
|
+
paddingX === "lg" && "px-[26px]",
|
|
123
|
+
paddingY === "sm" && "py-[14px]",
|
|
124
|
+
paddingY === "compact" && "py-2.5",
|
|
125
|
+
paddingY === "section" && "py-3",
|
|
126
|
+
paddingY === "md" && "py-[22px]",
|
|
127
|
+
paddingY === "lg" && "py-[26px]",
|
|
128
|
+
paddingY === "xl" && "py-8",
|
|
129
|
+
paddingY === "hero" && "py-24",
|
|
130
|
+
paddingTop === "tight" && "pt-0.5",
|
|
131
|
+
paddingTop === "md" && "pt-3",
|
|
132
|
+
paddingTop === "base" && "pt-4",
|
|
133
|
+
paddingTop === "lg" && "pt-5",
|
|
134
|
+
paddingTop === "safe" && "pt-[max(env(safe-area-inset-top),0.75rem)]",
|
|
135
|
+
paddingBottom === "sm" && "pb-2",
|
|
136
|
+
paddingBottom === "md" && "pb-3",
|
|
137
|
+
border === "top" && "border-t",
|
|
138
|
+
border === "bottom" && "border-b",
|
|
139
|
+
border === "dashed" && "border border-dashed",
|
|
140
|
+
tone === "muted" && "text-muted-foreground",
|
|
141
|
+
tone === "subtle" && "text-muted-foreground/70",
|
|
142
|
+
tone === "primary" && "text-primary",
|
|
143
|
+
tone === "warning" && "text-amber-700 dark:text-amber-400",
|
|
144
|
+
tone === "destructive" && "text-destructive",
|
|
145
|
+
textSize === "xs" && "text-xs",
|
|
146
|
+
textSize === "sm" && "text-sm",
|
|
147
|
+
surface === "background" && "bg-background",
|
|
148
|
+
surface === "card" && "border bg-card",
|
|
149
|
+
surface === "muted" && "border bg-muted/40",
|
|
150
|
+
radius === "md" && "rounded-md",
|
|
151
|
+
radius === "lg" && "rounded-lg",
|
|
152
|
+
radius === "xl" && "rounded-xl",
|
|
153
|
+
width === "full" && "w-full",
|
|
154
|
+
width === "fit" && "inline-flex w-fit",
|
|
155
|
+
textAlign === "center" && "text-center",
|
|
156
|
+
columnGap === "md" && "gap-x-3",
|
|
157
|
+
rowGap === "xs" && "gap-y-1",
|
|
158
|
+
font === "mono" && "font-mono",
|
|
159
|
+
transform === "uppercase" && "uppercase",
|
|
160
|
+
tracking === "wide" && "tracking-[0.18em]",
|
|
161
|
+
maxWidth === "xl" && "max-w-xl",
|
|
162
|
+
maxHeight === "viewport" && "max-h-[60vh]",
|
|
163
|
+
centered && "mx-auto",
|
|
164
|
+
opacity === "soft" && "opacity-70",
|
|
165
|
+
interaction === "group" && "group",
|
|
166
|
+
interaction === "hover-accent" && "transition-colors hover:bg-accent/40",
|
|
167
|
+
interaction === "group-hover-accent" && "group transition-colors hover:bg-accent/40",
|
|
168
|
+
selected && "border-foreground",
|
|
169
|
+
divided && "divide-y",
|
|
170
|
+
gridSpan === "full" && "sm:col-span-full",
|
|
171
|
+
className
|
|
172
|
+
),
|
|
173
|
+
...props
|
|
174
|
+
}
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
);
|
|
178
|
+
|
|
179
|
+
export {
|
|
180
|
+
Stack
|
|
181
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
5
|
+
|
|
6
|
+
// src/primitives/eyebrow.tsx
|
|
7
|
+
var _react = require('react');
|
|
8
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
9
|
+
var Eyebrow = _react.forwardRef.call(void 0,
|
|
10
|
+
function Eyebrow2({ as, className, dot, display = "inline", marginBottom = "none", children, ...props }, ref) {
|
|
11
|
+
const Tag = _nullishCoalesce(as, () => ( "span"));
|
|
12
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13
|
+
Tag,
|
|
14
|
+
{
|
|
15
|
+
ref,
|
|
16
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
17
|
+
"font-mono text-xs uppercase tracking-[0.18em] text-muted-foreground",
|
|
18
|
+
dot && "inline-flex items-center",
|
|
19
|
+
display === "block" && "block",
|
|
20
|
+
marginBottom === "sm" && "mb-2",
|
|
21
|
+
marginBottom === "md" && "mb-3",
|
|
22
|
+
className
|
|
23
|
+
),
|
|
24
|
+
...props,
|
|
25
|
+
children: [
|
|
26
|
+
dot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27
|
+
"span",
|
|
28
|
+
{
|
|
29
|
+
"aria-hidden": true,
|
|
30
|
+
className: "mr-2 inline-block h-1.5 w-1.5 shrink-0 rounded-full bg-primary"
|
|
31
|
+
}
|
|
32
|
+
),
|
|
33
|
+
children
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
exports.Eyebrow = Eyebrow;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "./chunk-G6SRSWXB.js";
|
|
5
|
+
|
|
6
|
+
// src/primitives/tabs.tsx
|
|
7
|
+
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
8
|
+
import {
|
|
9
|
+
forwardRef,
|
|
10
|
+
useCallback,
|
|
11
|
+
useEffect,
|
|
12
|
+
useImperativeHandle,
|
|
13
|
+
useRef,
|
|
14
|
+
useState
|
|
15
|
+
} from "react";
|
|
16
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
17
|
+
var Tabs = TabsPrimitive.Root;
|
|
18
|
+
var TabsList = forwardRef(
|
|
19
|
+
function TabsList2({
|
|
20
|
+
className,
|
|
21
|
+
responsiveGrid = false,
|
|
22
|
+
scrollable = false,
|
|
23
|
+
width = "auto",
|
|
24
|
+
marginBottom = "none",
|
|
25
|
+
...props
|
|
26
|
+
}, ref) {
|
|
27
|
+
const listRef = useRef(null);
|
|
28
|
+
const [overflow, setOverflow] = useState({ start: false, end: false });
|
|
29
|
+
useImperativeHandle(ref, () => listRef.current);
|
|
30
|
+
const updateOverflow = useCallback(() => {
|
|
31
|
+
const node = listRef.current;
|
|
32
|
+
if (!node) return;
|
|
33
|
+
const maxScrollLeft = Math.max(0, node.scrollWidth - node.clientWidth);
|
|
34
|
+
const next = {
|
|
35
|
+
start: node.scrollLeft > 1,
|
|
36
|
+
end: node.scrollLeft < maxScrollLeft - 1
|
|
37
|
+
};
|
|
38
|
+
setOverflow(
|
|
39
|
+
(current) => current.start === next.start && current.end === next.end ? current : next
|
|
40
|
+
);
|
|
41
|
+
}, []);
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
const node = listRef.current;
|
|
44
|
+
if (!scrollable || !node) {
|
|
45
|
+
setOverflow({ start: false, end: false });
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
updateOverflow();
|
|
49
|
+
node.addEventListener("scroll", updateOverflow, { passive: true });
|
|
50
|
+
window.addEventListener("resize", updateOverflow);
|
|
51
|
+
const observer = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(updateOverflow);
|
|
52
|
+
observer?.observe(node);
|
|
53
|
+
return () => {
|
|
54
|
+
node.removeEventListener("scroll", updateOverflow);
|
|
55
|
+
window.removeEventListener("resize", updateOverflow);
|
|
56
|
+
observer?.disconnect();
|
|
57
|
+
};
|
|
58
|
+
}, [scrollable, updateOverflow]);
|
|
59
|
+
const list = /* @__PURE__ */ jsx(
|
|
60
|
+
TabsPrimitive.List,
|
|
61
|
+
{
|
|
62
|
+
ref: listRef,
|
|
63
|
+
className: cn(
|
|
64
|
+
"min-h-10 h-auto items-center rounded-md bg-muted p-1 text-muted-foreground",
|
|
65
|
+
responsiveGrid ? "grid grid-cols-2 sm:grid-cols-4 [&>*]:min-w-0 [&>*]:whitespace-normal" : scrollable ? "flex max-w-full justify-start overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden" : "inline-flex justify-start",
|
|
66
|
+
width === "full" && "w-full",
|
|
67
|
+
marginBottom === "lg" && "mb-6",
|
|
68
|
+
className
|
|
69
|
+
),
|
|
70
|
+
...props
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
if (!scrollable || responsiveGrid) return list;
|
|
74
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("relative max-w-full", width === "full" && "w-full"), children: [
|
|
75
|
+
list,
|
|
76
|
+
overflow.start && /* @__PURE__ */ jsx(
|
|
77
|
+
"span",
|
|
78
|
+
{
|
|
79
|
+
"aria-hidden": "true",
|
|
80
|
+
"data-scroll-fade": "start",
|
|
81
|
+
className: "pointer-events-none absolute inset-y-1 left-0 z-10 w-10 rounded-l-md bg-linear-to-r from-muted to-transparent"
|
|
82
|
+
}
|
|
83
|
+
),
|
|
84
|
+
overflow.end && /* @__PURE__ */ jsx(
|
|
85
|
+
"span",
|
|
86
|
+
{
|
|
87
|
+
"aria-hidden": "true",
|
|
88
|
+
"data-scroll-fade": "end",
|
|
89
|
+
className: "pointer-events-none absolute inset-y-1 right-0 z-10 w-10 rounded-r-md bg-linear-to-l from-muted to-transparent"
|
|
90
|
+
}
|
|
91
|
+
)
|
|
92
|
+
] });
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
TabsList.displayName = TabsPrimitive.List.displayName;
|
|
96
|
+
var triggerPadding = {
|
|
97
|
+
sm: "px-2 py-1",
|
|
98
|
+
md: "px-3 py-1.5",
|
|
99
|
+
lg: "px-4 py-2",
|
|
100
|
+
xl: "px-6 py-3"
|
|
101
|
+
};
|
|
102
|
+
var TabsTrigger = forwardRef(({ className, padding = "xl", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
103
|
+
TabsPrimitive.Trigger,
|
|
104
|
+
{
|
|
105
|
+
ref,
|
|
106
|
+
className: cn(
|
|
107
|
+
"inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-sm text-sm font-medium ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-xs",
|
|
108
|
+
triggerPadding[padding],
|
|
109
|
+
className
|
|
110
|
+
),
|
|
111
|
+
...props
|
|
112
|
+
}
|
|
113
|
+
));
|
|
114
|
+
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
115
|
+
var TabsContent = forwardRef(({ className, spacing = "none", marginTop = "default", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
116
|
+
TabsPrimitive.Content,
|
|
117
|
+
{
|
|
118
|
+
ref,
|
|
119
|
+
className: cn(
|
|
120
|
+
marginTop === "default" ? "mt-2" : "mt-3",
|
|
121
|
+
"ring-offset-background focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
122
|
+
spacing === "compact" && "space-y-3",
|
|
123
|
+
spacing === "md" && "space-y-4",
|
|
124
|
+
spacing === "relaxed" && "space-y-6",
|
|
125
|
+
className
|
|
126
|
+
),
|
|
127
|
+
...props
|
|
128
|
+
}
|
|
129
|
+
));
|
|
130
|
+
TabsContent.displayName = TabsPrimitive.Content.displayName;
|
|
131
|
+
|
|
132
|
+
export {
|
|
133
|
+
Tabs,
|
|
134
|
+
TabsList,
|
|
135
|
+
TabsTrigger,
|
|
136
|
+
TabsContent
|
|
137
|
+
};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
5
|
+
|
|
6
|
+
// src/primitives/interactive-card.tsx
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
var _react = require('react');
|
|
10
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
11
|
+
function interactiveCardClass({
|
|
12
|
+
selected,
|
|
13
|
+
surface = "card",
|
|
14
|
+
borderWidth = "default"
|
|
15
|
+
} = {}) {
|
|
16
|
+
return _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
17
|
+
"group relative w-full rounded-xl text-left",
|
|
18
|
+
borderWidth === "thin" ? "border" : "border-2",
|
|
19
|
+
surface === "subtle" ? "bg-muted/20" : "bg-card",
|
|
20
|
+
"transition-colors duration-150",
|
|
21
|
+
"hover:border-foreground/40",
|
|
22
|
+
"focus-visible:outline-hidden focus-visible:border-foreground/40",
|
|
23
|
+
"focus-visible:ring-2 focus-visible:ring-ring",
|
|
24
|
+
selected ? "border-primary" : "border-border"
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
var InteractiveCard = _react.forwardRef.call(void 0,
|
|
28
|
+
function InteractiveCard2({ as, selected, flat, clip, padding = "none", radius = "xl", joined = "none", border = "default", borderWidth = "default", display = "inline", textSize = "inherit", opacity = "full", surface = "card", indicator = "bar", className, onClick, onKeyDown, ...props }, ref) {
|
|
29
|
+
const Component = _nullishCoalesce(as, () => ( "button"));
|
|
30
|
+
const needsButtonSemantics = Component !== "button" && Component !== "a" && !!onClick;
|
|
31
|
+
const handleKeyDown = (event) => {
|
|
32
|
+
_optionalChain([onKeyDown, 'optionalCall', _ => _(event)]);
|
|
33
|
+
if (event.defaultPrevented || !needsButtonSemantics) return;
|
|
34
|
+
if (event.key === "Enter" || event.key === " ") {
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
_optionalChain([onClick, 'optionalCall', _2 => _2(event)]);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
40
|
+
Component,
|
|
41
|
+
{
|
|
42
|
+
ref,
|
|
43
|
+
...Component === "button" ? { type: "button" } : {},
|
|
44
|
+
...needsButtonSemantics ? { role: "button", tabIndex: 0 } : {},
|
|
45
|
+
...selected !== void 0 ? { "aria-current": selected || void 0 } : {},
|
|
46
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
47
|
+
interactiveCardClass({ selected, flat, indicator, surface, borderWidth }),
|
|
48
|
+
clip && "overflow-hidden",
|
|
49
|
+
padding === "compact" && "p-3",
|
|
50
|
+
padding === "row" && "px-3 py-2",
|
|
51
|
+
padding === "comfortable" && "px-5 py-4",
|
|
52
|
+
padding === "roomy" && "p-5 md:p-6",
|
|
53
|
+
radius === "lg" && "rounded-lg",
|
|
54
|
+
radius === "none" && "rounded-none",
|
|
55
|
+
joined === "top" && "rounded-b-none rounded-t-xl",
|
|
56
|
+
border === "none" && "border-0",
|
|
57
|
+
display === "block" && "block",
|
|
58
|
+
textSize === "sm" && "text-sm",
|
|
59
|
+
opacity === "subdued" && "opacity-60",
|
|
60
|
+
className
|
|
61
|
+
),
|
|
62
|
+
onClick,
|
|
63
|
+
onKeyDown: handleKeyDown,
|
|
64
|
+
...props
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
exports.interactiveCardClass = interactiveCardClass; exports.InteractiveCard = InteractiveCard;
|