admin-ui-starter-kit 0.6.8 → 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__display-utilities.md +15 -8
- 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/separator-BXn_fnly.cjs +2 -0
- package/dist/_shared/separator-BXn_fnly.cjs.map +1 -0
- package/dist/_shared/separator-DiH-j--f.js +20 -0
- package/dist/_shared/separator-DiH-j--f.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/separator.d.ts +10 -1
- package/dist/components/base/display/separator.d.ts.map +1 -1
- 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 +9 -10
- 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 +8 -8
- 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/themes/shadcn.default.css +2 -2
- 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-BylloxGO.js +0 -1099
- package/dist/_shared/ai-artifact-BylloxGO.js.map +0 -1
- package/dist/_shared/ai-artifact-DfT97Mpi.cjs +0 -3
- package/dist/_shared/ai-artifact-DfT97Mpi.cjs.map +0 -1
- package/dist/_shared/auth-1Ht9Kevx.js +0 -643
- package/dist/_shared/auth-1Ht9Kevx.js.map +0 -1
- package/dist/_shared/auth-DTN6sFXM.cjs +0 -2
- package/dist/_shared/auth-DTN6sFXM.cjs.map +0 -1
- package/dist/_shared/badge-LSAgdmGt.cjs +0 -2
- package/dist/_shared/badge-LSAgdmGt.cjs.map +0 -1
- package/dist/_shared/badge-nZ2zbAV4.js +0 -110
- package/dist/_shared/badge-nZ2zbAV4.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-B_WKQUol.js +0 -952
- package/dist/_shared/comments-B_WKQUol.js.map +0 -1
- package/dist/_shared/comments-DMHMNObS.cjs +0 -2
- package/dist/_shared/comments-DMHMNObS.cjs.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-4E_irfF2.js +0 -1878
- package/dist/_shared/data-display-4E_irfF2.js.map +0 -1
- package/dist/_shared/data-display-BPn-7qFO.cjs +0 -2
- package/dist/_shared/data-display-BPn-7qFO.cjs.map +0 -1
- package/dist/_shared/date-picker-CvqLnlxm.js +0 -1361
- package/dist/_shared/date-picker-CvqLnlxm.js.map +0 -1
- package/dist/_shared/date-picker-D83fCi2g.cjs +0 -2
- package/dist/_shared/date-picker-D83fCi2g.cjs.map +0 -1
- package/dist/_shared/date-pickers-C6ku2BPp.cjs +0 -2
- package/dist/_shared/date-pickers-C6ku2BPp.cjs.map +0 -1
- package/dist/_shared/date-pickers-RdbwIhdY.js +0 -329
- package/dist/_shared/date-pickers-RdbwIhdY.js.map +0 -1
- package/dist/_shared/display-DFVeSuWL.js +0 -986
- package/dist/_shared/display-DFVeSuWL.js.map +0 -1
- package/dist/_shared/display-Lr3xTd4a.cjs +0 -2
- package/dist/_shared/display-Lr3xTd4a.cjs.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-BA8Aa_fi.js +0 -3534
- package/dist/_shared/forms-BA8Aa_fi.js.map +0 -1
- package/dist/_shared/forms-CNjjdFcf.cjs +0 -2
- package/dist/_shared/forms-CNjjdFcf.cjs.map +0 -1
- package/dist/_shared/header-BEsz1_so.cjs +0 -2
- package/dist/_shared/header-BEsz1_so.cjs.map +0 -1
- package/dist/_shared/header-bJx8z6zT.js +0 -447
- package/dist/_shared/header-bJx8z6zT.js.map +0 -1
- package/dist/_shared/hooks-gRgVhyY2.js +0 -95
- package/dist/_shared/hooks-gRgVhyY2.js.map +0 -1
- package/dist/_shared/hooks-nFiRfUxX.cjs +0 -2
- package/dist/_shared/hooks-nFiRfUxX.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-C_dYiKtE.cjs +0 -2
- package/dist/_shared/layout-C_dYiKtE.cjs.map +0 -1
- package/dist/_shared/layout-nigj488k.js +0 -268
- package/dist/_shared/layout-nigj488k.js.map +0 -1
- package/dist/_shared/mentions-BE51BNeq.cjs +0 -2
- package/dist/_shared/mentions-BE51BNeq.cjs.map +0 -1
- package/dist/_shared/mentions-CBhP29St.js +0 -506
- package/dist/_shared/mentions-CBhP29St.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-CWK_YQ5Y.js +0 -436
- package/dist/_shared/navigation-CWK_YQ5Y.js.map +0 -1
- package/dist/_shared/navigation-DTBMb7-M.cjs +0 -2
- package/dist/_shared/navigation-DTBMb7-M.cjs.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-D-HAOE3R.js +0 -143
- package/dist/_shared/settings-D-HAOE3R.js.map +0 -1
- package/dist/_shared/settings-DkL3bOk0.cjs +0 -2
- package/dist/_shared/settings-DkL3bOk0.cjs.map +0 -1
- package/dist/_shared/sidebar-BTyx7ipN.cjs +0 -2
- package/dist/_shared/sidebar-BTyx7ipN.cjs.map +0 -1
- package/dist/_shared/sidebar-DkBNualh.js +0 -548
- package/dist/_shared/sidebar-DkBNualh.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-Cq0jkSm5.js +0 -1377
- package/dist/_shared/table-Cq0jkSm5.js.map +0 -1
- package/dist/_shared/table-GqTKCC8F.cjs +0 -2
- package/dist/_shared/table-GqTKCC8F.cjs.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-5UId04M9.js +0 -357
- package/dist/_shared/workspace-5UId04M9.js.map +0 -1
- package/dist/_shared/workspace-BMws_rFf.cjs +0 -2
- package/dist/_shared/workspace-BMws_rFf.cjs.map +0 -1
- package/dist/showcase/assets/AreaChart-oKO7Ng_P.js +0 -6
- package/dist/showcase/assets/CompositeItem-CK7jBYU8.js +0 -1
- package/dist/showcase/assets/CompositeRoot-_AuToqhT.js +0 -1
- package/dist/showcase/assets/DialogTrigger-C44ZZXQ9.js +0 -1
- package/dist/showcase/assets/LabelableContext-DLVZlnur.js +0 -1
- package/dist/showcase/assets/PreviewLayout-Oik7TDHN.js +0 -1
- package/dist/showcase/assets/RadioGroup-DeYb8CGE.js +0 -1
- package/dist/showcase/assets/ScrollAreaCorner-BZlE_Bil.js +0 -1
- package/dist/showcase/assets/Separator-uiIktHzk.js +0 -1
- package/dist/showcase/assets/ToolbarRootContext-CEzj5dKk.js +0 -1
- package/dist/showcase/assets/accordion-B_wg_YOp.js +0 -171
- package/dist/showcase/assets/accordion-variants-O6U7E38x.js +0 -1
- package/dist/showcase/assets/action-menu-D_wGvb_o.js +0 -1
- package/dist/showcase/assets/actions-u4Fl4zm1.js +0 -310
- package/dist/showcase/assets/activities-C6iITHzB.js +0 -500
- package/dist/showcase/assets/activities-feed-card-OpYs16UV.js +0 -1
- package/dist/showcase/assets/admin-Bq15E5Wd.js +0 -140
- package/dist/showcase/assets/ai-DcUzGTlb.js +0 -207
- package/dist/showcase/assets/ai-artifact-BUAu1_jV.js +0 -2
- package/dist/showcase/assets/ai-chat-C6OWWBqh.js +0 -568
- package/dist/showcase/assets/ai-elements-CCe4Aqj_.js +0 -387
- package/dist/showcase/assets/ai-tool-call-B_NF1ePn.js +0 -1
- package/dist/showcase/assets/alert-B4VWkFPE.js +0 -1
- package/dist/showcase/assets/alert-BDIqciKo.js +0 -62
- package/dist/showcase/assets/alert-jvCEGWe6.js +0 -93
- package/dist/showcase/assets/api-key-list-BH8mde9A.js +0 -1
- package/dist/showcase/assets/api-key-list-CA6O3hsc.js +0 -73
- package/dist/showcase/assets/app-sidebar-DsMTwSAB.js +0 -1
- package/dist/showcase/assets/arrow-down-BzPC0rON.js +0 -1
- package/dist/showcase/assets/arrow-left-DNehZvF-.js +0 -1
- package/dist/showcase/assets/arrow-right-CKIgWncF.js +0 -1
- package/dist/showcase/assets/arrow-up-YjujZi8v.js +0 -1
- package/dist/showcase/assets/arrow-up-right-KnVxFmw9.js +0 -1
- package/dist/showcase/assets/avatar-BBLri7tX.js +0 -57
- package/dist/showcase/assets/avatar-BeFx8JQd.js +0 -1
- package/dist/showcase/assets/avatar-CFWUZzaF.js +0 -67
- package/dist/showcase/assets/avatar-D6exHRSK.js +0 -1
- package/dist/showcase/assets/badge-check-BfY3RIjR.js +0 -1
- package/dist/showcase/assets/badge-jGj2HQsg.js +0 -31
- package/dist/showcase/assets/bell-CTDSIOv8.js +0 -1
- package/dist/showcase/assets/boolean-indicator-C1u7OFcR.js +0 -1
- package/dist/showcase/assets/bot-D-iqtYiQ.js +0 -1
- package/dist/showcase/assets/box-DxjjLEh2.js +0 -1
- package/dist/showcase/assets/braces-B6XLlZwJ.js +0 -1
- package/dist/showcase/assets/brain-BdNpswBH.js +0 -1
- package/dist/showcase/assets/brand-C6srYuIa.js +0 -36
- package/dist/showcase/assets/breadcrumb-BaeV7C4t.js +0 -52
- package/dist/showcase/assets/breadcrumb-jKu4EUFo.js +0 -1
- package/dist/showcase/assets/breadcrumbs-D7vYX_5y.js +0 -1
- package/dist/showcase/assets/briefcase-cs9wyoxL.js +0 -1
- package/dist/showcase/assets/building-2-rcMEYcbf.js +0 -1
- package/dist/showcase/assets/button-group-D1oXfasP.js +0 -1
- package/dist/showcase/assets/button-oBRwhAhs.js +0 -44
- package/dist/showcase/assets/buttons-D_SDu9w3.js +0 -272
- package/dist/showcase/assets/calendar-CGTiVckW.js +0 -1
- package/dist/showcase/assets/calendar-ChLkVME0.js +0 -16
- package/dist/showcase/assets/calendar-CjMPvWfI.js +0 -1
- package/dist/showcase/assets/calendar-days-CNom8Y38.js +0 -1
- package/dist/showcase/assets/camera-D0rjOOcs.js +0 -1
- package/dist/showcase/assets/card-CYz4UxYz.js +0 -1
- package/dist/showcase/assets/card-D9updr3B.js +0 -188
- package/dist/showcase/assets/card-primitives-BQ0hSEWX.js +0 -1
- package/dist/showcase/assets/card-radio-group-CrNG04Bl.js +0 -1
- package/dist/showcase/assets/cards-D4Lw-AI6.js +0 -354
- package/dist/showcase/assets/carousel-C6Mmapzw.js +0 -449
- package/dist/showcase/assets/cell-renderers-BF80Z3jW.js +0 -1
- package/dist/showcase/assets/chart-BHgMfUB5.js +0 -358
- package/dist/showcase/assets/chart-column-CE_VhlUz.js +0 -1
- package/dist/showcase/assets/checkbox-CDLT09vU.js +0 -1
- package/dist/showcase/assets/checkbox-Dj24Tegr.js +0 -1
- package/dist/showcase/assets/chevron-down-1GeJ4hOO.js +0 -1
- package/dist/showcase/assets/chevron-left-wqlWv2Qy.js +0 -1
- package/dist/showcase/assets/chevron-up-CZAm-2rZ.js +0 -1
- package/dist/showcase/assets/chevrons-up-down-DgysGYWR.js +0 -1
- package/dist/showcase/assets/circle-C9Ooo8Lv.js +0 -1
- package/dist/showcase/assets/circle-alert-C6XBfkf2.js +0 -1
- package/dist/showcase/assets/circle-check-DvCYlVmL.js +0 -1
- package/dist/showcase/assets/circle-check-big-C8o9clAE.js +0 -1
- package/dist/showcase/assets/circle-dot-BoYf3vOR.js +0 -1
- package/dist/showcase/assets/circle-question-mark-DYPX0qe9.js +0 -1
- package/dist/showcase/assets/circle-x-GosnT0l7.js +0 -1
- package/dist/showcase/assets/clock-3-DklFhayq.js +0 -1
- package/dist/showcase/assets/clock-BvwTkk1w.js +0 -1
- package/dist/showcase/assets/code-xml-AGOwtN8Z.js +0 -1
- package/dist/showcase/assets/collapsible-CBkbr3ho.js +0 -1
- package/dist/showcase/assets/collapsible-CmY1SA28.js +0 -27
- package/dist/showcase/assets/collapsible-DfDnQ_t_.js +0 -1
- package/dist/showcase/assets/combobox-BsZQo7hF.js +0 -685
- package/dist/showcase/assets/command-B0Q84gg6.js +0 -1
- package/dist/showcase/assets/command-BtADdA65.js +0 -1
- package/dist/showcase/assets/comment-composer-BmBnkba9.js +0 -1
- package/dist/showcase/assets/comment-item-y5mTfSmU.js +0 -1
- package/dist/showcase/assets/comments-BuYiGPxI.js +0 -357
- package/dist/showcase/assets/commerce-21Ef_rsW.js +0 -267
- package/dist/showcase/assets/composite-fKT6fZFs.js +0 -1
- package/dist/showcase/assets/conditional-rendering-DsTG0sOE.js +0 -1
- package/dist/showcase/assets/contact-card-S8koA9Sr.js +0 -65
- package/dist/showcase/assets/content-container-B4gW5fmA.js +0 -1
- package/dist/showcase/assets/copyable-D2xL2rMm.js +0 -96
- package/dist/showcase/assets/copyable-gLrmPayI.js +0 -1
- package/dist/showcase/assets/course-card-B8eEvF7a.js +0 -77
- package/dist/showcase/assets/cpu-Cp1On3tr.js +0 -1
- package/dist/showcase/assets/credit-card-QbZMZB90.js +0 -1
- package/dist/showcase/assets/css-variables-BXICo9fV.js +0 -1205
- package/dist/showcase/assets/currency-D2MSLjLt.js +0 -149
- package/dist/showcase/assets/dark-surfaces-CJsxuvQU.js +0 -90
- package/dist/showcase/assets/data-view-syhKhdz9.js +0 -124
- package/dist/showcase/assets/data-view-znnAeb6b.js +0 -4
- package/dist/showcase/assets/database-isLkCvDd.js +0 -1
- package/dist/showcase/assets/date-block-BDn9lGVM.js +0 -1
- package/dist/showcase/assets/date-block-CqRL1xfo.js +0 -1
- package/dist/showcase/assets/date-picker-DNcmSgQk.js +0 -1
- package/dist/showcase/assets/date-pickers-3lQUDDS7.js +0 -73
- package/dist/showcase/assets/dense-info-CfvqiIpM.js +0 -106
- package/dist/showcase/assets/design-system-consistency-C3yRhKwF.js +0 -264
- package/dist/showcase/assets/dialog-DiAkrPHO.js +0 -1
- package/dist/showcase/assets/dialog-feUFM03m.js +0 -1
- package/dist/showcase/assets/dialog-ruVOqJnB.js +0 -1
- package/dist/showcase/assets/display-utilities-SPJxlrkp.js +0 -4
- package/dist/showcase/assets/display-utilities.examples-ByRydMl0.js +0 -302
- package/dist/showcase/assets/dist-C9DVZddl.js +0 -45
- package/dist/showcase/assets/dist-DNARKM_B.js +0 -1
- package/dist/showcase/assets/dollar-sign-CUDuWyun.js +0 -1
- package/dist/showcase/assets/download-CIbh9VUU.js +0 -1
- package/dist/showcase/assets/dropdown-menu-MoIAG0ES.js +0 -1
- package/dist/showcase/assets/dropzone-D0kHIUuh.js +0 -1
- package/dist/showcase/assets/earth-BpNTeF25.js +0 -1
- package/dist/showcase/assets/ellipsis-B9w0cuoH.js +0 -1
- package/dist/showcase/assets/ellipsis-vertical-DHbOsjTF.js +0 -1
- package/dist/showcase/assets/empty-DvYVgcNF.js +0 -1
- package/dist/showcase/assets/empty-item-oFM5kPCp.js +0 -49
- package/dist/showcase/assets/empty-state-DTq86muv.js +0 -1
- package/dist/showcase/assets/empty-state-De7XCht-.js +0 -190
- package/dist/showcase/assets/enhanced-activities--XHjx99M.js +0 -357
- package/dist/showcase/assets/enhanced-combobox-CX_mTkei.js +0 -1
- package/dist/showcase/assets/esm-XXqBjGGF.js +0 -2
- package/dist/showcase/assets/event-calendar-zTiCWOF5.js +0 -138
- package/dist/showcase/assets/event-log-C_zSlY6y.js +0 -330
- package/dist/showcase/assets/example-Cv05rz75.js +0 -1
- package/dist/showcase/assets/external-link-DaR-AMyf.js +0 -1
- package/dist/showcase/assets/eye-CDSbB0kZ.js +0 -1
- package/dist/showcase/assets/feature-announcement-DJ26ZDVB.js +0 -34
- package/dist/showcase/assets/file-DPSK5cGC.js +0 -1
- package/dist/showcase/assets/file-text-BBWpAppG.js +0 -1
- package/dist/showcase/assets/filter-layout-CZRGcd6Z.js +0 -1
- package/dist/showcase/assets/filters-Bn7hYUeq.js +0 -139
- package/dist/showcase/assets/flag-BRs-GTCx.js +0 -1
- package/dist/showcase/assets/folder-open-DnFjlB3X.js +0 -1
- package/dist/showcase/assets/form-field-SW-Yp7H7.js +0 -1
- package/dist/showcase/assets/form-sizing-Dltt6Fj-.js +0 -1
- package/dist/showcase/assets/format-Bki5m7M3.js +0 -1
- package/dist/showcase/assets/forms-CAUL2gGq.js +0 -915
- package/dist/showcase/assets/funnel-D6g2Suhd.js +0 -1
- package/dist/showcase/assets/generic-CU6JNqKO.js +0 -1
- package/dist/showcase/assets/getPseudoElementBounds-yqDwWA_y.js +0 -1
- package/dist/showcase/assets/gift-B2Qp9Vqt.js +0 -1
- package/dist/showcase/assets/giftcard-cards-Dk0DYoN2.js +0 -85
- package/dist/showcase/assets/git-branch-CPtvCNGc.js +0 -1
- package/dist/showcase/assets/global-search-D1ow01VA.js +0 -1
- package/dist/showcase/assets/global-search-DQR2AgDO.js +0 -215
- package/dist/showcase/assets/globe-BiZgUZFZ.js +0 -1
- package/dist/showcase/assets/gradient-card-D5isLy3_.js +0 -58
- package/dist/showcase/assets/hash-NJ5ohGOa.js +0 -1
- package/dist/showcase/assets/header-Df9uYSSH.js +0 -1
- package/dist/showcase/assets/header-notifications-sPR5NuON.js +0 -1
- package/dist/showcase/assets/heart-C4t7PVKW.js +0 -1
- package/dist/showcase/assets/hooks-0TKg0ZAK.js +0 -220
- package/dist/showcase/assets/house-CuLXFtjd.js +0 -1
- package/dist/showcase/assets/icon-badge-Cr6DD-_7.js +0 -1
- package/dist/showcase/assets/icon-badge-DMdMSSRL.js +0 -37
- package/dist/showcase/assets/image-DYjJaO0i.js +0 -1
- package/dist/showcase/assets/inbox-DGF8FgvV.js +0 -1
- package/dist/showcase/assets/index-ATou_nFA.js +0 -10
- package/dist/showcase/assets/index-C8U-r6l7.css +0 -2
- package/dist/showcase/assets/inertValue-CBi0sj8C.js +0 -1
- package/dist/showcase/assets/info-DLaTRPUT.js +0 -1
- package/dist/showcase/assets/inline-stat-DGpunTNF.js +0 -1
- package/dist/showcase/assets/inline-stat-rUaaOSmR.js +0 -15
- package/dist/showcase/assets/input-Cmrgo51H.js +0 -1
- package/dist/showcase/assets/input-CnmnWnGb.js +0 -1
- package/dist/showcase/assets/input-group-BwujFvXM.js +0 -1
- package/dist/showcase/assets/input-group-DvXgZtra.js +0 -47
- package/dist/showcase/assets/inputs-CjzW_R8z.js +0 -155
- package/dist/showcase/assets/installation-2dW-rmF2.js +0 -134
- package/dist/showcase/assets/invoice-header-DeWxMKCe.js +0 -36
- package/dist/showcase/assets/invoice-items-Dxb95w0e.js +0 -36
- package/dist/showcase/assets/invoice-mini-EMzCkmR7.js +0 -14
- package/dist/showcase/assets/invoice-table-ClWJaclJ.js +0 -30
- package/dist/showcase/assets/isSameDay-BNPzVySj.js +0 -1
- package/dist/showcase/assets/isToday-D6n7oLej.js +0 -1
- package/dist/showcase/assets/italic-B8w3dpYw.js +0 -1
- package/dist/showcase/assets/item-B8_dwOlT.js +0 -1
- package/dist/showcase/assets/item-Baq-Mmy2.js +0 -1
- package/dist/showcase/assets/item-BtMuqGwy.js +0 -140
- package/dist/showcase/assets/kanban-B-QxvKMg.js +0 -188
- package/dist/showcase/assets/key-round-CrBIyzIa.js +0 -1
- package/dist/showcase/assets/label-VWe_nbHh.js +0 -1
- package/dist/showcase/assets/languages-N0uGt5nC.js +0 -1
- package/dist/showcase/assets/layers-DEZvT5cX.js +0 -1
- package/dist/showcase/assets/layout-app-shell-T9UqKX2o.js +0 -608
- package/dist/showcase/assets/layout-auth-IVC4DuU3.js +0 -790
- package/dist/showcase/assets/layout-containers-naBpuH05.js +0 -101
- package/dist/showcase/assets/layout-header-9i_7ygKU.js +0 -203
- package/dist/showcase/assets/layout-page-CrEUiJpW.js +0 -315
- package/dist/showcase/assets/layout-primitives-DPrVHpu3.js +0 -34
- package/dist/showcase/assets/layout-sidebar-D7z6-kPu.js +0 -224
- package/dist/showcase/assets/layout-users-Cov9D84d.js +0 -117
- package/dist/showcase/assets/layout-workspace-Czlmi8gY.js +0 -191
- package/dist/showcase/assets/lib-DNMH46Rn.js +0 -1
- package/dist/showcase/assets/list-checks-DygDRIGi.js +0 -1
- package/dist/showcase/assets/lock-DqEahakB.js +0 -1
- package/dist/showcase/assets/lock-keyhole-CETEK3R0.js +0 -1
- package/dist/showcase/assets/mail-LKhBlrEc.js +0 -1
- package/dist/showcase/assets/mail-check-BOTjWQJf.js +0 -1
- package/dist/showcase/assets/map-0vJT2r8C.js +0 -124
- package/dist/showcase/assets/map-pin-D0qrpDJI.js +0 -1
- package/dist/showcase/assets/media-library-Bp99WaS9.js +0 -699
- package/dist/showcase/assets/mention-inline-suggestions-mlV7LRvD.js +0 -1
- package/dist/showcase/assets/mentions-Cmd1zxOR.js +0 -138
- package/dist/showcase/assets/menus-CtjFPoDr.js +0 -171
- package/dist/showcase/assets/message-square-BXyvikcZ.js +0 -1
- package/dist/showcase/assets/metadata-list-DLUBcy7E.js +0 -286
- package/dist/showcase/assets/metadata-list-F3bWXtZB.js +0 -1
- package/dist/showcase/assets/metric-CXPRptlh.js +0 -1
- package/dist/showcase/assets/metric-bar-BY25WVZ0.js +0 -1
- package/dist/showcase/assets/metric-grid-DQtf9y6E.js +0 -1
- package/dist/showcase/assets/metric-trend-chip-CXHpkj3U.js +0 -1
- package/dist/showcase/assets/metrics-analytics-bar-BIuwiVrn.js +0 -44
- package/dist/showcase/assets/metrics-analytics-cards-yx5lMGQf.js +0 -50
- package/dist/showcase/assets/metrics-comparison-BC_7jLXf.js +0 -76
- package/dist/showcase/assets/metrics-heatmap-C_nhCljz.js +0 -27
- package/dist/showcase/assets/metrics-inline-badge-3oySQnoR.js +0 -17
- package/dist/showcase/assets/metrics-kpi-row-zS4-oiTO.js +0 -31
- package/dist/showcase/assets/metrics-micro-grid-UJkA2LNR.js +0 -42
- package/dist/showcase/assets/metrics-overview-DQFr22ol.js +0 -192
- package/dist/showcase/assets/metrics-stat-cards-DnBirxKV.js +0 -54
- package/dist/showcase/assets/minus-BOVQEx6C.js +0 -1
- package/dist/showcase/assets/money-display-DV7xlrNV.js +0 -1
- package/dist/showcase/assets/money-display-DxnM5--7.js +0 -1
- package/dist/showcase/assets/month-year-picker-BzRXCrQ7.js +0 -1
- package/dist/showcase/assets/navigation-ChJKLv4Y.js +0 -90
- package/dist/showcase/assets/navigation-D7VJsKrP.js +0 -231
- package/dist/showcase/assets/navigation-extras-BVc1xQuB.js +0 -43
- package/dist/showcase/assets/notification-banner-1ivcmPLe.js +0 -1
- package/dist/showcase/assets/onboarding-checklist-CbARgwpX.js +0 -119
- package/dist/showcase/assets/overflow-tab-bar-DlqMmyTx.js +0 -1
- package/dist/showcase/assets/overlays-DkWO50b8.js +0 -159
- package/dist/showcase/assets/overlays-KKZpxWjt.js +0 -408
- package/dist/showcase/assets/overview-BjQe-YZE.js +0 -184
- package/dist/showcase/assets/package-DhQRoFDo.js +0 -1
- package/dist/showcase/assets/package-check-CBgGiccG.js +0 -1
- package/dist/showcase/assets/page-BWTmyV5J.js +0 -1
- package/dist/showcase/assets/page-action-button-DV-YYRA4.js +0 -1
- package/dist/showcase/assets/page-header-Bmg4NU_P.js +0 -1
- package/dist/showcase/assets/pagination-ByQ_OXRU.js +0 -1
- package/dist/showcase/assets/pagination-Db5CuoBb.js +0 -42
- package/dist/showcase/assets/paperclip-BQNPUzG_.js +0 -1
- package/dist/showcase/assets/password-input-CPvjzM1f.js +0 -1
- package/dist/showcase/assets/pencil-DuBakHme.js +0 -1
- package/dist/showcase/assets/phone-t94LTB1m.js +0 -1
- package/dist/showcase/assets/placeholder-pattern-BNou2ep-.js +0 -1
- package/dist/showcase/assets/plus-BRcp6JhT.js +0 -1
- package/dist/showcase/assets/popover-CVuJP03o.js +0 -1
- package/dist/showcase/assets/popover-D_P2gTn8.js +0 -1
- package/dist/showcase/assets/popover-menu-DGY5jEk4.js +0 -1
- package/dist/showcase/assets/products-8sUfDMPU.js +0 -423
- package/dist/showcase/assets/progress-BrMvIZIz.js +0 -1
- package/dist/showcase/assets/progress-CSXZAavT.js +0 -18
- package/dist/showcase/assets/progress-Dvqpf_O0.js +0 -1
- package/dist/showcase/assets/props-table-BAfz1Zc6.js +0 -1
- package/dist/showcase/assets/props.generated-CuVoOKYT.json +0 -41746
- package/dist/showcase/assets/qr-code-C-CaHJQ2.js +0 -1
- package/dist/showcase/assets/quote-Ci80eS0u.js +0 -1
- package/dist/showcase/assets/receipt-jvwbPuE3.js +0 -1
- package/dist/showcase/assets/receipt-text-CT0GiMQm.js +0 -1
- package/dist/showcase/assets/refinement-guide-BnCQ9-6f.js +0 -189
- package/dist/showcase/assets/refresh-cw-CXDARnCe.js +0 -1
- package/dist/showcase/assets/resolveValueLabel-DJanfUim.js +0 -1
- package/dist/showcase/assets/resource-Bir-z7ie.js +0 -139
- package/dist/showcase/assets/resource-D19qhfYP.js +0 -1
- package/dist/showcase/assets/resource-selector-card-BUbuu-QH.js +0 -43
- package/dist/showcase/assets/rich-text-editor-BCtz589M.js +0 -124
- package/dist/showcase/assets/rich-text-editor-uu9FmB8B.js +0 -143
- package/dist/showcase/assets/rotate-ccw-DEIVfiHA.js +0 -1
- package/dist/showcase/assets/route-B5vtDLsE.js +0 -1
- package/dist/showcase/assets/save-DQ4Up8ZB.js +0 -1
- package/dist/showcase/assets/schema-form-D7wbdl5u.js +0 -327
- package/dist/showcase/assets/scroll-area-B0QD6o1Y.js +0 -32
- package/dist/showcase/assets/scroll-area-BoZ1SrfI.js +0 -1
- package/dist/showcase/assets/section-BXsVHOsI.js +0 -1
- package/dist/showcase/assets/select-CW8SYsOY.js +0 -1
- package/dist/showcase/assets/select-DmRqLSoG.js +0 -1
- package/dist/showcase/assets/send-Dxs1-xSj.js +0 -1
- package/dist/showcase/assets/separator-BLOG_8oO.js +0 -1
- package/dist/showcase/assets/separator-DZC_uQU-.js +0 -1
- package/dist/showcase/assets/separator-OlLHRN7k.js +0 -28
- package/dist/showcase/assets/settings-2-BSpgytsy.js +0 -1
- package/dist/showcase/assets/settings-CCNP7XOu.js +0 -1
- package/dist/showcase/assets/sheet-DIfJjbgA.js +0 -1
- package/dist/showcase/assets/shield-D2gTWkwA.js +0 -1
- package/dist/showcase/assets/shield-alert-C-3oWpoe.js +0 -1
- package/dist/showcase/assets/shield-check-D11r1eJ8.js +0 -1
- package/dist/showcase/assets/shopping-bag-DAeaVQ5O.js +0 -1
- package/dist/showcase/assets/showcase-GdZcH6OR.js +0 -132
- package/dist/showcase/assets/sidebar-RBzHNuB7.js +0 -1
- package/dist/showcase/assets/sidebar.context-Dyw470Qp.js +0 -1
- package/dist/showcase/assets/skeleton-B7crngMw.js +0 -1
- package/dist/showcase/assets/skeleton-BwEVNdGJ.js +0 -1
- package/dist/showcase/assets/skeleton-DM73_ueB.js +0 -1
- package/dist/showcase/assets/skeleton-cHsWJOtO.js +0 -29
- package/dist/showcase/assets/slider-DRPnIs0S.js +0 -1
- package/dist/showcase/assets/smart-card-DER7dpD9.js +0 -1
- package/dist/showcase/assets/sonner-Go1YsPBH.js +0 -22
- package/dist/showcase/assets/sortable.esm-q6LdsxSr.js +0 -5
- package/dist/showcase/assets/sparkles-DqH40POl.js +0 -1
- package/dist/showcase/assets/spinner-C0YWWxyj.js +0 -1
- package/dist/showcase/assets/spinner-CpHNR13f.js +0 -30
- package/dist/showcase/assets/spinner-Dwvf24e9.js +0 -49
- package/dist/showcase/assets/square-pen-D-xHmIA0.js +0 -1
- package/dist/showcase/assets/stacked-avatars-C92NYKIa.js +0 -1
- package/dist/showcase/assets/star-dD4CAJ83.js +0 -1
- package/dist/showcase/assets/startOfDay-BXZshd4g.js +0 -1
- package/dist/showcase/assets/styles-BPJdkO_3.js +0 -1
- package/dist/showcase/assets/suggestions-CyhKme4Q.js +0 -126
- package/dist/showcase/assets/switch-C7DVTgQd.js +0 -1
- package/dist/showcase/assets/switch-LU6nljdS.js +0 -1
- package/dist/showcase/assets/sync-bERw1shm.js +0 -124
- package/dist/showcase/assets/table-BuIv4nqB.js +0 -686
- package/dist/showcase/assets/table-CDMDtBgJ.js +0 -1
- package/dist/showcase/assets/table-actions-DsK7d8Yb.js +0 -1
- package/dist/showcase/assets/tabs-BDryywGb.js +0 -19
- package/dist/showcase/assets/tabs-BNaZmM48.js +0 -1
- package/dist/showcase/assets/tags-input-CzE_5BJl.js +0 -1
- package/dist/showcase/assets/text-button-B1m5cpX_.js +0 -1
- package/dist/showcase/assets/text-link-CqjW10Ce.js +0 -1
- package/dist/showcase/assets/textarea-xJ3EE8R9.js +0 -1
- package/dist/showcase/assets/textarea-xOekToAG.js +0 -1
- package/dist/showcase/assets/throttle-alert-BH1HMiaI.js +0 -1
- package/dist/showcase/assets/timelines-DjWkuOz3.js +0 -200
- package/dist/showcase/assets/toggle-group-Css6pfUI.js +0 -1
- package/dist/showcase/assets/toggles-DhDrn3YH.js +0 -71
- package/dist/showcase/assets/toggles-group-e4xtKzkl.js +0 -32
- package/dist/showcase/assets/tooltip-DMvMUrGe.js +0 -31
- package/dist/showcase/assets/trash-2-zILxQmtX.js +0 -1
- package/dist/showcase/assets/trending-up-CRH278ig.js +0 -1
- package/dist/showcase/assets/truck-At9CEKg7.js +0 -1
- package/dist/showcase/assets/typography-B0ehvSV4.js +0 -223
- package/dist/showcase/assets/ui-badge-CyLWYf3f.js +0 -28
- package/dist/showcase/assets/ui-card-BPnLZmkJ.js +0 -30
- package/dist/showcase/assets/ui-table-C-zXhcOm.js +0 -42
- package/dist/showcase/assets/upload-tray-IyQJEM9n.js +0 -138
- package/dist/showcase/assets/use-layout-link-Cux4giQO.js +0 -1
- package/dist/showcase/assets/useAriaLabelledBy-Bo0rTGvc.js +0 -1
- package/dist/showcase/assets/useCollapsiblePanel-CzU-1LY3.js +0 -1
- package/dist/showcase/assets/useCompositeItem-CJFNnVql.js +0 -1
- package/dist/showcase/assets/useCompositeListItem-BAuO9hue.js +0 -1
- package/dist/showcase/assets/useLabelableId-HuACs9ba.js +0 -1
- package/dist/showcase/assets/useOpenInteractionType-MEUfJuxN.js +0 -1
- package/dist/showcase/assets/useRender-B-6DpRfj.js +0 -1
- package/dist/showcase/assets/useTriggerFocusGuards-B-mRyUJJ.js +0 -1
- package/dist/showcase/assets/useValueChanged-CVn_Rfso.js +0 -1
- package/dist/showcase/assets/user-eelwPGBI.js +0 -1
- package/dist/showcase/assets/user-plus-DhswMZvb.js +0 -1
- package/dist/showcase/assets/users-BVMmaveS.js +0 -1
- package/dist/showcase/assets/vendor-profile-FHaiInTe.js +0 -37
- package/dist/showcase/assets/video-C42fxAyj.js +0 -1
- package/dist/showcase/assets/visually-hidden-BwzlEinj.js +0 -1
- package/dist/showcase/assets/wrench-EKI7PaKp.js +0 -1
- package/dist/showcase/assets/x--LIqlhum.js +0 -1
- package/dist/showcase/assets/zap-C1fX30vt.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/ui/button-group.tsx","../../../../src/components/ui/spinner.tsx","../../../../src/components/base/map/place-autocomplete.tsx","../../../../src/components/base/map/map.tsx"],"sourcesContent":["import { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Separator } from \"@/components/ui/separator\"\n\nconst buttonGroupVariants = cva(\n \"has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md flex w-fit items-stretch *:focus-visible:z-10 *:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-md! [&>[data-slot]~[data-slot]]:rounded-l-none [&>[data-slot]~[data-slot]]:border-l-0 *:data-slot:rounded-r-none\",\n vertical:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-md! flex-col [&>[data-slot]~[data-slot]]:rounded-t-none [&>[data-slot]~[data-slot]]:border-t-0 *:data-slot:rounded-b-none\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n }\n)\n\nfunction ButtonGroup({\n className,\n orientation,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof buttonGroupVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"button-group\"\n data-orientation={orientation}\n className={cn(buttonGroupVariants({ orientation }), className)}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupText({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"div\">) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n \"bg-muted gap-2 rounded-md border px-2.5 text-sm font-medium shadow-xs [&_svg:not([class*='size-'])]:size-4 flex items-center [&_svg]:pointer-events-none\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"button-group-text\",\n },\n })\n}\n\nfunction ButtonGroupSeparator({\n className,\n orientation = \"vertical\",\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"button-group-separator\"\n orientation={orientation}\n className={cn(\n \"bg-input relative self-stretch data-[orientation=horizontal]:mx-px data-[orientation=horizontal]:w-auto data-[orientation=vertical]:my-px data-[orientation=vertical]:h-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n ButtonGroup,\n ButtonGroupSeparator,\n ButtonGroupText,\n buttonGroupVariants,\n}\n","import { cn } from \"@/lib/utils\"\nimport { Loader2Icon } from \"lucide-react\"\n\nfunction Spinner({ className, ...props }: React.ComponentProps<\"svg\">) {\n return (\n <Loader2Icon role=\"status\" aria-label=\"Loading\" className={cn(\"size-4 animate-spin\", className)} {...props} />\n )\n}\n\nexport { Spinner }\n","import { Text } from \"@/components/typography\"\nimport { useStrings, type StringsProp } from \"@/lib/strings\"\nimport { cn } from \"@/lib/utils\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\"\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupInput,\n} from \"@/components/ui/input-group\"\nimport { Spinner } from \"@/components/ui/spinner\"\nimport { MapPinIcon, SearchIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\ntype BBox = [number, number, number, number]\ntype Point = {\n type: \"Point\"\n coordinates: [number, number]\n}\ntype Feature<TGeometry, TProperties> = {\n type: \"Feature\"\n geometry: TGeometry\n properties: TProperties\n bbox?: BBox\n}\ntype FeatureCollection<TGeometry, TProperties> = {\n type: \"FeatureCollection\"\n features: Array<Feature<TGeometry, TProperties>>\n bbox?: BBox\n}\n\ninterface PlaceFeatureProperties {\n osm_id: number\n osm_type: \"N\" | \"W\" | \"R\"\n osm_key: string\n osm_value: string\n type: string\n name?: string\n housenumber?: string\n street?: string\n locality?: string\n district?: string\n postcode?: string\n city?: string\n county?: string\n state?: string\n country?: string\n countrycode?: string\n extent?: [number, number, number, number]\n extra?: Record<string, string>\n}\ntype PlaceFeature = Feature<Point, PlaceFeatureProperties>\ntype PlaceFeatureCollection = FeatureCollection<Point, PlaceFeatureProperties>\n\ninterface PlaceAutocompleteStrings {\n searchPlaceholder: string\n error: string\n noResults: string\n unknownPlace: string\n}\n\nconst defaultPlaceAutocompleteStrings: PlaceAutocompleteStrings = {\n searchPlaceholder: \"Search\",\n error: \"Error: {{message}}\",\n noResults: \"Can't find {{query}}.\",\n unknownPlace: \"Unknown\",\n}\n\n/**\n * Query parameters for Photon geocoding API\n * @see https://github.com/komoot/photon#photon-api\n */\ninterface PlaceSearchOptions {\n /** Search text (address, place name, or POI) */\n query: string\n /** Preferred language for results (e.g., \"en\", \"de\", \"fr\") */\n lang?: string\n /** Maximum number of results to return */\n limit?: number\n /**\n * Bounding box used to restrict results.\n * Format: [minLongitude, minLatitude, maxLongitude, maxLatitude]\n */\n bbox?: BBox\n /** Latitude used to bias results toward a specific location */\n lat?: number\n /** Longitude used to bias results toward a specific location */\n lon?: number\n /**\n * Zoom level used for location biasing.\n * Higher values increase locality.\n */\n zoom?: number\n /**\n * Strength of the location bias.\n */\n locationBiasScale?: number\n}\n\ninterface PlaceAutocompleteProps\n extends Omit<PlaceSearchOptions, \"query\">,\n Omit<React.ComponentProps<\"input\">, \"value\" | \"onChange\"> {\n debounceMs?: number\n value?: string\n defaultValue?: string\n onChange?: (value: string) => void\n onPlaceSelect?: (feature: PlaceFeature) => void\n onResultsChange?: (results: PlaceFeature[]) => void\n strings?: StringsProp<PlaceAutocompleteStrings>\n}\n\nfunction formatAddress(properties: PlaceFeatureProperties) {\n const parts = []\n\n if (properties.name) {\n parts.push(properties.name)\n }\n\n if (properties.housenumber && properties.street) {\n parts.push(`${properties.housenumber} ${properties.street}`)\n } else if (properties.street) {\n parts.push(properties.street)\n }\n\n if (properties.city) {\n parts.push(properties.city)\n } else if (properties.locality) {\n parts.push(properties.locality)\n }\n\n if (properties.state && properties.state !== properties.city) {\n parts.push(properties.state)\n }\n\n if (properties.country) {\n parts.push(properties.country)\n }\n\n return [...new Set(parts)].join(\", \")\n}\n\nfunction buildSearchUrl({\n query,\n bbox,\n lang,\n lat,\n limit,\n locationBiasScale,\n lon,\n zoom,\n}: PlaceSearchOptions) {\n const url = new URL(\"https://photon.komoot.io/api\")\n url.searchParams.set(\"q\", query)\n\n if (lang) {\n url.searchParams.set(\"lang\", lang)\n }\n\n if (limit) {\n url.searchParams.set(\"limit\", String(limit))\n }\n\n if (bbox) {\n url.searchParams.set(\"bbox\", bbox.join(\",\"))\n }\n\n if (lat !== undefined && lon !== undefined) {\n url.searchParams.set(\"lat\", String(lat))\n url.searchParams.set(\"lon\", String(lon))\n }\n\n if (zoom !== undefined) {\n url.searchParams.set(\"zoom\", String(zoom))\n }\n\n if (locationBiasScale !== undefined) {\n url.searchParams.set(\"location_bias_scale\", String(locationBiasScale))\n }\n\n return String(url)\n}\n\nfunction useDebounce<T>(value: T, delay: number = 300) {\n const [debouncedValue, setDebouncedValue] = React.useState<T>(value)\n\n React.useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay)\n return () => clearTimeout(timer)\n }, [value, delay])\n\n return debouncedValue\n}\n\nfunction usePlaceSearch({\n debounceMs,\n query,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n}: {\n debounceMs: number\n} & PlaceSearchOptions) {\n const [results, setResults] = React.useState<PlaceFeature[]>([])\n const [isLoading, setIsLoading] = React.useState(false)\n const [error, setError] = React.useState<Error | null>(null)\n const [hasSearched, setHasSearched] = React.useState(false)\n\n const debouncedQuery = useDebounce(query, debounceMs)\n\n React.useEffect(() => {\n if (!debouncedQuery.trim()) {\n setResults([])\n setIsLoading(false)\n setHasSearched(false)\n return\n }\n\n const abortController = new AbortController()\n\n async function fetchResults() {\n setIsLoading(true)\n setError(null)\n setHasSearched(true)\n\n try {\n const url = buildSearchUrl({\n query: debouncedQuery,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n })\n const response = await fetch(url, {\n signal: abortController.signal,\n })\n\n if (!response.ok) {\n throw new Error(\n `Photon API error: ${response.status} ${response.statusText}`\n )\n }\n\n const data: PlaceFeatureCollection = await response.json()\n const addressOsmIds = new Set()\n const dedupedFeatures = data.features.filter((feature) => {\n const id = feature.properties.osm_id\n if (addressOsmIds.has(id)) return false\n addressOsmIds.add(id)\n return true\n })\n setResults(dedupedFeatures)\n } catch (err) {\n if (err instanceof Error && err.name !== \"AbortError\") {\n setError(err)\n setResults([])\n }\n } finally {\n setIsLoading(false)\n }\n }\n\n fetchResults()\n\n return () => abortController.abort()\n }, [\n debouncedQuery,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n ])\n\n return { results, isLoading, error, hasSearched }\n}\n\nfunction formatPlaceAutocompleteString(\n template: string,\n params: Record<string, string>\n) {\n return template.replace(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (match, key) => {\n return params[key] ?? match\n })\n}\n\nfunction PlaceAutocomplete({\n debounceMs = 300,\n lang,\n limit = 5,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n className,\n value: controlledValue,\n defaultValue = \"\",\n onChange: controlledOnChange,\n onPlaceSelect,\n onResultsChange,\n strings: stringsProp,\n ...props\n}: PlaceAutocompleteProps) {\n const strings = useStrings(defaultPlaceAutocompleteStrings, stringsProp)\n const [internalValue, setInternalValue] = React.useState(defaultValue)\n const [searchQuery, setSearchQuery] = React.useState(\"\")\n\n const isControlled = controlledValue !== undefined\n const displayValue = isControlled ? controlledValue : internalValue\n\n const { results, isLoading, error, hasSearched } = usePlaceSearch({\n query: searchQuery,\n debounceMs,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n })\n\n React.useEffect(() => {\n onResultsChange?.(results)\n }, [results, onResultsChange])\n\n const hasNoResults =\n hasSearched && !isLoading && !error && results.length === 0\n const showCommandList = error || hasNoResults || results.length > 0\n\n return (\n <Command\n className={cn('place-autocomplete--component', \"h-fit overflow-visible\", className)}\n shouldFilter={false}\n loop>\n <div className=\"relative\">\n <InputGroup\n className={cn(\n \"border-input! bg-popover! ring-0!\",\n showCommandList && \"rounded-b-none\"\n )}>\n <InputGroupAddon>\n <SearchIcon />\n </InputGroupAddon>\n <InputGroupInput\n placeholder={strings.searchPlaceholder}\n value={displayValue}\n onChange={(event) => {\n const newValue = event.target.value\n if (!isControlled) {\n setInternalValue(newValue)\n }\n setSearchQuery(newValue)\n controlledOnChange?.(newValue)\n }}\n {...props}\n />\n {!!isLoading && (\n <InputGroupAddon align=\"inline-end\">\n <Spinner />\n </InputGroupAddon>\n )}\n </InputGroup>\n {!!showCommandList && (\n <CommandList\n data-state={showCommandList ? \"open\" : \"closed\"}\n className={cn(\n \"bg-popover border-input absolute top-full right-0 left-0 rounded-b-md border border-t-0 shadow-md\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"data-[state=open]:slide-in-from-top-2 data-[state=closed]:slide-out-to-top-2\"\n )}>\n {!!error && (\n <CommandEmpty>\n {formatPlaceAutocompleteString(\n strings.error,\n { message: error.message }\n )}\n </CommandEmpty>\n )}\n {!!hasNoResults && (\n <CommandEmpty>\n {formatPlaceAutocompleteString(\n strings.noResults,\n { query: displayValue }\n )}\n </CommandEmpty>\n )}\n {results.length > 0 && (\n <CommandGroup>\n {results.map((feature) => {\n const formattedAddress = formatAddress(\n feature.properties\n )\n return (\n <CommandItem\n key={feature.properties.osm_id}\n value={String(\n feature.properties.osm_id\n )}\n onSelect={() => {\n const formattedAddress =\n formatAddress(\n feature.properties\n )\n\n if (!isControlled) {\n setInternalValue(\n formattedAddress\n )\n }\n\n setSearchQuery(\"\")\n controlledOnChange?.(\n formattedAddress\n )\n onPlaceSelect?.(feature)\n }}>\n <MapPinIcon />\n <div className=\"flex flex-col items-start text-start\">\n <Text tag=\"span\" weight=\"medium\">\n {feature.properties.name ||\n feature.properties\n .street ||\n strings.unknownPlace}\n </Text>\n <Text tag=\"span\" size=\"xs\" type=\"secondary\">\n {formattedAddress}\n </Text>\n </div>\n </CommandItem>\n )\n })}\n </CommandGroup>\n )}\n </CommandList>\n )}\n </div>\n </Command>\n )\n}\n\nexport {\n PlaceAutocomplete,\n defaultPlaceAutocompleteStrings,\n type PlaceAutocompleteProps,\n type PlaceAutocompleteStrings,\n type PlaceFeature,\n}\n","\"use client\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/base/buttons\"\nimport { ButtonGroup } from \"@/components/ui/button-group\"\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuLabel,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\"\nimport {\n PlaceAutocomplete,\n type PlaceAutocompleteProps,\n} from \"./place-autocomplete\"\nimport type {\n Circle,\n CircleMarker,\n DivIconOptions,\n Draw,\n DrawEvents,\n DrawMap,\n DrawOptions,\n EditToolbar,\n ErrorEvent,\n FeatureGroup,\n LatLngExpression,\n LayerGroup,\n Map as LeafletMap,\n LocateOptions,\n LocationEvent,\n Marker,\n MarkerCluster,\n PointExpression,\n Polygon,\n Polyline,\n Popup,\n Rectangle,\n TileLayer,\n Tooltip,\n} from \"leaflet\"\nimport type * as LeafletDrawNamespace from \"leaflet-draw\"\nimport type * as LeafletNamespace from \"leaflet\"\nimport type {} from \"leaflet.markercluster\"\nimport {\n CircleIcon,\n LayersIcon,\n LoaderCircleIcon,\n MapPinIcon,\n MaximizeIcon,\n MinimizeIcon,\n MinusIcon,\n NavigationIcon,\n PenLineIcon,\n PentagonIcon,\n PlusIcon,\n SquareIcon,\n Trash2Icon,\n Undo2Icon,\n WaypointsIcon,\n} from \"lucide-react\"\nconst useTheme = () => ({ resolvedTheme: typeof document !== 'undefined' && document.documentElement.classList.contains('dark') ? 'dark' : 'light' });\nimport React, {\n Suspense,\n createContext,\n lazy,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n type ComponentType,\n type ReactNode,\n type Ref,\n} from \"react\"\nimport { renderToString } from \"react-dom/server\"\nimport type {\n CircleMarkerProps,\n CircleProps,\n LayerGroupProps,\n MapContainerProps,\n MarkerProps,\n PolygonProps,\n PolylineProps,\n PopupProps,\n RectangleProps,\n TileLayerProps,\n TooltipProps,\n} from \"react-leaflet\"\nimport type { MarkerClusterGroupProps } from \"react-leaflet-markercluster\"\n\ntype LeafletModule = typeof LeafletNamespace\ntype LeafletDrawModule = typeof LeafletDrawNamespace\ntype ReactLeafletModule = typeof import(\"react-leaflet\")\ntype ReactLeafletHooks = Pick<ReactLeafletModule, \"useMap\" | \"useMapEvents\">\n\nconst ReactLeafletHooksContext = createContext<ReactLeafletHooks | null>(null)\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any -- react-leaflet lazy exports include forwardRef components and this preserves prop inference at call sites.\nfunction createLazyComponent<T extends ComponentType<any>>(\n factory: () => Promise<{ default: T }>\n) {\n const LazyComponent = lazy(factory)\n\n return (props: React.ComponentProps<T>) => {\n const [isMounted, setIsMounted] = useState(false)\n\n useEffect(() => {\n setIsMounted(true)\n }, [])\n\n if (!isMounted) {\n return null\n }\n\n return (\n <Suspense>\n <LazyComponent {...props} />\n </Suspense>\n )\n }\n}\n\nconst LeafletMapContainer = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.MapContainer,\n }))\n)\nconst LeafletTileLayer = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.TileLayer,\n }))\n)\nconst LeafletMarker = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Marker,\n }))\n)\nconst LeafletPopup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Popup,\n }))\n)\nconst LeafletTooltip = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Tooltip,\n }))\n)\nconst LeafletCircle = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Circle,\n }))\n)\nconst LeafletCircleMarker = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.CircleMarker,\n }))\n)\nconst LeafletPolyline = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Polyline,\n }))\n)\nconst LeafletPolygon = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Polygon,\n }))\n)\nconst LeafletRectangle = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Rectangle,\n }))\n)\nconst LeafletLayerGroup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.LayerGroup,\n }))\n)\nconst LeafletFeatureGroup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.FeatureGroup,\n }))\n)\nconst LeafletMarkerClusterGroup = createLazyComponent(async () =>\n import(\"react-leaflet-markercluster\").then((mod) => ({\n default: mod.default,\n }))\n)\nconst ReactLeafletHooksProvider = createLazyComponent(async () => {\n const mod = await import(\"react-leaflet\")\n\n function ReactLeafletHooksProvider({\n children,\n }: {\n children?: ReactNode\n }) {\n return (\n <ReactLeafletHooksContext.Provider\n value={{\n useMap: mod.useMap,\n useMapEvents: mod.useMapEvents,\n }}>\n {children}\n </ReactLeafletHooksContext.Provider>\n )\n }\n\n return {\n default: ReactLeafletHooksProvider,\n }\n})\n\nfunction useLeafletMap() {\n const hooks = useContext(ReactLeafletHooksContext)\n if (!hooks) {\n throw new Error(\"Map controls must be rendered within Map.\")\n }\n\n return hooks.useMap()\n}\n\nfunction useLeafletMapEvents(\n handlers: Parameters<ReactLeafletModule[\"useMapEvents\"]>[0]\n) {\n const hooks = useContext(ReactLeafletHooksContext)\n if (!hooks) {\n throw new Error(\"Map controls must be rendered within Map.\")\n }\n\n return hooks.useMapEvents(handlers)\n}\n\nfunction assignRef<T>(ref: Ref<T> | undefined, value: T | null) {\n if (!ref) return\n\n if (typeof ref === \"function\") {\n ref(value)\n return\n }\n\n ;(ref as React.MutableRefObject<T | null>).current = value\n}\n\nfunction Map({\n zoom = 15,\n maxZoom = 18,\n className,\n children,\n ...props\n}: Omit<MapContainerProps, \"zoomControl\"> & {\n center: LatLngExpression\n ref?: Ref<LeafletMap>\n}) {\n return (\n <LeafletMapContainer\n zoom={zoom}\n maxZoom={maxZoom}\n attributionControl={false}\n zoomControl={false}\n className={cn(\n 'map--component',\n \"z-50 size-full min-h-96 flex-1 rounded-md\",\n className\n )}\n {...props}>\n <ReactLeafletHooksProvider>{children}</ReactLeafletHooksProvider>\n </LeafletMapContainer>\n )\n}\n\ninterface MapTileLayerOption {\n name: string\n url: string\n attribution?: string\n}\n\ninterface MapLayerGroupOption\n extends Pick<React.ComponentProps<typeof DropdownMenuCheckboxItem>, \"disabled\"> {\n name: string\n}\n\ninterface MapLayersContextType {\n registerTileLayer: (layer: MapTileLayerOption) => void\n tileLayers: MapTileLayerOption[]\n selectedTileLayer: string\n setSelectedTileLayer: (name: string) => void\n registerLayerGroup: (layer: MapLayerGroupOption) => void\n layerGroups: MapLayerGroupOption[]\n activeLayerGroups: string[]\n setActiveLayerGroups: (names: string[]) => void\n}\n\nconst MapLayersContext = createContext<MapLayersContextType | null>(null)\n\nfunction useMapLayersContext() {\n return useContext(MapLayersContext)\n}\n\nfunction MapTileLayer({\n name = \"Default\",\n url,\n attribution,\n darkUrl,\n darkAttribution,\n ...props\n}: Partial<TileLayerProps> & {\n name?: string\n darkUrl?: string\n darkAttribution?: string\n ref?: Ref<TileLayer>\n}) {\n const map = useLeafletMap()\n if (map.attributionControl) {\n map.attributionControl.setPrefix(\"\")\n }\n\n const context = useContext(MapLayersContext)\n const DEFAULT_URL =\n \"https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png\"\n const DEFAULT_DARK_URL =\n \"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png\"\n\n const { resolvedTheme } = useTheme()\n const resolvedUrl =\n resolvedTheme === \"dark\"\n ? (darkUrl ?? url ?? DEFAULT_DARK_URL)\n : (url ?? DEFAULT_URL)\n const resolvedAttribution =\n resolvedTheme === \"dark\" && darkAttribution\n ? darkAttribution\n : (attribution ??\n '© <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, © <a href=\"https://carto.com/attributions\">CARTO</a>')\n\n useEffect(() => {\n if (context) {\n context.registerTileLayer({\n name,\n url: resolvedUrl,\n attribution: resolvedAttribution,\n })\n }\n }, [context, name, resolvedAttribution, resolvedUrl])\n\n if (context && context.selectedTileLayer !== name) {\n return null\n }\n\n return (\n <LeafletTileLayer\n url={resolvedUrl}\n attribution={resolvedAttribution}\n {...props}\n />\n )\n}\n\nfunction MapLayerGroup({\n name,\n disabled,\n ...props\n}: LayerGroupProps & MapLayerGroupOption & { ref?: Ref<LayerGroup> }) {\n const context = useMapLayersContext()\n\n useEffect(() => {\n if (context) {\n context.registerLayerGroup({\n name,\n disabled,\n })\n }\n }, [context, name, disabled])\n\n if (context && !context.activeLayerGroups.includes(name)) {\n return null\n }\n\n return <LeafletLayerGroup {...props} />\n}\n\nfunction MapFeatureGroup({\n name,\n disabled,\n ...props\n}: LayerGroupProps & MapLayerGroupOption & { ref?: Ref<FeatureGroup> }) {\n const context = useMapLayersContext()\n\n useEffect(() => {\n if (context) {\n context.registerLayerGroup({\n name,\n disabled,\n })\n }\n }, [context, name, disabled])\n\n if (context && !context.activeLayerGroups.includes(name)) {\n return null\n }\n\n return <LeafletFeatureGroup {...props} />\n}\n\nfunction MapLayers({\n defaultTileLayer,\n defaultLayerGroups = [],\n ...props\n}: Omit<React.ComponentProps<typeof MapLayersContext.Provider>, \"value\"> & {\n defaultTileLayer?: string\n defaultLayerGroups?: string[]\n}) {\n const [tileLayers, setTileLayers] = useState<MapTileLayerOption[]>([])\n const [selectedTileLayer, setSelectedTileLayer] = useState<string>(\n defaultTileLayer || \"\"\n )\n const [layerGroups, setLayerGroups] = useState<MapLayerGroupOption[]>([])\n const [activeLayerGroups, setActiveLayerGroups] =\n useState<string[]>(defaultLayerGroups)\n\n function registerTileLayer(tileLayer: MapTileLayerOption) {\n setTileLayers((prevTileLayers) => {\n if (prevTileLayers.some((layer) => layer.name === tileLayer.name)) {\n return prevTileLayers\n }\n return [...prevTileLayers, tileLayer]\n })\n }\n\n function registerLayerGroup(layerGroup: MapLayerGroupOption) {\n setLayerGroups((prevLayerGroups) => {\n if (\n prevLayerGroups.some((group) => group.name === layerGroup.name)\n ) {\n return prevLayerGroups\n }\n return [...prevLayerGroups, layerGroup]\n })\n }\n\n useEffect(() => {\n // Error: Invalid defaultValue\n if (\n defaultTileLayer &&\n tileLayers.length > 0 &&\n !tileLayers.some((tileLayer) => tileLayer.name === defaultTileLayer)\n ) {\n throw new Error(\n `Invalid defaultTileLayer \"${defaultTileLayer}\" provided to MapLayers. It must match a MapTileLayer's name prop.`\n )\n }\n\n // Set initial selected tile layer\n if (tileLayers.length > 0 && !selectedTileLayer) {\n const validDefaultValue =\n defaultTileLayer &&\n tileLayers.some((layer) => layer.name === defaultTileLayer)\n ? defaultTileLayer\n : tileLayers[0].name\n setSelectedTileLayer(validDefaultValue)\n }\n\n // Error: Invalid defaultActiveLayerGroups\n if (\n defaultLayerGroups.length > 0 &&\n layerGroups.length > 0 &&\n defaultLayerGroups.some(\n (name) => !layerGroups.some((group) => group.name === name)\n )\n ) {\n throw new Error(\n `Invalid defaultLayerGroups value provided to MapLayers. All names must match a MapLayerGroup's name prop.`\n )\n }\n }, [\n tileLayers,\n defaultTileLayer,\n selectedTileLayer,\n layerGroups,\n defaultLayerGroups,\n ])\n\n return (\n <MapLayersContext.Provider\n value={{\n registerTileLayer,\n tileLayers,\n selectedTileLayer,\n setSelectedTileLayer,\n registerLayerGroup,\n layerGroups,\n activeLayerGroups,\n setActiveLayerGroups,\n }}\n {...props}\n />\n )\n}\n\nfunction MapLayersControl({\n tileLayersLabel = \"Map Type\",\n layerGroupsLabel = \"Layers\",\n position = \"top-1 right-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n tileLayersLabel?: string\n layerGroupsLabel?: string\n position?: string\n}) {\n const layersContext = useMapLayersContext()\n if (!layersContext) {\n throw new Error(\"MapLayersControl must be used within MapLayers\")\n }\n\n const {\n tileLayers,\n selectedTileLayer,\n setSelectedTileLayer,\n layerGroups,\n activeLayerGroups,\n setActiveLayerGroups,\n } = layersContext\n\n if (tileLayers.length === 0 && layerGroups.length === 0) {\n return null\n }\n\n function handleLayerGroupToggle(name: string, checked: boolean) {\n setActiveLayerGroups(\n checked\n ? [...activeLayerGroups, name]\n : activeLayerGroups.filter((groupName) => groupName !== name)\n )\n }\n\n const showTileLayersDropdown = tileLayers.length > 1\n const showLayerGroupsDropdown = layerGroups.length > 0\n\n if (!showTileLayersDropdown && !showLayerGroupsDropdown) {\n return null\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger\n render={(triggerProps) => (\n <Button\n {...triggerProps}\n type=\"button\"\n variant=\"secondary\"\n size=\"icon-small\"\n aria-label=\"Select layers\"\n title=\"Select layers\"\n className={cn(\n \"absolute z-1000 border\",\n position,\n className,\n triggerProps.className\n )}\n {...props}\n >\n <LayersIcon />\n </Button>\n )}\n />\n <DropdownMenuContent align=\"end\" className=\"z-1000\">\n {!!showTileLayersDropdown && <>\n <DropdownMenuLabel>{tileLayersLabel}</DropdownMenuLabel>\n <DropdownMenuRadioGroup\n value={selectedTileLayer}\n onValueChange={setSelectedTileLayer}>\n {tileLayers.map((tileLayer) => (\n <DropdownMenuRadioItem\n key={tileLayer.name}\n value={tileLayer.name}>\n {tileLayer.name}\n </DropdownMenuRadioItem>\n ))}\n </DropdownMenuRadioGroup>\n </>}\n {!!showTileLayersDropdown && !!showLayerGroupsDropdown && <DropdownMenuSeparator />}\n {!!showLayerGroupsDropdown && <>\n <DropdownMenuLabel>\n {layerGroupsLabel}\n </DropdownMenuLabel>\n {layerGroups.map((layerGroup) => (\n <DropdownMenuCheckboxItem\n key={layerGroup.name}\n checked={activeLayerGroups.includes(\n layerGroup.name\n )}\n disabled={layerGroup.disabled}\n onCheckedChange={(checked) =>\n handleLayerGroupToggle(\n layerGroup.name,\n checked\n )\n }>\n {layerGroup.name}\n </DropdownMenuCheckboxItem>\n ))}\n </>}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n\nfunction MapMarker({\n icon = <MapPinIcon className=\"size-map-marker-icon text-foreground\" />,\n iconAnchor = [12, 12],\n bgPos,\n popupAnchor,\n tooltipAnchor,\n ariaLabel,\n ref,\n ...props\n}: Omit<MarkerProps, \"icon\"> &\n Pick<\n DivIconOptions,\n \"iconAnchor\" | \"bgPos\" | \"popupAnchor\" | \"tooltipAnchor\"\n > & {\n icon?: ReactNode\n ariaLabel?: string\n ref?: Ref<Marker>\n }) {\n const { L } = useLeaflet()\n const markerRef = useRef<Marker | null>(null)\n const resolvedAriaLabel =\n ariaLabel ??\n (typeof props.title === \"string\" && props.title.trim()\n ? props.title\n : undefined) ??\n \"Map marker\"\n const resolvedTitle =\n typeof props.title === \"string\" && props.title.trim()\n ? props.title\n : resolvedAriaLabel\n const syncMarkerElement = useCallback(\n (marker: Marker | null) => {\n const element = marker?.getElement()\n if (!element) return\n\n element.setAttribute(\"aria-label\", resolvedAriaLabel)\n if (!element.getAttribute(\"title\")) {\n element.setAttribute(\"title\", resolvedAriaLabel)\n }\n },\n [resolvedAriaLabel]\n )\n const handleMarkerRef = useCallback(\n (marker: Marker | null) => {\n markerRef.current = marker\n assignRef(ref, marker)\n syncMarkerElement(marker)\n },\n [ref, syncMarkerElement]\n )\n\n useEffect(() => {\n syncMarkerElement(markerRef.current)\n }, [syncMarkerElement])\n\n if (!L) return null\n\n return (\n <LeafletMarker\n ref={handleMarkerRef}\n icon={L.divIcon({\n // Empty className stops leaflet's default `.leaflet-div-icon`\n // (white background + grey border rectangle) from being applied\n // around our SVG marker.\n className: \"\",\n html: renderToString(icon),\n iconAnchor,\n ...(bgPos ? { bgPos } : {}),\n ...(popupAnchor ? { popupAnchor } : {}),\n ...(tooltipAnchor ? { tooltipAnchor } : {}),\n })}\n riseOnHover\n {...props}\n title={resolvedTitle}\n />\n )\n}\n\nfunction MapMarkerClusterGroup({\n polygonOptions = {\n className: \"fill-foreground stroke-foreground stroke-2\",\n },\n spiderLegPolylineOptions = {\n className: \"fill-foreground stroke-foreground stroke-2\",\n },\n icon,\n ...props\n}: Omit<MarkerClusterGroupProps, \"iconCreateFunction\"> & {\n children: ReactNode\n icon?: (markerCount: number) => ReactNode\n}) {\n const { L } = useLeaflet()\n if (!L) return null\n\n const iconCreateFunction = icon\n ? (cluster: MarkerCluster) => {\n const markerCount = cluster.getChildCount()\n const iconNode = icon(markerCount)\n return L.divIcon({\n html: renderToString(iconNode),\n })\n }\n : undefined\n\n return (\n <LeafletMarkerClusterGroup\n polygonOptions={polygonOptions}\n spiderLegPolylineOptions={spiderLegPolylineOptions}\n iconCreateFunction={iconCreateFunction}\n {...props}\n />\n )\n}\n\nfunction MapCircle({\n className,\n ...props\n}: CircleProps & { ref?: Ref<Circle> }) {\n return (\n <LeafletCircle\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapCircleMarker({\n className,\n ...props\n}: CircleMarkerProps & { ref?: Ref<CircleMarker> }) {\n return (\n <LeafletCircleMarker\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPolyline({\n className,\n ...props\n}: PolylineProps & { ref?: Ref<Polyline> }) {\n return (\n <LeafletPolyline\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPolygon({\n className,\n ...props\n}: PolygonProps & { ref?: Ref<Polygon> }) {\n return (\n <LeafletPolygon\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapRectangle({\n className,\n ...props\n}: RectangleProps & { ref?: Ref<Rectangle> }) {\n return (\n <LeafletRectangle\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPopup({\n className,\n ...props\n}: Omit<PopupProps, \"content\"> & { ref?: Ref<Popup> }) {\n return (\n <LeafletPopup\n className={cn(\n \"bg-popover text-popover-foreground animate-in fade-out-0 fade-in-0 zoom-out-95 zoom-in-95 slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 font-sans shadow-md outline-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapTooltip({\n className,\n children,\n side = \"top\",\n sideOffset = 15,\n ...props\n}: Omit<TooltipProps, \"offset\"> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\"\n sideOffset?: number\n ref?: Ref<Tooltip>\n}) {\n const ARROW_POSITION_CLASSES = {\n top: \"bottom-0.5 left-1/2 -translate-x-1/2 translate-y-1/2\",\n bottom: \"top-0.5 left-1/2 -translate-x-1/2 -translate-y-1/2\",\n left: \"right-0.5 top-1/2 translate-x-1/2 -translate-y-1/2\",\n right: \"left-0.5 top-1/2 -translate-x-1/2 -translate-y-1/2\",\n }\n const DEFAULT_OFFSET = {\n top: [0, -sideOffset] satisfies PointExpression,\n bottom: [0, sideOffset] satisfies PointExpression,\n left: [-sideOffset, 0] satisfies PointExpression,\n right: [sideOffset, 0] satisfies PointExpression,\n }\n\n return (\n <LeafletTooltip\n className={cn(\n \"animate-in fade-in-0 zoom-in-95 fade-out-0 zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 w-fit text-xs text-balance transition-opacity\",\n className\n )}\n data-side={side}\n direction={side}\n offset={DEFAULT_OFFSET[side]}\n opacity={1}\n {...props}>\n {children}\n <div\n className={cn(\n \"bg-foreground fill-foreground absolute z-50 size-2.5 rotate-45 rounded-[2px]\",\n ARROW_POSITION_CLASSES[side]\n )}\n />\n </LeafletTooltip>\n )\n}\n\nfunction MapZoomControl({\n position = \"top-1 left-1\",\n className,\n ...props\n}: React.ComponentProps<\"div\"> & { position?: string }) {\n const map = useLeafletMap()\n const [zoomLevel, setZoomLevel] = useState(map.getZoom())\n\n useLeafletMapEvents({\n zoomend: () => {\n setZoomLevel(map.getZoom())\n },\n })\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <ButtonGroup\n orientation=\"vertical\"\n aria-label=\"Zoom controls\"\n {...props}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label=\"Zoom in\"\n title=\"Zoom in\"\n className=\"border\"\n disabled={zoomLevel >= map.getMaxZoom()}\n onClick={() => map.zoomIn()}>\n <PlusIcon />\n </Button>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label=\"Zoom out\"\n title=\"Zoom out\"\n className=\"border\"\n disabled={zoomLevel <= map.getMinZoom()}\n onClick={() => map.zoomOut()}>\n <MinusIcon />\n </Button>\n </ButtonGroup>\n </MapControlContainer>\n )\n}\n\nfunction MapFullscreenControl({\n position = \"top-1 right-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> & { position?: string }) {\n const map = useLeafletMap()\n const [isFullscreen, setIsFullscreen] = useState(false)\n\n const { L } = useLeaflet()\n\n useEffect(() => {\n if (!L) return\n\n const fullscreenControl = new L.Control.FullScreen()\n fullscreenControl.addTo(map)\n\n const container = fullscreenControl.getContainer()\n if (container) {\n container.style.display = \"none\"\n }\n\n const handleEnter = () => setIsFullscreen(true)\n const handleExit = () => setIsFullscreen(false)\n\n map.on(\"enterFullscreen\", handleEnter)\n map.on(\"exitFullscreen\", handleExit)\n\n return () => {\n fullscreenControl.remove()\n map.off(\"enterFullscreen\", handleEnter)\n map.off(\"exitFullscreen\", handleExit)\n }\n }, [L, map])\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n onClick={() => map.toggleFullscreen()}\n aria-label={\n isFullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\"\n }\n title={isFullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\"}\n className=\"border\"\n {...props}>\n {isFullscreen ? <MinimizeIcon /> : <MaximizeIcon />}\n </Button>\n </MapControlContainer>\n )\n}\n\nfunction MapLocatePulseIcon() {\n return (\n <div className=\"absolute -top-1 -right-1 flex size-3 rounded-full\">\n <div className=\"bg-primary absolute inline-flex size-full animate-ping rounded-full opacity-75\" />\n <div className=\"bg-primary relative inline-flex size-3 rounded-full\" />\n </div>\n )\n}\n\nfunction MapLocateControl({\n watch = false,\n onLocationFound,\n onLocationError,\n position = \"right-1 bottom-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> &\n Pick<LocateOptions, \"watch\"> & {\n onLocationFound?: (location: LocationEvent) => void\n onLocationError?: (error: ErrorEvent) => void\n } & { position?: string }) {\n const map = useLeafletMap()\n const [isLocating, setIsLocating] = useDebounceLoadingState(200)\n const [location, setLocation] = useState<LatLngExpression | null>(null)\n const hasLocation = location !== null\n\n const startLocating = useCallback(() => {\n setIsLocating(true)\n map.locate({ setView: true, maxZoom: map.getMaxZoom(), watch })\n map.on(\"locationfound\", (location: LocationEvent) => {\n setLocation(location.latlng)\n setIsLocating(false)\n onLocationFound?.(location)\n })\n map.on(\"locationerror\", (error: ErrorEvent) => {\n setLocation(null)\n setIsLocating(false)\n onLocationError?.(error)\n })\n }, [map, onLocationError, onLocationFound, setIsLocating, watch])\n\n const stopLocating = useCallback(() => {\n map.stopLocate()\n map.off(\"locationfound\")\n map.off(\"locationerror\")\n setLocation(null)\n setIsLocating(false)\n }, [map, setIsLocating])\n const trackingHandler = hasLocation ? stopLocating : startLocating\n const trackingTitle = isLocating\n ? \"Locating...\"\n : hasLocation\n ? \"Stop tracking\"\n : \"Track location\"\n const trackingAriaLabel = isLocating\n ? \"Locating...\"\n : hasLocation\n ? \"Stop location tracking\"\n : \"Start location tracking\"\n const locationMarker =\n hasLocation && location ? (\n <MapMarker\n position={location}\n icon={<MapLocatePulseIcon />}\n ariaLabel=\"Current location\"\n />\n ) : null\n\n useEffect(() => () => stopLocating(), [stopLocating])\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant={hasLocation ? \"primary\" : \"secondary\"}\n onClick={trackingHandler}\n disabled={isLocating}\n title={trackingTitle}\n aria-label={trackingAriaLabel}\n className=\"border\"\n {...props}>\n {isLocating ? (\n <LoaderCircleIcon className=\"animate-spin\" />\n ) : (\n <NavigationIcon />\n )}\n </Button>\n {locationMarker}\n </MapControlContainer>\n )\n}\n\nfunction MapSearchControl({\n position = \"top-1 left-1\",\n className,\n ...props\n}: PlaceAutocompleteProps & { position?: string }) {\n return (\n <MapControlContainer className={cn(\"z-1001 w-60\", position, className)}>\n <PlaceAutocomplete {...props} />\n </MapControlContainer>\n )\n}\n\ntype MapDrawShape = \"marker\" | \"polyline\" | \"circle\" | \"rectangle\" | \"polygon\"\ntype MapDrawAction = \"edit\" | \"delete\"\ntype MapDrawMode = MapDrawShape | MapDrawAction | null\ninterface MapDrawContextType {\n readonly featureGroup: L.FeatureGroup | null\n activeMode: MapDrawMode\n setActiveMode: (mode: MapDrawMode) => void\n readonly editControlRef: React.RefObject<EditToolbar.Edit | null>\n readonly deleteControlRef: React.RefObject<EditToolbar.Delete | null>\n readonly layersCount: number\n}\n\nconst MapDrawContext = createContext<MapDrawContextType | null>(null)\n\nfunction useMapDrawContext() {\n return useContext(MapDrawContext)\n}\n\nfunction MapDrawControl({\n onLayersChange,\n position = \"bottom-1 left-1\",\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n onLayersChange?: (layers: L.FeatureGroup) => void\n position?: string\n}) {\n const { L, LeafletDraw } = useLeaflet()\n const map = useLeafletMap()\n const featureGroupRef = useRef<L.FeatureGroup | null>(null)\n const editControlRef = useRef<EditToolbar.Edit | null>(null)\n const deleteControlRef = useRef<EditToolbar.Delete | null>(null)\n const [activeMode, setActiveMode] = useState<MapDrawMode>(null)\n const [layersCount, setLayersCount] = useState(0)\n\n const updateLayersCount = useCallback(() => {\n if (featureGroupRef.current) {\n setLayersCount(featureGroupRef.current.getLayers().length)\n }\n }, [])\n\n const handleDrawCreated = useCallback((event: DrawEvents.Created) => {\n if (!featureGroupRef.current) return\n const { layer } = event\n featureGroupRef.current.addLayer(layer)\n onLayersChange?.(featureGroupRef.current)\n updateLayersCount()\n setActiveMode(null)\n }, [onLayersChange, updateLayersCount])\n\n const handleDrawEditedOrDeleted = useCallback(() => {\n if (!featureGroupRef.current) return\n onLayersChange?.(featureGroupRef.current)\n updateLayersCount()\n setActiveMode(null)\n }, [onLayersChange, updateLayersCount])\n\n useEffect(() => {\n if (!L || !LeafletDraw || !map) return\n\n map.on(\n L.Draw.Event.CREATED,\n handleDrawCreated as L.LeafletEventHandlerFn\n )\n map.on(L.Draw.Event.EDITED, handleDrawEditedOrDeleted)\n map.on(L.Draw.Event.DELETED, handleDrawEditedOrDeleted)\n\n return () => {\n map.off(\n L.Draw.Event.CREATED,\n handleDrawCreated as L.LeafletEventHandlerFn\n )\n map.off(L.Draw.Event.EDITED, handleDrawEditedOrDeleted)\n map.off(L.Draw.Event.DELETED, handleDrawEditedOrDeleted)\n }\n }, [L, LeafletDraw, map, handleDrawCreated, handleDrawEditedOrDeleted])\n\n return (\n <MapDrawContext.Provider\n value={{\n featureGroup: featureGroupRef.current,\n activeMode,\n setActiveMode,\n editControlRef,\n deleteControlRef,\n layersCount,\n }}>\n <LeafletFeatureGroup ref={featureGroupRef} />\n <MapControlContainer className={cn(position, className)}>\n <ButtonGroup orientation=\"vertical\" {...props} />\n </MapControlContainer>\n </MapDrawContext.Provider>\n )\n}\n\nfunction MapDrawShapeButton<T extends Draw.Feature>({\n drawMode,\n createDrawTool,\n className,\n children,\n ...props\n}: React.ComponentProps<\"button\"> & {\n drawMode: MapDrawShape\n createDrawTool: (L: LeafletModule, map: DrawMap) => T\n}) {\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawShapeButton must be used within MapDrawControl\")\n }\n const { L } = useLeaflet()\n const map = useLeafletMap()\n const controlRef = useRef<T | null>(null)\n const { activeMode, setActiveMode } = drawContext\n const isActive = activeMode === drawMode\n\n useEffect(() => {\n if (!L || !isActive) {\n controlRef.current?.disable()\n controlRef.current = null\n return\n }\n const control = createDrawTool(L, map as DrawMap)\n control.enable()\n controlRef.current = control\n return () => {\n control.disable()\n controlRef.current = null\n }\n }, [L, map, isActive, createDrawTool])\n\n function handleClick() {\n setActiveMode(isActive ? null : drawMode)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n aria-label={`Draw ${drawMode}`}\n title={`Draw ${drawMode}`}\n className={cn(\"border\", className)}\n variant={isActive ? \"primary\" : \"secondary\"}\n disabled={activeMode === \"edit\" || activeMode === \"delete\"}\n onClick={handleClick}\n {...props}\n >\n {children}\n </Button>\n )\n}\n\nfunction MapDrawMarker({ ...props }: DrawOptions.MarkerOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"marker\"\n createDrawTool={(L, map) =>\n new L.Draw.Marker(map, {\n icon: L.divIcon({\n className: \"\", // For fixing the moving bug when going in and out the edit mode\n iconAnchor: [12, 12],\n html: renderToString(<MapPinIcon className=\"size-map-marker-icon\" />),\n }),\n ...props,\n })\n }>\n <MapPinIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawPolyline({\n showLength = false,\n drawError = {\n color: \"var(--color-destructive)\",\n },\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.PolylineOptions) {\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n\n return (\n <MapDrawShapeButton\n drawMode=\"polyline\"\n createDrawTool={(L, map) =>\n new L.Draw.Polyline(map, {\n ...(mapDrawHandleIcon\n ? {\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n }\n : {}),\n showLength,\n drawError,\n shapeOptions,\n ...props,\n })\n }>\n <WaypointsIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawCircle({\n showRadius = false,\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.CircleOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"circle\"\n createDrawTool={(L, map) =>\n new L.Draw.Circle(map, {\n showRadius,\n shapeOptions,\n ...props,\n })\n }>\n <CircleIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawRectangle({\n showArea = false,\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.RectangleOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"rectangle\"\n createDrawTool={(L, map) =>\n new L.Draw.Rectangle(map, {\n showArea,\n shapeOptions,\n ...props,\n })\n }>\n <SquareIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawPolygon({\n drawError = {\n color: \"var(--color-destructive)\",\n },\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.PolygonOptions) {\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n\n return (\n <MapDrawShapeButton\n drawMode=\"polygon\"\n createDrawTool={(L, map) =>\n new L.Draw.Polygon(map, {\n ...(mapDrawHandleIcon\n ? {\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n }\n : {}),\n drawError,\n shapeOptions,\n ...props,\n })\n }>\n <PentagonIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawActionButton<T extends EditToolbar.Edit | EditToolbar.Delete>({\n drawAction,\n createDrawTool,\n controlRef,\n className,\n children,\n ...props\n}: React.ComponentProps<\"button\"> & {\n drawAction: MapDrawAction\n createDrawTool: (\n L: LeafletModule,\n map: DrawMap,\n featureGroup: L.FeatureGroup\n ) => T\n controlRef: React.RefObject<T | null>\n}) {\n const drawContext = useMapDrawContext()\n if (!drawContext)\n throw new Error(\n \"MapDrawActionButton must be used within MapDrawControl\"\n )\n\n const { L } = useLeaflet()\n const map = useLeafletMap()\n const { featureGroup, activeMode, setActiveMode, layersCount } = drawContext\n const isActive = activeMode === drawAction\n const hasFeatures = layersCount > 0\n\n useEffect(() => {\n if (!L || !featureGroup || !isActive) {\n controlRef.current?.disable?.()\n controlRef.current = null\n return\n }\n const control = createDrawTool(L, map as DrawMap, featureGroup)\n control.enable?.()\n controlRef.current = control\n return () => {\n control.disable?.()\n controlRef.current = null\n }\n }, [L, map, isActive, featureGroup, createDrawTool, controlRef])\n\n function handleClick() {\n controlRef.current?.save()\n setActiveMode(isActive ? null : drawAction)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n aria-label={`${drawAction === \"edit\" ? \"Edit\" : \"Remove\"} shapes`}\n title={`${drawAction === \"edit\" ? \"Edit\" : \"Remove\"} shapes`}\n variant={isActive ? \"primary\" : \"secondary\"}\n disabled={!hasFeatures}\n onClick={handleClick}\n className={cn(\"border\", className)}\n {...props}\n >\n {children}\n </Button>\n )\n}\n\nfunction MapDrawEdit({\n selectedPathOptions = {\n color: \"var(--color-primary)\",\n fillColor: \"var(--color-primary)\",\n weight: 2,\n },\n ...props\n}: Omit<EditToolbar.EditHandlerOptions, \"featureGroup\">) {\n const { L } = useLeaflet()\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawEdit must be used within MapDrawControl\")\n }\n\n useEffect(() => {\n if (!L || !mapDrawHandleIcon) return\n\n L.Edit.PolyVerticesEdit.mergeOptions({\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n drawError: {\n color: \"var(--color-destructive)\",\n },\n })\n L.Edit.SimpleShape.mergeOptions({\n moveIcon: mapDrawHandleIcon,\n resizeIcon: mapDrawHandleIcon,\n touchMoveIcon: mapDrawHandleIcon,\n touchResizeIcon: mapDrawHandleIcon,\n })\n L.drawLocal.edit.handlers.edit.tooltip = {\n text: \"Drag handles or markers to edit.\",\n subtext: \"\",\n }\n L.drawLocal.edit.handlers.remove.tooltip = {\n text: \"Click on a shape to remove.\",\n }\n }, [L, mapDrawHandleIcon])\n\n return (\n <MapDrawActionButton\n drawAction=\"edit\"\n controlRef={drawContext.editControlRef}\n createDrawTool={(L, map, featureGroup) =>\n new L.EditToolbar.Edit(map, {\n featureGroup,\n selectedPathOptions,\n ...props,\n })\n }>\n <PenLineIcon />\n </MapDrawActionButton>\n )\n}\n\nfunction MapDrawDelete() {\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawDelete must be used within MapDrawControl\")\n }\n\n return (\n <MapDrawActionButton\n drawAction=\"delete\"\n controlRef={drawContext.deleteControlRef}\n createDrawTool={(L, map, featureGroup) =>\n new L.EditToolbar.Delete(map, { featureGroup })\n }>\n <Trash2Icon />\n </MapDrawActionButton>\n )\n}\n\nfunction MapDrawUndo({ className, ...props }: React.ComponentProps<\"button\">) {\n const drawContext = useMapDrawContext()\n if (!drawContext)\n throw new Error(\"MapDrawUndo must be used within MapDrawControl\")\n\n const {\n activeMode,\n setActiveMode,\n editControlRef,\n deleteControlRef,\n layersCount,\n } = drawContext\n const isInEditMode = activeMode === \"edit\"\n const isInDeleteMode = activeMode === \"delete\"\n const isActive = (isInEditMode || isInDeleteMode) && layersCount > 0\n\n function handleUndo() {\n if (isInEditMode) {\n editControlRef.current?.revertLayers()\n } else if (isInDeleteMode) {\n deleteControlRef.current?.revertLayers()\n }\n setActiveMode(null)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label={`Undo ${activeMode}`}\n title={`Undo ${activeMode}`}\n onClick={handleUndo}\n disabled={!isActive}\n className={cn(\"border\", className)}\n {...props}>\n <Undo2Icon />\n </Button>\n )\n}\n\nfunction MapControlContainer({\n className,\n ...props\n}: React.ComponentPropsWithoutRef<\"div\">) {\n const { L } = useLeaflet()\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (!L) return\n const element = containerRef.current\n if (!element) return\n L.DomEvent.disableClickPropagation(element)\n L.DomEvent.disableScrollPropagation(element)\n }, [L])\n\n return (\n <div\n ref={containerRef}\n className={cn(\"absolute z-1000 size-fit cursor-default\", className)}\n {...props}\n />\n )\n}\n\nfunction useMapDrawHandleIcon() {\n const { L } = useLeaflet()\n if (!L) return null\n\n return L.divIcon({\n iconAnchor: [8, 8],\n html: renderToString(\n <CircleIcon className=\"fill-primary stroke-primary size-4 transition-transform hover:scale-110\" />\n ),\n })\n}\n\nfunction useLeaflet() {\n const [L, setL] = useState<LeafletModule | null>(null)\n const [LeafletDraw, setLeafletDraw] = useState<LeafletDrawModule | null>(\n null\n )\n\n useEffect(() => {\n async function loadLeaflet() {\n const leaflet = await import(\"leaflet\")\n const leafletFullscreen = await import(\"leaflet.fullscreen\")\n const leafletDraw = await import(\"leaflet-draw\")\n\n const L_object = leaflet.default\n if (L_object.Control && !L_object.Control.FullScreen) {\n L_object.Control.FullScreen =\n leafletFullscreen.default || leafletFullscreen\n }\n\n setLeafletDraw(leafletDraw)\n setL(L_object)\n }\n\n if (L && LeafletDraw) return\n if (typeof window === \"undefined\") return\n\n void loadLeaflet()\n }, [L, LeafletDraw])\n\n return { L, LeafletDraw }\n}\n\nfunction useDebounceLoadingState(delay = 200) {\n const [isLoading, setIsLoading] = useState(false)\n const [showLoading, setShowLoading] = useState(false)\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n useEffect(() => {\n if (isLoading) {\n timeoutRef.current = setTimeout(() => {\n setShowLoading(true)\n }, delay)\n } else {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n timeoutRef.current = null\n }\n setShowLoading(false)\n }\n\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n }\n }, [isLoading, delay])\n\n return [showLoading, setIsLoading] as const\n}\n\nexport {\n Map,\n MapCircle,\n MapCircleMarker,\n MapControlContainer,\n MapDrawCircle,\n MapDrawControl,\n MapDrawDelete,\n MapDrawEdit,\n MapDrawMarker,\n MapDrawPolygon,\n MapDrawPolyline,\n MapDrawRectangle,\n MapDrawUndo,\n MapFeatureGroup,\n MapFullscreenControl,\n MapLayerGroup,\n MapLayers,\n MapLayersControl,\n MapLocateControl,\n MapMarker,\n MapMarkerClusterGroup,\n MapPolygon,\n MapPolyline,\n MapPopup,\n MapRectangle,\n MapSearchControl,\n MapTileLayer,\n MapTooltip,\n MapZoomControl,\n useLeaflet,\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/ui/button-group.tsx","../../../../src/components/ui/spinner.tsx","../../../../src/components/base/map/place-autocomplete.tsx","../../../../src/components/base/map/map.tsx"],"sourcesContent":["import { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Separator } from \"@/components/ui/separator\"\n\nconst buttonGroupVariants = cva(\n \"has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md flex w-fit items-stretch *:focus-visible:z-10 *:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-md! [&>[data-slot]~[data-slot]]:rounded-l-none [&>[data-slot]~[data-slot]]:border-l-0 *:data-slot:rounded-r-none\",\n vertical:\n \"[&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-md! flex-col [&>[data-slot]~[data-slot]]:rounded-t-none [&>[data-slot]~[data-slot]]:border-t-0 *:data-slot:rounded-b-none\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n }\n)\n\nfunction ButtonGroup({\n className,\n orientation,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof buttonGroupVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"button-group\"\n data-orientation={orientation}\n className={cn(buttonGroupVariants({ orientation }), className)}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupText({\n className,\n render,\n ...props\n}: useRender.ComponentProps<\"div\">) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n \"bg-muted gap-2 rounded-md border px-2.5 text-sm font-medium shadow-xs [&_svg:not([class*='size-'])]:size-4 flex items-center [&_svg]:pointer-events-none\",\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"button-group-text\",\n },\n })\n}\n\nfunction ButtonGroupSeparator({\n className,\n orientation = \"vertical\",\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"button-group-separator\"\n orientation={orientation}\n className={cn(\n \"bg-input relative self-stretch data-[orientation=horizontal]:mx-px data-[orientation=horizontal]:w-auto data-[orientation=vertical]:my-px data-[orientation=vertical]:h-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n ButtonGroup,\n ButtonGroupSeparator,\n ButtonGroupText,\n buttonGroupVariants,\n}\n","import { cn } from \"@/lib/utils\"\nimport { Loader2Icon } from \"lucide-react\"\n\nfunction Spinner({ className, ...props }: React.ComponentProps<\"svg\">) {\n return (\n <Loader2Icon role=\"status\" aria-label=\"Loading\" className={cn(\"size-4 animate-spin\", className)} {...props} />\n )\n}\n\nexport { Spinner }\n","import { Text } from \"@/components/typography\"\nimport { useStrings, type StringsProp } from \"@/lib/strings\"\nimport { cn } from \"@/lib/utils\"\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\"\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupInput,\n} from \"@/components/ui/input-group\"\nimport { Spinner } from \"@/components/ui/spinner\"\nimport { MapPinIcon, SearchIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\ntype BBox = [number, number, number, number]\ntype Point = {\n type: \"Point\"\n coordinates: [number, number]\n}\ntype Feature<TGeometry, TProperties> = {\n type: \"Feature\"\n geometry: TGeometry\n properties: TProperties\n bbox?: BBox\n}\ntype FeatureCollection<TGeometry, TProperties> = {\n type: \"FeatureCollection\"\n features: Array<Feature<TGeometry, TProperties>>\n bbox?: BBox\n}\n\ninterface PlaceFeatureProperties {\n osm_id: number\n osm_type: \"N\" | \"W\" | \"R\"\n osm_key: string\n osm_value: string\n type: string\n name?: string\n housenumber?: string\n street?: string\n locality?: string\n district?: string\n postcode?: string\n city?: string\n county?: string\n state?: string\n country?: string\n countrycode?: string\n extent?: [number, number, number, number]\n extra?: Record<string, string>\n}\ntype PlaceFeature = Feature<Point, PlaceFeatureProperties>\ntype PlaceFeatureCollection = FeatureCollection<Point, PlaceFeatureProperties>\n\ninterface PlaceAutocompleteStrings {\n searchPlaceholder: string\n error: string\n noResults: string\n unknownPlace: string\n}\n\nconst defaultPlaceAutocompleteStrings: PlaceAutocompleteStrings = {\n searchPlaceholder: \"Search\",\n error: \"Error: {{message}}\",\n noResults: \"Can't find {{query}}.\",\n unknownPlace: \"Unknown\",\n}\n\n/**\n * Query parameters for Photon geocoding API\n * @see https://github.com/komoot/photon#photon-api\n */\ninterface PlaceSearchOptions {\n /** Search text (address, place name, or POI) */\n query: string\n /** Preferred language for results (e.g., \"en\", \"de\", \"fr\") */\n lang?: string\n /** Maximum number of results to return */\n limit?: number\n /**\n * Bounding box used to restrict results.\n * Format: [minLongitude, minLatitude, maxLongitude, maxLatitude]\n */\n bbox?: BBox\n /** Latitude used to bias results toward a specific location */\n lat?: number\n /** Longitude used to bias results toward a specific location */\n lon?: number\n /**\n * Zoom level used for location biasing.\n * Higher values increase locality.\n */\n zoom?: number\n /**\n * Strength of the location bias.\n */\n locationBiasScale?: number\n}\n\ninterface PlaceAutocompleteProps\n extends Omit<PlaceSearchOptions, \"query\">,\n Omit<React.ComponentProps<\"input\">, \"value\" | \"onChange\"> {\n debounceMs?: number\n value?: string\n defaultValue?: string\n onChange?: (value: string) => void\n onPlaceSelect?: (feature: PlaceFeature) => void\n onResultsChange?: (results: PlaceFeature[]) => void\n strings?: StringsProp<PlaceAutocompleteStrings>\n}\n\nfunction formatAddress(properties: PlaceFeatureProperties) {\n const parts = []\n\n if (properties.name) {\n parts.push(properties.name)\n }\n\n if (properties.housenumber && properties.street) {\n parts.push(`${properties.housenumber} ${properties.street}`)\n } else if (properties.street) {\n parts.push(properties.street)\n }\n\n if (properties.city) {\n parts.push(properties.city)\n } else if (properties.locality) {\n parts.push(properties.locality)\n }\n\n if (properties.state && properties.state !== properties.city) {\n parts.push(properties.state)\n }\n\n if (properties.country) {\n parts.push(properties.country)\n }\n\n return [...new Set(parts)].join(\", \")\n}\n\nfunction buildSearchUrl({\n query,\n bbox,\n lang,\n lat,\n limit,\n locationBiasScale,\n lon,\n zoom,\n}: PlaceSearchOptions) {\n const url = new URL(\"https://photon.komoot.io/api\")\n url.searchParams.set(\"q\", query)\n\n if (lang) {\n url.searchParams.set(\"lang\", lang)\n }\n\n if (limit) {\n url.searchParams.set(\"limit\", String(limit))\n }\n\n if (bbox) {\n url.searchParams.set(\"bbox\", bbox.join(\",\"))\n }\n\n if (lat !== undefined && lon !== undefined) {\n url.searchParams.set(\"lat\", String(lat))\n url.searchParams.set(\"lon\", String(lon))\n }\n\n if (zoom !== undefined) {\n url.searchParams.set(\"zoom\", String(zoom))\n }\n\n if (locationBiasScale !== undefined) {\n url.searchParams.set(\"location_bias_scale\", String(locationBiasScale))\n }\n\n return String(url)\n}\n\nfunction useDebounce<T>(value: T, delay: number = 300) {\n const [debouncedValue, setDebouncedValue] = React.useState<T>(value)\n\n React.useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay)\n return () => clearTimeout(timer)\n }, [value, delay])\n\n return debouncedValue\n}\n\nfunction usePlaceSearch({\n debounceMs,\n query,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n}: {\n debounceMs: number\n} & PlaceSearchOptions) {\n const [results, setResults] = React.useState<PlaceFeature[]>([])\n const [isLoading, setIsLoading] = React.useState(false)\n const [error, setError] = React.useState<Error | null>(null)\n const [hasSearched, setHasSearched] = React.useState(false)\n\n const debouncedQuery = useDebounce(query, debounceMs)\n\n React.useEffect(() => {\n if (!debouncedQuery.trim()) {\n setResults([])\n setIsLoading(false)\n setHasSearched(false)\n return\n }\n\n const abortController = new AbortController()\n\n async function fetchResults() {\n setIsLoading(true)\n setError(null)\n setHasSearched(true)\n\n try {\n const url = buildSearchUrl({\n query: debouncedQuery,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n })\n const response = await fetch(url, {\n signal: abortController.signal,\n })\n\n if (!response.ok) {\n throw new Error(\n `Photon API error: ${response.status} ${response.statusText}`\n )\n }\n\n const data: PlaceFeatureCollection = await response.json()\n const addressOsmIds = new Set()\n const dedupedFeatures = data.features.filter((feature) => {\n const id = feature.properties.osm_id\n if (addressOsmIds.has(id)) return false\n addressOsmIds.add(id)\n return true\n })\n setResults(dedupedFeatures)\n } catch (err) {\n if (err instanceof Error && err.name !== \"AbortError\") {\n setError(err)\n setResults([])\n }\n } finally {\n setIsLoading(false)\n }\n }\n\n fetchResults()\n\n return () => abortController.abort()\n }, [\n debouncedQuery,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n ])\n\n return { results, isLoading, error, hasSearched }\n}\n\nfunction formatPlaceAutocompleteString(\n template: string,\n params: Record<string, string>\n) {\n return template.replace(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (match, key) => {\n return params[key] ?? match\n })\n}\n\nfunction PlaceAutocomplete({\n debounceMs = 300,\n lang,\n limit = 5,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n className,\n value: controlledValue,\n defaultValue = \"\",\n onChange: controlledOnChange,\n onPlaceSelect,\n onResultsChange,\n strings: stringsProp,\n ...props\n}: PlaceAutocompleteProps) {\n const strings = useStrings(defaultPlaceAutocompleteStrings, stringsProp)\n const [internalValue, setInternalValue] = React.useState(defaultValue)\n const [searchQuery, setSearchQuery] = React.useState(\"\")\n\n const isControlled = controlledValue !== undefined\n const displayValue = isControlled ? controlledValue : internalValue\n\n const { results, isLoading, error, hasSearched } = usePlaceSearch({\n query: searchQuery,\n debounceMs,\n lang,\n limit,\n bbox,\n lat,\n lon,\n zoom,\n locationBiasScale,\n })\n\n React.useEffect(() => {\n onResultsChange?.(results)\n }, [results, onResultsChange])\n\n const hasNoResults =\n hasSearched && !isLoading && !error && results.length === 0\n const showCommandList = error || hasNoResults || results.length > 0\n\n return (\n <Command\n className={cn('place-autocomplete--component', \"h-fit overflow-visible\", className)}\n shouldFilter={false}\n loop>\n <div className=\"relative\">\n <InputGroup\n className={cn(\n \"border-input! bg-popover! ring-0!\",\n showCommandList && \"rounded-b-none\"\n )}>\n <InputGroupAddon>\n <SearchIcon />\n </InputGroupAddon>\n <InputGroupInput\n placeholder={strings.searchPlaceholder}\n value={displayValue}\n onChange={(event) => {\n const newValue = event.target.value\n if (!isControlled) {\n setInternalValue(newValue)\n }\n setSearchQuery(newValue)\n controlledOnChange?.(newValue)\n }}\n {...props}\n />\n {!!isLoading && (\n <InputGroupAddon align=\"inline-end\">\n <Spinner />\n </InputGroupAddon>\n )}\n </InputGroup>\n {!!showCommandList && (\n <CommandList\n data-state={showCommandList ? \"open\" : \"closed\"}\n className={cn(\n \"bg-popover border-input absolute top-full right-0 left-0 rounded-b-md border border-t-0 shadow-md\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"data-[state=open]:slide-in-from-top-2 data-[state=closed]:slide-out-to-top-2\"\n )}>\n {!!error && (\n <CommandEmpty>\n {formatPlaceAutocompleteString(\n strings.error,\n { message: error.message }\n )}\n </CommandEmpty>\n )}\n {!!hasNoResults && (\n <CommandEmpty>\n {formatPlaceAutocompleteString(\n strings.noResults,\n { query: displayValue }\n )}\n </CommandEmpty>\n )}\n {results.length > 0 && (\n <CommandGroup>\n {results.map((feature) => {\n const formattedAddress = formatAddress(\n feature.properties\n )\n return (\n <CommandItem\n key={feature.properties.osm_id}\n value={String(\n feature.properties.osm_id\n )}\n onSelect={() => {\n const formattedAddress =\n formatAddress(\n feature.properties\n )\n\n if (!isControlled) {\n setInternalValue(\n formattedAddress\n )\n }\n\n setSearchQuery(\"\")\n controlledOnChange?.(\n formattedAddress\n )\n onPlaceSelect?.(feature)\n }}>\n <MapPinIcon />\n <div className=\"flex flex-col items-start text-start\">\n <Text tag=\"span\" weight=\"medium\">\n {feature.properties.name ||\n feature.properties\n .street ||\n strings.unknownPlace}\n </Text>\n <Text tag=\"span\" size=\"xs\" type=\"secondary\">\n {formattedAddress}\n </Text>\n </div>\n </CommandItem>\n )\n })}\n </CommandGroup>\n )}\n </CommandList>\n )}\n </div>\n </Command>\n )\n}\n\nexport {\n PlaceAutocomplete,\n defaultPlaceAutocompleteStrings,\n type PlaceAutocompleteProps,\n type PlaceAutocompleteStrings,\n type PlaceFeature,\n}\n","\"use client\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/base/buttons\"\nimport { ButtonGroup } from \"@/components/ui/button-group\"\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuLabel,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/components/base/navigation/dropdown-menu\"\nimport {\n PlaceAutocomplete,\n type PlaceAutocompleteProps,\n} from \"./place-autocomplete\"\nimport type {\n Circle,\n CircleMarker,\n DivIconOptions,\n Draw,\n DrawEvents,\n DrawMap,\n DrawOptions,\n EditToolbar,\n ErrorEvent,\n FeatureGroup,\n LatLngExpression,\n LayerGroup,\n Map as LeafletMap,\n LocateOptions,\n LocationEvent,\n Marker,\n MarkerCluster,\n PointExpression,\n Polygon,\n Polyline,\n Popup,\n Rectangle,\n TileLayer,\n Tooltip,\n} from \"leaflet\"\nimport type * as LeafletDrawNamespace from \"leaflet-draw\"\nimport type * as LeafletNamespace from \"leaflet\"\nimport type {} from \"leaflet.markercluster\"\nimport {\n CircleIcon,\n LayersIcon,\n LoaderCircleIcon,\n MapPinIcon,\n MaximizeIcon,\n MinimizeIcon,\n MinusIcon,\n NavigationIcon,\n PenLineIcon,\n PentagonIcon,\n PlusIcon,\n SquareIcon,\n Trash2Icon,\n Undo2Icon,\n WaypointsIcon,\n} from \"lucide-react\"\nconst useTheme = () => ({ resolvedTheme: typeof document !== 'undefined' && document.documentElement.classList.contains('dark') ? 'dark' : 'light' });\nimport React, {\n Suspense,\n createContext,\n lazy,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n type ComponentType,\n type ReactNode,\n type Ref,\n} from \"react\"\nimport { renderToString } from \"react-dom/server\"\nimport type {\n CircleMarkerProps,\n CircleProps,\n LayerGroupProps,\n MapContainerProps,\n MarkerProps,\n PolygonProps,\n PolylineProps,\n PopupProps,\n RectangleProps,\n TileLayerProps,\n TooltipProps,\n} from \"react-leaflet\"\nimport type { MarkerClusterGroupProps } from \"react-leaflet-markercluster\"\n\ntype LeafletModule = typeof LeafletNamespace\ntype LeafletDrawModule = typeof LeafletDrawNamespace\ntype ReactLeafletModule = typeof import(\"react-leaflet\")\ntype ReactLeafletHooks = Pick<ReactLeafletModule, \"useMap\" | \"useMapEvents\">\n\nconst ReactLeafletHooksContext = createContext<ReactLeafletHooks | null>(null)\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any -- react-leaflet lazy exports include forwardRef components and this preserves prop inference at call sites.\nfunction createLazyComponent<T extends ComponentType<any>>(\n factory: () => Promise<{ default: T }>\n) {\n const LazyComponent = lazy(factory)\n\n return (props: React.ComponentProps<T>) => {\n const [isMounted, setIsMounted] = useState(false)\n\n useEffect(() => {\n setIsMounted(true)\n }, [])\n\n if (!isMounted) {\n return null\n }\n\n return (\n <Suspense>\n <LazyComponent {...props} />\n </Suspense>\n )\n }\n}\n\nconst LeafletMapContainer = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.MapContainer,\n }))\n)\nconst LeafletTileLayer = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.TileLayer,\n }))\n)\nconst LeafletMarker = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Marker,\n }))\n)\nconst LeafletPopup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Popup,\n }))\n)\nconst LeafletTooltip = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Tooltip,\n }))\n)\nconst LeafletCircle = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Circle,\n }))\n)\nconst LeafletCircleMarker = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.CircleMarker,\n }))\n)\nconst LeafletPolyline = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Polyline,\n }))\n)\nconst LeafletPolygon = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Polygon,\n }))\n)\nconst LeafletRectangle = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.Rectangle,\n }))\n)\nconst LeafletLayerGroup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.LayerGroup,\n }))\n)\nconst LeafletFeatureGroup = createLazyComponent(() =>\n import(\"react-leaflet\").then((mod) => ({\n default: mod.FeatureGroup,\n }))\n)\nconst LeafletMarkerClusterGroup = createLazyComponent(async () =>\n import(\"react-leaflet-markercluster\").then((mod) => ({\n default: mod.default,\n }))\n)\nconst ReactLeafletHooksProvider = createLazyComponent(async () => {\n const mod = await import(\"react-leaflet\")\n\n function ReactLeafletHooksProvider({\n children,\n }: {\n children?: ReactNode\n }) {\n return (\n <ReactLeafletHooksContext.Provider\n value={{\n useMap: mod.useMap,\n useMapEvents: mod.useMapEvents,\n }}>\n {children}\n </ReactLeafletHooksContext.Provider>\n )\n }\n\n return {\n default: ReactLeafletHooksProvider,\n }\n})\n\nfunction useLeafletMap() {\n const hooks = useContext(ReactLeafletHooksContext)\n if (!hooks) {\n throw new Error(\"Map controls must be rendered within Map.\")\n }\n\n return hooks.useMap()\n}\n\nfunction useLeafletMapEvents(\n handlers: Parameters<ReactLeafletModule[\"useMapEvents\"]>[0]\n) {\n const hooks = useContext(ReactLeafletHooksContext)\n if (!hooks) {\n throw new Error(\"Map controls must be rendered within Map.\")\n }\n\n return hooks.useMapEvents(handlers)\n}\n\nfunction assignRef<T>(ref: Ref<T> | undefined, value: T | null) {\n if (!ref) return\n\n if (typeof ref === \"function\") {\n ref(value)\n return\n }\n\n ;(ref as React.MutableRefObject<T | null>).current = value\n}\n\nfunction Map({\n zoom = 15,\n maxZoom = 18,\n className,\n children,\n ...props\n}: Omit<MapContainerProps, \"zoomControl\"> & {\n center: LatLngExpression\n ref?: Ref<LeafletMap>\n}) {\n return (\n <LeafletMapContainer\n zoom={zoom}\n maxZoom={maxZoom}\n attributionControl={false}\n zoomControl={false}\n className={cn(\n 'map--component',\n \"z-50 size-full min-h-96 flex-1 rounded-md\",\n className\n )}\n {...props}>\n <ReactLeafletHooksProvider>{children}</ReactLeafletHooksProvider>\n </LeafletMapContainer>\n )\n}\n\ninterface MapTileLayerOption {\n name: string\n url: string\n attribution?: string\n}\n\ninterface MapLayerGroupOption\n extends Pick<React.ComponentProps<typeof DropdownMenuCheckboxItem>, \"disabled\"> {\n name: string\n}\n\ninterface MapLayersContextType {\n registerTileLayer: (layer: MapTileLayerOption) => void\n tileLayers: MapTileLayerOption[]\n selectedTileLayer: string\n setSelectedTileLayer: (name: string) => void\n registerLayerGroup: (layer: MapLayerGroupOption) => void\n layerGroups: MapLayerGroupOption[]\n activeLayerGroups: string[]\n setActiveLayerGroups: (names: string[]) => void\n}\n\nconst MapLayersContext = createContext<MapLayersContextType | null>(null)\n\nfunction useMapLayersContext() {\n return useContext(MapLayersContext)\n}\n\nfunction MapTileLayer({\n name = \"Default\",\n url,\n attribution,\n darkUrl,\n darkAttribution,\n ...props\n}: Partial<TileLayerProps> & {\n name?: string\n darkUrl?: string\n darkAttribution?: string\n ref?: Ref<TileLayer>\n}) {\n const map = useLeafletMap()\n if (map.attributionControl) {\n map.attributionControl.setPrefix(\"\")\n }\n\n const context = useContext(MapLayersContext)\n const DEFAULT_URL =\n \"https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png\"\n const DEFAULT_DARK_URL =\n \"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png\"\n\n const { resolvedTheme } = useTheme()\n const resolvedUrl =\n resolvedTheme === \"dark\"\n ? (darkUrl ?? url ?? DEFAULT_DARK_URL)\n : (url ?? DEFAULT_URL)\n const resolvedAttribution =\n resolvedTheme === \"dark\" && darkAttribution\n ? darkAttribution\n : (attribution ??\n '© <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, © <a href=\"https://carto.com/attributions\">CARTO</a>')\n\n useEffect(() => {\n if (context) {\n context.registerTileLayer({\n name,\n url: resolvedUrl,\n attribution: resolvedAttribution,\n })\n }\n }, [context, name, resolvedAttribution, resolvedUrl])\n\n if (context && context.selectedTileLayer !== name) {\n return null\n }\n\n return (\n <LeafletTileLayer\n url={resolvedUrl}\n attribution={resolvedAttribution}\n {...props}\n />\n )\n}\n\nfunction MapLayerGroup({\n name,\n disabled,\n ...props\n}: LayerGroupProps & MapLayerGroupOption & { ref?: Ref<LayerGroup> }) {\n const context = useMapLayersContext()\n\n useEffect(() => {\n if (context) {\n context.registerLayerGroup({\n name,\n disabled,\n })\n }\n }, [context, name, disabled])\n\n if (context && !context.activeLayerGroups.includes(name)) {\n return null\n }\n\n return <LeafletLayerGroup {...props} />\n}\n\nfunction MapFeatureGroup({\n name,\n disabled,\n ...props\n}: LayerGroupProps & MapLayerGroupOption & { ref?: Ref<FeatureGroup> }) {\n const context = useMapLayersContext()\n\n useEffect(() => {\n if (context) {\n context.registerLayerGroup({\n name,\n disabled,\n })\n }\n }, [context, name, disabled])\n\n if (context && !context.activeLayerGroups.includes(name)) {\n return null\n }\n\n return <LeafletFeatureGroup {...props} />\n}\n\nfunction MapLayers({\n defaultTileLayer,\n defaultLayerGroups = [],\n ...props\n}: Omit<React.ComponentProps<typeof MapLayersContext.Provider>, \"value\"> & {\n defaultTileLayer?: string\n defaultLayerGroups?: string[]\n}) {\n const [tileLayers, setTileLayers] = useState<MapTileLayerOption[]>([])\n const [selectedTileLayer, setSelectedTileLayer] = useState<string>(\n defaultTileLayer || \"\"\n )\n const [layerGroups, setLayerGroups] = useState<MapLayerGroupOption[]>([])\n const [activeLayerGroups, setActiveLayerGroups] =\n useState<string[]>(defaultLayerGroups)\n\n function registerTileLayer(tileLayer: MapTileLayerOption) {\n setTileLayers((prevTileLayers) => {\n if (prevTileLayers.some((layer) => layer.name === tileLayer.name)) {\n return prevTileLayers\n }\n return [...prevTileLayers, tileLayer]\n })\n }\n\n function registerLayerGroup(layerGroup: MapLayerGroupOption) {\n setLayerGroups((prevLayerGroups) => {\n if (\n prevLayerGroups.some((group) => group.name === layerGroup.name)\n ) {\n return prevLayerGroups\n }\n return [...prevLayerGroups, layerGroup]\n })\n }\n\n useEffect(() => {\n // Error: Invalid defaultValue\n if (\n defaultTileLayer &&\n tileLayers.length > 0 &&\n !tileLayers.some((tileLayer) => tileLayer.name === defaultTileLayer)\n ) {\n throw new Error(\n `Invalid defaultTileLayer \"${defaultTileLayer}\" provided to MapLayers. It must match a MapTileLayer's name prop.`\n )\n }\n\n // Set initial selected tile layer\n if (tileLayers.length > 0 && !selectedTileLayer) {\n const validDefaultValue =\n defaultTileLayer &&\n tileLayers.some((layer) => layer.name === defaultTileLayer)\n ? defaultTileLayer\n : tileLayers[0].name\n setSelectedTileLayer(validDefaultValue)\n }\n\n // Error: Invalid defaultActiveLayerGroups\n if (\n defaultLayerGroups.length > 0 &&\n layerGroups.length > 0 &&\n defaultLayerGroups.some(\n (name) => !layerGroups.some((group) => group.name === name)\n )\n ) {\n throw new Error(\n `Invalid defaultLayerGroups value provided to MapLayers. All names must match a MapLayerGroup's name prop.`\n )\n }\n }, [\n tileLayers,\n defaultTileLayer,\n selectedTileLayer,\n layerGroups,\n defaultLayerGroups,\n ])\n\n return (\n <MapLayersContext.Provider\n value={{\n registerTileLayer,\n tileLayers,\n selectedTileLayer,\n setSelectedTileLayer,\n registerLayerGroup,\n layerGroups,\n activeLayerGroups,\n setActiveLayerGroups,\n }}\n {...props}\n />\n )\n}\n\nfunction MapLayersControl({\n tileLayersLabel = \"Map Type\",\n layerGroupsLabel = \"Layers\",\n position = \"top-1 right-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n tileLayersLabel?: string\n layerGroupsLabel?: string\n position?: string\n}) {\n const layersContext = useMapLayersContext()\n if (!layersContext) {\n throw new Error(\"MapLayersControl must be used within MapLayers\")\n }\n\n const {\n tileLayers,\n selectedTileLayer,\n setSelectedTileLayer,\n layerGroups,\n activeLayerGroups,\n setActiveLayerGroups,\n } = layersContext\n\n if (tileLayers.length === 0 && layerGroups.length === 0) {\n return null\n }\n\n function handleLayerGroupToggle(name: string, checked: boolean) {\n setActiveLayerGroups(\n checked\n ? [...activeLayerGroups, name]\n : activeLayerGroups.filter((groupName) => groupName !== name)\n )\n }\n\n const showTileLayersDropdown = tileLayers.length > 1\n const showLayerGroupsDropdown = layerGroups.length > 0\n\n if (!showTileLayersDropdown && !showLayerGroupsDropdown) {\n return null\n }\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger\n render={(triggerProps) => (\n <Button\n {...triggerProps}\n type=\"button\"\n variant=\"secondary\"\n size=\"icon-small\"\n aria-label=\"Select layers\"\n title=\"Select layers\"\n className={cn(\n \"absolute z-1000 border\",\n position,\n className,\n triggerProps.className\n )}\n {...props}\n >\n <LayersIcon />\n </Button>\n )}\n />\n <DropdownMenuContent align=\"end\" className=\"z-1000\">\n {!!showTileLayersDropdown && <>\n <DropdownMenuLabel>{tileLayersLabel}</DropdownMenuLabel>\n <DropdownMenuRadioGroup\n value={selectedTileLayer}\n onValueChange={setSelectedTileLayer}>\n {tileLayers.map((tileLayer) => (\n <DropdownMenuRadioItem\n key={tileLayer.name}\n value={tileLayer.name}>\n {tileLayer.name}\n </DropdownMenuRadioItem>\n ))}\n </DropdownMenuRadioGroup>\n </>}\n {!!showTileLayersDropdown && !!showLayerGroupsDropdown && <DropdownMenuSeparator />}\n {!!showLayerGroupsDropdown && <>\n <DropdownMenuLabel>\n {layerGroupsLabel}\n </DropdownMenuLabel>\n {layerGroups.map((layerGroup) => (\n <DropdownMenuCheckboxItem\n key={layerGroup.name}\n checked={activeLayerGroups.includes(\n layerGroup.name\n )}\n disabled={layerGroup.disabled}\n onCheckedChange={(checked) =>\n handleLayerGroupToggle(\n layerGroup.name,\n checked\n )\n }>\n {layerGroup.name}\n </DropdownMenuCheckboxItem>\n ))}\n </>}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n}\n\nfunction MapMarker({\n icon = <MapPinIcon className=\"size-map-marker-icon text-foreground\" />,\n iconAnchor = [12, 12],\n bgPos,\n popupAnchor,\n tooltipAnchor,\n ariaLabel,\n ref,\n ...props\n}: Omit<MarkerProps, \"icon\"> &\n Pick<\n DivIconOptions,\n \"iconAnchor\" | \"bgPos\" | \"popupAnchor\" | \"tooltipAnchor\"\n > & {\n icon?: ReactNode\n ariaLabel?: string\n ref?: Ref<Marker>\n }) {\n const { L } = useLeaflet()\n const markerRef = useRef<Marker | null>(null)\n const resolvedAriaLabel =\n ariaLabel ??\n (typeof props.title === \"string\" && props.title.trim()\n ? props.title\n : undefined) ??\n \"Map marker\"\n const resolvedTitle =\n typeof props.title === \"string\" && props.title.trim()\n ? props.title\n : resolvedAriaLabel\n const syncMarkerElement = useCallback(\n (marker: Marker | null) => {\n const element = marker?.getElement()\n if (!element) return\n\n element.setAttribute(\"aria-label\", resolvedAriaLabel)\n if (!element.getAttribute(\"title\")) {\n element.setAttribute(\"title\", resolvedAriaLabel)\n }\n },\n [resolvedAriaLabel]\n )\n const handleMarkerRef = useCallback(\n (marker: Marker | null) => {\n markerRef.current = marker\n assignRef(ref, marker)\n syncMarkerElement(marker)\n },\n [ref, syncMarkerElement]\n )\n\n useEffect(() => {\n syncMarkerElement(markerRef.current)\n }, [syncMarkerElement])\n\n if (!L) return null\n\n return (\n <LeafletMarker\n ref={handleMarkerRef}\n icon={L.divIcon({\n // Empty className stops leaflet's default `.leaflet-div-icon`\n // (white background + grey border rectangle) from being applied\n // around our SVG marker.\n className: \"\",\n html: renderToString(icon),\n iconAnchor,\n ...(bgPos ? { bgPos } : {}),\n ...(popupAnchor ? { popupAnchor } : {}),\n ...(tooltipAnchor ? { tooltipAnchor } : {}),\n })}\n riseOnHover\n {...props}\n title={resolvedTitle}\n />\n )\n}\n\nfunction MapMarkerClusterGroup({\n polygonOptions = {\n className: \"fill-foreground stroke-foreground stroke-2\",\n },\n spiderLegPolylineOptions = {\n className: \"fill-foreground stroke-foreground stroke-2\",\n },\n icon,\n ...props\n}: Omit<MarkerClusterGroupProps, \"iconCreateFunction\"> & {\n children: ReactNode\n icon?: (markerCount: number) => ReactNode\n}) {\n const { L } = useLeaflet()\n if (!L) return null\n\n const iconCreateFunction = icon\n ? (cluster: MarkerCluster) => {\n const markerCount = cluster.getChildCount()\n const iconNode = icon(markerCount)\n return L.divIcon({\n html: renderToString(iconNode),\n })\n }\n : undefined\n\n return (\n <LeafletMarkerClusterGroup\n polygonOptions={polygonOptions}\n spiderLegPolylineOptions={spiderLegPolylineOptions}\n iconCreateFunction={iconCreateFunction}\n {...props}\n />\n )\n}\n\nfunction MapCircle({\n className,\n ...props\n}: CircleProps & { ref?: Ref<Circle> }) {\n return (\n <LeafletCircle\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapCircleMarker({\n className,\n ...props\n}: CircleMarkerProps & { ref?: Ref<CircleMarker> }) {\n return (\n <LeafletCircleMarker\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPolyline({\n className,\n ...props\n}: PolylineProps & { ref?: Ref<Polyline> }) {\n return (\n <LeafletPolyline\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPolygon({\n className,\n ...props\n}: PolygonProps & { ref?: Ref<Polygon> }) {\n return (\n <LeafletPolygon\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapRectangle({\n className,\n ...props\n}: RectangleProps & { ref?: Ref<Rectangle> }) {\n return (\n <LeafletRectangle\n className={cn(\n \"fill-foreground stroke-foreground stroke-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapPopup({\n className,\n ...props\n}: Omit<PopupProps, \"content\"> & { ref?: Ref<Popup> }) {\n return (\n <LeafletPopup\n className={cn(\n \"bg-popover text-popover-foreground animate-in fade-out-0 fade-in-0 zoom-out-95 zoom-in-95 slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 font-sans shadow-md outline-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MapTooltip({\n className,\n children,\n side = \"top\",\n sideOffset = 15,\n ...props\n}: Omit<TooltipProps, \"offset\"> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\"\n sideOffset?: number\n ref?: Ref<Tooltip>\n}) {\n const ARROW_POSITION_CLASSES = {\n top: \"bottom-0.5 left-1/2 -translate-x-1/2 translate-y-1/2\",\n bottom: \"top-0.5 left-1/2 -translate-x-1/2 -translate-y-1/2\",\n left: \"right-0.5 top-1/2 translate-x-1/2 -translate-y-1/2\",\n right: \"left-0.5 top-1/2 -translate-x-1/2 -translate-y-1/2\",\n }\n const DEFAULT_OFFSET = {\n top: [0, -sideOffset] satisfies PointExpression,\n bottom: [0, sideOffset] satisfies PointExpression,\n left: [-sideOffset, 0] satisfies PointExpression,\n right: [sideOffset, 0] satisfies PointExpression,\n }\n\n return (\n <LeafletTooltip\n className={cn(\n \"animate-in fade-in-0 zoom-in-95 fade-out-0 zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 w-fit text-xs text-balance transition-opacity\",\n className\n )}\n data-side={side}\n direction={side}\n offset={DEFAULT_OFFSET[side]}\n opacity={1}\n {...props}>\n {children}\n <div\n className={cn(\n \"bg-foreground fill-foreground absolute z-50 size-2.5 rotate-45 rounded-[2px]\",\n ARROW_POSITION_CLASSES[side]\n )}\n />\n </LeafletTooltip>\n )\n}\n\nfunction MapZoomControl({\n position = \"top-1 left-1\",\n className,\n ...props\n}: React.ComponentProps<\"div\"> & { position?: string }) {\n const map = useLeafletMap()\n const [zoomLevel, setZoomLevel] = useState(map.getZoom())\n\n useLeafletMapEvents({\n zoomend: () => {\n setZoomLevel(map.getZoom())\n },\n })\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <ButtonGroup\n orientation=\"vertical\"\n aria-label=\"Zoom controls\"\n {...props}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label=\"Zoom in\"\n title=\"Zoom in\"\n className=\"border\"\n disabled={zoomLevel >= map.getMaxZoom()}\n onClick={() => map.zoomIn()}>\n <PlusIcon />\n </Button>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label=\"Zoom out\"\n title=\"Zoom out\"\n className=\"border\"\n disabled={zoomLevel <= map.getMinZoom()}\n onClick={() => map.zoomOut()}>\n <MinusIcon />\n </Button>\n </ButtonGroup>\n </MapControlContainer>\n )\n}\n\nfunction MapFullscreenControl({\n position = \"top-1 right-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> & { position?: string }) {\n const map = useLeafletMap()\n const [isFullscreen, setIsFullscreen] = useState(false)\n\n const { L } = useLeaflet()\n\n useEffect(() => {\n if (!L) return\n\n const fullscreenControl = new L.Control.FullScreen()\n fullscreenControl.addTo(map)\n\n const container = fullscreenControl.getContainer()\n if (container) {\n container.style.display = \"none\"\n }\n\n const handleEnter = () => setIsFullscreen(true)\n const handleExit = () => setIsFullscreen(false)\n\n map.on(\"enterFullscreen\", handleEnter)\n map.on(\"exitFullscreen\", handleExit)\n\n return () => {\n fullscreenControl.remove()\n map.off(\"enterFullscreen\", handleEnter)\n map.off(\"exitFullscreen\", handleExit)\n }\n }, [L, map])\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n onClick={() => map.toggleFullscreen()}\n aria-label={\n isFullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\"\n }\n title={isFullscreen ? \"Exit fullscreen\" : \"Enter fullscreen\"}\n className=\"border\"\n {...props}>\n {isFullscreen ? <MinimizeIcon /> : <MaximizeIcon />}\n </Button>\n </MapControlContainer>\n )\n}\n\nfunction MapLocatePulseIcon() {\n return (\n <div className=\"absolute -top-1 -right-1 flex size-3 rounded-full\">\n <div className=\"bg-primary absolute inline-flex size-full animate-ping rounded-full opacity-75\" />\n <div className=\"bg-primary relative inline-flex size-3 rounded-full\" />\n </div>\n )\n}\n\nfunction MapLocateControl({\n watch = false,\n onLocationFound,\n onLocationError,\n position = \"right-1 bottom-1\",\n className,\n ...props\n}: React.ComponentProps<\"button\"> &\n Pick<LocateOptions, \"watch\"> & {\n onLocationFound?: (location: LocationEvent) => void\n onLocationError?: (error: ErrorEvent) => void\n } & { position?: string }) {\n const map = useLeafletMap()\n const [isLocating, setIsLocating] = useDebounceLoadingState(200)\n const [location, setLocation] = useState<LatLngExpression | null>(null)\n const hasLocation = location !== null\n\n const startLocating = useCallback(() => {\n setIsLocating(true)\n map.locate({ setView: true, maxZoom: map.getMaxZoom(), watch })\n map.on(\"locationfound\", (location: LocationEvent) => {\n setLocation(location.latlng)\n setIsLocating(false)\n onLocationFound?.(location)\n })\n map.on(\"locationerror\", (error: ErrorEvent) => {\n setLocation(null)\n setIsLocating(false)\n onLocationError?.(error)\n })\n }, [map, onLocationError, onLocationFound, setIsLocating, watch])\n\n const stopLocating = useCallback(() => {\n map.stopLocate()\n map.off(\"locationfound\")\n map.off(\"locationerror\")\n setLocation(null)\n setIsLocating(false)\n }, [map, setIsLocating])\n const trackingHandler = hasLocation ? stopLocating : startLocating\n const trackingTitle = isLocating\n ? \"Locating...\"\n : hasLocation\n ? \"Stop tracking\"\n : \"Track location\"\n const trackingAriaLabel = isLocating\n ? \"Locating...\"\n : hasLocation\n ? \"Stop location tracking\"\n : \"Start location tracking\"\n const locationMarker =\n hasLocation && location ? (\n <MapMarker\n position={location}\n icon={<MapLocatePulseIcon />}\n ariaLabel=\"Current location\"\n />\n ) : null\n\n useEffect(() => () => stopLocating(), [stopLocating])\n\n return (\n <MapControlContainer className={cn(position, className)}>\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant={hasLocation ? \"primary\" : \"secondary\"}\n onClick={trackingHandler}\n disabled={isLocating}\n title={trackingTitle}\n aria-label={trackingAriaLabel}\n className=\"border\"\n {...props}>\n {isLocating ? (\n <LoaderCircleIcon className=\"animate-spin\" />\n ) : (\n <NavigationIcon />\n )}\n </Button>\n {locationMarker}\n </MapControlContainer>\n )\n}\n\nfunction MapSearchControl({\n position = \"top-1 left-1\",\n className,\n ...props\n}: PlaceAutocompleteProps & { position?: string }) {\n return (\n <MapControlContainer className={cn(\"z-1001 w-60\", position, className)}>\n <PlaceAutocomplete {...props} />\n </MapControlContainer>\n )\n}\n\ntype MapDrawShape = \"marker\" | \"polyline\" | \"circle\" | \"rectangle\" | \"polygon\"\ntype MapDrawAction = \"edit\" | \"delete\"\ntype MapDrawMode = MapDrawShape | MapDrawAction | null\ninterface MapDrawContextType {\n readonly featureGroup: L.FeatureGroup | null\n activeMode: MapDrawMode\n setActiveMode: (mode: MapDrawMode) => void\n readonly editControlRef: React.RefObject<EditToolbar.Edit | null>\n readonly deleteControlRef: React.RefObject<EditToolbar.Delete | null>\n readonly layersCount: number\n}\n\nconst MapDrawContext = createContext<MapDrawContextType | null>(null)\n\nfunction useMapDrawContext() {\n return useContext(MapDrawContext)\n}\n\nfunction MapDrawControl({\n onLayersChange,\n position = \"bottom-1 left-1\",\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n onLayersChange?: (layers: L.FeatureGroup) => void\n position?: string\n}) {\n const { L, LeafletDraw } = useLeaflet()\n const map = useLeafletMap()\n const featureGroupRef = useRef<L.FeatureGroup | null>(null)\n const editControlRef = useRef<EditToolbar.Edit | null>(null)\n const deleteControlRef = useRef<EditToolbar.Delete | null>(null)\n const [activeMode, setActiveMode] = useState<MapDrawMode>(null)\n const [layersCount, setLayersCount] = useState(0)\n\n const updateLayersCount = useCallback(() => {\n if (featureGroupRef.current) {\n setLayersCount(featureGroupRef.current.getLayers().length)\n }\n }, [])\n\n const handleDrawCreated = useCallback((event: DrawEvents.Created) => {\n if (!featureGroupRef.current) return\n const { layer } = event\n featureGroupRef.current.addLayer(layer)\n onLayersChange?.(featureGroupRef.current)\n updateLayersCount()\n setActiveMode(null)\n }, [onLayersChange, updateLayersCount])\n\n const handleDrawEditedOrDeleted = useCallback(() => {\n if (!featureGroupRef.current) return\n onLayersChange?.(featureGroupRef.current)\n updateLayersCount()\n setActiveMode(null)\n }, [onLayersChange, updateLayersCount])\n\n useEffect(() => {\n if (!L || !LeafletDraw || !map) return\n\n map.on(\n L.Draw.Event.CREATED,\n handleDrawCreated as L.LeafletEventHandlerFn\n )\n map.on(L.Draw.Event.EDITED, handleDrawEditedOrDeleted)\n map.on(L.Draw.Event.DELETED, handleDrawEditedOrDeleted)\n\n return () => {\n map.off(\n L.Draw.Event.CREATED,\n handleDrawCreated as L.LeafletEventHandlerFn\n )\n map.off(L.Draw.Event.EDITED, handleDrawEditedOrDeleted)\n map.off(L.Draw.Event.DELETED, handleDrawEditedOrDeleted)\n }\n }, [L, LeafletDraw, map, handleDrawCreated, handleDrawEditedOrDeleted])\n\n return (\n <MapDrawContext.Provider\n value={{\n featureGroup: featureGroupRef.current,\n activeMode,\n setActiveMode,\n editControlRef,\n deleteControlRef,\n layersCount,\n }}>\n <LeafletFeatureGroup ref={featureGroupRef} />\n <MapControlContainer className={cn(position, className)}>\n <ButtonGroup orientation=\"vertical\" {...props} />\n </MapControlContainer>\n </MapDrawContext.Provider>\n )\n}\n\nfunction MapDrawShapeButton<T extends Draw.Feature>({\n drawMode,\n createDrawTool,\n className,\n children,\n ...props\n}: React.ComponentProps<\"button\"> & {\n drawMode: MapDrawShape\n createDrawTool: (L: LeafletModule, map: DrawMap) => T\n}) {\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawShapeButton must be used within MapDrawControl\")\n }\n const { L } = useLeaflet()\n const map = useLeafletMap()\n const controlRef = useRef<T | null>(null)\n const { activeMode, setActiveMode } = drawContext\n const isActive = activeMode === drawMode\n\n useEffect(() => {\n if (!L || !isActive) {\n controlRef.current?.disable()\n controlRef.current = null\n return\n }\n const control = createDrawTool(L, map as DrawMap)\n control.enable()\n controlRef.current = control\n return () => {\n control.disable()\n controlRef.current = null\n }\n }, [L, map, isActive, createDrawTool])\n\n function handleClick() {\n setActiveMode(isActive ? null : drawMode)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n aria-label={`Draw ${drawMode}`}\n title={`Draw ${drawMode}`}\n className={cn(\"border\", className)}\n variant={isActive ? \"primary\" : \"secondary\"}\n disabled={activeMode === \"edit\" || activeMode === \"delete\"}\n onClick={handleClick}\n {...props}\n >\n {children}\n </Button>\n )\n}\n\nfunction MapDrawMarker({ ...props }: DrawOptions.MarkerOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"marker\"\n createDrawTool={(L, map) =>\n new L.Draw.Marker(map, {\n icon: L.divIcon({\n className: \"\", // For fixing the moving bug when going in and out the edit mode\n iconAnchor: [12, 12],\n html: renderToString(<MapPinIcon className=\"size-map-marker-icon\" />),\n }),\n ...props,\n })\n }>\n <MapPinIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawPolyline({\n showLength = false,\n drawError = {\n color: \"var(--color-destructive)\",\n },\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.PolylineOptions) {\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n\n return (\n <MapDrawShapeButton\n drawMode=\"polyline\"\n createDrawTool={(L, map) =>\n new L.Draw.Polyline(map, {\n ...(mapDrawHandleIcon\n ? {\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n }\n : {}),\n showLength,\n drawError,\n shapeOptions,\n ...props,\n })\n }>\n <WaypointsIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawCircle({\n showRadius = false,\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.CircleOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"circle\"\n createDrawTool={(L, map) =>\n new L.Draw.Circle(map, {\n showRadius,\n shapeOptions,\n ...props,\n })\n }>\n <CircleIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawRectangle({\n showArea = false,\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.RectangleOptions) {\n return (\n <MapDrawShapeButton\n drawMode=\"rectangle\"\n createDrawTool={(L, map) =>\n new L.Draw.Rectangle(map, {\n showArea,\n shapeOptions,\n ...props,\n })\n }>\n <SquareIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawPolygon({\n drawError = {\n color: \"var(--color-destructive)\",\n },\n shapeOptions = {\n color: \"var(--color-primary)\",\n opacity: 1,\n weight: 2,\n },\n ...props\n}: DrawOptions.PolygonOptions) {\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n\n return (\n <MapDrawShapeButton\n drawMode=\"polygon\"\n createDrawTool={(L, map) =>\n new L.Draw.Polygon(map, {\n ...(mapDrawHandleIcon\n ? {\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n }\n : {}),\n drawError,\n shapeOptions,\n ...props,\n })\n }>\n <PentagonIcon />\n </MapDrawShapeButton>\n )\n}\n\nfunction MapDrawActionButton<T extends EditToolbar.Edit | EditToolbar.Delete>({\n drawAction,\n createDrawTool,\n controlRef,\n className,\n children,\n ...props\n}: React.ComponentProps<\"button\"> & {\n drawAction: MapDrawAction\n createDrawTool: (\n L: LeafletModule,\n map: DrawMap,\n featureGroup: L.FeatureGroup\n ) => T\n controlRef: React.RefObject<T | null>\n}) {\n const drawContext = useMapDrawContext()\n if (!drawContext)\n throw new Error(\n \"MapDrawActionButton must be used within MapDrawControl\"\n )\n\n const { L } = useLeaflet()\n const map = useLeafletMap()\n const { featureGroup, activeMode, setActiveMode, layersCount } = drawContext\n const isActive = activeMode === drawAction\n const hasFeatures = layersCount > 0\n\n useEffect(() => {\n if (!L || !featureGroup || !isActive) {\n controlRef.current?.disable?.()\n controlRef.current = null\n return\n }\n const control = createDrawTool(L, map as DrawMap, featureGroup)\n control.enable?.()\n controlRef.current = control\n return () => {\n control.disable?.()\n controlRef.current = null\n }\n }, [L, map, isActive, featureGroup, createDrawTool, controlRef])\n\n function handleClick() {\n controlRef.current?.save()\n setActiveMode(isActive ? null : drawAction)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n aria-label={`${drawAction === \"edit\" ? \"Edit\" : \"Remove\"} shapes`}\n title={`${drawAction === \"edit\" ? \"Edit\" : \"Remove\"} shapes`}\n variant={isActive ? \"primary\" : \"secondary\"}\n disabled={!hasFeatures}\n onClick={handleClick}\n className={cn(\"border\", className)}\n {...props}\n >\n {children}\n </Button>\n )\n}\n\nfunction MapDrawEdit({\n selectedPathOptions = {\n color: \"var(--color-primary)\",\n fillColor: \"var(--color-primary)\",\n weight: 2,\n },\n ...props\n}: Omit<EditToolbar.EditHandlerOptions, \"featureGroup\">) {\n const { L } = useLeaflet()\n const mapDrawHandleIcon = useMapDrawHandleIcon()\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawEdit must be used within MapDrawControl\")\n }\n\n useEffect(() => {\n if (!L || !mapDrawHandleIcon) return\n\n L.Edit.PolyVerticesEdit.mergeOptions({\n icon: mapDrawHandleIcon,\n touchIcon: mapDrawHandleIcon,\n drawError: {\n color: \"var(--color-destructive)\",\n },\n })\n L.Edit.SimpleShape.mergeOptions({\n moveIcon: mapDrawHandleIcon,\n resizeIcon: mapDrawHandleIcon,\n touchMoveIcon: mapDrawHandleIcon,\n touchResizeIcon: mapDrawHandleIcon,\n })\n L.drawLocal.edit.handlers.edit.tooltip = {\n text: \"Drag handles or markers to edit.\",\n subtext: \"\",\n }\n L.drawLocal.edit.handlers.remove.tooltip = {\n text: \"Click on a shape to remove.\",\n }\n }, [L, mapDrawHandleIcon])\n\n return (\n <MapDrawActionButton\n drawAction=\"edit\"\n controlRef={drawContext.editControlRef}\n createDrawTool={(L, map, featureGroup) =>\n new L.EditToolbar.Edit(map, {\n featureGroup,\n selectedPathOptions,\n ...props,\n })\n }>\n <PenLineIcon />\n </MapDrawActionButton>\n )\n}\n\nfunction MapDrawDelete() {\n const drawContext = useMapDrawContext()\n if (!drawContext) {\n throw new Error(\"MapDrawDelete must be used within MapDrawControl\")\n }\n\n return (\n <MapDrawActionButton\n drawAction=\"delete\"\n controlRef={drawContext.deleteControlRef}\n createDrawTool={(L, map, featureGroup) =>\n new L.EditToolbar.Delete(map, { featureGroup })\n }>\n <Trash2Icon />\n </MapDrawActionButton>\n )\n}\n\nfunction MapDrawUndo({ className, ...props }: React.ComponentProps<\"button\">) {\n const drawContext = useMapDrawContext()\n if (!drawContext)\n throw new Error(\"MapDrawUndo must be used within MapDrawControl\")\n\n const {\n activeMode,\n setActiveMode,\n editControlRef,\n deleteControlRef,\n layersCount,\n } = drawContext\n const isInEditMode = activeMode === \"edit\"\n const isInDeleteMode = activeMode === \"delete\"\n const isActive = (isInEditMode || isInDeleteMode) && layersCount > 0\n\n function handleUndo() {\n if (isInEditMode) {\n editControlRef.current?.revertLayers()\n } else if (isInDeleteMode) {\n deleteControlRef.current?.revertLayers()\n }\n setActiveMode(null)\n }\n\n return (\n <Button\n type=\"button\"\n size=\"icon-small\"\n variant=\"secondary\"\n aria-label={`Undo ${activeMode}`}\n title={`Undo ${activeMode}`}\n onClick={handleUndo}\n disabled={!isActive}\n className={cn(\"border\", className)}\n {...props}>\n <Undo2Icon />\n </Button>\n )\n}\n\nfunction MapControlContainer({\n className,\n ...props\n}: React.ComponentPropsWithoutRef<\"div\">) {\n const { L } = useLeaflet()\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (!L) return\n const element = containerRef.current\n if (!element) return\n L.DomEvent.disableClickPropagation(element)\n L.DomEvent.disableScrollPropagation(element)\n }, [L])\n\n return (\n <div\n ref={containerRef}\n className={cn(\"absolute z-1000 size-fit cursor-default\", className)}\n {...props}\n />\n )\n}\n\nfunction useMapDrawHandleIcon() {\n const { L } = useLeaflet()\n if (!L) return null\n\n return L.divIcon({\n iconAnchor: [8, 8],\n html: renderToString(\n <CircleIcon className=\"fill-primary stroke-primary size-4 transition-transform hover:scale-110\" />\n ),\n })\n}\n\nfunction useLeaflet() {\n const [L, setL] = useState<LeafletModule | null>(null)\n const [LeafletDraw, setLeafletDraw] = useState<LeafletDrawModule | null>(\n null\n )\n\n useEffect(() => {\n async function loadLeaflet() {\n const leaflet = await import(\"leaflet\")\n const leafletFullscreen = await import(\"leaflet.fullscreen\")\n const leafletDraw = await import(\"leaflet-draw\")\n\n const L_object = leaflet.default\n if (L_object.Control && !L_object.Control.FullScreen) {\n L_object.Control.FullScreen =\n leafletFullscreen.default || leafletFullscreen\n }\n\n setLeafletDraw(leafletDraw)\n setL(L_object)\n }\n\n if (L && LeafletDraw) return\n if (typeof window === \"undefined\") return\n\n void loadLeaflet()\n }, [L, LeafletDraw])\n\n return { L, LeafletDraw }\n}\n\nfunction useDebounceLoadingState(delay = 200) {\n const [isLoading, setIsLoading] = useState(false)\n const [showLoading, setShowLoading] = useState(false)\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n useEffect(() => {\n if (isLoading) {\n timeoutRef.current = setTimeout(() => {\n setShowLoading(true)\n }, delay)\n } else {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n timeoutRef.current = null\n }\n setShowLoading(false)\n }\n\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n }\n }, [isLoading, delay])\n\n return [showLoading, setIsLoading] as const\n}\n\nexport {\n Map,\n MapCircle,\n MapCircleMarker,\n MapControlContainer,\n MapDrawCircle,\n MapDrawControl,\n MapDrawDelete,\n MapDrawEdit,\n MapDrawMarker,\n MapDrawPolygon,\n MapDrawPolyline,\n MapDrawRectangle,\n MapDrawUndo,\n MapFeatureGroup,\n MapFullscreenControl,\n MapLayerGroup,\n MapLayers,\n MapLayersControl,\n MapLocateControl,\n MapMarker,\n MapMarkerClusterGroup,\n MapPolygon,\n MapPolyline,\n MapPopup,\n MapRectangle,\n MapSearchControl,\n MapTileLayer,\n MapTooltip,\n MapZoomControl,\n useLeaflet,\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DropdownMenuCheckboxItem } from '
|
|
1
|
+
import { DropdownMenuCheckboxItem } from '../navigation/dropdown-menu';
|
|
2
2
|
import { PlaceAutocompleteProps } from './place-autocomplete';
|
|
3
3
|
import { Circle, CircleMarker, DivIconOptions, DrawOptions, EditToolbar, ErrorEvent, FeatureGroup, LatLngExpression, LayerGroup, Map as LeafletMap, LocateOptions, LocationEvent, Marker, Polygon, Polyline, Popup, Rectangle, TileLayer, Tooltip } from 'leaflet';
|
|
4
4
|
import { default as React, ReactNode, Ref } from 'react';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../../src/components/base/map/map.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEH,wBAAwB,EAO3B,MAAM
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../../src/components/base/map/map.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,34 @@
|
|
|
1
|
-
|
|
1
|
+
import { Menu as MenuPrimitive } from '@base-ui/react/menu';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare function DropdownMenu({ ...props }: MenuPrimitive.Root.Props): React.JSX.Element;
|
|
4
|
+
declare function DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props): React.JSX.Element;
|
|
5
|
+
declare function DropdownMenuTrigger({ ...props }: MenuPrimitive.Trigger.Props): React.JSX.Element;
|
|
6
|
+
declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): React.JSX.Element;
|
|
7
|
+
declare function DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props): React.JSX.Element;
|
|
8
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: MenuPrimitive.GroupLabel.Props & {
|
|
9
|
+
inset?: boolean;
|
|
10
|
+
}): React.JSX.Element;
|
|
11
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: MenuPrimitive.Item.Props & {
|
|
12
|
+
inset?: boolean;
|
|
13
|
+
variant?: 'default' | 'destructive';
|
|
14
|
+
}): React.JSX.Element;
|
|
15
|
+
declare function DropdownMenuLinkItem({ className, inset, variant, ...props }: MenuPrimitive.LinkItem.Props & {
|
|
16
|
+
inset?: boolean;
|
|
17
|
+
variant?: 'default' | 'destructive';
|
|
18
|
+
}): React.JSX.Element;
|
|
19
|
+
declare function DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props): React.JSX.Element;
|
|
20
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: MenuPrimitive.SubmenuTrigger.Props & {
|
|
21
|
+
inset?: boolean;
|
|
22
|
+
}): React.JSX.Element;
|
|
23
|
+
declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): React.JSX.Element;
|
|
24
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }: MenuPrimitive.CheckboxItem.Props & {
|
|
25
|
+
inset?: boolean;
|
|
26
|
+
}): React.JSX.Element;
|
|
27
|
+
declare function DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): React.JSX.Element;
|
|
28
|
+
declare function DropdownMenuRadioItem({ className, children, inset, ...props }: MenuPrimitive.RadioItem.Props & {
|
|
29
|
+
inset?: boolean;
|
|
30
|
+
}): React.JSX.Element;
|
|
31
|
+
declare function DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): React.JSX.Element;
|
|
32
|
+
declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
33
|
+
export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuLinkItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
2
34
|
//# sourceMappingURL=dropdown-menu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../../src/components/base/navigation/dropdown-menu.tsx"],"names":[],"mappings":"AAAA,cAAc
|
|
1
|
+
{"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../../src/components/base/navigation/dropdown-menu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/dropdown-menu-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/dropdown-menu-B_SCGRL2.cjs"),t=require("../../../_shared/action-menu-Cx2xaBjN.cjs"),n=require("../../../_shared/breadcrumbs-C7PI8sxx.cjs"),r=require("../../../_shared/navigation-DAjFLSv5.cjs");exports.ActionMenu=t.t,exports.AsideNavigationMenu=r.s,exports.Breadcrumbs=n.t,exports.DropdownMenu=e.t,exports.DropdownMenuCheckboxItem=e.n,exports.DropdownMenuContent=e.r,exports.DropdownMenuGroup=e.i,exports.DropdownMenuItem=e.a,exports.DropdownMenuLabel=e.o,exports.DropdownMenuLinkItem=e.s,exports.DropdownMenuPortal=e.c,exports.DropdownMenuRadioGroup=e.l,exports.DropdownMenuRadioItem=e.u,exports.DropdownMenuSeparator=e.d,exports.DropdownMenuShortcut=e.f,exports.DropdownMenuSub=e.p,exports.DropdownMenuSubContent=e.m,exports.DropdownMenuSubTrigger=e.h,exports.DropdownMenuTrigger=e.g,exports.LanguageSwitcher=r.c,exports.MenuAction=t.n,exports.NavigationTabs=r.o,exports.OverflowTabBar=r.t,exports.PageHeader=r.i,exports.SectionNav=r.r,exports.SideNav=r.n,exports.TabNavigationMenu=r.a;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as e, c as t, d as n, f as r, g as i, h as a, i as o, l as s, m as c, n as l, o as u, p as d, r as f, s as p, t as m, u as h } from "../../../_shared/dropdown-menu-
|
|
2
|
-
import { n as g, t as _ } from "../../../_shared/action-menu-
|
|
3
|
-
import { t as v } from "../../../_shared/breadcrumbs-
|
|
4
|
-
import { a as y, c as b, i as x, n as S, o as C, r as w, s as T, t as E } from "../../../_shared/navigation-
|
|
1
|
+
import { a as e, c as t, d as n, f as r, g as i, h as a, i as o, l as s, m as c, n as l, o as u, p as d, r as f, s as p, t as m, u as h } from "../../../_shared/dropdown-menu-5fFMhKo4.js";
|
|
2
|
+
import { n as g, t as _ } from "../../../_shared/action-menu-8RN2_Jdr.js";
|
|
3
|
+
import { t as v } from "../../../_shared/breadcrumbs-xNjbIrGc.js";
|
|
4
|
+
import { a as y, c as b, i as x, n as S, o as C, r as w, s as T, t as E } from "../../../_shared/navigation-9DB-vtGI.js";
|
|
5
5
|
export { _ as ActionMenu, T as AsideNavigationMenu, v as Breadcrumbs, m as DropdownMenu, l as DropdownMenuCheckboxItem, f as DropdownMenuContent, o as DropdownMenuGroup, e as DropdownMenuItem, u as DropdownMenuLabel, p as DropdownMenuLinkItem, t as DropdownMenuPortal, s as DropdownMenuRadioGroup, h as DropdownMenuRadioItem, n as DropdownMenuSeparator, r as DropdownMenuShortcut, d as DropdownMenuSub, c as DropdownMenuSubContent, a as DropdownMenuSubTrigger, i as DropdownMenuTrigger, b as LanguageSwitcher, g as MenuAction, C as NavigationTabs, E as OverflowTabBar, x as PageHeader, w as SectionNav, S as SideNav, y as TabNavigationMenu };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/popover-menu-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/popover-menu-DkjPUZ4v.cjs");exports.PopoverMenu=e.t,exports.defaultPopoverMenuStrings=e.n;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "../../../_shared/popover-menu-
|
|
1
|
+
import { n as e, t } from "../../../_shared/popover-menu-DXh14PIu.js";
|
|
2
2
|
export { t as PopoverMenu, e as defaultPopoverMenuStrings };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/spinner-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/spinner-C-yoZUk-.cjs");exports.Spinner=e.t;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../../_shared/spinner-
|
|
1
|
+
import { t as e } from "../../../_shared/spinner-CDVWFN0N.js";
|
|
2
2
|
export { e as Spinner };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/table-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_shared/table-DQA2m2F0.cjs");exports.AvatarCell=e.a,exports.CellValue=e.m,exports.ColumnVisibilityToggle=e.b,exports.CurrencyCell=e.o,exports.DataTable=e._,exports.DataTableActions=e.M,exports.DataTableBody=e.S,exports.DataTableFilterBar=e.g,exports.DataTableHeader=e.x,exports.DataTablePagination=e.h,exports.DataTableToolbar=e.y,exports.DateCell=e.s,exports.DateMetaCell=e.c,exports.DensityToggle=e.t,exports.IdentityCell=e.l,exports.Pagination=e.N,exports.ResourceCell=e.u,exports.StatusCell=e.d,exports.StatusClusterCell=e.f,exports.TableLink=e.p,exports.addSelectionColumn=e.C,exports.createHeaderSelectionCheckbox=e.w,exports.createRowSelectionCheckbox=e.T,exports.defaultDataTableStrings=e.P,exports.getCellClassName=e.E,exports.getDataTableScrollContainer=e.n,exports.getRowClassName=e.D,exports.getSelectedRowsData=e.O,exports.handleColumnVisibilityChange=e.k,exports.handleRowSelectionChange=e.A,exports.handleSortingChange=e.j,exports.mergeDataTableStrings=e.F,exports.useDataTableScrollState=e.r,exports.useDataTableSize=e.v,exports.usePersistentDensity=e.i;
|