admin-ui-starter-kit 0.6.9 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/admin-ui-consumer-migration/SKILL.md +29 -1
- package/.agents/skills/admin-ui-consumer-migration/references/package-gap-surfaces.md +14 -0
- package/.agents/skills/admin-ui-consumer-migration/references/theme-overrides.md +172 -0
- package/.agents/skills/component-library-rules/SKILL.md +5 -4
- package/.agents/skills/component-library-rules/references/components/INDEX.json +22 -3
- package/.agents/skills/component-library-rules/references/components/INDEX.md +21 -2
- package/.agents/skills/component-library-rules/references/components/base__avatar.md +3 -3
- package/.agents/skills/component-library-rules/references/components/base__carousel.md +8 -5
- package/.agents/skills/component-library-rules/references/components/base__css-variables.md +1 -0
- package/.agents/skills/component-library-rules/references/components/base__currency.md +10 -11
- package/.agents/skills/component-library-rules/references/components/base__item.md +7 -7
- package/.agents/skills/component-library-rules/references/components/base__money-display.md +4 -0
- package/.agents/skills/component-library-rules/references/components/base__typography.md +3 -3
- package/.agents/skills/component-library-rules/references/components/composed__commerce-address-card.md +74 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-cart-summary.md +84 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-coupon-input.md +52 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-discount-stack.md +58 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-inventory-section.md +168 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-loyalty-points.md +60 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-order-status.md +62 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-payment-method.md +58 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-refund-status.md +58 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-seo-listing.md +106 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-shipment-tracking.md +65 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-subscription-summary.md +66 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-tax-breakdown.md +60 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-upcoming-booking.md +62 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce-voucher-entry.md +60 -0
- package/.agents/skills/component-library-rules/references/components/composed__commerce.md +29 -143
- package/.agents/skills/component-library-rules/references/components/features__products.md +18 -462
- package/.agents/skills/component-library-rules/references/components/features__products__actions.md +37 -0
- package/.agents/skills/component-library-rules/references/components/features__products__support-rail.md +73 -0
- package/.agents/skills/component-library-rules/references/components/features__products__variant-details.md +97 -0
- package/.agents/skills/component-library-rules/references/components/features__products__variant-management.md +269 -0
- package/.agents/skills/component-library-rules/references/components/layout__layout-auth.md +1 -1
- package/.agents/skills/component-library-rules/references/testing.md +1 -1
- package/.agents/skills/token-system/SKILL.md +4 -1
- package/AGENTS.md +4 -3
- package/COMPONENT_SELECTION.md +15 -0
- package/INTEGRATION.md +41 -2
- package/MIGRATION.md +7 -7
- package/README.md +7 -3
- package/dist/_shared/accordion-CSRRDWVZ.js +135 -0
- package/dist/_shared/accordion-CSRRDWVZ.js.map +1 -0
- package/dist/_shared/accordion-ClVkIaCy.cjs +2 -0
- package/dist/_shared/accordion-ClVkIaCy.cjs.map +1 -0
- package/dist/_shared/action-menu-8RN2_Jdr.js +96 -0
- package/dist/_shared/action-menu-8RN2_Jdr.js.map +1 -0
- package/dist/_shared/action-menu-Cx2xaBjN.cjs +2 -0
- package/dist/_shared/action-menu-Cx2xaBjN.cjs.map +1 -0
- package/dist/_shared/ai-artifact-BO0XGFHz.cjs +3 -0
- package/dist/_shared/ai-artifact-BO0XGFHz.cjs.map +1 -0
- package/dist/_shared/ai-artifact-CbsGR1t8.js +1099 -0
- package/dist/_shared/ai-artifact-CbsGR1t8.js.map +1 -0
- package/dist/_shared/auth-CwipRgNB.cjs +2 -0
- package/dist/_shared/auth-CwipRgNB.cjs.map +1 -0
- package/dist/_shared/auth-Wipu0Oa_.js +643 -0
- package/dist/_shared/auth-Wipu0Oa_.js.map +1 -0
- package/dist/_shared/badge-B0Ashqkn.cjs +2 -0
- package/dist/_shared/badge-B0Ashqkn.cjs.map +1 -0
- package/dist/_shared/badge-DOJpEtsa.js +110 -0
- package/dist/_shared/badge-DOJpEtsa.js.map +1 -0
- package/dist/_shared/breadcrumbs-C7PI8sxx.cjs +2 -0
- package/dist/_shared/breadcrumbs-C7PI8sxx.cjs.map +1 -0
- package/dist/_shared/breadcrumbs-xNjbIrGc.js +105 -0
- package/dist/_shared/breadcrumbs-xNjbIrGc.js.map +1 -0
- package/dist/_shared/button-CB8e7fui.cjs +2 -0
- package/dist/_shared/button-CB8e7fui.cjs.map +1 -0
- package/dist/_shared/button-CNEMqDHK.js +192 -0
- package/dist/_shared/button-CNEMqDHK.js.map +1 -0
- package/dist/_shared/buttons-BCFKQuB5.js +137 -0
- package/dist/_shared/buttons-BCFKQuB5.js.map +1 -0
- package/dist/_shared/buttons-DHj5I2YL.cjs +2 -0
- package/dist/_shared/buttons-DHj5I2YL.cjs.map +1 -0
- package/dist/_shared/card-radio-group-DdubYUJ6.cjs +2 -0
- package/dist/_shared/card-radio-group-DdubYUJ6.cjs.map +1 -0
- package/dist/_shared/card-radio-group-Du6rzuoC.js +150 -0
- package/dist/_shared/card-radio-group-Du6rzuoC.js.map +1 -0
- package/dist/_shared/cards-B7voInTJ.js +430 -0
- package/dist/_shared/cards-B7voInTJ.js.map +1 -0
- package/dist/_shared/cards-DvE5gRFf.cjs +2 -0
- package/dist/_shared/cards-DvE5gRFf.cjs.map +1 -0
- package/dist/_shared/combobox-AbXh9ft4.cjs +2 -0
- package/dist/_shared/combobox-AbXh9ft4.cjs.map +1 -0
- package/dist/_shared/combobox-ImXiC1qy.js +957 -0
- package/dist/_shared/combobox-ImXiC1qy.js.map +1 -0
- package/dist/_shared/command-B-Yokco3.js +39 -0
- package/dist/_shared/command-B-Yokco3.js.map +1 -0
- package/dist/_shared/command-kcPx4TM_.cjs +2 -0
- package/dist/_shared/command-kcPx4TM_.cjs.map +1 -0
- package/dist/_shared/comments-BR5ENvoo.cjs +2 -0
- package/dist/_shared/comments-BR5ENvoo.cjs.map +1 -0
- package/dist/_shared/comments-a3l--GJ-.js +952 -0
- package/dist/_shared/comments-a3l--GJ-.js.map +1 -0
- package/dist/_shared/containers-8ryMAXNr.js +48 -0
- package/dist/_shared/containers-8ryMAXNr.js.map +1 -0
- package/dist/_shared/containers-BcrM8-22.cjs +2 -0
- package/dist/_shared/containers-BcrM8-22.cjs.map +1 -0
- package/dist/_shared/copyable-C0KJlRVr.js +38 -0
- package/dist/_shared/copyable-C0KJlRVr.js.map +1 -0
- package/dist/_shared/copyable-tJxsOyn-.cjs +2 -0
- package/dist/_shared/copyable-tJxsOyn-.cjs.map +1 -0
- package/dist/_shared/data-display-B9Lciun3.cjs +2 -0
- package/dist/_shared/data-display-B9Lciun3.cjs.map +1 -0
- package/dist/_shared/data-display-CYmwUdmU.js +1878 -0
- package/dist/_shared/data-display-CYmwUdmU.js.map +1 -0
- package/dist/_shared/date-picker-BaPDfs1p.js +1361 -0
- package/dist/_shared/date-picker-BaPDfs1p.js.map +1 -0
- package/dist/_shared/date-picker-DrkoZZdr.cjs +2 -0
- package/dist/_shared/date-picker-DrkoZZdr.cjs.map +1 -0
- package/dist/_shared/date-pickers-CT3aZpPn.cjs +2 -0
- package/dist/_shared/date-pickers-CT3aZpPn.cjs.map +1 -0
- package/dist/_shared/date-pickers-DRp0VM7k.js +329 -0
- package/dist/_shared/date-pickers-DRp0VM7k.js.map +1 -0
- package/dist/_shared/display-BHIs_Y_j.js +1006 -0
- package/dist/_shared/display-BHIs_Y_j.js.map +1 -0
- package/dist/_shared/display-DV7n0KA1.cjs +2 -0
- package/dist/_shared/display-DV7n0KA1.cjs.map +1 -0
- package/dist/_shared/dropdown-menu-5fFMhKo4.js +147 -0
- package/dist/_shared/dropdown-menu-5fFMhKo4.js.map +1 -0
- package/dist/_shared/dropdown-menu-B_SCGRL2.cjs +2 -0
- package/dist/_shared/dropdown-menu-B_SCGRL2.cjs.map +1 -0
- package/dist/_shared/form-sizing-VNEGzvM7.js +42 -0
- package/dist/_shared/form-sizing-VNEGzvM7.js.map +1 -0
- package/dist/_shared/form-sizing-lBFpJWv4.cjs +2 -0
- package/dist/_shared/form-sizing-lBFpJWv4.cjs.map +1 -0
- package/dist/_shared/forms-B7LYVbAy.cjs +2 -0
- package/dist/_shared/forms-B7LYVbAy.cjs.map +1 -0
- package/dist/_shared/forms-C5uZX_kQ.js +3534 -0
- package/dist/_shared/forms-C5uZX_kQ.js.map +1 -0
- package/dist/_shared/header-B4wGB6Ca.cjs +2 -0
- package/dist/_shared/header-B4wGB6Ca.cjs.map +1 -0
- package/dist/_shared/header-CWyOry0f.js +447 -0
- package/dist/_shared/header-CWyOry0f.js.map +1 -0
- package/dist/_shared/hooks-B4Cop5YI.cjs +2 -0
- package/dist/_shared/hooks-B4Cop5YI.cjs.map +1 -0
- package/dist/_shared/hooks-CFUZJW_S.js +95 -0
- package/dist/_shared/hooks-CFUZJW_S.js.map +1 -0
- package/dist/_shared/icon-size-CMNigtUu.js +15 -0
- package/dist/_shared/icon-size-CMNigtUu.js.map +1 -0
- package/dist/_shared/icon-size-D2NnYd0K.cjs +2 -0
- package/dist/_shared/icon-size-D2NnYd0K.cjs.map +1 -0
- package/dist/_shared/input-BEhrcsk7.js +182 -0
- package/dist/_shared/input-BEhrcsk7.js.map +1 -0
- package/dist/_shared/input-DGvh-izk.cjs +2 -0
- package/dist/_shared/input-DGvh-izk.cjs.map +1 -0
- package/dist/_shared/item-BG2iK1sy.cjs +2 -0
- package/dist/_shared/item-BG2iK1sy.cjs.map +1 -0
- package/dist/_shared/item-D75eGy8G.js +227 -0
- package/dist/_shared/item-D75eGy8G.js.map +1 -0
- package/dist/_shared/layout-CZVEJ3p_.cjs +2 -0
- package/dist/_shared/layout-CZVEJ3p_.cjs.map +1 -0
- package/dist/_shared/layout-D75TJTaD.js +268 -0
- package/dist/_shared/layout-D75TJTaD.js.map +1 -0
- package/dist/_shared/mentions-CWqC8Xds.js +506 -0
- package/dist/_shared/mentions-CWqC8Xds.js.map +1 -0
- package/dist/_shared/mentions-wtkrL2hX.cjs +2 -0
- package/dist/_shared/mentions-wtkrL2hX.cjs.map +1 -0
- package/dist/_shared/money-display-BabyaIWb.js +198 -0
- package/dist/_shared/money-display-BabyaIWb.js.map +1 -0
- package/dist/_shared/money-display-CrNRbByx.cjs +2 -0
- package/dist/_shared/money-display-CrNRbByx.cjs.map +1 -0
- package/dist/_shared/navigation-9DB-vtGI.js +436 -0
- package/dist/_shared/navigation-9DB-vtGI.js.map +1 -0
- package/dist/_shared/navigation-DAjFLSv5.cjs +2 -0
- package/dist/_shared/navigation-DAjFLSv5.cjs.map +1 -0
- package/dist/_shared/overlays-BK0J8zSv.cjs +2 -0
- package/dist/_shared/overlays-BK0J8zSv.cjs.map +1 -0
- package/dist/_shared/overlays-DKsXufDv.js +735 -0
- package/dist/_shared/overlays-DKsXufDv.js.map +1 -0
- package/dist/_shared/popover-menu-DXh14PIu.js +93 -0
- package/dist/_shared/popover-menu-DXh14PIu.js.map +1 -0
- package/dist/_shared/popover-menu-DkjPUZ4v.cjs +2 -0
- package/dist/_shared/popover-menu-DkjPUZ4v.cjs.map +1 -0
- package/dist/_shared/rich-text-editor-DjZTJzdm.cjs +2 -0
- package/dist/_shared/rich-text-editor-DjZTJzdm.cjs.map +1 -0
- package/dist/_shared/rich-text-editor-DloyZq46.js +620 -0
- package/dist/_shared/rich-text-editor-DloyZq46.js.map +1 -0
- package/dist/_shared/settings-AIgixHbB.cjs +2 -0
- package/dist/_shared/settings-AIgixHbB.cjs.map +1 -0
- package/dist/_shared/settings-D3KdypJk.js +143 -0
- package/dist/_shared/settings-D3KdypJk.js.map +1 -0
- package/dist/_shared/sidebar-BzBincq3.js +548 -0
- package/dist/_shared/sidebar-BzBincq3.js.map +1 -0
- package/dist/_shared/sidebar-D5NLbyow.cjs +2 -0
- package/dist/_shared/sidebar-D5NLbyow.cjs.map +1 -0
- package/dist/_shared/skeleton-Bc_qa5l_.js +256 -0
- package/dist/_shared/skeleton-Bc_qa5l_.js.map +1 -0
- package/dist/_shared/skeleton-Wq6G0Kya.cjs +2 -0
- package/dist/_shared/skeleton-Wq6G0Kya.cjs.map +1 -0
- package/dist/_shared/spinner-C-yoZUk-.cjs +2 -0
- package/dist/_shared/spinner-C-yoZUk-.cjs.map +1 -0
- package/dist/_shared/spinner-CDVWFN0N.js +67 -0
- package/dist/_shared/spinner-CDVWFN0N.js.map +1 -0
- package/dist/_shared/table-B70kyH2E.js +1377 -0
- package/dist/_shared/table-B70kyH2E.js.map +1 -0
- package/dist/_shared/table-DQA2m2F0.cjs +2 -0
- package/dist/_shared/table-DQA2m2F0.cjs.map +1 -0
- package/dist/_shared/textarea-Dx9yEZY2.js +118 -0
- package/dist/_shared/textarea-Dx9yEZY2.js.map +1 -0
- package/dist/_shared/textarea-rfnSeHHC.cjs +2 -0
- package/dist/_shared/textarea-rfnSeHHC.cjs.map +1 -0
- package/dist/_shared/typography-C_kCoR1d.js +204 -0
- package/dist/_shared/typography-C_kCoR1d.js.map +1 -0
- package/dist/_shared/typography-sXFd02zl.cjs +2 -0
- package/dist/_shared/typography-sXFd02zl.cjs.map +1 -0
- package/dist/_shared/workspace-Bw-k_HXQ.js +357 -0
- package/dist/_shared/workspace-Bw-k_HXQ.js.map +1 -0
- package/dist/_shared/workspace-CLUsYC5y.cjs +2 -0
- package/dist/_shared/workspace-CLUsYC5y.cjs.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/carousel/carousel.d.ts.map +1 -1
- package/dist/components/base/carousel/index.cjs +1 -1
- package/dist/components/base/carousel/index.cjs.map +1 -1
- package/dist/components/base/carousel/index.js +98 -97
- package/dist/components/base/carousel/index.js.map +1 -1
- package/dist/components/base/combobox/components/combobox-dropdown.d.ts.map +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/command.d.ts +1 -1
- package/dist/components/base/command/index.cjs +1 -1
- package/dist/components/base/command/index.js +1 -1
- 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/alert.d.ts.map +1 -1
- package/dist/components/base/display/chart.cjs +1 -1
- package/dist/components/base/display/chart.js +1 -1
- package/dist/components/base/display/icon-size.d.ts +6 -0
- package/dist/components/base/display/icon-size.d.ts.map +1 -0
- package/dist/components/base/display/index.cjs +1 -1
- package/dist/components/base/display/index.d.ts +1 -0
- package/dist/components/base/display/index.d.ts.map +1 -1
- package/dist/components/base/display/index.js +10 -9
- package/dist/components/base/display/throttle-alert.d.ts.map +1 -1
- 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/event-calendar/index.js.map +1 -1
- package/dist/components/base/forms/index.cjs +1 -1
- package/dist/components/base/forms/index.js +5 -5
- package/dist/components/base/item/index.cjs +1 -1
- package/dist/components/base/item/index.js +1 -1
- package/dist/components/base/item/item.d.ts.map +1 -1
- package/dist/components/base/map/index.cjs +1 -1
- package/dist/components/base/map/index.cjs.map +1 -1
- package/dist/components/base/map/index.js +3 -3
- package/dist/components/base/map/index.js.map +1 -1
- package/dist/components/base/map/map.d.ts +1 -1
- package/dist/components/base/map/map.d.ts.map +1 -1
- package/dist/components/base/navigation/dropdown-menu.d.ts +33 -1
- package/dist/components/base/navigation/dropdown-menu.d.ts.map +1 -1
- package/dist/components/base/navigation/index.cjs +1 -1
- package/dist/components/base/navigation/index.js +4 -4
- package/dist/components/base/popover-menu/index.cjs +1 -1
- package/dist/components/base/popover-menu/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 +1 -1
- 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 +10 -11
- package/dist/components/composed/admin/index.js.map +1 -1
- package/dist/components/composed/ai/index.cjs +1 -1
- package/dist/components/composed/ai/index.cjs.map +1 -1
- package/dist/components/composed/ai/index.js +8 -9
- package/dist/components/composed/ai/index.js.map +1 -1
- 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/analytics/index.js.map +1 -1
- 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 +13 -15
- package/dist/components/composed/cards/index.js.map +1 -1
- 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.d.ts +2 -0
- package/dist/components/composed/commerce/index.d.ts.map +1 -1
- package/dist/components/composed/commerce/index.js +1246 -382
- package/dist/components/composed/commerce/index.js.map +1 -1
- package/dist/components/composed/commerce/inventory-section/index.d.ts +3 -0
- package/dist/components/composed/commerce/inventory-section/index.d.ts.map +1 -0
- package/dist/components/composed/commerce/inventory-section/inventory-section.d.ts +6 -0
- package/dist/components/composed/commerce/inventory-section/inventory-section.d.ts.map +1 -0
- package/dist/components/composed/commerce/inventory-section/types.d.ts +85 -0
- package/dist/components/composed/commerce/inventory-section/types.d.ts.map +1 -0
- package/dist/components/composed/commerce/seo-listing/index.d.ts +4 -0
- package/dist/components/composed/commerce/seo-listing/index.d.ts.map +1 -0
- package/dist/components/composed/commerce/seo-listing/seo-listing-card.d.ts +6 -0
- package/dist/components/composed/commerce/seo-listing/seo-listing-card.d.ts.map +1 -0
- package/dist/components/composed/commerce/seo-listing/seo-listing-score.d.ts +6 -0
- package/dist/components/composed/commerce/seo-listing/seo-listing-score.d.ts.map +1 -0
- package/dist/components/composed/commerce/seo-listing/types.d.ts +68 -0
- package/dist/components/composed/commerce/seo-listing/types.d.ts.map +1 -0
- 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 +7 -7
- package/dist/components/composed/dark-surfaces/index.js.map +1 -1
- package/dist/components/composed/data-display/index.cjs +1 -1
- package/dist/components/composed/data-display/index.js +1 -1
- package/dist/components/composed/navigation/index.cjs +1 -1
- package/dist/components/composed/navigation/index.cjs.map +1 -1
- package/dist/components/composed/navigation/index.js +5 -6
- package/dist/components/composed/navigation/index.js.map +1 -1
- package/dist/components/composed/onboarding/index.cjs +1 -1
- package/dist/components/composed/onboarding/index.js +3 -3
- package/dist/components/composed/timelines/index.cjs +1 -1
- package/dist/components/composed/timelines/index.js +3 -3
- package/dist/components/features/activities/index.cjs +1 -1
- package/dist/components/features/activities/index.js +5 -5
- package/dist/components/features/ai-chat/index.cjs +1 -1
- package/dist/components/features/ai-chat/index.js +5 -5
- package/dist/components/features/card/index.cjs +1 -1
- package/dist/components/features/card/index.js +4 -4
- package/dist/components/features/comments/index.cjs +1 -1
- package/dist/components/features/comments/index.js +2 -2
- package/dist/components/features/data-view/index.cjs +1 -1
- package/dist/components/features/data-view/index.js +2 -2
- package/dist/components/features/event-log/index.cjs +1 -1
- package/dist/components/features/event-log/index.js +4 -4
- package/dist/components/features/filters/index.cjs +1 -1
- package/dist/components/features/filters/index.cjs.map +1 -1
- package/dist/components/features/filters/index.js +64 -64
- package/dist/components/features/filters/index.js.map +1 -1
- package/dist/components/features/filters/partials/regular-filter-content.d.ts.map +1 -1
- package/dist/components/features/global-search/index.cjs +1 -1
- package/dist/components/features/global-search/index.js +4 -4
- package/dist/components/features/kanban/index.cjs +1 -1
- package/dist/components/features/kanban/index.js +3 -3
- package/dist/components/features/media-library/index.cjs +1 -1
- package/dist/components/features/media-library/index.cjs.map +1 -1
- package/dist/components/features/media-library/index.js +230 -206
- package/dist/components/features/media-library/index.js.map +1 -1
- package/dist/components/features/media-library/media-library.d.ts.map +1 -1
- package/dist/components/features/media-library/media-library.strings.d.ts +2 -0
- package/dist/components/features/media-library/media-library.strings.d.ts.map +1 -1
- package/dist/components/features/media-library/partials/media-library-partials.d.ts.map +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/products/components/index.d.ts +3 -0
- package/dist/components/features/products/components/index.d.ts.map +1 -1
- package/dist/components/features/products/components/product-options-matrix.d.ts +6 -0
- package/dist/components/features/products/components/product-options-matrix.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variants-bulk-table.d.ts +6 -0
- package/dist/components/features/products/components/product-variants-bulk-table.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variants-manager.d.ts +6 -0
- package/dist/components/features/products/components/product-variants-manager.d.ts.map +1 -0
- package/dist/components/features/products/index.cjs +1 -1
- package/dist/components/features/products/index.cjs.map +1 -1
- package/dist/components/features/products/index.js +1705 -511
- package/dist/components/features/products/index.js.map +1 -1
- package/dist/components/features/products/products.strings.d.ts +70 -0
- package/dist/components/features/products/products.strings.d.ts.map +1 -1
- package/dist/components/features/products/products.types.d.ts +163 -1
- package/dist/components/features/products/products.types.d.ts.map +1 -1
- package/dist/components/features/resource/index.cjs +1 -1
- package/dist/components/features/resource/index.js +5 -5
- 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/schema-form/index.cjs +1 -1
- package/dist/components/features/schema-form/index.js +8 -8
- 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/auth/index.cjs +1 -1
- package/dist/components/layout/auth/index.js +1 -1
- package/dist/components/layout/containers/index.cjs +1 -1
- package/dist/components/layout/containers/index.js +1 -1
- 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 +8 -8
- package/dist/components/layout/page/index.cjs +1 -1
- package/dist/components/layout/page/index.js +1 -1
- package/dist/components/layout/page/page-content.d.ts +1 -1
- package/dist/components/layout/page/page-content.d.ts.map +1 -1
- package/dist/components/layout/settings/index.cjs +1 -1
- package/dist/components/layout/settings/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/layout/workspace/index.cjs +1 -1
- package/dist/components/layout/workspace/index.js +1 -1
- package/dist/components/typography/index.cjs +1 -1
- package/dist/components/typography/index.js +1 -1
- package/dist/components/typography/text-link.d.ts +3 -1
- package/dist/components/typography/text-link.d.ts.map +1 -1
- package/dist/components/typography/text.d.ts.map +1 -1
- package/dist/lib/ui-provider/types.d.ts +1 -1
- package/dist/lib/ui-provider/types.d.ts.map +1 -1
- package/dist/lib/utils.cjs +1 -1
- package/dist/lib/utils.cjs.map +1 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +1 -0
- package/dist/lib/utils.js.map +1 -1
- package/dist/services/actions/index.cjs +1 -1
- package/dist/services/actions/index.js +1 -1
- package/dist/showcase/assets/AreaChart-iGBzUSAV.js +6 -0
- package/dist/showcase/assets/CompositeItem-1e8qsdC5.js +1 -0
- package/dist/showcase/assets/CompositeRoot-DneCUh3i.js +1 -0
- package/dist/showcase/assets/DialogTrigger-CVhas4X-.js +1 -0
- package/dist/showcase/assets/LabelableContext-Bfc22fLa.js +1 -0
- package/dist/showcase/assets/MenuTrigger-WTiiOMpe.js +1 -0
- package/dist/showcase/assets/PreviewLayout-ClbLOtTa.js +1 -0
- package/dist/showcase/assets/RadioGroup-DEBYMgi5.js +1 -0
- package/dist/showcase/assets/ScrollAreaCorner-CilamsvS.js +1 -0
- package/dist/showcase/assets/Separator-DSecBOlo.js +1 -0
- package/dist/showcase/assets/ToolbarRootContext-BY_Czi0-.js +1 -0
- package/dist/showcase/assets/accordion-FV2cJ9V1.js +171 -0
- package/dist/showcase/assets/accordion-variants-DRNuXgFT.js +1 -0
- package/dist/showcase/assets/action-menu-uhMTzBIl.js +1 -0
- package/dist/showcase/assets/actions-C3kChFSc.js +310 -0
- package/dist/showcase/assets/actions-DizTzuf8.js +38 -0
- package/dist/showcase/assets/activities-DQ7u_XKr.js +500 -0
- package/dist/showcase/assets/activities-feed-card-DoxFXr20.js +1 -0
- package/dist/showcase/assets/admin-CRVq1bj-.js +140 -0
- package/dist/showcase/assets/ai-DMBh2BKA.js +207 -0
- package/dist/showcase/assets/ai-artifact-DnSz7Xj1.js +2 -0
- package/dist/showcase/assets/ai-chat-Ba60tj9x.js +568 -0
- package/dist/showcase/assets/ai-elements-CaMbMARm.js +387 -0
- package/dist/showcase/assets/ai-tool-call-Cg11pnXq.js +1 -0
- package/dist/showcase/assets/alert-AeDTPQQ5.js +62 -0
- package/dist/showcase/assets/alert-BQucj-0f.js +1 -0
- package/dist/showcase/assets/alert-DY0yMYc3.js +93 -0
- package/dist/showcase/assets/api-key-list-DZiVRCkz.js +73 -0
- package/dist/showcase/assets/api-key-list-DuoC5nyO.js +1 -0
- package/dist/showcase/assets/app-sidebar-D_RbOUZC.js +1 -0
- package/dist/showcase/assets/arrow-down-J_5dmfVv.js +1 -0
- package/dist/showcase/assets/arrow-left-DeKmFjyi.js +1 -0
- package/dist/showcase/assets/arrow-right-ztHj2bIY.js +1 -0
- package/dist/showcase/assets/arrow-up-CCenfeVW.js +1 -0
- package/dist/showcase/assets/arrow-up-right-URGvP7LF.js +1 -0
- package/dist/showcase/assets/avatar-CTFW3AQa.js +1 -0
- package/dist/showcase/assets/avatar-DH3vm33j.js +1 -0
- package/dist/showcase/assets/avatar-DRi6ZWB2.js +67 -0
- package/dist/showcase/assets/avatar-eEOgFI6D.js +57 -0
- package/dist/showcase/assets/badge-C9RqIyT7.js +31 -0
- package/dist/showcase/assets/badge-check-CRkt0WPY.js +1 -0
- package/dist/showcase/assets/bell-B-bFEx5I.js +1 -0
- package/dist/showcase/assets/boolean-indicator-CD3scHDz.js +1 -0
- package/dist/showcase/assets/bot-DbSsnrvR.js +1 -0
- package/dist/showcase/assets/box-BDLbaerX.js +1 -0
- package/dist/showcase/assets/braces-nP1Ffv07.js +1 -0
- package/dist/showcase/assets/brain-B69nRyRF.js +1 -0
- package/dist/showcase/assets/brand-WHRuwaVX.js +36 -0
- package/dist/showcase/assets/breadcrumb-CYxS57Ko.js +1 -0
- package/dist/showcase/assets/breadcrumb-viDsLdax.js +52 -0
- package/dist/showcase/assets/breadcrumbs-CX6eCwn4.js +1 -0
- package/dist/showcase/assets/briefcase-BCMmOuh2.js +1 -0
- package/dist/showcase/assets/building-2-DCSQxFoC.js +1 -0
- package/dist/showcase/assets/button-It_u4rRb.js +44 -0
- package/dist/showcase/assets/button-group-B2NgHAyn.js +1 -0
- package/dist/showcase/assets/buttons-ClK1qR3J.js +272 -0
- package/dist/showcase/assets/calendar-CX89JdTd.js +16 -0
- package/dist/showcase/assets/calendar-DV83xhzB.js +1 -0
- package/dist/showcase/assets/calendar-HrkenM2F.js +1 -0
- package/dist/showcase/assets/calendar-days-O55Ncg5j.js +1 -0
- package/dist/showcase/assets/camera-C6hO-Q3l.js +1 -0
- package/dist/showcase/assets/card-CXet5wLR.js +1 -0
- package/dist/showcase/assets/card-ChwovoeQ.js +188 -0
- package/dist/showcase/assets/card-checkbox-group-DN7Ui724.js +1 -0
- package/dist/showcase/assets/card-primitives-C5YmKK4H.js +1 -0
- package/dist/showcase/assets/card-radio-group-DaiWsziy.js +1 -0
- package/dist/showcase/assets/cards-CpYk7Lcz.js +354 -0
- package/dist/showcase/assets/carousel-CaoSMqW3.js +452 -0
- package/dist/showcase/assets/cell-renderers-BTLGZyvy.js +1 -0
- package/dist/showcase/assets/chart-DukdMlSE.js +358 -0
- package/dist/showcase/assets/chart-column-BqDA22mr.js +1 -0
- package/dist/showcase/assets/checkbox-CJg8G3-s.js +1 -0
- package/dist/showcase/assets/checkbox-DlOCnOfc.js +1 -0
- package/dist/showcase/assets/chevron-down-CjLLqYjs.js +1 -0
- package/dist/showcase/assets/chevron-left-lE5l5Y1q.js +1 -0
- package/dist/showcase/assets/chevron-up-WpyEPcvJ.js +1 -0
- package/dist/showcase/assets/chevrons-up-down-CPkjAe_j.js +1 -0
- package/dist/showcase/assets/circle-B9E-rFdh.js +1 -0
- package/dist/showcase/assets/circle-alert-DX4Q8Agf.js +1 -0
- package/dist/showcase/assets/circle-check-BdcUhuQ7.js +1 -0
- package/dist/showcase/assets/circle-check-big-CeaAGVP1.js +1 -0
- package/dist/showcase/assets/circle-dot-DoXkol-T.js +1 -0
- package/dist/showcase/assets/circle-question-mark-CYE6Hj4n.js +1 -0
- package/dist/showcase/assets/circle-x-BpB4A5gs.js +1 -0
- package/dist/showcase/assets/clock-3-B7Fa1qg-.js +1 -0
- package/dist/showcase/assets/clock-B1cuTZnL.js +1 -0
- package/dist/showcase/assets/code-xml-C_ICl6NY.js +1 -0
- package/dist/showcase/assets/collapsible-CtrQcEWW.js +27 -0
- package/dist/showcase/assets/collapsible-XZ4qRG4O.js +1 -0
- package/dist/showcase/assets/collapsible-ZP3Pv6SI.js +1 -0
- package/dist/showcase/assets/combobox-GMkDgk_z.js +685 -0
- package/dist/showcase/assets/command-BXhyoNX1.js +1 -0
- package/dist/showcase/assets/command-DNHjxTyl.js +1 -0
- package/dist/showcase/assets/comment-composer-BtE5Erp8.js +1 -0
- package/dist/showcase/assets/comment-item-TztxmXc7.js +1 -0
- package/dist/showcase/assets/comments-CEMkLRtb.js +357 -0
- package/dist/showcase/assets/commerce-BtvCQH0C.js +19 -0
- package/dist/showcase/assets/commerce-address-card-8PUGRwNW.js +33 -0
- package/dist/showcase/assets/commerce-cart-summary-nrO5v1O8.js +43 -0
- package/dist/showcase/assets/commerce-coupon-input-C-sT1FNq.js +11 -0
- package/dist/showcase/assets/commerce-discount-stack-BdGk8tbD.js +17 -0
- package/dist/showcase/assets/commerce-inventory-section-BnBu7wK5.js +123 -0
- package/dist/showcase/assets/commerce-loyalty-points-Bjei3EdW.js +19 -0
- package/dist/showcase/assets/commerce-order-status--TMOLhrS.js +21 -0
- package/dist/showcase/assets/commerce-payment-method-C8fVquyN.js +17 -0
- package/dist/showcase/assets/commerce-refund-status-Cs6dbewH.js +17 -0
- package/dist/showcase/assets/commerce-seo-listing-C4WvKFei.js +61 -0
- package/dist/showcase/assets/commerce-shipment-tracking-BcezyjSw.js +24 -0
- package/dist/showcase/assets/commerce-subscription-summary-BjhnmqOx.js +25 -0
- package/dist/showcase/assets/commerce-tax-breakdown-js8xMRDn.js +19 -0
- package/dist/showcase/assets/commerce-upcoming-booking-doggTqfA.js +20 -0
- package/dist/showcase/assets/commerce-voucher-entry-ByMZAiZO.js +19 -0
- package/dist/showcase/assets/composite-D2jjTQvZ.js +1 -0
- package/dist/showcase/assets/conditional-rendering-Cy3xN7KO.js +1 -0
- package/dist/showcase/assets/contact-card-BSH_KDbf.js +65 -0
- package/dist/showcase/assets/content-container-Q9Bp8aFE.js +1 -0
- package/dist/showcase/assets/copyable-8_0ImOB2.js +1 -0
- package/dist/showcase/assets/copyable-B3R9lXVu.js +96 -0
- package/dist/showcase/assets/course-card-zh8fH-6n.js +77 -0
- package/dist/showcase/assets/cpu-DlPQMchp.js +1 -0
- package/dist/showcase/assets/credit-card-DeuhwEKG.js +1 -0
- package/dist/showcase/assets/css-variables-BxE5DqUm.js +1223 -0
- package/dist/showcase/assets/currency-D3DomSfR.js +148 -0
- package/dist/showcase/assets/dark-surfaces-DYh199dt.js +90 -0
- package/dist/showcase/assets/data-view-HJme-PWk.js +124 -0
- package/dist/showcase/assets/data-view-s5TQvt4f.js +4 -0
- package/dist/showcase/assets/database-KGU1LGqB.js +1 -0
- package/dist/showcase/assets/date-block-CxFhNxK2.js +1 -0
- package/dist/showcase/assets/date-block-DmRDymLD.js +1 -0
- package/dist/showcase/assets/date-picker-CScVl5jV.js +1 -0
- package/dist/showcase/assets/date-pickers-D4EmH-RF.js +73 -0
- package/dist/showcase/assets/dense-info-DXbmG0Nf.js +106 -0
- package/dist/showcase/assets/design-system-consistency-D_j9P0qR.js +264 -0
- package/dist/showcase/assets/dialog-BHymSzYi.js +1 -0
- package/dist/showcase/assets/dialog-CGr-za_Y.js +1 -0
- package/dist/showcase/assets/dialog-DeXQn0Lm.js +1 -0
- package/dist/showcase/assets/display-utilities-Y1wtHZNJ.js +4 -0
- package/dist/showcase/assets/display-utilities.examples-BMKQv0ep.js +309 -0
- package/dist/showcase/assets/dist-DfpWey5P.js +1 -0
- package/dist/showcase/assets/dist-DrnHE1zU.js +45 -0
- package/dist/showcase/assets/dollar-sign-DzPcAVIr.js +1 -0
- package/dist/showcase/assets/download-YQyeAxpe.js +1 -0
- package/dist/showcase/assets/dropdown-menu-DijrdxTg.js +1 -0
- package/dist/showcase/assets/dropzone-CJQVfB6l.js +1 -0
- package/dist/showcase/assets/earth-CzKdl3sr.js +1 -0
- package/dist/showcase/assets/ellipsis-Bm3jOBg8.js +1 -0
- package/dist/showcase/assets/ellipsis-vertical-BfYWo5Lf.js +1 -0
- package/dist/showcase/assets/empty-BdJ7O2MX.js +1 -0
- package/dist/showcase/assets/empty-item-BQdBtp6f.js +49 -0
- package/dist/showcase/assets/empty-state-62UU8y5C.js +1 -0
- package/dist/showcase/assets/empty-state-CCL_J3tY.js +190 -0
- package/dist/showcase/assets/enhanced-activities-CC1UzTfz.js +357 -0
- package/dist/showcase/assets/enhanced-combobox-B9cjPsF6.js +1 -0
- package/dist/showcase/assets/esm-B-fRlXh3.js +2 -0
- package/dist/showcase/assets/event-calendar-Bhwxq8YS.js +138 -0
- package/dist/showcase/assets/event-log-CnKaX_Qy.js +330 -0
- package/dist/showcase/assets/example-DDhaO2UY.js +1 -0
- package/dist/showcase/assets/external-link-CANOM2jg.js +1 -0
- package/dist/showcase/assets/eye-Bipckkwy.js +1 -0
- package/dist/showcase/assets/feature-announcement-lwmHkJsA.js +34 -0
- package/dist/showcase/assets/file-D3AT65yE.js +1 -0
- package/dist/showcase/assets/file-text-BzM5AARd.js +1 -0
- package/dist/showcase/assets/filter-layout-Dcg6Bnrn.js +1 -0
- package/dist/showcase/assets/filters-CqlLV9PM.js +139 -0
- package/dist/showcase/assets/fixtures-yK2xR5Qs.js +1 -0
- package/dist/showcase/assets/flag-DwDsuNoj.js +1 -0
- package/dist/showcase/assets/folder-open-CU6X87LZ.js +1 -0
- package/dist/showcase/assets/form-field-CpRcKtwS.js +1 -0
- package/dist/showcase/assets/form-sizing-Bv0A0Oi0.js +1 -0
- package/dist/showcase/assets/format-DmB3OvZa.js +1 -0
- package/dist/showcase/assets/forms-htLZTBP2.js +915 -0
- package/dist/showcase/assets/funnel-Dg-pRz2W.js +1 -0
- package/dist/showcase/assets/generic-C19aoW0F.js +1 -0
- package/dist/showcase/assets/getPseudoElementBounds-r_QLBIGn.js +1 -0
- package/dist/showcase/assets/gift-CpwvL7we.js +1 -0
- package/dist/showcase/assets/giftcard-cards-DHZQPc_n.js +85 -0
- package/dist/showcase/assets/git-branch-CZga8VLM.js +1 -0
- package/dist/showcase/assets/global-search-DqJo5jCc.js +1 -0
- package/dist/showcase/assets/global-search-_HODxZaU.js +215 -0
- package/dist/showcase/assets/globe-pWzZwcAv.js +1 -0
- package/dist/showcase/assets/gradient-card-D9fPawlx.js +58 -0
- package/dist/showcase/assets/grip-vertical-oqI1TI-N.js +1 -0
- package/dist/showcase/assets/hash-DQPCJKw8.js +1 -0
- package/dist/showcase/assets/header-DkCzYf6f.js +1 -0
- package/dist/showcase/assets/header-notifications-CPiuGNR5.js +1 -0
- package/dist/showcase/assets/heart-0z9BLROt.js +1 -0
- package/dist/showcase/assets/hooks-CXwg9TyF.js +220 -0
- package/dist/showcase/assets/house-Bg4YZsNF.js +1 -0
- package/dist/showcase/assets/icon-badge-CrSkFExw.js +1 -0
- package/dist/showcase/assets/icon-badge-D1fdev_s.js +37 -0
- package/dist/showcase/assets/icon-size-BHn0d6Zp.js +1 -0
- package/dist/showcase/assets/image-BXWnqpeJ.js +1 -0
- package/dist/showcase/assets/inbox-CObYzZZR.js +1 -0
- package/dist/showcase/assets/index-DBheiRxz.css +2 -0
- package/dist/showcase/assets/index-DSBghWdd.js +10 -0
- package/dist/showcase/assets/inertValue-DOcq7b5x.js +1 -0
- package/dist/showcase/assets/info-wAcLD6Uj.js +1 -0
- package/dist/showcase/assets/inline-stat-CufTTte_.js +1 -0
- package/dist/showcase/assets/inline-stat-D4GrY6tT.js +15 -0
- package/dist/showcase/assets/input-Bq9vs-9_.js +1 -0
- package/dist/showcase/assets/input-DsP89oH1.js +1 -0
- package/dist/showcase/assets/input-group-CCaNByLp.js +1 -0
- package/dist/showcase/assets/input-group-m-swxf-o.js +47 -0
- package/dist/showcase/assets/inputs-BSEM9vfa.js +155 -0
- package/dist/showcase/assets/installation-uRaDUCjH.js +134 -0
- package/dist/showcase/assets/invoice-header-D48jDTWC.js +36 -0
- package/dist/showcase/assets/invoice-items-jRLo8FHu.js +36 -0
- package/dist/showcase/assets/invoice-mini-DLS8PQrl.js +14 -0
- package/dist/showcase/assets/invoice-table-D4y33M95.js +30 -0
- package/dist/showcase/assets/isSameDay-Cn7Vlp79.js +1 -0
- package/dist/showcase/assets/isToday-B0jKMww1.js +1 -0
- package/dist/showcase/assets/italic-BHsKu0Gj.js +1 -0
- package/dist/showcase/assets/item-BLXAOZLR.js +1 -0
- package/dist/showcase/assets/item-C8eCX4DH.js +140 -0
- package/dist/showcase/assets/item-D5xwkRvf.js +1 -0
- package/dist/showcase/assets/kanban-ujfZHhvd.js +188 -0
- package/dist/showcase/assets/key-round-B_fKEPa6.js +1 -0
- package/dist/showcase/assets/label-NSapdBaB.js +1 -0
- package/dist/showcase/assets/languages-TkdVe7-2.js +1 -0
- package/dist/showcase/assets/layers-1IEBbvoc.js +1 -0
- package/dist/showcase/assets/layout-app-shell-D4PFTEsD.js +608 -0
- package/dist/showcase/assets/layout-auth-BTriDNME.js +790 -0
- package/dist/showcase/assets/layout-containers-CLJfaL-J.js +101 -0
- package/dist/showcase/assets/layout-header-CsNPnQde.js +203 -0
- package/dist/showcase/assets/layout-page-CSejcBCR.js +315 -0
- package/dist/showcase/assets/layout-primitives-D1MJs2E3.js +34 -0
- package/dist/showcase/assets/layout-sidebar-CO8Hdnoh.js +224 -0
- package/dist/showcase/assets/layout-users-BgrXF4nn.js +117 -0
- package/dist/showcase/assets/layout-workspace-DLg1f_o-.js +191 -0
- package/dist/showcase/assets/lib-B7vzArq-.js +1 -0
- package/dist/showcase/assets/list-checks-tsvYcEx2.js +1 -0
- package/dist/showcase/assets/lock-CPztxP5s.js +1 -0
- package/dist/showcase/assets/lock-keyhole-BHaFzps8.js +1 -0
- package/dist/showcase/assets/mail-DFoR3rHO.js +1 -0
- package/dist/showcase/assets/mail-check-QV1zqP5D.js +1 -0
- package/dist/showcase/assets/map-BOo4UMER.js +124 -0
- package/dist/showcase/assets/map-pin-CEcA7jdk.js +1 -0
- package/dist/showcase/assets/media-library-CKR3NF1Y.js +699 -0
- package/dist/showcase/assets/mention-inline-suggestions-Chbuzkb7.js +1 -0
- package/dist/showcase/assets/mentions-syVuen0M.js +138 -0
- package/dist/showcase/assets/menus-COIxEKPm.js +171 -0
- package/dist/showcase/assets/message-square-CYSVV7nZ.js +1 -0
- package/dist/showcase/assets/metadata-list-BHIfOKD6.js +1 -0
- package/dist/showcase/assets/metadata-list-DLI17y0k.js +286 -0
- package/dist/showcase/assets/metric-bar-OTyaeNJY.js +1 -0
- package/dist/showcase/assets/metric-grid-BcjDZqHZ.js +1 -0
- package/dist/showcase/assets/metric-opI4qu4r.js +1 -0
- package/dist/showcase/assets/metric-trend-chip-BvhqlY9f.js +1 -0
- package/dist/showcase/assets/metrics-analytics-bar-Z8xY1Gwq.js +44 -0
- package/dist/showcase/assets/metrics-analytics-cards-DfzbV-8j.js +50 -0
- package/dist/showcase/assets/metrics-comparison-C71X-WeV.js +76 -0
- package/dist/showcase/assets/metrics-heatmap-Cs1ixWQX.js +27 -0
- package/dist/showcase/assets/metrics-inline-badge-DP1guaTx.js +17 -0
- package/dist/showcase/assets/metrics-kpi-row-CVwHH3rN.js +31 -0
- package/dist/showcase/assets/metrics-micro-grid-CQGKibEU.js +42 -0
- package/dist/showcase/assets/metrics-overview-DPGjh2Gi.js +192 -0
- package/dist/showcase/assets/metrics-stat-cards-C3k7Uyt1.js +54 -0
- package/dist/showcase/assets/minus-BTHZFjKs.js +1 -0
- package/dist/showcase/assets/money-display-B8BodAKb.js +1 -0
- package/dist/showcase/assets/money-display-C7TuSgzA.js +3 -0
- package/dist/showcase/assets/month-year-picker-DQcCIbM9.js +1 -0
- package/dist/showcase/assets/navigation-BjYK7JTx.js +231 -0
- package/dist/showcase/assets/navigation-DkkHPGFq.js +90 -0
- package/dist/showcase/assets/navigation-extras-drFz7Xmf.js +43 -0
- package/dist/showcase/assets/notification-banner-CATA6COT.js +1 -0
- package/dist/showcase/assets/onboarding-checklist-CjGo74ic.js +119 -0
- package/dist/showcase/assets/overflow-tab-bar-BYRykiZn.js +1 -0
- package/dist/showcase/assets/overlays-BtfkqYL1.js +159 -0
- package/dist/showcase/assets/overlays-CzmrvPNh.js +408 -0
- package/dist/showcase/assets/overview-B5ckb1et.js +184 -0
- package/dist/showcase/assets/package-Db-MTVUx.js +1 -0
- package/dist/showcase/assets/package-check-UP9srP8w.js +1 -0
- package/dist/showcase/assets/page-BFvDdpX3.js +1 -0
- package/dist/showcase/assets/page-action-button-CROlcZJb.js +1 -0
- package/dist/showcase/assets/page-header-B8xYCCzF.js +1 -0
- package/dist/showcase/assets/pagination-B7j6cJXU.js +1 -0
- package/dist/showcase/assets/pagination-B8LN9MT7.js +42 -0
- package/dist/showcase/assets/paperclip-CAcGOT6G.js +1 -0
- package/dist/showcase/assets/password-input-DzO1QEsL.js +1 -0
- package/dist/showcase/assets/pencil-Db0qlNpO.js +1 -0
- package/dist/showcase/assets/phone-BHkprQ5O.js +1 -0
- package/dist/showcase/assets/placeholder-pattern-Ba0rjJa5.js +1 -0
- package/dist/showcase/assets/plus-CaAfJIjc.js +1 -0
- package/dist/showcase/assets/popover-BZsIv1AP.js +1 -0
- package/dist/showcase/assets/popover-DCfeA2ZY.js +1 -0
- package/dist/showcase/assets/popover-menu-kjcHCICE.js +1 -0
- package/dist/showcase/assets/product-empty-state-CSdeHHZT.js +1 -0
- package/dist/showcase/assets/product-option-action-menu-FvgEaWA7.js +1 -0
- package/dist/showcase/assets/product-rows-Cb8gLOeV.js +1 -0
- package/dist/showcase/assets/product-structure-card-CFqufBoJ.js +1 -0
- package/dist/showcase/assets/product-variant-action-menu-BvSn7PuK.js +1 -0
- package/dist/showcase/assets/products-D1aG4KFi.js +61 -0
- package/dist/showcase/assets/progress-2NWkkA6x.js +18 -0
- package/dist/showcase/assets/progress-DECH8qUu.js +1 -0
- package/dist/showcase/assets/progress-DHsjY-V1.js +1 -0
- package/dist/showcase/assets/props-table-CzpevabQ.js +1 -0
- package/dist/showcase/assets/props.generated-CXbCZMUk.json +42824 -0
- package/dist/showcase/assets/qr-code-DLeRQu83.js +1 -0
- package/dist/showcase/assets/quote-eFsPYmD1.js +1 -0
- package/dist/showcase/assets/receipt-V9T3dONa.js +1 -0
- package/dist/showcase/assets/receipt-text-866Msgc2.js +1 -0
- package/dist/showcase/assets/refinement-guide-BoerkamA.js +189 -0
- package/dist/showcase/assets/refresh-cw-Crg4uqw8.js +1 -0
- package/dist/showcase/assets/resolveValueLabel-D8poX7JF.js +1 -0
- package/dist/showcase/assets/resource-Ca8tGlsX.js +139 -0
- package/dist/showcase/assets/resource-aE-LkpW8.js +1 -0
- package/dist/showcase/assets/resource-selector-card-DzDG2Wl6.js +43 -0
- package/dist/showcase/assets/rich-text-editor-BCTbpMcY.js +143 -0
- package/dist/showcase/assets/rich-text-editor-CdklzzLj.js +124 -0
- package/dist/showcase/assets/rotate-ccw-CCPhnEPA.js +1 -0
- package/dist/showcase/assets/route-CODe9_7c.js +1 -0
- package/dist/showcase/assets/save-B_ze9MC9.js +1 -0
- package/dist/showcase/assets/schema-form-CEmpu59s.js +327 -0
- package/dist/showcase/assets/scroll-area-BM0asGLD.js +32 -0
- package/dist/showcase/assets/scroll-area-zRw8lSrA.js +1 -0
- package/dist/showcase/assets/section-DLqBJGPH.js +1 -0
- package/dist/showcase/assets/select-B0ivd5pJ.js +1 -0
- package/dist/showcase/assets/select-BrPUZL6Z.js +1 -0
- package/dist/showcase/assets/send-B4jTMdd9.js +1 -0
- package/dist/showcase/assets/separator-7f_tdxB3.js +28 -0
- package/dist/showcase/assets/separator-BvhVS5L0.js +1 -0
- package/dist/showcase/assets/separator-DeMF0eCd.js +1 -0
- package/dist/showcase/assets/separator-Dsqit2yw.js +1 -0
- package/dist/showcase/assets/settings-2-DnZeyxSR.js +1 -0
- package/dist/showcase/assets/settings-GFwewlvm.js +1 -0
- package/dist/showcase/assets/sheet-B06fRKgl.js +1 -0
- package/dist/showcase/assets/shield-NNzIJA-o.js +1 -0
- package/dist/showcase/assets/shield-alert-dlgSUsVl.js +1 -0
- package/dist/showcase/assets/shield-check-CkqmRaJd.js +1 -0
- package/dist/showcase/assets/shopping-bag-x4S32KGc.js +1 -0
- package/dist/showcase/assets/showcase-CiXeaTrT.js +132 -0
- package/dist/showcase/assets/sidebar-BDOvomlZ.js +1 -0
- package/dist/showcase/assets/sidebar.context-M_w0AsBU.js +1 -0
- package/dist/showcase/assets/skeleton-C0-TGyFP.js +29 -0
- package/dist/showcase/assets/skeleton-ClY9N5IF.js +1 -0
- package/dist/showcase/assets/skeleton-CyCX3AHa.js +1 -0
- package/dist/showcase/assets/skeleton-JapnB0xo.js +1 -0
- package/dist/showcase/assets/slider-BagnbSUE.js +1 -0
- package/dist/showcase/assets/smart-card-BA097ZGN.js +1 -0
- package/dist/showcase/assets/sonner-bg55zTHJ.js +22 -0
- package/dist/showcase/assets/sortable.esm-DCj5rKPd.js +5 -0
- package/dist/showcase/assets/sparkles-a2TsduRv.js +1 -0
- package/dist/showcase/assets/spinner-BRTHJLPS.js +49 -0
- package/dist/showcase/assets/spinner-RQ5TsGWE.js +30 -0
- package/dist/showcase/assets/spinner-yQrc4KLG.js +1 -0
- package/dist/showcase/assets/square-pen-wg5I0K5c.js +1 -0
- package/dist/showcase/assets/stacked-avatars-BGpGV4Is.js +1 -0
- package/dist/showcase/assets/star-Ccv6TKPm.js +1 -0
- package/dist/showcase/assets/startOfDay-BslQvd9l.js +1 -0
- package/dist/showcase/assets/styles-CMmKOMCT.js +1 -0
- package/dist/showcase/assets/suggestions--A7bRqHY.js +126 -0
- package/dist/showcase/assets/support-rail-b2WhhyFB.js +26 -0
- package/dist/showcase/assets/switch-Cv_v9byU.js +1 -0
- package/dist/showcase/assets/switch-DY-b3cEd.js +1 -0
- package/dist/showcase/assets/switch-card-C-Q3eon2.js +1 -0
- package/dist/showcase/assets/sync-BmH6kK2e.js +124 -0
- package/dist/showcase/assets/table-DAil3SVn.js +686 -0
- package/dist/showcase/assets/table-DNimuqS6.js +1 -0
- package/dist/showcase/assets/table-actions-Bgp9_jhZ.js +1 -0
- package/dist/showcase/assets/tabs-DN23r2we.js +1 -0
- package/dist/showcase/assets/tabs-RbFeMoGk.js +19 -0
- package/dist/showcase/assets/tags-input-Cp-ikGn_.js +1 -0
- package/dist/showcase/assets/text-button-CPxfmks9.js +1 -0
- package/dist/showcase/assets/text-link-BBHsgNSW.js +1 -0
- package/dist/showcase/assets/textarea-BGe_VCrI.js +1 -0
- package/dist/showcase/assets/textarea-DAV6cQCw.js +1 -0
- package/dist/showcase/assets/throttle-alert-B85zpgs4.js +1 -0
- package/dist/showcase/assets/timelines-BptCi-0C.js +200 -0
- package/dist/showcase/assets/toggle-group-B4tIG940.js +1 -0
- package/dist/showcase/assets/toggles-BSkNLAjb.js +71 -0
- package/dist/showcase/assets/toggles-group-CQIwVA__.js +32 -0
- package/dist/showcase/assets/tooltip-DN6bKPgk.js +31 -0
- package/dist/showcase/assets/trash-2-DZ5FSAFb.js +1 -0
- package/dist/showcase/assets/trending-up-DtSjt9AO.js +1 -0
- package/dist/showcase/assets/truck-B0QFWMMH.js +1 -0
- package/dist/showcase/assets/typography-8sXlmgaD.js +223 -0
- package/dist/showcase/assets/ui-badge-C4odkkUK.js +28 -0
- package/dist/showcase/assets/ui-card-CU1Ga8J6.js +30 -0
- package/dist/showcase/assets/ui-table-Bp-MkWh5.js +42 -0
- package/dist/showcase/assets/upload-tray-DT0HesKW.js +138 -0
- package/dist/showcase/assets/use-layout-link-BsJvjSZp.js +1 -0
- package/dist/showcase/assets/useAriaLabelledBy-Bl2oGr7T.js +1 -0
- package/dist/showcase/assets/useCollapsiblePanel-C8-r9Srt.js +1 -0
- package/dist/showcase/assets/useCompositeItem-DVZX40q_.js +1 -0
- package/dist/showcase/assets/useCompositeListItem-DWggcwRs.js +1 -0
- package/dist/showcase/assets/useLabelableId-Dx_-xVBr.js +1 -0
- package/dist/showcase/assets/useOpenInteractionType-CKNY2kPx.js +1 -0
- package/dist/showcase/assets/useRender-Bk8pPQUW.js +1 -0
- package/dist/showcase/assets/useTriggerFocusGuards-D74GGv1k.js +1 -0
- package/dist/showcase/assets/useValueChanged-BjYsvuOC.js +1 -0
- package/dist/showcase/assets/user-DlFWtE-h.js +1 -0
- package/dist/showcase/assets/user-plus-NGAALkPS.js +1 -0
- package/dist/showcase/assets/users-DYPDZwd6.js +1 -0
- package/dist/showcase/assets/variant-details-DtdWm8Bt.js +50 -0
- package/dist/showcase/assets/variant-management-Dk_P-wBF.js +209 -0
- package/dist/showcase/assets/vendor-profile-Bf1kKKdO.js +37 -0
- package/dist/showcase/assets/video-BObmzTOM.js +1 -0
- package/dist/showcase/assets/visually-hidden-rJ25V2wc.js +1 -0
- package/dist/showcase/assets/weight-input-DpQ3yEQ3.js +1 -0
- package/dist/showcase/assets/wrench-Df-eIMsM.js +1 -0
- package/dist/showcase/assets/x-DVQ0XpIT.js +1 -0
- package/dist/showcase/assets/zap-_0WPgXWT.js +1 -0
- package/dist/showcase/index.html +2 -2
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/css/tokens/components.css +17 -2
- package/src/css/tokens/foundation.css +4 -2
- package/dist/_shared/accordion-8B4OFqiT.cjs +0 -2
- package/dist/_shared/accordion-8B4OFqiT.cjs.map +0 -1
- package/dist/_shared/accordion-DlpTSZ3p.js +0 -135
- package/dist/_shared/accordion-DlpTSZ3p.js.map +0 -1
- package/dist/_shared/action-menu-BYrYdpkR.cjs +0 -2
- package/dist/_shared/action-menu-BYrYdpkR.cjs.map +0 -1
- package/dist/_shared/action-menu-CYwMZX-b.js +0 -96
- package/dist/_shared/action-menu-CYwMZX-b.js.map +0 -1
- package/dist/_shared/ai-artifact-Cv8VBibf.cjs +0 -3
- package/dist/_shared/ai-artifact-Cv8VBibf.cjs.map +0 -1
- package/dist/_shared/ai-artifact-DwfXQuh4.js +0 -1099
- package/dist/_shared/ai-artifact-DwfXQuh4.js.map +0 -1
- package/dist/_shared/auth-Cz5ci18c.cjs +0 -2
- package/dist/_shared/auth-Cz5ci18c.cjs.map +0 -1
- package/dist/_shared/auth-DDWsgFUL.js +0 -643
- package/dist/_shared/auth-DDWsgFUL.js.map +0 -1
- package/dist/_shared/badge-C65rt1M9.cjs +0 -2
- package/dist/_shared/badge-C65rt1M9.cjs.map +0 -1
- package/dist/_shared/badge-r8ae66Vd.js +0 -110
- package/dist/_shared/badge-r8ae66Vd.js.map +0 -1
- package/dist/_shared/breadcrumbs-CuT0YIfo.js +0 -105
- package/dist/_shared/breadcrumbs-CuT0YIfo.js.map +0 -1
- package/dist/_shared/breadcrumbs-jNzlYqS9.cjs +0 -2
- package/dist/_shared/breadcrumbs-jNzlYqS9.cjs.map +0 -1
- package/dist/_shared/button-Be2ayMxF.js +0 -192
- package/dist/_shared/button-Be2ayMxF.js.map +0 -1
- package/dist/_shared/button-CfQtOuBK.cjs +0 -2
- package/dist/_shared/button-CfQtOuBK.cjs.map +0 -1
- package/dist/_shared/buttons-DABiSx6N.cjs +0 -2
- package/dist/_shared/buttons-DABiSx6N.cjs.map +0 -1
- package/dist/_shared/buttons-DYQqQPpk.js +0 -137
- package/dist/_shared/buttons-DYQqQPpk.js.map +0 -1
- package/dist/_shared/card-radio-group-DKhZhBFV.cjs +0 -2
- package/dist/_shared/card-radio-group-DKhZhBFV.cjs.map +0 -1
- package/dist/_shared/card-radio-group-DRjmLN5s.js +0 -150
- package/dist/_shared/card-radio-group-DRjmLN5s.js.map +0 -1
- package/dist/_shared/cards-BJctT9KD.js +0 -428
- package/dist/_shared/cards-BJctT9KD.js.map +0 -1
- package/dist/_shared/cards-m03XN10f.cjs +0 -2
- package/dist/_shared/cards-m03XN10f.cjs.map +0 -1
- package/dist/_shared/combobox-BdBpeD3C.cjs +0 -2
- package/dist/_shared/combobox-BdBpeD3C.cjs.map +0 -1
- package/dist/_shared/combobox-D9tU_83-.js +0 -954
- package/dist/_shared/combobox-D9tU_83-.js.map +0 -1
- package/dist/_shared/command-BbJB0pjP.cjs +0 -2
- package/dist/_shared/command-BbJB0pjP.cjs.map +0 -1
- package/dist/_shared/command-IP2wy_HN.js +0 -39
- package/dist/_shared/command-IP2wy_HN.js.map +0 -1
- package/dist/_shared/comments-DAzpeuQq.cjs +0 -2
- package/dist/_shared/comments-DAzpeuQq.cjs.map +0 -1
- package/dist/_shared/comments-DzZaKP9x.js +0 -952
- package/dist/_shared/comments-DzZaKP9x.js.map +0 -1
- package/dist/_shared/containers-CB7zaAvN.cjs +0 -2
- package/dist/_shared/containers-CB7zaAvN.cjs.map +0 -1
- package/dist/_shared/containers-CLBmhGfs.js +0 -48
- package/dist/_shared/containers-CLBmhGfs.js.map +0 -1
- package/dist/_shared/copyable-BJYx2SlN.js +0 -38
- package/dist/_shared/copyable-BJYx2SlN.js.map +0 -1
- package/dist/_shared/copyable-DiDEjp8Z.cjs +0 -2
- package/dist/_shared/copyable-DiDEjp8Z.cjs.map +0 -1
- package/dist/_shared/data-display-DQUUEzCx.cjs +0 -2
- package/dist/_shared/data-display-DQUUEzCx.cjs.map +0 -1
- package/dist/_shared/data-display-LlvMEFTK.js +0 -1878
- package/dist/_shared/data-display-LlvMEFTK.js.map +0 -1
- package/dist/_shared/date-picker-CrC-lHyF.cjs +0 -2
- package/dist/_shared/date-picker-CrC-lHyF.cjs.map +0 -1
- package/dist/_shared/date-picker-DbYBek-b.js +0 -1361
- package/dist/_shared/date-picker-DbYBek-b.js.map +0 -1
- package/dist/_shared/date-pickers-9AU8YQK2.js +0 -329
- package/dist/_shared/date-pickers-9AU8YQK2.js.map +0 -1
- package/dist/_shared/date-pickers-DUEwCWig.cjs +0 -2
- package/dist/_shared/date-pickers-DUEwCWig.cjs.map +0 -1
- package/dist/_shared/display-BqoPOdof.cjs +0 -2
- package/dist/_shared/display-BqoPOdof.cjs.map +0 -1
- package/dist/_shared/display-CQoSwU74.js +0 -986
- package/dist/_shared/display-CQoSwU74.js.map +0 -1
- package/dist/_shared/dropdown-menu-CHQzQWUK.cjs +0 -2
- package/dist/_shared/dropdown-menu-CHQzQWUK.cjs.map +0 -1
- package/dist/_shared/dropdown-menu-CoWmrjYX.js +0 -147
- package/dist/_shared/dropdown-menu-CoWmrjYX.js.map +0 -1
- package/dist/_shared/form-sizing-DJus3nK3.cjs +0 -2
- package/dist/_shared/form-sizing-DJus3nK3.cjs.map +0 -1
- package/dist/_shared/form-sizing-DWjJsQSR.js +0 -42
- package/dist/_shared/form-sizing-DWjJsQSR.js.map +0 -1
- package/dist/_shared/forms-CNh-S9FK.cjs +0 -2
- package/dist/_shared/forms-CNh-S9FK.cjs.map +0 -1
- package/dist/_shared/forms-DIz3SCA9.js +0 -3534
- package/dist/_shared/forms-DIz3SCA9.js.map +0 -1
- package/dist/_shared/header-Bs61tQla.js +0 -447
- package/dist/_shared/header-Bs61tQla.js.map +0 -1
- package/dist/_shared/header-D01oOxna.cjs +0 -2
- package/dist/_shared/header-D01oOxna.cjs.map +0 -1
- package/dist/_shared/hooks-ACnpaIli.js +0 -95
- package/dist/_shared/hooks-ACnpaIli.js.map +0 -1
- package/dist/_shared/hooks-B7khuHkk.cjs +0 -2
- package/dist/_shared/hooks-B7khuHkk.cjs.map +0 -1
- package/dist/_shared/input-CzJzVyQ0.js +0 -182
- package/dist/_shared/input-CzJzVyQ0.js.map +0 -1
- package/dist/_shared/input-Dvvmn96E.cjs +0 -2
- package/dist/_shared/input-Dvvmn96E.cjs.map +0 -1
- package/dist/_shared/item-CVjjpHQd.js +0 -226
- package/dist/_shared/item-CVjjpHQd.js.map +0 -1
- package/dist/_shared/item-ChHblHhR.cjs +0 -2
- package/dist/_shared/item-ChHblHhR.cjs.map +0 -1
- package/dist/_shared/layout-CGi5w1mo.js +0 -268
- package/dist/_shared/layout-CGi5w1mo.js.map +0 -1
- package/dist/_shared/layout-ccVwjUG8.cjs +0 -2
- package/dist/_shared/layout-ccVwjUG8.cjs.map +0 -1
- package/dist/_shared/mentions-Cg_4vFxd.cjs +0 -2
- package/dist/_shared/mentions-Cg_4vFxd.cjs.map +0 -1
- package/dist/_shared/mentions-Ci9RFTfw.js +0 -506
- package/dist/_shared/mentions-Ci9RFTfw.js.map +0 -1
- package/dist/_shared/money-display-BFk9Gu21.cjs +0 -2
- package/dist/_shared/money-display-BFk9Gu21.cjs.map +0 -1
- package/dist/_shared/money-display-DpuLnsK2.js +0 -198
- package/dist/_shared/money-display-DpuLnsK2.js.map +0 -1
- package/dist/_shared/navigation-C1QN2-Vq.cjs +0 -2
- package/dist/_shared/navigation-C1QN2-Vq.cjs.map +0 -1
- package/dist/_shared/navigation-CMrLO8v5.js +0 -436
- package/dist/_shared/navigation-CMrLO8v5.js.map +0 -1
- package/dist/_shared/overlays-BJLczwpz.js +0 -735
- package/dist/_shared/overlays-BJLczwpz.js.map +0 -1
- package/dist/_shared/overlays-DbaPLT67.cjs +0 -2
- package/dist/_shared/overlays-DbaPLT67.cjs.map +0 -1
- package/dist/_shared/popover-menu-D_t6rCvN.cjs +0 -2
- package/dist/_shared/popover-menu-D_t6rCvN.cjs.map +0 -1
- package/dist/_shared/popover-menu-f2O6R_27.js +0 -93
- package/dist/_shared/popover-menu-f2O6R_27.js.map +0 -1
- package/dist/_shared/rich-text-editor-DmZHbsms.js +0 -620
- package/dist/_shared/rich-text-editor-DmZHbsms.js.map +0 -1
- package/dist/_shared/rich-text-editor-DqUU-H7i.cjs +0 -2
- package/dist/_shared/rich-text-editor-DqUU-H7i.cjs.map +0 -1
- package/dist/_shared/settings-CgtcSI8L.js +0 -143
- package/dist/_shared/settings-CgtcSI8L.js.map +0 -1
- package/dist/_shared/settings-csNmeT7b.cjs +0 -2
- package/dist/_shared/settings-csNmeT7b.cjs.map +0 -1
- package/dist/_shared/sidebar-DyGIcJd9.cjs +0 -2
- package/dist/_shared/sidebar-DyGIcJd9.cjs.map +0 -1
- package/dist/_shared/sidebar-OT-xIguQ.js +0 -548
- package/dist/_shared/sidebar-OT-xIguQ.js.map +0 -1
- package/dist/_shared/skeleton-DwF5VdMh.cjs +0 -2
- package/dist/_shared/skeleton-DwF5VdMh.cjs.map +0 -1
- package/dist/_shared/skeleton-yUXqeWzB.js +0 -256
- package/dist/_shared/skeleton-yUXqeWzB.js.map +0 -1
- package/dist/_shared/spinner-BDrUzfTo.cjs +0 -2
- package/dist/_shared/spinner-BDrUzfTo.cjs.map +0 -1
- package/dist/_shared/spinner-CuVZhJhN.js +0 -67
- package/dist/_shared/spinner-CuVZhJhN.js.map +0 -1
- package/dist/_shared/table-BVWemr79.cjs +0 -2
- package/dist/_shared/table-BVWemr79.cjs.map +0 -1
- package/dist/_shared/table-WYSjfQRr.js +0 -1377
- package/dist/_shared/table-WYSjfQRr.js.map +0 -1
- package/dist/_shared/textarea-C0iZwWdD.js +0 -118
- package/dist/_shared/textarea-C0iZwWdD.js.map +0 -1
- package/dist/_shared/textarea-bHFAtwYd.cjs +0 -2
- package/dist/_shared/textarea-bHFAtwYd.cjs.map +0 -1
- package/dist/_shared/typography-5bLhAYaK.js +0 -201
- package/dist/_shared/typography-5bLhAYaK.js.map +0 -1
- package/dist/_shared/typography-CWEobAJV.cjs +0 -2
- package/dist/_shared/typography-CWEobAJV.cjs.map +0 -1
- package/dist/_shared/workspace-BkwsqTrc.cjs +0 -2
- package/dist/_shared/workspace-BkwsqTrc.cjs.map +0 -1
- package/dist/_shared/workspace-DpU1YG1t.js +0 -357
- package/dist/_shared/workspace-DpU1YG1t.js.map +0 -1
- package/dist/showcase/assets/AreaChart-DxDBymDt.js +0 -6
- package/dist/showcase/assets/CompositeItem-owAA4Ah3.js +0 -1
- package/dist/showcase/assets/CompositeRoot-DzHTtLBs.js +0 -1
- package/dist/showcase/assets/DialogTrigger-OUBMI353.js +0 -1
- package/dist/showcase/assets/LabelableContext-Cd9Gf7TR.js +0 -1
- package/dist/showcase/assets/PreviewLayout-X_NxjYOV.js +0 -1
- package/dist/showcase/assets/RadioGroup-BzveyiIV.js +0 -1
- package/dist/showcase/assets/ScrollAreaCorner-IZFF348L.js +0 -1
- package/dist/showcase/assets/Separator-CSYYEo-X.js +0 -1
- package/dist/showcase/assets/ToolbarRootContext-BYSKM0e8.js +0 -1
- package/dist/showcase/assets/accordion-B9VkLXiy.js +0 -171
- package/dist/showcase/assets/accordion-variants-g7lk5hEX.js +0 -1
- package/dist/showcase/assets/action-menu-CWIvuiLO.js +0 -1
- package/dist/showcase/assets/actions-BuwzXYEF.js +0 -310
- package/dist/showcase/assets/activities-BTBlr1G4.js +0 -500
- package/dist/showcase/assets/activities-feed-card-C5lcwUFk.js +0 -1
- package/dist/showcase/assets/admin-kbK6nUjx.js +0 -140
- package/dist/showcase/assets/ai-CKu9EGmA.js +0 -207
- package/dist/showcase/assets/ai-artifact-Bg1MFGeF.js +0 -2
- package/dist/showcase/assets/ai-chat-DEntRhJD.js +0 -568
- package/dist/showcase/assets/ai-elements-DyKRCWiS.js +0 -387
- package/dist/showcase/assets/ai-tool-call-DFrTelEX.js +0 -1
- package/dist/showcase/assets/alert-C0wSpBYn.js +0 -93
- package/dist/showcase/assets/alert-CZ4rgwPr.js +0 -62
- package/dist/showcase/assets/alert-WTKIdE4s.js +0 -1
- package/dist/showcase/assets/api-key-list-BnrUT9Uf.js +0 -1
- package/dist/showcase/assets/api-key-list-bQ6QzFhA.js +0 -73
- package/dist/showcase/assets/app-sidebar-B3veRbac.js +0 -1
- package/dist/showcase/assets/arrow-down-CEXJx115.js +0 -1
- package/dist/showcase/assets/arrow-left-Ca6ri5q0.js +0 -1
- package/dist/showcase/assets/arrow-right-a3STqWgx.js +0 -1
- package/dist/showcase/assets/arrow-up-CCU1MaGq.js +0 -1
- package/dist/showcase/assets/arrow-up-right-BDImqvM2.js +0 -1
- package/dist/showcase/assets/avatar-Bwgai0SK.js +0 -67
- package/dist/showcase/assets/avatar-DSmL52Us.js +0 -57
- package/dist/showcase/assets/avatar-kK9n1a25.js +0 -1
- package/dist/showcase/assets/avatar-nb7MgV_x.js +0 -1
- package/dist/showcase/assets/badge-CTGPRSXm.js +0 -31
- package/dist/showcase/assets/badge-check-zqoYYrVj.js +0 -1
- package/dist/showcase/assets/bell-D7HWGStL.js +0 -1
- package/dist/showcase/assets/boolean-indicator-CqwlV0cf.js +0 -1
- package/dist/showcase/assets/bot-Owx4SMiU.js +0 -1
- package/dist/showcase/assets/box-BeeoLlMd.js +0 -1
- package/dist/showcase/assets/braces-fzrExVIx.js +0 -1
- package/dist/showcase/assets/brain-Da2fsBjd.js +0 -1
- package/dist/showcase/assets/brand-Bo6uwdGf.js +0 -36
- package/dist/showcase/assets/breadcrumb-B-K-6dtd.js +0 -1
- package/dist/showcase/assets/breadcrumb-B6lR9Cq2.js +0 -52
- package/dist/showcase/assets/breadcrumbs-Bamog6P5.js +0 -1
- package/dist/showcase/assets/briefcase-DQjbh28E.js +0 -1
- package/dist/showcase/assets/building-2-DaQW5yJa.js +0 -1
- package/dist/showcase/assets/button-D3skvyQS.js +0 -44
- package/dist/showcase/assets/button-group-BYtbrhme.js +0 -1
- package/dist/showcase/assets/buttons-B3IkMmNQ.js +0 -272
- package/dist/showcase/assets/calendar-C4fCDK3O.js +0 -1
- package/dist/showcase/assets/calendar-CcwkVxCK.js +0 -16
- package/dist/showcase/assets/calendar-DBkwxV9H.js +0 -1
- package/dist/showcase/assets/calendar-days-BWed1W3Z.js +0 -1
- package/dist/showcase/assets/camera-BUoAyoZT.js +0 -1
- package/dist/showcase/assets/card-7DBPqWuv.js +0 -1
- package/dist/showcase/assets/card-ClwyNDHJ.js +0 -188
- package/dist/showcase/assets/card-primitives-BE1YpEQW.js +0 -1
- package/dist/showcase/assets/card-radio-group-1NMbocuG.js +0 -1
- package/dist/showcase/assets/cards-Bu8uaGSU.js +0 -354
- package/dist/showcase/assets/carousel-dTTRRSQg.js +0 -449
- package/dist/showcase/assets/cell-renderers-CcyBuUsC.js +0 -1
- package/dist/showcase/assets/chart-BSboeIO6.js +0 -358
- package/dist/showcase/assets/chart-column-CCzA6B9l.js +0 -1
- package/dist/showcase/assets/checkbox-CSdEPNT5.js +0 -1
- package/dist/showcase/assets/checkbox-CqNLi9Q3.js +0 -1
- package/dist/showcase/assets/chevron-down-C91gNQdT.js +0 -1
- package/dist/showcase/assets/chevron-left-SiAoYFSo.js +0 -1
- package/dist/showcase/assets/chevron-up-Beb1_ET_.js +0 -1
- package/dist/showcase/assets/chevrons-up-down-DaST4VKL.js +0 -1
- package/dist/showcase/assets/circle-D9KiRp8C.js +0 -1
- package/dist/showcase/assets/circle-alert-BQkAwFkl.js +0 -1
- package/dist/showcase/assets/circle-check-big-CN5YOJqq.js +0 -1
- package/dist/showcase/assets/circle-check-dqmKTiDe.js +0 -1
- package/dist/showcase/assets/circle-dot-B7LPN_0V.js +0 -1
- package/dist/showcase/assets/circle-question-mark-yTRkQO3d.js +0 -1
- package/dist/showcase/assets/circle-x-CW2dFcX-.js +0 -1
- package/dist/showcase/assets/clock-3-CXJ_JotW.js +0 -1
- package/dist/showcase/assets/clock-DUqvfazQ.js +0 -1
- package/dist/showcase/assets/code-xml-BmdQDeID.js +0 -1
- package/dist/showcase/assets/collapsible-C-WYhJxn.js +0 -1
- package/dist/showcase/assets/collapsible-CL37AlCX.js +0 -27
- package/dist/showcase/assets/collapsible-uGO5Rj8q.js +0 -1
- package/dist/showcase/assets/combobox-CFh5kUzj.js +0 -685
- package/dist/showcase/assets/command-CtpLaHjh.js +0 -1
- package/dist/showcase/assets/command-DSlK-QAE.js +0 -1
- package/dist/showcase/assets/comment-composer-Rr_a5tZQ.js +0 -1
- package/dist/showcase/assets/comment-item-Dme2o2KI.js +0 -1
- package/dist/showcase/assets/comments-CW2nz465.js +0 -357
- package/dist/showcase/assets/commerce-bwcq6oPn.js +0 -267
- package/dist/showcase/assets/composite-DMIR0vmP.js +0 -1
- package/dist/showcase/assets/conditional-rendering-Bk6AC76c.js +0 -1
- package/dist/showcase/assets/contact-card-BCXS9tWq.js +0 -65
- package/dist/showcase/assets/content-container-b1dC2caJ.js +0 -1
- package/dist/showcase/assets/copyable-BIABx-Vv.js +0 -96
- package/dist/showcase/assets/copyable-Ic9wzVaj.js +0 -1
- package/dist/showcase/assets/course-card-Bo5P3TYv.js +0 -77
- package/dist/showcase/assets/cpu-_VqU6yRO.js +0 -1
- package/dist/showcase/assets/credit-card-BbxO8xLo.js +0 -1
- package/dist/showcase/assets/css-variables-zqpBgnS1.js +0 -1205
- package/dist/showcase/assets/currency-Cjvt4F0b.js +0 -149
- package/dist/showcase/assets/dark-surfaces-CLwERt1f.js +0 -90
- package/dist/showcase/assets/data-view-AtyUp7b-.js +0 -124
- package/dist/showcase/assets/data-view-cnEmgP1C.js +0 -4
- package/dist/showcase/assets/database-TbVXEw7v.js +0 -1
- package/dist/showcase/assets/date-block-CDHemKnP.js +0 -1
- package/dist/showcase/assets/date-block-COb89Y_-.js +0 -1
- package/dist/showcase/assets/date-picker-CK8llBIN.js +0 -1
- package/dist/showcase/assets/date-pickers-DFfDnW9w.js +0 -73
- package/dist/showcase/assets/dense-info-CaFVDE90.js +0 -106
- package/dist/showcase/assets/design-system-consistency-CeSMuTuu.js +0 -264
- package/dist/showcase/assets/dialog-CRQNEK2K.js +0 -1
- package/dist/showcase/assets/dialog-CsCLDb0G.js +0 -1
- package/dist/showcase/assets/dialog-Qh3EHEKq.js +0 -1
- package/dist/showcase/assets/display-utilities-rP3hb4FK.js +0 -4
- package/dist/showcase/assets/display-utilities.examples-BwbvHOcx.js +0 -309
- package/dist/showcase/assets/dist-CbqRct9s.js +0 -1
- package/dist/showcase/assets/dist-iivamCjp.js +0 -45
- package/dist/showcase/assets/dollar-sign-COaRmdJE.js +0 -1
- package/dist/showcase/assets/download-yCcb4rfH.js +0 -1
- package/dist/showcase/assets/dropdown-menu-KoFNw-fX.js +0 -1
- package/dist/showcase/assets/dropzone-DLguWnmu.js +0 -1
- package/dist/showcase/assets/earth-TDRqTA4S.js +0 -1
- package/dist/showcase/assets/ellipsis-Q_fBbRE9.js +0 -1
- package/dist/showcase/assets/ellipsis-vertical-Bh8t3Z1g.js +0 -1
- package/dist/showcase/assets/empty-DvmDTSAj.js +0 -1
- package/dist/showcase/assets/empty-item-C3HP5nuw.js +0 -49
- package/dist/showcase/assets/empty-state-Dcin4cOt.js +0 -190
- package/dist/showcase/assets/empty-state-IV_GTNEI.js +0 -1
- package/dist/showcase/assets/enhanced-activities-BLf2gpes.js +0 -357
- package/dist/showcase/assets/enhanced-combobox-ClZcVnhv.js +0 -1
- package/dist/showcase/assets/esm-Cf6QQstQ.js +0 -2
- package/dist/showcase/assets/event-calendar-zrfI_3AM.js +0 -138
- package/dist/showcase/assets/event-log-D-_CViAw.js +0 -330
- package/dist/showcase/assets/example-6bZGEb3-.js +0 -1
- package/dist/showcase/assets/external-link-7ldgjHZM.js +0 -1
- package/dist/showcase/assets/eye-pXVkim6z.js +0 -1
- package/dist/showcase/assets/feature-announcement-CFcGj3ge.js +0 -34
- package/dist/showcase/assets/file-Bn9sAGaT.js +0 -1
- package/dist/showcase/assets/file-text-Cvxg6pjh.js +0 -1
- package/dist/showcase/assets/filter-layout-DqNRRzDU.js +0 -1
- package/dist/showcase/assets/filters-CQMI_T63.js +0 -139
- package/dist/showcase/assets/flag-vI_WJ-BU.js +0 -1
- package/dist/showcase/assets/folder-open-0AyKSRQS.js +0 -1
- package/dist/showcase/assets/form-field-BaBeXn7a.js +0 -1
- package/dist/showcase/assets/form-sizing-Dltt6Fj-.js +0 -1
- package/dist/showcase/assets/format-DLLMyN-3.js +0 -1
- package/dist/showcase/assets/forms-gPD-Caru.js +0 -915
- package/dist/showcase/assets/funnel-Ca9nWMHm.js +0 -1
- package/dist/showcase/assets/generic-AAssz0h7.js +0 -1
- package/dist/showcase/assets/getPseudoElementBounds-fbxSMOsb.js +0 -1
- package/dist/showcase/assets/gift-BC42Oxfz.js +0 -1
- package/dist/showcase/assets/giftcard-cards-CFKnYe0c.js +0 -85
- package/dist/showcase/assets/git-branch-B-nF8w-J.js +0 -1
- package/dist/showcase/assets/global-search-D6Gxw0G3.js +0 -1
- package/dist/showcase/assets/global-search-jsb_4idg.js +0 -215
- package/dist/showcase/assets/globe-C92uBSrO.js +0 -1
- package/dist/showcase/assets/gradient-card-D4ly60sD.js +0 -58
- package/dist/showcase/assets/hash-BShTbxlR.js +0 -1
- package/dist/showcase/assets/header-CSiNqg9Q.js +0 -1
- package/dist/showcase/assets/header-notifications-CpHeFPQF.js +0 -1
- package/dist/showcase/assets/heart-B3hXs7fr.js +0 -1
- package/dist/showcase/assets/hooks-CamAqFFh.js +0 -220
- package/dist/showcase/assets/house-4_CouE-Y.js +0 -1
- package/dist/showcase/assets/icon-badge-CePIZqWR.js +0 -1
- package/dist/showcase/assets/icon-badge-DSbvvnxh.js +0 -37
- package/dist/showcase/assets/image-BxbFIbVJ.js +0 -1
- package/dist/showcase/assets/inbox-BXab1SM6.js +0 -1
- package/dist/showcase/assets/index-BPUtPJjB.css +0 -2
- package/dist/showcase/assets/index-BjjNfnhP.js +0 -10
- package/dist/showcase/assets/inertValue-CZOzgsmF.js +0 -1
- package/dist/showcase/assets/info-DzqwCq93.js +0 -1
- package/dist/showcase/assets/inline-stat-D5ybpUh-.js +0 -15
- package/dist/showcase/assets/inline-stat-Dq34wv-6.js +0 -1
- package/dist/showcase/assets/input-C8OfUHCK.js +0 -1
- package/dist/showcase/assets/input-D34Ge3rh.js +0 -1
- package/dist/showcase/assets/input-group-BCPZ6Pwq.js +0 -1
- package/dist/showcase/assets/input-group-CySTANka.js +0 -47
- package/dist/showcase/assets/inputs-CnmHo_lj.js +0 -155
- package/dist/showcase/assets/installation-BPvseS46.js +0 -134
- package/dist/showcase/assets/invoice-header-C9JjJWQX.js +0 -36
- package/dist/showcase/assets/invoice-items-DB8tbCv9.js +0 -36
- package/dist/showcase/assets/invoice-mini-Q_PnimKL.js +0 -14
- package/dist/showcase/assets/invoice-table-CLDvpLib.js +0 -30
- package/dist/showcase/assets/isSameDay-D8bDebyL.js +0 -1
- package/dist/showcase/assets/isToday-XVjRuMtp.js +0 -1
- package/dist/showcase/assets/italic-Cm13b8qb.js +0 -1
- package/dist/showcase/assets/item-C07859JQ.js +0 -1
- package/dist/showcase/assets/item-LinnMxvu.js +0 -1
- package/dist/showcase/assets/item-i7ZUMs5t.js +0 -140
- package/dist/showcase/assets/kanban-CIMTpuN5.js +0 -188
- package/dist/showcase/assets/key-round-Bh7EzOyR.js +0 -1
- package/dist/showcase/assets/label-C3A4CjeG.js +0 -1
- package/dist/showcase/assets/languages-C37jhetw.js +0 -1
- package/dist/showcase/assets/layers-Lyr6p-Nt.js +0 -1
- package/dist/showcase/assets/layout-app-shell-BWAkl9gq.js +0 -608
- package/dist/showcase/assets/layout-auth-y1alnhc8.js +0 -790
- package/dist/showcase/assets/layout-containers-B6c-uvil.js +0 -101
- package/dist/showcase/assets/layout-header-DNhJHWNw.js +0 -203
- package/dist/showcase/assets/layout-page-CXU7CnQK.js +0 -315
- package/dist/showcase/assets/layout-primitives-StuFwfwh.js +0 -34
- package/dist/showcase/assets/layout-sidebar-D-QjnZPh.js +0 -224
- package/dist/showcase/assets/layout-users-D7KMzs3-.js +0 -117
- package/dist/showcase/assets/layout-workspace-Butr7CL5.js +0 -191
- package/dist/showcase/assets/lib-D5nOMXIt.js +0 -1
- package/dist/showcase/assets/list-checks-Cg9HZf4W.js +0 -1
- package/dist/showcase/assets/lock-Da21HhQx.js +0 -1
- package/dist/showcase/assets/lock-keyhole-DNTfa9e3.js +0 -1
- package/dist/showcase/assets/mail-Bamky-ti.js +0 -1
- package/dist/showcase/assets/mail-check-BfVYPC42.js +0 -1
- package/dist/showcase/assets/map-BTlWnRAQ.js +0 -124
- package/dist/showcase/assets/map-pin-BU2RBuvC.js +0 -1
- package/dist/showcase/assets/media-library-DJxgoGAF.js +0 -699
- package/dist/showcase/assets/mention-inline-suggestions-CbXVAvbK.js +0 -1
- package/dist/showcase/assets/mentions-kMT-Z3qU.js +0 -138
- package/dist/showcase/assets/menus-bhp_n9PT.js +0 -171
- package/dist/showcase/assets/message-square-DC5Bb9Zs.js +0 -1
- package/dist/showcase/assets/metadata-list-DGr729EW.js +0 -286
- package/dist/showcase/assets/metadata-list-DyjhZi6d.js +0 -1
- package/dist/showcase/assets/metric-DRDok6Ci.js +0 -1
- package/dist/showcase/assets/metric-bar-DZsH4Q3U.js +0 -1
- package/dist/showcase/assets/metric-grid-BlFXTrid.js +0 -1
- package/dist/showcase/assets/metric-trend-chip-oEihbEK8.js +0 -1
- package/dist/showcase/assets/metrics-analytics-bar-BovaXHQX.js +0 -44
- package/dist/showcase/assets/metrics-analytics-cards-CeX9Skmd.js +0 -50
- package/dist/showcase/assets/metrics-comparison-DFPSmREl.js +0 -76
- package/dist/showcase/assets/metrics-heatmap-CXzfZwe_.js +0 -27
- package/dist/showcase/assets/metrics-inline-badge-DQJaNpYH.js +0 -17
- package/dist/showcase/assets/metrics-kpi-row-BIpv8CPU.js +0 -31
- package/dist/showcase/assets/metrics-micro-grid-EOCkRI5Z.js +0 -42
- package/dist/showcase/assets/metrics-overview-BD4s9H2T.js +0 -192
- package/dist/showcase/assets/metrics-stat-cards-t7asN5nA.js +0 -54
- package/dist/showcase/assets/minus-Dr1iTc_q.js +0 -1
- package/dist/showcase/assets/money-display-B5_VqQC0.js +0 -1
- package/dist/showcase/assets/money-display-bU2_cVGX.js +0 -1
- package/dist/showcase/assets/month-year-picker-DVRuYbLm.js +0 -1
- package/dist/showcase/assets/navigation-DBKvJoe-.js +0 -231
- package/dist/showcase/assets/navigation-DOhfmtgy.js +0 -90
- package/dist/showcase/assets/navigation-extras-BkO2TZP7.js +0 -43
- package/dist/showcase/assets/notification-banner-CE1Ei_ZT.js +0 -1
- package/dist/showcase/assets/onboarding-checklist-Bf0aoBoa.js +0 -119
- package/dist/showcase/assets/overflow-tab-bar-B2RXtyMP.js +0 -1
- package/dist/showcase/assets/overlays-4E_sUgkz.js +0 -408
- package/dist/showcase/assets/overlays-ulNl-Vhr.js +0 -159
- package/dist/showcase/assets/overview-CgymfIBq.js +0 -184
- package/dist/showcase/assets/package-CADuUP1u.js +0 -1
- package/dist/showcase/assets/package-check-O7MD6XE_.js +0 -1
- package/dist/showcase/assets/page-GB6OIgID.js +0 -1
- package/dist/showcase/assets/page-action-button-Dpprot7y.js +0 -1
- package/dist/showcase/assets/page-header-2VEUPx67.js +0 -1
- package/dist/showcase/assets/pagination-BBuRtAX9.js +0 -1
- package/dist/showcase/assets/pagination-C4mt4Q4l.js +0 -42
- package/dist/showcase/assets/paperclip-Cmyh3Bhf.js +0 -1
- package/dist/showcase/assets/password-input-CgZj1niQ.js +0 -1
- package/dist/showcase/assets/pencil-CtdXjogr.js +0 -1
- package/dist/showcase/assets/phone-CAFMH1vV.js +0 -1
- package/dist/showcase/assets/placeholder-pattern-DHKm-uYV.js +0 -1
- package/dist/showcase/assets/plus-CN2dzUxL.js +0 -1
- package/dist/showcase/assets/popover-DILNXLWy.js +0 -1
- package/dist/showcase/assets/popover-menu-Bp08xxOf.js +0 -1
- package/dist/showcase/assets/popover-o1EO2yVS.js +0 -1
- package/dist/showcase/assets/products-CCLAbHBN.js +0 -423
- package/dist/showcase/assets/progress-BGna-ZmU.js +0 -18
- package/dist/showcase/assets/progress-BSYlNLIJ.js +0 -1
- package/dist/showcase/assets/progress-CZVy3LGB.js +0 -1
- package/dist/showcase/assets/props-table-X9St7Q4m.js +0 -1
- package/dist/showcase/assets/props.generated-f_jHBhPb.json +0 -41753
- package/dist/showcase/assets/qr-code-CEmKf9xU.js +0 -1
- package/dist/showcase/assets/quote-IH6r-rlY.js +0 -1
- package/dist/showcase/assets/receipt-m9rOe5lY.js +0 -1
- package/dist/showcase/assets/receipt-text-C0TobatH.js +0 -1
- package/dist/showcase/assets/refinement-guide-t9T7iAS2.js +0 -189
- package/dist/showcase/assets/refresh-cw-Dy_Nc4jA.js +0 -1
- package/dist/showcase/assets/resolveValueLabel-DR7LgQP5.js +0 -1
- package/dist/showcase/assets/resource-BcJ8O6uj.js +0 -1
- package/dist/showcase/assets/resource-_zDXez77.js +0 -139
- package/dist/showcase/assets/resource-selector-card-CCAEF-AT.js +0 -43
- package/dist/showcase/assets/rich-text-editor-BJG_ECJp.js +0 -143
- package/dist/showcase/assets/rich-text-editor-fbgVfyEH.js +0 -124
- package/dist/showcase/assets/rotate-ccw-CGuTkHQ3.js +0 -1
- package/dist/showcase/assets/route-C7EZ2Njy.js +0 -1
- package/dist/showcase/assets/save-fKrt-yFG.js +0 -1
- package/dist/showcase/assets/schema-form-k7TXeirD.js +0 -327
- package/dist/showcase/assets/scroll-area-CqNwdlI6.js +0 -32
- package/dist/showcase/assets/scroll-area-UVtlGOgx.js +0 -1
- package/dist/showcase/assets/section-DuBNJP4P.js +0 -1
- package/dist/showcase/assets/select-CINVEIWn.js +0 -1
- package/dist/showcase/assets/select-ZLaamXrm.js +0 -1
- package/dist/showcase/assets/send-DBvt_4jT.js +0 -1
- package/dist/showcase/assets/separator-BdBXRpc3.js +0 -28
- package/dist/showcase/assets/separator-CkJjJQWW.js +0 -1
- package/dist/showcase/assets/separator-CxOeStjL.js +0 -1
- package/dist/showcase/assets/separator-O-VQMSf_.js +0 -1
- package/dist/showcase/assets/settings-2-BWjMVlyS.js +0 -1
- package/dist/showcase/assets/settings-D9Z79UcG.js +0 -1
- package/dist/showcase/assets/sheet-CK9C6r7_.js +0 -1
- package/dist/showcase/assets/shield-BboB3Zlo.js +0 -1
- package/dist/showcase/assets/shield-alert-CAAobStl.js +0 -1
- package/dist/showcase/assets/shield-check-Rfyzz9bK.js +0 -1
- package/dist/showcase/assets/shopping-bag-5hLD82YW.js +0 -1
- package/dist/showcase/assets/showcase-DhOQXB5E.js +0 -132
- package/dist/showcase/assets/sidebar-ZTUACc0t.js +0 -1
- package/dist/showcase/assets/sidebar.context-BiNOpG5W.js +0 -1
- package/dist/showcase/assets/skeleton-BZUSoHbk.js +0 -1
- package/dist/showcase/assets/skeleton-BZkYzAdq.js +0 -1
- package/dist/showcase/assets/skeleton-CrOp8tx3.js +0 -29
- package/dist/showcase/assets/skeleton-P5GXAj4U.js +0 -1
- package/dist/showcase/assets/slider-zlE7nLrp.js +0 -1
- package/dist/showcase/assets/smart-card-OExZHSsj.js +0 -1
- package/dist/showcase/assets/sonner-eMphKM9E.js +0 -22
- package/dist/showcase/assets/sortable.esm-CM9VD5N4.js +0 -5
- package/dist/showcase/assets/sparkles-CIB5irID.js +0 -1
- package/dist/showcase/assets/spinner-11-kP-Ob.js +0 -1
- package/dist/showcase/assets/spinner-D4G5TFSm.js +0 -49
- package/dist/showcase/assets/spinner-DKGukuFV.js +0 -30
- package/dist/showcase/assets/square-pen-zflKy9oX.js +0 -1
- package/dist/showcase/assets/stacked-avatars-Cve1Y6GY.js +0 -1
- package/dist/showcase/assets/star-DleXDkCp.js +0 -1
- package/dist/showcase/assets/startOfDay-TDP2erzM.js +0 -1
- package/dist/showcase/assets/styles-BKlX_Ipc.js +0 -1
- package/dist/showcase/assets/suggestions-Dt2hm1NY.js +0 -126
- package/dist/showcase/assets/switch-DAPAgJbv.js +0 -1
- package/dist/showcase/assets/switch-fQpP2tJl.js +0 -1
- package/dist/showcase/assets/sync-BRcK160D.js +0 -124
- package/dist/showcase/assets/table-Dhmbe1yN.js +0 -686
- package/dist/showcase/assets/table-actions-GGrPOQcv.js +0 -1
- package/dist/showcase/assets/table-v0Eu5yZn.js +0 -1
- package/dist/showcase/assets/tabs-DmaXB1aF.js +0 -19
- package/dist/showcase/assets/tabs-vbNIJ-eo.js +0 -1
- package/dist/showcase/assets/tags-input-Bms_Q5CE.js +0 -1
- package/dist/showcase/assets/text-button-gvJCzaXS.js +0 -1
- package/dist/showcase/assets/text-link-DkByVX4d.js +0 -1
- package/dist/showcase/assets/textarea-B6Ho29y3.js +0 -1
- package/dist/showcase/assets/textarea-JCb0yhZ1.js +0 -1
- package/dist/showcase/assets/throttle-alert-CPU-u6Rs.js +0 -1
- package/dist/showcase/assets/timelines-Bw7mvAdx.js +0 -200
- package/dist/showcase/assets/toggle-group-jlIGX1zh.js +0 -1
- package/dist/showcase/assets/toggles-DV6V9vj-.js +0 -71
- package/dist/showcase/assets/toggles-group-C-Y3dG8q.js +0 -32
- package/dist/showcase/assets/tooltip-CDtPyNOv.js +0 -31
- package/dist/showcase/assets/trash-2-CXRm3lMl.js +0 -1
- package/dist/showcase/assets/trending-up-Bcyp9cw8.js +0 -1
- package/dist/showcase/assets/truck-DVgzuKLP.js +0 -1
- package/dist/showcase/assets/typography-BKPf4j85.js +0 -223
- package/dist/showcase/assets/ui-badge-D-Ud2MES.js +0 -28
- package/dist/showcase/assets/ui-card-gGqI2cfr.js +0 -30
- package/dist/showcase/assets/ui-table-Bqcab_kq.js +0 -42
- package/dist/showcase/assets/upload-tray-BFh6twLE.js +0 -138
- package/dist/showcase/assets/use-layout-link-e9jr981L.js +0 -1
- package/dist/showcase/assets/useAriaLabelledBy-ByBTPUi3.js +0 -1
- package/dist/showcase/assets/useCollapsiblePanel-Bx_-SRtw.js +0 -1
- package/dist/showcase/assets/useCompositeItem-Dmih9c3W.js +0 -1
- package/dist/showcase/assets/useCompositeListItem-C0QJgAKb.js +0 -1
- package/dist/showcase/assets/useLabelableId-COfjI9qt.js +0 -1
- package/dist/showcase/assets/useOpenInteractionType-CRefmlni.js +0 -1
- package/dist/showcase/assets/useRender-Bgu76j1u.js +0 -1
- package/dist/showcase/assets/useTriggerFocusGuards-B2fPZeWf.js +0 -1
- package/dist/showcase/assets/useValueChanged-CNjJ-spo.js +0 -1
- package/dist/showcase/assets/user-CmkLnMh9.js +0 -1
- package/dist/showcase/assets/user-plus-3CGFNUf0.js +0 -1
- package/dist/showcase/assets/users-CuO8W7wn.js +0 -1
- package/dist/showcase/assets/vendor-profile-HLMsE22G.js +0 -37
- package/dist/showcase/assets/video-CoHnn0fp.js +0 -1
- package/dist/showcase/assets/visually-hidden-D5bPAL7Q.js +0 -1
- package/dist/showcase/assets/wrench-C93IxaGt.js +0 -1
- package/dist/showcase/assets/x-BJDvVLAz.js +0 -1
- package/dist/showcase/assets/zap-DYD_Ljkv.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/data-display-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/data-display-B9Lciun3.cjs");exports.DenseInfoClassification=e.C,exports.DenseInfoDashboard=e.w,exports.DenseInfoFinancial=e.S,exports.DenseInfoProjectCard=e.x,exports.DenseInfoScoreCard=e.b,exports.DocumentStackIllustration=e.p,exports.EmailDisplay=e.c,exports.EmptyState=e.m,exports.InboxCleanIllustration=e.f,exports.InlineMetricBadge=e.y,exports.InlineStat=e.i,exports.InvoiceHeaderCard=e.E,exports.InvoiceItemsCompact=e.k,exports.InvoiceItemsDetailed=e.A,exports.InvoiceItemsTable=e.j,exports.InvoiceMiniCard=e.D,exports.InvoiceTable=e.T,exports.MetadataList=e.a,exports.MiniKpiRow=e.v,exports.NumericValue=e.r,exports.PhoneDisplay=e.s,exports.ResourceSelectorCard=e.g,exports.SearchGlassIllustration=e.d,exports.SectionHeader=e.t,exports.StackedCardsIllustration=e.u,exports.UrlDisplay=e.o,exports.UserCell=e.n,exports.UsersCircleIllustration=e.l,exports.defaultEmptyStateStrings=e.h,exports.defaultResourceSelectorCardStrings=e._,exports.invoiceStatusMap=e.O;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as e, C as t, D as n, E as r, O as i, S as a, T as o, _ as s, a as c, b as l, c as u, d, f, g as p, h as m, i as h, j as g, k as _, l as v, m as y, n as b, o as x, p as S, r as C, s as w, t as T, u as E, v as D, w as O, x as k, y as A } from "../../../_shared/data-display-
|
|
1
|
+
import { A as e, C as t, D as n, E as r, O as i, S as a, T as o, _ as s, a as c, b as l, c as u, d, f, g as p, h as m, i as h, j as g, k as _, l as v, m as y, n as b, o as x, p as S, r as C, s as w, t as T, u as E, v as D, w as O, x as k, y as A } from "../../../_shared/data-display-CYmwUdmU.js";
|
|
2
2
|
export { t as DenseInfoClassification, O as DenseInfoDashboard, a as DenseInfoFinancial, k as DenseInfoProjectCard, l as DenseInfoScoreCard, S as DocumentStackIllustration, u as EmailDisplay, y as EmptyState, f as InboxCleanIllustration, A as InlineMetricBadge, h as InlineStat, r as InvoiceHeaderCard, _ as InvoiceItemsCompact, e as InvoiceItemsDetailed, g as InvoiceItemsTable, n as InvoiceMiniCard, o as InvoiceTable, c as MetadataList, D as MiniKpiRow, C as NumericValue, w as PhoneDisplay, p as ResourceSelectorCard, d as SearchGlassIllustration, T as SectionHeader, E as StackedCardsIllustration, x as UrlDisplay, b as UserCell, v as UsersCircleIllustration, m as defaultEmptyStateStrings, s as defaultResourceSelectorCardStrings, i as invoiceStatusMap };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/button-CfQtOuBK.cjs"),r=require("../../../_shared/typography-CWEobAJV.cjs"),i=require("../../../_shared/badge-C65rt1M9.cjs"),a=require("../../../_shared/cards-m03XN10f.cjs"),o=require("../../../_shared/item-ChHblHhR.cjs");let s=require("react"),c=require("react/jsx-runtime"),l=require("lucide-react");var u={neutral:`secondary`,primary:`primary`,info:`info`,success:`success`,warning:`warning`,destructive:`error`},d={neutral:`bg-muted-foreground`,primary:`bg-primary`,info:`bg-info`,success:`bg-success`,warning:`bg-warning`,destructive:`bg-destructive`};function f({columns:e,className:n}){return(0,c.jsx)(a.t,{title:`Pipeline Overview`,titleSuffix:(0,c.jsxs)(i.t,{variant:`secondary`,children:[e.reduce((e,t)=>e+t.items.length,0),` items`]}),className:t.cn(`kanban-board--component`,n),children:(0,c.jsx)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4`,children:e.map(e=>{let n=e.tone??`neutral`;return(0,c.jsxs)(`div`,{className:`rounded-md border border-border/60 bg-muted/30 p-2`,children:[(0,c.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,className:`truncate`,children:e.title}),(0,c.jsx)(i.t,{variant:u[n],children:e.items.length})]}),(0,c.jsx)(`div`,{className:`space-y-1.5`,children:e.items.map((i,a)=>(0,c.jsxs)(`div`,{className:`flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm`,children:[(0,c.jsx)(`div`,{className:t.cn(`h-1.5 w-1.5 flex-shrink-0 rounded-full`,d[i.tone??n])}),(0,c.jsx)(r.s,{size:`xs`,className:`truncate`,children:i.title})]},`${e.title}-${a}`))})]},e.title)})})})}f.displayName=`KanbanMicroBoard`;function p({title:e,tabs:i,defaultTab:o,className:l}){let u=Object.keys(i),[d,f]=(0,s.useState)(o??u[0]??``);return(0,c.jsxs)(a.t,{title:e,className:t.cn(`tab-switcher--component`,`bg-gradient-to-b from-muted/30 to-card`,l),children:[(0,c.jsx)(`div`,{className:`mt-4 flex gap-1 rounded-full bg-muted/50 p-1`,children:u.map(e=>(0,c.jsx)(n.t,{variant:d===e?`light`:`secondary`,buttonStyle:d===e?`solid`:`ghost`,onClick:()=>f(e),className:t.cn(`flex-1 rounded-full capitalize`,d===e?`shadow-sm`:``),children:e},e))}),(0,c.jsx)(`div`,{className:`mt-4 space-y-2`,children:i[d]?.map(e=>(0,c.jsxs)(`div`,{className:`flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20`,children:[!!e.icon&&(0,c.jsx)(`div`,{className:`flex size-8 items-center justify-center rounded-full bg-primary/10`,children:(0,c.jsx)(e.icon,{className:`size-4 text-primary`})}),(0,c.jsx)(r.s,{className:`flex-1`,children:e.name}),(0,c.jsx)(r.s,{weight:`bold`,children:e.value})]},e.name))})]})}p.displayName=`TabSwitcherCard`;var m={legendNone:`None`,legendLow:`Low`,legendMedium:`Medium`,legendHigh:`High`,legendNow:`Now`,formatHourTitle:(e,t)=>`${e}:00 - ${t} bookings`};function h({hours:n,currentHour:i,className:a,strings:o}){let s=e.useStrings(m,o),l=Math.max(...n,1),u=n.indexOf(Math.max(...n));function d(e){if(e===0)return`bg-muted`;let t=e/l;return t<.33?`bg-primary/25`:t<.66?`bg-primary/55`:`bg-primary`}return(0,c.jsxs)(`div`,{className:t.cn(`time-ruler--component`,`space-y-1.5`,a),children:[(0,c.jsx)(`div`,{className:`relative flex h-8 gap-px overflow-hidden rounded-md`,children:n.map((e,n)=>(0,c.jsx)(`div`,{className:t.cn(`relative flex-1 transition-colors duration-200`,d(e),n===u&&`ring-1 ring-primary ring-inset`),title:s.formatHourTitle(String(n).padStart(2,`0`),e)},n))}),(0,c.jsx)(`div`,{className:`relative flex`,children:n.map((e,t)=>(0,c.jsx)(`div`,{className:`flex-1 text-center`,children:t%4==0&&(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,className:`tabular-nums`,children:String(t).padStart(2,`0`)})},t))}),i!==void 0&&i>=0&&i<24&&(0,c.jsx)(`div`,{className:`relative h-0`,children:(0,c.jsx)(`div`,{className:`absolute -top-[42px] flex flex-col items-center`,style:{left:`${i/24*100}%`,transform:`translateX(-50%)`},children:(0,c.jsx)(`div`,{className:`h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive`})})}),(0,c.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-muted`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendNone})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary/25`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendLow})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary/55`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendMedium})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendHigh})]}),i!==void 0&&(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendNow})]})]})]})}h.displayName=`TimeDistributionRuler`;function g({rating:e,maxRating:n=5}){return(0,c.jsx)(`div`,{className:t.cn(`vendor-performance--component`,`flex items-center gap-0.5`),children:Array.from({length:n},(n,r)=>(0,c.jsx)(`svg`,{className:t.cn(`h-3.5 w-3.5`,r<e?`text-warning`:`text-muted`),viewBox:`0 0 24 24`,fill:`currentColor`,stroke:`none`,children:(0,c.jsx)(`path`,{d:`M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z`})},`star-${String(r)}`))})}function _(e){return e>=80?`bg-success`:e>=50?`bg-warning`:`bg-destructive`}function v({vendorName:e,rating:n,maxRating:i=5,metrics:o,performanceScore:s,lastActive:l,joinedDate:u,className:d}){return(0,c.jsx)(a.t,{title:e,className:d,footerText:(0,c.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,children:[`Last active: `,l]}),(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,children:[`Joined: `,u]})]}),children:(0,c.jsxs)(`div`,{className:`space-y-4`,children:[(0,c.jsx)(g,{rating:n,maxRating:i}),(0,c.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:[{label:`Bookings`,value:String(o.bookings)},{label:`Revenue`,value:o.revenue},{label:`Avg Rating`,value:String(o.avgRating)},{label:`Response`,value:o.responseTime}].map(e=>(0,c.jsxs)(`div`,{className:`rounded-lg bg-muted/50 p-3 text-center`,children:[(0,c.jsx)(r.s,{size:`lg`,weight:`bold`,className:`tabular-nums`,children:e.value}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:e.label})]},e.label))}),(0,c.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,c.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,c.jsx)(r.s,{children:`Performance`}),(0,c.jsxs)(r.s,{weight:`semibold`,className:`tabular-nums`,children:[s,`%`]})]}),(0,c.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-muted`,children:(0,c.jsx)(`div`,{className:t.cn(`h-full rounded-full transition-all duration-500`,_(s)),style:{width:`${String(s)}%`}})})]})]})})}v.displayName=`VendorPerformanceCard`;var y={description:`Experiences completed this week`,addActionLabel:`Add activity`};function b({completed:i,total:s,activities:u,onAdd:d,strings:f,className:p}){let m=e.useStrings(y,f);return(0,c.jsx)(a.t,{title:`${i} out of ${s}`,description:m.description,headerEnd:!!d&&(0,c.jsx)(n.t,{variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,"aria-label":m.addActionLabel,onClick:d,children:(0,c.jsx)(l.Plus,{className:`size-4`})}),className:t.cn(`experience-activity--component`,p),children:(0,c.jsx)(o.o,{children:u.map((e,t)=>(0,c.jsxs)(`div`,{children:[t>0&&(0,c.jsx)(o.l,{}),(0,c.jsxs)(o.t,{size:`small`,className:`items-start`,children:[(0,c.jsx)(o.c,{children:(0,c.jsx)(`div`,{className:`flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary`,children:(0,c.jsx)(e.icon,{className:`size-4`})})}),(0,c.jsxs)(o.r,{children:[(0,c.jsx)(o.u,{children:e.title}),(0,c.jsx)(o.i,{clamp:1,children:e.time}),(0,c.jsx)(`div`,{className:`mt-2 grid grid-cols-2 gap-1.5`,children:e.metrics.map(e=>(0,c.jsxs)(`div`,{className:`rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5`,children:[(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:e.label}),(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,children:e.value})]},e.label))})]})]})]},e.title))})})}b.displayName=`ExperienceActivityCard`;var x={stepLabel:`Step`,ofLabel:`of`};function S({steps:i,currentIndex:a,onStepClick:o,className:s,strings:u}){let d=e.useStrings(x,u);return(0,c.jsxs)(`div`,{className:t.cn(`breadcrumb-progress--component`,`w-full`,s),children:[(0,c.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,weight:`medium`,className:`uppercase tracking-wider`,children:[d.stepLabel,` `,a+1,` `,d.ofLabel,` `,i.length]}),(0,c.jsxs)(r.s,{tag:`span`,size:`xs`,weight:`semibold`,className:`tabular-nums`,children:[Math.round((a+1)/i.length*100),`%`]})]}),(0,c.jsx)(`ol`,{className:`flex items-center gap-2`,children:i.map((e,s)=>{let u=s<a,d=s===a,f=o&&(u||d);return(0,c.jsxs)(`li`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,c.jsxs)(n.t,{type:`button`,onClick:()=>f&&o?.(e.id,s),disabled:!f,variant:`secondary`,buttonStyle:`ghost`,size:`default`,className:t.cn(`h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors`,f&&`hover:bg-muted/40`,!f&&`cursor-default`),children:[(0,c.jsx)(`span`,{className:t.cn(`flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums`,u&&`bg-success text-success-foreground`,d&&`bg-primary text-primary-foreground ring-4 ring-primary/15`,!u&&!d&&`bg-muted text-muted-foreground`),children:u?(0,c.jsx)(l.Check,{className:`size-3.5`}):s+1}),(0,c.jsxs)(`div`,{className:`hidden min-w-0 lg:block`,children:[(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,className:t.cn(!d&&!u&&`text-muted-foreground`),children:e.label}),!!e.hint&&(0,c.jsx)(r.s,{size:`xs`,type:`discrete`,className:`truncate`,children:e.hint})]})]}),s<i.length-1&&(0,c.jsx)(`div`,{className:t.cn(`h-px flex-1`,u?`bg-success`:`bg-border`)})]},e.id)})})]})}S.displayName=`BreadcrumbProgress`;function C({title:e,items:n,activeId:r,onSelect:s,className:u}){return(0,c.jsx)(a.t,{title:e,padding:`default`,className:t.cn(`category-nav--component`,u),children:(0,c.jsx)(o.o,{children:n.map(e=>{let n=e.icon,a=e.id===r;return(0,c.jsxs)(o.t,{size:`small`,onClick:()=>s?.(e.id),"data-state":a?`active`:`inactive`,className:t.cn(`cursor-pointer transition-colors`,a?`bg-primary/10 text-primary`:`hover:bg-muted/50`),children:[!!n&&(0,c.jsx)(o.c,{variant:`icon`,className:t.cn(a?`text-primary`:`text-muted-foreground`),children:(0,c.jsx)(n,{})}),(0,c.jsxs)(o.r,{children:[(0,c.jsx)(o.u,{bold:a,children:e.label}),!!e.hint&&(0,c.jsx)(o.i,{clamp:1,children:e.hint})]}),(0,c.jsxs)(o.n,{children:[typeof e.count==`number`&&(0,c.jsx)(i.t,{variant:a?`primary`:`secondary`,className:`tabular-nums`,children:e.count}),(0,c.jsx)(l.ChevronRight,{className:t.cn(`size-4 shrink-0 text-muted-foreground/60`,a&&`text-primary`)})]})]},e.id)})})})}C.displayName=`CategoryNavCard`,exports.BreadcrumbProgress=S,exports.CategoryNavCard=C,exports.ExperienceActivityCard=b,exports.KanbanMicroBoard=f,exports.TabSwitcherCard=p,exports.TimeDistributionRuler=h,exports.VendorPerformanceCard=v,exports.defaultBreadcrumbProgressStrings=x;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/button-CB8e7fui.cjs"),r=require("../../../_shared/typography-sXFd02zl.cjs"),i=require("../../../_shared/badge-B0Ashqkn.cjs"),a=require("../../../_shared/cards-DvE5gRFf.cjs"),o=require("../../../_shared/item-BG2iK1sy.cjs");let s=require("react"),c=require("react/jsx-runtime"),l=require("lucide-react");var u={neutral:`secondary`,primary:`primary`,info:`info`,success:`success`,warning:`warning`,destructive:`error`},d={neutral:`bg-muted-foreground`,primary:`bg-primary`,info:`bg-info`,success:`bg-success`,warning:`bg-warning`,destructive:`bg-destructive`};function f({columns:e,className:n}){return(0,c.jsx)(a.t,{title:`Pipeline Overview`,titleSuffix:(0,c.jsxs)(i.t,{variant:`secondary`,children:[e.reduce((e,t)=>e+t.items.length,0),` items`]}),className:t.cn(`kanban-board--component`,n),children:(0,c.jsx)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4`,children:e.map(e=>{let n=e.tone??`neutral`;return(0,c.jsxs)(`div`,{className:`rounded-md border border-border/60 bg-muted/30 p-2`,children:[(0,c.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,className:`truncate`,children:e.title}),(0,c.jsx)(i.t,{variant:u[n],children:e.items.length})]}),(0,c.jsx)(`div`,{className:`space-y-1.5`,children:e.items.map((i,a)=>(0,c.jsxs)(`div`,{className:`flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm`,children:[(0,c.jsx)(`div`,{className:t.cn(`h-1.5 w-1.5 flex-shrink-0 rounded-full`,d[i.tone??n])}),(0,c.jsx)(r.s,{size:`xs`,className:`truncate`,children:i.title})]},`${e.title}-${a}`))})]},e.title)})})})}f.displayName=`KanbanMicroBoard`;function p({title:e,tabs:i,defaultTab:o,className:l}){let u=Object.keys(i),[d,f]=(0,s.useState)(o??u[0]??``);return(0,c.jsxs)(a.t,{title:e,className:t.cn(`tab-switcher--component`,`bg-gradient-to-b from-muted/30 to-card`,l),children:[(0,c.jsx)(`div`,{className:`mt-4 flex gap-1 rounded-full bg-muted/50 p-1`,children:u.map(e=>(0,c.jsx)(n.t,{variant:d===e?`light`:`secondary`,buttonStyle:d===e?`solid`:`ghost`,onClick:()=>f(e),className:t.cn(`flex-1 rounded-full capitalize`,d===e?`shadow-sm`:``),children:e},e))}),(0,c.jsx)(`div`,{className:`mt-4 space-y-2`,children:i[d]?.map(e=>(0,c.jsxs)(`div`,{className:`flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20`,children:[!!e.icon&&(0,c.jsx)(`div`,{className:`flex size-8 items-center justify-center rounded-full bg-primary/10`,children:(0,c.jsx)(e.icon,{className:`size-4 text-primary`})}),(0,c.jsx)(r.s,{className:`flex-1`,children:e.name}),(0,c.jsx)(r.s,{weight:`bold`,children:e.value})]},e.name))})]})}p.displayName=`TabSwitcherCard`;var m={legendNone:`None`,legendLow:`Low`,legendMedium:`Medium`,legendHigh:`High`,legendNow:`Now`,formatHourTitle:(e,t)=>`${e}:00 - ${t} bookings`};function h({hours:n,currentHour:i,className:a,strings:o}){let s=e.useStrings(m,o),l=Math.max(...n,1),u=n.indexOf(Math.max(...n));function d(e){if(e===0)return`bg-muted`;let t=e/l;return t<.33?`bg-primary/25`:t<.66?`bg-primary/55`:`bg-primary`}return(0,c.jsxs)(`div`,{className:t.cn(`time-ruler--component`,`space-y-1.5`,a),children:[(0,c.jsx)(`div`,{className:`relative flex h-8 gap-px overflow-hidden rounded-md`,children:n.map((e,n)=>(0,c.jsx)(`div`,{className:t.cn(`relative flex-1 transition-colors duration-200`,d(e),n===u&&`ring-1 ring-primary ring-inset`),title:s.formatHourTitle(String(n).padStart(2,`0`),e)},n))}),(0,c.jsx)(`div`,{className:`relative flex`,children:n.map((e,t)=>(0,c.jsx)(`div`,{className:`flex-1 text-center`,children:t%4==0&&(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,className:`tabular-nums`,children:String(t).padStart(2,`0`)})},t))}),i!==void 0&&i>=0&&i<24&&(0,c.jsx)(`div`,{className:`relative h-0`,children:(0,c.jsx)(`div`,{className:`absolute -top-[42px] flex flex-col items-center`,style:{left:`${i/24*100}%`,transform:`translateX(-50%)`},children:(0,c.jsx)(`div`,{className:`h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive`})})}),(0,c.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-muted`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendNone})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary/25`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendLow})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary/55`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendMedium})]}),(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-2 w-3 rounded-sm bg-primary`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendHigh})]}),i!==void 0&&(0,c.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,c.jsx)(`div`,{className:`h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive`}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:s.legendNow})]})]})]})}h.displayName=`TimeDistributionRuler`;function g({rating:e,maxRating:n=5}){return(0,c.jsx)(`div`,{className:t.cn(`vendor-performance--component`,`flex items-center gap-0.5`),children:Array.from({length:n},(n,r)=>(0,c.jsx)(`svg`,{className:t.cn(`h-3.5 w-3.5`,r<e?`text-warning`:`text-muted`),viewBox:`0 0 24 24`,fill:`currentColor`,stroke:`none`,children:(0,c.jsx)(`path`,{d:`M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z`})},`star-${String(r)}`))})}function _(e){return e>=80?`bg-success`:e>=50?`bg-warning`:`bg-destructive`}function v({vendorName:e,rating:n,maxRating:i=5,metrics:o,performanceScore:s,lastActive:l,joinedDate:u,className:d}){return(0,c.jsx)(a.t,{title:e,className:d,footerText:(0,c.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,children:[`Last active: `,l]}),(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,children:[`Joined: `,u]})]}),children:(0,c.jsxs)(`div`,{className:`space-y-4`,children:[(0,c.jsx)(g,{rating:n,maxRating:i}),(0,c.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:[{label:`Bookings`,value:String(o.bookings)},{label:`Revenue`,value:o.revenue},{label:`Avg Rating`,value:String(o.avgRating)},{label:`Response`,value:o.responseTime}].map(e=>(0,c.jsxs)(`div`,{className:`rounded-lg bg-muted/50 p-3 text-center`,children:[(0,c.jsx)(r.s,{weight:`bold`,className:`tabular-nums`,children:e.value}),(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:e.label})]},e.label))}),(0,c.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,c.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,c.jsx)(r.s,{children:`Performance`}),(0,c.jsxs)(r.s,{weight:`semibold`,className:`tabular-nums`,children:[s,`%`]})]}),(0,c.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-muted`,children:(0,c.jsx)(`div`,{className:t.cn(`h-full rounded-full transition-all duration-500`,_(s)),style:{width:`${String(s)}%`}})})]})]})})}v.displayName=`VendorPerformanceCard`;var y={description:`Experiences completed this week`,addActionLabel:`Add activity`};function b({completed:i,total:s,activities:u,onAdd:d,strings:f,className:p}){let m=e.useStrings(y,f);return(0,c.jsx)(a.t,{title:`${i} out of ${s}`,description:m.description,headerEnd:!!d&&(0,c.jsx)(n.t,{variant:`secondary`,buttonStyle:`ghost`,size:`icon-small`,"aria-label":m.addActionLabel,onClick:d,children:(0,c.jsx)(l.Plus,{className:`size-4`})}),className:t.cn(`experience-activity--component`,p),children:(0,c.jsx)(o.o,{children:u.map((e,t)=>(0,c.jsxs)(`div`,{children:[t>0&&(0,c.jsx)(o.l,{}),(0,c.jsxs)(o.t,{size:`small`,className:`items-start`,children:[(0,c.jsx)(o.c,{children:(0,c.jsx)(`div`,{className:`flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary`,children:(0,c.jsx)(e.icon,{className:`size-4`})})}),(0,c.jsxs)(o.r,{children:[(0,c.jsx)(o.u,{children:e.title}),(0,c.jsx)(o.i,{clamp:1,children:e.time}),(0,c.jsx)(`div`,{className:`mt-2 grid grid-cols-2 gap-1.5`,children:e.metrics.map(e=>(0,c.jsxs)(`div`,{className:`rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5`,children:[(0,c.jsx)(r.s,{size:`xs`,type:`secondary`,children:e.label}),(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,children:e.value})]},e.label))})]})]})]},e.title))})})}b.displayName=`ExperienceActivityCard`;var x={stepLabel:`Step`,ofLabel:`of`};function S({steps:i,currentIndex:a,onStepClick:o,className:s,strings:u}){let d=e.useStrings(x,u);return(0,c.jsxs)(`div`,{className:t.cn(`breadcrumb-progress--component`,`w-full`,s),children:[(0,c.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,c.jsxs)(r.s,{size:`xs`,type:`secondary`,weight:`medium`,className:`uppercase tracking-wider`,children:[d.stepLabel,` `,a+1,` `,d.ofLabel,` `,i.length]}),(0,c.jsxs)(r.s,{tag:`span`,size:`xs`,weight:`semibold`,className:`tabular-nums`,children:[Math.round((a+1)/i.length*100),`%`]})]}),(0,c.jsx)(`ol`,{className:`flex items-center gap-2`,children:i.map((e,s)=>{let u=s<a,d=s===a,f=o&&(u||d);return(0,c.jsxs)(`li`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,c.jsxs)(n.t,{type:`button`,onClick:()=>f&&o?.(e.id,s),disabled:!f,variant:`secondary`,buttonStyle:`ghost`,size:`default`,className:t.cn(`h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors`,f&&`hover:bg-muted/40`,!f&&`cursor-default`),children:[(0,c.jsx)(`span`,{className:t.cn(`flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums`,u&&`bg-success text-success-foreground`,d&&`bg-primary text-primary-foreground ring-4 ring-primary/15`,!u&&!d&&`bg-muted text-muted-foreground`),children:u?(0,c.jsx)(l.Check,{className:`size-3.5`}):s+1}),(0,c.jsxs)(`div`,{className:`hidden min-w-0 lg:block`,children:[(0,c.jsx)(r.s,{size:`xs`,weight:`semibold`,className:t.cn(!d&&!u&&`text-muted-foreground`),children:e.label}),!!e.hint&&(0,c.jsx)(r.s,{size:`xs`,type:`discrete`,className:`truncate`,children:e.hint})]})]}),s<i.length-1&&(0,c.jsx)(`div`,{className:t.cn(`h-px flex-1`,u?`bg-success`:`bg-border`)})]},e.id)})})]})}S.displayName=`BreadcrumbProgress`;function C({title:e,items:n,activeId:r,onSelect:s,className:u}){return(0,c.jsx)(a.t,{title:e,padding:`default`,className:t.cn(`category-nav--component`,u),children:(0,c.jsx)(o.o,{children:n.map(e=>{let n=e.icon,a=e.id===r;return(0,c.jsxs)(o.t,{size:`small`,onClick:()=>s?.(e.id),"data-state":a?`active`:`inactive`,className:t.cn(`cursor-pointer transition-colors`,a?`bg-primary/10 text-primary`:`hover:bg-muted/50`),children:[!!n&&(0,c.jsx)(o.c,{variant:`icon`,className:t.cn(a?`text-primary`:`text-muted-foreground`),children:(0,c.jsx)(n,{})}),(0,c.jsxs)(o.r,{children:[(0,c.jsx)(o.u,{bold:a,children:e.label}),!!e.hint&&(0,c.jsx)(o.i,{clamp:1,children:e.hint})]}),(0,c.jsxs)(o.n,{children:[typeof e.count==`number`&&(0,c.jsx)(i.t,{variant:a?`primary`:`secondary`,className:`tabular-nums`,children:e.count}),(0,c.jsx)(l.ChevronRight,{className:t.cn(`size-4 shrink-0 text-muted-foreground/60`,a&&`text-primary`)})]})]},e.id)})})})}C.displayName=`CategoryNavCard`,exports.BreadcrumbProgress=S,exports.CategoryNavCard=C,exports.ExperienceActivityCard=b,exports.KanbanMicroBoard=f,exports.TabSwitcherCard=p,exports.TimeDistributionRuler=h,exports.VendorPerformanceCard=v,exports.defaultBreadcrumbProgressStrings=x;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/components/composed/navigation/kanban-board/kanban-board.tsx","../../../../src/components/composed/navigation/tab-switcher/tab-switcher.tsx","../../../../src/components/composed/navigation/time-ruler/types.ts","../../../../src/components/composed/navigation/time-ruler/time-ruler.tsx","../../../../src/components/composed/navigation/vendor-performance/vendor-performance.tsx","../../../../src/components/composed/navigation/experience-activity/experience-activity.strings.ts","../../../../src/components/composed/navigation/experience-activity/experience-activity.tsx","../../../../src/components/composed/navigation/breadcrumb-progress/types.ts","../../../../src/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.tsx","../../../../src/components/composed/navigation/category-nav/category-nav.tsx"],"sourcesContent":["import { Badge, type ComposedBadgeVariant } from '@/components/base/badge/badge';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { KanbanColumnTone, KanbanMicroBoardProps } from './types';\n\nconst COLUMN_BADGE: Record<KanbanColumnTone, ComposedBadgeVariant> = {\n\tneutral: 'secondary',\n\tprimary: 'primary',\n\tinfo: 'info',\n\tsuccess: 'success',\n\twarning: 'warning',\n\tdestructive: 'error',\n};\n\nconst ITEM_DOT: Record<KanbanColumnTone, string> = {\n\tneutral: 'bg-muted-foreground',\n\tprimary: 'bg-primary',\n\tinfo: 'bg-info',\n\tsuccess: 'bg-success',\n\twarning: 'bg-warning',\n\tdestructive: 'bg-destructive',\n};\n\nexport function KanbanMicroBoard({ columns, className }: KanbanMicroBoardProps) {\n\tconst totalItems = columns.reduce((sum, col) => sum + col.items.length, 0);\n\n\treturn (\n\t\t<SmartCard\n\t\t\ttitle=\"Pipeline Overview\"\n\t\t\ttitleSuffix={<Badge variant=\"secondary\">{totalItems} items</Badge>}\n\t\t\tclassName={cn('kanban-board--component', className)}\n\t\t>\n\t\t\t<div className=\"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4\">\n\t\t\t\t{columns.map((col) => {\n\t\t\t\t\tconst tone = col.tone ?? 'neutral';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={col.title}\n\t\t\t\t\t\t\tclassName=\"rounded-md border border-border/60 bg-muted/30 p-2\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"mb-2 flex items-center justify-between gap-2\">\n\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t{col.title}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<Badge variant={COLUMN_BADGE[tone]}>\n\t\t\t\t\t\t\t\t\t{col.items.length}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"space-y-1.5\">\n\t\t\t\t\t\t\t\t{col.items.map((item, itemIdx) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tkey={`${col.title}-${itemIdx}`}\n\t\t\t\t\t\t\t\t\t\tclassName=\"flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div\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'h-1.5 w-1.5 flex-shrink-0 rounded-full',\n\t\t\t\t\t\t\t\t\t\t\t\tITEM_DOT[item.tone ?? tone],\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<Text size=\"xs\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t{item.title}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</div>\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</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</SmartCard>\n\t);\n}\n\nKanbanMicroBoard.displayName = 'KanbanMicroBoard';\n","import { useState } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { TabSwitcherCardProps } from './types';\n\nexport function TabSwitcherCard({ title, tabs, defaultTab, className }: TabSwitcherCardProps) {\n const tabKeys = Object.keys(tabs);\n const [activeTab, setActiveTab] = useState<string>(defaultTab ?? tabKeys[0] ?? '');\n\n return (\n <SmartCard title={title} className={cn('tab-switcher--component', 'bg-gradient-to-b from-muted/30 to-card', className)}>\n {/* Pill tabs */}\n <div className=\"mt-4 flex gap-1 rounded-full bg-muted/50 p-1\">\n {tabKeys.map((t) => (\n <Button\n key={t}\n variant={activeTab === t ? 'light' : 'secondary'}\n buttonStyle={activeTab === t ? 'solid' : 'ghost'}\n onClick={() => setActiveTab(t)}\n className={cn('flex-1 rounded-full capitalize', activeTab === t ? 'shadow-sm' : '')}\n >\n {t}\n </Button>\n ))}\n </div>\n\n <div className=\"mt-4 space-y-2\">\n {tabs[activeTab]?.map((item) => (\n <div key={item.name} className=\"flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20\">\n {!!item.icon && (\n <div className=\"flex size-8 items-center justify-center rounded-full bg-primary/10\">\n <item.icon className=\"size-4 text-primary\" />\n </div>\n )}\n <Text className=\"flex-1\">{item.name}</Text>\n <Text weight=\"bold\">{item.value}</Text>\n </div>\n ))}\n </div>\n </SmartCard>\n );\n}\n\nTabSwitcherCard.displayName = 'TabSwitcherCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface TimeDistributionRulerStrings {\n /** Density-band legend labels. */\n legendNone: string;\n legendLow: string;\n legendMedium: string;\n legendHigh: string;\n /** \"Now\" marker label. */\n legendNow: string;\n /** Format function for the per-hour `title` tooltip (\"08:00 - 5 bookings\"). */\n formatHourTitle: (hourLabel: string, count: number) => string;\n}\n\nexport const defaultTimeDistributionRulerStrings: TimeDistributionRulerStrings = {\n legendNone: 'None',\n legendLow: 'Low',\n legendMedium: 'Medium',\n legendHigh: 'High',\n legendNow: 'Now',\n formatHourTitle: (hourLabel, count) => `${hourLabel}:00 - ${count} bookings`,\n};\n\nexport interface TimeDistributionRulerProps {\n hours: number[];\n currentHour?: number;\n className?: string;\n strings?: StringsProp<TimeDistributionRulerStrings>;\n}\n","import { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultTimeDistributionRulerStrings, type TimeDistributionRulerProps } from './types';\n\nexport function TimeDistributionRuler({ hours, currentHour, className, strings: stringsProp }: TimeDistributionRulerProps) {\n const strings = useStrings(defaultTimeDistributionRulerStrings, stringsProp);\n const maxVal = Math.max(...hours, 1);\n const peakHour = hours.indexOf(Math.max(...hours));\n\n function getDensityClass(count: number): string {\n if (count === 0) return 'bg-muted';\n const ratio = count / maxVal;\n if (ratio < 0.33) return 'bg-primary/25';\n if (ratio < 0.66) return 'bg-primary/55';\n return 'bg-primary';\n }\n\n return (\n <div className={cn('time-ruler--component', 'space-y-1.5', className)}>\n {/* Ruler bar */}\n <div className=\"relative flex h-8 gap-px overflow-hidden rounded-md\">\n {hours.map((count, hour) => (\n <div\n key={hour}\n className={cn(\n 'relative flex-1 transition-colors duration-200',\n getDensityClass(count),\n hour === peakHour && 'ring-1 ring-primary ring-inset',\n )}\n title={strings.formatHourTitle(String(hour).padStart(2, '0'), count)}\n />\n ))}\n </div>\n {/* Hour labels + now marker */}\n <div className=\"relative flex\">\n {hours.map((_, hour) => (\n <div key={hour} className=\"flex-1 text-center\">\n {hour % 4 === 0 && (\n <Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n {String(hour).padStart(2, '0')}\n </Text>\n )}\n </div>\n ))}\n </div>\n {/* Now marker */}\n {currentHour !== undefined && currentHour >= 0 && currentHour < 24 && (\n <div className=\"relative h-0\">\n <div\n className=\"absolute -top-[42px] flex flex-col items-center\"\n style={{ left: `${(currentHour / 24) * 100}%`, transform: 'translateX(-50%)' }}\n >\n <div\n className=\"h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive\"\n />\n </div>\n </div>\n )}\n {/* Legend */}\n <div className=\"flex items-center gap-3\">\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-muted\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNone}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/25\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendLow}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/55\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendMedium}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendHigh}</Text>\n </div>\n {currentHour !== undefined && (\n <div className=\"flex items-center gap-1\">\n <div className=\"h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNow}</Text>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nTimeDistributionRuler.displayName = 'TimeDistributionRuler';\n","import { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { VendorPerformanceCardProps } from './types';\n\nfunction RatingStars({ rating, maxRating = 5 }: { rating: number; maxRating?: number }) {\n return (\n <div className={cn('vendor-performance--component', 'flex items-center gap-0.5')}>\n {Array.from({ length: maxRating }, (_, i) => (\n <svg\n key={`star-${String(i)}`}\n className={cn(\n 'h-3.5 w-3.5',\n i < rating ? 'text-warning' : 'text-muted',\n )}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"none\"\n >\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\" />\n </svg>\n ))}\n </div>\n );\n}\n\nfunction performanceBarColor(score: number): string {\n if (score >= 80) return 'bg-success';\n if (score >= 50) return 'bg-warning';\n return 'bg-destructive';\n}\n\nexport function VendorPerformanceCard({\n vendorName,\n rating,\n maxRating = 5,\n metrics,\n performanceScore,\n lastActive,\n joinedDate,\n className,\n}: VendorPerformanceCardProps) {\n return (\n <SmartCard\n title={vendorName}\n className={className}\n footerText={\n <div className=\"flex items-center justify-between gap-4\">\n <Text size=\"xs\" type=\"secondary\">Last active: {lastActive}</Text>\n <Text size=\"xs\" type=\"secondary\">Joined: {joinedDate}</Text>\n </div>\n }\n >\n <div className=\"space-y-4\">\n <RatingStars rating={rating} maxRating={maxRating} />\n\n <div className=\"grid grid-cols-2 gap-2\">\n {([\n { label: 'Bookings', value: String(metrics.bookings) },\n { label: 'Revenue', value: metrics.revenue },\n { label: 'Avg Rating', value: String(metrics.avgRating) },\n { label: 'Response', value: metrics.responseTime },\n ] as const).map((metric) => (\n <div\n key={metric.label}\n className=\"rounded-lg bg-muted/50 p-3 text-center\"\n >\n <Text size=\"lg\" weight=\"bold\" className=\"tabular-nums\">\n {metric.value}\n </Text>\n <Text size=\"xs\" type=\"secondary\">\n {metric.label}\n </Text>\n </div>\n ))}\n </div>\n\n <div className=\"space-y-1.5\">\n <div className=\"flex items-center justify-between\">\n <Text>Performance</Text>\n <Text weight=\"semibold\" className=\"tabular-nums\">\n {performanceScore}%\n </Text>\n </div>\n <div className=\"h-2 w-full overflow-hidden rounded-full bg-muted\">\n <div\n className={cn(\n 'h-full rounded-full transition-all duration-500',\n performanceBarColor(performanceScore),\n )}\n style={{ width: `${String(performanceScore)}%` }}\n />\n </div>\n </div>\n </div>\n </SmartCard>\n );\n}\n\nVendorPerformanceCard.displayName = 'VendorPerformanceCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface ExperienceActivityCardStrings {\n\tdescription: string;\n\taddActionLabel: string;\n}\n\nexport const defaultExperienceActivityCardStrings: ExperienceActivityCardStrings = {\n\tdescription: 'Experiences completed this week',\n\taddActionLabel: 'Add activity',\n};\n\nexport type ExperienceActivityCardStringsProp = StringsProp<ExperienceActivityCardStrings>;\n","import { Plus } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport {\n Item,\n ItemContent,\n ItemDescription,\n ItemGroup,\n ItemMedia,\n ItemSeparator,\n ItemTitle,\n} from '@/components/base/item';\nimport { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultExperienceActivityCardStrings,\n} from './experience-activity.strings';\nimport type { ExperienceActivityCardProps } from './types';\n\nexport function ExperienceActivityCard({\n completed,\n total,\n activities,\n onAdd,\n strings: stringsProp,\n className,\n}: ExperienceActivityCardProps) {\n const strings = useStrings(defaultExperienceActivityCardStrings, stringsProp);\n\n return (\n <SmartCard\n title={`${completed} out of ${total}`}\n description={strings.description}\n headerEnd={\n !!onAdd && (\n <Button\n variant=\"secondary\"\n buttonStyle=\"ghost\"\n size=\"icon-small\"\n aria-label={strings.addActionLabel}\n onClick={onAdd}\n >\n <Plus className=\"size-4\" />\n </Button>\n )\n }\n className={cn('experience-activity--component', className)}\n >\n <ItemGroup>\n {activities.map((a, i) => (\n <div key={a.title}>\n {i > 0 && <ItemSeparator />}\n <Item size=\"small\" className=\"items-start\">\n <ItemMedia>\n <div className=\"flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary\">\n <a.icon className=\"size-4\" />\n </div>\n </ItemMedia>\n <ItemContent>\n <ItemTitle>{a.title}</ItemTitle>\n <ItemDescription clamp={1}>{a.time}</ItemDescription>\n <div className=\"mt-2 grid grid-cols-2 gap-1.5\">\n {a.metrics.map((m) => (\n <div key={m.label} className=\"rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5\">\n <Text size=\"xs\" type=\"secondary\">{m.label}</Text>\n <Text size=\"xs\" weight=\"semibold\">{m.value}</Text>\n </div>\n ))}\n </div>\n </ItemContent>\n </Item>\n </div>\n ))}\n </ItemGroup>\n </SmartCard>\n );\n}\n\nExperienceActivityCard.displayName = 'ExperienceActivityCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface BreadcrumbProgressStep {\n\tid: string;\n\tlabel: string;\n\thint?: string;\n}\n\nexport interface BreadcrumbProgressStrings {\n\tstepLabel: string;\n\tofLabel: string;\n}\n\nexport const defaultBreadcrumbProgressStrings: BreadcrumbProgressStrings = {\n\tstepLabel: 'Step',\n\tofLabel: 'of',\n};\n\nexport interface BreadcrumbProgressProps {\n\tsteps: BreadcrumbProgressStep[];\n\tcurrentIndex: number;\n\tonStepClick?: (id: string, index: number) => void;\n\tclassName?: string;\n\tstrings?: StringsProp<BreadcrumbProgressStrings>;\n}\n","/**\n * BreadcrumbProgress — wizard / multi-step navigation with completed,\n * current, and upcoming states. Click any completed step to jump back.\n */\nimport { Check } from 'lucide-react';\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tdefaultBreadcrumbProgressStrings,\n\ttype BreadcrumbProgressProps,\n} from './types';\n\nexport function BreadcrumbProgress({ steps, currentIndex, onStepClick, className, strings: stringsProp }: BreadcrumbProgressProps) {\n\tconst strings = useStrings(defaultBreadcrumbProgressStrings, stringsProp);\n\n\treturn (\n\t\t<div className={cn('breadcrumb-progress--component', 'w-full', className)}>\n\t\t\t<div className=\"flex items-center justify-between mb-2\">\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" weight=\"medium\" className=\"uppercase tracking-wider\">\n\t\t\t\t\t{strings.stepLabel} {currentIndex + 1} {strings.ofLabel} {steps.length}\n\t\t\t\t</Text>\n\t\t\t\t<Text tag=\"span\" size=\"xs\" weight=\"semibold\" className=\"tabular-nums\">{Math.round(((currentIndex + 1) / steps.length) * 100)}%</Text>\n\t\t\t</div>\n\t\t\t<ol className=\"flex items-center gap-2\">\n\t\t\t\t{steps.map((step, idx) => {\n\t\t\t\t\tconst isCompleted = idx < currentIndex;\n\t\t\t\t\tconst isCurrent = idx === currentIndex;\n\t\t\t\t\tconst isClickable = onStepClick && (isCompleted || isCurrent);\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={step.id} className=\"flex min-w-0 flex-1 items-center gap-2\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tonClick={() => isClickable && onStepClick?.(step.id, idx)}\n\t\t\t\t\t\t\t\tdisabled={!isClickable}\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\t\tsize=\"default\"\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors',\n\t\t\t\t\t\t\t\t\tisClickable && 'hover:bg-muted/40',\n\t\t\t\t\t\t\t\t\t!isClickable && 'cursor-default',\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<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums',\n\t\t\t\t\t\t\t\t\t\tisCompleted && 'bg-success text-success-foreground',\n\t\t\t\t\t\t\t\t\t\tisCurrent && 'bg-primary text-primary-foreground ring-4 ring-primary/15',\n\t\t\t\t\t\t\t\t\t\t!isCompleted && !isCurrent && 'bg-muted text-muted-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{isCompleted ? <Check className=\"size-3.5\" /> : idx + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div className=\"hidden min-w-0 lg:block\">\n\t\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className={cn(!isCurrent && !isCompleted && 'text-muted-foreground')}>{step.label}</Text>\n\t\t\t\t\t\t\t\t\t{!!step.hint && <Text size=\"xs\" type=\"discrete\" className=\"truncate\">{step.hint}</Text>}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t{idx < steps.length - 1 && (\n\t\t\t\t\t\t\t\t<div className={cn('h-px flex-1', isCompleted ? 'bg-success' : 'bg-border')} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</div>\n\t);\n}\n\nBreadcrumbProgress.displayName = 'BreadcrumbProgress';\n","/**\n * CategoryNavCard — vertical icon + label list with optional count badge per row.\n * Use as a sidebar nav for filtering or category browsing.\n */\nimport { ChevronRight } from 'lucide-react';\nimport { SmartCard } from '@/components/base/cards';\nimport { Badge } from '@/components/base/badge';\nimport {\n\tItem,\n\tItemActions,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { cn } from '@/lib/utils';\n\nimport type { CategoryNavCardProps } from './types';\n\nexport function CategoryNavCard({ title, items, activeId, onSelect, className }: CategoryNavCardProps) {\n\treturn (\n\t\t<SmartCard title={title} padding=\"default\" className={cn('category-nav--component', className)}>\n\t\t\t<ItemGroup>\n\t\t\t\t{items.map((it) => {\n\t\t\t\t\tconst Icon = it.icon;\n\t\t\t\t\tconst active = it.id === activeId;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tkey={it.id}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => onSelect?.(it.id)}\n\t\t\t\t\t\t\tdata-state={active ? 'active' : 'inactive'}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'cursor-pointer transition-colors',\n\t\t\t\t\t\t\t\tactive ? 'bg-primary/10 text-primary' : 'hover:bg-muted/50',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className={cn(active ? 'text-primary' : 'text-muted-foreground')}>\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<ItemContent>\n\t\t\t\t\t\t\t\t<ItemTitle bold={active}>{it.label}</ItemTitle>\n\t\t\t\t\t\t\t\t{!!it.hint && <ItemDescription clamp={1}>{it.hint}</ItemDescription>}\n\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t<ItemActions>\n\t\t\t\t\t\t\t\t{typeof it.count === 'number' && (\n\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t{it.count}\n\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ChevronRight\n\t\t\t\t\t\t\t\t\tclassName={cn('size-4 shrink-0 text-muted-foreground/60', active && 'text-primary')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemActions>\n\t\t\t\t\t\t</Item>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ItemGroup>\n\t\t</SmartCard>\n\t);\n}\n\nCategoryNavCard.displayName = 'CategoryNavCard';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/components/composed/navigation/kanban-board/kanban-board.tsx","../../../../src/components/composed/navigation/tab-switcher/tab-switcher.tsx","../../../../src/components/composed/navigation/time-ruler/types.ts","../../../../src/components/composed/navigation/time-ruler/time-ruler.tsx","../../../../src/components/composed/navigation/vendor-performance/vendor-performance.tsx","../../../../src/components/composed/navigation/experience-activity/experience-activity.strings.ts","../../../../src/components/composed/navigation/experience-activity/experience-activity.tsx","../../../../src/components/composed/navigation/breadcrumb-progress/types.ts","../../../../src/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.tsx","../../../../src/components/composed/navigation/category-nav/category-nav.tsx"],"sourcesContent":["import { Badge, type ComposedBadgeVariant } from '@/components/base/badge/badge';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { KanbanColumnTone, KanbanMicroBoardProps } from './types';\n\nconst COLUMN_BADGE: Record<KanbanColumnTone, ComposedBadgeVariant> = {\n\tneutral: 'secondary',\n\tprimary: 'primary',\n\tinfo: 'info',\n\tsuccess: 'success',\n\twarning: 'warning',\n\tdestructive: 'error',\n};\n\nconst ITEM_DOT: Record<KanbanColumnTone, string> = {\n\tneutral: 'bg-muted-foreground',\n\tprimary: 'bg-primary',\n\tinfo: 'bg-info',\n\tsuccess: 'bg-success',\n\twarning: 'bg-warning',\n\tdestructive: 'bg-destructive',\n};\n\nexport function KanbanMicroBoard({ columns, className }: KanbanMicroBoardProps) {\n\tconst totalItems = columns.reduce((sum, col) => sum + col.items.length, 0);\n\n\treturn (\n\t\t<SmartCard\n\t\t\ttitle=\"Pipeline Overview\"\n\t\t\ttitleSuffix={<Badge variant=\"secondary\">{totalItems} items</Badge>}\n\t\t\tclassName={cn('kanban-board--component', className)}\n\t\t>\n\t\t\t<div className=\"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4\">\n\t\t\t\t{columns.map((col) => {\n\t\t\t\t\tconst tone = col.tone ?? 'neutral';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={col.title}\n\t\t\t\t\t\t\tclassName=\"rounded-md border border-border/60 bg-muted/30 p-2\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"mb-2 flex items-center justify-between gap-2\">\n\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t{col.title}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<Badge variant={COLUMN_BADGE[tone]}>\n\t\t\t\t\t\t\t\t\t{col.items.length}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"space-y-1.5\">\n\t\t\t\t\t\t\t\t{col.items.map((item, itemIdx) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tkey={`${col.title}-${itemIdx}`}\n\t\t\t\t\t\t\t\t\t\tclassName=\"flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div\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'h-1.5 w-1.5 flex-shrink-0 rounded-full',\n\t\t\t\t\t\t\t\t\t\t\t\tITEM_DOT[item.tone ?? tone],\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<Text size=\"xs\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t{item.title}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</div>\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</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</SmartCard>\n\t);\n}\n\nKanbanMicroBoard.displayName = 'KanbanMicroBoard';\n","import { useState } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { TabSwitcherCardProps } from './types';\n\nexport function TabSwitcherCard({ title, tabs, defaultTab, className }: TabSwitcherCardProps) {\n const tabKeys = Object.keys(tabs);\n const [activeTab, setActiveTab] = useState<string>(defaultTab ?? tabKeys[0] ?? '');\n\n return (\n <SmartCard title={title} className={cn('tab-switcher--component', 'bg-gradient-to-b from-muted/30 to-card', className)}>\n {/* Pill tabs */}\n <div className=\"mt-4 flex gap-1 rounded-full bg-muted/50 p-1\">\n {tabKeys.map((t) => (\n <Button\n key={t}\n variant={activeTab === t ? 'light' : 'secondary'}\n buttonStyle={activeTab === t ? 'solid' : 'ghost'}\n onClick={() => setActiveTab(t)}\n className={cn('flex-1 rounded-full capitalize', activeTab === t ? 'shadow-sm' : '')}\n >\n {t}\n </Button>\n ))}\n </div>\n\n <div className=\"mt-4 space-y-2\">\n {tabs[activeTab]?.map((item) => (\n <div key={item.name} className=\"flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20\">\n {!!item.icon && (\n <div className=\"flex size-8 items-center justify-center rounded-full bg-primary/10\">\n <item.icon className=\"size-4 text-primary\" />\n </div>\n )}\n <Text className=\"flex-1\">{item.name}</Text>\n <Text weight=\"bold\">{item.value}</Text>\n </div>\n ))}\n </div>\n </SmartCard>\n );\n}\n\nTabSwitcherCard.displayName = 'TabSwitcherCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface TimeDistributionRulerStrings {\n /** Density-band legend labels. */\n legendNone: string;\n legendLow: string;\n legendMedium: string;\n legendHigh: string;\n /** \"Now\" marker label. */\n legendNow: string;\n /** Format function for the per-hour `title` tooltip (\"08:00 - 5 bookings\"). */\n formatHourTitle: (hourLabel: string, count: number) => string;\n}\n\nexport const defaultTimeDistributionRulerStrings: TimeDistributionRulerStrings = {\n legendNone: 'None',\n legendLow: 'Low',\n legendMedium: 'Medium',\n legendHigh: 'High',\n legendNow: 'Now',\n formatHourTitle: (hourLabel, count) => `${hourLabel}:00 - ${count} bookings`,\n};\n\nexport interface TimeDistributionRulerProps {\n hours: number[];\n currentHour?: number;\n className?: string;\n strings?: StringsProp<TimeDistributionRulerStrings>;\n}\n","import { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultTimeDistributionRulerStrings, type TimeDistributionRulerProps } from './types';\n\nexport function TimeDistributionRuler({ hours, currentHour, className, strings: stringsProp }: TimeDistributionRulerProps) {\n const strings = useStrings(defaultTimeDistributionRulerStrings, stringsProp);\n const maxVal = Math.max(...hours, 1);\n const peakHour = hours.indexOf(Math.max(...hours));\n\n function getDensityClass(count: number): string {\n if (count === 0) return 'bg-muted';\n const ratio = count / maxVal;\n if (ratio < 0.33) return 'bg-primary/25';\n if (ratio < 0.66) return 'bg-primary/55';\n return 'bg-primary';\n }\n\n return (\n <div className={cn('time-ruler--component', 'space-y-1.5', className)}>\n {/* Ruler bar */}\n <div className=\"relative flex h-8 gap-px overflow-hidden rounded-md\">\n {hours.map((count, hour) => (\n <div\n key={hour}\n className={cn(\n 'relative flex-1 transition-colors duration-200',\n getDensityClass(count),\n hour === peakHour && 'ring-1 ring-primary ring-inset',\n )}\n title={strings.formatHourTitle(String(hour).padStart(2, '0'), count)}\n />\n ))}\n </div>\n {/* Hour labels + now marker */}\n <div className=\"relative flex\">\n {hours.map((_, hour) => (\n <div key={hour} className=\"flex-1 text-center\">\n {hour % 4 === 0 && (\n <Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n {String(hour).padStart(2, '0')}\n </Text>\n )}\n </div>\n ))}\n </div>\n {/* Now marker */}\n {currentHour !== undefined && currentHour >= 0 && currentHour < 24 && (\n <div className=\"relative h-0\">\n <div\n className=\"absolute -top-[42px] flex flex-col items-center\"\n style={{ left: `${(currentHour / 24) * 100}%`, transform: 'translateX(-50%)' }}\n >\n <div\n className=\"h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive\"\n />\n </div>\n </div>\n )}\n {/* Legend */}\n <div className=\"flex items-center gap-3\">\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-muted\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNone}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/25\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendLow}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/55\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendMedium}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendHigh}</Text>\n </div>\n {currentHour !== undefined && (\n <div className=\"flex items-center gap-1\">\n <div className=\"h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNow}</Text>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nTimeDistributionRuler.displayName = 'TimeDistributionRuler';\n","import { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { VendorPerformanceCardProps } from './types';\n\nfunction RatingStars({ rating, maxRating = 5 }: { rating: number; maxRating?: number }) {\n return (\n <div className={cn('vendor-performance--component', 'flex items-center gap-0.5')}>\n {Array.from({ length: maxRating }, (_, i) => (\n <svg\n key={`star-${String(i)}`}\n className={cn(\n 'h-3.5 w-3.5',\n i < rating ? 'text-warning' : 'text-muted',\n )}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"none\"\n >\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\" />\n </svg>\n ))}\n </div>\n );\n}\n\nfunction performanceBarColor(score: number): string {\n if (score >= 80) return 'bg-success';\n if (score >= 50) return 'bg-warning';\n return 'bg-destructive';\n}\n\nexport function VendorPerformanceCard({\n vendorName,\n rating,\n maxRating = 5,\n metrics,\n performanceScore,\n lastActive,\n joinedDate,\n className,\n}: VendorPerformanceCardProps) {\n return (\n <SmartCard\n title={vendorName}\n className={className}\n footerText={\n <div className=\"flex items-center justify-between gap-4\">\n <Text size=\"xs\" type=\"secondary\">Last active: {lastActive}</Text>\n <Text size=\"xs\" type=\"secondary\">Joined: {joinedDate}</Text>\n </div>\n }\n >\n <div className=\"space-y-4\">\n <RatingStars rating={rating} maxRating={maxRating} />\n\n <div className=\"grid grid-cols-2 gap-2\">\n {([\n { label: 'Bookings', value: String(metrics.bookings) },\n { label: 'Revenue', value: metrics.revenue },\n { label: 'Avg Rating', value: String(metrics.avgRating) },\n { label: 'Response', value: metrics.responseTime },\n ] as const).map((metric) => (\n <div\n key={metric.label}\n className=\"rounded-lg bg-muted/50 p-3 text-center\"\n >\n <Text weight=\"bold\" className=\"tabular-nums\">\n {metric.value}\n </Text>\n <Text size=\"xs\" type=\"secondary\">\n {metric.label}\n </Text>\n </div>\n ))}\n </div>\n\n <div className=\"space-y-1.5\">\n <div className=\"flex items-center justify-between\">\n <Text>Performance</Text>\n <Text weight=\"semibold\" className=\"tabular-nums\">\n {performanceScore}%\n </Text>\n </div>\n <div className=\"h-2 w-full overflow-hidden rounded-full bg-muted\">\n <div\n className={cn(\n 'h-full rounded-full transition-all duration-500',\n performanceBarColor(performanceScore),\n )}\n style={{ width: `${String(performanceScore)}%` }}\n />\n </div>\n </div>\n </div>\n </SmartCard>\n );\n}\n\nVendorPerformanceCard.displayName = 'VendorPerformanceCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface ExperienceActivityCardStrings {\n\tdescription: string;\n\taddActionLabel: string;\n}\n\nexport const defaultExperienceActivityCardStrings: ExperienceActivityCardStrings = {\n\tdescription: 'Experiences completed this week',\n\taddActionLabel: 'Add activity',\n};\n\nexport type ExperienceActivityCardStringsProp = StringsProp<ExperienceActivityCardStrings>;\n","import { Plus } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport {\n Item,\n ItemContent,\n ItemDescription,\n ItemGroup,\n ItemMedia,\n ItemSeparator,\n ItemTitle,\n} from '@/components/base/item';\nimport { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultExperienceActivityCardStrings,\n} from './experience-activity.strings';\nimport type { ExperienceActivityCardProps } from './types';\n\nexport function ExperienceActivityCard({\n completed,\n total,\n activities,\n onAdd,\n strings: stringsProp,\n className,\n}: ExperienceActivityCardProps) {\n const strings = useStrings(defaultExperienceActivityCardStrings, stringsProp);\n\n return (\n <SmartCard\n title={`${completed} out of ${total}`}\n description={strings.description}\n headerEnd={\n !!onAdd && (\n <Button\n variant=\"secondary\"\n buttonStyle=\"ghost\"\n size=\"icon-small\"\n aria-label={strings.addActionLabel}\n onClick={onAdd}\n >\n <Plus className=\"size-4\" />\n </Button>\n )\n }\n className={cn('experience-activity--component', className)}\n >\n <ItemGroup>\n {activities.map((a, i) => (\n <div key={a.title}>\n {i > 0 && <ItemSeparator />}\n <Item size=\"small\" className=\"items-start\">\n <ItemMedia>\n <div className=\"flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary\">\n <a.icon className=\"size-4\" />\n </div>\n </ItemMedia>\n <ItemContent>\n <ItemTitle>{a.title}</ItemTitle>\n <ItemDescription clamp={1}>{a.time}</ItemDescription>\n <div className=\"mt-2 grid grid-cols-2 gap-1.5\">\n {a.metrics.map((m) => (\n <div key={m.label} className=\"rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5\">\n <Text size=\"xs\" type=\"secondary\">{m.label}</Text>\n <Text size=\"xs\" weight=\"semibold\">{m.value}</Text>\n </div>\n ))}\n </div>\n </ItemContent>\n </Item>\n </div>\n ))}\n </ItemGroup>\n </SmartCard>\n );\n}\n\nExperienceActivityCard.displayName = 'ExperienceActivityCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface BreadcrumbProgressStep {\n\tid: string;\n\tlabel: string;\n\thint?: string;\n}\n\nexport interface BreadcrumbProgressStrings {\n\tstepLabel: string;\n\tofLabel: string;\n}\n\nexport const defaultBreadcrumbProgressStrings: BreadcrumbProgressStrings = {\n\tstepLabel: 'Step',\n\tofLabel: 'of',\n};\n\nexport interface BreadcrumbProgressProps {\n\tsteps: BreadcrumbProgressStep[];\n\tcurrentIndex: number;\n\tonStepClick?: (id: string, index: number) => void;\n\tclassName?: string;\n\tstrings?: StringsProp<BreadcrumbProgressStrings>;\n}\n","/**\n * BreadcrumbProgress — wizard / multi-step navigation with completed,\n * current, and upcoming states. Click any completed step to jump back.\n */\nimport { Check } from 'lucide-react';\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tdefaultBreadcrumbProgressStrings,\n\ttype BreadcrumbProgressProps,\n} from './types';\n\nexport function BreadcrumbProgress({ steps, currentIndex, onStepClick, className, strings: stringsProp }: BreadcrumbProgressProps) {\n\tconst strings = useStrings(defaultBreadcrumbProgressStrings, stringsProp);\n\n\treturn (\n\t\t<div className={cn('breadcrumb-progress--component', 'w-full', className)}>\n\t\t\t<div className=\"flex items-center justify-between mb-2\">\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" weight=\"medium\" className=\"uppercase tracking-wider\">\n\t\t\t\t\t{strings.stepLabel} {currentIndex + 1} {strings.ofLabel} {steps.length}\n\t\t\t\t</Text>\n\t\t\t\t<Text tag=\"span\" size=\"xs\" weight=\"semibold\" className=\"tabular-nums\">{Math.round(((currentIndex + 1) / steps.length) * 100)}%</Text>\n\t\t\t</div>\n\t\t\t<ol className=\"flex items-center gap-2\">\n\t\t\t\t{steps.map((step, idx) => {\n\t\t\t\t\tconst isCompleted = idx < currentIndex;\n\t\t\t\t\tconst isCurrent = idx === currentIndex;\n\t\t\t\t\tconst isClickable = onStepClick && (isCompleted || isCurrent);\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={step.id} className=\"flex min-w-0 flex-1 items-center gap-2\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tonClick={() => isClickable && onStepClick?.(step.id, idx)}\n\t\t\t\t\t\t\t\tdisabled={!isClickable}\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\t\tsize=\"default\"\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors',\n\t\t\t\t\t\t\t\t\tisClickable && 'hover:bg-muted/40',\n\t\t\t\t\t\t\t\t\t!isClickable && 'cursor-default',\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<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums',\n\t\t\t\t\t\t\t\t\t\tisCompleted && 'bg-success text-success-foreground',\n\t\t\t\t\t\t\t\t\t\tisCurrent && 'bg-primary text-primary-foreground ring-4 ring-primary/15',\n\t\t\t\t\t\t\t\t\t\t!isCompleted && !isCurrent && 'bg-muted text-muted-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{isCompleted ? <Check className=\"size-3.5\" /> : idx + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div className=\"hidden min-w-0 lg:block\">\n\t\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className={cn(!isCurrent && !isCompleted && 'text-muted-foreground')}>{step.label}</Text>\n\t\t\t\t\t\t\t\t\t{!!step.hint && <Text size=\"xs\" type=\"discrete\" className=\"truncate\">{step.hint}</Text>}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t{idx < steps.length - 1 && (\n\t\t\t\t\t\t\t\t<div className={cn('h-px flex-1', isCompleted ? 'bg-success' : 'bg-border')} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</div>\n\t);\n}\n\nBreadcrumbProgress.displayName = 'BreadcrumbProgress';\n","/**\n * CategoryNavCard — vertical icon + label list with optional count badge per row.\n * Use as a sidebar nav for filtering or category browsing.\n */\nimport { ChevronRight } from 'lucide-react';\nimport { SmartCard } from '@/components/base/cards';\nimport { Badge } from '@/components/base/badge';\nimport {\n\tItem,\n\tItemActions,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { cn } from '@/lib/utils';\n\nimport type { CategoryNavCardProps } from './types';\n\nexport function CategoryNavCard({ title, items, activeId, onSelect, className }: CategoryNavCardProps) {\n\treturn (\n\t\t<SmartCard title={title} padding=\"default\" className={cn('category-nav--component', className)}>\n\t\t\t<ItemGroup>\n\t\t\t\t{items.map((it) => {\n\t\t\t\t\tconst Icon = it.icon;\n\t\t\t\t\tconst active = it.id === activeId;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tkey={it.id}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => onSelect?.(it.id)}\n\t\t\t\t\t\t\tdata-state={active ? 'active' : 'inactive'}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'cursor-pointer transition-colors',\n\t\t\t\t\t\t\t\tactive ? 'bg-primary/10 text-primary' : 'hover:bg-muted/50',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className={cn(active ? 'text-primary' : 'text-muted-foreground')}>\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<ItemContent>\n\t\t\t\t\t\t\t\t<ItemTitle bold={active}>{it.label}</ItemTitle>\n\t\t\t\t\t\t\t\t{!!it.hint && <ItemDescription clamp={1}>{it.hint}</ItemDescription>}\n\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t<ItemActions>\n\t\t\t\t\t\t\t\t{typeof it.count === 'number' && (\n\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t{it.count}\n\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ChevronRight\n\t\t\t\t\t\t\t\t\tclassName={cn('size-4 shrink-0 text-muted-foreground/60', active && 'text-primary')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemActions>\n\t\t\t\t\t\t</Item>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ItemGroup>\n\t\t</SmartCard>\n\t);\n}\n\nCategoryNavCard.displayName = 'CategoryNavCard';\n"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { useStrings as e } from "../../../lib/strings.js";
|
|
2
2
|
import { cn as t } from "../../../lib/utils.js";
|
|
3
|
-
import { t as n } from "../../../_shared/button-
|
|
4
|
-
import { s as r } from "../../../_shared/typography-
|
|
5
|
-
import { t as i } from "../../../_shared/badge-
|
|
6
|
-
import { t as a } from "../../../_shared/cards-
|
|
7
|
-
import { c as o, i as s, l as c, n as l, o as u, r as d, t as f, u as p } from "../../../_shared/item-
|
|
3
|
+
import { t as n } from "../../../_shared/button-CNEMqDHK.js";
|
|
4
|
+
import { s as r } from "../../../_shared/typography-C_kCoR1d.js";
|
|
5
|
+
import { t as i } from "../../../_shared/badge-DOJpEtsa.js";
|
|
6
|
+
import { t as a } from "../../../_shared/cards-B7voInTJ.js";
|
|
7
|
+
import { c as o, i as s, l as c, n as l, o as u, r as d, t as f, u as p } from "../../../_shared/item-D75eGy8G.js";
|
|
8
8
|
import { useState as m } from "react";
|
|
9
9
|
import { jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
10
10
|
import { Check as _, ChevronRight as v, Plus as y } from "lucide-react";
|
|
@@ -268,7 +268,6 @@ function O({ vendorName: e, rating: n, maxRating: i = 5, metrics: o, performance
|
|
|
268
268
|
].map((e) => /* @__PURE__ */ g("div", {
|
|
269
269
|
className: "rounded-lg bg-muted/50 p-3 text-center",
|
|
270
270
|
children: [/* @__PURE__ */ h(r, {
|
|
271
|
-
size: "lg",
|
|
272
271
|
weight: "bold",
|
|
273
272
|
className: "tabular-nums",
|
|
274
273
|
children: e.value
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/composed/navigation/kanban-board/kanban-board.tsx","../../../../src/components/composed/navigation/tab-switcher/tab-switcher.tsx","../../../../src/components/composed/navigation/time-ruler/types.ts","../../../../src/components/composed/navigation/time-ruler/time-ruler.tsx","../../../../src/components/composed/navigation/vendor-performance/vendor-performance.tsx","../../../../src/components/composed/navigation/experience-activity/experience-activity.strings.ts","../../../../src/components/composed/navigation/experience-activity/experience-activity.tsx","../../../../src/components/composed/navigation/breadcrumb-progress/types.ts","../../../../src/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.tsx","../../../../src/components/composed/navigation/category-nav/category-nav.tsx"],"sourcesContent":["import { Badge, type ComposedBadgeVariant } from '@/components/base/badge/badge';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { KanbanColumnTone, KanbanMicroBoardProps } from './types';\n\nconst COLUMN_BADGE: Record<KanbanColumnTone, ComposedBadgeVariant> = {\n\tneutral: 'secondary',\n\tprimary: 'primary',\n\tinfo: 'info',\n\tsuccess: 'success',\n\twarning: 'warning',\n\tdestructive: 'error',\n};\n\nconst ITEM_DOT: Record<KanbanColumnTone, string> = {\n\tneutral: 'bg-muted-foreground',\n\tprimary: 'bg-primary',\n\tinfo: 'bg-info',\n\tsuccess: 'bg-success',\n\twarning: 'bg-warning',\n\tdestructive: 'bg-destructive',\n};\n\nexport function KanbanMicroBoard({ columns, className }: KanbanMicroBoardProps) {\n\tconst totalItems = columns.reduce((sum, col) => sum + col.items.length, 0);\n\n\treturn (\n\t\t<SmartCard\n\t\t\ttitle=\"Pipeline Overview\"\n\t\t\ttitleSuffix={<Badge variant=\"secondary\">{totalItems} items</Badge>}\n\t\t\tclassName={cn('kanban-board--component', className)}\n\t\t>\n\t\t\t<div className=\"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4\">\n\t\t\t\t{columns.map((col) => {\n\t\t\t\t\tconst tone = col.tone ?? 'neutral';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={col.title}\n\t\t\t\t\t\t\tclassName=\"rounded-md border border-border/60 bg-muted/30 p-2\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"mb-2 flex items-center justify-between gap-2\">\n\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t{col.title}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<Badge variant={COLUMN_BADGE[tone]}>\n\t\t\t\t\t\t\t\t\t{col.items.length}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"space-y-1.5\">\n\t\t\t\t\t\t\t\t{col.items.map((item, itemIdx) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tkey={`${col.title}-${itemIdx}`}\n\t\t\t\t\t\t\t\t\t\tclassName=\"flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div\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'h-1.5 w-1.5 flex-shrink-0 rounded-full',\n\t\t\t\t\t\t\t\t\t\t\t\tITEM_DOT[item.tone ?? tone],\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<Text size=\"xs\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t{item.title}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</div>\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</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</SmartCard>\n\t);\n}\n\nKanbanMicroBoard.displayName = 'KanbanMicroBoard';\n","import { useState } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { TabSwitcherCardProps } from './types';\n\nexport function TabSwitcherCard({ title, tabs, defaultTab, className }: TabSwitcherCardProps) {\n const tabKeys = Object.keys(tabs);\n const [activeTab, setActiveTab] = useState<string>(defaultTab ?? tabKeys[0] ?? '');\n\n return (\n <SmartCard title={title} className={cn('tab-switcher--component', 'bg-gradient-to-b from-muted/30 to-card', className)}>\n {/* Pill tabs */}\n <div className=\"mt-4 flex gap-1 rounded-full bg-muted/50 p-1\">\n {tabKeys.map((t) => (\n <Button\n key={t}\n variant={activeTab === t ? 'light' : 'secondary'}\n buttonStyle={activeTab === t ? 'solid' : 'ghost'}\n onClick={() => setActiveTab(t)}\n className={cn('flex-1 rounded-full capitalize', activeTab === t ? 'shadow-sm' : '')}\n >\n {t}\n </Button>\n ))}\n </div>\n\n <div className=\"mt-4 space-y-2\">\n {tabs[activeTab]?.map((item) => (\n <div key={item.name} className=\"flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20\">\n {!!item.icon && (\n <div className=\"flex size-8 items-center justify-center rounded-full bg-primary/10\">\n <item.icon className=\"size-4 text-primary\" />\n </div>\n )}\n <Text className=\"flex-1\">{item.name}</Text>\n <Text weight=\"bold\">{item.value}</Text>\n </div>\n ))}\n </div>\n </SmartCard>\n );\n}\n\nTabSwitcherCard.displayName = 'TabSwitcherCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface TimeDistributionRulerStrings {\n /** Density-band legend labels. */\n legendNone: string;\n legendLow: string;\n legendMedium: string;\n legendHigh: string;\n /** \"Now\" marker label. */\n legendNow: string;\n /** Format function for the per-hour `title` tooltip (\"08:00 - 5 bookings\"). */\n formatHourTitle: (hourLabel: string, count: number) => string;\n}\n\nexport const defaultTimeDistributionRulerStrings: TimeDistributionRulerStrings = {\n legendNone: 'None',\n legendLow: 'Low',\n legendMedium: 'Medium',\n legendHigh: 'High',\n legendNow: 'Now',\n formatHourTitle: (hourLabel, count) => `${hourLabel}:00 - ${count} bookings`,\n};\n\nexport interface TimeDistributionRulerProps {\n hours: number[];\n currentHour?: number;\n className?: string;\n strings?: StringsProp<TimeDistributionRulerStrings>;\n}\n","import { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultTimeDistributionRulerStrings, type TimeDistributionRulerProps } from './types';\n\nexport function TimeDistributionRuler({ hours, currentHour, className, strings: stringsProp }: TimeDistributionRulerProps) {\n const strings = useStrings(defaultTimeDistributionRulerStrings, stringsProp);\n const maxVal = Math.max(...hours, 1);\n const peakHour = hours.indexOf(Math.max(...hours));\n\n function getDensityClass(count: number): string {\n if (count === 0) return 'bg-muted';\n const ratio = count / maxVal;\n if (ratio < 0.33) return 'bg-primary/25';\n if (ratio < 0.66) return 'bg-primary/55';\n return 'bg-primary';\n }\n\n return (\n <div className={cn('time-ruler--component', 'space-y-1.5', className)}>\n {/* Ruler bar */}\n <div className=\"relative flex h-8 gap-px overflow-hidden rounded-md\">\n {hours.map((count, hour) => (\n <div\n key={hour}\n className={cn(\n 'relative flex-1 transition-colors duration-200',\n getDensityClass(count),\n hour === peakHour && 'ring-1 ring-primary ring-inset',\n )}\n title={strings.formatHourTitle(String(hour).padStart(2, '0'), count)}\n />\n ))}\n </div>\n {/* Hour labels + now marker */}\n <div className=\"relative flex\">\n {hours.map((_, hour) => (\n <div key={hour} className=\"flex-1 text-center\">\n {hour % 4 === 0 && (\n <Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n {String(hour).padStart(2, '0')}\n </Text>\n )}\n </div>\n ))}\n </div>\n {/* Now marker */}\n {currentHour !== undefined && currentHour >= 0 && currentHour < 24 && (\n <div className=\"relative h-0\">\n <div\n className=\"absolute -top-[42px] flex flex-col items-center\"\n style={{ left: `${(currentHour / 24) * 100}%`, transform: 'translateX(-50%)' }}\n >\n <div\n className=\"h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive\"\n />\n </div>\n </div>\n )}\n {/* Legend */}\n <div className=\"flex items-center gap-3\">\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-muted\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNone}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/25\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendLow}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/55\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendMedium}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendHigh}</Text>\n </div>\n {currentHour !== undefined && (\n <div className=\"flex items-center gap-1\">\n <div className=\"h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNow}</Text>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nTimeDistributionRuler.displayName = 'TimeDistributionRuler';\n","import { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { VendorPerformanceCardProps } from './types';\n\nfunction RatingStars({ rating, maxRating = 5 }: { rating: number; maxRating?: number }) {\n return (\n <div className={cn('vendor-performance--component', 'flex items-center gap-0.5')}>\n {Array.from({ length: maxRating }, (_, i) => (\n <svg\n key={`star-${String(i)}`}\n className={cn(\n 'h-3.5 w-3.5',\n i < rating ? 'text-warning' : 'text-muted',\n )}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"none\"\n >\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\" />\n </svg>\n ))}\n </div>\n );\n}\n\nfunction performanceBarColor(score: number): string {\n if (score >= 80) return 'bg-success';\n if (score >= 50) return 'bg-warning';\n return 'bg-destructive';\n}\n\nexport function VendorPerformanceCard({\n vendorName,\n rating,\n maxRating = 5,\n metrics,\n performanceScore,\n lastActive,\n joinedDate,\n className,\n}: VendorPerformanceCardProps) {\n return (\n <SmartCard\n title={vendorName}\n className={className}\n footerText={\n <div className=\"flex items-center justify-between gap-4\">\n <Text size=\"xs\" type=\"secondary\">Last active: {lastActive}</Text>\n <Text size=\"xs\" type=\"secondary\">Joined: {joinedDate}</Text>\n </div>\n }\n >\n <div className=\"space-y-4\">\n <RatingStars rating={rating} maxRating={maxRating} />\n\n <div className=\"grid grid-cols-2 gap-2\">\n {([\n { label: 'Bookings', value: String(metrics.bookings) },\n { label: 'Revenue', value: metrics.revenue },\n { label: 'Avg Rating', value: String(metrics.avgRating) },\n { label: 'Response', value: metrics.responseTime },\n ] as const).map((metric) => (\n <div\n key={metric.label}\n className=\"rounded-lg bg-muted/50 p-3 text-center\"\n >\n <Text size=\"lg\" weight=\"bold\" className=\"tabular-nums\">\n {metric.value}\n </Text>\n <Text size=\"xs\" type=\"secondary\">\n {metric.label}\n </Text>\n </div>\n ))}\n </div>\n\n <div className=\"space-y-1.5\">\n <div className=\"flex items-center justify-between\">\n <Text>Performance</Text>\n <Text weight=\"semibold\" className=\"tabular-nums\">\n {performanceScore}%\n </Text>\n </div>\n <div className=\"h-2 w-full overflow-hidden rounded-full bg-muted\">\n <div\n className={cn(\n 'h-full rounded-full transition-all duration-500',\n performanceBarColor(performanceScore),\n )}\n style={{ width: `${String(performanceScore)}%` }}\n />\n </div>\n </div>\n </div>\n </SmartCard>\n );\n}\n\nVendorPerformanceCard.displayName = 'VendorPerformanceCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface ExperienceActivityCardStrings {\n\tdescription: string;\n\taddActionLabel: string;\n}\n\nexport const defaultExperienceActivityCardStrings: ExperienceActivityCardStrings = {\n\tdescription: 'Experiences completed this week',\n\taddActionLabel: 'Add activity',\n};\n\nexport type ExperienceActivityCardStringsProp = StringsProp<ExperienceActivityCardStrings>;\n","import { Plus } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport {\n Item,\n ItemContent,\n ItemDescription,\n ItemGroup,\n ItemMedia,\n ItemSeparator,\n ItemTitle,\n} from '@/components/base/item';\nimport { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultExperienceActivityCardStrings,\n} from './experience-activity.strings';\nimport type { ExperienceActivityCardProps } from './types';\n\nexport function ExperienceActivityCard({\n completed,\n total,\n activities,\n onAdd,\n strings: stringsProp,\n className,\n}: ExperienceActivityCardProps) {\n const strings = useStrings(defaultExperienceActivityCardStrings, stringsProp);\n\n return (\n <SmartCard\n title={`${completed} out of ${total}`}\n description={strings.description}\n headerEnd={\n !!onAdd && (\n <Button\n variant=\"secondary\"\n buttonStyle=\"ghost\"\n size=\"icon-small\"\n aria-label={strings.addActionLabel}\n onClick={onAdd}\n >\n <Plus className=\"size-4\" />\n </Button>\n )\n }\n className={cn('experience-activity--component', className)}\n >\n <ItemGroup>\n {activities.map((a, i) => (\n <div key={a.title}>\n {i > 0 && <ItemSeparator />}\n <Item size=\"small\" className=\"items-start\">\n <ItemMedia>\n <div className=\"flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary\">\n <a.icon className=\"size-4\" />\n </div>\n </ItemMedia>\n <ItemContent>\n <ItemTitle>{a.title}</ItemTitle>\n <ItemDescription clamp={1}>{a.time}</ItemDescription>\n <div className=\"mt-2 grid grid-cols-2 gap-1.5\">\n {a.metrics.map((m) => (\n <div key={m.label} className=\"rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5\">\n <Text size=\"xs\" type=\"secondary\">{m.label}</Text>\n <Text size=\"xs\" weight=\"semibold\">{m.value}</Text>\n </div>\n ))}\n </div>\n </ItemContent>\n </Item>\n </div>\n ))}\n </ItemGroup>\n </SmartCard>\n );\n}\n\nExperienceActivityCard.displayName = 'ExperienceActivityCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface BreadcrumbProgressStep {\n\tid: string;\n\tlabel: string;\n\thint?: string;\n}\n\nexport interface BreadcrumbProgressStrings {\n\tstepLabel: string;\n\tofLabel: string;\n}\n\nexport const defaultBreadcrumbProgressStrings: BreadcrumbProgressStrings = {\n\tstepLabel: 'Step',\n\tofLabel: 'of',\n};\n\nexport interface BreadcrumbProgressProps {\n\tsteps: BreadcrumbProgressStep[];\n\tcurrentIndex: number;\n\tonStepClick?: (id: string, index: number) => void;\n\tclassName?: string;\n\tstrings?: StringsProp<BreadcrumbProgressStrings>;\n}\n","/**\n * BreadcrumbProgress — wizard / multi-step navigation with completed,\n * current, and upcoming states. Click any completed step to jump back.\n */\nimport { Check } from 'lucide-react';\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tdefaultBreadcrumbProgressStrings,\n\ttype BreadcrumbProgressProps,\n} from './types';\n\nexport function BreadcrumbProgress({ steps, currentIndex, onStepClick, className, strings: stringsProp }: BreadcrumbProgressProps) {\n\tconst strings = useStrings(defaultBreadcrumbProgressStrings, stringsProp);\n\n\treturn (\n\t\t<div className={cn('breadcrumb-progress--component', 'w-full', className)}>\n\t\t\t<div className=\"flex items-center justify-between mb-2\">\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" weight=\"medium\" className=\"uppercase tracking-wider\">\n\t\t\t\t\t{strings.stepLabel} {currentIndex + 1} {strings.ofLabel} {steps.length}\n\t\t\t\t</Text>\n\t\t\t\t<Text tag=\"span\" size=\"xs\" weight=\"semibold\" className=\"tabular-nums\">{Math.round(((currentIndex + 1) / steps.length) * 100)}%</Text>\n\t\t\t</div>\n\t\t\t<ol className=\"flex items-center gap-2\">\n\t\t\t\t{steps.map((step, idx) => {\n\t\t\t\t\tconst isCompleted = idx < currentIndex;\n\t\t\t\t\tconst isCurrent = idx === currentIndex;\n\t\t\t\t\tconst isClickable = onStepClick && (isCompleted || isCurrent);\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={step.id} className=\"flex min-w-0 flex-1 items-center gap-2\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tonClick={() => isClickable && onStepClick?.(step.id, idx)}\n\t\t\t\t\t\t\t\tdisabled={!isClickable}\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\t\tsize=\"default\"\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors',\n\t\t\t\t\t\t\t\t\tisClickable && 'hover:bg-muted/40',\n\t\t\t\t\t\t\t\t\t!isClickable && 'cursor-default',\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<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums',\n\t\t\t\t\t\t\t\t\t\tisCompleted && 'bg-success text-success-foreground',\n\t\t\t\t\t\t\t\t\t\tisCurrent && 'bg-primary text-primary-foreground ring-4 ring-primary/15',\n\t\t\t\t\t\t\t\t\t\t!isCompleted && !isCurrent && 'bg-muted text-muted-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{isCompleted ? <Check className=\"size-3.5\" /> : idx + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div className=\"hidden min-w-0 lg:block\">\n\t\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className={cn(!isCurrent && !isCompleted && 'text-muted-foreground')}>{step.label}</Text>\n\t\t\t\t\t\t\t\t\t{!!step.hint && <Text size=\"xs\" type=\"discrete\" className=\"truncate\">{step.hint}</Text>}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t{idx < steps.length - 1 && (\n\t\t\t\t\t\t\t\t<div className={cn('h-px flex-1', isCompleted ? 'bg-success' : 'bg-border')} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</div>\n\t);\n}\n\nBreadcrumbProgress.displayName = 'BreadcrumbProgress';\n","/**\n * CategoryNavCard — vertical icon + label list with optional count badge per row.\n * Use as a sidebar nav for filtering or category browsing.\n */\nimport { ChevronRight } from 'lucide-react';\nimport { SmartCard } from '@/components/base/cards';\nimport { Badge } from '@/components/base/badge';\nimport {\n\tItem,\n\tItemActions,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { cn } from '@/lib/utils';\n\nimport type { CategoryNavCardProps } from './types';\n\nexport function CategoryNavCard({ title, items, activeId, onSelect, className }: CategoryNavCardProps) {\n\treturn (\n\t\t<SmartCard title={title} padding=\"default\" className={cn('category-nav--component', className)}>\n\t\t\t<ItemGroup>\n\t\t\t\t{items.map((it) => {\n\t\t\t\t\tconst Icon = it.icon;\n\t\t\t\t\tconst active = it.id === activeId;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tkey={it.id}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => onSelect?.(it.id)}\n\t\t\t\t\t\t\tdata-state={active ? 'active' : 'inactive'}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'cursor-pointer transition-colors',\n\t\t\t\t\t\t\t\tactive ? 'bg-primary/10 text-primary' : 'hover:bg-muted/50',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className={cn(active ? 'text-primary' : 'text-muted-foreground')}>\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<ItemContent>\n\t\t\t\t\t\t\t\t<ItemTitle bold={active}>{it.label}</ItemTitle>\n\t\t\t\t\t\t\t\t{!!it.hint && <ItemDescription clamp={1}>{it.hint}</ItemDescription>}\n\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t<ItemActions>\n\t\t\t\t\t\t\t\t{typeof it.count === 'number' && (\n\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t{it.count}\n\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ChevronRight\n\t\t\t\t\t\t\t\t\tclassName={cn('size-4 shrink-0 text-muted-foreground/60', active && 'text-primary')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemActions>\n\t\t\t\t\t\t</Item>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ItemGroup>\n\t\t</SmartCard>\n\t);\n}\n\nCategoryNavCard.displayName = 'CategoryNavCard';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/composed/navigation/kanban-board/kanban-board.tsx","../../../../src/components/composed/navigation/tab-switcher/tab-switcher.tsx","../../../../src/components/composed/navigation/time-ruler/types.ts","../../../../src/components/composed/navigation/time-ruler/time-ruler.tsx","../../../../src/components/composed/navigation/vendor-performance/vendor-performance.tsx","../../../../src/components/composed/navigation/experience-activity/experience-activity.strings.ts","../../../../src/components/composed/navigation/experience-activity/experience-activity.tsx","../../../../src/components/composed/navigation/breadcrumb-progress/types.ts","../../../../src/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.tsx","../../../../src/components/composed/navigation/category-nav/category-nav.tsx"],"sourcesContent":["import { Badge, type ComposedBadgeVariant } from '@/components/base/badge/badge';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { KanbanColumnTone, KanbanMicroBoardProps } from './types';\n\nconst COLUMN_BADGE: Record<KanbanColumnTone, ComposedBadgeVariant> = {\n\tneutral: 'secondary',\n\tprimary: 'primary',\n\tinfo: 'info',\n\tsuccess: 'success',\n\twarning: 'warning',\n\tdestructive: 'error',\n};\n\nconst ITEM_DOT: Record<KanbanColumnTone, string> = {\n\tneutral: 'bg-muted-foreground',\n\tprimary: 'bg-primary',\n\tinfo: 'bg-info',\n\tsuccess: 'bg-success',\n\twarning: 'bg-warning',\n\tdestructive: 'bg-destructive',\n};\n\nexport function KanbanMicroBoard({ columns, className }: KanbanMicroBoardProps) {\n\tconst totalItems = columns.reduce((sum, col) => sum + col.items.length, 0);\n\n\treturn (\n\t\t<SmartCard\n\t\t\ttitle=\"Pipeline Overview\"\n\t\t\ttitleSuffix={<Badge variant=\"secondary\">{totalItems} items</Badge>}\n\t\t\tclassName={cn('kanban-board--component', className)}\n\t\t>\n\t\t\t<div className=\"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4\">\n\t\t\t\t{columns.map((col) => {\n\t\t\t\t\tconst tone = col.tone ?? 'neutral';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={col.title}\n\t\t\t\t\t\t\tclassName=\"rounded-md border border-border/60 bg-muted/30 p-2\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"mb-2 flex items-center justify-between gap-2\">\n\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t{col.title}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<Badge variant={COLUMN_BADGE[tone]}>\n\t\t\t\t\t\t\t\t\t{col.items.length}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"space-y-1.5\">\n\t\t\t\t\t\t\t\t{col.items.map((item, itemIdx) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tkey={`${col.title}-${itemIdx}`}\n\t\t\t\t\t\t\t\t\t\tclassName=\"flex min-h-8 items-center gap-2 rounded-md border border-border/50 bg-card px-2 py-1.5 shadow-sm\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div\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'h-1.5 w-1.5 flex-shrink-0 rounded-full',\n\t\t\t\t\t\t\t\t\t\t\t\tITEM_DOT[item.tone ?? tone],\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<Text size=\"xs\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t{item.title}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</div>\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</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</SmartCard>\n\t);\n}\n\nKanbanMicroBoard.displayName = 'KanbanMicroBoard';\n","import { useState } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { TabSwitcherCardProps } from './types';\n\nexport function TabSwitcherCard({ title, tabs, defaultTab, className }: TabSwitcherCardProps) {\n const tabKeys = Object.keys(tabs);\n const [activeTab, setActiveTab] = useState<string>(defaultTab ?? tabKeys[0] ?? '');\n\n return (\n <SmartCard title={title} className={cn('tab-switcher--component', 'bg-gradient-to-b from-muted/30 to-card', className)}>\n {/* Pill tabs */}\n <div className=\"mt-4 flex gap-1 rounded-full bg-muted/50 p-1\">\n {tabKeys.map((t) => (\n <Button\n key={t}\n variant={activeTab === t ? 'light' : 'secondary'}\n buttonStyle={activeTab === t ? 'solid' : 'ghost'}\n onClick={() => setActiveTab(t)}\n className={cn('flex-1 rounded-full capitalize', activeTab === t ? 'shadow-sm' : '')}\n >\n {t}\n </Button>\n ))}\n </div>\n\n <div className=\"mt-4 space-y-2\">\n {tabs[activeTab]?.map((item) => (\n <div key={item.name} className=\"flex items-center gap-3 rounded-xl px-2 py-2 transition-colors hover:bg-muted/20\">\n {!!item.icon && (\n <div className=\"flex size-8 items-center justify-center rounded-full bg-primary/10\">\n <item.icon className=\"size-4 text-primary\" />\n </div>\n )}\n <Text className=\"flex-1\">{item.name}</Text>\n <Text weight=\"bold\">{item.value}</Text>\n </div>\n ))}\n </div>\n </SmartCard>\n );\n}\n\nTabSwitcherCard.displayName = 'TabSwitcherCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface TimeDistributionRulerStrings {\n /** Density-band legend labels. */\n legendNone: string;\n legendLow: string;\n legendMedium: string;\n legendHigh: string;\n /** \"Now\" marker label. */\n legendNow: string;\n /** Format function for the per-hour `title` tooltip (\"08:00 - 5 bookings\"). */\n formatHourTitle: (hourLabel: string, count: number) => string;\n}\n\nexport const defaultTimeDistributionRulerStrings: TimeDistributionRulerStrings = {\n legendNone: 'None',\n legendLow: 'Low',\n legendMedium: 'Medium',\n legendHigh: 'High',\n legendNow: 'Now',\n formatHourTitle: (hourLabel, count) => `${hourLabel}:00 - ${count} bookings`,\n};\n\nexport interface TimeDistributionRulerProps {\n hours: number[];\n currentHour?: number;\n className?: string;\n strings?: StringsProp<TimeDistributionRulerStrings>;\n}\n","import { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultTimeDistributionRulerStrings, type TimeDistributionRulerProps } from './types';\n\nexport function TimeDistributionRuler({ hours, currentHour, className, strings: stringsProp }: TimeDistributionRulerProps) {\n const strings = useStrings(defaultTimeDistributionRulerStrings, stringsProp);\n const maxVal = Math.max(...hours, 1);\n const peakHour = hours.indexOf(Math.max(...hours));\n\n function getDensityClass(count: number): string {\n if (count === 0) return 'bg-muted';\n const ratio = count / maxVal;\n if (ratio < 0.33) return 'bg-primary/25';\n if (ratio < 0.66) return 'bg-primary/55';\n return 'bg-primary';\n }\n\n return (\n <div className={cn('time-ruler--component', 'space-y-1.5', className)}>\n {/* Ruler bar */}\n <div className=\"relative flex h-8 gap-px overflow-hidden rounded-md\">\n {hours.map((count, hour) => (\n <div\n key={hour}\n className={cn(\n 'relative flex-1 transition-colors duration-200',\n getDensityClass(count),\n hour === peakHour && 'ring-1 ring-primary ring-inset',\n )}\n title={strings.formatHourTitle(String(hour).padStart(2, '0'), count)}\n />\n ))}\n </div>\n {/* Hour labels + now marker */}\n <div className=\"relative flex\">\n {hours.map((_, hour) => (\n <div key={hour} className=\"flex-1 text-center\">\n {hour % 4 === 0 && (\n <Text size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n {String(hour).padStart(2, '0')}\n </Text>\n )}\n </div>\n ))}\n </div>\n {/* Now marker */}\n {currentHour !== undefined && currentHour >= 0 && currentHour < 24 && (\n <div className=\"relative h-0\">\n <div\n className=\"absolute -top-[42px] flex flex-col items-center\"\n style={{ left: `${(currentHour / 24) * 100}%`, transform: 'translateX(-50%)' }}\n >\n <div\n className=\"h-0 w-0 border-x-[4px] border-b-[5px] border-x-transparent border-b-destructive\"\n />\n </div>\n </div>\n )}\n {/* Legend */}\n <div className=\"flex items-center gap-3\">\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-muted\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNone}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/25\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendLow}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary/55\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendMedium}</Text>\n </div>\n <div className=\"flex items-center gap-1\">\n <div className=\"h-2 w-3 rounded-sm bg-primary\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendHigh}</Text>\n </div>\n {currentHour !== undefined && (\n <div className=\"flex items-center gap-1\">\n <div className=\"h-0 w-0 border-x-[3px] border-b-[4px] border-x-transparent border-b-destructive\" />\n <Text size=\"xs\" type=\"secondary\">{strings.legendNow}</Text>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nTimeDistributionRuler.displayName = 'TimeDistributionRuler';\n","import { SmartCard } from '@/components/base/cards/smart-card';\nimport { Text } from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport type { VendorPerformanceCardProps } from './types';\n\nfunction RatingStars({ rating, maxRating = 5 }: { rating: number; maxRating?: number }) {\n return (\n <div className={cn('vendor-performance--component', 'flex items-center gap-0.5')}>\n {Array.from({ length: maxRating }, (_, i) => (\n <svg\n key={`star-${String(i)}`}\n className={cn(\n 'h-3.5 w-3.5',\n i < rating ? 'text-warning' : 'text-muted',\n )}\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n stroke=\"none\"\n >\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\" />\n </svg>\n ))}\n </div>\n );\n}\n\nfunction performanceBarColor(score: number): string {\n if (score >= 80) return 'bg-success';\n if (score >= 50) return 'bg-warning';\n return 'bg-destructive';\n}\n\nexport function VendorPerformanceCard({\n vendorName,\n rating,\n maxRating = 5,\n metrics,\n performanceScore,\n lastActive,\n joinedDate,\n className,\n}: VendorPerformanceCardProps) {\n return (\n <SmartCard\n title={vendorName}\n className={className}\n footerText={\n <div className=\"flex items-center justify-between gap-4\">\n <Text size=\"xs\" type=\"secondary\">Last active: {lastActive}</Text>\n <Text size=\"xs\" type=\"secondary\">Joined: {joinedDate}</Text>\n </div>\n }\n >\n <div className=\"space-y-4\">\n <RatingStars rating={rating} maxRating={maxRating} />\n\n <div className=\"grid grid-cols-2 gap-2\">\n {([\n { label: 'Bookings', value: String(metrics.bookings) },\n { label: 'Revenue', value: metrics.revenue },\n { label: 'Avg Rating', value: String(metrics.avgRating) },\n { label: 'Response', value: metrics.responseTime },\n ] as const).map((metric) => (\n <div\n key={metric.label}\n className=\"rounded-lg bg-muted/50 p-3 text-center\"\n >\n <Text weight=\"bold\" className=\"tabular-nums\">\n {metric.value}\n </Text>\n <Text size=\"xs\" type=\"secondary\">\n {metric.label}\n </Text>\n </div>\n ))}\n </div>\n\n <div className=\"space-y-1.5\">\n <div className=\"flex items-center justify-between\">\n <Text>Performance</Text>\n <Text weight=\"semibold\" className=\"tabular-nums\">\n {performanceScore}%\n </Text>\n </div>\n <div className=\"h-2 w-full overflow-hidden rounded-full bg-muted\">\n <div\n className={cn(\n 'h-full rounded-full transition-all duration-500',\n performanceBarColor(performanceScore),\n )}\n style={{ width: `${String(performanceScore)}%` }}\n />\n </div>\n </div>\n </div>\n </SmartCard>\n );\n}\n\nVendorPerformanceCard.displayName = 'VendorPerformanceCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface ExperienceActivityCardStrings {\n\tdescription: string;\n\taddActionLabel: string;\n}\n\nexport const defaultExperienceActivityCardStrings: ExperienceActivityCardStrings = {\n\tdescription: 'Experiences completed this week',\n\taddActionLabel: 'Add activity',\n};\n\nexport type ExperienceActivityCardStringsProp = StringsProp<ExperienceActivityCardStrings>;\n","import { Plus } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { SmartCard } from '@/components/base/cards/smart-card';\nimport {\n Item,\n ItemContent,\n ItemDescription,\n ItemGroup,\n ItemMedia,\n ItemSeparator,\n ItemTitle,\n} from '@/components/base/item';\nimport { Text } from '@/components/typography/text';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultExperienceActivityCardStrings,\n} from './experience-activity.strings';\nimport type { ExperienceActivityCardProps } from './types';\n\nexport function ExperienceActivityCard({\n completed,\n total,\n activities,\n onAdd,\n strings: stringsProp,\n className,\n}: ExperienceActivityCardProps) {\n const strings = useStrings(defaultExperienceActivityCardStrings, stringsProp);\n\n return (\n <SmartCard\n title={`${completed} out of ${total}`}\n description={strings.description}\n headerEnd={\n !!onAdd && (\n <Button\n variant=\"secondary\"\n buttonStyle=\"ghost\"\n size=\"icon-small\"\n aria-label={strings.addActionLabel}\n onClick={onAdd}\n >\n <Plus className=\"size-4\" />\n </Button>\n )\n }\n className={cn('experience-activity--component', className)}\n >\n <ItemGroup>\n {activities.map((a, i) => (\n <div key={a.title}>\n {i > 0 && <ItemSeparator />}\n <Item size=\"small\" className=\"items-start\">\n <ItemMedia>\n <div className=\"flex size-8 items-center justify-center rounded-md bg-primary/10 text-primary\">\n <a.icon className=\"size-4\" />\n </div>\n </ItemMedia>\n <ItemContent>\n <ItemTitle>{a.title}</ItemTitle>\n <ItemDescription clamp={1}>{a.time}</ItemDescription>\n <div className=\"mt-2 grid grid-cols-2 gap-1.5\">\n {a.metrics.map((m) => (\n <div key={m.label} className=\"rounded-md border border-border/50 bg-muted/25 px-2.5 py-1.5\">\n <Text size=\"xs\" type=\"secondary\">{m.label}</Text>\n <Text size=\"xs\" weight=\"semibold\">{m.value}</Text>\n </div>\n ))}\n </div>\n </ItemContent>\n </Item>\n </div>\n ))}\n </ItemGroup>\n </SmartCard>\n );\n}\n\nExperienceActivityCard.displayName = 'ExperienceActivityCard';\n","import type { StringsProp } from '@/lib/strings';\n\nexport interface BreadcrumbProgressStep {\n\tid: string;\n\tlabel: string;\n\thint?: string;\n}\n\nexport interface BreadcrumbProgressStrings {\n\tstepLabel: string;\n\tofLabel: string;\n}\n\nexport const defaultBreadcrumbProgressStrings: BreadcrumbProgressStrings = {\n\tstepLabel: 'Step',\n\tofLabel: 'of',\n};\n\nexport interface BreadcrumbProgressProps {\n\tsteps: BreadcrumbProgressStep[];\n\tcurrentIndex: number;\n\tonStepClick?: (id: string, index: number) => void;\n\tclassName?: string;\n\tstrings?: StringsProp<BreadcrumbProgressStrings>;\n}\n","/**\n * BreadcrumbProgress — wizard / multi-step navigation with completed,\n * current, and upcoming states. Click any completed step to jump back.\n */\nimport { Check } from 'lucide-react';\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tdefaultBreadcrumbProgressStrings,\n\ttype BreadcrumbProgressProps,\n} from './types';\n\nexport function BreadcrumbProgress({ steps, currentIndex, onStepClick, className, strings: stringsProp }: BreadcrumbProgressProps) {\n\tconst strings = useStrings(defaultBreadcrumbProgressStrings, stringsProp);\n\n\treturn (\n\t\t<div className={cn('breadcrumb-progress--component', 'w-full', className)}>\n\t\t\t<div className=\"flex items-center justify-between mb-2\">\n\t\t\t\t<Text size=\"xs\" type=\"secondary\" weight=\"medium\" className=\"uppercase tracking-wider\">\n\t\t\t\t\t{strings.stepLabel} {currentIndex + 1} {strings.ofLabel} {steps.length}\n\t\t\t\t</Text>\n\t\t\t\t<Text tag=\"span\" size=\"xs\" weight=\"semibold\" className=\"tabular-nums\">{Math.round(((currentIndex + 1) / steps.length) * 100)}%</Text>\n\t\t\t</div>\n\t\t\t<ol className=\"flex items-center gap-2\">\n\t\t\t\t{steps.map((step, idx) => {\n\t\t\t\t\tconst isCompleted = idx < currentIndex;\n\t\t\t\t\tconst isCurrent = idx === currentIndex;\n\t\t\t\t\tconst isClickable = onStepClick && (isCompleted || isCurrent);\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={step.id} className=\"flex min-w-0 flex-1 items-center gap-2\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tonClick={() => isClickable && onStepClick?.(step.id, idx)}\n\t\t\t\t\t\t\t\tdisabled={!isClickable}\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\t\tsize=\"default\"\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'h-auto min-w-0 justify-start gap-2 rounded-md px-2 py-1 text-left transition-colors',\n\t\t\t\t\t\t\t\t\tisClickable && 'hover:bg-muted/40',\n\t\t\t\t\t\t\t\t\t!isClickable && 'cursor-default',\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<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'flex size-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold tabular-nums',\n\t\t\t\t\t\t\t\t\t\tisCompleted && 'bg-success text-success-foreground',\n\t\t\t\t\t\t\t\t\t\tisCurrent && 'bg-primary text-primary-foreground ring-4 ring-primary/15',\n\t\t\t\t\t\t\t\t\t\t!isCompleted && !isCurrent && 'bg-muted text-muted-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{isCompleted ? <Check className=\"size-3.5\" /> : idx + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<div className=\"hidden min-w-0 lg:block\">\n\t\t\t\t\t\t\t\t\t<Text size=\"xs\" weight=\"semibold\" className={cn(!isCurrent && !isCompleted && 'text-muted-foreground')}>{step.label}</Text>\n\t\t\t\t\t\t\t\t\t{!!step.hint && <Text size=\"xs\" type=\"discrete\" className=\"truncate\">{step.hint}</Text>}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t{idx < steps.length - 1 && (\n\t\t\t\t\t\t\t\t<div className={cn('h-px flex-1', isCompleted ? 'bg-success' : 'bg-border')} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</div>\n\t);\n}\n\nBreadcrumbProgress.displayName = 'BreadcrumbProgress';\n","/**\n * CategoryNavCard — vertical icon + label list with optional count badge per row.\n * Use as a sidebar nav for filtering or category browsing.\n */\nimport { ChevronRight } from 'lucide-react';\nimport { SmartCard } from '@/components/base/cards';\nimport { Badge } from '@/components/base/badge';\nimport {\n\tItem,\n\tItemActions,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { cn } from '@/lib/utils';\n\nimport type { CategoryNavCardProps } from './types';\n\nexport function CategoryNavCard({ title, items, activeId, onSelect, className }: CategoryNavCardProps) {\n\treturn (\n\t\t<SmartCard title={title} padding=\"default\" className={cn('category-nav--component', className)}>\n\t\t\t<ItemGroup>\n\t\t\t\t{items.map((it) => {\n\t\t\t\t\tconst Icon = it.icon;\n\t\t\t\t\tconst active = it.id === activeId;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\tkey={it.id}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => onSelect?.(it.id)}\n\t\t\t\t\t\t\tdata-state={active ? 'active' : 'inactive'}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'cursor-pointer transition-colors',\n\t\t\t\t\t\t\t\tactive ? 'bg-primary/10 text-primary' : 'hover:bg-muted/50',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className={cn(active ? 'text-primary' : 'text-muted-foreground')}>\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<ItemContent>\n\t\t\t\t\t\t\t\t<ItemTitle bold={active}>{it.label}</ItemTitle>\n\t\t\t\t\t\t\t\t{!!it.hint && <ItemDescription clamp={1}>{it.hint}</ItemDescription>}\n\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t<ItemActions>\n\t\t\t\t\t\t\t\t{typeof it.count === 'number' && (\n\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t{it.count}\n\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ChevronRight\n\t\t\t\t\t\t\t\t\tclassName={cn('size-4 shrink-0 text-muted-foreground/60', active && 'text-primary')}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemActions>\n\t\t\t\t\t\t</Item>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</ItemGroup>\n\t\t</SmartCard>\n\t);\n}\n\nCategoryNavCard.displayName = 'CategoryNavCard';\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/typography-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/typography-sXFd02zl.cjs"),r=require("../../../_shared/accordion-ClVkIaCy.cjs"),i=require("../../../_shared/spinner-C-yoZUk-.cjs");let a=require("react"),o=require("react/jsx-runtime"),s=require("lucide-react");var c={regionAriaLabel:void 0,statusCompletedAria:`Completed`,statusInProgressAria:`In progress`,statusPendingAria:`Pending`};function l({status:e,ariaLabel:n,className:r}){return e===`completed`?(0,o.jsx)(`span`,{role:`img`,"aria-label":n,className:t.cn(`flex size-8 items-center justify-center rounded-full bg-success/15 text-success ring-1 ring-success/20`,r),children:(0,o.jsx)(s.CheckCircle2,{className:`size-4`})}):e===`in-progress`?(0,o.jsx)(`span`,{role:`img`,"aria-label":n,className:t.cn(`flex size-8 items-center justify-center rounded-full bg-warning/15 ring-1 ring-warning/30`,r),children:(0,o.jsx)(`span`,{className:`size-2 rounded-full bg-warning`})}):(0,o.jsx)(`span`,{role:`img`,"aria-label":n,className:t.cn(`flex size-8 items-center justify-center rounded-full bg-muted text-muted-foreground/70 ring-1 ring-border/70`,r),children:(0,o.jsx)(i.t,{className:`size-4 opacity-60`})})}l.displayName=`StepStatusIndicator`;var u={completed:`text-foreground`,"in-progress":`text-foreground`,pending:`text-muted-foreground`};function d(e,t){return e===`completed`?t.statusCompletedAria:e===`in-progress`?t.statusInProgressAria:t.statusPendingAria}function f(e){let t=e.find(e=>e.status!==`completed`&&!e.disabled);return t?[t.id]:[]}var p=(0,a.forwardRef)(function({steps:i,defaultExpanded:s,multiple:p=!1,value:m,onValueChange:h,onStepOpen:g,variant:_=`bordered`,className:v,stepClassName:y,strings:b},x){let S=e.useStrings(c,b),C=m!==void 0,w=(0,a.useMemo)(()=>s??f(i),[]),[T,E]=(0,a.useState)(w),D=(0,a.useRef)(!1),O=C?m:T,k=(0,a.useRef)(new Set(w));(0,a.useEffect)(()=>{if(C||D.current||s!==void 0||i.length===0||T.length>0)return;let e=f(i);e.length>0&&E(e)},[i,C,s,T.length]);let A=(0,a.useCallback)(e=>{let t=e??[];D.current=!0,C||E(t),h?.(t)},[C,h]);return(0,a.useEffect)(()=>{if(!g){k.current=new Set(O);return}let e=k.current;for(let t of O)e.has(t)||g(t);k.current=new Set(O)},[O,g]),(0,o.jsx)(r.s,{ref:x,multiple:p,value:O,onValueChange:A,"aria-label":S.regionAriaLabel,className:t.cn(`checklist--component`,r.a[_],v),children:i.map(e=>(0,o.jsxs)(r.l,{value:e.id,className:t.cn(r.i[_],y),children:[(0,o.jsx)(r.u,{disabled:e.disabled,className:t.cn(r.o,`min-h-16 items-center`),children:(0,o.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-3 pr-2`,children:[(0,o.jsx)(l,{status:e.status,ariaLabel:d(e.status,S)}),(0,o.jsx)(n.s,{tag:`span`,weight:`semibold`,className:t.cn(u[e.status]),children:e.title}),!!e.badge&&(0,o.jsx)(`span`,{className:`ml-auto inline-flex shrink-0`,children:e.badge})]})}),!!e.content&&(0,o.jsx)(r.c,{className:r.r.withMedallion,children:(0,o.jsx)(n.s,{type:`secondary`,className:`leading-relaxed`,tag:`div`,children:e.content})})]},e.id))})});p.displayName=`OnboardingChecklist`,exports.OnboardingChecklist=p,exports.StepStatusIndicator=l,exports.defaultOnboardingChecklistStrings=c;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useStrings as e } from "../../../lib/strings.js";
|
|
2
2
|
import { cn as t } from "../../../lib/utils.js";
|
|
3
|
-
import { s as n } from "../../../_shared/typography-
|
|
4
|
-
import { a as r, c as i, i as a, l as o, o as s, r as c, s as l, u } from "../../../_shared/accordion-
|
|
5
|
-
import { t as d } from "../../../_shared/spinner-
|
|
3
|
+
import { s as n } from "../../../_shared/typography-C_kCoR1d.js";
|
|
4
|
+
import { a as r, c as i, i as a, l as o, o as s, r as c, s as l, u } from "../../../_shared/accordion-CSRRDWVZ.js";
|
|
5
|
+
import { t as d } from "../../../_shared/spinner-CDVWFN0N.js";
|
|
6
6
|
import { forwardRef as f, useCallback as p, useEffect as m, useMemo as h, useRef as g, useState as _ } from "react";
|
|
7
7
|
import { jsx as v, jsxs as y } from "react/jsx-runtime";
|
|
8
8
|
import { CheckCircle2 as b } from "lucide-react";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/typography-CWEobAJV.cjs"),r=require("../../../_shared/badge-C65rt1M9.cjs"),i=require("../../../_shared/cards-m03XN10f.cjs");let a=require("react/jsx-runtime"),o=require("lucide-react");var s={completed:{dot:`bg-success text-success-foreground`,line:`bg-success`,title:`text-foreground`,Icon:o.Check},current:{dot:`bg-primary text-primary-foreground ring-4 ring-primary/20`,line:`bg-border`,title:`text-foreground`,Icon:o.Loader2},upcoming:{dot:`bg-muted text-muted-foreground`,line:`bg-border`,title:`text-muted-foreground`,Icon:o.Circle}};function c({status:e}){let{dot:n,Icon:r}=s[e],i=e===`current`;return(0,a.jsx)(`div`,{className:t.cn(`steps-card--component`,`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-full transition-all`,n),children:(0,a.jsx)(r,{className:t.cn(`h-4 w-4`,i&&`animate-spin`)})})}function l({title:e,description:o,steps:l,footerText:u,className:d}){return(0,a.jsx)(i.t,{title:e,description:o,footerText:u,className:d,children:(0,a.jsx)(`div`,{className:`relative`,children:l.map((e,i)=>{let o=i===l.length-1,{line:u,title:d}=s[e.status];return(0,a.jsxs)(`div`,{className:`relative flex gap-4`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(c,{status:e.status}),!o&&(0,a.jsx)(`div`,{className:t.cn(`w-0.5 flex-1 min-h-6`,u)})]}),(0,a.jsxs)(`div`,{className:t.cn(`flex-1 pb-6`,o&&`pb-0`),children:[(0,a.jsxs)(`div`,{className:`flex items-center gap-2 pt-1`,children:[(0,a.jsx)(n.s,{weight:`semibold`,className:d,children:e.title}),!!e.badge&&(0,a.jsx)(r.t,{variant:e.badgeVariant??`secondary`,children:e.badge})]}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:e.description}),!!e.timestamp&&(0,a.jsx)(n.s,{size:`xs`,type:`discrete`,className:`mt-1`,children:e.timestamp}),!!e.content&&(0,a.jsx)(`div`,{className:`mt-2`,children:e.content})]})]},e.id)})})})}l.displayName=`StepsCard`;function u({status:e,stepNumber:t}){return e===`completed`?(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-success text-success-foreground`,children:(0,a.jsx)(o.Check,{className:`h-4 w-4`})}):e===`current`?(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-primary text-primary-foreground`,children:(0,a.jsx)(n.s,{weight:`bold`,className:`text-primary-foreground`,children:t})}):(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg border-2 border-muted text-muted-foreground`,children:(0,a.jsx)(n.s,{weight:`medium`,className:`text-muted-foreground`,children:t})})}function d({title:e,description:r,steps:o,footerText:s,className:c}){return(0,a.jsxs)(i.t,{title:e,description:r,footerText:s,className:c,children:[(0,a.jsx)(`div`,{className:`space-y-3 sm:hidden`,children:o.map((e,r)=>{let i=r===o.length-1,s=e.status===`completed`?`bg-success`:`bg-border`;return(0,a.jsxs)(`div`,{className:`flex gap-3`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(u,{status:e.status,stepNumber:r+1}),!i&&(0,a.jsx)(`div`,{className:t.cn(`mt-1 w-0.5 flex-1 min-h-5`,s)})]}),(0,a.jsxs)(`div`,{className:t.cn(`min-w-0 flex-1 pb-2`,i&&`pb-0`),children:[(0,a.jsx)(n.s,{weight:`semibold`,className:t.cn(`leading-snug`,e.status===`upcoming`?`text-muted-foreground`:`text-foreground`),children:e.title}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5 line-clamp-2`,children:e.description})]})]},e.id)})}),(0,a.jsx)(`div`,{className:`-mx-1 hidden overflow-x-auto px-1 sm:block`,children:(0,a.jsx)(`div`,{className:`flex min-w-fit items-start`,children:o.map((e,r)=>{let i=r===o.length-1,s=e.status===`completed`?`bg-success`:`bg-border`;return(0,a.jsx)(`div`,{className:`flex min-w-28 flex-1 items-start`,children:(0,a.jsxs)(`div`,{className:`flex w-full flex-col items-center`,children:[(0,a.jsxs)(`div`,{className:`flex w-full items-center`,children:[r>0&&(0,a.jsx)(`div`,{className:t.cn(`h-0.5 flex-1`,o[r-1].status===`completed`?`bg-success`:`bg-border`)}),r===0&&(0,a.jsx)(`div`,{className:`flex-1`}),(0,a.jsx)(u,{status:e.status,stepNumber:r+1}),!i&&(0,a.jsx)(`div`,{className:t.cn(`h-0.5 flex-1`,s)}),!!i&&(0,a.jsx)(`div`,{className:`flex-1`})]}),(0,a.jsxs)(`div`,{className:`mt-2 flex w-full flex-col items-center px-1 text-center`,children:[(0,a.jsx)(n.s,{size:`xs`,weight:`semibold`,className:t.cn(`leading-snug line-clamp-2`,e.status===`upcoming`?`text-muted-foreground`:`text-foreground`),children:e.title}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5 leading-snug line-clamp-2`,children:e.description})]})]})},e.id)})})})]})}d.displayName=`StepsHorizontal`;var f={completed:`bg-success`,current:`bg-primary ring-3 ring-primary/20`,pending:`bg-muted`};function p({title:e,description:r,events:o,footerText:s,className:c}){return(0,a.jsx)(i.t,{title:e,description:r,footerText:s,className:t.cn(`order-timeline--component`,c),children:(0,a.jsx)(`div`,{className:`relative space-y-0`,children:o.map((e,r)=>(0,a.jsxs)(`div`,{className:`relative flex gap-3 pb-4 last:pb-0`,children:[r!==o.length-1&&(0,a.jsx)(`div`,{className:`absolute bottom-0 left-[5px] top-[14px] w-px bg-border`}),(0,a.jsx)(`div`,{className:`relative z-10 mt-[5px] flex-shrink-0`,children:(0,a.jsx)(`div`,{className:t.cn(`size-3 rounded-full`,f[e.status])})}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,a.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,a.jsx)(n.s,{weight:`medium`,className:`truncate`,children:e.title}),(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`flex-shrink-0 font-mono tabular-nums`,children:e.timestamp})]}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:e.description})]})]},e.id))})})}function m({events:e,className:r}){return(0,a.jsx)(i.t,{title:`Payment Timeline`,className:t.cn(`payment-timeline--component`,r),children:(0,a.jsx)(`div`,{className:`mt-5 space-y-0`,children:e.map((r,i)=>{let o=r.icon;return(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(`div`,{className:t.cn(`flex size-8 items-center justify-center rounded-full`,r.done?`bg-success/20`:`bg-muted`),children:(0,a.jsx)(o,{className:t.cn(`size-3.5`,r.done?`text-success`:`text-muted-foreground`)})}),i<e.length-1&&(0,a.jsx)(`div`,{className:t.cn(`mt-1 h-8 w-px`,r.done?`bg-success/30`:`bg-border`)})]}),(0,a.jsxs)(`div`,{className:`pb-6`,children:[(0,a.jsx)(n.s,{weight:`medium`,children:r.label}),(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,children:r.date}),!!r.amount&&(0,a.jsx)(n.s,{size:`xs`,weight:`medium`,className:`mt-0.5 tabular-nums text-success`,children:r.amount})]})]},r.label)})})})}var h={title:`Activity`,empty:`No activity yet`},g={primary:`bg-primary/10 text-primary`,secondary:`bg-secondary text-secondary-foreground`,success:`bg-success/15 text-success`,info:`bg-info/15 text-info`,warning:`bg-warning/30 text-warning-foreground`,error:`bg-destructive/15 text-destructive`};function _({items:r,className:s,strings:c}){let l=e.useStrings(h,c);return r.length===0?(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Activity,{className:`size-4`}),title:l.title,className:t.cn(`activity-stream--component`,s),children:(0,a.jsx)(n.s,{type:`secondary`,align:`center`,className:`py-6`,children:l.empty})}):(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Activity,{className:`size-4`}),title:l.title,className:s,children:(0,a.jsx)(`ul`,{className:`space-y-3`,children:r.map((e,i)=>{let s=e.icon??o.Circle,c=i===r.length-1;return(0,a.jsxs)(`li`,{className:`relative flex gap-3`,children:[(0,a.jsxs)(`div`,{className:`relative flex flex-col items-center`,children:[(0,a.jsx)(`div`,{className:t.cn(`flex size-7 items-center justify-center rounded-full`,g[e.iconVariant??`primary`]),children:(0,a.jsx)(s,{className:`size-3.5`})}),!c&&(0,a.jsx)(`div`,{className:`mt-1 w-px flex-1 bg-border`})]}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 pb-3`,children:[(0,a.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-1.5`,children:[!!e.actor&&(0,a.jsx)(n.s,{tag:`span`,weight:`semibold`,children:e.actor}),(0,a.jsx)(n.s,{tag:`span`,type:`secondary`,children:e.action}),!!e.target&&(0,a.jsx)(n.s,{tag:`span`,weight:`medium`,children:e.target})]}),!!e.metadata&&e.metadata.length>0&&(0,a.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-x-3 gap-y-0.5`,children:e.metadata.map(e=>(0,a.jsxs)(n.s,{size:`xs`,type:`secondary`,children:[(0,a.jsxs)(n.s,{tag:`span`,size:`xs`,type:`discrete`,children:[e.label,`: `]}),e.value]},e.label))}),(0,a.jsx)(n.s,{size:`xs`,type:`discrete`,className:`mt-0.5 tabular-nums`,children:e.timestamp})]})]},e.id)})})})}_.displayName=`ActivityStreamCard`;var v={sm:`size-2.5`,base:`size-3.5`,lg:`size-5`},y={sm:`size-2`,base:`size-2.5`,lg:`size-3`},b={completed:{bg:`bg-success`,text:`text-success-foreground`,ring:`ring-success/20`,line:`bg-success/40`},current:{bg:`bg-primary`,text:`text-primary-foreground`,ring:`ring-primary/30`,line:`bg-primary/40`},pending:{bg:`bg-muted`,text:`text-muted-foreground`,ring:`ring-border`,line:`bg-border`},success:{bg:`bg-success`,text:`text-success-foreground`,ring:`ring-success/20`,line:`bg-success/40`},warning:{bg:`bg-warning`,text:`text-warning-foreground`,ring:`ring-warning/30`,line:`bg-warning/40`},error:{bg:`bg-destructive`,text:`text-destructive-foreground`,ring:`ring-destructive/30`,line:`bg-destructive/40`},neutral:{bg:`bg-card`,text:`text-foreground`,ring:`ring-border`,line:`bg-border`}};function x({items:e,dotSize:r=`base`,className:i}){return(0,a.jsx)(`ol`,{className:t.cn(`timeline--component`,`relative space-y-4`,i),children:e.map((i,o)=>{let s=b[i.status??`neutral`],c=i.icon;return(0,a.jsxs)(`li`,{className:`relative flex gap-3`,children:[o!==e.length-1&&(0,a.jsx)(`span`,{"aria-hidden":`true`,className:t.cn(`absolute left-[7px] top-4 bottom-[-1rem] w-px`,s.line,r===`lg`&&`left-[10px]`,r===`sm`&&`left-[5px]`)}),(0,a.jsx)(`div`,{className:`relative z-[1] mt-0.5 flex shrink-0 items-start`,children:(0,a.jsx)(`span`,{className:t.cn(`inline-flex items-center justify-center rounded-full ring-2`,s.bg,s.text,s.ring,v[r]),children:!!c&&(0,a.jsx)(c,{className:y[r]})})}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 pb-2`,children:[(0,a.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,a.jsx)(n.s,{weight:`medium`,className:`leading-tight`,children:i.title}),!!i.timestamp&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`shrink-0 tabular-nums`,children:i.timestamp})]}),!!i.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:i.description}),!!i.children&&(0,a.jsx)(`div`,{className:`mt-2`,children:i.children})]})]},i.id)})})}x.displayName=`Timeline`;var S={title:`Changelog`,added:`Added`,removed:`Removed`,modified:`Modified`,fixed:`Fixed`},C={added:`success`,removed:`error`,modified:`warning`,fixed:`current`},w={added:`success`,removed:`error`,modified:`warning`,fixed:`info`},T={added:o.Plus,removed:o.Minus,modified:o.Wrench,fixed:o.GitCommit};function E({entries:s,className:c,strings:l}){let u=e.useStrings(S,l),d={added:u.added,removed:u.removed,modified:u.modified,fixed:u.fixed},f=s.map(e=>({id:e.id,title:(0,a.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,a.jsx)(r.t,{variant:w[e.kind],children:d[e.kind]}),(0,a.jsx)(`span`,{children:e.title}),!!e.version&&(0,a.jsx)(n.s,{tag:`span`,size:`xs`,type:`secondary`,className:`font-mono`,children:e.version})]}),description:e.author?(0,a.jsxs)(a.Fragment,{children:[e.description,(0,a.jsxs)(n.s,{tag:`span`,size:`xs`,type:`discrete`,className:`ml-2`,children:[`— `,e.author]})]}):e.description,timestamp:e.timestamp,icon:T[e.kind],status:C[e.kind]}));return(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.GitCommit,{className:`size-4`}),title:u.title,className:t.cn(`changelog-timeline--component`,c),children:(0,a.jsx)(x,{items:f,dotSize:`base`})})}E.displayName=`ChangelogTimelineCard`;var D={title:`Milestones`,completed:`Completed`,in_progress:`In progress`,upcoming:`Upcoming`,blocked:`Blocked`,dueOn:`Due`},O={completed:`completed`,in_progress:`current`,upcoming:`pending`,blocked:`error`},k={completed:o.Check,in_progress:o.Clock,upcoming:o.Circle,blocked:o.X},A={completed:`success`,in_progress:`primary`,upcoming:`secondary`,blocked:`error`};function j({milestones:s,className:c,strings:l}){let u=e.useStrings(D,l),d={completed:u.completed,in_progress:u.in_progress,upcoming:u.upcoming,blocked:u.blocked},f=s.map(e=>({id:e.id,title:(0,a.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,a.jsx)(`span`,{children:e.title}),(0,a.jsx)(r.t,{variant:A[e.status],children:d[e.status]})]}),description:e.description,timestamp:e.dueDate?`${u.dueOn} ${e.dueDate}`:void 0,icon:k[e.status],status:O[e.status],children:e.status===`in_progress`&&typeof e.progress==`number`?(0,a.jsxs)(`div`,{className:`space-y-1`,children:[(0,a.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,a.jsx)(`div`,{className:t.cn(`h-full rounded-full bg-primary transition-[width] duration-300`),style:{width:`${Math.max(0,Math.min(100,e.progress))}%`}})}),(0,a.jsxs)(n.s,{size:`xs`,type:`secondary`,className:`tabular-nums`,children:[Math.round(e.progress),`%`]})]}):void 0}));return(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Flag,{className:`size-4`}),title:u.title,className:t.cn(`milestones-timeline--component`,c),children:(0,a.jsx)(x,{items:f,dotSize:`base`})})}j.displayName=`MilestonesTimelineCard`,exports.ActivityStreamCard=_,exports.ChangelogTimelineCard=E,exports.MilestonesTimelineCard=j,exports.OrderTimelineCard=p,exports.PaymentTimelineCard=m,exports.StepsCard=l,exports.StepsHorizontal=d,exports.Timeline=x,exports.defaultActivityStreamStrings=h,exports.defaultChangelogTimelineStrings=S,exports.defaultMilestonesTimelineStrings=D;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../lib/strings.cjs"),t=require("../../../lib/utils.cjs"),n=require("../../../_shared/typography-sXFd02zl.cjs"),r=require("../../../_shared/badge-B0Ashqkn.cjs"),i=require("../../../_shared/cards-DvE5gRFf.cjs");let a=require("react/jsx-runtime"),o=require("lucide-react");var s={completed:{dot:`bg-success text-success-foreground`,line:`bg-success`,title:`text-foreground`,Icon:o.Check},current:{dot:`bg-primary text-primary-foreground ring-4 ring-primary/20`,line:`bg-border`,title:`text-foreground`,Icon:o.Loader2},upcoming:{dot:`bg-muted text-muted-foreground`,line:`bg-border`,title:`text-muted-foreground`,Icon:o.Circle}};function c({status:e}){let{dot:n,Icon:r}=s[e],i=e===`current`;return(0,a.jsx)(`div`,{className:t.cn(`steps-card--component`,`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-full transition-all`,n),children:(0,a.jsx)(r,{className:t.cn(`h-4 w-4`,i&&`animate-spin`)})})}function l({title:e,description:o,steps:l,footerText:u,className:d}){return(0,a.jsx)(i.t,{title:e,description:o,footerText:u,className:d,children:(0,a.jsx)(`div`,{className:`relative`,children:l.map((e,i)=>{let o=i===l.length-1,{line:u,title:d}=s[e.status];return(0,a.jsxs)(`div`,{className:`relative flex gap-4`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(c,{status:e.status}),!o&&(0,a.jsx)(`div`,{className:t.cn(`w-0.5 flex-1 min-h-6`,u)})]}),(0,a.jsxs)(`div`,{className:t.cn(`flex-1 pb-6`,o&&`pb-0`),children:[(0,a.jsxs)(`div`,{className:`flex items-center gap-2 pt-1`,children:[(0,a.jsx)(n.s,{weight:`semibold`,className:d,children:e.title}),!!e.badge&&(0,a.jsx)(r.t,{variant:e.badgeVariant??`secondary`,children:e.badge})]}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:e.description}),!!e.timestamp&&(0,a.jsx)(n.s,{size:`xs`,type:`discrete`,className:`mt-1`,children:e.timestamp}),!!e.content&&(0,a.jsx)(`div`,{className:`mt-2`,children:e.content})]})]},e.id)})})})}l.displayName=`StepsCard`;function u({status:e,stepNumber:t}){return e===`completed`?(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-success text-success-foreground`,children:(0,a.jsx)(o.Check,{className:`h-4 w-4`})}):e===`current`?(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-primary text-primary-foreground`,children:(0,a.jsx)(n.s,{weight:`bold`,className:`text-primary-foreground`,children:t})}):(0,a.jsx)(`div`,{className:`relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg border-2 border-muted text-muted-foreground`,children:(0,a.jsx)(n.s,{weight:`medium`,className:`text-muted-foreground`,children:t})})}function d({title:e,description:r,steps:o,footerText:s,className:c}){return(0,a.jsxs)(i.t,{title:e,description:r,footerText:s,className:c,children:[(0,a.jsx)(`div`,{className:`space-y-3 sm:hidden`,children:o.map((e,r)=>{let i=r===o.length-1,s=e.status===`completed`?`bg-success`:`bg-border`;return(0,a.jsxs)(`div`,{className:`flex gap-3`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(u,{status:e.status,stepNumber:r+1}),!i&&(0,a.jsx)(`div`,{className:t.cn(`mt-1 w-0.5 flex-1 min-h-5`,s)})]}),(0,a.jsxs)(`div`,{className:t.cn(`min-w-0 flex-1 pb-2`,i&&`pb-0`),children:[(0,a.jsx)(n.s,{weight:`semibold`,className:t.cn(`leading-snug`,e.status===`upcoming`?`text-muted-foreground`:`text-foreground`),children:e.title}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5 line-clamp-2`,children:e.description})]})]},e.id)})}),(0,a.jsx)(`div`,{className:`-mx-1 hidden overflow-x-auto px-1 sm:block`,children:(0,a.jsx)(`div`,{className:`flex min-w-fit items-start`,children:o.map((e,r)=>{let i=r===o.length-1,s=e.status===`completed`?`bg-success`:`bg-border`;return(0,a.jsx)(`div`,{className:`flex min-w-28 flex-1 items-start`,children:(0,a.jsxs)(`div`,{className:`flex w-full flex-col items-center`,children:[(0,a.jsxs)(`div`,{className:`flex w-full items-center`,children:[r>0&&(0,a.jsx)(`div`,{className:t.cn(`h-0.5 flex-1`,o[r-1].status===`completed`?`bg-success`:`bg-border`)}),r===0&&(0,a.jsx)(`div`,{className:`flex-1`}),(0,a.jsx)(u,{status:e.status,stepNumber:r+1}),!i&&(0,a.jsx)(`div`,{className:t.cn(`h-0.5 flex-1`,s)}),!!i&&(0,a.jsx)(`div`,{className:`flex-1`})]}),(0,a.jsxs)(`div`,{className:`mt-2 flex w-full flex-col items-center px-1 text-center`,children:[(0,a.jsx)(n.s,{size:`xs`,weight:`semibold`,className:t.cn(`leading-snug line-clamp-2`,e.status===`upcoming`?`text-muted-foreground`:`text-foreground`),children:e.title}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5 leading-snug line-clamp-2`,children:e.description})]})]})},e.id)})})})]})}d.displayName=`StepsHorizontal`;var f={completed:`bg-success`,current:`bg-primary ring-3 ring-primary/20`,pending:`bg-muted`};function p({title:e,description:r,events:o,footerText:s,className:c}){return(0,a.jsx)(i.t,{title:e,description:r,footerText:s,className:t.cn(`order-timeline--component`,c),children:(0,a.jsx)(`div`,{className:`relative space-y-0`,children:o.map((e,r)=>(0,a.jsxs)(`div`,{className:`relative flex gap-3 pb-4 last:pb-0`,children:[r!==o.length-1&&(0,a.jsx)(`div`,{className:`absolute bottom-0 left-[5px] top-[14px] w-px bg-border`}),(0,a.jsx)(`div`,{className:`relative z-10 mt-[5px] flex-shrink-0`,children:(0,a.jsx)(`div`,{className:t.cn(`size-3 rounded-full`,f[e.status])})}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,a.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,a.jsx)(n.s,{weight:`medium`,className:`truncate`,children:e.title}),(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`flex-shrink-0 font-mono tabular-nums`,children:e.timestamp})]}),!!e.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:e.description})]})]},e.id))})})}function m({events:e,className:r}){return(0,a.jsx)(i.t,{title:`Payment Timeline`,className:t.cn(`payment-timeline--component`,r),children:(0,a.jsx)(`div`,{className:`mt-5 space-y-0`,children:e.map((r,i)=>{let o=r.icon;return(0,a.jsxs)(`div`,{className:`flex gap-4`,children:[(0,a.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,a.jsx)(`div`,{className:t.cn(`flex size-8 items-center justify-center rounded-full`,r.done?`bg-success/20`:`bg-muted`),children:(0,a.jsx)(o,{className:t.cn(`size-3.5`,r.done?`text-success`:`text-muted-foreground`)})}),i<e.length-1&&(0,a.jsx)(`div`,{className:t.cn(`mt-1 h-8 w-px`,r.done?`bg-success/30`:`bg-border`)})]}),(0,a.jsxs)(`div`,{className:`pb-6`,children:[(0,a.jsx)(n.s,{weight:`medium`,children:r.label}),(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,children:r.date}),!!r.amount&&(0,a.jsx)(n.s,{size:`xs`,weight:`medium`,className:`mt-0.5 tabular-nums text-success`,children:r.amount})]})]},r.label)})})})}var h={title:`Activity`,empty:`No activity yet`},g={primary:`bg-primary/10 text-primary`,secondary:`bg-secondary text-secondary-foreground`,success:`bg-success/15 text-success`,info:`bg-info/15 text-info`,warning:`bg-warning/30 text-warning-foreground`,error:`bg-destructive/15 text-destructive`};function _({items:r,className:s,strings:c}){let l=e.useStrings(h,c);return r.length===0?(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Activity,{className:`size-4`}),title:l.title,className:t.cn(`activity-stream--component`,s),children:(0,a.jsx)(n.s,{type:`secondary`,align:`center`,className:`py-6`,children:l.empty})}):(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Activity,{className:`size-4`}),title:l.title,className:s,children:(0,a.jsx)(`ul`,{className:`space-y-3`,children:r.map((e,i)=>{let s=e.icon??o.Circle,c=i===r.length-1;return(0,a.jsxs)(`li`,{className:`relative flex gap-3`,children:[(0,a.jsxs)(`div`,{className:`relative flex flex-col items-center`,children:[(0,a.jsx)(`div`,{className:t.cn(`flex size-7 items-center justify-center rounded-full`,g[e.iconVariant??`primary`]),children:(0,a.jsx)(s,{className:`size-3.5`})}),!c&&(0,a.jsx)(`div`,{className:`mt-1 w-px flex-1 bg-border`})]}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 pb-3`,children:[(0,a.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-1.5`,children:[!!e.actor&&(0,a.jsx)(n.s,{tag:`span`,weight:`semibold`,children:e.actor}),(0,a.jsx)(n.s,{tag:`span`,type:`secondary`,children:e.action}),!!e.target&&(0,a.jsx)(n.s,{tag:`span`,weight:`medium`,children:e.target})]}),!!e.metadata&&e.metadata.length>0&&(0,a.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-x-3 gap-y-0.5`,children:e.metadata.map(e=>(0,a.jsxs)(n.s,{size:`xs`,type:`secondary`,children:[(0,a.jsxs)(n.s,{tag:`span`,size:`xs`,type:`discrete`,children:[e.label,`: `]}),e.value]},e.label))}),(0,a.jsx)(n.s,{size:`xs`,type:`discrete`,className:`mt-0.5 tabular-nums`,children:e.timestamp})]})]},e.id)})})})}_.displayName=`ActivityStreamCard`;var v={sm:`size-2.5`,base:`size-3.5`,lg:`size-5`},y={sm:`size-2`,base:`size-2.5`,lg:`size-3`},b={completed:{bg:`bg-success`,text:`text-success-foreground`,ring:`ring-success/20`,line:`bg-success/40`},current:{bg:`bg-primary`,text:`text-primary-foreground`,ring:`ring-primary/30`,line:`bg-primary/40`},pending:{bg:`bg-muted`,text:`text-muted-foreground`,ring:`ring-border`,line:`bg-border`},success:{bg:`bg-success`,text:`text-success-foreground`,ring:`ring-success/20`,line:`bg-success/40`},warning:{bg:`bg-warning`,text:`text-warning-foreground`,ring:`ring-warning/30`,line:`bg-warning/40`},error:{bg:`bg-destructive`,text:`text-destructive-foreground`,ring:`ring-destructive/30`,line:`bg-destructive/40`},neutral:{bg:`bg-card`,text:`text-foreground`,ring:`ring-border`,line:`bg-border`}};function x({items:e,dotSize:r=`base`,className:i}){return(0,a.jsx)(`ol`,{className:t.cn(`timeline--component`,`relative space-y-4`,i),children:e.map((i,o)=>{let s=b[i.status??`neutral`],c=i.icon;return(0,a.jsxs)(`li`,{className:`relative flex gap-3`,children:[o!==e.length-1&&(0,a.jsx)(`span`,{"aria-hidden":`true`,className:t.cn(`absolute left-[7px] top-4 bottom-[-1rem] w-px`,s.line,r===`lg`&&`left-[10px]`,r===`sm`&&`left-[5px]`)}),(0,a.jsx)(`div`,{className:`relative z-[1] mt-0.5 flex shrink-0 items-start`,children:(0,a.jsx)(`span`,{className:t.cn(`inline-flex items-center justify-center rounded-full ring-2`,s.bg,s.text,s.ring,v[r]),children:!!c&&(0,a.jsx)(c,{className:y[r]})})}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 pb-2`,children:[(0,a.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2`,children:[(0,a.jsx)(n.s,{weight:`medium`,className:`leading-tight`,children:i.title}),!!i.timestamp&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`shrink-0 tabular-nums`,children:i.timestamp})]}),!!i.description&&(0,a.jsx)(n.s,{size:`xs`,type:`secondary`,className:`mt-0.5`,children:i.description}),!!i.children&&(0,a.jsx)(`div`,{className:`mt-2`,children:i.children})]})]},i.id)})})}x.displayName=`Timeline`;var S={title:`Changelog`,added:`Added`,removed:`Removed`,modified:`Modified`,fixed:`Fixed`},C={added:`success`,removed:`error`,modified:`warning`,fixed:`current`},w={added:`success`,removed:`error`,modified:`warning`,fixed:`info`},T={added:o.Plus,removed:o.Minus,modified:o.Wrench,fixed:o.GitCommit};function E({entries:s,className:c,strings:l}){let u=e.useStrings(S,l),d={added:u.added,removed:u.removed,modified:u.modified,fixed:u.fixed},f=s.map(e=>({id:e.id,title:(0,a.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,a.jsx)(r.t,{variant:w[e.kind],children:d[e.kind]}),(0,a.jsx)(`span`,{children:e.title}),!!e.version&&(0,a.jsx)(n.s,{tag:`span`,size:`xs`,type:`secondary`,className:`font-mono`,children:e.version})]}),description:e.author?(0,a.jsxs)(a.Fragment,{children:[e.description,(0,a.jsxs)(n.s,{tag:`span`,size:`xs`,type:`discrete`,className:`ml-2`,children:[`— `,e.author]})]}):e.description,timestamp:e.timestamp,icon:T[e.kind],status:C[e.kind]}));return(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.GitCommit,{className:`size-4`}),title:u.title,className:t.cn(`changelog-timeline--component`,c),children:(0,a.jsx)(x,{items:f,dotSize:`base`})})}E.displayName=`ChangelogTimelineCard`;var D={title:`Milestones`,completed:`Completed`,in_progress:`In progress`,upcoming:`Upcoming`,blocked:`Blocked`,dueOn:`Due`},O={completed:`completed`,in_progress:`current`,upcoming:`pending`,blocked:`error`},k={completed:o.Check,in_progress:o.Clock,upcoming:o.Circle,blocked:o.X},A={completed:`success`,in_progress:`primary`,upcoming:`secondary`,blocked:`error`};function j({milestones:s,className:c,strings:l}){let u=e.useStrings(D,l),d={completed:u.completed,in_progress:u.in_progress,upcoming:u.upcoming,blocked:u.blocked},f=s.map(e=>({id:e.id,title:(0,a.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-1.5`,children:[(0,a.jsx)(`span`,{children:e.title}),(0,a.jsx)(r.t,{variant:A[e.status],children:d[e.status]})]}),description:e.description,timestamp:e.dueDate?`${u.dueOn} ${e.dueDate}`:void 0,icon:k[e.status],status:O[e.status],children:e.status===`in_progress`&&typeof e.progress==`number`?(0,a.jsxs)(`div`,{className:`space-y-1`,children:[(0,a.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,a.jsx)(`div`,{className:t.cn(`h-full rounded-full bg-primary transition-[width] duration-300`),style:{width:`${Math.max(0,Math.min(100,e.progress))}%`}})}),(0,a.jsxs)(n.s,{size:`xs`,type:`secondary`,className:`tabular-nums`,children:[Math.round(e.progress),`%`]})]}):void 0}));return(0,a.jsx)(i.t,{icon:(0,a.jsx)(o.Flag,{className:`size-4`}),title:u.title,className:t.cn(`milestones-timeline--component`,c),children:(0,a.jsx)(x,{items:f,dotSize:`base`})})}j.displayName=`MilestonesTimelineCard`,exports.ActivityStreamCard=_,exports.ChangelogTimelineCard=E,exports.MilestonesTimelineCard=j,exports.OrderTimelineCard=p,exports.PaymentTimelineCard=m,exports.StepsCard=l,exports.StepsHorizontal=d,exports.Timeline=x,exports.defaultActivityStreamStrings=h,exports.defaultChangelogTimelineStrings=S,exports.defaultMilestonesTimelineStrings=D;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useStrings as e } from "../../../lib/strings.js";
|
|
2
2
|
import { cn as t } from "../../../lib/utils.js";
|
|
3
|
-
import { s as n } from "../../../_shared/typography-
|
|
4
|
-
import { t as r } from "../../../_shared/badge-
|
|
5
|
-
import { t as i } from "../../../_shared/cards-
|
|
3
|
+
import { s as n } from "../../../_shared/typography-C_kCoR1d.js";
|
|
4
|
+
import { t as r } from "../../../_shared/badge-DOJpEtsa.js";
|
|
5
|
+
import { t as i } from "../../../_shared/cards-B7voInTJ.js";
|
|
6
6
|
import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
7
7
|
import { Activity as c, Check as l, Circle as u, Clock as d, Flag as f, GitCommit as p, Loader2 as m, Minus as h, Plus as g, Wrench as _, X as v } from "lucide-react";
|
|
8
8
|
//#region src/components/composed/timelines/steps-card/steps-card.tsx
|