erp-pro-ui 0.1.7 → 0.1.8
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 +102 -0
- package/dist/ascii-text.cjs +1 -1
- package/dist/ascii-text.mjs +1 -1
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.mjs +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.mjs +1 -1
- package/dist/carousel.cjs +1 -1
- package/dist/carousel.mjs +1 -1
- package/dist/catalog.cjs +6 -0
- package/dist/catalog.cjs.map +1 -1
- package/dist/catalog.d.ts +11 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.mjs +6 -0
- package/dist/catalog.mjs.map +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.mjs +1 -1
- package/dist/chip.cjs +1 -1
- package/dist/chip.mjs +1 -1
- package/dist/chroma-grid.cjs +1 -1
- package/dist/chroma-grid.mjs +1 -1
- package/dist/chunks/DropdownMenu-C17Zqu_E.mjs +51 -0
- package/dist/chunks/DropdownMenu-C17Zqu_E.mjs.map +1 -0
- package/dist/chunks/DropdownMenu-DOvo5pV_.cjs +57 -0
- package/dist/chunks/DropdownMenu-DOvo5pV_.cjs.map +1 -0
- package/dist/chunks/{sun-to-moon-button-CBbDar4k.mjs → SunToMoonButton-BkEfkElJ.mjs} +2 -115
- package/dist/chunks/SunToMoonButton-BkEfkElJ.mjs.map +1 -0
- package/dist/chunks/{sun-to-moon-button-BOx1n6nk.cjs → SunToMoonButton-jS4BJD9q.cjs} +1 -120
- package/dist/chunks/SunToMoonButton-jS4BJD9q.cjs.map +1 -0
- package/dist/chunks/{ascii-text-RJxX3wCC.mjs → ascii-text-OBwVLFDC.mjs} +1 -1
- package/dist/chunks/{ascii-text-RJxX3wCC.mjs.map → ascii-text-OBwVLFDC.mjs.map} +1 -1
- package/dist/chunks/{ascii-text-BP-BBy0-.cjs → ascii-text-OnPOTd2I.cjs} +1 -1
- package/dist/chunks/{ascii-text-BP-BBy0-.cjs.map → ascii-text-OnPOTd2I.cjs.map} +1 -1
- package/dist/chunks/{calendar-Cp84V2rY.mjs → calendar-BOBm3dFA.mjs} +2 -2
- package/dist/chunks/{calendar-Cp84V2rY.mjs.map → calendar-BOBm3dFA.mjs.map} +1 -1
- package/dist/chunks/{calendar-DuCKr6b7.cjs → calendar-DJkfDhQA.cjs} +2 -2
- package/dist/chunks/{calendar-DuCKr6b7.cjs.map → calendar-DJkfDhQA.cjs.map} +1 -1
- package/dist/chunks/{card-SpHHNB0c.mjs → card-BId1_zHw.mjs} +1 -1
- package/dist/chunks/{card-SpHHNB0c.mjs.map → card-BId1_zHw.mjs.map} +1 -1
- package/dist/chunks/{card-CqPDr6Tt.cjs → card-RrT68nvu.cjs} +1 -1
- package/dist/chunks/{card-CqPDr6Tt.cjs.map → card-RrT68nvu.cjs.map} +1 -1
- package/dist/chunks/{carousel-C1skQ65z.mjs → carousel-DUqOaYvs.mjs} +1 -1
- package/dist/chunks/{carousel-C1skQ65z.mjs.map → carousel-DUqOaYvs.mjs.map} +1 -1
- package/dist/chunks/{carousel-YlRLOGkM.cjs → carousel-F4drTOr6.cjs} +1 -1
- package/dist/chunks/{carousel-YlRLOGkM.cjs.map → carousel-F4drTOr6.cjs.map} +1 -1
- package/dist/chunks/{checkbox-DjGpvMyo.mjs → checkbox-3aB7XC9_.mjs} +2 -2
- package/dist/chunks/checkbox-3aB7XC9_.mjs.map +1 -0
- package/dist/chunks/{checkbox-NM_iPd6S.cjs → checkbox-D8ivRZ1x.cjs} +2 -2
- package/dist/chunks/checkbox-D8ivRZ1x.cjs.map +1 -0
- package/dist/chunks/{chip-CbO8-1lK.mjs → chip-BFg3DJx6.mjs} +1 -1
- package/dist/chunks/{chip-CbO8-1lK.mjs.map → chip-BFg3DJx6.mjs.map} +1 -1
- package/dist/chunks/{chip-BY83_HK7.cjs → chip-CMs73sc5.cjs} +1 -1
- package/dist/chunks/{chip-BY83_HK7.cjs.map → chip-CMs73sc5.cjs.map} +1 -1
- package/dist/chunks/{chroma-grid-CexX28VQ.mjs → chroma-grid-DlY9hIRI.mjs} +1 -1
- package/dist/chunks/{chroma-grid-CexX28VQ.mjs.map → chroma-grid-DlY9hIRI.mjs.map} +1 -1
- package/dist/chunks/{chroma-grid-DP__XtmV.cjs → chroma-grid-tJX7CzCS.cjs} +1 -1
- package/dist/chunks/{chroma-grid-DP__XtmV.cjs.map → chroma-grid-tJX7CzCS.cjs.map} +1 -1
- package/dist/chunks/{color-palette-ThIKMhT1.cjs → color-palette-BmQC14gE.cjs} +1 -1
- package/dist/chunks/{color-palette-ThIKMhT1.cjs.map → color-palette-BmQC14gE.cjs.map} +1 -1
- package/dist/chunks/{color-palette-BU1cI6XP.mjs → color-palette-DnX1sODj.mjs} +1 -1
- package/dist/chunks/{color-palette-BU1cI6XP.mjs.map → color-palette-DnX1sODj.mjs.map} +1 -1
- package/dist/chunks/combobox-Bcwi33Qx.mjs +127 -0
- package/dist/chunks/combobox-Bcwi33Qx.mjs.map +1 -0
- package/dist/chunks/combobox-DRiHHhXL.cjs +134 -0
- package/dist/chunks/combobox-DRiHHhXL.cjs.map +1 -0
- package/dist/chunks/{data-table-B2r5OUFX.mjs → data-table-Biom5rvs.mjs} +189 -159
- package/dist/chunks/data-table-Biom5rvs.mjs.map +1 -0
- package/dist/chunks/{data-table-BLt8DTVy.cjs → data-table-D0BD2sFz.cjs} +189 -159
- package/dist/chunks/data-table-D0BD2sFz.cjs.map +1 -0
- package/dist/chunks/{date-picker-Bh6_p4bD.mjs → date-picker-CXGwnrLr.mjs} +8 -5
- package/dist/chunks/date-picker-CXGwnrLr.mjs.map +1 -0
- package/dist/chunks/{date-picker-CfCvp6Tj.cjs → date-picker-Cw_tZGuk.cjs} +8 -5
- package/dist/chunks/date-picker-Cw_tZGuk.cjs.map +1 -0
- package/dist/chunks/{dialog-BibwiFLY.mjs → dialog-CanVyiAD.mjs} +2 -2
- package/dist/chunks/{dialog-BibwiFLY.mjs.map → dialog-CanVyiAD.mjs.map} +1 -1
- package/dist/chunks/{dialog-I141I0nc.cjs → dialog-fffx1-4D.cjs} +2 -2
- package/dist/chunks/{dialog-I141I0nc.cjs.map → dialog-fffx1-4D.cjs.map} +1 -1
- package/dist/chunks/{drawer-DsE8Pb8e.mjs → drawer-BJsBK6cP.mjs} +2 -2
- package/dist/chunks/{drawer-DsE8Pb8e.mjs.map → drawer-BJsBK6cP.mjs.map} +1 -1
- package/dist/chunks/{drawer-EC9eopGX.cjs → drawer-DTRnKChF.cjs} +2 -2
- package/dist/chunks/{drawer-EC9eopGX.cjs.map → drawer-DTRnKChF.cjs.map} +1 -1
- package/dist/chunks/{form-DaGyqM97.cjs → form-C_JxqsSZ.cjs} +1 -1
- package/dist/chunks/{form-DaGyqM97.cjs.map → form-C_JxqsSZ.cjs.map} +1 -1
- package/dist/chunks/{form-CRwpjFWu.mjs → form-CvNNjA1i.mjs} +1 -1
- package/dist/chunks/{form-CRwpjFWu.mjs.map → form-CvNNjA1i.mjs.map} +1 -1
- package/dist/chunks/{gradual-blur-Di7MBs7M.cjs → gradual-blur-BB-8oKX6.cjs} +1 -1
- package/dist/chunks/{gradual-blur-Di7MBs7M.cjs.map → gradual-blur-BB-8oKX6.cjs.map} +1 -1
- package/dist/chunks/{gradual-blur-pt0UiMEy.mjs → gradual-blur-BR06yO3Y.mjs} +1 -1
- package/dist/chunks/{gradual-blur-pt0UiMEy.mjs.map → gradual-blur-BR06yO3Y.mjs.map} +1 -1
- package/dist/chunks/{hover-card-D78E07hk.cjs → hover-card--rplmsA_.cjs} +1 -1
- package/dist/chunks/{hover-card-D78E07hk.cjs.map → hover-card--rplmsA_.cjs.map} +1 -1
- package/dist/chunks/{hover-card-C3Xa18Ov.mjs → hover-card-C88rU-nW.mjs} +1 -1
- package/dist/chunks/{hover-card-C3Xa18Ov.mjs.map → hover-card-C88rU-nW.mjs.map} +1 -1
- package/dist/chunks/{input-CpARxvFi.mjs → input-Dox16Ozo.mjs} +17 -5
- package/dist/chunks/input-Dox16Ozo.mjs.map +1 -0
- package/dist/chunks/{input-DTW_8EwG.cjs → input-T4OlFhBc.cjs} +17 -5
- package/dist/chunks/input-T4OlFhBc.cjs.map +1 -0
- package/dist/chunks/{label-BVH02Yvq.mjs → label-C1Ekt3j2.mjs} +1 -1
- package/dist/chunks/{label-BVH02Yvq.mjs.map → label-C1Ekt3j2.mjs.map} +1 -1
- package/dist/chunks/{label-DN-Bg5i8.cjs → label-CxmbGh0l.cjs} +1 -1
- package/dist/chunks/{label-DN-Bg5i8.cjs.map → label-CxmbGh0l.cjs.map} +1 -1
- package/dist/chunks/{loading-B1yrR3KX.cjs → loading-BiM4mKh6.cjs} +1 -1
- package/dist/chunks/{loading-B1yrR3KX.cjs.map → loading-BiM4mKh6.cjs.map} +1 -1
- package/dist/chunks/{loading-B2Ron0Fd.mjs → loading-Dtosnb4A.mjs} +1 -1
- package/dist/chunks/{loading-B2Ron0Fd.mjs.map → loading-Dtosnb4A.mjs.map} +1 -1
- package/dist/chunks/multi-select-combobox-BrFtvCrS.mjs +120 -0
- package/dist/chunks/multi-select-combobox-BrFtvCrS.mjs.map +1 -0
- package/dist/chunks/{multi-select-combobox-FEbMAPEg.cjs → multi-select-combobox-BzqYLVpV.cjs} +54 -66
- package/dist/chunks/multi-select-combobox-BzqYLVpV.cjs.map +1 -0
- package/dist/chunks/{otp-input-B6nJC-Fl.cjs → otp-input-CkhV-sGl.cjs} +1 -1
- package/dist/chunks/{otp-input-B6nJC-Fl.cjs.map → otp-input-CkhV-sGl.cjs.map} +1 -1
- package/dist/chunks/{otp-input-B7DhhsMe.mjs → otp-input-JOysxKfD.mjs} +1 -1
- package/dist/chunks/{otp-input-B7DhhsMe.mjs.map → otp-input-JOysxKfD.mjs.map} +1 -1
- package/dist/chunks/{overlay-C58wXorc.mjs → overlay-BzkUmjQ-.mjs} +1 -1
- package/dist/chunks/{overlay-C58wXorc.mjs.map → overlay-BzkUmjQ-.mjs.map} +1 -1
- package/dist/chunks/{overlay-DwJgjJuu.cjs → overlay-DNnZywyR.cjs} +1 -1
- package/dist/chunks/{overlay-DwJgjJuu.cjs.map → overlay-DNnZywyR.cjs.map} +1 -1
- package/dist/chunks/{password-strength-meter-D7gmZNjp.mjs → password-strength-meter-BEx94cfy.mjs} +2 -2
- package/dist/chunks/{password-strength-meter-D7gmZNjp.mjs.map → password-strength-meter-BEx94cfy.mjs.map} +1 -1
- package/dist/chunks/{password-strength-meter-6vNu6p19.cjs → password-strength-meter-BNnmSgLh.cjs} +2 -2
- package/dist/chunks/{password-strength-meter-6vNu6p19.cjs.map → password-strength-meter-BNnmSgLh.cjs.map} +1 -1
- package/dist/chunks/{progress-bar-D6Q9Di7D.mjs → progress-bar-C9O0tuZf.mjs} +1 -1
- package/dist/chunks/{progress-bar-D6Q9Di7D.mjs.map → progress-bar-C9O0tuZf.mjs.map} +1 -1
- package/dist/chunks/{progress-bar-CbsCItvv.cjs → progress-bar-DS8KZ7eO.cjs} +1 -1
- package/dist/chunks/{progress-bar-CbsCItvv.cjs.map → progress-bar-DS8KZ7eO.cjs.map} +1 -1
- package/dist/chunks/{radio-DxakS7iD.cjs → radio-BiD1ofmq.cjs} +2 -2
- package/dist/chunks/radio-BiD1ofmq.cjs.map +1 -0
- package/dist/chunks/{radio-C6Meq2iz.mjs → radio-C7Eg3FEp.mjs} +2 -2
- package/dist/chunks/radio-C7Eg3FEp.mjs.map +1 -0
- package/dist/chunks/{select-SOmIt-BD.cjs → select-CORFYTvs.cjs} +39 -44
- package/dist/chunks/select-CORFYTvs.cjs.map +1 -0
- package/dist/chunks/{select-1rSJeUBQ.mjs → select-D0GOBB-b.mjs} +40 -45
- package/dist/chunks/select-D0GOBB-b.mjs.map +1 -0
- package/dist/chunks/sidebar-BrOLz89T.mjs +508 -0
- package/dist/chunks/sidebar-BrOLz89T.mjs.map +1 -0
- package/dist/chunks/sidebar-D9D651F6.cjs +538 -0
- package/dist/chunks/sidebar-D9D651F6.cjs.map +1 -0
- package/dist/chunks/{skeleton-BRx-80dg.mjs → skeleton-BdijDxP6.mjs} +1 -1
- package/dist/chunks/{skeleton-BRx-80dg.mjs.map → skeleton-BdijDxP6.mjs.map} +1 -1
- package/dist/chunks/{skeleton-o7DlA5yl.cjs → skeleton-wQOE-pRg.cjs} +1 -1
- package/dist/chunks/{skeleton-o7DlA5yl.cjs.map → skeleton-wQOE-pRg.cjs.map} +1 -1
- package/dist/chunks/{spinners-BylPf0uk.cjs → spinners-C9acUulz.cjs} +1 -1
- package/dist/chunks/{spinners-BylPf0uk.cjs.map → spinners-C9acUulz.cjs.map} +1 -1
- package/dist/chunks/{spinners-hJaI_cBH.mjs → spinners-g6_Up5Rb.mjs} +1 -1
- package/dist/chunks/{spinners-hJaI_cBH.mjs.map → spinners-g6_Up5Rb.mjs.map} +1 -1
- package/dist/chunks/{splash-cursor-CmqkSl6m.cjs → splash-cursor-CCi5n3O-.cjs} +1 -1
- package/dist/chunks/{splash-cursor-CmqkSl6m.cjs.map → splash-cursor-CCi5n3O-.cjs.map} +1 -1
- package/dist/chunks/{splash-cursor-Cxouip_h.mjs → splash-cursor-CDHTm5vA.mjs} +1 -1
- package/dist/chunks/{splash-cursor-Cxouip_h.mjs.map → splash-cursor-CDHTm5vA.mjs.map} +1 -1
- package/dist/chunks/{spotlight-card-B3L3K21T.cjs → spotlight-card-Bh7KG0vZ.cjs} +1 -1
- package/dist/chunks/{spotlight-card-B3L3K21T.cjs.map → spotlight-card-Bh7KG0vZ.cjs.map} +1 -1
- package/dist/chunks/{spotlight-card-DIgacTxA.mjs → spotlight-card-D0uTxfPZ.mjs} +1 -1
- package/dist/chunks/{spotlight-card-DIgacTxA.mjs.map → spotlight-card-D0uTxfPZ.mjs.map} +1 -1
- package/dist/chunks/{stepper-JD4ZHT-b.mjs → stepper-BMKxjCdm.mjs} +24 -17
- package/dist/chunks/stepper-BMKxjCdm.mjs.map +1 -0
- package/dist/chunks/{stepper-BpjKyemI.cjs → stepper-Z_7ugZJN.cjs} +24 -17
- package/dist/chunks/stepper-Z_7ugZJN.cjs.map +1 -0
- package/dist/chunks/sun-to-moon-button-DcRX0obV.mjs +118 -0
- package/dist/chunks/sun-to-moon-button-DcRX0obV.mjs.map +1 -0
- package/dist/chunks/sun-to-moon-button-De0_Sf01.cjs +124 -0
- package/dist/chunks/sun-to-moon-button-De0_Sf01.cjs.map +1 -0
- package/dist/chunks/{switch-hd7zTBD_.mjs → switch-C1gKE0m0.mjs} +22 -6
- package/dist/chunks/switch-C1gKE0m0.mjs.map +1 -0
- package/dist/chunks/{switch-C9suGEWg.cjs → switch-DPyzVrNh.cjs} +22 -6
- package/dist/chunks/switch-DPyzVrNh.cjs.map +1 -0
- package/dist/chunks/{textarea-Cu26uKqq.mjs → textarea-BY5-J9No.mjs} +1 -1
- package/dist/chunks/{textarea-Cu26uKqq.mjs.map → textarea-BY5-J9No.mjs.map} +1 -1
- package/dist/chunks/{textarea-cXgKzluG.cjs → textarea-D-oBQ3IZ.cjs} +1 -1
- package/dist/chunks/{textarea-cXgKzluG.cjs.map → textarea-D-oBQ3IZ.cjs.map} +1 -1
- package/dist/chunks/{toast-CpX-22n2.mjs → toast-BcBidy5n.mjs} +1 -1
- package/dist/chunks/{toast-CpX-22n2.mjs.map → toast-BcBidy5n.mjs.map} +1 -1
- package/dist/chunks/{toast-REa6FRBc.cjs → toast-DiFgv3IL.cjs} +1 -1
- package/dist/chunks/{toast-REa6FRBc.cjs.map → toast-DiFgv3IL.cjs.map} +1 -1
- package/dist/chunks/{tooltip-CASvQiFQ.mjs → tooltip-CmB8xKOF.mjs} +1 -1
- package/dist/chunks/{tooltip-CASvQiFQ.mjs.map → tooltip-CmB8xKOF.mjs.map} +1 -1
- package/dist/chunks/{tooltip-CKF78rni.cjs → tooltip-PJaQa8_l.cjs} +1 -1
- package/dist/chunks/{tooltip-CKF78rni.cjs.map → tooltip-PJaQa8_l.cjs.map} +1 -1
- package/dist/chunks/{typography-KxLf6Td8.mjs → typography-C_IanU4b.mjs} +1 -1
- package/dist/chunks/{typography-KxLf6Td8.mjs.map → typography-C_IanU4b.mjs.map} +1 -1
- package/dist/chunks/{typography-sGmh0gZ_.cjs → typography-DUD6Dzd5.cjs} +1 -1
- package/dist/chunks/{typography-sGmh0gZ_.cjs.map → typography-DUD6Dzd5.cjs.map} +1 -1
- package/dist/color-palette.cjs +1 -1
- package/dist/color-palette.mjs +1 -1
- package/dist/combobox.cjs +1 -1
- package/dist/combobox.mjs +1 -1
- package/dist/components/data-display/data-table/DataTable.d.ts +6 -1
- package/dist/components/data-display/data-table/DataTable.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTableControls.d.ts +3 -2
- package/dist/components/data-display/data-table/DataTableControls.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTableFilters.d.ts +2 -1
- package/dist/components/data-display/data-table/DataTableFilters.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTableRows.d.ts +6 -1
- package/dist/components/data-display/data-table/DataTableRows.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTableToolbar.d.ts.map +1 -1
- package/dist/components/forms/combobox/Combobox.d.ts +2 -0
- package/dist/components/forms/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/forms/date-picker/DatePicker.d.ts.map +1 -1
- package/dist/components/forms/input/Input.d.ts.map +1 -1
- package/dist/components/forms/multi-select-combobox/MultiSelectCombobox.d.ts +2 -0
- package/dist/components/forms/multi-select-combobox/MultiSelectCombobox.d.ts.map +1 -1
- package/dist/components/forms/select/Select.d.ts.map +1 -1
- package/dist/components/forms/select/types.d.ts +1 -0
- package/dist/components/forms/select/types.d.ts.map +1 -1
- package/dist/components/forms/switch/Switch.d.ts.map +1 -1
- package/dist/components/navigation/index.d.ts +1 -0
- package/dist/components/navigation/index.d.ts.map +1 -1
- package/dist/components/navigation/sidebar/DashboardSidebarShell.d.ts +27 -0
- package/dist/components/navigation/sidebar/DashboardSidebarShell.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/HamburgerIcon.d.ts +6 -0
- package/dist/components/navigation/sidebar/HamburgerIcon.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/NavLink.d.ts +3 -0
- package/dist/components/navigation/sidebar/NavLink.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/Sidebar.d.ts +3 -0
- package/dist/components/navigation/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/SidebarLinks.d.ts +3 -0
- package/dist/components/navigation/sidebar/SidebarLinks.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/index.d.ts +8 -0
- package/dist/components/navigation/sidebar/index.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/types.d.ts +53 -0
- package/dist/components/navigation/sidebar/types.d.ts.map +1 -0
- package/dist/components/navigation/stepper/Stepper.d.ts +1 -1
- package/dist/components/navigation/stepper/Stepper.d.ts.map +1 -1
- package/dist/components/navigation/stepper/index.d.ts +1 -1
- package/dist/components/navigation/stepper/index.d.ts.map +1 -1
- package/dist/components/navigation/stepper/types.d.ts +5 -0
- package/dist/components/navigation/stepper/types.d.ts.map +1 -1
- package/dist/components/overlays/dropdown-menu/DropdownMenu.d.ts +3 -0
- package/dist/components/overlays/dropdown-menu/DropdownMenu.d.ts.map +1 -0
- package/dist/components/overlays/dropdown-menu/index.d.ts +3 -0
- package/dist/components/overlays/dropdown-menu/index.d.ts.map +1 -0
- package/dist/components/overlays/dropdown-menu/types.d.ts +12 -0
- package/dist/components/overlays/dropdown-menu/types.d.ts.map +1 -0
- package/dist/components/overlays/index.d.ts +1 -0
- package/dist/components/overlays/index.d.ts.map +1 -1
- package/dist/data-table.cjs +1 -1
- package/dist/data-table.mjs +1 -1
- package/dist/date-picker.cjs +1 -1
- package/dist/date-picker.mjs +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.mjs +1 -1
- package/dist/docs.cjs +12 -0
- package/dist/docs.cjs.map +1 -1
- package/dist/docs.d.ts.map +1 -1
- package/dist/docs.mjs +12 -0
- package/dist/docs.mjs.map +1 -1
- package/dist/drawer.cjs +1 -1
- package/dist/drawer.mjs +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.mjs +1 -1
- package/dist/gradual-blur.cjs +1 -1
- package/dist/gradual-blur.mjs +1 -1
- package/dist/hover-card.cjs +1 -1
- package/dist/hover-card.mjs +1 -1
- package/dist/index.cjs +46 -37
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +40 -37
- package/dist/index.mjs.map +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.mjs +1 -1
- package/dist/label.cjs +1 -1
- package/dist/label.mjs +1 -1
- package/dist/loading.cjs +1 -1
- package/dist/loading.mjs +1 -1
- package/dist/multi-select-combobox.cjs +1 -1
- package/dist/multi-select-combobox.mjs +1 -1
- package/dist/otp-input.cjs +1 -1
- package/dist/otp-input.mjs +1 -1
- package/dist/password-strength-meter.cjs +1 -1
- package/dist/password-strength-meter.mjs +1 -1
- package/dist/progress-bar.cjs +1 -1
- package/dist/progress-bar.mjs +1 -1
- package/dist/radio.cjs +1 -1
- package/dist/radio.mjs +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.mjs +1 -1
- package/dist/sidebar.cjs +7 -0
- package/dist/sidebar.d.ts +2 -0
- package/dist/sidebar.mjs +2 -0
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.mjs +1 -1
- package/dist/spinners.cjs +1 -1
- package/dist/spinners.mjs +1 -1
- package/dist/splash-cursor.cjs +1 -1
- package/dist/splash-cursor.mjs +1 -1
- package/dist/spotlight-card.cjs +1 -1
- package/dist/spotlight-card.mjs +1 -1
- package/dist/stepper.cjs +1 -1
- package/dist/stepper.mjs +1 -1
- package/dist/sun-to-moon-button.cjs +3 -2
- package/dist/sun-to-moon-button.mjs +2 -1
- package/dist/switch.cjs +1 -1
- package/dist/switch.mjs +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.mjs +1 -1
- package/dist/toast.cjs +1 -1
- package/dist/toast.mjs +1 -1
- package/dist/tokens.css +9 -9
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.mjs +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.mjs +1 -1
- package/package.json +7 -1
- package/dist/chunks/checkbox-DjGpvMyo.mjs.map +0 -1
- package/dist/chunks/checkbox-NM_iPd6S.cjs.map +0 -1
- package/dist/chunks/combobox-B7UIcjsI.cjs +0 -147
- package/dist/chunks/combobox-B7UIcjsI.cjs.map +0 -1
- package/dist/chunks/combobox-D6WnThIQ.mjs +0 -140
- package/dist/chunks/combobox-D6WnThIQ.mjs.map +0 -1
- package/dist/chunks/data-table-B2r5OUFX.mjs.map +0 -1
- package/dist/chunks/data-table-BLt8DTVy.cjs.map +0 -1
- package/dist/chunks/date-picker-Bh6_p4bD.mjs.map +0 -1
- package/dist/chunks/date-picker-CfCvp6Tj.cjs.map +0 -1
- package/dist/chunks/input-CpARxvFi.mjs.map +0 -1
- package/dist/chunks/input-DTW_8EwG.cjs.map +0 -1
- package/dist/chunks/multi-select-combobox-CMhAXEGZ.mjs +0 -132
- package/dist/chunks/multi-select-combobox-CMhAXEGZ.mjs.map +0 -1
- package/dist/chunks/multi-select-combobox-FEbMAPEg.cjs.map +0 -1
- package/dist/chunks/radio-C6Meq2iz.mjs.map +0 -1
- package/dist/chunks/radio-DxakS7iD.cjs.map +0 -1
- package/dist/chunks/select-1rSJeUBQ.mjs.map +0 -1
- package/dist/chunks/select-SOmIt-BD.cjs.map +0 -1
- package/dist/chunks/stepper-BpjKyemI.cjs.map +0 -1
- package/dist/chunks/stepper-JD4ZHT-b.mjs.map +0 -1
- package/dist/chunks/sun-to-moon-button-BOx1n6nk.cjs.map +0 -1
- package/dist/chunks/sun-to-moon-button-CBbDar4k.mjs.map +0 -1
- package/dist/chunks/switch-C9suGEWg.cjs.map +0 -1
- package/dist/chunks/switch-hd7zTBD_.mjs.map +0 -1
|
@@ -2,14 +2,14 @@ require("./chunk-B_GkZjkl.cjs");
|
|
|
2
2
|
const require_utils = require("./utils-B4SmmY4J.cjs");
|
|
3
3
|
const require_truncated_text = require("./truncated-text-istgJRUq.cjs");
|
|
4
4
|
const require_icons = require("./icons-CRanVZB1.cjs");
|
|
5
|
+
const require_DropdownMenu = require("./DropdownMenu-DOvo5pV_.cjs");
|
|
5
6
|
let react = require("react");
|
|
6
7
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
7
8
|
let framer_motion = require("framer-motion");
|
|
8
9
|
//#region src/components/forms/select/Select.tsx
|
|
9
|
-
var Select = (0, react.forwardRef)(function SelectComponent({ className = "", containerClassName = "", triggerClassName = "", dropdownClassName = "", optionClassName = "", label, error, helperText, options, value, onChange, placeholder = "Select...", disabled, bgClassName = "bg-ds-surface-1", size = "default", selectionIndicator = "check", ...props }, ref) {
|
|
10
|
+
var Select = (0, react.forwardRef)(function SelectComponent({ className = "", containerClassName = "", triggerClassName = "", dropdownClassName = "", optionClassName = "", label, error, helperText, options, value, onChange, placeholder = "Select...", noOptionsText = "No options", disabled, bgClassName = "bg-ds-surface-1", size = "default", selectionIndicator = "check", ...props }, ref) {
|
|
10
11
|
const [open, setOpen] = (0, react.useState)(false);
|
|
11
12
|
const [visible, setVisible] = (0, react.useState)(false);
|
|
12
|
-
const containerRef = (0, react.useRef)(null);
|
|
13
13
|
const hiddenSelectRef = (0, react.useRef)(null);
|
|
14
14
|
const selectedOptionRef = (0, react.useRef)(null);
|
|
15
15
|
const mouseX = (0, framer_motion.useMotionValue)(0);
|
|
@@ -24,15 +24,6 @@ var Select = (0, react.forwardRef)(function SelectComponent({ className = "", co
|
|
|
24
24
|
}
|
|
25
25
|
if (ref) ref.current = hiddenSelectRef.current;
|
|
26
26
|
}, [ref]);
|
|
27
|
-
(0, react.useEffect)(() => {
|
|
28
|
-
const handleClick = (event) => {
|
|
29
|
-
if (containerRef.current && !containerRef.current.contains(event.target)) setOpen(false);
|
|
30
|
-
};
|
|
31
|
-
if (open) document.addEventListener("mousedown", handleClick);
|
|
32
|
-
return () => {
|
|
33
|
-
document.removeEventListener("mousedown", handleClick);
|
|
34
|
-
};
|
|
35
|
-
}, [open]);
|
|
36
27
|
(0, react.useEffect)(() => {
|
|
37
28
|
if (!open || !selectedOptionRef.current) return;
|
|
38
29
|
const frameId = window.requestAnimationFrame(() => {
|
|
@@ -90,10 +81,19 @@ var Select = (0, react.forwardRef)(function SelectComponent({ className = "", co
|
|
|
90
81
|
children: option.label
|
|
91
82
|
}, option.value))]
|
|
92
83
|
}),
|
|
93
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
84
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_DropdownMenu.DropdownMenu, {
|
|
85
|
+
className: require_utils.mergeClassNames("w-full", className),
|
|
86
|
+
open,
|
|
87
|
+
onOpenChange: (nextOpen) => {
|
|
88
|
+
if (disabled) {
|
|
89
|
+
setOpen(false);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
setOpen(nextOpen);
|
|
93
|
+
},
|
|
94
|
+
panelClassName: require_utils.mergeClassNames(" left-0 top-[40px] z-20 mt-1 flex flex-col overflow-auto rounded-lg border border-ds-border-2 bg-ds-surface-1 shadow-3 backdrop-blur-xl transition", isCompact ? "max-h-56" : "max-h-60", dropdownClassName),
|
|
95
|
+
animationClassName: "origin-top-left",
|
|
96
|
+
trigger: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(framer_motion.motion.div, {
|
|
97
97
|
style: { backgroundImage: disabled ? "none" : framer_motion.useMotionTemplate`
|
|
98
98
|
radial-gradient(
|
|
99
99
|
${visible ? `${radius}px` : "0px"} circle at ${mouseX}px ${mouseY}px,
|
|
@@ -104,12 +104,9 @@ var Select = (0, react.forwardRef)(function SelectComponent({ className = "", co
|
|
|
104
104
|
onMouseMove: !disabled ? handleMouseMove : void 0,
|
|
105
105
|
onMouseEnter: !disabled ? () => setVisible(true) : void 0,
|
|
106
106
|
onMouseLeave: !disabled ? () => setVisible(false) : void 0,
|
|
107
|
-
className: require_utils.mergeClassNames("group/select rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent", disabled ? "border-none bg-ds-surface-1" : error ? "border-ds-state-error-border" : "border-ds-border-2"),
|
|
107
|
+
className: require_utils.mergeClassNames("group/select w-full rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent", disabled ? "border-none bg-ds-surface-1" : error ? "border-ds-state-error-border" : "border-ds-border-2"),
|
|
108
108
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
109
109
|
className: require_utils.mergeClassNames("flex w-full cursor-pointer items-center justify-between rounded-md border border-ds-border-field transition duration-400 ease-in-out", isCompact ? "h-9 px-2.5 py-2 text-sm" : "h-10 px-3 py-2 text-sm", bgClassName, disabled ? "cursor-not-allowed opacity-50" : "text-ds-1", error ? "border-ds-state-error-border text-ds-state-error-text focus-visible:ring-ds-state-error-border" : "", triggerClassName),
|
|
110
|
-
onClick: () => {
|
|
111
|
-
if (!disabled) setOpen((current) => !current);
|
|
112
|
-
},
|
|
113
110
|
onKeyDown: handleKeyDown,
|
|
114
111
|
role: "button",
|
|
115
112
|
tabIndex: disabled ? -1 : 0,
|
|
@@ -134,30 +131,28 @@ var Select = (0, react.forwardRef)(function SelectComponent({ className = "", co
|
|
|
134
131
|
})
|
|
135
132
|
})]
|
|
136
133
|
})
|
|
137
|
-
}),
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
}, option.value))]
|
|
160
|
-
}) : null]
|
|
134
|
+
}),
|
|
135
|
+
children: !disabled ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [options.length === 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
136
|
+
className: "px-3 py-2 text-ds-2",
|
|
137
|
+
children: noOptionsText
|
|
138
|
+
}) : null, options.map((option) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
139
|
+
ref: option.value === value ? selectedOptionRef : null,
|
|
140
|
+
className: require_utils.mergeClassNames("mx-1 my-1 flex cursor-pointer items-center rounded-md text-ds-1 transition", isCompact ? "gap-1.5 px-2.5 py-2 text-sm" : "gap-2 px-3 py-2 text-sm", option.value === value ? "bg-ds-accent-subtle font-semibold text-ds-1" : "", "hover:bg-ds-accent hover:text-ds-on-accent", optionClassName),
|
|
141
|
+
onClick: () => handleSelect(option.value),
|
|
142
|
+
children: [selectionIndicator === "check" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
143
|
+
className: require_utils.mergeClassNames("flex items-center justify-center", isCompact ? "w-4" : "w-5"),
|
|
144
|
+
children: option.value === value ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_icons.CheckIcon, {
|
|
145
|
+
className: "text-ds-1",
|
|
146
|
+
width: isCompact ? 16 : 18,
|
|
147
|
+
height: isCompact ? 16 : 18
|
|
148
|
+
}) : null
|
|
149
|
+
}) : null, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_truncated_text.TruncatedText, {
|
|
150
|
+
as: "span",
|
|
151
|
+
showTitleOnHover: true,
|
|
152
|
+
className: "flex-1",
|
|
153
|
+
children: option.label
|
|
154
|
+
})]
|
|
155
|
+
}, option.value))] }) : null
|
|
161
156
|
}),
|
|
162
157
|
error ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
163
158
|
className: "mt-1 text-sm font-medium text-ds-state-error-text",
|
|
@@ -179,4 +174,4 @@ Object.defineProperty(exports, "Select", {
|
|
|
179
174
|
}
|
|
180
175
|
});
|
|
181
176
|
|
|
182
|
-
//# sourceMappingURL=select-
|
|
177
|
+
//# sourceMappingURL=select-CORFYTvs.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-CORFYTvs.cjs","names":[],"sources":["../../src/components/forms/select/Select.tsx"],"sourcesContent":["import {\n forwardRef,\n useEffect,\n useRef,\n useState,\n type ChangeEvent,\n type ForwardedRef,\n type KeyboardEvent,\n type MouseEvent as ReactMouseEvent,\n} from \"react\";\nimport { motion, useMotionTemplate, useMotionValue } from \"framer-motion\";\n\nimport { CheckIcon, ChevronDownIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../overlays/dropdown-menu\";\nimport { TruncatedText } from \"../../typography/truncated-text\";\nimport { mergeClassNames } from \"../../../utils\";\nimport type { SelectProps } from \"./types\";\n\nexport const Select = forwardRef(function SelectComponent(\n {\n className = \"\",\n containerClassName = \"\",\n triggerClassName = \"\",\n dropdownClassName = \"\",\n optionClassName = \"\",\n label,\n error,\n helperText,\n options,\n value,\n onChange,\n placeholder = \"Select...\",\n noOptionsText = \"No options\",\n disabled,\n bgClassName = \"bg-ds-surface-1\",\n size = \"default\",\n selectionIndicator = \"check\",\n ...props\n }: SelectProps,\n ref: ForwardedRef<HTMLSelectElement>,\n) {\n const [open, setOpen] = useState(false);\n const [visible, setVisible] = useState(false);\n const hiddenSelectRef = useRef<HTMLSelectElement>(null);\n const selectedOptionRef = useRef<HTMLDivElement>(null);\n const mouseX = useMotionValue(0);\n const mouseY = useMotionValue(0);\n const radius = 100;\n const isCompact = size === \"compact\";\n const selectedOption = options.find((option) => option.value === value);\n\n useEffect(() => {\n if (typeof ref === \"function\") {\n ref(hiddenSelectRef.current);\n return;\n }\n\n if (ref) {\n ref.current = hiddenSelectRef.current;\n }\n }, [ref]);\n\n useEffect(() => {\n if (!open || !selectedOptionRef.current) {\n return;\n }\n\n const frameId = window.requestAnimationFrame(() => {\n selectedOptionRef.current?.scrollIntoView({ block: \"nearest\" });\n });\n\n return () => {\n window.cancelAnimationFrame(frameId);\n };\n }, [open, value]);\n\n const handleMouseMove = (event: ReactMouseEvent<HTMLDivElement>) => {\n const { left, top } = event.currentTarget.getBoundingClientRect();\n mouseX.set(event.clientX - left);\n mouseY.set(event.clientY - top);\n };\n\n const handleSelect = (optionValue: string) => {\n if (onChange && hiddenSelectRef.current) {\n const syntheticEvent = {\n target: { value: optionValue, name: props.name },\n currentTarget: { value: optionValue, name: props.name },\n } as ChangeEvent<HTMLSelectElement>;\n\n onChange(syntheticEvent);\n }\n\n setOpen(false);\n };\n\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setOpen((current) => !current);\n }\n\n if (event.key === \"Escape\") {\n setOpen(false);\n }\n };\n\n return (\n <div\n className={mergeClassNames(\n \"w-full\",\n isCompact ? \"min-w-0\" : \"min-w-48\",\n containerClassName,\n )}\n >\n {label ? (\n <label className=\"mb-2 block text-sm leading-none font-medium text-ds-1 peer-disabled:cursor-not-allowed peer-disabled:opacity-70\">\n {label}\n </label>\n ) : null}\n\n <select\n ref={hiddenSelectRef}\n className=\"sr-only\"\n value={value}\n onChange={onChange}\n disabled={disabled}\n {...props}\n >\n <option value=\"\">{placeholder}</option>\n {options.map((option) => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n\n <DropdownMenu\n className={mergeClassNames(\"w-full\", className)}\n open={open}\n onOpenChange={(nextOpen) => {\n if (disabled) {\n setOpen(false);\n return;\n }\n\n setOpen(nextOpen);\n }}\n panelClassName={mergeClassNames(\n \" left-0 top-[40px] z-20 mt-1 flex flex-col overflow-auto rounded-lg border border-ds-border-2 bg-ds-surface-1 shadow-3 backdrop-blur-xl transition\",\n isCompact ? \"max-h-56\" : \"max-h-60\",\n dropdownClassName,\n )}\n animationClassName=\"origin-top-left\"\n trigger={\n <motion.div\n style={{\n backgroundImage: disabled\n ? \"none\"\n : useMotionTemplate`\n radial-gradient(\n ${visible ? `${radius}px` : \"0px\"} circle at ${mouseX}px ${mouseY}px,\n var(--ds-color-accent),\n transparent 90%\n )\n `,\n }}\n onMouseMove={!disabled ? handleMouseMove : undefined}\n onMouseEnter={!disabled ? () => setVisible(true) : undefined}\n onMouseLeave={!disabled ? () => setVisible(false) : undefined}\n className={mergeClassNames(\n \"group/select w-full rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent\",\n disabled\n ? \"border-none bg-ds-surface-1\"\n : error\n ? \"border-ds-state-error-border\"\n : \"border-ds-border-2\",\n )}\n >\n <div\n className={mergeClassNames(\n \"flex w-full cursor-pointer items-center justify-between rounded-md border border-ds-border-field transition duration-400 ease-in-out\",\n isCompact\n ? \"h-9 px-2.5 py-2 text-sm\"\n : \"h-10 px-3 py-2 text-sm\",\n bgClassName,\n disabled ? \"cursor-not-allowed opacity-50\" : \"text-ds-1\",\n error\n ? \"border-ds-state-error-border text-ds-state-error-text focus-visible:ring-ds-state-error-border\"\n : \"\",\n triggerClassName,\n )}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={disabled ? -1 : 0}\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n >\n {selectedOption ? (\n <TruncatedText\n as=\"span\"\n showTitleOnHover\n className=\"flex-1 text-ds-1\"\n >\n {selectedOption.label}\n </TruncatedText>\n ) : (\n <TruncatedText as=\"span\" className=\"flex-1 text-ds-2\">\n {placeholder}\n </TruncatedText>\n )}\n\n <span\n className={mergeClassNames(\n \"ml-2 shrink-0 text-ds-2 transition-transform duration-300\",\n open ? \"rotate-180\" : \"rotate-0\",\n )}\n >\n <ChevronDownIcon\n width={24}\n height={24}\n color=\"currentColor\"\n className={isCompact ? \"h-4 w-4\" : \"h-5 w-5\"}\n />\n </span>\n </div>\n </motion.div>\n }\n >\n {!disabled ? (\n <>\n {options.length === 0 ? (\n <div className=\"px-3 py-2 text-ds-2\">{noOptionsText}</div>\n ) : null}\n\n {options.map((option) => (\n <div\n key={option.value}\n ref={option.value === value ? selectedOptionRef : null}\n className={mergeClassNames(\n \"mx-1 my-1 flex cursor-pointer items-center rounded-md text-ds-1 transition\",\n isCompact\n ? \"gap-1.5 px-2.5 py-2 text-sm\"\n : \"gap-2 px-3 py-2 text-sm\",\n option.value === value\n ? \"bg-ds-accent-subtle font-semibold text-ds-1\"\n : \"\",\n \"hover:bg-ds-accent hover:text-ds-on-accent\",\n optionClassName,\n )}\n onClick={() => handleSelect(option.value)}\n >\n {selectionIndicator === \"check\" ? (\n <span\n className={mergeClassNames(\n \"flex items-center justify-center\",\n isCompact ? \"w-4\" : \"w-5\",\n )}\n >\n {option.value === value ? (\n <CheckIcon\n className=\"text-ds-1\"\n width={isCompact ? 16 : 18}\n height={isCompact ? 16 : 18}\n />\n ) : null}\n </span>\n ) : null}\n <TruncatedText as=\"span\" showTitleOnHover className=\"flex-1\">\n {option.label}\n </TruncatedText>\n </div>\n ))}\n </>\n ) : null}\n </DropdownMenu>\n\n {error ? (\n <p className=\"mt-1 text-sm font-medium text-ds-state-error-text\">\n {error}\n </p>\n ) : null}\n {helperText && !error ? (\n <p className=\"mt-1 text-sm text-ds-2\">{helperText}</p>\n ) : null}\n </div>\n );\n});\n\nSelect.displayName = \"Select\";\n"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { n as mergeClassNames } from "./utils-ati1KkDb.mjs";
|
|
2
2
|
import { t as TruncatedText } from "./truncated-text-DTgks5yS.mjs";
|
|
3
3
|
import { J as CheckIcon, N as ChevronDownIcon } from "./icons-bx3nrxNv.mjs";
|
|
4
|
+
import { t as DropdownMenu } from "./DropdownMenu-C17Zqu_E.mjs";
|
|
4
5
|
import { forwardRef, useEffect, useRef, useState } from "react";
|
|
5
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
import { motion, useMotionTemplate, useMotionValue } from "framer-motion";
|
|
7
8
|
//#region src/components/forms/select/Select.tsx
|
|
8
|
-
var Select = forwardRef(function SelectComponent({ className = "", containerClassName = "", triggerClassName = "", dropdownClassName = "", optionClassName = "", label, error, helperText, options, value, onChange, placeholder = "Select...", disabled, bgClassName = "bg-ds-surface-1", size = "default", selectionIndicator = "check", ...props }, ref) {
|
|
9
|
+
var Select = forwardRef(function SelectComponent({ className = "", containerClassName = "", triggerClassName = "", dropdownClassName = "", optionClassName = "", label, error, helperText, options, value, onChange, placeholder = "Select...", noOptionsText = "No options", disabled, bgClassName = "bg-ds-surface-1", size = "default", selectionIndicator = "check", ...props }, ref) {
|
|
9
10
|
const [open, setOpen] = useState(false);
|
|
10
11
|
const [visible, setVisible] = useState(false);
|
|
11
|
-
const containerRef = useRef(null);
|
|
12
12
|
const hiddenSelectRef = useRef(null);
|
|
13
13
|
const selectedOptionRef = useRef(null);
|
|
14
14
|
const mouseX = useMotionValue(0);
|
|
@@ -23,15 +23,6 @@ var Select = forwardRef(function SelectComponent({ className = "", containerClas
|
|
|
23
23
|
}
|
|
24
24
|
if (ref) ref.current = hiddenSelectRef.current;
|
|
25
25
|
}, [ref]);
|
|
26
|
-
useEffect(() => {
|
|
27
|
-
const handleClick = (event) => {
|
|
28
|
-
if (containerRef.current && !containerRef.current.contains(event.target)) setOpen(false);
|
|
29
|
-
};
|
|
30
|
-
if (open) document.addEventListener("mousedown", handleClick);
|
|
31
|
-
return () => {
|
|
32
|
-
document.removeEventListener("mousedown", handleClick);
|
|
33
|
-
};
|
|
34
|
-
}, [open]);
|
|
35
26
|
useEffect(() => {
|
|
36
27
|
if (!open || !selectedOptionRef.current) return;
|
|
37
28
|
const frameId = window.requestAnimationFrame(() => {
|
|
@@ -89,10 +80,19 @@ var Select = forwardRef(function SelectComponent({ className = "", containerClas
|
|
|
89
80
|
children: option.label
|
|
90
81
|
}, option.value))]
|
|
91
82
|
}),
|
|
92
|
-
/* @__PURE__ */
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
83
|
+
/* @__PURE__ */ jsx(DropdownMenu, {
|
|
84
|
+
className: mergeClassNames("w-full", className),
|
|
85
|
+
open,
|
|
86
|
+
onOpenChange: (nextOpen) => {
|
|
87
|
+
if (disabled) {
|
|
88
|
+
setOpen(false);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
setOpen(nextOpen);
|
|
92
|
+
},
|
|
93
|
+
panelClassName: mergeClassNames(" left-0 top-[40px] z-20 mt-1 flex flex-col overflow-auto rounded-lg border border-ds-border-2 bg-ds-surface-1 shadow-3 backdrop-blur-xl transition", isCompact ? "max-h-56" : "max-h-60", dropdownClassName),
|
|
94
|
+
animationClassName: "origin-top-left",
|
|
95
|
+
trigger: /* @__PURE__ */ jsx(motion.div, {
|
|
96
96
|
style: { backgroundImage: disabled ? "none" : useMotionTemplate`
|
|
97
97
|
radial-gradient(
|
|
98
98
|
${visible ? `${radius}px` : "0px"} circle at ${mouseX}px ${mouseY}px,
|
|
@@ -103,12 +103,9 @@ var Select = forwardRef(function SelectComponent({ className = "", containerClas
|
|
|
103
103
|
onMouseMove: !disabled ? handleMouseMove : void 0,
|
|
104
104
|
onMouseEnter: !disabled ? () => setVisible(true) : void 0,
|
|
105
105
|
onMouseLeave: !disabled ? () => setVisible(false) : void 0,
|
|
106
|
-
className: mergeClassNames("group/select rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent", disabled ? "border-none bg-ds-surface-1" : error ? "border-ds-state-error-border" : "border-ds-border-2"),
|
|
106
|
+
className: mergeClassNames("group/select w-full rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent", disabled ? "border-none bg-ds-surface-1" : error ? "border-ds-state-error-border" : "border-ds-border-2"),
|
|
107
107
|
children: /* @__PURE__ */ jsxs("div", {
|
|
108
108
|
className: mergeClassNames("flex w-full cursor-pointer items-center justify-between rounded-md border border-ds-border-field transition duration-400 ease-in-out", isCompact ? "h-9 px-2.5 py-2 text-sm" : "h-10 px-3 py-2 text-sm", bgClassName, disabled ? "cursor-not-allowed opacity-50" : "text-ds-1", error ? "border-ds-state-error-border text-ds-state-error-text focus-visible:ring-ds-state-error-border" : "", triggerClassName),
|
|
109
|
-
onClick: () => {
|
|
110
|
-
if (!disabled) setOpen((current) => !current);
|
|
111
|
-
},
|
|
112
109
|
onKeyDown: handleKeyDown,
|
|
113
110
|
role: "button",
|
|
114
111
|
tabIndex: disabled ? -1 : 0,
|
|
@@ -133,30 +130,28 @@ var Select = forwardRef(function SelectComponent({ className = "", containerClas
|
|
|
133
130
|
})
|
|
134
131
|
})]
|
|
135
132
|
})
|
|
136
|
-
}),
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
}, option.value))]
|
|
159
|
-
}) : null]
|
|
133
|
+
}),
|
|
134
|
+
children: !disabled ? /* @__PURE__ */ jsxs(Fragment$1, { children: [options.length === 0 ? /* @__PURE__ */ jsx("div", {
|
|
135
|
+
className: "px-3 py-2 text-ds-2",
|
|
136
|
+
children: noOptionsText
|
|
137
|
+
}) : null, options.map((option) => /* @__PURE__ */ jsxs("div", {
|
|
138
|
+
ref: option.value === value ? selectedOptionRef : null,
|
|
139
|
+
className: mergeClassNames("mx-1 my-1 flex cursor-pointer items-center rounded-md text-ds-1 transition", isCompact ? "gap-1.5 px-2.5 py-2 text-sm" : "gap-2 px-3 py-2 text-sm", option.value === value ? "bg-ds-accent-subtle font-semibold text-ds-1" : "", "hover:bg-ds-accent hover:text-ds-on-accent", optionClassName),
|
|
140
|
+
onClick: () => handleSelect(option.value),
|
|
141
|
+
children: [selectionIndicator === "check" ? /* @__PURE__ */ jsx("span", {
|
|
142
|
+
className: mergeClassNames("flex items-center justify-center", isCompact ? "w-4" : "w-5"),
|
|
143
|
+
children: option.value === value ? /* @__PURE__ */ jsx(CheckIcon, {
|
|
144
|
+
className: "text-ds-1",
|
|
145
|
+
width: isCompact ? 16 : 18,
|
|
146
|
+
height: isCompact ? 16 : 18
|
|
147
|
+
}) : null
|
|
148
|
+
}) : null, /* @__PURE__ */ jsx(TruncatedText, {
|
|
149
|
+
as: "span",
|
|
150
|
+
showTitleOnHover: true,
|
|
151
|
+
className: "flex-1",
|
|
152
|
+
children: option.label
|
|
153
|
+
})]
|
|
154
|
+
}, option.value))] }) : null
|
|
160
155
|
}),
|
|
161
156
|
error ? /* @__PURE__ */ jsx("p", {
|
|
162
157
|
className: "mt-1 text-sm font-medium text-ds-state-error-text",
|
|
@@ -173,4 +168,4 @@ Select.displayName = "Select";
|
|
|
173
168
|
//#endregion
|
|
174
169
|
export { Select as t };
|
|
175
170
|
|
|
176
|
-
//# sourceMappingURL=select-
|
|
171
|
+
//# sourceMappingURL=select-D0GOBB-b.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-D0GOBB-b.mjs","names":[],"sources":["../../src/components/forms/select/Select.tsx"],"sourcesContent":["import {\n forwardRef,\n useEffect,\n useRef,\n useState,\n type ChangeEvent,\n type ForwardedRef,\n type KeyboardEvent,\n type MouseEvent as ReactMouseEvent,\n} from \"react\";\nimport { motion, useMotionTemplate, useMotionValue } from \"framer-motion\";\n\nimport { CheckIcon, ChevronDownIcon } from \"../../icons\";\nimport { DropdownMenu } from \"../../overlays/dropdown-menu\";\nimport { TruncatedText } from \"../../typography/truncated-text\";\nimport { mergeClassNames } from \"../../../utils\";\nimport type { SelectProps } from \"./types\";\n\nexport const Select = forwardRef(function SelectComponent(\n {\n className = \"\",\n containerClassName = \"\",\n triggerClassName = \"\",\n dropdownClassName = \"\",\n optionClassName = \"\",\n label,\n error,\n helperText,\n options,\n value,\n onChange,\n placeholder = \"Select...\",\n noOptionsText = \"No options\",\n disabled,\n bgClassName = \"bg-ds-surface-1\",\n size = \"default\",\n selectionIndicator = \"check\",\n ...props\n }: SelectProps,\n ref: ForwardedRef<HTMLSelectElement>,\n) {\n const [open, setOpen] = useState(false);\n const [visible, setVisible] = useState(false);\n const hiddenSelectRef = useRef<HTMLSelectElement>(null);\n const selectedOptionRef = useRef<HTMLDivElement>(null);\n const mouseX = useMotionValue(0);\n const mouseY = useMotionValue(0);\n const radius = 100;\n const isCompact = size === \"compact\";\n const selectedOption = options.find((option) => option.value === value);\n\n useEffect(() => {\n if (typeof ref === \"function\") {\n ref(hiddenSelectRef.current);\n return;\n }\n\n if (ref) {\n ref.current = hiddenSelectRef.current;\n }\n }, [ref]);\n\n useEffect(() => {\n if (!open || !selectedOptionRef.current) {\n return;\n }\n\n const frameId = window.requestAnimationFrame(() => {\n selectedOptionRef.current?.scrollIntoView({ block: \"nearest\" });\n });\n\n return () => {\n window.cancelAnimationFrame(frameId);\n };\n }, [open, value]);\n\n const handleMouseMove = (event: ReactMouseEvent<HTMLDivElement>) => {\n const { left, top } = event.currentTarget.getBoundingClientRect();\n mouseX.set(event.clientX - left);\n mouseY.set(event.clientY - top);\n };\n\n const handleSelect = (optionValue: string) => {\n if (onChange && hiddenSelectRef.current) {\n const syntheticEvent = {\n target: { value: optionValue, name: props.name },\n currentTarget: { value: optionValue, name: props.name },\n } as ChangeEvent<HTMLSelectElement>;\n\n onChange(syntheticEvent);\n }\n\n setOpen(false);\n };\n\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setOpen((current) => !current);\n }\n\n if (event.key === \"Escape\") {\n setOpen(false);\n }\n };\n\n return (\n <div\n className={mergeClassNames(\n \"w-full\",\n isCompact ? \"min-w-0\" : \"min-w-48\",\n containerClassName,\n )}\n >\n {label ? (\n <label className=\"mb-2 block text-sm leading-none font-medium text-ds-1 peer-disabled:cursor-not-allowed peer-disabled:opacity-70\">\n {label}\n </label>\n ) : null}\n\n <select\n ref={hiddenSelectRef}\n className=\"sr-only\"\n value={value}\n onChange={onChange}\n disabled={disabled}\n {...props}\n >\n <option value=\"\">{placeholder}</option>\n {options.map((option) => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n\n <DropdownMenu\n className={mergeClassNames(\"w-full\", className)}\n open={open}\n onOpenChange={(nextOpen) => {\n if (disabled) {\n setOpen(false);\n return;\n }\n\n setOpen(nextOpen);\n }}\n panelClassName={mergeClassNames(\n \" left-0 top-[40px] z-20 mt-1 flex flex-col overflow-auto rounded-lg border border-ds-border-2 bg-ds-surface-1 shadow-3 backdrop-blur-xl transition\",\n isCompact ? \"max-h-56\" : \"max-h-60\",\n dropdownClassName,\n )}\n animationClassName=\"origin-top-left\"\n trigger={\n <motion.div\n style={{\n backgroundImage: disabled\n ? \"none\"\n : useMotionTemplate`\n radial-gradient(\n ${visible ? `${radius}px` : \"0px\"} circle at ${mouseX}px ${mouseY}px,\n var(--ds-color-accent),\n transparent 90%\n )\n `,\n }}\n onMouseMove={!disabled ? handleMouseMove : undefined}\n onMouseEnter={!disabled ? () => setVisible(true) : undefined}\n onMouseLeave={!disabled ? () => setVisible(false) : undefined}\n className={mergeClassNames(\n \"group/select w-full rounded-lg p-[2px] transition duration-300 hover:border-ds-border-accent\",\n disabled\n ? \"border-none bg-ds-surface-1\"\n : error\n ? \"border-ds-state-error-border\"\n : \"border-ds-border-2\",\n )}\n >\n <div\n className={mergeClassNames(\n \"flex w-full cursor-pointer items-center justify-between rounded-md border border-ds-border-field transition duration-400 ease-in-out\",\n isCompact\n ? \"h-9 px-2.5 py-2 text-sm\"\n : \"h-10 px-3 py-2 text-sm\",\n bgClassName,\n disabled ? \"cursor-not-allowed opacity-50\" : \"text-ds-1\",\n error\n ? \"border-ds-state-error-border text-ds-state-error-text focus-visible:ring-ds-state-error-border\"\n : \"\",\n triggerClassName,\n )}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={disabled ? -1 : 0}\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n >\n {selectedOption ? (\n <TruncatedText\n as=\"span\"\n showTitleOnHover\n className=\"flex-1 text-ds-1\"\n >\n {selectedOption.label}\n </TruncatedText>\n ) : (\n <TruncatedText as=\"span\" className=\"flex-1 text-ds-2\">\n {placeholder}\n </TruncatedText>\n )}\n\n <span\n className={mergeClassNames(\n \"ml-2 shrink-0 text-ds-2 transition-transform duration-300\",\n open ? \"rotate-180\" : \"rotate-0\",\n )}\n >\n <ChevronDownIcon\n width={24}\n height={24}\n color=\"currentColor\"\n className={isCompact ? \"h-4 w-4\" : \"h-5 w-5\"}\n />\n </span>\n </div>\n </motion.div>\n }\n >\n {!disabled ? (\n <>\n {options.length === 0 ? (\n <div className=\"px-3 py-2 text-ds-2\">{noOptionsText}</div>\n ) : null}\n\n {options.map((option) => (\n <div\n key={option.value}\n ref={option.value === value ? selectedOptionRef : null}\n className={mergeClassNames(\n \"mx-1 my-1 flex cursor-pointer items-center rounded-md text-ds-1 transition\",\n isCompact\n ? \"gap-1.5 px-2.5 py-2 text-sm\"\n : \"gap-2 px-3 py-2 text-sm\",\n option.value === value\n ? \"bg-ds-accent-subtle font-semibold text-ds-1\"\n : \"\",\n \"hover:bg-ds-accent hover:text-ds-on-accent\",\n optionClassName,\n )}\n onClick={() => handleSelect(option.value)}\n >\n {selectionIndicator === \"check\" ? (\n <span\n className={mergeClassNames(\n \"flex items-center justify-center\",\n isCompact ? \"w-4\" : \"w-5\",\n )}\n >\n {option.value === value ? (\n <CheckIcon\n className=\"text-ds-1\"\n width={isCompact ? 16 : 18}\n height={isCompact ? 16 : 18}\n />\n ) : null}\n </span>\n ) : null}\n <TruncatedText as=\"span\" showTitleOnHover className=\"flex-1\">\n {option.label}\n </TruncatedText>\n </div>\n ))}\n </>\n ) : null}\n </DropdownMenu>\n\n {error ? (\n <p className=\"mt-1 text-sm font-medium text-ds-state-error-text\">\n {error}\n </p>\n ) : null}\n {helperText && !error ? (\n <p className=\"mt-1 text-sm text-ds-2\">{helperText}</p>\n ) : null}\n </div>\n );\n});\n\nSelect.displayName = \"Select\";\n"],"mappings":"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"}
|