@customafk/lunas-ui 0.0.19 → 0.0.20
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/dist/{add-new-BFH8xexA.cjs → add-new-BLzwK4-z.cjs} +2 -2
- package/dist/{add-new-BFH8xexA.cjs.map → add-new-BLzwK4-z.cjs.map} +1 -1
- package/dist/add-new-RL-iKsWC.js +2 -0
- package/dist/{add-new-BaTjxsdU.js.map → add-new-RL-iKsWC.js.map} +1 -1
- package/dist/{alert-dialog-CQa0TLlF.js → alert-dialog-BeOQZPLX.js} +2 -2
- package/dist/{alert-dialog-CQa0TLlF.js.map → alert-dialog-BeOQZPLX.js.map} +1 -1
- package/dist/{alert-dialog-B4HEoCVQ.cjs → alert-dialog-Co0hVkiy.cjs} +2 -2
- package/dist/{alert-dialog-B4HEoCVQ.cjs.map → alert-dialog-Co0hVkiy.cjs.map} +1 -1
- package/dist/{badge-DzKUgC8v.js → badge-BK1TPBDW.js} +2 -2
- package/dist/{badge-DzKUgC8v.js.map → badge-BK1TPBDW.js.map} +1 -1
- package/dist/{badge-D4NxkKeN.cjs → badge-DaD4CS9Z.cjs} +2 -2
- package/dist/{badge-D4NxkKeN.cjs.map → badge-DaD4CS9Z.cjs.map} +1 -1
- package/dist/{button-Bku3bKv9.js → button-BrvvATXa.js} +2 -2
- package/dist/{button-Bku3bKv9.js.map → button-BrvvATXa.js.map} +1 -1
- package/dist/{button-Dzv_nos1.cjs → button-C34BzElG.cjs} +2 -2
- package/dist/{button-Dzv_nos1.cjs.map → button-C34BzElG.cjs.map} +1 -1
- package/dist/{button-viOSpM8C.d.ts → button-CDcShhmx.d.ts} +5 -5
- package/dist/{button-BqHpK9ZD.d.cts → button-DS7KZFPm.d.cts} +5 -5
- package/dist/{calendar-DaYVxwJx.js → calendar-Dgwg_GyY.js} +2 -2
- package/dist/{calendar-DaYVxwJx.js.map → calendar-Dgwg_GyY.js.map} +1 -1
- package/dist/{calendar-CFM_sI4P.cjs → calendar-DzFHlcQl.cjs} +2 -2
- package/dist/{calendar-CFM_sI4P.cjs.map → calendar-DzFHlcQl.cjs.map} +1 -1
- package/dist/{card-D8cxRC5y.js → card-CasE9_d3.js} +1 -1
- package/dist/{card-D8cxRC5y.js.map → card-CasE9_d3.js.map} +1 -1
- package/dist/{card-Dta5eW8u.cjs → card-SpVQKFAi.cjs} +1 -1
- package/dist/{card-Dta5eW8u.cjs.map → card-SpVQKFAi.cjs.map} +1 -1
- package/dist/cards/simple-card.cjs +1 -1
- package/dist/cards/simple-card.d.cts +2 -2
- package/dist/cards/simple-card.d.ts +2 -2
- package/dist/cards/simple-card.js +1 -1
- package/dist/{command-DCJja1nB.js → command-A2kJ3msd.js} +2 -2
- package/dist/{command-DCJja1nB.js.map → command-A2kJ3msd.js.map} +1 -1
- package/dist/{command-EKVhNuY-.d.cts → command-BHjF4ebU.d.cts} +12 -12
- package/dist/{command-DYtYCUp1.cjs → command-C7-p10t4.cjs} +2 -2
- package/dist/{command-DYtYCUp1.cjs.map → command-C7-p10t4.cjs.map} +1 -1
- package/dist/{command-_3jLWGfB.d.ts → command-CmAfZEbp.d.ts} +12 -12
- package/dist/data-display/country.cjs +1 -1
- package/dist/data-display/country.js +1 -1
- package/dist/data-display/data-list.cjs +1 -1
- package/dist/data-display/data-list.js +1 -1
- package/dist/data-display/date-tooltip.cjs +1 -1
- package/dist/data-display/date-tooltip.js +1 -1
- package/dist/data-display/date.cjs +1 -1
- package/dist/data-display/date.js +1 -1
- package/dist/data-display/empty.cjs +1 -1
- package/dist/data-display/empty.d.cts +2 -2
- package/dist/data-display/empty.d.ts +2 -2
- package/dist/data-display/empty.js +1 -1
- package/dist/data-display/name.cjs +1 -1
- package/dist/data-display/name.js +1 -1
- package/dist/data-display/phone-number.cjs +1 -1
- package/dist/data-display/phone-number.js +1 -1
- package/dist/data-display/role-badge.cjs +1 -1
- package/dist/data-display/role-badge.js +1 -1
- package/dist/data-display/statistic.cjs +1 -1
- package/dist/data-display/statistic.d.cts +2 -2
- package/dist/data-display/statistic.d.ts +2 -2
- package/dist/data-display/statistic.js +1 -1
- package/dist/{date-BMq_DNsv.js → date-B1g1OMYc.js} +1 -1
- package/dist/{date-BMq_DNsv.js.map → date-B1g1OMYc.js.map} +1 -1
- package/dist/{date-nd8WkPlx.cjs → date-Cw6Jf7k6.cjs} +1 -1
- package/dist/{date-nd8WkPlx.cjs.map → date-Cw6Jf7k6.cjs.map} +1 -1
- package/dist/{dialog-C0AcPpDH.js → dialog-Bg22gb0J.js} +2 -2
- package/dist/{dialog-C0AcPpDH.js.map → dialog-Bg22gb0J.js.map} +1 -1
- package/dist/{dialog-CEonbrh4.cjs → dialog-Crg-yf4H.cjs} +2 -2
- package/dist/{dialog-CEonbrh4.cjs.map → dialog-Crg-yf4H.cjs.map} +1 -1
- package/dist/{dialog-J6u7hDug.d.cts → dialog-DO-1YagX.d.ts} +2 -2
- package/dist/{dialog-Bt1pX1-_.d.ts → dialog-Dy9Qlo43.d.cts} +12 -12
- package/dist/dialogs/confirm-dialog.cjs +1 -1
- package/dist/dialogs/confirm-dialog.js +1 -1
- package/dist/dialogs/detail-dialog/component/sidebar.cjs +1 -1
- package/dist/dialogs/detail-dialog/component/sidebar.d.cts +30 -30
- package/dist/dialogs/detail-dialog/component/sidebar.d.ts +30 -30
- package/dist/dialogs/detail-dialog/component/sidebar.js +1 -1
- package/dist/dialogs/detail-dialog/index.cjs +1 -1
- package/dist/dialogs/detail-dialog/index.js +1 -1
- package/dist/dialogs/error-dialog.cjs +1 -1
- package/dist/dialogs/error-dialog.js +1 -1
- package/dist/dialogs/form-dialog.cjs +1 -1
- package/dist/dialogs/form-dialog.d.cts +2 -2
- package/dist/dialogs/form-dialog.d.ts +2 -2
- package/dist/dialogs/form-dialog.js +1 -1
- package/dist/dialogs/loading-dialog.cjs +1 -1
- package/dist/dialogs/loading-dialog.js +1 -1
- package/dist/{dropdown-menu-CMHZTUhT.js → dropdown-menu-CYyfrjiV.js} +2 -2
- package/dist/{dropdown-menu-CMHZTUhT.js.map → dropdown-menu-CYyfrjiV.js.map} +1 -1
- package/dist/{dropdown-menu-BIv0JrLQ.cjs → dropdown-menu-Ds-l2AEO.cjs} +2 -2
- package/dist/{dropdown-menu-BIv0JrLQ.cjs.map → dropdown-menu-Ds-l2AEO.cjs.map} +1 -1
- package/dist/{error-dialog-DlhosP10.js → error-dialog-BNde8szQ.js} +2 -2
- package/dist/{error-dialog-DlhosP10.js.map → error-dialog-BNde8szQ.js.map} +1 -1
- package/dist/{error-dialog-D5WK8K_-.cjs → error-dialog-Cq8KOGyS.cjs} +2 -2
- package/dist/{error-dialog-D5WK8K_-.cjs.map → error-dialog-Cq8KOGyS.cjs.map} +1 -1
- package/dist/{flex-CNA_SId-.cjs → flex-BuUVu_Lf.cjs} +2 -2
- package/dist/{flex-CNA_SId-.cjs.map → flex-BuUVu_Lf.cjs.map} +1 -1
- package/dist/{flex-ILvQrYMJ.js → flex-uO6z0kNw.js} +2 -2
- package/dist/{flex-ILvQrYMJ.js.map → flex-uO6z0kNw.js.map} +1 -1
- package/dist/form-Cc_o_9KE.js +2 -0
- package/dist/{form-CA4hhSV5.js.map → form-Cc_o_9KE.js.map} +1 -1
- package/dist/{form-CYZkgobJ.cjs → form-DTHB0xYA.cjs} +2 -2
- package/dist/{form-CYZkgobJ.cjs.map → form-DTHB0xYA.cjs.map} +1 -1
- package/dist/{form-wrapper-YPIbD8rh.js → form-wrapper-BPwpOPNp.js} +2 -2
- package/dist/{form-wrapper-YPIbD8rh.js.map → form-wrapper-BPwpOPNp.js.map} +1 -1
- package/dist/{form-wrapper-CPNPpcLO.cjs → form-wrapper-C87qyXzv.cjs} +2 -2
- package/dist/{form-wrapper-CPNPpcLO.cjs.map → form-wrapper-C87qyXzv.cjs.map} +1 -1
- package/dist/forms/combobox-field.cjs +1 -1
- package/dist/forms/combobox-field.cjs.map +1 -1
- package/dist/forms/combobox-field.d.cts +2 -2
- package/dist/forms/combobox-field.d.ts +2 -2
- package/dist/forms/combobox-field.js +1 -1
- package/dist/forms/combobox-field.js.map +1 -1
- package/dist/forms/date-field.cjs +1 -1
- package/dist/forms/date-field.d.cts +2 -2
- package/dist/forms/date-field.d.ts +2 -2
- package/dist/forms/date-field.js +1 -1
- package/dist/forms/form-wrapper.cjs +1 -1
- package/dist/forms/form-wrapper.d.cts +2 -2
- package/dist/forms/form-wrapper.d.ts +2 -2
- package/dist/forms/form-wrapper.js +1 -1
- package/dist/forms/multi-select-field.cjs +1 -1
- package/dist/forms/multi-select-field.cjs.map +1 -1
- package/dist/forms/multi-select-field.d.ts +2 -2
- package/dist/forms/multi-select-field.js +1 -1
- package/dist/forms/number-field.cjs +1 -1
- package/dist/forms/number-field.d.cts +2 -2
- package/dist/forms/number-field.d.ts +2 -2
- package/dist/forms/number-field.js +1 -1
- package/dist/forms/password-field.cjs +1 -1
- package/dist/forms/password-field.d.cts +2 -2
- package/dist/forms/password-field.d.ts +2 -2
- package/dist/forms/password-field.js +1 -1
- package/dist/forms/select-field.cjs +1 -1
- package/dist/forms/select-field.d.cts +2 -2
- package/dist/forms/select-field.d.ts +2 -2
- package/dist/forms/select-field.js +1 -1
- package/dist/forms/switch-field.cjs +1 -1
- package/dist/forms/switch-field.d.cts +2 -2
- package/dist/forms/switch-field.d.ts +2 -2
- package/dist/forms/switch-field.js +1 -1
- package/dist/forms/text-field.cjs +1 -1
- package/dist/forms/text-field.d.cts +2 -2
- package/dist/forms/text-field.d.ts +2 -2
- package/dist/forms/text-field.js +1 -1
- package/dist/forms/textarea-field.cjs +1 -1
- package/dist/forms/textarea-field.d.cts +2 -2
- package/dist/forms/textarea-field.d.ts +2 -2
- package/dist/forms/textarea-field.js +1 -1
- package/dist/{input-CQbLcUW8.d.cts → input-BnRXbVsJ.d.cts} +3 -3
- package/dist/{input-DiWzV1Tq.d.ts → input-CYN1gjKb.d.ts} +3 -3
- package/dist/{input-C9Zl3f86.cjs → input-Deo694yz.cjs} +1 -1
- package/dist/{input-C9Zl3f86.cjs.map → input-Deo694yz.cjs.map} +1 -1
- package/dist/{input-Dmaq3fzf.js → input-IwBf-u4O.js} +1 -1
- package/dist/{input-Dmaq3fzf.js.map → input-IwBf-u4O.js.map} +1 -1
- package/dist/{label-CunjD1rx.cjs → label-BPBmJrwf.cjs} +2 -2
- package/dist/{label-CunjD1rx.cjs.map → label-BPBmJrwf.cjs.map} +1 -1
- package/dist/{label-Cxbctr6x.js → label-DjHftHzi.js} +2 -2
- package/dist/{label-Cxbctr6x.js.map → label-DjHftHzi.js.map} +1 -1
- package/dist/layouts/flex.cjs +1 -1
- package/dist/layouts/flex.d.cts +2 -2
- package/dist/layouts/flex.d.ts +2 -2
- package/dist/layouts/flex.js +1 -1
- package/dist/layouts/main/index.cjs +1 -1
- package/dist/layouts/main/index.cjs.map +1 -1
- package/dist/layouts/main/index.d.cts +4 -4
- package/dist/layouts/main/index.d.ts +4 -4
- package/dist/layouts/main/index.js +1 -1
- package/dist/{multi-select-1DlXucsl.cjs → multi-select-Dh-OrxMu.cjs} +2 -2
- package/dist/{multi-select-1DlXucsl.cjs.map → multi-select-Dh-OrxMu.cjs.map} +1 -1
- package/dist/{multi-select-p5ihXgWH.js → multi-select-VJtGyYqH.js} +2 -2
- package/dist/{multi-select-p5ihXgWH.js.map → multi-select-VJtGyYqH.js.map} +1 -1
- package/dist/paragraph-DSDthoR8.cjs +2 -0
- package/dist/{paragraph-ZxI8zxuf.cjs.map → paragraph-DSDthoR8.cjs.map} +1 -1
- package/dist/paragraph-SPyLaf4T.js +2 -0
- package/dist/{paragraph-Bey03JkA.js.map → paragraph-SPyLaf4T.js.map} +1 -1
- package/dist/{popover-DtruYFq3.cjs → popover-BlCI2ana.cjs} +2 -2
- package/dist/{popover-DtruYFq3.cjs.map → popover-BlCI2ana.cjs.map} +1 -1
- package/dist/{popover-tDri6Ded.js → popover-CRmdKpzM.js} +2 -2
- package/dist/{popover-tDri6Ded.js.map → popover-CRmdKpzM.js.map} +1 -1
- package/dist/{progress-CeXKNvJc.js → progress-UhztUR9a.js} +2 -2
- package/dist/{progress-CeXKNvJc.js.map → progress-UhztUR9a.js.map} +1 -1
- package/dist/{progress-Bu1_efDo.cjs → progress-dmLSlzOn.cjs} +2 -2
- package/dist/{progress-Bu1_efDo.cjs.map → progress-dmLSlzOn.cjs.map} +1 -1
- package/dist/{refresh-CGfJY7U7.cjs → refresh-3D87WTOF.cjs} +2 -2
- package/dist/{refresh-CGfJY7U7.cjs.map → refresh-3D87WTOF.cjs.map} +1 -1
- package/dist/refresh-Tr5yJ_61.js +2 -0
- package/dist/{refresh-B__T7OFC.js.map → refresh-Tr5yJ_61.js.map} +1 -1
- package/dist/scroll-area-C2rZa7Ua.js +2 -0
- package/dist/{scroll-area-C0KQbcG0.js.map → scroll-area-C2rZa7Ua.js.map} +1 -1
- package/dist/{scroll-area-CBq8XL4c.cjs → scroll-area-Cc6UjeXy.cjs} +2 -2
- package/dist/{scroll-area-CBq8XL4c.cjs.map → scroll-area-Cc6UjeXy.cjs.map} +1 -1
- package/dist/{search-input-BGmx8sXy.js → search-input-CbN38n2i.js} +2 -2
- package/dist/{search-input-BGmx8sXy.js.map → search-input-CbN38n2i.js.map} +1 -1
- package/dist/{search-input-Bl5nix1f.cjs → search-input-SgtXaOOe.cjs} +2 -2
- package/dist/{search-input-Bl5nix1f.cjs.map → search-input-SgtXaOOe.cjs.map} +1 -1
- package/dist/{select-Cly99ppn.js → select-BNcC9Gu6.js} +2 -2
- package/dist/{select-Cly99ppn.js.map → select-BNcC9Gu6.js.map} +1 -1
- package/dist/{select-LQyuaEs8.cjs → select-D3H42rlp.cjs} +2 -2
- package/dist/{select-LQyuaEs8.cjs.map → select-D3H42rlp.cjs.map} +1 -1
- package/dist/{separator-DMdqEz29.js → separator-BQqb8Ju6.js} +2 -2
- package/dist/{separator-DMdqEz29.js.map → separator-BQqb8Ju6.js.map} +1 -1
- package/dist/{separator-DIrvZm-C.d.cts → separator-CgmZj3UV.d.cts} +3 -3
- package/dist/{separator-FCAh__9f.d.ts → separator-D3tlMHd9.d.ts} +3 -3
- package/dist/{separator-Bi0LBh7T.cjs → separator-DFE0CP6K.cjs} +2 -2
- package/dist/{separator-Bi0LBh7T.cjs.map → separator-DFE0CP6K.cjs.map} +1 -1
- package/dist/{sheet-DEJ_ttoA.cjs → sheet-DOrWwCZn.cjs} +2 -2
- package/dist/{sheet-DEJ_ttoA.cjs.map → sheet-DOrWwCZn.cjs.map} +1 -1
- package/dist/{sheet-DeJpnbAR.js → sheet-e1rrFVKX.js} +2 -2
- package/dist/{sheet-DeJpnbAR.js.map → sheet-e1rrFVKX.js.map} +1 -1
- package/dist/{sidebar-C5aZqfsn.js → sidebar-BECyVqhY.js} +2 -2
- package/dist/{sidebar-C5aZqfsn.js.map → sidebar-BECyVqhY.js.map} +1 -1
- package/dist/{sidebar-BDATBAxY.js → sidebar-C2ViuzN1.js} +2 -2
- package/dist/{sidebar-BDATBAxY.js.map → sidebar-C2ViuzN1.js.map} +1 -1
- package/dist/{sidebar-CsWT3eVg.cjs → sidebar-CXVvsTn6.cjs} +2 -2
- package/dist/{sidebar-CsWT3eVg.cjs.map → sidebar-CXVvsTn6.cjs.map} +1 -1
- package/dist/{sidebar-BOtpo81G.cjs → sidebar-D7vLgYLD.cjs} +2 -2
- package/dist/{sidebar-BOtpo81G.cjs.map → sidebar-D7vLgYLD.cjs.map} +1 -1
- package/dist/{switch-D2_4ZFt4.cjs → switch-C7YAx4ZS.cjs} +2 -2
- package/dist/{switch-D2_4ZFt4.cjs.map → switch-C7YAx4ZS.cjs.map} +1 -1
- package/dist/{switch-BlK-TC1h.js → switch-mhbcb1o7.js} +2 -2
- package/dist/{switch-BlK-TC1h.js.map → switch-mhbcb1o7.js.map} +1 -1
- package/dist/table/index.cjs +1 -1
- package/dist/table/index.d.cts +2 -2
- package/dist/table/index.d.ts +2 -2
- package/dist/table/index.js +1 -1
- package/dist/{textarea-dM1DYNfF.js → textarea-CA7u6znc.js} +1 -1
- package/dist/{textarea-dM1DYNfF.js.map → textarea-CA7u6znc.js.map} +1 -1
- package/dist/{textarea-xQMf_usu.cjs → textarea-CGmuTOD8.cjs} +1 -1
- package/dist/{textarea-xQMf_usu.cjs.map → textarea-CGmuTOD8.cjs.map} +1 -1
- package/dist/title-D7csdg9m.js +2 -0
- package/dist/{title-CA6PvqiD.js.map → title-D7csdg9m.js.map} +1 -1
- package/dist/{title-DrIfj31i.cjs → title-_6fEG7u-.cjs} +2 -2
- package/dist/{title-DrIfj31i.cjs.map → title-_6fEG7u-.cjs.map} +1 -1
- package/dist/{toggle-9SGewcSc.d.cts → toggle-B9onDBto.d.cts} +5 -5
- package/dist/{toggle-CToEigm6.d.ts → toggle-CYCU8-jp.d.ts} +4 -4
- package/dist/{toggle-DO8QbhLS.cjs → toggle-RdqFG3Vy.cjs} +2 -2
- package/dist/{toggle-DO8QbhLS.cjs.map → toggle-RdqFG3Vy.cjs.map} +1 -1
- package/dist/{toggle-CHJ2edke.js → toggle-T35MVJMk.js} +2 -2
- package/dist/{toggle-CHJ2edke.js.map → toggle-T35MVJMk.js.map} +1 -1
- package/dist/{tooltip-DsFcKAPP.d.ts → tooltip-Bp9XarsW.d.ts} +6 -6
- package/dist/{tooltip-Cs7kbiDo.d.cts → tooltip-Ccg2G_fB.d.cts} +6 -6
- package/dist/{tooltip-CBtZw8PB.cjs → tooltip-D1dnpKsi.cjs} +2 -2
- package/dist/{tooltip-CBtZw8PB.cjs.map → tooltip-D1dnpKsi.cjs.map} +1 -1
- package/dist/{tooltip-mqfVQzkp.js → tooltip-d_X-5oXw.js} +2 -2
- package/dist/{tooltip-mqfVQzkp.js.map → tooltip-d_X-5oXw.js.map} +1 -1
- package/dist/{types-DaIHddx7.js → types-BVNbk1ZN.js} +1 -1
- package/dist/{types-DaIHddx7.js.map → types-BVNbk1ZN.js.map} +1 -1
- package/dist/{types-CrbWxjnp.cjs → types-CnMfjcgO.cjs} +1 -1
- package/dist/{types-CrbWxjnp.cjs.map → types-CnMfjcgO.cjs.map} +1 -1
- package/dist/typography/paragraph.cjs +1 -1
- package/dist/typography/paragraph.d.cts +2 -2
- package/dist/typography/paragraph.d.ts +2 -2
- package/dist/typography/paragraph.js +1 -1
- package/dist/typography/title.cjs +1 -1
- package/dist/typography/title.d.cts +2 -2
- package/dist/typography/title.d.ts +2 -2
- package/dist/typography/title.js +1 -1
- package/dist/ui/alert-dialog.cjs +1 -1
- package/dist/ui/alert-dialog.d.cts +12 -12
- package/dist/ui/alert-dialog.d.ts +12 -12
- package/dist/ui/alert-dialog.js +1 -1
- package/dist/ui/alert.cjs +1 -1
- package/dist/ui/alert.d.cts +6 -6
- package/dist/ui/alert.d.ts +6 -6
- package/dist/ui/alert.js +1 -1
- package/dist/ui/aspect-ratio.cjs +1 -1
- package/dist/ui/aspect-ratio.d.cts +2 -2
- package/dist/ui/aspect-ratio.d.ts +2 -2
- package/dist/ui/aspect-ratio.js +1 -1
- package/dist/ui/avatar.cjs +1 -1
- package/dist/ui/avatar.d.cts +4 -4
- package/dist/ui/avatar.d.ts +4 -4
- package/dist/ui/avatar.js +1 -1
- package/dist/ui/badge.cjs +1 -1
- package/dist/ui/badge.d.cts +4 -4
- package/dist/ui/badge.d.ts +2 -2
- package/dist/ui/badge.js +1 -1
- package/dist/ui/breadcrumb.cjs +1 -1
- package/dist/ui/breadcrumb.d.cts +8 -8
- package/dist/ui/breadcrumb.d.ts +8 -8
- package/dist/ui/breadcrumb.js +1 -1
- package/dist/ui/button.cjs +1 -1
- package/dist/ui/button.d.cts +1 -1
- package/dist/ui/button.d.ts +1 -1
- package/dist/ui/button.js +1 -1
- package/dist/ui/buttons/add-new.cjs +1 -1
- package/dist/ui/buttons/add-new.js +1 -1
- package/dist/ui/buttons/edit.cjs +1 -1
- package/dist/ui/buttons/edit.js +1 -1
- package/dist/ui/buttons/refresh.cjs +1 -1
- package/dist/ui/buttons/refresh.js +1 -1
- package/dist/ui/buttons/trash.cjs +1 -1
- package/dist/ui/buttons/trash.js +1 -1
- package/dist/ui/buttons/upload-image.cjs +1 -1
- package/dist/ui/buttons/upload-image.js +1 -1
- package/dist/ui/calendar.cjs +1 -1
- package/dist/ui/calendar.d.cts +4 -4
- package/dist/ui/calendar.d.ts +4 -4
- package/dist/ui/calendar.js +1 -1
- package/dist/ui/card.cjs +1 -1
- package/dist/ui/card.d.cts +8 -8
- package/dist/ui/card.d.ts +8 -8
- package/dist/ui/card.js +1 -1
- package/dist/ui/carousel.cjs +1 -1
- package/dist/ui/carousel.d.cts +7 -7
- package/dist/ui/carousel.d.ts +7 -7
- package/dist/ui/carousel.js +1 -1
- package/dist/ui/collapsible.cjs +1 -1
- package/dist/ui/collapsible.d.cts +4 -4
- package/dist/ui/collapsible.d.ts +4 -4
- package/dist/ui/collapsible.js +1 -1
- package/dist/ui/command.cjs +1 -1
- package/dist/ui/command.d.cts +2 -2
- package/dist/ui/command.d.ts +2 -2
- package/dist/ui/command.js +1 -1
- package/dist/ui/context-menu.cjs +1 -1
- package/dist/ui/context-menu.d.cts +16 -16
- package/dist/ui/context-menu.d.ts +16 -16
- package/dist/ui/context-menu.js +1 -1
- package/dist/ui/dialog.cjs +1 -1
- package/dist/ui/dialog.d.cts +1 -1
- package/dist/ui/dialog.d.ts +1 -1
- package/dist/ui/dialog.js +1 -1
- package/dist/ui/dropdown-menu.cjs +1 -1
- package/dist/ui/dropdown-menu.d.cts +16 -16
- package/dist/ui/dropdown-menu.d.ts +16 -16
- package/dist/ui/dropdown-menu.js +1 -1
- package/dist/ui/file-uploader.cjs +1 -1
- package/dist/ui/file-uploader.d.cts +2 -2
- package/dist/ui/file-uploader.d.ts +2 -2
- package/dist/ui/file-uploader.js +1 -1
- package/dist/ui/form.cjs +1 -1
- package/dist/ui/form.d.cts +7 -7
- package/dist/ui/form.d.ts +7 -7
- package/dist/ui/form.js +1 -1
- package/dist/ui/hover-card.cjs +1 -1
- package/dist/ui/hover-card.d.cts +4 -4
- package/dist/ui/hover-card.d.ts +4 -4
- package/dist/ui/hover-card.js +1 -1
- package/dist/ui/input-otp.d.cts +5 -5
- package/dist/ui/input-otp.d.ts +5 -5
- package/dist/ui/input.cjs +1 -1
- package/dist/ui/input.d.cts +1 -1
- package/dist/ui/input.d.ts +1 -1
- package/dist/ui/input.js +1 -1
- package/dist/ui/inputs/search-input.cjs +1 -1
- package/dist/ui/inputs/search-input.d.cts +3 -3
- package/dist/ui/inputs/search-input.d.ts +3 -3
- package/dist/ui/inputs/search-input.js +1 -1
- package/dist/ui/label.cjs +1 -1
- package/dist/ui/label.d.cts +2 -2
- package/dist/ui/label.d.ts +2 -2
- package/dist/ui/label.js +1 -1
- package/dist/ui/menubar.cjs +1 -1
- package/dist/ui/menubar.d.cts +17 -17
- package/dist/ui/menubar.d.ts +17 -17
- package/dist/ui/menubar.js +1 -1
- package/dist/ui/multi-select.cjs +1 -1
- package/dist/ui/multi-select.d.cts +2 -2
- package/dist/ui/multi-select.d.ts +2 -2
- package/dist/ui/multi-select.js +1 -1
- package/dist/ui/navigation-menu.cjs +1 -1
- package/dist/ui/navigation-menu.d.cts +9 -9
- package/dist/ui/navigation-menu.d.ts +11 -11
- package/dist/ui/navigation-menu.js +1 -1
- package/dist/ui/pagination.cjs +1 -1
- package/dist/ui/pagination.d.cts +9 -9
- package/dist/ui/pagination.d.ts +9 -9
- package/dist/ui/pagination.js +1 -1
- package/dist/ui/popover.cjs +1 -1
- package/dist/ui/popover.d.cts +5 -5
- package/dist/ui/popover.d.ts +5 -5
- package/dist/ui/popover.js +1 -1
- package/dist/ui/progress.cjs +1 -1
- package/dist/ui/progress.d.cts +2 -2
- package/dist/ui/progress.d.ts +2 -2
- package/dist/ui/progress.js +1 -1
- package/dist/ui/radio-group.cjs +1 -1
- package/dist/ui/radio-group.d.cts +3 -3
- package/dist/ui/radio-group.d.ts +3 -3
- package/dist/ui/radio-group.js +1 -1
- package/dist/ui/resizable.d.cts +4 -4
- package/dist/ui/resizable.d.ts +4 -4
- package/dist/ui/scroll-area.cjs +1 -1
- package/dist/ui/scroll-area.d.cts +3 -3
- package/dist/ui/scroll-area.d.ts +3 -3
- package/dist/ui/scroll-area.js +1 -1
- package/dist/ui/select.cjs +1 -1
- package/dist/ui/select.d.cts +11 -11
- package/dist/ui/select.d.ts +11 -11
- package/dist/ui/select.js +1 -1
- package/dist/ui/separator.cjs +1 -1
- package/dist/ui/separator.d.cts +1 -1
- package/dist/ui/separator.d.ts +1 -1
- package/dist/ui/separator.js +1 -1
- package/dist/ui/sheet.cjs +1 -1
- package/dist/ui/sheet.d.cts +9 -9
- package/dist/ui/sheet.d.ts +9 -9
- package/dist/ui/sheet.js +1 -1
- package/dist/ui/sidebar.cjs +1 -1
- package/dist/ui/sidebar.d.cts +30 -30
- package/dist/ui/sidebar.d.ts +28 -28
- package/dist/ui/sidebar.js +1 -1
- package/dist/ui/skeleton.d.cts +2 -2
- package/dist/ui/skeleton.d.ts +2 -2
- package/dist/ui/slider.cjs +1 -1
- package/dist/ui/slider.d.cts +2 -2
- package/dist/ui/slider.d.ts +2 -2
- package/dist/ui/slider.js +1 -1
- package/dist/ui/sonner.d.cts +2 -2
- package/dist/ui/sonner.d.ts +2 -2
- package/dist/ui/switch.cjs +1 -1
- package/dist/ui/switch.d.cts +2 -2
- package/dist/ui/switch.d.ts +2 -2
- package/dist/ui/switch.js +1 -1
- package/dist/ui/table.d.cts +9 -9
- package/dist/ui/table.d.ts +9 -9
- package/dist/ui/tabs.cjs +1 -1
- package/dist/ui/tabs.d.cts +5 -5
- package/dist/ui/tabs.d.ts +5 -5
- package/dist/ui/tabs.js +1 -1
- package/dist/ui/textarea.cjs +1 -1
- package/dist/ui/textarea.d.cts +2 -2
- package/dist/ui/textarea.d.ts +2 -2
- package/dist/ui/textarea.js +1 -1
- package/dist/ui/toggle-group.cjs +1 -1
- package/dist/ui/toggle-group.d.cts +4 -4
- package/dist/ui/toggle-group.d.ts +5 -5
- package/dist/ui/toggle-group.js +1 -1
- package/dist/ui/toggle.cjs +1 -1
- package/dist/ui/toggle.d.cts +1 -1
- package/dist/ui/toggle.d.ts +1 -1
- package/dist/ui/toggle.js +1 -1
- package/dist/ui/tooltip.cjs +1 -1
- package/dist/ui/tooltip.d.cts +1 -1
- package/dist/ui/tooltip.d.ts +1 -1
- package/dist/ui/tooltip.js +1 -1
- package/package.json +15 -15
- package/packages/components/forms/combobox-field.tsx +1 -0
- package/dist/add-new-BaTjxsdU.js +0 -2
- package/dist/form-CA4hhSV5.js +0 -2
- package/dist/paragraph-Bey03JkA.js +0 -2
- package/dist/paragraph-ZxI8zxuf.cjs +0 -2
- package/dist/refresh-B__T7OFC.js +0 -2
- package/dist/scroll-area-C0KQbcG0.js +0 -2
- package/dist/title-CA6PvqiD.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidebar-BOtpo81G.cjs","names":["React","React","open","TooltipProvider","cn","Sheet","SheetContent","SheetHeader","SheetTitle","SheetDescription","Button","MenuIcon","Input","Separator","SlotPrimitive","Tooltip","TooltipTrigger","TooltipContent","Skeleton"],"sources":["../packages/hooks/use-mobile.ts","../packages/components/ui/sidebar.tsx"],"sourcesContent":["import React from \"react\";\n\nconst MOBILE_BREAKPOINT = 768;\n\nexport function useIsMobile() {\n const [isMobile, setIsMobile] = React.useState<boolean | undefined>(\n undefined,\n );\n\n React.useEffect(() => {\n const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);\n const onChange = () => {\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n };\n mql.addEventListener(\"change\", onChange);\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n return () => mql.removeEventListener(\"change\", onChange);\n }, []);\n\n return !!isMobile;\n}\n","\"use client\";\nimport React from \"react\";\nimport { Slot as SlotPrimitive } from \"radix-ui\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { MenuIcon } from \"lucide-react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\nimport { Separator } from \"@/components/ui/separator\";\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@/components/ui/sheet\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { useIsMobile } from \"@/hooks/use-mobile\";\nimport { cn } from \"@/lib/utils\";\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\";\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n }\n\n return context;\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n}) {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\";\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n isMobile,\n\n toggleSidebar,\n\n open,\n setOpen,\n\n openMobile,\n setOpenMobile,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"group/sidebar-wrapper\",\n \"has-data-[variant=inset]:bg-sidebar\",\n \"flex min-h-svh w-full\",\n className,\n )}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\";\n variant?: \"sidebar\" | \"floating\" | \"inset\";\n collapsible?: \"offcanvas\" | \"icon\" | \"none\";\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === \"none\") {\n return (\n <aside\n data-slot=\"sidebar\"\n className={cn(\n \"bg-sidebar\",\n \"text-sidebar-foreground\",\n \"flex h-full w-(--sidebar-width) flex-col\",\n \"border-r\",\n className,\n )}\n {...props}\n >\n {children}\n </aside>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <aside\n className=\"group peer text-sidebar-foreground bg-card hidden md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative\",\n \"bg-transparent\",\n \"transition-[width] duration-200 ease-linear\",\n \"h-14 w-(--sidebar-width)\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\",\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"hidden md:flex\",\n \"fixed inset-y-0 top-14 z-10\",\n \"h-[calc(100svh-3.5rem)] w-(--sidebar-width)\",\n \"border-r\",\n \"transition-[left,right,width] duration-200 ease-linear\",\n side === \"left\" &&\n \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\",\n side === \"right\" &&\n \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className,\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className={cn(\n \"flex size-full flex-col\",\n \"group-data-[variant=floating]:rounded-lg\",\n \"group-data-[variant=floating]:border\",\n \"group-data-[variant=floating]:border-sidebar-border\",\n \"group-data-[variant=floating]:shadow-sm\",\n )}\n >\n {children}\n </div>\n </div>\n </aside>\n );\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn(\"size-10 rounded-full\", className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <MenuIcon className=\"!size-6\" />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInset({\n className,\n children,\n ...props\n}: React.ComponentProps<\"main\">) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\"w-full\", \"relative\", \"flex flex-1 flex-col\", className)}\n {...props}\n >\n <div className=\"h-14 w-full\" />\n <div className={cn(\"flex-1 inset-shadow-sm\")}>{children}</div>\n </main>\n );\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"bg-background h-8 w-full shadow-none\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"bg-sidebar-border mx-2 w-auto\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n const Comp = asChild ? SlotPrimitive.Slot : \"div\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n );\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/menu-button cursor-pointer flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n );\n}\n\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n showOnHover?: boolean;\n}) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n showOnHover &&\n \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean;\n}) {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n size?: \"sm\" | \"md\";\n isActive?: boolean;\n}) {\n const Comp = asChild ? SlotPrimitive.Slot : \"a\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n size === \"sm\" && \"text-xs\",\n size === \"md\" && \"text-sm\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n // eslint-disable-next-line react-refresh/only-export-components\n useSidebar,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sidebar-D7vLgYLD.cjs","names":["React","React","open","TooltipProvider","cn","Sheet","SheetContent","SheetHeader","SheetTitle","SheetDescription","Button","MenuIcon","Input","Separator","SlotPrimitive","Tooltip","TooltipTrigger","TooltipContent","Skeleton"],"sources":["../packages/hooks/use-mobile.ts","../packages/components/ui/sidebar.tsx"],"sourcesContent":["import React from \"react\";\n\nconst MOBILE_BREAKPOINT = 768;\n\nexport function useIsMobile() {\n const [isMobile, setIsMobile] = React.useState<boolean | undefined>(\n undefined,\n );\n\n React.useEffect(() => {\n const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);\n const onChange = () => {\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n };\n mql.addEventListener(\"change\", onChange);\n setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);\n return () => mql.removeEventListener(\"change\", onChange);\n }, []);\n\n return !!isMobile;\n}\n","\"use client\";\nimport React from \"react\";\nimport { Slot as SlotPrimitive } from \"radix-ui\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { MenuIcon } from \"lucide-react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\nimport { Separator } from \"@/components/ui/separator\";\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@/components/ui/sheet\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { useIsMobile } from \"@/hooks/use-mobile\";\nimport { cn } from \"@/lib/utils\";\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\";\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n }\n\n return context;\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n}) {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\";\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n isMobile,\n\n toggleSidebar,\n\n open,\n setOpen,\n\n openMobile,\n setOpenMobile,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"group/sidebar-wrapper\",\n \"has-data-[variant=inset]:bg-sidebar\",\n \"flex min-h-svh w-full\",\n className,\n )}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\";\n variant?: \"sidebar\" | \"floating\" | \"inset\";\n collapsible?: \"offcanvas\" | \"icon\" | \"none\";\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === \"none\") {\n return (\n <aside\n data-slot=\"sidebar\"\n className={cn(\n \"bg-sidebar\",\n \"text-sidebar-foreground\",\n \"flex h-full w-(--sidebar-width) flex-col\",\n \"border-r\",\n className,\n )}\n {...props}\n >\n {children}\n </aside>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <aside\n className=\"group peer text-sidebar-foreground bg-card hidden md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative\",\n \"bg-transparent\",\n \"transition-[width] duration-200 ease-linear\",\n \"h-14 w-(--sidebar-width)\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\",\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"hidden md:flex\",\n \"fixed inset-y-0 top-14 z-10\",\n \"h-[calc(100svh-3.5rem)] w-(--sidebar-width)\",\n \"border-r\",\n \"transition-[left,right,width] duration-200 ease-linear\",\n side === \"left\" &&\n \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\",\n side === \"right\" &&\n \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className,\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className={cn(\n \"flex size-full flex-col\",\n \"group-data-[variant=floating]:rounded-lg\",\n \"group-data-[variant=floating]:border\",\n \"group-data-[variant=floating]:border-sidebar-border\",\n \"group-data-[variant=floating]:shadow-sm\",\n )}\n >\n {children}\n </div>\n </div>\n </aside>\n );\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn(\"size-10 rounded-full\", className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <MenuIcon className=\"!size-6\" />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInset({\n className,\n children,\n ...props\n}: React.ComponentProps<\"main\">) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\"w-full\", \"relative\", \"flex flex-1 flex-col\", className)}\n {...props}\n >\n <div className=\"h-14 w-full\" />\n <div className={cn(\"flex-1 inset-shadow-sm\")}>{children}</div>\n </main>\n );\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"bg-background h-8 w-full shadow-none\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"bg-sidebar-border mx-2 w-auto\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n const Comp = asChild ? SlotPrimitive.Slot : \"div\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n );\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/menu-button cursor-pointer flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n );\n}\n\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n showOnHover?: boolean;\n}) {\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n showOnHover &&\n \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean;\n}) {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n size?: \"sm\" | \"md\";\n isActive?: boolean;\n}) {\n const Comp = asChild ? SlotPrimitive.Slot : \"a\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n size === \"sm\" && \"text-xs\",\n size === \"md\" && \"text-sm\",\n \"group-data-[collapsible=icon]:hidden\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n // eslint-disable-next-line react-refresh/only-export-components\n useSidebar,\n};\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`
|
|
2
|
-
//# sourceMappingURL=switch-
|
|
1
|
+
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`radix-ui`)),i=e.__toESM(require(`react/jsx-runtime`));function a({className:e,...n}){return(0,i.jsx)(r.Switch.Root,{"data-slot":`switch`,className:t.cn(`peer`,`w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none`,`inline-flex h-[20px]`,`data-[state=checked]:bg-primary`,`data-[state=unchecked]:bg-input`,`dark:data-[state=unchecked]:bg-input/80`,`focus-visible:border-ring`,`focus-visible:ring-ring/50`,`focus-visible:ring-4`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,`data-[state=unchecked]:border-input`,`data-[state=unchecked]:[&_span]:bg-input`,`data-[state=unchecked]:bg-transparent`,`data-[state=unchecked]:[&_span]:size-4`,`data-[state=unchecked]:[&_span]:translate-x-0.5`,`data-[state=unchecked]:[&_span]:shadow-none`,`data-[state=unchecked]:[&_span]:rtl:-translate-x-0.5`,e),...n,children:(0,i.jsx)(r.Switch.Thumb,{"data-slot":`switch-thumb`,className:t.cn(`bg-background`,`pointer-events-none block size-4 rounded-full ring-0 transition-transform`,`data-[state=checked]:translate-x-[calc(100%-3px)]`,`data-[state=unchecked]:translate-x-0`,`dark:data-[state=unchecked]:bg-foreground`,`dark:data-[state=checked]:bg-primary-foreground`)})})}Object.defineProperty(exports,`Switch`,{enumerable:!0,get:function(){return a}});
|
|
2
|
+
//# sourceMappingURL=switch-C7YAx4ZS.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-
|
|
1
|
+
{"version":3,"file":"switch-C7YAx4ZS.cjs","names":["SwitchPrimitive","cn"],"sources":["../packages/components/ui/switch.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\nimport { Switch as SwitchPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Switch({\n className,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(\n \"peer\",\n \"w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none\",\n \"inline-flex h-[20px]\",\n \"data-[state=checked]:bg-primary\",\n \"data-[state=unchecked]:bg-input\",\n \"dark:data-[state=unchecked]:bg-input/80\",\n \"focus-visible:border-ring\",\n \"focus-visible:ring-ring/50\",\n \"focus-visible:ring-4\",\n \"disabled:cursor-not-allowed\",\n \"disabled:opacity-50\",\n \"data-[state=unchecked]:border-input\",\n \"data-[state=unchecked]:[&_span]:bg-input\",\n \"data-[state=unchecked]:bg-transparent\",\n \"data-[state=unchecked]:[&_span]:size-4\",\n \"data-[state=unchecked]:[&_span]:translate-x-0.5\",\n \"data-[state=unchecked]:[&_span]:shadow-none\",\n \"data-[state=unchecked]:[&_span]:rtl:-translate-x-0.5\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"bg-background\",\n \"pointer-events-none block size-4 rounded-full ring-0 transition-transform\",\n \"data-[state=checked]:translate-x-[calc(100%-3px)]\",\n \"data-[state=unchecked]:translate-x-0\",\n \"dark:data-[state=unchecked]:bg-foreground\",\n \"dark:data-[state=checked]:bg-primary-foreground\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch };\n"],"mappings":"mLAMA,SAAS,EAAO,CACd,YACA,GAAG,GACiD,CACpD,OACE,EAAA,EAAA,KAACA,EAAAA,OAAgB,KAAA,CACf,YAAU,SACV,UAAWC,EAAAA,GACT,OACA,wHACA,uBACA,kCACA,kCACA,0CACA,4BACA,6BACA,uBACA,8BACA,sBACA,sCACA,2CACA,wCACA,yCACA,kDACA,8CACA,uDACA,GAEF,GAAI,YAEJ,EAAA,EAAA,KAACD,EAAAA,OAAgB,MAAA,CACf,YAAU,eACV,UAAWC,EAAAA,GACT,gBACA,4EACA,oDACA,uCACA,4CACA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{cn as e}from"./utils-D9AH0PUV.js";import t from"react";import{
|
|
2
|
-
//# sourceMappingURL=switch-
|
|
1
|
+
import{cn as e}from"./utils-D9AH0PUV.js";import t from"react";import{Switch as n}from"radix-ui";import{jsx as r}from"react/jsx-runtime";function i({className:t,...i}){return r(n.Root,{"data-slot":`switch`,className:e(`peer`,`w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none`,`inline-flex h-[20px]`,`data-[state=checked]:bg-primary`,`data-[state=unchecked]:bg-input`,`dark:data-[state=unchecked]:bg-input/80`,`focus-visible:border-ring`,`focus-visible:ring-ring/50`,`focus-visible:ring-4`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,`data-[state=unchecked]:border-input`,`data-[state=unchecked]:[&_span]:bg-input`,`data-[state=unchecked]:bg-transparent`,`data-[state=unchecked]:[&_span]:size-4`,`data-[state=unchecked]:[&_span]:translate-x-0.5`,`data-[state=unchecked]:[&_span]:shadow-none`,`data-[state=unchecked]:[&_span]:rtl:-translate-x-0.5`,t),...i,children:r(n.Thumb,{"data-slot":`switch-thumb`,className:e(`bg-background`,`pointer-events-none block size-4 rounded-full ring-0 transition-transform`,`data-[state=checked]:translate-x-[calc(100%-3px)]`,`data-[state=unchecked]:translate-x-0`,`dark:data-[state=unchecked]:bg-foreground`,`dark:data-[state=checked]:bg-primary-foreground`)})})}export{i as Switch};
|
|
2
|
+
//# sourceMappingURL=switch-mhbcb1o7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-
|
|
1
|
+
{"version":3,"file":"switch-mhbcb1o7.js","names":["Switch","SwitchPrimitive"],"sources":["../packages/components/ui/switch.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\nimport { Switch as SwitchPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Switch({\n className,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(\n \"peer\",\n \"w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none\",\n \"inline-flex h-[20px]\",\n \"data-[state=checked]:bg-primary\",\n \"data-[state=unchecked]:bg-input\",\n \"dark:data-[state=unchecked]:bg-input/80\",\n \"focus-visible:border-ring\",\n \"focus-visible:ring-ring/50\",\n \"focus-visible:ring-4\",\n \"disabled:cursor-not-allowed\",\n \"disabled:opacity-50\",\n \"data-[state=unchecked]:border-input\",\n \"data-[state=unchecked]:[&_span]:bg-input\",\n \"data-[state=unchecked]:bg-transparent\",\n \"data-[state=unchecked]:[&_span]:size-4\",\n \"data-[state=unchecked]:[&_span]:translate-x-0.5\",\n \"data-[state=unchecked]:[&_span]:shadow-none\",\n \"data-[state=unchecked]:[&_span]:rtl:-translate-x-0.5\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"bg-background\",\n \"pointer-events-none block size-4 rounded-full ring-0 transition-transform\",\n \"data-[state=checked]:translate-x-[calc(100%-3px)]\",\n \"data-[state=unchecked]:translate-x-0\",\n \"dark:data-[state=unchecked]:bg-foreground\",\n \"dark:data-[state=checked]:bg-primary-foreground\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch };\n"],"mappings":"wIAMA,SAASA,EAAO,CACd,YACA,GAAG,GACiD,CACpD,OACE,EAACC,EAAgB,KAAA,CACf,YAAU,SACV,UAAW,EACT,OACA,wHACA,uBACA,kCACA,kCACA,0CACA,4BACA,6BACA,uBACA,8BACA,sBACA,sCACA,2CACA,wCACA,yCACA,kDACA,8CACA,uDACA,GAEF,GAAI,WAEJ,EAACA,EAAgB,MAAA,CACf,YAAU,eACV,UAAW,EACT,gBACA,4EACA,oDACA,uCACA,4CACA"}
|
package/dist/table/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../utils-BsjVK5EW.cjs`),n=require(`../flex-CNA_SId-.cjs`);require(`../paragraph-ZxI8zxuf.cjs`);const r=require(`../button-Dzv_nos1.cjs`);require(`../input-C9Zl3f86.cjs`);const i=require(`../select-LQyuaEs8.cjs`),a=require(`../dropdown-menu-BIv0JrLQ.cjs`),o=require(`../scroll-area-CBq8XL4c.cjs`),s=require(`../table-B7URcTid.cjs`),c=require(`../add-new-BFH8xexA.cjs`),l=require(`../refresh-CGfJY7U7.cjs`),u=require(`../search-input-Bl5nix1f.cjs`),d=e.__toESM(require(`react`)),f=e.__toESM(require(`react/jsx-runtime`)),p=e.__toESM(require(`lucide-react`)),m=e.__toESM(require(`@tanstack/react-table`)),h=e=>{let t=e.getIsPinned();return{left:t===`left`?`${e.getStart(`left`)}px`:void 0,right:t===`right`?`${e.getAfter(`right`)}px`:void 0,position:t?`sticky`:`relative`,width:e.getSize(),zIndex:t?1:0}},g=({column:e})=>{let t=e.getIsSorted(),n={asc:(0,f.jsx)(p.ChevronUp,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`}),desc:(0,f.jsx)(p.ChevronDown,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`})};return t?n[t]:null},_=({column:e})=>{let t=e.columnDef.header;return e.getCanPin()?e.getIsPinned()?(0,f.jsx)(r.Button,{size:`icon`,variant:`ghost`,className:`hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none`,"aria-label":`Unpin ${t} column`,title:`Unpin ${t} column`,onClick:()=>e.pin(!1),children:(0,f.jsx)(p.PinOffIcon,{className:`opacity-60`,size:16,"aria-hidden":`true`})}):(0,f.jsxs)(a.DropdownMenu,{children:[(0,f.jsx)(a.DropdownMenuTrigger,{asChild:!0,children:(0,f.jsx)(r.Button,{size:`icon`,variant:`ghost`,className:`-mr-1 size-7 shadow-none`,"aria-label":`Pin options for ${t} column`,title:`Pin options for ${t} column`,children:(0,f.jsx)(p.EllipsisIcon,{className:`opacity-60`,size:16,"aria-hidden":`true`})})}),(0,f.jsxs)(a.DropdownMenuContent,{align:`end`,children:[(0,f.jsxs)(a.DropdownMenuItem,{onClick:()=>e.pin(`left`),children:[(0,f.jsx)(p.ArrowLeftToLineIcon,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to left`]}),(0,f.jsxs)(a.DropdownMenuItem,{onClick:()=>e.pin(`right`),children:[(0,f.jsx)(p.ArrowRightToLineIcon,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to right`]})]})]}):null},v=({header:e})=>{let{column:n}=e,r=e=>{n.getCanSort()&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.getToggleSortingHandler()?.(e))};return(0,f.jsxs)(`div`,{className:`flex items-center justify-between gap-2 truncate`,children:[!e.isPlaceholder&&(0,f.jsxs)(`div`,{className:t.cn(n.getCanSort()&&`flex h-full cursor-pointer items-center justify-between gap-2 select-none`),onClick:n.getToggleSortingHandler(),onKeyDown:r,tabIndex:n.getCanSort()?0:void 0,children:[(0,f.jsx)(`span`,{className:`truncate`,children:(0,m.flexRender)(n.columnDef.header,e.getContext())}),(0,f.jsx)(g,{column:n})]}),!e.isPlaceholder&&(0,f.jsx)(_,{column:n})]})},y=({table:e,isLoading:n,onClickRow:r})=>{"use no memo";return(0,f.jsxs)(o.ScrollArea,{className:`border-border bg-background relative w-full overflow-auto rounded-lg border`,children:[(0,f.jsxs)(s.Table,{className:t.cn(`!w-full`,`[&_td]:border-border`,`[&_th]:border-border`,`table-fixed border-separate border-spacing-0`,`[&_tfoot_td]:border-t`,`[&_th]:border-b`,`[&_tr]:border-none`,`[&_tr:not(:last-child)_td]:border-b`),style:{width:e.getTotalSize()},children:[(0,f.jsx)(s.TableHeader,{className:`bg-muted/50 sticky top-0 z-10 backdrop-blur-xs`,children:e.getHeaderGroups().map(e=>(0,f.jsx)(s.TableRow,{className:`bg-muted/50`,children:e.headers.map(e=>{let{column:n}=e,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return(0,f.jsx)(s.TableHead,{"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:t.cn(`text-accent-foreground/60 relative h-9 border-r font-semibold select-none`,`data-pinned:backdrop-blur-xs`,`data-pinned:bg-muted/90`,`[&>.cursor-col-resize]:last:opacity-0`,`[&[data-pinned][data-last-col]]:border-border`,`[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=right][data-last-col=right]]:border-l`),colSpan:e.colSpan,style:{width:e.getSize(),maxWidth:e.getSize(),...h(e.column)},children:(0,f.jsx)(v,{header:e})},e.id)})},e.id))}),(0,f.jsx)(s.TableBody,{className:t.cn(n&&`h-36`,e.getRowModel().rows?.length===0&&`h-48`),children:n?(0,f.jsx)(s.TableRow,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:(0,f.jsx)(s.TableCell,{children:`loading...`})}):(0,f.jsx)(d.default.Fragment,{children:e.getRowModel().rows?.length?e.getRowModel().rows.map(e=>(0,f.jsx)(s.TableRow,{"data-state":e.getIsSelected()&&`selected`,className:`cursor-pointer border-none focus:outline-none`,onClick:()=>r?.(e?.id||e.original?.id?.toString()||e.original?.uuid||void 0),children:e.getVisibleCells().map(e=>{let{column:n}=e,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return(0,f.jsx)(s.TableCell,{style:{...h(n),width:e.column.getSize(),maxWidth:e.column.getSize()},"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:t.cn(`overflow-hidden py-2.5`,`[&[data-pinned][data-last-col]]:border-border`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right][data-last-col=right]]:border-l`,`data-pinned:bg-background/90`),children:(0,m.flexRender)(e.column.columnDef.cell,e.getContext())},e.id)})},e.id)):(0,f.jsx)(s.TableRow,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:(0,f.jsx)(s.TableCell,{children:(0,f.jsxs)(`div`,{className:`text-muted-foreground flex size-full flex-col items-center justify-center gap-y-8 text-base`,children:[(0,f.jsx)(p.PackagePlusIcon,{size:48,strokeWidth:2}),(0,f.jsx)(`p`,{children:`Thêm dữ liệu để hiển thị`})]})})})})})]}),(0,f.jsx)(o.ScrollBar,{orientation:`vertical`,className:`z-10 w-2`}),(0,f.jsx)(o.ScrollBar,{orientation:`horizontal`,className:`absolute right-0 bottom-0 left-0 h-2`})]})};function b({table:e}){"use no memo";return(0,f.jsxs)(`div`,{className:`mt-4 flex w-full flex-0 flex-wrap items-center justify-between gap-y-4 px-2`,children:[(0,f.jsxs)(`div`,{className:`text-muted-foreground flex-1 text-sm`,children:[e.getFilteredSelectedRowModel().rows.length,` of`,` `,e.getFilteredRowModel().rows.length,` row(s) selected.`]}),(0,f.jsxs)(`div`,{className:`flex flex-wrap items-center space-x-6 gap-y-4 lg:space-x-8`,children:[(0,f.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,f.jsx)(`p`,{className:`text-sm font-medium`,children:`Rows per page`}),(0,f.jsxs)(i.Select,{value:`${e.getState().pagination.pageSize}`,onValueChange:t=>{e.setPageSize(Number(t))},children:[(0,f.jsx)(i.SelectTrigger,{className:`h-8 w-[70px]`,children:(0,f.jsx)(i.SelectValue,{placeholder:e.getState().pagination.pageSize})}),(0,f.jsx)(i.SelectContent,{side:`top`,children:[10,20,30,40,50].map(e=>(0,f.jsx)(i.SelectItem,{value:`${e}`,children:e},e))})]})]}),(0,f.jsxs)(`div`,{className:`flex w-25 items-center justify-center text-sm font-medium`,children:[`Page `,e.getState().pagination.pageIndex+1,` of`,` `,e.getPageCount()]}),(0,f.jsxs)(`div`,{className:`flex items-center space-x-2 *:size-9 *:p-0`,children:[(0,f.jsxs)(r.Button,{variant:`outline`,className:`lg:flex`,onClick:()=>e.setPageIndex(0),disabled:!e.getCanPreviousPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to first page`}),(0,f.jsx)(p.ChevronsLeft,{})]}),(0,f.jsxs)(r.Button,{variant:`outline`,onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to previous page`}),(0,f.jsx)(p.ChevronLeft,{})]}),(0,f.jsxs)(r.Button,{type:`button`,variant:`outline`,onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to next page`}),(0,f.jsx)(p.ChevronRight,{})]}),(0,f.jsxs)(r.Button,{variant:`outline`,className:`lg:flex`,onClick:()=>{e.setPageIndex(e.getPageCount()-1)},disabled:!e.getCanNextPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to last page`}),(0,f.jsx)(p.ChevronsRight,{})]})]})]})]})}function x({data:e,totalCount:t,isLoading:r,columns:i,pagination:a,onAdd:o,onRefresh:s,onClickRow:p,onPaginationChange:h}){"use no memo";let[g,_]=d.default.useState({}),[v,x]=d.default.useState([]),[S,C]=d.default.useState([]),[w,T]=d.default.useState({}),E=d.default.useMemo(()=>({columnPinning:{right:[`actions`,`update`,`delete`]},pagination:{pageIndex:0,pageSize:20}}),[]),D=(0,m.useReactTable)({initialState:E,data:e,columns:i,rowCount:t,columnResizeMode:`onChange`,manualPagination:!0,enableColumnResizing:!1,enableMultiRowSelection:!1,getCoreRowModel:(0,m.getCoreRowModel)(),getPaginationRowModel:(0,m.getPaginationRowModel)(),getSortedRowModel:(0,m.getSortedRowModel)(),getFilteredRowModel:(0,m.getFilteredRowModel)(),getFacetedRowModel:(0,m.getFacetedRowModel)(),getFacetedUniqueValues:(0,m.getFacetedUniqueValues)(),getRowId:e=>e.id||e.uuid,state:{rowSelection:g,sorting:v,columnVisibility:w,columnFilters:S,...a?{pagination:a}:{}},onRowSelectionChange:_,onSortingChange:x,onColumnVisibilityChange:T,onColumnFiltersChange:C,...h?{onPaginationChange:h}:{}});return(0,f.jsxs)(n.Flex,{vertical:!0,wrap:!1,gap:`sm`,align:`start`,className:`size-full overflow-y-auto pt-1`,children:[(0,f.jsxs)(n.Flex,{justify:`between`,padding:`none`,width:`full`,className:`flex-0`,children:[(0,f.jsx)(u.SearchInput,{placeholder:`Search...`}),(0,f.jsxs)(n.Flex,{className:`px-0`,children:[o&&(0,f.jsx)(c.AddNewBtn,{onClick:o}),(0,f.jsx)(l.RefreshBtn,{onClick:s})]})]}),(0,f.jsxs)(n.Flex,{padding:`none`,vertical:!0,wrap:!1,width:`full`,className:`flex-1 overflow-auto`,children:[(0,f.jsx)(y,{table:D,isLoading:r,onClickRow:p}),(0,f.jsx)(b,{table:D})]})]})}exports.Table=x;
|
|
1
|
+
const e=require(`../chunk-CUT6urMc.cjs`),t=require(`../utils-BsjVK5EW.cjs`),n=require(`../button-C34BzElG.cjs`);require(`../input-Deo694yz.cjs`);const r=require(`../select-D3H42rlp.cjs`),i=require(`../flex-BuUVu_Lf.cjs`);require(`../paragraph-DSDthoR8.cjs`);const a=require(`../dropdown-menu-Ds-l2AEO.cjs`),o=require(`../scroll-area-Cc6UjeXy.cjs`),s=require(`../table-B7URcTid.cjs`),c=require(`../add-new-BLzwK4-z.cjs`),l=require(`../refresh-3D87WTOF.cjs`),u=require(`../search-input-SgtXaOOe.cjs`),d=e.__toESM(require(`react`)),f=e.__toESM(require(`react/jsx-runtime`)),p=e.__toESM(require(`lucide-react`)),m=e.__toESM(require(`@tanstack/react-table`)),h=e=>{let t=e.getIsPinned();return{left:t===`left`?`${e.getStart(`left`)}px`:void 0,right:t===`right`?`${e.getAfter(`right`)}px`:void 0,position:t?`sticky`:`relative`,width:e.getSize(),zIndex:t?1:0}},g=({column:e})=>{let t=e.getIsSorted(),n={asc:(0,f.jsx)(p.ChevronUp,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`}),desc:(0,f.jsx)(p.ChevronDown,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`})};return t?n[t]:null},_=({column:e})=>{let t=e.columnDef.header;return e.getCanPin()?e.getIsPinned()?(0,f.jsx)(n.Button,{size:`icon`,variant:`ghost`,className:`hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none`,"aria-label":`Unpin ${t} column`,title:`Unpin ${t} column`,onClick:()=>e.pin(!1),children:(0,f.jsx)(p.PinOffIcon,{className:`opacity-60`,size:16,"aria-hidden":`true`})}):(0,f.jsxs)(a.DropdownMenu,{children:[(0,f.jsx)(a.DropdownMenuTrigger,{asChild:!0,children:(0,f.jsx)(n.Button,{size:`icon`,variant:`ghost`,className:`-mr-1 size-7 shadow-none`,"aria-label":`Pin options for ${t} column`,title:`Pin options for ${t} column`,children:(0,f.jsx)(p.EllipsisIcon,{className:`opacity-60`,size:16,"aria-hidden":`true`})})}),(0,f.jsxs)(a.DropdownMenuContent,{align:`end`,children:[(0,f.jsxs)(a.DropdownMenuItem,{onClick:()=>e.pin(`left`),children:[(0,f.jsx)(p.ArrowLeftToLineIcon,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to left`]}),(0,f.jsxs)(a.DropdownMenuItem,{onClick:()=>e.pin(`right`),children:[(0,f.jsx)(p.ArrowRightToLineIcon,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to right`]})]})]}):null},v=({header:e})=>{let{column:n}=e,r=e=>{n.getCanSort()&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.getToggleSortingHandler()?.(e))};return(0,f.jsxs)(`div`,{className:`flex items-center justify-between gap-2 truncate`,children:[!e.isPlaceholder&&(0,f.jsxs)(`div`,{className:t.cn(n.getCanSort()&&`flex h-full cursor-pointer items-center justify-between gap-2 select-none`),onClick:n.getToggleSortingHandler(),onKeyDown:r,tabIndex:n.getCanSort()?0:void 0,children:[(0,f.jsx)(`span`,{className:`truncate`,children:(0,m.flexRender)(n.columnDef.header,e.getContext())}),(0,f.jsx)(g,{column:n})]}),!e.isPlaceholder&&(0,f.jsx)(_,{column:n})]})},y=({table:e,isLoading:n,onClickRow:r})=>{"use no memo";return(0,f.jsxs)(o.ScrollArea,{className:`border-border bg-background relative w-full overflow-auto rounded-lg border`,children:[(0,f.jsxs)(s.Table,{className:t.cn(`!w-full`,`[&_td]:border-border`,`[&_th]:border-border`,`table-fixed border-separate border-spacing-0`,`[&_tfoot_td]:border-t`,`[&_th]:border-b`,`[&_tr]:border-none`,`[&_tr:not(:last-child)_td]:border-b`),style:{width:e.getTotalSize()},children:[(0,f.jsx)(s.TableHeader,{className:`bg-muted/50 sticky top-0 z-10 backdrop-blur-xs`,children:e.getHeaderGroups().map(e=>(0,f.jsx)(s.TableRow,{className:`bg-muted/50`,children:e.headers.map(e=>{let{column:n}=e,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return(0,f.jsx)(s.TableHead,{"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:t.cn(`text-accent-foreground/60 relative h-9 border-r font-semibold select-none`,`data-pinned:backdrop-blur-xs`,`data-pinned:bg-muted/90`,`[&>.cursor-col-resize]:last:opacity-0`,`[&[data-pinned][data-last-col]]:border-border`,`[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=right][data-last-col=right]]:border-l`),colSpan:e.colSpan,style:{width:e.getSize(),maxWidth:e.getSize(),...h(e.column)},children:(0,f.jsx)(v,{header:e})},e.id)})},e.id))}),(0,f.jsx)(s.TableBody,{className:t.cn(n&&`h-36`,e.getRowModel().rows?.length===0&&`h-48`),children:n?(0,f.jsx)(s.TableRow,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:(0,f.jsx)(s.TableCell,{children:`loading...`})}):(0,f.jsx)(d.default.Fragment,{children:e.getRowModel().rows?.length?e.getRowModel().rows.map(e=>(0,f.jsx)(s.TableRow,{"data-state":e.getIsSelected()&&`selected`,className:`cursor-pointer border-none focus:outline-none`,onClick:()=>r?.(e?.id||e.original?.id?.toString()||e.original?.uuid||void 0),children:e.getVisibleCells().map(e=>{let{column:n}=e,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return(0,f.jsx)(s.TableCell,{style:{...h(n),width:e.column.getSize(),maxWidth:e.column.getSize()},"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:t.cn(`overflow-hidden py-2.5`,`[&[data-pinned][data-last-col]]:border-border`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right][data-last-col=right]]:border-l`,`data-pinned:bg-background/90`),children:(0,m.flexRender)(e.column.columnDef.cell,e.getContext())},e.id)})},e.id)):(0,f.jsx)(s.TableRow,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:(0,f.jsx)(s.TableCell,{children:(0,f.jsxs)(`div`,{className:`text-muted-foreground flex size-full flex-col items-center justify-center gap-y-8 text-base`,children:[(0,f.jsx)(p.PackagePlusIcon,{size:48,strokeWidth:2}),(0,f.jsx)(`p`,{children:`Thêm dữ liệu để hiển thị`})]})})})})})]}),(0,f.jsx)(o.ScrollBar,{orientation:`vertical`,className:`z-10 w-2`}),(0,f.jsx)(o.ScrollBar,{orientation:`horizontal`,className:`absolute right-0 bottom-0 left-0 h-2`})]})};function b({table:e}){"use no memo";return(0,f.jsxs)(`div`,{className:`mt-4 flex w-full flex-0 flex-wrap items-center justify-between gap-y-4 px-2`,children:[(0,f.jsxs)(`div`,{className:`text-muted-foreground flex-1 text-sm`,children:[e.getFilteredSelectedRowModel().rows.length,` of`,` `,e.getFilteredRowModel().rows.length,` row(s) selected.`]}),(0,f.jsxs)(`div`,{className:`flex flex-wrap items-center space-x-6 gap-y-4 lg:space-x-8`,children:[(0,f.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,f.jsx)(`p`,{className:`text-sm font-medium`,children:`Rows per page`}),(0,f.jsxs)(r.Select,{value:`${e.getState().pagination.pageSize}`,onValueChange:t=>{e.setPageSize(Number(t))},children:[(0,f.jsx)(r.SelectTrigger,{className:`h-8 w-[70px]`,children:(0,f.jsx)(r.SelectValue,{placeholder:e.getState().pagination.pageSize})}),(0,f.jsx)(r.SelectContent,{side:`top`,children:[10,20,30,40,50].map(e=>(0,f.jsx)(r.SelectItem,{value:`${e}`,children:e},e))})]})]}),(0,f.jsxs)(`div`,{className:`flex w-25 items-center justify-center text-sm font-medium`,children:[`Page `,e.getState().pagination.pageIndex+1,` of`,` `,e.getPageCount()]}),(0,f.jsxs)(`div`,{className:`flex items-center space-x-2 *:size-9 *:p-0`,children:[(0,f.jsxs)(n.Button,{variant:`outline`,className:`lg:flex`,onClick:()=>e.setPageIndex(0),disabled:!e.getCanPreviousPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to first page`}),(0,f.jsx)(p.ChevronsLeft,{})]}),(0,f.jsxs)(n.Button,{variant:`outline`,onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to previous page`}),(0,f.jsx)(p.ChevronLeft,{})]}),(0,f.jsxs)(n.Button,{type:`button`,variant:`outline`,onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to next page`}),(0,f.jsx)(p.ChevronRight,{})]}),(0,f.jsxs)(n.Button,{variant:`outline`,className:`lg:flex`,onClick:()=>{e.setPageIndex(e.getPageCount()-1)},disabled:!e.getCanNextPage(),children:[(0,f.jsx)(`span`,{className:`sr-only`,children:`Go to last page`}),(0,f.jsx)(p.ChevronsRight,{})]})]})]})]})}function x({data:e,totalCount:t,isLoading:n,columns:r,pagination:a,onAdd:o,onRefresh:s,onClickRow:p,onPaginationChange:h}){"use no memo";let[g,_]=d.default.useState({}),[v,x]=d.default.useState([]),[S,C]=d.default.useState([]),[w,T]=d.default.useState({}),E=d.default.useMemo(()=>({columnPinning:{right:[`actions`,`update`,`delete`]},pagination:{pageIndex:0,pageSize:20}}),[]),D=(0,m.useReactTable)({initialState:E,data:e,columns:r,rowCount:t,columnResizeMode:`onChange`,manualPagination:!0,enableColumnResizing:!1,enableMultiRowSelection:!1,getCoreRowModel:(0,m.getCoreRowModel)(),getPaginationRowModel:(0,m.getPaginationRowModel)(),getSortedRowModel:(0,m.getSortedRowModel)(),getFilteredRowModel:(0,m.getFilteredRowModel)(),getFacetedRowModel:(0,m.getFacetedRowModel)(),getFacetedUniqueValues:(0,m.getFacetedUniqueValues)(),getRowId:e=>e.id||e.uuid,state:{rowSelection:g,sorting:v,columnVisibility:w,columnFilters:S,...a?{pagination:a}:{}},onRowSelectionChange:_,onSortingChange:x,onColumnVisibilityChange:T,onColumnFiltersChange:C,...h?{onPaginationChange:h}:{}});return(0,f.jsxs)(i.Flex,{vertical:!0,wrap:!1,gap:`sm`,align:`start`,className:`size-full overflow-y-auto pt-1`,children:[(0,f.jsxs)(i.Flex,{justify:`between`,padding:`none`,width:`full`,className:`flex-0`,children:[(0,f.jsx)(u.SearchInput,{placeholder:`Search...`}),(0,f.jsxs)(i.Flex,{className:`px-0`,children:[o&&(0,f.jsx)(c.AddNewBtn,{onClick:o}),(0,f.jsx)(l.RefreshBtn,{onClick:s})]})]}),(0,f.jsxs)(i.Flex,{padding:`none`,vertical:!0,wrap:!1,width:`full`,className:`flex-1 overflow-auto`,children:[(0,f.jsx)(y,{table:D,isLoading:n,onClickRow:p}),(0,f.jsx)(b,{table:D})]})]})}exports.Table=x;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/table/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime13 from "react/jsx-runtime";
|
|
2
2
|
import React from "react";
|
|
3
3
|
import { ColumnDef, PaginationState } from "@tanstack/react-table";
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ declare function Table<T extends Record<string, unknown>>({
|
|
|
24
24
|
onRefresh,
|
|
25
25
|
onClickRow,
|
|
26
26
|
onPaginationChange
|
|
27
|
-
}: Props<T>):
|
|
27
|
+
}: Props<T>): react_jsx_runtime13.JSX.Element;
|
|
28
28
|
//#endregion
|
|
29
29
|
export { Table };
|
|
30
30
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/table/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime20 from "react/jsx-runtime";
|
|
3
3
|
import { ColumnDef, PaginationState } from "@tanstack/react-table";
|
|
4
4
|
|
|
5
5
|
//#region packages/components/table/index.d.ts
|
|
@@ -24,7 +24,7 @@ declare function Table<T extends Record<string, unknown>>({
|
|
|
24
24
|
onRefresh,
|
|
25
25
|
onClickRow,
|
|
26
26
|
onPaginationChange
|
|
27
|
-
}: Props<T>):
|
|
27
|
+
}: Props<T>): react_jsx_runtime20.JSX.Element;
|
|
28
28
|
//#endregion
|
|
29
29
|
export { Table };
|
|
30
30
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/table/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{cn as e}from"../utils-D9AH0PUV.js";import{
|
|
1
|
+
import{cn as e}from"../utils-D9AH0PUV.js";import{Button as t}from"../button-BrvvATXa.js";import"../input-IwBf-u4O.js";import{Select as n,SelectContent as r,SelectItem as i,SelectTrigger as a,SelectValue as o}from"../select-BNcC9Gu6.js";import{Flex as s}from"../flex-uO6z0kNw.js";import"../paragraph-SPyLaf4T.js";import{DropdownMenu as c,DropdownMenuContent as l,DropdownMenuItem as u,DropdownMenuTrigger as d}from"../dropdown-menu-CYyfrjiV.js";import{ScrollArea as f,ScrollBar as p}from"../scroll-area-C2rZa7Ua.js";import{Table as m,TableBody as h,TableCell as g,TableHead as _,TableHeader as v,TableRow as y}from"../table-DrnU8YJP.js";import{AddNewBtn as b}from"../add-new-RL-iKsWC.js";import{RefreshBtn as x}from"../refresh-Tr5yJ_61.js";import{SearchInput as S}from"../search-input-CbN38n2i.js";import C from"react";import{jsx as w,jsxs as T}from"react/jsx-runtime";import{ArrowLeftToLineIcon as E,ArrowRightToLineIcon as D,ChevronDown as O,ChevronLeft as k,ChevronRight as A,ChevronUp as j,ChevronsLeft as M,ChevronsRight as N,EllipsisIcon as P,PackagePlusIcon as F,PinOffIcon as I}from"lucide-react";import{flexRender as L,getCoreRowModel as R,getFacetedRowModel as z,getFacetedUniqueValues as B,getFilteredRowModel as V,getPaginationRowModel as H,getSortedRowModel as U,useReactTable as W}from"@tanstack/react-table";const G=e=>{let t=e.getIsPinned();return{left:t===`left`?`${e.getStart(`left`)}px`:void 0,right:t===`right`?`${e.getAfter(`right`)}px`:void 0,position:t?`sticky`:`relative`,width:e.getSize(),zIndex:t?1:0}},K=({column:e})=>{let t=e.getIsSorted(),n={asc:w(j,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`}),desc:w(O,{className:`shrink-0 opacity-60`,size:16,strokeWidth:2,"aria-hidden":`true`})};return t?n[t]:null},q=({column:e})=>{let n=e.columnDef.header;return e.getCanPin()?e.getIsPinned()?w(t,{size:`icon`,variant:`ghost`,className:`hover:[&_svg]:text-secondary-foreground -mr-1 size-7 shadow-none`,"aria-label":`Unpin ${n} column`,title:`Unpin ${n} column`,onClick:()=>e.pin(!1),children:w(I,{className:`opacity-60`,size:16,"aria-hidden":`true`})}):T(c,{children:[w(d,{asChild:!0,children:w(t,{size:`icon`,variant:`ghost`,className:`-mr-1 size-7 shadow-none`,"aria-label":`Pin options for ${n} column`,title:`Pin options for ${n} column`,children:w(P,{className:`opacity-60`,size:16,"aria-hidden":`true`})})}),T(l,{align:`end`,children:[T(u,{onClick:()=>e.pin(`left`),children:[w(E,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to left`]}),T(u,{onClick:()=>e.pin(`right`),children:[w(D,{size:16,className:`opacity-60`,"aria-hidden":`true`}),`Stick to right`]})]})]}):null},J=({header:t})=>{let{column:n}=t,r=e=>{n.getCanSort()&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.getToggleSortingHandler()?.(e))};return T(`div`,{className:`flex items-center justify-between gap-2 truncate`,children:[!t.isPlaceholder&&T(`div`,{className:e(n.getCanSort()&&`flex h-full cursor-pointer items-center justify-between gap-2 select-none`),onClick:n.getToggleSortingHandler(),onKeyDown:r,tabIndex:n.getCanSort()?0:void 0,children:[w(`span`,{className:`truncate`,children:L(n.columnDef.header,t.getContext())}),w(K,{column:n})]}),!t.isPlaceholder&&w(q,{column:n})]})},Y=({table:t,isLoading:n,onClickRow:r})=>{"use no memo";return T(f,{className:`border-border bg-background relative w-full overflow-auto rounded-lg border`,children:[T(m,{className:e(`!w-full`,`[&_td]:border-border`,`[&_th]:border-border`,`table-fixed border-separate border-spacing-0`,`[&_tfoot_td]:border-t`,`[&_th]:border-b`,`[&_tr]:border-none`,`[&_tr:not(:last-child)_td]:border-b`),style:{width:t.getTotalSize()},children:[w(v,{className:`bg-muted/50 sticky top-0 z-10 backdrop-blur-xs`,children:t.getHeaderGroups().map(t=>w(y,{className:`bg-muted/50`,children:t.headers.map(t=>{let{column:n}=t,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return w(_,{"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:e(`text-accent-foreground/60 relative h-9 border-r font-semibold select-none`,`data-pinned:backdrop-blur-xs`,`data-pinned:bg-muted/90`,`[&>.cursor-col-resize]:last:opacity-0`,`[&[data-pinned][data-last-col]]:border-border`,`[&:not([data-pinned]):has(+[data-pinned])_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-last-col=left]_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right]:last-child_div.cursor-col-resize:last-child]:opacity-0`,`[&[data-pinned=right][data-last-col=right]]:border-l`),colSpan:t.colSpan,style:{width:t.getSize(),maxWidth:t.getSize(),...G(t.column)},children:w(J,{header:t})},t.id)})},t.id))}),w(h,{className:e(n&&`h-36`,t.getRowModel().rows?.length===0&&`h-48`),children:n?w(y,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:w(g,{children:`loading...`})}):w(C.Fragment,{children:t.getRowModel().rows?.length?t.getRowModel().rows.map(t=>w(y,{"data-state":t.getIsSelected()&&`selected`,className:`cursor-pointer border-none focus:outline-none`,onClick:()=>r?.(t?.id||t.original?.id?.toString()||t.original?.uuid||void 0),children:t.getVisibleCells().map(t=>{let{column:n}=t,r=n.getIsPinned(),i=r===`left`&&n.getIsLastColumn(`left`),a=r===`right`&&n.getIsFirstColumn(`right`);return w(g,{style:{...G(n),width:t.column.getSize(),maxWidth:t.column.getSize()},"data-pinned":r||void 0,"data-last-col":i?`left`:a?`right`:void 0,className:e(`overflow-hidden py-2.5`,`[&[data-pinned][data-last-col]]:border-border`,`[&[data-pinned=left][data-last-col=left]]:border-r`,`[&[data-pinned=right][data-last-col=right]]:border-l`,`data-pinned:bg-background/90`),children:L(t.column.columnDef.cell,t.getContext())},t.id)})},t.id)):w(y,{className:`absolute top-9 flex h-36 w-full items-center justify-center`,children:w(g,{children:T(`div`,{className:`text-muted-foreground flex size-full flex-col items-center justify-center gap-y-8 text-base`,children:[w(F,{size:48,strokeWidth:2}),w(`p`,{children:`Thêm dữ liệu để hiển thị`})]})})})})})]}),w(p,{orientation:`vertical`,className:`z-10 w-2`}),w(p,{orientation:`horizontal`,className:`absolute right-0 bottom-0 left-0 h-2`})]})};function X({table:e}){"use no memo";return T(`div`,{className:`mt-4 flex w-full flex-0 flex-wrap items-center justify-between gap-y-4 px-2`,children:[T(`div`,{className:`text-muted-foreground flex-1 text-sm`,children:[e.getFilteredSelectedRowModel().rows.length,` of`,` `,e.getFilteredRowModel().rows.length,` row(s) selected.`]}),T(`div`,{className:`flex flex-wrap items-center space-x-6 gap-y-4 lg:space-x-8`,children:[T(`div`,{className:`flex items-center space-x-2`,children:[w(`p`,{className:`text-sm font-medium`,children:`Rows per page`}),T(n,{value:`${e.getState().pagination.pageSize}`,onValueChange:t=>{e.setPageSize(Number(t))},children:[w(a,{className:`h-8 w-[70px]`,children:w(o,{placeholder:e.getState().pagination.pageSize})}),w(r,{side:`top`,children:[10,20,30,40,50].map(e=>w(i,{value:`${e}`,children:e},e))})]})]}),T(`div`,{className:`flex w-25 items-center justify-center text-sm font-medium`,children:[`Page `,e.getState().pagination.pageIndex+1,` of`,` `,e.getPageCount()]}),T(`div`,{className:`flex items-center space-x-2 *:size-9 *:p-0`,children:[T(t,{variant:`outline`,className:`lg:flex`,onClick:()=>e.setPageIndex(0),disabled:!e.getCanPreviousPage(),children:[w(`span`,{className:`sr-only`,children:`Go to first page`}),w(M,{})]}),T(t,{variant:`outline`,onClick:()=>e.previousPage(),disabled:!e.getCanPreviousPage(),children:[w(`span`,{className:`sr-only`,children:`Go to previous page`}),w(k,{})]}),T(t,{type:`button`,variant:`outline`,onClick:()=>e.nextPage(),disabled:!e.getCanNextPage(),children:[w(`span`,{className:`sr-only`,children:`Go to next page`}),w(A,{})]}),T(t,{variant:`outline`,className:`lg:flex`,onClick:()=>{e.setPageIndex(e.getPageCount()-1)},disabled:!e.getCanNextPage(),children:[w(`span`,{className:`sr-only`,children:`Go to last page`}),w(N,{})]})]})]})]})}function Z({data:e,totalCount:t,isLoading:n,columns:r,pagination:i,onAdd:a,onRefresh:o,onClickRow:c,onPaginationChange:l}){"use no memo";let[u,d]=C.useState({}),[f,p]=C.useState([]),[m,h]=C.useState([]),[g,_]=C.useState({}),v=C.useMemo(()=>({columnPinning:{right:[`actions`,`update`,`delete`]},pagination:{pageIndex:0,pageSize:20}}),[]),y=W({initialState:v,data:e,columns:r,rowCount:t,columnResizeMode:`onChange`,manualPagination:!0,enableColumnResizing:!1,enableMultiRowSelection:!1,getCoreRowModel:R(),getPaginationRowModel:H(),getSortedRowModel:U(),getFilteredRowModel:V(),getFacetedRowModel:z(),getFacetedUniqueValues:B(),getRowId:e=>e.id||e.uuid,state:{rowSelection:u,sorting:f,columnVisibility:g,columnFilters:m,...i?{pagination:i}:{}},onRowSelectionChange:d,onSortingChange:p,onColumnVisibilityChange:_,onColumnFiltersChange:h,...l?{onPaginationChange:l}:{}});return T(s,{vertical:!0,wrap:!1,gap:`sm`,align:`start`,className:`size-full overflow-y-auto pt-1`,children:[T(s,{justify:`between`,padding:`none`,width:`full`,className:`flex-0`,children:[w(S,{placeholder:`Search...`}),T(s,{className:`px-0`,children:[a&&w(b,{onClick:a}),w(x,{onClick:o})]})]}),T(s,{padding:`none`,vertical:!0,wrap:!1,width:`full`,className:`flex-1 overflow-auto`,children:[w(Y,{table:y,isLoading:n,onClickRow:c}),w(X,{table:y})]})]})}export{Z as Table};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import{cn as e}from"./utils-D9AH0PUV.js";import t from"react";import{jsx as n}from"react/jsx-runtime";function r({className:r,onChange:i,onValueChange:a,...o}){let s=t.useCallback(e=>{i?.(e),a?.(e.target.value)},[i,a]);return n(`textarea`,{"data-slot":`textarea`,className:e(`border-input caret-primary`,`flex`,`field-sizing-content`,`min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-xs transition outline-none`,`placeholder:text-muted-foreground`,`focus-visible:border-ring`,`focus-visible:ring-ring`,`focus-visible:ring-4`,`aria-invalid:ring-destructive/20`,`aria-invalid:border-destructive`,`dark:aria-invalid:ring-destructive/40`,`dark:bg-input/30`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,r),...o,onChange:s})}export{r as Textarea};
|
|
2
|
-
//# sourceMappingURL=textarea-
|
|
2
|
+
//# sourceMappingURL=textarea-CA7u6znc.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea-
|
|
1
|
+
{"version":3,"file":"textarea-CA7u6znc.js","names":[],"sources":["../packages/components/ui/textarea.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Textarea({\n className,\n onChange,\n onValueChange,\n ...props\n}: React.ComponentProps<\"textarea\"> & {\n onValueChange?: (value: string) => void;\n}) {\n const handleChange = React.useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n },\n [onChange, onValueChange],\n );\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n \"border-input caret-primary\",\n \"flex\",\n \"field-sizing-content\",\n \"min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-xs transition outline-none\",\n \"placeholder:text-muted-foreground\",\n \"focus-visible:border-ring\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-4\",\n \"aria-invalid:ring-destructive/20\",\n \"aria-invalid:border-destructive\",\n \"dark:aria-invalid:ring-destructive/40\",\n \"dark:bg-input/30\",\n \"disabled:cursor-not-allowed\",\n \"disabled:opacity-50\",\n className,\n )}\n {...props}\n onChange={handleChange}\n />\n );\n}\n\nexport { Textarea };\n"],"mappings":"sGAKA,SAAS,EAAS,CAChB,YACA,WACA,gBACA,GAAG,GAGF,CACD,IAAM,EAAe,EAAM,YACxB,GAA8C,CAC7C,IAAW,GACX,IAAgB,EAAE,OAAO,QAE3B,CAAC,EAAU,IAEb,OACE,EAAC,WAAA,CACC,YAAU,WACV,UAAW,EACT,6BACA,OACA,uBACA,uGACA,oCACA,4BACA,0BACA,uBACA,mCACA,kCACA,wCACA,mBACA,8BACA,sBACA,GAEF,GAAI,EACJ,SAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`react/jsx-runtime`));function i({className:e,onChange:i,onValueChange:a,...o}){let s=n.default.useCallback(e=>{i?.(e),a?.(e.target.value)},[i,a]);return(0,r.jsx)(`textarea`,{"data-slot":`textarea`,className:t.cn(`border-input caret-primary`,`flex`,`field-sizing-content`,`min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-xs transition outline-none`,`placeholder:text-muted-foreground`,`focus-visible:border-ring`,`focus-visible:ring-ring`,`focus-visible:ring-4`,`aria-invalid:ring-destructive/20`,`aria-invalid:border-destructive`,`dark:aria-invalid:ring-destructive/40`,`dark:bg-input/30`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,e),...o,onChange:s})}Object.defineProperty(exports,`Textarea`,{enumerable:!0,get:function(){return i}});
|
|
2
|
-
//# sourceMappingURL=textarea-
|
|
2
|
+
//# sourceMappingURL=textarea-CGmuTOD8.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea-
|
|
1
|
+
{"version":3,"file":"textarea-CGmuTOD8.cjs","names":["React","cn"],"sources":["../packages/components/ui/textarea.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Textarea({\n className,\n onChange,\n onValueChange,\n ...props\n}: React.ComponentProps<\"textarea\"> & {\n onValueChange?: (value: string) => void;\n}) {\n const handleChange = React.useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange?.(e);\n onValueChange?.(e.target.value);\n },\n [onChange, onValueChange],\n );\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n \"border-input caret-primary\",\n \"flex\",\n \"field-sizing-content\",\n \"min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-sm shadow-xs transition outline-none\",\n \"placeholder:text-muted-foreground\",\n \"focus-visible:border-ring\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-4\",\n \"aria-invalid:ring-destructive/20\",\n \"aria-invalid:border-destructive\",\n \"dark:aria-invalid:ring-destructive/40\",\n \"dark:bg-input/30\",\n \"disabled:cursor-not-allowed\",\n \"disabled:opacity-50\",\n className,\n )}\n {...props}\n onChange={handleChange}\n />\n );\n}\n\nexport { Textarea };\n"],"mappings":"kJAKA,SAAS,EAAS,CAChB,YACA,WACA,gBACA,GAAG,GAGF,CACD,IAAM,EAAeA,EAAAA,QAAM,YACxB,GAA8C,CAC7C,IAAW,GACX,IAAgB,EAAE,OAAO,QAE3B,CAAC,EAAU,IAEb,OACE,EAAA,EAAA,KAAC,WAAA,CACC,YAAU,WACV,UAAWC,EAAAA,GACT,6BACA,OACA,uBACA,uGACA,oCACA,4BACA,0BACA,uBACA,mCACA,kCACA,wCACA,mBACA,8BACA,sBACA,GAEF,GAAI,EACJ,SAAU"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{cn as e}from"./utils-D9AH0PUV.js";import{cva as t}from"class-variance-authority";import{jsx as n}from"react/jsx-runtime";const r=t(`scroll-m-20 text-secondary-foreground tracking-tight`,{variants:{level:{1:`text-center text-4xl font-extrabold text-balance`,2:`border-b pb-2 text-3xl font-semibold first:mt-0`,3:`text-2xl font-semibold`,4:`text-xl font-semibold`,5:`text-lg font-semibold`,6:`text-base font-semibold`},default:{level:1}}}),i=({level:t=1,className:i,children:a})=>{let o=`h${t}`;return n(o,{className:e(r({level:t}),i),children:a})};export{i as Title};
|
|
2
|
+
//# sourceMappingURL=title-D7csdg9m.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-
|
|
1
|
+
{"version":3,"file":"title-D7csdg9m.js","names":[],"sources":["../packages/components/typography/title.tsx"],"sourcesContent":["import type { JSX } from \"react\";\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst titleVariants = cva(\n \"scroll-m-20 text-secondary-foreground tracking-tight\",\n {\n variants: {\n level: {\n 1: \"text-center text-4xl font-extrabold text-balance\",\n 2: \"border-b pb-2 text-3xl font-semibold first:mt-0\",\n 3: \"text-2xl font-semibold\",\n 4: \"text-xl font-semibold\",\n 5: \"text-lg font-semibold\",\n 6: \"text-base font-semibold\",\n },\n default: {\n level: 1,\n },\n },\n },\n);\n\ntype Props = {\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const Title = ({ level = 1, className, children }: Props) => {\n const Comp = `h${level}` as keyof JSX.IntrinsicElements;\n return (\n <Comp className={cn(titleVariants({ level }), className)}>{children}</Comp>\n );\n};\n"],"mappings":"gIAKA,MAAM,EAAgB,EACpB,uDACA,CACE,SAAU,CACR,MAAO,CACL,EAAG,mDACH,EAAG,kDACH,EAAG,yBACH,EAAG,wBACH,EAAG,wBACH,EAAG,2BAEL,QAAS,CACP,MAAO,MAYF,GAAS,CAAE,QAAQ,EAAG,YAAW,cAAsB,CAClE,IAAM,EAAO,IAAI,IACjB,OACE,EAAC,EAAA,CAAK,UAAW,EAAG,EAAc,CAAE,UAAU,GAAa"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`
|
|
2
|
-
//# sourceMappingURL=title-
|
|
1
|
+
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`class-variance-authority`)),r=e.__toESM(require(`react/jsx-runtime`)),i=(0,n.cva)(`scroll-m-20 text-secondary-foreground tracking-tight`,{variants:{level:{1:`text-center text-4xl font-extrabold text-balance`,2:`border-b pb-2 text-3xl font-semibold first:mt-0`,3:`text-2xl font-semibold`,4:`text-xl font-semibold`,5:`text-lg font-semibold`,6:`text-base font-semibold`},default:{level:1}}}),a=({level:e=1,className:n,children:a})=>{let o=`h${e}`;return(0,r.jsx)(o,{className:t.cn(i({level:e}),n),children:a})};Object.defineProperty(exports,`Title`,{enumerable:!0,get:function(){return a}});
|
|
2
|
+
//# sourceMappingURL=title-_6fEG7u-.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-
|
|
1
|
+
{"version":3,"file":"title-_6fEG7u-.cjs","names":["cn"],"sources":["../packages/components/typography/title.tsx"],"sourcesContent":["import type { JSX } from \"react\";\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst titleVariants = cva(\n \"scroll-m-20 text-secondary-foreground tracking-tight\",\n {\n variants: {\n level: {\n 1: \"text-center text-4xl font-extrabold text-balance\",\n 2: \"border-b pb-2 text-3xl font-semibold first:mt-0\",\n 3: \"text-2xl font-semibold\",\n 4: \"text-xl font-semibold\",\n 5: \"text-lg font-semibold\",\n 6: \"text-base font-semibold\",\n },\n default: {\n level: 1,\n },\n },\n },\n);\n\ntype Props = {\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const Title = ({ level = 1, className, children }: Props) => {\n const Comp = `h${level}` as keyof JSX.IntrinsicElements;\n return (\n <Comp className={cn(titleVariants({ level }), className)}>{children}</Comp>\n );\n};\n"],"mappings":"qKAKM,GAAA,EAAA,EAAA,KACJ,uDACA,CACE,SAAU,CACR,MAAO,CACL,EAAG,mDACH,EAAG,kDACH,EAAG,yBACH,EAAG,wBACH,EAAG,wBACH,EAAG,2BAEL,QAAS,CACP,MAAO,MAYF,GAAS,CAAE,QAAQ,EAAG,YAAW,cAAsB,CAClE,IAAM,EAAO,IAAI,IACjB,OACE,EAAA,EAAA,KAAC,EAAA,CAAK,UAAWA,EAAAA,GAAG,EAAc,CAAE,UAAU,GAAa"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime229 from "react/jsx-runtime";
|
|
2
2
|
import React from "react";
|
|
3
|
-
import * as
|
|
3
|
+
import * as class_variance_authority_types5 from "class-variance-authority/types";
|
|
4
4
|
import { VariantProps } from "class-variance-authority";
|
|
5
5
|
import { Toggle } from "radix-ui";
|
|
6
6
|
|
|
@@ -8,13 +8,13 @@ import { Toggle } from "radix-ui";
|
|
|
8
8
|
declare const toggleVariants: (props?: ({
|
|
9
9
|
variant?: "default" | "outline" | null | undefined;
|
|
10
10
|
size?: "sm" | "lg" | "default" | null | undefined;
|
|
11
|
-
} &
|
|
11
|
+
} & class_variance_authority_types5.ClassProp) | undefined) => string;
|
|
12
12
|
declare function Toggle$1({
|
|
13
13
|
className,
|
|
14
14
|
variant,
|
|
15
15
|
size,
|
|
16
16
|
...props
|
|
17
|
-
}: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>):
|
|
17
|
+
}: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime229.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { Toggle$1 as Toggle, toggleVariants };
|
|
20
|
-
//# sourceMappingURL=toggle-
|
|
20
|
+
//# sourceMappingURL=toggle-B9onDBto.d.cts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import * as react_jsx_runtime124 from "react/jsx-runtime";
|
|
3
|
-
import { VariantProps } from "class-variance-authority";
|
|
4
2
|
import { Toggle } from "radix-ui";
|
|
3
|
+
import { VariantProps } from "class-variance-authority";
|
|
4
|
+
import * as react_jsx_runtime101 from "react/jsx-runtime";
|
|
5
5
|
import * as class_variance_authority_types3 from "class-variance-authority/types";
|
|
6
6
|
|
|
7
7
|
//#region packages/components/ui/toggle.d.ts
|
|
@@ -14,7 +14,7 @@ declare function Toggle$1({
|
|
|
14
14
|
variant,
|
|
15
15
|
size,
|
|
16
16
|
...props
|
|
17
|
-
}: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>):
|
|
17
|
+
}: React.ComponentProps<typeof Toggle.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime101.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { Toggle$1 as Toggle, toggleVariants };
|
|
20
|
-
//# sourceMappingURL=toggle-
|
|
20
|
+
//# sourceMappingURL=toggle-CYCU8-jp.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`
|
|
2
|
-
//# sourceMappingURL=toggle-
|
|
1
|
+
const e=require(`./chunk-CUT6urMc.cjs`),t=require(`./utils-BsjVK5EW.cjs`),n=e.__toESM(require(`react`)),r=e.__toESM(require(`radix-ui`)),i=e.__toESM(require(`class-variance-authority`)),a=e.__toESM(require(`react/jsx-runtime`)),o=(0,i.cva)(`inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground`},size:{default:`h-9 px-2 min-w-9`,sm:`h-8 px-1.5 min-w-8`,lg:`h-10 px-2.5 min-w-10`}},defaultVariants:{variant:`default`,size:`default`}});function s({className:e,variant:n,size:i,...s}){return(0,a.jsx)(r.Toggle.Root,{"data-slot":`toggle`,className:t.cn(o({variant:n,size:i,className:e})),...s})}Object.defineProperty(exports,`Toggle`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`toggleVariants`,{enumerable:!0,get:function(){return o}});
|
|
2
|
+
//# sourceMappingURL=toggle-RdqFG3Vy.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-
|
|
1
|
+
{"version":3,"file":"toggle-RdqFG3Vy.cjs","names":["TogglePrimitive","cn"],"sources":["../packages/components/ui/toggle.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\nimport { Toggle as TogglePrimitive } from \"radix-ui\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline:\n \"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground\",\n },\n size: {\n default: \"h-9 px-2 min-w-9\",\n sm: \"h-8 px-1.5 min-w-8\",\n lg: \"h-10 px-2.5 min-w-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Toggle({\n className,\n variant,\n size,\n ...props\n}: React.ComponentProps<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>) {\n return (\n <TogglePrimitive.Root\n data-slot=\"toggle\"\n className={cn(toggleVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Toggle, toggleVariants };\n"],"mappings":"oOAOM,GAAA,EAAA,EAAA,KACJ,gjBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,QACE,6FAEJ,KAAM,CACJ,QAAS,mBACT,GAAI,qBACJ,GAAI,yBAGR,gBAAiB,CACf,QAAS,UACT,KAAM,aAKZ,SAAS,EAAO,CACd,YACA,UACA,OACA,GAAG,GAEkC,CACrC,OACE,EAAA,EAAA,KAACA,EAAAA,OAAgB,KAAA,CACf,YAAU,SACV,UAAWC,EAAAA,GAAG,EAAe,CAAE,UAAS,OAAM,eAC9C,GAAI"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{cn as e}from"./utils-D9AH0PUV.js";import t from"react";import{
|
|
2
|
-
//# sourceMappingURL=toggle-
|
|
1
|
+
import{cn as e}from"./utils-D9AH0PUV.js";import t from"react";import{Toggle as n}from"radix-ui";import{cva as r}from"class-variance-authority";import{jsx as i}from"react/jsx-runtime";const a=r(`inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground`},size:{default:`h-9 px-2 min-w-9`,sm:`h-8 px-1.5 min-w-8`,lg:`h-10 px-2.5 min-w-10`}},defaultVariants:{variant:`default`,size:`default`}});function o({className:t,variant:r,size:o,...s}){return i(n.Root,{"data-slot":`toggle`,className:e(a({variant:r,size:o,className:t})),...s})}export{o as Toggle,a as toggleVariants};
|
|
2
|
+
//# sourceMappingURL=toggle-T35MVJMk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-
|
|
1
|
+
{"version":3,"file":"toggle-T35MVJMk.js","names":["Toggle","TogglePrimitive"],"sources":["../packages/components/ui/toggle.tsx"],"sourcesContent":["\"use client\";\nimport React from \"react\";\nimport { Toggle as TogglePrimitive } from \"radix-ui\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline:\n \"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground\",\n },\n size: {\n default: \"h-9 px-2 min-w-9\",\n sm: \"h-8 px-1.5 min-w-8\",\n lg: \"h-10 px-2.5 min-w-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Toggle({\n className,\n variant,\n size,\n ...props\n}: React.ComponentProps<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>) {\n return (\n <TogglePrimitive.Root\n data-slot=\"toggle\"\n className={cn(toggleVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\n// eslint-disable-next-line react-refresh/only-export-components\nexport { Toggle, toggleVariants };\n"],"mappings":"uLAOA,MAAM,EAAiB,EACrB,gjBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,QACE,6FAEJ,KAAM,CACJ,QAAS,mBACT,GAAI,qBACJ,GAAI,yBAGR,gBAAiB,CACf,QAAS,UACT,KAAM,aAKZ,SAASA,EAAO,CACd,YACA,UACA,OACA,GAAG,GAEkC,CACrC,OACE,EAACC,EAAgB,KAAA,CACf,YAAU,SACV,UAAW,EAAG,EAAe,CAAE,UAAS,OAAM,eAC9C,GAAI"}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import * as react_jsx_runtime118 from "react/jsx-runtime";
|
|
3
2
|
import { Tooltip } from "radix-ui";
|
|
3
|
+
import * as react_jsx_runtime96 from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region packages/components/ui/tooltip.d.ts
|
|
6
6
|
declare function TooltipProvider({
|
|
7
7
|
delayDuration,
|
|
8
8
|
...props
|
|
9
|
-
}: React.ComponentProps<typeof Tooltip.Provider>):
|
|
9
|
+
}: React.ComponentProps<typeof Tooltip.Provider>): react_jsx_runtime96.JSX.Element;
|
|
10
10
|
declare function Tooltip$1({
|
|
11
11
|
...props
|
|
12
|
-
}: React.ComponentProps<typeof Tooltip.Root>):
|
|
12
|
+
}: React.ComponentProps<typeof Tooltip.Root>): react_jsx_runtime96.JSX.Element;
|
|
13
13
|
declare function TooltipTrigger({
|
|
14
14
|
...props
|
|
15
|
-
}: React.ComponentProps<typeof Tooltip.Trigger>):
|
|
15
|
+
}: React.ComponentProps<typeof Tooltip.Trigger>): react_jsx_runtime96.JSX.Element;
|
|
16
16
|
declare function TooltipContent({
|
|
17
17
|
className,
|
|
18
18
|
sideOffset,
|
|
19
19
|
children,
|
|
20
20
|
...props
|
|
21
|
-
}: React.ComponentProps<typeof Tooltip.Content>):
|
|
21
|
+
}: React.ComponentProps<typeof Tooltip.Content>): react_jsx_runtime96.JSX.Element;
|
|
22
22
|
//#endregion
|
|
23
23
|
export { Tooltip$1 as Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
|
|
24
|
-
//# sourceMappingURL=tooltip-
|
|
24
|
+
//# sourceMappingURL=tooltip-Bp9XarsW.d.ts.map
|