ivt 0.8.5 → 0.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/dist/accordion/index.mjs +13 -13
  2. package/dist/accordion-table/index.mjs +27 -27
  3. package/dist/alert/index.mjs +3 -3
  4. package/dist/alert-dialog/index.mjs +15 -15
  5. package/dist/auto-complete-multi-select/index.mjs +51 -45
  6. package/dist/auto-complete-multi-select/index.mjs.map +1 -1
  7. package/dist/avatar/index.mjs +5 -5
  8. package/dist/badge/index.mjs +3 -3
  9. package/dist/base/index.d.ts +53 -7
  10. package/dist/base/index.mjs +131 -163
  11. package/dist/base/index.mjs.map +1 -1
  12. package/dist/breadcrumb/index.mjs +5 -5
  13. package/dist/button/index.mjs +3 -3
  14. package/dist/button-group/index.mjs +4 -4
  15. package/dist/calendar/index.mjs +9 -9
  16. package/dist/card/index.mjs +3 -3
  17. package/dist/carousel/index.mjs +4 -4
  18. package/dist/chart/index.mjs +4 -4
  19. package/dist/checkbox/index.mjs +12 -12
  20. package/dist/chunks/ButtonActions-BbAuGm_J.mjs +54 -0
  21. package/dist/chunks/ButtonActions-BbAuGm_J.mjs.map +1 -0
  22. package/dist/chunks/{CalendarPopover-CRB6GXIt.mjs → CalendarPopover-DNS2oszG.mjs} +62 -33
  23. package/dist/chunks/CalendarPopover-DNS2oszG.mjs.map +1 -0
  24. package/dist/chunks/{CalendarRange-DucTFDzH.mjs → CalendarRange-BZ-rc5Ns.mjs} +34 -18
  25. package/dist/chunks/CalendarRange-BZ-rc5Ns.mjs.map +1 -0
  26. package/dist/chunks/{ComboboxField-Us4hYexm.mjs → ComboboxField-C5LrSTQf.mjs} +9 -9
  27. package/dist/chunks/{ComboboxField-Us4hYexm.mjs.map → ComboboxField-C5LrSTQf.mjs.map} +1 -1
  28. package/dist/chunks/{Container-BFAAGDWA.mjs → Container-qhzI-HED.mjs} +2 -2
  29. package/dist/chunks/{Container-BFAAGDWA.mjs.map → Container-qhzI-HED.mjs.map} +1 -1
  30. package/dist/chunks/{DeleteConfirmationModal-ClGTTktk.mjs → DeleteConfirmationModal-NPS_J_dT.mjs} +4 -4
  31. package/dist/chunks/{DeleteConfirmationModal-ClGTTktk.mjs.map → DeleteConfirmationModal-NPS_J_dT.mjs.map} +1 -1
  32. package/dist/chunks/ExportButtons-BtYHz3q3.mjs +364 -0
  33. package/dist/chunks/ExportButtons-BtYHz3q3.mjs.map +1 -0
  34. package/dist/chunks/{GenericTabs-CtJk8qVb.d.ts → GenericTabs-B6Sm4mwD.d.ts} +7 -2
  35. package/dist/chunks/{GenericTabs-B42Kfv_U.mjs → GenericTabs-CqunvZEw.mjs} +9 -8
  36. package/dist/chunks/GenericTabs-CqunvZEw.mjs.map +1 -0
  37. package/dist/chunks/{ListItem-Da4Od2ts.mjs → ListItem-CtUZSq2i.mjs} +6 -6
  38. package/dist/chunks/ListItem-CtUZSq2i.mjs.map +1 -0
  39. package/dist/chunks/ShowSkeleton-DuVLsprm.mjs +72 -0
  40. package/dist/chunks/ShowSkeleton-DuVLsprm.mjs.map +1 -0
  41. package/dist/chunks/ShowSkeleton-enwVHCqE.d.ts +12 -0
  42. package/dist/chunks/StepNavigator-DXnlZUw2.mjs +136 -0
  43. package/dist/chunks/StepNavigator-DXnlZUw2.mjs.map +1 -0
  44. package/dist/chunks/{TooltipIndicator-B9oMD_x3.mjs → TooltipIndicator-o_ekzuQD.mjs} +4 -4
  45. package/dist/chunks/{TooltipIndicator-B9oMD_x3.mjs.map → TooltipIndicator-o_ekzuQD.mjs.map} +1 -1
  46. package/dist/chunks/{_commonjsHelpers-CrMz3UM5.mjs → _commonjsHelpers-DLsfzCcd.mjs} +1 -1
  47. package/dist/chunks/_commonjsHelpers-DLsfzCcd.mjs.map +1 -0
  48. package/dist/chunks/{accordion-BFVct-IT.mjs → accordion-BcAmhbBS.mjs} +9 -9
  49. package/dist/chunks/{accordion-BFVct-IT.mjs.map → accordion-BcAmhbBS.mjs.map} +1 -1
  50. package/dist/chunks/{alert-DHUGrVll.mjs → alert-Ciu-8LcJ.mjs} +2 -2
  51. package/dist/chunks/{alert-DHUGrVll.mjs.map → alert-Ciu-8LcJ.mjs.map} +1 -1
  52. package/dist/chunks/{badge-BUI8RIXy.mjs → badge-ZU62MOiS.mjs} +2 -2
  53. package/dist/chunks/{badge-BUI8RIXy.mjs.map → badge-ZU62MOiS.mjs.map} +1 -1
  54. package/dist/chunks/{bundle-mjs-CjTndHqR.mjs → bundle-mjs-CXmmFvYo.mjs} +1 -1
  55. package/dist/chunks/{bundle-mjs-CjTndHqR.mjs.map → bundle-mjs-CXmmFvYo.mjs.map} +1 -1
  56. package/dist/chunks/button-CHGYaAzJ.d.ts +17 -0
  57. package/dist/chunks/{button-BvsCd2vf.mjs → button-CZpmCmNo.mjs} +2 -2
  58. package/dist/chunks/{button-BvsCd2vf.mjs.map → button-CZpmCmNo.mjs.map} +1 -1
  59. package/dist/chunks/{button-C8IZYeQz.d.ts → button-Ix3LPUsB.d.ts} +1 -1
  60. package/dist/chunks/{button-group-PrAqXtXn.mjs → button-group-ChymO3Hm.mjs} +3 -3
  61. package/dist/chunks/{button-group-PrAqXtXn.mjs.map → button-group-ChymO3Hm.mjs.map} +1 -1
  62. package/dist/chunks/{calendar-LFBK0slp.mjs → calendar-CDJv1B--.mjs} +7 -7
  63. package/dist/chunks/{calendar-LFBK0slp.mjs.map → calendar-CDJv1B--.mjs.map} +1 -1
  64. package/dist/chunks/{calendar-days-C3N6HIT-.mjs → calendar-days-DnYx8d46.mjs} +2 -2
  65. package/dist/chunks/{calendar-days-C3N6HIT-.mjs.map → calendar-days-DnYx8d46.mjs.map} +1 -1
  66. package/dist/chunks/{card-BoHc9gge.mjs → card-CEohNEru.mjs} +2 -2
  67. package/dist/chunks/{card-BoHc9gge.mjs.map → card-CEohNEru.mjs.map} +1 -1
  68. package/dist/chunks/{check-VfNn6myv.mjs → check-Ds358kZc.mjs} +2 -2
  69. package/dist/chunks/{check-VfNn6myv.mjs.map → check-Ds358kZc.mjs.map} +1 -1
  70. package/dist/chunks/{checkbox-CgrFFc0p.mjs → checkbox-DvxpZsiG.mjs} +9 -9
  71. package/dist/chunks/{checkbox-CgrFFc0p.mjs.map → checkbox-DvxpZsiG.mjs.map} +1 -1
  72. package/dist/chunks/{chevron-down-CD1QpvBA.mjs → chevron-down-CDFTds2-.mjs} +2 -2
  73. package/dist/chunks/{chevron-down-CD1QpvBA.mjs.map → chevron-down-CDFTds2-.mjs.map} +1 -1
  74. package/dist/chunks/{chevron-left-B7ClEtyW.mjs → chevron-left-Baq244Ce.mjs} +2 -2
  75. package/dist/chunks/{chevron-left-B7ClEtyW.mjs.map → chevron-left-Baq244Ce.mjs.map} +1 -1
  76. package/dist/chunks/{chevron-right-Bb52eown.mjs → chevron-right-Dq6zFe5E.mjs} +2 -2
  77. package/dist/chunks/{chevron-right-Bb52eown.mjs.map → chevron-right-Dq6zFe5E.mjs.map} +1 -1
  78. package/dist/chunks/{chevrons-up-down-C5lu4ULp.mjs → chevrons-up-down-CdBVNy4c.mjs} +2 -2
  79. package/dist/chunks/{chevrons-up-down-C5lu4ULp.mjs.map → chevrons-up-down-CdBVNy4c.mjs.map} +1 -1
  80. package/dist/chunks/combobox-D9iqP8Dp.mjs +103 -0
  81. package/dist/chunks/combobox-D9iqP8Dp.mjs.map +1 -0
  82. package/dist/chunks/{command-e20cpPEv.mjs → command-o67hOCgH.mjs} +10 -10
  83. package/dist/chunks/command-o67hOCgH.mjs.map +1 -0
  84. package/dist/chunks/{createLucideIcon-D3jW_oal.mjs → createLucideIcon-C11Tr46U.mjs} +1 -1
  85. package/dist/chunks/{createLucideIcon-D3jW_oal.mjs.map → createLucideIcon-C11Tr46U.mjs.map} +1 -1
  86. package/dist/chunks/{date-Dy-Pzcmp.mjs → date-Dqmv8Nr4.mjs} +2 -2
  87. package/dist/chunks/{date-Dy-Pzcmp.mjs.map → date-Dqmv8Nr4.mjs.map} +1 -1
  88. package/dist/chunks/{date-picker-BYXeysRW.mjs → date-picker-BBCtT16G.mjs} +13 -13
  89. package/dist/chunks/date-picker-BBCtT16G.mjs.map +1 -0
  90. package/dist/chunks/{dialog-B20zSjze.mjs → dialog-DL1cSseU.mjs} +4 -4
  91. package/dist/chunks/{dialog-B20zSjze.mjs.map → dialog-DL1cSseU.mjs.map} +1 -1
  92. package/dist/chunks/{dropdown-menu-B2ja7qty.mjs → dropdown-menu-DnPBut1Q.mjs} +9 -9
  93. package/dist/chunks/{dropdown-menu-B2ja7qty.mjs.map → dropdown-menu-DnPBut1Q.mjs.map} +1 -1
  94. package/dist/chunks/{ellipsis-C6LF5HVj.mjs → ellipsis-Cn3R-5sm.mjs} +2 -2
  95. package/dist/chunks/{ellipsis-C6LF5HVj.mjs.map → ellipsis-Cn3R-5sm.mjs.map} +1 -1
  96. package/dist/chunks/{form-BrcvX0yc.mjs → form-paAECAsZ.mjs} +3 -3
  97. package/dist/chunks/{form-BrcvX0yc.mjs.map → form-paAECAsZ.mjs.map} +1 -1
  98. package/dist/chunks/{format-CxsCX_YZ.mjs → format-8qs-kXlN.mjs} +1 -1
  99. package/dist/chunks/{format-CxsCX_YZ.mjs.map → format-8qs-kXlN.mjs.map} +1 -1
  100. package/dist/chunks/{format-numbers-CBSY6ZvL.mjs → format-numbers-LmnBEQr0.mjs} +2 -7
  101. package/dist/chunks/format-numbers-LmnBEQr0.mjs.map +1 -0
  102. package/dist/chunks/{hover-card-hPKHSJ81.mjs → hover-card-Bf6OuOg0.mjs} +9 -9
  103. package/dist/chunks/{hover-card-hPKHSJ81.mjs.map → hover-card-Bf6OuOg0.mjs.map} +1 -1
  104. package/dist/chunks/{index-SLs8oClH.mjs → index-1toTCGyr.mjs} +2 -2
  105. package/dist/chunks/{index-SLs8oClH.mjs.map → index-1toTCGyr.mjs.map} +1 -1
  106. package/dist/chunks/{index-EcI_mW3m.mjs → index-4NpeUekv.mjs} +4 -4
  107. package/dist/chunks/{index-EcI_mW3m.mjs.map → index-4NpeUekv.mjs.map} +1 -1
  108. package/dist/chunks/{index-BzAMFivh.mjs → index-B87m6Bfb.mjs} +6 -6
  109. package/dist/chunks/{index-BzAMFivh.mjs.map → index-B87m6Bfb.mjs.map} +1 -1
  110. package/dist/chunks/{index-B5fbJZIT.mjs → index-BJrVyyCQ.mjs} +2 -2
  111. package/dist/chunks/{index-B5fbJZIT.mjs.map → index-BJrVyyCQ.mjs.map} +1 -1
  112. package/dist/chunks/{index-D4iRNKtb.mjs → index-BWXpaxmG.mjs} +7 -7
  113. package/dist/chunks/{index-D4iRNKtb.mjs.map → index-BWXpaxmG.mjs.map} +1 -1
  114. package/dist/chunks/{index-JZ-FhLOH.mjs → index-BksCjWh6.mjs} +3 -3
  115. package/dist/chunks/{index-JZ-FhLOH.mjs.map → index-BksCjWh6.mjs.map} +1 -1
  116. package/dist/chunks/{index-C__GtYCW.mjs → index-C8u7IIcP.mjs} +1 -1
  117. package/dist/chunks/{index-C__GtYCW.mjs.map → index-C8u7IIcP.mjs.map} +1 -1
  118. package/dist/chunks/{index-3TdUvynV.mjs → index-COfEgTJM.mjs} +1 -1
  119. package/dist/chunks/{index-3TdUvynV.mjs.map → index-COfEgTJM.mjs.map} +1 -1
  120. package/dist/chunks/{index-B46fiGOC.mjs → index-CaYwp6E6.mjs} +9 -9
  121. package/dist/chunks/{index-B46fiGOC.mjs.map → index-CaYwp6E6.mjs.map} +1 -1
  122. package/dist/chunks/{index-DslxcA48.mjs → index-CcmH_f2V.mjs} +1 -1
  123. package/dist/chunks/{index-DslxcA48.mjs.map → index-CcmH_f2V.mjs.map} +1 -1
  124. package/dist/chunks/{index-RaUpQCps.mjs → index-D4jPaBZ2.mjs} +1 -1
  125. package/dist/chunks/{index-RaUpQCps.mjs.map → index-D4jPaBZ2.mjs.map} +1 -1
  126. package/dist/chunks/{index-DDM8Lpbb.mjs → index-DAa5gqEY.mjs} +2 -2
  127. package/dist/chunks/{index-DDM8Lpbb.mjs.map → index-DAa5gqEY.mjs.map} +1 -1
  128. package/dist/chunks/{index-Dp_x2nI3.mjs → index-DC-gAYjS.mjs} +1 -1
  129. package/dist/chunks/{index-Dp_x2nI3.mjs.map → index-DC-gAYjS.mjs.map} +1 -1
  130. package/dist/chunks/{index-DghbVew_.mjs → index-DIHpzffL.mjs} +7 -7
  131. package/dist/chunks/{index-DghbVew_.mjs.map → index-DIHpzffL.mjs.map} +1 -1
  132. package/dist/chunks/{index-DGUU265f.mjs → index-DfeRLazC.mjs} +3 -3
  133. package/dist/chunks/{index-DGUU265f.mjs.map → index-DfeRLazC.mjs.map} +1 -1
  134. package/dist/chunks/{index-B-46hbYc.mjs → index-Dsw02Eup.mjs} +1 -1
  135. package/dist/chunks/{index-B-46hbYc.mjs.map → index-Dsw02Eup.mjs.map} +1 -1
  136. package/dist/chunks/{index-DIaetExD.mjs → index-PuN-H-VF.mjs} +1 -1
  137. package/dist/chunks/{index-DIaetExD.mjs.map → index-PuN-H-VF.mjs.map} +1 -1
  138. package/dist/chunks/{index-Csf3aM1P.mjs → index-UxWlwQlk.mjs} +1 -1
  139. package/dist/chunks/{index-Csf3aM1P.mjs.map → index-UxWlwQlk.mjs.map} +1 -1
  140. package/dist/chunks/{index-DF-3JHwb.mjs → index-gX0V59dZ.mjs} +2 -2
  141. package/dist/chunks/{index-DF-3JHwb.mjs.map → index-gX0V59dZ.mjs.map} +1 -1
  142. package/dist/chunks/{index-BbPnHdtV.mjs → index-z4Hk6sF4.mjs} +5 -5
  143. package/dist/chunks/{index-BbPnHdtV.mjs.map → index-z4Hk6sF4.mjs.map} +1 -1
  144. package/dist/chunks/{index-C5uKwhOD.mjs → index-zIaBOKQ3.mjs} +13 -13
  145. package/dist/chunks/{index-C5uKwhOD.mjs.map → index-zIaBOKQ3.mjs.map} +1 -1
  146. package/dist/chunks/{index.module-B4lVPYXp.mjs → index.module-Czm-Rcez.mjs} +1 -1
  147. package/dist/chunks/{index.module-B4lVPYXp.mjs.map → index.module-Czm-Rcez.mjs.map} +1 -1
  148. package/dist/chunks/input-B-W81Xmi.mjs +14 -0
  149. package/dist/chunks/input-B-W81Xmi.mjs.map +1 -0
  150. package/dist/chunks/input-file-BH3SMNJ7.mjs +97 -0
  151. package/dist/chunks/input-file-BH3SMNJ7.mjs.map +1 -0
  152. package/dist/chunks/{input-otp-DfumrHpI.mjs → input-otp-BNC4E0wv.mjs} +3 -3
  153. package/dist/chunks/{input-otp-DfumrHpI.mjs.map → input-otp-BNC4E0wv.mjs.map} +1 -1
  154. package/dist/chunks/{label-Dxv54YUS.mjs → label-D0iRy8Wj.mjs} +2 -2
  155. package/dist/chunks/{label-Dxv54YUS.mjs.map → label-D0iRy8Wj.mjs.map} +1 -1
  156. package/dist/chunks/{loader-circle-hYdtBTNb.mjs → loader-circle-BMRpEmW6.mjs} +2 -2
  157. package/dist/chunks/{loader-circle-hYdtBTNb.mjs.map → loader-circle-BMRpEmW6.mjs.map} +1 -1
  158. package/dist/chunks/{menubar-C76cRAzY.mjs → menubar-oWKK9_Ik.mjs} +11 -11
  159. package/dist/chunks/{menubar-C76cRAzY.mjs.map → menubar-oWKK9_Ik.mjs.map} +1 -1
  160. package/dist/chunks/{multi-select-B6DLSXK6.mjs → multi-select-ILUAJeKL.mjs} +46 -34
  161. package/dist/chunks/multi-select-ILUAJeKL.mjs.map +1 -0
  162. package/dist/chunks/{pagination-BF_3NYnD.mjs → pagination-Bx_e3scG.mjs} +6 -6
  163. package/dist/chunks/{pagination-BF_3NYnD.mjs.map → pagination-Bx_e3scG.mjs.map} +1 -1
  164. package/dist/chunks/{popover--9SMD-cC.mjs → popover-CdZgcLPo.mjs} +11 -11
  165. package/dist/chunks/{popover--9SMD-cC.mjs.map → popover-CdZgcLPo.mjs.map} +1 -1
  166. package/dist/chunks/{progress-CwFC70K1.mjs → progress-e_BEvMwp.mjs} +2 -2
  167. package/dist/chunks/{progress-CwFC70K1.mjs.map → progress-e_BEvMwp.mjs.map} +1 -1
  168. package/dist/chunks/{radio-group-DhGJL_gc.mjs → radio-group-BlSUw5ql.mjs} +11 -11
  169. package/dist/chunks/{radio-group-DhGJL_gc.mjs.map → radio-group-BlSUw5ql.mjs.map} +1 -1
  170. package/dist/chunks/{react-number-format.es-B11gLKR5.mjs → react-number-format.es-HizMU4ab.mjs} +1 -1
  171. package/dist/chunks/{react-number-format.es-B11gLKR5.mjs.map → react-number-format.es-HizMU4ab.mjs.map} +1 -1
  172. package/dist/chunks/{scroll-area-D0gA5i73.mjs → scroll-area-qiUBme0Q.mjs} +9 -9
  173. package/dist/chunks/{scroll-area-D0gA5i73.mjs.map → scroll-area-qiUBme0Q.mjs.map} +1 -1
  174. package/dist/chunks/{select-Cl_ZzI9R.mjs → select-BBatgGtL.mjs} +56 -12
  175. package/dist/chunks/select-BBatgGtL.mjs.map +1 -0
  176. package/dist/chunks/{separator-DohkJ_xb.mjs → separator-DYyhdAi6.mjs} +2 -2
  177. package/dist/chunks/{separator-DohkJ_xb.mjs.map → separator-DYyhdAi6.mjs.map} +1 -1
  178. package/dist/chunks/{sheet-CIlwd3J-.mjs → sheet-1Dl0ChJl.mjs} +4 -4
  179. package/dist/chunks/{sheet-CIlwd3J-.mjs.map → sheet-1Dl0ChJl.mjs.map} +1 -1
  180. package/dist/chunks/{skeleton-ClXnWXNn.mjs → skeleton-LDpPNYvq.mjs} +2 -2
  181. package/dist/chunks/{skeleton-ClXnWXNn.mjs.map → skeleton-LDpPNYvq.mjs.map} +1 -1
  182. package/dist/chunks/{slider-D39dP_g8.mjs → slider-D3yx--Ba.mjs} +9 -9
  183. package/dist/chunks/{slider-D39dP_g8.mjs.map → slider-D3yx--Ba.mjs.map} +1 -1
  184. package/dist/chunks/{sortable-T_IChBln.mjs → sortable-CE5SC5JS.mjs} +3 -3
  185. package/dist/chunks/{sortable-T_IChBln.mjs.map → sortable-CE5SC5JS.mjs.map} +1 -1
  186. package/dist/chunks/string-DRS4HkY8.mjs +71 -0
  187. package/dist/chunks/string-DRS4HkY8.mjs.map +1 -0
  188. package/dist/chunks/styles-lQyUmHf7.mjs +7 -0
  189. package/dist/chunks/styles-lQyUmHf7.mjs.map +1 -0
  190. package/dist/chunks/{switch-B3zf2gI8.mjs → switch-COE1z3YV.mjs} +7 -7
  191. package/dist/chunks/{switch-B3zf2gI8.mjs.map → switch-COE1z3YV.mjs.map} +1 -1
  192. package/dist/chunks/{table-Bfl280bq.mjs → table-BzhSKY4n.mjs} +2 -2
  193. package/dist/chunks/{table-Bfl280bq.mjs.map → table-BzhSKY4n.mjs.map} +1 -1
  194. package/dist/chunks/{tabs-C8FBxYmq.mjs → tabs-B5HgsIWx.mjs} +9 -9
  195. package/dist/chunks/{tabs-C8FBxYmq.mjs.map → tabs-B5HgsIWx.mjs.map} +1 -1
  196. package/dist/chunks/{textarea-W2TtG6RT.mjs → textarea-DM2uvcxK.mjs} +2 -2
  197. package/dist/chunks/{textarea-W2TtG6RT.mjs.map → textarea-DM2uvcxK.mjs.map} +1 -1
  198. package/dist/chunks/{toast-DPlHqm3b.mjs → toast-DfCz10Et.mjs} +12 -12
  199. package/dist/chunks/{toast-DPlHqm3b.mjs.map → toast-DfCz10Et.mjs.map} +1 -1
  200. package/dist/chunks/{toggle-DGw8vPFo.mjs → toggle-Du3jnh1s.mjs} +4 -4
  201. package/dist/chunks/{toggle-DGw8vPFo.mjs.map → toggle-Du3jnh1s.mjs.map} +1 -1
  202. package/dist/chunks/{tooltip-CI9dbI1p.mjs → tooltip-njN_ok-r.mjs} +11 -11
  203. package/dist/chunks/{tooltip-CI9dbI1p.mjs.map → tooltip-njN_ok-r.mjs.map} +1 -1
  204. package/dist/chunks/{trash-2-D8vtZLQJ.mjs → trash-2-ab4Di2Bx.mjs} +2 -2
  205. package/dist/chunks/{trash-2-D8vtZLQJ.mjs.map → trash-2-ab4Di2Bx.mjs.map} +1 -1
  206. package/dist/chunks/{triangle-alert-B-blf7Ow.mjs → triangle-alert-B_tQGpT4.mjs} +2 -2
  207. package/dist/chunks/{triangle-alert-B-blf7Ow.mjs.map → triangle-alert-B_tQGpT4.mjs.map} +1 -1
  208. package/dist/chunks/{tslib.es6-B32hQ9eG.mjs → tslib.es6-Q9puKanr.mjs} +1 -1
  209. package/dist/chunks/{tslib.es6-B32hQ9eG.mjs.map → tslib.es6-Q9puKanr.mjs.map} +1 -1
  210. package/dist/chunks/{upload-CQFfafJB.mjs → upload-DvgPaJGb.mjs} +2 -2
  211. package/dist/chunks/{upload-CQFfafJB.mjs.map → upload-DvgPaJGb.mjs.map} +1 -1
  212. package/dist/chunks/{use-toast-juJ63qRI.mjs → use-toast-CLJJgfL0.mjs} +1 -1
  213. package/dist/chunks/{use-toast-juJ63qRI.mjs.map → use-toast-CLJJgfL0.mjs.map} +1 -1
  214. package/dist/chunks/{utils-Dws4Ft8U.mjs → utils-BDcRwQMd.mjs} +2 -2
  215. package/dist/chunks/{utils-Dws4Ft8U.mjs.map → utils-BDcRwQMd.mjs.map} +1 -1
  216. package/dist/chunks/{wand-sparkles-C3OGp2qM.mjs → wand-sparkles-DqgQle7F.mjs} +2 -2
  217. package/dist/chunks/{wand-sparkles-C3OGp2qM.mjs.map → wand-sparkles-DqgQle7F.mjs.map} +1 -1
  218. package/dist/chunks/{x-CQ0W-nWi.mjs → x-B6hDJA_l.mjs} +2 -2
  219. package/dist/chunks/{x-CQ0W-nWi.mjs.map → x-B6hDJA_l.mjs.map} +1 -1
  220. package/dist/collapsible/index.mjs +7 -7
  221. package/dist/combobox/index.d.ts +9 -1
  222. package/dist/combobox/index.mjs +30 -155
  223. package/dist/combobox/index.mjs.map +1 -1
  224. package/dist/command/index.mjs +18 -18
  225. package/dist/context-menu/index.mjs +21 -21
  226. package/dist/dash/index.mjs +24 -23
  227. package/dist/dash/index.mjs.map +1 -1
  228. package/dist/data-table/index.d.ts +70 -50
  229. package/dist/data-table/index.mjs +79 -64
  230. package/dist/data-table/index.mjs.map +1 -1
  231. package/dist/date-picker/index.d.ts +7 -2
  232. package/dist/date-picker/index.mjs +27 -27
  233. package/dist/dialog/index.mjs +17 -17
  234. package/dist/drawer/index.mjs +14 -14
  235. package/dist/dropdown-menu/index.mjs +22 -22
  236. package/dist/dropzone/index.mjs +18 -18
  237. package/dist/editable-table/index.mjs +20 -18
  238. package/dist/editable-table/index.mjs.map +1 -1
  239. package/dist/empty/index.mjs +2 -2
  240. package/dist/export/index.d.ts +31 -11
  241. package/dist/export/index.mjs +20525 -31
  242. package/dist/export/index.mjs.map +1 -1
  243. package/dist/field/index.mjs +4 -4
  244. package/dist/form/index.mjs +4 -4
  245. package/dist/form-fields/index.mjs +26 -26
  246. package/dist/form-layout/index.d.ts +82 -10
  247. package/dist/form-layout/index.mjs +208 -103
  248. package/dist/form-layout/index.mjs.map +1 -1
  249. package/dist/hover-card/index.mjs +13 -13
  250. package/dist/icon/index.mjs +1 -1
  251. package/dist/index.css +1 -1
  252. package/dist/input/index.mjs +3 -3
  253. package/dist/input-file/index.d.ts +10 -0
  254. package/dist/input-file/index.mjs +12 -0
  255. package/dist/input-file/index.mjs.map +1 -0
  256. package/dist/input-group/index.d.ts +11 -1
  257. package/dist/input-group/index.mjs +5 -5
  258. package/dist/input-otp/index.mjs +4 -4
  259. package/dist/item/index.mjs +3 -3
  260. package/dist/ivt.css +1 -1
  261. package/dist/kbd/index.mjs +2 -2
  262. package/dist/label/index.mjs +3 -3
  263. package/dist/layout/index.d.ts +279 -1
  264. package/dist/layout/index.mjs +259 -23
  265. package/dist/layout/index.mjs.map +1 -1
  266. package/dist/menubar/index.mjs +22 -22
  267. package/dist/multi-input-list/index.mjs +28 -28
  268. package/dist/multi-select/index.d.ts +4 -0
  269. package/dist/multi-select/index.mjs +32 -31
  270. package/dist/multi-select/index.mjs.map +1 -1
  271. package/dist/navigation-menu/index.mjs +15 -15
  272. package/dist/pagination/index.d.ts +1 -1
  273. package/dist/pagination/index.mjs +8 -8
  274. package/dist/popover/index.mjs +16 -16
  275. package/dist/progress/index.mjs +3 -3
  276. package/dist/radio-group/index.mjs +16 -16
  277. package/dist/resizable/index.mjs +3 -3
  278. package/dist/scroll-area/index.mjs +10 -10
  279. package/dist/select/index.d.ts +3 -1
  280. package/dist/select/index.mjs +11 -6
  281. package/dist/select/index.mjs.map +1 -1
  282. package/dist/separator/index.mjs +3 -3
  283. package/dist/shared/index.d.ts +3 -13
  284. package/dist/shared/index.mjs +8 -55
  285. package/dist/shared/index.mjs.map +1 -1
  286. package/dist/sheet/index.mjs +17 -17
  287. package/dist/sidebar/index.d.ts +1 -11
  288. package/dist/sidebar/index.mjs +25 -25
  289. package/dist/skeleton/index.mjs +3 -3
  290. package/dist/skeleton-component/index.d.ts +2 -6
  291. package/dist/skeleton-component/index.mjs +6 -72
  292. package/dist/skeleton-component/index.mjs.map +1 -1
  293. package/dist/slider/index.mjs +11 -11
  294. package/dist/sortable/index.mjs +4 -4
  295. package/dist/spinner/index.mjs +4 -4
  296. package/dist/switch/index.mjs +9 -9
  297. package/dist/table/index.mjs +3 -3
  298. package/dist/table-filter/index.d.ts +3 -1
  299. package/dist/table-filter/index.mjs +61 -58
  300. package/dist/table-filter/index.mjs.map +1 -1
  301. package/dist/tabs/index.mjs +12 -12
  302. package/dist/textarea/index.mjs +3 -3
  303. package/dist/toast/index.mjs +14 -14
  304. package/dist/toaster/index.mjs +15 -15
  305. package/dist/toggle/index.mjs +6 -6
  306. package/dist/toggle-group/index.mjs +11 -11
  307. package/dist/tooltip/index.mjs +15 -15
  308. package/package.json +9 -2
  309. package/dist/chunks/CalendarPopover-CRB6GXIt.mjs.map +0 -1
  310. package/dist/chunks/CalendarRange-DucTFDzH.mjs.map +0 -1
  311. package/dist/chunks/ExportButtons-Ru0nKJJO.mjs +0 -229
  312. package/dist/chunks/ExportButtons-Ru0nKJJO.mjs.map +0 -1
  313. package/dist/chunks/GenericTabs-B42Kfv_U.mjs.map +0 -1
  314. package/dist/chunks/ListItem-Da4Od2ts.mjs.map +0 -1
  315. package/dist/chunks/_commonjsHelpers-CrMz3UM5.mjs.map +0 -1
  316. package/dist/chunks/command-e20cpPEv.mjs.map +0 -1
  317. package/dist/chunks/date-picker-BYXeysRW.mjs.map +0 -1
  318. package/dist/chunks/export-config-BMsuab-C.d.ts +0 -10
  319. package/dist/chunks/format-numbers-CBSY6ZvL.mjs.map +0 -1
  320. package/dist/chunks/input-B4HxPY7D.mjs +0 -14
  321. package/dist/chunks/input-B4HxPY7D.mjs.map +0 -1
  322. package/dist/chunks/multi-select-B6DLSXK6.mjs.map +0 -1
  323. package/dist/chunks/select-Cl_ZzI9R.mjs.map +0 -1
