ivt 0.8.6 → 0.8.7
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/accordion/index.mjs +13 -13
- package/dist/accordion-table/index.mjs +27 -27
- package/dist/alert/index.mjs +3 -3
- package/dist/alert-dialog/index.mjs +15 -15
- package/dist/auto-complete-multi-select/index.mjs +49 -43
- package/dist/auto-complete-multi-select/index.mjs.map +1 -1
- package/dist/avatar/index.mjs +5 -5
- package/dist/badge/index.mjs +3 -3
- package/dist/base/index.d.ts +53 -7
- package/dist/base/index.mjs +131 -163
- package/dist/base/index.mjs.map +1 -1
- package/dist/breadcrumb/index.mjs +5 -5
- package/dist/button/index.mjs +3 -3
- package/dist/button-group/index.mjs +4 -4
- package/dist/calendar/index.mjs +9 -9
- package/dist/card/index.mjs +3 -3
- package/dist/carousel/index.mjs +4 -4
- package/dist/chart/index.mjs +4 -4
- package/dist/checkbox/index.mjs +12 -12
- package/dist/chunks/ButtonActions-BbAuGm_J.mjs +54 -0
- package/dist/chunks/ButtonActions-BbAuGm_J.mjs.map +1 -0
- package/dist/chunks/{CalendarPopover-Dk28a8Qn.mjs → CalendarPopover-DNS2oszG.mjs} +62 -33
- package/dist/chunks/CalendarPopover-DNS2oszG.mjs.map +1 -0
- package/dist/chunks/{CalendarRange-CbhXjWnp.mjs → CalendarRange-BZ-rc5Ns.mjs} +34 -18
- package/dist/chunks/CalendarRange-BZ-rc5Ns.mjs.map +1 -0
- package/dist/chunks/{ComboboxField-eIBC97OK.mjs → ComboboxField-C5LrSTQf.mjs} +9 -9
- package/dist/chunks/{ComboboxField-eIBC97OK.mjs.map → ComboboxField-C5LrSTQf.mjs.map} +1 -1
- package/dist/chunks/{Container-DxWW9WTJ.mjs → Container-qhzI-HED.mjs} +2 -2
- package/dist/chunks/{Container-DxWW9WTJ.mjs.map → Container-qhzI-HED.mjs.map} +1 -1
- package/dist/chunks/{DeleteConfirmationModal-PwsfBFPv.mjs → DeleteConfirmationModal-NPS_J_dT.mjs} +4 -4
- package/dist/chunks/{DeleteConfirmationModal-PwsfBFPv.mjs.map → DeleteConfirmationModal-NPS_J_dT.mjs.map} +1 -1
- package/dist/chunks/ExportButtons-BtYHz3q3.mjs +364 -0
- package/dist/chunks/ExportButtons-BtYHz3q3.mjs.map +1 -0
- package/dist/chunks/{GenericTabs-CtJk8qVb.d.ts → GenericTabs-B6Sm4mwD.d.ts} +7 -2
- package/dist/chunks/{GenericTabs-CHcF7U9y.mjs → GenericTabs-CqunvZEw.mjs} +9 -8
- package/dist/chunks/GenericTabs-CqunvZEw.mjs.map +1 -0
- package/dist/chunks/{ListItem-CoWJkU9U.mjs → ListItem-CtUZSq2i.mjs} +6 -6
- package/dist/chunks/ListItem-CtUZSq2i.mjs.map +1 -0
- package/dist/chunks/ShowSkeleton-DuVLsprm.mjs +72 -0
- package/dist/chunks/ShowSkeleton-DuVLsprm.mjs.map +1 -0
- package/dist/chunks/ShowSkeleton-enwVHCqE.d.ts +12 -0
- package/dist/chunks/StepNavigator-DXnlZUw2.mjs +136 -0
- package/dist/chunks/StepNavigator-DXnlZUw2.mjs.map +1 -0
- package/dist/chunks/{TooltipIndicator-BHCKFiPx.mjs → TooltipIndicator-o_ekzuQD.mjs} +4 -4
- package/dist/chunks/{TooltipIndicator-BHCKFiPx.mjs.map → TooltipIndicator-o_ekzuQD.mjs.map} +1 -1
- package/dist/chunks/{_commonjsHelpers-Bx7yLjXw.mjs → _commonjsHelpers-DLsfzCcd.mjs} +1 -1
- package/dist/chunks/_commonjsHelpers-DLsfzCcd.mjs.map +1 -0
- package/dist/chunks/{accordion-eJ4NoCGZ.mjs → accordion-BcAmhbBS.mjs} +9 -9
- package/dist/chunks/{accordion-eJ4NoCGZ.mjs.map → accordion-BcAmhbBS.mjs.map} +1 -1
- package/dist/chunks/{alert-DgjSAjJE.mjs → alert-Ciu-8LcJ.mjs} +2 -2
- package/dist/chunks/{alert-DgjSAjJE.mjs.map → alert-Ciu-8LcJ.mjs.map} +1 -1
- package/dist/chunks/{badge-B6L7PP2k.mjs → badge-ZU62MOiS.mjs} +2 -2
- package/dist/chunks/{badge-B6L7PP2k.mjs.map → badge-ZU62MOiS.mjs.map} +1 -1
- package/dist/chunks/{bundle-mjs-BUGtC8WI.mjs → bundle-mjs-CXmmFvYo.mjs} +1 -1
- package/dist/chunks/{bundle-mjs-BUGtC8WI.mjs.map → bundle-mjs-CXmmFvYo.mjs.map} +1 -1
- package/dist/chunks/button-CHGYaAzJ.d.ts +17 -0
- package/dist/chunks/{button-ipHWqubg.mjs → button-CZpmCmNo.mjs} +2 -2
- package/dist/chunks/{button-ipHWqubg.mjs.map → button-CZpmCmNo.mjs.map} +1 -1
- package/dist/chunks/{button-group-1Ufw4ytA.mjs → button-group-ChymO3Hm.mjs} +3 -3
- package/dist/chunks/{button-group-1Ufw4ytA.mjs.map → button-group-ChymO3Hm.mjs.map} +1 -1
- package/dist/chunks/{calendar-bYikS8Dj.mjs → calendar-CDJv1B--.mjs} +7 -7
- package/dist/chunks/{calendar-bYikS8Dj.mjs.map → calendar-CDJv1B--.mjs.map} +1 -1
- package/dist/chunks/{calendar-days-CYxfkz0x.mjs → calendar-days-DnYx8d46.mjs} +2 -2
- package/dist/chunks/{calendar-days-CYxfkz0x.mjs.map → calendar-days-DnYx8d46.mjs.map} +1 -1
- package/dist/chunks/{card-SwKeS_1_.mjs → card-CEohNEru.mjs} +2 -2
- package/dist/chunks/{card-SwKeS_1_.mjs.map → card-CEohNEru.mjs.map} +1 -1
- package/dist/chunks/{check-BcL3DXZb.mjs → check-Ds358kZc.mjs} +2 -2
- package/dist/chunks/{check-BcL3DXZb.mjs.map → check-Ds358kZc.mjs.map} +1 -1
- package/dist/chunks/{checkbox-KwWS11aZ.mjs → checkbox-DvxpZsiG.mjs} +9 -9
- package/dist/chunks/{checkbox-KwWS11aZ.mjs.map → checkbox-DvxpZsiG.mjs.map} +1 -1
- package/dist/chunks/{chevron-down-VVHD7dC4.mjs → chevron-down-CDFTds2-.mjs} +2 -2
- package/dist/chunks/{chevron-down-VVHD7dC4.mjs.map → chevron-down-CDFTds2-.mjs.map} +1 -1
- package/dist/chunks/{chevron-left-alk1ZJbf.mjs → chevron-left-Baq244Ce.mjs} +2 -2
- package/dist/chunks/{chevron-left-alk1ZJbf.mjs.map → chevron-left-Baq244Ce.mjs.map} +1 -1
- package/dist/chunks/{chevron-right-C4T232LB.mjs → chevron-right-Dq6zFe5E.mjs} +2 -2
- package/dist/chunks/{chevron-right-C4T232LB.mjs.map → chevron-right-Dq6zFe5E.mjs.map} +1 -1
- package/dist/chunks/{chevrons-up-down-DOPAGbXb.mjs → chevrons-up-down-CdBVNy4c.mjs} +2 -2
- package/dist/chunks/{chevrons-up-down-DOPAGbXb.mjs.map → chevrons-up-down-CdBVNy4c.mjs.map} +1 -1
- package/dist/chunks/combobox-D9iqP8Dp.mjs +103 -0
- package/dist/chunks/combobox-D9iqP8Dp.mjs.map +1 -0
- package/dist/chunks/{command-D6Om1YRG.mjs → command-o67hOCgH.mjs} +10 -10
- package/dist/chunks/command-o67hOCgH.mjs.map +1 -0
- package/dist/chunks/{createLucideIcon-BxEkCUha.mjs → createLucideIcon-C11Tr46U.mjs} +1 -1
- package/dist/chunks/{createLucideIcon-BxEkCUha.mjs.map → createLucideIcon-C11Tr46U.mjs.map} +1 -1
- package/dist/chunks/{date-DHdJpggz.mjs → date-Dqmv8Nr4.mjs} +2 -2
- package/dist/chunks/{date-DHdJpggz.mjs.map → date-Dqmv8Nr4.mjs.map} +1 -1
- package/dist/chunks/{date-picker-CrZsqFq1.mjs → date-picker-BBCtT16G.mjs} +13 -13
- package/dist/chunks/date-picker-BBCtT16G.mjs.map +1 -0
- package/dist/chunks/{dialog-DBzJ_Uvh.mjs → dialog-DL1cSseU.mjs} +4 -4
- package/dist/chunks/{dialog-DBzJ_Uvh.mjs.map → dialog-DL1cSseU.mjs.map} +1 -1
- package/dist/chunks/{dropdown-menu-Cl6NFvkg.mjs → dropdown-menu-DnPBut1Q.mjs} +9 -9
- package/dist/chunks/{dropdown-menu-Cl6NFvkg.mjs.map → dropdown-menu-DnPBut1Q.mjs.map} +1 -1
- package/dist/chunks/{ellipsis-DGGGgQfW.mjs → ellipsis-Cn3R-5sm.mjs} +2 -2
- package/dist/chunks/{ellipsis-DGGGgQfW.mjs.map → ellipsis-Cn3R-5sm.mjs.map} +1 -1
- package/dist/chunks/{form-DnPCp-Jr.mjs → form-paAECAsZ.mjs} +3 -3
- package/dist/chunks/{form-DnPCp-Jr.mjs.map → form-paAECAsZ.mjs.map} +1 -1
- package/dist/chunks/{format-DWYRGSuv.mjs → format-8qs-kXlN.mjs} +1 -1
- package/dist/chunks/{format-DWYRGSuv.mjs.map → format-8qs-kXlN.mjs.map} +1 -1
- package/dist/chunks/{format-numbers-CB_euyLQ.mjs → format-numbers-LmnBEQr0.mjs} +1 -1
- package/dist/chunks/{format-numbers-CB_euyLQ.mjs.map → format-numbers-LmnBEQr0.mjs.map} +1 -1
- package/dist/chunks/{hover-card-Bl4vbgQb.mjs → hover-card-Bf6OuOg0.mjs} +9 -9
- package/dist/chunks/{hover-card-Bl4vbgQb.mjs.map → hover-card-Bf6OuOg0.mjs.map} +1 -1
- package/dist/chunks/{index-DHft9BCd.mjs → index-1toTCGyr.mjs} +2 -2
- package/dist/chunks/{index-DHft9BCd.mjs.map → index-1toTCGyr.mjs.map} +1 -1
- package/dist/chunks/{index-alSGOasi.mjs → index-4NpeUekv.mjs} +4 -4
- package/dist/chunks/{index-alSGOasi.mjs.map → index-4NpeUekv.mjs.map} +1 -1
- package/dist/chunks/{index-B61q0y1M.mjs → index-B87m6Bfb.mjs} +6 -6
- package/dist/chunks/{index-B61q0y1M.mjs.map → index-B87m6Bfb.mjs.map} +1 -1
- package/dist/chunks/{index-BcMUIxgo.mjs → index-BJrVyyCQ.mjs} +2 -2
- package/dist/chunks/{index-BcMUIxgo.mjs.map → index-BJrVyyCQ.mjs.map} +1 -1
- package/dist/chunks/{index-CNvEwoN6.mjs → index-BWXpaxmG.mjs} +7 -7
- package/dist/chunks/{index-CNvEwoN6.mjs.map → index-BWXpaxmG.mjs.map} +1 -1
- package/dist/chunks/{index-DxIif-Dg.mjs → index-BksCjWh6.mjs} +3 -3
- package/dist/chunks/{index-DxIif-Dg.mjs.map → index-BksCjWh6.mjs.map} +1 -1
- package/dist/chunks/{index-DVCjbhNa.mjs → index-C8u7IIcP.mjs} +1 -1
- package/dist/chunks/{index-DVCjbhNa.mjs.map → index-C8u7IIcP.mjs.map} +1 -1
- package/dist/chunks/{index-DhPL9ENz.mjs → index-COfEgTJM.mjs} +1 -1
- package/dist/chunks/{index-DhPL9ENz.mjs.map → index-COfEgTJM.mjs.map} +1 -1
- package/dist/chunks/{index-B2krUfsE.mjs → index-CaYwp6E6.mjs} +9 -9
- package/dist/chunks/{index-B2krUfsE.mjs.map → index-CaYwp6E6.mjs.map} +1 -1
- package/dist/chunks/{index-8SOlbV6d.mjs → index-CcmH_f2V.mjs} +1 -1
- package/dist/chunks/{index-8SOlbV6d.mjs.map → index-CcmH_f2V.mjs.map} +1 -1
- package/dist/chunks/{index-BQoxzJyp.mjs → index-D4jPaBZ2.mjs} +1 -1
- package/dist/chunks/{index-BQoxzJyp.mjs.map → index-D4jPaBZ2.mjs.map} +1 -1
- package/dist/chunks/{index-Cwb07MWH.mjs → index-DAa5gqEY.mjs} +2 -2
- package/dist/chunks/{index-Cwb07MWH.mjs.map → index-DAa5gqEY.mjs.map} +1 -1
- package/dist/chunks/{index-Dg_RIZZE.mjs → index-DC-gAYjS.mjs} +1 -1
- package/dist/chunks/{index-Dg_RIZZE.mjs.map → index-DC-gAYjS.mjs.map} +1 -1
- package/dist/chunks/{index-B2dOt1gw.mjs → index-DIHpzffL.mjs} +7 -7
- package/dist/chunks/{index-B2dOt1gw.mjs.map → index-DIHpzffL.mjs.map} +1 -1
- package/dist/chunks/{index-Ct3MZwaI.mjs → index-DfeRLazC.mjs} +3 -3
- package/dist/chunks/{index-Ct3MZwaI.mjs.map → index-DfeRLazC.mjs.map} +1 -1
- package/dist/chunks/{index-DjAgghT8.mjs → index-Dsw02Eup.mjs} +1 -1
- package/dist/chunks/{index-DjAgghT8.mjs.map → index-Dsw02Eup.mjs.map} +1 -1
- package/dist/chunks/{index-CaMrkKTO.mjs → index-PuN-H-VF.mjs} +1 -1
- package/dist/chunks/{index-CaMrkKTO.mjs.map → index-PuN-H-VF.mjs.map} +1 -1
- package/dist/chunks/{index-C7fGMq_n.mjs → index-UxWlwQlk.mjs} +1 -1
- package/dist/chunks/{index-C7fGMq_n.mjs.map → index-UxWlwQlk.mjs.map} +1 -1
- package/dist/chunks/{index-CHk809FF.mjs → index-gX0V59dZ.mjs} +2 -2
- package/dist/chunks/{index-CHk809FF.mjs.map → index-gX0V59dZ.mjs.map} +1 -1
- package/dist/chunks/{index-uXbHxUHA.mjs → index-z4Hk6sF4.mjs} +5 -5
- package/dist/chunks/{index-uXbHxUHA.mjs.map → index-z4Hk6sF4.mjs.map} +1 -1
- package/dist/chunks/{index-B0_Ir2TV.mjs → index-zIaBOKQ3.mjs} +13 -13
- package/dist/chunks/{index-B0_Ir2TV.mjs.map → index-zIaBOKQ3.mjs.map} +1 -1
- package/dist/chunks/{index.module-B0Ca3Gdk.mjs → index.module-Czm-Rcez.mjs} +1 -1
- package/dist/chunks/{index.module-B0Ca3Gdk.mjs.map → index.module-Czm-Rcez.mjs.map} +1 -1
- package/dist/chunks/{input-DIpq60B2.mjs → input-B-W81Xmi.mjs} +2 -2
- package/dist/chunks/{input-DIpq60B2.mjs.map → input-B-W81Xmi.mjs.map} +1 -1
- package/dist/chunks/{input-file-DM9pEX8i.mjs → input-file-BH3SMNJ7.mjs} +6 -6
- package/dist/chunks/{input-file-DM9pEX8i.mjs.map → input-file-BH3SMNJ7.mjs.map} +1 -1
- package/dist/chunks/{input-otp-CtjuBqi3.mjs → input-otp-BNC4E0wv.mjs} +3 -3
- package/dist/chunks/{input-otp-CtjuBqi3.mjs.map → input-otp-BNC4E0wv.mjs.map} +1 -1
- package/dist/chunks/{label-B9lRzjyu.mjs → label-D0iRy8Wj.mjs} +2 -2
- package/dist/chunks/{label-B9lRzjyu.mjs.map → label-D0iRy8Wj.mjs.map} +1 -1
- package/dist/chunks/{loader-circle-CV4eu4xA.mjs → loader-circle-BMRpEmW6.mjs} +2 -2
- package/dist/chunks/{loader-circle-CV4eu4xA.mjs.map → loader-circle-BMRpEmW6.mjs.map} +1 -1
- package/dist/chunks/{menubar-C5dV93NW.mjs → menubar-oWKK9_Ik.mjs} +11 -11
- package/dist/chunks/{menubar-C5dV93NW.mjs.map → menubar-oWKK9_Ik.mjs.map} +1 -1
- package/dist/chunks/{multi-select-DocC2zjT.mjs → multi-select-ILUAJeKL.mjs} +44 -32
- package/dist/chunks/multi-select-ILUAJeKL.mjs.map +1 -0
- package/dist/chunks/{pagination-YSeJIiYY.mjs → pagination-Bx_e3scG.mjs} +6 -6
- package/dist/chunks/{pagination-YSeJIiYY.mjs.map → pagination-Bx_e3scG.mjs.map} +1 -1
- package/dist/chunks/{popover-n7Qp5Vuh.mjs → popover-CdZgcLPo.mjs} +11 -11
- package/dist/chunks/{popover-n7Qp5Vuh.mjs.map → popover-CdZgcLPo.mjs.map} +1 -1
- package/dist/chunks/{progress-D8ptvurb.mjs → progress-e_BEvMwp.mjs} +2 -2
- package/dist/chunks/{progress-D8ptvurb.mjs.map → progress-e_BEvMwp.mjs.map} +1 -1
- package/dist/chunks/{radio-group-Cv9s2DCN.mjs → radio-group-BlSUw5ql.mjs} +11 -11
- package/dist/chunks/{radio-group-Cv9s2DCN.mjs.map → radio-group-BlSUw5ql.mjs.map} +1 -1
- package/dist/chunks/{react-number-format.es-BJ890ESD.mjs → react-number-format.es-HizMU4ab.mjs} +1 -1
- package/dist/chunks/{react-number-format.es-BJ890ESD.mjs.map → react-number-format.es-HizMU4ab.mjs.map} +1 -1
- package/dist/chunks/{scroll-area-TCq7xsA2.mjs → scroll-area-qiUBme0Q.mjs} +9 -9
- package/dist/chunks/{scroll-area-TCq7xsA2.mjs.map → scroll-area-qiUBme0Q.mjs.map} +1 -1
- package/dist/chunks/{select-H7CGuPw0.mjs → select-BBatgGtL.mjs} +56 -12
- package/dist/chunks/select-BBatgGtL.mjs.map +1 -0
- package/dist/chunks/{separator-NkxldVGm.mjs → separator-DYyhdAi6.mjs} +2 -2
- package/dist/chunks/{separator-NkxldVGm.mjs.map → separator-DYyhdAi6.mjs.map} +1 -1
- package/dist/chunks/{sheet-AxL9T592.mjs → sheet-1Dl0ChJl.mjs} +4 -4
- package/dist/chunks/{sheet-AxL9T592.mjs.map → sheet-1Dl0ChJl.mjs.map} +1 -1
- package/dist/chunks/{skeleton-CU2Dm8Iw.mjs → skeleton-LDpPNYvq.mjs} +2 -2
- package/dist/chunks/{skeleton-CU2Dm8Iw.mjs.map → skeleton-LDpPNYvq.mjs.map} +1 -1
- package/dist/chunks/{slider-B3vRKZLc.mjs → slider-D3yx--Ba.mjs} +9 -9
- package/dist/chunks/{slider-B3vRKZLc.mjs.map → slider-D3yx--Ba.mjs.map} +1 -1
- package/dist/chunks/{sortable-DhQy1UPP.mjs → sortable-CE5SC5JS.mjs} +3 -3
- package/dist/chunks/{sortable-DhQy1UPP.mjs.map → sortable-CE5SC5JS.mjs.map} +1 -1
- package/dist/chunks/string-DRS4HkY8.mjs +71 -0
- package/dist/chunks/string-DRS4HkY8.mjs.map +1 -0
- package/dist/chunks/{styles-TJifgkC0.mjs → styles-lQyUmHf7.mjs} +1 -1
- package/dist/chunks/{styles-TJifgkC0.mjs.map → styles-lQyUmHf7.mjs.map} +1 -1
- package/dist/chunks/{switch-QvQzfy42.mjs → switch-COE1z3YV.mjs} +7 -7
- package/dist/chunks/{switch-QvQzfy42.mjs.map → switch-COE1z3YV.mjs.map} +1 -1
- package/dist/chunks/{table-DZdgO7NC.mjs → table-BzhSKY4n.mjs} +2 -2
- package/dist/chunks/{table-DZdgO7NC.mjs.map → table-BzhSKY4n.mjs.map} +1 -1
- package/dist/chunks/{tabs-BWvk4qHQ.mjs → tabs-B5HgsIWx.mjs} +9 -9
- package/dist/chunks/{tabs-BWvk4qHQ.mjs.map → tabs-B5HgsIWx.mjs.map} +1 -1
- package/dist/chunks/{textarea-DYiDaInd.mjs → textarea-DM2uvcxK.mjs} +2 -2
- package/dist/chunks/{textarea-DYiDaInd.mjs.map → textarea-DM2uvcxK.mjs.map} +1 -1
- package/dist/chunks/{toast-D0PsIgF9.mjs → toast-DfCz10Et.mjs} +12 -12
- package/dist/chunks/{toast-D0PsIgF9.mjs.map → toast-DfCz10Et.mjs.map} +1 -1
- package/dist/chunks/{toggle-BKFdE2bV.mjs → toggle-Du3jnh1s.mjs} +4 -4
- package/dist/chunks/{toggle-BKFdE2bV.mjs.map → toggle-Du3jnh1s.mjs.map} +1 -1
- package/dist/chunks/{tooltip-CAFwKDsn.mjs → tooltip-njN_ok-r.mjs} +11 -11
- package/dist/chunks/{tooltip-CAFwKDsn.mjs.map → tooltip-njN_ok-r.mjs.map} +1 -1
- package/dist/chunks/{trash-2-yllyHd3d.mjs → trash-2-ab4Di2Bx.mjs} +2 -2
- package/dist/chunks/{trash-2-yllyHd3d.mjs.map → trash-2-ab4Di2Bx.mjs.map} +1 -1
- package/dist/chunks/{triangle-alert-EAwPzBPO.mjs → triangle-alert-B_tQGpT4.mjs} +2 -2
- package/dist/chunks/{triangle-alert-EAwPzBPO.mjs.map → triangle-alert-B_tQGpT4.mjs.map} +1 -1
- package/dist/chunks/{tslib.es6-DhTbpVFO.mjs → tslib.es6-Q9puKanr.mjs} +1 -1
- package/dist/chunks/{tslib.es6-DhTbpVFO.mjs.map → tslib.es6-Q9puKanr.mjs.map} +1 -1
- package/dist/chunks/{upload-lFvmEaEl.mjs → upload-DvgPaJGb.mjs} +2 -2
- package/dist/chunks/{upload-lFvmEaEl.mjs.map → upload-DvgPaJGb.mjs.map} +1 -1
- package/dist/chunks/{use-toast-Db3wq_Xq.mjs → use-toast-CLJJgfL0.mjs} +1 -1
- package/dist/chunks/{use-toast-Db3wq_Xq.mjs.map → use-toast-CLJJgfL0.mjs.map} +1 -1
- package/dist/chunks/{utils-CPJ225se.mjs → utils-BDcRwQMd.mjs} +2 -2
- package/dist/chunks/{utils-CPJ225se.mjs.map → utils-BDcRwQMd.mjs.map} +1 -1
- package/dist/chunks/{wand-sparkles-DgnbuUXs.mjs → wand-sparkles-DqgQle7F.mjs} +2 -2
- package/dist/chunks/{wand-sparkles-DgnbuUXs.mjs.map → wand-sparkles-DqgQle7F.mjs.map} +1 -1
- package/dist/chunks/{x-C2RTSdrs.mjs → x-B6hDJA_l.mjs} +2 -2
- package/dist/chunks/{x-C2RTSdrs.mjs.map → x-B6hDJA_l.mjs.map} +1 -1
- package/dist/collapsible/index.mjs +7 -7
- package/dist/combobox/index.d.ts +9 -1
- package/dist/combobox/index.mjs +30 -155
- package/dist/combobox/index.mjs.map +1 -1
- package/dist/command/index.mjs +18 -18
- package/dist/context-menu/index.mjs +21 -21
- package/dist/dash/index.mjs +24 -24
- package/dist/data-table/index.d.ts +61 -49
- package/dist/data-table/index.mjs +77 -63
- package/dist/data-table/index.mjs.map +1 -1
- package/dist/date-picker/index.d.ts +7 -2
- package/dist/date-picker/index.mjs +27 -27
- package/dist/dialog/index.mjs +17 -17
- package/dist/drawer/index.mjs +14 -14
- package/dist/dropdown-menu/index.mjs +22 -22
- package/dist/dropzone/index.mjs +18 -18
- package/dist/editable-table/index.mjs +20 -18
- package/dist/editable-table/index.mjs.map +1 -1
- package/dist/empty/index.mjs +2 -2
- package/dist/export/index.d.ts +22 -10
- package/dist/export/index.mjs +20525 -31
- package/dist/export/index.mjs.map +1 -1
- package/dist/field/index.mjs +4 -4
- package/dist/form/index.mjs +4 -4
- package/dist/form-fields/index.mjs +26 -26
- package/dist/form-layout/index.d.ts +82 -10
- package/dist/form-layout/index.mjs +199 -97
- package/dist/form-layout/index.mjs.map +1 -1
- package/dist/hover-card/index.mjs +13 -13
- package/dist/icon/index.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/input/index.mjs +3 -3
- package/dist/input-file/index.mjs +8 -8
- package/dist/input-group/index.mjs +5 -5
- package/dist/input-otp/index.mjs +4 -4
- package/dist/item/index.mjs +3 -3
- package/dist/ivt.css +1 -1
- package/dist/kbd/index.mjs +2 -2
- package/dist/label/index.mjs +3 -3
- package/dist/layout/index.d.ts +279 -1
- package/dist/layout/index.mjs +259 -23
- package/dist/layout/index.mjs.map +1 -1
- package/dist/menubar/index.mjs +22 -22
- package/dist/multi-input-list/index.mjs +28 -28
- package/dist/multi-select/index.d.ts +4 -0
- package/dist/multi-select/index.mjs +32 -31
- package/dist/multi-select/index.mjs.map +1 -1
- package/dist/navigation-menu/index.mjs +15 -15
- package/dist/pagination/index.mjs +8 -8
- package/dist/popover/index.mjs +16 -16
- package/dist/progress/index.mjs +3 -3
- package/dist/radio-group/index.mjs +16 -16
- package/dist/resizable/index.mjs +3 -3
- package/dist/scroll-area/index.mjs +10 -10
- package/dist/select/index.d.ts +3 -1
- package/dist/select/index.mjs +11 -6
- package/dist/select/index.mjs.map +1 -1
- package/dist/separator/index.mjs +3 -3
- package/dist/shared/index.d.ts +3 -13
- package/dist/shared/index.mjs +8 -55
- package/dist/shared/index.mjs.map +1 -1
- package/dist/sheet/index.mjs +17 -17
- package/dist/sidebar/index.mjs +25 -25
- package/dist/skeleton/index.mjs +3 -3
- package/dist/skeleton-component/index.d.ts +2 -6
- package/dist/skeleton-component/index.mjs +6 -72
- package/dist/skeleton-component/index.mjs.map +1 -1
- package/dist/slider/index.mjs +11 -11
- package/dist/sortable/index.mjs +4 -4
- package/dist/spinner/index.mjs +4 -4
- package/dist/switch/index.mjs +9 -9
- package/dist/table/index.mjs +3 -3
- package/dist/table-filter/index.d.ts +3 -1
- package/dist/table-filter/index.mjs +59 -57
- package/dist/table-filter/index.mjs.map +1 -1
- package/dist/tabs/index.mjs +12 -12
- package/dist/textarea/index.mjs +3 -3
- package/dist/toast/index.mjs +14 -14
- package/dist/toaster/index.mjs +15 -15
- package/dist/toggle/index.mjs +6 -6
- package/dist/toggle-group/index.mjs +11 -11
- package/dist/tooltip/index.mjs +15 -15
- package/package.json +5 -2
- package/dist/chunks/CalendarPopover-Dk28a8Qn.mjs.map +0 -1
- package/dist/chunks/CalendarRange-CbhXjWnp.mjs.map +0 -1
- package/dist/chunks/ExportButtons-D844DWYI.mjs +0 -229
- package/dist/chunks/ExportButtons-D844DWYI.mjs.map +0 -1
- package/dist/chunks/GenericTabs-CHcF7U9y.mjs.map +0 -1
- package/dist/chunks/ListItem-CoWJkU9U.mjs.map +0 -1
- package/dist/chunks/_commonjsHelpers-Bx7yLjXw.mjs.map +0 -1
- package/dist/chunks/command-D6Om1YRG.mjs.map +0 -1
- package/dist/chunks/date-picker-CrZsqFq1.mjs.map +0 -1
- package/dist/chunks/multi-select-DocC2zjT.mjs.map +0 -1
- package/dist/chunks/select-H7CGuPw0.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-down.js","../../node_modules/lucide-react/dist/esm/icons/arrow-up.js","../../src/components/default/data-table/DataTableFull.tsx","../../node_modules/@tanstack/react-table/build/lib/index.mjs","../../src/components/default/data-table/DataTablePagination.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTableRowSkeleton.tsx","../../src/components/default/data-table/DataTableMainFrame.tsx","../../src/utils/treeReorder.ts","../../src/components/default/data-table/DataTableMainFrameSortable.tsx","../../src/components/default/data-table/DataTableSearch.tsx","../../src/components/default/data-table/DataTableSkeleton.tsx","../../src/components/default/data-table/DataTableStatus.tsx","../../src/components/default/data-table/DataTableViewOptions.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"ArrowDown\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.js.map\n","/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m5 12 7-7 7 7\", key: \"hav0vg\" }],\n [\"path\", { d: \"M12 19V5\", key: \"x0mq9r\" }]\n];\nconst ArrowUp = createLucideIcon(\"ArrowUp\", __iconNode);\n\nexport { __iconNode, ArrowUp as default };\n//# sourceMappingURL=arrow-up.js.map\n","import React from \"react\";\n\nimport { GenericTabs } from \"@/components/default/base/GenericTabs\";\nimport { DataTableMainFrameSortable, DataTableViewOptions } from \"@/components/default/data-table\";\nimport { ButtonExportCsv } from \"@/components/default/export/ButtonExportCsv\";\nimport { ExportButtons } from \"@/components/default/export/ExportButtons\";\nimport { ChildContainer, Container } from \"@/components/default/layout\";\nimport type { DataTableFullProps, RowData } from \"@/types/dataTable\";\n\nexport const DataTableFull = <TData extends RowData>({\n\tdata,\n\tcolumns,\n\ttransformIdToNameColumn,\n\tisLoading = false,\n\tdataLabel = \"Registros\",\n\tmessageEmpty,\n\tfileName = \"dados_exportados\",\n\tshowPagination = true,\n\tconfig,\n\tbuttonExportText = \"Exportar\",\n\taction,\n\tdisabledAction,\n\trenderTooltip,\n\tinfoExtraLabel,\n\ttableFilterNode,\n\trowKey,\n\tappliedFiltersCount,\n\ttable,\n\tisExportedTable = true,\n\tisViewOptions = true,\n\tisExportButtonGroup = false,\n\tactionExcel,\n\tactionPdf,\n\tdisabledButtons,\n\tdisabledButtonExcel,\n\tdisabledButtonPdf,\n\tgenericTabs,\n\tcurrentTab,\n\tonTabChange,\n}: DataTableFullProps<TData>): React.ReactElement => {\n\tconst noResultsForFilter = appliedFiltersCount > 0;\n\n\treturn (\n\t\t<Container>\n\t\t\t<ChildContainer className=\"flex-col px-0 py-4\">\n\t\t\t\t<div className=\"bg-background relative z-0 flex w-full flex-col gap-4 px-4 py-2\">\n\t\t\t\t\t<div className=\"flex flex-wrap items-start justify-between gap-4\">\n\t\t\t\t\t\t{genericTabs && (\n\t\t\t\t\t\t\t<GenericTabs\n\t\t\t\t\t\t\t\ttabs={genericTabs}\n\t\t\t\t\t\t\t\tvalue={currentTab}\n\t\t\t\t\t\t\t\tonNavigate={onTabChange}\n\t\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\t\ttriggerClassName=\"min-w-[180px]\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div className=\"flex flex-1 items-center justify-start gap-2 gap-y-4 sm:justify-end\">\n\t\t\t\t\t\t\t{isViewOptions && (\n\t\t\t\t\t\t\t\t<DataTableViewOptions\n\t\t\t\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\t\t\t\ttransformColumnName={transformIdToNameColumn}\n\t\t\t\t\t\t\t\t\tdisabled={isLoading}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{tableFilterNode}\n\n\t\t\t\t\t\t\t{isExportButtonGroup && (\n\t\t\t\t\t\t\t\t<ExportButtons\n\t\t\t\t\t\t\t\t\tonExportExcel={actionExcel}\n\t\t\t\t\t\t\t\t\tonExportPdf={actionPdf}\n\t\t\t\t\t\t\t\t\tbuttonLabel={buttonExportText}\n\t\t\t\t\t\t\t\t\tdisabledButtons={disabledButtons}\n\t\t\t\t\t\t\t\t\tdisabledButtonExcel={disabledButtonExcel}\n\t\t\t\t\t\t\t\t\tdisabledButtonPdf={disabledButtonPdf}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{isExportedTable && (\n\t\t\t\t\t\t\t\t<ButtonExportCsv<TData>\n\t\t\t\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\t\t\t\tfileName={fileName}\n\t\t\t\t\t\t\t\t\tconfig={config}\n\t\t\t\t\t\t\t\t\ttext={buttonExportText}\n\t\t\t\t\t\t\t\t\taction={action}\n\t\t\t\t\t\t\t\t\tdisabled={disabledAction}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<DataTableMainFrameSortable\n\t\t\t\t\t\tdata={data}\n\t\t\t\t\t\trowKey={rowKey}\n\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\tcolumns={columns}\n\t\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\t\tisLoadingTable={isLoading}\n\t\t\t\t\t\tshowPagination={showPagination}\n\t\t\t\t\t\tmessageEmpty={\n\t\t\t\t\t\t\tmessageEmpty ?? (\n\t\t\t\t\t\t\t\t<div className=\"mx-auto flex items-center justify-center\">\n\t\t\t\t\t\t\t\t\t{noResultsForFilter && (\n\t\t\t\t\t\t\t\t\t\t<p className=\"w-100 text-wrap\">\n\t\t\t\t\t\t\t\t\t\t\tNão há resultados para esta filtragem. Verifique os filtros e tente novamente.\n\t\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t\trenderTooltip={renderTooltip}\n\t\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</ChildContainer>\n\t\t</Container>\n\t);\n};\n","/**\n * react-table\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport * as React from 'react';\nimport { createTable } from '@tanstack/table-core';\nexport * from '@tanstack/table-core';\n\n//\n\n/**\n * If rendering headers, cells, or footers with custom markup, use flexRender instead of `cell.getValue()` or `cell.renderValue()`.\n */\nfunction flexRender(Comp, props) {\n return !Comp ? null : isReactComponent(Comp) ? /*#__PURE__*/React.createElement(Comp, props) : Comp;\n}\nfunction isReactComponent(component) {\n return isClassComponent(component) || typeof component === 'function' || isExoticComponent(component);\n}\nfunction isClassComponent(component) {\n return typeof component === 'function' && (() => {\n const proto = Object.getPrototypeOf(component);\n return proto.prototype && proto.prototype.isReactComponent;\n })();\n}\nfunction isExoticComponent(component) {\n return typeof component === 'object' && typeof component.$$typeof === 'symbol' && ['react.memo', 'react.forward_ref'].includes(component.$$typeof.description);\n}\nfunction useReactTable(options) {\n // Compose in the generic options to the user options\n const resolvedOptions = {\n state: {},\n // Dummy state\n onStateChange: () => {},\n // noop\n renderFallbackValue: null,\n ...options\n };\n\n // Create a new table and store it in state\n const [tableRef] = React.useState(() => ({\n current: createTable(resolvedOptions)\n }));\n\n // By default, manage table state here using the table's initial state\n const [state, setState] = React.useState(() => tableRef.current.initialState);\n\n // Compose the default state above with any user state. This will allow the user\n // to only control a subset of the state if desired.\n tableRef.current.setOptions(prev => ({\n ...prev,\n ...options,\n state: {\n ...state,\n ...options.state\n },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n setState(updater);\n options.onStateChange == null || options.onStateChange(updater);\n }\n }));\n return tableRef.current;\n}\n\nexport { flexRender, useReactTable };\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\n\ninterface DataTablePaginationProps<TData> {\n\ttable: Table<TData>;\n\tpageSizeOptions?: number[];\n\tdataLabel?: string;\n\tinfoExtraLabel?: React.ReactNode;\n\tshowPaginationControls?: boolean;\n\tshowDataLabel?: boolean;\n\tfooterAction?: React.ReactNode;\n\tmaxVisualRows?: number;\n}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n\tinfoExtraLabel,\n\tshowPaginationControls = true,\n\tshowDataLabel = true,\n\tfooterAction,\n\tmaxVisualRows,\n}: DataTablePaginationProps<TData>) {\n\tconst pageSize = pageSizeOptions[0];\n\tconst currentPage = table.getState().pagination.pageIndex + 1;\n\tconst rowCount = table.getRowCount();\n\tconst totalPageCount = Math.ceil(rowCount / table.getState().pagination.pageSize);\n\n\tconst renderPageNumbers = () => {\n\t\tconst items: React.ReactNode[] = [];\n\t\tconst maxVisiblePages = 3;\n\n\t\tif (totalPageCount <= maxVisiblePages) {\n\t\t\tfor (let i = 1; i <= totalPageCount; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === 1 ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={1}\n\t\t\t\t\tonClick={() => table.setPageIndex(0)}\n\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t>\n\t\t\t\t\t1\n\t\t\t\t</Button>,\n\t\t\t);\n\n\t\t\tconst start = Math.max(2, Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)));\n\t\t\tconst end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n\t\t\tif (start > 2) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tfor (let i = start; i <= end; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (end < totalPageCount - 1) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={totalPageCount}\n\t\t\t\t\tonClick={() => table.setPageIndex(totalPageCount - 1)}\n\t\t\t\t>\n\t\t\t\t\t{totalPageCount}\n\t\t\t\t</Button>,\n\t\t\t);\n\t\t}\n\n\t\treturn items;\n\t};\n\n\tif (!showPaginationControls && !showDataLabel) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t{showDataLabel && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"text-muted-foreground flex items-center gap-4 text-sm\">\n\t\t\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\t\t\tMostrando{\" \"}\n\t\t\t\t\t\t\t{(maxVisualRows\n\t\t\t\t\t\t\t\t? Math.min(table.getRowModel().rows.length, maxVisualRows)\n\t\t\t\t\t\t\t\t: table.getRowModel().rows.length\n\t\t\t\t\t\t\t).toLocaleString()}{\" \"}\n\t\t\t\t\t\t\tde {rowCount} {dataLabel}. {infoExtraLabel && infoExtraLabel}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div>{footerAction && <div>{footerAction}</div>}</div>\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t{showPaginationControls && (\n\t\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4 ml-auto\">\n\t\t\t\t\t<Select\n\t\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\tpageSizeOptions.map((pageSize) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={pageSize} value={String(pageSize)}>\n\t\t\t\t\t\t\t\t\t\tMostrar {pageSize}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\t\tAnterior\n\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport const DataTablePaginationSkeleton: React.FC = ({ className }: { className?: string }) => {\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<Skeleton className={cn(\"h-5 w-40\", className)} />\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Skeleton className={cn(\"h-10 w-28\", className)} />\n\t\t\t\t<Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\tcolumnCount: number;\n\trowCount?: number;\n\tcellWidths?: string[];\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n\tconst { columnCount, rowCount = 8, cellWidths = [\"auto\"], shrinkZero = false } = props;\n\n\treturn (\n\t\t<>\n\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t<TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\tkey={`cell-${String(i)}-${j}`}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t))}\n\t\t\t\t</TableRow>\n\t\t\t))}\n\t\t</>\n\t);\n}\n","\"use client\";\n\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Row, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tmessageEmpty?: React.ReactNode;\n\tdividingColumnKey?: string[];\n\tloadingContent?: React.ReactNode;\n\tpageSizeOptions?: number[];\n\tclassName?: string;\n\tisScrollable?: boolean;\n\tscrollMaxHeightClass?: string;\n\tfixedHeader?: boolean;\n\tshowPagination?: boolean;\n\trenderTooltip?: (row: Row<TData>, rowContent: React.ReactNode) => React.ReactNode;\n\trenderSubComponent?: (props: { row: Row<TData> }) => React.ReactNode;\n\tinfoExtraLabel?: React.ReactNode;\n\tshowDataLabel?: boolean;\n\tfooterAction?: React.ReactNode;\n\tmaxVisualRows?: number;\n}\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tmessageEmpty = <>Sem resultados</>,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\n\tshowPagination = true,\n\tshowDataLabel = true,\n\trenderTooltip,\n\trenderSubComponent,\n\tinfoExtraLabel,\n\tfooterAction,\n\tmaxVisualRows,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-120 text-wrap wrap-break-word\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\tconst rows = table.getRowModel().rows;\n\t\tconst rowsToRender = maxVisualRows ? rows.slice(0, maxVisualRows) : rows;\n\n\t\treturn rowsToRender.map((row: Row<TData>, index) => {\n\t\t\t// Se estivermos usando renderSubComponent (modo Master-Detail),\n\t\t\t// ignoramos as sub-linhas no loop principal para não duplicá-las\n\t\t\tif (renderSubComponent && row.depth > 0) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst rowKey = row.id ?? String(index);\n\n\t\t\tconst rowContent = row.getVisibleCells().map((cell) => {\n\t\t\t\tconst content = flexRender(cell.column.columnDef.cell, cell.getContext());\n\t\t\t\treturn (\n\t\t\t\t\t<TableCell\n\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"p-2\",\n\t\t\t\t\t\t\tdividingColumnKey?.includes(cell.column.id) && \"border-r\",\n\t\t\t\t\t\t\tcell.column.columnDef.meta?.className,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</TableCell>\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tconst rowWithTooltip = renderTooltip ? (\n\t\t\t\trenderTooltip(row, rowContent)\n\t\t\t) : (\n\t\t\t\t<TableRow\n\t\t\t\t\tkey={rowKey}\n\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\tclassName={cn(\"even:bg-body/50\")}\n\t\t\t\t>\n\t\t\t\t\t{rowContent}\n\t\t\t\t</TableRow>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<React.Fragment key={rowKey}>\n\t\t\t\t\t{rowWithTooltip}\n\t\t\t\t\t{row.getIsExpanded() && renderSubComponent && (\n\t\t\t\t\t\t<TableRow className={cn(\"even:bg-body/50\")}>\n\t\t\t\t\t\t\t<TableCell colSpan={row.getVisibleCells().length}>\n\t\t\t\t\t\t\t\t{renderSubComponent({ row })}\n\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t)}\n\t\t\t\t</React.Fragment>\n\t\t\t);\n\t\t});\n\t};\n\n\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\tconst tableContent = (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\tshouldForceMinHeight && \"force-min-height\",\n\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\tdividingColumnKey?.includes(id) ? \"border-r\" : \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.className,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"static\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-fit items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.headerClassName,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>{renderTableBodyContent()}</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t</div>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{tableContent}\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\tshowPaginationControls={showPagination}\n\t\t\t\t\tshowDataLabel={showDataLabel}\n\t\t\t\t\tfooterAction={footerAction}\n\t\t\t\t\tmaxVisualRows={maxVisualRows}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n","// Utils para manipular árvores de forma imutável\n/** biome-ignore-all lint/suspicious/noExplicitAny: <any> */\n\nexport interface TreeItem {\n\tid: string | number;\n\tsubRows?: TreeItem[];\n\t[key: string]: any;\n}\n\nexport type TreeData<T> = T & {\n\tid: string | number;\n\tsubRows?: TreeData<T>[];\n};\n\nexport interface FindResult {\n\tpath: (number | string)[];\n\tnode: TreeItem;\n}\n\n// Encontra um item e retorna caminho + referência\nexport function findItemPath(\n\ttree: TreeItem[],\n\tid: string | number,\n\tpath: (number | string)[] = [],\n): FindResult | null {\n\tfor (let i = 0; i < tree.length; i++) {\n\t\tconst node = tree[i];\n\n\t\t// Encontrou o item\n\t\tif (node.id === id) {\n\t\t\treturn { path: [...path, i], node };\n\t\t}\n\n\t\t// Recursão em subRows\n\t\tif (Array.isArray(node.subRows) && node.subRows.length > 0) {\n\t\t\tconst result = findItemPath(node.subRows, id, [...path, i, \"subRows\"]);\n\t\t\tif (result) return result;\n\t\t}\n\t}\n\n\treturn null;\n}\n\n// Copia profunda (para não mutar)\nexport function clone<T>(obj: T): T {\n\treturn JSON.parse(JSON.stringify(obj));\n}\n\nexport function removeAtPath(tree: TreeItem[], path: (number | string)[]): TreeItem {\n\tlet ref: any = tree;\n\n\tfor (let i = 0; i < path.length - 1; i++) {\n\t\tref = ref[path[i]];\n\t}\n\n\tconst index = path[path.length - 1] as number;\n\tconst removed = ref.splice(index, 1)[0];\n\treturn removed;\n}\n\nexport function insertAtPath(tree: TreeItem[], path: (number | string)[], item: TreeItem): void {\n\tlet ref: any = tree;\n\n\tfor (let i = 0; i < path.length - 1; i++) {\n\t\tref = ref[path[i]];\n\t}\n\n\tconst index = path[path.length - 1] as number;\n\tref.splice(index, 0, item);\n}\n\nexport function toTreeItems<T extends { subRows?: T[] }>(\n\trows: T[],\n\tgetId: (item: T) => string | number,\n): TreeItem[] {\n\treturn rows.map((item) => ({\n\t\t...item,\n\t\tid: getId(item),\n\t\tsubRows: item.subRows ? toTreeItems(item.subRows, getId) : [],\n\t}));\n}\n","import { DragEndEvent, DragStartEvent } from \"@dnd-kit/core\";\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Row, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Sortable, SortableItem } from \"@/components/ui/sortable\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport { findItemPath, insertAtPath, removeAtPath, TreeData } from \"@/utils/treeReorder\";\nimport { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tdata: TData[];\n\tonDataChange?: (newData: TData[]) => void;\n\tmessageEmpty?: React.ReactNode;\n\trowKey: keyof TData | Array<keyof TData> | ((row: TData) => string | number);\n\tdividingColumnKey?: string[];\n\tloadingContent?: React.ReactNode;\n\tpageSizeOptions?: number[];\n\tclassName?: string;\n\tisScrollable?: boolean;\n\tscrollMaxHeightClass?: string;\n\tfixedHeader?: boolean;\n\tshowPagination?: boolean;\n\trenderTooltip?: (row: Row<TData>, rowContent: React.ReactNode) => React.ReactNode;\n\tinfoExtraLabel?: React.ReactNode;\n\tshowDataLabel?: boolean;\n\tfooterAction?: React.ReactNode;\n\t// Sortable props\n\tsortableValue?: TreeData<TData>[];\n\tsortableOnValueChange?: (items: TreeData<TData>[]) => void;\n\tsortableOnDragStart?: (event: DragStartEvent) => void;\n\tsortableOnDragEnd?: (event: DragEndEvent) => void;\n\tmaxVisualRows?: number;\n}\n\ntype RowData = {\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\t[key: string]: any;\n};\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nconst getRowKey = <TData extends RowData>(\n\trow: TData,\n\trowKey: keyof TData | Array<keyof TData> | ((row: TData) => string | number),\n): string | number => {\n\tif (typeof rowKey === \"function\") {\n\t\treturn rowKey(row);\n\t}\n\n\tif (Array.isArray(rowKey)) {\n\t\tfor (const key of rowKey) {\n\t\t\tif (row[key] !== undefined && row[key] !== null) {\n\t\t\t\treturn row[key] as string | number;\n\t\t\t}\n\t\t}\n\t\treturn \"\";\n\t}\n\n\treturn row[rowKey] as string | number;\n};\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tdata,\n\tmessageEmpty = <>Sem resultados</>,\n\tonDataChange,\n\trowKey,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\n\tshowPagination = true,\n\tshowDataLabel = true,\n\trenderTooltip,\n\tinfoExtraLabel,\n\tfooterAction,\n\n\tsortableValue: propValue,\n\tsortableOnValueChange: propOnValueChange,\n\tsortableOnDragStart: propOnDragStart,\n\tsortableOnDragEnd: propOnDragEnd,\n\tmaxVisualRows,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\n\tconst [newData, setNewData] = React.useState<TData[]>(data);\n\n\tconst handleValueChange = (updatedData: TData[]) => {\n\t\tsetNewData(updatedData);\n\n\t\tif (onDataChange) {\n\t\t\tonDataChange(updatedData);\n\t\t}\n\t};\n\n\tReact.useEffect(() => {\n\t\tsetNewData(data);\n\t}, [data]);\n\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-120 text-wrap wrap-break-word\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\tconst rows = table.getRowModel().rows;\n\t\tconst rowsToRender = maxVisualRows ? rows.slice(0, maxVisualRows) : rows;\n\n\t\treturn rowsToRender.map((row: Row<TData>) => {\n\t\t\tconst rowData = row.original;\n\t\t\tconst key = getRowKey(rowData, rowKey);\n\n\t\t\tconst rowContent = row.getVisibleCells().map((cell) => (\n\t\t\t\t<TableCell\n\t\t\t\t\tkey={cell.id}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"p-2 py-1\",\n\t\t\t\t\t\tdividingColumnKey?.includes(cell.column.id) && \"border-r\",\n\t\t\t\t\t\tcell.column.columnDef.meta?.className,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t</TableCell>\n\t\t\t));\n\n\t\t\tconst baseRow = (\n\t\t\t\t<TableRow data-state={row.getIsSelected() && \"selected\"} className={cn(\"even:bg-body/50\")}>\n\t\t\t\t\t{rowContent}\n\t\t\t\t</TableRow>\n\t\t\t);\n\n\t\t\tconst wrappedRow = renderTooltip ? renderTooltip(row, rowContent) : baseRow;\n\n\t\t\treturn (\n\t\t\t\t<SortableItem key={row.id} value={key} asChild>\n\t\t\t\t\t{wrappedRow}\n\t\t\t\t</SortableItem>\n\t\t\t);\n\t\t});\n\t};\n\n\tconst [activeId, setActiveId] = React.useState<string | null>(null);\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: <useMemo>\n\tconst siblings = React.useMemo(() => {\n\t\tif (!activeId)\n\t\t\treturn table.getRowModel().rows.map((row) => ({\n\t\t\t\t...row.original,\n\t\t\t\tid: getRowKey(row.original, rowKey),\n\t\t\t}));\n\n\t\tconst activeRow = table\n\t\t\t.getRowModel()\n\t\t\t.rows.find((row) => getRowKey(row.original, rowKey) === activeId);\n\t\tif (!activeRow) return [];\n\n\t\tconst parentId = activeRow.parentId;\n\n\t\treturn table\n\t\t\t.getRowModel()\n\t\t\t.rows.filter((row) => row.parentId === parentId)\n\t\t\t.map((row) => ({\n\t\t\t\t...row.original,\n\t\t\t\tid: getRowKey(row.original, rowKey),\n\t\t\t}));\n\t}, [activeId, table.getRowModel().rows, rowKey]);\n\n\tconst internalHandleDragStart = (event: DragStartEvent) => {\n\t\tsetActiveId(event.active.id as string);\n\t};\n\n\tconst internalHandleDragEnd = (event: DragEndEvent) => {\n\t\tsetActiveId(null);\n\t\tconst { active, over } = event;\n\t\tif (!active || !over) return;\n\n\t\tconst sourceId = active.id;\n\t\tconst targetId = over.id;\n\t\tif (sourceId === targetId) return;\n\n\t\tconst tree: TreeData<TData>[] = newData.map((item) => ({\n\t\t\t...item,\n\t\t\tid: getRowKey(item, rowKey),\n\t\t}));\n\n\t\tconst source = findItemPath(tree, sourceId);\n\t\tconst target = findItemPath(tree, targetId);\n\n\t\tif (!source || !target) return;\n\n\t\t// -----------------------------\n\t\t// 🔒 1. TRAVAR MOVIMENTAÇÃO ENTRE NÍVEIS DIFERENTES\n\t\t// -----------------------------\n\n\t\tconst sourcePath = source.path;\n\t\tconst targetPath = target.path;\n\n\t\t// Pega o \"caminho do pai\" (remove o último índice, que é o índice do item em si)\n\t\tconst sourceParentPath = sourcePath.slice(0, -1);\n\t\tconst targetParentPath = targetPath.slice(0, -1);\n\n\t\t// Compara se os arrays são iguais (mesmo tamanho e mesmos valores)\n\t\tconst isSameParent =\n\t\t\tsourceParentPath.length === targetParentPath.length &&\n\t\t\tsourceParentPath.every((val, index) => val === targetParentPath[index]);\n\n\t\tif (!isSameParent) {\n\t\t\treturn;\n\t\t}\n\n\t\t// -----------------------------\n\t\t// 🔄 2. MOVIMENTO PERMITIDO → REORDENAR\n\t\t// -----------------------------\n\n\t\tconst removedItem = removeAtPath(tree, sourcePath);\n\n\t\tconst destPath = [...targetPath];\n\t\tdestPath[destPath.length - 1] = targetPath[targetPath.length - 1];\n\n\t\tinsertAtPath(tree, destPath, removedItem);\n\n\t\thandleValueChange(tree);\n\t};\n\n\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\tconst finalValue =\n\t\tpropValue ??\n\t\t(maxVisualRows\n\t\t\t? table.getRowModel().rows.slice(0, maxVisualRows)\n\t\t\t: table.getRowModel().rows\n\t\t).map((row) => ({\n\t\t\t...row.original,\n\t\t\tid: getRowKey(row.original, rowKey),\n\t\t}));\n\n\tconst finalOnValueChange = propOnValueChange ?? handleValueChange;\n\tconst finalOnDragStart = propOnDragStart ?? internalHandleDragStart;\n\tconst finalOnDragEnd = propOnDragEnd ?? internalHandleDragEnd;\n\n\treturn (\n\t\t<>\n\t\t\t<Sortable<TreeData<TData>>\n\t\t\t\tvalue={finalValue}\n\t\t\t\tcontextItems={siblings}\n\t\t\t\tonValueChange={finalOnValueChange}\n\t\t\t\tonDragStart={finalOnDragStart}\n\t\t\t\tonDragEnd={finalOnDragEnd}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\t\t\tshouldForceMinHeight && \"force-min-height\",\n\t\t\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Table>\n\t\t\t\t\t\t\t<TableHeader\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdividingColumnKey?.includes(id) ? \"border-r\" : \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.className,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-fit items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.headerClassName,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t\t\t<TableBody>{renderTableBodyContent()}</TableBody>\n\t\t\t\t\t\t</Table>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Sortable>\n\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\tshowPaginationControls={showPagination}\n\t\t\t\t\tshowDataLabel={showDataLabel}\n\t\t\t\t\tfooterAction={footerAction}\n\t\t\t\t\tmaxVisualRows={maxVisualRows}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { SearchIcon } from \"lucide-react\";\nimport { Input } from \"@/components/ui/input\";\n\ninterface DataTableSearchProps<TData> {\n\ttable: Table<TData>;\n\tkeySearch: string;\n\tplaceholder: string;\n}\n\nexport function DataTableSearch<TData>({\n\ttable,\n\tkeySearch,\n\tplaceholder,\n}: DataTableSearchProps<TData>) {\n\treturn (\n\t\t<div className=\"relative w-full max-w-sm\">\n\t\t\t<SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n\t\t\t<Input\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tvalue={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n\t\t\t\tonChange={(event) => table.getColumn(keySearch)?.setFilterValue(event.target.value)}\n\t\t\t\tclassName=\"w-full pl-8 xl:w-80\"\n\t\t\t/>\n\t\t</div>\n\t);\n}\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\t/**\n\t * The number of columns in the table.\n\t * @type number\n\t */\n\tcolumnCount: number;\n\n\t/**\n\t * The number of rows in the table.\n\t * @default 10\n\t * @type number | undefined\n\t */\n\trowCount?: number;\n\n\t/**\n\t * The number of searchable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tsearchableColumnCount?: number;\n\n\t/**\n\t * The number of filterable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tfilterableColumnCount?: number;\n\n\t/**\n\t * Flag to show the table view options.\n\t * @default undefined\n\t * @type boolean | undefined\n\t */\n\tshowViewOptions?: boolean;\n\n\t/**\n\t * The width of each cell in the table.\n\t * The length of the array should be equal to the columnCount.\n\t * Any valid CSS width value is accepted.\n\t * @default [\"auto\"]\n\t * @type string[] | undefined\n\t */\n\tcellWidths?: string[];\n\n\t/**\n\t * Flag to show the pagination bar.\n\t * @default true\n\t * @type boolean | undefined\n\t */\n\twithPagination?: boolean;\n\n\t/**\n\t * Flag to prevent the table cells from shrinking.\n\t * @default false\n\t * @type boolean | undefined\n\t */\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n\tconst {\n\t\tcolumnCount,\n\t\trowCount = 10,\n\t\tsearchableColumnCount = 0,\n\t\tfilterableColumnCount = 0,\n\t\tshowViewOptions = true,\n\t\tcellWidths = [\"auto\"],\n\t\twithPagination = true,\n\t\tshrinkZero = false,\n\t\tclassName,\n\t\t...skeletonProps\n\t} = props;\n\n\treturn (\n\t\t<div className={cn(\"w-full space-y-2.5 overflow-auto\", className)} {...skeletonProps}>\n\t\t\t<div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n\t\t\t\t<div className=\"flex flex-1 items-center space-x-2\">\n\t\t\t\t\t{searchableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: searchableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t\t{filterableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: filterableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-[4.5rem] border-dashed\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t</div>\n\t\t\t\t{showViewOptions ? <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" /> : null}\n\t\t\t</div>\n\t\t\t<div className=\"rounded-md border\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader>\n\t\t\t\t\t\t{Array.from({ length: 1 }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t\t{withPagination ? (\n\t\t\t\t<div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n\t\t\t\t\t<Skeleton className=\"h-7 w-40 shrink-0\" />\n\t\t\t\t\t<div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-24\" />\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-[4.5rem]\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center justify-center text-sm font-medium\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-20\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableStatusProps<TData, TEnum> {\n\ttable: Table<TData>;\n\tuniqueStatusValues: TEnum[];\n\trenderStatusMessage(status: TEnum): string;\n\tclassName?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n\ttable,\n\tuniqueStatusValues,\n\trenderStatusMessage,\n\tclassName,\n}: DataTableStatusProps<TData, TEnum>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\tconst currentFilter = table.getColumn(\"status\")?.getFilterValue() as TEnum | undefined;\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Filtre por status\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-9 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{currentFilter ? renderStatusMessage(currentFilter) : \"Todos os status\"}\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar status...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\tkey=\"all\"\n\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(undefined)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"truncate\">Todos os status</span>\n\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t{uniqueStatusValues.map((item) => {\n\t\t\t\t\t\t\tif (!item) return null;\n\n\t\t\t\t\t\t\tconst statusMessage = renderStatusMessage(item as TEnum);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\tkey={`${String(item)}`}\n\t\t\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"truncate\">{statusMessage}</span>\n\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { Check, ChevronDownIcon } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n\ttable: Table<TData>;\n\ttransformColumnName?: (id: string) => string;\n\tdisabled?: boolean;\n}\n\nexport function DataTableViewOptions<TData>({\n\ttable,\n\ttransformColumnName,\n\tdisabled,\n}: DataTableViewOptionsProps<TData>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger className=\"m-0\" asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Toggle columns\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName=\"text-muted-foreground hover:text-muted-foreground w-full max-w-[12.5rem] items-center justify-between bg-inherit px-3 py-2 hover:bg-inherit\"\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t>\n\t\t\t\t\tColunas\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar colunas...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{table\n\t\t\t\t\t\t\t\t.getAllColumns()\n\t\t\t\t\t\t\t\t.filter((column) => typeof column.accessorFn !== \"undefined\" && column.getCanHide())\n\t\t\t\t\t\t\t\t.map((column) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\t\t\tkey={column.id}\n\t\t\t\t\t\t\t\t\t\t\tonSelect={() => column.toggleVisibility(!column.getIsVisible())}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t{transformColumnName ? transformColumnName(column.id) : column.id}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<Check\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ml-auto size-4 shrink-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n"],"names":["__iconNode","DataTableFull","data","columns","transformIdToNameColumn","isLoading","dataLabel","messageEmpty","fileName","showPagination","config","buttonExportText","action","disabledAction","renderTooltip","infoExtraLabel","tableFilterNode","rowKey","appliedFiltersCount","table","isExportedTable","isViewOptions","isExportButtonGroup","actionExcel","actionPdf","disabledButtons","disabledButtonExcel","disabledButtonPdf","genericTabs","currentTab","onTabChange","noResultsForFilter","React","Container","ChildContainer","className","div","GenericTabs","tabs","value","onNavigate","triggerClassName","DataTableViewOptions","transformColumnName","disabled","ExportButtons","onExportExcel","onExportPdf","buttonLabel","ButtonExportCsv","text","DataTableMainFrameSortable","isLoadingTable","p","flexRender","Comp","props","isReactComponent","createElement","component","isClassComponent","isExoticComponent","proto","Object","getPrototypeOf","prototype","$$typeof","includes","description","DataTablePagination","pageSizeOptions","showPaginationControls","showDataLabel","footerAction","maxVisualRows","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","renderPageNumbers","items","maxVisiblePages","i","push","Button","variant","key","onClick","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","getRowModel","rows","length","toLocaleString","Select","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","placeholder","SelectContent","SelectItem","map","previousPage","getCanPreviousPage","aria-label","ChevronLeftIcon","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","cn","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","loadingContent","setQueryParams","actionColumns","dividingColumnKey","scrollMaxHeightClass","isScrollable","fixedHeader","renderSubComponent","toString","sorting","useEffect","sortingParams","sortingBy","order","id","desc","prev","page","renderTableBodyContent","getAllColumns","colSpan","span","rowsToRender","slice","row","index","depth","rowContent","getVisibleCells","cell","content","column","columnDef","getContext","meta","rowWithTooltip","data-state","getIsSelected","Fragment","getIsExpanded","shouldForceMinHeight","tableContent","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","headerClassName","getToggleSortingHandler","undefined","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","findItemPath","tree","path","node","isArray","subRows","result","removeAtPath","ref","removed","splice","insertAtPath","item","getRowKey","onDataChange","sortableValue","propValue","sortableOnValueChange","propOnValueChange","sortableOnDragStart","propOnDragStart","sortableOnDragEnd","propOnDragEnd","newData","setNewData","useState","handleValueChange","updatedData","rowData","original","baseRow","wrappedRow","SortableItem","asChild","activeId","setActiveId","siblings","useMemo","activeRow","find","parentId","filter","internalHandleDragStart","event","active","internalHandleDragEnd","over","sourceId","targetId","source","target","sourcePath","targetPath","sourceParentPath","targetParentPath","isSameParent","every","val","removedItem","destPath","finalValue","finalOnValueChange","finalOnDragStart","finalOnDragEnd","Sortable","contextItems","onDragStart","onDragEnd","DataTableSearch","keySearch","SearchIcon","Input","getColumn","getFilterValue","onChange","setFilterValue","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","triggerRef","useRef","currentFilter","Popover","modal","PopoverTrigger","ChevronDownIcon","PopoverContent","align","onCloseAutoFocus","current","focus","Command","CommandInput","CommandList","CommandEmpty","CommandItem","onSelect","statusMessage","CommandGroup","accessorFn","getCanHide","toggleVisibility","getIsVisible","Check"],"mappings":"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","x_google_ignoreList":[0,1,3]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-down.js","../../node_modules/lucide-react/dist/esm/icons/arrow-up.js","../../src/components/default/data-table/DataTableFull.tsx","../../node_modules/@tanstack/react-table/build/lib/index.mjs","../../src/components/default/data-table/DataTablePagination.tsx","../../src/components/default/data-table/DataTablePaginationSkeleton.tsx","../../src/components/default/data-table/DataTableRowSkeleton.tsx","../../src/components/default/data-table/DataTableMainFrame.tsx","../../src/utils/treeReorder.ts","../../src/components/default/data-table/DataTableMainFrameSortable.tsx","../../src/components/default/data-table/DataTableSearch.tsx","../../src/components/default/data-table/DataTableSkeleton.tsx","../../src/components/default/data-table/DataTableStatus.tsx","../../src/components/default/data-table/DataTableViewOptions.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }],\n [\"path\", { d: \"m19 12-7 7-7-7\", key: \"1idqje\" }]\n];\nconst ArrowDown = createLucideIcon(\"ArrowDown\", __iconNode);\n\nexport { __iconNode, ArrowDown as default };\n//# sourceMappingURL=arrow-down.js.map\n","/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m5 12 7-7 7 7\", key: \"hav0vg\" }],\n [\"path\", { d: \"M12 19V5\", key: \"x0mq9r\" }]\n];\nconst ArrowUp = createLucideIcon(\"ArrowUp\", __iconNode);\n\nexport { __iconNode, ArrowUp as default };\n//# sourceMappingURL=arrow-up.js.map\n","import React from \"react\";\n\nimport { GenericTabs } from \"@/components/default/base/GenericTabs\";\nimport { DataTableMainFrameSortable, DataTableViewOptions } from \"@/components/default/data-table\";\nimport { ButtonExportCsv } from \"@/components/default/export/ButtonExportCsv\";\nimport { ExportButtons } from \"@/components/default/export/ExportButtons\";\nimport { ChildContainer, Container } from \"@/components/default/layout\";\n\nimport type { DataTableFullProps, RowData } from \"@/types/dataTable\";\n\ntype DataTableFullWithTabsProps<TData extends RowData> = DataTableFullProps<TData> & {\n\t/**\n\t * Tabs customizadas. Se fornecido, tem prioridade sobre genericTabs.\n\t */\n\ttabs?: React.ReactNode;\n};\n\nexport const DataTableFull = <TData extends RowData>({\n\tdata,\n\tcolumns,\n\ttransformIdToNameColumn,\n\tisLoading = false,\n\tdataLabel = \"Registros\",\n\tmessageEmpty,\n\tfileName = \"dados_exportados\",\n\tshowPagination = true,\n\tconfig,\n\tbuttonExportText = \"Exportar\",\n\taction,\n\tdisabledAction,\n\trenderTooltip,\n\tinfoExtraLabel,\n\ttableFilterNode,\n\trowKey,\n\tappliedFiltersCount = 0,\n\ttable,\n\tisExportedTable = true,\n\tisViewOptions = true,\n\tisExportButtonGroup = false,\n\tdisabledButtons,\n\tgenericTabs,\n\twidthCurrentTab = false,\n\tcurrentTab,\n\tonTabChange,\n\ttabs,\n\tshowDataLabel = true,\n\tloadingContent,\n\tsetQueryParams,\n\tactionColumns = [],\n\tonDataChange,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\n\tfooterAction,\n\tsortableValue: propValue,\n\tsortableOnValueChange: propOnValueChange,\n\tsortableOnDragStart: propOnDragStart,\n\tsortableOnDragEnd: propOnDragEnd,\n\tmaxVisualRows,\n\toptionsExport,\n}: DataTableFullWithTabsProps<TData>): React.ReactElement => {\n\tconst noResultsForFilter = appliedFiltersCount > 0;\n\n\treturn (\n\t\t<Container>\n\t\t\t<ChildContainer className=\"flex-col px-0 py-4\">\n\t\t\t\t<div className=\"bg-background relative z-0 flex w-full flex-col gap-4 px-4 py-2\">\n\t\t\t\t\t<div className=\"flex flex-wrap items-start justify-between gap-4\">\n\t\t\t\t\t\t{tabs\n\t\t\t\t\t\t\t? tabs\n\t\t\t\t\t\t\t: genericTabs && (\n\t\t\t\t\t\t\t\t\t<GenericTabs\n\t\t\t\t\t\t\t\t\t\ttabs={genericTabs}\n\t\t\t\t\t\t\t\t\t\tvalue={currentTab}\n\t\t\t\t\t\t\t\t\t\tonNavigate={onTabChange}\n\t\t\t\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\t\t\t\twidthCurrent={widthCurrentTab}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div className=\"flex flex-1 items-center justify-start gap-2 gap-y-4 sm:justify-end\">\n\t\t\t\t\t\t\t{isViewOptions && (\n\t\t\t\t\t\t\t\t<DataTableViewOptions\n\t\t\t\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\t\t\t\ttransformColumnName={transformIdToNameColumn}\n\t\t\t\t\t\t\t\t\tdisabled={isLoading}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{tableFilterNode}\n\n\t\t\t\t\t\t\t{isExportButtonGroup && optionsExport && optionsExport.length > 0 && (\n\t\t\t\t\t\t\t\t<ExportButtons\n\t\t\t\t\t\t\t\t\toptions={optionsExport}\n\t\t\t\t\t\t\t\t\tbuttonLabel={buttonExportText}\n\t\t\t\t\t\t\t\t\tdisabledButtons={disabledButtons}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{isExportedTable && (action || config) && (\n\t\t\t\t\t\t\t\t<ButtonExportCsv<TData>\n\t\t\t\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\t\t\t\tfileName={fileName}\n\t\t\t\t\t\t\t\t\tconfig={config}\n\t\t\t\t\t\t\t\t\ttext={buttonExportText}\n\t\t\t\t\t\t\t\t\taction={action}\n\t\t\t\t\t\t\t\t\tdisabled={disabledAction}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<DataTableMainFrameSortable\n\t\t\t\t\t\tdata={data}\n\t\t\t\t\t\trowKey={rowKey}\n\t\t\t\t\t\ttable={table}\n\t\t\t\t\t\tcolumns={columns}\n\t\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\t\tisLoadingTable={isLoading}\n\t\t\t\t\t\tshowPagination={showPagination}\n\t\t\t\t\t\trenderTooltip={renderTooltip}\n\t\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\t\tshowDataLabel={showDataLabel}\n\t\t\t\t\t\tactionColumns={actionColumns}\n\t\t\t\t\t\tonDataChange={onDataChange}\n\t\t\t\t\t\tdividingColumnKey={dividingColumnKey}\n\t\t\t\t\t\tfixedHeader={fixedHeader}\n\t\t\t\t\t\tisScrollable={isScrollable}\n\t\t\t\t\t\tscrollMaxHeightClass={scrollMaxHeightClass}\n\t\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t\t\tclassName={className}\n\t\t\t\t\t\tloadingContent={loadingContent}\n\t\t\t\t\t\tsetQueryParams={setQueryParams}\n\t\t\t\t\t\tsortableValue={propValue}\n\t\t\t\t\t\tsortableOnValueChange={propOnValueChange}\n\t\t\t\t\t\tfooterAction={footerAction}\n\t\t\t\t\t\tsortableOnDragEnd={propOnDragEnd}\n\t\t\t\t\t\tsortableOnDragStart={propOnDragStart}\n\t\t\t\t\t\tmaxVisualRows={maxVisualRows}\n\t\t\t\t\t\tmessageEmpty={\n\t\t\t\t\t\t\tmessageEmpty ? (\n\t\t\t\t\t\t\t\tmessageEmpty\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<div className=\"mx-auto flex items-center justify-center\">\n\t\t\t\t\t\t\t\t\t<p>Nenhum resultado encontrado.</p>\n\t\t\t\t\t\t\t\t\t{noResultsForFilter && (\n\t\t\t\t\t\t\t\t\t\t<p className=\"w-100 text-wrap\">\n\t\t\t\t\t\t\t\t\t\t\tNão há resultados para esta filtragem. Verifique os filtros e tente novamente.\n\t\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</ChildContainer>\n\t\t</Container>\n\t);\n};\n","/**\n * react-table\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport * as React from 'react';\nimport { createTable } from '@tanstack/table-core';\nexport * from '@tanstack/table-core';\n\n//\n\n/**\n * If rendering headers, cells, or footers with custom markup, use flexRender instead of `cell.getValue()` or `cell.renderValue()`.\n */\nfunction flexRender(Comp, props) {\n return !Comp ? null : isReactComponent(Comp) ? /*#__PURE__*/React.createElement(Comp, props) : Comp;\n}\nfunction isReactComponent(component) {\n return isClassComponent(component) || typeof component === 'function' || isExoticComponent(component);\n}\nfunction isClassComponent(component) {\n return typeof component === 'function' && (() => {\n const proto = Object.getPrototypeOf(component);\n return proto.prototype && proto.prototype.isReactComponent;\n })();\n}\nfunction isExoticComponent(component) {\n return typeof component === 'object' && typeof component.$$typeof === 'symbol' && ['react.memo', 'react.forward_ref'].includes(component.$$typeof.description);\n}\nfunction useReactTable(options) {\n // Compose in the generic options to the user options\n const resolvedOptions = {\n state: {},\n // Dummy state\n onStateChange: () => {},\n // noop\n renderFallbackValue: null,\n ...options\n };\n\n // Create a new table and store it in state\n const [tableRef] = React.useState(() => ({\n current: createTable(resolvedOptions)\n }));\n\n // By default, manage table state here using the table's initial state\n const [state, setState] = React.useState(() => tableRef.current.initialState);\n\n // Compose the default state above with any user state. This will allow the user\n // to only control a subset of the state if desired.\n tableRef.current.setOptions(prev => ({\n ...prev,\n ...options,\n state: {\n ...state,\n ...options.state\n },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n setState(updater);\n options.onStateChange == null || options.onStateChange(updater);\n }\n }));\n return tableRef.current;\n}\n\nexport { flexRender, useReactTable };\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { PaginationEllipsis, PaginationItem } from \"@/components/ui/pagination\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\n\ninterface DataTablePaginationProps<TData> {\n\ttable: Table<TData>;\n\tpageSizeOptions?: number[];\n\tdataLabel?: string;\n\tinfoExtraLabel?: React.ReactNode;\n\tshowPaginationControls?: boolean;\n\tshowDataLabel?: boolean;\n\tfooterAction?: React.ReactNode;\n\tmaxVisualRows?: number;\n}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n\tinfoExtraLabel,\n\tshowPaginationControls = true,\n\tshowDataLabel = true,\n\tfooterAction,\n\tmaxVisualRows,\n}: DataTablePaginationProps<TData>) {\n\tconst pageSize = pageSizeOptions[0];\n\tconst currentPage = table.getState().pagination.pageIndex + 1;\n\tconst rowCount = table.getRowCount();\n\tconst totalPageCount = Math.ceil(rowCount / table.getState().pagination.pageSize);\n\n\tconst renderPageNumbers = () => {\n\t\tconst items: React.ReactNode[] = [];\n\t\tconst maxVisiblePages = 3;\n\n\t\tif (totalPageCount <= maxVisiblePages) {\n\t\t\tfor (let i = 1; i <= totalPageCount; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === 1 ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={1}\n\t\t\t\t\tonClick={() => table.setPageIndex(0)}\n\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t>\n\t\t\t\t\t1\n\t\t\t\t</Button>,\n\t\t\t);\n\n\t\t\tconst start = Math.max(2, Math.min(currentPage, totalPageCount - (maxVisiblePages - 1)));\n\t\t\tconst end = Math.min(totalPageCount - 1, start + maxVisiblePages - 2);\n\n\t\t\tif (start > 2) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-start\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tfor (let i = start; i <= end; i++) {\n\t\t\t\titems.push(\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant={currentPage === i ? \"outline\" : \"ghost\"}\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tonClick={() => table.setPageIndex(i - 1)}\n\t\t\t\t\t\tclassName=\"size-9\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{i}\n\t\t\t\t\t</Button>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (end < totalPageCount - 1) {\n\t\t\t\titems.push(\n\t\t\t\t\t<PaginationItem key=\"ellipsis-end\" className=\"list-none\">\n\t\t\t\t\t\t<PaginationEllipsis />\n\t\t\t\t\t</PaginationItem>,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\titems.push(\n\t\t\t\t<Button\n\t\t\t\t\tvariant={currentPage === totalPageCount ? \"outline\" : \"ghost\"}\n\t\t\t\t\tkey={totalPageCount}\n\t\t\t\t\tonClick={() => table.setPageIndex(totalPageCount - 1)}\n\t\t\t\t>\n\t\t\t\t\t{totalPageCount}\n\t\t\t\t</Button>,\n\t\t\t);\n\t\t}\n\n\t\treturn items;\n\t};\n\n\tif (!showPaginationControls && !showDataLabel) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t{showDataLabel && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"text-muted-foreground flex items-center gap-4 text-sm\">\n\t\t\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\t\t\tMostrando{\" \"}\n\t\t\t\t\t\t\t{(maxVisualRows\n\t\t\t\t\t\t\t\t? Math.min(table.getRowModel().rows.length, maxVisualRows)\n\t\t\t\t\t\t\t\t: table.getRowModel().rows.length\n\t\t\t\t\t\t\t).toLocaleString()}{\" \"}\n\t\t\t\t\t\t\tde {rowCount} {dataLabel}. {infoExtraLabel && infoExtraLabel}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div>{footerAction && <div>{footerAction}</div>}</div>\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t{showPaginationControls && (\n\t\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4 ml-auto\">\n\t\t\t\t\t<Select\n\t\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\tpageSizeOptions.map((pageSize) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={pageSize} value={String(pageSize)}>\n\t\t\t\t\t\t\t\t\t\tMostrar {pageSize}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\t\tAnterior\n\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\n\nexport const DataTablePaginationSkeleton: React.FC = ({ className }: { className?: string }) => {\n\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<Skeleton className={cn(\"h-5 w-40\", className)} />\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Skeleton className={cn(\"h-10 w-28\", className)} />\n\t\t\t\t<Skeleton className={cn(\"h-9 w-[16rem]\", className)} />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\n\ninterface DataTableRowSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\tcolumnCount: number;\n\trowCount?: number;\n\tcellWidths?: string[];\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableRowSkeleton(props: DataTableRowSkeletonProps) {\n\tconst { columnCount, rowCount = 8, cellWidths = [\"auto\"], shrinkZero = false } = props;\n\n\treturn (\n\t\t<>\n\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t<TableRow key={`row-${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\tkey={`cell-${String(i)}-${j}`}\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t))}\n\t\t\t\t</TableRow>\n\t\t\t))}\n\t\t</>\n\t);\n}\n","\"use client\";\n\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { ColumnDef, Row, Table as TableType } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ninterface DataTableViewOptionsProps<TData, TValue> {\n\ttable: TableType<TData>;\n\tcolumns: ColumnDef<TData, TValue>[];\n\tsetQueryParams?: React.Dispatch<React.SetStateAction<ListParams>>;\n\tisLoadingTable?: boolean;\n\tdataLabel: string;\n\tactionColumns?: string[];\n\tmessageEmpty?: React.ReactNode;\n\tdividingColumnKey?: string[];\n\tloadingContent?: React.ReactNode;\n\tpageSizeOptions?: number[];\n\tclassName?: string;\n\tisScrollable?: boolean;\n\tscrollMaxHeightClass?: string;\n\tfixedHeader?: boolean;\n\tshowPagination?: boolean;\n\trenderTooltip?: (row: Row<TData>, rowContent: React.ReactNode) => React.ReactNode;\n\trenderSubComponent?: (props: { row: Row<TData> }) => React.ReactNode;\n\tinfoExtraLabel?: React.ReactNode;\n\tshowDataLabel?: boolean;\n\tfooterAction?: React.ReactNode;\n\tmaxVisualRows?: number;\n}\n\ninterface ListParams {\n\t[propName: string]: string | string[];\n}\n\nexport const DataTableMainFrame = <TData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tmessageEmpty = <>Sem resultados</>,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\n\tshowPagination = true,\n\tshowDataLabel = true,\n\trenderTooltip,\n\trenderSubComponent,\n\tinfoExtraLabel,\n\tfooterAction,\n\tmaxVisualRows,\n}: DataTableViewOptionsProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-120 text-wrap wrap-break-word\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\tconst rows = table.getRowModel().rows;\n\t\tconst rowsToRender = maxVisualRows ? rows.slice(0, maxVisualRows) : rows;\n\n\t\treturn rowsToRender.map((row: Row<TData>, index) => {\n\t\t\t// Se estivermos usando renderSubComponent (modo Master-Detail),\n\t\t\t// ignoramos as sub-linhas no loop principal para não duplicá-las\n\t\t\tif (renderSubComponent && row.depth > 0) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tconst rowKey = row.id ?? String(index);\n\n\t\t\tconst rowContent = row.getVisibleCells().map((cell) => {\n\t\t\t\tconst content = flexRender(cell.column.columnDef.cell, cell.getContext());\n\t\t\t\treturn (\n\t\t\t\t\t<TableCell\n\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"p-2\",\n\t\t\t\t\t\t\tdividingColumnKey?.includes(cell.column.id) && \"border-r\",\n\t\t\t\t\t\t\tcell.column.columnDef.meta?.className,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</TableCell>\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tconst rowWithTooltip = renderTooltip ? (\n\t\t\t\trenderTooltip(row, rowContent)\n\t\t\t) : (\n\t\t\t\t<TableRow\n\t\t\t\t\tkey={rowKey}\n\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\tclassName={cn(\"even:bg-body/50\")}\n\t\t\t\t>\n\t\t\t\t\t{rowContent}\n\t\t\t\t</TableRow>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<React.Fragment key={rowKey}>\n\t\t\t\t\t{rowWithTooltip}\n\t\t\t\t\t{row.getIsExpanded() && renderSubComponent && (\n\t\t\t\t\t\t<TableRow className={cn(\"even:bg-body/50\")}>\n\t\t\t\t\t\t\t<TableCell colSpan={row.getVisibleCells().length}>\n\t\t\t\t\t\t\t\t{renderSubComponent({ row })}\n\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t)}\n\t\t\t\t</React.Fragment>\n\t\t\t);\n\t\t});\n\t};\n\n\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\tconst tableContent = (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\tshouldForceMinHeight && \"force-min-height\",\n\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\tdividingColumnKey?.includes(id) ? \"border-r\" : \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.className,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"static\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-fit items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.headerClassName,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t<TableBody>{renderTableBodyContent()}</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t</div>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{tableContent}\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\tshowPaginationControls={showPagination}\n\t\t\t\t\tshowDataLabel={showDataLabel}\n\t\t\t\t\tfooterAction={footerAction}\n\t\t\t\t\tmaxVisualRows={maxVisualRows}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n","// Utils para manipular árvores de forma imutável\n/** biome-ignore-all lint/suspicious/noExplicitAny: <any> */\n\nexport interface TreeItem {\n\tid: string | number;\n\tsubRows?: TreeItem[];\n\t[key: string]: any;\n}\n\nexport type TreeData<T> = T & {\n\tid: string | number;\n\tsubRows?: TreeData<T>[];\n};\n\nexport interface FindResult {\n\tpath: (number | string)[];\n\tnode: TreeItem;\n}\n\n// Encontra um item e retorna caminho + referência\nexport function findItemPath(\n\ttree: TreeItem[],\n\tid: string | number,\n\tpath: (number | string)[] = [],\n): FindResult | null {\n\tfor (let i = 0; i < tree.length; i++) {\n\t\tconst node = tree[i];\n\n\t\t// Encontrou o item\n\t\tif (node.id === id) {\n\t\t\treturn { path: [...path, i], node };\n\t\t}\n\n\t\t// Recursão em subRows\n\t\tif (Array.isArray(node.subRows) && node.subRows.length > 0) {\n\t\t\tconst result = findItemPath(node.subRows, id, [...path, i, \"subRows\"]);\n\t\t\tif (result) return result;\n\t\t}\n\t}\n\n\treturn null;\n}\n\n// Copia profunda (para não mutar)\nexport function clone<T>(obj: T): T {\n\treturn JSON.parse(JSON.stringify(obj));\n}\n\nexport function removeAtPath(tree: TreeItem[], path: (number | string)[]): TreeItem {\n\tlet ref: any = tree;\n\n\tfor (let i = 0; i < path.length - 1; i++) {\n\t\tref = ref[path[i]];\n\t}\n\n\tconst index = path[path.length - 1] as number;\n\tconst removed = ref.splice(index, 1)[0];\n\treturn removed;\n}\n\nexport function insertAtPath(tree: TreeItem[], path: (number | string)[], item: TreeItem): void {\n\tlet ref: any = tree;\n\n\tfor (let i = 0; i < path.length - 1; i++) {\n\t\tref = ref[path[i]];\n\t}\n\n\tconst index = path[path.length - 1] as number;\n\tref.splice(index, 0, item);\n}\n\nexport function toTreeItems<T extends { subRows?: T[] }>(\n\trows: T[],\n\tgetId: (item: T) => string | number,\n): TreeItem[] {\n\treturn rows.map((item) => ({\n\t\t...item,\n\t\tid: getId(item),\n\t\tsubRows: item.subRows ? toTreeItems(item.subRows, getId) : [],\n\t}));\n}\n","import { DragEndEvent, DragStartEvent } from \"@dnd-kit/core\";\nimport { CaretSortIcon } from \"@radix-ui/react-icons\";\nimport type { Row } from \"@tanstack/react-table\";\nimport { flexRender } from \"@tanstack/react-table\";\nimport { ArrowDownIcon, ArrowUpIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Sortable, SortableItem } from \"@/components/ui/sortable\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\nimport { DataTableMainFrameSortableProps } from \"@/types/dataTable\";\nimport { findItemPath, insertAtPath, removeAtPath, TreeData } from \"@/utils/treeReorder\";\nimport { DataTablePagination } from \"./DataTablePagination\";\nimport { DataTablePaginationSkeleton } from \"./DataTablePaginationSkeleton\";\nimport { DataTableRowSkeleton } from \"./DataTableRowSkeleton\";\n\ntype RowData = {\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\t[key: string]: any;\n};\n\nconst getRowKey = <TData extends RowData>(\n\trow: TData,\n\trowKey: keyof TData | Array<keyof TData> | ((row: TData) => string | number),\n): string | number => {\n\tif (typeof rowKey === \"function\") {\n\t\treturn rowKey(row);\n\t}\n\n\tif (Array.isArray(rowKey)) {\n\t\tfor (const key of rowKey) {\n\t\t\tif (row[key] !== undefined && row[key] !== null) {\n\t\t\t\treturn row[key] as string | number;\n\t\t\t}\n\t\t}\n\t\treturn \"\";\n\t}\n\n\treturn row[rowKey] as string | number;\n};\n\nexport const DataTableMainFrameSortable = <TData extends RowData, TValue>({\n\ttable,\n\tcolumns,\n\tisLoadingTable,\n\tloadingContent,\n\tsetQueryParams,\n\tdataLabel,\n\tactionColumns = [],\n\tdata,\n\tmessageEmpty = <>Sem resultados</>,\n\tonDataChange,\n\trowKey,\n\tdividingColumnKey,\n\tpageSizeOptions,\n\tclassName,\n\tscrollMaxHeightClass = \"sm:max-h-[calc(100vh-300px)]\",\n\tisScrollable = false,\n\tfixedHeader = false,\n\tshowPagination = true,\n\tshowDataLabel = true,\n\trenderTooltip,\n\tinfoExtraLabel,\n\tfooterAction,\n\n\tsortableValue: propValue,\n\tsortableOnValueChange: propOnValueChange,\n\tsortableOnDragStart: propOnDragStart,\n\tsortableOnDragEnd: propOnDragEnd,\n\tmaxVisualRows,\n}: DataTableMainFrameSortableProps<TData, TValue>) => {\n\tconst currentPage = Number(table.getState().pagination.pageIndex).toString();\n\tconst pageSize = Number(table.getState().pagination.pageSize).toString();\n\tconst sorting = table.getState().sorting;\n\n\tconst [newData, setNewData] = React.useState<TData[]>(data);\n\n\tconst handleValueChange = (updatedData: TData[]) => {\n\t\tsetNewData(updatedData);\n\n\t\tif (onDataChange) {\n\t\t\tonDataChange(updatedData);\n\t\t}\n\t};\n\n\tReact.useEffect(() => {\n\t\tsetNewData(data);\n\t}, [data]);\n\n\tReact.useEffect(() => {\n\t\tif (!setQueryParams) return;\n\t\tconst sortingParams = { sortingBy: \"\", order: \"\" };\n\t\tif (sorting.length > 0) {\n\t\t\tsortingParams.sortingBy = sorting[0].id;\n\t\t\tsortingParams.order = sorting[0].desc ? \"DESC\" : \"ASC\";\n\t\t}\n\t\tsetQueryParams((prev) => ({\n\t\t\t...prev,\n\t\t\tpageSize,\n\t\t\tpage: currentPage,\n\t\t\t...sortingParams,\n\t\t}));\n\t}, [currentPage, pageSize, setQueryParams, sorting]);\n\n\tconst renderTableBodyContent = () => {\n\t\tif (isLoadingTable && !loadingContent) {\n\t\t\treturn <DataTableRowSkeleton columnCount={table.getAllColumns().length} />;\n\t\t}\n\n\t\tif (isLoadingTable && loadingContent) {\n\t\t\treturn (\n\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t{loadingContent}\n\t\t\t\t</TableCell>\n\t\t\t);\n\t\t}\n\n\t\tif (table.getRowModel().rows.length === 0) {\n\t\t\treturn (\n\t\t\t\t<TableRow>\n\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t<span className=\"inline-block max-w-120 text-wrap wrap-break-word\">{messageEmpty}</span>\n\t\t\t\t\t</TableCell>\n\t\t\t\t</TableRow>\n\t\t\t);\n\t\t}\n\n\t\tconst rows = table.getRowModel().rows;\n\t\tconst rowsToRender = maxVisualRows ? rows.slice(0, maxVisualRows) : rows;\n\n\t\treturn rowsToRender.map((row: Row<TData>) => {\n\t\t\tconst rowData = row.original;\n\t\t\tconst key = getRowKey(rowData, rowKey);\n\n\t\t\tconst rowContent = row.getVisibleCells().map((cell) => (\n\t\t\t\t<TableCell\n\t\t\t\t\tkey={cell.id}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"p-2 py-1\",\n\t\t\t\t\t\tdividingColumnKey?.includes(cell.column.id) && \"border-r\",\n\t\t\t\t\t\tcell.column.columnDef.meta?.className,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t</TableCell>\n\t\t\t));\n\n\t\t\tconst baseRow = (\n\t\t\t\t<TableRow data-state={row.getIsSelected() && \"selected\"} className={cn(\"even:bg-body/50\")}>\n\t\t\t\t\t{rowContent}\n\t\t\t\t</TableRow>\n\t\t\t);\n\n\t\t\tconst wrappedRow = renderTooltip ? renderTooltip(row, rowContent) : baseRow;\n\n\t\t\treturn (\n\t\t\t\t<SortableItem key={row.id} value={key} asChild>\n\t\t\t\t\t{wrappedRow}\n\t\t\t\t</SortableItem>\n\t\t\t);\n\t\t});\n\t};\n\n\tconst [activeId, setActiveId] = React.useState<string | null>(null);\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: <useMemo>\n\tconst siblings = React.useMemo(() => {\n\t\tif (!activeId)\n\t\t\treturn table.getRowModel().rows.map((row) => ({\n\t\t\t\t...row.original,\n\t\t\t\tid: getRowKey(row.original, rowKey),\n\t\t\t}));\n\n\t\tconst activeRow = table\n\t\t\t.getRowModel()\n\t\t\t.rows.find((row) => getRowKey(row.original, rowKey) === activeId);\n\t\tif (!activeRow) return [];\n\n\t\tconst parentId = activeRow.parentId;\n\n\t\treturn table\n\t\t\t.getRowModel()\n\t\t\t.rows.filter((row) => row.parentId === parentId)\n\t\t\t.map((row) => ({\n\t\t\t\t...row.original,\n\t\t\t\tid: getRowKey(row.original, rowKey),\n\t\t\t}));\n\t}, [activeId, table.getRowModel().rows, rowKey]);\n\n\tconst internalHandleDragStart = (event: DragStartEvent) => {\n\t\tsetActiveId(event.active.id as string);\n\t};\n\n\tconst internalHandleDragEnd = (event: DragEndEvent) => {\n\t\tsetActiveId(null);\n\t\tconst { active, over } = event;\n\t\tif (!active || !over) return;\n\n\t\tconst sourceId = active.id;\n\t\tconst targetId = over.id;\n\t\tif (sourceId === targetId) return;\n\n\t\tconst tree: TreeData<TData>[] = newData.map((item) => ({\n\t\t\t...item,\n\t\t\tid: getRowKey(item, rowKey),\n\t\t}));\n\n\t\tconst source = findItemPath(tree, sourceId);\n\t\tconst target = findItemPath(tree, targetId);\n\n\t\tif (!source || !target) return;\n\n\t\t// -----------------------------\n\t\t// 🔒 1. TRAVAR MOVIMENTAÇÃO ENTRE NÍVEIS DIFERENTES\n\t\t// -----------------------------\n\n\t\tconst sourcePath = source.path;\n\t\tconst targetPath = target.path;\n\n\t\t// Pega o \"caminho do pai\" (remove o último índice, que é o índice do item em si)\n\t\tconst sourceParentPath = sourcePath.slice(0, -1);\n\t\tconst targetParentPath = targetPath.slice(0, -1);\n\n\t\t// Compara se os arrays são iguais (mesmo tamanho e mesmos valores)\n\t\tconst isSameParent =\n\t\t\tsourceParentPath.length === targetParentPath.length &&\n\t\t\tsourceParentPath.every((val, index) => val === targetParentPath[index]);\n\n\t\tif (!isSameParent) {\n\t\t\treturn;\n\t\t}\n\n\t\t// -----------------------------\n\t\t// 🔄 2. MOVIMENTO PERMITIDO → REORDENAR\n\t\t// -----------------------------\n\n\t\tconst removedItem = removeAtPath(tree, sourcePath);\n\n\t\tconst destPath = [...targetPath];\n\t\tdestPath[destPath.length - 1] = targetPath[targetPath.length - 1];\n\n\t\tinsertAtPath(tree, destPath, removedItem);\n\n\t\thandleValueChange(tree);\n\t};\n\n\tconst shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\tconst finalValue =\n\t\tpropValue ??\n\t\t(maxVisualRows\n\t\t\t? table.getRowModel().rows.slice(0, maxVisualRows)\n\t\t\t: table.getRowModel().rows\n\t\t).map((row) => ({\n\t\t\t...row.original,\n\t\t\tid: getRowKey(row.original, rowKey),\n\t\t}));\n\n\tconst finalOnValueChange = propOnValueChange ?? handleValueChange;\n\tconst finalOnDragStart = propOnDragStart ?? internalHandleDragStart;\n\tconst finalOnDragEnd = propOnDragEnd ?? internalHandleDragEnd;\n\n\treturn (\n\t\t<>\n\t\t\t<Sortable<TreeData<TData>>\n\t\t\t\tvalue={finalValue}\n\t\t\t\tcontextItems={siblings}\n\t\t\t\tonValueChange={finalOnValueChange}\n\t\t\t\tonDragStart={finalOnDragStart}\n\t\t\t\tonDragEnd={finalOnDragEnd}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"bg-background mx-1 h-full w-full rounded-md border whitespace-nowrap\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"relative w-full overflow-auto\",\n\t\t\t\t\t\t\tshouldForceMinHeight && \"force-min-height\",\n\t\t\t\t\t\t\tisScrollable && scrollMaxHeightClass && scrollMaxHeightClass,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Table>\n\t\t\t\t\t\t\t<TableHeader\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\tfixedHeader && \"bg-background sticky top-0 z-10 shadow-[0_1px_0_hsl(240_6%_90%)]\",\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: { id },\n\t\t\t\t\t\t\t\t\t\t\t\t} = header;\n\n\t\t\t\t\t\t\t\t\t\t\t\tconst isActionsColumn = [\"actions\", ...actionColumns].includes(id);\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdividingColumnKey?.includes(id) ? \"border-r\" : \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.className,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder ? null : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!isActionsColumn && header.column.getCanSort()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"flex w-fit items-center justify-start cursor-pointer gap-1 font-medium\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.meta?.headerClassName,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick: !isActionsColumn\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? header.column.getToggleSortingHandler()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(!isActionsColumn &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.getCanSort() &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tasc: <ArrowDownIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: <ArrowUpIcon className=\"h-3.5 w-3.5\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse: <CaretSortIcon className=\"h-4 w-4\" />,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}[header.column.getIsSorted() as string]) ?? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ArrowDownIcon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</TableHeader>\n\n\t\t\t\t\t\t\t<TableBody>{renderTableBodyContent()}</TableBody>\n\t\t\t\t\t\t</Table>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Sortable>\n\n\t\t\t{isScrollable ? null : isLoadingTable ? (\n\t\t\t\t<DataTablePaginationSkeleton />\n\t\t\t) : (\n\t\t\t\t<DataTablePagination\n\t\t\t\t\ttable={table}\n\t\t\t\t\tdataLabel={dataLabel}\n\t\t\t\t\tpageSizeOptions={pageSizeOptions}\n\t\t\t\t\tinfoExtraLabel={infoExtraLabel}\n\t\t\t\t\tshowPaginationControls={showPagination}\n\t\t\t\t\tshowDataLabel={showDataLabel}\n\t\t\t\t\tfooterAction={footerAction}\n\t\t\t\t\tmaxVisualRows={maxVisualRows}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { SearchIcon } from \"lucide-react\";\nimport { Input } from \"@/components/ui/input\";\n\ninterface DataTableSearchProps<TData> {\n\ttable: Table<TData>;\n\tkeySearch: string;\n\tplaceholder: string;\n}\n\nexport function DataTableSearch<TData>({\n\ttable,\n\tkeySearch,\n\tplaceholder,\n}: DataTableSearchProps<TData>) {\n\treturn (\n\t\t<div className=\"relative w-full max-w-sm\">\n\t\t\t<SearchIcon className=\"text-muted-foreground absolute top-3 left-3 h-4 w-4\" />\n\t\t\t<Input\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tvalue={(table.getColumn(keySearch)?.getFilterValue() as string) ?? \"\"}\n\t\t\t\tonChange={(event) => table.getColumn(keySearch)?.setFilterValue(event.target.value)}\n\t\t\t\tclassName=\"w-full pl-8 xl:w-80\"\n\t\t\t/>\n\t\t</div>\n\t);\n}\n","import React from \"react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableSkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n\t/**\n\t * The number of columns in the table.\n\t * @type number\n\t */\n\tcolumnCount: number;\n\n\t/**\n\t * The number of rows in the table.\n\t * @default 10\n\t * @type number | undefined\n\t */\n\trowCount?: number;\n\n\t/**\n\t * The number of searchable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tsearchableColumnCount?: number;\n\n\t/**\n\t * The number of filterable columns in the table.\n\t * @default 0\n\t * @type number | undefined\n\t */\n\tfilterableColumnCount?: number;\n\n\t/**\n\t * Flag to show the table view options.\n\t * @default undefined\n\t * @type boolean | undefined\n\t */\n\tshowViewOptions?: boolean;\n\n\t/**\n\t * The width of each cell in the table.\n\t * The length of the array should be equal to the columnCount.\n\t * Any valid CSS width value is accepted.\n\t * @default [\"auto\"]\n\t * @type string[] | undefined\n\t */\n\tcellWidths?: string[];\n\n\t/**\n\t * Flag to show the pagination bar.\n\t * @default true\n\t * @type boolean | undefined\n\t */\n\twithPagination?: boolean;\n\n\t/**\n\t * Flag to prevent the table cells from shrinking.\n\t * @default false\n\t * @type boolean | undefined\n\t */\n\tshrinkZero?: boolean;\n}\n\nexport function DataTableSkeleton(props: DataTableSkeletonProps) {\n\tconst {\n\t\tcolumnCount,\n\t\trowCount = 10,\n\t\tsearchableColumnCount = 0,\n\t\tfilterableColumnCount = 0,\n\t\tshowViewOptions = true,\n\t\tcellWidths = [\"auto\"],\n\t\twithPagination = true,\n\t\tshrinkZero = false,\n\t\tclassName,\n\t\t...skeletonProps\n\t} = props;\n\n\treturn (\n\t\t<div className={cn(\"w-full space-y-2.5 overflow-auto\", className)} {...skeletonProps}>\n\t\t\t<div className=\"flex w-full items-center justify-between space-x-2 overflow-auto p-1\">\n\t\t\t\t<div className=\"flex flex-1 items-center space-x-2\">\n\t\t\t\t\t{searchableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: searchableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-40 lg:w-60\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t\t{filterableColumnCount > 0\n\t\t\t\t\t\t? Array.from({ length: filterableColumnCount }).map((_, i) => (\n\t\t\t\t\t\t\t\t<Skeleton key={`${String(i)}`} className=\"h-7 w-[4.5rem] border-dashed\" />\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t: null}\n\t\t\t\t</div>\n\t\t\t\t{showViewOptions ? <Skeleton className=\"ml-auto hidden h-7 w-[4.5rem] lg:flex\" /> : null}\n\t\t\t</div>\n\t\t\t<div className=\"rounded-md border\">\n\t\t\t\t<Table>\n\t\t\t\t\t<TableHeader>\n\t\t\t\t\t\t{Array.from({ length: 1 }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody>\n\t\t\t\t\t\t{Array.from({ length: rowCount }).map((_, i) => (\n\t\t\t\t\t\t\t<TableRow key={`${String(i)}`} className=\"hover:bg-transparent\">\n\t\t\t\t\t\t\t\t{Array.from({ length: columnCount }).map((_, j) => (\n\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\tkey={`${String(j)}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth: cellWidths[j],\n\t\t\t\t\t\t\t\t\t\t\tminWidth: shrinkZero ? cellWidths[j] : \"auto\",\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Skeleton className=\"h-6 w-full\" />\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</Table>\n\t\t\t</div>\n\t\t\t{withPagination ? (\n\t\t\t\t<div className=\"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8\">\n\t\t\t\t\t<Skeleton className=\"h-7 w-40 shrink-0\" />\n\t\t\t\t\t<div className=\"flex items-center gap-4 sm:gap-6 lg:gap-8\">\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-24\" />\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-[4.5rem]\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center justify-center text-sm font-medium\">\n\t\t\t\t\t\t\t<Skeleton className=\"h-7 w-20\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex items-center space-x-2\">\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"size-7\" />\n\t\t\t\t\t\t\t<Skeleton className=\"hidden size-7 lg:block\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableStatusProps<TData, TEnum> {\n\ttable: Table<TData>;\n\tuniqueStatusValues: TEnum[];\n\trenderStatusMessage(status: TEnum): string;\n\tclassName?: string;\n}\n\nexport function DataTableStatus<TData, TEnum>({\n\ttable,\n\tuniqueStatusValues,\n\trenderStatusMessage,\n\tclassName,\n}: DataTableStatusProps<TData, TEnum>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\tconst currentFilter = table.getColumn(\"status\")?.getFilterValue() as TEnum | undefined;\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Filtre por status\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"border-input text-muted-foreground ring-offset-background placeholder:text-muted-foreground hover:text-muted-foreground focus:ring-ring flex h-9 w-full max-w-60 items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm hover:bg-inherit focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{currentFilter ? renderStatusMessage(currentFilter) : \"Todos os status\"}\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar status...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhum status encontrado.</CommandEmpty>\n\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\tkey=\"all\"\n\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(undefined)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"truncate\">Todos os status</span>\n\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t{uniqueStatusValues.map((item) => {\n\t\t\t\t\t\t\tif (!item) return null;\n\n\t\t\t\t\t\t\tconst statusMessage = renderStatusMessage(item as TEnum);\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\tkey={`${String(item)}`}\n\t\t\t\t\t\t\t\t\tonSelect={() => table.getColumn(\"status\")?.setFilterValue(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"truncate\">{statusMessage}</span>\n\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","\"use client\";\n\nimport type { Table } from \"@tanstack/react-table\";\nimport { Check, ChevronDownIcon } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface DataTableViewOptionsProps<TData> {\n\ttable: Table<TData>;\n\ttransformColumnName?: (id: string) => string;\n\tdisabled?: boolean;\n}\n\nexport function DataTableViewOptions<TData>({\n\ttable,\n\ttransformColumnName,\n\tdisabled,\n}: DataTableViewOptionsProps<TData>) {\n\tconst triggerRef = React.useRef<HTMLButtonElement>(null);\n\n\treturn (\n\t\t<Popover modal>\n\t\t\t<PopoverTrigger className=\"m-0\" asChild>\n\t\t\t\t<Button\n\t\t\t\t\tref={triggerRef}\n\t\t\t\t\taria-label=\"Toggle columns\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName=\"text-muted-foreground hover:text-muted-foreground w-full max-w-[12.5rem] items-center justify-between bg-inherit px-3 py-2 hover:bg-inherit\"\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t>\n\t\t\t\t\tColunas\n\t\t\t\t\t<ChevronDownIcon className=\"h-4 w-4\" />\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\talign=\"end\"\n\t\t\t\tclassName=\"w-44 p-0\"\n\t\t\t\tonCloseAutoFocus={() => triggerRef.current?.focus()}\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput placeholder=\"Pesquisar colunas...\" />\n\t\t\t\t\t<CommandList>\n\t\t\t\t\t\t<CommandEmpty>Nenhuma coluna encontrada.</CommandEmpty>\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{table\n\t\t\t\t\t\t\t\t.getAllColumns()\n\t\t\t\t\t\t\t\t.filter((column) => typeof column.accessorFn !== \"undefined\" && column.getCanHide())\n\t\t\t\t\t\t\t\t.map((column) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<CommandItem\n\t\t\t\t\t\t\t\t\t\t\tkey={column.id}\n\t\t\t\t\t\t\t\t\t\t\tonSelect={() => column.toggleVisibility(!column.getIsVisible())}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t{transformColumnName ? transformColumnName(column.id) : column.id}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<Check\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ml-auto size-4 shrink-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn.getIsVisible() ? \"opacity-100\" : \"opacity-0\",\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n"],"names":["__iconNode","DataTableFull","data","columns","transformIdToNameColumn","isLoading","dataLabel","messageEmpty","fileName","showPagination","config","buttonExportText","action","disabledAction","renderTooltip","infoExtraLabel","tableFilterNode","rowKey","appliedFiltersCount","table","isExportedTable","isViewOptions","isExportButtonGroup","disabledButtons","genericTabs","widthCurrentTab","currentTab","onTabChange","tabs","showDataLabel","loadingContent","setQueryParams","actionColumns","onDataChange","dividingColumnKey","pageSizeOptions","className","scrollMaxHeightClass","isScrollable","fixedHeader","footerAction","sortableValue","propValue","sortableOnValueChange","propOnValueChange","sortableOnDragStart","propOnDragStart","sortableOnDragEnd","propOnDragEnd","maxVisualRows","optionsExport","noResultsForFilter","React","Container","ChildContainer","div","GenericTabs","value","onNavigate","widthCurrent","DataTableViewOptions","transformColumnName","disabled","length","ExportButtons","options","buttonLabel","ButtonExportCsv","text","DataTableMainFrameSortable","isLoadingTable","p","flexRender","Comp","props","isReactComponent","createElement","component","isClassComponent","isExoticComponent","proto","Object","getPrototypeOf","prototype","$$typeof","includes","description","DataTablePagination","showPaginationControls","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","renderPageNumbers","items","maxVisiblePages","i","push","Button","variant","key","onClick","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","getRowModel","rows","toLocaleString","Select","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","placeholder","SelectContent","SelectItem","map","previousPage","getCanPreviousPage","aria-label","ChevronLeftIcon","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","cn","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","renderSubComponent","toString","sorting","useEffect","sortingParams","sortingBy","order","id","desc","prev","page","renderTableBodyContent","getAllColumns","colSpan","span","rowsToRender","slice","row","index","depth","rowContent","getVisibleCells","cell","content","column","columnDef","getContext","meta","rowWithTooltip","data-state","getIsSelected","Fragment","getIsExpanded","shouldForceMinHeight","tableContent","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","headerClassName","getToggleSortingHandler","undefined","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","findItemPath","tree","path","node","isArray","subRows","result","removeAtPath","ref","removed","splice","insertAtPath","item","getRowKey","newData","setNewData","useState","handleValueChange","updatedData","rowData","original","baseRow","wrappedRow","SortableItem","asChild","activeId","setActiveId","siblings","useMemo","activeRow","find","parentId","filter","internalHandleDragStart","event","active","internalHandleDragEnd","over","sourceId","targetId","source","target","sourcePath","targetPath","sourceParentPath","targetParentPath","isSameParent","every","val","removedItem","destPath","finalValue","finalOnValueChange","finalOnDragStart","finalOnDragEnd","Sortable","contextItems","onDragStart","onDragEnd","DataTableSearch","keySearch","SearchIcon","Input","getColumn","getFilterValue","onChange","setFilterValue","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","triggerRef","useRef","currentFilter","Popover","modal","PopoverTrigger","ChevronDownIcon","PopoverContent","align","onCloseAutoFocus","current","focus","Command","CommandInput","CommandList","CommandEmpty","CommandItem","onSelect","statusMessage","CommandGroup","accessorFn","getCanHide","toggleVisibility","getIsVisible","Check"],"mappings":"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","x_google_ignoreList":[0,1,3]}
|
|
@@ -27,7 +27,7 @@ interface DatePickerProps extends Omit<React__default.ComponentProps<typeof Cale
|
|
|
27
27
|
/** Data selecionada (pode ser Date ou string parseável) */
|
|
28
28
|
date: Date | string | undefined | null;
|
|
29
29
|
/** Função chamada ao selecionar uma data */
|
|
30
|
-
setDate: (date: Date | undefined
|
|
30
|
+
setDate: (date: Date | undefined) => void;
|
|
31
31
|
/** Texto exibido quando não há data selecionada */
|
|
32
32
|
placeholder?: string;
|
|
33
33
|
/** ID opcional do botão */
|
|
@@ -50,8 +50,13 @@ interface DatePickerProps extends Omit<React__default.ComponentProps<typeof Cale
|
|
|
50
50
|
* Por padrão, será o mês atual.
|
|
51
51
|
*/
|
|
52
52
|
defaultMonth?: Date;
|
|
53
|
+
/**
|
|
54
|
+
* Define se o botão de limpar (X) a data deve ser exibido.
|
|
55
|
+
* @default true
|
|
56
|
+
*/
|
|
57
|
+
clearable?: boolean;
|
|
53
58
|
}
|
|
54
|
-
declare function DatePicker({ date, setDate, placeholder, id, buttonProps, popoverProps, popoverContentClassName, className, disabled, defaultMonth, ...props }: DatePickerProps): react_jsx_runtime.JSX.Element;
|
|
59
|
+
declare function DatePicker({ date, setDate, placeholder, id, buttonProps, popoverProps, popoverContentClassName, className, disabled, defaultMonth, clearable, ...props }: DatePickerProps): react_jsx_runtime.JSX.Element;
|
|
55
60
|
|
|
56
61
|
export { DatePicker };
|
|
57
62
|
export type { DatePickerProps };
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
export { D as DatePicker } from '../chunks/date-picker-
|
|
1
|
+
export { D as DatePicker } from '../chunks/date-picker-BBCtT16G.mjs';
|
|
2
2
|
import 'react';
|
|
3
|
-
import '../chunks/utils-
|
|
4
|
-
import '../chunks/bundle-mjs-
|
|
5
|
-
import '../chunks/date-
|
|
6
|
-
import '../chunks/format-
|
|
7
|
-
import '../chunks/calendar-days-
|
|
8
|
-
import '../chunks/createLucideIcon-
|
|
9
|
-
import '../chunks/x-
|
|
10
|
-
import '../chunks/calendar-
|
|
11
|
-
import '../chunks/chevron-left-
|
|
12
|
-
import '../chunks/chevron-right-
|
|
13
|
-
import '../chunks/chevron-down-
|
|
14
|
-
import '../chunks/button-
|
|
3
|
+
import '../chunks/utils-BDcRwQMd.mjs';
|
|
4
|
+
import '../chunks/bundle-mjs-CXmmFvYo.mjs';
|
|
5
|
+
import '../chunks/date-Dqmv8Nr4.mjs';
|
|
6
|
+
import '../chunks/format-8qs-kXlN.mjs';
|
|
7
|
+
import '../chunks/calendar-days-DnYx8d46.mjs';
|
|
8
|
+
import '../chunks/createLucideIcon-C11Tr46U.mjs';
|
|
9
|
+
import '../chunks/x-B6hDJA_l.mjs';
|
|
10
|
+
import '../chunks/calendar-CDJv1B--.mjs';
|
|
11
|
+
import '../chunks/chevron-left-Baq244Ce.mjs';
|
|
12
|
+
import '../chunks/chevron-right-Dq6zFe5E.mjs';
|
|
13
|
+
import '../chunks/chevron-down-CDFTds2-.mjs';
|
|
14
|
+
import '../chunks/button-CZpmCmNo.mjs';
|
|
15
15
|
import '@radix-ui/react-slot';
|
|
16
16
|
import 'class-variance-authority';
|
|
17
|
-
import '../chunks/popover-
|
|
18
|
-
import '../chunks/index-
|
|
17
|
+
import '../chunks/popover-CdZgcLPo.mjs';
|
|
18
|
+
import '../chunks/index-Dsw02Eup.mjs';
|
|
19
19
|
import 'react-dom';
|
|
20
20
|
import 'react/jsx-runtime';
|
|
21
|
-
import '../chunks/index-
|
|
22
|
-
import '../chunks/index-
|
|
23
|
-
import '../chunks/index-
|
|
24
|
-
import '../chunks/index-
|
|
25
|
-
import '../chunks/tslib.es6-
|
|
26
|
-
import '../chunks/index-
|
|
27
|
-
import '../chunks/index-
|
|
28
|
-
import '../chunks/index-
|
|
29
|
-
import '../chunks/index-
|
|
30
|
-
import '../chunks/index-
|
|
31
|
-
import '../chunks/index-
|
|
32
|
-
import '../chunks/index-
|
|
21
|
+
import '../chunks/index-D4jPaBZ2.mjs';
|
|
22
|
+
import '../chunks/index-4NpeUekv.mjs';
|
|
23
|
+
import '../chunks/index-DC-gAYjS.mjs';
|
|
24
|
+
import '../chunks/index-z4Hk6sF4.mjs';
|
|
25
|
+
import '../chunks/tslib.es6-Q9puKanr.mjs';
|
|
26
|
+
import '../chunks/index-gX0V59dZ.mjs';
|
|
27
|
+
import '../chunks/index-C8u7IIcP.mjs';
|
|
28
|
+
import '../chunks/index-B87m6Bfb.mjs';
|
|
29
|
+
import '../chunks/index-DAa5gqEY.mjs';
|
|
30
|
+
import '../chunks/index-BksCjWh6.mjs';
|
|
31
|
+
import '../chunks/index-DfeRLazC.mjs';
|
|
32
|
+
import '../chunks/index-1toTCGyr.mjs';
|
|
33
33
|
//# sourceMappingURL=index.mjs.map
|
package/dist/dialog/index.mjs
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
export { D as Dialog, a as DialogClose, b as DialogContent, c as DialogDescription, d as DialogFooter, e as DialogHeader, f as DialogOverlay, g as DialogPortal, h as DialogTitle, i as DialogTrigger } from '../chunks/dialog-
|
|
2
|
-
import '../chunks/index-
|
|
1
|
+
export { D as Dialog, a as DialogClose, b as DialogContent, c as DialogDescription, d as DialogFooter, e as DialogHeader, f as DialogOverlay, g as DialogPortal, h as DialogTitle, i as DialogTrigger } from '../chunks/dialog-DL1cSseU.mjs';
|
|
2
|
+
import '../chunks/index-CaYwp6E6.mjs';
|
|
3
3
|
import 'react';
|
|
4
|
-
import '../chunks/index-
|
|
4
|
+
import '../chunks/index-Dsw02Eup.mjs';
|
|
5
5
|
import 'react-dom';
|
|
6
6
|
import '@radix-ui/react-slot';
|
|
7
7
|
import 'react/jsx-runtime';
|
|
8
|
-
import '../chunks/index-
|
|
9
|
-
import '../chunks/index-
|
|
10
|
-
import '../chunks/index-
|
|
11
|
-
import '../chunks/index-
|
|
12
|
-
import '../chunks/index-
|
|
13
|
-
import '../chunks/index-
|
|
14
|
-
import '../chunks/index-
|
|
15
|
-
import '../chunks/tslib.es6-
|
|
16
|
-
import '../chunks/index-
|
|
17
|
-
import '../chunks/index-
|
|
18
|
-
import '../chunks/utils-
|
|
19
|
-
import '../chunks/bundle-mjs-
|
|
20
|
-
import '../chunks/x-
|
|
21
|
-
import '../chunks/createLucideIcon-
|
|
8
|
+
import '../chunks/index-D4jPaBZ2.mjs';
|
|
9
|
+
import '../chunks/index-gX0V59dZ.mjs';
|
|
10
|
+
import '../chunks/index-C8u7IIcP.mjs';
|
|
11
|
+
import '../chunks/index-1toTCGyr.mjs';
|
|
12
|
+
import '../chunks/index-4NpeUekv.mjs';
|
|
13
|
+
import '../chunks/index-DC-gAYjS.mjs';
|
|
14
|
+
import '../chunks/index-z4Hk6sF4.mjs';
|
|
15
|
+
import '../chunks/tslib.es6-Q9puKanr.mjs';
|
|
16
|
+
import '../chunks/index-BksCjWh6.mjs';
|
|
17
|
+
import '../chunks/index-DfeRLazC.mjs';
|
|
18
|
+
import '../chunks/utils-BDcRwQMd.mjs';
|
|
19
|
+
import '../chunks/bundle-mjs-CXmmFvYo.mjs';
|
|
20
|
+
import '../chunks/x-B6hDJA_l.mjs';
|
|
21
|
+
import '../chunks/createLucideIcon-C11Tr46U.mjs';
|
|
22
22
|
//# sourceMappingURL=index.mjs.map
|