@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,103 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { FilterDefinition } from '../lib/filter-types.cjs';
|
|
3
|
+
import { QuickFilter, QuickFiltersAppearance } from './quick-filters.cjs';
|
|
4
|
+
import { BoardColumn } from './board-view-internals.cjs';
|
|
5
|
+
|
|
6
|
+
interface BoardConfig<T> {
|
|
7
|
+
columns: BoardColumn[];
|
|
8
|
+
getColumnId: (_item: T) => string;
|
|
9
|
+
getItemId: (_item: T) => string | number;
|
|
10
|
+
renderCard: (_item: T, _columnId: string) => React.ReactNode;
|
|
11
|
+
renderColumnHeader?: (_column: BoardColumn, _items: T[]) => React.ReactNode;
|
|
12
|
+
renderColumnEmpty?: (_column: BoardColumn) => React.ReactNode;
|
|
13
|
+
onMove?: (_itemId: string | number, _fromColumn: string, _toColumn: string) => void;
|
|
14
|
+
columnWidth?: string;
|
|
15
|
+
columnMinHeight?: string;
|
|
16
|
+
viewport?: "auto" | "bounded";
|
|
17
|
+
}
|
|
18
|
+
interface ResourceListProps<T> {
|
|
19
|
+
data: T[] | undefined;
|
|
20
|
+
loading: boolean;
|
|
21
|
+
error: any;
|
|
22
|
+
refetch: () => void;
|
|
23
|
+
filterSchema: FilterDefinition[];
|
|
24
|
+
filters: Record<string, any>;
|
|
25
|
+
onFiltersChange: (_filters: Record<string, any>) => void;
|
|
26
|
+
quickFilters?: QuickFilter[];
|
|
27
|
+
/** Hide the "Quick filters:" label on the quick-filters row. */
|
|
28
|
+
quickFiltersShowLabel?: boolean;
|
|
29
|
+
/** Visual treatment for quick filters. Defaults to the compact surface. */
|
|
30
|
+
quickFiltersAppearance?: QuickFiltersAppearance;
|
|
31
|
+
searchTerm?: string;
|
|
32
|
+
onSearchChange?: (_searchTerm: string) => void;
|
|
33
|
+
enableServerSearch?: boolean;
|
|
34
|
+
searchFields?: string[];
|
|
35
|
+
searchPredicate?: (_item: T, _query: string) => boolean;
|
|
36
|
+
filterPredicate?: (_item: T, _filters: Record<string, any>) => boolean;
|
|
37
|
+
renderItem: (_item: T, _index: number) => React.ReactNode;
|
|
38
|
+
renderTable?: (_items: T[]) => React.ReactNode;
|
|
39
|
+
renderEmpty?: () => React.ReactNode;
|
|
40
|
+
renderLoading?: () => React.ReactNode;
|
|
41
|
+
renderError?: (_error: any) => React.ReactNode;
|
|
42
|
+
title: string;
|
|
43
|
+
showTitle?: boolean;
|
|
44
|
+
totalCount?: number;
|
|
45
|
+
searchPlaceholder?: string;
|
|
46
|
+
showSearch?: boolean;
|
|
47
|
+
showFilters?: boolean;
|
|
48
|
+
showViewToggle?: boolean;
|
|
49
|
+
/** Height and padding for the search/action toolbar. Defaults to roomy 48px controls. */
|
|
50
|
+
toolbarSize?: "compact" | "roomy";
|
|
51
|
+
/** Suppress search/filter chrome when the backing collection is truly empty. */
|
|
52
|
+
hideControlsWhenEmpty?: boolean;
|
|
53
|
+
viewMode?: "card" | "table" | "board";
|
|
54
|
+
onViewModeChange?: (_mode: "card" | "table" | "board") => void;
|
|
55
|
+
boardConfig?: BoardConfig<T>;
|
|
56
|
+
actions?: React.ReactNode;
|
|
57
|
+
filterActions?: React.ReactNode;
|
|
58
|
+
sortOptions?: any[];
|
|
59
|
+
sortValue?: string;
|
|
60
|
+
onSortChange?: (_value: string) => void;
|
|
61
|
+
className?: string;
|
|
62
|
+
containerClassName?: string;
|
|
63
|
+
cardGridClassName?: string;
|
|
64
|
+
showPagination?: boolean;
|
|
65
|
+
currentPage?: number;
|
|
66
|
+
onPreviousPage?: () => void;
|
|
67
|
+
onNextPage?: () => void;
|
|
68
|
+
useCompactSearch?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Layout shape.
|
|
71
|
+
*
|
|
72
|
+
* - `"panel"` (default) — admin-shell layout: full-height flex
|
|
73
|
+
* container, padded `p-4 border-b` header, and a fixed-height
|
|
74
|
+
* ScrollArea around the content. Use when the list IS the page,
|
|
75
|
+
* inside an app shell that owns the chrome.
|
|
76
|
+
* - `"flush"` — inline layout: no padded header wrapper, no
|
|
77
|
+
* ScrollArea, no enforced height. Header controls (search +
|
|
78
|
+
* filters) sit flush with the page's own padding; content flows
|
|
79
|
+
* in normal document order. Use when the list is one block on a
|
|
80
|
+
* page that already has its own container and other sections
|
|
81
|
+
* above/below.
|
|
82
|
+
*/
|
|
83
|
+
variant?: "panel" | "flush";
|
|
84
|
+
/**
|
|
85
|
+
* Cursor-style "load more" footer below the content. Pair with a
|
|
86
|
+
* server action that appends the next page to `data`. The parent
|
|
87
|
+
* still owns the list — this is just the button. `hasMore` toggles
|
|
88
|
+
* between the button and the "all caught up" line. Omit entirely
|
|
89
|
+
* to suppress (useful when `showPagination` page-based controls
|
|
90
|
+
* are in use instead).
|
|
91
|
+
*/
|
|
92
|
+
loadMore?: {
|
|
93
|
+
onClick: () => void;
|
|
94
|
+
hasMore: boolean;
|
|
95
|
+
loading?: boolean;
|
|
96
|
+
label?: React.ReactNode;
|
|
97
|
+
loadingLabel?: React.ReactNode;
|
|
98
|
+
doneLabel?: React.ReactNode;
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
declare function ResourceList<T>({ data, loading, error, refetch: _refetch, filterSchema, filters, onFiltersChange, quickFilters, quickFiltersAppearance, searchTerm: externalSearchTerm, onSearchChange, enableServerSearch, searchFields, searchPredicate, filterPredicate, renderItem, renderTable, renderEmpty, renderLoading, renderError, title, showTitle, totalCount, searchPlaceholder, showSearch, showFilters, showViewToggle, toolbarSize, hideControlsWhenEmpty, quickFiltersShowLabel, viewMode, onViewModeChange, boardConfig, actions, filterActions, sortOptions, sortValue, onSortChange, className, containerClassName, cardGridClassName, showPagination, currentPage, onPreviousPage, onNextPage, useCompactSearch, variant, loadMore, }: ResourceListProps<T>): react_jsx_runtime.JSX.Element;
|
|
102
|
+
|
|
103
|
+
export { BoardColumn, type BoardConfig, ResourceList };
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { FilterDefinition } from '../lib/filter-types.js';
|
|
3
|
+
import { QuickFilter, QuickFiltersAppearance } from './quick-filters.js';
|
|
4
|
+
import { BoardColumn } from './board-view-internals.js';
|
|
5
|
+
|
|
6
|
+
interface BoardConfig<T> {
|
|
7
|
+
columns: BoardColumn[];
|
|
8
|
+
getColumnId: (_item: T) => string;
|
|
9
|
+
getItemId: (_item: T) => string | number;
|
|
10
|
+
renderCard: (_item: T, _columnId: string) => React.ReactNode;
|
|
11
|
+
renderColumnHeader?: (_column: BoardColumn, _items: T[]) => React.ReactNode;
|
|
12
|
+
renderColumnEmpty?: (_column: BoardColumn) => React.ReactNode;
|
|
13
|
+
onMove?: (_itemId: string | number, _fromColumn: string, _toColumn: string) => void;
|
|
14
|
+
columnWidth?: string;
|
|
15
|
+
columnMinHeight?: string;
|
|
16
|
+
viewport?: "auto" | "bounded";
|
|
17
|
+
}
|
|
18
|
+
interface ResourceListProps<T> {
|
|
19
|
+
data: T[] | undefined;
|
|
20
|
+
loading: boolean;
|
|
21
|
+
error: any;
|
|
22
|
+
refetch: () => void;
|
|
23
|
+
filterSchema: FilterDefinition[];
|
|
24
|
+
filters: Record<string, any>;
|
|
25
|
+
onFiltersChange: (_filters: Record<string, any>) => void;
|
|
26
|
+
quickFilters?: QuickFilter[];
|
|
27
|
+
/** Hide the "Quick filters:" label on the quick-filters row. */
|
|
28
|
+
quickFiltersShowLabel?: boolean;
|
|
29
|
+
/** Visual treatment for quick filters. Defaults to the compact surface. */
|
|
30
|
+
quickFiltersAppearance?: QuickFiltersAppearance;
|
|
31
|
+
searchTerm?: string;
|
|
32
|
+
onSearchChange?: (_searchTerm: string) => void;
|
|
33
|
+
enableServerSearch?: boolean;
|
|
34
|
+
searchFields?: string[];
|
|
35
|
+
searchPredicate?: (_item: T, _query: string) => boolean;
|
|
36
|
+
filterPredicate?: (_item: T, _filters: Record<string, any>) => boolean;
|
|
37
|
+
renderItem: (_item: T, _index: number) => React.ReactNode;
|
|
38
|
+
renderTable?: (_items: T[]) => React.ReactNode;
|
|
39
|
+
renderEmpty?: () => React.ReactNode;
|
|
40
|
+
renderLoading?: () => React.ReactNode;
|
|
41
|
+
renderError?: (_error: any) => React.ReactNode;
|
|
42
|
+
title: string;
|
|
43
|
+
showTitle?: boolean;
|
|
44
|
+
totalCount?: number;
|
|
45
|
+
searchPlaceholder?: string;
|
|
46
|
+
showSearch?: boolean;
|
|
47
|
+
showFilters?: boolean;
|
|
48
|
+
showViewToggle?: boolean;
|
|
49
|
+
/** Height and padding for the search/action toolbar. Defaults to roomy 48px controls. */
|
|
50
|
+
toolbarSize?: "compact" | "roomy";
|
|
51
|
+
/** Suppress search/filter chrome when the backing collection is truly empty. */
|
|
52
|
+
hideControlsWhenEmpty?: boolean;
|
|
53
|
+
viewMode?: "card" | "table" | "board";
|
|
54
|
+
onViewModeChange?: (_mode: "card" | "table" | "board") => void;
|
|
55
|
+
boardConfig?: BoardConfig<T>;
|
|
56
|
+
actions?: React.ReactNode;
|
|
57
|
+
filterActions?: React.ReactNode;
|
|
58
|
+
sortOptions?: any[];
|
|
59
|
+
sortValue?: string;
|
|
60
|
+
onSortChange?: (_value: string) => void;
|
|
61
|
+
className?: string;
|
|
62
|
+
containerClassName?: string;
|
|
63
|
+
cardGridClassName?: string;
|
|
64
|
+
showPagination?: boolean;
|
|
65
|
+
currentPage?: number;
|
|
66
|
+
onPreviousPage?: () => void;
|
|
67
|
+
onNextPage?: () => void;
|
|
68
|
+
useCompactSearch?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Layout shape.
|
|
71
|
+
*
|
|
72
|
+
* - `"panel"` (default) — admin-shell layout: full-height flex
|
|
73
|
+
* container, padded `p-4 border-b` header, and a fixed-height
|
|
74
|
+
* ScrollArea around the content. Use when the list IS the page,
|
|
75
|
+
* inside an app shell that owns the chrome.
|
|
76
|
+
* - `"flush"` — inline layout: no padded header wrapper, no
|
|
77
|
+
* ScrollArea, no enforced height. Header controls (search +
|
|
78
|
+
* filters) sit flush with the page's own padding; content flows
|
|
79
|
+
* in normal document order. Use when the list is one block on a
|
|
80
|
+
* page that already has its own container and other sections
|
|
81
|
+
* above/below.
|
|
82
|
+
*/
|
|
83
|
+
variant?: "panel" | "flush";
|
|
84
|
+
/**
|
|
85
|
+
* Cursor-style "load more" footer below the content. Pair with a
|
|
86
|
+
* server action that appends the next page to `data`. The parent
|
|
87
|
+
* still owns the list — this is just the button. `hasMore` toggles
|
|
88
|
+
* between the button and the "all caught up" line. Omit entirely
|
|
89
|
+
* to suppress (useful when `showPagination` page-based controls
|
|
90
|
+
* are in use instead).
|
|
91
|
+
*/
|
|
92
|
+
loadMore?: {
|
|
93
|
+
onClick: () => void;
|
|
94
|
+
hasMore: boolean;
|
|
95
|
+
loading?: boolean;
|
|
96
|
+
label?: React.ReactNode;
|
|
97
|
+
loadingLabel?: React.ReactNode;
|
|
98
|
+
doneLabel?: React.ReactNode;
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
declare function ResourceList<T>({ data, loading, error, refetch: _refetch, filterSchema, filters, onFiltersChange, quickFilters, quickFiltersAppearance, searchTerm: externalSearchTerm, onSearchChange, enableServerSearch, searchFields, searchPredicate, filterPredicate, renderItem, renderTable, renderEmpty, renderLoading, renderError, title, showTitle, totalCount, searchPlaceholder, showSearch, showFilters, showViewToggle, toolbarSize, hideControlsWhenEmpty, quickFiltersShowLabel, viewMode, onViewModeChange, boardConfig, actions, filterActions, sortOptions, sortValue, onSortChange, className, containerClassName, cardGridClassName, showPagination, currentPage, onPreviousPage, onNextPage, useCompactSearch, variant, loadMore, }: ResourceListProps<T>): react_jsx_runtime.JSX.Element;
|
|
102
|
+
|
|
103
|
+
export { BoardColumn, type BoardConfig, ResourceList };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import {
|
|
4
|
+
ResourceList
|
|
5
|
+
} from "../chunk-UGF2K6NR.js";
|
|
6
|
+
import "../chunk-LI5EOSQG.js";
|
|
7
|
+
import "../chunk-J3GQXM37.js";
|
|
8
|
+
import "../chunk-ZRLUUZHK.js";
|
|
9
|
+
import "../chunk-MLHNYRFX.js";
|
|
10
|
+
import "../chunk-G76JANB4.js";
|
|
11
|
+
import "../chunk-YG7FBJRM.js";
|
|
12
|
+
import "../chunk-E2TQMDO7.js";
|
|
13
|
+
import "../chunk-H2O6NMLZ.js";
|
|
14
|
+
import "../chunk-RRRD5EUI.js";
|
|
15
|
+
import "../chunk-OICAYRVH.js";
|
|
16
|
+
import "../chunk-62UTAG2C.js";
|
|
17
|
+
import "../chunk-LELFPLTE.js";
|
|
18
|
+
import "../chunk-J6NXDZR5.js";
|
|
19
|
+
import "../chunk-QMA3WVB7.js";
|
|
20
|
+
import "../chunk-H7TETFLB.js";
|
|
21
|
+
import "../chunk-D4ZL2OEQ.js";
|
|
22
|
+
import "../chunk-YEW65ASC.js";
|
|
23
|
+
import "../chunk-HQRWRRZJ.js";
|
|
24
|
+
import "../chunk-PIU5SSUV.js";
|
|
25
|
+
import "../chunk-G6SRSWXB.js";
|
|
26
|
+
export {
|
|
27
|
+
ResourceList
|
|
28
|
+
};
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
var _chunk2BHI5ZWJcjs = require('../chunk-2BHI5ZWJ.cjs');
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
var _chunkWDXEJDMOcjs = require('../chunk-WDXEJDMO.cjs');
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
var _chunkKWLSBTB2cjs = require('../chunk-KWLSBTB2.cjs');
|
|
25
|
+
|
|
26
|
+
// src/primitives/responsive-dialog.tsx
|
|
27
|
+
var _react = require('react'); var React = _interopRequireWildcard(_react);
|
|
28
|
+
var _reactresponsive = require('react-responsive');
|
|
29
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
30
|
+
var DesktopContext = React.createContext(false);
|
|
31
|
+
var useIsDesktop = () => React.useContext(DesktopContext);
|
|
32
|
+
var DESKTOP_QUERY = { minWidth: 1024 };
|
|
33
|
+
var ResponsiveDialog = ({ children, ...props }) => {
|
|
34
|
+
const isDesktop = _reactresponsive.useMediaQuery.call(void 0, DESKTOP_QUERY);
|
|
35
|
+
const Root = isDesktop ? _chunkWDXEJDMOcjs.Dialog : _chunk2BHI5ZWJcjs.Drawer;
|
|
36
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DesktopContext.Provider, { value: isDesktop, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Root, { ...props, children }) });
|
|
37
|
+
};
|
|
38
|
+
ResponsiveDialog.displayName = "ResponsiveDialog";
|
|
39
|
+
var ResponsiveDialogTrigger = ({
|
|
40
|
+
children,
|
|
41
|
+
...props
|
|
42
|
+
}) => {
|
|
43
|
+
const Trigger = useIsDesktop() ? _chunkWDXEJDMOcjs.DialogTrigger : _chunk2BHI5ZWJcjs.DrawerTrigger;
|
|
44
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Trigger, { ...props, children });
|
|
45
|
+
};
|
|
46
|
+
ResponsiveDialogTrigger.displayName = "ResponsiveDialogTrigger";
|
|
47
|
+
var ResponsiveDialogClose = ({
|
|
48
|
+
children,
|
|
49
|
+
...props
|
|
50
|
+
}) => {
|
|
51
|
+
const Close = useIsDesktop() ? _chunkWDXEJDMOcjs.DialogClose : _chunk2BHI5ZWJcjs.DrawerClose;
|
|
52
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Close, { ...props, children });
|
|
53
|
+
};
|
|
54
|
+
ResponsiveDialogClose.displayName = "ResponsiveDialogClose";
|
|
55
|
+
var ResponsiveDialogContent = React.forwardRef(({ className, children, presentation = "default", ...props }, ref) => {
|
|
56
|
+
if (useIsDesktop()) {
|
|
57
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
58
|
+
_chunkWDXEJDMOcjs.DialogContent,
|
|
59
|
+
{
|
|
60
|
+
ref,
|
|
61
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
62
|
+
"flex max-h-[85vh] max-w-md flex-col gap-0 overflow-hidden p-0",
|
|
63
|
+
presentation === "preview" && "max-w-2xl sm:h-[85vh] [&>button:last-child]:hidden",
|
|
64
|
+
className
|
|
65
|
+
),
|
|
66
|
+
...props,
|
|
67
|
+
children
|
|
68
|
+
}
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
72
|
+
_chunk2BHI5ZWJcjs.DrawerContent,
|
|
73
|
+
{
|
|
74
|
+
ref,
|
|
75
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, "max-h-[92vh]", className),
|
|
76
|
+
...props,
|
|
77
|
+
children
|
|
78
|
+
}
|
|
79
|
+
);
|
|
80
|
+
});
|
|
81
|
+
ResponsiveDialogContent.displayName = "ResponsiveDialogContent";
|
|
82
|
+
var ResponsiveDialogHeader = ({
|
|
83
|
+
className,
|
|
84
|
+
visibility = "visible",
|
|
85
|
+
...props
|
|
86
|
+
}) => {
|
|
87
|
+
const Header = useIsDesktop() ? _chunkWDXEJDMOcjs.DialogHeader : _chunk2BHI5ZWJcjs.DrawerHeader;
|
|
88
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
89
|
+
Header,
|
|
90
|
+
{
|
|
91
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, useIsDesktop() && "p-4", visibility === "screen-reader" && "sr-only", className),
|
|
92
|
+
...props
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
};
|
|
96
|
+
ResponsiveDialogHeader.displayName = "ResponsiveDialogHeader";
|
|
97
|
+
var ResponsiveDialogBody = ({
|
|
98
|
+
className,
|
|
99
|
+
...props
|
|
100
|
+
}) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkKWLSBTB2cjs.cn.call(void 0, "min-h-0 flex-1 overflow-y-auto px-4 pb-6", className), ...props });
|
|
101
|
+
ResponsiveDialogBody.displayName = "ResponsiveDialogBody";
|
|
102
|
+
var ResponsiveDialogFooter = ({
|
|
103
|
+
className,
|
|
104
|
+
layout = "auto",
|
|
105
|
+
...props
|
|
106
|
+
}) => {
|
|
107
|
+
const isDesktop = useIsDesktop();
|
|
108
|
+
const Footer = isDesktop ? _chunkWDXEJDMOcjs.DialogFooter : _chunk2BHI5ZWJcjs.DrawerFooter;
|
|
109
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
110
|
+
Footer,
|
|
111
|
+
{
|
|
112
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
113
|
+
"mt-0 shrink-0 gap-2 border-t bg-background p-4",
|
|
114
|
+
layout === "fill" ? "flex-row space-x-0 [&>*]:min-w-0 [&>*]:flex-1" : isDesktop ? "flex-row justify-end space-x-0 [&>*]:flex-none" : "grid grid-cols-2 [&>*]:w-full",
|
|
115
|
+
className
|
|
116
|
+
),
|
|
117
|
+
...props
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
};
|
|
121
|
+
ResponsiveDialogFooter.displayName = "ResponsiveDialogFooter";
|
|
122
|
+
var ResponsiveDialogTitle = React.forwardRef(({ className, visuallyHidden = false, ...props }, ref) => {
|
|
123
|
+
const Title = useIsDesktop() ? _chunkWDXEJDMOcjs.DialogTitle : _chunk2BHI5ZWJcjs.DrawerTitle;
|
|
124
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Title, { ref, className: _chunkKWLSBTB2cjs.cn.call(void 0, visuallyHidden && "sr-only", className), ...props });
|
|
125
|
+
});
|
|
126
|
+
ResponsiveDialogTitle.displayName = "ResponsiveDialogTitle";
|
|
127
|
+
var ResponsiveDialogDescription = React.forwardRef(({ className, visuallyHidden = false, ...props }, ref) => {
|
|
128
|
+
const Description = useIsDesktop() ? _chunkWDXEJDMOcjs.DialogDescription : _chunk2BHI5ZWJcjs.DrawerDescription;
|
|
129
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Description, { ref, className: _chunkKWLSBTB2cjs.cn.call(void 0, visuallyHidden && "sr-only", className), ...props });
|
|
130
|
+
});
|
|
131
|
+
ResponsiveDialogDescription.displayName = "ResponsiveDialogDescription";
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
exports.ResponsiveDialog = ResponsiveDialog; exports.ResponsiveDialogBody = ResponsiveDialogBody; exports.ResponsiveDialogClose = ResponsiveDialogClose; exports.ResponsiveDialogContent = ResponsiveDialogContent; exports.ResponsiveDialogDescription = ResponsiveDialogDescription; exports.ResponsiveDialogFooter = ResponsiveDialogFooter; exports.ResponsiveDialogHeader = ResponsiveDialogHeader; exports.ResponsiveDialogTitle = ResponsiveDialogTitle; exports.ResponsiveDialogTrigger = ResponsiveDialogTrigger;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Dialog, DialogClose, DialogContent, DialogDescriptionProps, DialogTitleProps, DialogTrigger } from './dialog.cjs';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Drawer } from './drawer.cjs';
|
|
5
|
+
import '@radix-ui/react-dialog';
|
|
6
|
+
import 'vaul';
|
|
7
|
+
|
|
8
|
+
type RootProps = React.ComponentProps<typeof Dialog> & React.ComponentProps<typeof Drawer>;
|
|
9
|
+
declare const ResponsiveDialog: {
|
|
10
|
+
({ children, ...props }: RootProps): react_jsx_runtime.JSX.Element;
|
|
11
|
+
displayName: string;
|
|
12
|
+
};
|
|
13
|
+
declare const ResponsiveDialogTrigger: {
|
|
14
|
+
({ children, ...props }: React.ComponentProps<typeof DialogTrigger>): react_jsx_runtime.JSX.Element;
|
|
15
|
+
displayName: string;
|
|
16
|
+
};
|
|
17
|
+
declare const ResponsiveDialogClose: {
|
|
18
|
+
({ children, ...props }: React.ComponentProps<typeof DialogClose>): react_jsx_runtime.JSX.Element;
|
|
19
|
+
displayName: string;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Content. Desktop is a compact centered card (`max-w-md`); mobile is a
|
|
23
|
+
* tall bottom sheet. Both clamp height and own no inner padding — pad via
|
|
24
|
+
* <ResponsiveDialogHeader> (p-4) and <ResponsiveDialogBody> so the two
|
|
25
|
+
* presentations line up. The desktop card keeps the Dialog's built-in
|
|
26
|
+
* close "X"; mobile keeps the drawer grabber.
|
|
27
|
+
*/
|
|
28
|
+
interface ResponsiveDialogContentProps extends React.ComponentProps<typeof DialogContent> {
|
|
29
|
+
presentation?: "default" | "preview";
|
|
30
|
+
}
|
|
31
|
+
declare const ResponsiveDialogContent: React.ForwardRefExoticComponent<Omit<ResponsiveDialogContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
32
|
+
interface ResponsiveDialogHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
33
|
+
visibility?: "visible" | "screen-reader";
|
|
34
|
+
}
|
|
35
|
+
declare const ResponsiveDialogHeader: {
|
|
36
|
+
({ className, visibility, ...props }: ResponsiveDialogHeaderProps): react_jsx_runtime.JSX.Element;
|
|
37
|
+
displayName: string;
|
|
38
|
+
};
|
|
39
|
+
/** Padded, scrollable body — identical markup in both presentations. */
|
|
40
|
+
declare const ResponsiveDialogBody: {
|
|
41
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
42
|
+
displayName: string;
|
|
43
|
+
};
|
|
44
|
+
interface ResponsiveDialogFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
45
|
+
/** `fill` mirrors a review action dock: direct children share the full row. */
|
|
46
|
+
layout?: "auto" | "fill";
|
|
47
|
+
}
|
|
48
|
+
/** Persistent action row outside the scrollable body. */
|
|
49
|
+
declare const ResponsiveDialogFooter: {
|
|
50
|
+
({ className, layout, ...props }: ResponsiveDialogFooterProps): react_jsx_runtime.JSX.Element;
|
|
51
|
+
displayName: string;
|
|
52
|
+
};
|
|
53
|
+
declare const ResponsiveDialogTitle: React.ForwardRefExoticComponent<Omit<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
54
|
+
declare const ResponsiveDialogDescription: React.ForwardRefExoticComponent<Omit<DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
55
|
+
|
|
56
|
+
export { ResponsiveDialog, ResponsiveDialogBody, ResponsiveDialogClose, ResponsiveDialogContent, ResponsiveDialogDescription, ResponsiveDialogFooter, ResponsiveDialogHeader, ResponsiveDialogTitle, ResponsiveDialogTrigger };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Dialog, DialogClose, DialogContent, DialogDescriptionProps, DialogTitleProps, DialogTrigger } from './dialog.js';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Drawer } from './drawer.js';
|
|
5
|
+
import '@radix-ui/react-dialog';
|
|
6
|
+
import 'vaul';
|
|
7
|
+
|
|
8
|
+
type RootProps = React.ComponentProps<typeof Dialog> & React.ComponentProps<typeof Drawer>;
|
|
9
|
+
declare const ResponsiveDialog: {
|
|
10
|
+
({ children, ...props }: RootProps): react_jsx_runtime.JSX.Element;
|
|
11
|
+
displayName: string;
|
|
12
|
+
};
|
|
13
|
+
declare const ResponsiveDialogTrigger: {
|
|
14
|
+
({ children, ...props }: React.ComponentProps<typeof DialogTrigger>): react_jsx_runtime.JSX.Element;
|
|
15
|
+
displayName: string;
|
|
16
|
+
};
|
|
17
|
+
declare const ResponsiveDialogClose: {
|
|
18
|
+
({ children, ...props }: React.ComponentProps<typeof DialogClose>): react_jsx_runtime.JSX.Element;
|
|
19
|
+
displayName: string;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Content. Desktop is a compact centered card (`max-w-md`); mobile is a
|
|
23
|
+
* tall bottom sheet. Both clamp height and own no inner padding — pad via
|
|
24
|
+
* <ResponsiveDialogHeader> (p-4) and <ResponsiveDialogBody> so the two
|
|
25
|
+
* presentations line up. The desktop card keeps the Dialog's built-in
|
|
26
|
+
* close "X"; mobile keeps the drawer grabber.
|
|
27
|
+
*/
|
|
28
|
+
interface ResponsiveDialogContentProps extends React.ComponentProps<typeof DialogContent> {
|
|
29
|
+
presentation?: "default" | "preview";
|
|
30
|
+
}
|
|
31
|
+
declare const ResponsiveDialogContent: React.ForwardRefExoticComponent<Omit<ResponsiveDialogContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
32
|
+
interface ResponsiveDialogHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
33
|
+
visibility?: "visible" | "screen-reader";
|
|
34
|
+
}
|
|
35
|
+
declare const ResponsiveDialogHeader: {
|
|
36
|
+
({ className, visibility, ...props }: ResponsiveDialogHeaderProps): react_jsx_runtime.JSX.Element;
|
|
37
|
+
displayName: string;
|
|
38
|
+
};
|
|
39
|
+
/** Padded, scrollable body — identical markup in both presentations. */
|
|
40
|
+
declare const ResponsiveDialogBody: {
|
|
41
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
42
|
+
displayName: string;
|
|
43
|
+
};
|
|
44
|
+
interface ResponsiveDialogFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
45
|
+
/** `fill` mirrors a review action dock: direct children share the full row. */
|
|
46
|
+
layout?: "auto" | "fill";
|
|
47
|
+
}
|
|
48
|
+
/** Persistent action row outside the scrollable body. */
|
|
49
|
+
declare const ResponsiveDialogFooter: {
|
|
50
|
+
({ className, layout, ...props }: ResponsiveDialogFooterProps): react_jsx_runtime.JSX.Element;
|
|
51
|
+
displayName: string;
|
|
52
|
+
};
|
|
53
|
+
declare const ResponsiveDialogTitle: React.ForwardRefExoticComponent<Omit<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
54
|
+
declare const ResponsiveDialogDescription: React.ForwardRefExoticComponent<Omit<DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
55
|
+
|
|
56
|
+
export { ResponsiveDialog, ResponsiveDialogBody, ResponsiveDialogClose, ResponsiveDialogContent, ResponsiveDialogDescription, ResponsiveDialogFooter, ResponsiveDialogHeader, ResponsiveDialogTitle, ResponsiveDialogTrigger };
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Drawer,
|
|
4
|
+
DrawerClose,
|
|
5
|
+
DrawerContent,
|
|
6
|
+
DrawerDescription,
|
|
7
|
+
DrawerFooter,
|
|
8
|
+
DrawerHeader,
|
|
9
|
+
DrawerTitle,
|
|
10
|
+
DrawerTrigger
|
|
11
|
+
} from "../chunk-4HWCNRK4.js";
|
|
12
|
+
import {
|
|
13
|
+
Dialog,
|
|
14
|
+
DialogClose,
|
|
15
|
+
DialogContent,
|
|
16
|
+
DialogDescription,
|
|
17
|
+
DialogFooter,
|
|
18
|
+
DialogHeader,
|
|
19
|
+
DialogTitle,
|
|
20
|
+
DialogTrigger
|
|
21
|
+
} from "../chunk-3QT5VYZ3.js";
|
|
22
|
+
import {
|
|
23
|
+
cn
|
|
24
|
+
} from "../chunk-G6SRSWXB.js";
|
|
25
|
+
|
|
26
|
+
// src/primitives/responsive-dialog.tsx
|
|
27
|
+
import * as React from "react";
|
|
28
|
+
import { useMediaQuery } from "react-responsive";
|
|
29
|
+
import { jsx } from "react/jsx-runtime";
|
|
30
|
+
var DesktopContext = React.createContext(false);
|
|
31
|
+
var useIsDesktop = () => React.useContext(DesktopContext);
|
|
32
|
+
var DESKTOP_QUERY = { minWidth: 1024 };
|
|
33
|
+
var ResponsiveDialog = ({ children, ...props }) => {
|
|
34
|
+
const isDesktop = useMediaQuery(DESKTOP_QUERY);
|
|
35
|
+
const Root = isDesktop ? Dialog : Drawer;
|
|
36
|
+
return /* @__PURE__ */ jsx(DesktopContext.Provider, { value: isDesktop, children: /* @__PURE__ */ jsx(Root, { ...props, children }) });
|
|
37
|
+
};
|
|
38
|
+
ResponsiveDialog.displayName = "ResponsiveDialog";
|
|
39
|
+
var ResponsiveDialogTrigger = ({
|
|
40
|
+
children,
|
|
41
|
+
...props
|
|
42
|
+
}) => {
|
|
43
|
+
const Trigger = useIsDesktop() ? DialogTrigger : DrawerTrigger;
|
|
44
|
+
return /* @__PURE__ */ jsx(Trigger, { ...props, children });
|
|
45
|
+
};
|
|
46
|
+
ResponsiveDialogTrigger.displayName = "ResponsiveDialogTrigger";
|
|
47
|
+
var ResponsiveDialogClose = ({
|
|
48
|
+
children,
|
|
49
|
+
...props
|
|
50
|
+
}) => {
|
|
51
|
+
const Close = useIsDesktop() ? DialogClose : DrawerClose;
|
|
52
|
+
return /* @__PURE__ */ jsx(Close, { ...props, children });
|
|
53
|
+
};
|
|
54
|
+
ResponsiveDialogClose.displayName = "ResponsiveDialogClose";
|
|
55
|
+
var ResponsiveDialogContent = React.forwardRef(({ className, children, presentation = "default", ...props }, ref) => {
|
|
56
|
+
if (useIsDesktop()) {
|
|
57
|
+
return /* @__PURE__ */ jsx(
|
|
58
|
+
DialogContent,
|
|
59
|
+
{
|
|
60
|
+
ref,
|
|
61
|
+
className: cn(
|
|
62
|
+
"flex max-h-[85vh] max-w-md flex-col gap-0 overflow-hidden p-0",
|
|
63
|
+
presentation === "preview" && "max-w-2xl sm:h-[85vh] [&>button:last-child]:hidden",
|
|
64
|
+
className
|
|
65
|
+
),
|
|
66
|
+
...props,
|
|
67
|
+
children
|
|
68
|
+
}
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
return /* @__PURE__ */ jsx(
|
|
72
|
+
DrawerContent,
|
|
73
|
+
{
|
|
74
|
+
ref,
|
|
75
|
+
className: cn("max-h-[92vh]", className),
|
|
76
|
+
...props,
|
|
77
|
+
children
|
|
78
|
+
}
|
|
79
|
+
);
|
|
80
|
+
});
|
|
81
|
+
ResponsiveDialogContent.displayName = "ResponsiveDialogContent";
|
|
82
|
+
var ResponsiveDialogHeader = ({
|
|
83
|
+
className,
|
|
84
|
+
visibility = "visible",
|
|
85
|
+
...props
|
|
86
|
+
}) => {
|
|
87
|
+
const Header = useIsDesktop() ? DialogHeader : DrawerHeader;
|
|
88
|
+
return /* @__PURE__ */ jsx(
|
|
89
|
+
Header,
|
|
90
|
+
{
|
|
91
|
+
className: cn(useIsDesktop() && "p-4", visibility === "screen-reader" && "sr-only", className),
|
|
92
|
+
...props
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
};
|
|
96
|
+
ResponsiveDialogHeader.displayName = "ResponsiveDialogHeader";
|
|
97
|
+
var ResponsiveDialogBody = ({
|
|
98
|
+
className,
|
|
99
|
+
...props
|
|
100
|
+
}) => /* @__PURE__ */ jsx("div", { className: cn("min-h-0 flex-1 overflow-y-auto px-4 pb-6", className), ...props });
|
|
101
|
+
ResponsiveDialogBody.displayName = "ResponsiveDialogBody";
|
|
102
|
+
var ResponsiveDialogFooter = ({
|
|
103
|
+
className,
|
|
104
|
+
layout = "auto",
|
|
105
|
+
...props
|
|
106
|
+
}) => {
|
|
107
|
+
const isDesktop = useIsDesktop();
|
|
108
|
+
const Footer = isDesktop ? DialogFooter : DrawerFooter;
|
|
109
|
+
return /* @__PURE__ */ jsx(
|
|
110
|
+
Footer,
|
|
111
|
+
{
|
|
112
|
+
className: cn(
|
|
113
|
+
"mt-0 shrink-0 gap-2 border-t bg-background p-4",
|
|
114
|
+
layout === "fill" ? "flex-row space-x-0 [&>*]:min-w-0 [&>*]:flex-1" : isDesktop ? "flex-row justify-end space-x-0 [&>*]:flex-none" : "grid grid-cols-2 [&>*]:w-full",
|
|
115
|
+
className
|
|
116
|
+
),
|
|
117
|
+
...props
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
};
|
|
121
|
+
ResponsiveDialogFooter.displayName = "ResponsiveDialogFooter";
|
|
122
|
+
var ResponsiveDialogTitle = React.forwardRef(({ className, visuallyHidden = false, ...props }, ref) => {
|
|
123
|
+
const Title = useIsDesktop() ? DialogTitle : DrawerTitle;
|
|
124
|
+
return /* @__PURE__ */ jsx(Title, { ref, className: cn(visuallyHidden && "sr-only", className), ...props });
|
|
125
|
+
});
|
|
126
|
+
ResponsiveDialogTitle.displayName = "ResponsiveDialogTitle";
|
|
127
|
+
var ResponsiveDialogDescription = React.forwardRef(({ className, visuallyHidden = false, ...props }, ref) => {
|
|
128
|
+
const Description = useIsDesktop() ? DialogDescription : DrawerDescription;
|
|
129
|
+
return /* @__PURE__ */ jsx(Description, { ref, className: cn(visuallyHidden && "sr-only", className), ...props });
|
|
130
|
+
});
|
|
131
|
+
ResponsiveDialogDescription.displayName = "ResponsiveDialogDescription";
|
|
132
|
+
export {
|
|
133
|
+
ResponsiveDialog,
|
|
134
|
+
ResponsiveDialogBody,
|
|
135
|
+
ResponsiveDialogClose,
|
|
136
|
+
ResponsiveDialogContent,
|
|
137
|
+
ResponsiveDialogDescription,
|
|
138
|
+
ResponsiveDialogFooter,
|
|
139
|
+
ResponsiveDialogHeader,
|
|
140
|
+
ResponsiveDialogTitle,
|
|
141
|
+
ResponsiveDialogTrigger
|
|
142
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
// src/primitives/responsive-view.tsx
|
|
4
|
+
var _reactresponsive = require('react-responsive');
|
|
5
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
6
|
+
function ResponsiveView({ mobile, desktop }) {
|
|
7
|
+
const isMobile = _reactresponsive.useMediaQuery.call(void 0, { maxWidth: 1024 });
|
|
8
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10
|
+
"div",
|
|
11
|
+
{
|
|
12
|
+
className: "lg:hidden",
|
|
13
|
+
style: { display: isMobile ? void 0 : "none" },
|
|
14
|
+
children: mobile
|
|
15
|
+
}
|
|
16
|
+
),
|
|
17
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18
|
+
"div",
|
|
19
|
+
{
|
|
20
|
+
className: "hidden lg:block",
|
|
21
|
+
style: { display: isMobile ? "none" : void 0 },
|
|
22
|
+
children: desktop
|
|
23
|
+
}
|
|
24
|
+
)
|
|
25
|
+
] });
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
exports.ResponsiveView = ResponsiveView;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
interface ResponsiveViewProps {
|
|
5
|
+
mobile: ReactNode;
|
|
6
|
+
desktop: ReactNode;
|
|
7
|
+
}
|
|
8
|
+
declare function ResponsiveView({ mobile, desktop }: ResponsiveViewProps): react_jsx_runtime.JSX.Element;
|
|
9
|
+
|
|
10
|
+
export { ResponsiveView };
|