admin-ui-starter-kit 0.1.0 → 0.1.1
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/.agents/skills/component-library-rules/SKILL.md +19 -0
- package/.agents/skills/component-library-rules/references/components/base__metadata-list.md +2 -2
- package/.agents/skills/component-library-rules/references/import-paths.md +21 -0
- package/AGENTS.md +3 -1
- package/INTEGRATION.md +29 -2
- package/PUBLISHING.md +2 -0
- package/README.md +24 -0
- package/dist/_shared/accordion-CztqyaIN.js +130 -0
- package/dist/_shared/accordion-CztqyaIN.js.map +1 -0
- package/dist/_shared/accordion-D5uTCLCB.cjs +2 -0
- package/dist/_shared/accordion-D5uTCLCB.cjs.map +1 -0
- package/dist/_shared/action-menu-Yrj6VzFS.js +96 -0
- package/dist/_shared/action-menu-Yrj6VzFS.js.map +1 -0
- package/dist/_shared/action-menu-eVP8GGlv.cjs +2 -0
- package/dist/_shared/action-menu-eVP8GGlv.cjs.map +1 -0
- package/dist/_shared/ai-artifact-DaHXJTKg.cjs +3 -0
- package/dist/_shared/ai-artifact-DaHXJTKg.cjs.map +1 -0
- package/dist/_shared/ai-artifact-DyLn3JAs.js +1068 -0
- package/dist/_shared/ai-artifact-DyLn3JAs.js.map +1 -0
- package/dist/_shared/alert-BVw4Mq6H.js +48 -0
- package/dist/_shared/alert-BVw4Mq6H.js.map +1 -0
- package/dist/_shared/alert-DXSlR9ja.cjs +2 -0
- package/dist/_shared/alert-DXSlR9ja.cjs.map +1 -0
- package/dist/_shared/avatar-CpBz9pTv.js +52 -0
- package/dist/_shared/avatar-CpBz9pTv.js.map +1 -0
- package/dist/_shared/avatar-dg20YFFs.cjs +2 -0
- package/dist/_shared/avatar-dg20YFFs.cjs.map +1 -0
- package/dist/_shared/badge-BVCh_hfL.js +108 -0
- package/dist/_shared/badge-BVCh_hfL.js.map +1 -0
- package/dist/_shared/badge-C49SSz-6.cjs +2 -0
- package/dist/_shared/badge-C49SSz-6.cjs.map +1 -0
- package/dist/_shared/breadcrumbs-Bo7j5Rhv.cjs +2 -0
- package/dist/_shared/breadcrumbs-Bo7j5Rhv.cjs.map +1 -0
- package/dist/_shared/breadcrumbs-Dc93fqqE.js +111 -0
- package/dist/_shared/breadcrumbs-Dc93fqqE.js.map +1 -0
- package/dist/_shared/button-2xglT7yf.cjs +2 -0
- package/dist/_shared/button-2xglT7yf.cjs.map +1 -0
- package/dist/_shared/button-ChCkwoOD.js +176 -0
- package/dist/_shared/button-ChCkwoOD.js.map +1 -0
- package/dist/_shared/button-D0nF99a9.cjs +2 -0
- package/dist/_shared/button-D0nF99a9.cjs.map +1 -0
- package/dist/_shared/button-DBR4QI9E.js +46 -0
- package/dist/_shared/button-DBR4QI9E.js.map +1 -0
- package/dist/_shared/buttons-Bcnt1md_.js +143 -0
- package/dist/_shared/buttons-Bcnt1md_.js.map +1 -0
- package/dist/_shared/buttons-km9xqXJv.cjs +2 -0
- package/dist/_shared/buttons-km9xqXJv.cjs.map +1 -0
- package/dist/_shared/card-radio-group-BGH93O5-.js +158 -0
- package/dist/_shared/card-radio-group-BGH93O5-.js.map +1 -0
- package/dist/_shared/card-radio-group-Vq741uhL.cjs +2 -0
- package/dist/_shared/card-radio-group-Vq741uhL.cjs.map +1 -0
- package/dist/_shared/combobox-BgXAxjU2.js +746 -0
- package/dist/_shared/combobox-BgXAxjU2.js.map +1 -0
- package/dist/_shared/combobox-DuIyh3xJ.cjs +2 -0
- package/dist/_shared/combobox-DuIyh3xJ.cjs.map +1 -0
- package/dist/_shared/command-BbiijN61.js +39 -0
- package/dist/_shared/command-BbiijN61.js.map +1 -0
- package/dist/_shared/command-D7zTvyBJ.cjs +2 -0
- package/dist/_shared/command-D7zTvyBJ.cjs.map +1 -0
- package/dist/_shared/command-DGNtTI-V.cjs +2 -0
- package/dist/_shared/command-DGNtTI-V.cjs.map +1 -0
- package/dist/_shared/command-jKbwFRtS.js +123 -0
- package/dist/_shared/command-jKbwFRtS.js.map +1 -0
- package/dist/_shared/comments-CNUsdwGW.cjs +2 -0
- package/dist/_shared/comments-CNUsdwGW.cjs.map +1 -0
- package/dist/_shared/comments-CvmS7zG3.js +945 -0
- package/dist/_shared/comments-CvmS7zG3.js.map +1 -0
- package/dist/_shared/containers-BFDv7cCV.cjs +2 -0
- package/dist/_shared/containers-BFDv7cCV.cjs.map +1 -0
- package/dist/_shared/containers-C1-A_2PT.js +19 -0
- package/dist/_shared/containers-C1-A_2PT.js.map +1 -0
- package/dist/_shared/content-container-CwqFnaI0.cjs +2 -0
- package/dist/_shared/content-container-CwqFnaI0.cjs.map +1 -0
- package/dist/_shared/content-container-D_3JGBSc.js +33 -0
- package/dist/_shared/content-container-D_3JGBSc.js.map +1 -0
- package/dist/_shared/copyable-CHhCGMfW.js +38 -0
- package/dist/_shared/copyable-CHhCGMfW.js.map +1 -0
- package/dist/_shared/copyable-ndaiocYq.cjs +2 -0
- package/dist/_shared/copyable-ndaiocYq.cjs.map +1 -0
- package/dist/_shared/date-picker-B8O_qbik.js +1353 -0
- package/dist/_shared/date-picker-B8O_qbik.js.map +1 -0
- package/dist/_shared/date-picker-BnOjyuKS.cjs +2 -0
- package/dist/_shared/date-picker-BnOjyuKS.cjs.map +1 -0
- package/dist/_shared/date-pickers-Cas9cPlj.js +330 -0
- package/dist/_shared/date-pickers-Cas9cPlj.js.map +1 -0
- package/dist/_shared/date-pickers-Dk-G3RMy.cjs +2 -0
- package/dist/_shared/date-pickers-Dk-G3RMy.cjs.map +1 -0
- package/dist/_shared/dialog-67GmkMLC.js +101 -0
- package/dist/_shared/dialog-67GmkMLC.js.map +1 -0
- package/dist/_shared/dialog-BF_4uAhE.cjs +2 -0
- package/dist/_shared/dialog-BF_4uAhE.cjs.map +1 -0
- package/dist/_shared/display-B9xVWboG.cjs +8 -0
- package/dist/_shared/display-B9xVWboG.cjs.map +1 -0
- package/dist/_shared/display-BM_GxDAo.js +1237 -0
- package/dist/_shared/display-BM_GxDAo.js.map +1 -0
- package/dist/_shared/dropdown-menu-4nxEBMnd.js +147 -0
- package/dist/_shared/dropdown-menu-4nxEBMnd.js.map +1 -0
- package/dist/_shared/dropdown-menu-DZlWHqWS.cjs +2 -0
- package/dist/_shared/dropdown-menu-DZlWHqWS.cjs.map +1 -0
- package/dist/_shared/form-field-BQlki-8s.js +319 -0
- package/dist/_shared/form-field-BQlki-8s.js.map +1 -0
- package/dist/_shared/form-field-DzpwVS99.cjs +2 -0
- package/dist/_shared/form-field-DzpwVS99.cjs.map +1 -0
- package/dist/_shared/form-sizing-CcbB-OHF.js +21 -0
- package/dist/_shared/form-sizing-CcbB-OHF.js.map +1 -0
- package/dist/_shared/form-sizing-Cw12UeI6.cjs +2 -0
- package/dist/_shared/form-sizing-Cw12UeI6.cjs.map +1 -0
- package/dist/_shared/format-B2AdSQVn.cjs +2 -0
- package/dist/_shared/format-B2AdSQVn.cjs.map +1 -0
- package/dist/_shared/format-CP65h1vK.js +48 -0
- package/dist/_shared/format-CP65h1vK.js.map +1 -0
- package/dist/_shared/forms-B8aaNG44.cjs +2 -0
- package/dist/_shared/forms-B8aaNG44.cjs.map +1 -0
- package/dist/_shared/forms-BusuTZZ2.js +3374 -0
- package/dist/_shared/forms-BusuTZZ2.js.map +1 -0
- package/dist/_shared/header-DWfOUjFL.cjs +2 -0
- package/dist/_shared/header-DWfOUjFL.cjs.map +1 -0
- package/dist/_shared/header-KpdoLtP9.js +369 -0
- package/dist/_shared/header-KpdoLtP9.js.map +1 -0
- package/dist/_shared/heading-BprqyzDs.js +39 -0
- package/dist/_shared/heading-BprqyzDs.js.map +1 -0
- package/dist/_shared/heading-mZc_jan1.cjs +2 -0
- package/dist/_shared/heading-mZc_jan1.cjs.map +1 -0
- package/dist/_shared/hooks-C-uWoRq5.cjs +2 -0
- package/dist/_shared/hooks-C-uWoRq5.cjs.map +1 -0
- package/dist/_shared/hooks-D5HJtvvP.js +118 -0
- package/dist/_shared/hooks-D5HJtvvP.js.map +1 -0
- package/dist/_shared/icon-badge-BBqDyAUz.cjs +2 -0
- package/dist/_shared/icon-badge-BBqDyAUz.cjs.map +1 -0
- package/dist/_shared/icon-badge-Bi63T-bj.js +52 -0
- package/dist/_shared/icon-badge-Bi63T-bj.js.map +1 -0
- package/dist/_shared/input-B2YXTHqz.cjs +2 -0
- package/dist/_shared/input-B2YXTHqz.cjs.map +1 -0
- package/dist/_shared/input-BJb10xb9.cjs +2 -0
- package/dist/_shared/input-BJb10xb9.cjs.map +1 -0
- package/dist/_shared/input-CZxP5Xgj.js +17 -0
- package/dist/_shared/input-CZxP5Xgj.js.map +1 -0
- package/dist/_shared/input-DQahu2sm.js +182 -0
- package/dist/_shared/input-DQahu2sm.js.map +1 -0
- package/dist/_shared/item-Cu5JbZyZ.js +224 -0
- package/dist/_shared/item-Cu5JbZyZ.js.map +1 -0
- package/dist/_shared/item-Cx_7QZ2o.cjs +2 -0
- package/dist/_shared/item-Cx_7QZ2o.cjs.map +1 -0
- package/dist/_shared/mentions-CS3rIhze.js +493 -0
- package/dist/_shared/mentions-CS3rIhze.js.map +1 -0
- package/dist/_shared/mentions-D7gnP3Nf.cjs +2 -0
- package/dist/_shared/mentions-D7gnP3Nf.cjs.map +1 -0
- package/dist/_shared/metadata-CRsVWE8Y.cjs +2 -0
- package/dist/_shared/metadata-CRsVWE8Y.cjs.map +1 -0
- package/dist/_shared/metadata-CfG0FdFZ.js +236 -0
- package/dist/_shared/metadata-CfG0FdFZ.js.map +1 -0
- package/dist/_shared/money-display-Bd0rkjc9.js +198 -0
- package/dist/_shared/money-display-Bd0rkjc9.js.map +1 -0
- package/dist/_shared/money-display-DSFft9Mi.cjs +2 -0
- package/dist/_shared/money-display-DSFft9Mi.cjs.map +1 -0
- package/dist/_shared/navigation-Do9k5Xh1.js +420 -0
- package/dist/_shared/navigation-Do9k5Xh1.js.map +1 -0
- package/dist/_shared/navigation-QAAD3HJd.cjs +2 -0
- package/dist/_shared/navigation-QAAD3HJd.cjs.map +1 -0
- package/dist/_shared/overlays-B8AH8fNv.js +633 -0
- package/dist/_shared/overlays-B8AH8fNv.js.map +1 -0
- package/dist/_shared/overlays-DOcoRy8k.cjs +2 -0
- package/dist/_shared/overlays-DOcoRy8k.cjs.map +1 -0
- package/dist/_shared/page-BPCeKX9X.js +263 -0
- package/dist/_shared/page-BPCeKX9X.js.map +1 -0
- package/dist/_shared/page-DMM32sxi.cjs +2 -0
- package/dist/_shared/page-DMM32sxi.cjs.map +1 -0
- package/dist/_shared/popover-B1f_EUQS.cjs +2 -0
- package/dist/_shared/popover-B1f_EUQS.cjs.map +1 -0
- package/dist/_shared/popover-CgRGcFk9.js +83 -0
- package/dist/_shared/popover-CgRGcFk9.js.map +1 -0
- package/dist/_shared/popover-menu-BEKIT3LR.cjs +2 -0
- package/dist/_shared/popover-menu-BEKIT3LR.cjs.map +1 -0
- package/dist/_shared/popover-menu-BHdHLEVL.js +95 -0
- package/dist/_shared/popover-menu-BHdHLEVL.js.map +1 -0
- package/dist/_shared/rich-text-editor-0uoIoYXU.js +608 -0
- package/dist/_shared/rich-text-editor-0uoIoYXU.js.map +1 -0
- package/dist/_shared/rich-text-editor-wTiARGuB.cjs +2 -0
- package/dist/_shared/rich-text-editor-wTiARGuB.cjs.map +1 -0
- package/dist/_shared/scroll-area-Bo17wtZD.cjs +2 -0
- package/dist/_shared/scroll-area-Bo17wtZD.cjs.map +1 -0
- package/dist/_shared/scroll-area-Cj-hmB5D.js +41 -0
- package/dist/_shared/scroll-area-Cj-hmB5D.js.map +1 -0
- package/dist/_shared/select-07RRiTWc.js +85 -0
- package/dist/_shared/select-07RRiTWc.js.map +1 -0
- package/dist/_shared/select-BfiU7a4n.cjs +2 -0
- package/dist/_shared/select-BfiU7a4n.cjs.map +1 -0
- package/dist/_shared/separator-CN9zAJfs.cjs +2 -0
- package/dist/_shared/separator-CN9zAJfs.cjs.map +1 -0
- package/dist/_shared/separator-DR0uUMKa.js +16 -0
- package/dist/_shared/separator-DR0uUMKa.js.map +1 -0
- package/dist/_shared/sheet-B5FoGJAZ.cjs +2 -0
- package/dist/_shared/sheet-B5FoGJAZ.cjs.map +1 -0
- package/dist/_shared/sheet-cUI8cypP.js +100 -0
- package/dist/_shared/sheet-cUI8cypP.js.map +1 -0
- package/dist/_shared/sidebar-Bq7yKLrG.cjs +2 -0
- package/dist/_shared/sidebar-Bq7yKLrG.cjs.map +1 -0
- package/dist/_shared/sidebar-Da20tCUc.cjs +2 -0
- package/dist/_shared/sidebar-Da20tCUc.cjs.map +1 -0
- package/dist/_shared/sidebar-Q6TYE8Ux.js +371 -0
- package/dist/_shared/sidebar-Q6TYE8Ux.js.map +1 -0
- package/dist/_shared/sidebar-WmnQ55YY.js +537 -0
- package/dist/_shared/sidebar-WmnQ55YY.js.map +1 -0
- package/dist/_shared/skeleton-B3HWEc6G.js +14 -0
- package/dist/_shared/skeleton-B3HWEc6G.js.map +1 -0
- package/dist/_shared/skeleton-Cz_l8-fc.cjs +2 -0
- package/dist/_shared/skeleton-Cz_l8-fc.cjs.map +1 -0
- package/dist/_shared/slot-BgnZtKR5.js +18 -0
- package/dist/_shared/slot-BgnZtKR5.js.map +1 -0
- package/dist/_shared/slot-Dac1ipUC.cjs +2 -0
- package/dist/_shared/slot-Dac1ipUC.cjs.map +1 -0
- package/dist/_shared/smart-card-Bm_VxYUG.cjs +2 -0
- package/dist/_shared/smart-card-Bm_VxYUG.cjs.map +1 -0
- package/dist/_shared/smart-card-MT6JjkoI.js +360 -0
- package/dist/_shared/smart-card-MT6JjkoI.js.map +1 -0
- package/dist/_shared/spinner-BQjxJ_Kx.js +67 -0
- package/dist/_shared/spinner-BQjxJ_Kx.js.map +1 -0
- package/dist/_shared/spinner-Dvaa6GUm.cjs +2 -0
- package/dist/_shared/spinner-Dvaa6GUm.cjs.map +1 -0
- package/dist/_shared/switch-C0yyhsXZ.js +51 -0
- package/dist/_shared/switch-C0yyhsXZ.js.map +1 -0
- package/dist/_shared/switch-DozkSQNn.cjs +2 -0
- package/dist/_shared/switch-DozkSQNn.cjs.map +1 -0
- package/dist/_shared/textarea-Cgl-FPwu.js +119 -0
- package/dist/_shared/textarea-Cgl-FPwu.js.map +1 -0
- package/dist/_shared/textarea-D8wC0XlZ.cjs +2 -0
- package/dist/_shared/textarea-D8wC0XlZ.cjs.map +1 -0
- package/dist/_shared/tooltip-Cws4BiPT.js +49 -0
- package/dist/_shared/tooltip-Cws4BiPT.js.map +1 -0
- package/dist/_shared/tooltip-DyUi-Tac.cjs +2 -0
- package/dist/_shared/tooltip-DyUi-Tac.cjs.map +1 -0
- package/dist/_shared/typography-BW7iZBx7.cjs +2 -0
- package/dist/_shared/typography-BW7iZBx7.cjs.map +1 -0
- package/dist/_shared/typography-a3hydyvI.js +102 -0
- package/dist/_shared/typography-a3hydyvI.js.map +1 -0
- package/dist/components/base/accordion/index.cjs +1 -1
- package/dist/components/base/accordion/index.js +1 -1
- package/dist/components/base/badge/index.cjs +1 -1
- package/dist/components/base/badge/index.js +1 -1
- package/dist/components/base/buttons/index.cjs +1 -1
- package/dist/components/base/buttons/index.js +2 -2
- package/dist/components/base/cards/index.cjs +1 -1
- package/dist/components/base/cards/index.js +1 -1
- package/dist/components/base/combobox/index.cjs +1 -1
- package/dist/components/base/combobox/index.js +1 -1
- package/dist/components/base/command/index.cjs +1 -1
- package/dist/components/base/command/index.js +2 -2
- package/dist/components/base/copyable/index.cjs +1 -1
- package/dist/components/base/copyable/index.js +1 -1
- package/dist/components/base/currency/index.cjs +1 -1
- package/dist/components/base/currency/index.js +1 -1
- package/dist/components/base/date-pickers/index.cjs +1 -1
- package/dist/components/base/date-pickers/index.js +2 -2
- package/dist/components/base/display/index.cjs +1 -1
- package/dist/components/base/display/index.js +12 -11
- package/dist/components/base/display/metadata/index.cjs +1 -0
- package/dist/components/base/display/metadata/index.js +2 -0
- package/dist/components/base/event-calendar/index.cjs +1 -1
- package/dist/components/base/event-calendar/index.cjs.map +1 -1
- package/dist/components/base/event-calendar/index.js +4 -4
- package/dist/components/base/forms/index.cjs +1 -1
- package/dist/components/base/forms/index.js +6 -6
- package/dist/components/base/item/index.cjs +1 -1
- package/dist/components/base/item/index.js +1 -1
- package/dist/components/base/map/index.cjs +1 -1
- package/dist/components/base/map/index.js +3 -3
- package/dist/components/base/navigation/index.cjs +1 -1
- package/dist/components/base/navigation/index.js +4 -4
- package/dist/components/base/popover/index.cjs +1 -1
- package/dist/components/base/popover/index.js +1 -1
- package/dist/components/base/popover-menu/index.cjs +1 -1
- package/dist/components/base/popover-menu/index.js +1 -1
- package/dist/components/base/sheet/index.cjs +1 -1
- package/dist/components/base/sheet/index.js +1 -1
- package/dist/components/base/sidebar/index.cjs +1 -1
- package/dist/components/base/sidebar/index.js +1 -1
- package/dist/components/base/spinner/index.cjs +1 -1
- package/dist/components/base/spinner/index.js +1 -1
- package/dist/components/base/table/index.cjs +1 -1
- package/dist/components/base/table/index.js +7 -7
- package/dist/components/composed/admin/index.cjs +1 -1
- package/dist/components/composed/admin/index.cjs.map +1 -1
- package/dist/components/composed/admin/index.js +12 -12
- package/dist/components/composed/ai/index.cjs +1 -1
- package/dist/components/composed/ai/index.js +9 -9
- package/dist/components/composed/analytics/index.cjs +1 -1
- package/dist/components/composed/analytics/index.cjs.map +1 -1
- package/dist/components/composed/analytics/index.js +4 -4
- package/dist/components/composed/cards/index.cjs +1 -1
- package/dist/components/composed/cards/index.cjs.map +1 -1
- package/dist/components/composed/cards/index.js +8 -8
- package/dist/components/composed/commerce/index.cjs +1 -1
- package/dist/components/composed/commerce/index.cjs.map +1 -1
- package/dist/components/composed/commerce/index.js +9 -9
- package/dist/components/composed/dark-surfaces/index.cjs +1 -1
- package/dist/components/composed/dark-surfaces/index.cjs.map +1 -1
- package/dist/components/composed/dark-surfaces/index.js +6 -6
- package/dist/components/composed/data-display/index.cjs +1 -1
- package/dist/components/composed/data-display/index.cjs.map +1 -1
- package/dist/components/composed/data-display/index.js +7 -7
- package/dist/components/composed/navigation/index.cjs +1 -1
- package/dist/components/composed/navigation/index.js +4 -4
- package/dist/components/composed/onboarding/index.cjs +1 -1
- package/dist/components/composed/onboarding/index.js +2 -2
- package/dist/components/composed/timelines/index.cjs +1 -1
- package/dist/components/composed/timelines/index.js +2 -2
- package/dist/components/features/activities/index.cjs +1 -1
- package/dist/components/features/activities/index.js +4 -4
- package/dist/components/features/ai-chat/index.cjs +1 -1
- package/dist/components/features/ai-chat/index.cjs.map +1 -1
- package/dist/components/features/ai-chat/index.js +6 -6
- package/dist/components/features/card/index.cjs +1 -1
- package/dist/components/features/card/index.js +3 -3
- package/dist/components/features/comments/index.cjs +1 -1
- package/dist/components/features/comments/index.js +2 -2
- package/dist/components/features/event-log/index.cjs +1 -1
- package/dist/components/features/event-log/index.js +3 -3
- package/dist/components/features/filters/index.cjs +1 -1
- package/dist/components/features/filters/index.js +9 -9
- package/dist/components/features/global-search/index.cjs +1 -1
- package/dist/components/features/global-search/index.js +2 -2
- package/dist/components/features/kanban/index.cjs +1 -1
- package/dist/components/features/kanban/index.js +1 -1
- package/dist/components/features/mentions/index.cjs +1 -1
- package/dist/components/features/mentions/index.js +1 -1
- package/dist/components/features/overlays/index.cjs +1 -1
- package/dist/components/features/overlays/index.js +1 -1
- package/dist/components/features/rich-text-editor/index.cjs +1 -1
- package/dist/components/features/rich-text-editor/index.js +1 -1
- package/dist/components/features/suggestions/index.cjs +1 -1
- package/dist/components/features/suggestions/index.js +1 -1
- package/dist/components/features/sync/index.cjs +1 -1
- package/dist/components/features/sync/index.js +2 -2
- package/dist/components/layout/containers/index.cjs +1 -1
- package/dist/components/layout/containers/index.js +2 -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 +6 -6
- package/dist/components/layout/page/index.cjs +1 -1
- package/dist/components/layout/page/index.js +1 -1
- package/dist/components/layout/sidebar/index.cjs +1 -1
- package/dist/components/layout/sidebar/index.js +2 -2
- package/dist/components/typography/index.cjs +1 -1
- package/dist/components/typography/index.js +3 -2
- package/dist/showcase/assets/AreaChart-CJ57G5Ub.js +6 -0
- package/dist/showcase/assets/CSPContext-BA7DfnCI.js +1 -0
- package/dist/showcase/assets/CompositeItem-PwzgE4va.js +1 -0
- package/dist/showcase/assets/CompositeRoot-Du4CMlK7.js +1 -0
- package/dist/showcase/assets/DialogTrigger-FkENgwo6.js +1 -0
- package/dist/showcase/assets/FormContext-ChygLayp.js +1 -0
- package/dist/showcase/assets/PreviewLayout-z6vpJJGt.js +1 -0
- package/dist/showcase/assets/RadioGroup-CcDmbxOw.js +1 -0
- package/dist/showcase/assets/Separator-Dk4eN76U.js +1 -0
- package/dist/showcase/assets/ToolbarRootContext-D_KAA5hZ.js +1 -0
- package/dist/showcase/assets/accordion-dQszzfmw.js +172 -0
- package/dist/showcase/assets/accordion-variants-Dp4wxic-.js +1 -0
- package/dist/showcase/assets/action-menu-CBi2Eiy0.js +1 -0
- package/dist/showcase/assets/activities-DoXsgP4G.js +501 -0
- package/dist/showcase/assets/activities-feed-card-xz5FtkOm.js +1 -0
- package/dist/showcase/assets/admin-CxklUqAG.js +80 -0
- package/dist/showcase/assets/ai-artifact-DkhUdEbM.js +2 -0
- package/dist/showcase/assets/ai-chat-B6PuqkEu.js +568 -0
- package/dist/showcase/assets/ai-elements-D_rpj_ds.js +379 -0
- package/dist/showcase/assets/ai-new-CUPrAbOK.js +167 -0
- package/dist/showcase/assets/ai-tool-call-CEr-dGVx.js +1 -0
- package/dist/showcase/assets/ai-zxF_msJF.js +41 -0
- package/dist/showcase/assets/alert-771BE3Ny.js +59 -0
- package/dist/showcase/assets/alert-CG42DAlX.js +1 -0
- package/dist/showcase/assets/api-key-list-D6jUN7Fq.js +73 -0
- package/dist/showcase/assets/arrow-down-CUoXUyN1.js +1 -0
- package/dist/showcase/assets/arrow-left-Cdq69X6h.js +1 -0
- package/dist/showcase/assets/arrow-right-i25q9L2H.js +1 -0
- package/dist/showcase/assets/arrow-up-pnezegnF.js +1 -0
- package/dist/showcase/assets/arrow-up-right-CK3XnMah.js +1 -0
- package/dist/showcase/assets/avatar-LPmQqZQv.js +1 -0
- package/dist/showcase/assets/avatar-ZVFIQouy.js +57 -0
- package/dist/showcase/assets/badge-DK4bsgZC.js +28 -0
- package/dist/showcase/assets/badge-check-Cw5gkVcG.js +1 -0
- package/dist/showcase/assets/bell-BvJELoaV.js +1 -0
- package/dist/showcase/assets/bot-DRj6sdSR.js +1 -0
- package/dist/showcase/assets/box-BNND3M2m.js +1 -0
- package/dist/showcase/assets/brain-Cy3o-12l.js +1 -0
- package/dist/showcase/assets/brand-DvipEpFn.js +40 -0
- package/dist/showcase/assets/breadcrumb-B-LNuOyv.js +1 -0
- package/dist/showcase/assets/breadcrumb-Lzpc0yo4.js +52 -0
- package/dist/showcase/assets/breadcrumbs-DD6msKFZ.js +1 -0
- package/dist/showcase/assets/briefcase-LcAwoEmu.js +1 -0
- package/dist/showcase/assets/button-CuwcGzk1.js +44 -0
- package/dist/showcase/assets/button-group-CAImjDrl.js +1 -0
- package/dist/showcase/assets/buttons-DTjNHCMl.js +259 -0
- package/dist/showcase/assets/calendar-B1zW0q6I.js +1 -0
- package/dist/showcase/assets/calendar-Dlv72ytt.js +1 -0
- package/dist/showcase/assets/calendar-ls2A08Pn.js +16 -0
- package/dist/showcase/assets/card-BhtkM1BT.js +1 -0
- package/dist/showcase/assets/cards-BRpRXzGk.js +328 -0
- package/dist/showcase/assets/chart-column-BpQkEi1H.js +1 -0
- package/dist/showcase/assets/chevron-down-DyObdfSb.js +1 -0
- package/dist/showcase/assets/chevron-left-T7dHNxYM.js +1 -0
- package/dist/showcase/assets/chevron-right-D_EcqHpT.js +1 -0
- package/dist/showcase/assets/chevron-up-B38ivdGO.js +1 -0
- package/dist/showcase/assets/chevrons-up-down-SdRARzoq.js +1 -0
- package/dist/showcase/assets/circle-BrCPAmDA.js +1 -0
- package/dist/showcase/assets/circle-alert-DdhzLPY_.js +1 -0
- package/dist/showcase/assets/circle-check-DlA6zidQ.js +1 -0
- package/dist/showcase/assets/circle-check-big-DFGJANQF.js +1 -0
- package/dist/showcase/assets/circle-dot-BKmnVUqM.js +1 -0
- package/dist/showcase/assets/circle-question-mark-BNREvgVC.js +1 -0
- package/dist/showcase/assets/circle-x-C45QjHEs.js +1 -0
- package/dist/showcase/assets/clock-D1nKQzQo.js +1 -0
- package/dist/showcase/assets/code-xml-B8N3GRSu.js +1 -0
- package/dist/showcase/assets/collapsible-4TfcWyNs.js +1 -0
- package/dist/showcase/assets/collapsible-CKbZtvTj.js +27 -0
- package/dist/showcase/assets/combobox-DTdGPaU0.js +622 -0
- package/dist/showcase/assets/command-DymTXwL1.js +1 -0
- package/dist/showcase/assets/command-ksVIHQKJ.js +45 -0
- package/dist/showcase/assets/comment-composer-DC9oS1Yy.js +1 -0
- package/dist/showcase/assets/comment-item-CAmKnJa7.js +1 -0
- package/dist/showcase/assets/comments-Benk-2mV.js +349 -0
- package/dist/showcase/assets/commerce-Qz-mq8mQ.js +78 -0
- package/dist/showcase/assets/commerce-extras-CQRc3Bna.js +179 -0
- package/dist/showcase/assets/composite-DBDXLPyz.js +1 -0
- package/dist/showcase/assets/contact-card-DkL2nI3r.js +65 -0
- package/dist/showcase/assets/content-container-mRm6oJEa.js +1 -0
- package/dist/showcase/assets/copyable-DmLlmwzy.js +96 -0
- package/dist/showcase/assets/course-card-CJJoeZj9.js +113 -0
- package/dist/showcase/assets/cpu-BXJnF2Xy.js +1 -0
- package/dist/showcase/assets/credit-card-BQK3KKb2.js +1 -0
- package/dist/showcase/assets/currency-DBPUh8ee.js +149 -0
- package/dist/showcase/assets/dark-surfaces-LpPuIeYy.js +90 -0
- package/dist/showcase/assets/database-BZerpzGE.js +1 -0
- package/dist/showcase/assets/date-block-iiHUpbNX.js +1 -0
- package/dist/showcase/assets/date-picker-BQeBGL7T.js +1 -0
- package/dist/showcase/assets/date-pickers-CKcUEMMF.js +110 -0
- package/dist/showcase/assets/dense-info-DATmxRU8.js +106 -0
- package/dist/showcase/assets/dialog-Bqu5KDYH.js +1 -0
- package/dist/showcase/assets/display-Bj7uPXD4.js +392 -0
- package/dist/showcase/assets/dist-QK7JxeYv.js +1 -0
- package/dist/showcase/assets/dollar-sign-DFZs6vfz.js +1 -0
- package/dist/showcase/assets/download-5oGw_WbW.js +1 -0
- package/dist/showcase/assets/dropdown-menu-1CJgYn0S.js +1 -0
- package/dist/showcase/assets/dropzone-Co1uhsDn.js +1 -0
- package/dist/showcase/assets/ellipsis-cKRcvuyL.js +1 -0
- package/dist/showcase/assets/ellipsis-vertical-B1RErEkj.js +1 -0
- package/dist/showcase/assets/empty-Y2-4nCBr.js +1 -0
- package/dist/showcase/assets/empty-item-USa6xcUv.js +49 -0
- package/dist/showcase/assets/empty-state-DfhZ9AT5.js +188 -0
- package/dist/showcase/assets/enhanced-activities-DmAPVUSu.js +359 -0
- package/dist/showcase/assets/esm-BeGQ_ZTM.js +2 -0
- package/dist/showcase/assets/event-calendar-D-jGrrZS.js +138 -0
- package/dist/showcase/assets/event-log-tA_i4eR9.js +326 -0
- package/dist/showcase/assets/example-6phCHGsN.js +1 -0
- package/dist/showcase/assets/external-link-BuVHkCy0.js +1 -0
- package/dist/showcase/assets/eye-DC5HfGm6.js +1 -0
- package/dist/showcase/assets/feature-announcement-DwvxLytd.js +34 -0
- package/dist/showcase/assets/file-D-xM4vLy.js +1 -0
- package/dist/showcase/assets/file-text-tmG5vNbr.js +1 -0
- package/dist/showcase/assets/filters-CrGRXmq6.js +78 -0
- package/dist/showcase/assets/flag-CWrEtkY5.js +1 -0
- package/dist/showcase/assets/folder-open-Br-x1pjP.js +1 -0
- package/dist/showcase/assets/form-sizing-Bb5hiM45.js +1 -0
- package/dist/showcase/assets/format-D_ETCyg4.js +1 -0
- package/dist/showcase/assets/forms-B_MkQ3rm.js +790 -0
- package/dist/showcase/assets/generic-CdmsyXV3.js +1 -0
- package/dist/showcase/assets/getPseudoElementBounds-CZnCbCFP.js +1 -0
- package/dist/showcase/assets/gift-NkuklfU2.js +1 -0
- package/dist/showcase/assets/giftcard-cards-BAvevZ0i.js +85 -0
- package/dist/showcase/assets/git-branch-B_CBqPeO.js +1 -0
- package/dist/showcase/assets/global-search-D9teAbPe.js +90 -0
- package/dist/showcase/assets/globe-gzw45GU2.js +1 -0
- package/dist/showcase/assets/gradient-card-Xk2r7R5H.js +58 -0
- package/dist/showcase/assets/header-notifications-_aZCpE5A.js +1 -0
- package/dist/showcase/assets/heart-CEMKbRaZ.js +1 -0
- package/dist/showcase/assets/house-BlGXAcMH.js +1 -0
- package/dist/showcase/assets/icon-badge-z6N9reH_.js +1 -0
- package/dist/showcase/assets/image-B8mzmVBr.js +1 -0
- package/dist/showcase/assets/inbox-qdSnP4UV.js +1 -0
- package/dist/showcase/assets/index-B4ubXfly.js +10 -0
- package/dist/showcase/assets/inertValue-D5Q8cLku.js +1 -0
- package/dist/showcase/assets/info-DBvvNjc_.js +1 -0
- package/dist/showcase/assets/inline-stat-Bm1zVT8D.js +1 -0
- package/dist/showcase/assets/input-CBQR0aeX.js +1 -0
- package/dist/showcase/assets/input-OrUzpI55.js +1 -0
- package/dist/showcase/assets/input-group-DhqOen2N.js +47 -0
- package/dist/showcase/assets/input-group-l8xa5nUq.js +1 -0
- package/dist/showcase/assets/inputs-DbiJ0qy2.js +49 -0
- package/dist/showcase/assets/invoice-header-C6youIbL.js +36 -0
- package/dist/showcase/assets/invoice-items-g6dgryF-.js +36 -0
- package/dist/showcase/assets/invoice-mini-0iWhufpt.js +14 -0
- package/dist/showcase/assets/invoice-table-Bvdh3rRq.js +30 -0
- package/dist/showcase/assets/isSameDay-BpZEtJe8.js +1 -0
- package/dist/showcase/assets/isToday-F0CS28oK.js +1 -0
- package/dist/showcase/assets/italic-CJOEwjdc.js +1 -0
- package/dist/showcase/assets/item-BiMm1PPB.js +1 -0
- package/dist/showcase/assets/item-CN0cwdj_.js +1 -0
- package/dist/showcase/assets/item-DNqEUYLT.js +117 -0
- package/dist/showcase/assets/kanban-DxePEUiQ.js +175 -0
- package/dist/showcase/assets/label-Dx4WO-fg.js +1 -0
- package/dist/showcase/assets/layout-containers-DDl8rG8S.js +96 -0
- package/dist/showcase/assets/layout-header-Bu6IcDWu.js +170 -0
- package/dist/showcase/assets/layout-page-D-88Qnoy.js +122 -0
- package/dist/showcase/assets/layout-sidebar-Ctft10pk.js +224 -0
- package/dist/showcase/assets/layout-users-DtbZduBG.js +104 -0
- package/dist/showcase/assets/lib-D9BoOYUd.js +1 -0
- package/dist/showcase/assets/lock-CHurDI0n.js +1 -0
- package/dist/showcase/assets/mail-DZ1o1RLW.js +1 -0
- package/dist/showcase/assets/map-C8xiyT9X.js +124 -0
- package/dist/showcase/assets/map-pin-CAKaoYod.js +1 -0
- package/dist/showcase/assets/menus-C6mnp636.js +89 -0
- package/dist/showcase/assets/message-square-Zo5J_zU1.js +1 -0
- package/dist/showcase/assets/metadata-list-W83-UMhc.js +278 -0
- package/dist/showcase/assets/metric-BSvxidIX.js +1 -0
- package/dist/showcase/assets/metric-grid-Dtqx_3Lg.js +1 -0
- package/dist/showcase/assets/metric-trend-chip-mtvcJ_M9.js +1 -0
- package/dist/showcase/assets/metrics-analytics-bar-DQbyss7i.js +44 -0
- package/dist/showcase/assets/metrics-analytics-cards-CEBu5Uw0.js +77 -0
- package/dist/showcase/assets/metrics-comparison-Bs-R6v4y.js +76 -0
- package/dist/showcase/assets/metrics-heatmap-BKHWH8sM.js +27 -0
- package/dist/showcase/assets/metrics-inline-badge-BxVn0Y2p.js +17 -0
- package/dist/showcase/assets/metrics-kpi-row-DtACYEds.js +31 -0
- package/dist/showcase/assets/metrics-micro-grid-BkwUGOUR.js +42 -0
- package/dist/showcase/assets/metrics-overview-BAtrlzsI.js +192 -0
- package/dist/showcase/assets/metrics-stat-cards-iCRCNyHY.js +54 -0
- package/dist/showcase/assets/minus-C6eBW-2t.js +1 -0
- package/dist/showcase/assets/money-display-DjGRJ16l.js +1 -0
- package/dist/showcase/assets/month-year-picker-DTDebPqf.js +1 -0
- package/dist/showcase/assets/navigation-BrG8Chig.js +86 -0
- package/dist/showcase/assets/navigation-CfXQJbyM.js +230 -0
- package/dist/showcase/assets/navigation-extras-D_gzLlZ5.js +43 -0
- package/dist/showcase/assets/onboarding-checklist-1EerUwAo.js +119 -0
- package/dist/showcase/assets/overlays-2AB9-S1Z.js +88 -0
- package/dist/showcase/assets/overlays-CYt9o3Xq.js +393 -0
- package/dist/showcase/assets/package-BJMP-Fcr.js +1 -0
- package/dist/showcase/assets/page-action-button-BZxJ0X1j.js +1 -0
- package/dist/showcase/assets/page-header-B_rqHJhe.js +1 -0
- package/dist/showcase/assets/pagination-BHiQvvka.js +1 -0
- package/dist/showcase/assets/pagination-Dq0GruQd.js +42 -0
- package/dist/showcase/assets/paperclip-BMYKrUQo.js +1 -0
- package/dist/showcase/assets/pencil-BJ3VS_FO.js +1 -0
- package/dist/showcase/assets/phone-CsRIyvep.js +1 -0
- package/dist/showcase/assets/plus-D2JuXYLg.js +1 -0
- package/dist/showcase/assets/popover-DNT9755r.js +1 -0
- package/dist/showcase/assets/popover-KvGgcPNg.js +1 -0
- package/dist/showcase/assets/popover-menu-CJx30R65.js +1 -0
- package/dist/showcase/assets/progress-B7WuXcJR.js +1 -0
- package/dist/showcase/assets/progress-CweCSAUv.js +18 -0
- package/dist/showcase/assets/props-table-uDY4eIzt.js +1 -0
- package/dist/showcase/assets/quote-DAyyfzQd.js +1 -0
- package/dist/showcase/assets/receipt-C0mMZGbF.js +1 -0
- package/dist/showcase/assets/refresh-cw-X06JbXb-.js +1 -0
- package/dist/showcase/assets/resolveValueLabel-Bks7UDko.js +1 -0
- package/dist/showcase/assets/rich-text-editor-QJsb-qIe.js +124 -0
- package/dist/showcase/assets/rich-text-editor-h07VBNI9.js +141 -0
- package/dist/showcase/assets/rotate-ccw-D84bdX_x.js +1 -0
- package/dist/showcase/assets/scroll-area-0rT06pXZ.js +1 -0
- package/dist/showcase/assets/scroll-area-YXwdzGpN.js +32 -0
- package/dist/showcase/assets/select-BoWQDtUf.js +1 -0
- package/dist/showcase/assets/send-DJsk3cr1.js +1 -0
- package/dist/showcase/assets/separator-CLSnRcJa.js +28 -0
- package/dist/showcase/assets/separator-DWv-twD-.js +1 -0
- package/dist/showcase/assets/settings-Cb2MsAmN.js +1 -0
- package/dist/showcase/assets/sheet-Dn1-MYus.js +1 -0
- package/dist/showcase/assets/shield-DwLjF5ch.js +1 -0
- package/dist/showcase/assets/shield-alert-D8i6gzMK.js +1 -0
- package/dist/showcase/assets/shield-check-D5YRSBIz.js +1 -0
- package/dist/showcase/assets/shopping-bag-BqlAP4vn.js +1 -0
- package/dist/showcase/assets/sidebar.context-BAp_pBEB.js +1 -0
- package/dist/showcase/assets/skeleton-CeNPp4hr.js +1 -0
- package/dist/showcase/assets/skeleton-QPsnM_NR.js +29 -0
- package/dist/showcase/assets/smart-card-BisUbLPt.js +1 -0
- package/dist/showcase/assets/sonner-B7GzbBK2.js +22 -0
- package/dist/showcase/assets/sortable.esm-BDcEOHT7.js +5 -0
- package/dist/showcase/assets/sparkles-CF9P5Tqh.js +1 -0
- package/dist/showcase/assets/spinner-BeamEyJd.js +49 -0
- package/dist/showcase/assets/spinner-DoYBfalR.js +1 -0
- package/dist/showcase/assets/spinner-UsLsOYzn.js +30 -0
- package/dist/showcase/assets/square-pen-BGTVdnt1.js +1 -0
- package/dist/showcase/assets/stacked-avatars-BWfVX1Ov.js +1 -0
- package/dist/showcase/assets/star-NsPNO9gR.js +1 -0
- package/dist/showcase/assets/startOfDay-zJBpxLuW.js +1 -0
- package/dist/showcase/assets/styles-DA7a7hVy.js +1 -0
- package/dist/showcase/assets/switch-C62S4U2o.js +1 -0
- package/dist/showcase/assets/switch-CYQcinJZ.js +1 -0
- package/dist/showcase/assets/table-w4IABkpa.js +1 -0
- package/dist/showcase/assets/table-xgB63UrY.js +390 -0
- package/dist/showcase/assets/tabs-BFTEaTXj.js +19 -0
- package/dist/showcase/assets/tabs-oMJn9Ujq.js +1 -0
- package/dist/showcase/assets/text-button-BgcutPuu.js +1 -0
- package/dist/showcase/assets/text-link-CS9thOWL.js +1 -0
- package/dist/showcase/assets/textarea-BOBx4EM6.js +1 -0
- package/dist/showcase/assets/textarea-CTzYZZqa.js +1 -0
- package/dist/showcase/assets/timelines-CK07mEBK.js +186 -0
- package/dist/showcase/assets/toggle-group-CSPdPT6G.js +1 -0
- package/dist/showcase/assets/toggles-DDSdl-gA.js +71 -0
- package/dist/showcase/assets/toggles-group-Y2BdKEFB.js +32 -0
- package/dist/showcase/assets/trash-2-C-FAptQP.js +1 -0
- package/dist/showcase/assets/trending-up-BmLhdF_w.js +1 -0
- package/dist/showcase/assets/truck-pZdUS_as.js +1 -0
- package/dist/showcase/assets/typography-CnBH2z7f.js +214 -0
- package/dist/showcase/assets/ui-badge-Cl6INRO5.js +28 -0
- package/dist/showcase/assets/ui-card-B5P-thNu.js +30 -0
- package/dist/showcase/assets/ui-table-B32RILKk.js +42 -0
- package/dist/showcase/assets/upload-tray-mu6bR2ZE.js +138 -0
- package/dist/showcase/assets/useAnchoredPopupScrollLock-CzDaXxmM.js +1 -0
- package/dist/showcase/assets/useCollapsiblePanel-B0DZvDFu.js +1 -0
- package/dist/showcase/assets/useCompositeItem-BVIVLT9X.js +1 -0
- package/dist/showcase/assets/useCompositeListItem-JEMeTFPx.js +1 -0
- package/dist/showcase/assets/useControlled-ZjqBfPCn.js +1 -0
- package/dist/showcase/assets/useLabelableId-D8CZq8Bm.js +1 -0
- package/dist/showcase/assets/useOpenInteractionType-CopGCf3q.js +1 -0
- package/dist/showcase/assets/useRender-zuKv6JQF.js +1 -0
- package/dist/showcase/assets/useRole-08KeyiD3.js +1 -0
- package/dist/showcase/assets/useTriggerFocusGuards-DEuz5CGe.js +1 -0
- package/dist/showcase/assets/useValueChanged-BxFi_qyj.js +1 -0
- package/dist/showcase/assets/user-Bgc2t2_e.js +1 -0
- package/dist/showcase/assets/user-plus-F_TfagnP.js +1 -0
- package/dist/showcase/assets/users-B7G4yTCR.js +1 -0
- package/dist/showcase/assets/vendor-profile-BTQmsKM6.js +37 -0
- package/dist/showcase/assets/wrench-BdzICmjR.js +1 -0
- package/dist/showcase/assets/x-B156Wr-5.js +1 -0
- package/dist/showcase/assets/zap-B3iByjNV.js +1 -0
- package/dist/showcase/index.html +1 -1
- package/package.json +10 -1
- package/dist/_shared/accordion-7rwpgJ1k.cjs +0 -2
- package/dist/_shared/accordion-7rwpgJ1k.cjs.map +0 -1
- package/dist/_shared/accordion-DcduCEIo.js +0 -130
- package/dist/_shared/accordion-DcduCEIo.js.map +0 -1
- package/dist/_shared/action-menu-D0u-q0q-.cjs +0 -2
- package/dist/_shared/action-menu-D0u-q0q-.cjs.map +0 -1
- package/dist/_shared/action-menu-DUBXdReV.js +0 -96
- package/dist/_shared/action-menu-DUBXdReV.js.map +0 -1
- package/dist/_shared/ai-artifact-C3R0god0.cjs +0 -3
- package/dist/_shared/ai-artifact-C3R0god0.cjs.map +0 -1
- package/dist/_shared/ai-artifact-DMjQv_Si.js +0 -1068
- package/dist/_shared/ai-artifact-DMjQv_Si.js.map +0 -1
- package/dist/_shared/alert-B2cuJGAA.cjs +0 -2
- package/dist/_shared/alert-B2cuJGAA.cjs.map +0 -1
- package/dist/_shared/alert-BKUmOI2e.js +0 -48
- package/dist/_shared/alert-BKUmOI2e.js.map +0 -1
- package/dist/_shared/avatar-BcYcRORH.cjs +0 -2
- package/dist/_shared/avatar-BcYcRORH.cjs.map +0 -1
- package/dist/_shared/avatar-CNzG6jSZ.js +0 -52
- package/dist/_shared/avatar-CNzG6jSZ.js.map +0 -1
- package/dist/_shared/badge-BbUN6W7E.js +0 -108
- package/dist/_shared/badge-BbUN6W7E.js.map +0 -1
- package/dist/_shared/badge-BjtDcU1M.cjs +0 -2
- package/dist/_shared/badge-BjtDcU1M.cjs.map +0 -1
- package/dist/_shared/breadcrumbs-DctwTld5.js +0 -111
- package/dist/_shared/breadcrumbs-DctwTld5.js.map +0 -1
- package/dist/_shared/breadcrumbs-m0-gCdNj.cjs +0 -2
- package/dist/_shared/breadcrumbs-m0-gCdNj.cjs.map +0 -1
- package/dist/_shared/button-BCABTFLE.js +0 -46
- package/dist/_shared/button-BCABTFLE.js.map +0 -1
- package/dist/_shared/button-Ck2qS42n.js +0 -176
- package/dist/_shared/button-Ck2qS42n.js.map +0 -1
- package/dist/_shared/button-DjJ-mDI1.cjs +0 -2
- package/dist/_shared/button-DjJ-mDI1.cjs.map +0 -1
- package/dist/_shared/button-DjacsNTg.cjs +0 -2
- package/dist/_shared/button-DjacsNTg.cjs.map +0 -1
- package/dist/_shared/buttons-BVnjQ-uE.js +0 -143
- package/dist/_shared/buttons-BVnjQ-uE.js.map +0 -1
- package/dist/_shared/buttons-BdY6igTr.cjs +0 -2
- package/dist/_shared/buttons-BdY6igTr.cjs.map +0 -1
- package/dist/_shared/card-radio-group--GP1xrz_.js +0 -158
- package/dist/_shared/card-radio-group--GP1xrz_.js.map +0 -1
- package/dist/_shared/card-radio-group-DnQsWozr.cjs +0 -2
- package/dist/_shared/card-radio-group-DnQsWozr.cjs.map +0 -1
- package/dist/_shared/combobox-DBrRE1Dr.cjs +0 -2
- package/dist/_shared/combobox-DBrRE1Dr.cjs.map +0 -1
- package/dist/_shared/combobox-DYztEJaw.js +0 -746
- package/dist/_shared/combobox-DYztEJaw.js.map +0 -1
- package/dist/_shared/command-COvgXQ8r.cjs +0 -2
- package/dist/_shared/command-COvgXQ8r.cjs.map +0 -1
- package/dist/_shared/command-CvZ6Emb8.js +0 -39
- package/dist/_shared/command-CvZ6Emb8.js.map +0 -1
- package/dist/_shared/command-DTFQIUVG.cjs +0 -2
- package/dist/_shared/command-DTFQIUVG.cjs.map +0 -1
- package/dist/_shared/command-Sq8XbHbA.js +0 -123
- package/dist/_shared/command-Sq8XbHbA.js.map +0 -1
- package/dist/_shared/comments-BOFU1GYY.js +0 -945
- package/dist/_shared/comments-BOFU1GYY.js.map +0 -1
- package/dist/_shared/comments-BbTYFzx6.cjs +0 -2
- package/dist/_shared/comments-BbTYFzx6.cjs.map +0 -1
- package/dist/_shared/containers-BthqdOhA.cjs +0 -2
- package/dist/_shared/containers-BthqdOhA.cjs.map +0 -1
- package/dist/_shared/containers-CD2xs1nk.js +0 -19
- package/dist/_shared/containers-CD2xs1nk.js.map +0 -1
- package/dist/_shared/content-container-CFfYbWoa.js +0 -33
- package/dist/_shared/content-container-CFfYbWoa.js.map +0 -1
- package/dist/_shared/content-container-CReiVugL.cjs +0 -2
- package/dist/_shared/content-container-CReiVugL.cjs.map +0 -1
- package/dist/_shared/copyable-CweQ72QI.cjs +0 -2
- package/dist/_shared/copyable-CweQ72QI.cjs.map +0 -1
- package/dist/_shared/copyable-JgsTp6ev.js +0 -38
- package/dist/_shared/copyable-JgsTp6ev.js.map +0 -1
- package/dist/_shared/date-picker-DI4b-SeE.cjs +0 -2
- package/dist/_shared/date-picker-DI4b-SeE.cjs.map +0 -1
- package/dist/_shared/date-picker-DTazvODY.js +0 -1352
- package/dist/_shared/date-picker-DTazvODY.js.map +0 -1
- package/dist/_shared/date-pickers-CLzuzmuc.cjs +0 -2
- package/dist/_shared/date-pickers-CLzuzmuc.cjs.map +0 -1
- package/dist/_shared/date-pickers-CWPxP3zy.js +0 -330
- package/dist/_shared/date-pickers-CWPxP3zy.js.map +0 -1
- package/dist/_shared/dialog-2MJmaj_d.js +0 -101
- package/dist/_shared/dialog-2MJmaj_d.js.map +0 -1
- package/dist/_shared/dialog-KKD0i1T8.cjs +0 -2
- package/dist/_shared/dialog-KKD0i1T8.cjs.map +0 -1
- package/dist/_shared/display-BCy1Ti7T.cjs +0 -8
- package/dist/_shared/display-BCy1Ti7T.cjs.map +0 -1
- package/dist/_shared/display-DUpkE2aS.js +0 -1462
- package/dist/_shared/display-DUpkE2aS.js.map +0 -1
- package/dist/_shared/dropdown-menu-BebBffUH.cjs +0 -2
- package/dist/_shared/dropdown-menu-BebBffUH.cjs.map +0 -1
- package/dist/_shared/dropdown-menu-xdGEynC8.js +0 -147
- package/dist/_shared/dropdown-menu-xdGEynC8.js.map +0 -1
- package/dist/_shared/form-field-rOj3cm6C.js +0 -319
- package/dist/_shared/form-field-rOj3cm6C.js.map +0 -1
- package/dist/_shared/form-field-rcyIIHjR.cjs +0 -2
- package/dist/_shared/form-field-rcyIIHjR.cjs.map +0 -1
- package/dist/_shared/form-sizing--bs_xPe2.cjs +0 -2
- package/dist/_shared/form-sizing--bs_xPe2.cjs.map +0 -1
- package/dist/_shared/form-sizing-CkKcs5fi.js +0 -21
- package/dist/_shared/form-sizing-CkKcs5fi.js.map +0 -1
- package/dist/_shared/format-BlVEsPyT.js +0 -48
- package/dist/_shared/format-BlVEsPyT.js.map +0 -1
- package/dist/_shared/format-DYVtSA2I.cjs +0 -2
- package/dist/_shared/format-DYVtSA2I.cjs.map +0 -1
- package/dist/_shared/forms-BAVsxxRk.js +0 -3374
- package/dist/_shared/forms-BAVsxxRk.js.map +0 -1
- package/dist/_shared/forms-DaZ3LsYc.cjs +0 -2
- package/dist/_shared/forms-DaZ3LsYc.cjs.map +0 -1
- package/dist/_shared/header-BtTMsQ5P.cjs +0 -2
- package/dist/_shared/header-BtTMsQ5P.cjs.map +0 -1
- package/dist/_shared/header-DpW4UWV6.js +0 -369
- package/dist/_shared/header-DpW4UWV6.js.map +0 -1
- package/dist/_shared/hooks-Bsm917yh.cjs +0 -2
- package/dist/_shared/hooks-Bsm917yh.cjs.map +0 -1
- package/dist/_shared/hooks-CX-SICd4.js +0 -118
- package/dist/_shared/hooks-CX-SICd4.js.map +0 -1
- package/dist/_shared/icon-badge-DGKpbo9_.cjs +0 -2
- package/dist/_shared/icon-badge-DGKpbo9_.cjs.map +0 -1
- package/dist/_shared/icon-badge-DoClA_9q.js +0 -52
- package/dist/_shared/icon-badge-DoClA_9q.js.map +0 -1
- package/dist/_shared/input-BXt-YtVs.cjs +0 -2
- package/dist/_shared/input-BXt-YtVs.cjs.map +0 -1
- package/dist/_shared/input-Bx4LeLhn.js +0 -17
- package/dist/_shared/input-Bx4LeLhn.js.map +0 -1
- package/dist/_shared/input-ChZGIhtS.cjs +0 -2
- package/dist/_shared/input-ChZGIhtS.cjs.map +0 -1
- package/dist/_shared/input-Cwv1-5jt.js +0 -182
- package/dist/_shared/input-Cwv1-5jt.js.map +0 -1
- package/dist/_shared/item-BmTYKzEb.js +0 -224
- package/dist/_shared/item-BmTYKzEb.js.map +0 -1
- package/dist/_shared/item-BtR-bz96.cjs +0 -2
- package/dist/_shared/item-BtR-bz96.cjs.map +0 -1
- package/dist/_shared/mentions-DVCjaO_z.cjs +0 -2
- package/dist/_shared/mentions-DVCjaO_z.cjs.map +0 -1
- package/dist/_shared/mentions-DzG8mX5H.js +0 -493
- package/dist/_shared/mentions-DzG8mX5H.js.map +0 -1
- package/dist/_shared/money-display-B5oxCs_0.cjs +0 -2
- package/dist/_shared/money-display-B5oxCs_0.cjs.map +0 -1
- package/dist/_shared/money-display-C0wI02ou.js +0 -198
- package/dist/_shared/money-display-C0wI02ou.js.map +0 -1
- package/dist/_shared/navigation-BA2nsTgU.cjs +0 -2
- package/dist/_shared/navigation-BA2nsTgU.cjs.map +0 -1
- package/dist/_shared/navigation-DHyaf-RZ.js +0 -420
- package/dist/_shared/navigation-DHyaf-RZ.js.map +0 -1
- package/dist/_shared/overlays-Kl6Gp6WR.js +0 -633
- package/dist/_shared/overlays-Kl6Gp6WR.js.map +0 -1
- package/dist/_shared/overlays-W6j-Pe1L.cjs +0 -2
- package/dist/_shared/overlays-W6j-Pe1L.cjs.map +0 -1
- package/dist/_shared/page-DROZhtWT.js +0 -263
- package/dist/_shared/page-DROZhtWT.js.map +0 -1
- package/dist/_shared/page-lh9Rcx_d.cjs +0 -2
- package/dist/_shared/page-lh9Rcx_d.cjs.map +0 -1
- package/dist/_shared/popover-BTEwjJZS.cjs +0 -2
- package/dist/_shared/popover-BTEwjJZS.cjs.map +0 -1
- package/dist/_shared/popover-CF9VWt-l.js +0 -83
- package/dist/_shared/popover-CF9VWt-l.js.map +0 -1
- package/dist/_shared/popover-menu-BYesl29w.js +0 -95
- package/dist/_shared/popover-menu-BYesl29w.js.map +0 -1
- package/dist/_shared/popover-menu-DF9sWz61.cjs +0 -2
- package/dist/_shared/popover-menu-DF9sWz61.cjs.map +0 -1
- package/dist/_shared/rich-text-editor-UZghkgsh.cjs +0 -2
- package/dist/_shared/rich-text-editor-UZghkgsh.cjs.map +0 -1
- package/dist/_shared/rich-text-editor-fUeuK-rY.js +0 -608
- package/dist/_shared/rich-text-editor-fUeuK-rY.js.map +0 -1
- package/dist/_shared/scroll-area-XJLcCczs.js +0 -41
- package/dist/_shared/scroll-area-XJLcCczs.js.map +0 -1
- package/dist/_shared/scroll-area-y8ZJoS97.cjs +0 -2
- package/dist/_shared/scroll-area-y8ZJoS97.cjs.map +0 -1
- package/dist/_shared/select-D8MYF4f7.js +0 -85
- package/dist/_shared/select-D8MYF4f7.js.map +0 -1
- package/dist/_shared/select-DxAiUfpM.cjs +0 -2
- package/dist/_shared/select-DxAiUfpM.cjs.map +0 -1
- package/dist/_shared/separator-BazqiQ9s.js +0 -16
- package/dist/_shared/separator-BazqiQ9s.js.map +0 -1
- package/dist/_shared/separator-DSkXMOXq.cjs +0 -2
- package/dist/_shared/separator-DSkXMOXq.cjs.map +0 -1
- package/dist/_shared/sheet-7iHOs-IU.js +0 -100
- package/dist/_shared/sheet-7iHOs-IU.js.map +0 -1
- package/dist/_shared/sheet-qKtoyxgi.cjs +0 -2
- package/dist/_shared/sheet-qKtoyxgi.cjs.map +0 -1
- package/dist/_shared/sidebar-CaTUJ3t-.js +0 -537
- package/dist/_shared/sidebar-CaTUJ3t-.js.map +0 -1
- package/dist/_shared/sidebar-DVjfsm-f.cjs +0 -2
- package/dist/_shared/sidebar-DVjfsm-f.cjs.map +0 -1
- package/dist/_shared/sidebar-aV5DVAVg.js +0 -371
- package/dist/_shared/sidebar-aV5DVAVg.js.map +0 -1
- package/dist/_shared/sidebar-mL0jSJ8u.cjs +0 -2
- package/dist/_shared/sidebar-mL0jSJ8u.cjs.map +0 -1
- package/dist/_shared/skeleton-Bwv_j9jJ.cjs +0 -2
- package/dist/_shared/skeleton-Bwv_j9jJ.cjs.map +0 -1
- package/dist/_shared/skeleton-DyKa-Ed-.js +0 -14
- package/dist/_shared/skeleton-DyKa-Ed-.js.map +0 -1
- package/dist/_shared/slot-ClIPTht1.cjs +0 -2
- package/dist/_shared/slot-ClIPTht1.cjs.map +0 -1
- package/dist/_shared/slot-CrS_VEVl.js +0 -18
- package/dist/_shared/slot-CrS_VEVl.js.map +0 -1
- package/dist/_shared/smart-card-Ddsjvf7r.cjs +0 -2
- package/dist/_shared/smart-card-Ddsjvf7r.cjs.map +0 -1
- package/dist/_shared/smart-card-hJ01usWt.js +0 -360
- package/dist/_shared/smart-card-hJ01usWt.js.map +0 -1
- package/dist/_shared/spinner-D-pcMBt1.js +0 -67
- package/dist/_shared/spinner-D-pcMBt1.js.map +0 -1
- package/dist/_shared/spinner-zbmhn0vE.cjs +0 -2
- package/dist/_shared/spinner-zbmhn0vE.cjs.map +0 -1
- package/dist/_shared/switch-C5J37LMI.cjs +0 -2
- package/dist/_shared/switch-C5J37LMI.cjs.map +0 -1
- package/dist/_shared/switch-ClGgHcEb.js +0 -51
- package/dist/_shared/switch-ClGgHcEb.js.map +0 -1
- package/dist/_shared/textarea-DeISZfHw.js +0 -119
- package/dist/_shared/textarea-DeISZfHw.js.map +0 -1
- package/dist/_shared/textarea-iR9txrty.cjs +0 -2
- package/dist/_shared/textarea-iR9txrty.cjs.map +0 -1
- package/dist/_shared/tooltip-CEqxHWxQ.js +0 -49
- package/dist/_shared/tooltip-CEqxHWxQ.js.map +0 -1
- package/dist/_shared/tooltip-DPv0LGr9.cjs +0 -2
- package/dist/_shared/tooltip-DPv0LGr9.cjs.map +0 -1
- package/dist/_shared/typography-BtPQBvSm.js +0 -135
- package/dist/_shared/typography-BtPQBvSm.js.map +0 -1
- package/dist/_shared/typography-DClleVWi.cjs +0 -2
- package/dist/_shared/typography-DClleVWi.cjs.map +0 -1
- package/dist/showcase/assets/AreaChart-D-RqNtqG.js +0 -6
- package/dist/showcase/assets/CSPContext-t69BXyB7.js +0 -1
- package/dist/showcase/assets/CompositeItem-DHNLgEeV.js +0 -1
- package/dist/showcase/assets/CompositeRoot-xq_0ZFev.js +0 -1
- package/dist/showcase/assets/DialogTrigger-Cl7n_3xX.js +0 -1
- package/dist/showcase/assets/FormContext-CXdwDz7F.js +0 -1
- package/dist/showcase/assets/PreviewLayout-BHemtKEf.js +0 -1
- package/dist/showcase/assets/RadioGroup-DXAt4VZN.js +0 -1
- package/dist/showcase/assets/Separator-C9vXwWmZ.js +0 -1
- package/dist/showcase/assets/ToolbarRootContext-iF4ctnIz.js +0 -1
- package/dist/showcase/assets/accordion-DzkNgNcB.js +0 -172
- package/dist/showcase/assets/accordion-variants-DP5-oxLe.js +0 -1
- package/dist/showcase/assets/action-menu-CyA2e9TF.js +0 -1
- package/dist/showcase/assets/activities-Dt-dO5ew.js +0 -501
- package/dist/showcase/assets/activities-feed-card-DZdFekXl.js +0 -1
- package/dist/showcase/assets/admin-C2SeJmE7.js +0 -80
- package/dist/showcase/assets/ai-Cwo0h_Xn.js +0 -41
- package/dist/showcase/assets/ai-artifact-3UJofyU5.js +0 -2
- package/dist/showcase/assets/ai-chat-CrFtG_Vg.js +0 -568
- package/dist/showcase/assets/ai-elements-iJ15Y7pS.js +0 -379
- package/dist/showcase/assets/ai-new-DuznZydd.js +0 -167
- package/dist/showcase/assets/ai-tool-call-CTcGGAQU.js +0 -1
- package/dist/showcase/assets/alert-CUGGckOX.js +0 -1
- package/dist/showcase/assets/alert-tWped3Sw.js +0 -59
- package/dist/showcase/assets/api-key-list-Q5LAqzMn.js +0 -73
- package/dist/showcase/assets/arrow-down-CfwCPcHL.js +0 -1
- package/dist/showcase/assets/arrow-left-BKx9qNX6.js +0 -1
- package/dist/showcase/assets/arrow-right-DlEpbqEk.js +0 -1
- package/dist/showcase/assets/arrow-up-BYQ4F9L1.js +0 -1
- package/dist/showcase/assets/arrow-up-right-C8r6vYfE.js +0 -1
- package/dist/showcase/assets/avatar-BuZ3zTbH.js +0 -57
- package/dist/showcase/assets/avatar-DR2mqPpY.js +0 -1
- package/dist/showcase/assets/badge-D1HLfP93.js +0 -28
- package/dist/showcase/assets/badge-check-oP2z_95u.js +0 -1
- package/dist/showcase/assets/bell-BTX2D-ES.js +0 -1
- package/dist/showcase/assets/bot-CKh5XgUG.js +0 -1
- package/dist/showcase/assets/box-F1uaZ6iw.js +0 -1
- package/dist/showcase/assets/brain-dD_ppLUa.js +0 -1
- package/dist/showcase/assets/brand-zisZOFKf.js +0 -40
- package/dist/showcase/assets/breadcrumb-C7vv0L8K.js +0 -52
- package/dist/showcase/assets/breadcrumb-fay5sLba.js +0 -1
- package/dist/showcase/assets/breadcrumbs-DklRXepp.js +0 -1
- package/dist/showcase/assets/briefcase-D9M4aNmi.js +0 -1
- package/dist/showcase/assets/button-DbhXfR1N.js +0 -44
- package/dist/showcase/assets/button-group-BpdhyMif.js +0 -1
- package/dist/showcase/assets/buttons-XexbmUtN.js +0 -259
- package/dist/showcase/assets/calendar-BADJgjpI.js +0 -16
- package/dist/showcase/assets/calendar-Djh3xLVx.js +0 -1
- package/dist/showcase/assets/calendar-dWZ2-0gU.js +0 -1
- package/dist/showcase/assets/card-BUSAPPkx.js +0 -1
- package/dist/showcase/assets/cards-DHBPe01w.js +0 -328
- package/dist/showcase/assets/chart-column-6l5wIZ0h.js +0 -1
- package/dist/showcase/assets/chevron-down-at2vrt1V.js +0 -1
- package/dist/showcase/assets/chevron-left-DIs3WYNO.js +0 -1
- package/dist/showcase/assets/chevron-right-BNy0Or0x.js +0 -1
- package/dist/showcase/assets/chevron-up-CX7619BJ.js +0 -1
- package/dist/showcase/assets/chevrons-up-down-Be6eciau.js +0 -1
- package/dist/showcase/assets/circle-C0Yd1DDS.js +0 -1
- package/dist/showcase/assets/circle-alert-DfQp_X3_.js +0 -1
- package/dist/showcase/assets/circle-check-BkqQe1tv.js +0 -1
- package/dist/showcase/assets/circle-check-big-BXxHUhuc.js +0 -1
- package/dist/showcase/assets/circle-dot-HeRgxZxN.js +0 -1
- package/dist/showcase/assets/circle-question-mark-BgS4fb6N.js +0 -1
- package/dist/showcase/assets/circle-x-CMzwDsaf.js +0 -1
- package/dist/showcase/assets/clock-ynCzs_rR.js +0 -1
- package/dist/showcase/assets/code-xml-B8aVstrJ.js +0 -1
- package/dist/showcase/assets/collapsible-C8CKdiRn.js +0 -27
- package/dist/showcase/assets/collapsible-u43HxDHB.js +0 -1
- package/dist/showcase/assets/combobox-D-6ff0VG.js +0 -622
- package/dist/showcase/assets/command-BsHudlBe.js +0 -1
- package/dist/showcase/assets/command-DZqmBolX.js +0 -45
- package/dist/showcase/assets/comment-composer-OnxlkC5y.js +0 -1
- package/dist/showcase/assets/comment-item-DmZ1AJ2Y.js +0 -1
- package/dist/showcase/assets/comments-BjIVksjE.js +0 -349
- package/dist/showcase/assets/commerce-3T1GxvrA.js +0 -78
- package/dist/showcase/assets/commerce-extras-CYv_uRQR.js +0 -179
- package/dist/showcase/assets/composite-mol0-2zZ.js +0 -1
- package/dist/showcase/assets/contact-card-CWAANJqn.js +0 -65
- package/dist/showcase/assets/content-container-D3Phw6h8.js +0 -1
- package/dist/showcase/assets/copyable-BdzUH3U3.js +0 -96
- package/dist/showcase/assets/course-card-Cb6Y2vJ6.js +0 -113
- package/dist/showcase/assets/cpu-CRrekbGQ.js +0 -1
- package/dist/showcase/assets/credit-card--5vg7bQy.js +0 -1
- package/dist/showcase/assets/currency-VuqnKj_Y.js +0 -149
- package/dist/showcase/assets/dark-surfaces-DEyBimFz.js +0 -90
- package/dist/showcase/assets/database-Bnvw0wVV.js +0 -1
- package/dist/showcase/assets/date-block-IhoCVl_d.js +0 -1
- package/dist/showcase/assets/date-picker-DnJpsnaF.js +0 -1
- package/dist/showcase/assets/date-pickers-CEbieq-R.js +0 -110
- package/dist/showcase/assets/dense-info-B04QmrOd.js +0 -106
- package/dist/showcase/assets/dialog-DotEO3IO.js +0 -1
- package/dist/showcase/assets/display-hK7Dtm-B.js +0 -392
- package/dist/showcase/assets/dist-DQgGKvzA.js +0 -1
- package/dist/showcase/assets/dollar-sign-gJtl-XaL.js +0 -1
- package/dist/showcase/assets/download-CMrNgeil.js +0 -1
- package/dist/showcase/assets/dropdown-menu-Cqv6D7Sb.js +0 -1
- package/dist/showcase/assets/dropzone-v69fWHZJ.js +0 -1
- package/dist/showcase/assets/ellipsis-CgqPlt6Z.js +0 -1
- package/dist/showcase/assets/ellipsis-vertical-CiJqC0n2.js +0 -1
- package/dist/showcase/assets/empty-DYHzk-Gb.js +0 -1
- package/dist/showcase/assets/empty-item-CTwvC_3M.js +0 -49
- package/dist/showcase/assets/empty-state-eUgJ4h41.js +0 -188
- package/dist/showcase/assets/enhanced-activities-XU2u5gO6.js +0 -359
- package/dist/showcase/assets/esm-B7xAMXnv.js +0 -2
- package/dist/showcase/assets/event-calendar-D2rjpzq1.js +0 -138
- package/dist/showcase/assets/event-log-BxER62Ds.js +0 -326
- package/dist/showcase/assets/example-DPfw-R7_.js +0 -1
- package/dist/showcase/assets/external-link-DJNGkjZ0.js +0 -1
- package/dist/showcase/assets/eye-BQU3UqWi.js +0 -1
- package/dist/showcase/assets/feature-announcement-CjGQEODB.js +0 -34
- package/dist/showcase/assets/file-DBpbC8g-.js +0 -1
- package/dist/showcase/assets/file-text-DokBif5V.js +0 -1
- package/dist/showcase/assets/filters-DM2olMKy.js +0 -78
- package/dist/showcase/assets/flag-hAuZbHU1.js +0 -1
- package/dist/showcase/assets/folder-open-DqubQ0ts.js +0 -1
- package/dist/showcase/assets/form-sizing-CfbZF8Ja.js +0 -1
- package/dist/showcase/assets/format-gCABLair.js +0 -1
- package/dist/showcase/assets/forms-FsAT0C-I.js +0 -790
- package/dist/showcase/assets/generic-BUuo7j09.js +0 -1
- package/dist/showcase/assets/getPseudoElementBounds-l8uxcPNL.js +0 -1
- package/dist/showcase/assets/gift-CS7Tg3kD.js +0 -1
- package/dist/showcase/assets/giftcard-cards-h1ffLs9F.js +0 -85
- package/dist/showcase/assets/git-branch-D4-6vv6t.js +0 -1
- package/dist/showcase/assets/global-search-BUyhhsQv.js +0 -90
- package/dist/showcase/assets/globe-CqLYhUfl.js +0 -1
- package/dist/showcase/assets/gradient-card-Bwr9OLIL.js +0 -58
- package/dist/showcase/assets/header-notifications-BWla1yhM.js +0 -1
- package/dist/showcase/assets/heart-DfZtXfIP.js +0 -1
- package/dist/showcase/assets/house-DhIReDt8.js +0 -1
- package/dist/showcase/assets/icon-badge-BgRFYZEc.js +0 -1
- package/dist/showcase/assets/image-D_eNEZWQ.js +0 -1
- package/dist/showcase/assets/inbox-5sFkO7gC.js +0 -1
- package/dist/showcase/assets/index-B-Z7p0So.js +0 -10
- package/dist/showcase/assets/inertValue-NU_Amr-x.js +0 -1
- package/dist/showcase/assets/info-DyB6KH3Z.js +0 -1
- package/dist/showcase/assets/inline-stat-D2aaM1Vt.js +0 -1
- package/dist/showcase/assets/input-BS64kyoq.js +0 -1
- package/dist/showcase/assets/input-DWLyniGt.js +0 -1
- package/dist/showcase/assets/input-group-BS8j5Eek.js +0 -47
- package/dist/showcase/assets/input-group-B_E_3EGS.js +0 -1
- package/dist/showcase/assets/inputs-DOQ2foig.js +0 -49
- package/dist/showcase/assets/invoice-header-C2-uQE_s.js +0 -36
- package/dist/showcase/assets/invoice-items-BUunRJqA.js +0 -36
- package/dist/showcase/assets/invoice-mini-BrLMrzN6.js +0 -14
- package/dist/showcase/assets/invoice-table-CaB9Z8jI.js +0 -30
- package/dist/showcase/assets/isSameDay-rwvIyLOL.js +0 -1
- package/dist/showcase/assets/isToday-CIAzBrb5.js +0 -1
- package/dist/showcase/assets/italic-B02a4PdD.js +0 -1
- package/dist/showcase/assets/item-C-0RObvI.js +0 -117
- package/dist/showcase/assets/item-CCu0Ufaq.js +0 -1
- package/dist/showcase/assets/item-DF4m_56j.js +0 -1
- package/dist/showcase/assets/kanban-BgW23a7P.js +0 -175
- package/dist/showcase/assets/label-MdV7pglj.js +0 -1
- package/dist/showcase/assets/layout-containers-nKVReEJB.js +0 -96
- package/dist/showcase/assets/layout-header-CKyxHHPC.js +0 -170
- package/dist/showcase/assets/layout-page-ClD2yMnK.js +0 -122
- package/dist/showcase/assets/layout-sidebar-jdQnYDiT.js +0 -224
- package/dist/showcase/assets/layout-users-Cv849xnU.js +0 -104
- package/dist/showcase/assets/lib-BHW4JERQ.js +0 -1
- package/dist/showcase/assets/lock-B8bfl9sZ.js +0 -1
- package/dist/showcase/assets/mail-DmOBTX4I.js +0 -1
- package/dist/showcase/assets/map-ButgRl8f.js +0 -124
- package/dist/showcase/assets/map-pin-o3egisLq.js +0 -1
- package/dist/showcase/assets/menus-DdXgYKVA.js +0 -89
- package/dist/showcase/assets/message-square-Bl6P4TA0.js +0 -1
- package/dist/showcase/assets/metadata-list-aXo96h_U.js +0 -278
- package/dist/showcase/assets/metric-BLHKuZtE.js +0 -1
- package/dist/showcase/assets/metric-grid-6Dpj5eV3.js +0 -1
- package/dist/showcase/assets/metric-trend-chip-m389ipmG.js +0 -1
- package/dist/showcase/assets/metrics-analytics-bar-B-1IUlHf.js +0 -44
- package/dist/showcase/assets/metrics-analytics-cards-B8tvK_RB.js +0 -77
- package/dist/showcase/assets/metrics-comparison-DKJ7Js3F.js +0 -76
- package/dist/showcase/assets/metrics-heatmap-BlRnJoI0.js +0 -27
- package/dist/showcase/assets/metrics-inline-badge-COI7f64X.js +0 -17
- package/dist/showcase/assets/metrics-kpi-row-LRfmKhsy.js +0 -31
- package/dist/showcase/assets/metrics-micro-grid-DmqIQVVR.js +0 -42
- package/dist/showcase/assets/metrics-overview-Dbf5RM2k.js +0 -192
- package/dist/showcase/assets/metrics-stat-cards-D5oevQvv.js +0 -54
- package/dist/showcase/assets/minus-D-jmUi0G.js +0 -1
- package/dist/showcase/assets/money-display-C__61373.js +0 -1
- package/dist/showcase/assets/month-year-picker-BfBQePUY.js +0 -1
- package/dist/showcase/assets/navigation-DUAe-sQV.js +0 -86
- package/dist/showcase/assets/navigation-extras-itSAf6QT.js +0 -43
- package/dist/showcase/assets/navigation-fAOvwIlP.js +0 -230
- package/dist/showcase/assets/onboarding-checklist-1gmzk3_J.js +0 -119
- package/dist/showcase/assets/overlays-BMTBOIEI.js +0 -88
- package/dist/showcase/assets/overlays-Lu16yJWM.js +0 -393
- package/dist/showcase/assets/package-BIa1hPVQ.js +0 -1
- package/dist/showcase/assets/page-action-button-C5NiQHnP.js +0 -1
- package/dist/showcase/assets/page-header-Cwf9DuhD.js +0 -1
- package/dist/showcase/assets/pagination-9iSNmdCx.js +0 -1
- package/dist/showcase/assets/pagination-MjniF-7j.js +0 -42
- package/dist/showcase/assets/paperclip-CaNLUOIA.js +0 -1
- package/dist/showcase/assets/pencil-DTLGPoc_.js +0 -1
- package/dist/showcase/assets/phone-XvU6LndA.js +0 -1
- package/dist/showcase/assets/plus-BDSCn8ol.js +0 -1
- package/dist/showcase/assets/popover-CvhuubS6.js +0 -1
- package/dist/showcase/assets/popover-DUQqLZN2.js +0 -1
- package/dist/showcase/assets/popover-menu-DVGBuFpL.js +0 -1
- package/dist/showcase/assets/progress-BQopCRpV.js +0 -1
- package/dist/showcase/assets/progress-CvSUR260.js +0 -18
- package/dist/showcase/assets/props-table-BzUnIcv-.js +0 -1
- package/dist/showcase/assets/quote-D55lkoXn.js +0 -1
- package/dist/showcase/assets/receipt-D3ilhl9U.js +0 -1
- package/dist/showcase/assets/refresh-cw-Csl2LQ4l.js +0 -1
- package/dist/showcase/assets/resolveValueLabel-CM5i142y.js +0 -1
- package/dist/showcase/assets/rich-text-editor-Bz7jWvPv.js +0 -124
- package/dist/showcase/assets/rich-text-editor-DWKFpgNI.js +0 -141
- package/dist/showcase/assets/rotate-ccw-BnkpK7eq.js +0 -1
- package/dist/showcase/assets/scroll-area-BTVLd58j.js +0 -1
- package/dist/showcase/assets/scroll-area-CgFEDepJ.js +0 -32
- package/dist/showcase/assets/select-B7-tZDlG.js +0 -1
- package/dist/showcase/assets/send-BhjEdZ06.js +0 -1
- package/dist/showcase/assets/separator-CJayjKGP.js +0 -28
- package/dist/showcase/assets/separator-CZ_sPWQj.js +0 -1
- package/dist/showcase/assets/settings-Duj7gAZe.js +0 -1
- package/dist/showcase/assets/sheet-BMabZ_Gj.js +0 -1
- package/dist/showcase/assets/shield-C22sWOf4.js +0 -1
- package/dist/showcase/assets/shield-alert-DgZ6UO46.js +0 -1
- package/dist/showcase/assets/shield-check-jGSgmijm.js +0 -1
- package/dist/showcase/assets/shopping-bag-Cd09Ga6D.js +0 -1
- package/dist/showcase/assets/sidebar.context-CXTHS3vn.js +0 -1
- package/dist/showcase/assets/skeleton-Dmp4eC1A.js +0 -1
- package/dist/showcase/assets/skeleton-FLNbc7QP.js +0 -29
- package/dist/showcase/assets/smart-card-50WN9sCI.js +0 -1
- package/dist/showcase/assets/sonner-DR_DYpqb.js +0 -22
- package/dist/showcase/assets/sortable.esm-C_l8_Iqt.js +0 -5
- package/dist/showcase/assets/sparkles-C-fyahzv.js +0 -1
- package/dist/showcase/assets/spinner-B8jgVQNj.js +0 -30
- package/dist/showcase/assets/spinner-C4zPRpI0.js +0 -49
- package/dist/showcase/assets/spinner-DFjHsQlR.js +0 -1
- package/dist/showcase/assets/square-pen-Dp7lCfI3.js +0 -1
- package/dist/showcase/assets/stacked-avatars-CTckbUiW.js +0 -1
- package/dist/showcase/assets/star-l00ivfkD.js +0 -1
- package/dist/showcase/assets/startOfDay-Xmododib.js +0 -1
- package/dist/showcase/assets/styles-zuwR0q1z.js +0 -1
- package/dist/showcase/assets/switch-D3LrIrTQ.js +0 -1
- package/dist/showcase/assets/switch-ylXVyh_N.js +0 -1
- package/dist/showcase/assets/table-Cn3-19zb.js +0 -1
- package/dist/showcase/assets/table-ao3IcAnF.js +0 -390
- package/dist/showcase/assets/tabs-CTLQKtiu.js +0 -19
- package/dist/showcase/assets/tabs-lc1fX94A.js +0 -1
- package/dist/showcase/assets/text-button-Fu8UY1A8.js +0 -1
- package/dist/showcase/assets/text-link--EyGasJN.js +0 -1
- package/dist/showcase/assets/textarea-BdhnlNrF.js +0 -1
- package/dist/showcase/assets/textarea-D1kG3a9B.js +0 -1
- package/dist/showcase/assets/timelines-DF3tNgyG.js +0 -186
- package/dist/showcase/assets/toggle-group-CfxuWsv9.js +0 -1
- package/dist/showcase/assets/toggles-CacdBPlV.js +0 -71
- package/dist/showcase/assets/toggles-group-CRhgTGmL.js +0 -32
- package/dist/showcase/assets/trash-2-B0_GprQM.js +0 -1
- package/dist/showcase/assets/trending-up-B202l1b6.js +0 -1
- package/dist/showcase/assets/truck-Bl1pNrHi.js +0 -1
- package/dist/showcase/assets/typography-DEtOxBlR.js +0 -214
- package/dist/showcase/assets/ui-badge-n4RA0J5b.js +0 -28
- package/dist/showcase/assets/ui-card-Ck-kzrTh.js +0 -30
- package/dist/showcase/assets/ui-table-gzOp82pf.js +0 -42
- package/dist/showcase/assets/upload-tray-VvKdTZSi.js +0 -138
- package/dist/showcase/assets/useAnchoredPopupScrollLock-Cu2ZwN7Z.js +0 -1
- package/dist/showcase/assets/useCollapsiblePanel-C6_cdQ7B.js +0 -1
- package/dist/showcase/assets/useCompositeItem-BfUPqXoj.js +0 -1
- package/dist/showcase/assets/useCompositeListItem-Cf2lpKB8.js +0 -1
- package/dist/showcase/assets/useControlled-C6q3nmcf.js +0 -1
- package/dist/showcase/assets/useLabelableId-CfPT16c1.js +0 -1
- package/dist/showcase/assets/useOpenInteractionType-CGeqRuuY.js +0 -1
- package/dist/showcase/assets/useRender-CoUlh0uZ.js +0 -1
- package/dist/showcase/assets/useRole-DSPUSyVX.js +0 -1
- package/dist/showcase/assets/useTriggerFocusGuards-BwZ1HD24.js +0 -1
- package/dist/showcase/assets/useValueChanged-Dej794I1.js +0 -1
- package/dist/showcase/assets/user-3L762Mec.js +0 -1
- package/dist/showcase/assets/user-plus-9WRYjS04.js +0 -1
- package/dist/showcase/assets/users-CxKZ7gt8.js +0 -1
- package/dist/showcase/assets/vendor-profile-BaCptdMF.js +0 -37
- package/dist/showcase/assets/wrench-Duh91tnW.js +0 -1
- package/dist/showcase/assets/x-t42iKYpL.js +0 -1
- package/dist/showcase/assets/zap-D0z3Tv_L.js +0 -1
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
import { useStrings as e } from "../lib/strings.js";
|
|
2
|
+
import { cn as t } from "../lib/utils.js";
|
|
3
|
+
import { t as n } from "./text-DIxMTECE.js";
|
|
4
|
+
import { t as r } from "./heading-BprqyzDs.js";
|
|
5
|
+
import { t as i } from "./badge-BVCh_hfL.js";
|
|
6
|
+
import { i as a, t as o } from "./button-ChCkwoOD.js";
|
|
7
|
+
import { a as s, g as c, r as l, t as u } from "./dropdown-menu-4nxEBMnd.js";
|
|
8
|
+
import { t as d } from "./separator-DR0uUMKa.js";
|
|
9
|
+
import { Fragment as f, useCallback as p, useEffect as m, useLayoutEffect as h, useMemo as g, useRef as _, useState as v } from "react";
|
|
10
|
+
import { Fragment as y, jsx as b, jsxs as x } from "react/jsx-runtime";
|
|
11
|
+
import { ChevronDown as S, Globe as C, MoreHorizontal as w } from "lucide-react";
|
|
12
|
+
//#region src/components/base/navigation/language-switcher.tsx
|
|
13
|
+
function T({ locales: e, onRenderLabel: n, variant: r = "buttons", onSelect: i }) {
|
|
14
|
+
let a = p((e, t) => {
|
|
15
|
+
t || i?.(e);
|
|
16
|
+
}, [i]);
|
|
17
|
+
return e.length === 0 ? null : r === "inline" ? /* @__PURE__ */ x("div", {
|
|
18
|
+
className: t("language-switcher--component", "flex items-center justify-center gap-2.5"),
|
|
19
|
+
children: [/* @__PURE__ */ b(C, {
|
|
20
|
+
className: "size-4 text-muted-foreground/70",
|
|
21
|
+
"aria-hidden": "true"
|
|
22
|
+
}), /* @__PURE__ */ b("div", {
|
|
23
|
+
className: "flex items-center justify-center gap-2.5",
|
|
24
|
+
children: e.map((r, i) => {
|
|
25
|
+
let o = n ? n(r) : r.nativeLabel;
|
|
26
|
+
return /* @__PURE__ */ x(f, { children: [/* @__PURE__ */ b("button", {
|
|
27
|
+
type: "button",
|
|
28
|
+
onClick: () => a(r.value, r.active),
|
|
29
|
+
className: t("text-xs transition-colors", r.active ? "text-primary font-medium" : "text-muted-foreground hover:text-foreground"),
|
|
30
|
+
children: o
|
|
31
|
+
}), i < e.length - 1 && /* @__PURE__ */ b("span", {
|
|
32
|
+
"aria-hidden": "true",
|
|
33
|
+
className: "size-1 rounded-full bg-border"
|
|
34
|
+
})] }, r.value);
|
|
35
|
+
})
|
|
36
|
+
})]
|
|
37
|
+
}) : /* @__PURE__ */ b("div", {
|
|
38
|
+
className: "flex flex-wrap items-center justify-center gap-2",
|
|
39
|
+
children: e.map((e) => {
|
|
40
|
+
let r = n ? n(e) : e.nativeLabel;
|
|
41
|
+
return /* @__PURE__ */ b(o, {
|
|
42
|
+
type: "button",
|
|
43
|
+
variant: "secondary",
|
|
44
|
+
buttonStyle: e.active ? "solid" : "ghost",
|
|
45
|
+
onClick: () => a(e.value, e.active),
|
|
46
|
+
className: t("min-w-[4.5rem] justify-center transition-colors", e.active ? "font-semibold text-primary" : "text-muted-foreground"),
|
|
47
|
+
children: r
|
|
48
|
+
}, e.value);
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
T.displayName = "LanguageSwitcher";
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region src/components/base/navigation/aside-navigation-menu.tsx
|
|
55
|
+
function E(e) {
|
|
56
|
+
if (e.length === 0) return "/";
|
|
57
|
+
try {
|
|
58
|
+
let t = typeof window < "u" ? window.location.origin : "http://localhost", n = new URL(e, t).pathname.replace(/\/+$/, "");
|
|
59
|
+
return n.length > 0 ? n : "/";
|
|
60
|
+
} catch {
|
|
61
|
+
let t = (e.split("?")[0] ?? e).replace(/\/+$/, "");
|
|
62
|
+
return t.length > 0 ? t : "/";
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
function D({ items: e, currentPath: n, activeClassName: r, itemClassName: i }) {
|
|
66
|
+
let o = E(n ?? (typeof window < "u" ? window.location.pathname : "")), s = typeof r == "string" && r.length > 0 ? r : "bg-muted", c = e.map((e) => ({
|
|
67
|
+
item: e,
|
|
68
|
+
normalizedPath: E(e.href)
|
|
69
|
+
})), l = c.filter(({ normalizedPath: e }) => o === e || o.startsWith(`${e}/`)).sort((e, t) => t.normalizedPath.length - e.normalizedPath.length)[0]?.normalizedPath ?? null;
|
|
70
|
+
return /* @__PURE__ */ b("nav", {
|
|
71
|
+
className: t("aside-navigation-menu--component", "flex flex-col space-y-1 space-x-0"),
|
|
72
|
+
children: c.map(({ item: e, normalizedPath: n }) => /* @__PURE__ */ b(a, {
|
|
73
|
+
variant: "secondary",
|
|
74
|
+
buttonStyle: "ghost",
|
|
75
|
+
size: "sm",
|
|
76
|
+
fullWidth: !0,
|
|
77
|
+
className: t("justify-start", i, n === l ? s : null),
|
|
78
|
+
nativeButton: !1,
|
|
79
|
+
render: (t) => /* @__PURE__ */ b("a", {
|
|
80
|
+
...t,
|
|
81
|
+
href: e.href
|
|
82
|
+
}),
|
|
83
|
+
children: e.title
|
|
84
|
+
}, e.href))
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
D.displayName = "AsideNavigationMenu";
|
|
88
|
+
//#endregion
|
|
89
|
+
//#region src/components/base/navigation/navigation-tabs.tsx
|
|
90
|
+
var O = { tabsAria: "Tabs" };
|
|
91
|
+
function k({ items: n, currentUrl: r, strings: i }) {
|
|
92
|
+
let a = e(O, i), o = r ?? (typeof window < "u" ? window.location.pathname : "/"), s = (e) => {
|
|
93
|
+
try {
|
|
94
|
+
return new URL(e, window.location.origin).pathname.replace(/\/+$/, "");
|
|
95
|
+
} catch {
|
|
96
|
+
return e.replace(/\/+$/, "").split("?")[0];
|
|
97
|
+
}
|
|
98
|
+
}, c = s(o);
|
|
99
|
+
return /* @__PURE__ */ b("div", {
|
|
100
|
+
className: t("navigation-tabs--component", "navigation-tabs-container w-full my-5"),
|
|
101
|
+
children: /* @__PURE__ */ b("nav", {
|
|
102
|
+
className: "inline-flex bg-muted rounded-4xl items-center gap-3 p-3",
|
|
103
|
+
"aria-label": a.tabsAria,
|
|
104
|
+
children: n.map((e) => {
|
|
105
|
+
let n = c === s(e.url);
|
|
106
|
+
return /* @__PURE__ */ b("a", {
|
|
107
|
+
href: e.url,
|
|
108
|
+
className: t("whitespace-nowrap flex items-center gap-1 leading-tight rounded-full border border-transparent px-4 py-1.5 text-sm bg-background text-foreground hover:text-background hover:bg-primary transition-all duration-150", { "!bg-primary !text-background font-semibold": n }),
|
|
109
|
+
children: e.label
|
|
110
|
+
}, e.url);
|
|
111
|
+
})
|
|
112
|
+
})
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
k.displayName = "NavigationTabs";
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region src/components/base/navigation/tab-navigation-menu.tsx
|
|
118
|
+
function A({ items: e, currentPath: n, className: r, ariaLabel: i = "Tab navigation" }) {
|
|
119
|
+
let a = n ?? (typeof window < "u" ? window.location.pathname : ""), o = g(() => e.map((e) => {
|
|
120
|
+
let t = a === e.href, n = null;
|
|
121
|
+
if (typeof e.icon == "string") n = /* @__PURE__ */ b("span", {
|
|
122
|
+
className: "text-inherit",
|
|
123
|
+
children: e.icon
|
|
124
|
+
});
|
|
125
|
+
else if (e.icon) {
|
|
126
|
+
let t = e.icon;
|
|
127
|
+
n = /* @__PURE__ */ b(t, { className: "h-4 w-4" });
|
|
128
|
+
}
|
|
129
|
+
return {
|
|
130
|
+
key: e.href,
|
|
131
|
+
item: e,
|
|
132
|
+
isActive: t,
|
|
133
|
+
iconNode: n,
|
|
134
|
+
ariaCurrent: t ? "page" : void 0
|
|
135
|
+
};
|
|
136
|
+
}), [a, e]);
|
|
137
|
+
return /* @__PURE__ */ b("div", {
|
|
138
|
+
className: t("tab-navigation-menu--component", "w-full", r),
|
|
139
|
+
children: /* @__PURE__ */ b("nav", {
|
|
140
|
+
className: "inline-flex bg-muted rounded-full items-center gap-1 p-1",
|
|
141
|
+
"aria-label": i,
|
|
142
|
+
children: o.map(({ key: e, item: n, isActive: r, iconNode: i, ariaCurrent: a }) => /* @__PURE__ */ x("a", {
|
|
143
|
+
href: n.href,
|
|
144
|
+
className: t("whitespace-nowrap flex items-center gap-2", "rounded-full px-4 py-2", "text-sm font-medium", "transition-all duration-200", "focus-visible:outline-none focus-visible:ring-2", "focus-visible:ring-ring focus-visible:ring-offset-2", {
|
|
145
|
+
"bg-background text-foreground shadow-sm": r,
|
|
146
|
+
"text-muted-foreground hover:text-foreground hover:bg-background/50": !r
|
|
147
|
+
}),
|
|
148
|
+
"aria-current": a,
|
|
149
|
+
children: [
|
|
150
|
+
!!i && /* @__PURE__ */ b("span", {
|
|
151
|
+
className: "text-inherit",
|
|
152
|
+
children: i
|
|
153
|
+
}),
|
|
154
|
+
n.title,
|
|
155
|
+
!!n.badge && /* @__PURE__ */ b("span", {
|
|
156
|
+
className: t("ml-1.5 rounded-full px-2 py-0.5 text-xs font-medium", r ? "bg-primary/10 text-primary" : "bg-muted-foreground/10 text-muted-foreground"),
|
|
157
|
+
children: n.badge
|
|
158
|
+
})
|
|
159
|
+
]
|
|
160
|
+
}, e))
|
|
161
|
+
})
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
A.displayName = "TabNavigationMenu";
|
|
165
|
+
//#endregion
|
|
166
|
+
//#region src/components/base/navigation/page-header/page-header.tsx
|
|
167
|
+
function j({ eyebrow: e, title: a, description: o, badge: s, breadcrumbs: c, actions: l, children: u, className: f, withSeparator: p = !0 }) {
|
|
168
|
+
return /* @__PURE__ */ x("header", {
|
|
169
|
+
className: t("page-header--component", "w-full", f),
|
|
170
|
+
children: [
|
|
171
|
+
!!c && /* @__PURE__ */ b("div", {
|
|
172
|
+
className: "mb-3",
|
|
173
|
+
children: c
|
|
174
|
+
}),
|
|
175
|
+
/* @__PURE__ */ x("div", {
|
|
176
|
+
className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",
|
|
177
|
+
children: [/* @__PURE__ */ x("div", {
|
|
178
|
+
className: "min-w-0 flex-1",
|
|
179
|
+
children: [
|
|
180
|
+
!!e && /* @__PURE__ */ b(n, {
|
|
181
|
+
size: "xxs",
|
|
182
|
+
type: "secondary",
|
|
183
|
+
weight: "semibold",
|
|
184
|
+
className: "mb-1 uppercase tracking-wider",
|
|
185
|
+
children: e
|
|
186
|
+
}),
|
|
187
|
+
/* @__PURE__ */ x("div", {
|
|
188
|
+
className: "flex items-center gap-2",
|
|
189
|
+
children: [/* @__PURE__ */ b(r, {
|
|
190
|
+
tag: "h2",
|
|
191
|
+
className: "text-2xl border-0 pb-0",
|
|
192
|
+
children: a
|
|
193
|
+
}), !!s && /* @__PURE__ */ b(i, {
|
|
194
|
+
variant: s.variant ?? "secondary",
|
|
195
|
+
children: s.label
|
|
196
|
+
})]
|
|
197
|
+
}),
|
|
198
|
+
!!o && /* @__PURE__ */ b(n, {
|
|
199
|
+
type: "secondary",
|
|
200
|
+
className: "mt-1 max-w-2xl",
|
|
201
|
+
children: o
|
|
202
|
+
})
|
|
203
|
+
]
|
|
204
|
+
}), !!l && /* @__PURE__ */ b("div", {
|
|
205
|
+
className: "flex shrink-0 items-center gap-2",
|
|
206
|
+
children: l
|
|
207
|
+
})]
|
|
208
|
+
}),
|
|
209
|
+
!!u && /* @__PURE__ */ b("div", {
|
|
210
|
+
className: "mt-4",
|
|
211
|
+
children: u
|
|
212
|
+
}),
|
|
213
|
+
!!p && /* @__PURE__ */ b(d, { className: "mt-4" })
|
|
214
|
+
]
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
j.displayName = "PageHeader";
|
|
218
|
+
//#endregion
|
|
219
|
+
//#region src/components/base/navigation/section-nav/section-nav.tsx
|
|
220
|
+
function M({ items: e, rootMargin: r = "-40% 0px -50% 0px", className: i, onSelect: a }) {
|
|
221
|
+
let [o, s] = v(e[0]?.id ?? null);
|
|
222
|
+
return m(() => {
|
|
223
|
+
let t = new IntersectionObserver((e) => {
|
|
224
|
+
let t = e.find((e) => e.isIntersecting);
|
|
225
|
+
t?.target.id && s(t.target.id);
|
|
226
|
+
}, {
|
|
227
|
+
rootMargin: r,
|
|
228
|
+
threshold: 0
|
|
229
|
+
});
|
|
230
|
+
return e.forEach((e) => {
|
|
231
|
+
let n = document.getElementById(e.id);
|
|
232
|
+
n && t.observe(n);
|
|
233
|
+
}), () => t.disconnect();
|
|
234
|
+
}, [e, r]), /* @__PURE__ */ b("nav", {
|
|
235
|
+
className: t("section-nav--component", "flex flex-col gap-0.5", i),
|
|
236
|
+
"aria-label": "Section navigation",
|
|
237
|
+
children: e.map((e) => {
|
|
238
|
+
let r = e.icon, i = o === e.id;
|
|
239
|
+
return /* @__PURE__ */ x("a", {
|
|
240
|
+
href: `#${e.id}`,
|
|
241
|
+
onClick: (t) => {
|
|
242
|
+
t.preventDefault(), document.getElementById(e.id)?.scrollIntoView({
|
|
243
|
+
behavior: "smooth",
|
|
244
|
+
block: "start"
|
|
245
|
+
}), s(e.id), a?.(e.id);
|
|
246
|
+
},
|
|
247
|
+
className: t("flex items-center gap-2 rounded-md px-2 py-1.5 transition-colors", i ? "bg-primary/10 text-primary" : "text-muted-foreground hover:bg-muted/50 hover:text-foreground"),
|
|
248
|
+
children: [!!r && /* @__PURE__ */ b(r, { className: "size-3.5 shrink-0" }), /* @__PURE__ */ b(n, {
|
|
249
|
+
tag: "span",
|
|
250
|
+
weight: i ? "semibold" : "medium",
|
|
251
|
+
children: e.label
|
|
252
|
+
})]
|
|
253
|
+
}, e.id);
|
|
254
|
+
})
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
M.displayName = "SectionNav";
|
|
258
|
+
//#endregion
|
|
259
|
+
//#region src/components/base/navigation/side-nav.tsx
|
|
260
|
+
function N(e) {
|
|
261
|
+
if (e.length === 0) return "/";
|
|
262
|
+
try {
|
|
263
|
+
let t = typeof window < "u" ? window.location.origin : "http://localhost", n = new URL(e, t).pathname.replace(/\/+$/, "");
|
|
264
|
+
return n.length > 0 ? n : "/";
|
|
265
|
+
} catch {
|
|
266
|
+
let t = (e.split("?")[0] ?? e).replace(/\/+$/, "");
|
|
267
|
+
return t.length > 0 ? t : "/";
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
function P({ groups: e, currentPath: r, className: a, itemClassName: o, activeItemClassName: s, ariaLabel: c = "Side navigation" }) {
|
|
271
|
+
let l = N(r ?? (typeof window < "u" ? window.location.pathname : "")), u = g(() => e.flatMap((e) => e.items.map((t) => ({
|
|
272
|
+
groupId: e.id,
|
|
273
|
+
normalizedPath: N(t.href)
|
|
274
|
+
}))), [e]).filter(({ normalizedPath: e }) => l === e || l.startsWith(`${e}/`)).sort((e, t) => t.normalizedPath.length - e.normalizedPath.length)[0]?.normalizedPath ?? null, [d, f] = v(() => Object.fromEntries(e.map((e) => [e.id, !!e.defaultCollapsed]))), p = (e) => f((t) => ({
|
|
275
|
+
...t,
|
|
276
|
+
[e]: !t[e]
|
|
277
|
+
})), m = s && s.length > 0 ? s : "bg-primary/5 text-primary";
|
|
278
|
+
return /* @__PURE__ */ b("nav", {
|
|
279
|
+
className: t("side-nav--component", "flex flex-col gap-4", a),
|
|
280
|
+
"aria-label": c,
|
|
281
|
+
children: e.map((e) => {
|
|
282
|
+
let r = e.collapsible !== !1 && d[e.id], a = !!e.label, s = !r;
|
|
283
|
+
return /* @__PURE__ */ x("div", {
|
|
284
|
+
className: "flex flex-col gap-1",
|
|
285
|
+
children: [!!a && (e.collapsible === !1 ? /* @__PURE__ */ b(n, {
|
|
286
|
+
tag: "div",
|
|
287
|
+
size: "xs",
|
|
288
|
+
type: "secondary",
|
|
289
|
+
weight: "medium",
|
|
290
|
+
className: "px-3 py-1.5 uppercase tracking-wider",
|
|
291
|
+
children: e.label
|
|
292
|
+
}) : /* @__PURE__ */ x("button", {
|
|
293
|
+
type: "button",
|
|
294
|
+
onClick: () => p(e.id),
|
|
295
|
+
className: t("flex w-full items-center justify-between px-3 py-1.5 rounded-md", "text-xs font-medium uppercase tracking-wider text-muted-foreground", "hover:text-foreground transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40"),
|
|
296
|
+
"aria-expanded": !r,
|
|
297
|
+
children: [/* @__PURE__ */ b("span", { children: e.label }), /* @__PURE__ */ b(S, {
|
|
298
|
+
className: t("size-3.5 transition-transform", r && "-rotate-90"),
|
|
299
|
+
"aria-hidden": "true"
|
|
300
|
+
})]
|
|
301
|
+
})), !!s && /* @__PURE__ */ b("div", {
|
|
302
|
+
className: "flex flex-col gap-0.5",
|
|
303
|
+
children: e.items.map((e) => {
|
|
304
|
+
let n = e.icon, r = N(e.href) === u;
|
|
305
|
+
return /* @__PURE__ */ x("a", {
|
|
306
|
+
href: e.disabled ? void 0 : e.href,
|
|
307
|
+
"aria-current": r ? "page" : void 0,
|
|
308
|
+
"aria-disabled": e.disabled || void 0,
|
|
309
|
+
className: t("group flex items-center gap-2.5 rounded-md px-3 py-1.5", "text-sm transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40", "hover:bg-muted/60", e.disabled && "pointer-events-none opacity-50", r && m, o),
|
|
310
|
+
children: [
|
|
311
|
+
!!n && /* @__PURE__ */ b(n, { className: t("size-4 shrink-0", r ? "text-primary" : "text-muted-foreground") }),
|
|
312
|
+
/* @__PURE__ */ b("span", {
|
|
313
|
+
className: "min-w-0 flex-1 truncate",
|
|
314
|
+
children: e.label
|
|
315
|
+
}),
|
|
316
|
+
!!e.badge && /* @__PURE__ */ b(i, {
|
|
317
|
+
variant: r ? "primary" : "secondary",
|
|
318
|
+
className: "shrink-0",
|
|
319
|
+
children: e.badge
|
|
320
|
+
})
|
|
321
|
+
]
|
|
322
|
+
}, e.href);
|
|
323
|
+
})
|
|
324
|
+
})]
|
|
325
|
+
}, e.id);
|
|
326
|
+
})
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
P.displayName = "SideNav";
|
|
330
|
+
//#endregion
|
|
331
|
+
//#region src/components/base/navigation/overflow-tab-bar.tsx
|
|
332
|
+
var F = "inline-flex items-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium whitespace-nowrap transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40";
|
|
333
|
+
function I({ items: e, value: n, onChange: r, className: i, tabClassName: a, activeTabClassName: o, moreLabel: d = "More", ariaLabel: f = "Tab navigation" }) {
|
|
334
|
+
let p = _(null), m = _(null), [S, C] = v(e.length);
|
|
335
|
+
h(() => {
|
|
336
|
+
if (!p.current || !m.current) return;
|
|
337
|
+
let e = p.current, t = m.current, n = () => {
|
|
338
|
+
let n = e.clientWidth, r = Array.from(t.querySelectorAll("[data-tab-id]")), i = 0, a = 0;
|
|
339
|
+
for (let e of r) {
|
|
340
|
+
let t = e.offsetWidth + 4;
|
|
341
|
+
if (i + t + 72 <= n) i += t, a += 1;
|
|
342
|
+
else break;
|
|
343
|
+
}
|
|
344
|
+
C(a === r.length ? a : Math.max(1, a));
|
|
345
|
+
};
|
|
346
|
+
n();
|
|
347
|
+
let r = new ResizeObserver(n);
|
|
348
|
+
return r.observe(e), () => r.disconnect();
|
|
349
|
+
}, [e]);
|
|
350
|
+
let T = g(() => {
|
|
351
|
+
if (!n) return e;
|
|
352
|
+
let t = e.findIndex((e) => e.id === n);
|
|
353
|
+
if (t < 0 || t < S) return e;
|
|
354
|
+
let r = [...e], i = Math.max(0, S - 1);
|
|
355
|
+
return [r[t], r[i]] = [r[i], r[t]], r;
|
|
356
|
+
}, [
|
|
357
|
+
e,
|
|
358
|
+
n,
|
|
359
|
+
S
|
|
360
|
+
]), E = T.slice(0, S), D = T.slice(S), O = (e) => {
|
|
361
|
+
r?.(e.id), e.onClick?.();
|
|
362
|
+
}, k = (e, n) => {
|
|
363
|
+
let r = e.icon, i = t(F, n ? t("bg-card text-foreground shadow-sm", o) : "text-muted-foreground hover:bg-muted/60", a), s = /* @__PURE__ */ x(y, { children: [
|
|
364
|
+
!!r && /* @__PURE__ */ b(r, { className: "size-3.5" }),
|
|
365
|
+
/* @__PURE__ */ b("span", { children: e.label }),
|
|
366
|
+
!!e.badge && /* @__PURE__ */ b("span", {
|
|
367
|
+
className: t("ml-1 inline-flex items-center rounded-full px-1.5 py-0.5 text-xxs font-semibold", n ? "bg-primary/10 text-primary" : "bg-muted-foreground/10 text-muted-foreground"),
|
|
368
|
+
children: e.badge
|
|
369
|
+
})
|
|
370
|
+
] });
|
|
371
|
+
return e.href ? /* @__PURE__ */ b("a", {
|
|
372
|
+
href: e.href,
|
|
373
|
+
"data-tab-id": e.id,
|
|
374
|
+
"aria-current": n ? "page" : void 0,
|
|
375
|
+
onClick: () => O(e),
|
|
376
|
+
className: t("overflow-tab-bar--component", i),
|
|
377
|
+
children: s
|
|
378
|
+
}, e.id) : /* @__PURE__ */ b("button", {
|
|
379
|
+
type: "button",
|
|
380
|
+
"data-tab-id": e.id,
|
|
381
|
+
"aria-pressed": n,
|
|
382
|
+
onClick: () => O(e),
|
|
383
|
+
className: i,
|
|
384
|
+
children: s
|
|
385
|
+
}, e.id);
|
|
386
|
+
};
|
|
387
|
+
return /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b("div", {
|
|
388
|
+
ref: m,
|
|
389
|
+
"aria-hidden": "true",
|
|
390
|
+
className: "absolute -top-[9999px] left-0 inline-flex items-center gap-1 invisible",
|
|
391
|
+
children: e.map((e) => k(e, !1))
|
|
392
|
+
}), /* @__PURE__ */ x("div", {
|
|
393
|
+
ref: p,
|
|
394
|
+
role: "tablist",
|
|
395
|
+
"aria-label": f,
|
|
396
|
+
className: t("relative inline-flex items-center gap-1 rounded-lg bg-muted/40 p-1", i),
|
|
397
|
+
children: [E.map((e) => k(e, e.id === n)), D.length > 0 && /* @__PURE__ */ x(u, { children: [/* @__PURE__ */ x(c, {
|
|
398
|
+
type: "button",
|
|
399
|
+
"aria-label": d,
|
|
400
|
+
className: t(F, "text-muted-foreground hover:bg-muted/60"),
|
|
401
|
+
children: [/* @__PURE__ */ b(w, { className: "size-3.5" }), /* @__PURE__ */ b("span", { children: d })]
|
|
402
|
+
}), /* @__PURE__ */ b(l, {
|
|
403
|
+
align: "end",
|
|
404
|
+
className: "min-w-[160px]",
|
|
405
|
+
children: D.map((e) => {
|
|
406
|
+
let r = e.icon;
|
|
407
|
+
return /* @__PURE__ */ x(s, {
|
|
408
|
+
onClick: () => O(e),
|
|
409
|
+
className: t("text-xs gap-1.5 px-2 py-1.5", e.id === n && "bg-primary/5 text-primary"),
|
|
410
|
+
children: [!!r && /* @__PURE__ */ b(r, { className: "size-3.5" }), /* @__PURE__ */ b("span", { children: e.label })]
|
|
411
|
+
}, e.id);
|
|
412
|
+
})
|
|
413
|
+
})] })]
|
|
414
|
+
})] });
|
|
415
|
+
}
|
|
416
|
+
I.displayName = "OverflowTabBar";
|
|
417
|
+
//#endregion
|
|
418
|
+
export { A as a, T as c, j as i, P as n, k as o, M as r, D as s, I as t };
|
|
419
|
+
|
|
420
|
+
//# sourceMappingURL=navigation-Do9k5Xh1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation-Do9k5Xh1.js","names":[],"sources":["../../src/components/base/navigation/language-switcher.tsx","../../src/components/base/navigation/aside-navigation-menu.tsx","../../src/components/base/navigation/navigation-tabs.tsx","../../src/components/base/navigation/tab-navigation-menu.tsx","../../src/components/base/navigation/page-header/page-header.tsx","../../src/components/base/navigation/section-nav/section-nav.tsx","../../src/components/base/navigation/side-nav.tsx","../../src/components/base/navigation/overflow-tab-bar.tsx"],"sourcesContent":["/**\n * LanguageSwitcher — locale picker with two layouts: `buttons` (chunky\n * primary buttons) and `inline` (small text links separated by dots, prefixed\n * with a globe icon). Defaults to `buttons`.\n *\n * The library never navigates on its own. The consumer wires routing /\n * locale switching by passing `onSelect` (e.g. a Tanstack Router\n * `navigate(...)` or Inertia `router.visit(...)`). When `onSelect` is\n * absent the click is a no-op.\n */\nimport { Globe } from 'lucide-react';\nimport { Fragment, useCallback } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { cn } from '@/lib/utils';\nimport type { LocaleOption } from '@/types/locale.types';\n\ninterface LanguageSwitcherProps {\n\tlocales: LocaleOption[];\n\tonRenderLabel?: (options: LocaleOption) => string;\n\tvariant?: 'buttons' | 'inline';\n\tonSelect?: (value: string) => void;\n}\n\nexport function LanguageSwitcher({\n\tlocales,\n\tonRenderLabel,\n\tvariant = 'buttons',\n\tonSelect,\n}: LanguageSwitcherProps) {\n\tconst handleSelect = useCallback((value: string, isActive: boolean) => {\n\t\tif (isActive) {\n\t\t\treturn;\n\t\t}\n\n\t\tonSelect?.(value);\n\t}, [onSelect]);\n\n\tif (locales.length === 0) {\n\t\treturn null;\n\t}\n\n\tif (variant === 'inline') {\n\t\treturn (\n\t\t\t<div className={cn('language-switcher--component', 'flex items-center justify-center gap-2.5')}>\n\t\t\t\t<Globe className=\"size-4 text-muted-foreground/70\" aria-hidden=\"true\" />\n\t\t\t\t<div className=\"flex items-center justify-center gap-2.5\">\n\t\t\t\t\t{locales.map((locale, index) => {\n\t\t\t\t\t\tconst label = onRenderLabel\n\t\t\t\t\t\t\t? onRenderLabel(locale)\n\t\t\t\t\t\t\t: locale.nativeLabel;\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Fragment key={locale.value}>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\thandleSelect(locale.value, locale.active)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'text-xs transition-colors',\n\t\t\t\t\t\t\t\t\t\tlocale.active\n\t\t\t\t\t\t\t\t\t\t\t? 'text-primary font-medium'\n\t\t\t\t\t\t\t\t\t\t\t: 'text-muted-foreground hover:text-foreground',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t{index < locales.length - 1 && (\n\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"size-1 rounded-full bg-border\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className=\"flex flex-wrap items-center justify-center gap-2\">\n\t\t\t{locales.map((locale) => {\n\t\t\t\tconst label = onRenderLabel ? onRenderLabel(locale) : locale.nativeLabel;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tkey={locale.value}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle={locale.active ? 'solid' : 'ghost'}\n\t\t\t\t\t\tonClick={() => handleSelect(locale.value, locale.active)}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'min-w-[4.5rem] justify-center transition-colors',\n\t\t\t\t\t\t\tlocale.active ? 'font-semibold text-primary' : 'text-muted-foreground',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{label}\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n}\n\nLanguageSwitcher.displayName = 'LanguageSwitcher';\n","/**\n * AsideNavigationMenu — vertical list of navigation links with active-state\n * highlight. Active item is matched by deepest path prefix so nested routes\n * still highlight their parent. Pass `currentPath` explicitly when SSR-ing or\n * when the consuming router does not update `window.location` synchronously.\n */\nimport { BaseButton } from '@/components/base/buttons';\nimport { cn } from '@/lib/utils';\nimport { type NavItem } from '@/types';\n\ninterface AsideNavigationMenuProps {\n\titems: NavItem[];\n\tcurrentPath?: string;\n\tactiveClassName?: string;\n\titemClassName?: string;\n}\n\nfunction normalizePath(rawUrl: string): string {\n\tif (rawUrl.length === 0) {\n\t\treturn '/';\n\t}\n\n\ttry {\n\t\tconst baseOrigin =\n\t\t\ttypeof window !== 'undefined'\n\t\t\t\t? window.location.origin\n\t\t\t\t: 'http://localhost';\n\t\tconst parsed = new URL(rawUrl, baseOrigin);\n\t\tconst trimmed = parsed.pathname.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t} catch {\n\t\tconst clean = rawUrl.split('?')[0] ?? rawUrl;\n\t\tconst trimmed = clean.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t}\n}\n\nexport default function AsideNavigationMenu({\n\titems,\n\tcurrentPath,\n\tactiveClassName,\n\titemClassName,\n}: AsideNavigationMenuProps) {\n\tconst rawActivePath = currentPath ?? (typeof window !== 'undefined' ? window.location.pathname : '');\n\tconst activePath = normalizePath(rawActivePath);\n\tconst resolvedActiveClassName =\n\t\ttypeof activeClassName === 'string' && activeClassName.length > 0\n\t\t\t? activeClassName\n\t\t\t: 'bg-muted';\n\tconst normalizedItems = items.map((item) => ({\n\t\titem,\n\t\tnormalizedPath: normalizePath(item.href),\n\t}));\n\n\tconst activeItemPath =\n\t\tnormalizedItems\n\t\t\t.filter(\n\t\t\t\t({ normalizedPath }) =>\n\t\t\t\t\tactivePath === normalizedPath ||\n\t\t\t\t\tactivePath.startsWith(`${normalizedPath}/`),\n\t\t\t)\n\t\t\t.sort((a, b) => b.normalizedPath.length - a.normalizedPath.length)[0]\n\t\t\t?.normalizedPath ?? null;\n\n\treturn (\n\t\t<nav className={cn('aside-navigation-menu--component', 'flex flex-col space-y-1 space-x-0')}>\n\t\t\t{normalizedItems.map(({ item, normalizedPath }) => {\n\t\t\t\tconst isActive = normalizedPath === activeItemPath;\n\n\t\t\t\treturn (\n\t\t\t\t\t<BaseButton\n\t\t\t\t\t\tkey={item.href}\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'justify-start',\n\t\t\t\t\t\t\titemClassName,\n\t\t\t\t\t\t\tisActive ? resolvedActiveClassName : null,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tnativeButton={false}\n\t\t\t\t\t\trender={(renderProps) => (\n\t\t\t\t\t\t\t<a {...renderProps} href={item.href} />\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{item.title}\n\t\t\t\t\t</BaseButton>\n\t\t\t\t);\n\t\t\t})}\n\t\t</nav>\n\t);\n}\n\nAsideNavigationMenu.displayName = 'AsideNavigationMenu';\n","/**\n * NavigationTabs — large pill tab strip for prominent in-page navigation.\n * Active tab gets full-primary fill with inverse text. Lighter-weight\n * alternative is `TabNavigationMenu` (compact card-style pills).\n */\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nexport interface NavigationTabItem {\n\tlabel: string;\n\tto: string;\n}\n\nexport interface NavigationTabsItem {\n\tlabel: string;\n\turl: string;\n\tactive?: boolean;\n}\n\nexport interface NavigationTabsStrings {\n\ttabsAria: string;\n}\n\nexport const defaultNavigationTabsStrings: NavigationTabsStrings = {\n\ttabsAria: 'Tabs',\n};\n\ninterface NavigationTabsProps {\n\titems: NavigationTabsItem[];\n\tcurrentUrl?: string;\n\tstrings?: StringsProp<NavigationTabsStrings>;\n}\n\nfunction NavigationTabs({ items, currentUrl: currentUrlProp, strings: stringsProp }: NavigationTabsProps) {\n\tconst strings = useStrings(defaultNavigationTabsStrings, stringsProp);\n\tconst url = currentUrlProp ?? (typeof window !== 'undefined' ? window.location.pathname : '/');\n\n\tconst normalizeUrl = (rawUrl: string): string => {\n\t\ttry {\n\t\t\tconst urlObj = new URL(rawUrl, window.location.origin);\n\t\t\treturn urlObj.pathname.replace(/\\/+$/, '');\n\t\t} catch {\n\t\t\treturn rawUrl.replace(/\\/+$/, '').split('?')[0];\n\t\t}\n\t};\n\n\tconst currentUrl = normalizeUrl(url);\n\n\tconst clsDefault = 'whitespace-nowrap flex items-center gap-1 leading-tight rounded-full border border-transparent px-4 py-1.5 text-sm bg-background text-foreground hover:text-background hover:bg-primary transition-all duration-150';\n\treturn (\n\t\t<div className={cn('navigation-tabs--component', 'navigation-tabs-container w-full my-5')}>\n\t\t\t<nav className=\"inline-flex bg-muted rounded-4xl items-center gap-3 p-3\" aria-label={strings.tabsAria}>\n\t\t\t\t{items.map((item) => {\n\t\t\t\t\tconst itemUrl = normalizeUrl(item.url);\n\t\t\t\t\tconst isActive = currentUrl === itemUrl;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={item.url}\n\t\t\t\t\t\t\tkey={item.url}\n\t\t\t\t\t\t\tclassName={cn(clsDefault, {\n\t\t\t\t\t\t\t\t'!bg-primary !text-background font-semibold': isActive,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t</a>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</nav>\n\t\t</div>\n\t);\n}\n\nexport default NavigationTabs;\n\nNavigationTabs.displayName = 'NavigationTabs';\n","/**\n * TabNavigationMenu — pill-style horizontal navigation. Active tab gets the\n * elevated card background; inactive tabs hover into a translucent variant.\n * Supports optional badges and per-item icons (Lucide component or string).\n */\nimport { useMemo, type ReactNode } from 'react';\n\nimport { cn } from '@/lib/utils';\nimport { type NavItem } from '@/types';\n\ninterface TabNavigationMenuProps {\n\titems: NavItem[];\n\tcurrentPath?: string;\n\tclassName?: string;\n\tariaLabel?: string;\n}\n\nfunction TabNavigationMenu({ items, currentPath, className, ariaLabel = 'Tab navigation' }: TabNavigationMenuProps) {\n\tconst activePath = currentPath ?? (typeof window !== 'undefined' ? window.location.pathname : '');\n\n\tconst normalizedItems = useMemo(() => {\n\t\treturn items.map((item) => {\n\t\t\tconst isActive = activePath === item.href;\n\t\t\tlet iconNode: ReactNode = null;\n\n\t\t\tif (typeof item.icon === 'string') {\n\t\t\t\ticonNode = <span className=\"text-inherit\">{item.icon}</span>;\n\t\t\t} else if (item.icon) {\n\t\t\t\tconst IconComp = item.icon;\n\t\t\t\ticonNode = <IconComp className=\"h-4 w-4\" />;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tkey: item.href,\n\t\t\t\titem,\n\t\t\t\tisActive,\n\t\t\t\ticonNode,\n\t\t\t\tariaCurrent: isActive ? ('page' as const) : undefined,\n\t\t\t};\n\t\t});\n\t}, [activePath, items]);\n\n\treturn (\n\t\t<div className={cn('tab-navigation-menu--component', 'w-full', className)}>\n\t\t\t<nav className=\"inline-flex bg-muted rounded-full items-center gap-1 p-1\" aria-label={ariaLabel}>\n\t\t\t\t{normalizedItems.map(({ key, item, isActive, iconNode, ariaCurrent }) => (\n\t\t\t\t\t<a\n\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\thref={item.href}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'whitespace-nowrap flex items-center gap-2',\n\t\t\t\t\t\t\t'rounded-full px-4 py-2',\n\t\t\t\t\t\t\t'text-sm font-medium',\n\t\t\t\t\t\t\t'transition-all duration-200',\n\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2',\n\t\t\t\t\t\t\t'focus-visible:ring-ring focus-visible:ring-offset-2',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'bg-background text-foreground shadow-sm': isActive,\n\t\t\t\t\t\t\t\t'text-muted-foreground hover:text-foreground hover:bg-background/50': !isActive,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t)}\n\t\t\t\t\t\taria-current={ariaCurrent}\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!iconNode && (\n\t\t\t\t\t\t\t<span className=\"text-inherit\">\n\t\t\t\t\t\t\t\t{iconNode}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{item.title}\n\t\t\t\t\t\t{!!item.badge && (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'ml-1.5 rounded-full px-2 py-0.5 text-xs font-medium',\n\t\t\t\t\t\t\t\t\tisActive\n\t\t\t\t\t\t\t\t\t\t? 'bg-primary/10 text-primary'\n\t\t\t\t\t\t\t\t\t\t: 'bg-muted-foreground/10 text-muted-foreground',\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{item.badge}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</a>\n\t\t\t\t))}\n\t\t\t</nav>\n\t\t</div>\n\t);\n}\n\nTabNavigationMenu.displayName = 'TabNavigationMenu';\n\nexport default TabNavigationMenu;\n\n","/**\n * PageHeader — section / page heading with optional eyebrow, breadcrumbs slot,\n * description, status badge, and a row of action buttons. Designed to sit at the top\n * of every dashboard or detail page for consistent vertical rhythm.\n */\nimport type { ReactNode } from 'react';\nimport Heading from '@/components/typography/heading';\nimport { Text } from '@/components/typography';\nimport { Badge, type ComposedBadgeVariant } from '@/components/base/badge';\nimport { Separator } from '@/components/base/display/separator';\nimport { cn } from '@/lib/utils';\n\nexport interface PageHeaderProps {\n\teyebrow?: ReactNode;\n\ttitle: ReactNode;\n\tdescription?: ReactNode;\n\tbadge?: { label: string; variant?: ComposedBadgeVariant };\n\tbreadcrumbs?: ReactNode;\n\tactions?: ReactNode;\n\tchildren?: ReactNode;\n\tclassName?: string;\n\twithSeparator?: boolean;\n}\n\nexport function PageHeader({\n\teyebrow,\n\ttitle,\n\tdescription,\n\tbadge,\n\tbreadcrumbs,\n\tactions,\n\tchildren,\n\tclassName,\n\twithSeparator = true,\n}: PageHeaderProps) {\n\treturn (\n\t\t<header className={cn('page-header--component', 'w-full', className)}>\n\t\t\t{!!breadcrumbs && <div className=\"mb-3\">{breadcrumbs}</div>}\n\n\t\t\t<div className=\"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between\">\n\t\t\t\t<div className=\"min-w-0 flex-1\">\n\t\t\t\t\t{!!eyebrow && (\n\t\t\t\t\t\t<Text size=\"xxs\" type=\"secondary\" weight=\"semibold\" className=\"mb-1 uppercase tracking-wider\">\n\t\t\t\t\t\t\t{eyebrow}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t\t<div className=\"flex items-center gap-2\">\n\t\t\t\t\t\t<Heading tag=\"h2\" className=\"text-2xl border-0 pb-0\">{title}</Heading>\n\t\t\t\t\t\t{!!badge && (\n\t\t\t\t\t\t\t<Badge variant={badge.variant ?? 'secondary'}>{badge.label}</Badge>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t<Text type=\"secondary\" className=\"mt-1 max-w-2xl\">{description}</Text>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{!!actions && <div className=\"flex shrink-0 items-center gap-2\">{actions}</div>}\n\t\t\t</div>\n\n\t\t\t{!!children && <div className=\"mt-4\">{children}</div>}\n\n\t\t\t{!!withSeparator && <Separator className=\"mt-4\" />}\n\t\t</header>\n\t);\n}\n\nPageHeader.displayName = 'PageHeader';\n","/**\n * SectionNav — sticky in-page anchor nav. Pass a list of section ids; the active one\n * is tracked via IntersectionObserver and the matching item is highlighted. Click to\n * scroll to that section. Pure JS — no router required.\n */\nimport { useEffect, useState } from 'react';\nimport type { LucideIcon } from 'lucide-react';\nimport { Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nexport interface SectionNavItem {\n\tid: string;\n\tlabel: string;\n\ticon?: LucideIcon;\n}\n\nexport interface SectionNavProps {\n\titems: SectionNavItem[];\n\trootMargin?: string;\n\tclassName?: string;\n\tonSelect?: (id: string) => void;\n}\n\nexport function SectionNav({ items, rootMargin = '-40% 0px -50% 0px', className, onSelect }: SectionNavProps) {\n\tconst [active, setActive] = useState<string | null>(items[0]?.id ?? null);\n\n\tuseEffect(() => {\n\t\tconst obs = new IntersectionObserver(\n\t\t\t(entries) => {\n\t\t\t\tconst visible = entries.find((e) => e.isIntersecting);\n\t\t\t\tif (visible?.target.id) setActive(visible.target.id);\n\t\t\t},\n\t\t\t{ rootMargin, threshold: 0 },\n\t\t);\n\t\titems.forEach((it) => {\n\t\t\tconst el = document.getElementById(it.id);\n\t\t\tif (el) obs.observe(el);\n\t\t});\n\t\treturn () => obs.disconnect();\n\t}, [items, rootMargin]);\n\n\treturn (\n\t\t<nav className={cn('section-nav--component', 'flex flex-col gap-0.5', className)} aria-label=\"Section navigation\">\n\t\t\t{items.map((it) => {\n\t\t\t\tconst Icon = it.icon;\n\t\t\t\tconst isActive = active === it.id;\n\t\t\t\treturn (\n\t\t\t\t\t<a\n\t\t\t\t\t\tkey={it.id}\n\t\t\t\t\t\thref={`#${it.id}`}\n\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\tdocument.getElementById(it.id)?.scrollIntoView({ behavior: 'smooth', block: 'start' });\n\t\t\t\t\t\t\tsetActive(it.id);\n\t\t\t\t\t\t\tonSelect?.(it.id);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'flex items-center gap-2 rounded-md px-2 py-1.5 transition-colors',\n\t\t\t\t\t\t\tisActive ? 'bg-primary/10 text-primary' : 'text-muted-foreground hover:bg-muted/50 hover:text-foreground',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!Icon && <Icon className=\"size-3.5 shrink-0\" />}\n\t\t\t\t\t\t<Text tag=\"span\" weight={isActive ? 'semibold' : 'medium'}>{it.label}</Text>\n\t\t\t\t\t</a>\n\t\t\t\t);\n\t\t\t})}\n\t\t</nav>\n\t);\n}\n\nSectionNav.displayName = 'SectionNav';\n","/**\n * SideNav — collapsible vertical sidebar navigation. Items can be grouped\n * with a heading and optionally collapsed; each item supports an icon, badge,\n * and active-state highlight. The active item is matched by deepest path\n * prefix so nested routes still highlight their parent group.\n *\n * Use this when AsideNavigationMenu (flat) is not enough — e.g. settings\n * panes with multiple sections, or a primary app nav with collapsible groups.\n */\nimport { ChevronDown, type LucideIcon } from 'lucide-react';\nimport { useMemo, useState, type ReactNode } from 'react';\n\nimport { Badge } from '@/components/base/badge';\nimport { Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nexport interface SideNavItem {\n\tlabel: ReactNode;\n\thref: string;\n\ticon?: LucideIcon;\n\tbadge?: ReactNode;\n\tdisabled?: boolean;\n}\n\nexport interface SideNavGroup {\n\tid: string;\n\tlabel?: ReactNode;\n\titems: SideNavItem[];\n\tdefaultCollapsed?: boolean;\n\tcollapsible?: boolean;\n}\n\nexport interface SideNavProps {\n\t/** Groups of items. Pass a single group with no `label` for an ungrouped list. */\n\tgroups: SideNavGroup[];\n\tcurrentPath?: string;\n\tclassName?: string;\n\titemClassName?: string;\n\tactiveItemClassName?: string;\n\tariaLabel?: string;\n}\n\nfunction normalizePath(rawUrl: string): string {\n\tif (rawUrl.length === 0) return '/';\n\ttry {\n\t\tconst baseOrigin = typeof window !== 'undefined' ? window.location.origin : 'http://localhost';\n\t\tconst parsed = new URL(rawUrl, baseOrigin);\n\t\tconst trimmed = parsed.pathname.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t} catch {\n\t\tconst clean = rawUrl.split('?')[0] ?? rawUrl;\n\t\tconst trimmed = clean.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t}\n}\n\nexport function SideNav({\n\tgroups,\n\tcurrentPath,\n\tclassName,\n\titemClassName,\n\tactiveItemClassName,\n\tariaLabel = 'Side navigation',\n}: SideNavProps) {\n\tconst rawActivePath = currentPath ?? (typeof window !== 'undefined' ? window.location.pathname : '');\n\tconst activePath = normalizePath(rawActivePath);\n\n\tconst allNormalized = useMemo(() => {\n\t\treturn groups.flatMap((g) =>\n\t\t\tg.items.map((item) => ({ groupId: g.id, normalizedPath: normalizePath(item.href) })),\n\t\t);\n\t}, [groups]);\n\n\tconst activeNormalized =\n\t\tallNormalized\n\t\t\t.filter(\n\t\t\t\t({ normalizedPath }) =>\n\t\t\t\t\tactivePath === normalizedPath || activePath.startsWith(`${normalizedPath}/`),\n\t\t\t)\n\t\t\t.sort((a, b) => b.normalizedPath.length - a.normalizedPath.length)[0]?.normalizedPath ??\n\t\tnull;\n\n\tconst [collapsed, setCollapsed] = useState<Record<string, boolean>>(() =>\n\t\tObject.fromEntries(groups.map((g) => [g.id, Boolean(g.defaultCollapsed)])),\n\t);\n\n\tconst toggleGroup = (id: string) =>\n\t\tsetCollapsed((prev) => ({ ...prev, [id]: !prev[id] }));\n\n\tconst resolvedActive =\n\t\tactiveItemClassName && activeItemClassName.length > 0\n\t\t\t? activeItemClassName\n\t\t\t: 'bg-primary/5 text-primary';\n\n\treturn (\n\t\t<nav className={cn('side-nav--component', 'flex flex-col gap-4', className)} aria-label={ariaLabel}>\n\t\t\t{groups.map((group) => {\n\t\t\t\tconst isCollapsed = group.collapsible !== false && collapsed[group.id];\n\t\t\t\tconst showLabel = !!group.label;\n\t\t\t\tconst shouldRenderItems = !isCollapsed;\n\n\t\t\t\treturn (\n\t\t\t\t\t<div key={group.id} className=\"flex flex-col gap-1\">\n\t\t\t\t\t\t{!!showLabel && (\n\t\t\t\t\t\t\tgroup.collapsible !== false ? (\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tonClick={() => toggleGroup(group.id)}\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'flex w-full items-center justify-between px-3 py-1.5 rounded-md',\n\t\t\t\t\t\t\t\t\t\t'text-xs font-medium uppercase tracking-wider text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t'hover:text-foreground transition-colors',\n\t\t\t\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\taria-expanded={!isCollapsed}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>{group.label}</span>\n\t\t\t\t\t\t\t\t\t<ChevronDown\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t'size-3.5 transition-transform',\n\t\t\t\t\t\t\t\t\t\t\tisCollapsed && '-rotate-90',\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\t\tweight=\"medium\"\n\t\t\t\t\t\t\t\t\tclassName=\"px-3 py-1.5 uppercase tracking-wider\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{group.label}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!shouldRenderItems && (\n\t\t\t\t\t\t\t<div className=\"flex flex-col gap-0.5\">\n\t\t\t\t\t\t\t\t{group.items.map((item) => {\n\t\t\t\t\t\t\t\t\tconst Icon = item.icon;\n\t\t\t\t\t\t\t\t\tconst itemPath = normalizePath(item.href);\n\t\t\t\t\t\t\t\t\tconst isActive = itemPath === activeNormalized;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tkey={item.href}\n\t\t\t\t\t\t\t\t\t\t\thref={item.disabled ? undefined : item.href}\n\t\t\t\t\t\t\t\t\t\t\taria-current={isActive ? 'page' : undefined}\n\t\t\t\t\t\t\t\t\t\t\taria-disabled={item.disabled || undefined}\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t'group flex items-center gap-2.5 rounded-md px-3 py-1.5',\n\t\t\t\t\t\t\t\t\t\t\t\t'text-sm transition-colors',\n\t\t\t\t\t\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40',\n\t\t\t\t\t\t\t\t\t\t\t\t'hover:bg-muted/60',\n\t\t\t\t\t\t\t\t\t\t\t\titem.disabled && 'pointer-events-none opacity-50',\n\t\t\t\t\t\t\t\t\t\t\t\tisActive && resolvedActive,\n\t\t\t\t\t\t\t\t\t\t\t\titemClassName,\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'size-4 shrink-0',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisActive ? 'text-primary' : 'text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"min-w-0 flex-1 truncate\">{item.label}</span>\n\t\t\t\t\t\t\t\t\t\t\t{!!item.badge && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Badge\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant={isActive ? 'primary' : 'secondary'}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"shrink-0\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{item.badge}\n\t\t\t\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</nav>\n\t);\n}\n\nSideNav.displayName = 'SideNav';\n","/**\n * OverflowTabBar — horizontal tab strip that gracefully degrades on narrow\n * containers. Tabs that would overflow are moved into a trailing \"More\"\n * dropdown so the strip never wraps. Uses a ResizeObserver to recompute on\n * container resize; the active tab is always kept visible by being moved\n * out of the overflow set when needed.\n *\n * Pair with `TabNavigationMenu` for fixed sets where overflow is impossible,\n * or with `NavigationTabs` for marketing-weight pill bars.\n */\nimport { MoreHorizontal, type LucideIcon } from 'lucide-react';\nimport { useEffect, useLayoutEffect, useMemo, useRef, useState, type ReactNode } from 'react';\n\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuItem,\n\tDropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu';\nimport { cn } from '@/lib/utils';\n\nexport interface OverflowTabItem {\n\tid: string;\n\tlabel: ReactNode;\n\thref?: string;\n\ticon?: LucideIcon;\n\tbadge?: ReactNode;\n\tonClick?: () => void;\n}\n\nexport interface OverflowTabBarProps {\n\titems: OverflowTabItem[];\n\t/** Currently active tab id. */\n\tvalue?: string;\n\tonChange?: (id: string) => void;\n\tclassName?: string;\n\ttabClassName?: string;\n\tactiveTabClassName?: string;\n\tmoreLabel?: string;\n\tariaLabel?: string;\n}\n\nconst TAB_BUTTON_BASE =\n\t'inline-flex items-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium whitespace-nowrap transition-colors ' +\n\t'hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40';\n\nexport function OverflowTabBar({\n\titems,\n\tvalue,\n\tonChange,\n\tclassName,\n\ttabClassName,\n\tactiveTabClassName,\n\tmoreLabel = 'More',\n\tariaLabel = 'Tab navigation',\n}: OverflowTabBarProps) {\n\tconst containerRef = useRef<HTMLDivElement | null>(null);\n\tconst measureRef = useRef<HTMLDivElement | null>(null);\n\tconst [visibleCount, setVisibleCount] = useState(items.length);\n\n\t// Recompute how many tabs fit when container or items change.\n\tuseLayoutEffect(() => {\n\t\tif (!containerRef.current || !measureRef.current) return;\n\t\tconst container = containerRef.current;\n\t\tconst measure = measureRef.current;\n\n\t\tconst compute = () => {\n\t\t\tconst containerWidth = container.clientWidth;\n\t\t\tconst moreReserve = 72; // approximate \"More\" trigger width\n\t\t\tconst buttons = Array.from(measure.querySelectorAll<HTMLElement>('[data-tab-id]'));\n\t\t\tlet used = 0;\n\t\t\tlet count = 0;\n\t\t\tfor (const btn of buttons) {\n\t\t\t\tconst w = btn.offsetWidth + 4; // gap allowance\n\t\t\t\tif (used + w + moreReserve <= containerWidth) {\n\t\t\t\t\tused += w;\n\t\t\t\t\tcount += 1;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tsetVisibleCount(count === buttons.length ? count : Math.max(1, count));\n\t\t};\n\n\t\tcompute();\n\t\tconst observer = new ResizeObserver(compute);\n\t\tobserver.observe(container);\n\t\treturn () => observer.disconnect();\n\t}, [items]);\n\n\t// Ensure active tab is always visible; if it falls into the overflow set,\n\t// pull it forward by reducing the visible count to where it lives.\n\tconst orderedItems = useMemo(() => {\n\t\tif (!value) return items;\n\t\tconst activeIdx = items.findIndex((i) => i.id === value);\n\t\tif (activeIdx < 0 || activeIdx < visibleCount) return items;\n\t\t// Move active item into the visible window (swap with last visible).\n\t\tconst next = [...items];\n\t\tconst lastVisibleIdx = Math.max(0, visibleCount - 1);\n\t\t[next[activeIdx], next[lastVisibleIdx]] = [next[lastVisibleIdx], next[activeIdx]];\n\t\treturn next;\n\t}, [items, value, visibleCount]);\n\n\tconst visibleItems = orderedItems.slice(0, visibleCount);\n\tconst overflowItems = orderedItems.slice(visibleCount);\n\n\tconst handleSelect = (item: OverflowTabItem) => {\n\t\tonChange?.(item.id);\n\t\titem.onClick?.();\n\t};\n\n\tconst renderTab = (item: OverflowTabItem, isActive: boolean) => {\n\t\tconst Icon = item.icon;\n\t\tconst className = cn(\n\t\t\tTAB_BUTTON_BASE,\n\t\t\tisActive\n\t\t\t\t? cn('bg-card text-foreground shadow-sm', activeTabClassName)\n\t\t\t\t: 'text-muted-foreground hover:bg-muted/60',\n\t\t\ttabClassName,\n\t\t);\n\t\tconst inner = (\n\t\t\t<>\n\t\t\t\t{!!Icon && <Icon className=\"size-3.5\" />}\n\t\t\t\t<span>{item.label}</span>\n\t\t\t\t{!!item.badge && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'ml-1 inline-flex items-center rounded-full px-1.5 py-0.5 text-xxs font-semibold',\n\t\t\t\t\t\t\tisActive ? 'bg-primary/10 text-primary' : 'bg-muted-foreground/10 text-muted-foreground',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{item.badge}\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t\tif (item.href) {\n\t\t\treturn (\n\t\t\t\t<a\n\t\t\t\t\tkey={item.id}\n\t\t\t\t\thref={item.href}\n\t\t\t\t\tdata-tab-id={item.id}\n\t\t\t\t\taria-current={isActive ? 'page' : undefined}\n\t\t\t\t\tonClick={() => handleSelect(item)}\n\t\t\t\t\tclassName={cn('overflow-tab-bar--component', className)}\n\t\t\t\t>\n\t\t\t\t\t{inner}\n\t\t\t\t</a>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<button\n\t\t\t\tkey={item.id}\n\t\t\t\ttype=\"button\"\n\t\t\t\tdata-tab-id={item.id}\n\t\t\t\taria-pressed={isActive}\n\t\t\t\tonClick={() => handleSelect(item)}\n\t\t\t\tclassName={className}\n\t\t\t>\n\t\t\t\t{inner}\n\t\t\t</button>\n\t\t);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{/* Hidden measure row: always renders all tabs at native width so\n\t\t\t we can measure how many fit. Visually hidden but laid out. */}\n\t\t\t<div\n\t\t\t\tref={measureRef}\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tclassName=\"absolute -top-[9999px] left-0 inline-flex items-center gap-1 invisible\"\n\t\t\t>\n\t\t\t\t{items.map((i) => renderTab(i, false))}\n\t\t\t</div>\n\n\t\t\t<div\n\t\t\t\tref={containerRef}\n\t\t\t\trole=\"tablist\"\n\t\t\t\taria-label={ariaLabel}\n\t\t\t\tclassName={cn('relative inline-flex items-center gap-1 rounded-lg bg-muted/40 p-1', className)}\n\t\t\t>\n\t\t\t\t{visibleItems.map((item) => renderTab(item, item.id === value))}\n\t\t\t\t{overflowItems.length > 0 && (\n\t\t\t\t\t<DropdownMenu>\n\t\t\t\t\t\t<DropdownMenuTrigger\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-label={moreLabel}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\tTAB_BUTTON_BASE,\n\t\t\t\t\t\t\t\t'text-muted-foreground hover:bg-muted/60',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<MoreHorizontal className=\"size-3.5\" />\n\t\t\t\t\t\t\t<span>{moreLabel}</span>\n\t\t\t\t\t\t</DropdownMenuTrigger>\n\t\t\t\t\t\t<DropdownMenuContent align=\"end\" className=\"min-w-[160px]\">\n\t\t\t\t\t\t\t{overflowItems.map((item) => {\n\t\t\t\t\t\t\t\tconst Icon = item.icon;\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\t\t\tonClick={() => handleSelect(item)}\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t'text-xs gap-1.5 px-2 py-1.5',\n\t\t\t\t\t\t\t\t\t\t\titem.id === value && 'bg-primary/5 text-primary',\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{!!Icon && <Icon className=\"size-3.5\" />}\n\t\t\t\t\t\t\t\t\t\t<span>{item.label}</span>\n\t\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</DropdownMenuContent>\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nOverflowTabBar.displayName = 'OverflowTabBar';\n\n// useEffect is referenced indirectly through useLayoutEffect above; keep the\n// import so SSR builds that fall back to useEffect still compile cleanly.\nvoid useEffect;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
require(`./chunk-D3uCBrYO.cjs`);const e=require(`../lib/strings.cjs`),t=require(`../lib/utils.cjs`),n=require(`./text-DBnY6fcL.cjs`),r=require(`./heading-mZc_jan1.cjs`),i=require(`./badge-C49SSz-6.cjs`),a=require(`./button-D0nF99a9.cjs`),o=require(`./dropdown-menu-DZlWHqWS.cjs`),s=require(`./separator-CN9zAJfs.cjs`);let c=require(`react`),l=require(`react/jsx-runtime`),u=require(`lucide-react`);function d({locales:e,onRenderLabel:n,variant:r=`buttons`,onSelect:i}){let o=(0,c.useCallback)((e,t)=>{t||i?.(e)},[i]);return e.length===0?null:r===`inline`?(0,l.jsxs)(`div`,{className:t.cn(`language-switcher--component`,`flex items-center justify-center gap-2.5`),children:[(0,l.jsx)(u.Globe,{className:`size-4 text-muted-foreground/70`,"aria-hidden":`true`}),(0,l.jsx)(`div`,{className:`flex items-center justify-center gap-2.5`,children:e.map((r,i)=>{let a=n?n(r):r.nativeLabel;return(0,l.jsxs)(c.Fragment,{children:[(0,l.jsx)(`button`,{type:`button`,onClick:()=>o(r.value,r.active),className:t.cn(`text-xs transition-colors`,r.active?`text-primary font-medium`:`text-muted-foreground hover:text-foreground`),children:a}),i<e.length-1&&(0,l.jsx)(`span`,{"aria-hidden":`true`,className:`size-1 rounded-full bg-border`})]},r.value)})})]}):(0,l.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:e.map(e=>{let r=n?n(e):e.nativeLabel;return(0,l.jsx)(a.t,{type:`button`,variant:`secondary`,buttonStyle:e.active?`solid`:`ghost`,onClick:()=>o(e.value,e.active),className:t.cn(`min-w-[4.5rem] justify-center transition-colors`,e.active?`font-semibold text-primary`:`text-muted-foreground`),children:r},e.value)})})}d.displayName=`LanguageSwitcher`;function f(e){if(e.length===0)return`/`;try{let t=typeof window<`u`?window.location.origin:`http://localhost`,n=new URL(e,t).pathname.replace(/\/+$/,``);return n.length>0?n:`/`}catch{let t=(e.split(`?`)[0]??e).replace(/\/+$/,``);return t.length>0?t:`/`}}function p({items:e,currentPath:n,activeClassName:r,itemClassName:i}){let o=f(n??(typeof window<`u`?window.location.pathname:``)),s=typeof r==`string`&&r.length>0?r:`bg-muted`,c=e.map(e=>({item:e,normalizedPath:f(e.href)})),u=c.filter(({normalizedPath:e})=>o===e||o.startsWith(`${e}/`)).sort((e,t)=>t.normalizedPath.length-e.normalizedPath.length)[0]?.normalizedPath??null;return(0,l.jsx)(`nav`,{className:t.cn(`aside-navigation-menu--component`,`flex flex-col space-y-1 space-x-0`),children:c.map(({item:e,normalizedPath:n})=>(0,l.jsx)(a.i,{variant:`secondary`,buttonStyle:`ghost`,size:`sm`,fullWidth:!0,className:t.cn(`justify-start`,i,n===u?s:null),nativeButton:!1,render:t=>(0,l.jsx)(`a`,{...t,href:e.href}),children:e.title},e.href))})}p.displayName=`AsideNavigationMenu`;var m={tabsAria:`Tabs`};function h({items:n,currentUrl:r,strings:i}){let a=e.useStrings(m,i),o=r??(typeof window<`u`?window.location.pathname:`/`),s=e=>{try{return new URL(e,window.location.origin).pathname.replace(/\/+$/,``)}catch{return e.replace(/\/+$/,``).split(`?`)[0]}},c=s(o);return(0,l.jsx)(`div`,{className:t.cn(`navigation-tabs--component`,`navigation-tabs-container w-full my-5`),children:(0,l.jsx)(`nav`,{className:`inline-flex bg-muted rounded-4xl items-center gap-3 p-3`,"aria-label":a.tabsAria,children:n.map(e=>{let n=c===s(e.url);return(0,l.jsx)(`a`,{href:e.url,className:t.cn(`whitespace-nowrap flex items-center gap-1 leading-tight rounded-full border border-transparent px-4 py-1.5 text-sm bg-background text-foreground hover:text-background hover:bg-primary transition-all duration-150`,{"!bg-primary !text-background font-semibold":n}),children:e.label},e.url)})})})}h.displayName=`NavigationTabs`;function g({items:e,currentPath:n,className:r,ariaLabel:i=`Tab navigation`}){let a=n??(typeof window<`u`?window.location.pathname:``),o=(0,c.useMemo)(()=>e.map(e=>{let t=a===e.href,n=null;if(typeof e.icon==`string`)n=(0,l.jsx)(`span`,{className:`text-inherit`,children:e.icon});else if(e.icon){let t=e.icon;n=(0,l.jsx)(t,{className:`h-4 w-4`})}return{key:e.href,item:e,isActive:t,iconNode:n,ariaCurrent:t?`page`:void 0}}),[a,e]);return(0,l.jsx)(`div`,{className:t.cn(`tab-navigation-menu--component`,`w-full`,r),children:(0,l.jsx)(`nav`,{className:`inline-flex bg-muted rounded-full items-center gap-1 p-1`,"aria-label":i,children:o.map(({key:e,item:n,isActive:r,iconNode:i,ariaCurrent:a})=>(0,l.jsxs)(`a`,{href:n.href,className:t.cn(`whitespace-nowrap flex items-center gap-2`,`rounded-full px-4 py-2`,`text-sm font-medium`,`transition-all duration-200`,`focus-visible:outline-none focus-visible:ring-2`,`focus-visible:ring-ring focus-visible:ring-offset-2`,{"bg-background text-foreground shadow-sm":r,"text-muted-foreground hover:text-foreground hover:bg-background/50":!r}),"aria-current":a,children:[!!i&&(0,l.jsx)(`span`,{className:`text-inherit`,children:i}),n.title,!!n.badge&&(0,l.jsx)(`span`,{className:t.cn(`ml-1.5 rounded-full px-2 py-0.5 text-xs font-medium`,r?`bg-primary/10 text-primary`:`bg-muted-foreground/10 text-muted-foreground`),children:n.badge})]},e))})})}g.displayName=`TabNavigationMenu`;function _({eyebrow:e,title:a,description:o,badge:c,breadcrumbs:u,actions:d,children:f,className:p,withSeparator:m=!0}){return(0,l.jsxs)(`header`,{className:t.cn(`page-header--component`,`w-full`,p),children:[!!u&&(0,l.jsx)(`div`,{className:`mb-3`,children:u}),(0,l.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,l.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[!!e&&(0,l.jsx)(n.t,{size:`xxs`,type:`secondary`,weight:`semibold`,className:`mb-1 uppercase tracking-wider`,children:e}),(0,l.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,l.jsx)(r.t,{tag:`h2`,className:`text-2xl border-0 pb-0`,children:a}),!!c&&(0,l.jsx)(i.t,{variant:c.variant??`secondary`,children:c.label})]}),!!o&&(0,l.jsx)(n.t,{type:`secondary`,className:`mt-1 max-w-2xl`,children:o})]}),!!d&&(0,l.jsx)(`div`,{className:`flex shrink-0 items-center gap-2`,children:d})]}),!!f&&(0,l.jsx)(`div`,{className:`mt-4`,children:f}),!!m&&(0,l.jsx)(s.t,{className:`mt-4`})]})}_.displayName=`PageHeader`;function v({items:e,rootMargin:r=`-40% 0px -50% 0px`,className:i,onSelect:a}){let[o,s]=(0,c.useState)(e[0]?.id??null);return(0,c.useEffect)(()=>{let t=new IntersectionObserver(e=>{let t=e.find(e=>e.isIntersecting);t?.target.id&&s(t.target.id)},{rootMargin:r,threshold:0});return e.forEach(e=>{let n=document.getElementById(e.id);n&&t.observe(n)}),()=>t.disconnect()},[e,r]),(0,l.jsx)(`nav`,{className:t.cn(`section-nav--component`,`flex flex-col gap-0.5`,i),"aria-label":`Section navigation`,children:e.map(e=>{let r=e.icon,i=o===e.id;return(0,l.jsxs)(`a`,{href:`#${e.id}`,onClick:t=>{t.preventDefault(),document.getElementById(e.id)?.scrollIntoView({behavior:`smooth`,block:`start`}),s(e.id),a?.(e.id)},className:t.cn(`flex items-center gap-2 rounded-md px-2 py-1.5 transition-colors`,i?`bg-primary/10 text-primary`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`),children:[!!r&&(0,l.jsx)(r,{className:`size-3.5 shrink-0`}),(0,l.jsx)(n.t,{tag:`span`,weight:i?`semibold`:`medium`,children:e.label})]},e.id)})})}v.displayName=`SectionNav`;function y(e){if(e.length===0)return`/`;try{let t=typeof window<`u`?window.location.origin:`http://localhost`,n=new URL(e,t).pathname.replace(/\/+$/,``);return n.length>0?n:`/`}catch{let t=(e.split(`?`)[0]??e).replace(/\/+$/,``);return t.length>0?t:`/`}}function b({groups:e,currentPath:r,className:a,itemClassName:o,activeItemClassName:s,ariaLabel:d=`Side navigation`}){let f=y(r??(typeof window<`u`?window.location.pathname:``)),p=(0,c.useMemo)(()=>e.flatMap(e=>e.items.map(t=>({groupId:e.id,normalizedPath:y(t.href)}))),[e]).filter(({normalizedPath:e})=>f===e||f.startsWith(`${e}/`)).sort((e,t)=>t.normalizedPath.length-e.normalizedPath.length)[0]?.normalizedPath??null,[m,h]=(0,c.useState)(()=>Object.fromEntries(e.map(e=>[e.id,!!e.defaultCollapsed]))),g=e=>h(t=>({...t,[e]:!t[e]})),_=s&&s.length>0?s:`bg-primary/5 text-primary`;return(0,l.jsx)(`nav`,{className:t.cn(`side-nav--component`,`flex flex-col gap-4`,a),"aria-label":d,children:e.map(e=>{let r=e.collapsible!==!1&&m[e.id],a=!!e.label,s=!r;return(0,l.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[!!a&&(e.collapsible===!1?(0,l.jsx)(n.t,{tag:`div`,size:`xs`,type:`secondary`,weight:`medium`,className:`px-3 py-1.5 uppercase tracking-wider`,children:e.label}):(0,l.jsxs)(`button`,{type:`button`,onClick:()=>g(e.id),className:t.cn(`flex w-full items-center justify-between px-3 py-1.5 rounded-md`,`text-xs font-medium uppercase tracking-wider text-muted-foreground`,`hover:text-foreground transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40`),"aria-expanded":!r,children:[(0,l.jsx)(`span`,{children:e.label}),(0,l.jsx)(u.ChevronDown,{className:t.cn(`size-3.5 transition-transform`,r&&`-rotate-90`),"aria-hidden":`true`})]})),!!s&&(0,l.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:e.items.map(e=>{let n=e.icon,r=y(e.href)===p;return(0,l.jsxs)(`a`,{href:e.disabled?void 0:e.href,"aria-current":r?`page`:void 0,"aria-disabled":e.disabled||void 0,className:t.cn(`group flex items-center gap-2.5 rounded-md px-3 py-1.5`,`text-sm transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40`,`hover:bg-muted/60`,e.disabled&&`pointer-events-none opacity-50`,r&&_,o),children:[!!n&&(0,l.jsx)(n,{className:t.cn(`size-4 shrink-0`,r?`text-primary`:`text-muted-foreground`)}),(0,l.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),!!e.badge&&(0,l.jsx)(i.t,{variant:r?`primary`:`secondary`,className:`shrink-0`,children:e.badge})]},e.href)})})]},e.id)})})}b.displayName=`SideNav`;var x=`inline-flex items-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium whitespace-nowrap transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40`;function S({items:e,value:n,onChange:r,className:i,tabClassName:a,activeTabClassName:s,moreLabel:d=`More`,ariaLabel:f=`Tab navigation`}){let p=(0,c.useRef)(null),m=(0,c.useRef)(null),[h,g]=(0,c.useState)(e.length);(0,c.useLayoutEffect)(()=>{if(!p.current||!m.current)return;let e=p.current,t=m.current,n=()=>{let n=e.clientWidth,r=Array.from(t.querySelectorAll(`[data-tab-id]`)),i=0,a=0;for(let e of r){let t=e.offsetWidth+4;if(i+t+72<=n)i+=t,a+=1;else break}g(a===r.length?a:Math.max(1,a))};n();let r=new ResizeObserver(n);return r.observe(e),()=>r.disconnect()},[e]);let _=(0,c.useMemo)(()=>{if(!n)return e;let t=e.findIndex(e=>e.id===n);if(t<0||t<h)return e;let r=[...e],i=Math.max(0,h-1);return[r[t],r[i]]=[r[i],r[t]],r},[e,n,h]),v=_.slice(0,h),y=_.slice(h),b=e=>{r?.(e.id),e.onClick?.()},S=(e,n)=>{let r=e.icon,i=t.cn(x,n?t.cn(`bg-card text-foreground shadow-sm`,s):`text-muted-foreground hover:bg-muted/60`,a),o=(0,l.jsxs)(l.Fragment,{children:[!!r&&(0,l.jsx)(r,{className:`size-3.5`}),(0,l.jsx)(`span`,{children:e.label}),!!e.badge&&(0,l.jsx)(`span`,{className:t.cn(`ml-1 inline-flex items-center rounded-full px-1.5 py-0.5 text-xxs font-semibold`,n?`bg-primary/10 text-primary`:`bg-muted-foreground/10 text-muted-foreground`),children:e.badge})]});return e.href?(0,l.jsx)(`a`,{href:e.href,"data-tab-id":e.id,"aria-current":n?`page`:void 0,onClick:()=>b(e),className:t.cn(`overflow-tab-bar--component`,i),children:o},e.id):(0,l.jsx)(`button`,{type:`button`,"data-tab-id":e.id,"aria-pressed":n,onClick:()=>b(e),className:i,children:o},e.id)};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{ref:m,"aria-hidden":`true`,className:`absolute -top-[9999px] left-0 inline-flex items-center gap-1 invisible`,children:e.map(e=>S(e,!1))}),(0,l.jsxs)(`div`,{ref:p,role:`tablist`,"aria-label":f,className:t.cn(`relative inline-flex items-center gap-1 rounded-lg bg-muted/40 p-1`,i),children:[v.map(e=>S(e,e.id===n)),y.length>0&&(0,l.jsxs)(o.t,{children:[(0,l.jsxs)(o.g,{type:`button`,"aria-label":d,className:t.cn(x,`text-muted-foreground hover:bg-muted/60`),children:[(0,l.jsx)(u.MoreHorizontal,{className:`size-3.5`}),(0,l.jsx)(`span`,{children:d})]}),(0,l.jsx)(o.r,{align:`end`,className:`min-w-[160px]`,children:y.map(e=>{let r=e.icon;return(0,l.jsxs)(o.a,{onClick:()=>b(e),className:t.cn(`text-xs gap-1.5 px-2 py-1.5`,e.id===n&&`bg-primary/5 text-primary`),children:[!!r&&(0,l.jsx)(r,{className:`size-3.5`}),(0,l.jsx)(`span`,{children:e.label})]},e.id)})})]})]})]})}S.displayName=`OverflowTabBar`,Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return S}});
|
|
2
|
+
//# sourceMappingURL=navigation-QAAD3HJd.cjs.map
|