@@ -1,22 +1,22 @@
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-B46fiGOC.mjs';
4
- import { c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
5
- import '../chunks/index-B-46hbYc.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-CaYwp6E6.mjs';
4
+ import { c as cn } from '../chunks/utils-BDcRwQMd.mjs';
5
+ import '../chunks/index-Dsw02Eup.mjs';
6
6
  import 'react-dom';
7
7
  import '@radix-ui/react-slot';
8
8
  import 'react/jsx-runtime';
9
- import '../chunks/index-RaUpQCps.mjs';
10
- import '../chunks/index-DF-3JHwb.mjs';
11
- import '../chunks/index-C__GtYCW.mjs';
12
- import '../chunks/index-SLs8oClH.mjs';
13
- import '../chunks/index-EcI_mW3m.mjs';
14
- import '../chunks/index-Dp_x2nI3.mjs';
15
- import '../chunks/index-BbPnHdtV.mjs';
16
- import '../chunks/tslib.es6-B32hQ9eG.mjs';
17
- import '../chunks/index-JZ-FhLOH.mjs';
18
- import '../chunks/index-DGUU265f.mjs';
19
- import '../chunks/bundle-mjs-CjTndHqR.mjs';
9
+ import '../chunks/index-D4jPaBZ2.mjs';
10
+ import '../chunks/index-gX0V59dZ.mjs';
11
+ import '../chunks/index-C8u7IIcP.mjs';
12
+ import '../chunks/index-1toTCGyr.mjs';
13
+ import '../chunks/index-4NpeUekv.mjs';
14
+ import '../chunks/index-DC-gAYjS.mjs';
15
+ import '../chunks/index-z4Hk6sF4.mjs';
16
+ import '../chunks/tslib.es6-Q9puKanr.mjs';
17
+ import '../chunks/index-BksCjWh6.mjs';
18
+ import '../chunks/index-DfeRLazC.mjs';
19
+ import '../chunks/bundle-mjs-CXmmFvYo.mjs';
20
20
 
21
21
  function __insertCSS(code) {
22
22
  if (typeof document == 'undefined') return;
@@ -1,28 +1,28 @@
1
- export { D as DropdownMenu, g as DropdownMenuCheckboxItem, c as DropdownMenuContent, d as DropdownMenuGroup, f as DropdownMenuItem, e as DropdownMenuLabel, a as DropdownMenuPortal, h as DropdownMenuRadioGroup, i as DropdownMenuRadioItem, j as DropdownMenuSeparator, k as DropdownMenuShortcut, l as DropdownMenuSub, n as DropdownMenuSubContent, m as DropdownMenuSubTrigger, b as DropdownMenuTrigger } from '../chunks/dropdown-menu-B2ja7qty.mjs';
1
+ export { D as DropdownMenu, g as DropdownMenuCheckboxItem, c as DropdownMenuContent, d as DropdownMenuGroup, f as DropdownMenuItem, e as DropdownMenuLabel, a as DropdownMenuPortal, h as DropdownMenuRadioGroup, i as DropdownMenuRadioItem, j as DropdownMenuSeparator, k as DropdownMenuShortcut, l as DropdownMenuSub, n as DropdownMenuSubContent, m as DropdownMenuSubTrigger, b as DropdownMenuTrigger } from '../chunks/dropdown-menu-DnPBut1Q.mjs';
2
2
  import 'react';
3
- import '../chunks/index-B-46hbYc.mjs';
3
+ import '../chunks/index-Dsw02Eup.mjs';
4
4
  import 'react-dom';
5
5
  import '@radix-ui/react-slot';
6
6
  import 'react/jsx-runtime';
7
- import '../chunks/index-RaUpQCps.mjs';
8
- import '../chunks/index-SLs8oClH.mjs';
9
- import '../chunks/index-C__GtYCW.mjs';
10
- import '../chunks/index-C5uKwhOD.mjs';
11
- import '../chunks/createLucideIcon-D3jW_oal.mjs';
7
+ import '../chunks/index-D4jPaBZ2.mjs';
8
+ import '../chunks/index-1toTCGyr.mjs';
9
+ import '../chunks/index-C8u7IIcP.mjs';
10
+ import '../chunks/index-zIaBOKQ3.mjs';
11
+ import '../chunks/createLucideIcon-C11Tr46U.mjs';
12
12
  import '@radix-ui/react-collection';
13
- import '../chunks/index-Csf3aM1P.mjs';
14
- import '../chunks/index-EcI_mW3m.mjs';
15
- import '../chunks/index-Dp_x2nI3.mjs';
16
- import '../chunks/index-BbPnHdtV.mjs';
17
- import '../chunks/tslib.es6-B32hQ9eG.mjs';
18
- import '../chunks/index-DF-3JHwb.mjs';
19
- import '../chunks/index-BzAMFivh.mjs';
20
- import '../chunks/index-DDM8Lpbb.mjs';
21
- import '../chunks/index-JZ-FhLOH.mjs';
22
- import '../chunks/index-DGUU265f.mjs';
23
- import '../chunks/index-DghbVew_.mjs';
24
- import '../chunks/utils-Dws4Ft8U.mjs';
25
- import '../chunks/bundle-mjs-CjTndHqR.mjs';
26
- import '../chunks/check-VfNn6myv.mjs';
27
- import '../chunks/chevron-right-Bb52eown.mjs';
13
+ import '../chunks/index-UxWlwQlk.mjs';
14
+ import '../chunks/index-4NpeUekv.mjs';
15
+ import '../chunks/index-DC-gAYjS.mjs';
16
+ import '../chunks/index-z4Hk6sF4.mjs';
17
+ import '../chunks/tslib.es6-Q9puKanr.mjs';
18
+ import '../chunks/index-gX0V59dZ.mjs';
19
+ import '../chunks/index-B87m6Bfb.mjs';
20
+ import '../chunks/index-DAa5gqEY.mjs';
21
+ import '../chunks/index-BksCjWh6.mjs';
22
+ import '../chunks/index-DfeRLazC.mjs';
23
+ import '../chunks/index-DIHpzffL.mjs';
24
+ import '../chunks/utils-BDcRwQMd.mjs';
25
+ import '../chunks/bundle-mjs-CXmmFvYo.mjs';
26
+ import '../chunks/check-Ds358kZc.mjs';
27
+ import '../chunks/chevron-right-Dq6zFe5E.mjs';
28
28
  //# sourceMappingURL=index.mjs.map
@@ -1,25 +1,25 @@
1
1
  import React__default, { forwardRef, useImperativeHandle, Fragment, useMemo, useRef, useReducer, useEffect, useCallback, useState } from 'react';
2
- import { g as getDefaultExportFromCjs } from '../chunks/_commonjsHelpers-CrMz3UM5.mjs';
3
- import { c as __awaiter } from '../chunks/tslib.es6-B32hQ9eG.mjs';
4
- import { t as toast } from '../chunks/use-toast-juJ63qRI.mjs';
5
- import { c as cn, f as formatBytes } from '../chunks/utils-Dws4Ft8U.mjs';
6
- import { U as Upload } from '../chunks/upload-CQFfafJB.mjs';
7
- import { c as createLucideIcon } from '../chunks/createLucideIcon-D3jW_oal.mjs';
8
- import { P as Progress } from '../chunks/progress-CwFC70K1.mjs';
9
- import { X } from '../chunks/x-CQ0W-nWi.mjs';
10
- import { S as ScrollArea } from '../chunks/scroll-area-D0gA5i73.mjs';
11
- import { B as Button } from '../chunks/button-BvsCd2vf.mjs';
12
- import '../chunks/bundle-mjs-CjTndHqR.mjs';
2
+ import { g as getDefaultExportFromCjs } from '../chunks/_commonjsHelpers-DLsfzCcd.mjs';
3
+ import { c as __awaiter } from '../chunks/tslib.es6-Q9puKanr.mjs';
4
+ import { t as toast } from '../chunks/use-toast-CLJJgfL0.mjs';
5
+ import { c as cn, f as formatBytes } from '../chunks/utils-BDcRwQMd.mjs';
6
+ import { U as Upload } from '../chunks/upload-DvgPaJGb.mjs';
7
+ import { c as createLucideIcon } from '../chunks/createLucideIcon-C11Tr46U.mjs';
8
+ import { P as Progress } from '../chunks/progress-e_BEvMwp.mjs';
9
+ import { X } from '../chunks/x-B6hDJA_l.mjs';
10
+ import { S as ScrollArea } from '../chunks/scroll-area-qiUBme0Q.mjs';
11
+ import { B as Button } from '../chunks/button-CZpmCmNo.mjs';
12
+ import '../chunks/bundle-mjs-CXmmFvYo.mjs';
13
13
  import 'react/jsx-runtime';
14
14
  import 'react-dom';
15
15
  import '@radix-ui/react-slot';
16
- import '../chunks/index-B-46hbYc.mjs';
17
- import '../chunks/index-DGUU265f.mjs';
18
- import '../chunks/index-RaUpQCps.mjs';
19
- import '../chunks/index-C__GtYCW.mjs';
20
- import '../chunks/index-Dp_x2nI3.mjs';
21
- import '../chunks/index-Csf3aM1P.mjs';
22
- import '../chunks/index-DslxcA48.mjs';
16
+ import '../chunks/index-Dsw02Eup.mjs';
17
+ import '../chunks/index-DfeRLazC.mjs';
18
+ import '../chunks/index-D4jPaBZ2.mjs';
19
+ import '../chunks/index-C8u7IIcP.mjs';
20
+ import '../chunks/index-DC-gAYjS.mjs';
21
+ import '../chunks/index-UxWlwQlk.mjs';
22
+ import '../chunks/index-CcmH_f2V.mjs';
23
23
  import 'class-variance-authority';
24
24
 
25
25
  const __iconNode = [
@@ -1,26 +1,28 @@
1
1
  import React__default from 'react';
2
- import { N as NumericFormat } from '../chunks/react-number-format.es-B11gLKR5.mjs';
3
- import { c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
4
- import { C as Checkbox } from '../chunks/checkbox-CgrFFc0p.mjs';
5
- import { T as Table, a as TableHeader, e as TableRow, d as TableHead, b as TableBody, f as TableCell } from '../chunks/table-Bfl280bq.mjs';
6
- import { S as Select, h as SelectTrigger, i as SelectValue, a as SelectContent, c as SelectItem } from '../chunks/select-Cl_ZzI9R.mjs';
7
- import { I as Input } from '../chunks/input-B4HxPY7D.mjs';
8
- import { B as Button } from '../chunks/button-BvsCd2vf.mjs';
9
- import '../chunks/bundle-mjs-CjTndHqR.mjs';
10
- import '../chunks/index-RaUpQCps.mjs';
2
+ import { N as NumericFormat } from '../chunks/react-number-format.es-HizMU4ab.mjs';
3
+ import { c as cn } from '../chunks/utils-BDcRwQMd.mjs';
4
+ import { C as Checkbox } from '../chunks/checkbox-DvxpZsiG.mjs';
5
+ import { T as Table, a as TableHeader, e as TableRow, d as TableHead, b as TableBody, f as TableCell } from '../chunks/table-BzhSKY4n.mjs';
6
+ import { S as Select, h as SelectTrigger, i as SelectValue, a as SelectContent, c as SelectItem } from '../chunks/select-BBatgGtL.mjs';
7
+ import { I as Input } from '../chunks/input-B-W81Xmi.mjs';
8
+ import { B as Button } from '../chunks/button-CZpmCmNo.mjs';
9
+ import '../chunks/bundle-mjs-CXmmFvYo.mjs';
10
+ import '../chunks/index-D4jPaBZ2.mjs';
11
11
  import 'react/jsx-runtime';
12
- import '../chunks/index-B-46hbYc.mjs';
12
+ import '../chunks/index-Dsw02Eup.mjs';
13
13
  import 'react-dom';
14
14
  import '@radix-ui/react-slot';
15
- import '../chunks/index-SLs8oClH.mjs';
16
- import '../chunks/index-C__GtYCW.mjs';
17
- import '../chunks/index-3TdUvynV.mjs';
18
- import '../chunks/index-DDM8Lpbb.mjs';
19
- import '../chunks/index-DGUU265f.mjs';
20
- import '../chunks/check-VfNn6myv.mjs';
21
- import '../chunks/createLucideIcon-D3jW_oal.mjs';
15
+ import '../chunks/index-1toTCGyr.mjs';
16
+ import '../chunks/index-C8u7IIcP.mjs';
17
+ import '../chunks/index-COfEgTJM.mjs';
18
+ import '../chunks/index-DAa5gqEY.mjs';
19
+ import '../chunks/index-DfeRLazC.mjs';
20
+ import '../chunks/check-Ds358kZc.mjs';
21
+ import '../chunks/createLucideIcon-C11Tr46U.mjs';
22
22
  import '@radix-ui/react-select';
23
- import '../chunks/chevron-down-CD1QpvBA.mjs';
23
+ import '../chunks/separator-DYyhdAi6.mjs';
24
+ import '../chunks/chevron-down-CDFTds2-.mjs';
25
+ import '../chunks/x-B6hDJA_l.mjs';
24
26
  import 'class-variance-authority';
25
27
 
26
28
  const styleInput = "border-input file:text-foreground placeholder:text-muted-foreground focus-visible:ring-ring flex h-10 w-full rounded-md border bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-1 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm";
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/components/default/editable-table/EditableTable.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { NumericFormat } from \"react-number-format\";\nimport { Button } from \"@/components/ui/button\";\nimport { Checkbox } from \"@/components/ui/checkbox\";\nimport { Input } from \"@/components/ui/input\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\nexport const styleInput =\n\t\"border-input file:text-foreground placeholder:text-muted-foreground focus-visible:ring-ring flex h-10 w-full rounded-md border bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-1 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\";\n\nfunction formatNumberWithComma({\n\tvalue,\n\tminimumFractionDigits = 0,\n\tmaximumFractionDigits = 12,\n\tcurrency,\n}: {\n\tvalue: number;\n\tminimumFractionDigits?: number;\n\tmaximumFractionDigits?: number;\n\tcurrency?: string | null;\n}) {\n\tconst options: Intl.NumberFormatOptions = {\n\t\tminimumFractionDigits,\n\t\tmaximumFractionDigits,\n\t};\n\n\tif (currency) {\n\t\toptions.style = \"currency\";\n\t\toptions.currency = currency;\n\t}\n\n\t// Conversão segura para evitar NaN\n\tconst numberValue = Number(value);\n\tif (Number.isNaN(numberValue)) return String(value);\n\n\tconst formatter = new Intl.NumberFormat(\"pt-BR\", options);\n\treturn formatter.format(numberValue);\n}\n\ninterface EditableOption {\n\tvalue: string | number | boolean;\n\tlabel: string;\n}\n\nexport interface EditableColumn<T> {\n\tkey: keyof T;\n\tlabel: string;\n\ttype?: \"text\" | \"number\" | \"select\" | \"boolean\";\n\trequired?: boolean;\n\toptions?: EditableOption[];\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\trender?: (value: any, row: T, rowIndex: number) => React.ReactNode;\n\teditable?: boolean;\n}\n\ninterface EditableTableProps<T> {\n\tdata: T[];\n\tcolumns: EditableColumn<T>[];\n\trowKey: keyof T;\n\tisIntegrationTable?: boolean;\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tonSave: (field: keyof T, value: any, row: T) => Promise<void> | void;\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tonChange?: (rowId: number, field: keyof T, value: any) => void;\n\tonCancel?: (rowId: number, field: keyof T) => void;\n\tclassName?: string;\n}\n\n// biome-ignore lint/suspicious/noExplicitAny: <any>\nexport function EditableTable<T extends Record<string, any>>({\n\tdata,\n\tcolumns,\n\trowKey,\n\tonSave,\n\tonChange,\n\tonCancel,\n\tclassName,\n\tisIntegrationTable = true,\n}: EditableTableProps<T>) {\n\tconst [editing, setEditing] = React.useState<{\n\t\tid: number;\n\t\tfield: keyof T;\n\t} | null>(null);\n\tconst [tempValues, setTempValues] = React.useState<Record<number, Partial<T>>>({});\n\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tconst handleTempChange = (id: number, field: keyof T, value: any) => {\n\t\tsetTempValues((prev) => ({\n\t\t\t...prev,\n\t\t\t[id]: { ...prev[id], [field]: value },\n\t\t}));\n\t\tonChange?.(id, field, value);\n\t};\n\n\tconst confirmEditing = async (id: number, field: keyof T) => {\n\t\tconst value = tempValues[id]?.[field];\n\t\tconst row = data.find((r) => r[rowKey] === id);\n\t\tif (!row) return;\n\n\t\tif (value !== undefined) await onSave(field, value, row);\n\n\t\tsetEditing(null);\n\t\tsetTempValues((prev) => {\n\t\t\tconst next = { ...prev };\n\t\t\tdelete next[id]?.[field];\n\t\t\treturn next;\n\t\t});\n\t\twindow.getSelection()?.removeAllRanges();\n\t};\n\n\tconst cancelEditing = (id: number, field: keyof T) => {\n\t\tonCancel?.(id, field);\n\t\tsetEditing(null);\n\t\twindow.getSelection()?.removeAllRanges();\n\t};\n\n\treturn (\n\t\t<div className={cn(\"overflow-x-auto rounded-lg\", className)}>\n\t\t\t<Table className=\"min-w-full\">\n\t\t\t\t{/* Cabeçalho */}\n\t\t\t\t<TableHeader className=\"bg-card sticky top-0 z-5\">\n\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t{columns.map((col) => (\n\t\t\t\t\t\t\t<TableHead className=\"h-10 font-medium\" key={String(col.key)}>\n\t\t\t\t\t\t\t\t{col.label} {col.required && <span className=\"text-destructive\">*</span>}\n\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</TableHeader>\n\n\t\t\t\t{/* Linhas */}\n\t\t\t\t<TableBody className=\"text-muted-foreground\">\n\t\t\t\t\t{data.map((row, rowIndex) => (\n\t\t\t\t\t\t<TableRow key={String(row[rowKey])} className=\"even:bg-soft\">\n\t\t\t\t\t\t\t{columns.map((col) => {\n\t\t\t\t\t\t\t\tconst value = row[col.key];\n\t\t\t\t\t\t\t\tconst rowId = row[rowKey] as unknown as number;\n\t\t\t\t\t\t\t\tconst isEditing = editing?.id === rowId && editing.field === col.key;\n\n\t\t\t\t\t\t\t\tconst cellContent = () => {\n\t\t\t\t\t\t\t\t\tif (col.render && !isEditing) {\n\t\t\t\t\t\t\t\t\t\treturn <div key={String(col.key)}>{col.render(value, row, rowIndex)}</div>;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t// Se campo de texto não é editável, renderizar como texto simples (modo show)\n\t\t\t\t\t\t\t\t\tif (col.type === \"text\" && col.editable === false) {\n\t\t\t\t\t\t\t\t\t\tconst displayValue =\n\t\t\t\t\t\t\t\t\t\t\tvalue === null || value === undefined || value === \"\" ? \"-\" : String(value);\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-readonly-text`}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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{displayValue}\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (col.type === \"select\") {\n\t\t\t\t\t\t\t\t\t\tconst currentValue = tempValues[rowId]?.[col.key] ?? value ?? \"\";\n\n\t\t\t\t\t\t\t\t\t\t// Se a coluna não é editável, sempre renderizar como readonly\n\t\t\t\t\t\t\t\t\t\tif (col.editable === false) {\n\t\t\t\t\t\t\t\t\t\t\tconst selectedLabel =\n\t\t\t\t\t\t\t\t\t\t\t\tcol.options?.find((opt) => String(opt.value) === String(currentValue))\n\t\t\t\t\t\t\t\t\t\t\t\t\t?.label ?? \"-\";\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\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\tkey={`${rowId}-${String(col.key)}-readonly`}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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\t\t{selectedLabel}\n\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);\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t// Verificar se o select deve ser editável baseado na linha e tipo de tabela\n\t\t\t\t\t\t\t\t\t\tconst isEditableSelect = rowIndex === 0 || !isIntegrationTable;\n\n\t\t\t\t\t\t\t\t\t\tif (!isEditableSelect) {\n\t\t\t\t\t\t\t\t\t\t\tconst selectedLabel =\n\t\t\t\t\t\t\t\t\t\t\t\tcol.options?.find((opt) => String(opt.value) === String(currentValue))\n\t\t\t\t\t\t\t\t\t\t\t\t\t?.label ?? \"-\";\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\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\tkey={`${rowId}-${String(col.key)}-readonly`}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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\t\t{selectedLabel}\n\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);\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-select`}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={String(currentValue)}\n\t\t\t\t\t\t\t\t\t\t\t\tonValueChange={async (val) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, val);\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst rowData = data.find((r) => r[rowKey] === rowId);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (rowData) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tawait onSave(col.key, val, rowData);\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}}\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<SelectTrigger className=\"text-foreground bg-background *:svg-text-foreground h-9 w-fit min-w-20 text-sm\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<SelectValue />\n\t\t\t\t\t\t\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t\t\t\t\t\t\t<SelectContent className=\"max-h-[300px] overflow-y-auto overflow-x-hidden\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{col.options?.map((opt) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<SelectItem key={String(opt.value)} value={String(opt.value)}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{opt.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</SelectItem>\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</SelectContent>\n\t\t\t\t\t\t\t\t\t\t\t</Select>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (col.type === \"boolean\") {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}`}\n\t\t\t\t\t\t\t\t\t\t\t\tchecked={!!value}\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={col.editable === false}\n\t\t\t\t\t\t\t\t\t\t\t\tonCheckedChange={(checked: boolean) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (col.editable === false) return;\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, checked);\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst rowData = data.find((r) => r[rowKey] === rowId);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (rowData) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonSave(col.key, checked, rowData);\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}}\n\t\t\t\t\t\t\t\t\t\t\t\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (isEditing && col.type === \"number\" && col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<NumericFormat\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-edit`}\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={tempValues[rowId]?.[col.key] ?? value ?? \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\tvalueIsNumericString\n\t\t\t\t\t\t\t\t\t\t\t\tdecimalSeparator=\",\"\n\t\t\t\t\t\t\t\t\t\t\t\tthousandSeparator=\".\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(styleInput, \"bg-background box-border h-9 w-full\")}\n\t\t\t\t\t\t\t\t\t\t\t\tonValueChange={(v) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, String(v.floatValue))\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\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Enter\") confirmEditing(rowId, col.key);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Escape\") cancelEditing(rowId, col.key);\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\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (isEditing && col.type === \"text\" && col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-edit`}\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={tempValues[rowId]?.[col.key] ?? value ?? \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(styleInput, \"bg-background box-border h-9 w-full\")}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => handleTempChange(rowId, col.key, e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Enter\") confirmEditing(rowId, col.key);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Escape\") cancelEditing(rowId, col.key);\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\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"table\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\tstyleInput,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bg-background box-border h-9 w-full cursor-default justify-start\",\n\t\t\t\t\t\t\t\t\t\t\t\tcol.editable === false && \"cursor-not-allowed opacity-60\",\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={col.editable === false}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEditing({ id: rowId, field: col.key });\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>\n\t\t\t\t\t\t\t\t\t\t\t{value === null || value === undefined || value === \"\" ? (\n\t\t\t\t\t\t\t\t\t\t\t\tcol.editable !== false ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"Clique para editar...\"\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\t\t\"-\"\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) : col.type === \"number\" ? (\n\t\t\t\t\t\t\t\t\t\t\t\tformatNumberWithComma({\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tminimumFractionDigits: 2,\n\t\t\t\t\t\t\t\t\t\t\t\t\tmaximumFractionDigits: 10,\n\t\t\t\t\t\t\t\t\t\t\t\t}) || \"0,00\"\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<span className=\"truncate block w-full text-left\">{String(value)}</span>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableCell key={String(col.key)} className=\"p-2\">\n\t\t\t\t\t\t\t\t\t\t<div className=\"md:w-[150px]\">{cellContent()}</div>\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})}\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t))}\n\t\t\t\t</TableBody>\n\t\t\t</Table>\n\t\t</div>\n\t);\n}\n"],"names":["styleInput","formatNumberWithComma","value","minimumFractionDigits","maximumFractionDigits","currency","options","style","numberValue","Number","isNaN","String","formatter","Intl","NumberFormat","format","EditableTable","data","columns","rowKey","onSave","onChange","onCancel","className","isIntegrationTable","editing","setEditing","React","useState","tempValues","setTempValues","handleTempChange","id","field","prev","confirmEditing","row","find","r","undefined","next","window","getSelection","removeAllRanges","cancelEditing","div","cn","Table","TableHeader","TableRow","map","col","TableHead","key","label","required","span","TableBody","rowIndex","rowId","isEditing","cellContent","render","type","editable","displayValue","currentValue","selectedLabel","opt","isEditableSelect","Select","onValueChange","val","rowData","SelectTrigger","SelectValue","SelectContent","SelectItem","Checkbox","checked","disabled","onCheckedChange","onBlur","NumericFormat","autoFocus","valueIsNumericString","decimalSeparator","thousandSeparator","v","floatValue","onKeyDown","e","Input","target","Button","variant","onClick","TableCell"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/components/default/editable-table/EditableTable.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { NumericFormat } from \"react-number-format\";\nimport { Button } from \"@/components/ui/button\";\nimport { Checkbox } from \"@/components/ui/checkbox\";\nimport { Input } from \"@/components/ui/input\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"@/components/ui/select\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/lib/utils\";\n\nexport const styleInput =\n\t\"border-input file:text-foreground placeholder:text-muted-foreground focus-visible:ring-ring flex h-10 w-full rounded-md border bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-1 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\";\n\nfunction formatNumberWithComma({\n\tvalue,\n\tminimumFractionDigits = 0,\n\tmaximumFractionDigits = 12,\n\tcurrency,\n}: {\n\tvalue: number;\n\tminimumFractionDigits?: number;\n\tmaximumFractionDigits?: number;\n\tcurrency?: string | null;\n}) {\n\tconst options: Intl.NumberFormatOptions = {\n\t\tminimumFractionDigits,\n\t\tmaximumFractionDigits,\n\t};\n\n\tif (currency) {\n\t\toptions.style = \"currency\";\n\t\toptions.currency = currency;\n\t}\n\n\t// Conversão segura para evitar NaN\n\tconst numberValue = Number(value);\n\tif (Number.isNaN(numberValue)) return String(value);\n\n\tconst formatter = new Intl.NumberFormat(\"pt-BR\", options);\n\treturn formatter.format(numberValue);\n}\n\ninterface EditableOption {\n\tvalue: string | number | boolean;\n\tlabel: string;\n}\n\nexport interface EditableColumn<T> {\n\tkey: keyof T;\n\tlabel: string;\n\ttype?: \"text\" | \"number\" | \"select\" | \"boolean\";\n\trequired?: boolean;\n\toptions?: EditableOption[];\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\trender?: (value: any, row: T, rowIndex: number) => React.ReactNode;\n\teditable?: boolean;\n}\n\ninterface EditableTableProps<T> {\n\tdata: T[];\n\tcolumns: EditableColumn<T>[];\n\trowKey: keyof T;\n\tisIntegrationTable?: boolean;\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tonSave: (field: keyof T, value: any, row: T) => Promise<void> | void;\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tonChange?: (rowId: number, field: keyof T, value: any) => void;\n\tonCancel?: (rowId: number, field: keyof T) => void;\n\tclassName?: string;\n}\n\n// biome-ignore lint/suspicious/noExplicitAny: <any>\nexport function EditableTable<T extends Record<string, any>>({\n\tdata,\n\tcolumns,\n\trowKey,\n\tonSave,\n\tonChange,\n\tonCancel,\n\tclassName,\n\tisIntegrationTable = true,\n}: EditableTableProps<T>) {\n\tconst [editing, setEditing] = React.useState<{\n\t\tid: number;\n\t\tfield: keyof T;\n\t} | null>(null);\n\tconst [tempValues, setTempValues] = React.useState<Record<number, Partial<T>>>({});\n\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tconst handleTempChange = (id: number, field: keyof T, value: any) => {\n\t\tsetTempValues((prev) => ({\n\t\t\t...prev,\n\t\t\t[id]: { ...prev[id], [field]: value },\n\t\t}));\n\t\tonChange?.(id, field, value);\n\t};\n\n\tconst confirmEditing = async (id: number, field: keyof T) => {\n\t\tconst value = tempValues[id]?.[field];\n\t\tconst row = data.find((r) => r[rowKey] === id);\n\t\tif (!row) return;\n\n\t\tif (value !== undefined) await onSave(field, value, row);\n\n\t\tsetEditing(null);\n\t\tsetTempValues((prev) => {\n\t\t\tconst next = { ...prev };\n\t\t\tdelete next[id]?.[field];\n\t\t\treturn next;\n\t\t});\n\t\twindow.getSelection()?.removeAllRanges();\n\t};\n\n\tconst cancelEditing = (id: number, field: keyof T) => {\n\t\tonCancel?.(id, field);\n\t\tsetEditing(null);\n\t\twindow.getSelection()?.removeAllRanges();\n\t};\n\n\treturn (\n\t\t<div className={cn(\"overflow-x-auto rounded-lg\", className)}>\n\t\t\t<Table className=\"min-w-full\">\n\t\t\t\t{/* Cabeçalho */}\n\t\t\t\t<TableHeader className=\"bg-card sticky top-0 z-5\">\n\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t{columns.map((col) => (\n\t\t\t\t\t\t\t<TableHead className=\"h-10 font-medium\" key={String(col.key)}>\n\t\t\t\t\t\t\t\t{col.label} {col.required && <span className=\"text-destructive\">*</span>}\n\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</TableHeader>\n\n\t\t\t\t{/* Linhas */}\n\t\t\t\t<TableBody className=\"text-muted-foreground\">\n\t\t\t\t\t{data.map((row, rowIndex) => (\n\t\t\t\t\t\t<TableRow key={String(row[rowKey])} className=\"even:bg-soft\">\n\t\t\t\t\t\t\t{columns.map((col) => {\n\t\t\t\t\t\t\t\tconst value = row[col.key];\n\t\t\t\t\t\t\t\tconst rowId = row[rowKey] as unknown as number;\n\t\t\t\t\t\t\t\tconst isEditing = editing?.id === rowId && editing.field === col.key;\n\n\t\t\t\t\t\t\t\tconst cellContent = () => {\n\t\t\t\t\t\t\t\t\tif (col.render && !isEditing) {\n\t\t\t\t\t\t\t\t\t\treturn <div key={String(col.key)}>{col.render(value, row, rowIndex)}</div>;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t// Se campo de texto não é editável, renderizar como texto simples (modo show)\n\t\t\t\t\t\t\t\t\tif (col.type === \"text\" && col.editable === false) {\n\t\t\t\t\t\t\t\t\t\tconst displayValue =\n\t\t\t\t\t\t\t\t\t\t\tvalue === null || value === undefined || value === \"\" ? \"-\" : String(value);\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-readonly-text`}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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{displayValue}\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (col.type === \"select\") {\n\t\t\t\t\t\t\t\t\t\tconst currentValue = tempValues[rowId]?.[col.key] ?? value ?? \"\";\n\n\t\t\t\t\t\t\t\t\t\t// Se a coluna não é editável, sempre renderizar como readonly\n\t\t\t\t\t\t\t\t\t\tif (col.editable === false) {\n\t\t\t\t\t\t\t\t\t\t\tconst selectedLabel =\n\t\t\t\t\t\t\t\t\t\t\t\tcol.options?.find((opt) => String(opt.value) === String(currentValue))\n\t\t\t\t\t\t\t\t\t\t\t\t\t?.label ?? \"-\";\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\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\tkey={`${rowId}-${String(col.key)}-readonly`}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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\t\t{selectedLabel}\n\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);\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t// Verificar se o select deve ser editável baseado na linha e tipo de tabela\n\t\t\t\t\t\t\t\t\t\tconst isEditableSelect = rowIndex === 0 || !isIntegrationTable;\n\n\t\t\t\t\t\t\t\t\t\tif (!isEditableSelect) {\n\t\t\t\t\t\t\t\t\t\t\tconst selectedLabel =\n\t\t\t\t\t\t\t\t\t\t\t\tcol.options?.find((opt) => String(opt.value) === String(currentValue))\n\t\t\t\t\t\t\t\t\t\t\t\t\t?.label ?? \"-\";\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\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\tkey={`${rowId}-${String(col.key)}-readonly`}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-foreground px-2 text-sm\"\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\t\t{selectedLabel}\n\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);\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-select`}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={String(currentValue)}\n\t\t\t\t\t\t\t\t\t\t\t\tonValueChange={async (val) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, val);\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst rowData = data.find((r) => r[rowKey] === rowId);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (rowData) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tawait onSave(col.key, val, rowData);\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}}\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<SelectTrigger className=\"text-foreground bg-background *:svg-text-foreground h-9 w-fit min-w-20 text-sm\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<SelectValue />\n\t\t\t\t\t\t\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t\t\t\t\t\t\t<SelectContent className=\"max-h-[300px] overflow-y-auto overflow-x-hidden\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{col.options?.map((opt) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<SelectItem key={String(opt.value)} value={String(opt.value)}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{opt.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</SelectItem>\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</SelectContent>\n\t\t\t\t\t\t\t\t\t\t\t</Select>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (col.type === \"boolean\") {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}`}\n\t\t\t\t\t\t\t\t\t\t\t\tchecked={!!value}\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={col.editable === false}\n\t\t\t\t\t\t\t\t\t\t\t\tonCheckedChange={(checked: boolean) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (col.editable === false) return;\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, checked);\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst rowData = data.find((r) => r[rowKey] === rowId);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (rowData) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonSave(col.key, checked, rowData);\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}}\n\t\t\t\t\t\t\t\t\t\t\t\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (isEditing && col.type === \"number\" && col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<NumericFormat\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-edit`}\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={tempValues[rowId]?.[col.key] ?? value ?? \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\tvalueIsNumericString\n\t\t\t\t\t\t\t\t\t\t\t\tdecimalSeparator=\",\"\n\t\t\t\t\t\t\t\t\t\t\t\tthousandSeparator=\".\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(styleInput, \"bg-background box-border h-9 w-full\")}\n\t\t\t\t\t\t\t\t\t\t\t\tonValueChange={(v) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleTempChange(rowId, col.key, String(v.floatValue))\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\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Enter\") confirmEditing(rowId, col.key);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Escape\") cancelEditing(rowId, col.key);\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\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif (isEditing && col.type === \"text\" && col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`${rowId}-${String(col.key)}-edit`}\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={tempValues[rowId]?.[col.key] ?? value ?? \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(styleInput, \"bg-background box-border h-9 w-full\")}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => handleTempChange(rowId, col.key, e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\tonKeyDown={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Enter\") confirmEditing(rowId, col.key);\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (e.key === \"Escape\") cancelEditing(rowId, col.key);\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\tonBlur={() => confirmEditing(rowId, col.key)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"table\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\tstyleInput,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bg-background box-border h-9 w-full cursor-default justify-start\",\n\t\t\t\t\t\t\t\t\t\t\t\tcol.editable === false && \"cursor-not-allowed opacity-60\",\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={col.editable === false}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (col.editable !== false) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEditing({ id: rowId, field: col.key });\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>\n\t\t\t\t\t\t\t\t\t\t\t{value === null || value === undefined || value === \"\" ? (\n\t\t\t\t\t\t\t\t\t\t\t\tcol.editable !== false ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"Clique para editar...\"\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\t\t\"-\"\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) : col.type === \"number\" ? (\n\t\t\t\t\t\t\t\t\t\t\t\tformatNumberWithComma({\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tminimumFractionDigits: 2,\n\t\t\t\t\t\t\t\t\t\t\t\t\tmaximumFractionDigits: 10,\n\t\t\t\t\t\t\t\t\t\t\t\t}) || \"0,00\"\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<span className=\"truncate block w-full text-left\">{String(value)}</span>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableCell key={String(col.key)} className=\"p-2\">\n\t\t\t\t\t\t\t\t\t\t<div className=\"md:w-[150px]\">{cellContent()}</div>\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})}\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t))}\n\t\t\t\t</TableBody>\n\t\t\t</Table>\n\t\t</div>\n\t);\n}\n"],"names":["styleInput","formatNumberWithComma","value","minimumFractionDigits","maximumFractionDigits","currency","options","style","numberValue","Number","isNaN","String","formatter","Intl","NumberFormat","format","EditableTable","data","columns","rowKey","onSave","onChange","onCancel","className","isIntegrationTable","editing","setEditing","React","useState","tempValues","setTempValues","handleTempChange","id","field","prev","confirmEditing","row","find","r","undefined","next","window","getSelection","removeAllRanges","cancelEditing","div","cn","Table","TableHeader","TableRow","map","col","TableHead","key","label","required","span","TableBody","rowIndex","rowId","isEditing","cellContent","render","type","editable","displayValue","currentValue","selectedLabel","opt","isEditableSelect","Select","onValueChange","val","rowData","SelectTrigger","SelectValue","SelectContent","SelectItem","Checkbox","checked","disabled","onCheckedChange","onBlur","NumericFormat","autoFocus","valueIsNumericString","decimalSeparator","thousandSeparator","v","floatValue","onKeyDown","e","Input","target","Button","variant","onClick","TableCell"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { cva } from 'class-variance-authority';
2
2
  import React__default from 'react';
3
- import { c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
4
- import '../chunks/bundle-mjs-CjTndHqR.mjs';
3
+ import { c as cn } from '../chunks/utils-BDcRwQMd.mjs';
4
+ import '../chunks/bundle-mjs-CXmmFvYo.mjs';
5
5
 
6
6
  function Empty({ className, ...props }) {
7
7
  return /*#__PURE__*/ React__default.createElement("div", {
@@ -1,8 +1,17 @@
1
1
  import { Table } from '@tanstack/react-table';
2
2
  import React__default from 'react';
3
- import { E as ExportConfig } from '../chunks/export-config-BMsuab-C.js';
4
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
4
 
5
+ type FormatterFn<T> = (value: unknown, originalRow: T) => string | number | null;
6
+ interface ExportConfig<TData> {
7
+ exportableFields: readonly string[];
8
+ columnMapping: Partial<Record<string, string>>;
9
+ fieldFormatters?: Partial<Record<string, FormatterFn<TData>>>;
10
+ defaultFileName: string;
11
+ worksheetName: string;
12
+ emptyMessage?: string;
13
+ }
14
+
6
15
  interface ButtonExportCsvProps<TData extends object> {
7
16
  table: Table<TData>;
8
17
  disabled?: boolean;
@@ -11,20 +20,31 @@ interface ButtonExportCsvProps<TData extends object> {
11
20
  config?: ExportConfig<TData>;
12
21
  text?: string;
13
22
  rowsToExport?: TData[];
14
- sessionDate?: Date;
15
23
  }
16
- declare const ButtonExportCsv: <TData extends object>({ table, disabled, action, fileName, config, text, rowsToExport, sessionDate, }: ButtonExportCsvProps<TData>) => React__default.ReactElement;
24
+ declare const ButtonExportCsv: <TData extends object>({ table, disabled, action, fileName, config, text, rowsToExport, }: ButtonExportCsvProps<TData>) => React__default.ReactElement;
25
+
26
+ interface ButtonExportXlsProps<TData extends object> {
27
+ table: Table<TData>;
28
+ disabled?: boolean;
29
+ action?: () => void;
30
+ fileName?: string;
31
+ config: ExportConfig<TData>;
32
+ text?: string;
33
+ rowsToExport?: TData[];
34
+ }
35
+ declare const ButtonExportXls: <TData extends object>({ table, disabled, action, fileName, config, text, rowsToExport, }: ButtonExportXlsProps<TData>) => React__default.JSX.Element;
17
36
 
37
+ interface ExportOption {
38
+ label: string;
39
+ onExport: () => Promise<void> | void;
40
+ disabled?: boolean;
41
+ }
18
42
  interface ExportButtonsProps {
19
- onExportExcel?: () => Promise<void> | void;
20
- onExportPdf?: () => Promise<void> | void;
21
- excelLabel?: string;
22
- pdfLabel?: string;
43
+ options: ExportOption[];
23
44
  buttonLabel?: string;
24
45
  disabledButtons?: boolean;
25
- disabledButtonExcel?: boolean;
26
- disabledButtonPdf?: boolean;
27
46
  }
28
- declare function ExportButtons({ onExportExcel, onExportPdf, excelLabel, pdfLabel, buttonLabel, disabledButtons, disabledButtonExcel, disabledButtonPdf, }: ExportButtonsProps): react_jsx_runtime.JSX.Element;
47
+ declare function ExportButtons({ options, buttonLabel, disabledButtons, }: ExportButtonsProps): react_jsx_runtime.JSX.Element | null;
29
48
 
30
- export { ButtonExportCsv, ExportButtons };
49
+ export { ButtonExportCsv, ButtonExportXls, ExportButtons };
50
+ export type { ExportOption };