admin-ui-starter-kit 0.6.2 → 0.6.5
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/dist/_shared/auth-BZY91F5_.cjs +2 -0
- package/dist/_shared/auth-BZY91F5_.cjs.map +1 -0
- package/dist/_shared/auth-DcotjEbY.js +643 -0
- package/dist/_shared/auth-DcotjEbY.js.map +1 -0
- package/dist/_shared/buttons-Bek9F7qK.cjs +2 -0
- package/dist/_shared/buttons-Bek9F7qK.cjs.map +1 -0
- package/dist/_shared/buttons-DcynMPnE.js +137 -0
- package/dist/_shared/buttons-DcynMPnE.js.map +1 -0
- package/dist/_shared/cards-C1ythc0Q.js +354 -0
- package/dist/_shared/cards-C1ythc0Q.js.map +1 -0
- package/dist/_shared/cards-GSYfJ-oX.cjs +2 -0
- package/dist/_shared/cards-GSYfJ-oX.cjs.map +1 -0
- package/dist/_shared/comments-CmljtbAW.js +952 -0
- package/dist/_shared/comments-CmljtbAW.js.map +1 -0
- package/dist/_shared/comments-ColUq7eh.cjs +2 -0
- package/dist/_shared/comments-ColUq7eh.cjs.map +1 -0
- package/dist/_shared/containers-CB7zaAvN.cjs +2 -0
- package/dist/_shared/containers-CB7zaAvN.cjs.map +1 -0
- package/dist/_shared/containers-CLBmhGfs.js +48 -0
- package/dist/_shared/containers-CLBmhGfs.js.map +1 -0
- package/dist/_shared/data-display-BTsCY7A5.js +1873 -0
- package/dist/_shared/data-display-BTsCY7A5.js.map +1 -0
- package/dist/_shared/data-display-BdGQMXit.cjs +2 -0
- package/dist/_shared/data-display-BdGQMXit.cjs.map +1 -0
- package/dist/_shared/forms-CEE1te78.cjs +2 -0
- package/dist/_shared/forms-CEE1te78.cjs.map +1 -0
- package/dist/_shared/forms-CQoGvG7q.js +3533 -0
- package/dist/_shared/forms-CQoGvG7q.js.map +1 -0
- package/dist/_shared/header-B9IPDQRW.js +447 -0
- package/dist/_shared/header-B9IPDQRW.js.map +1 -0
- package/dist/_shared/header-C_1x4-rd.cjs +2 -0
- package/dist/_shared/header-C_1x4-rd.cjs.map +1 -0
- package/dist/_shared/hooks---vunGQ6.js +95 -0
- package/dist/_shared/hooks---vunGQ6.js.map +1 -0
- package/dist/_shared/hooks-CjVzmgvY.cjs +2 -0
- package/dist/_shared/hooks-CjVzmgvY.cjs.map +1 -0
- package/dist/_shared/layout-BXrQqUKq.js +262 -0
- package/dist/_shared/layout-BXrQqUKq.js.map +1 -0
- package/dist/_shared/layout-DWicdsPI.cjs +2 -0
- package/dist/_shared/layout-DWicdsPI.cjs.map +1 -0
- package/dist/_shared/layout.types-CXFAjJCj.cjs +2 -0
- package/dist/_shared/layout.types-CXFAjJCj.cjs.map +1 -0
- package/dist/_shared/layout.types-ip8BYRa7.js +28 -0
- package/dist/_shared/layout.types-ip8BYRa7.js.map +1 -0
- package/dist/_shared/settings-Bfr6PgSi.cjs +2 -0
- package/dist/_shared/settings-Bfr6PgSi.cjs.map +1 -0
- package/dist/_shared/settings-CrPaYr4A.js +143 -0
- package/dist/_shared/settings-CrPaYr4A.js.map +1 -0
- package/dist/_shared/sidebar-CDOLD8fN.js +548 -0
- package/dist/_shared/sidebar-CDOLD8fN.js.map +1 -0
- package/dist/_shared/sidebar-DcsxeNml.cjs +2 -0
- package/dist/_shared/sidebar-DcsxeNml.cjs.map +1 -0
- package/dist/_shared/table-B_pqCQxC.js +1377 -0
- package/dist/_shared/table-B_pqCQxC.js.map +1 -0
- package/dist/_shared/table-CGVOXtdv.cjs +2 -0
- package/dist/_shared/table-CGVOXtdv.cjs.map +1 -0
- package/dist/_shared/workspace-C1twu23r.cjs +2 -0
- package/dist/_shared/workspace-C1twu23r.cjs.map +1 -0
- package/dist/_shared/workspace-CkOZLdcN.js +357 -0
- package/dist/_shared/workspace-CkOZLdcN.js.map +1 -0
- package/dist/components/base/buttons/index.cjs +1 -1
- package/dist/components/base/buttons/index.js +1 -1
- package/dist/components/base/cards/index.cjs +1 -1
- package/dist/components/base/cards/index.js +1 -1
- package/dist/components/base/cards/partials/card-primitives.d.ts.map +1 -1
- package/dist/components/base/forms/index.cjs +1 -1
- package/dist/components/base/forms/index.js +1 -1
- package/dist/components/base/table/index.cjs +1 -1
- package/dist/components/base/table/index.js +1 -1
- package/dist/components/composed/admin/index.cjs +1 -1
- package/dist/components/composed/admin/index.js +2 -2
- package/dist/components/composed/ai/index.cjs +1 -1
- package/dist/components/composed/ai/index.js +2 -2
- package/dist/components/composed/analytics/index.cjs +1 -1
- package/dist/components/composed/analytics/index.js +1 -1
- package/dist/components/composed/cards/index.cjs +1 -1
- package/dist/components/composed/cards/index.js +2 -2
- package/dist/components/composed/commerce/index.cjs +1 -1
- package/dist/components/composed/commerce/index.js +2 -2
- package/dist/components/composed/dark-surfaces/index.cjs +1 -1
- package/dist/components/composed/dark-surfaces/index.js +1 -1
- package/dist/components/composed/data-display/index.cjs +1 -1
- package/dist/components/composed/data-display/index.js +1 -1
- package/dist/components/composed/data-display/metadata/metadata-list.d.ts.map +1 -1
- package/dist/components/composed/navigation/index.cjs +1 -1
- package/dist/components/composed/navigation/index.js +1 -1
- package/dist/components/composed/timelines/index.cjs +1 -1
- package/dist/components/composed/timelines/index.js +1 -1
- package/dist/components/features/activities/index.cjs +1 -1
- package/dist/components/features/activities/index.js +1 -1
- package/dist/components/features/card/index.cjs +1 -1
- package/dist/components/features/card/index.js +1 -1
- package/dist/components/features/comments/index.cjs +1 -1
- package/dist/components/features/comments/index.js +1 -1
- package/dist/components/features/event-log/index.cjs +1 -1
- package/dist/components/features/event-log/index.js +2 -2
- package/dist/components/features/media-library/index.cjs +1 -1
- package/dist/components/features/media-library/index.js +1 -1
- package/dist/components/features/products/index.cjs +1 -1
- package/dist/components/features/products/index.js +4 -4
- package/dist/components/features/resource/index.cjs +1 -1
- package/dist/components/features/resource/index.js +2 -2
- package/dist/components/features/schema-form/index.cjs +1 -1
- package/dist/components/features/schema-form/index.js +2 -2
- package/dist/components/layout/auth/index.cjs +1 -1
- package/dist/components/layout/auth/index.js +1 -1
- package/dist/components/layout/containers/containers.types.d.ts +2 -2
- package/dist/components/layout/containers/containers.types.d.ts.map +1 -1
- package/dist/components/layout/containers/content-container.d.ts.map +1 -1
- package/dist/components/layout/containers/index.cjs +1 -1
- package/dist/components/layout/containers/index.js +1 -2
- package/dist/components/layout/header/index.cjs +1 -1
- package/dist/components/layout/header/index.js +1 -1
- package/dist/components/layout/hooks/index.cjs +1 -1
- package/dist/components/layout/hooks/index.js +1 -1
- package/dist/components/layout/index.cjs +1 -1
- package/dist/components/layout/index.js +10 -11
- package/dist/components/layout/layout.types.d.ts.map +1 -1
- package/dist/components/layout/page/index.cjs +1 -1
- package/dist/components/layout/page/index.js +2 -2
- package/dist/components/layout/settings/index.cjs +1 -1
- package/dist/components/layout/settings/index.js +1 -1
- package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts.map +1 -1
- package/dist/components/layout/sidebar/index.cjs +1 -1
- package/dist/components/layout/sidebar/index.js +2 -2
- package/dist/components/layout/workspace/index.cjs +1 -1
- package/dist/components/layout/workspace/index.js +1 -1
- package/dist/showcase/assets/AreaChart-WJREayr9.js +6 -0
- package/dist/showcase/assets/CompositeItem-CY3XmFuI.js +1 -0
- package/dist/showcase/assets/CompositeRoot-BPMF0t1F.js +1 -0
- package/dist/showcase/assets/DialogTrigger-BzaF3YN8.js +1 -0
- package/dist/showcase/assets/LabelableContext-LKvvFFnV.js +1 -0
- package/dist/showcase/assets/PreviewLayout-B0n7l00P.js +1 -0
- package/dist/showcase/assets/RadioGroup-VBtGFETg.js +1 -0
- package/dist/showcase/assets/ScrollAreaCorner-BimGwdGs.js +1 -0
- package/dist/showcase/assets/Separator-BfKe0YiY.js +1 -0
- package/dist/showcase/assets/ToolbarRootContext-Cscyv1PN.js +1 -0
- package/dist/showcase/assets/accordion-BEN0VkL4.js +171 -0
- package/dist/showcase/assets/accordion-variants-QFG3H38z.js +1 -0
- package/dist/showcase/assets/action-menu-Bfw1tFqM.js +1 -0
- package/dist/showcase/assets/actions-CFpHs5IC.js +310 -0
- package/dist/showcase/assets/activities-CDxlaghU.js +500 -0
- package/dist/showcase/assets/activities-feed-card-BO1kcjRK.js +1 -0
- package/dist/showcase/assets/admin-DFpHXeuv.js +140 -0
- package/dist/showcase/assets/ai-DyO6VqQP.js +207 -0
- package/dist/showcase/assets/ai-artifact-MVA3ikv6.js +2 -0
- package/dist/showcase/assets/ai-chat-D-xcp6Jf.js +568 -0
- package/dist/showcase/assets/ai-elements-DlFqIOYp.js +387 -0
- package/dist/showcase/assets/ai-tool-call-DedG9TdK.js +1 -0
- package/dist/showcase/assets/alert-CmRK2lOe.js +1 -0
- package/dist/showcase/assets/alert-DCIVryEp.js +62 -0
- package/dist/showcase/assets/alert-DDP3Ktic.js +93 -0
- package/dist/showcase/assets/api-key-list-CWa997YX.js +1 -0
- package/dist/showcase/assets/api-key-list-mTPebHF3.js +73 -0
- package/dist/showcase/assets/app-sidebar-Cnfk9z5K.js +1 -0
- package/dist/showcase/assets/arrow-down-CCYWFimd.js +1 -0
- package/dist/showcase/assets/arrow-left-CrYjfZJ0.js +1 -0
- package/dist/showcase/assets/arrow-right-eLxbBrdm.js +1 -0
- package/dist/showcase/assets/arrow-up-kA33fcPv.js +1 -0
- package/dist/showcase/assets/arrow-up-right-BSWGQVDB.js +1 -0
- package/dist/showcase/assets/avatar-BDGhB3aA.js +57 -0
- package/dist/showcase/assets/avatar-CLBQvnYG.js +1 -0
- package/dist/showcase/assets/avatar-WUMW3Qjo.js +1 -0
- package/dist/showcase/assets/avatar-cKSNuTzf.js +67 -0
- package/dist/showcase/assets/badge--mqVg8Ry.js +31 -0
- package/dist/showcase/assets/badge-check-D7YjWqnm.js +1 -0
- package/dist/showcase/assets/bell-6YyocFK6.js +1 -0
- package/dist/showcase/assets/bot-BC4pGAB3.js +1 -0
- package/dist/showcase/assets/box-CPGIu4Nv.js +1 -0
- package/dist/showcase/assets/braces-9jywZtTA.js +1 -0
- package/dist/showcase/assets/brain-wf_S427C.js +1 -0
- package/dist/showcase/assets/brand-78lhbKSW.js +36 -0
- package/dist/showcase/assets/breadcrumb-6XHObtqO.js +1 -0
- package/dist/showcase/assets/breadcrumb-BVrrS53_.js +52 -0
- package/dist/showcase/assets/breadcrumbs-BwC3Iaae.js +1 -0
- package/dist/showcase/assets/briefcase-BViWYew9.js +1 -0
- package/dist/showcase/assets/building-2-CwR3gV1I.js +1 -0
- package/dist/showcase/assets/button-BWwsy37B.js +44 -0
- package/dist/showcase/assets/button-group-BTiMRQIO.js +1 -0
- package/dist/showcase/assets/buttons-D9pH8hPs.js +272 -0
- package/dist/showcase/assets/calendar-Bzl2i1lu.js +1 -0
- package/dist/showcase/assets/calendar-CNMlC7Fn.js +16 -0
- package/dist/showcase/assets/calendar-D5NdEmaD.js +1 -0
- package/dist/showcase/assets/calendar-days-j8QDBUc5.js +1 -0
- package/dist/showcase/assets/camera-Cwb84N8a.js +1 -0
- package/dist/showcase/assets/card-CX3vQ2Te.js +1 -0
- package/dist/showcase/assets/card-FLJkfdKP.js +188 -0
- package/dist/showcase/assets/card-primitives-C2s13Uvp.js +1 -0
- package/dist/showcase/assets/card-radio-group-BP27dErL.js +1 -0
- package/dist/showcase/assets/cards-DcdxRM9W.js +354 -0
- package/dist/showcase/assets/carousel-CTKyiHD2.js +449 -0
- package/dist/showcase/assets/cell-renderers-ouSypXTE.js +1 -0
- package/dist/showcase/assets/chart-CMsMyCah.js +358 -0
- package/dist/showcase/assets/chart-column-BrwpEFzy.js +1 -0
- package/dist/showcase/assets/checkbox-4qgEfnjv.js +1 -0
- package/dist/showcase/assets/checkbox-ratLYBAF.js +1 -0
- package/dist/showcase/assets/chevron-down-BInaIfd1.js +1 -0
- package/dist/showcase/assets/chevron-left-Bjy3FJ_M.js +1 -0
- package/dist/showcase/assets/chevron-up-Ufl6UEyV.js +1 -0
- package/dist/showcase/assets/chevrons-up-down-CrOH-P5z.js +1 -0
- package/dist/showcase/assets/circle-G0dEx2Ay.js +1 -0
- package/dist/showcase/assets/circle-alert-CiibDCe8.js +1 -0
- package/dist/showcase/assets/circle-check-Bqm54c03.js +1 -0
- package/dist/showcase/assets/circle-check-big-BfiY_qy_.js +1 -0
- package/dist/showcase/assets/circle-dot-VNm7CEgH.js +1 -0
- package/dist/showcase/assets/circle-question-mark-mM7PKy4G.js +1 -0
- package/dist/showcase/assets/circle-x-2tzzp_vB.js +1 -0
- package/dist/showcase/assets/clock-3-CfdZnMP2.js +1 -0
- package/dist/showcase/assets/clock-ByB7C11p.js +1 -0
- package/dist/showcase/assets/code-xml-D2fN-BaU.js +1 -0
- package/dist/showcase/assets/collapsible-B2lI_uVI.js +1 -0
- package/dist/showcase/assets/collapsible-Bs5YFx-M.js +27 -0
- package/dist/showcase/assets/combobox-BqNSwFaM.js +685 -0
- package/dist/showcase/assets/command-Dcbh_YP-.js +1 -0
- package/dist/showcase/assets/command-Mb30xkwq.js +1 -0
- package/dist/showcase/assets/comment-composer-DqTw0zIM.js +1 -0
- package/dist/showcase/assets/comment-item-DbQAZ3yP.js +1 -0
- package/dist/showcase/assets/comments-CGMOOi7k.js +357 -0
- package/dist/showcase/assets/commerce-bVpLHwpS.js +267 -0
- package/dist/showcase/assets/composite-CTpmYme_.js +1 -0
- package/dist/showcase/assets/contact-card-nuS10UKK.js +65 -0
- package/dist/showcase/assets/content-container-NexBp0FV.js +1 -0
- package/dist/showcase/assets/copyable-CNltkC2A.js +1 -0
- package/dist/showcase/assets/copyable-qr6--oJx.js +96 -0
- package/dist/showcase/assets/course-card-0kkl37FX.js +77 -0
- package/dist/showcase/assets/cpu-DSD9h0l5.js +1 -0
- package/dist/showcase/assets/credit-card-CN0E6FU8.js +1 -0
- package/dist/showcase/assets/css-variables-CzmmLWxt.js +1190 -0
- package/dist/showcase/assets/currency-BtofP745.js +149 -0
- package/dist/showcase/assets/dark-surfaces-BU7kfTIi.js +90 -0
- package/dist/showcase/assets/data-view-3W7_KBli.js +124 -0
- package/dist/showcase/assets/data-view-snL5QtHe.js +4 -0
- package/dist/showcase/assets/database-BarEYzaF.js +1 -0
- package/dist/showcase/assets/date-block-dTt9Rcfd.js +1 -0
- package/dist/showcase/assets/date-picker-BKzZeQGc.js +1 -0
- package/dist/showcase/assets/date-pickers-CYERVYRo.js +73 -0
- package/dist/showcase/assets/dense-info-hnKZfRnQ.js +106 -0
- package/dist/showcase/assets/design-system-consistency-D6qngflS.js +264 -0
- package/dist/showcase/assets/dialog-mO0FpHmT.js +1 -0
- package/dist/showcase/assets/dialog-xbuhPXmf.js +1 -0
- package/dist/showcase/assets/display-utilities-C4IflxoK.js +267 -0
- package/dist/showcase/assets/dist-BFChHTWK.js +45 -0
- package/dist/showcase/assets/dist-BkVfs5PY.js +1 -0
- package/dist/showcase/assets/dollar-sign-BES-Y4q8.js +1 -0
- package/dist/showcase/assets/download-CuEg-4DT.js +1 -0
- package/dist/showcase/assets/dropdown-menu-C4Fcfk9z.js +1 -0
- package/dist/showcase/assets/dropzone-CrJ_k9fJ.js +1 -0
- package/dist/showcase/assets/earth-Cmx-Axig.js +1 -0
- package/dist/showcase/assets/ellipsis-Co7iTzp_.js +1 -0
- package/dist/showcase/assets/ellipsis-vertical-DMYJFiqQ.js +1 -0
- package/dist/showcase/assets/empty-Dw4ozyll.js +1 -0
- package/dist/showcase/assets/empty-item-DQwAsl0J.js +49 -0
- package/dist/showcase/assets/empty-state-BKvbnAy1.js +1 -0
- package/dist/showcase/assets/empty-state-Dv6f2fmP.js +190 -0
- package/dist/showcase/assets/enhanced-activities-Ctmivg46.js +357 -0
- package/dist/showcase/assets/enhanced-combobox-D0AsPZ-b.js +1 -0
- package/dist/showcase/assets/esm-oZ6qcNoa.js +2 -0
- package/dist/showcase/assets/event-calendar-ChXdeehr.js +138 -0
- package/dist/showcase/assets/event-log-DeOCb2tT.js +330 -0
- package/dist/showcase/assets/example-CDvNeHNP.js +1 -0
- package/dist/showcase/assets/external-link-BaiCqIx3.js +1 -0
- package/dist/showcase/assets/eye-zG-fqYfd.js +1 -0
- package/dist/showcase/assets/feature-announcement-C2XGWNgI.js +34 -0
- package/dist/showcase/assets/file-sAbDfDuO.js +1 -0
- package/dist/showcase/assets/file-text-Boa9IOND.js +1 -0
- package/dist/showcase/assets/filter-layout-tZmZz-2B.js +1 -0
- package/dist/showcase/assets/filters-D8gEkDAE.js +139 -0
- package/dist/showcase/assets/flag-Cu20rcE4.js +1 -0
- package/dist/showcase/assets/folder-open-Cuk6KKLi.js +1 -0
- package/dist/showcase/assets/form-field-D8sL8tat.js +1 -0
- package/dist/showcase/assets/format-CaRklI--.js +1 -0
- package/dist/showcase/assets/forms-CNk2oX65.js +915 -0
- package/dist/showcase/assets/funnel-B2kBprKZ.js +1 -0
- package/dist/showcase/assets/generic-oWYKMvId.js +1 -0
- package/dist/showcase/assets/getPseudoElementBounds-GjucWEcD.js +1 -0
- package/dist/showcase/assets/gift-C_D_-5GL.js +1 -0
- package/dist/showcase/assets/giftcard-cards-B4DDGzdi.js +85 -0
- package/dist/showcase/assets/git-branch-DlTTLnjW.js +1 -0
- package/dist/showcase/assets/global-search-BjHAfaqS.js +215 -0
- package/dist/showcase/assets/global-search-hKQWHfrf.js +1 -0
- package/dist/showcase/assets/globe-D-gH7XQ2.js +1 -0
- package/dist/showcase/assets/gradient-card-jVxEisUP.js +58 -0
- package/dist/showcase/assets/hash-DySqEhph.js +1 -0
- package/dist/showcase/assets/header-B8hHkAVl.js +1 -0
- package/dist/showcase/assets/header-notifications-s180jNb1.js +1 -0
- package/dist/showcase/assets/heart-DDFCk8Tb.js +1 -0
- package/dist/showcase/assets/hooks-0A_FzYrt.js +220 -0
- package/dist/showcase/assets/house-BqE1X-Wf.js +1 -0
- package/dist/showcase/assets/icon-badge-CyiMjD7j.js +37 -0
- package/dist/showcase/assets/icon-badge-fJVhEHym.js +1 -0
- package/dist/showcase/assets/image-DCtwKHqe.js +1 -0
- package/dist/showcase/assets/inbox-DZA-pAGB.js +1 -0
- package/dist/showcase/assets/index-B37z19z3.js +10 -0
- package/dist/showcase/assets/index-CIsKgiSF.css +2 -0
- package/dist/showcase/assets/inertValue-SPYMBsOM.js +1 -0
- package/dist/showcase/assets/info-DrfDr3GT.js +1 -0
- package/dist/showcase/assets/inline-stat-BVJNx4xR.js +1 -0
- package/dist/showcase/assets/inline-stat-C3cWbSUK.js +15 -0
- package/dist/showcase/assets/input-CKTTGrnR.js +1 -0
- package/dist/showcase/assets/input-UHuWYPMF.js +1 -0
- package/dist/showcase/assets/input-group-BR_lU__a.js +1 -0
- package/dist/showcase/assets/input-group-iZaLbsTP.js +47 -0
- package/dist/showcase/assets/inputs-C7j8Xivm.js +155 -0
- package/dist/showcase/assets/installation-DYnTwaPR.js +134 -0
- package/dist/showcase/assets/invoice-header-D_0KvXQe.js +36 -0
- package/dist/showcase/assets/invoice-items-jcNb-sST.js +36 -0
- package/dist/showcase/assets/invoice-mini-DrZAbjPq.js +14 -0
- package/dist/showcase/assets/invoice-table-DlAw0U4U.js +30 -0
- package/dist/showcase/assets/isSameDay-Cl6v_syG.js +1 -0
- package/dist/showcase/assets/isToday-BBoFjSnJ.js +1 -0
- package/dist/showcase/assets/italic-j2U8krYa.js +1 -0
- package/dist/showcase/assets/item-B2WoC1SD.js +139 -0
- package/dist/showcase/assets/item-BMJ5hfT5.js +1 -0
- package/dist/showcase/assets/item-C_5-EHNK.js +1 -0
- package/dist/showcase/assets/kanban-Cv64Szxq.js +188 -0
- package/dist/showcase/assets/key-round-CORDYqE2.js +1 -0
- package/dist/showcase/assets/label-B0UjYqfw.js +1 -0
- package/dist/showcase/assets/languages-Njdo5y8i.js +1 -0
- package/dist/showcase/assets/layers-Dyew-8IP.js +1 -0
- package/dist/showcase/assets/layout-app-shell-DEZt0d84.js +608 -0
- package/dist/showcase/assets/layout-auth-BT84haSd.js +790 -0
- package/dist/showcase/assets/layout-containers-D6SP4vRB.js +101 -0
- package/dist/showcase/assets/layout-header-kLYjJnHz.js +203 -0
- package/dist/showcase/assets/layout-page-CmS4d8jw.js +314 -0
- package/dist/showcase/assets/layout-primitives-BW858Ymj.js +34 -0
- package/dist/showcase/assets/layout-sidebar-eIDEoyzV.js +224 -0
- package/dist/showcase/assets/layout-users-HyZHQIov.js +117 -0
- package/dist/showcase/assets/layout-workspace-BrDwVUvn.js +191 -0
- package/dist/showcase/assets/lib-Dhty05ZR.js +1 -0
- package/dist/showcase/assets/list-checks-CcWjdDq8.js +1 -0
- package/dist/showcase/assets/lock-CwH3bXx5.js +1 -0
- package/dist/showcase/assets/lock-keyhole-BdBxeIkW.js +1 -0
- package/dist/showcase/assets/mail-Cn94c8yp.js +1 -0
- package/dist/showcase/assets/mail-check-D-q_vPxD.js +1 -0
- package/dist/showcase/assets/map-BfUZMScw.js +124 -0
- package/dist/showcase/assets/map-pin-BZB9GUXP.js +1 -0
- package/dist/showcase/assets/media-library-DguE2q94.js +699 -0
- package/dist/showcase/assets/mention-inline-suggestions-CyGplHOl.js +1 -0
- package/dist/showcase/assets/mentions-lmr_XmfN.js +138 -0
- package/dist/showcase/assets/menus-D0qYbzKk.js +171 -0
- package/dist/showcase/assets/message-square-7VpiUwcS.js +1 -0
- package/dist/showcase/assets/metadata-list-B8O2ljIS.js +1 -0
- package/dist/showcase/assets/metadata-list-BcYg9Ru3.js +286 -0
- package/dist/showcase/assets/metric-HzQnjCpO.js +1 -0
- package/dist/showcase/assets/metric-bar-Fr1TDnSu.js +1 -0
- package/dist/showcase/assets/metric-grid-CM-P894v.js +1 -0
- package/dist/showcase/assets/metric-trend-chip-DqYH_U8e.js +1 -0
- package/dist/showcase/assets/metrics-analytics-bar-DKRLzyXq.js +44 -0
- package/dist/showcase/assets/metrics-analytics-cards-qMbAYBbk.js +50 -0
- package/dist/showcase/assets/metrics-comparison-GSWVebL_.js +76 -0
- package/dist/showcase/assets/metrics-heatmap-Fj5QZoO3.js +27 -0
- package/dist/showcase/assets/metrics-inline-badge-BuyhiYDl.js +17 -0
- package/dist/showcase/assets/metrics-kpi-row-xNn4bjZc.js +31 -0
- package/dist/showcase/assets/metrics-micro-grid-W_ZYCffp.js +42 -0
- package/dist/showcase/assets/metrics-overview-D-km110k.js +192 -0
- package/dist/showcase/assets/metrics-stat-cards-odVtufFY.js +54 -0
- package/dist/showcase/assets/minus-DZsXg5PW.js +1 -0
- package/dist/showcase/assets/money-display-C7Hp2pT3.js +1 -0
- package/dist/showcase/assets/month-year-picker-Dnr4J0mO.js +1 -0
- package/dist/showcase/assets/navigation-0nrtBP5O.js +90 -0
- package/dist/showcase/assets/navigation-BaWNq9oa.js +231 -0
- package/dist/showcase/assets/navigation-extras-B22W1Vkk.js +43 -0
- package/dist/showcase/assets/onboarding-checklist-BFj7rmdZ.js +119 -0
- package/dist/showcase/assets/overflow-tab-bar-D_rltswa.js +1 -0
- package/dist/showcase/assets/overlays-CNfiB-zF.js +408 -0
- package/dist/showcase/assets/overlays-CuxuFGC8.js +159 -0
- package/dist/showcase/assets/overview-CBmdAWO6.js +184 -0
- package/dist/showcase/assets/package-BwwfLMWb.js +1 -0
- package/dist/showcase/assets/package-check-BepTKJLy.js +1 -0
- package/dist/showcase/assets/page-_JDFUWqe.js +1 -0
- package/dist/showcase/assets/page-action-button-Cf34I-B2.js +1 -0
- package/dist/showcase/assets/page-header-pdHFvyTo.js +1 -0
- package/dist/showcase/assets/pagination-Db1WJvjK.js +42 -0
- package/dist/showcase/assets/pagination-s8_MGk9D.js +1 -0
- package/dist/showcase/assets/paperclip-B9HQ47_2.js +1 -0
- package/dist/showcase/assets/password-input-D-eZWMGX.js +1 -0
- package/dist/showcase/assets/pencil-Dm53P6Db.js +1 -0
- package/dist/showcase/assets/phone-a4Ja9xAp.js +1 -0
- package/dist/showcase/assets/plus-DbOlx2x0.js +1 -0
- package/dist/showcase/assets/popover-B8qrRgt3.js +1 -0
- package/dist/showcase/assets/popover-Bm5wETUP.js +1 -0
- package/dist/showcase/assets/popover-menu-EH4P-BuI.js +1 -0
- package/dist/showcase/assets/products-n6VBSMDh.js +423 -0
- package/dist/showcase/assets/progress-D9r6PSCF.js +1 -0
- package/dist/showcase/assets/progress-DVnMcpeq.js +18 -0
- package/dist/showcase/assets/props-table-udnF7Z46.js +1 -0
- package/dist/showcase/assets/quote-qVQF4JC7.js +1 -0
- package/dist/showcase/assets/receipt-DaC4l-Mr.js +1 -0
- package/dist/showcase/assets/receipt-text-BnwhWHdU.js +1 -0
- package/dist/showcase/assets/refinement-guide-zBbAE-vw.js +189 -0
- package/dist/showcase/assets/refresh-cw-CX6ghqEe.js +1 -0
- package/dist/showcase/assets/resolveValueLabel-Cjbd_80A.js +1 -0
- package/dist/showcase/assets/resource-D1fXD_Pt.js +139 -0
- package/dist/showcase/assets/resource-i2YV9aHL.js +1 -0
- package/dist/showcase/assets/resource-selector-card-CdQEPr9U.js +43 -0
- package/dist/showcase/assets/rich-text-editor-DJ2i03XV.js +143 -0
- package/dist/showcase/assets/rich-text-editor-Wh8r117d.js +124 -0
- package/dist/showcase/assets/rotate-ccw-2_FhUcdG.js +1 -0
- package/dist/showcase/assets/route-EGSdKgEp.js +1 -0
- package/dist/showcase/assets/save-nXKvyYEx.js +1 -0
- package/dist/showcase/assets/schema-form-D_9UkVBe.js +327 -0
- package/dist/showcase/assets/scroll-area-CB7X4JqZ.js +1 -0
- package/dist/showcase/assets/scroll-area-DCHN9iYj.js +32 -0
- package/dist/showcase/assets/section-C2ovQgbv.js +1 -0
- package/dist/showcase/assets/select-BTOraQSw.js +1 -0
- package/dist/showcase/assets/select-CE0BbUs7.js +1 -0
- package/dist/showcase/assets/send-CI0r12bX.js +1 -0
- package/dist/showcase/assets/separator-CmGfh7lI.js +1 -0
- package/dist/showcase/assets/separator-PhQTNRIB.js +28 -0
- package/dist/showcase/assets/settings-2-qkVb0lyz.js +1 -0
- package/dist/showcase/assets/settings-YXjlZ9zs.js +1 -0
- package/dist/showcase/assets/sheet-CFDUB2H1.js +1 -0
- package/dist/showcase/assets/shield-Dr_UeG6H.js +1 -0
- package/dist/showcase/assets/shield-alert-7rAVXg-K.js +1 -0
- package/dist/showcase/assets/shield-check-BbzHL-nM.js +1 -0
- package/dist/showcase/assets/shopping-bag-DeprN0fB.js +1 -0
- package/dist/showcase/assets/showcase-BU6Fvpg_.js +132 -0
- package/dist/showcase/assets/sidebar-CudnhnWN.js +1 -0
- package/dist/showcase/assets/sidebar.context-CZaDhRhh.js +1 -0
- package/dist/showcase/assets/skeleton-DD6VPVrv.js +1 -0
- package/dist/showcase/assets/skeleton-Dc5LvW7E.js +29 -0
- package/dist/showcase/assets/slider-BxvP9nxk.js +1 -0
- package/dist/showcase/assets/smart-card-B0Llbpiy.js +1 -0
- package/dist/showcase/assets/sonner-mszFoDWT.js +22 -0
- package/dist/showcase/assets/sortable.esm-J5bJPtH9.js +5 -0
- package/dist/showcase/assets/sparkles-CQSdl3Gw.js +1 -0
- package/dist/showcase/assets/spinner-BSxBn2qs.js +49 -0
- package/dist/showcase/assets/spinner-DJxoGJtq.js +30 -0
- package/dist/showcase/assets/spinner-DihTCcve.js +1 -0
- package/dist/showcase/assets/square-pen-CGMSA_p6.js +1 -0
- package/dist/showcase/assets/stacked-avatars-Ct8B4doW.js +1 -0
- package/dist/showcase/assets/star-DFlmmJdh.js +1 -0
- package/dist/showcase/assets/startOfDay-BedffeNt.js +1 -0
- package/dist/showcase/assets/styles-jR6uS97D.js +1 -0
- package/dist/showcase/assets/suggestions-DnjJ-U9n.js +126 -0
- package/dist/showcase/assets/switch-Dkojf4Yd.js +1 -0
- package/dist/showcase/assets/switch-bTb6CSLr.js +1 -0
- package/dist/showcase/assets/sync-rk8eFwoJ.js +124 -0
- package/dist/showcase/assets/table-4qIerTVI.js +686 -0
- package/dist/showcase/assets/table-BjMmmYd7.js +1 -0
- package/dist/showcase/assets/table-actions-DqofOI1V.js +1 -0
- package/dist/showcase/assets/tabs-BV6mMsfk.js +19 -0
- package/dist/showcase/assets/tabs-u2fkHRw8.js +1 -0
- package/dist/showcase/assets/tags-input-Cu_UwlwT.js +1 -0
- package/dist/showcase/assets/text-button-Fyy21evq.js +1 -0
- package/dist/showcase/assets/text-link-WRyY3ZZo.js +1 -0
- package/dist/showcase/assets/textarea-BbCxWNzV.js +1 -0
- package/dist/showcase/assets/textarea-CtD7JQsv.js +1 -0
- package/dist/showcase/assets/timelines-BBPQpCFX.js +200 -0
- package/dist/showcase/assets/toggle-group-B8mQ6wer.js +1 -0
- package/dist/showcase/assets/toggles-CCClWVXZ.js +71 -0
- package/dist/showcase/assets/toggles-group-DgCilPMo.js +32 -0
- package/dist/showcase/assets/tooltip-ClJCWWTI.js +31 -0
- package/dist/showcase/assets/trash-2-Cs7y4-K-.js +1 -0
- package/dist/showcase/assets/trending-up-spYhMxs6.js +1 -0
- package/dist/showcase/assets/truck-DENWgqxK.js +1 -0
- package/dist/showcase/assets/typography-DMmYNFQj.js +223 -0
- package/dist/showcase/assets/ui-badge-BJEtsa7X.js +28 -0
- package/dist/showcase/assets/ui-card-CrPKoi3P.js +30 -0
- package/dist/showcase/assets/ui-table-2HhDwPcu.js +42 -0
- package/dist/showcase/assets/upload-tray-CUZAErkI.js +138 -0
- package/dist/showcase/assets/use-layout-link-Co3GiFmb.js +1 -0
- package/dist/showcase/assets/useAnchoredPopupScrollLock-DgIA0IXg.js +1 -0
- package/dist/showcase/assets/useAriaLabelledBy-CDdoyQgg.js +1 -0
- package/dist/showcase/assets/useCollapsiblePanel-BT0RSjGM.js +1 -0
- package/dist/showcase/assets/useCompositeItem-DFghnuRZ.js +1 -0
- package/dist/showcase/assets/useCompositeListItem-vXyRoJ2x.js +1 -0
- package/dist/showcase/assets/useLabelableId-D__l5sQX.js +1 -0
- package/dist/showcase/assets/useOpenInteractionType-bZIaLWfE.js +1 -0
- package/dist/showcase/assets/useRender-BV0akLbc.js +1 -0
- package/dist/showcase/assets/useTriggerFocusGuards-dYriJrQP.js +1 -0
- package/dist/showcase/assets/useValueChanged-Dg0AWST0.js +1 -0
- package/dist/showcase/assets/user-B9eCi5Vl.js +1 -0
- package/dist/showcase/assets/user-plus-Uo4IAY7e.js +1 -0
- package/dist/showcase/assets/users-DLep-WjV.js +1 -0
- package/dist/showcase/assets/vendor-profile-BbcE51Pa.js +37 -0
- package/dist/showcase/assets/video-BasdlaQE.js +1 -0
- package/dist/showcase/assets/wrench-BYUVe1-z.js +1 -0
- package/dist/showcase/assets/x-Bx9ayVXr.js +1 -0
- package/dist/showcase/assets/zap-Mgu5HEtF.js +1 -0
- package/dist/showcase/index.html +2 -2
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/dist/_shared/auth-B_KVUjsB.cjs +0 -2
- package/dist/_shared/auth-B_KVUjsB.cjs.map +0 -1
- package/dist/_shared/auth-C_TgyzDl.js +0 -643
- package/dist/_shared/auth-C_TgyzDl.js.map +0 -1
- package/dist/_shared/buttons-C8jy-jMd.cjs +0 -2
- package/dist/_shared/buttons-C8jy-jMd.cjs.map +0 -1
- package/dist/_shared/buttons-MxvdokeK.js +0 -137
- package/dist/_shared/buttons-MxvdokeK.js.map +0 -1
- package/dist/_shared/cards-BKFwMTjM.cjs +0 -2
- package/dist/_shared/cards-BKFwMTjM.cjs.map +0 -1
- package/dist/_shared/cards-CtBoSZG9.js +0 -355
- package/dist/_shared/cards-CtBoSZG9.js.map +0 -1
- package/dist/_shared/comments-C8iXy9XO.cjs +0 -2
- package/dist/_shared/comments-C8iXy9XO.cjs.map +0 -1
- package/dist/_shared/comments-DGBxF9fD.js +0 -952
- package/dist/_shared/comments-DGBxF9fD.js.map +0 -1
- package/dist/_shared/containers-D7oZE4XI.cjs +0 -2
- package/dist/_shared/containers-D7oZE4XI.cjs.map +0 -1
- package/dist/_shared/containers-anBivbL9.js +0 -19
- package/dist/_shared/containers-anBivbL9.js.map +0 -1
- package/dist/_shared/content-container-CVUJCLhn.cjs +0 -2
- package/dist/_shared/content-container-CVUJCLhn.cjs.map +0 -1
- package/dist/_shared/content-container-Dv8XsAw4.js +0 -33
- package/dist/_shared/content-container-Dv8XsAw4.js.map +0 -1
- package/dist/_shared/data-display-CRFaMkxT.js +0 -1873
- package/dist/_shared/data-display-CRFaMkxT.js.map +0 -1
- package/dist/_shared/data-display-C_44_V-W.cjs +0 -2
- package/dist/_shared/data-display-C_44_V-W.cjs.map +0 -1
- package/dist/_shared/forms-qnwoUqxf.js +0 -3533
- package/dist/_shared/forms-qnwoUqxf.js.map +0 -1
- package/dist/_shared/forms-rmKcy5uO.cjs +0 -2
- package/dist/_shared/forms-rmKcy5uO.cjs.map +0 -1
- package/dist/_shared/header-CxhEtk9M.cjs +0 -2
- package/dist/_shared/header-CxhEtk9M.cjs.map +0 -1
- package/dist/_shared/header-h3f14vQx.js +0 -447
- package/dist/_shared/header-h3f14vQx.js.map +0 -1
- package/dist/_shared/hooks-CS55-w3h.js +0 -95
- package/dist/_shared/hooks-CS55-w3h.js.map +0 -1
- package/dist/_shared/hooks-sfHAyDgD.cjs +0 -2
- package/dist/_shared/hooks-sfHAyDgD.cjs.map +0 -1
- package/dist/_shared/layout.types-CYuDZ_4h.cjs +0 -2
- package/dist/_shared/layout.types-CYuDZ_4h.cjs.map +0 -1
- package/dist/_shared/layout.types-j7zZAPtg.js +0 -28
- package/dist/_shared/layout.types-j7zZAPtg.js.map +0 -1
- package/dist/_shared/page-C6EzwvTz.cjs +0 -2
- package/dist/_shared/page-C6EzwvTz.cjs.map +0 -1
- package/dist/_shared/page-DCW1eWCJ.js +0 -262
- package/dist/_shared/page-DCW1eWCJ.js.map +0 -1
- package/dist/_shared/settings-DbAyxMrX.cjs +0 -2
- package/dist/_shared/settings-DbAyxMrX.cjs.map +0 -1
- package/dist/_shared/settings-QOBrbgdN.js +0 -143
- package/dist/_shared/settings-QOBrbgdN.js.map +0 -1
- package/dist/_shared/sidebar-DfToCaiC.cjs +0 -2
- package/dist/_shared/sidebar-DfToCaiC.cjs.map +0 -1
- package/dist/_shared/sidebar-DhpRdTZH.js +0 -541
- package/dist/_shared/sidebar-DhpRdTZH.js.map +0 -1
- package/dist/_shared/table-CUA_A-oO.js +0 -1377
- package/dist/_shared/table-CUA_A-oO.js.map +0 -1
- package/dist/_shared/table-mPchjiRn.cjs +0 -2
- package/dist/_shared/table-mPchjiRn.cjs.map +0 -1
- package/dist/_shared/workspace-BgtWS9fA.cjs +0 -2
- package/dist/_shared/workspace-BgtWS9fA.cjs.map +0 -1
- package/dist/_shared/workspace-D2jJ0PlS.js +0 -357
- package/dist/_shared/workspace-D2jJ0PlS.js.map +0 -1
- package/dist/showcase/assets/AreaChart-CFYg5vW0.js +0 -6
- package/dist/showcase/assets/CompositeItem-C1v8tfgt.js +0 -1
- package/dist/showcase/assets/CompositeRoot-DVtTCBlx.js +0 -1
- package/dist/showcase/assets/DialogTrigger-CiVZgbZe.js +0 -1
- package/dist/showcase/assets/LabelableContext-CNcXHqnK.js +0 -1
- package/dist/showcase/assets/PreviewLayout-CBTybzKu.js +0 -1
- package/dist/showcase/assets/RadioGroup-DTNAD-0J.js +0 -1
- package/dist/showcase/assets/ScrollAreaCorner-Gau2B-d1.js +0 -1
- package/dist/showcase/assets/Separator-DOIh4aar.js +0 -1
- package/dist/showcase/assets/ToolbarRootContext-BbugmthZ.js +0 -1
- package/dist/showcase/assets/accordion-CB4ePZYm.js +0 -171
- package/dist/showcase/assets/accordion-variants-De2q5GIH.js +0 -1
- package/dist/showcase/assets/action-menu-wJVcvfmC.js +0 -1
- package/dist/showcase/assets/actions-BL1lpPFC.js +0 -310
- package/dist/showcase/assets/activities-C578ZINa.js +0 -500
- package/dist/showcase/assets/activities-feed-card-BeXMgsNO.js +0 -1
- package/dist/showcase/assets/admin-DKJPb23G.js +0 -140
- package/dist/showcase/assets/ai-artifact-BaYtjrP5.js +0 -2
- package/dist/showcase/assets/ai-chat-DxxlaytU.js +0 -568
- package/dist/showcase/assets/ai-elements-BWraZPyC.js +0 -387
- package/dist/showcase/assets/ai-ewP8qLOJ.js +0 -207
- package/dist/showcase/assets/ai-tool-call-Da4srLLe.js +0 -1
- package/dist/showcase/assets/alert-CQI2pomK.js +0 -1
- package/dist/showcase/assets/alert-S12iMEhF.js +0 -62
- package/dist/showcase/assets/alert-xINZmLgm.js +0 -93
- package/dist/showcase/assets/api-key-list-CL6je8dF.js +0 -1
- package/dist/showcase/assets/api-key-list-wxmuRN1m.js +0 -73
- package/dist/showcase/assets/app-sidebar-LVtcgiT_.js +0 -1
- package/dist/showcase/assets/arrow-down-JuqwH6gj.js +0 -1
- package/dist/showcase/assets/arrow-left-BFq65-Ch.js +0 -1
- package/dist/showcase/assets/arrow-right-B4iFg3l1.js +0 -1
- package/dist/showcase/assets/arrow-up-RWJP_FHU.js +0 -1
- package/dist/showcase/assets/arrow-up-right-DdWl37XF.js +0 -1
- package/dist/showcase/assets/avatar-BEvs3dD_.js +0 -1
- package/dist/showcase/assets/avatar-Bv9x1eBh.js +0 -67
- package/dist/showcase/assets/avatar-CC3R0R-x.js +0 -57
- package/dist/showcase/assets/avatar-D29-FL5U.js +0 -1
- package/dist/showcase/assets/badge-B1YIk7bi.js +0 -31
- package/dist/showcase/assets/badge-check-DGmg0_g_.js +0 -1
- package/dist/showcase/assets/bell-Cq9n0a2v.js +0 -1
- package/dist/showcase/assets/bot-DxRjlJlO.js +0 -1
- package/dist/showcase/assets/box-CIh-_2DI.js +0 -1
- package/dist/showcase/assets/braces-BI_smuFG.js +0 -1
- package/dist/showcase/assets/brain-BCAmDdGT.js +0 -1
- package/dist/showcase/assets/brand-CYmrK-FI.js +0 -36
- package/dist/showcase/assets/breadcrumb-DXOwTQNp.js +0 -52
- package/dist/showcase/assets/breadcrumb-DdDGc08y.js +0 -1
- package/dist/showcase/assets/breadcrumbs-SwqzwYW_.js +0 -1
- package/dist/showcase/assets/briefcase-CKrv_pkI.js +0 -1
- package/dist/showcase/assets/building-2-4f1nNGpT.js +0 -1
- package/dist/showcase/assets/button-B9I1TrfQ.js +0 -44
- package/dist/showcase/assets/button-group-DUfRVZy2.js +0 -1
- package/dist/showcase/assets/buttons-Crl8nJKG.js +0 -272
- package/dist/showcase/assets/calendar-4Uqeswbn.js +0 -1
- package/dist/showcase/assets/calendar-Cl5l4Ip1.js +0 -16
- package/dist/showcase/assets/calendar-DxjW_eNc.js +0 -1
- package/dist/showcase/assets/calendar-days-DmDuaOAc.js +0 -1
- package/dist/showcase/assets/camera-j8dT39qf.js +0 -1
- package/dist/showcase/assets/card-BQ_zBZlQ.js +0 -1
- package/dist/showcase/assets/card-DRalKV4i.js +0 -188
- package/dist/showcase/assets/card-primitives-Bn6nhqUA.js +0 -1
- package/dist/showcase/assets/card-radio-group-Dq7AUPTp.js +0 -1
- package/dist/showcase/assets/cards-MR2JolOy.js +0 -354
- package/dist/showcase/assets/carousel-DMceNGDq.js +0 -449
- package/dist/showcase/assets/cell-renderers-VbI9xEAd.js +0 -1
- package/dist/showcase/assets/chart-DW4naldz.js +0 -358
- package/dist/showcase/assets/chart-column-CbUwWFn7.js +0 -1
- package/dist/showcase/assets/checkbox-BJ1yDAQ3.js +0 -1
- package/dist/showcase/assets/checkbox-BqwbtGCF.js +0 -1
- package/dist/showcase/assets/chevron-down-CBa5t2E0.js +0 -1
- package/dist/showcase/assets/chevron-left-Dqne-r3m.js +0 -1
- package/dist/showcase/assets/chevron-up-DiMFydbr.js +0 -1
- package/dist/showcase/assets/chevrons-up-down-umMKLBIL.js +0 -1
- package/dist/showcase/assets/circle-alert-BObXfzSP.js +0 -1
- package/dist/showcase/assets/circle-check-BPhdxh7K.js +0 -1
- package/dist/showcase/assets/circle-check-big-BsQpd0CS.js +0 -1
- package/dist/showcase/assets/circle-dbSBYjvr.js +0 -1
- package/dist/showcase/assets/circle-dot-Bj1an-fp.js +0 -1
- package/dist/showcase/assets/circle-question-mark-BeRdyU_C.js +0 -1
- package/dist/showcase/assets/circle-x-Dh3sb4UC.js +0 -1
- package/dist/showcase/assets/clock-3-R65SwQwa.js +0 -1
- package/dist/showcase/assets/clock-BApGqXwn.js +0 -1
- package/dist/showcase/assets/code-xml-q7JPxij0.js +0 -1
- package/dist/showcase/assets/collapsible-BbiGHywy.js +0 -27
- package/dist/showcase/assets/collapsible-DDV7VHy5.js +0 -1
- package/dist/showcase/assets/combobox-Dv_OkynR.js +0 -685
- package/dist/showcase/assets/command-BSmiujfZ.js +0 -1
- package/dist/showcase/assets/command-Cw81GF7c.js +0 -1
- package/dist/showcase/assets/comment-composer-C09JANlW.js +0 -1
- package/dist/showcase/assets/comment-item-DsQshj1L.js +0 -1
- package/dist/showcase/assets/comments-CO3QCKyX.js +0 -357
- package/dist/showcase/assets/commerce-BvnnX8Ui.js +0 -267
- package/dist/showcase/assets/composite-BjZbcKJw.js +0 -1
- package/dist/showcase/assets/contact-card-Dq50G6UK.js +0 -65
- package/dist/showcase/assets/content-container-BQZdQhX2.js +0 -1
- package/dist/showcase/assets/copyable-BdfWxV6u.js +0 -1
- package/dist/showcase/assets/copyable-lUNYfscm.js +0 -96
- package/dist/showcase/assets/course-card-BTIFY84q.js +0 -77
- package/dist/showcase/assets/cpu-CzkgJ-zb.js +0 -1
- package/dist/showcase/assets/credit-card-D_wnXbTK.js +0 -1
- package/dist/showcase/assets/css-variables-BVjcOHGr.js +0 -1190
- package/dist/showcase/assets/currency-BCX6yQ2j.js +0 -149
- package/dist/showcase/assets/dark-surfaces-BO6sWHrV.js +0 -90
- package/dist/showcase/assets/data-view-C8ThO9ha.js +0 -124
- package/dist/showcase/assets/data-view-DqpNNGp5.js +0 -4
- package/dist/showcase/assets/database-Ad0l2Bjl.js +0 -1
- package/dist/showcase/assets/date-block-CMKpiRdA.js +0 -1
- package/dist/showcase/assets/date-picker-CRogiefV.js +0 -1
- package/dist/showcase/assets/date-pickers-CuRRGP-F.js +0 -73
- package/dist/showcase/assets/dense-info-BL_cGFVK.js +0 -106
- package/dist/showcase/assets/design-system-consistency-BarrI2Uj.js +0 -264
- package/dist/showcase/assets/dialog-BEKecyE3.js +0 -1
- package/dist/showcase/assets/dialog-DbEG3v2T.js +0 -1
- package/dist/showcase/assets/display-utilities-CQRcCpjT.js +0 -267
- package/dist/showcase/assets/dist-CS2Ky1_m.js +0 -1
- package/dist/showcase/assets/dist-q3PLGr1_.js +0 -45
- package/dist/showcase/assets/dollar-sign-lghPxE96.js +0 -1
- package/dist/showcase/assets/download-Cx5kUzHm.js +0 -1
- package/dist/showcase/assets/dropdown-menu-CXYQqRJA.js +0 -1
- package/dist/showcase/assets/dropzone-DK0kBLfC.js +0 -1
- package/dist/showcase/assets/earth-BgJkqIAs.js +0 -1
- package/dist/showcase/assets/ellipsis-CP0hyAeS.js +0 -1
- package/dist/showcase/assets/ellipsis-vertical-BdpRiDbb.js +0 -1
- package/dist/showcase/assets/empty-CO_e2e_g.js +0 -1
- package/dist/showcase/assets/empty-item-D39AT9RK.js +0 -49
- package/dist/showcase/assets/empty-state-CTQjlkxC.js +0 -1
- package/dist/showcase/assets/empty-state-Luba-tbF.js +0 -190
- package/dist/showcase/assets/enhanced-activities-e2k5R4sk.js +0 -357
- package/dist/showcase/assets/enhanced-combobox-CY9QcVEl.js +0 -1
- package/dist/showcase/assets/esm-DPz8A4Wl.js +0 -2
- package/dist/showcase/assets/event-calendar-DuQntfyO.js +0 -138
- package/dist/showcase/assets/event-log-B8B_0-q5.js +0 -330
- package/dist/showcase/assets/example-Rrx9vj75.js +0 -1
- package/dist/showcase/assets/external-link-BkCjE03j.js +0 -1
- package/dist/showcase/assets/eye-BKhfxIeD.js +0 -1
- package/dist/showcase/assets/feature-announcement-CRN6kk4B.js +0 -34
- package/dist/showcase/assets/file-BBUnjRPN.js +0 -1
- package/dist/showcase/assets/file-text-Clv0qFr3.js +0 -1
- package/dist/showcase/assets/filter-layout-Bskvgeps.js +0 -1
- package/dist/showcase/assets/filters-DqE5xQEz.js +0 -139
- package/dist/showcase/assets/flag-BQ0Brbw9.js +0 -1
- package/dist/showcase/assets/folder-open-CuUaUrxa.js +0 -1
- package/dist/showcase/assets/form-field-Dg_Az7lk.js +0 -1
- package/dist/showcase/assets/format-BnF8gL8z.js +0 -1
- package/dist/showcase/assets/forms-D2SGtkKv.js +0 -915
- package/dist/showcase/assets/funnel-qCC9cfXa.js +0 -1
- package/dist/showcase/assets/generic-0wwhvFWa.js +0 -1
- package/dist/showcase/assets/getPseudoElementBounds-DyTpOaBA.js +0 -1
- package/dist/showcase/assets/gift-ibO6X3CO.js +0 -1
- package/dist/showcase/assets/giftcard-cards-BJ0gmgv0.js +0 -85
- package/dist/showcase/assets/git-branch-QLvR3_wX.js +0 -1
- package/dist/showcase/assets/global-search-B2zvjiO2.js +0 -215
- package/dist/showcase/assets/global-search-BtYqFKyN.js +0 -1
- package/dist/showcase/assets/globe-Byoz7QmA.js +0 -1
- package/dist/showcase/assets/gradient-card-CymI8itB.js +0 -58
- package/dist/showcase/assets/hash-DL-sHZny.js +0 -1
- package/dist/showcase/assets/header-C9RMgEgD.js +0 -1
- package/dist/showcase/assets/header-notifications-BT643QVK.js +0 -1
- package/dist/showcase/assets/heart-gHsYuS4V.js +0 -1
- package/dist/showcase/assets/hooks-Dj4gswMj.js +0 -220
- package/dist/showcase/assets/house-Dew9jimg.js +0 -1
- package/dist/showcase/assets/icon-badge-C-mGQdGQ.js +0 -37
- package/dist/showcase/assets/icon-badge-GMIN-bca.js +0 -1
- package/dist/showcase/assets/image-Cda8layy.js +0 -1
- package/dist/showcase/assets/inbox-hJEV8TEx.js +0 -1
- package/dist/showcase/assets/index-CCxHwV7T.css +0 -2
- package/dist/showcase/assets/index-o71HAmc3.js +0 -10
- package/dist/showcase/assets/inertValue-BRyHstYf.js +0 -1
- package/dist/showcase/assets/info-B4aULRpz.js +0 -1
- package/dist/showcase/assets/inline-stat-BzXB3FNC.js +0 -15
- package/dist/showcase/assets/inline-stat-CDQocPgN.js +0 -1
- package/dist/showcase/assets/input-CLysAarX.js +0 -1
- package/dist/showcase/assets/input-CYTQ9nWN.js +0 -1
- package/dist/showcase/assets/input-group-DYMTMed1.js +0 -47
- package/dist/showcase/assets/input-group-DtkAnPaQ.js +0 -1
- package/dist/showcase/assets/inputs-C2flJn12.js +0 -155
- package/dist/showcase/assets/installation-CCvBKDNO.js +0 -134
- package/dist/showcase/assets/invoice-header-C1G_aVIm.js +0 -36
- package/dist/showcase/assets/invoice-items-Ak0CMjDh.js +0 -36
- package/dist/showcase/assets/invoice-mini-B7Dda49y.js +0 -14
- package/dist/showcase/assets/invoice-table-Bl9InDl0.js +0 -30
- package/dist/showcase/assets/isSameDay-Bd_8WAf0.js +0 -1
- package/dist/showcase/assets/isToday-DSGtoEUa.js +0 -1
- package/dist/showcase/assets/italic-CJzEjX5j.js +0 -1
- package/dist/showcase/assets/item-BL_Y_0ou.js +0 -139
- package/dist/showcase/assets/item-Oe2aHuvr.js +0 -1
- package/dist/showcase/assets/item-nf1zOtF7.js +0 -1
- package/dist/showcase/assets/kanban-CB5Hghoo.js +0 -188
- package/dist/showcase/assets/key-round-BQwcojkz.js +0 -1
- package/dist/showcase/assets/label-HtkE4eII.js +0 -1
- package/dist/showcase/assets/languages-69N5-h2e.js +0 -1
- package/dist/showcase/assets/layers-CBPYgoAb.js +0 -1
- package/dist/showcase/assets/layout-app-shell-BfNh8jd0.js +0 -608
- package/dist/showcase/assets/layout-auth-Ct29XkSH.js +0 -790
- package/dist/showcase/assets/layout-containers-DWN4xKbf.js +0 -101
- package/dist/showcase/assets/layout-header-DUX4zFrH.js +0 -203
- package/dist/showcase/assets/layout-page-CsqULW71.js +0 -314
- package/dist/showcase/assets/layout-primitives-CQJ0_wTo.js +0 -34
- package/dist/showcase/assets/layout-sidebar-la-tC4xZ.js +0 -224
- package/dist/showcase/assets/layout-users-6fAYxZ3Z.js +0 -117
- package/dist/showcase/assets/layout-workspace-BbDOjmrE.js +0 -191
- package/dist/showcase/assets/lib-C46V0Rr-.js +0 -1
- package/dist/showcase/assets/list-checks-BkQYzehf.js +0 -1
- package/dist/showcase/assets/lock-CMrS2EKU.js +0 -1
- package/dist/showcase/assets/lock-keyhole-B1BEkNvm.js +0 -1
- package/dist/showcase/assets/mail-Bo_4xDQw.js +0 -1
- package/dist/showcase/assets/mail-check-BprACMug.js +0 -1
- package/dist/showcase/assets/map-Br-xZYf0.js +0 -124
- package/dist/showcase/assets/map-pin-COrIVMWa.js +0 -1
- package/dist/showcase/assets/media-library-DyPu-kR9.js +0 -699
- package/dist/showcase/assets/mention-inline-suggestions-BTunE4RJ.js +0 -1
- package/dist/showcase/assets/mentions-BXSq2eCS.js +0 -138
- package/dist/showcase/assets/menus-USrp5qP5.js +0 -171
- package/dist/showcase/assets/message-square-Cyrr-QgJ.js +0 -1
- package/dist/showcase/assets/metadata-list-BJTye3J8.js +0 -286
- package/dist/showcase/assets/metadata-list-CoRYXjEw.js +0 -1
- package/dist/showcase/assets/metric-DdC_pWnF.js +0 -1
- package/dist/showcase/assets/metric-bar-PGG8KQS0.js +0 -1
- package/dist/showcase/assets/metric-grid-ZqDufV_5.js +0 -1
- package/dist/showcase/assets/metric-trend-chip-BhCRReMp.js +0 -1
- package/dist/showcase/assets/metrics-analytics-bar-U3gehGfQ.js +0 -44
- package/dist/showcase/assets/metrics-analytics-cards-CzbLGAWi.js +0 -50
- package/dist/showcase/assets/metrics-comparison-B1z3nUpo.js +0 -76
- package/dist/showcase/assets/metrics-heatmap-DZeqRxFz.js +0 -27
- package/dist/showcase/assets/metrics-inline-badge-CPyhCHXj.js +0 -17
- package/dist/showcase/assets/metrics-kpi-row-COVuNReW.js +0 -31
- package/dist/showcase/assets/metrics-micro-grid-BNSrw6sM.js +0 -42
- package/dist/showcase/assets/metrics-overview-3IHComMd.js +0 -192
- package/dist/showcase/assets/metrics-stat-cards-6Owbjvmc.js +0 -54
- package/dist/showcase/assets/minus-CwzskYaZ.js +0 -1
- package/dist/showcase/assets/money-display-CUkeS9k1.js +0 -1
- package/dist/showcase/assets/month-year-picker-CCCTmZHv.js +0 -1
- package/dist/showcase/assets/navigation-BUReVn4R.js +0 -231
- package/dist/showcase/assets/navigation-CSzYKdcR.js +0 -90
- package/dist/showcase/assets/navigation-extras-DmUhDPMz.js +0 -43
- package/dist/showcase/assets/onboarding-checklist-C3JhV5Gb.js +0 -119
- package/dist/showcase/assets/overflow-tab-bar-CEdrls-W.js +0 -1
- package/dist/showcase/assets/overlays-BKKEzmF4.js +0 -159
- package/dist/showcase/assets/overlays-C1UodoAu.js +0 -408
- package/dist/showcase/assets/overview-Dq0MqK32.js +0 -184
- package/dist/showcase/assets/package-BaQGBJmO.js +0 -1
- package/dist/showcase/assets/package-check-C8HJfDxS.js +0 -1
- package/dist/showcase/assets/page-DvMaeo43.js +0 -1
- package/dist/showcase/assets/page-action-button-B5ZGYpYy.js +0 -1
- package/dist/showcase/assets/page-header-Y-96EPMp.js +0 -1
- package/dist/showcase/assets/pagination-Br1AfDte.js +0 -1
- package/dist/showcase/assets/pagination-yLAHxKpc.js +0 -42
- package/dist/showcase/assets/paperclip-BBDKiZeH.js +0 -1
- package/dist/showcase/assets/password-input-iwrucadb.js +0 -1
- package/dist/showcase/assets/pencil-BUhkJ_Nn.js +0 -1
- package/dist/showcase/assets/phone-DtJDFH70.js +0 -1
- package/dist/showcase/assets/plus-4gOvUk-5.js +0 -1
- package/dist/showcase/assets/popover-C8YAdHfL.js +0 -1
- package/dist/showcase/assets/popover-D9ZDWqLl.js +0 -1
- package/dist/showcase/assets/popover-menu-C5M9Up4M.js +0 -1
- package/dist/showcase/assets/products-DrKTk8Aw.js +0 -423
- package/dist/showcase/assets/progress-C1qKfCZB.js +0 -18
- package/dist/showcase/assets/progress-CpD58Wl0.js +0 -1
- package/dist/showcase/assets/props-table-C6gPyO49.js +0 -1
- package/dist/showcase/assets/quote-BXTU9evS.js +0 -1
- package/dist/showcase/assets/receipt-Dwc4p04P.js +0 -1
- package/dist/showcase/assets/receipt-text-DBEu6Gym.js +0 -1
- package/dist/showcase/assets/refinement-guide-DeO_yM8U.js +0 -189
- package/dist/showcase/assets/refresh-cw-BpV3OG_s.js +0 -1
- package/dist/showcase/assets/resolveValueLabel-DZTrDdG0.js +0 -1
- package/dist/showcase/assets/resource-BLGoRFou.js +0 -1
- package/dist/showcase/assets/resource-D5AQesdN.js +0 -139
- package/dist/showcase/assets/resource-selector-card-BKzeUE0k.js +0 -43
- package/dist/showcase/assets/rich-text-editor-DYkPamiq.js +0 -124
- package/dist/showcase/assets/rich-text-editor-k1dtT5bX.js +0 -143
- package/dist/showcase/assets/rotate-ccw-Dajwztf1.js +0 -1
- package/dist/showcase/assets/route-5uO9C0gV.js +0 -1
- package/dist/showcase/assets/save-DONvClxa.js +0 -1
- package/dist/showcase/assets/schema-form-BMQmx4JI.js +0 -327
- package/dist/showcase/assets/scroll-area-CnAyhKQ_.js +0 -1
- package/dist/showcase/assets/scroll-area-CxwfyjX3.js +0 -32
- package/dist/showcase/assets/section-Dd6X6IKg.js +0 -1
- package/dist/showcase/assets/select-CJSyu7sS.js +0 -1
- package/dist/showcase/assets/select-Du9VvUxt.js +0 -1
- package/dist/showcase/assets/send-3ANJL7UB.js +0 -1
- package/dist/showcase/assets/separator-BiXjWmP-.js +0 -28
- package/dist/showcase/assets/separator-y9i6EG-N.js +0 -1
- package/dist/showcase/assets/settings-2-Ynd1Lcz4.js +0 -1
- package/dist/showcase/assets/settings-CqdZB-OI.js +0 -1
- package/dist/showcase/assets/sheet-CzFOcAwE.js +0 -1
- package/dist/showcase/assets/shield-Dmxwcn3w.js +0 -1
- package/dist/showcase/assets/shield-alert-RrMsBuWp.js +0 -1
- package/dist/showcase/assets/shield-check-Bnw8RAvI.js +0 -1
- package/dist/showcase/assets/shopping-bag-DGXTQNOf.js +0 -1
- package/dist/showcase/assets/showcase-DMRZCqmg.js +0 -132
- package/dist/showcase/assets/sidebar-C0tsWnrh.js +0 -1
- package/dist/showcase/assets/sidebar.context-DXGEPgaT.js +0 -1
- package/dist/showcase/assets/skeleton-BFa4FHSC.js +0 -29
- package/dist/showcase/assets/skeleton-DOJ1RAcJ.js +0 -1
- package/dist/showcase/assets/slider-BjQs0C8N.js +0 -1
- package/dist/showcase/assets/smart-card-BwSFemlj.js +0 -1
- package/dist/showcase/assets/sonner-BXMIK3eQ.js +0 -22
- package/dist/showcase/assets/sortable.esm-BeBA3gT5.js +0 -5
- package/dist/showcase/assets/sparkles-Bc0I4qTf.js +0 -1
- package/dist/showcase/assets/spinner-HyNCtTyd.js +0 -1
- package/dist/showcase/assets/spinner-LskR5l9T.js +0 -30
- package/dist/showcase/assets/spinner-mtwVRe8M.js +0 -49
- package/dist/showcase/assets/square-pen-BrZ2OxTe.js +0 -1
- package/dist/showcase/assets/stacked-avatars-DOAFRjmZ.js +0 -1
- package/dist/showcase/assets/star-lUSxI166.js +0 -1
- package/dist/showcase/assets/startOfDay-BLhx9b6k.js +0 -1
- package/dist/showcase/assets/styles-COpnijXU.js +0 -1
- package/dist/showcase/assets/suggestions-ftPYc9p6.js +0 -126
- package/dist/showcase/assets/switch-DirKCDsg.js +0 -1
- package/dist/showcase/assets/switch-DoPIN_UN.js +0 -1
- package/dist/showcase/assets/sync-C2DEiaQz.js +0 -124
- package/dist/showcase/assets/table-D6GywZEx.js +0 -1
- package/dist/showcase/assets/table-Dex8CcfW.js +0 -664
- package/dist/showcase/assets/table-actions-CJg82sW0.js +0 -1
- package/dist/showcase/assets/tabs-B9tgdMRD.js +0 -1
- package/dist/showcase/assets/tabs-C0fSpkON.js +0 -19
- package/dist/showcase/assets/tags-input-CJSpILy6.js +0 -1
- package/dist/showcase/assets/text-button-CoPZBQiq.js +0 -1
- package/dist/showcase/assets/text-link-d9JIRU2N.js +0 -1
- package/dist/showcase/assets/textarea-BN4PUX-V.js +0 -1
- package/dist/showcase/assets/textarea-CBhdtg5X.js +0 -1
- package/dist/showcase/assets/timelines-F_mzbAPA.js +0 -200
- package/dist/showcase/assets/toggle-group-8ESepeYW.js +0 -1
- package/dist/showcase/assets/toggles-B2Cg5NVG.js +0 -71
- package/dist/showcase/assets/toggles-group-BTmtSzAa.js +0 -32
- package/dist/showcase/assets/tooltip-DNsHZ3ZE.js +0 -31
- package/dist/showcase/assets/trash-2-Bf5dpRjn.js +0 -1
- package/dist/showcase/assets/trending-up-RSklVrcZ.js +0 -1
- package/dist/showcase/assets/truck-CqmeajvP.js +0 -1
- package/dist/showcase/assets/typography-DJjQO_Ld.js +0 -223
- package/dist/showcase/assets/ui-badge-BwkZfeBs.js +0 -28
- package/dist/showcase/assets/ui-card-B3mtVa60.js +0 -30
- package/dist/showcase/assets/ui-table-DM-avYTi.js +0 -42
- package/dist/showcase/assets/upload-tray-CFI_7lcB.js +0 -138
- package/dist/showcase/assets/use-layout-link-BI4MRSHG.js +0 -1
- package/dist/showcase/assets/useAnchoredPopupScrollLock-DRs8fnir.js +0 -1
- package/dist/showcase/assets/useAriaLabelledBy-DhgmwFn7.js +0 -1
- package/dist/showcase/assets/useCollapsiblePanel-vGthv_MA.js +0 -1
- package/dist/showcase/assets/useCompositeItem-g1FeYTbw.js +0 -1
- package/dist/showcase/assets/useCompositeListItem-CyULeWSL.js +0 -1
- package/dist/showcase/assets/useLabelableId-CBWpOnwZ.js +0 -1
- package/dist/showcase/assets/useOpenInteractionType-CQSuD7yw.js +0 -1
- package/dist/showcase/assets/useRender-Dm8qJkvr.js +0 -1
- package/dist/showcase/assets/useTriggerFocusGuards-B6KAsVMk.js +0 -1
- package/dist/showcase/assets/useValueChanged-DXek_Wx7.js +0 -1
- package/dist/showcase/assets/user-B35DABNz.js +0 -1
- package/dist/showcase/assets/user-plus-C69GplWt.js +0 -1
- package/dist/showcase/assets/users-DDgUGkgw.js +0 -1
- package/dist/showcase/assets/vendor-profile-Zfh99jtA.js +0 -37
- package/dist/showcase/assets/video-CDERYmRS.js +0 -1
- package/dist/showcase/assets/wrench-PjtfaRuJ.js +0 -1
- package/dist/showcase/assets/x-FNPo6qUv.js +0 -1
- package/dist/showcase/assets/zap-CzjU6LH0.js +0 -1
|
@@ -1,355 +0,0 @@
|
|
|
1
|
-
import { useStrings as e } from "../lib/strings.js";
|
|
2
|
-
import { n as t } from "./ui-provider-Dj6OSOZi.js";
|
|
3
|
-
import { cn as n } from "../lib/utils.js";
|
|
4
|
-
import { t as r } from "./button-DHksjMvc.js";
|
|
5
|
-
import { i, n as a, t as o } from "./tooltip-CLr_sPX8.js";
|
|
6
|
-
import { s } from "./typography-DE0NGEIE.js";
|
|
7
|
-
import { r as c, t as l } from "./alert-m-4s0Hqq.js";
|
|
8
|
-
import { a as u, g as d, r as f, t as p } from "./dropdown-menu-CoWmrjYX.js";
|
|
9
|
-
import { Fragment as m, forwardRef as h, isValidElement as g, useCallback as _, useState as v } from "react";
|
|
10
|
-
import { jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
11
|
-
import { ChevronDown as x, Info as S, MoreHorizontal as C } from "lucide-react";
|
|
12
|
-
//#region src/components/ui/card.tsx
|
|
13
|
-
function w({ className: e, size: t = "default", ...r }) {
|
|
14
|
-
return /* @__PURE__ */ y("div", {
|
|
15
|
-
"data-slot": "card",
|
|
16
|
-
"data-size": t,
|
|
17
|
-
className: n("ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col", e),
|
|
18
|
-
...r
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
function T({ className: e, ...t }) {
|
|
22
|
-
return /* @__PURE__ */ y("div", {
|
|
23
|
-
"data-slot": "card-header",
|
|
24
|
-
className: n("gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]", e),
|
|
25
|
-
...t
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
function E({ className: e, ...t }) {
|
|
29
|
-
return /* @__PURE__ */ y("div", {
|
|
30
|
-
"data-slot": "card-title",
|
|
31
|
-
className: n("text-base leading-normal font-medium group-data-[size=sm]/card:text-sm", e),
|
|
32
|
-
...t
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
function D({ className: e, ...t }) {
|
|
36
|
-
return /* @__PURE__ */ y("div", {
|
|
37
|
-
"data-slot": "card-description",
|
|
38
|
-
className: n("text-muted-foreground text-sm", e),
|
|
39
|
-
...t
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
function O({ className: e, ...t }) {
|
|
43
|
-
return /* @__PURE__ */ y("div", {
|
|
44
|
-
"data-slot": "card-content",
|
|
45
|
-
className: n("px-6 group-data-[size=sm]/card:px-4", e),
|
|
46
|
-
...t
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
function k({ className: e, ...t }) {
|
|
50
|
-
return /* @__PURE__ */ y("div", {
|
|
51
|
-
"data-slot": "card-footer",
|
|
52
|
-
className: n("rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center", e),
|
|
53
|
-
...t
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
//#endregion
|
|
57
|
-
//#region src/components/base/cards/smart-card.tokens.ts
|
|
58
|
-
var A = {
|
|
59
|
-
root: "card--component",
|
|
60
|
-
header: "card--header",
|
|
61
|
-
title: "card--title",
|
|
62
|
-
description: "card--description",
|
|
63
|
-
content: "card--content",
|
|
64
|
-
footer: "card--footer",
|
|
65
|
-
alert: "card--alert"
|
|
66
|
-
}, j = {
|
|
67
|
-
small: {
|
|
68
|
-
shell: "gap-space-lg py-surface-sm",
|
|
69
|
-
headerX: "px-surface-sm",
|
|
70
|
-
contentX: "px-surface-sm",
|
|
71
|
-
contentY: "py-0",
|
|
72
|
-
footerX: "px-surface-sm",
|
|
73
|
-
alertX: "px-surface-sm",
|
|
74
|
-
alertOffsetWithHeader: "-mt-1",
|
|
75
|
-
alertOffsetStandalone: "mt-0"
|
|
76
|
-
},
|
|
77
|
-
default: {
|
|
78
|
-
shell: "gap-space-xl py-surface",
|
|
79
|
-
headerX: "px-surface",
|
|
80
|
-
contentX: "px-surface",
|
|
81
|
-
contentY: "py-0",
|
|
82
|
-
footerX: "px-surface",
|
|
83
|
-
alertX: "px-surface",
|
|
84
|
-
alertOffsetWithHeader: "-mt-1",
|
|
85
|
-
alertOffsetStandalone: "mt-0"
|
|
86
|
-
}
|
|
87
|
-
}, M = {
|
|
88
|
-
card: "rounded-lg border border-border bg-card text-card-foreground shadow-xs",
|
|
89
|
-
flat: "bg-transparent text-card-foreground border-none shadow-none",
|
|
90
|
-
framed: n("rounded-lg border border-border bg-card text-card-foreground shadow-xs", "ring-4 ring-border/25")
|
|
91
|
-
};
|
|
92
|
-
//#endregion
|
|
93
|
-
//#region src/components/base/cards/partials/has-renderable-content.ts
|
|
94
|
-
function N(e) {
|
|
95
|
-
return e == null || typeof e == "boolean" ? !1 : typeof e == "string" ? e.trim().length > 0 : typeof e == "number" || typeof e == "bigint" ? !0 : Array.isArray(e) ? e.some(N) : g(e) && e.type === m ? N(e.props.children) : !0;
|
|
96
|
-
}
|
|
97
|
-
//#endregion
|
|
98
|
-
//#region src/components/base/cards/partials/card-primitives.tsx
|
|
99
|
-
function P({ className: e, ...t }) {
|
|
100
|
-
return /* @__PURE__ */ y(w, {
|
|
101
|
-
className: n(A.root, "flex w-full flex-col gap-3 py-4 ring-0", e),
|
|
102
|
-
...t
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
function F({ className: e, ...t }) {
|
|
106
|
-
return /* @__PURE__ */ y(T, {
|
|
107
|
-
className: n(A.header, "flex flex-col gap-1 px-4", e),
|
|
108
|
-
...t
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
function I({ className: e, children: t, ...r }) {
|
|
112
|
-
return N(t) ? typeof t == "string" || typeof t == "number" || typeof t == "bigint" ? /* @__PURE__ */ y(s, {
|
|
113
|
-
"data-slot": "card-title",
|
|
114
|
-
tag: "div",
|
|
115
|
-
size: "base",
|
|
116
|
-
weight: "semibold",
|
|
117
|
-
lineHeight: "tight",
|
|
118
|
-
className: n(A.title, "min-w-0 font-semibold", e),
|
|
119
|
-
...r,
|
|
120
|
-
children: t
|
|
121
|
-
}) : /* @__PURE__ */ y(E, {
|
|
122
|
-
className: n(A.title, "min-w-0 text-base leading-tight font-semibold", e),
|
|
123
|
-
...r,
|
|
124
|
-
children: t
|
|
125
|
-
}) : null;
|
|
126
|
-
}
|
|
127
|
-
function L({ className: e, children: t, ...r }) {
|
|
128
|
-
return N(t) ? typeof t == "string" || typeof t == "number" || typeof t == "bigint" ? /* @__PURE__ */ y(s, {
|
|
129
|
-
"data-slot": "card-description",
|
|
130
|
-
tag: "div",
|
|
131
|
-
type: "secondary",
|
|
132
|
-
className: n(A.description, "text-muted-foreground text-sm", e),
|
|
133
|
-
...r,
|
|
134
|
-
children: t
|
|
135
|
-
}) : /* @__PURE__ */ y(D, {
|
|
136
|
-
className: n(A.description, "text-muted-foreground text-sm", e),
|
|
137
|
-
...r,
|
|
138
|
-
children: t
|
|
139
|
-
}) : null;
|
|
140
|
-
}
|
|
141
|
-
function R({ className: e, ...t }) {
|
|
142
|
-
return /* @__PURE__ */ y(O, {
|
|
143
|
-
className: n(A.content, "px-4", e),
|
|
144
|
-
...t
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
function z({ className: e, ...t }) {
|
|
148
|
-
return /* @__PURE__ */ y(k, {
|
|
149
|
-
className: n(A.footer, "flex items-center px-4", e),
|
|
150
|
-
...t
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
//#endregion
|
|
154
|
-
//#region src/components/base/cards/partials/smart-card-alert.tsx
|
|
155
|
-
function ee({ alert: e, alertVariant: t, hasHeader: r, padding: i }) {
|
|
156
|
-
let a = j[i];
|
|
157
|
-
return /* @__PURE__ */ y("div", {
|
|
158
|
-
className: n(A.alert, a.alertX, r ? a.alertOffsetWithHeader : a.alertOffsetStandalone),
|
|
159
|
-
children: /* @__PURE__ */ y(l, {
|
|
160
|
-
variant: t,
|
|
161
|
-
children: /* @__PURE__ */ y(c, { children: e })
|
|
162
|
-
})
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
//#endregion
|
|
166
|
-
//#region src/components/base/cards/partials/smart-card-actions-menu.tsx
|
|
167
|
-
function B({ actions: e, actionsLabel: t }) {
|
|
168
|
-
return /* @__PURE__ */ b(p, { children: [/* @__PURE__ */ y(d, {
|
|
169
|
-
type: "button",
|
|
170
|
-
"aria-label": t,
|
|
171
|
-
className: n("inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0", "text-muted-foreground hover:bg-accent hover:text-accent-foreground", "outline-none focus-visible:ring-2 focus-visible:ring-ring/50", "transition-colors"),
|
|
172
|
-
children: /* @__PURE__ */ y(C, { className: "size-4" })
|
|
173
|
-
}), /* @__PURE__ */ y(f, {
|
|
174
|
-
align: "end",
|
|
175
|
-
className: "min-w-36",
|
|
176
|
-
children: e.map((e, t) => /* @__PURE__ */ b(u, {
|
|
177
|
-
onClick: e.onClick,
|
|
178
|
-
disabled: e.disabled,
|
|
179
|
-
className: "gap-space-lg px-row-x py-row-y text-xs",
|
|
180
|
-
children: [!!e.icon && /* @__PURE__ */ y("span", {
|
|
181
|
-
className: "flex shrink-0 items-center",
|
|
182
|
-
children: e.icon
|
|
183
|
-
}), e.label]
|
|
184
|
-
}, e.id ?? `${e.label}-${t}`))
|
|
185
|
-
})] });
|
|
186
|
-
}
|
|
187
|
-
//#endregion
|
|
188
|
-
//#region src/components/base/cards/partials/smart-card-header-row.tsx
|
|
189
|
-
function V({ tooltipLabel: e }) {
|
|
190
|
-
return /* @__PURE__ */ y(i, { render: (t) => {
|
|
191
|
-
let i = t;
|
|
192
|
-
return /* @__PURE__ */ y(r, {
|
|
193
|
-
...i,
|
|
194
|
-
type: "button",
|
|
195
|
-
variant: "secondary",
|
|
196
|
-
buttonStyle: "ghost",
|
|
197
|
-
size: "icon-small",
|
|
198
|
-
className: n("h-5 w-5 text-muted-foreground", i.className),
|
|
199
|
-
"aria-label": e,
|
|
200
|
-
children: /* @__PURE__ */ y(S, { className: "size-3.5" })
|
|
201
|
-
});
|
|
202
|
-
} });
|
|
203
|
-
}
|
|
204
|
-
function te({ icon: e, title: t, titleSuffix: r, description: i, tooltip: s, tooltipLabel: c, headerStart: l, headerEnd: u, headerAction: d, actions: f, actionsLabel: p, padding: m, className: h }) {
|
|
205
|
-
let g = Array.isArray(f) ? f : [], _ = g.length > 0, v = N(e), x = N(t), S = N(r), C = N(i), w = N(s), T = N(l), E = N(u), D = N(d), O = v || x || S || w, k = E || D || _;
|
|
206
|
-
return /* @__PURE__ */ b(F, {
|
|
207
|
-
className: n("flex-row items-start justify-between gap-3 pb-0", j[m].headerX, h),
|
|
208
|
-
children: [/* @__PURE__ */ b("div", {
|
|
209
|
-
className: "flex min-w-0 flex-1 flex-col gap-1",
|
|
210
|
-
children: [
|
|
211
|
-
!!T && l,
|
|
212
|
-
!!O && /* @__PURE__ */ b("div", {
|
|
213
|
-
className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",
|
|
214
|
-
children: [
|
|
215
|
-
!!v && /* @__PURE__ */ y("span", {
|
|
216
|
-
className: "flex shrink-0 items-center text-muted-foreground",
|
|
217
|
-
children: e
|
|
218
|
-
}),
|
|
219
|
-
/* @__PURE__ */ y(I, { children: t }),
|
|
220
|
-
!!S && /* @__PURE__ */ y("div", {
|
|
221
|
-
className: "flex items-center gap-2",
|
|
222
|
-
children: r
|
|
223
|
-
}),
|
|
224
|
-
!!w && /* @__PURE__ */ b(o, { children: [/* @__PURE__ */ y(V, { tooltipLabel: c }), /* @__PURE__ */ y(a, { children: s })] })
|
|
225
|
-
]
|
|
226
|
-
}),
|
|
227
|
-
!!C && /* @__PURE__ */ y(L, {
|
|
228
|
-
className: "text-left",
|
|
229
|
-
children: i
|
|
230
|
-
})
|
|
231
|
-
]
|
|
232
|
-
}), !!k && /* @__PURE__ */ b("div", {
|
|
233
|
-
className: "flex shrink-0 items-center gap-2",
|
|
234
|
-
children: [
|
|
235
|
-
!!E && u,
|
|
236
|
-
!!D && d,
|
|
237
|
-
!!_ && /* @__PURE__ */ y(B, {
|
|
238
|
-
actions: g,
|
|
239
|
-
actionsLabel: p
|
|
240
|
-
})
|
|
241
|
-
]
|
|
242
|
-
})]
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
//#endregion
|
|
246
|
-
//#region src/components/base/cards/smart-card.strings.ts
|
|
247
|
-
var H = {
|
|
248
|
-
expandLabel: "Expand card",
|
|
249
|
-
collapseLabel: "Collapse card"
|
|
250
|
-
};
|
|
251
|
-
//#endregion
|
|
252
|
-
//#region src/components/base/cards/partials/smart-card-skeleton.tsx
|
|
253
|
-
function U({ title: e, lines: t = 2, className: r }) {
|
|
254
|
-
let i = ({ barClassName: e }) => /* @__PURE__ */ y("div", { className: n("animate-pulse rounded bg-muted", e) });
|
|
255
|
-
return /* @__PURE__ */ b(P, {
|
|
256
|
-
className: n(M.card, "gap-4 py-6", r),
|
|
257
|
-
children: [/* @__PURE__ */ y(F, {
|
|
258
|
-
className: "flex-col gap-1.5 px-6 pb-0",
|
|
259
|
-
children: e ? /* @__PURE__ */ y(I, { children: e }) : /* @__PURE__ */ y(i, { barClassName: "h-4 w-32" })
|
|
260
|
-
}), /* @__PURE__ */ y(R, {
|
|
261
|
-
className: "space-y-3 px-6 py-0",
|
|
262
|
-
children: Array.from({ length: t }, (e, t) => /* @__PURE__ */ y(i, { barClassName: n("h-4", t === 0 ? "w-full" : "w-3/4") }, `skel-${String(t)}`))
|
|
263
|
-
})]
|
|
264
|
-
});
|
|
265
|
-
}
|
|
266
|
-
U.displayName = "SmartCardSkeleton";
|
|
267
|
-
//#endregion
|
|
268
|
-
//#region src/components/base/cards/smart-card.tsx
|
|
269
|
-
function ne(e) {
|
|
270
|
-
return e === "small" || e === "default" ? e : e === "sm" ? "small" : "default";
|
|
271
|
-
}
|
|
272
|
-
var W = h(function({ icon: i, title: a, titleSuffix: o, description: s, tooltip: c, tooltipAriaLabel: l = "Card info", footerText: u, alert: d, alertVariant: f = "default", surface: p, transparent: m = !1, padding: h, actions: g, actionsLabel: S = "Card actions", headerAction: C, headerStart: w, headerEnd: T, contentTop: E, contentBottom: D, footerSlot: O, headerDivider: k = !1, footerDivider: A = !1, expandable: F = !1, defaultExpanded: I = !1, expanded: L, onExpandedChange: B, children: V, className: U, headerClassName: W, contentClassName: re, footerClassName: G, strings: ie }, ae) {
|
|
273
|
-
let { defaultPadding: oe } = t(), K = ne(h ?? oe), q = j[K], J = Array.isArray(g) ? g : [], Y = e(H, ie), X = F !== !1 && F !== void 0, Z = typeof F == "object" && F?.collapsedMaxHeight !== void 0 ? F.collapsedMaxHeight : "12rem", se = typeof Z == "number" ? `${Z}px` : Z, Q = L !== void 0, [ce, le] = v(I), $ = Q ? L : ce, ue = _(() => {
|
|
274
|
-
let e = !$;
|
|
275
|
-
Q || le(e), B?.(e);
|
|
276
|
-
}, [
|
|
277
|
-
$,
|
|
278
|
-
Q,
|
|
279
|
-
B
|
|
280
|
-
]), de = N(i) || N(a) || N(s) || J.length > 0 || N(C) || N(w) || N(T), fe = N(d), pe = N(u), me = N(O), he = N(E), ge = N(D), _e = l.trim().length > 0 ? l : "Card info", ve = X ? { maxHeight: $ ? "" : se } : void 0, ye = p ?? (m ? "flat" : "card");
|
|
281
|
-
return /* @__PURE__ */ b(P, {
|
|
282
|
-
ref: ae,
|
|
283
|
-
"data-surface": ye,
|
|
284
|
-
className: n(M[ye], q.shell, X && "relative pb-1 !overflow-visible", U),
|
|
285
|
-
children: [
|
|
286
|
-
!!de && /* @__PURE__ */ y(te, {
|
|
287
|
-
icon: i,
|
|
288
|
-
title: a,
|
|
289
|
-
titleSuffix: o,
|
|
290
|
-
description: s,
|
|
291
|
-
tooltip: c,
|
|
292
|
-
tooltipLabel: _e,
|
|
293
|
-
headerStart: w,
|
|
294
|
-
headerEnd: T,
|
|
295
|
-
headerAction: C,
|
|
296
|
-
actions: J,
|
|
297
|
-
actionsLabel: S,
|
|
298
|
-
padding: K,
|
|
299
|
-
className: n(k && "pb-3 border-b border-border/60", W)
|
|
300
|
-
}),
|
|
301
|
-
!!fe && /* @__PURE__ */ y(ee, {
|
|
302
|
-
alert: d,
|
|
303
|
-
alertVariant: f,
|
|
304
|
-
hasHeader: de,
|
|
305
|
-
padding: K
|
|
306
|
-
}),
|
|
307
|
-
/* @__PURE__ */ b(R, {
|
|
308
|
-
className: n(q.contentX, q.contentY, X && "relative overflow-hidden transition-[max-height] duration-500 ease-in-out", re),
|
|
309
|
-
style: ve,
|
|
310
|
-
children: [
|
|
311
|
-
!!he && E,
|
|
312
|
-
V,
|
|
313
|
-
!!ge && D,
|
|
314
|
-
!!X && !$ && /* @__PURE__ */ y("div", {
|
|
315
|
-
"aria-hidden": "true",
|
|
316
|
-
className: "from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent"
|
|
317
|
-
})
|
|
318
|
-
]
|
|
319
|
-
}),
|
|
320
|
-
!!pe && /* @__PURE__ */ y(z, {
|
|
321
|
-
className: n("justify-end text-xs text-muted-foreground", q.footerX, A && "pt-3 border-t border-border/60", G),
|
|
322
|
-
children: u
|
|
323
|
-
}),
|
|
324
|
-
!!me && /* @__PURE__ */ y(z, {
|
|
325
|
-
className: n("flex-col items-stretch", q.footerX, A && "pt-3 border-t border-border/60", G),
|
|
326
|
-
children: O
|
|
327
|
-
}),
|
|
328
|
-
!!X && /* @__PURE__ */ y("div", {
|
|
329
|
-
className: "absolute -bottom-4 left-1/2 -translate-x-1/2 z-10",
|
|
330
|
-
children: /* @__PURE__ */ b(r, {
|
|
331
|
-
type: "button",
|
|
332
|
-
variant: "secondary",
|
|
333
|
-
buttonStyle: "outline",
|
|
334
|
-
size: "icon-small",
|
|
335
|
-
onClick: ue,
|
|
336
|
-
"aria-expanded": $,
|
|
337
|
-
"aria-label": $ ? Y.collapseLabel : Y.expandLabel,
|
|
338
|
-
className: n("inline-flex size-8 items-center justify-center rounded-full", "border border-border bg-background text-foreground shadow-sm", "hover:bg-muted/40 transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50"),
|
|
339
|
-
children: [/* @__PURE__ */ y(x, {
|
|
340
|
-
"aria-hidden": "true",
|
|
341
|
-
className: n("size-4 transition-transform duration-300", $ && "rotate-180")
|
|
342
|
-
}), /* @__PURE__ */ y("span", {
|
|
343
|
-
className: "sr-only",
|
|
344
|
-
children: $ ? Y.collapseLabel : Y.expandLabel
|
|
345
|
-
})]
|
|
346
|
-
})
|
|
347
|
-
})
|
|
348
|
-
]
|
|
349
|
-
});
|
|
350
|
-
});
|
|
351
|
-
W.displayName = "SmartCard";
|
|
352
|
-
//#endregion
|
|
353
|
-
export { L as a, P as c, R as i, I as l, U as n, z as o, H as r, F as s, W as t };
|
|
354
|
-
|
|
355
|
-
//# sourceMappingURL=cards-CtBoSZG9.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cards-CtBoSZG9.js","names":[],"sources":["../../src/components/ui/card.tsx","../../src/components/base/cards/smart-card.tokens.ts","../../src/components/base/cards/partials/has-renderable-content.ts","../../src/components/base/cards/partials/card-primitives.tsx","../../src/components/base/cards/partials/smart-card-alert.tsx","../../src/components/base/cards/partials/smart-card-actions-menu.tsx","../../src/components/base/cards/partials/smart-card-header-row.tsx","../../src/components/base/cards/smart-card.strings.ts","../../src/components/base/cards/partials/smart-card-skeleton.tsx","../../src/components/base/cards/smart-card.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Card({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & { size?: \"default\" | \"sm\" }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\"ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col\", className)}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\"text-base leading-normal font-medium group-data-[size=sm]/card:text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6 group-data-[size=sm]/card:px-4\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n","import { cn } from '@/lib/utils';\n\nimport type { CardPadding, SmartCardSurface } from './smart-card.types';\n\n/**\n * BEM-style hooks applied to every SmartCard subregion. Library\n * consumers can target them in CSS / tests / analytics without\n * relying on shadcn's data-slot attributes (which are framework\n * internals). Keep these names consistent — they are part of the\n * public DOM contract.\n */\nexport const CARD_BEM = {\n\troot: 'card--component',\n\theader: 'card--header',\n\ttitle: 'card--title',\n\tdescription: 'card--description',\n\tcontent: 'card--content',\n\tfooter: 'card--footer',\n\talert: 'card--alert',\n} as const;\n\ninterface PaddingTokens {\n\tshell: string;\n\theaderX: string;\n\tcontentX: string;\n\tcontentY: string;\n\tfooterX: string;\n\talertX: string;\n\t/** Vertical offset applied when alert sits BELOW the header (pulls it up). */\n\talertOffsetWithHeader: string;\n\t/** Vertical spacing applied when alert is the first content (no header). */\n\talertOffsetStandalone: string;\n}\n\nexport const PADDING: Record<CardPadding, PaddingTokens> = {\n\tsmall: {\n\t\tshell: 'gap-space-lg py-surface-sm',\n\t\theaderX: 'px-surface-sm',\n\t\tcontentX: 'px-surface-sm',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-surface-sm',\n\t\talertX: 'px-surface-sm',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n\tdefault: {\n\t\tshell: 'gap-space-xl py-surface',\n\t\theaderX: 'px-surface',\n\t\tcontentX: 'px-surface',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-surface',\n\t\talertX: 'px-surface',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n};\n\n/**\n * Surface-specific shell classes. The `framed` variant provides one clean\n * card surface with a soft tokenized ring, not nested borders that compete\n * with the example chrome.\n */\nexport const SURFACE_CLASSES: Record<SmartCardSurface, string> = {\n\tcard: 'rounded-lg border border-border bg-card text-card-foreground shadow-xs',\n\tflat: 'bg-transparent text-card-foreground border-none shadow-none',\n\tframed: cn(\n\t\t'rounded-lg border border-border bg-card text-card-foreground shadow-xs',\n\t\t'ring-4 ring-border/25',\n\t),\n};\n","import { Fragment, isValidElement, type ReactNode } from 'react';\n\n/**\n * Predicate used by SmartCard subregions to decide whether each slot\n * warrants rendering its wrapper. Numbers (incl. `0`) and JSX always\n * render; falsy / empty-string content is treated as absent. Fragments\n * recurse into their children.\n */\nexport function hasRenderableContent(content?: ReactNode): boolean {\n\tif (content === null || content === undefined) return false;\n\tif (typeof content === 'boolean') return false;\n\tif (typeof content === 'string') return content.trim().length > 0;\n\tif (typeof content === 'number' || typeof content === 'bigint') return true;\n\tif (Array.isArray(content)) return content.some(hasRenderableContent);\n\tif (isValidElement<{ children?: ReactNode }>(content)) {\n\t\tif (content.type === Fragment) return hasRenderableContent(content.props.children);\n\t\treturn true;\n\t}\n\treturn true;\n}\n","/**\n * Internal layout primitives — re-exported from `smart-card.tsx` for\n * advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each primitive is intentionally thin:\n * a single responsibility, a single set of default classes, no business\n * logic. The BEM hooks (`card--component`, `card--header`, etc.) are\n * applied here so the public DOM contract lives in one place.\n */\nimport {\n\ttype ComponentPropsWithRef,\n\ttype ComponentPropsWithoutRef,\n} from 'react';\n\nimport {\n\tCard as CardPrimitive,\n\tCardContent as CardContentPrimitive,\n\tCardDescription as CardDescriptionPrimitive,\n\tCardFooter as CardFooterPrimitive,\n\tCardHeader as CardHeaderPrimitive,\n\tCardTitle as CardTitlePrimitive,\n} from '@/components/ui/card';\nimport Text from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM } from '../smart-card.tokens';\n\nimport { hasRenderableContent } from './has-renderable-content';\n\nexport function CardShell({ className, ...props }: ComponentPropsWithRef<'div'>) {\n\treturn (\n\t\t<CardPrimitive\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.root,\n\t\t\t\t'flex w-full flex-col gap-3 py-4 ring-0',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardHeader({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardHeaderPrimitive\n\t\t\tclassName={cn(CARD_BEM.header, 'flex flex-col gap-1 px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardTitle({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardTitlePrimitive\n\t\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 text-base leading-tight font-semibold', className)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CardTitlePrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-title\"\n\t\t\ttag=\"div\"\n\t\t\tsize=\"base\"\n\t\t\tweight=\"semibold\"\n\t\t\tlineHeight=\"tight\"\n\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 font-semibold', className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardDescription({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardDescriptionPrimitive\n\t\t\t\tclassName={cn(\n\t\t\t\t\tCARD_BEM.description,\n\t\t\t\t\t'text-muted-foreground text-sm',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CardDescriptionPrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-description\"\n\t\t\ttag=\"div\"\n\t\t\ttype=\"secondary\"\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.description,\n\t\t\t\t'text-muted-foreground text-sm',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardContent({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardContentPrimitive\n\t\t\tclassName={cn(CARD_BEM.content, 'px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardFooter({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardFooterPrimitive\n\t\t\tclassName={cn(CARD_BEM.footer, 'flex items-center px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n","/**\n * Inline alert banner rendered between the header and the card body.\n * Pulls itself up under the header (`alertOffsetWithHeader`) when one\n * exists so the visual gap between header bottom and alert top stays\n * tight; otherwise pushes itself down (`alertOffsetStandalone`) so it\n * doesn't kiss the card top edge.\n */\nimport type { ReactNode } from 'react';\n\nimport { Alert, AlertDescription } from '@/components/base/display/alert';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM, PADDING } from '../smart-card.tokens';\nimport type { CardAlertVariant, CardPadding } from '../smart-card.types';\n\ninterface AlertSlotProps {\n\talert: ReactNode | string;\n\talertVariant: CardAlertVariant;\n\thasHeader: boolean;\n\tpadding: CardPadding;\n}\n\nexport function SmartCardAlert({\n\talert,\n\talertVariant,\n\thasHeader,\n\tpadding,\n}: AlertSlotProps) {\n\tconst tokens = PADDING[padding];\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.alert,\n\t\t\t\ttokens.alertX,\n\t\t\t\thasHeader ? tokens.alertOffsetWithHeader : tokens.alertOffsetStandalone,\n\t\t\t)}\n\t\t>\n\t\t\t<Alert variant={alertVariant}>\n\t\t\t\t<AlertDescription>{alert}</AlertDescription>\n\t\t\t</Alert>\n\t\t</div>\n\t);\n}\n","/**\n * SmartCard actions menu — `⋮` trigger + dropdown of consumer-supplied\n * `SmartCardAction` items. Always renders a 28×28 square trigger so it\n * reads cleanly as a circle (consumer overrides to `rounded-full`) or\n * a rectangle (default `rounded-md`).\n */\nimport { MoreHorizontal } from 'lucide-react';\n\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuItem,\n\tDropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu';\nimport { cn } from '@/lib/utils';\n\nimport type { SmartCardAction } from '../smart-card.types';\n\ninterface ActionsMenuProps {\n\tactions: SmartCardAction[];\n\tactionsLabel: string;\n}\n\nexport function ActionsMenu({ actions, actionsLabel }: ActionsMenuProps) {\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={actionsLabel}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0',\n\t\t\t\t\t'text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n\t\t\t\t\t'outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t'transition-colors',\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<MoreHorizontal className=\"size-4\" />\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent align=\"end\" className=\"min-w-36\">\n\t\t\t\t{actions.map((action, index) => (\n\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\tkey={action.id ?? `${action.label}-${index}`}\n\t\t\t\t\t\tonClick={action.onClick}\n\t\t\t\t\t\tdisabled={action.disabled}\n\t\t\t\t\t\tclassName=\"gap-space-lg px-row-x py-row-y text-xs\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!action.icon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center\">{action.icon}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{action.label}\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t))}\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n","/**\n * SmartCardHeaderRow — the chrome above the card body. Combines icon /\n * title / description / tooltip / suffix on the leading side with the\n * trailing `headerEnd` / `headerAction` slots and the actions menu.\n *\n * `TooltipTrigger_Info` is colocated here because it's only used by the\n * header — keeping it private avoids polluting the public partial\n * surface.\n */\nimport { Info } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\n\nimport { PADDING } from '../smart-card.tokens';\nimport type { CardPadding, SmartCardAction } from '../smart-card.types';\n\nimport { CardHeader, CardTitle, CardDescription } from './card-primitives';\nimport { hasRenderableContent } from './has-renderable-content';\nimport { ActionsMenu } from './smart-card-actions-menu';\n\nfunction TooltipTrigger_Info({ tooltipLabel }: { tooltipLabel: string }) {\n\treturn (\n\t\t<TooltipTrigger\n\t\t\trender={(triggerProps) => {\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\tconst passthrough = triggerProps as Record<string, any>;\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t{...passthrough}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'h-5 w-5 text-muted-foreground',\n\t\t\t\t\t\t\tpassthrough.className,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\taria-label={tooltipLabel}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Info className=\"size-3.5\" />\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n\ninterface HeaderProps {\n\ticon?: ReactNode;\n\ttitle?: ReactNode;\n\ttitleSuffix?: ReactNode;\n\tdescription?: ReactNode;\n\ttooltip?: ReactNode;\n\ttooltipLabel: string;\n\theaderStart?: ReactNode;\n\theaderEnd?: ReactNode;\n\theaderAction?: ReactNode;\n\tactions?: SmartCardAction[];\n\tactionsLabel: string;\n\tpadding: CardPadding;\n\tclassName?: string;\n}\n\nexport function SmartCardHeaderRow({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipLabel,\n\theaderStart,\n\theaderEnd,\n\theaderAction,\n\tactions,\n\tactionsLabel,\n\tpadding,\n\tclassName,\n}: HeaderProps) {\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst hasActions = cardActions.length > 0;\n\n\tconst hasIcon = hasRenderableContent(icon);\n\tconst hasTitle = hasRenderableContent(title);\n\tconst hasTitleSuffix = hasRenderableContent(titleSuffix);\n\tconst hasDescription = hasRenderableContent(description);\n\tconst hasTooltip = hasRenderableContent(tooltip);\n\tconst hasHeaderStart = hasRenderableContent(headerStart);\n\tconst hasHeaderEnd = hasRenderableContent(headerEnd);\n\tconst hasHeaderAction = hasRenderableContent(headerAction);\n\n\tconst showTitleRow = hasIcon || hasTitle || hasTitleSuffix || hasTooltip;\n\tconst showTrailing = hasHeaderEnd || hasHeaderAction || hasActions;\n\n\treturn (\n\t\t<CardHeader\n\t\t\tclassName={cn(\n\t\t\t\t'flex-row items-start justify-between gap-3 pb-0',\n\t\t\t\tPADDING[padding].headerX,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div className=\"flex min-w-0 flex-1 flex-col gap-1\">\n\t\t\t\t{!!hasHeaderStart && headerStart}\n\n\t\t\t\t{!!showTitleRow && (\n\t\t\t\t\t<div className=\"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1\">\n\t\t\t\t\t\t{!!hasIcon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center text-muted-foreground\">\n\t\t\t\t\t\t\t\t{icon}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<CardTitle>{title}</CardTitle>\n\t\t\t\t\t\t{!!hasTitleSuffix && (\n\t\t\t\t\t\t\t<div className=\"flex items-center gap-2\">{titleSuffix}</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!hasTooltip && (\n\t\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t\t<TooltipTrigger_Info tooltipLabel={tooltipLabel} />\n\t\t\t\t\t\t\t\t<TooltipContent>{tooltip}</TooltipContent>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{!!hasDescription && (\n\t\t\t\t\t<CardDescription className=\"text-left\">{description}</CardDescription>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{!!showTrailing && (\n\t\t\t\t<div className=\"flex shrink-0 items-center gap-2\">\n\t\t\t\t\t{!!hasHeaderEnd && headerEnd}\n\t\t\t\t\t{!!hasHeaderAction && headerAction}\n\t\t\t\t\t{!!hasActions && (\n\t\t\t\t\t\t<ActionsMenu actions={cardActions} actionsLabel={actionsLabel} />\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardHeader>\n\t);\n}\n","/**\n * SmartCard strings — i18n surface for the chrome the consumer doesn't\n * pass directly. Most copy (title, description, action labels, alert\n * body) flows in via props; the strings here cover the implicit\n * affordances (expand toggle).\n */\n\nexport interface SmartCardStrings {\n\texpandLabel: string;\n\tcollapseLabel: string;\n}\n\nexport const defaultSmartCardStrings: SmartCardStrings = {\n\texpandLabel: 'Expand card',\n\tcollapseLabel: 'Collapse card',\n};\n","/**\n * SmartCardSkeleton — placeholder shell rendered while a SmartCard's\n * data is loading. Picks up the canonical card surface so the loading\n * state visually matches the eventual `SmartCard` it'll replace.\n */\nimport type { ReactNode } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nimport { SURFACE_CLASSES } from '../smart-card.tokens';\n\nimport {\n\tCardContent,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './card-primitives';\n\nexport interface SmartCardSkeletonProps {\n\ttitle?: ReactNode;\n\tlines?: number;\n\tclassName?: string;\n}\n\nexport function SmartCardSkeleton({\n\ttitle,\n\tlines = 2,\n\tclassName,\n}: SmartCardSkeletonProps) {\n\tconst SkeletonBar = ({ barClassName }: { barClassName?: string }) => (\n\t\t<div className={cn('animate-pulse rounded bg-muted', barClassName)} />\n\t);\n\n\treturn (\n\t\t<CardShell className={cn(SURFACE_CLASSES.card, 'gap-4 py-6', className)}>\n\t\t\t<CardHeader className=\"flex-col gap-1.5 px-6 pb-0\">\n\t\t\t\t{title ? <CardTitle>{title}</CardTitle> : <SkeletonBar barClassName=\"h-4 w-32\" />}\n\t\t\t</CardHeader>\n\t\t\t<CardContent className=\"space-y-3 px-6 py-0\">\n\t\t\t\t{Array.from({ length: lines }, (_, i) => (\n\t\t\t\t\t<SkeletonBar\n\t\t\t\t\t\tkey={`skel-${String(i)}`}\n\t\t\t\t\t\tbarClassName={cn('h-4', i === 0 ? 'w-full' : 'w-3/4')}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</CardContent>\n\t\t</CardShell>\n\t);\n}\n\nSmartCardSkeleton.displayName = 'SmartCardSkeleton';\n","/**\n * SmartCard — composed card with header (icon, title, suffix, description,\n * tooltip), actions menu, alert banner, header / content / footer slots,\n * surface variants (card / flat / framed), and an opt-in expandable body.\n *\n * The single card primitive everything else builds on — never reach past it\n * to shadcn `Card` directly. The CardShell / CardHeader / CardTitle /\n * CardDescription / CardContent / CardFooter primitives are re-exported\n * for advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each subregion paints a BEM-style hook\n * (`card--component`, `card--header`, `card--title`, …) for CSS / test /\n * analytics targeting independent of shadcn's data-slot internals.\n *\n * The file is a thin orchestrator. The actual chrome lives in:\n * - `./smart-card.types.ts` — public prop / variant types\n * - `./smart-card.strings.ts` — i18n (expand toggle copy)\n * - `./smart-card.tokens.ts` — PADDING + SURFACE_CLASSES + CARD_BEM\n * - `./partials/card-primitives.tsx` — CardShell + CardHeader / Title /\n * Description / Content / Footer\n * - `./partials/smart-card-header-row.tsx` — header layout + actions menu\n * - `./partials/smart-card-alert.tsx` — inline alert banner\n * - `./partials/smart-card-actions-menu.tsx` — `⋮` dropdown\n * - `./partials/smart-card-skeleton.tsx` — loading placeholder\n * - `./partials/has-renderable-content.ts` — slot-empty predicate\n */\nimport { ChevronDown } from 'lucide-react';\nimport {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseCallback,\n\tuseState,\n} from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { useStrings } from '@/lib/strings';\nimport { useCardConfig } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tCardContent,\n\tCardFooter,\n\tCardShell,\n} from './partials/card-primitives';\nimport { hasRenderableContent } from './partials/has-renderable-content';\nimport { SmartCardAlert } from './partials/smart-card-alert';\nimport { SmartCardHeaderRow } from './partials/smart-card-header-row';\nimport {\n\tdefaultSmartCardStrings,\n} from './smart-card.strings';\nimport {\n\tPADDING,\n\tSURFACE_CLASSES,\n} from './smart-card.tokens';\nimport type {\n\tCardPadding,\n\tSmartCardProps,\n\tSmartCardSurface,\n} from './smart-card.types';\n\nfunction normalizeCardPadding(padding: CardPadding | string | undefined): CardPadding {\n\tif (padding === 'small' || padding === 'default') return padding;\n\tif (padding === 'sm') return 'small';\n\tif (padding === 'base' || padding === 'lg') return 'default';\n\treturn 'default';\n}\n\nexport const SmartCard = forwardRef<HTMLDivElement, SmartCardProps>(function SmartCard({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipAriaLabel = 'Card info',\n\tfooterText,\n\talert,\n\talertVariant = 'default',\n\tsurface,\n\ttransparent = false,\n\tpadding,\n\tactions,\n\tactionsLabel = 'Card actions',\n\theaderAction,\n\theaderStart,\n\theaderEnd,\n\tcontentTop,\n\tcontentBottom,\n\tfooterSlot,\n\theaderDivider = false,\n\tfooterDivider = false,\n\texpandable = false,\n\tdefaultExpanded = false,\n\texpanded: expandedProp,\n\tonExpandedChange,\n\tchildren,\n\tclassName,\n\theaderClassName,\n\tcontentClassName,\n\tfooterClassName,\n\tstrings: stringsProp,\n}, ref) {\n\tconst { defaultPadding } = useCardConfig();\n\tconst resolvedPadding = normalizeCardPadding(padding ?? defaultPadding);\n\tconst tokens = PADDING[resolvedPadding];\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst strings = useStrings(defaultSmartCardStrings, stringsProp);\n\n\tconst isExpandable = expandable !== false && expandable !== undefined;\n\tconst collapsedMaxHeightRaw =\n\t\ttypeof expandable === 'object' && expandable?.collapsedMaxHeight !== undefined\n\t\t\t? expandable.collapsedMaxHeight\n\t\t\t: '12rem';\n\tconst collapsedMaxHeight =\n\t\ttypeof collapsedMaxHeightRaw === 'number'\n\t\t\t? `${collapsedMaxHeightRaw}px`\n\t\t\t: collapsedMaxHeightRaw;\n\n\tconst isExpandedControlled = expandedProp !== undefined;\n\tconst [internalExpanded, setInternalExpanded] = useState(defaultExpanded);\n\tconst expanded = isExpandedControlled ? expandedProp : internalExpanded;\n\tconst handleToggle = useCallback(() => {\n\t\tconst next = !expanded;\n\t\tif (!isExpandedControlled) setInternalExpanded(next);\n\t\tonExpandedChange?.(next);\n\t}, [expanded, isExpandedControlled, onExpandedChange]);\n\n\tconst hasHeader =\n\t\thasRenderableContent(icon) ||\n\t\thasRenderableContent(title) ||\n\t\thasRenderableContent(description) ||\n\t\tcardActions.length > 0 ||\n\t\thasRenderableContent(headerAction) ||\n\t\thasRenderableContent(headerStart) ||\n\t\thasRenderableContent(headerEnd);\n\n\tconst hasAlert = hasRenderableContent(alert);\n\tconst hasFooterText = hasRenderableContent(footerText);\n\tconst hasFooterSlot = hasRenderableContent(footerSlot);\n\tconst hasContentTop = hasRenderableContent(contentTop);\n\tconst hasContentBottom = hasRenderableContent(contentBottom);\n\n\tconst tooltipLabel =\n\t\ttooltipAriaLabel.trim().length > 0 ? tooltipAriaLabel : 'Card info';\n\n\tconst collapseStyle: CSSProperties | undefined = isExpandable\n\t\t? {\n\t\t\t\tmaxHeight: expanded ? '' : collapsedMaxHeight,\n\t\t\t}\n\t\t: undefined;\n\n\t// Resolve surface — explicit `surface` wins, else legacy `transparent`,\n\t// else the default `'card'` chrome.\n\tconst resolvedSurface: SmartCardSurface = surface ?? (transparent ? 'flat' : 'card');\n\n\treturn (\n\t\t<CardShell\n\t\t\tref={ref}\n\t\t\tdata-surface={resolvedSurface}\n\t\t\tclassName={cn(\n\t\t\t\tSURFACE_CLASSES[resolvedSurface],\n\t\t\t\ttokens.shell,\n\t\t\t\t// `isExpandable` parks the chevron at `-bottom-4` outside the\n\t\t\t\t// shell — `overflow-visible` lets it render past the card\n\t\t\t\t// edge, otherwise the shadcn primitive's `overflow-hidden`\n\t\t\t\t// clips it.\n\t\t\t\tisExpandable && 'relative pb-1 !overflow-visible',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{!!hasHeader && (\n\t\t\t\t<SmartCardHeaderRow\n\t\t\t\t\ticon={icon}\n\t\t\t\t\ttitle={title}\n\t\t\t\t\ttitleSuffix={titleSuffix}\n\t\t\t\t\tdescription={description}\n\t\t\t\t\ttooltip={tooltip}\n\t\t\t\t\ttooltipLabel={tooltipLabel}\n\t\t\t\t\theaderStart={headerStart}\n\t\t\t\t\theaderEnd={headerEnd}\n\t\t\t\t\theaderAction={headerAction}\n\t\t\t\t\tactions={cardActions}\n\t\t\t\t\tactionsLabel={actionsLabel}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\theaderDivider && 'pb-3 border-b border-border/60',\n\t\t\t\t\t\theaderClassName,\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{!!hasAlert && (\n\t\t\t\t<SmartCardAlert\n\t\t\t\t\talert={alert}\n\t\t\t\t\talertVariant={alertVariant}\n\t\t\t\t\thasHeader={hasHeader}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t<CardContent\n\t\t\t\tclassName={cn(\n\t\t\t\t\ttokens.contentX,\n\t\t\t\t\ttokens.contentY,\n\t\t\t\t\tisExpandable &&\n\t\t\t\t\t\t'relative overflow-hidden transition-[max-height] duration-500 ease-in-out',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t\tstyle={collapseStyle}\n\t\t\t>\n\t\t\t\t{!!hasContentTop && contentTop}\n\t\t\t\t{children}\n\t\t\t\t{!!hasContentBottom && contentBottom}\n\n\t\t\t\t{!!isExpandable && !expanded && (\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName=\"from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</CardContent>\n\n\t\t\t{!!hasFooterText && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'justify-end text-xs text-muted-foreground',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerText}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!hasFooterSlot && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'flex-col items-stretch',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerSlot}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!isExpandable && (\n\t\t\t\t<div className=\"absolute -bottom-4 left-1/2 -translate-x-1/2 z-10\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"outline\"\n\t\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\t\tonClick={handleToggle}\n\t\t\t\t\t\taria-expanded={expanded}\n\t\t\t\t\t\taria-label={expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'inline-flex size-8 items-center justify-center rounded-full',\n\t\t\t\t\t\t\t'border border-border bg-background text-foreground shadow-sm',\n\t\t\t\t\t\t\t'hover:bg-muted/40 transition-colors',\n\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronDown\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'size-4 transition-transform duration-300',\n\t\t\t\t\t\t\t\texpanded && 'rotate-180',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span className=\"sr-only\">\n\t\t\t\t\t\t\t{expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardShell>\n\t);\n});\n\nSmartCard.displayName = 'SmartCard';\n\n// ──────────────────────────────────────────────────────────────────────────\n// Re-exports — public surface lives here so `import { ... } from\n// '@/components/base/cards'` keeps working through the file split.\n// ──────────────────────────────────────────────────────────────────────────\n\nexport {\n\tdefaultSmartCardStrings,\n\ttype SmartCardStrings,\n} from './smart-card.strings';\nexport type {\n\tCardAlertVariant,\n\tCardPadding,\n\tSmartCardAction,\n\tSmartCardProps,\n\tSmartCardSkeletonProps,\n\tSmartCardSurface,\n} from './smart-card.types';\nexport {\n\tCardContent,\n\tCardDescription,\n\tCardFooter,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './partials/card-primitives';\nexport { SmartCardSkeleton } from './partials/smart-card-skeleton';\n"],"mappings":";;;;;;;;;;;;AAIA,SAAS,EAAK,EACZ,cACA,UAAO,WACP,GAAG,KACyD;CAC5D,OACE,kBAAC,OAAD;EACE,aAAU;EACV,aAAW;EACX,WAAW,EAAG,iRAAiR,CAAS;EACxS,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,sSACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAU,EAAE,cAAW,GAAG,KAAsC;CACvE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,0EAA0E,CAAS;EACjG,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAgB,EAAE,cAAW,GAAG,KAAsC;CAC7E,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,iCAAiC,CAAS;EACxD,GAAI;CACL,CAAA;AAEL;AAeA,SAAS,EAAY,EAAE,cAAW,GAAG,KAAsC;CACzE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,uCAAuC,CAAS;EAC9D,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,kIAAkI,CAAS;EACzJ,GAAI;CACL,CAAA;AAEL;;;ACxEA,IAAa,IAAW;CACvB,MAAM;CACN,QAAQ;CACR,OAAO;CACP,aAAa;CACb,SAAS;CACT,QAAQ;CACR,OAAO;AACR,GAea,IAA8C;CAC1D,OAAO;EACN,OAAO;EACP,SAAS;EACT,UAAU;EACV,UAAU;EACV,SAAS;EACT,QAAQ;EACR,uBAAuB;EACvB,uBAAuB;CACxB;CACA,SAAS;EACR,OAAO;EACP,SAAS;EACT,UAAU;EACV,UAAU;EACV,SAAS;EACT,QAAQ;EACR,uBAAuB;EACvB,uBAAuB;CACxB;AACD,GAOa,IAAoD;CAChE,MAAM;CACN,MAAM;CACN,QAAQ,EACP,0EACA,uBACD;AACD;;;AC7DA,SAAgB,EAAqB,GAA8B;CAUlE,OATI,KAAY,QACZ,OAAO,KAAY,YAAkB,KACrC,OAAO,KAAY,WAAiB,EAAQ,KAAK,EAAE,SAAS,IAC5D,OAAO,KAAY,YAAY,OAAO,KAAY,WAAiB,KACnE,MAAM,QAAQ,CAAO,IAAU,EAAQ,KAAK,CAAoB,IAChE,EAAyC,CAAO,KAC/C,EAAQ,SAAS,IAAiB,EAAqB,EAAQ,MAAM,QAAQ,IAC1E;AAGT;;;ACSA,SAAgB,EAAU,EAAE,cAAW,GAAG,KAAuC;CAChF,OACC,kBAAC,GAAD;EACC,WAAW,EACV,EAAS,MACT,0CACA,CACD;EACA,GAAI;CACJ,CAAA;AAEH;AAEA,SAAgB,EAAW,EAC1B,cACA,GAAG,KACgC;CACnC,OACC,kBAAC,GAAD;EACC,WAAW,EAAG,EAAS,QAAQ,4BAA4B,CAAS;EACpE,GAAI;CACJ,CAAA;AAEH;AAEA,SAAgB,EAAU,EACzB,cACA,aACA,GAAG,KACgC;CAmBnC,OAlBK,EAAqB,CAAQ,IAGjC,OAAO,KAAa,YACpB,OAAO,KAAa,YACpB,OAAO,KAAa,WAcpB,kBAAC,GAAD;EACC,aAAU;EACV,KAAI;EACJ,MAAK;EACL,QAAO;EACP,YAAW;EACX,WAAW,EAAG,EAAS,OAAO,yBAAyB,CAAS;EAChE,GAAI;EAEH;CACI,CAAA,IApBL,kBAAC,GAAD;EACC,WAAW,EAAG,EAAS,OAAO,iDAAiD,CAAS;EACxF,GAAI;EAEH;CACkB,CAAA,IAdsB;AA+B7C;AAEA,SAAgB,EAAgB,EAC/B,cACA,aACA,GAAG,KACgC;CAuBnC,OAtBK,EAAqB,CAAQ,IAGjC,OAAO,KAAa,YACpB,OAAO,KAAa,YACpB,OAAO,KAAa,WAkBpB,kBAAC,GAAD;EACC,aAAU;EACV,KAAI;EACJ,MAAK;EACL,WAAW,EACV,EAAS,aACT,iCACA,CACD;EACA,GAAI;EAEH;CACI,CAAA,IA1BL,kBAAC,GAAD;EACC,WAAW,EACV,EAAS,aACT,iCACA,CACD;EACA,GAAI;EAEH;CACwB,CAAA,IAlBgB;AAqC7C;AAEA,SAAgB,EAAY,EAC3B,cACA,GAAG,KACgC;CACnC,OACC,kBAAC,GAAD;EACC,WAAW,EAAG,EAAS,SAAS,QAAQ,CAAS;EACjD,GAAI;CACJ,CAAA;AAEH;AAEA,SAAgB,EAAW,EAC1B,cACA,GAAG,KACgC;CACnC,OACC,kBAAC,GAAD;EACC,WAAW,EAAG,EAAS,QAAQ,0BAA0B,CAAS;EAClE,GAAI;CACJ,CAAA;AAEH;;;ACvIA,SAAgB,GAAe,EAC9B,UACA,iBACA,cACA,cACkB;CAClB,IAAM,IAAS,EAAQ;CAEvB,OACC,kBAAC,OAAD;EACC,WAAW,EACV,EAAS,OACT,EAAO,QACP,IAAY,EAAO,wBAAwB,EAAO,qBACnD;YAEA,kBAAC,GAAD;GAAO,SAAS;aACf,kBAAC,GAAD,EAAA,UAAmB,EAAwB,CAAA;EACrC,CAAA;CACH,CAAA;AAEP;;;ACpBA,SAAgB,EAAY,EAAE,YAAS,mBAAkC;CACxE,OACC,kBAAC,GAAD,EAAA,UAAA,CACC,kBAAC,GAAD;EACC,MAAK;EACL,cAAY;EACZ,WAAW,EACV,0EACA,sEACA,gEACA,mBACD;YAEA,kBAAC,GAAD,EAAgB,WAAU,SAAU,CAAA;CAChB,CAAA,GACrB,kBAAC,GAAD;EAAqB,OAAM;EAAM,WAAU;YACzC,EAAQ,KAAK,GAAQ,MACrB,kBAAC,GAAD;GAEC,SAAS,EAAO;GAChB,UAAU,EAAO;GACjB,WAAU;aAJX,CAME,CAAC,CAAC,EAAO,QACT,kBAAC,QAAD;IAAM,WAAU;cAA8B,EAAO;GAAW,CAAA,GAEhE,EAAO,KACS;KATZ,EAAO,MAAM,GAAG,EAAO,MAAM,GAAG,GASpB,CAClB;CACmB,CAAA,CACR,EAAA,CAAA;AAEhB;;;AC5BA,SAAS,EAAoB,EAAE,mBAA0C;CACxE,OACC,kBAAC,GAAD,EACC,SAAS,MAAiB;EAEzB,IAAM,IAAc;EACpB,OACC,kBAAC,GAAD;GACC,GAAI;GACJ,MAAK;GACL,SAAQ;GACR,aAAY;GACZ,MAAK;GACL,WAAW,EACV,iCACA,EAAY,SACb;GACA,cAAY;aAEZ,kBAAC,GAAD,EAAM,WAAU,WAAY,CAAA;EACrB,CAAA;CAEV,EACA,CAAA;AAEH;AAkBA,SAAgB,GAAmB,EAClC,SACA,UACA,gBACA,gBACA,YACA,iBACA,gBACA,cACA,iBACA,YACA,iBACA,YACA,gBACe;CACf,IAAM,IAAc,MAAM,QAAQ,CAAO,IAAI,IAAU,CAAC,GAClD,IAAa,EAAY,SAAS,GAElC,IAAU,EAAqB,CAAI,GACnC,IAAW,EAAqB,CAAK,GACrC,IAAiB,EAAqB,CAAW,GACjD,IAAiB,EAAqB,CAAW,GACjD,IAAa,EAAqB,CAAO,GACzC,IAAiB,EAAqB,CAAW,GACjD,IAAe,EAAqB,CAAS,GAC7C,IAAkB,EAAqB,CAAY,GAEnD,IAAe,KAAW,KAAY,KAAkB,GACxD,IAAe,KAAgB,KAAmB;CAExD,OACC,kBAAC,GAAD;EACC,WAAW,EACV,mDACA,EAAQ,GAAS,SACjB,CACD;YALD,CAOC,kBAAC,OAAD;GAAK,WAAU;aAAf;IACE,CAAC,CAAC,KAAkB;IAEpB,CAAC,CAAC,KACF,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,CAAC,CAAC,KACF,kBAAC,QAAD;OAAM,WAAU;iBACd;MACI,CAAA;MAEP,kBAAC,GAAD,EAAA,UAAY,EAAiB,CAAA;MAC5B,CAAC,CAAC,KACF,kBAAC,OAAD;OAAK,WAAU;iBAA2B;MAAiB,CAAA;MAE3D,CAAC,CAAC,KACF,kBAAC,GAAD,EAAA,UAAA,CACC,kBAAC,GAAD,EAAmC,gBAAe,CAAA,GAClD,kBAAC,GAAD,EAAA,UAAiB,EAAwB,CAAA,CACjC,EAAA,CAAA;KAEN;;IAGL,CAAC,CAAC,KACF,kBAAC,GAAD;KAAiB,WAAU;eAAa;IAA6B,CAAA;GAElE;MAEJ,CAAC,CAAC,KACF,kBAAC,OAAD;GAAK,WAAU;aAAf;IACE,CAAC,CAAC,KAAgB;IAClB,CAAC,CAAC,KAAmB;IACrB,CAAC,CAAC,KACF,kBAAC,GAAD;KAAa,SAAS;KAA2B;IAAe,CAAA;GAE7D;IAEK;;AAEd;;;ACvIA,IAAa,IAA4C;CACxD,aAAa;CACb,eAAe;AAChB;;;ACSA,SAAgB,EAAkB,EACjC,UACA,WAAQ,GACR,gBAC0B;CAC1B,IAAM,KAAe,EAAE,sBACtB,kBAAC,OAAD,EAAK,WAAW,EAAG,kCAAkC,CAAY,EAAI,CAAA;CAGtE,OACC,kBAAC,GAAD;EAAW,WAAW,EAAG,EAAgB,MAAM,cAAc,CAAS;YAAtE,CACC,kBAAC,GAAD;GAAY,WAAU;aACpB,IAAQ,kBAAC,GAAD,EAAA,UAAY,EAAiB,CAAA,IAAI,kBAAC,GAAD,EAAa,cAAa,WAAY,CAAA;EACrE,CAAA,GACZ,kBAAC,GAAD;GAAa,WAAU;aACrB,MAAM,KAAK,EAAE,QAAQ,EAAM,IAAI,GAAG,MAClC,kBAAC,GAAD,EAEC,cAAc,EAAG,OAAO,MAAM,IAAI,WAAW,OAAO,EACpD,GAFK,QAAQ,OAAO,CAAC,GAErB,CACD;EACW,CAAA,CACH;;AAEb;AAEA,EAAkB,cAAc;;;ACShC,SAAS,GAAqB,GAAwD;CAIrF,OAHI,MAAY,WAAW,MAAY,YAAkB,IACrD,MAAY,OAAa,UACsB;AAEpD;AAEA,IAAa,IAAY,EAA2C,SAAmB,EACtF,SACA,UACA,gBACA,gBACA,YACA,sBAAmB,aACnB,eACA,UACA,kBAAe,WACf,YACA,iBAAc,IACd,YACA,YACA,kBAAe,gBACf,iBACA,gBACA,cACA,eACA,kBACA,eACA,mBAAgB,IAChB,mBAAgB,IAChB,gBAAa,IACb,qBAAkB,IAClB,UAAU,GACV,qBACA,aACA,cACA,oBACA,sBACA,oBACA,SAAS,MACP,IAAK;CACP,IAAM,EAAE,uBAAmB,EAAc,GACnC,IAAkB,GAAqB,KAAW,EAAc,GAChE,IAAS,EAAQ,IACjB,IAAc,MAAM,QAAQ,CAAO,IAAI,IAAU,CAAC,GAClD,IAAU,EAAW,GAAyB,EAAW,GAEzD,IAAe,MAAe,MAAS,MAAe,KAAA,GACtD,IACL,OAAO,KAAe,YAAY,GAAY,uBAAuB,KAAA,IAClE,EAAW,qBACX,SACE,KACL,OAAO,KAA0B,WAC9B,GAAG,EAAsB,MACzB,GAEE,IAAuB,MAAiB,KAAA,GACxC,CAAC,IAAkB,MAAuB,EAAS,CAAe,GAClE,IAAW,IAAuB,IAAe,IACjD,KAAe,QAAkB;EACtC,IAAM,IAAO,CAAC;EAEd,AADK,KAAsB,GAAoB,CAAI,GACnD,IAAmB,CAAI;CACxB,GAAG;EAAC;EAAU;EAAsB;CAAgB,CAAC,GAE/C,KACL,EAAqB,CAAI,KACzB,EAAqB,CAAK,KAC1B,EAAqB,CAAW,KAChC,EAAY,SAAS,KACrB,EAAqB,CAAY,KACjC,EAAqB,CAAW,KAChC,EAAqB,CAAS,GAEzB,KAAW,EAAqB,CAAK,GACrC,KAAgB,EAAqB,CAAU,GAC/C,KAAgB,EAAqB,CAAU,GAC/C,KAAgB,EAAqB,CAAU,GAC/C,KAAmB,EAAqB,CAAa,GAErD,KACL,EAAiB,KAAK,EAAE,SAAS,IAAI,IAAmB,aAEnD,KAA2C,IAC9C,EACA,WAAW,IAAW,KAAK,GAC5B,IACC,KAAA,GAIG,KAAoC,MAAY,IAAc,SAAS;CAE7E,OACC,kBAAC,GAAD;EACM;EACL,gBAAc;EACd,WAAW,EACV,EAAgB,KAChB,EAAO,OAKP,KAAgB,mCAChB,CACD;YAZD;GAcE,CAAC,CAAC,MACF,kBAAC,IAAD;IACO;IACC;IACM;IACA;IACJ;IACK;IACD;IACF;IACG;IACd,SAAS;IACK;IACd,SAAS;IACT,WAAW,EACV,KAAiB,kCACjB,CACD;GACA,CAAA;GAGD,CAAC,CAAC,MACF,kBAAC,IAAD;IACQ;IACO;IACH;IACX,SAAS;GACT,CAAA;GAGF,kBAAC,GAAD;IACC,WAAW,EACV,EAAO,UACP,EAAO,UACP,KACC,6EACD,EACD;IACA,OAAO;cARR;KAUE,CAAC,CAAC,MAAiB;KACnB;KACA,CAAC,CAAC,MAAoB;KAEtB,CAAC,CAAC,KAAgB,CAAC,KACnB,kBAAC,OAAD;MACC,eAAY;MACZ,WAAU;KACV,CAAA;IAEU;;GAEZ,CAAC,CAAC,MACF,kBAAC,GAAD;IACC,WAAW,EACV,6CACA,EAAO,SACP,KAAiB,kCACjB,CACD;cAEC;GACU,CAAA;GAGZ,CAAC,CAAC,MACF,kBAAC,GAAD;IACC,WAAW,EACV,0BACA,EAAO,SACP,KAAiB,kCACjB,CACD;cAEC;GACU,CAAA;GAGZ,CAAC,CAAC,KACF,kBAAC,OAAD;IAAK,WAAU;cACd,kBAAC,GAAD;KACC,MAAK;KACL,SAAQ;KACR,aAAY;KACZ,MAAK;KACL,SAAS;KACT,iBAAe;KACf,cAAY,IAAW,EAAQ,gBAAgB,EAAQ;KACvD,WAAW,EACV,+DACA,gEACA,uCACA,4EACD;eAbD,CAeC,kBAAC,GAAD;MACC,eAAY;MACZ,WAAW,EACV,4CACA,KAAY,YACb;KACA,CAAA,GACD,kBAAC,QAAD;MAAM,WAAU;gBACd,IAAW,EAAQ,gBAAgB,EAAQ;KACvC,CAAA,CACC;;GACJ,CAAA;EAEI;;AAEb,CAAC;AAED,EAAU,cAAc"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("../lib/strings.cjs"),t=require("./ui-provider-DZWtUXf2.cjs"),n=require("../lib/utils.cjs"),r=require("./button-Bd5bEIiB.cjs"),i=require("./tooltip-mvxZV_Lu.cjs"),a=require("./typography-CO9uwZhF.cjs"),o=require("./badge-BeSKxX1u.cjs"),s=require("./cards-BKFwMTjM.cjs"),c=require("./popover-dWR7-MzY.cjs"),l=require("./avatar-BnKM_o2d.cjs"),u=require("./rich-text-editor-DeIiIDn7.cjs"),d=require("./mentions-aHalksbt.cjs");let f=require("react"),p=require("date-fns"),m=require("react/jsx-runtime"),h=require("lucide-react");var g={title:`Comments`,subtitle:``,empty:`No comments yet.`,emptyHint:`Start the conversation — your team will see it instantly.`,composerPlaceholder:`Write a comment…`,composerSubmit:`Post comment`,composerSubmitting:`Posting…`,composerSave:`Save changes`,invalidContent:`Comment cannot be empty.`,composerCancel:`Cancel`,composerEditingEyebrow:`Editing comment`,composerReplyingEyebrow:`Replying to {{name}}`,composerAttachmentLabel:`Attach file`,composerReferenceLabel:`Mention or link`,composerReferenceMenuTitle:`Insert reference`,composerReferenceSearchPlaceholder:`Search…`,composerReferenceEmpty:`No matches.`,composerReferenceLoading:`Searching…`,fallbackAuthor:`Anonymous`,pinned:`Pinned`,edited:`edited`,deleteLabel:`Delete`,editLabel:`Edit`,replyLabel:`Reply`,pinLabel:`Pin`,unpinLabel:`Unpin`,moreActionsLabel:`More actions`,confirmDeleteLabel:`Delete comment`,attachmentFallback:`Attachment`,attachmentRemoveLabel:`Remove attachment`,attachmentUploadingLabel:`Uploading…`,attachmentFailedLabel:`Upload failed`,attachmentTooLargeError:`File is too large.`,attachmentTooManyError:`Too many attachments.`,attachmentRetryLabel:`Retry`,attachmentDownloadLabel:`Download`,addReactionLabel:`Add reaction`,showRepliesLabel:`Show replies`,hideRepliesLabel:`Hide replies`};function _(e,t){return e.replace(/\{\{(\w+)\}\}/g,(e,n)=>{let r=t[n];return r==null?``:String(r)})}function v(t){return e.useStrings(g,t)}function y(e){let n=t.c(),r=t.i();return(0,f.useMemo)(()=>({getMediaUrl:e?.getMediaUrl??(e=>n.resolveUrl?.(e??{})),getMediaName:e?.getMediaName??(e=>n.resolveName?.(e??{})),getStatusLabel:e?.getStatusLabel,formatRelativeTime:e?.formatRelativeTime??r.formatRelativeTime}),[e,n,r.formatRelativeTime])}function b(e){return typeof e!=`number`||e<=0?null:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function x(e){return e.mimeType?.startsWith(`image/`)?h.Image:e.mimeType===`application/pdf`||e.mimeType?.startsWith(`text/`)?h.FileText:e.mimeType?h.File:h.Paperclip}var S=({attachment:t,editable:i=!1,onRemove:o,onRetry:s,accessors:c,strings:l,compact:u=!1,className:d})=>{let f=e.useStrings(g,l),p=c?.getMediaUrl?.(t)??t.url,_=c?.getMediaName?.(t)??t.name??f.attachmentFallback,v=x(t),y=t.status===`uploading`,S=t.status===`failed`,C=b(t.size),w=y?f.attachmentUploadingLabel+(typeof t.progress==`number`?` ${Math.round(t.progress)}%`:``):S?t.error??f.attachmentFailedLabel:C,T=n.cn(`relative inline-flex min-w-0 max-w-[20rem] items-center gap-1.5 rounded-md`,`ring-1 ring-inset transition-colors`,u?`px-2 py-1 text-xs`:`px-2.5 py-1 text-xs`,S?`bg-destructive/[0.04] ring-destructive/30 hover:bg-destructive/[0.08]`:`bg-foreground/[0.03] ring-border/60 hover:bg-foreground/[0.06]`,d),E=y?(0,m.jsx)(h.Loader2,{className:n.cn(`shrink-0 animate-spin text-muted-foreground`,`size-3.5`),"aria-hidden":!0}):(0,m.jsx)(v,{className:n.cn(`shrink-0`,`size-3.5`,S?`text-destructive`:`text-muted-foreground`),"aria-hidden":!0}),D=(0,m.jsxs)(`span`,{className:`inline-flex min-w-0 items-baseline gap-1.5`,children:[(0,m.jsx)(a.s,{tag:`span`,size:`xs`,weight:`medium`,className:n.cn(`truncate`,S&&`text-destructive`),children:_}),w?(0,m.jsx)(a.s,{tag:`span`,size:`xxs`,type:`secondary`,className:`shrink-0 tabular-nums`,children:w}):null]});return(0,m.jsxs)(`div`,{className:T,children:[E,p&&!y&&!S?(0,m.jsx)(`a`,{href:p,target:`_blank`,rel:`noreferrer noopener`,className:`inline-flex min-w-0 flex-1 items-baseline gap-1.5 hover:underline`,"aria-label":f.attachmentDownloadLabel,children:D}):D,y&&typeof t.progress==`number`&&(0,m.jsx)(`div`,{className:`bg-primary/15 absolute bottom-0 left-2 right-2 h-px overflow-hidden rounded-full`,children:(0,m.jsx)(`div`,{className:`bg-primary h-full transition-[width]`,style:{width:`${Math.min(100,Math.max(0,t.progress))}%`}})}),S&&s&&(0,m.jsx)(r.t,{type:`button`,variant:`error`,buttonStyle:`ghost`,size:`small`,onClick:()=>s(t.id),className:`h-auto shrink-0 rounded px-1.5 py-px text-xxs font-medium ring-1 ring-inset ring-destructive/30 hover:ring-destructive/60`,children:f.attachmentRetryLabel}),i&&o&&(0,m.jsx)(r.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,onClick:()=>o(t.id),className:`-mr-0.5 size-4 shrink-0 rounded p-0 text-muted-foreground hover:bg-foreground/10 hover:text-foreground`,"aria-label":f.attachmentRemoveLabel,title:f.attachmentRemoveLabel,children:(0,m.jsx)(h.X,{className:`size-3`})})]})};function C(e={}){let{onUpload:t,maxSize:n,maxFiles:r,disabled:i,initialAttachments:a,onChange:o,onError:s}=e,[c,l]=(0,f.useState)(()=>a?[...a]:[]),u=(0,f.useRef)(new Map),d=(0,f.useRef)(new Map),p=(0,f.useRef)(o);p.current=o;let m=(0,f.useCallback)((e,t)=>{l(n=>n.map(n=>n.id===e?{...n,...t}:n))},[]),h=(0,f.useCallback)(e=>{l([...e])},[]),g=(0,f.useCallback)((e,n)=>{if(!t)return;let r=new AbortController;u.current.set(e,{controller:r}),m(e,{status:`uploading`,progress:0,error:void 0}),t({file:n,onProgress:t=>{m(e,{progress:t})},signal:r.signal}).then(t=>{u.current.delete(e),m(e,{...t,id:e,status:`uploaded`,progress:100,error:void 0})}).catch(t=>{if(u.current.delete(e),r.signal.aborted)return;let n=t instanceof Error?t.message:`Upload failed`;m(e,{status:`failed`,error:n}),s?.(n)})},[s,t,m]),_=(0,f.useCallback)(e=>{if(i||!t)return;let a=Array.from(e);a.length!==0&&l(e=>{let t=[...e];for(let e of a){if(typeof r==`number`&&t.length>=r){s?.(`Too many attachments.`);break}if(typeof n==`number`&&e.size>n){s?.(`File is too large.`);continue}let i=typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`att-${Date.now()}-${Math.random().toString(36).slice(2)}`;d.current.set(i,e),t.push({id:i,name:e.name,size:e.size,mimeType:e.type,status:`uploading`,progress:0}),queueMicrotask(()=>g(i,e))}return t})},[g,i,r,n,s,t]),v=(0,f.useCallback)(e=>{let t=u.current.get(e);t&&(t.controller.abort(),u.current.delete(e)),d.current.delete(e),l(t=>t.filter(t=>t.id!==e))},[]),y=(0,f.useCallback)(e=>{let t=d.current.get(e);t&&g(e,t)},[g]),b=(0,f.useCallback)(()=>{for(let e of u.current.values())e.controller.abort();u.current.clear(),d.current.clear(),l([])},[]);return(0,f.useEffect)(()=>{p.current?.(c)},[c]),(0,f.useEffect)(()=>{let e=u.current;return()=>{for(let t of e.values())t.controller.abort()}},[]),{attachments:c,uploadedAttachments:(0,f.useMemo)(()=>c.filter(e=>e.status===`uploaded`||!e.status),[c]),isUploading:(0,f.useMemo)(()=>c.some(e=>e.status===`uploading`),[c]),addFiles:_,removeAttachment:v,retryAttachment:y,setAttachments:h,reset:b}}function w(e){return!e||typeof e!=`string`?!1:e.replace(/<[^>]*>/g,``).trim().length>0}var T=(0,f.forwardRef)(function({context:e,canComment:t=!0,isSubmitting:n=!1,errors:i,resetKey:o=0,onSubmit:s,onCancel:l,editingComment:p,strings:g,resources:_,onResourceSearch:y,attachments:b,initialValues:x,autoFocus:T=!1,inlineSubmit:D=!0,placeholder:O},k){let A=v(g),j=_,M=y,N=b,P=(0,f.useRef)(null),[F,I]=(0,f.useState)(()=>x?.content??p?.content??``),[L,R]=(0,f.useState)(null),z=d.u({resources:j,onResourceSearch:M,editorRef:P,initialMentions:x?.references??p?.references}),B=C({...N,initialAttachments:x?.attachments??void 0});(0,f.useImperativeHandle)(k,()=>({focus:()=>P.current?.focus(),clear:()=>{P.current?.clear(),z.reset(),B.reset(),R(null)},setBody:e=>{P.current?.setHTML(e)}}),[B,z]),(0,f.useEffect)(()=>{P.current?.setHTML(x?.content??``),z.setMentions(x?.references??[]),B.setAttachments(x?.attachments??[]),R(null)},[e.id,e.type,o]),(0,f.useEffect)(()=>{if(!p)return;P.current?.setHTML(p.content??``),z.setMentions(p.references??[]);let e=(p.attachments??p.media??[]).filter(e=>!!e);B.setAttachments(e)},[p?.id]),(0,f.useEffect)(()=>{i?.content&&R(i.content)},[i]);let V=t=>{t?.preventDefault();let n=P.current?.getHTML()??F;if(!w(n)){R(A.invalidContent);return}R(null),s({content:n,commentableId:e.id,commentableType:e.type,contentType:`html`,references:z.mentions,attachments:B.uploadedAttachments,editingId:p?.id})},H=(0,f.useRef)(null),U=()=>H.current?.click(),W=e=>{e&&B.addFiles(e)},G=B.attachments.length>0,K=!!p,q=n?A.composerSubmitting:K?A.composerSave:A.composerSubmit,J=K?(0,m.jsx)(E,{label:A.composerEditingEyebrow,closeLabel:A.composerCancel,onClose:l}):null,Y=(0,f.useMemo)(()=>{let e=[];return j&&Object.keys(j).length>0&&e.push({id:`reference`,icon:h.AtSign,label:A.composerReferenceLabel,onClick:()=>z.setPickerOpen(!0)}),N?.onUpload&&!N.disabled&&e.push({id:`attachment`,icon:h.Paperclip,label:A.composerAttachmentLabel,onClick:U}),e},[j,N?.onUpload,N?.disabled,A.composerReferenceLabel,A.composerAttachmentLabel]);if(!t)return null;let X=(0,m.jsx)(r.t,{type:`button`,onClick:()=>V(),disabled:n||B.isUploading,icon:n?h.Loader2:h.Send,children:q}),Z=K||l?(0,m.jsx)(r.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,onClick:l,disabled:n,children:A.composerCancel}):null,Q=G?(0,m.jsx)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:B.attachments.map(e=>(0,m.jsx)(S,{attachment:e,editable:!0,onRemove:B.removeAttachment,onRetry:B.retryAttachment,strings:g},e.id))}):null,$=G?Q:null,ee=D===!1?null:X,te=D===!1||K;return(0,m.jsxs)(`form`,{onSubmit:V,className:`space-y-2`,children:[J,(0,m.jsx)(`input`,{ref:H,type:`file`,multiple:!0,hidden:!0,accept:N?.accept,onChange:e=>{W(e.target.files),e.target.value=``}}),!z.triggerActive&&(0,m.jsxs)(c.n,{open:z.pickerOpen,onOpenChange:z.setPickerOpen,children:[(0,m.jsx)(c.s,{render:(0,m.jsx)(`button`,{type:`button`,className:`sr-only`,tabIndex:-1}),children:A.composerReferenceLabel}),(0,m.jsx)(d.r,{open:z.pickerOpen,activeKind:z.activeKind,setActiveKind:z.setActiveKind,kinds:z.kinds,resources:j,query:z.query,setQuery:z.setQuery,suggestions:z.suggestions,isLoading:z.isLoading,onSelect:z.pickSuggestion,strings:{title:A.composerReferenceMenuTitle,searchPlaceholder:A.composerReferenceSearchPlaceholder,empty:A.composerReferenceEmpty,loading:A.composerReferenceLoading}})]}),(0,m.jsxs)(`div`,{className:`relative`,children:[(0,m.jsx)(u.t,{ref:P,value:F,onChange:e=>{I(e);let t=d.t(e),n=z.mentions;if(n.map(e=>e.id).join(`|`)!==t.map(e=>e.id).join(`|`)){let e=new Map(n.map(e=>[e.id,e])),r=t.map(t=>e.get(t.id)??t);z.setMentions(r)}},placeholder:O??A.composerPlaceholder,strings:{editorLabel:O??A.composerPlaceholder},minHeight:`3rem`,autoFocus:T||K,extraToolbarItems:Y,toolbarTrailing:ee,footerSlot:$,onCaretChange:z.handleCaretChange}),(0,m.jsx)(d.n,{open:z.triggerActive&&z.pickerOpen,activeKind:z.activeKind,setActiveKind:z.setActiveKind,onManualKindChange:()=>z.setManualKindOverride(!0),kinds:z.kinds,resources:j,query:z.query,suggestions:z.suggestions,suggestionsByKind:z.suggestionsByKind,isLoading:z.isLoading,onSelect:z.pickSuggestion,strings:{title:A.composerReferenceMenuTitle,empty:A.composerReferenceEmpty,loading:A.composerReferenceLoading}})]}),L&&(0,m.jsx)(a.s,{size:`xs`,type:`error`,children:L}),te&&(0,m.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[Z,X]})]})});function E({label:e,closeLabel:t,onClose:n}){return(0,m.jsxs)(`div`,{className:`bg-muted/40 ring-border/60 flex items-center justify-between rounded px-2.5 py-1.5 ring-1 ring-inset`,children:[(0,m.jsx)(a.s,{size:`xxs`,type:`secondary`,weight:`medium`,className:`uppercase tracking-wide`,children:e}),n?(0,m.jsx)(r.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,onClick:n,className:`size-4 rounded p-0 text-muted-foreground hover:text-foreground`,"aria-label":t,children:(0,m.jsx)(h.X,{className:`size-3`})}):null]})}function D(e,t){return _(e,{name:t??``})}var O=({strings:e,icon:t,className:r})=>{let i=v(e);return(0,m.jsxs)(`div`,{className:n.cn(`flex flex-col items-center justify-center py-8 text-center`,r),children:[(0,m.jsx)(`div`,{className:`bg-muted/50 mb-3 flex h-12 w-12 items-center justify-center rounded-full`,children:t??(0,m.jsx)(h.MessageCircle,{className:`text-muted-foreground/60 h-5 w-5`})}),(0,m.jsx)(a.s,{weight:`medium`,children:i.empty}),i.emptyHint?(0,m.jsx)(a.s,{size:`xs`,type:`secondary`,className:`mt-1 max-w-[28ch]`,children:i.emptyHint}):null]})};function k(e){return(0,m.jsx)(A,{comment:e})}function A(e){let{comment:t,resources:n,renderReference:r,sanitizer:i}=e,o=t.contentType??t.content_type??`text`;return o===`rich`?j(t.content):o===`html`?(0,m.jsx)(d.o,{html:t.content??``,mentions:t.references,resources:n,renderMention:r,sanitizer:i}):(0,m.jsx)(a.s,{className:`whitespace-pre-line`,children:P(t.content??``)})}function j(e){if(!e)return null;try{let t=JSON.parse(e);return!t||!Array.isArray(t.blocks)||t.blocks.length===0?null:(0,m.jsx)(`div`,{className:`prose prose-sm prose-p:my-0.5 prose-headings:my-1 prose-a:text-primary prose-a:no-underline hover:prose-a:underline max-w-none space-y-1`,children:t.blocks.map((e,t)=>(0,m.jsx)(f.Fragment,{children:M(e)},e.id??`${e.type}-${t}`))})}catch{return(0,m.jsx)(a.s,{className:`whitespace-pre-line`,children:P(e)})}}function M(e){let t=e.data??{};switch(e.type){case`paragraph`:{let e=String(t.text??``).trim();return e?(0,m.jsx)(a.s,{asHTML:!0,content:e}):null}case`header`:{let e=N(String(t.text??``)),n=Number(t.level??3);return e?(0,f.createElement)(a.o,{tag:`h${Math.min(Math.max(n,1),6)}`},e):null}case`list`:{let e=(Array.isArray(t.items)?t.items:[]).map(e=>N(String(e??``))).filter(e=>e.length>0);return e.length===0?null:t.style===`ordered`?(0,m.jsx)(`ol`,{className:`ml-6 list-decimal space-y-1 text-sm`,children:e.map((e,t)=>(0,m.jsx)(`li`,{children:e},`${e}-${t}`))}):(0,m.jsx)(`ul`,{className:`ml-6 list-disc space-y-1 text-sm`,children:e.map(e=>(0,m.jsx)(`li`,{children:e},e))})}case`quote`:{let e=String(t.text??``).trim();if(!e)return null;let n=N(String(t.caption??``));return(0,m.jsxs)(`blockquote`,{className:`border-muted text-muted-foreground border-l-2 pl-3 text-sm italic`,children:[(0,m.jsx)(a.s,{asHTML:!0,content:e}),n.length>0&&(0,m.jsxs)(`cite`,{className:`text-muted-foreground/80 mt-1 block text-xs not-italic`,children:[`— `,n]})]})}case`delimiter`:return(0,m.jsx)(`div`,{className:`border-muted my-4 border-b border-dashed`,"aria-hidden":`true`});default:{let e=N(String(t.text??``));return e?(0,m.jsx)(a.s,{className:`whitespace-pre-line`,children:e}):null}}}function N(e){return e.replace(/<[^>]*>/g,``).trim()}function P(e){if(typeof e!=`string`)return``;let t=e.trim();if(t===``)return``;if(t.startsWith(`{`)||t.startsWith(`[`))return t;try{let e=JSON.parse(t);if(typeof e==`string`)return e}catch{}return t.startsWith(`"`)&&t.endsWith(`"`)?t.slice(1,-1):t}var F=`?`,I=e=>e?.url,L=e=>e?.name,R=e=>e.charAt(0).toUpperCase()+e.slice(1).replace(/_/g,` `),z=e=>{try{return(0,p.formatDistanceToNow)(new Date(e),{addSuffix:!0})}catch{return`—`}},B=(0,f.memo)(function({comment:e,canModerate:t,onDelete:s,onPinToggle:c,onReact:u,onReply:d,strings:p,getMediaUrl:g,getMediaName:_,getStatusLabel:b,formatRelativeTime:x,resources:C,renderAttachment:w,renderReference:T}){let E=v(p),D=y({getMediaUrl:g,getMediaName:_,getStatusLabel:b,formatRelativeTime:x}),O=D.getMediaUrl??I,k=D.getMediaName??L,j=D.getStatusLabel??R,M=D.formatRelativeTime??z,N=e.user?.name??E.fallbackAuthor,P=e.user?.avatar??void 0,B=(0,f.useMemo)(()=>e.createdAt?M(e.createdAt):`—`,[e.createdAt,M]),V=(0,f.useMemo)(()=>{if(!N)return F;let e=N.trim();return e===``?F:e.charAt(0).toUpperCase()},[N]),H=(0,f.useMemo)(()=>Array.isArray(e.tagsArray)?e.tagsArray.filter(e=>typeof e==`string`):e.tagsArray&&typeof e.tagsArray==`object`?Object.values(e.tagsArray).filter(e=>typeof e==`string`):[],[e.tagsArray]),U=(0,f.useMemo)(()=>(e.attachments??e.media??[]).filter(e=>!!e&&typeof e==`object`),[e.attachments,e.media]),W=e.reactions??[],G=e.isPinned===!0,K=e.isEdited===!0,q=e.status&&e.status!==`active`,J=q&&e.status?j(e.status):null,Y=e.canDelete===!0||t===!0,X=e.canEdit===!0||t===!0,Z=U.length>0;return(0,m.jsx)(`article`,{className:n.cn(`comment-item--component group relative overflow-hidden rounded-lg border transition-colors`,`border-border/60 bg-card hover:bg-muted/30 px-3 py-2.5`),"data-comment-id":e.id,children:(0,m.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,m.jsxs)(l.t,{className:`mt-0.5 size-avatar shrink-0`,children:[!!P&&(0,m.jsx)(l.o,{src:P,alt:N}),(0,m.jsx)(l.r,{className:`bg-muted text-muted-foreground text-xs font-medium`,children:V})]}),(0,m.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,m.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,m.jsx)(a.s,{tag:`span`,weight:`semibold`,className:`truncate`,children:N}),!!G&&(0,m.jsx)(i.r,{delayDuration:0,children:(0,m.jsxs)(i.t,{children:[(0,m.jsx)(i.i,{render:(0,m.jsx)(`span`,{className:`inline-flex shrink-0 self-center`}),children:(0,m.jsx)(h.Pin,{className:`text-warning size-3`,"aria-hidden":!0})}),(0,m.jsx)(i.n,{side:`top`,className:`text-xs`,children:E.pinned})]})}),(0,m.jsx)(a.s,{tag:`span`,size:`xs`,type:`secondary`,className:`shrink-0 tabular-nums`,children:B}),!!K&&(0,m.jsx)(a.s,{tag:`span`,size:`xs`,type:`secondary`,className:`shrink-0`,children:E.edited}),!!q&&!!J&&(0,m.jsx)(o.t,{variant:`secondary`,className:`self-center uppercase tracking-wide`,children:J})]}),(0,m.jsx)(`div`,{className:`mt-1 text-sm leading-relaxed`,children:(0,m.jsx)(A,{comment:e,resources:C,renderReference:T})}),H.length>0&&(0,m.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:H.map(e=>(0,m.jsx)(o.t,{variant:`secondary`,className:`uppercase tracking-wide`,children:e},e))}),Z&&(0,m.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:U.map(e=>w?(0,m.jsx)(`div`,{children:w(e)},e.id??e.name):(0,m.jsx)(S,{attachment:e,accessors:{getMediaUrl:O,getMediaName:k},strings:p},e.id??e.name))}),W.length>0&&(0,m.jsx)(`div`,{className:`mt-2 flex flex-wrap items-center gap-1`,children:W.map(t=>(0,m.jsx)(r.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`small`,onClick:()=>u&&e.id?u(e.id,t.emoji):void 0,title:t.users?.join(`, `),className:`h-auto rounded-full p-0`,children:(0,m.jsxs)(o.t,{variant:t.mine?`primary`:`secondary`,className:`cursor-pointer transition-colors hover:opacity-90`,children:[(0,m.jsx)(`span`,{"aria-hidden":!0,className:`leading-none`,children:t.emoji}),(0,m.jsx)(`span`,{className:`tabular-nums`,children:t.count})]})},t.emoji))})]}),(0,m.jsxs)(`div`,{className:n.cn(`absolute right-2 top-2 opacity-0 transition-opacity`,`group-hover:opacity-100 focus-within:opacity-100`,`inline-flex items-center gap-0.5 rounded-md bg-card/95 shadow-sm ring-1 ring-border/70`),children:[!!d&&(0,m.jsx)(r.t,{type:`button`,size:`icon-small`,variant:`secondary`,buttonStyle:`ghost`,onClick:()=>e.id&&d(e.id),title:E.replyLabel,"aria-label":E.replyLabel,children:(0,m.jsx)(h.CornerDownRight,{className:`size-3.5`})}),!!u&&(0,m.jsx)(r.t,{type:`button`,size:`icon-small`,variant:`secondary`,buttonStyle:`ghost`,onClick:()=>e.id&&u(e.id,`👍`),title:E.addReactionLabel,"aria-label":E.addReactionLabel,children:(0,m.jsx)(h.Smile,{className:`size-3.5`})}),!!c&&t&&(0,m.jsx)(r.t,{type:`button`,size:`icon-small`,variant:`secondary`,buttonStyle:`ghost`,onClick:()=>c(e),title:G?E.unpinLabel:E.pinLabel,"aria-label":G?E.unpinLabel:E.pinLabel,children:(0,m.jsx)(h.Pin,{className:n.cn(`size-3.5`,G&&`text-warning`)})}),!!X&&!!e.id&&(0,m.jsx)(r.t,{type:`button`,size:`icon-small`,variant:`secondary`,buttonStyle:`ghost`,title:E.editLabel,"aria-label":E.editLabel,children:(0,m.jsx)(h.Pencil,{className:`size-3.5`})}),!!Y&&!!s&&!!e.id&&(0,m.jsx)(r.t,{type:`button`,size:`icon-small`,variant:`secondary`,buttonStyle:`ghost`,className:`hover:bg-destructive/10 hover:text-destructive`,onClick:()=>s(e.id),title:E.deleteLabel,"aria-label":E.deleteLabel,children:(0,m.jsx)(h.Trash2,{className:`size-3.5`})})]})]})})}),V=function({comments:e,canModerate:t,onDelete:n,onPinToggle:r,onReact:i,onReply:a,strings:o,getMediaUrl:s,getMediaName:c,getStatusLabel:l,formatRelativeTime:u,resources:d,renderItem:f,renderAttachment:p,renderReference:h,emptySlot:g}){return e.length?(0,m.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map((e,g)=>{let _=(0,m.jsx)(B,{comment:e,canModerate:t,onDelete:n,onPinToggle:r,onReact:i,onReply:a,strings:o,getMediaUrl:s,getMediaName:c,getStatusLabel:l,formatRelativeTime:u,resources:d,renderAttachment:p,renderReference:h});return f?(0,m.jsx)(`div`,{children:f({comment:e,canModerate:t??!1,onDelete:n,defaultItem:_})},e.id??`comment-${g}`):(0,m.jsx)(`div`,{children:_},e.id??`comment-${g}`)})}):(0,m.jsx)(m.Fragment,{children:g??(0,m.jsx)(O,{strings:o})})};function H(e){let r=t.r(),i=e.composerPosition??r.composerPosition??`top`,a=e.canComment??!1,o=e.canModerate??!1,c=e.onSubmit,l=e.onDelete,u=e.onPinToggle,d=e.onReact,p=e.onReply,h=e.resources,g=e.attachments,_=v(e.strings),y=e.title===void 0?_.title:e.title,[b,x]=(0,f.useState)({}),[S,C]=(0,f.useState)(!1),[w,E]=(0,f.useState)(0),D={setErrors:e=>x(e),reset:()=>{E(e=>e+1),x({}),C(!1)},setSubmitting:C},k=(0,f.useCallback)(e=>{c&&(C(!0),x({}),c(e,D))},[c]),A=e.composerSlot??(a?(0,m.jsx)(T,{context:e.context,canComment:a,isSubmitting:S,errors:b,resetKey:w,onSubmit:k,strings:e.strings,resources:h,attachments:g}):null),j=(0,m.jsx)(V,{comments:e.comments,canModerate:o,onDelete:l,onPinToggle:u,onReact:d,onReply:p,strings:e.strings,getMediaUrl:e.getMediaUrl,getMediaName:e.getMediaName,getStatusLabel:e.getStatusLabel,formatRelativeTime:e.formatRelativeTime,resources:h,renderItem:e.renderItem,renderAttachment:e.renderAttachment,renderReference:e.renderReference,emptySlot:e.emptySlot??(0,m.jsx)(O,{strings:e.strings})}),M=A?(0,m.jsx)(`div`,{children:A}):null,N=(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[e.headerSlot,i===`top`&&M,j,i===`bottom`&&M,e.footerSlot]});return e.bare?N:(0,m.jsx)(s.t,{title:y===!1?void 0:y,description:_.subtitle||void 0,padding:`default`,className:n.cn(`comments--component`,e.className),children:N})}var U=H;function W(e={}){let{onSubmit:t,onUpdate:n,onDelete:r}=e,[i,a]=(0,f.useState)({kind:`idle`}),[o,s]=(0,f.useState)(!1),[c,l]=(0,f.useState)({}),[u,d]=(0,f.useState)(0),p={setErrors:e=>l(e),reset:()=>{d(e=>e+1),a({kind:`idle`}),l({})},setSubmitting:s};return{composerMode:i,isSubmitting:o,formErrors:c,resetKey:u,startReply:(0,f.useCallback)(e=>{a({kind:`replying`,commentId:e.id??``,authorName:e.user?.name})},[]),startEdit:(0,f.useCallback)(e=>{a({kind:`editing`,comment:e})},[]),cancelComposerMode:(0,f.useCallback)(()=>{a({kind:`idle`}),l({})},[]),submit:(0,f.useCallback)(e=>{if(s(!0),l({}),i.kind===`editing`&&i.comment.id){if(!n){s(!1);return}n(i.comment.id,e,p);return}if(!t){s(!1);return}t(i.kind===`replying`?{...e,replyToId:i.commentId}:e,p)},[i,t,n]),deleteComment:(0,f.useCallback)(e=>{!r||!e||r(e)},[r]),resetComposer:(0,f.useCallback)(()=>{d(e=>e+1),a({kind:`idle`}),l({})},[]),helpers:p}}Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return D}});
|
|
2
|
-
//# sourceMappingURL=comments-C8iXy9XO.cjs.map
|