commerce-toolkit 0.6.0 → 0.8.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/README.md +4 -4
- package/dist/{accordion-trigger-DFuN29lS.js → accordion-trigger-BldJXbcx.js} +84 -77
- package/dist/accordion-trigger-BldJXbcx.js.map +1 -0
- package/dist/accordion-trigger-CTRtqYib.cjs +2 -0
- package/dist/{accordion-trigger-CpTcclGS.cjs.map → accordion-trigger-CTRtqYib.cjs.map} +1 -1
- package/dist/accordion.cjs +1 -1
- package/dist/accordion.js +1 -1
- package/dist/alert-dismiss-BjoD9zXP.js +130 -0
- package/dist/alert-dismiss-BjoD9zXP.js.map +1 -0
- package/dist/alert-dismiss-eEf1SmhO.cjs +2 -0
- package/dist/alert-dismiss-eEf1SmhO.cjs.map +1 -0
- package/dist/alert.cjs +1 -1
- package/dist/alert.js +1 -1
- package/dist/arrow-left-ANjqfZPv.js +16 -0
- package/dist/arrow-left-ANjqfZPv.js.map +1 -0
- package/dist/arrow-left-Dc7Mn1vO.cjs +7 -0
- package/dist/arrow-left-Dc7Mn1vO.cjs.map +1 -0
- package/dist/arrow-right-Dx01QsJW.cjs +7 -0
- package/dist/arrow-right-Dx01QsJW.cjs.map +1 -0
- package/dist/arrow-right-u33nJuCL.js +16 -0
- package/dist/arrow-right-u33nJuCL.js.map +1 -0
- package/dist/banner-dismiss-ByGLVUf4.cjs +2 -0
- package/dist/banner-dismiss-ByGLVUf4.cjs.map +1 -0
- package/dist/banner-dismiss-DC0spaA2.js +106 -0
- package/dist/banner-dismiss-DC0spaA2.js.map +1 -0
- package/dist/banner.cjs +1 -1
- package/dist/banner.js +2 -3
- package/dist/{blog-post-card-author-VkGle9g8.js → blog-post-card-author-DR_GIlFf.js} +56 -52
- package/dist/blog-post-card-author-DR_GIlFf.js.map +1 -0
- package/dist/blog-post-card-author-LoHfdwYY.cjs +2 -0
- package/dist/blog-post-card-author-LoHfdwYY.cjs.map +1 -0
- package/dist/blog-post-card.cjs +1 -1
- package/dist/blog-post-card.cjs.map +1 -1
- package/dist/blog-post-card.js +38 -30
- package/dist/blog-post-card.js.map +1 -1
- package/dist/breadcrumbs.cjs +2 -0
- package/dist/breadcrumbs.cjs.map +1 -0
- package/dist/breadcrumbs.js +90 -0
- package/dist/breadcrumbs.js.map +1 -0
- package/dist/button-D0viptzn.js +134 -0
- package/dist/button-D0viptzn.js.map +1 -0
- package/dist/button-bfAfHC_O.cjs +2 -0
- package/dist/button-bfAfHC_O.cjs.map +1 -0
- package/dist/button-link-DyOjXaM6.cjs +2 -0
- package/dist/button-link-DyOjXaM6.cjs.map +1 -0
- package/dist/button-link-KFt37w0p.js +32 -0
- package/dist/button-link-KFt37w0p.js.map +1 -0
- package/dist/button-loader-icon-BMHs6rYA.js +23 -0
- package/dist/button-loader-icon-BMHs6rYA.js.map +1 -0
- package/dist/button-loader-icon-C9L2M_EA.cjs +7 -0
- package/dist/button-loader-icon-C9L2M_EA.cjs.map +1 -0
- package/dist/button-radio-group.cjs +1 -1
- package/dist/button-radio-group.cjs.map +1 -1
- package/dist/button-radio-group.js +13 -31
- package/dist/button-radio-group.js.map +1 -1
- package/dist/button.cjs +2 -0
- package/dist/button.cjs.map +1 -0
- package/dist/button.js +5 -0
- package/dist/button.js.map +1 -0
- package/dist/calendar-CRD3qYHr.js +2886 -0
- package/dist/calendar-CRD3qYHr.js.map +1 -0
- package/dist/calendar-Db8gL2Eb.cjs +2 -0
- package/dist/calendar-Db8gL2Eb.cjs.map +1 -0
- package/dist/calendar-dropdown-icon-DUw1T2iH.js +58 -0
- package/dist/calendar-dropdown-icon-DUw1T2iH.js.map +1 -0
- package/dist/calendar-dropdown-icon-Vk-oA3CF.cjs +7 -0
- package/dist/calendar-dropdown-icon-Vk-oA3CF.cjs.map +1 -0
- package/dist/calendar.cjs +2 -0
- package/dist/calendar.cjs.map +1 -0
- package/dist/calendar.js +7 -0
- package/dist/calendar.js.map +1 -0
- package/dist/card-link-CS3zwUEd.cjs +2 -0
- package/dist/card-link-CS3zwUEd.cjs.map +1 -0
- package/dist/{card-link-C48N1y5C.js → card-link-D9mHN6-Z.js} +11 -8
- package/dist/card-link-D9mHN6-Z.js.map +1 -0
- package/dist/card-radio-group.cjs +1 -1
- package/dist/card-radio-group.cjs.map +1 -1
- package/dist/card-radio-group.js +49 -40
- package/dist/card-radio-group.js.map +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.cjs.map +1 -1
- package/dist/card.js +9 -9
- package/dist/card.js.map +1 -1
- package/dist/carousel-next-icon--YmTPwxE.js +1516 -0
- package/dist/carousel-next-icon--YmTPwxE.js.map +1 -0
- package/dist/carousel-next-icon-Bdjj_UKN.cjs +2 -0
- package/dist/carousel-next-icon-Bdjj_UKN.cjs.map +1 -0
- package/dist/carousel.cjs +1 -1
- package/dist/carousel.js +9 -7
- package/dist/{category-card-link-D85RfMpf.js → category-card-link-CdNA4PeK.js} +78 -65
- package/dist/category-card-link-CdNA4PeK.js.map +1 -0
- package/dist/category-card-link-CjIZ-qsb.cjs +7 -0
- package/dist/category-card-link-CjIZ-qsb.cjs.map +1 -0
- package/dist/category-card.cjs +1 -1
- package/dist/category-card.cjs.map +1 -1
- package/dist/category-card.js +4 -4
- package/dist/category-card.js.map +1 -1
- package/dist/checkbox-CsMLn53r.js +9 -0
- package/dist/checkbox-CsMLn53r.js.map +1 -0
- package/dist/checkbox-aVfjxtZs.cjs +2 -0
- package/dist/checkbox-aVfjxtZs.cjs.map +1 -0
- package/dist/checkbox-group.cjs +1 -1
- package/dist/checkbox-group.cjs.map +1 -1
- package/dist/checkbox-group.js +27 -11
- package/dist/checkbox-group.js.map +1 -1
- package/dist/checkbox-icon-C7n5s-1e.js +298 -0
- package/dist/checkbox-icon-C7n5s-1e.js.map +1 -0
- package/dist/checkbox-icon-iPH7tHCy.cjs +2 -0
- package/dist/checkbox-icon-iPH7tHCy.cjs.map +1 -0
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +3 -2
- package/dist/chevron-right-D4mEt25m.cjs +7 -0
- package/dist/chevron-right-D4mEt25m.cjs.map +1 -0
- package/dist/chevron-right-DF8msc7r.js +13 -0
- package/dist/chevron-right-DF8msc7r.js.map +1 -0
- package/dist/chip-icon-BY7YKgGe.cjs +2 -0
- package/dist/chip-icon-BY7YKgGe.cjs.map +1 -0
- package/dist/chip-icon-y9Dl_zV2.js +46 -0
- package/dist/chip-icon-y9Dl_zV2.js.map +1 -0
- package/dist/chip.cjs +1 -1
- package/dist/chip.js +4 -3
- package/dist/circle-alert-BlXmMk3i.cjs +7 -0
- package/dist/circle-alert-BlXmMk3i.cjs.map +1 -0
- package/dist/circle-alert-DAoN8flz.js +17 -0
- package/dist/circle-alert-DAoN8flz.js.map +1 -0
- package/dist/compare-card-reveal-BJuFVrlm.cjs +2 -0
- package/dist/compare-card-reveal-BJuFVrlm.cjs.map +1 -0
- package/dist/compare-card-reveal-COfodCGj.js +277 -0
- package/dist/compare-card-reveal-COfodCGj.js.map +1 -0
- package/dist/compare-card.cjs +1 -1
- package/dist/compare-card.cjs.map +1 -1
- package/dist/compare-card.js +30 -37
- package/dist/compare-card.js.map +1 -1
- package/dist/compare-drawer-submit-BMx3dFzr.js +230 -0
- package/dist/compare-drawer-submit-BMx3dFzr.js.map +1 -0
- package/dist/compare-drawer-submit-CMjU9BdS.cjs +2 -0
- package/dist/compare-drawer-submit-CMjU9BdS.cjs.map +1 -0
- package/dist/compare-drawer.cjs +1 -1
- package/dist/compare-drawer.js +12 -9
- package/dist/components/accordion/accordion.d.ts +3 -4
- package/dist/components/accordion/accordion.d.ts.map +1 -1
- package/dist/components/accordion/primitives/accordion-chevron.d.ts.map +1 -1
- package/dist/components/accordion/primitives/accordion-item.d.ts.map +1 -1
- package/dist/components/accordion/primitives/accordion-title.d.ts.map +1 -1
- package/dist/components/alert/alert.d.ts +7 -7
- package/dist/components/alert/primitives/alert-actions.d.ts.map +1 -1
- package/dist/components/alert/primitives/alert-header.d.ts.map +1 -1
- package/dist/components/alert/primitives/alert-root.d.ts +5 -3
- package/dist/components/alert/primitives/alert-root.d.ts.map +1 -1
- package/dist/components/animated-underline/animated-underline.d.ts +2 -2
- package/dist/components/animated-underline/animated-underline.d.ts.map +1 -1
- package/dist/components/badge/badge.d.ts +14 -11
- package/dist/components/badge/badge.d.ts.map +1 -1
- package/dist/components/badge/index.d.ts +1 -1
- package/dist/components/badge/index.d.ts.map +1 -1
- package/dist/components/banner/banner.d.ts +7 -8
- package/dist/components/banner/banner.d.ts.map +1 -1
- package/dist/components/banner/primitives/banner-content.d.ts +1 -1
- package/dist/components/banner/primitives/banner-content.d.ts.map +1 -1
- package/dist/components/banner/primitives/banner-dismiss.d.ts.map +1 -1
- package/dist/components/banner/primitives/banner-root.d.ts +15 -2
- package/dist/components/banner/primitives/banner-root.d.ts.map +1 -1
- package/dist/components/banner/primitives.d.ts +1 -2
- package/dist/components/banner/primitives.d.ts.map +1 -1
- package/dist/components/blog-post-card/blog-post-card.d.ts +8 -8
- package/dist/components/blog-post-card/primitives/blog-post-card-author.d.ts.map +1 -1
- package/dist/components/blog-post-card/primitives/blog-post-card-fallback.d.ts.map +1 -1
- package/dist/components/blog-post-card/primitives/blog-post-card-image.d.ts.map +1 -1
- package/dist/components/blog-post-card/primitives/blog-post-card-link.d.ts.map +1 -1
- package/dist/components/blog-post-card/primitives/blog-post-card-skeleton.d.ts.map +1 -1
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +32 -0
- package/dist/components/breadcrumbs/breadcrumbs.d.ts.map +1 -0
- package/dist/components/breadcrumbs/index.d.ts +3 -0
- package/dist/components/breadcrumbs/index.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-current.d.ts +4 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-current.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-icon.d.ts +8 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-icon.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-item.d.ts +4 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-item.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-link.d.ts +6 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-link.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-list.d.ts +4 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-list.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-root.d.ts +4 -0
- package/dist/components/breadcrumbs/primitives/breadcrumbs-root.d.ts.map +1 -0
- package/dist/components/breadcrumbs/primitives.d.ts +7 -0
- package/dist/components/breadcrumbs/primitives.d.ts.map +1 -0
- package/dist/components/button/button.d.ts +38 -27
- package/dist/components/button/button.d.ts.map +1 -1
- package/dist/components/button/index.d.ts +2 -1
- package/dist/components/button/index.d.ts.map +1 -1
- package/dist/components/button/primitives/button-loader-icon.d.ts +8 -0
- package/dist/components/button/primitives/button-loader-icon.d.ts.map +1 -0
- package/dist/components/button/primitives.d.ts +2 -0
- package/dist/components/button/primitives.d.ts.map +1 -0
- package/dist/components/button-link/button-link.d.ts +6 -29
- package/dist/components/button-link/button-link.d.ts.map +1 -1
- package/dist/components/button-radio-group/button-radio-group.d.ts +1 -1
- package/dist/components/button-radio-group/primitives/button-radio-group-item.d.ts.map +1 -1
- package/dist/components/button-radio-group/primitives/button-radio-group-root.d.ts.map +1 -1
- package/dist/components/calendar/calendar.d.ts +24 -25
- package/dist/components/calendar/calendar.d.ts.map +1 -1
- package/dist/components/calendar/index.d.ts +1 -0
- package/dist/components/calendar/index.d.ts.map +1 -1
- package/dist/components/calendar/primitives/calendar-dropdown-icon.d.ts +8 -0
- package/dist/components/calendar/primitives/calendar-dropdown-icon.d.ts.map +1 -0
- package/dist/components/calendar/primitives/calendar-next-icon.d.ts +8 -0
- package/dist/components/calendar/primitives/calendar-next-icon.d.ts.map +1 -0
- package/dist/components/calendar/primitives/calendar-prev-icon.d.ts +8 -0
- package/dist/components/calendar/primitives/calendar-prev-icon.d.ts.map +1 -0
- package/dist/components/calendar/primitives.d.ts +4 -0
- package/dist/components/calendar/primitives.d.ts.map +1 -0
- package/dist/components/card/card.d.ts +13 -9
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/primitives/card-root.d.ts +2 -2
- package/dist/components/card/primitives/card-root.d.ts.map +1 -1
- package/dist/components/card-radio-group/card-radio-group.d.ts +4 -2
- package/dist/components/card-radio-group/card-radio-group.d.ts.map +1 -1
- package/dist/components/card-radio-group/primitives/card-radio-group-image.d.ts.map +1 -1
- package/dist/components/card-radio-group/primitives/card-radio-group-item.d.ts.map +1 -1
- package/dist/components/card-radio-group/primitives/card-radio-group-label.d.ts.map +1 -1
- package/dist/components/card-radio-group/primitives/card-radio-group-thumbnail.d.ts.map +1 -1
- package/dist/components/carousel/carousel.d.ts +14 -6
- package/dist/components/carousel/carousel.d.ts.map +1 -1
- package/dist/components/carousel/primitives/carousel-next-icon.d.ts +8 -0
- package/dist/components/carousel/primitives/carousel-next-icon.d.ts.map +1 -0
- package/dist/components/carousel/primitives/carousel-next.d.ts.map +1 -1
- package/dist/components/carousel/primitives/carousel-prev-icon.d.ts +8 -0
- package/dist/components/carousel/primitives/carousel-prev-icon.d.ts.map +1 -0
- package/dist/components/carousel/primitives/carousel-prev.d.ts.map +1 -1
- package/dist/components/carousel/primitives/carousel-scrollbar.d.ts +1 -1
- package/dist/components/carousel/primitives/carousel-scrollbar.d.ts.map +1 -1
- package/dist/components/carousel/primitives.d.ts +2 -0
- package/dist/components/carousel/primitives.d.ts.map +1 -1
- package/dist/components/category-card/category-card.d.ts +19 -10
- package/dist/components/category-card/category-card.d.ts.map +1 -1
- package/dist/components/category-card/primitives/category-card-fallback.d.ts.map +1 -1
- package/dist/components/category-card/primitives/category-card-icon.d.ts +7 -4
- package/dist/components/category-card/primitives/category-card-icon.d.ts.map +1 -1
- package/dist/components/category-card/primitives/category-card-link.d.ts.map +1 -1
- package/dist/components/category-card/primitives/category-card-thumbnail.d.ts.map +1 -1
- package/dist/components/checkbox/checkbox.d.ts +7 -5
- package/dist/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/components/checkbox/primitives/checkbox-icon.d.ts +8 -0
- package/dist/components/checkbox/primitives/checkbox-icon.d.ts.map +1 -0
- package/dist/components/checkbox/primitives/checkbox-root.d.ts.map +1 -1
- package/dist/components/checkbox/primitives.d.ts +1 -0
- package/dist/components/checkbox/primitives.d.ts.map +1 -1
- package/dist/components/checkbox-group/checkbox-group.d.ts +10 -1
- package/dist/components/checkbox-group/checkbox-group.d.ts.map +1 -1
- package/dist/components/checkbox-group/primitives/checkbox-group-checkbox.d.ts +5 -0
- package/dist/components/checkbox-group/primitives/checkbox-group-checkbox.d.ts.map +1 -0
- package/dist/components/checkbox-group/primitives/checkbox-group-field-item.d.ts +5 -0
- package/dist/components/checkbox-group/primitives/checkbox-group-field-item.d.ts.map +1 -0
- package/dist/components/checkbox-group/primitives/checkbox-group-label.d.ts +5 -0
- package/dist/components/checkbox-group/primitives/checkbox-group-label.d.ts.map +1 -0
- package/dist/components/checkbox-group/primitives.d.ts +3 -1
- package/dist/components/checkbox-group/primitives.d.ts.map +1 -1
- package/dist/components/chip/chip.d.ts +10 -6
- package/dist/components/chip/chip.d.ts.map +1 -1
- package/dist/components/chip/primitives/chip-button.d.ts +5 -3
- package/dist/components/chip/primitives/chip-button.d.ts.map +1 -1
- package/dist/components/chip/primitives/chip-icon.d.ts +8 -0
- package/dist/components/chip/primitives/chip-icon.d.ts.map +1 -0
- package/dist/components/chip/primitives/chip-root.d.ts.map +1 -1
- package/dist/components/chip/primitives.d.ts +1 -0
- package/dist/components/chip/primitives.d.ts.map +1 -1
- package/dist/components/compare-card/compare-card.d.ts +11 -25
- package/dist/components/compare-card/compare-card.d.ts.map +1 -1
- package/dist/components/compare-card/primitives/compare-card-product-card.d.ts +5 -0
- package/dist/components/compare-card/primitives/compare-card-product-card.d.ts.map +1 -0
- package/dist/components/compare-card/primitives/compare-card-reveal.d.ts +5 -0
- package/dist/components/compare-card/primitives/compare-card-reveal.d.ts.map +1 -0
- package/dist/components/compare-card/primitives.d.ts +3 -7
- package/dist/components/compare-card/primitives.d.ts.map +1 -1
- package/dist/components/compare-drawer/compare-drawer.d.ts +16 -3
- package/dist/components/compare-drawer/compare-drawer.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-fallback.d.ts +2 -2
- package/dist/components/compare-drawer/primitives/compare-drawer-fallback.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-image.d.ts +2 -2
- package/dist/components/compare-drawer/primitives/compare-drawer-image.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-item.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-link.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-remove-icon.d.ts +8 -0
- package/dist/components/compare-drawer/primitives/compare-drawer-remove-icon.d.ts.map +1 -0
- package/dist/components/compare-drawer/primitives/compare-drawer-remove.d.ts.map +1 -1
- package/dist/components/compare-drawer/primitives/compare-drawer-submit-icon.d.ts +9 -0
- package/dist/components/compare-drawer/primitives/compare-drawer-submit-icon.d.ts.map +1 -0
- package/dist/components/compare-drawer/primitives/compare-drawer-submit.d.ts +10 -0
- package/dist/components/compare-drawer/primitives/compare-drawer-submit.d.ts.map +1 -0
- package/dist/components/compare-drawer/primitives.d.ts +3 -0
- package/dist/components/compare-drawer/primitives.d.ts.map +1 -1
- package/dist/components/counter/counter.d.ts +19 -11
- package/dist/components/counter/counter.d.ts.map +1 -1
- package/dist/components/counter/primitives/counter-decrease-icon.d.ts +8 -0
- package/dist/components/counter/primitives/counter-decrease-icon.d.ts.map +1 -0
- package/dist/components/counter/primitives/counter-decrease.d.ts.map +1 -1
- package/dist/components/counter/primitives/counter-increase-icon.d.ts +8 -0
- package/dist/components/counter/primitives/counter-increase-icon.d.ts.map +1 -0
- package/dist/components/counter/primitives/counter-increase.d.ts.map +1 -1
- package/dist/components/counter/primitives/counter-input.d.ts.map +1 -1
- package/dist/components/counter/primitives/counter-root.d.ts.map +1 -1
- package/dist/components/counter/primitives.d.ts +2 -0
- package/dist/components/counter/primitives.d.ts.map +1 -1
- package/dist/components/cursor-pagination/cursor-pagination.d.ts +23 -6
- package/dist/components/cursor-pagination/cursor-pagination.d.ts.map +1 -1
- package/dist/components/cursor-pagination/primitives/cursor-pagination-link.d.ts.map +1 -1
- package/dist/components/cursor-pagination/primitives/cursor-pagination-next-icon.d.ts +8 -0
- package/dist/components/cursor-pagination/primitives/cursor-pagination-next-icon.d.ts.map +1 -0
- package/dist/components/cursor-pagination/primitives/cursor-pagination-previous-icon.d.ts +8 -0
- package/dist/components/cursor-pagination/primitives/cursor-pagination-previous-icon.d.ts.map +1 -0
- package/dist/components/cursor-pagination/primitives/cursor-pagination-root.d.ts +1 -1
- package/dist/components/cursor-pagination/primitives/cursor-pagination-root.d.ts.map +1 -1
- package/dist/components/cursor-pagination/primitives/cursor-pagination-skeleton.d.ts.map +1 -1
- package/dist/components/cursor-pagination/primitives.d.ts +2 -0
- package/dist/components/cursor-pagination/primitives.d.ts.map +1 -1
- package/dist/components/date-picker/date-picker.d.ts +12 -5
- package/dist/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/components/date-picker/primitives/date-picker-calendar.d.ts +4 -0
- package/dist/components/date-picker/primitives/date-picker-calendar.d.ts.map +1 -0
- package/dist/components/date-picker/primitives/date-picker-content.d.ts.map +1 -1
- package/dist/components/date-picker/primitives/date-picker-icon.d.ts +8 -0
- package/dist/components/date-picker/primitives/date-picker-icon.d.ts.map +1 -0
- package/dist/components/date-picker/primitives/date-picker-input.d.ts +9 -0
- package/dist/components/date-picker/primitives/date-picker-input.d.ts.map +1 -0
- package/dist/components/date-picker/primitives/date-picker-portal.d.ts.map +1 -1
- package/dist/components/date-picker/primitives/date-picker-root.d.ts.map +1 -1
- package/dist/components/date-picker/primitives/date-picker-trigger.d.ts.map +1 -1
- package/dist/components/date-picker/primitives.d.ts +3 -0
- package/dist/components/date-picker/primitives.d.ts.map +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +7 -3
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
- package/dist/components/dropdown-menu/primitives/dropdown-menu-checkbox-indicator.d.ts +8 -0
- package/dist/components/dropdown-menu/primitives/dropdown-menu-checkbox-indicator.d.ts.map +1 -0
- package/dist/components/dropdown-menu/primitives/dropdown-menu-checkbox-item.d.ts +6 -2
- package/dist/components/dropdown-menu/primitives/dropdown-menu-checkbox-item.d.ts.map +1 -1
- package/dist/components/dropdown-menu/primitives/dropdown-menu-root.d.ts.map +1 -1
- package/dist/components/dropdown-menu/primitives/dropdown-menu-sub-indicator.d.ts +8 -0
- package/dist/components/dropdown-menu/primitives/dropdown-menu-sub-indicator.d.ts.map +1 -0
- package/dist/components/dropdown-menu/primitives/dropdown-menu-sub-trigger.d.ts +6 -2
- package/dist/components/dropdown-menu/primitives/dropdown-menu-sub-trigger.d.ts.map +1 -1
- package/dist/components/dropdown-menu/primitives/dropdown-menu-trigger-icon.d.ts +8 -0
- package/dist/components/dropdown-menu/primitives/dropdown-menu-trigger-icon.d.ts.map +1 -0
- package/dist/components/dropdown-menu/primitives.d.ts +3 -0
- package/dist/components/dropdown-menu/primitives.d.ts.map +1 -1
- package/dist/components/favorite/favorite.d.ts +11 -6
- package/dist/components/favorite/favorite.d.ts.map +1 -1
- package/dist/components/favorite/primitives/favorite-heart.d.ts +6 -5
- package/dist/components/favorite/primitives/favorite-heart.d.ts.map +1 -1
- package/dist/components/favorite/primitives/favorite-root.d.ts.map +1 -1
- package/dist/components/field/primitives/field-error-icon.d.ts +8 -0
- package/dist/components/field/primitives/field-error-icon.d.ts.map +1 -0
- package/dist/components/field/primitives/field-error.d.ts +8 -3
- package/dist/components/field/primitives/field-error.d.ts.map +1 -1
- package/dist/components/field/primitives/field-separator.d.ts.map +1 -1
- package/dist/components/field/primitives.d.ts +1 -0
- package/dist/components/field/primitives.d.ts.map +1 -1
- package/dist/components/file-input/file-input.d.ts +10 -1
- package/dist/components/file-input/file-input.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-dropzone.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-label.d.ts +5 -0
- package/dist/components/file-input/primitives/file-input-label.d.ts.map +1 -0
- package/dist/components/file-input/primitives/file-input-name.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-progress.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-remove-icon.d.ts +8 -0
- package/dist/components/file-input/primitives/file-input-remove-icon.d.ts.map +1 -0
- package/dist/components/file-input/primitives/file-input-remove.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-root.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-trigger.d.ts.map +1 -1
- package/dist/components/file-input/primitives/file-input-upload-icon.d.ts +8 -0
- package/dist/components/file-input/primitives/file-input-upload-icon.d.ts.map +1 -0
- package/dist/components/file-input/primitives.d.ts +3 -0
- package/dist/components/file-input/primitives.d.ts.map +1 -1
- package/dist/components/form-status/form-status.d.ts +12 -6
- package/dist/components/form-status/form-status.d.ts.map +1 -1
- package/dist/components/form-status/primitives/form-status-error-icon.d.ts +8 -0
- package/dist/components/form-status/primitives/form-status-error-icon.d.ts.map +1 -0
- package/dist/components/form-status/primitives/form-status-root.d.ts +6 -3
- package/dist/components/form-status/primitives/form-status-root.d.ts.map +1 -1
- package/dist/components/form-status/primitives/form-status-success-icon.d.ts +8 -0
- package/dist/components/form-status/primitives/form-status-success-icon.d.ts.map +1 -0
- package/dist/components/form-status/primitives.d.ts +2 -0
- package/dist/components/form-status/primitives.d.ts.map +1 -1
- package/dist/components/icon/icon.d.ts +1 -1
- package/dist/components/icon/icon.d.ts.map +1 -1
- package/dist/components/icon/primitives/icon-skeleton.d.ts.map +1 -1
- package/dist/components/input/input.d.ts +7 -4
- package/dist/components/input/input.d.ts.map +1 -1
- package/dist/components/input/primitives/input-field.d.ts.map +1 -1
- package/dist/components/input/primitives/input-prepend-icon.d.ts +8 -0
- package/dist/components/input/primitives/input-prepend-icon.d.ts.map +1 -0
- package/dist/components/input/primitives/input-prepend.d.ts.map +1 -1
- package/dist/components/input/primitives/input-root.d.ts.map +1 -1
- package/dist/components/input/primitives.d.ts +1 -0
- package/dist/components/input/primitives.d.ts.map +1 -1
- package/dist/components/logo/primitives/logo-image.d.ts.map +1 -1
- package/dist/components/logo/primitives/logo-skeleton.d.ts.map +1 -1
- package/dist/components/logo/primitives/logo-text.d.ts.map +1 -1
- package/dist/components/modal/modal.d.ts +2 -2
- package/dist/components/modal/primitives/modal-overlay.d.ts.map +1 -1
- package/dist/components/modal/primitives/modal-portal.d.ts.map +1 -1
- package/dist/components/modal/primitives/modal-root.d.ts.map +1 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts +5 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
- package/dist/components/navigation-menu/primitives/navigation-menu-list.d.ts.map +1 -1
- package/dist/components/navigation-menu/primitives/navigation-menu-root.d.ts +2 -2
- package/dist/components/navigation-menu/primitives/navigation-menu-root.d.ts.map +1 -1
- package/dist/components/offset-pagination/offset-pagination.d.ts +7 -4
- package/dist/components/offset-pagination/offset-pagination.d.ts.map +1 -1
- package/dist/components/offset-pagination/primitives/offset-pagination-link.d.ts.map +1 -1
- package/dist/components/offset-pagination/primitives/offset-pagination-root.d.ts +1 -1
- package/dist/components/offset-pagination/primitives/offset-pagination-root.d.ts.map +1 -1
- package/dist/components/price/price.d.ts +4 -4
- package/dist/components/product-card/primitives/product-card-actions.d.ts +4 -0
- package/dist/components/product-card/primitives/{product-card-content.d.ts.map → product-card-actions.d.ts.map} +1 -1
- package/dist/components/product-card/primitives/product-card-cart-button.d.ts +5 -0
- package/dist/components/product-card/primitives/product-card-cart-button.d.ts.map +1 -0
- package/dist/components/product-card/primitives/product-card-cart-link.d.ts +5 -0
- package/dist/components/product-card/primitives/product-card-cart-link.d.ts.map +1 -0
- package/dist/components/product-card/primitives/product-card-compare.d.ts +5 -2
- package/dist/components/product-card/primitives/product-card-compare.d.ts.map +1 -1
- package/dist/components/product-card/primitives/product-card-details.d.ts.map +1 -1
- package/dist/components/product-card/primitives/product-card-form.d.ts +4 -0
- package/dist/components/product-card/primitives/product-card-form.d.ts.map +1 -0
- package/dist/components/product-card/primitives/product-card-image.d.ts.map +1 -1
- package/dist/components/product-card/primitives/product-card-input.d.ts +4 -0
- package/dist/components/product-card/primitives/product-card-input.d.ts.map +1 -0
- package/dist/components/product-card/primitives/product-card-price.d.ts.map +1 -1
- package/dist/components/product-card/primitives/product-card-rating.d.ts +5 -0
- package/dist/components/product-card/primitives/product-card-rating.d.ts.map +1 -0
- package/dist/components/product-card/primitives.d.ts +6 -3
- package/dist/components/product-card/primitives.d.ts.map +1 -1
- package/dist/components/product-card/product-card.d.ts +38 -7
- package/dist/components/product-card/product-card.d.ts.map +1 -1
- package/dist/components/radio-group/primitives/radio-group-field-item.d.ts +5 -0
- package/dist/components/radio-group/primitives/radio-group-field-item.d.ts.map +1 -0
- package/dist/components/radio-group/primitives/radio-group-indicator.d.ts.map +1 -1
- package/dist/components/radio-group/primitives/radio-group-item.d.ts.map +1 -1
- package/dist/components/radio-group/primitives/radio-group-label.d.ts +5 -0
- package/dist/components/radio-group/primitives/radio-group-label.d.ts.map +1 -0
- package/dist/components/radio-group/primitives/radio-group-root.d.ts.map +1 -1
- package/dist/components/radio-group/primitives.d.ts +2 -0
- package/dist/components/radio-group/primitives.d.ts.map +1 -1
- package/dist/components/radio-group/radio-group.d.ts +4 -4
- package/dist/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/components/range-input/primitives/range-input-button.d.ts +5 -0
- package/dist/components/range-input/primitives/range-input-button.d.ts.map +1 -0
- package/dist/components/range-input/primitives/range-input-field.d.ts +5 -0
- package/dist/components/range-input/primitives/range-input-field.d.ts.map +1 -0
- package/dist/components/range-input/primitives/range-input-icon.d.ts +8 -0
- package/dist/components/range-input/primitives/range-input-icon.d.ts.map +1 -0
- package/dist/components/range-input/primitives/range-input-root.d.ts.map +1 -1
- package/dist/components/range-input/primitives.d.ts +3 -0
- package/dist/components/range-input/primitives.d.ts.map +1 -1
- package/dist/components/range-input/range-input.d.ts +14 -6
- package/dist/components/range-input/range-input.d.ts.map +1 -1
- package/dist/components/rating/primitives/rating-root.d.ts.map +1 -1
- package/dist/components/rating/primitives/rating-stars.d.ts +3 -1
- package/dist/components/rating/primitives/rating-stars.d.ts.map +1 -1
- package/dist/components/rating/primitives.d.ts +1 -1
- package/dist/components/rating/primitives.d.ts.map +1 -1
- package/dist/components/rating/rating.d.ts +3 -3
- package/dist/components/reveal/primitives/reveal-controls.d.ts.map +1 -1
- package/dist/components/reveal/primitives/reveal-root.d.ts.map +1 -1
- package/dist/components/reveal/primitives/reveal-trigger.d.ts.map +1 -1
- package/dist/components/reveal/primitives/reveal-viewport.d.ts.map +1 -1
- package/dist/components/scroll-area/primitives/scroll-area-bar.d.ts.map +1 -1
- package/dist/components/scroll-area/primitives/scroll-area-thumb.d.ts.map +1 -1
- package/dist/components/scroll-area/primitives/scroll-area-viewport.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area.d.ts +1 -1
- package/dist/components/select/primitives/select-content.d.ts.map +1 -1
- package/dist/components/select/primitives/select-icon.d.ts.map +1 -1
- package/dist/components/select/primitives/select-item-text.d.ts.map +1 -1
- package/dist/components/select/primitives/select-item.d.ts.map +1 -1
- package/dist/components/select/primitives/select-portal.d.ts.map +1 -1
- package/dist/components/select/primitives/select-scroll-down-button.d.ts.map +1 -1
- package/dist/components/select/primitives/select-scroll-down-icon.d.ts +8 -0
- package/dist/components/select/primitives/select-scroll-down-icon.d.ts.map +1 -0
- package/dist/components/select/primitives/select-scroll-up-button.d.ts.map +1 -1
- package/dist/components/select/primitives/select-scroll-up-icon.d.ts +8 -0
- package/dist/components/select/primitives/select-scroll-up-icon.d.ts.map +1 -0
- package/dist/components/select/primitives/select-trigger-icon.d.ts +8 -0
- package/dist/components/select/primitives/select-trigger-icon.d.ts.map +1 -0
- package/dist/components/select/primitives/select-trigger.d.ts.map +1 -1
- package/dist/components/select/primitives/select-value.d.ts.map +1 -1
- package/dist/components/select/primitives/select-viewport.d.ts.map +1 -1
- package/dist/components/select/primitives.d.ts +3 -0
- package/dist/components/select/primitives.d.ts.map +1 -1
- package/dist/components/select/select.d.ts +29 -18
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-body.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-close-button.d.ts +10 -0
- package/dist/components/side-panel/primitives/side-panel-close-button.d.ts.map +1 -0
- package/dist/components/side-panel/primitives/side-panel-close.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-content.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-overlay.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-root.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-scroll-area.d.ts +5 -0
- package/dist/components/side-panel/primitives/side-panel-scroll-area.d.ts.map +1 -0
- package/dist/components/side-panel/primitives/side-panel-title.d.ts.map +1 -1
- package/dist/components/side-panel/primitives/side-panel-trigger.d.ts.map +1 -1
- package/dist/components/side-panel/primitives.d.ts +2 -0
- package/dist/components/side-panel/primitives.d.ts.map +1 -1
- package/dist/components/side-panel/side-panel.d.ts.map +1 -1
- package/dist/components/skeleton/primitives/skeleton-box.d.ts +1 -1
- package/dist/components/skeleton/primitives/skeleton-box.d.ts.map +1 -1
- package/dist/components/spinner/spinner.d.ts +8 -5
- package/dist/components/spinner/spinner.d.ts.map +1 -1
- package/dist/components/swatch-radio-group/primitives/swatch-radio-group-color.d.ts.map +1 -1
- package/dist/components/swatch-radio-group/primitives/swatch-radio-group-indicator-icon.d.ts +8 -0
- package/dist/components/swatch-radio-group/primitives/swatch-radio-group-indicator-icon.d.ts.map +1 -0
- package/dist/components/swatch-radio-group/primitives/swatch-radio-group-item.d.ts.map +1 -1
- package/dist/components/swatch-radio-group/primitives/swatch-radio-group-thumbnail.d.ts.map +1 -1
- package/dist/components/swatch-radio-group/primitives.d.ts +1 -0
- package/dist/components/swatch-radio-group/primitives.d.ts.map +1 -1
- package/dist/components/swatch-radio-group/swatch-radio-group.d.ts +9 -3
- package/dist/components/swatch-radio-group/swatch-radio-group.d.ts.map +1 -1
- package/dist/components/tabs/primitives/tabs-content.d.ts.map +1 -1
- package/dist/components/tabs/primitives/tabs-trigger.d.ts.map +1 -1
- package/dist/components/tabs/tabs.d.ts +8 -8
- package/dist/components/textarea/textarea.d.ts.map +1 -1
- package/dist/components/toaster/toaster.d.ts +2 -3
- package/dist/components/toaster/toaster.d.ts.map +1 -1
- package/dist/components/toggle-group/primitives/toggle-group-item.d.ts.map +1 -1
- package/dist/components/toggle-group/toggle-group.d.ts +2 -2
- package/dist/components/toggle-group/toggle-group.d.ts.map +1 -1
- package/dist/counter-input-9RK1vA_J.cjs +12 -0
- package/dist/counter-input-9RK1vA_J.cjs.map +1 -0
- package/dist/counter-input-DVHLdLel.js +169 -0
- package/dist/counter-input-DVHLdLel.js.map +1 -0
- package/dist/counter.cjs +1 -1
- package/dist/counter.js +5 -3
- package/dist/cursor-pagination-next-icon-BEF2WwXW.cjs +2 -0
- package/dist/cursor-pagination-next-icon-BEF2WwXW.cjs.map +1 -0
- package/dist/cursor-pagination-next-icon-fbe6Vsf_.js +96 -0
- package/dist/cursor-pagination-next-icon-fbe6Vsf_.js.map +1 -0
- package/dist/cursor-pagination.cjs +1 -1
- package/dist/cursor-pagination.cjs.map +1 -1
- package/dist/cursor-pagination.js +23 -19
- package/dist/cursor-pagination.js.map +1 -1
- package/dist/date-picker.cjs +1 -1
- package/dist/date-picker.cjs.map +1 -1
- package/dist/date-picker.js +100 -67
- package/dist/date-picker.js.map +1 -1
- package/dist/dropdown-menu-trigger-icon-C7Y_Yvc3.js +1138 -0
- package/dist/dropdown-menu-trigger-icon-C7Y_Yvc3.js.map +1 -0
- package/dist/dropdown-menu-trigger-icon-Ct3A6NVj.cjs +7 -0
- package/dist/dropdown-menu-trigger-icon-Ct3A6NVj.cjs.map +1 -0
- package/dist/dropdown-menu.cjs +1 -1
- package/dist/dropdown-menu.js +16 -13
- package/dist/favorite-heart-BCoB2b6L.js +76 -0
- package/dist/favorite-heart-BCoB2b6L.js.map +1 -0
- package/dist/favorite-heart-D4GasQqr.cjs +2 -0
- package/dist/favorite-heart-D4GasQqr.cjs.map +1 -0
- package/dist/favorite.cjs +1 -1
- package/dist/favorite.js +1 -1
- package/dist/field-error-BXJy7xv9.js +120 -0
- package/dist/field-error-BXJy7xv9.js.map +1 -0
- package/dist/field-error-CxV_C7ld.cjs +2 -0
- package/dist/field-error-CxV_C7ld.cjs.map +1 -0
- package/dist/field-item-CeGEsbFj.cjs +2 -0
- package/dist/field-item-CeGEsbFj.cjs.map +1 -0
- package/dist/field-item-DY-IZNXs.js +31 -0
- package/dist/field-item-DY-IZNXs.js.map +1 -0
- package/dist/field-label-BKlrU6b5.js +10 -0
- package/dist/field-label-BKlrU6b5.js.map +1 -0
- package/dist/field-label-YLyRO4cQ.cjs +2 -0
- package/dist/field-label-YLyRO4cQ.cjs.map +1 -0
- package/dist/field.cjs +1 -1
- package/dist/field.js +13 -10
- package/dist/field.js.map +1 -1
- package/dist/file-input.cjs +1 -1
- package/dist/file-input.cjs.map +1 -1
- package/dist/file-input.js +292 -240
- package/dist/file-input.js.map +1 -1
- package/dist/form-status.cjs +1 -1
- package/dist/form-status.cjs.map +1 -1
- package/dist/form-status.js +57 -22
- package/dist/form-status.js.map +1 -1
- package/dist/icon.cjs +1 -1
- package/dist/icon.cjs.map +1 -1
- package/dist/icon.js +8 -7
- package/dist/icon.js.map +1 -1
- package/dist/index-CQhYMnjT.js +35 -0
- package/dist/index-CQhYMnjT.js.map +1 -0
- package/dist/index-iAvn1gzj.cjs +2 -0
- package/dist/index-iAvn1gzj.cjs.map +1 -0
- package/dist/index.cjs +2 -27
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +990 -3822
- package/dist/index.js.map +1 -1
- package/dist/input-BFqWDVd1.cjs +2 -0
- package/dist/input-BFqWDVd1.cjs.map +1 -0
- package/dist/input-Cq1AD4gY.js +12 -0
- package/dist/input-Cq1AD4gY.js.map +1 -0
- package/dist/input-prepend-icon-BIeRiL1I.js +73 -0
- package/dist/input-prepend-icon-BIeRiL1I.js.map +1 -0
- package/dist/input-prepend-icon-Drre9QwU.cjs +2 -0
- package/dist/input-prepend-icon-Drre9QwU.cjs.map +1 -0
- package/dist/input.cjs +1 -1
- package/dist/input.cjs.map +1 -1
- package/dist/input.js +5 -69
- package/dist/input.js.map +1 -1
- package/dist/{label-C2HI4Bjj.js → label-B_fjofdS.js} +3 -3
- package/dist/label-B_fjofdS.js.map +1 -0
- package/dist/label-hiiJ-Jpk.cjs +2 -0
- package/dist/{label-CP55xclp.cjs.map → label-hiiJ-Jpk.cjs.map} +1 -1
- package/dist/logo-skeleton-BHQuIAfk.cjs +2 -0
- package/dist/logo-skeleton-BHQuIAfk.cjs.map +1 -0
- package/dist/logo-skeleton-D55dECso.js +60 -0
- package/dist/logo-skeleton-D55dECso.js.map +1 -0
- package/dist/logo.cjs +1 -1
- package/dist/logo.js +1 -1
- package/dist/{modal-title-DIVsr1XZ.js → modal-title-By9bKnO1.js} +16 -12
- package/dist/modal-title-By9bKnO1.js.map +1 -0
- package/dist/modal-title-DTBKYUPG.cjs +2 -0
- package/dist/modal-title-DTBKYUPG.cjs.map +1 -0
- package/dist/modal.cjs +1 -1
- package/dist/modal.js +1 -1
- package/dist/navigation-menu.cjs +1 -1
- package/dist/navigation-menu.cjs.map +1 -1
- package/dist/navigation-menu.js +190 -187
- package/dist/navigation-menu.js.map +1 -1
- package/dist/offset-pagination-ellipsis-BW8wKSNw.js +83 -0
- package/dist/offset-pagination-ellipsis-BW8wKSNw.js.map +1 -0
- package/dist/offset-pagination-ellipsis-ROg8OzaZ.cjs +2 -0
- package/dist/offset-pagination-ellipsis-ROg8OzaZ.cjs.map +1 -0
- package/dist/offset-pagination.cjs +1 -1
- package/dist/offset-pagination.js +1 -1
- package/dist/price-strike-BRr1He7V.cjs +2 -0
- package/dist/price-strike-BRr1He7V.cjs.map +1 -0
- package/dist/{price-strike-D9Pzzzkr.js → price-strike-Cl5R7dGy.js} +2 -2
- package/dist/price-strike-Cl5R7dGy.js.map +1 -0
- package/dist/price.cjs +1 -1
- package/dist/price.js +1 -1
- package/dist/product-card-compare-DSQIR2Ar.js +304 -0
- package/dist/product-card-compare-DSQIR2Ar.js.map +1 -0
- package/dist/product-card-compare-N3uL-k3l.cjs +2 -0
- package/dist/product-card-compare-N3uL-k3l.cjs.map +1 -0
- package/dist/{product-card-skeleton-BgN1OCwY.cjs → product-card-skeleton-DmwKohoQ.cjs} +2 -2
- package/dist/{product-card-skeleton-BgN1OCwY.cjs.map → product-card-skeleton-DmwKohoQ.cjs.map} +1 -1
- package/dist/{product-card-skeleton-C-xXJrKi.js → product-card-skeleton-RiYj3sBm.js} +3 -3
- package/dist/{product-card-skeleton-C-xXJrKi.js.map → product-card-skeleton-RiYj3sBm.js.map} +1 -1
- package/dist/product-card.cjs +1 -1
- package/dist/product-card.cjs.map +1 -1
- package/dist/product-card.js +22 -25
- package/dist/product-card.js.map +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.cjs.map +1 -1
- package/dist/radio-group.js +46 -41
- package/dist/radio-group.js.map +1 -1
- package/dist/range-input.cjs +1 -1
- package/dist/range-input.cjs.map +1 -1
- package/dist/range-input.js +35 -6
- package/dist/range-input.js.map +1 -1
- package/dist/rating-total-Ch9GsI-i.cjs +2 -0
- package/dist/rating-total-Ch9GsI-i.cjs.map +1 -0
- package/dist/rating-total-QaBpE1O6.js +152 -0
- package/dist/rating-total-QaBpE1O6.js.map +1 -0
- package/dist/rating.cjs +1 -1
- package/dist/rating.js +1 -1
- package/dist/reveal-trigger-DC3QWjji.cjs +2 -0
- package/dist/reveal-trigger-DC3QWjji.cjs.map +1 -0
- package/dist/reveal-trigger-DFJIq75n.js +153 -0
- package/dist/reveal-trigger-DFJIq75n.js.map +1 -0
- package/dist/reveal.cjs +1 -1
- package/dist/reveal.js +1 -1
- package/dist/scroll-area-BDOOgbuL.js +28 -0
- package/dist/scroll-area-BDOOgbuL.js.map +1 -0
- package/dist/scroll-area-Di_L0y2h.cjs +2 -0
- package/dist/scroll-area-Di_L0y2h.cjs.map +1 -0
- package/dist/{scroll-area-corner-Bc4E-OBW.cjs → scroll-area-corner-B50-Euv6.cjs} +2 -2
- package/dist/{scroll-area-corner-Bc4E-OBW.cjs.map → scroll-area-corner-B50-Euv6.cjs.map} +1 -1
- package/dist/{scroll-area-corner-DfIRArAE.js → scroll-area-corner-CLcng3tk.js} +56 -45
- package/dist/{scroll-area-corner-DfIRArAE.js.map → scroll-area-corner-CLcng3tk.js.map} +1 -1
- package/dist/scroll-area.cjs +1 -1
- package/dist/scroll-area.js +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.cjs.map +1 -1
- package/dist/select.js +445 -409
- package/dist/select.js.map +1 -1
- package/dist/side-panel-scroll-area-BjHd_8hw.js +120 -0
- package/dist/side-panel-scroll-area-BjHd_8hw.js.map +1 -0
- package/dist/side-panel-scroll-area-Ci_3i5ZK.cjs +2 -0
- package/dist/side-panel-scroll-area-Ci_3i5ZK.cjs.map +1 -0
- package/dist/side-panel.cjs +1 -1
- package/dist/side-panel.js +10 -8
- package/dist/skeleton-box-CcjaHRz4.cjs +2 -0
- package/dist/skeleton-box-CcjaHRz4.cjs.map +1 -0
- package/dist/{skeleton-box-D0XcgPLs.js → skeleton-box-EYvfbwBB.js} +4 -4
- package/dist/skeleton-box-EYvfbwBB.js.map +1 -0
- package/dist/{skeleton-icon-Cm6f9u-Z.js → skeleton-icon-B8EIcgT0.js} +4 -4
- package/dist/skeleton-icon-B8EIcgT0.js.map +1 -0
- package/dist/skeleton-icon-ChZY8Dj6.cjs +2 -0
- package/dist/skeleton-icon-ChZY8Dj6.cjs.map +1 -0
- package/dist/{skeleton-text-BCsnfhcU.js → skeleton-text-BKJtA5cd.js} +4 -4
- package/dist/skeleton-text-BKJtA5cd.js.map +1 -0
- package/dist/skeleton-text-CY7gaT4A.cjs +2 -0
- package/dist/skeleton-text-CY7gaT4A.cjs.map +1 -0
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.js +3 -3
- package/dist/styles.css +2 -2
- package/dist/swatch-radio-group.cjs +1 -1
- package/dist/swatch-radio-group.cjs.map +1 -1
- package/dist/swatch-radio-group.js +84 -80
- package/dist/swatch-radio-group.js.map +1 -1
- package/dist/{tabs-root-BLHqpIyN.js → tabs-root-C3fY_qFs.js} +48 -37
- package/dist/tabs-root-C3fY_qFs.js.map +1 -0
- package/dist/tabs-root-DRJRMB7Y.cjs +2 -0
- package/dist/tabs-root-DRJRMB7Y.cjs.map +1 -0
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/toggle-group.cjs +1 -1
- package/dist/toggle-group.cjs.map +1 -1
- package/dist/toggle-group.js +31 -48
- package/dist/toggle-group.js.map +1 -1
- package/package.json +32 -1
- package/tailwind.preset.js +39 -139
- package/dist/accordion-trigger-CpTcclGS.cjs +0 -2
- package/dist/accordion-trigger-DFuN29lS.js.map +0 -1
- package/dist/alert-dismiss-EYWAId7r.js +0 -123
- package/dist/alert-dismiss-EYWAId7r.js.map +0 -1
- package/dist/alert-dismiss-m6lm9pLf.cjs +0 -2
- package/dist/alert-dismiss-m6lm9pLf.cjs.map +0 -1
- package/dist/banner-dismiss-0uh1GtF1.cjs +0 -2
- package/dist/banner-dismiss-0uh1GtF1.cjs.map +0 -1
- package/dist/banner-dismiss-B_j9wqx-.js +0 -100
- package/dist/banner-dismiss-B_j9wqx-.js.map +0 -1
- package/dist/blog-post-card-author-CBXo2FqS.cjs +0 -2
- package/dist/blog-post-card-author-CBXo2FqS.cjs.map +0 -1
- package/dist/blog-post-card-author-VkGle9g8.js.map +0 -1
- package/dist/button-W0_PtryU.js +0 -106
- package/dist/button-W0_PtryU.js.map +0 -1
- package/dist/button-ibzOCImJ.cjs +0 -7
- package/dist/button-ibzOCImJ.cjs.map +0 -1
- package/dist/card-link-C48N1y5C.js.map +0 -1
- package/dist/card-link-i_zrZjnx.cjs +0 -2
- package/dist/card-link-i_zrZjnx.cjs.map +0 -1
- package/dist/carousel-next-C6jpZTlN.js +0 -1480
- package/dist/carousel-next-C6jpZTlN.js.map +0 -1
- package/dist/carousel-next-DEHDO98_.cjs +0 -2
- package/dist/carousel-next-DEHDO98_.cjs.map +0 -1
- package/dist/category-card-link-BXoWFETv.cjs +0 -2
- package/dist/category-card-link-BXoWFETv.cjs.map +0 -1
- package/dist/category-card-link-D85RfMpf.js.map +0 -1
- package/dist/checkbox-indicator-DVkOzOV6.cjs +0 -2
- package/dist/checkbox-indicator-DVkOzOV6.cjs.map +0 -1
- package/dist/checkbox-indicator-sO8XNm-j.js +0 -296
- package/dist/checkbox-indicator-sO8XNm-j.js.map +0 -1
- package/dist/chip-button-BhdyJZ5U.js +0 -34
- package/dist/chip-button-BhdyJZ5U.js.map +0 -1
- package/dist/chip-button-DRroMV7K.cjs +0 -2
- package/dist/chip-button-DRroMV7K.cjs.map +0 -1
- package/dist/compare-card-specs-empty-D42h8BPm.cjs +0 -2
- package/dist/compare-card-specs-empty-D42h8BPm.cjs.map +0 -1
- package/dist/compare-card-specs-empty-n4gOqNXU.js +0 -285
- package/dist/compare-card-specs-empty-n4gOqNXU.js.map +0 -1
- package/dist/compare-drawer-remove-DqQAu7qC.js +0 -173
- package/dist/compare-drawer-remove-DqQAu7qC.js.map +0 -1
- package/dist/compare-drawer-remove-DxYGdJay.cjs +0 -2
- package/dist/compare-drawer-remove-DxYGdJay.cjs.map +0 -1
- package/dist/components/banner/primitives/banner-provider.d.ts +0 -17
- package/dist/components/banner/primitives/banner-provider.d.ts.map +0 -1
- package/dist/components/checkbox-group/primitives/checkbox-group-option.d.ts +0 -4
- package/dist/components/checkbox-group/primitives/checkbox-group-option.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-form-input.d.ts +0 -4
- package/dist/components/compare-card/primitives/compare-card-form-input.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-form.d.ts +0 -4
- package/dist/components/compare-card/primitives/compare-card-form.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-link.d.ts +0 -5
- package/dist/components/compare-card/primitives/compare-card-link.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-rating-empty.d.ts +0 -4
- package/dist/components/compare-card/primitives/compare-card-rating-empty.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-rating-label.d.ts +0 -4
- package/dist/components/compare-card/primitives/compare-card-rating-label.d.ts.map +0 -1
- package/dist/components/compare-card/primitives/compare-card-rating.d.ts +0 -4
- package/dist/components/compare-card/primitives/compare-card-rating.d.ts.map +0 -1
- package/dist/components/product-card/primitives/product-card-checkbox.d.ts +0 -5
- package/dist/components/product-card/primitives/product-card-checkbox.d.ts.map +0 -1
- package/dist/components/product-card/primitives/product-card-content.d.ts +0 -4
- package/dist/components/product-card/primitives/product-card-label.d.ts +0 -5
- package/dist/components/product-card/primitives/product-card-label.d.ts.map +0 -1
- package/dist/counter-input-60Nb59Nw.cjs +0 -2
- package/dist/counter-input-60Nb59Nw.cjs.map +0 -1
- package/dist/counter-input-staB16MG.js +0 -80
- package/dist/counter-input-staB16MG.js.map +0 -1
- package/dist/cursor-pagination-link-C6otmDIa.cjs +0 -12
- package/dist/cursor-pagination-link-C6otmDIa.cjs.map +0 -1
- package/dist/cursor-pagination-link-CWbshIOY.js +0 -87
- package/dist/cursor-pagination-link-CWbshIOY.js.map +0 -1
- package/dist/dropdown-menu-node-CAwgTGIA.cjs +0 -7
- package/dist/dropdown-menu-node-CAwgTGIA.cjs.map +0 -1
- package/dist/dropdown-menu-node-x6qIrxA6.js +0 -1101
- package/dist/dropdown-menu-node-x6qIrxA6.js.map +0 -1
- package/dist/favorite-heart-DM8QjcYe.js +0 -62
- package/dist/favorite-heart-DM8QjcYe.js.map +0 -1
- package/dist/favorite-heart-JHXkEZUQ.cjs +0 -2
- package/dist/favorite-heart-JHXkEZUQ.cjs.map +0 -1
- package/dist/field-error-D5NKv8wq.cjs +0 -7
- package/dist/field-error-D5NKv8wq.cjs.map +0 -1
- package/dist/field-error-DtlucLPM.js +0 -150
- package/dist/field-error-DtlucLPM.js.map +0 -1
- package/dist/label-C2HI4Bjj.js.map +0 -1
- package/dist/label-CP55xclp.cjs +0 -2
- package/dist/logo-skeleton-DPhYgp4v.cjs +0 -2
- package/dist/logo-skeleton-DPhYgp4v.cjs.map +0 -1
- package/dist/logo-skeleton-DSSJAa_5.js +0 -44
- package/dist/logo-skeleton-DSSJAa_5.js.map +0 -1
- package/dist/modal-title-D0y_YSeK.cjs +0 -2
- package/dist/modal-title-D0y_YSeK.cjs.map +0 -1
- package/dist/modal-title-DIVsr1XZ.js.map +0 -1
- package/dist/offset-pagination-ellipsis-BDbVGBuP.cjs +0 -2
- package/dist/offset-pagination-ellipsis-BDbVGBuP.cjs.map +0 -1
- package/dist/offset-pagination-ellipsis-bGa7YpkD.js +0 -79
- package/dist/offset-pagination-ellipsis-bGa7YpkD.js.map +0 -1
- package/dist/price-strike-D9Pzzzkr.js.map +0 -1
- package/dist/price-strike-DqOP577f.cjs +0 -2
- package/dist/price-strike-DqOP577f.cjs.map +0 -1
- package/dist/product-card-label-CP4yzMhB.js +0 -244
- package/dist/product-card-label-CP4yzMhB.js.map +0 -1
- package/dist/product-card-label-DHKOJFTo.cjs +0 -2
- package/dist/product-card-label-DHKOJFTo.cjs.map +0 -1
- package/dist/product-card-root-BnBOoYFY.js +0 -27
- package/dist/product-card-root-BnBOoYFY.js.map +0 -1
- package/dist/product-card-root-DNqlSx52.cjs +0 -2
- package/dist/product-card-root-DNqlSx52.cjs.map +0 -1
- package/dist/rating-total-BxVcB0gt.cjs +0 -2
- package/dist/rating-total-BxVcB0gt.cjs.map +0 -1
- package/dist/rating-total-C_vpBVPa.js +0 -144
- package/dist/rating-total-C_vpBVPa.js.map +0 -1
- package/dist/reveal-trigger-CCTnO9e2.cjs +0 -2
- package/dist/reveal-trigger-CCTnO9e2.cjs.map +0 -1
- package/dist/reveal-trigger-ScuufoFq.js +0 -122
- package/dist/reveal-trigger-ScuufoFq.js.map +0 -1
- package/dist/side-panel-close-BSEnX7wo.cjs +0 -2
- package/dist/side-panel-close-BSEnX7wo.cjs.map +0 -1
- package/dist/side-panel-close-CbsiwlUW.js +0 -86
- package/dist/side-panel-close-CbsiwlUW.js.map +0 -1
- package/dist/skeleton-box-BsY5q4RG.cjs +0 -2
- package/dist/skeleton-box-BsY5q4RG.cjs.map +0 -1
- package/dist/skeleton-box-D0XcgPLs.js.map +0 -1
- package/dist/skeleton-icon-Cm6f9u-Z.js.map +0 -1
- package/dist/skeleton-icon-o8gtDMoj.cjs +0 -2
- package/dist/skeleton-icon-o8gtDMoj.cjs.map +0 -1
- package/dist/skeleton-text-BCsnfhcU.js.map +0 -1
- package/dist/skeleton-text-BxefRRo2.cjs +0 -2
- package/dist/skeleton-text-BxefRRo2.cjs.map +0 -1
- package/dist/tabs-root-BLHqpIyN.js.map +0 -1
- package/dist/tabs-root-DzmRz2Up.cjs +0 -2
- package/dist/tabs-root-DzmRz2Up.cjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"carousel-next-DEHDO98_.cjs","sources":["../node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.js","../node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.js","../node_modules/.pnpm/embla-carousel-react@8.6.0_react@19.2.0/node_modules/embla-carousel-react/esm/embla-carousel-react.esm.js","../src/components/carousel/primitives/carousel-root.tsx","../src/components/carousel/primitives/carousel-viewport.tsx","../src/components/carousel/primitives/carousel-content.tsx","../src/components/carousel/primitives/carousel-item.tsx","../src/components/carousel/primitives/carousel-scrollbar.tsx","../src/components/carousel/primitives/carousel-controls.tsx","../src/components/carousel/primitives/carousel-nav.tsx","../src/components/carousel/primitives/carousel-prev.tsx","../src/components/carousel/primitives/carousel-next.tsx"],"sourcesContent":["function isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction isRecord(subject) {\n return isObject(subject) || Array.isArray(subject);\n}\nfunction canUseDOM() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\nfunction areOptionsEqual(optionsA, optionsB) {\n const optionsAKeys = Object.keys(optionsA);\n const optionsBKeys = Object.keys(optionsB);\n if (optionsAKeys.length !== optionsBKeys.length) return false;\n const breakpointsA = JSON.stringify(Object.keys(optionsA.breakpoints || {}));\n const breakpointsB = JSON.stringify(Object.keys(optionsB.breakpoints || {}));\n if (breakpointsA !== breakpointsB) return false;\n return optionsAKeys.every(key => {\n const valueA = optionsA[key];\n const valueB = optionsB[key];\n if (typeof valueA === 'function') return `${valueA}` === `${valueB}`;\n if (!isRecord(valueA) || !isRecord(valueB)) return valueA === valueB;\n return areOptionsEqual(valueA, valueB);\n });\n}\nfunction sortAndMapPluginToOptions(plugins) {\n return plugins.concat().sort((a, b) => a.name > b.name ? 1 : -1).map(plugin => plugin.options);\n}\nfunction arePluginsEqual(pluginsA, pluginsB) {\n if (pluginsA.length !== pluginsB.length) return false;\n const optionsA = sortAndMapPluginToOptions(pluginsA);\n const optionsB = sortAndMapPluginToOptions(pluginsB);\n return optionsA.every((optionA, index) => {\n const optionB = optionsB[index];\n return areOptionsEqual(optionA, optionB);\n });\n}\n\nexport { areOptionsEqual, arePluginsEqual, canUseDOM, sortAndMapPluginToOptions };\n//# sourceMappingURL=embla-carousel-reactive-utils.esm.js.map\n","function isNumber(subject) {\n return typeof subject === 'number';\n}\nfunction isString(subject) {\n return typeof subject === 'string';\n}\nfunction isBoolean(subject) {\n return typeof subject === 'boolean';\n}\nfunction isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction mathAbs(n) {\n return Math.abs(n);\n}\nfunction mathSign(n) {\n return Math.sign(n);\n}\nfunction deltaAbs(valueB, valueA) {\n return mathAbs(valueB - valueA);\n}\nfunction factorAbs(valueB, valueA) {\n if (valueB === 0 || valueA === 0) return 0;\n if (mathAbs(valueB) <= mathAbs(valueA)) return 0;\n const diff = deltaAbs(mathAbs(valueB), mathAbs(valueA));\n return mathAbs(diff / valueB);\n}\nfunction roundToTwoDecimals(num) {\n return Math.round(num * 100) / 100;\n}\nfunction arrayKeys(array) {\n return objectKeys(array).map(Number);\n}\nfunction arrayLast(array) {\n return array[arrayLastIndex(array)];\n}\nfunction arrayLastIndex(array) {\n return Math.max(0, array.length - 1);\n}\nfunction arrayIsLastIndex(array, index) {\n return index === arrayLastIndex(array);\n}\nfunction arrayFromNumber(n, startAt = 0) {\n return Array.from(Array(n), (_, i) => startAt + i);\n}\nfunction objectKeys(object) {\n return Object.keys(object);\n}\nfunction objectsMergeDeep(objectA, objectB) {\n return [objectA, objectB].reduce((mergedObjects, currentObject) => {\n objectKeys(currentObject).forEach(key => {\n const valueA = mergedObjects[key];\n const valueB = currentObject[key];\n const areObjects = isObject(valueA) && isObject(valueB);\n mergedObjects[key] = areObjects ? objectsMergeDeep(valueA, valueB) : valueB;\n });\n return mergedObjects;\n }, {});\n}\nfunction isMouseEvent(evt, ownerWindow) {\n return typeof ownerWindow.MouseEvent !== 'undefined' && evt instanceof ownerWindow.MouseEvent;\n}\n\nfunction Alignment(align, viewSize) {\n const predefined = {\n start,\n center,\n end\n };\n function start() {\n return 0;\n }\n function center(n) {\n return end(n) / 2;\n }\n function end(n) {\n return viewSize - n;\n }\n function measure(n, index) {\n if (isString(align)) return predefined[align](n);\n return align(viewSize, n, index);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction EventStore() {\n let listeners = [];\n function add(node, type, handler, options = {\n passive: true\n }) {\n let removeListener;\n if ('addEventListener' in node) {\n node.addEventListener(type, handler, options);\n removeListener = () => node.removeEventListener(type, handler, options);\n } else {\n const legacyMediaQueryList = node;\n legacyMediaQueryList.addListener(handler);\n removeListener = () => legacyMediaQueryList.removeListener(handler);\n }\n listeners.push(removeListener);\n return self;\n }\n function clear() {\n listeners = listeners.filter(remove => remove());\n }\n const self = {\n add,\n clear\n };\n return self;\n}\n\nfunction Animations(ownerDocument, ownerWindow, update, render) {\n const documentVisibleHandler = EventStore();\n const fixedTimeStep = 1000 / 60;\n let lastTimeStamp = null;\n let accumulatedTime = 0;\n let animationId = 0;\n function init() {\n documentVisibleHandler.add(ownerDocument, 'visibilitychange', () => {\n if (ownerDocument.hidden) reset();\n });\n }\n function destroy() {\n stop();\n documentVisibleHandler.clear();\n }\n function animate(timeStamp) {\n if (!animationId) return;\n if (!lastTimeStamp) {\n lastTimeStamp = timeStamp;\n update();\n update();\n }\n const timeElapsed = timeStamp - lastTimeStamp;\n lastTimeStamp = timeStamp;\n accumulatedTime += timeElapsed;\n while (accumulatedTime >= fixedTimeStep) {\n update();\n accumulatedTime -= fixedTimeStep;\n }\n const alpha = accumulatedTime / fixedTimeStep;\n render(alpha);\n if (animationId) {\n animationId = ownerWindow.requestAnimationFrame(animate);\n }\n }\n function start() {\n if (animationId) return;\n animationId = ownerWindow.requestAnimationFrame(animate);\n }\n function stop() {\n ownerWindow.cancelAnimationFrame(animationId);\n lastTimeStamp = null;\n accumulatedTime = 0;\n animationId = 0;\n }\n function reset() {\n lastTimeStamp = null;\n accumulatedTime = 0;\n }\n const self = {\n init,\n destroy,\n start,\n stop,\n update,\n render\n };\n return self;\n}\n\nfunction Axis(axis, contentDirection) {\n const isRightToLeft = contentDirection === 'rtl';\n const isVertical = axis === 'y';\n const scroll = isVertical ? 'y' : 'x';\n const cross = isVertical ? 'x' : 'y';\n const sign = !isVertical && isRightToLeft ? -1 : 1;\n const startEdge = getStartEdge();\n const endEdge = getEndEdge();\n function measureSize(nodeRect) {\n const {\n height,\n width\n } = nodeRect;\n return isVertical ? height : width;\n }\n function getStartEdge() {\n if (isVertical) return 'top';\n return isRightToLeft ? 'right' : 'left';\n }\n function getEndEdge() {\n if (isVertical) return 'bottom';\n return isRightToLeft ? 'left' : 'right';\n }\n function direction(n) {\n return n * sign;\n }\n const self = {\n scroll,\n cross,\n startEdge,\n endEdge,\n measureSize,\n direction\n };\n return self;\n}\n\nfunction Limit(min = 0, max = 0) {\n const length = mathAbs(min - max);\n function reachedMin(n) {\n return n < min;\n }\n function reachedMax(n) {\n return n > max;\n }\n function reachedAny(n) {\n return reachedMin(n) || reachedMax(n);\n }\n function constrain(n) {\n if (!reachedAny(n)) return n;\n return reachedMin(n) ? min : max;\n }\n function removeOffset(n) {\n if (!length) return n;\n return n - length * Math.ceil((n - max) / length);\n }\n const self = {\n length,\n max,\n min,\n constrain,\n reachedAny,\n reachedMax,\n reachedMin,\n removeOffset\n };\n return self;\n}\n\nfunction Counter(max, start, loop) {\n const {\n constrain\n } = Limit(0, max);\n const loopEnd = max + 1;\n let counter = withinLimit(start);\n function withinLimit(n) {\n return !loop ? constrain(n) : mathAbs((loopEnd + n) % loopEnd);\n }\n function get() {\n return counter;\n }\n function set(n) {\n counter = withinLimit(n);\n return self;\n }\n function add(n) {\n return clone().set(get() + n);\n }\n function clone() {\n return Counter(max, get(), loop);\n }\n const self = {\n get,\n set,\n add,\n clone\n };\n return self;\n}\n\nfunction DragHandler(axis, rootNode, ownerDocument, ownerWindow, target, dragTracker, location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, baseFriction, watchDrag) {\n const {\n cross: crossAxis,\n direction\n } = axis;\n const focusNodes = ['INPUT', 'SELECT', 'TEXTAREA'];\n const nonPassiveEvent = {\n passive: false\n };\n const initEvents = EventStore();\n const dragEvents = EventStore();\n const goToNextThreshold = Limit(50, 225).constrain(percentOfView.measure(20));\n const snapForceBoost = {\n mouse: 300,\n touch: 400\n };\n const freeForceBoost = {\n mouse: 500,\n touch: 600\n };\n const baseSpeed = dragFree ? 43 : 25;\n let isMoving = false;\n let startScroll = 0;\n let startCross = 0;\n let pointerIsDown = false;\n let preventScroll = false;\n let preventClick = false;\n let isMouse = false;\n function init(emblaApi) {\n if (!watchDrag) return;\n function downIfAllowed(evt) {\n if (isBoolean(watchDrag) || watchDrag(emblaApi, evt)) down(evt);\n }\n const node = rootNode;\n initEvents.add(node, 'dragstart', evt => evt.preventDefault(), nonPassiveEvent).add(node, 'touchmove', () => undefined, nonPassiveEvent).add(node, 'touchend', () => undefined).add(node, 'touchstart', downIfAllowed).add(node, 'mousedown', downIfAllowed).add(node, 'touchcancel', up).add(node, 'contextmenu', up).add(node, 'click', click, true);\n }\n function destroy() {\n initEvents.clear();\n dragEvents.clear();\n }\n function addDragEvents() {\n const node = isMouse ? ownerDocument : rootNode;\n dragEvents.add(node, 'touchmove', move, nonPassiveEvent).add(node, 'touchend', up).add(node, 'mousemove', move, nonPassiveEvent).add(node, 'mouseup', up);\n }\n function isFocusNode(node) {\n const nodeName = node.nodeName || '';\n return focusNodes.includes(nodeName);\n }\n function forceBoost() {\n const boost = dragFree ? freeForceBoost : snapForceBoost;\n const type = isMouse ? 'mouse' : 'touch';\n return boost[type];\n }\n function allowedForce(force, targetChanged) {\n const next = index.add(mathSign(force) * -1);\n const baseForce = scrollTarget.byDistance(force, !dragFree).distance;\n if (dragFree || mathAbs(force) < goToNextThreshold) return baseForce;\n if (skipSnaps && targetChanged) return baseForce * 0.5;\n return scrollTarget.byIndex(next.get(), 0).distance;\n }\n function down(evt) {\n const isMouseEvt = isMouseEvent(evt, ownerWindow);\n isMouse = isMouseEvt;\n preventClick = dragFree && isMouseEvt && !evt.buttons && isMoving;\n isMoving = deltaAbs(target.get(), location.get()) >= 2;\n if (isMouseEvt && evt.button !== 0) return;\n if (isFocusNode(evt.target)) return;\n pointerIsDown = true;\n dragTracker.pointerDown(evt);\n scrollBody.useFriction(0).useDuration(0);\n target.set(location);\n addDragEvents();\n startScroll = dragTracker.readPoint(evt);\n startCross = dragTracker.readPoint(evt, crossAxis);\n eventHandler.emit('pointerDown');\n }\n function move(evt) {\n const isTouchEvt = !isMouseEvent(evt, ownerWindow);\n if (isTouchEvt && evt.touches.length >= 2) return up(evt);\n const lastScroll = dragTracker.readPoint(evt);\n const lastCross = dragTracker.readPoint(evt, crossAxis);\n const diffScroll = deltaAbs(lastScroll, startScroll);\n const diffCross = deltaAbs(lastCross, startCross);\n if (!preventScroll && !isMouse) {\n if (!evt.cancelable) return up(evt);\n preventScroll = diffScroll > diffCross;\n if (!preventScroll) return up(evt);\n }\n const diff = dragTracker.pointerMove(evt);\n if (diffScroll > dragThreshold) preventClick = true;\n scrollBody.useFriction(0.3).useDuration(0.75);\n animation.start();\n target.add(direction(diff));\n evt.preventDefault();\n }\n function up(evt) {\n const currentLocation = scrollTarget.byDistance(0, false);\n const targetChanged = currentLocation.index !== index.get();\n const rawForce = dragTracker.pointerUp(evt) * forceBoost();\n const force = allowedForce(direction(rawForce), targetChanged);\n const forceFactor = factorAbs(rawForce, force);\n const speed = baseSpeed - 10 * forceFactor;\n const friction = baseFriction + forceFactor / 50;\n preventScroll = false;\n pointerIsDown = false;\n dragEvents.clear();\n scrollBody.useDuration(speed).useFriction(friction);\n scrollTo.distance(force, !dragFree);\n isMouse = false;\n eventHandler.emit('pointerUp');\n }\n function click(evt) {\n if (preventClick) {\n evt.stopPropagation();\n evt.preventDefault();\n preventClick = false;\n }\n }\n function pointerDown() {\n return pointerIsDown;\n }\n const self = {\n init,\n destroy,\n pointerDown\n };\n return self;\n}\n\nfunction DragTracker(axis, ownerWindow) {\n const logInterval = 170;\n let startEvent;\n let lastEvent;\n function readTime(evt) {\n return evt.timeStamp;\n }\n function readPoint(evt, evtAxis) {\n const property = evtAxis || axis.scroll;\n const coord = `client${property === 'x' ? 'X' : 'Y'}`;\n return (isMouseEvent(evt, ownerWindow) ? evt : evt.touches[0])[coord];\n }\n function pointerDown(evt) {\n startEvent = evt;\n lastEvent = evt;\n return readPoint(evt);\n }\n function pointerMove(evt) {\n const diff = readPoint(evt) - readPoint(lastEvent);\n const expired = readTime(evt) - readTime(startEvent) > logInterval;\n lastEvent = evt;\n if (expired) startEvent = evt;\n return diff;\n }\n function pointerUp(evt) {\n if (!startEvent || !lastEvent) return 0;\n const diffDrag = readPoint(lastEvent) - readPoint(startEvent);\n const diffTime = readTime(evt) - readTime(startEvent);\n const expired = readTime(evt) - readTime(lastEvent) > logInterval;\n const force = diffDrag / diffTime;\n const isFlick = diffTime && !expired && mathAbs(force) > 0.1;\n return isFlick ? force : 0;\n }\n const self = {\n pointerDown,\n pointerMove,\n pointerUp,\n readPoint\n };\n return self;\n}\n\nfunction NodeRects() {\n function measure(node) {\n const {\n offsetTop,\n offsetLeft,\n offsetWidth,\n offsetHeight\n } = node;\n const offset = {\n top: offsetTop,\n right: offsetLeft + offsetWidth,\n bottom: offsetTop + offsetHeight,\n left: offsetLeft,\n width: offsetWidth,\n height: offsetHeight\n };\n return offset;\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction PercentOfView(viewSize) {\n function measure(n) {\n return viewSize * (n / 100);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects) {\n const observeNodes = [container].concat(slides);\n let resizeObserver;\n let containerSize;\n let slideSizes = [];\n let destroyed = false;\n function readSize(node) {\n return axis.measureSize(nodeRects.measure(node));\n }\n function init(emblaApi) {\n if (!watchResize) return;\n containerSize = readSize(container);\n slideSizes = slides.map(readSize);\n function defaultCallback(entries) {\n for (const entry of entries) {\n if (destroyed) return;\n const isContainer = entry.target === container;\n const slideIndex = slides.indexOf(entry.target);\n const lastSize = isContainer ? containerSize : slideSizes[slideIndex];\n const newSize = readSize(isContainer ? container : slides[slideIndex]);\n const diffSize = mathAbs(newSize - lastSize);\n if (diffSize >= 0.5) {\n emblaApi.reInit();\n eventHandler.emit('resize');\n break;\n }\n }\n }\n resizeObserver = new ResizeObserver(entries => {\n if (isBoolean(watchResize) || watchResize(emblaApi, entries)) {\n defaultCallback(entries);\n }\n });\n ownerWindow.requestAnimationFrame(() => {\n observeNodes.forEach(node => resizeObserver.observe(node));\n });\n }\n function destroy() {\n destroyed = true;\n if (resizeObserver) resizeObserver.disconnect();\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction ScrollBody(location, offsetLocation, previousLocation, target, baseDuration, baseFriction) {\n let scrollVelocity = 0;\n let scrollDirection = 0;\n let scrollDuration = baseDuration;\n let scrollFriction = baseFriction;\n let rawLocation = location.get();\n let rawLocationPrevious = 0;\n function seek() {\n const displacement = target.get() - location.get();\n const isInstant = !scrollDuration;\n let scrollDistance = 0;\n if (isInstant) {\n scrollVelocity = 0;\n previousLocation.set(target);\n location.set(target);\n scrollDistance = displacement;\n } else {\n previousLocation.set(location);\n scrollVelocity += displacement / scrollDuration;\n scrollVelocity *= scrollFriction;\n rawLocation += scrollVelocity;\n location.add(scrollVelocity);\n scrollDistance = rawLocation - rawLocationPrevious;\n }\n scrollDirection = mathSign(scrollDistance);\n rawLocationPrevious = rawLocation;\n return self;\n }\n function settled() {\n const diff = target.get() - offsetLocation.get();\n return mathAbs(diff) < 0.001;\n }\n function duration() {\n return scrollDuration;\n }\n function direction() {\n return scrollDirection;\n }\n function velocity() {\n return scrollVelocity;\n }\n function useBaseDuration() {\n return useDuration(baseDuration);\n }\n function useBaseFriction() {\n return useFriction(baseFriction);\n }\n function useDuration(n) {\n scrollDuration = n;\n return self;\n }\n function useFriction(n) {\n scrollFriction = n;\n return self;\n }\n const self = {\n direction,\n duration,\n velocity,\n seek,\n settled,\n useBaseFriction,\n useBaseDuration,\n useFriction,\n useDuration\n };\n return self;\n}\n\nfunction ScrollBounds(limit, location, target, scrollBody, percentOfView) {\n const pullBackThreshold = percentOfView.measure(10);\n const edgeOffsetTolerance = percentOfView.measure(50);\n const frictionLimit = Limit(0.1, 0.99);\n let disabled = false;\n function shouldConstrain() {\n if (disabled) return false;\n if (!limit.reachedAny(target.get())) return false;\n if (!limit.reachedAny(location.get())) return false;\n return true;\n }\n function constrain(pointerDown) {\n if (!shouldConstrain()) return;\n const edge = limit.reachedMin(location.get()) ? 'min' : 'max';\n const diffToEdge = mathAbs(limit[edge] - location.get());\n const diffToTarget = target.get() - location.get();\n const friction = frictionLimit.constrain(diffToEdge / edgeOffsetTolerance);\n target.subtract(diffToTarget * friction);\n if (!pointerDown && mathAbs(diffToTarget) < pullBackThreshold) {\n target.set(limit.constrain(target.get()));\n scrollBody.useDuration(25).useBaseFriction();\n }\n }\n function toggleActive(active) {\n disabled = !active;\n }\n const self = {\n shouldConstrain,\n constrain,\n toggleActive\n };\n return self;\n}\n\nfunction ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance) {\n const scrollBounds = Limit(-contentSize + viewSize, 0);\n const snapsBounded = measureBounded();\n const scrollContainLimit = findScrollContainLimit();\n const snapsContained = measureContained();\n function usePixelTolerance(bound, snap) {\n return deltaAbs(bound, snap) <= 1;\n }\n function findScrollContainLimit() {\n const startSnap = snapsBounded[0];\n const endSnap = arrayLast(snapsBounded);\n const min = snapsBounded.lastIndexOf(startSnap);\n const max = snapsBounded.indexOf(endSnap) + 1;\n return Limit(min, max);\n }\n function measureBounded() {\n return snapsAligned.map((snapAligned, index) => {\n const {\n min,\n max\n } = scrollBounds;\n const snap = scrollBounds.constrain(snapAligned);\n const isFirst = !index;\n const isLast = arrayIsLastIndex(snapsAligned, index);\n if (isFirst) return max;\n if (isLast) return min;\n if (usePixelTolerance(min, snap)) return min;\n if (usePixelTolerance(max, snap)) return max;\n return snap;\n }).map(scrollBound => parseFloat(scrollBound.toFixed(3)));\n }\n function measureContained() {\n if (contentSize <= viewSize + pixelTolerance) return [scrollBounds.max];\n if (containScroll === 'keepSnaps') return snapsBounded;\n const {\n min,\n max\n } = scrollContainLimit;\n return snapsBounded.slice(min, max);\n }\n const self = {\n snapsContained,\n scrollContainLimit\n };\n return self;\n}\n\nfunction ScrollLimit(contentSize, scrollSnaps, loop) {\n const max = scrollSnaps[0];\n const min = loop ? max - contentSize : arrayLast(scrollSnaps);\n const limit = Limit(min, max);\n const self = {\n limit\n };\n return self;\n}\n\nfunction ScrollLooper(contentSize, limit, location, vectors) {\n const jointSafety = 0.1;\n const min = limit.min + jointSafety;\n const max = limit.max + jointSafety;\n const {\n reachedMin,\n reachedMax\n } = Limit(min, max);\n function shouldLoop(direction) {\n if (direction === 1) return reachedMax(location.get());\n if (direction === -1) return reachedMin(location.get());\n return false;\n }\n function loop(direction) {\n if (!shouldLoop(direction)) return;\n const loopDistance = contentSize * (direction * -1);\n vectors.forEach(v => v.add(loopDistance));\n }\n const self = {\n loop\n };\n return self;\n}\n\nfunction ScrollProgress(limit) {\n const {\n max,\n length\n } = limit;\n function get(n) {\n const currentLocation = n - max;\n return length ? currentLocation / -length : 0;\n }\n const self = {\n get\n };\n return self;\n}\n\nfunction ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll) {\n const {\n startEdge,\n endEdge\n } = axis;\n const {\n groupSlides\n } = slidesToScroll;\n const alignments = measureSizes().map(alignment.measure);\n const snaps = measureUnaligned();\n const snapsAligned = measureAligned();\n function measureSizes() {\n return groupSlides(slideRects).map(rects => arrayLast(rects)[endEdge] - rects[0][startEdge]).map(mathAbs);\n }\n function measureUnaligned() {\n return slideRects.map(rect => containerRect[startEdge] - rect[startEdge]).map(snap => -mathAbs(snap));\n }\n function measureAligned() {\n return groupSlides(snaps).map(g => g[0]).map((snap, index) => snap + alignments[index]);\n }\n const self = {\n snaps,\n snapsAligned\n };\n return self;\n}\n\nfunction SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes) {\n const {\n groupSlides\n } = slidesToScroll;\n const {\n min,\n max\n } = scrollContainLimit;\n const slideRegistry = createSlideRegistry();\n function createSlideRegistry() {\n const groupedSlideIndexes = groupSlides(slideIndexes);\n const doNotContain = !containSnaps || containScroll === 'keepSnaps';\n if (scrollSnaps.length === 1) return [slideIndexes];\n if (doNotContain) return groupedSlideIndexes;\n return groupedSlideIndexes.slice(min, max).map((group, index, groups) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(groups, index);\n if (isFirst) {\n const range = arrayLast(groups[0]) + 1;\n return arrayFromNumber(range);\n }\n if (isLast) {\n const range = arrayLastIndex(slideIndexes) - arrayLast(groups)[0] + 1;\n return arrayFromNumber(range, arrayLast(groups)[0]);\n }\n return group;\n });\n }\n const self = {\n slideRegistry\n };\n return self;\n}\n\nfunction ScrollTarget(loop, scrollSnaps, contentSize, limit, targetVector) {\n const {\n reachedAny,\n removeOffset,\n constrain\n } = limit;\n function minDistance(distances) {\n return distances.concat().sort((a, b) => mathAbs(a) - mathAbs(b))[0];\n }\n function findTargetSnap(target) {\n const distance = loop ? removeOffset(target) : constrain(target);\n const ascDiffsToSnaps = scrollSnaps.map((snap, index) => ({\n diff: shortcut(snap - distance, 0),\n index\n })).sort((d1, d2) => mathAbs(d1.diff) - mathAbs(d2.diff));\n const {\n index\n } = ascDiffsToSnaps[0];\n return {\n index,\n distance\n };\n }\n function shortcut(target, direction) {\n const targets = [target, target + contentSize, target - contentSize];\n if (!loop) return target;\n if (!direction) return minDistance(targets);\n const matchingTargets = targets.filter(t => mathSign(t) === direction);\n if (matchingTargets.length) return minDistance(matchingTargets);\n return arrayLast(targets) - contentSize;\n }\n function byIndex(index, direction) {\n const diffToSnap = scrollSnaps[index] - targetVector.get();\n const distance = shortcut(diffToSnap, direction);\n return {\n index,\n distance\n };\n }\n function byDistance(distance, snap) {\n const target = targetVector.get() + distance;\n const {\n index,\n distance: targetSnapDistance\n } = findTargetSnap(target);\n const reachedBound = !loop && reachedAny(target);\n if (!snap || reachedBound) return {\n index,\n distance\n };\n const diffToSnap = scrollSnaps[index] - targetSnapDistance;\n const snapDistance = distance + shortcut(diffToSnap, 0);\n return {\n index,\n distance: snapDistance\n };\n }\n const self = {\n byDistance,\n byIndex,\n shortcut\n };\n return self;\n}\n\nfunction ScrollTo(animation, indexCurrent, indexPrevious, scrollBody, scrollTarget, targetVector, eventHandler) {\n function scrollTo(target) {\n const distanceDiff = target.distance;\n const indexDiff = target.index !== indexCurrent.get();\n targetVector.add(distanceDiff);\n if (distanceDiff) {\n if (scrollBody.duration()) {\n animation.start();\n } else {\n animation.update();\n animation.render(1);\n animation.update();\n }\n }\n if (indexDiff) {\n indexPrevious.set(indexCurrent.get());\n indexCurrent.set(target.index);\n eventHandler.emit('select');\n }\n }\n function distance(n, snap) {\n const target = scrollTarget.byDistance(n, snap);\n scrollTo(target);\n }\n function index(n, direction) {\n const targetIndex = indexCurrent.clone().set(n);\n const target = scrollTarget.byIndex(targetIndex.get(), direction);\n scrollTo(target);\n }\n const self = {\n distance,\n index\n };\n return self;\n}\n\nfunction SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus) {\n const focusListenerOptions = {\n passive: true,\n capture: true\n };\n let lastTabPressTime = 0;\n function init(emblaApi) {\n if (!watchFocus) return;\n function defaultCallback(index) {\n const nowTime = new Date().getTime();\n const diffTime = nowTime - lastTabPressTime;\n if (diffTime > 10) return;\n eventHandler.emit('slideFocusStart');\n root.scrollLeft = 0;\n const group = slideRegistry.findIndex(group => group.includes(index));\n if (!isNumber(group)) return;\n scrollBody.useDuration(0);\n scrollTo.index(group, 0);\n eventHandler.emit('slideFocus');\n }\n eventStore.add(document, 'keydown', registerTabPress, false);\n slides.forEach((slide, slideIndex) => {\n eventStore.add(slide, 'focus', evt => {\n if (isBoolean(watchFocus) || watchFocus(emblaApi, evt)) {\n defaultCallback(slideIndex);\n }\n }, focusListenerOptions);\n });\n }\n function registerTabPress(event) {\n if (event.code === 'Tab') lastTabPressTime = new Date().getTime();\n }\n const self = {\n init\n };\n return self;\n}\n\nfunction Vector1D(initialValue) {\n let value = initialValue;\n function get() {\n return value;\n }\n function set(n) {\n value = normalizeInput(n);\n }\n function add(n) {\n value += normalizeInput(n);\n }\n function subtract(n) {\n value -= normalizeInput(n);\n }\n function normalizeInput(n) {\n return isNumber(n) ? n : n.get();\n }\n const self = {\n get,\n set,\n add,\n subtract\n };\n return self;\n}\n\nfunction Translate(axis, container) {\n const translate = axis.scroll === 'x' ? x : y;\n const containerStyle = container.style;\n let previousTarget = null;\n let disabled = false;\n function x(n) {\n return `translate3d(${n}px,0px,0px)`;\n }\n function y(n) {\n return `translate3d(0px,${n}px,0px)`;\n }\n function to(target) {\n if (disabled) return;\n const newTarget = roundToTwoDecimals(axis.direction(target));\n if (newTarget === previousTarget) return;\n containerStyle.transform = translate(newTarget);\n previousTarget = newTarget;\n }\n function toggleActive(active) {\n disabled = !active;\n }\n function clear() {\n if (disabled) return;\n containerStyle.transform = '';\n if (!container.getAttribute('style')) container.removeAttribute('style');\n }\n const self = {\n clear,\n to,\n toggleActive\n };\n return self;\n}\n\nfunction SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, location, slides) {\n const roundingSafety = 0.5;\n const ascItems = arrayKeys(slideSizesWithGaps);\n const descItems = arrayKeys(slideSizesWithGaps).reverse();\n const loopPoints = startPoints().concat(endPoints());\n function removeSlideSizes(indexes, from) {\n return indexes.reduce((a, i) => {\n return a - slideSizesWithGaps[i];\n }, from);\n }\n function slidesInGap(indexes, gap) {\n return indexes.reduce((a, i) => {\n const remainingGap = removeSlideSizes(a, gap);\n return remainingGap > 0 ? a.concat([i]) : a;\n }, []);\n }\n function findSlideBounds(offset) {\n return snaps.map((snap, index) => ({\n start: snap - slideSizes[index] + roundingSafety + offset,\n end: snap + viewSize - roundingSafety + offset\n }));\n }\n function findLoopPoints(indexes, offset, isEndEdge) {\n const slideBounds = findSlideBounds(offset);\n return indexes.map(index => {\n const initial = isEndEdge ? 0 : -contentSize;\n const altered = isEndEdge ? contentSize : 0;\n const boundEdge = isEndEdge ? 'end' : 'start';\n const loopPoint = slideBounds[index][boundEdge];\n return {\n index,\n loopPoint,\n slideLocation: Vector1D(-1),\n translate: Translate(axis, slides[index]),\n target: () => location.get() > loopPoint ? initial : altered\n };\n });\n }\n function startPoints() {\n const gap = scrollSnaps[0];\n const indexes = slidesInGap(descItems, gap);\n return findLoopPoints(indexes, contentSize, false);\n }\n function endPoints() {\n const gap = viewSize - scrollSnaps[0] - 1;\n const indexes = slidesInGap(ascItems, gap);\n return findLoopPoints(indexes, -contentSize, true);\n }\n function canLoop() {\n return loopPoints.every(({\n index\n }) => {\n const otherIndexes = ascItems.filter(i => i !== index);\n return removeSlideSizes(otherIndexes, viewSize) <= 0.1;\n });\n }\n function loop() {\n loopPoints.forEach(loopPoint => {\n const {\n target,\n translate,\n slideLocation\n } = loopPoint;\n const shiftLocation = target();\n if (shiftLocation === slideLocation.get()) return;\n translate.to(shiftLocation);\n slideLocation.set(shiftLocation);\n });\n }\n function clear() {\n loopPoints.forEach(loopPoint => loopPoint.translate.clear());\n }\n const self = {\n canLoop,\n clear,\n loop,\n loopPoints\n };\n return self;\n}\n\nfunction SlidesHandler(container, eventHandler, watchSlides) {\n let mutationObserver;\n let destroyed = false;\n function init(emblaApi) {\n if (!watchSlides) return;\n function defaultCallback(mutations) {\n for (const mutation of mutations) {\n if (mutation.type === 'childList') {\n emblaApi.reInit();\n eventHandler.emit('slidesChanged');\n break;\n }\n }\n }\n mutationObserver = new MutationObserver(mutations => {\n if (destroyed) return;\n if (isBoolean(watchSlides) || watchSlides(emblaApi, mutations)) {\n defaultCallback(mutations);\n }\n });\n mutationObserver.observe(container, {\n childList: true\n });\n }\n function destroy() {\n if (mutationObserver) mutationObserver.disconnect();\n destroyed = true;\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction SlidesInView(container, slides, eventHandler, threshold) {\n const intersectionEntryMap = {};\n let inViewCache = null;\n let notInViewCache = null;\n let intersectionObserver;\n let destroyed = false;\n function init() {\n intersectionObserver = new IntersectionObserver(entries => {\n if (destroyed) return;\n entries.forEach(entry => {\n const index = slides.indexOf(entry.target);\n intersectionEntryMap[index] = entry;\n });\n inViewCache = null;\n notInViewCache = null;\n eventHandler.emit('slidesInView');\n }, {\n root: container.parentElement,\n threshold\n });\n slides.forEach(slide => intersectionObserver.observe(slide));\n }\n function destroy() {\n if (intersectionObserver) intersectionObserver.disconnect();\n destroyed = true;\n }\n function createInViewList(inView) {\n return objectKeys(intersectionEntryMap).reduce((list, slideIndex) => {\n const index = parseInt(slideIndex);\n const {\n isIntersecting\n } = intersectionEntryMap[index];\n const inViewMatch = inView && isIntersecting;\n const notInViewMatch = !inView && !isIntersecting;\n if (inViewMatch || notInViewMatch) list.push(index);\n return list;\n }, []);\n }\n function get(inView = true) {\n if (inView && inViewCache) return inViewCache;\n if (!inView && notInViewCache) return notInViewCache;\n const slideIndexes = createInViewList(inView);\n if (inView) inViewCache = slideIndexes;\n if (!inView) notInViewCache = slideIndexes;\n return slideIndexes;\n }\n const self = {\n init,\n destroy,\n get\n };\n return self;\n}\n\nfunction SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow) {\n const {\n measureSize,\n startEdge,\n endEdge\n } = axis;\n const withEdgeGap = slideRects[0] && readEdgeGap;\n const startGap = measureStartGap();\n const endGap = measureEndGap();\n const slideSizes = slideRects.map(measureSize);\n const slideSizesWithGaps = measureWithGaps();\n function measureStartGap() {\n if (!withEdgeGap) return 0;\n const slideRect = slideRects[0];\n return mathAbs(containerRect[startEdge] - slideRect[startEdge]);\n }\n function measureEndGap() {\n if (!withEdgeGap) return 0;\n const style = ownerWindow.getComputedStyle(arrayLast(slides));\n return parseFloat(style.getPropertyValue(`margin-${endEdge}`));\n }\n function measureWithGaps() {\n return slideRects.map((rect, index, rects) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(rects, index);\n if (isFirst) return slideSizes[index] + startGap;\n if (isLast) return slideSizes[index] + endGap;\n return rects[index + 1][startEdge] - rect[startEdge];\n }).map(mathAbs);\n }\n const self = {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n };\n return self;\n}\n\nfunction SlidesToScroll(axis, viewSize, slidesToScroll, loop, containerRect, slideRects, startGap, endGap, pixelTolerance) {\n const {\n startEdge,\n endEdge,\n direction\n } = axis;\n const groupByNumber = isNumber(slidesToScroll);\n function byNumber(array, groupSize) {\n return arrayKeys(array).filter(i => i % groupSize === 0).map(i => array.slice(i, i + groupSize));\n }\n function bySize(array) {\n if (!array.length) return [];\n return arrayKeys(array).reduce((groups, rectB, index) => {\n const rectA = arrayLast(groups) || 0;\n const isFirst = rectA === 0;\n const isLast = rectB === arrayLastIndex(array);\n const edgeA = containerRect[startEdge] - slideRects[rectA][startEdge];\n const edgeB = containerRect[startEdge] - slideRects[rectB][endEdge];\n const gapA = !loop && isFirst ? direction(startGap) : 0;\n const gapB = !loop && isLast ? direction(endGap) : 0;\n const chunkSize = mathAbs(edgeB - gapB - (edgeA + gapA));\n if (index && chunkSize > viewSize + pixelTolerance) groups.push(rectB);\n if (isLast) groups.push(array.length);\n return groups;\n }, []).map((currentSize, index, groups) => {\n const previousSize = Math.max(groups[index - 1] || 0);\n return array.slice(previousSize, currentSize);\n });\n }\n function groupSlides(array) {\n return groupByNumber ? byNumber(array, slidesToScroll) : bySize(array);\n }\n const self = {\n groupSlides\n };\n return self;\n}\n\nfunction Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler) {\n // Options\n const {\n align,\n axis: scrollAxis,\n direction,\n startIndex,\n loop,\n duration,\n dragFree,\n dragThreshold,\n inViewThreshold,\n slidesToScroll: groupSlides,\n skipSnaps,\n containScroll,\n watchResize,\n watchSlides,\n watchDrag,\n watchFocus\n } = options;\n // Measurements\n const pixelTolerance = 2;\n const nodeRects = NodeRects();\n const containerRect = nodeRects.measure(container);\n const slideRects = slides.map(nodeRects.measure);\n const axis = Axis(scrollAxis, direction);\n const viewSize = axis.measureSize(containerRect);\n const percentOfView = PercentOfView(viewSize);\n const alignment = Alignment(align, viewSize);\n const containSnaps = !loop && !!containScroll;\n const readEdgeGap = loop || !!containScroll;\n const {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n } = SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow);\n const slidesToScroll = SlidesToScroll(axis, viewSize, groupSlides, loop, containerRect, slideRects, startGap, endGap, pixelTolerance);\n const {\n snaps,\n snapsAligned\n } = ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll);\n const contentSize = -arrayLast(snaps) + arrayLast(slideSizesWithGaps);\n const {\n snapsContained,\n scrollContainLimit\n } = ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance);\n const scrollSnaps = containSnaps ? snapsContained : snapsAligned;\n const {\n limit\n } = ScrollLimit(contentSize, scrollSnaps, loop);\n // Indexes\n const index = Counter(arrayLastIndex(scrollSnaps), startIndex, loop);\n const indexPrevious = index.clone();\n const slideIndexes = arrayKeys(slides);\n // Animation\n const update = ({\n dragHandler,\n scrollBody,\n scrollBounds,\n options: {\n loop\n }\n }) => {\n if (!loop) scrollBounds.constrain(dragHandler.pointerDown());\n scrollBody.seek();\n };\n const render = ({\n scrollBody,\n translate,\n location,\n offsetLocation,\n previousLocation,\n scrollLooper,\n slideLooper,\n dragHandler,\n animation,\n eventHandler,\n scrollBounds,\n options: {\n loop\n }\n }, alpha) => {\n const shouldSettle = scrollBody.settled();\n const withinBounds = !scrollBounds.shouldConstrain();\n const hasSettled = loop ? shouldSettle : shouldSettle && withinBounds;\n const hasSettledAndIdle = hasSettled && !dragHandler.pointerDown();\n if (hasSettledAndIdle) animation.stop();\n const interpolatedLocation = location.get() * alpha + previousLocation.get() * (1 - alpha);\n offsetLocation.set(interpolatedLocation);\n if (loop) {\n scrollLooper.loop(scrollBody.direction());\n slideLooper.loop();\n }\n translate.to(offsetLocation.get());\n if (hasSettledAndIdle) eventHandler.emit('settle');\n if (!hasSettled) eventHandler.emit('scroll');\n };\n const animation = Animations(ownerDocument, ownerWindow, () => update(engine), alpha => render(engine, alpha));\n // Shared\n const friction = 0.68;\n const startLocation = scrollSnaps[index.get()];\n const location = Vector1D(startLocation);\n const previousLocation = Vector1D(startLocation);\n const offsetLocation = Vector1D(startLocation);\n const target = Vector1D(startLocation);\n const scrollBody = ScrollBody(location, offsetLocation, previousLocation, target, duration, friction);\n const scrollTarget = ScrollTarget(loop, scrollSnaps, contentSize, limit, target);\n const scrollTo = ScrollTo(animation, index, indexPrevious, scrollBody, scrollTarget, target, eventHandler);\n const scrollProgress = ScrollProgress(limit);\n const eventStore = EventStore();\n const slidesInView = SlidesInView(container, slides, eventHandler, inViewThreshold);\n const {\n slideRegistry\n } = SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes);\n const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus);\n // Engine\n const engine = {\n ownerDocument,\n ownerWindow,\n eventHandler,\n containerRect,\n slideRects,\n animation,\n axis,\n dragHandler: DragHandler(axis, root, ownerDocument, ownerWindow, target, DragTracker(axis, ownerWindow), location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, friction, watchDrag),\n eventStore,\n percentOfView,\n index,\n indexPrevious,\n limit,\n location,\n offsetLocation,\n previousLocation,\n options,\n resizeHandler: ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects),\n scrollBody,\n scrollBounds: ScrollBounds(limit, offsetLocation, target, scrollBody, percentOfView),\n scrollLooper: ScrollLooper(contentSize, limit, offsetLocation, [location, offsetLocation, previousLocation, target]),\n scrollProgress,\n scrollSnapList: scrollSnaps.map(scrollProgress.get),\n scrollSnaps,\n scrollTarget,\n scrollTo,\n slideLooper: SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, offsetLocation, slides),\n slideFocus,\n slidesHandler: SlidesHandler(container, eventHandler, watchSlides),\n slidesInView,\n slideIndexes,\n slideRegistry,\n slidesToScroll,\n target,\n translate: Translate(axis, container)\n };\n return engine;\n}\n\nfunction EventHandler() {\n let listeners = {};\n let api;\n function init(emblaApi) {\n api = emblaApi;\n }\n function getListeners(evt) {\n return listeners[evt] || [];\n }\n function emit(evt) {\n getListeners(evt).forEach(e => e(api, evt));\n return self;\n }\n function on(evt, cb) {\n listeners[evt] = getListeners(evt).concat([cb]);\n return self;\n }\n function off(evt, cb) {\n listeners[evt] = getListeners(evt).filter(e => e !== cb);\n return self;\n }\n function clear() {\n listeners = {};\n }\n const self = {\n init,\n emit,\n off,\n on,\n clear\n };\n return self;\n}\n\nconst defaultOptions = {\n align: 'center',\n axis: 'x',\n container: null,\n slides: null,\n containScroll: 'trimSnaps',\n direction: 'ltr',\n slidesToScroll: 1,\n inViewThreshold: 0,\n breakpoints: {},\n dragFree: false,\n dragThreshold: 10,\n loop: false,\n skipSnaps: false,\n duration: 25,\n startIndex: 0,\n active: true,\n watchDrag: true,\n watchResize: true,\n watchSlides: true,\n watchFocus: true\n};\n\nfunction OptionsHandler(ownerWindow) {\n function mergeOptions(optionsA, optionsB) {\n return objectsMergeDeep(optionsA, optionsB || {});\n }\n function optionsAtMedia(options) {\n const optionsAtMedia = options.breakpoints || {};\n const matchedMediaOptions = objectKeys(optionsAtMedia).filter(media => ownerWindow.matchMedia(media).matches).map(media => optionsAtMedia[media]).reduce((a, mediaOption) => mergeOptions(a, mediaOption), {});\n return mergeOptions(options, matchedMediaOptions);\n }\n function optionsMediaQueries(optionsList) {\n return optionsList.map(options => objectKeys(options.breakpoints || {})).reduce((acc, mediaQueries) => acc.concat(mediaQueries), []).map(ownerWindow.matchMedia);\n }\n const self = {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n };\n return self;\n}\n\nfunction PluginsHandler(optionsHandler) {\n let activePlugins = [];\n function init(emblaApi, plugins) {\n activePlugins = plugins.filter(({\n options\n }) => optionsHandler.optionsAtMedia(options).active !== false);\n activePlugins.forEach(plugin => plugin.init(emblaApi, optionsHandler));\n return plugins.reduce((map, plugin) => Object.assign(map, {\n [plugin.name]: plugin\n }), {});\n }\n function destroy() {\n activePlugins = activePlugins.filter(plugin => plugin.destroy());\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction EmblaCarousel(root, userOptions, userPlugins) {\n const ownerDocument = root.ownerDocument;\n const ownerWindow = ownerDocument.defaultView;\n const optionsHandler = OptionsHandler(ownerWindow);\n const pluginsHandler = PluginsHandler(optionsHandler);\n const mediaHandlers = EventStore();\n const eventHandler = EventHandler();\n const {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n } = optionsHandler;\n const {\n on,\n off,\n emit\n } = eventHandler;\n const reInit = reActivate;\n let destroyed = false;\n let engine;\n let optionsBase = mergeOptions(defaultOptions, EmblaCarousel.globalOptions);\n let options = mergeOptions(optionsBase);\n let pluginList = [];\n let pluginApis;\n let container;\n let slides;\n function storeElements() {\n const {\n container: userContainer,\n slides: userSlides\n } = options;\n const customContainer = isString(userContainer) ? root.querySelector(userContainer) : userContainer;\n container = customContainer || root.children[0];\n const customSlides = isString(userSlides) ? container.querySelectorAll(userSlides) : userSlides;\n slides = [].slice.call(customSlides || container.children);\n }\n function createEngine(options) {\n const engine = Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler);\n if (options.loop && !engine.slideLooper.canLoop()) {\n const optionsWithoutLoop = Object.assign({}, options, {\n loop: false\n });\n return createEngine(optionsWithoutLoop);\n }\n return engine;\n }\n function activate(withOptions, withPlugins) {\n if (destroyed) return;\n optionsBase = mergeOptions(optionsBase, withOptions);\n options = optionsAtMedia(optionsBase);\n pluginList = withPlugins || pluginList;\n storeElements();\n engine = createEngine(options);\n optionsMediaQueries([optionsBase, ...pluginList.map(({\n options\n }) => options)]).forEach(query => mediaHandlers.add(query, 'change', reActivate));\n if (!options.active) return;\n engine.translate.to(engine.location.get());\n engine.animation.init();\n engine.slidesInView.init();\n engine.slideFocus.init(self);\n engine.eventHandler.init(self);\n engine.resizeHandler.init(self);\n engine.slidesHandler.init(self);\n if (engine.options.loop) engine.slideLooper.loop();\n if (container.offsetParent && slides.length) engine.dragHandler.init(self);\n pluginApis = pluginsHandler.init(self, pluginList);\n }\n function reActivate(withOptions, withPlugins) {\n const startIndex = selectedScrollSnap();\n deActivate();\n activate(mergeOptions({\n startIndex\n }, withOptions), withPlugins);\n eventHandler.emit('reInit');\n }\n function deActivate() {\n engine.dragHandler.destroy();\n engine.eventStore.clear();\n engine.translate.clear();\n engine.slideLooper.clear();\n engine.resizeHandler.destroy();\n engine.slidesHandler.destroy();\n engine.slidesInView.destroy();\n engine.animation.destroy();\n pluginsHandler.destroy();\n mediaHandlers.clear();\n }\n function destroy() {\n if (destroyed) return;\n destroyed = true;\n mediaHandlers.clear();\n deActivate();\n eventHandler.emit('destroy');\n eventHandler.clear();\n }\n function scrollTo(index, jump, direction) {\n if (!options.active || destroyed) return;\n engine.scrollBody.useBaseFriction().useDuration(jump === true ? 0 : options.duration);\n engine.scrollTo.index(index, direction || 0);\n }\n function scrollNext(jump) {\n const next = engine.index.add(1).get();\n scrollTo(next, jump, -1);\n }\n function scrollPrev(jump) {\n const prev = engine.index.add(-1).get();\n scrollTo(prev, jump, 1);\n }\n function canScrollNext() {\n const next = engine.index.add(1).get();\n return next !== selectedScrollSnap();\n }\n function canScrollPrev() {\n const prev = engine.index.add(-1).get();\n return prev !== selectedScrollSnap();\n }\n function scrollSnapList() {\n return engine.scrollSnapList;\n }\n function scrollProgress() {\n return engine.scrollProgress.get(engine.offsetLocation.get());\n }\n function selectedScrollSnap() {\n return engine.index.get();\n }\n function previousScrollSnap() {\n return engine.indexPrevious.get();\n }\n function slidesInView() {\n return engine.slidesInView.get();\n }\n function slidesNotInView() {\n return engine.slidesInView.get(false);\n }\n function plugins() {\n return pluginApis;\n }\n function internalEngine() {\n return engine;\n }\n function rootNode() {\n return root;\n }\n function containerNode() {\n return container;\n }\n function slideNodes() {\n return slides;\n }\n const self = {\n canScrollNext,\n canScrollPrev,\n containerNode,\n internalEngine,\n destroy,\n off,\n on,\n emit,\n plugins,\n previousScrollSnap,\n reInit,\n rootNode,\n scrollNext,\n scrollPrev,\n scrollProgress,\n scrollSnapList,\n scrollTo,\n selectedScrollSnap,\n slideNodes,\n slidesInView,\n slidesNotInView\n };\n activate(userOptions, userPlugins);\n setTimeout(() => eventHandler.emit('init'), 0);\n return self;\n}\nEmblaCarousel.globalOptions = undefined;\n\nexport { EmblaCarousel as default };\n//# sourceMappingURL=embla-carousel.esm.js.map\n","import { useRef, useState, useCallback, useEffect } from 'react';\nimport { areOptionsEqual, arePluginsEqual, canUseDOM } from 'embla-carousel-reactive-utils';\nimport EmblaCarousel from 'embla-carousel';\n\nfunction useEmblaCarousel(options = {}, plugins = []) {\n const storedOptions = useRef(options);\n const storedPlugins = useRef(plugins);\n const [emblaApi, setEmblaApi] = useState();\n const [viewport, setViewport] = useState();\n const reInit = useCallback(() => {\n if (emblaApi) emblaApi.reInit(storedOptions.current, storedPlugins.current);\n }, [emblaApi]);\n useEffect(() => {\n if (areOptionsEqual(storedOptions.current, options)) return;\n storedOptions.current = options;\n reInit();\n }, [options, reInit]);\n useEffect(() => {\n if (arePluginsEqual(storedPlugins.current, plugins)) return;\n storedPlugins.current = plugins;\n reInit();\n }, [plugins, reInit]);\n useEffect(() => {\n if (canUseDOM() && viewport) {\n EmblaCarousel.globalOptions = useEmblaCarousel.globalOptions;\n const newEmblaApi = EmblaCarousel(viewport, storedOptions.current, storedPlugins.current);\n setEmblaApi(newEmblaApi);\n return () => newEmblaApi.destroy();\n } else {\n setEmblaApi(undefined);\n }\n }, [viewport, setEmblaApi]);\n return [setViewport, emblaApi];\n}\nuseEmblaCarousel.globalOptions = undefined;\n\nexport { useEmblaCarousel as default };\n//# sourceMappingURL=embla-carousel-react.esm.js.map\n","'use client';\n\nimport useEmblaCarousel from 'embla-carousel-react';\nimport type { UseEmblaCarouselType } from 'embla-carousel-react';\nimport type { ComponentProps, KeyboardEvent } from 'react';\nimport { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ninterface CarouselContext {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n hideOverflow: boolean;\n}\n\nexport const CarouselContext = createContext<CarouselContext | null>(null);\n\nexport interface CarouselRootProps extends ComponentProps<'div'> {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n setApi?: (api: CarouselApi) => void;\n hideOverflow?: boolean;\n}\n\nexport function CarouselRoot({\n children,\n className,\n opts,\n plugins,\n setApi,\n hideOverflow = true,\n ...props\n}: CarouselRootProps) {\n const [carouselRef, api] = useEmblaCarousel(opts, plugins);\n\n const [canScrollPrev, setCanScrollPrev] = useState(false);\n const [canScrollNext, setCanScrollNext] = useState(false);\n\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const onSelect = useCallback((api: CarouselApi) => {\n if (!api) return;\n\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = useCallback(() => api?.scrollPrev(), [api]);\n\n const scrollNext = useCallback(() => api?.scrollNext(), [api]);\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n useEffect(() => {\n if (!api || !setApi) return;\n\n setApi(api);\n }, [api, setApi]);\n\n useEffect(() => {\n if (!api) return;\n\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n const contextValue = useMemo(\n () => ({\n carouselRef,\n api,\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n hideOverflow,\n }),\n [carouselRef, api, scrollPrev, scrollNext, canScrollPrev, canScrollNext],\n );\n\n return (\n <CarouselContext.Provider value={contextValue}>\n <div\n aria-roledescription=\"carousel\"\n className={cn('relative p-1.5 @container', hideOverflow && 'overflow-hidden', className)}\n data-slot=\"carousel-root\"\n onKeyDownCapture={handleKeyDown}\n role=\"region\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n}\n\nexport function useCarousel() {\n const context = useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <CarouselRoot />');\n }\n\n return context;\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { useCarousel } from '@/components/carousel';\nimport { cn } from '@/lib';\n\nexport type CarouselViewportProps = ComponentProps<'div'>;\n\nexport function CarouselViewport({ className, children, ...props }: CarouselViewportProps) {\n const { carouselRef } = useCarousel();\n\n return (\n <div\n className={cn('w-full', className)}\n data-slot=\"carousel-viewport\"\n ref={carouselRef}\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CarouselContentProps = ComponentProps<'div'>;\n\nexport function CarouselContent({ className, children, ...props }: CarouselContentProps) {\n return (\n <div className={cn('-ml-4 flex @2xl:-ml-5', className)} data-slot=\"carousel-content\" {...props}>\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CarouselItemProps = ComponentProps<'div'>;\n\nexport function CarouselItem({ className, ...props }: CarouselItemProps) {\n return (\n <div\n aria-roledescription=\"slide\"\n className={cn('min-w-0 shrink-0 grow-0 pl-4 @2xl:pl-5', className)}\n data-slot=\"carousel-item\"\n role=\"group\"\n {...props}\n />\n );\n}\n","import type { ComponentProps } from 'react';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport { useCarousel } from '@/components/carousel';\nimport { cn } from '@/lib';\n\nexport type CarouselScrollbarProps = ComponentProps<'div'>;\n\nexport function CarouselScrollbar({ className }: CarouselScrollbarProps) {\n const { api, canScrollPrev, canScrollNext } = useCarousel();\n\n const [progress, setProgress] = useState(0);\n\n const [scrollbarPosition, setScrollbarPosition] = useState({ width: 0, left: 0 });\n\n const findClosestSnap = useCallback(\n (nextProgress: number) => {\n if (!api) return 0;\n\n const point = nextProgress / 100;\n const snapList = api.scrollSnapList();\n\n if (snapList.length === 0) return -1;\n\n const closestSnap = snapList.reduce((prev, curr) =>\n Math.abs(curr - point) < Math.abs(prev - point) ? curr : prev,\n );\n\n return snapList.findIndex((snap) => snap === closestSnap);\n },\n [api],\n );\n\n useEffect(() => {\n if (!api) return;\n\n const snapList = api.scrollSnapList();\n const closestSnapIndex = findClosestSnap(progress);\n const scrollbarWidth = 100 / snapList.length;\n const scrollbarLeft = (closestSnapIndex / snapList.length) * 100;\n\n setScrollbarPosition({ width: scrollbarWidth, left: scrollbarLeft });\n\n api.scrollTo(closestSnapIndex);\n }, [progress, api, findClosestSnap]);\n\n useEffect(() => {\n if (!api) return;\n\n function onScroll() {\n if (!api) return;\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n setProgress(api.scrollSnapList()[api.selectedScrollSnap()]! * 100);\n }\n\n api.on('select', onScroll);\n api.on('scroll', onScroll);\n api.on('reInit', onScroll);\n\n return () => {\n api.off('select', onScroll);\n api.off('scroll', onScroll);\n api.off('reInit', onScroll);\n };\n }, [api]);\n\n return (\n <div\n className={cn(\n 'relative flex h-6 w-full max-w-56 items-center overflow-hidden',\n !canScrollPrev && !canScrollNext && 'pointer-events-none invisible',\n className,\n )}\n data-slot=\"carousel-scrollbar\"\n >\n <input\n aria-label=\"Carousel scrollbar\"\n aria-orientation=\"horizontal\"\n aria-valuenow={progress}\n aria-valuetext={`${Math.round(progress)}%`}\n className=\"absolute h-full w-full cursor-pointer appearance-none bg-transparent opacity-0\"\n max={100}\n min={0}\n onChange={(e) => setProgress(e.currentTarget.valueAsNumber)}\n type=\"range\"\n value={progress}\n />\n {/* Track */}\n <div\n className={cn(\n 'pointer-events-none absolute h-1 w-full rounded-full bg-[var(--carousel-light-scrollbar,hsl(var(--foreground)))] opacity-10',\n )}\n data-slot=\"carousel-track\"\n />\n {/* Bar */}\n <div\n className={cn(\n 'pointer-events-none absolute h-1 rounded-full bg-[var(--carousel-light-scrollbar,hsl(var(--foreground)))] transition-all ease-out',\n )}\n data-slot=\"carousel-bar\"\n style={{\n width: `${scrollbarPosition.width}%`,\n left: `${scrollbarPosition.left}%`,\n }}\n />\n </div>\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CarouselControlsProps = ComponentProps<'div'>;\n\nexport function CarouselControls({ className, children, ...props }: CarouselControlsProps) {\n return (\n <div\n className={cn(\n 'mt-10 flex w-full items-center justify-between gap-2 text-[var(--carousel-light-button,hsl(var(--foreground)))]',\n className,\n )}\n data-slot=\"carousel-controls\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CarouselNavProps = ComponentProps<'div'>;\n\nexport function CarouselNav({ className, children, ...props }: CarouselNavProps) {\n return (\n <div className={cn('flex items-center gap-2', className)} data-slot=\"carousel-nav\" {...props}>\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { useCarousel } from '@/components/carousel';\nimport { cn } from '@/lib';\n\nexport type CarouselPrevProps = ComponentProps<'button'>;\n\nexport function CarouselPrev({ children, className, ...props }: CarouselPrevProps) {\n const { canScrollPrev, scrollPrev } = useCarousel();\n\n return (\n <button\n className={cn(\n 'rounded-lg ring-[var(--carousel-focus,hsl(var(--primary)))] transition-colors duration-300 focus-visible:outline-0 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-25',\n className,\n )}\n data-slot=\"carousel-prev\"\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n title=\"Previous\"\n type=\"button\"\n {...props}\n >\n {children}\n </button>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { useCarousel } from '@/components/carousel';\nimport { cn } from '@/lib';\n\nexport type CarouselNextProps = ComponentProps<'button'>;\n\nexport function CarouselNext({ children, className, ...props }: CarouselNextProps) {\n const { canScrollNext, scrollNext } = useCarousel();\n\n return (\n <button\n className={cn(\n 'rounded-lg ring-[var(--carousel-focus,hsl(var(--primary)))] transition-colors duration-300 focus-visible:outline-0 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-25',\n className,\n )}\n data-slot=\"carousel-next\"\n disabled={!canScrollNext}\n onClick={scrollNext}\n title=\"Next\"\n type=\"button\"\n {...props}\n >\n {children}\n </button>\n );\n}\n"],"names":["isObject","subject","isRecord","canUseDOM","areOptionsEqual","optionsA","optionsB","optionsAKeys","optionsBKeys","breakpointsA","breakpointsB","key","valueA","valueB","sortAndMapPluginToOptions","plugins","a","b","plugin","arePluginsEqual","pluginsA","pluginsB","optionA","index","optionB","isNumber","isString","isBoolean","mathAbs","n","mathSign","deltaAbs","factorAbs","diff","roundToTwoDecimals","num","arrayKeys","array","objectKeys","arrayLast","arrayLastIndex","arrayIsLastIndex","arrayFromNumber","startAt","_","i","object","objectsMergeDeep","objectA","objectB","mergedObjects","currentObject","areObjects","isMouseEvent","evt","ownerWindow","Alignment","align","viewSize","predefined","start","center","end","measure","EventStore","listeners","add","node","type","handler","options","removeListener","legacyMediaQueryList","self","clear","remove","Animations","ownerDocument","update","render","documentVisibleHandler","fixedTimeStep","lastTimeStamp","accumulatedTime","animationId","init","reset","destroy","stop","animate","timeStamp","timeElapsed","alpha","Axis","axis","contentDirection","isRightToLeft","isVertical","scroll","cross","sign","startEdge","getStartEdge","endEdge","getEndEdge","measureSize","nodeRect","height","width","direction","Limit","min","max","length","reachedMin","reachedMax","reachedAny","constrain","removeOffset","Counter","loop","loopEnd","counter","withinLimit","get","set","clone","DragHandler","rootNode","target","dragTracker","location","animation","scrollTo","scrollBody","scrollTarget","eventHandler","percentOfView","dragFree","dragThreshold","skipSnaps","baseFriction","watchDrag","crossAxis","focusNodes","nonPassiveEvent","initEvents","dragEvents","goToNextThreshold","snapForceBoost","freeForceBoost","baseSpeed","isMoving","startScroll","startCross","pointerIsDown","preventScroll","preventClick","isMouse","emblaApi","downIfAllowed","down","up","click","addDragEvents","move","isFocusNode","nodeName","forceBoost","allowedForce","force","targetChanged","next","baseForce","isMouseEvt","lastScroll","lastCross","diffScroll","diffCross","rawForce","forceFactor","speed","friction","pointerDown","DragTracker","startEvent","lastEvent","readTime","readPoint","evtAxis","coord","pointerMove","expired","pointerUp","diffDrag","diffTime","NodeRects","offsetTop","offsetLeft","offsetWidth","offsetHeight","PercentOfView","ResizeHandler","container","slides","watchResize","nodeRects","observeNodes","resizeObserver","containerSize","slideSizes","destroyed","readSize","defaultCallback","entries","entry","isContainer","slideIndex","lastSize","newSize","ScrollBody","offsetLocation","previousLocation","baseDuration","scrollVelocity","scrollDirection","scrollDuration","scrollFriction","rawLocation","rawLocationPrevious","seek","displacement","isInstant","scrollDistance","settled","duration","velocity","useBaseDuration","useDuration","useBaseFriction","useFriction","ScrollBounds","limit","pullBackThreshold","edgeOffsetTolerance","frictionLimit","disabled","shouldConstrain","edge","diffToEdge","diffToTarget","toggleActive","active","ScrollContain","contentSize","snapsAligned","containScroll","pixelTolerance","scrollBounds","snapsBounded","measureBounded","scrollContainLimit","findScrollContainLimit","snapsContained","measureContained","usePixelTolerance","bound","snap","startSnap","endSnap","snapAligned","isFirst","isLast","scrollBound","ScrollLimit","scrollSnaps","ScrollLooper","vectors","shouldLoop","loopDistance","v","ScrollProgress","currentLocation","ScrollSnaps","alignment","containerRect","slideRects","slidesToScroll","groupSlides","alignments","measureSizes","snaps","measureUnaligned","measureAligned","rects","rect","g","SlideRegistry","containSnaps","slideIndexes","slideRegistry","createSlideRegistry","groupedSlideIndexes","doNotContain","group","groups","range","ScrollTarget","targetVector","minDistance","distances","findTargetSnap","distance","ascDiffsToSnaps","shortcut","d1","d2","targets","matchingTargets","t","byIndex","diffToSnap","byDistance","targetSnapDistance","reachedBound","snapDistance","ScrollTo","indexCurrent","indexPrevious","distanceDiff","indexDiff","targetIndex","SlideFocus","root","eventStore","watchFocus","focusListenerOptions","lastTabPressTime","registerTabPress","slide","event","Vector1D","initialValue","value","normalizeInput","subtract","Translate","translate","x","y","containerStyle","previousTarget","to","newTarget","SlideLooper","slideSizesWithGaps","ascItems","descItems","loopPoints","startPoints","endPoints","removeSlideSizes","indexes","from","slidesInGap","gap","findSlideBounds","offset","findLoopPoints","isEndEdge","slideBounds","initial","altered","boundEdge","loopPoint","canLoop","otherIndexes","slideLocation","shiftLocation","SlidesHandler","watchSlides","mutationObserver","mutations","mutation","SlidesInView","threshold","intersectionEntryMap","inViewCache","notInViewCache","intersectionObserver","createInViewList","inView","list","isIntersecting","SlideSizes","readEdgeGap","withEdgeGap","startGap","measureStartGap","endGap","measureEndGap","measureWithGaps","slideRect","style","SlidesToScroll","groupByNumber","byNumber","groupSize","bySize","rectB","rectA","edgeA","edgeB","gapA","gapB","chunkSize","currentSize","previousSize","Engine","scrollAxis","startIndex","inViewThreshold","dragHandler","scrollLooper","slideLooper","shouldSettle","withinBounds","hasSettled","hasSettledAndIdle","interpolatedLocation","engine","startLocation","scrollProgress","slidesInView","slideFocus","EventHandler","api","getListeners","emit","e","on","cb","off","defaultOptions","OptionsHandler","mergeOptions","optionsAtMedia","matchedMediaOptions","media","mediaOption","optionsMediaQueries","optionsList","acc","mediaQueries","PluginsHandler","optionsHandler","activePlugins","map","EmblaCarousel","userOptions","userPlugins","pluginsHandler","mediaHandlers","reInit","reActivate","optionsBase","pluginList","pluginApis","storeElements","userContainer","userSlides","customSlides","createEngine","optionsWithoutLoop","activate","withOptions","withPlugins","query","selectedScrollSnap","deActivate","jump","scrollNext","scrollPrev","prev","canScrollNext","canScrollPrev","scrollSnapList","previousScrollSnap","slidesNotInView","internalEngine","containerNode","slideNodes","useEmblaCarousel","storedOptions","useRef","storedPlugins","setEmblaApi","useState","viewport","setViewport","useCallback","useEffect","newEmblaApi","CarouselContext","createContext","CarouselRoot","children","className","opts","setApi","hideOverflow","props","carouselRef","setCanScrollPrev","setCanScrollNext","onSelect","handleKeyDown","contextValue","useMemo","jsx","cn","useCarousel","context","useContext","CarouselViewport","CarouselContent","CarouselItem","CarouselScrollbar","progress","setProgress","scrollbarPosition","setScrollbarPosition","findClosestSnap","nextProgress","point","snapList","closestSnap","curr","closestSnapIndex","scrollbarWidth","scrollbarLeft","onScroll","jsxs","CarouselControls","CarouselNav","CarouselPrev","CarouselNext"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),o=require("./utils-DoxiiusW.cjs"),d=require("./index-DGaxX11V.cjs");function i({className:a,children:t,as:r,aspectRatio:c="5/6",textSize:g="small",showOverlay:s=!0,...l}){const n=r??"article";return e.jsx(n,{className:o.cn("group/category-card relative flex w-full max-w-md cursor-pointer flex-col rounded-[var(--category-card-border-radius,1rem)] font-[var(--category-card-font-family,var(--font-family-body))] @container","data-[text-size=small]:gap-2","data-[text-size=medium]:gap-3","data-[text-size=large]:gap-4","data-[text-size=x-large]:gap-5",a),"data-aspect-ratio":c,"data-show-overlay":s,"data-slot":"category-card-root","data-text-size":g,...l,children:t})}function u({className:a,children:t,...r}){return e.jsx(d.Slot,{className:o.cn("absolute right-5 top-5 z-10 text-[var(--category-card-light-icon,hsl(var(--foreground)))] transition-transform duration-700 ease-out","group-hover/category-card:-translate-y-1.5 group-hover/category-card:translate-x-1.5",a),"data-slot":"category-card-icon",...r,children:t})}function y({className:a,children:t,...r}){return e.jsx("div",{className:o.cn("relative overflow-hidden rounded-[inherit] bg-[var(--category-card-light-background,hsl(var(--contrast-100)))]","group-focus/category-card:ring-[var(--category-card-focus,hsl(var(--primary)))]","group-focus-visible/category-card:ring-2","group-data-[aspect-ratio=1/1]/category-card:aspect-square","group-data-[aspect-ratio=3/4]/category-card:aspect-[3/4]","group-data-[aspect-ratio=5/6]/category-card:aspect-[5/6]",a),"data-slot":"category-card-thumbnail",...r,children:t})}function x({className:a,children:t,asChild:r=!1,...c}){const g=r?d.Slot:"img";return e.jsx(g,{className:o.cn("h-full w-full scale-100 select-none bg-[var(--category-card-light-background,hsl(var(--contrast-100)))] object-cover transition-transform duration-500 ease-out","group-hover/category-card:scale-110",a),"data-slot":"category-card-image",...c})}function f({className:a,children:t,...r}){return e.jsx("div",{className:o.cn("break-words p-4 text-4xl font-bold leading-none tracking-tight transition-transform duration-500 ease-out [color:color-mix(in_oklab,hsl(var(--foreground))_30%,transparent)]","group-hover/category-card:scale-105",a),"data-slot":"category-card-fallback",...r,children:t})}function m({children:a,className:t,...r}){return e.jsx("div",{className:o.cn("absolute inset-0 flex items-end p-6","group-data-[show-overlay=true]/category-card:bg-gradient-to-b","group-data-[show-overlay=true]/category-card:from-foreground/0 group-data-[show-overlay=true]/category-card:from-50%","group-data-[show-overlay=true]/category-card:via-foreground/0 group-data-[show-overlay=true]/category-card:via-50%","group-data-[show-overlay=true]/category-card:to-foreground/50 group-data-[show-overlay=true]/category-card:to-100%","@xs:p-8",t),"data-slot":"category-card-overlay",...r,children:a})}function p({children:a,className:t,...r}){return e.jsx("h3",{className:o.cn("font-semibold leading-tight text-[var(--category-card-light-text,hsl(var(--foreground)))]","group-data-[text-size=small]/category-card:text-lg group-data-[text-size=small]/category-card:tracking-normal","group-data-[text-size=small]/category-card:@xs:text-xl","group-data-[text-size=medium]/category-card:text-xl group-data-[text-size=medium]/category-card:tracking-normal","group-data-[text-size=medium]/category-card:@xs:text-2xl","group-data-[text-size=large]/category-card:text-2xl group-data-[text-size=large]/category-card:tracking-tight","group-data-[text-size=large]/category-card:@xs:text-3xl","group-data-[text-size=x-large]/category-card:text-3xl group-data-[text-size=x-large]/category-card:tracking-tight","group-data-[text-size=x-large]/category-card:@xs:text-4xl",t),"data-slot":"category-card-title",...r,children:a})}function v({asChild:a=!1,className:t,...r}){const c=a?d.Slot:"a";return e.jsx(c,{className:o.cn("absolute inset-0 rounded-[var(--category-card-border-radius,1rem)] ring-offset-[var(--category-card-light-offset,hsl(var(--background)))]","focus:outline-none","focus-visible:ring-2 focus-visible:ring-[var(--category-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4",t),"data-slot":"category-card-link",...r})}exports.CategoryCardFallback=f;exports.CategoryCardIcon=u;exports.CategoryCardImage=x;exports.CategoryCardLink=v;exports.CategoryCardOverlay=m;exports.CategoryCardRoot=i;exports.CategoryCardThumbnail=y;exports.CategoryCardTitle=p;
|
|
2
|
-
//# sourceMappingURL=category-card-link-BXoWFETv.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"category-card-link-BXoWFETv.cjs","sources":["../src/components/category-card/primitives/category-card-root.tsx","../src/components/category-card/primitives/category-card-icon.tsx","../src/components/category-card/primitives/category-card-thumbnail.tsx","../src/components/category-card/primitives/category-card-image.tsx","../src/components/category-card/primitives/category-card-fallback.tsx","../src/components/category-card/primitives/category-card-overlay.tsx","../src/components/category-card/primitives/category-card-title.tsx","../src/components/category-card/primitives/category-card-link.tsx"],"sourcesContent":["'use client';\n\nimport type { ComponentProps, ElementType } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardRootProps<E extends ElementType = 'article'> = Omit<\n ComponentProps<E>,\n 'as'\n> & {\n as?: E;\n aspectRatio?: '5/6' | '3/4' | '1/1';\n textSize?: 'small' | 'medium' | 'large' | 'x-large';\n showOverlay?: boolean;\n};\n\nexport function CategoryCardRoot<T extends ElementType = 'article'>({\n className,\n children,\n as,\n aspectRatio = '5/6',\n textSize = 'small',\n showOverlay = true,\n ...props\n}: CategoryCardRootProps<T>) {\n const CategoryCardRootElement = as ?? 'article';\n\n return (\n <CategoryCardRootElement\n className={cn(\n 'group/category-card relative flex w-full max-w-md cursor-pointer flex-col rounded-[var(--category-card-border-radius,1rem)] font-[var(--category-card-font-family,var(--font-family-body))] @container',\n // Text size gap variants\n 'data-[text-size=small]:gap-2',\n 'data-[text-size=medium]:gap-3',\n 'data-[text-size=large]:gap-4',\n 'data-[text-size=x-large]:gap-5',\n className,\n )}\n data-aspect-ratio={aspectRatio}\n data-show-overlay={showOverlay}\n data-slot=\"category-card-root\"\n data-text-size={textSize}\n {...props}\n >\n {children}\n </CategoryCardRootElement>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardIconProps = ComponentProps<typeof Slot>;\n\nexport function CategoryCardIcon({ className, children, ...props }: CategoryCardIconProps) {\n return (\n <Slot\n className={cn(\n 'absolute right-5 top-5 z-10 text-[var(--category-card-light-icon,hsl(var(--foreground)))] transition-transform duration-700 ease-out',\n // Group hover state\n 'group-hover/category-card:-translate-y-1.5 group-hover/category-card:translate-x-1.5',\n className,\n )}\n data-slot=\"category-card-icon\"\n {...props}\n >\n {children}\n </Slot>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardThumbnailProps = ComponentProps<'div'>;\n\nexport function CategoryCardThumbnail({\n className,\n children,\n ...props\n}: CategoryCardThumbnailProps) {\n return (\n <div\n className={cn(\n 'relative overflow-hidden rounded-[inherit] bg-[var(--category-card-light-background,hsl(var(--contrast-100)))]',\n // Group focus state\n 'group-focus/category-card:ring-[var(--category-card-focus,hsl(var(--primary)))]',\n // Group focus-visible state\n 'group-focus-visible/category-card:ring-2',\n // Aspect ratio variants\n 'group-data-[aspect-ratio=1/1]/category-card:aspect-square',\n 'group-data-[aspect-ratio=3/4]/category-card:aspect-[3/4]',\n 'group-data-[aspect-ratio=5/6]/category-card:aspect-[5/6]',\n className,\n )}\n data-slot=\"category-card-thumbnail\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardImageProps = ComponentProps<'img'> & {\n asChild?: boolean;\n};\n\nexport function CategoryCardImage({\n className,\n children,\n asChild = false,\n ...props\n}: CategoryCardImageProps) {\n const Component = asChild ? Slot : 'img';\n\n return (\n <Component\n className={cn(\n 'h-full w-full scale-100 select-none bg-[var(--category-card-light-background,hsl(var(--contrast-100)))] object-cover transition-transform duration-500 ease-out',\n // Group hover state\n 'group-hover/category-card:scale-110',\n className,\n )}\n data-slot=\"category-card-image\"\n {...props}\n />\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardFallbackProps = ComponentProps<'div'>;\n\nexport function CategoryCardFallback({ className, children, ...props }: CategoryCardFallbackProps) {\n return (\n <div\n className={cn(\n 'break-words p-4 text-4xl font-bold leading-none tracking-tight transition-transform duration-500 ease-out [color:color-mix(in_oklab,hsl(var(--foreground))_30%,transparent)]',\n // Group hover state\n 'group-hover/category-card:scale-105',\n className,\n )}\n data-slot=\"category-card-fallback\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardOverlayProps = ComponentProps<'div'>;\n\nexport function CategoryCardOverlay({ children, className, ...props }: CategoryCardOverlayProps) {\n return (\n <div\n className={cn(\n 'absolute inset-0 flex items-end p-6',\n // Show overlay gradient\n 'group-data-[show-overlay=true]/category-card:bg-gradient-to-b',\n 'group-data-[show-overlay=true]/category-card:from-foreground/0 group-data-[show-overlay=true]/category-card:from-50%',\n 'group-data-[show-overlay=true]/category-card:via-foreground/0 group-data-[show-overlay=true]/category-card:via-50%',\n 'group-data-[show-overlay=true]/category-card:to-foreground/50 group-data-[show-overlay=true]/category-card:to-100%',\n // Container query\n '@xs:p-8',\n className,\n )}\n data-slot=\"category-card-overlay\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardTitleProps = ComponentProps<'h3'>;\n\nexport function CategoryCardTitle({ children, className, ...props }: CategoryCardTitleProps) {\n return (\n <h3\n className={cn(\n 'font-semibold leading-tight text-[var(--category-card-light-text,hsl(var(--foreground)))]',\n // Text size: small\n 'group-data-[text-size=small]/category-card:text-lg group-data-[text-size=small]/category-card:tracking-normal',\n 'group-data-[text-size=small]/category-card:@xs:text-xl',\n // Text size: medium\n 'group-data-[text-size=medium]/category-card:text-xl group-data-[text-size=medium]/category-card:tracking-normal',\n 'group-data-[text-size=medium]/category-card:@xs:text-2xl',\n // Text size: large\n 'group-data-[text-size=large]/category-card:text-2xl group-data-[text-size=large]/category-card:tracking-tight',\n 'group-data-[text-size=large]/category-card:@xs:text-3xl',\n // Text size: x-large\n 'group-data-[text-size=x-large]/category-card:text-3xl group-data-[text-size=x-large]/category-card:tracking-tight',\n 'group-data-[text-size=x-large]/category-card:@xs:text-4xl',\n className,\n )}\n data-slot=\"category-card-title\"\n {...props}\n >\n {children}\n </h3>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport interface CategoryCardLinkProps extends ComponentProps<'a'> {\n asChild?: boolean;\n}\n\nexport function CategoryCardLink({ asChild = false, className, ...props }: CategoryCardLinkProps) {\n const Component = asChild ? Slot : 'a';\n\n return (\n <Component\n className={cn(\n 'absolute inset-0 rounded-[var(--category-card-border-radius,1rem)] ring-offset-[var(--category-card-light-offset,hsl(var(--background)))]',\n // Focus state\n 'focus:outline-none',\n // Focus-visible state\n 'focus-visible:ring-2 focus-visible:ring-[var(--category-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4',\n className,\n )}\n data-slot=\"category-card-link\"\n {...props}\n />\n );\n}\n"],"names":["CategoryCardRoot","className","children","as","aspectRatio","textSize","showOverlay","props","CategoryCardRootElement","jsx","cn","CategoryCardIcon","Slot","CategoryCardThumbnail","CategoryCardImage","asChild","Component","CategoryCardFallback","CategoryCardOverlay","CategoryCardTitle","CategoryCardLink"],"mappings":"sHAgBO,SAASA,EAAoD,CAClE,UAAAC,EACA,SAAAC,EACA,GAAAC,EACA,YAAAC,EAAc,MACd,SAAAC,EAAW,QACX,YAAAC,EAAc,GACd,GAAGC,CACL,EAA6B,CAC3B,MAAMC,EAA0BL,GAAM,UAEtC,OACEM,EAAAA,IAACD,EAAA,CACC,UAAWE,EAAAA,GACT,yMAEA,+BACA,gCACA,+BACA,iCACAT,CAAA,EAEF,oBAAmBG,EACnB,oBAAmBE,EACnB,YAAU,qBACV,iBAAgBD,EACf,GAAGE,EAEH,SAAAL,CAAA,CAAA,CAGP,CCtCO,SAASS,EAAiB,CAAE,UAAAV,EAAW,SAAAC,EAAU,GAAGK,GAAgC,CACzF,OACEE,EAAAA,IAACG,EAAAA,KAAA,CACC,UAAWF,EAAAA,GACT,uIAEA,uFACAT,CAAA,EAEF,YAAU,qBACT,GAAGM,EAEH,SAAAL,CAAA,CAAA,CAGP,CClBO,SAASW,EAAsB,CACpC,UAAAZ,EACA,SAAAC,EACA,GAAGK,CACL,EAA+B,CAC7B,OACEE,EAAAA,IAAC,MAAA,CACC,UAAWC,EAAAA,GACT,iHAEA,kFAEA,2CAEA,4DACA,2DACA,2DACAT,CAAA,EAEF,YAAU,0BACT,GAAGM,EAEH,SAAAL,CAAA,CAAA,CAGP,CCpBO,SAASY,EAAkB,CAChC,UAAAb,EACA,SAAAC,EACA,QAAAa,EAAU,GACV,GAAGR,CACL,EAA2B,CACzB,MAAMS,EAAYD,EAAUH,EAAAA,KAAO,MAEnC,OACEH,EAAAA,IAACO,EAAA,CACC,UAAWN,EAAAA,GACT,kKAEA,sCACAT,CAAA,EAEF,YAAU,sBACT,GAAGM,CAAA,CAAA,CAGV,CCvBO,SAASU,EAAqB,CAAE,UAAAhB,EAAW,SAAAC,EAAU,GAAGK,GAAoC,CACjG,OACEE,EAAAA,IAAC,MAAA,CACC,UAAWC,EAAAA,GACT,+KAEA,sCACAT,CAAA,EAEF,YAAU,yBACT,GAAGM,EAEH,SAAAL,CAAA,CAAA,CAGP,CCjBO,SAASgB,EAAoB,CAAE,SAAAhB,EAAU,UAAAD,EAAW,GAAGM,GAAmC,CAC/F,OACEE,EAAAA,IAAC,MAAA,CACC,UAAWC,EAAAA,GACT,sCAEA,gEACA,uHACA,qHACA,qHAEA,UACAT,CAAA,EAEF,YAAU,wBACT,GAAGM,EAEH,SAAAL,CAAA,CAAA,CAGP,CCpBO,SAASiB,EAAkB,CAAE,SAAAjB,EAAU,UAAAD,EAAW,GAAGM,GAAiC,CAC3F,OACEE,EAAAA,IAAC,KAAA,CACC,UAAWC,EAAAA,GACT,4FAEA,gHACA,yDAEA,kHACA,2DAEA,gHACA,0DAEA,oHACA,4DACAT,CAAA,EAEF,YAAU,sBACT,GAAGM,EAEH,SAAAL,CAAA,CAAA,CAGP,CCpBO,SAASkB,EAAiB,CAAE,QAAAL,EAAU,GAAO,UAAAd,EAAW,GAAGM,GAAgC,CAChG,MAAMS,EAAYD,EAAUH,EAAAA,KAAO,IAEnC,OACEH,EAAAA,IAACO,EAAA,CACC,UAAWN,EAAAA,GACT,4IAEA,qBAEA,uHACAT,CAAA,EAEF,YAAU,qBACT,GAAGM,CAAA,CAAA,CAGV"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"category-card-link-D85RfMpf.js","sources":["../src/components/category-card/primitives/category-card-root.tsx","../src/components/category-card/primitives/category-card-icon.tsx","../src/components/category-card/primitives/category-card-thumbnail.tsx","../src/components/category-card/primitives/category-card-image.tsx","../src/components/category-card/primitives/category-card-fallback.tsx","../src/components/category-card/primitives/category-card-overlay.tsx","../src/components/category-card/primitives/category-card-title.tsx","../src/components/category-card/primitives/category-card-link.tsx"],"sourcesContent":["'use client';\n\nimport type { ComponentProps, ElementType } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardRootProps<E extends ElementType = 'article'> = Omit<\n ComponentProps<E>,\n 'as'\n> & {\n as?: E;\n aspectRatio?: '5/6' | '3/4' | '1/1';\n textSize?: 'small' | 'medium' | 'large' | 'x-large';\n showOverlay?: boolean;\n};\n\nexport function CategoryCardRoot<T extends ElementType = 'article'>({\n className,\n children,\n as,\n aspectRatio = '5/6',\n textSize = 'small',\n showOverlay = true,\n ...props\n}: CategoryCardRootProps<T>) {\n const CategoryCardRootElement = as ?? 'article';\n\n return (\n <CategoryCardRootElement\n className={cn(\n 'group/category-card relative flex w-full max-w-md cursor-pointer flex-col rounded-[var(--category-card-border-radius,1rem)] font-[var(--category-card-font-family,var(--font-family-body))] @container',\n // Text size gap variants\n 'data-[text-size=small]:gap-2',\n 'data-[text-size=medium]:gap-3',\n 'data-[text-size=large]:gap-4',\n 'data-[text-size=x-large]:gap-5',\n className,\n )}\n data-aspect-ratio={aspectRatio}\n data-show-overlay={showOverlay}\n data-slot=\"category-card-root\"\n data-text-size={textSize}\n {...props}\n >\n {children}\n </CategoryCardRootElement>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardIconProps = ComponentProps<typeof Slot>;\n\nexport function CategoryCardIcon({ className, children, ...props }: CategoryCardIconProps) {\n return (\n <Slot\n className={cn(\n 'absolute right-5 top-5 z-10 text-[var(--category-card-light-icon,hsl(var(--foreground)))] transition-transform duration-700 ease-out',\n // Group hover state\n 'group-hover/category-card:-translate-y-1.5 group-hover/category-card:translate-x-1.5',\n className,\n )}\n data-slot=\"category-card-icon\"\n {...props}\n >\n {children}\n </Slot>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardThumbnailProps = ComponentProps<'div'>;\n\nexport function CategoryCardThumbnail({\n className,\n children,\n ...props\n}: CategoryCardThumbnailProps) {\n return (\n <div\n className={cn(\n 'relative overflow-hidden rounded-[inherit] bg-[var(--category-card-light-background,hsl(var(--contrast-100)))]',\n // Group focus state\n 'group-focus/category-card:ring-[var(--category-card-focus,hsl(var(--primary)))]',\n // Group focus-visible state\n 'group-focus-visible/category-card:ring-2',\n // Aspect ratio variants\n 'group-data-[aspect-ratio=1/1]/category-card:aspect-square',\n 'group-data-[aspect-ratio=3/4]/category-card:aspect-[3/4]',\n 'group-data-[aspect-ratio=5/6]/category-card:aspect-[5/6]',\n className,\n )}\n data-slot=\"category-card-thumbnail\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardImageProps = ComponentProps<'img'> & {\n asChild?: boolean;\n};\n\nexport function CategoryCardImage({\n className,\n children,\n asChild = false,\n ...props\n}: CategoryCardImageProps) {\n const Component = asChild ? Slot : 'img';\n\n return (\n <Component\n className={cn(\n 'h-full w-full scale-100 select-none bg-[var(--category-card-light-background,hsl(var(--contrast-100)))] object-cover transition-transform duration-500 ease-out',\n // Group hover state\n 'group-hover/category-card:scale-110',\n className,\n )}\n data-slot=\"category-card-image\"\n {...props}\n />\n );\n}\n","'use client';\n\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardFallbackProps = ComponentProps<'div'>;\n\nexport function CategoryCardFallback({ className, children, ...props }: CategoryCardFallbackProps) {\n return (\n <div\n className={cn(\n 'break-words p-4 text-4xl font-bold leading-none tracking-tight transition-transform duration-500 ease-out [color:color-mix(in_oklab,hsl(var(--foreground))_30%,transparent)]',\n // Group hover state\n 'group-hover/category-card:scale-105',\n className,\n )}\n data-slot=\"category-card-fallback\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardOverlayProps = ComponentProps<'div'>;\n\nexport function CategoryCardOverlay({ children, className, ...props }: CategoryCardOverlayProps) {\n return (\n <div\n className={cn(\n 'absolute inset-0 flex items-end p-6',\n // Show overlay gradient\n 'group-data-[show-overlay=true]/category-card:bg-gradient-to-b',\n 'group-data-[show-overlay=true]/category-card:from-foreground/0 group-data-[show-overlay=true]/category-card:from-50%',\n 'group-data-[show-overlay=true]/category-card:via-foreground/0 group-data-[show-overlay=true]/category-card:via-50%',\n 'group-data-[show-overlay=true]/category-card:to-foreground/50 group-data-[show-overlay=true]/category-card:to-100%',\n // Container query\n '@xs:p-8',\n className,\n )}\n data-slot=\"category-card-overlay\"\n {...props}\n >\n {children}\n </div>\n );\n}\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport type CategoryCardTitleProps = ComponentProps<'h3'>;\n\nexport function CategoryCardTitle({ children, className, ...props }: CategoryCardTitleProps) {\n return (\n <h3\n className={cn(\n 'font-semibold leading-tight text-[var(--category-card-light-text,hsl(var(--foreground)))]',\n // Text size: small\n 'group-data-[text-size=small]/category-card:text-lg group-data-[text-size=small]/category-card:tracking-normal',\n 'group-data-[text-size=small]/category-card:@xs:text-xl',\n // Text size: medium\n 'group-data-[text-size=medium]/category-card:text-xl group-data-[text-size=medium]/category-card:tracking-normal',\n 'group-data-[text-size=medium]/category-card:@xs:text-2xl',\n // Text size: large\n 'group-data-[text-size=large]/category-card:text-2xl group-data-[text-size=large]/category-card:tracking-tight',\n 'group-data-[text-size=large]/category-card:@xs:text-3xl',\n // Text size: x-large\n 'group-data-[text-size=x-large]/category-card:text-3xl group-data-[text-size=x-large]/category-card:tracking-tight',\n 'group-data-[text-size=x-large]/category-card:@xs:text-4xl',\n className,\n )}\n data-slot=\"category-card-title\"\n {...props}\n >\n {children}\n </h3>\n );\n}\n","'use client';\n\nimport { Slot } from '@radix-ui/react-slot';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib';\n\nexport interface CategoryCardLinkProps extends ComponentProps<'a'> {\n asChild?: boolean;\n}\n\nexport function CategoryCardLink({ asChild = false, className, ...props }: CategoryCardLinkProps) {\n const Component = asChild ? Slot : 'a';\n\n return (\n <Component\n className={cn(\n 'absolute inset-0 rounded-[var(--category-card-border-radius,1rem)] ring-offset-[var(--category-card-light-offset,hsl(var(--background)))]',\n // Focus state\n 'focus:outline-none',\n // Focus-visible state\n 'focus-visible:ring-2 focus-visible:ring-[var(--category-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4',\n className,\n )}\n data-slot=\"category-card-link\"\n {...props}\n />\n );\n}\n"],"names":["CategoryCardRoot","className","children","as","aspectRatio","textSize","showOverlay","props","jsx","cn","CategoryCardIcon","Slot","CategoryCardThumbnail","CategoryCardImage","asChild","CategoryCardFallback","CategoryCardOverlay","CategoryCardTitle","CategoryCardLink"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const d=require("react/jsx-runtime"),q=require("./utils-DoxiiusW.cjs"),H=require("react"),S=require("./index-_XxjJPRD.cjs"),L=require("./index-DO-atGp-.cjs"),j=require("./index-BqyOu62e.cjs"),z=require("./index-C8aODXfJ.cjs"),G=require("./index-DYxWvftI.cjs"),K=require("./index-bSPhqlcX.cjs"),U=require("./index-Bd0gQB0k.cjs"),P=require("./index-C9i1xBih.cjs");function X(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const i=X(H);var R="Checkbox",[J]=L.createContextScope(R),[Q,E]=J(R);function V(e){const{__scopeCheckbox:o,checked:t,children:n,defaultChecked:a,disabled:r,form:b,name:k,onCheckedChange:u,required:x,value:p="on",internal_do_not_use_render:l}=e,[h,m]=z.useControllableState({prop:t,defaultProp:a??!1,onChange:u,caller:R}),[v,C]=i.useState(null),[g,c]=i.useState(null),s=i.useRef(!1),_=v?!!b||!!v.closest("form"):!0,y={checked:h,disabled:r,setChecked:m,control:v,setControl:C,name:k,form:b,value:p,hasConsumerStoppedPropagationRef:s,required:x,defaultChecked:f(a)?!1:a,isFormControl:_,bubbleInput:g,setBubbleInput:c};return d.jsx(Q,{scope:o,...y,children:W(l)?l(y):n})}var N="CheckboxTrigger",w=i.forwardRef(({__scopeCheckbox:e,onKeyDown:o,onClick:t,...n},a)=>{const{control:r,value:b,disabled:k,checked:u,required:x,setControl:p,setChecked:l,hasConsumerStoppedPropagationRef:h,isFormControl:m,bubbleInput:v}=E(N,e),C=S.useComposedRefs(a,p),g=i.useRef(u);return i.useEffect(()=>{const c=r?.form;if(c){const s=()=>l(g.current);return c.addEventListener("reset",s),()=>c.removeEventListener("reset",s)}},[r,l]),d.jsx(P.Primitive.button,{type:"button",role:"checkbox","aria-checked":f(u)?"mixed":u,"aria-required":x,"data-state":D(u),"data-disabled":k?"":void 0,disabled:k,value:b,...n,ref:C,onKeyDown:j.composeEventHandlers(o,c=>{c.key==="Enter"&&c.preventDefault()}),onClick:j.composeEventHandlers(t,c=>{l(s=>f(s)?!0:!s),v&&m&&(h.current=c.isPropagationStopped(),h.current||c.stopPropagation())})})});w.displayName=N;var O=i.forwardRef((e,o)=>{const{__scopeCheckbox:t,name:n,checked:a,defaultChecked:r,required:b,disabled:k,value:u,onCheckedChange:x,form:p,...l}=e;return d.jsx(V,{__scopeCheckbox:t,checked:a,defaultChecked:r,disabled:k,required:b,onCheckedChange:x,name:n,form:p,value:u,internal_do_not_use_render:({isFormControl:h})=>d.jsxs(d.Fragment,{children:[d.jsx(w,{...l,ref:o,__scopeCheckbox:t}),h&&d.jsx(T,{__scopeCheckbox:t})]})})});O.displayName=R;var B="CheckboxIndicator",$=i.forwardRef((e,o)=>{const{__scopeCheckbox:t,forceMount:n,...a}=e,r=E(B,t);return d.jsx(U.Presence,{present:n||f(r.checked)||r.checked===!0,children:d.jsx(P.Primitive.span,{"data-state":D(r.checked),"data-disabled":r.disabled?"":void 0,...a,ref:o,style:{pointerEvents:"none",...e.style}})})});$.displayName=B;var M="CheckboxBubbleInput",T=i.forwardRef(({__scopeCheckbox:e,...o},t)=>{const{control:n,hasConsumerStoppedPropagationRef:a,checked:r,defaultChecked:b,required:k,disabled:u,name:x,value:p,form:l,bubbleInput:h,setBubbleInput:m}=E(M,e),v=S.useComposedRefs(t,m),C=G.usePrevious(r),g=K.useSize(n);i.useEffect(()=>{const s=h;if(!s)return;const _=window.HTMLInputElement.prototype,I=Object.getOwnPropertyDescriptor(_,"checked").set,A=!a.current;if(C!==r&&I){const F=new Event("click",{bubbles:A});s.indeterminate=f(r),I.call(s,f(r)?!1:r),s.dispatchEvent(F)}},[h,C,r,a]);const c=i.useRef(f(r)?!1:r);return d.jsx(P.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:b??c.current,required:k,disabled:u,name:x,value:p,form:l,...o,tabIndex:-1,ref:v,style:{...o.style,...g,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});T.displayName=M;function W(e){return typeof e=="function"}function f(e){return e==="indeterminate"}function D(e){return f(e)?"indeterminate":e?"checked":"unchecked"}function Y({children:e,className:o,...t}){return d.jsx(O,{className:q.cn("peer flex h-5 w-5 items-center justify-center","rounded-md border","transition-colors duration-150","focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))]","disabled:cursor-not-allowed","disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))]","disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))]","disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]","enabled:data-[state=checked]:border-[var(--checkbox-light-checked-border,hsl(var(--foreground)))]","enabled:data-[state=checked]:bg-[var(--checkbox-light-checked-background,hsl(var(--foreground)))]","enabled:data-[state=checked]:text-[var(--checkbox-light-checked-text,hsl(var(--background)))]","enabled:data-[state=unchecked]:border-[var(--checkbox-light-unchecked-border,hsl(var(--contrast-200)))]","enabled:data-[state=unchecked]:bg-[var(--checkbox-light-unchecked-background,hsl(var(--background)))]","enabled:data-[state=unchecked]:text-[var(--checkbox-light-unchecked-text,hsl(var(--foreground)))]","enabled:data-[state=checked]:hover:border-[var(--checkbox-light-checked-border-hover,hsl(var(--foreground)))]","enabled:data-[state=unchecked]:hover:border-[var(--checkbox-light-unchecked-border-hover,hsl(var(--contrast-300)))]","aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]",o),"data-slot":"checkbox-root",...t,children:e})}function Z({className:e,children:o,...t}){return d.jsx($,{className:q.cn(e),"data-slot":"checkbox-indicator",...t,children:o})}exports.CheckboxIndicator=Z;exports.CheckboxRoot=Y;
|
|
2
|
-
//# sourceMappingURL=checkbox-indicator-DVkOzOV6.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-indicator-DVkOzOV6.cjs","sources":["../node_modules/.pnpm/@radix-ui+react-checkbox@1.3.3_@types+react-dom@19.2.2_@types+react@19.2.2__@types+react@19.2_pia3geztaxdtc7a3vc4d2dm3y4/node_modules/@radix-ui/react-checkbox/dist/index.mjs","../src/components/checkbox/primitives/checkbox-root.tsx","../src/components/checkbox/primitives/checkbox-indicator.tsx"],"sourcesContent":["\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nexport type CheckboxRootProps = ComponentProps<typeof CheckboxPrimitive.Root>;\n\nexport function CheckboxRoot({ children, className, ...props }: CheckboxRootProps) {\n return (\n <CheckboxPrimitive.Root\n className={cn(\n // Base layout\n 'peer flex h-5 w-5 items-center justify-center',\n // Borders & Rounded\n 'rounded-md border',\n // Transitions\n 'transition-colors duration-150',\n // Focus-visible state\n 'focus-visible:outline-0 focus-visible:ring-2 focus-visible:ring-[var(--checkbox-focus,hsl(var(--primary)))]',\n // Disabled state\n 'disabled:cursor-not-allowed',\n 'disabled:border-[var(--checkbox-light-disabled-border,hsl(var(--contrast-200)))]',\n 'disabled:bg-[var(--checkbox-light-disabled-background,hsl(var(--contrast-100)))]',\n 'disabled:text-[var(--checkbox-light-disabled-icon,hsl(var(--contrast-300)))]',\n // Enabled + Checked state\n 'enabled:data-[state=checked]:border-[var(--checkbox-light-checked-border,hsl(var(--foreground)))]',\n 'enabled:data-[state=checked]:bg-[var(--checkbox-light-checked-background,hsl(var(--foreground)))]',\n 'enabled:data-[state=checked]:text-[var(--checkbox-light-checked-text,hsl(var(--background)))]',\n // Enabled + Unchecked state\n 'enabled:data-[state=unchecked]:border-[var(--checkbox-light-unchecked-border,hsl(var(--contrast-200)))]',\n 'enabled:data-[state=unchecked]:bg-[var(--checkbox-light-unchecked-background,hsl(var(--background)))]',\n 'enabled:data-[state=unchecked]:text-[var(--checkbox-light-unchecked-text,hsl(var(--foreground)))]',\n // Enabled + Checked + Hover state\n 'enabled:data-[state=checked]:hover:border-[var(--checkbox-light-checked-border-hover,hsl(var(--foreground)))]',\n // Enabled + Unchecked + Hover state\n 'enabled:data-[state=unchecked]:hover:border-[var(--checkbox-light-unchecked-border-hover,hsl(var(--contrast-300)))]',\n // Aria-invalid state\n 'aria-invalid:border-[var(--checkbox-light-error,hsl(var(--error)))]',\n className,\n )}\n data-slot=\"checkbox-root\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Root>\n );\n}\n","'use client';\n\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport type { ComponentProps } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nexport type CheckboxIndicatorProps = ComponentProps<typeof CheckboxPrimitive.Indicator>;\n\nexport function CheckboxIndicator({ className, children, ...props }: CheckboxIndicatorProps) {\n return (\n <CheckboxPrimitive.Indicator\n className={cn(className)}\n data-slot=\"checkbox-indicator\"\n {...props}\n >\n {children}\n </CheckboxPrimitive.Indicator>\n );\n}\n"],"names":["CHECKBOX_NAME","createCheckboxContext","createContextScope","CheckboxProviderImpl","useCheckboxContext","CheckboxProvider","props","__scopeCheckbox","checkedProp","children","defaultChecked","disabled","form","name","onCheckedChange","required","value","internal_do_not_use_render","checked","setChecked","useControllableState","control","setControl","React","bubbleInput","setBubbleInput","hasConsumerStoppedPropagationRef","isFormControl","context","isIndeterminate","jsx","isFunction","TRIGGER_NAME","CheckboxTrigger","onKeyDown","onClick","checkboxProps","forwardedRef","composedRefs","useComposedRefs","initialCheckedStateRef","reset","Primitive","getState","composeEventHandlers","event","prevChecked","Checkbox","jsxs","Fragment","CheckboxBubbleInput","INDICATOR_NAME","CheckboxIndicator","forceMount","indicatorProps","Presence","BUBBLE_INPUT_NAME","usePrevious","controlSize","useSize","input","inputProto","bubbles","defaultCheckedRef","CheckboxRoot","className","CheckboxPrimitive.Root","cn","CheckboxPrimitive.Indicator"],"mappings":"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","x_google_ignoreList":[0]}
|