ivt 0.5.5 → 0.5.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.
Files changed (259) hide show
  1. package/dist/accordion/index.mjs +15 -15
  2. package/dist/accordion-table/index.mjs +27 -27
  3. package/dist/accordion-table/index.mjs.map +1 -1
  4. package/dist/alert/index.mjs +2 -2
  5. package/dist/alert/index.mjs.map +1 -1
  6. package/dist/alert-dialog/index.mjs +17 -17
  7. package/dist/aspect-ratio/index.mjs +1 -1
  8. package/dist/avatar/index.mjs +7 -7
  9. package/dist/badge/index.d.ts +1 -1
  10. package/dist/badge/index.mjs +3 -3
  11. package/dist/base/index.d.ts +42 -42
  12. package/dist/base/index.mjs +156 -156
  13. package/dist/base/index.mjs.map +1 -1
  14. package/dist/breadcrumb/index.mjs +5 -5
  15. package/dist/button/index.d.ts +1 -1
  16. package/dist/button/index.mjs +3 -3
  17. package/dist/button-group/index.d.ts +17 -4
  18. package/dist/button-group/index.mjs +50 -6
  19. package/dist/button-group/index.mjs.map +1 -1
  20. package/dist/calendar/index.mjs +9 -9
  21. package/dist/card/index.mjs +3 -3
  22. package/dist/carousel/index.mjs +7 -6
  23. package/dist/carousel/index.mjs.map +1 -1
  24. package/dist/chart/index.mjs +8 -8
  25. package/dist/chart/index.mjs.map +1 -1
  26. package/dist/checkbox/index.mjs +14 -14
  27. package/dist/chunks/{CalendarRange-BVXhHs-f.mjs → CalendarRange-B6J1x7Yy.mjs} +8 -8
  28. package/dist/chunks/CalendarRange-B6J1x7Yy.mjs.map +1 -0
  29. package/dist/chunks/{ComboboxField-D_0Y0A5H.mjs → ComboboxField-DKuq1AKZ.mjs} +9 -9
  30. package/dist/chunks/{ComboboxField-D_0Y0A5H.mjs.map → ComboboxField-DKuq1AKZ.mjs.map} +1 -1
  31. package/dist/chunks/{Container-D6PR2Pu_.mjs → Container-BxlDXTcp.mjs} +2 -2
  32. package/dist/chunks/{Container-D6PR2Pu_.mjs.map → Container-BxlDXTcp.mjs.map} +1 -1
  33. package/dist/chunks/{DeleteConfirmationModal-CVSYDAin.mjs → DeleteConfirmationModal-e65HVv-S.mjs} +4 -4
  34. package/dist/chunks/{DeleteConfirmationModal-CVSYDAin.mjs.map → DeleteConfirmationModal-e65HVv-S.mjs.map} +1 -1
  35. package/dist/chunks/{TooltipIndicator-BlKtr3wZ.mjs → TooltipIndicator-CN_auquL.mjs} +4 -4
  36. package/dist/chunks/{TooltipIndicator-BlKtr3wZ.mjs.map → TooltipIndicator-CN_auquL.mjs.map} +1 -1
  37. package/dist/chunks/{_commonjsHelpers-Re7bJArt.mjs → _commonjsHelpers-Dj8Kr2rQ.mjs} +1 -1
  38. package/dist/chunks/_commonjsHelpers-Dj8Kr2rQ.mjs.map +1 -0
  39. package/dist/chunks/{accordion-rwuuJZWp.mjs → accordion-ymmOEBfQ.mjs} +11 -11
  40. package/dist/chunks/{accordion-rwuuJZWp.mjs.map → accordion-ymmOEBfQ.mjs.map} +1 -1
  41. package/dist/chunks/{badge-CLlfU-QT.mjs → badge-Bdwyxw3I.mjs} +2 -2
  42. package/dist/chunks/{badge-CLlfU-QT.mjs.map → badge-Bdwyxw3I.mjs.map} +1 -1
  43. package/dist/chunks/{bundle-mjs-CWQvHGtg.mjs → bundle-mjs-CwF_jj9z.mjs} +1 -1
  44. package/dist/chunks/{bundle-mjs-CWQvHGtg.mjs.map → bundle-mjs-CwF_jj9z.mjs.map} +1 -1
  45. package/dist/chunks/{button-BOgyLhzN.mjs → button-BtNSgexc.mjs} +2 -2
  46. package/dist/chunks/{button-BOgyLhzN.mjs.map → button-BtNSgexc.mjs.map} +1 -1
  47. package/dist/chunks/{calendar-DVKfgF9Z.mjs → calendar-BzT7glLL.mjs} +476 -476
  48. package/dist/chunks/{calendar-DVKfgF9Z.mjs.map → calendar-BzT7glLL.mjs.map} +1 -1
  49. package/dist/chunks/{calendar-days-BbieAMGy.mjs → calendar-days-Dn7rqkMk.mjs} +2 -2
  50. package/dist/chunks/{calendar-days-BbieAMGy.mjs.map → calendar-days-Dn7rqkMk.mjs.map} +1 -1
  51. package/dist/chunks/{card-Dtdqzv51.mjs → card-CV6kQohd.mjs} +2 -2
  52. package/dist/chunks/{card-Dtdqzv51.mjs.map → card-CV6kQohd.mjs.map} +1 -1
  53. package/dist/chunks/{check-C2JQIEoK.mjs → check-TyRJdtqa.mjs} +2 -2
  54. package/dist/chunks/{check-C2JQIEoK.mjs.map → check-TyRJdtqa.mjs.map} +1 -1
  55. package/dist/chunks/{checkbox-CAeH5mYv.mjs → checkbox-2okt3zhD.mjs} +11 -11
  56. package/dist/chunks/{checkbox-CAeH5mYv.mjs.map → checkbox-2okt3zhD.mjs.map} +1 -1
  57. package/dist/chunks/{chevron-down-GNWj-PsJ.mjs → chevron-down-DPe3wUSx.mjs} +2 -2
  58. package/dist/chunks/{chevron-down-GNWj-PsJ.mjs.map → chevron-down-DPe3wUSx.mjs.map} +1 -1
  59. package/dist/chunks/{chevron-left-Ciw_Gg5L.mjs → chevron-left-Dr2znK-e.mjs} +2 -2
  60. package/dist/chunks/{chevron-left-Ciw_Gg5L.mjs.map → chevron-left-Dr2znK-e.mjs.map} +1 -1
  61. package/dist/chunks/{chevron-right-bGT4BvYz.mjs → chevron-right-DmVvAueL.mjs} +2 -2
  62. package/dist/chunks/{chevron-right-bGT4BvYz.mjs.map → chevron-right-DmVvAueL.mjs.map} +1 -1
  63. package/dist/chunks/{chevrons-up-down-BzxB-PsI.mjs → chevrons-up-down-Clez-9zt.mjs} +2 -2
  64. package/dist/chunks/{chevrons-up-down-BzxB-PsI.mjs.map → chevrons-up-down-Clez-9zt.mjs.map} +1 -1
  65. package/dist/chunks/{command-DgZmCZLh.mjs → command-EU3dDbf_.mjs} +8 -8
  66. package/dist/chunks/{command-DgZmCZLh.mjs.map → command-EU3dDbf_.mjs.map} +1 -1
  67. package/dist/chunks/{createLucideIcon-CHz-fHlL.mjs → createLucideIcon-PuoJamGs.mjs} +1 -1
  68. package/dist/chunks/{createLucideIcon-CHz-fHlL.mjs.map → createLucideIcon-PuoJamGs.mjs.map} +1 -1
  69. package/dist/chunks/{date-CQyUFwrr.mjs → date-BWzlXmaG.mjs} +2 -2
  70. package/dist/chunks/{date-CQyUFwrr.mjs.map → date-BWzlXmaG.mjs.map} +1 -1
  71. package/dist/chunks/{dialog-eFe5WShu.mjs → dialog-BMq_EiaM.mjs} +4 -4
  72. package/dist/chunks/{dialog-eFe5WShu.mjs.map → dialog-BMq_EiaM.mjs.map} +1 -1
  73. package/dist/chunks/{ellipsis-CVES-umj.mjs → ellipsis-D5nNS0KK.mjs} +2 -2
  74. package/dist/chunks/{ellipsis-CVES-umj.mjs.map → ellipsis-D5nNS0KK.mjs.map} +1 -1
  75. package/dist/chunks/{form-BDm5CO1Z.mjs → form-CfJLpjew.mjs} +3 -3
  76. package/dist/chunks/{form-BDm5CO1Z.mjs.map → form-CfJLpjew.mjs.map} +1 -1
  77. package/dist/chunks/{format-KTl_MBo2.mjs → format-Bkb4ydYM.mjs} +1 -1
  78. package/dist/chunks/{format-KTl_MBo2.mjs.map → format-Bkb4ydYM.mjs.map} +1 -1
  79. package/dist/chunks/{format-numbers-Drbc33yW.mjs → format-numbers-DY98wgq_.mjs} +1 -1
  80. package/dist/chunks/{format-numbers-Drbc33yW.mjs.map → format-numbers-DY98wgq_.mjs.map} +1 -1
  81. package/dist/chunks/{hover-card-B3lwPW8k.mjs → hover-card-gTAgs7UB.mjs} +11 -11
  82. package/dist/chunks/{hover-card-B3lwPW8k.mjs.map → hover-card-gTAgs7UB.mjs.map} +1 -1
  83. package/dist/chunks/{index-BbX-6yhg.mjs → index-B2rYWtDF.mjs} +3 -3
  84. package/dist/chunks/{index-BbX-6yhg.mjs.map → index-B2rYWtDF.mjs.map} +1 -1
  85. package/dist/chunks/{index-gnBADg3r.mjs → index-B3qNg03Q.mjs} +9 -9
  86. package/dist/chunks/{index-gnBADg3r.mjs.map → index-B3qNg03Q.mjs.map} +1 -1
  87. package/dist/chunks/{index-Dvmx4xV6.mjs → index-BRYOOGYt.mjs} +1 -1
  88. package/dist/chunks/{index-Dvmx4xV6.mjs.map → index-BRYOOGYt.mjs.map} +1 -1
  89. package/dist/chunks/{index-CH4hzQx8.mjs → index-B_Y9pqrY.mjs} +1 -1
  90. package/dist/chunks/{index-CH4hzQx8.mjs.map → index-B_Y9pqrY.mjs.map} +1 -1
  91. package/dist/chunks/{index-Dmxf1tuE.mjs → index-BdP_9M8C.mjs} +1 -1
  92. package/dist/chunks/{index-Dmxf1tuE.mjs.map → index-BdP_9M8C.mjs.map} +1 -1
  93. package/dist/chunks/{index-DEO2kkpO.mjs → index-BmNJQBZT.mjs} +1 -1
  94. package/dist/chunks/{index-DEO2kkpO.mjs.map → index-BmNJQBZT.mjs.map} +1 -1
  95. package/dist/chunks/{index-BKTFHAlc.mjs → index-C0_rzV0O.mjs} +1 -1
  96. package/dist/chunks/{index-BKTFHAlc.mjs.map → index-C0_rzV0O.mjs.map} +1 -1
  97. package/dist/chunks/{index-CJmlDCYz.mjs → index-C1gfRtpW.mjs} +1 -1
  98. package/dist/chunks/{index-CJmlDCYz.mjs.map → index-C1gfRtpW.mjs.map} +1 -1
  99. package/dist/chunks/{index-Bfr3QSR6.mjs → index-C9_8aC95.mjs} +7 -7
  100. package/dist/chunks/{index-Bfr3QSR6.mjs.map → index-C9_8aC95.mjs.map} +1 -1
  101. package/dist/chunks/{index-DsKPgtIv.mjs → index-CBE_CuM0.mjs} +5 -5
  102. package/dist/chunks/{index-DsKPgtIv.mjs.map → index-CBE_CuM0.mjs.map} +1 -1
  103. package/dist/chunks/{index-BYLxYdaE.mjs → index-CQlPyAtR.mjs} +15 -15
  104. package/dist/chunks/{index-BYLxYdaE.mjs.map → index-CQlPyAtR.mjs.map} +1 -1
  105. package/dist/chunks/{index-DbTcqBW_.mjs → index-CWjsfCPV.mjs} +2 -2
  106. package/dist/chunks/{index-DbTcqBW_.mjs.map → index-CWjsfCPV.mjs.map} +1 -1
  107. package/dist/chunks/{index-B9X_JCGT.mjs → index-CY7rSsKT.mjs} +2 -2
  108. package/dist/chunks/{index-B9X_JCGT.mjs.map → index-CY7rSsKT.mjs.map} +1 -1
  109. package/dist/chunks/{index-CeGdyziS.mjs → index-CZgLnzan.mjs} +1 -1
  110. package/dist/chunks/{index-CeGdyziS.mjs.map → index-CZgLnzan.mjs.map} +1 -1
  111. package/dist/chunks/{index-tRp8REyd.mjs → index-CjsV2E2h.mjs} +11 -11
  112. package/dist/chunks/{index-tRp8REyd.mjs.map → index-CjsV2E2h.mjs.map} +1 -1
  113. package/dist/chunks/{index-Cu3VwLIM.mjs → index-DH87EZ4W.mjs} +1 -1
  114. package/dist/chunks/{index-Cu3VwLIM.mjs.map → index-DH87EZ4W.mjs.map} +1 -1
  115. package/dist/chunks/{index-BQDEr8RX.mjs → index-DPl20FvM.mjs} +2 -2
  116. package/dist/chunks/{index-BQDEr8RX.mjs.map → index-DPl20FvM.mjs.map} +1 -1
  117. package/dist/chunks/{Combination-D2wzO_UG.mjs → index-DRuAMnOw.mjs} +168 -168
  118. package/dist/chunks/index-DRuAMnOw.mjs.map +1 -0
  119. package/dist/chunks/{index-eKeyN0nu.mjs → index-KLdt0FXh.mjs} +3 -3
  120. package/dist/chunks/{index-eKeyN0nu.mjs.map → index-KLdt0FXh.mjs.map} +1 -1
  121. package/dist/chunks/{index-CurKYqyH.mjs → index-O_vhyjqe.mjs} +1 -1
  122. package/dist/chunks/{index-CurKYqyH.mjs.map → index-O_vhyjqe.mjs.map} +1 -1
  123. package/dist/chunks/{index-BAW1lHJl.mjs → index-ZFl1NRtT.mjs} +9 -9
  124. package/dist/chunks/{index-BAW1lHJl.mjs.map → index-ZFl1NRtT.mjs.map} +1 -1
  125. package/dist/chunks/{index-Rj7dd-Qd.mjs → index-bkyl4p2E.mjs} +1 -1
  126. package/dist/chunks/{index-Rj7dd-Qd.mjs.map → index-bkyl4p2E.mjs.map} +1 -1
  127. package/dist/chunks/{index-D1-1o3ca.mjs → index-t0_4qi-T.mjs} +2 -2
  128. package/dist/chunks/{index-D1-1o3ca.mjs.map → index-t0_4qi-T.mjs.map} +1 -1
  129. package/dist/chunks/{input-BK_g0H-A.mjs → input-C3fkPeG_.mjs} +2 -2
  130. package/dist/chunks/{input-BK_g0H-A.mjs.map → input-C3fkPeG_.mjs.map} +1 -1
  131. package/dist/chunks/{label-Dh5EXQG3.mjs → label-ClO7_a3V.mjs} +3 -3
  132. package/dist/chunks/{label-Dh5EXQG3.mjs.map → label-ClO7_a3V.mjs.map} +1 -1
  133. package/dist/chunks/{loader-circle-HdVl9gTK.mjs → loader-circle-BqBrcqkQ.mjs} +2 -2
  134. package/dist/chunks/{loader-circle-HdVl9gTK.mjs.map → loader-circle-BqBrcqkQ.mjs.map} +1 -1
  135. package/dist/chunks/{multi-select-zxgO9_FK.mjs → multi-select-DljYuXa4.mjs} +12 -12
  136. package/dist/chunks/{multi-select-zxgO9_FK.mjs.map → multi-select-DljYuXa4.mjs.map} +1 -1
  137. package/dist/chunks/{pagination-Cotft18P.mjs → pagination-D7L2vbck.mjs} +6 -6
  138. package/dist/chunks/{pagination-Cotft18P.mjs.map → pagination-D7L2vbck.mjs.map} +1 -1
  139. package/dist/chunks/{popover-BGTLw9yg.mjs → popover-C1aNGeey.mjs} +13 -13
  140. package/dist/chunks/{popover-BGTLw9yg.mjs.map → popover-C1aNGeey.mjs.map} +1 -1
  141. package/dist/chunks/{progress-DBlI7uQi.mjs → progress-D0vzug-J.mjs} +4 -4
  142. package/dist/chunks/{progress-DBlI7uQi.mjs.map → progress-D0vzug-J.mjs.map} +1 -1
  143. package/dist/chunks/{react-number-format.es-CMk_daKs.mjs → react-number-format.es-BebBtQNl.mjs} +1 -1
  144. package/dist/chunks/{react-number-format.es-CMk_daKs.mjs.map → react-number-format.es-BebBtQNl.mjs.map} +1 -1
  145. package/dist/chunks/{scroll-area-WahR-NAJ.mjs → scroll-area-DnOrBNhw.mjs} +11 -11
  146. package/dist/chunks/{scroll-area-WahR-NAJ.mjs.map → scroll-area-DnOrBNhw.mjs.map} +1 -1
  147. package/dist/chunks/{select-B9KImN17.mjs → select-DZFrWKa9.mjs} +5 -5
  148. package/dist/chunks/{select-B9KImN17.mjs.map → select-DZFrWKa9.mjs.map} +1 -1
  149. package/dist/chunks/{separator-Nw9XSF7S.mjs → separator-Cy1u4QGj.mjs} +3 -3
  150. package/dist/chunks/{separator-Nw9XSF7S.mjs.map → separator-Cy1u4QGj.mjs.map} +1 -1
  151. package/dist/chunks/{sheet-BUhlccXr.mjs → sheet-UhlywLCQ.mjs} +4 -4
  152. package/dist/chunks/{sheet-BUhlccXr.mjs.map → sheet-UhlywLCQ.mjs.map} +1 -1
  153. package/dist/chunks/{skeleton-DJUPQDI3.mjs → skeleton-CAkZfLJU.mjs} +2 -2
  154. package/dist/chunks/skeleton-CAkZfLJU.mjs.map +1 -0
  155. package/dist/chunks/{sortable-BbcW1b3f.mjs → sortable-CqaoTR3I.mjs} +14 -8
  156. package/dist/chunks/{sortable-BbcW1b3f.mjs.map → sortable-CqaoTR3I.mjs.map} +1 -1
  157. package/dist/chunks/{table-CPHEPhht.mjs → table-DtYzDvg1.mjs} +3 -3
  158. package/dist/chunks/{table-CPHEPhht.mjs.map → table-DtYzDvg1.mjs.map} +1 -1
  159. package/dist/chunks/{textarea-IsazgcBS.mjs → textarea-DnLcBKio.mjs} +2 -2
  160. package/dist/chunks/{textarea-IsazgcBS.mjs.map → textarea-DnLcBKio.mjs.map} +1 -1
  161. package/dist/chunks/{toggle-DIVWhWr_.mjs → toggle-DCO007-l.mjs} +5 -5
  162. package/dist/chunks/{toggle-DIVWhWr_.mjs.map → toggle-DCO007-l.mjs.map} +1 -1
  163. package/dist/chunks/{tooltip-BlwaLQuC.mjs → tooltip-Dyp4dubr.mjs} +13 -13
  164. package/dist/chunks/{tooltip-BlwaLQuC.mjs.map → tooltip-Dyp4dubr.mjs.map} +1 -1
  165. package/dist/chunks/{trash-2-CWR4QHjL.mjs → trash-2-ImUsqVCq.mjs} +2 -2
  166. package/dist/chunks/{trash-2-CWR4QHjL.mjs.map → trash-2-ImUsqVCq.mjs.map} +1 -1
  167. package/dist/chunks/{triangle-alert-CQ6V4_pV.mjs → triangle-alert-gCMT5OAG.mjs} +2 -2
  168. package/dist/chunks/{triangle-alert-CQ6V4_pV.mjs.map → triangle-alert-gCMT5OAG.mjs.map} +1 -1
  169. package/dist/chunks/{tslib.es6-BqS_Tuh7.mjs → tslib.es6-SGuOiL7t.mjs} +1 -1
  170. package/dist/chunks/{tslib.es6-BqS_Tuh7.mjs.map → tslib.es6-SGuOiL7t.mjs.map} +1 -1
  171. package/dist/chunks/{utils-DbWlhojh.mjs → utils-Cbs-uxBq.mjs} +2 -2
  172. package/dist/chunks/{utils-DbWlhojh.mjs.map → utils-Cbs-uxBq.mjs.map} +1 -1
  173. package/dist/chunks/{x-BvNSIFOu.mjs → x-dyn358tn.mjs} +2 -2
  174. package/dist/chunks/{x-BvNSIFOu.mjs.map → x-dyn358tn.mjs.map} +1 -1
  175. package/dist/collapsible/index.mjs +9 -9
  176. package/dist/combobox/index.mjs +26 -26
  177. package/dist/command/index.mjs +20 -20
  178. package/dist/context-menu/index.mjs +23 -23
  179. package/dist/dash/index.d.ts +6 -6
  180. package/dist/dash/index.mjs +34 -34
  181. package/dist/dash/index.mjs.map +1 -1
  182. package/dist/data-table/index.d.ts +50 -40
  183. package/dist/data-table/index.mjs +328 -214
  184. package/dist/data-table/index.mjs.map +1 -1
  185. package/dist/date-picker/index.d.ts +1 -1
  186. package/dist/date-picker/index.mjs +27 -27
  187. package/dist/date-picker/index.mjs.map +1 -1
  188. package/dist/dialog/index.mjs +19 -19
  189. package/dist/drawer/index.mjs +16 -16
  190. package/dist/dropdown-menu/index.mjs +23 -23
  191. package/dist/dropdown-menu/index.mjs.map +1 -1
  192. package/dist/dropzone/index.mjs +193 -193
  193. package/dist/dropzone/index.mjs.map +1 -1
  194. package/dist/editable-table/index.mjs +12 -10
  195. package/dist/editable-table/index.mjs.map +1 -1
  196. package/dist/empty/index.mjs +2 -2
  197. package/dist/empty/index.mjs.map +1 -1
  198. package/dist/field/index.mjs +8 -7
  199. package/dist/field/index.mjs.map +1 -1
  200. package/dist/form/index.mjs +5 -5
  201. package/dist/form-fields/index.mjs +28 -28
  202. package/dist/hover-card/index.mjs +15 -15
  203. package/dist/icon/index.mjs +1 -1
  204. package/dist/index.css +1 -1
  205. package/dist/input/index.mjs +3 -3
  206. package/dist/input-group/index.mjs +12 -9
  207. package/dist/input-group/index.mjs.map +1 -1
  208. package/dist/input-otp/index.mjs +3 -3
  209. package/dist/item/index.mjs +7 -6
  210. package/dist/item/index.mjs.map +1 -1
  211. package/dist/ivt.css +1 -1
  212. package/dist/kbd/index.mjs +2 -2
  213. package/dist/kbd/index.mjs.map +1 -1
  214. package/dist/label/index.mjs +4 -4
  215. package/dist/layout/index.mjs +6 -6
  216. package/dist/layout/index.mjs.map +1 -1
  217. package/dist/menubar/index.mjs +23 -23
  218. package/dist/multi-select/index.mjs +31 -31
  219. package/dist/navigation-menu/index.mjs +17 -17
  220. package/dist/pagination/index.d.ts +1 -1
  221. package/dist/pagination/index.mjs +8 -8
  222. package/dist/popover/index.mjs +18 -18
  223. package/dist/progress/index.mjs +5 -5
  224. package/dist/radio-group/index.mjs +17 -17
  225. package/dist/resizable/index.mjs +3 -3
  226. package/dist/scroll-area/index.mjs +12 -12
  227. package/dist/select/index.mjs +6 -6
  228. package/dist/separator/index.mjs +4 -4
  229. package/dist/shared/index.d.ts +1 -1
  230. package/dist/shared/index.mjs +6 -6
  231. package/dist/shared/index.mjs.map +1 -1
  232. package/dist/sheet/index.mjs +19 -19
  233. package/dist/sidebar/index.mjs +28 -28
  234. package/dist/sidebar/index.mjs.map +1 -1
  235. package/dist/skeleton/index.mjs +3 -3
  236. package/dist/skeleton-component/index.mjs +4 -4
  237. package/dist/skeleton-component/index.mjs.map +1 -1
  238. package/dist/slider/index.mjs +12 -12
  239. package/dist/sortable/index.d.ts +7 -1
  240. package/dist/sortable/index.mjs +4 -4
  241. package/dist/spinner/index.mjs +4 -4
  242. package/dist/switch/index.mjs +10 -10
  243. package/dist/table/index.mjs +3 -3
  244. package/dist/table-filter/index.d.ts +1 -1
  245. package/dist/table-filter/index.mjs +52 -52
  246. package/dist/table-filter/index.mjs.map +1 -1
  247. package/dist/tabs/index.mjs +13 -13
  248. package/dist/tabs/index.mjs.map +1 -1
  249. package/dist/textarea/index.mjs +3 -3
  250. package/dist/toast/index.mjs +15 -15
  251. package/dist/toast/index.mjs.map +1 -1
  252. package/dist/toggle/index.mjs +7 -7
  253. package/dist/toggle-group/index.mjs +13 -13
  254. package/dist/tooltip/index.mjs +17 -17
  255. package/package.json +462 -462
  256. package/dist/chunks/CalendarRange-BVXhHs-f.mjs.map +0 -1
  257. package/dist/chunks/Combination-D2wzO_UG.mjs.map +0 -1
  258. package/dist/chunks/_commonjsHelpers-Re7bJArt.mjs.map +0 -1
  259. package/dist/chunks/skeleton-DJUPQDI3.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/DataTableViewOptions.tsx","../../src/components/default/data-table/DataTableSearch.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/components/default/data-table/DataTableSkeleton.tsx","../../src/components/default/data-table/DataTableStatus.tsx","../../src/components/default/data-table/DataTableMainFrameSortable.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","\"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 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","\"use client\";\n\nimport { Input } from \"@/components/ui/input\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { SearchIcon } from \"lucide-react\";\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","/**\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\";\n\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\";\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\ninterface DataTablePaginationProps<TData> {\n\ttable: Table<TData>;\n\tpageSizeOptions?: number[];\n\tdataLabel?: string;\n\tinfoExtraLabel?: React.ReactNode;\n}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n\tinfoExtraLabel,\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\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<div className=\"text-muted-foreground flex gap-1 text-sm\">\n\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\tMostrando {table.getRowModel().rows.length.toLocaleString()} de {rowCount} {dataLabel}.{\" \"}\n\t\t\t\t\t{infoExtraLabel && infoExtraLabel}\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Select\n\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t>\n\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{pageSizeOptions.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)}\n\t\t\t\t\t</SelectContent>\n\t\t\t\t</Select>\n\n\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\tAnterior\n\t\t\t\t\t</Button>\n\n\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { Skeleton } from \"@/components/ui/skeleton\";\nimport { cn } from \"@/lib/utils\";\nimport React from \"react\";\n\nexport const DataTablePaginationSkeleton: React.FC = ({\n\tclassName,\n}: {\n\tclassName?: string;\n}) => {\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 { Skeleton } from \"@/components/ui/skeleton\";\nimport { TableCell, TableRow } from \"@/components/ui/table\";\nimport React from \"react\";\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 {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\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 { 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\tinfoExtraLabel?: React.ReactNode;\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\trenderTooltip,\n\tinfoExtraLabel,\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\treturn table.getRowModel().rows.map((row: Row<TData>, index) => {\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(\"p-2\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\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 rowWithTooltip;\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(dividingColumnKey?.includes(id) ? \"border-r\" : \"\", \"static\")}\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:\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\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 || !showPagination ? 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/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n","import { 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\";\nimport React from \"react\";\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 { 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\";\nimport type { Table } from \"@tanstack/react-table\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport React from \"react\";\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-10 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 { 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 { 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 { 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}\n\ntype RowData = {\n\t// biome-ignore lint/suspicious/noExplicitAny: <explanation>\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\trenderTooltip,\n\tinfoExtraLabel,\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\t\tonDataChange?.(updatedData);\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\treturn table.getRowModel().rows.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(\"p-2 py-1\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\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 shouldForceMinHeight = table.getRowModel().rows.length > 1 || isLoadingTable;\n\n\treturn (\n\t\t<>\n\t\t\t<Sortable\n\t\t\t\tvalue={newData.map((item) => ({\n\t\t\t\t\t...item,\n\t\t\t\t\tid: getRowKey(item, rowKey),\n\t\t\t\t}))}\n\t\t\t\tonValueChange={handleValueChange}\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={dividingColumnKey?.includes(id) ? \"border-r\" : \"\"}\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<>\n\t\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\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName:\n\t\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\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\t: \"\",\n\t\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\t? header.column.getToggleSortingHandler()\n\t\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\t}}\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\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\t{(!isActionsColumn &&\n\t\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\t{\n\t\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\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\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\t}[header.column.getIsSorted() as string]) ?? (\n\t\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\t)}\n\t\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</>\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 || !showPagination ? 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/>\n\t\t\t)}\n\t\t</>\n\t);\n};\n"],"names":["__iconNode","DataTableViewOptions","table","transformColumnName","disabled","triggerRef","React","useRef","Popover","modal","PopoverTrigger","asChild","Button","ref","aria-label","variant","className","ChevronDownIcon","PopoverContent","align","onCloseAutoFocus","current","focus","Command","CommandInput","placeholder","CommandList","CommandEmpty","CommandGroup","getAllColumns","filter","column","accessorFn","getCanHide","map","CommandItem","key","id","onSelect","toggleVisibility","getIsVisible","span","Check","cn","DataTableSearch","keySearch","div","SearchIcon","Input","value","getColumn","getFilterValue","onChange","event","setFilterValue","target","flexRender","Comp","props","isReactComponent","createElement","component","isClassComponent","isExoticComponent","proto","Object","getPrototypeOf","prototype","$$typeof","includes","description","DataTablePagination","pageSizeOptions","dataLabel","infoExtraLabel","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","renderPageNumbers","items","maxVisiblePages","i","push","onClick","setPageIndex","start","max","min","end","PaginationItem","PaginationEllipsis","p","getRowModel","rows","length","toLocaleString","Select","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","SelectContent","SelectItem","previousPage","getCanPreviousPage","ChevronLeftIcon","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","columns","isLoadingTable","loadingContent","setQueryParams","actionColumns","messageEmpty","dividingColumnKey","scrollMaxHeightClass","isScrollable","fixedHeader","showPagination","renderTooltip","toString","sorting","useEffect","sortingParams","sortingBy","order","desc","prev","page","renderTableBodyContent","colSpan","row","index","rowKey","rowContent","getVisibleCells","cell","content","columnDef","getContext","rowWithTooltip","data-state","getIsSelected","shouldForceMinHeight","tableContent","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","getToggleSortingHandler","undefined","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","DataTableSkeleton","searchableColumnCount","filterableColumnCount","showViewOptions","withPagination","skeletonProps","DataTableStatus","uniqueStatusValues","renderStatusMessage","currentFilter","item","statusMessage","getRowKey","isArray","DataTableMainFrameSortable","data","onDataChange","newData","setNewData","useState","handleValueChange","updatedData","rowData","original","baseRow","wrappedRow","SortableItem","Sortable"],"mappings":"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","x_google_ignoreList":[0,1,4]}
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","../../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","/**\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}\n\nexport function DataTablePagination<TData>({\n\ttable,\n\tpageSizeOptions = [20, 30, 50, 100, 200],\n\tdataLabel = \"Fundos\",\n\tinfoExtraLabel,\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\treturn (\n\t\t<div className=\"mt-4 flex flex-wrap items-center justify-between gap-2\">\n\t\t\t<div className=\"text-muted-foreground flex gap-1 text-sm\">\n\t\t\t\t<p className=\"ml-2\">\n\t\t\t\t\tMostrando {table.getRowModel().rows.length.toLocaleString()} de {rowCount} {dataLabel}.{\" \"}\n\t\t\t\t\t{infoExtraLabel && infoExtraLabel}\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div className=\"flex flex-wrap items-center justify-between gap-2 gap-y-4\">\n\t\t\t\t<Select\n\t\t\t\t\tvalue={String(table.getState().pagination.pageSize) || String(pageSize)}\n\t\t\t\t\tonValueChange={(value) => table.setPageSize(Number(value))}\n\t\t\t\t>\n\t\t\t\t\t<SelectTrigger className=\"w-fit\">\n\t\t\t\t\t\t<SelectValue\n\t\t\t\t\t\t\tplaceholder={`Mostrar ${table.getState().pagination.pageSize || pageSize}`}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t{rowCount && (rowCount === 0 || rowCount < pageSize) ? (\n\t\t\t\t\t\t\t<SelectItem value={String(pageSize)}>Mostrar {pageSize}</SelectItem>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tpageSizeOptions.map((pageSize) => (\n\t\t\t\t\t\t\t\t<SelectItem key={pageSize} value={String(pageSize)}>\n\t\t\t\t\t\t\t\t\tMostrar {pageSize}\n\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SelectContent>\n\t\t\t\t</Select>\n\n\t\t\t\t<div className=\"flex flex-wrap gap-2 gap-y-4\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.previousPage()}\n\t\t\t\t\t\tdisabled={!table.getCanPreviousPage()}\n\t\t\t\t\t\taria-label=\"Ir para página anterior\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t\tAnterior\n\t\t\t\t\t</Button>\n\n\t\t\t\t\t<div className=\"flex gap-2\">{renderPageNumbers()}</div>\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\tonClick={() => table.nextPage()}\n\t\t\t\t\t\tdisabled={!table.getCanNextPage()}\n\t\t\t\t\t\taria-label=\"Ir para próxima página\"\n\t\t\t\t\t\tclassName=\"gap-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\tPróximo\n\t\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\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\tinfoExtraLabel?: React.ReactNode;\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\trenderTooltip,\n\tinfoExtraLabel,\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\treturn table.getRowModel().rows.map((row: Row<TData>, index) => {\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(\"p-2\", dividingColumnKey?.includes(cell.column.id) && \"border-r\")}\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 rowWithTooltip;\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(dividingColumnKey?.includes(id) ? \"border-r\" : \"\", \"static\")}\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:\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\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 || !showPagination ? 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/>\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\t// Sortable props\n\tsortableValue?: TreeData<TData>[];\n\tsortableOnValueChange?: (items: TreeData<TData>[]) => void;\n\tsortableOnDragStart?: (event: DragStartEvent) => void;\n\tsortableOnDragEnd?: (event: DragEndEvent) => void;\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\trenderTooltip,\n\tinfoExtraLabel,\n\n\tsortableValue: propValue,\n\tsortableOnValueChange: propOnValueChange,\n\tsortableOnDragStart: propOnDragStart,\n\tsortableOnDragEnd: propOnDragEnd,\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\treturn table.getRowModel().rows.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\ttable.getRowModel().rows.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:\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\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 || !showPagination ? 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/>\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-10 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 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","flexRender","Comp","props","isReactComponent","React","createElement","component","isClassComponent","isExoticComponent","proto","Object","getPrototypeOf","prototype","$$typeof","includes","description","DataTablePagination","table","pageSizeOptions","dataLabel","infoExtraLabel","pageSize","currentPage","getState","pagination","pageIndex","rowCount","getRowCount","totalPageCount","Math","ceil","renderPageNumbers","items","maxVisiblePages","i","push","Button","variant","key","onClick","setPageIndex","className","start","max","min","end","PaginationItem","PaginationEllipsis","div","p","getRowModel","rows","length","toLocaleString","Select","value","String","onValueChange","setPageSize","Number","SelectTrigger","SelectValue","placeholder","SelectContent","SelectItem","map","previousPage","disabled","getCanPreviousPage","aria-label","ChevronLeftIcon","nextPage","getCanNextPage","ChevronRightIcon","DataTablePaginationSkeleton","Skeleton","cn","DataTableRowSkeleton","columnCount","cellWidths","shrinkZero","Array","from","_","TableRow","j","TableCell","style","width","minWidth","DataTableMainFrame","columns","isLoadingTable","loadingContent","setQueryParams","actionColumns","messageEmpty","dividingColumnKey","scrollMaxHeightClass","isScrollable","fixedHeader","showPagination","renderTooltip","toString","sorting","useEffect","sortingParams","sortingBy","order","id","desc","prev","page","renderTableBodyContent","getAllColumns","colSpan","span","row","index","rowKey","rowContent","getVisibleCells","cell","content","column","columnDef","getContext","rowWithTooltip","data-state","getIsSelected","shouldForceMinHeight","tableContent","Table","TableHeader","getHeaderGroups","headerGroup","headers","header","isActionsColumn","TableHead","isPlaceholder","getCanSort","getToggleSortingHandler","undefined","asc","ArrowDownIcon","ArrowUpIcon","false","CaretSortIcon","getIsSorted","TableBody","findItemPath","tree","path","node","isArray","subRows","result","removeAtPath","ref","removed","splice","insertAtPath","item","getRowKey","DataTableMainFrameSortable","data","onDataChange","sortableValue","propValue","sortableOnValueChange","propOnValueChange","sortableOnDragStart","propOnDragStart","sortableOnDragEnd","propOnDragEnd","newData","setNewData","useState","handleValueChange","updatedData","rowData","original","meta","baseRow","wrappedRow","SortableItem","asChild","activeId","setActiveId","siblings","useMemo","activeRow","find","parentId","filter","internalHandleDragStart","event","active","internalHandleDragEnd","over","sourceId","targetId","source","target","sourcePath","targetPath","sourceParentPath","slice","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","DataTableViewOptions","transformColumnName","CommandGroup","accessorFn","getCanHide","toggleVisibility","getIsVisible","Check"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,8 +1,8 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default from 'react';
2
3
  import { ButtonProps } from '../button/index.js';
3
4
  import { Calendar } from '../calendar/index.js';
4
5
  import { Popover } from '../popover/index.js';
5
- import React__default from 'react';
6
6
  import 'class-variance-authority/types';
7
7
  import 'class-variance-authority';
8
8
  import 'react-day-picker';
@@ -1,35 +1,35 @@
1
- import { c as cn } from '../chunks/utils-DbWlhojh.mjs';
2
- import { t as tryParseDate, p as ptBR } from '../chunks/date-CQyUFwrr.mjs';
3
1
  import React__default from 'react';
4
- import { C as CalendarDays } from '../chunks/calendar-days-BbieAMGy.mjs';
5
- import { P as Popover, a as PopoverTrigger, b as PopoverContent } from '../chunks/popover-BGTLw9yg.mjs';
6
- import { B as Button } from '../chunks/button-BOgyLhzN.mjs';
7
- import { f as format } from '../chunks/format-KTl_MBo2.mjs';
8
- import { C as Calendar } from '../chunks/calendar-DVKfgF9Z.mjs';
9
- import '../chunks/bundle-mjs-CWQvHGtg.mjs';
10
- import '../chunks/createLucideIcon-CHz-fHlL.mjs';
11
- import '../chunks/index-CJmlDCYz.mjs';
12
- import '../chunks/index-Dmxf1tuE.mjs';
13
- import '../chunks/index-DEO2kkpO.mjs';
2
+ import { c as cn } from '../chunks/utils-Cbs-uxBq.mjs';
3
+ import { t as tryParseDate, p as ptBR } from '../chunks/date-BWzlXmaG.mjs';
4
+ import { C as CalendarDays } from '../chunks/calendar-days-Dn7rqkMk.mjs';
5
+ import { P as Popover, a as PopoverTrigger, b as PopoverContent } from '../chunks/popover-C1aNGeey.mjs';
6
+ import { B as Button } from '../chunks/button-BtNSgexc.mjs';
7
+ import { f as format } from '../chunks/format-Bkb4ydYM.mjs';
8
+ import { C as Calendar } from '../chunks/calendar-BzT7glLL.mjs';
9
+ import '../chunks/bundle-mjs-CwF_jj9z.mjs';
10
+ import '../chunks/createLucideIcon-PuoJamGs.mjs';
11
+ import '../chunks/index-C1gfRtpW.mjs';
12
+ import '../chunks/index-BdP_9M8C.mjs';
13
+ import '../chunks/index-BmNJQBZT.mjs';
14
14
  import 'react/jsx-runtime';
15
- import '../chunks/index-DsKPgtIv.mjs';
16
- import '../chunks/index-Cu3VwLIM.mjs';
15
+ import '../chunks/index-CBE_CuM0.mjs';
16
+ import '../chunks/index-DH87EZ4W.mjs';
17
17
  import 'react-dom';
18
18
  import '@radix-ui/react-slot';
19
- import '../chunks/index-Dvmx4xV6.mjs';
20
- import '../chunks/Combination-D2wzO_UG.mjs';
21
- import '../chunks/tslib.es6-BqS_Tuh7.mjs';
22
- import '../chunks/index-DbTcqBW_.mjs';
23
- import '../chunks/index-CeGdyziS.mjs';
24
- import '../chunks/index-Bfr3QSR6.mjs';
25
- import '../chunks/index-D1-1o3ca.mjs';
26
- import '../chunks/index-BbX-6yhg.mjs';
27
- import '../chunks/index-eKeyN0nu.mjs';
28
- import '../chunks/index-B9X_JCGT.mjs';
19
+ import '../chunks/index-BRYOOGYt.mjs';
20
+ import '../chunks/index-DRuAMnOw.mjs';
21
+ import '../chunks/tslib.es6-SGuOiL7t.mjs';
22
+ import '../chunks/index-CWjsfCPV.mjs';
23
+ import '../chunks/index-CZgLnzan.mjs';
24
+ import '../chunks/index-C9_8aC95.mjs';
25
+ import '../chunks/index-t0_4qi-T.mjs';
26
+ import '../chunks/index-B2rYWtDF.mjs';
27
+ import '../chunks/index-KLdt0FXh.mjs';
28
+ import '../chunks/index-CY7rSsKT.mjs';
29
29
  import 'class-variance-authority';
30
- import '../chunks/chevron-left-Ciw_Gg5L.mjs';
31
- import '../chunks/chevron-right-bGT4BvYz.mjs';
32
- import '../chunks/chevron-down-GNWj-PsJ.mjs';
30
+ import '../chunks/chevron-left-Dr2znK-e.mjs';
31
+ import '../chunks/chevron-right-DmVvAueL.mjs';
32
+ import '../chunks/chevron-down-DPe3wUSx.mjs';
33
33
 
34
34
  function DatePicker({ date, setDate, placeholder = "Selecione uma data", id = "date-picker", buttonProps, popoverProps, popoverContentClassName, className, disabled, defaultMonth, ...props }) {
35
35
  const validDate = tryParseDate(date);
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/components/ui/date-picker/date-picker.tsx"],"sourcesContent":["\"use client\";\n\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport { tryParseDate } from \"@/utils/date\";\nimport { format } from \"date-fns\";\nimport { ptBR } from \"date-fns/locale\";\nimport { CalendarDaysIcon } from \"lucide-react\";\nimport React from \"react\";\n\nexport interface DatePickerProps\n\textends Omit<React.ComponentProps<typeof Calendar>, \"mode\" | \"selected\" | \"onSelect\"> {\n\t/** Data selecionada (pode ser Date ou string parseável) */\n\tdate: Date | string | undefined;\n\n\t/** Função chamada ao selecionar uma data */\n\tsetDate: (date: Date | undefined) => void;\n\n\t/** Texto exibido quando não há data selecionada */\n\tplaceholder?: string;\n\n\t/** ID opcional do botão */\n\tid?: string;\n\n\t/** Props extras para o botão */\n\tbuttonProps?: ButtonProps;\n\n\t/** Props extras para o popover */\n\tpopoverProps?: React.ComponentProps<typeof Popover>;\n\n\t/** Classe extra para o conteúdo do popover */\n\tpopoverContentClassName?: string;\n\n\t/** Classe extra para o botão */\n\tclassName?: string;\n\n\t/**\n\t * Permite desabilitar datas específicas (igual ao Calendar do shadcn)\n\t * Pode ser um boolean, ou uma função que recebe a data e retorna boolean\n\t */\n\tdisabled?: boolean | ((date: Date) => boolean);\n\n\t/**\n\t * Mês padrão a ser mostrado (caso nenhuma data esteja selecionada)\n\t * Por padrão, será o mês atual.\n\t */\n\tdefaultMonth?: Date;\n}\n\nexport function DatePicker({\n\tdate,\n\tsetDate,\n\tplaceholder = \"Selecione uma data\",\n\tid = \"date-picker\",\n\tbuttonProps,\n\tpopoverProps,\n\tpopoverContentClassName,\n\tclassName,\n\tdisabled,\n\tdefaultMonth,\n\t...props\n}: DatePickerProps) {\n\tconst validDate = tryParseDate(date);\n\n\treturn (\n\t\t<Popover {...popoverProps}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tid={id}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"hover:text-foreground justify-start text-left font-normal\",\n\t\t\t\t\t\t!validDate && \"text-muted-foreground hover:text-muted-foreground\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\tdisabled={typeof disabled === \"boolean\" ? disabled : undefined}\n\t\t\t\t\t{...buttonProps}\n\t\t\t\t>\n\t\t\t\t\t<CalendarDaysIcon className=\"size-4\" />\n\t\t\t\t\t{validDate ? format(validDate, \"P\", { locale: ptBR }) : <span>{placeholder}</span>}\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\n\t\t\t<PopoverContent className={cn(\"w-auto p-0\", popoverContentClassName)} align=\"start\">\n\t\t\t\t<Calendar\n\t\t\t\t\tautoFocus\n\t\t\t\t\tcaptionLayout=\"dropdown\"\n\t\t\t\t\tselected={validDate}\n\t\t\t\t\tonSelect={setDate}\n\t\t\t\t\tlocale={ptBR}\n\t\t\t\t\tnumberOfMonths={1}\n\t\t\t\t\tfromYear={2010}\n\t\t\t\t\ttoYear={2040}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tdefaultMonth={validDate ?? defaultMonth ?? new Date()}\n\t\t\t\t\t{...props}\n\t\t\t\t\tmode=\"single\"\n\t\t\t\t/>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n"],"names":["DatePicker","date","setDate","placeholder","id","buttonProps","popoverProps","popoverContentClassName","className","disabled","defaultMonth","props","validDate","tryParseDate","React","Popover","PopoverTrigger","asChild","Button","variant","cn","undefined","CalendarDaysIcon","format","locale","ptBR","span","PopoverContent","align","Calendar","autoFocus","captionLayout","selected","onSelect","numberOfMonths","fromYear","toYear","Date","mode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDO,SAASA,UAAAA,CAAW,EAC1BC,IAAI,EACJC,OAAO,EACPC,WAAAA,GAAc,oBAAoB,EAClCC,EAAAA,GAAK,aAAa,EAClBC,WAAW,EACXC,YAAY,EACZC,uBAAuB,EACvBC,SAAS,EACTC,QAAQ,EACRC,YAAY,EACZ,GAAGC,KAAAA,EACc,EAAA;AACjB,IAAA,MAAMC,YAAYC,YAAAA,CAAaZ,IAAAA,CAAAA;IAE/B,qBACCa,cAAA,CAAA,aAAA,CAACC,OAAAA,EAAYT,YAAAA,gBACZQ,cAAA,CAAA,aAAA,CAACE,cAAAA,EAAAA;QAAeC,OAAAA,EAAAA;qBACfH,cAAA,CAAA,aAAA,CAACI,MAAAA,EAAAA;QACAd,EAAAA,EAAIA,EAAAA;QACJe,OAAAA,EAAQ,SAAA;AACRX,QAAAA,SAAAA,EAAWY,EAAAA,CACV,2DAAA,EACA,CAACR,SAAAA,IAAa,mDAAA,EACdJ,SAAAA,CAAAA;QAEDC,QAAAA,EAAU,OAAOA,QAAAA,KAAa,SAAA,GAAYA,QAAAA,GAAWY,SAAAA;AACpD,QAAA,GAAGhB;qBAEJS,cAAA,CAAA,aAAA,CAACQ,YAAAA,EAAAA;QAAiBd,SAAAA,EAAU;QAC3BI,SAAAA,GAAYW,MAAAA,CAAOX,WAAW,GAAA,EAAK;QAAEY,MAAAA,EAAQC;KAAK,CAAA,iBAAKX,cAAA,CAAA,aAAA,CAACY,MAAAA,EAAAA,IAAAA,EAAMvB,WAAAA,CAAAA,CAAAA,CAAAA,gBAIjEW,cAAA,CAAA,aAAA,CAACa,cAAAA,EAAAA;AAAenB,QAAAA,SAAAA,EAAWY,GAAG,YAAA,EAAcb,uBAAAA,CAAAA;QAA0BqB,KAAAA,EAAM;qBAC3Ed,cAAA,CAAA,aAAA,CAACe,QAAAA,EAAAA;QACAC,SAAAA,EAAAA,IAAAA;QACAC,aAAAA,EAAc,UAAA;QACdC,QAAAA,EAAUpB,SAAAA;QACVqB,QAAAA,EAAU/B,OAAAA;QACVsB,MAAAA,EAAQC,IAAAA;QACRS,cAAAA,EAAgB,CAAA;QAChBC,QAAAA,EAAU,IAAA;QACVC,MAAAA,EAAQ,IAAA;QACR3B,QAAAA,EAAUA,QAAAA;QACVC,YAAAA,EAAcE,SAAAA,IAAaF,gBAAgB,IAAI2B,IAAAA,EAAAA;AAC9C,QAAA,GAAG1B,KAAK;QACT2B,IAAAA,EAAK;;AAKV;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/components/ui/date-picker/date-picker.tsx"],"sourcesContent":["\"use client\";\n\nimport { format } from \"date-fns\";\nimport { ptBR } from \"date-fns/locale\";\nimport { CalendarDaysIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport { tryParseDate } from \"@/utils/date\";\n\nexport interface DatePickerProps\n\textends Omit<React.ComponentProps<typeof Calendar>, \"mode\" | \"selected\" | \"onSelect\"> {\n\t/** Data selecionada (pode ser Date ou string parseável) */\n\tdate: Date | string | undefined;\n\n\t/** Função chamada ao selecionar uma data */\n\tsetDate: (date: Date | undefined) => void;\n\n\t/** Texto exibido quando não há data selecionada */\n\tplaceholder?: string;\n\n\t/** ID opcional do botão */\n\tid?: string;\n\n\t/** Props extras para o botão */\n\tbuttonProps?: ButtonProps;\n\n\t/** Props extras para o popover */\n\tpopoverProps?: React.ComponentProps<typeof Popover>;\n\n\t/** Classe extra para o conteúdo do popover */\n\tpopoverContentClassName?: string;\n\n\t/** Classe extra para o botão */\n\tclassName?: string;\n\n\t/**\n\t * Permite desabilitar datas específicas (igual ao Calendar do shadcn)\n\t * Pode ser um boolean, ou uma função que recebe a data e retorna boolean\n\t */\n\tdisabled?: boolean | ((date: Date) => boolean);\n\n\t/**\n\t * Mês padrão a ser mostrado (caso nenhuma data esteja selecionada)\n\t * Por padrão, será o mês atual.\n\t */\n\tdefaultMonth?: Date;\n}\n\nexport function DatePicker({\n\tdate,\n\tsetDate,\n\tplaceholder = \"Selecione uma data\",\n\tid = \"date-picker\",\n\tbuttonProps,\n\tpopoverProps,\n\tpopoverContentClassName,\n\tclassName,\n\tdisabled,\n\tdefaultMonth,\n\t...props\n}: DatePickerProps) {\n\tconst validDate = tryParseDate(date);\n\n\treturn (\n\t\t<Popover {...popoverProps}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tid={id}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"hover:text-foreground justify-start text-left font-normal\",\n\t\t\t\t\t\t!validDate && \"text-muted-foreground hover:text-muted-foreground\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\tdisabled={typeof disabled === \"boolean\" ? disabled : undefined}\n\t\t\t\t\t{...buttonProps}\n\t\t\t\t>\n\t\t\t\t\t<CalendarDaysIcon className=\"size-4\" />\n\t\t\t\t\t{validDate ? format(validDate, \"P\", { locale: ptBR }) : <span>{placeholder}</span>}\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\n\t\t\t<PopoverContent className={cn(\"w-auto p-0\", popoverContentClassName)} align=\"start\">\n\t\t\t\t<Calendar\n\t\t\t\t\tautoFocus\n\t\t\t\t\tcaptionLayout=\"dropdown\"\n\t\t\t\t\tselected={validDate}\n\t\t\t\t\tonSelect={setDate}\n\t\t\t\t\tlocale={ptBR}\n\t\t\t\t\tnumberOfMonths={1}\n\t\t\t\t\tfromYear={2010}\n\t\t\t\t\ttoYear={2040}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tdefaultMonth={validDate ?? defaultMonth ?? new Date()}\n\t\t\t\t\t{...props}\n\t\t\t\t\tmode=\"single\"\n\t\t\t\t/>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n"],"names":["DatePicker","date","setDate","placeholder","id","buttonProps","popoverProps","popoverContentClassName","className","disabled","defaultMonth","props","validDate","tryParseDate","React","Popover","PopoverTrigger","asChild","Button","variant","cn","undefined","CalendarDaysIcon","format","locale","ptBR","span","PopoverContent","align","Calendar","autoFocus","captionLayout","selected","onSelect","numberOfMonths","fromYear","toYear","Date","mode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDO,SAASA,UAAAA,CAAW,EAC1BC,IAAI,EACJC,OAAO,EACPC,WAAAA,GAAc,oBAAoB,EAClCC,EAAAA,GAAK,aAAa,EAClBC,WAAW,EACXC,YAAY,EACZC,uBAAuB,EACvBC,SAAS,EACTC,QAAQ,EACRC,YAAY,EACZ,GAAGC,KAAAA,EACc,EAAA;AACjB,IAAA,MAAMC,YAAYC,YAAAA,CAAaZ,IAAAA,CAAAA;IAE/B,qBACCa,cAAA,CAAA,aAAA,CAACC,OAAAA,EAAYT,YAAAA,gBACZQ,cAAA,CAAA,aAAA,CAACE,cAAAA,EAAAA;QAAeC,OAAAA,EAAAA;qBACfH,cAAA,CAAA,aAAA,CAACI,MAAAA,EAAAA;QACAd,EAAAA,EAAIA,EAAAA;QACJe,OAAAA,EAAQ,SAAA;AACRX,QAAAA,SAAAA,EAAWY,EAAAA,CACV,2DAAA,EACA,CAACR,SAAAA,IAAa,mDAAA,EACdJ,SAAAA,CAAAA;QAEDC,QAAAA,EAAU,OAAOA,QAAAA,KAAa,SAAA,GAAYA,QAAAA,GAAWY,SAAAA;AACpD,QAAA,GAAGhB;qBAEJS,cAAA,CAAA,aAAA,CAACQ,YAAAA,EAAAA;QAAiBd,SAAAA,EAAU;QAC3BI,SAAAA,GAAYW,MAAAA,CAAOX,WAAW,GAAA,EAAK;QAAEY,MAAAA,EAAQC;KAAK,CAAA,iBAAKX,cAAA,CAAA,aAAA,CAACY,MAAAA,EAAAA,IAAAA,EAAMvB,WAAAA,CAAAA,CAAAA,CAAAA,gBAIjEW,cAAA,CAAA,aAAA,CAACa,cAAAA,EAAAA;AAAenB,QAAAA,SAAAA,EAAWY,GAAG,YAAA,EAAcb,uBAAAA,CAAAA;QAA0BqB,KAAAA,EAAM;qBAC3Ed,cAAA,CAAA,aAAA,CAACe,QAAAA,EAAAA;QACAC,SAAAA,EAAAA,IAAAA;QACAC,aAAAA,EAAc,UAAA;QACdC,QAAAA,EAAUpB,SAAAA;QACVqB,QAAAA,EAAU/B,OAAAA;QACVsB,MAAAA,EAAQC,IAAAA;QACRS,cAAAA,EAAgB,CAAA;QAChBC,QAAAA,EAAU,IAAA;QACVC,MAAAA,EAAQ,IAAA;QACR3B,QAAAA,EAAUA,QAAAA;QACVC,YAAAA,EAAcE,SAAAA,IAAaF,gBAAgB,IAAI2B,IAAAA,EAAAA;AAC9C,QAAA,GAAG1B,KAAK;QACT2B,IAAAA,EAAK;;AAKV;;;;"}
@@ -1,24 +1,24 @@
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-eFe5WShu.mjs';
2
- import '../chunks/index-tRp8REyd.mjs';
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-BMq_EiaM.mjs';
2
+ import '../chunks/index-CjsV2E2h.mjs';
3
3
  import 'react';
4
- import '../chunks/index-CJmlDCYz.mjs';
5
- import '../chunks/index-Dmxf1tuE.mjs';
6
- import '../chunks/index-DEO2kkpO.mjs';
4
+ import '../chunks/index-C1gfRtpW.mjs';
5
+ import '../chunks/index-BdP_9M8C.mjs';
6
+ import '../chunks/index-BmNJQBZT.mjs';
7
7
  import 'react/jsx-runtime';
8
- import '../chunks/index-DbTcqBW_.mjs';
9
- import '../chunks/index-CeGdyziS.mjs';
10
- import '../chunks/index-B9X_JCGT.mjs';
11
- import '../chunks/index-DsKPgtIv.mjs';
12
- import '../chunks/index-Cu3VwLIM.mjs';
8
+ import '../chunks/index-CWjsfCPV.mjs';
9
+ import '../chunks/index-CZgLnzan.mjs';
10
+ import '../chunks/index-CY7rSsKT.mjs';
11
+ import '../chunks/index-CBE_CuM0.mjs';
12
+ import '../chunks/index-DH87EZ4W.mjs';
13
13
  import 'react-dom';
14
14
  import '@radix-ui/react-slot';
15
- import '../chunks/index-Dvmx4xV6.mjs';
16
- import '../chunks/Combination-D2wzO_UG.mjs';
17
- import '../chunks/tslib.es6-BqS_Tuh7.mjs';
18
- import '../chunks/index-BbX-6yhg.mjs';
19
- import '../chunks/index-eKeyN0nu.mjs';
20
- import '../chunks/utils-DbWlhojh.mjs';
21
- import '../chunks/bundle-mjs-CWQvHGtg.mjs';
22
- import '../chunks/x-BvNSIFOu.mjs';
23
- import '../chunks/createLucideIcon-CHz-fHlL.mjs';
15
+ import '../chunks/index-BRYOOGYt.mjs';
16
+ import '../chunks/index-DRuAMnOw.mjs';
17
+ import '../chunks/tslib.es6-SGuOiL7t.mjs';
18
+ import '../chunks/index-B2rYWtDF.mjs';
19
+ import '../chunks/index-KLdt0FXh.mjs';
20
+ import '../chunks/utils-Cbs-uxBq.mjs';
21
+ import '../chunks/bundle-mjs-CwF_jj9z.mjs';
22
+ import '../chunks/x-dyn358tn.mjs';
23
+ import '../chunks/createLucideIcon-PuoJamGs.mjs';
24
24
  //# sourceMappingURL=index.mjs.map
@@ -1,24 +1,24 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { useLayoutEffect, useEffect, useMemo } from 'react';
3
- import { b as Trigger, C as Close, T as Title, D as Description, R as Root$1, P as Portal$1, O as Overlay$1, a as Content$1 } from '../chunks/index-tRp8REyd.mjs';
4
- import { c as cn } from '../chunks/utils-DbWlhojh.mjs';
5
- import '../chunks/index-CJmlDCYz.mjs';
6
- import '../chunks/index-Dmxf1tuE.mjs';
7
- import '../chunks/index-DEO2kkpO.mjs';
3
+ import { b as Trigger, C as Close, T as Title, D as Description, R as Root$1, P as Portal$1, O as Overlay$1, a as Content$1 } from '../chunks/index-CjsV2E2h.mjs';
4
+ import { c as cn } from '../chunks/utils-Cbs-uxBq.mjs';
5
+ import '../chunks/index-C1gfRtpW.mjs';
6
+ import '../chunks/index-BdP_9M8C.mjs';
7
+ import '../chunks/index-BmNJQBZT.mjs';
8
8
  import 'react/jsx-runtime';
9
- import '../chunks/index-DbTcqBW_.mjs';
10
- import '../chunks/index-CeGdyziS.mjs';
11
- import '../chunks/index-B9X_JCGT.mjs';
12
- import '../chunks/index-DsKPgtIv.mjs';
13
- import '../chunks/index-Cu3VwLIM.mjs';
9
+ import '../chunks/index-CWjsfCPV.mjs';
10
+ import '../chunks/index-CZgLnzan.mjs';
11
+ import '../chunks/index-CY7rSsKT.mjs';
12
+ import '../chunks/index-CBE_CuM0.mjs';
13
+ import '../chunks/index-DH87EZ4W.mjs';
14
14
  import 'react-dom';
15
15
  import '@radix-ui/react-slot';
16
- import '../chunks/index-Dvmx4xV6.mjs';
17
- import '../chunks/Combination-D2wzO_UG.mjs';
18
- import '../chunks/tslib.es6-BqS_Tuh7.mjs';
19
- import '../chunks/index-BbX-6yhg.mjs';
20
- import '../chunks/index-eKeyN0nu.mjs';
21
- import '../chunks/bundle-mjs-CWQvHGtg.mjs';
16
+ import '../chunks/index-BRYOOGYt.mjs';
17
+ import '../chunks/index-DRuAMnOw.mjs';
18
+ import '../chunks/tslib.es6-SGuOiL7t.mjs';
19
+ import '../chunks/index-B2rYWtDF.mjs';
20
+ import '../chunks/index-KLdt0FXh.mjs';
21
+ import '../chunks/bundle-mjs-CwF_jj9z.mjs';
22
22
 
23
23
  function __insertCSS(code) {
24
24
  if (typeof document == 'undefined') return;