ivt 0.7.2 → 0.7.4

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 (315) hide show
  1. package/dist/accordion/index.mjs +13 -15
  2. package/dist/accordion/index.mjs.map +1 -1
  3. package/dist/accordion-table/index.mjs +26 -28
  4. package/dist/accordion-table/index.mjs.map +1 -1
  5. package/dist/alert/index.mjs +3 -3
  6. package/dist/alert-dialog/index.mjs +15 -17
  7. package/dist/alert-dialog/index.mjs.map +1 -1
  8. package/dist/aspect-ratio/index.mjs +42 -3
  9. package/dist/aspect-ratio/index.mjs.map +1 -1
  10. package/dist/auto-complete-multi-select/index.mjs +31 -33
  11. package/dist/auto-complete-multi-select/index.mjs.map +1 -1
  12. package/dist/avatar/index.mjs +130 -8
  13. package/dist/avatar/index.mjs.map +1 -1
  14. package/dist/badge/index.d.ts +1 -1
  15. package/dist/badge/index.mjs +3 -3
  16. package/dist/base/index.mjs +57 -142
  17. package/dist/base/index.mjs.map +1 -1
  18. package/dist/breadcrumb/index.mjs +5 -5
  19. package/dist/button/index.d.ts +1 -1
  20. package/dist/button/index.mjs +3 -3
  21. package/dist/button-group/index.mjs +3 -4
  22. package/dist/button-group/index.mjs.map +1 -1
  23. package/dist/calendar/index.mjs +9 -9
  24. package/dist/card/index.mjs +3 -3
  25. package/dist/carousel/index.mjs +4 -4
  26. package/dist/chart/index.mjs +2869 -1282
  27. package/dist/chart/index.mjs.map +1 -1
  28. package/dist/checkbox/index.mjs +12 -14
  29. package/dist/checkbox/index.mjs.map +1 -1
  30. package/dist/chunks/AutoComplete-qFuwmV53.mjs +95 -0
  31. package/dist/chunks/AutoComplete-qFuwmV53.mjs.map +1 -0
  32. package/dist/chunks/{CalendarRange-k63hDccF.mjs → CalendarRange-Ce7PiNfq.mjs} +8 -8
  33. package/dist/chunks/{CalendarRange-k63hDccF.mjs.map → CalendarRange-Ce7PiNfq.mjs.map} +1 -1
  34. package/dist/chunks/{ComboboxField-5Glf1Ozh.mjs → ComboboxField-DaRpRraW.mjs} +9 -9
  35. package/dist/chunks/{ComboboxField-5Glf1Ozh.mjs.map → ComboboxField-DaRpRraW.mjs.map} +1 -1
  36. package/dist/chunks/{Container-Cv6NG9kb.mjs → Container-DwaAaEiC.mjs} +2 -2
  37. package/dist/chunks/{Container-Cv6NG9kb.mjs.map → Container-DwaAaEiC.mjs.map} +1 -1
  38. package/dist/chunks/{DeleteConfirmationModal-DRseBzq7.mjs → DeleteConfirmationModal-BwTbbBAw.mjs} +4 -4
  39. package/dist/chunks/{DeleteConfirmationModal-DRseBzq7.mjs.map → DeleteConfirmationModal-BwTbbBAw.mjs.map} +1 -1
  40. package/dist/chunks/{ListItem-eGWDX0GP.mjs → ListItem-zxS4CZdq.mjs} +4 -4
  41. package/dist/chunks/{ListItem-eGWDX0GP.mjs.map → ListItem-zxS4CZdq.mjs.map} +1 -1
  42. package/dist/chunks/{TooltipIndicator-BjtHYQzo.mjs → TooltipIndicator-CwGGAeRz.mjs} +4 -4
  43. package/dist/chunks/{TooltipIndicator-BjtHYQzo.mjs.map → TooltipIndicator-CwGGAeRz.mjs.map} +1 -1
  44. package/dist/chunks/{_commonjsHelpers-D3vrMN3C.mjs → _commonjsHelpers-B2Be7UYW.mjs} +1 -1
  45. package/dist/chunks/_commonjsHelpers-B2Be7UYW.mjs.map +1 -0
  46. package/dist/chunks/{accordion-BsbSmZP2.mjs → accordion-D4JVALAO.mjs} +9 -11
  47. package/dist/chunks/{accordion-BsbSmZP2.mjs.map → accordion-D4JVALAO.mjs.map} +1 -1
  48. package/dist/chunks/{alert-Cw-E3eta.mjs → alert-D-E6nsVK.mjs} +2 -2
  49. package/dist/chunks/{alert-Cw-E3eta.mjs.map → alert-D-E6nsVK.mjs.map} +1 -1
  50. package/dist/chunks/{badge-DTn1AQbT.mjs → badge-C6mkl9yr.mjs} +2 -2
  51. package/dist/chunks/{badge-DTn1AQbT.mjs.map → badge-C6mkl9yr.mjs.map} +1 -1
  52. package/dist/chunks/{bundle-mjs-Lvc-Dri9.mjs → bundle-mjs-B1dpl-bk.mjs} +228 -154
  53. package/dist/chunks/bundle-mjs-B1dpl-bk.mjs.map +1 -0
  54. package/dist/chunks/{button-Cve1c7GQ.mjs → button-DsgJkgEz.mjs} +2 -2
  55. package/dist/chunks/{button-Cve1c7GQ.mjs.map → button-DsgJkgEz.mjs.map} +1 -1
  56. package/dist/chunks/{calendar-BTfcQ69r.mjs → calendar-Co99lCn4.mjs} +550 -166
  57. package/dist/chunks/calendar-Co99lCn4.mjs.map +1 -0
  58. package/dist/chunks/{calendar-days-D95Vh8Id.mjs → calendar-days-BF4GDmMr.mjs} +2 -2
  59. package/dist/chunks/{calendar-days-D95Vh8Id.mjs.map → calendar-days-BF4GDmMr.mjs.map} +1 -1
  60. package/dist/chunks/{card-BCce9vjU.mjs → card-Cuo7NL8y.mjs} +2 -2
  61. package/dist/chunks/{card-BCce9vjU.mjs.map → card-Cuo7NL8y.mjs.map} +1 -1
  62. package/dist/chunks/{check-F6R3Zyjv.mjs → check-CzKqQLNR.mjs} +2 -2
  63. package/dist/chunks/{check-F6R3Zyjv.mjs.map → check-CzKqQLNR.mjs.map} +1 -1
  64. package/dist/chunks/{checkbox-BONbXOR8.mjs → checkbox-C7RUdsIS.mjs} +9 -11
  65. package/dist/chunks/{checkbox-BONbXOR8.mjs.map → checkbox-C7RUdsIS.mjs.map} +1 -1
  66. package/dist/chunks/{chevron-down-CAAkkaxH.mjs → chevron-down-CZjN_vyX.mjs} +2 -2
  67. package/dist/chunks/{chevron-down-CAAkkaxH.mjs.map → chevron-down-CZjN_vyX.mjs.map} +1 -1
  68. package/dist/chunks/{chevron-left-D9H1SFsq.mjs → chevron-left-BpfBwM4S.mjs} +2 -2
  69. package/dist/chunks/{chevron-left-D9H1SFsq.mjs.map → chevron-left-BpfBwM4S.mjs.map} +1 -1
  70. package/dist/chunks/{chevron-right-BBzqWfgU.mjs → chevron-right-uq-O8rwC.mjs} +2 -2
  71. package/dist/chunks/{chevron-right-BBzqWfgU.mjs.map → chevron-right-uq-O8rwC.mjs.map} +1 -1
  72. package/dist/chunks/{chevrons-up-down-qNyleCLF.mjs → chevrons-up-down-DKM8h8j_.mjs} +2 -2
  73. package/dist/chunks/{chevrons-up-down-qNyleCLF.mjs.map → chevrons-up-down-DKM8h8j_.mjs.map} +1 -1
  74. package/dist/chunks/{command-IbA1nxIb.mjs → command-CAS791lb.mjs} +8 -8
  75. package/dist/chunks/{command-IbA1nxIb.mjs.map → command-CAS791lb.mjs.map} +1 -1
  76. package/dist/chunks/{createLucideIcon-0uwxvfEG.mjs → createLucideIcon-xkRZC0aJ.mjs} +1 -1
  77. package/dist/chunks/{createLucideIcon-0uwxvfEG.mjs.map → createLucideIcon-xkRZC0aJ.mjs.map} +1 -1
  78. package/dist/chunks/{date-BBTPAd8S.mjs → date-DYEUxjwi.mjs} +2 -2
  79. package/dist/chunks/{date-BBTPAd8S.mjs.map → date-DYEUxjwi.mjs.map} +1 -1
  80. package/dist/chunks/{dialog-B2DUrpTa.mjs → dialog-Dt_M700u.mjs} +4 -4
  81. package/dist/chunks/{dialog-B2DUrpTa.mjs.map → dialog-Dt_M700u.mjs.map} +1 -1
  82. package/dist/chunks/{ellipsis-DvX337aw.mjs → ellipsis-BcRZkfZw.mjs} +2 -2
  83. package/dist/chunks/{ellipsis-DvX337aw.mjs.map → ellipsis-BcRZkfZw.mjs.map} +1 -1
  84. package/dist/chunks/{form-CChLO9RR.mjs → form-CJnoOgoH.mjs} +299 -150
  85. package/dist/chunks/form-CJnoOgoH.mjs.map +1 -0
  86. package/dist/chunks/{format-4Jz4C5tC.mjs → format-BSPAt__h.mjs} +1 -1
  87. package/dist/chunks/{format-4Jz4C5tC.mjs.map → format-BSPAt__h.mjs.map} +1 -1
  88. package/dist/chunks/{format-numbers-BhgU0ZHz.mjs → format-numbers-BpGX211b.mjs} +2 -6
  89. package/dist/chunks/format-numbers-BpGX211b.mjs.map +1 -0
  90. package/dist/chunks/{hover-card-DX4d068Z.mjs → hover-card-DKMcpBnt.mjs} +9 -11
  91. package/dist/chunks/{hover-card-DX4d068Z.mjs.map → hover-card-DKMcpBnt.mjs.map} +1 -1
  92. package/dist/chunks/{index-6TVIC1_R.mjs → index-0DBJW078.mjs} +2 -2
  93. package/dist/chunks/{index-6TVIC1_R.mjs.map → index-0DBJW078.mjs.map} +1 -1
  94. package/dist/chunks/{index-Bx0xXTid.mjs → index-7wUPkpwA.mjs} +9 -11
  95. package/dist/chunks/{index-Bx0xXTid.mjs.map → index-7wUPkpwA.mjs.map} +1 -1
  96. package/dist/chunks/{index-Bewwph0a.mjs → index-9921_a2g.mjs} +1 -1
  97. package/dist/chunks/{index-Bewwph0a.mjs.map → index-9921_a2g.mjs.map} +1 -1
  98. package/dist/chunks/{index-CkRZ2gKz.mjs → index-B49Rv10M.mjs} +1 -1
  99. package/dist/chunks/{index-CkRZ2gKz.mjs.map → index-B49Rv10M.mjs.map} +1 -1
  100. package/dist/chunks/{index-na6H-GCB.mjs → index-B8pOe-bI.mjs} +13 -15
  101. package/dist/chunks/{index-na6H-GCB.mjs.map → index-B8pOe-bI.mjs.map} +1 -1
  102. package/dist/chunks/{index-DpW61g8q.mjs → index-B8zlei3I.mjs} +1 -1
  103. package/dist/chunks/{index-DpW61g8q.mjs.map → index-B8zlei3I.mjs.map} +1 -1
  104. package/dist/chunks/{index-CWI00LgK.mjs → index-BpZD69GD.mjs} +2 -2
  105. package/dist/chunks/{index-CWI00LgK.mjs.map → index-BpZD69GD.mjs.map} +1 -1
  106. package/dist/chunks/{index-BSGOnYAL.mjs → index-BtdTgi0_.mjs} +1 -1
  107. package/dist/chunks/{index-BSGOnYAL.mjs.map → index-BtdTgi0_.mjs.map} +1 -1
  108. package/dist/chunks/{index-YaCKvBnb.mjs → index-Cm5-jAR7.mjs} +38 -2
  109. package/dist/chunks/index-Cm5-jAR7.mjs.map +1 -0
  110. package/dist/chunks/{index-Ch8cepWA.mjs → index-CsC-dafu.mjs} +3 -3
  111. package/dist/chunks/{index-Ch8cepWA.mjs.map → index-CsC-dafu.mjs.map} +1 -1
  112. package/dist/chunks/{index-DR3ok_zE.mjs → index-CuEeN4AG.mjs} +6 -7
  113. package/dist/chunks/{index-DR3ok_zE.mjs.map → index-CuEeN4AG.mjs.map} +1 -1
  114. package/dist/chunks/{index-CO3WOWY2.mjs → index-CvWc6WZ4.mjs} +7 -9
  115. package/dist/chunks/{index-CO3WOWY2.mjs.map → index-CvWc6WZ4.mjs.map} +1 -1
  116. package/dist/chunks/{index-CYpZ8qGv.mjs → index-DSBOi0JP.mjs} +4 -5
  117. package/dist/chunks/{index-CYpZ8qGv.mjs.map → index-DSBOi0JP.mjs.map} +1 -1
  118. package/dist/chunks/{index-F1Vay3hL.mjs → index-DWtzT31F.mjs} +2 -2
  119. package/dist/chunks/{index-F1Vay3hL.mjs.map → index-DWtzT31F.mjs.map} +1 -1
  120. package/dist/chunks/{index-DCv7HM9c.mjs → index-DaifcY5X.mjs} +7 -9
  121. package/dist/chunks/{index-DCv7HM9c.mjs.map → index-DaifcY5X.mjs.map} +1 -1
  122. package/dist/chunks/{index-BrfogwJw.mjs → index-DjoMuta5.mjs} +1 -1
  123. package/dist/chunks/{index-BrfogwJw.mjs.map → index-DjoMuta5.mjs.map} +1 -1
  124. package/dist/chunks/{index-utzX5BKz.mjs → index-Dn87UbZu.mjs} +2 -2
  125. package/dist/chunks/{index-utzX5BKz.mjs.map → index-Dn87UbZu.mjs.map} +1 -1
  126. package/dist/chunks/{index-CrXpydfv.mjs → index-G8uUqzC7.mjs} +12 -2
  127. package/dist/chunks/index-G8uUqzC7.mjs.map +1 -0
  128. package/dist/chunks/{index-D2G_PixC.mjs → index-SJQIKyxi.mjs} +1 -1
  129. package/dist/chunks/{index-D2G_PixC.mjs.map → index-SJQIKyxi.mjs.map} +1 -1
  130. package/dist/chunks/{index-Dw0VFoXM.mjs → index-fcmnzZn6.mjs} +12 -5
  131. package/dist/chunks/index-fcmnzZn6.mjs.map +1 -0
  132. package/dist/chunks/{index-cxmuS08t.mjs → index-zv8c0UAU.mjs} +3 -3
  133. package/dist/chunks/{index-cxmuS08t.mjs.map → index-zv8c0UAU.mjs.map} +1 -1
  134. package/dist/chunks/index.module-B_Z75X1e.mjs +73 -0
  135. package/dist/chunks/index.module-B_Z75X1e.mjs.map +1 -0
  136. package/dist/chunks/{input-DA9gkhwB.mjs → input-NILUGijL.mjs} +2 -2
  137. package/dist/chunks/{input-DA9gkhwB.mjs.map → input-NILUGijL.mjs.map} +1 -1
  138. package/dist/chunks/input-otp-b-7MmY2H.mjs +455 -0
  139. package/dist/chunks/input-otp-b-7MmY2H.mjs.map +1 -0
  140. package/dist/chunks/{label-BgC413_9.mjs → label-81mjh4Q4.mjs} +44 -3
  141. package/dist/chunks/label-81mjh4Q4.mjs.map +1 -0
  142. package/dist/chunks/{loader-circle-CmQoMw39.mjs → loader-circle-sGBNpyP3.mjs} +2 -2
  143. package/dist/chunks/{loader-circle-CmQoMw39.mjs.map → loader-circle-sGBNpyP3.mjs.map} +1 -1
  144. package/dist/chunks/{menubar-DU7jMSAY.mjs → menubar-Dz5biTZv.mjs} +11 -13
  145. package/dist/chunks/{menubar-DU7jMSAY.mjs.map → menubar-Dz5biTZv.mjs.map} +1 -1
  146. package/dist/chunks/{multi-select-QKfLMC0m.mjs → multi-select-DeW-tL6j.mjs} +13 -13
  147. package/dist/chunks/{multi-select-QKfLMC0m.mjs.map → multi-select-DeW-tL6j.mjs.map} +1 -1
  148. package/dist/chunks/{pagination-zyJ5vFmL.mjs → pagination-0W2Kek6Z.mjs} +6 -6
  149. package/dist/chunks/{pagination-zyJ5vFmL.mjs.map → pagination-0W2Kek6Z.mjs.map} +1 -1
  150. package/dist/chunks/{popover-RcJ808cy.mjs → popover-ChoMUAP9.mjs} +11 -13
  151. package/dist/chunks/{popover-RcJ808cy.mjs.map → popover-ChoMUAP9.mjs.map} +1 -1
  152. package/dist/chunks/progress-zrBdDKEV.mjs +223 -0
  153. package/dist/chunks/progress-zrBdDKEV.mjs.map +1 -0
  154. package/dist/chunks/radio-group-r3ejuIom.mjs +258 -0
  155. package/dist/chunks/radio-group-r3ejuIom.mjs.map +1 -0
  156. package/dist/chunks/{react-number-format.es-CyaQTuwn.mjs → react-number-format.es-rRpdCutF.mjs} +1 -1
  157. package/dist/chunks/{react-number-format.es-CyaQTuwn.mjs.map → react-number-format.es-rRpdCutF.mjs.map} +1 -1
  158. package/dist/chunks/{scroll-area-DUSbQJic.mjs → scroll-area-DjtXX0pm.mjs} +9 -11
  159. package/dist/chunks/{scroll-area-DUSbQJic.mjs.map → scroll-area-DjtXX0pm.mjs.map} +1 -1
  160. package/dist/chunks/{select-DqpIJliN.mjs → select-CICQavYx.mjs} +5 -5
  161. package/dist/chunks/{select-DqpIJliN.mjs.map → select-CICQavYx.mjs.map} +1 -1
  162. package/dist/chunks/{separator-h4204yqZ.mjs → separator-CL28DVoA.mjs} +44 -3
  163. package/dist/chunks/separator-CL28DVoA.mjs.map +1 -0
  164. package/dist/chunks/{sheet-ChrvUpAV.mjs → sheet-BIN5Bwkz.mjs} +4 -4
  165. package/dist/chunks/{sheet-ChrvUpAV.mjs.map → sheet-BIN5Bwkz.mjs.map} +1 -1
  166. package/dist/chunks/{skeleton-DYRcDQga.mjs → skeleton-DEo09dsp.mjs} +2 -2
  167. package/dist/chunks/{skeleton-DYRcDQga.mjs.map → skeleton-DEo09dsp.mjs.map} +1 -1
  168. package/dist/chunks/slider-C_afdOBq.mjs +588 -0
  169. package/dist/chunks/slider-C_afdOBq.mjs.map +1 -0
  170. package/dist/chunks/{sortable-B9EKkKQQ.mjs → sortable-Hz2p-hG_.mjs} +3 -3
  171. package/dist/chunks/{sortable-B9EKkKQQ.mjs.map → sortable-Hz2p-hG_.mjs.map} +1 -1
  172. package/dist/chunks/styles-DQr_CtBg.mjs +6 -0
  173. package/dist/chunks/styles-DQr_CtBg.mjs.map +1 -0
  174. package/dist/chunks/switch-CoxjUYji.mjs +138 -0
  175. package/dist/chunks/switch-CoxjUYji.mjs.map +1 -0
  176. package/dist/chunks/{table-Bf_4RiC6.mjs → table-CaTzvnGO.mjs} +2 -2
  177. package/dist/chunks/{table-Bf_4RiC6.mjs.map → table-CaTzvnGO.mjs.map} +1 -1
  178. package/dist/chunks/{tabs-BH56W9Uk.mjs → tabs-DbcqE74l.mjs} +9 -10
  179. package/dist/chunks/{tabs-BH56W9Uk.mjs.map → tabs-DbcqE74l.mjs.map} +1 -1
  180. package/dist/chunks/{textarea-D1VTvn_8.mjs → textarea-C99bTFre.mjs} +2 -2
  181. package/dist/chunks/{textarea-D1VTvn_8.mjs.map → textarea-C99bTFre.mjs.map} +1 -1
  182. package/dist/chunks/{toggle-DPn3fWo1.mjs → toggle-x7-6JYvP.mjs} +4 -5
  183. package/dist/chunks/{toggle-DPn3fWo1.mjs.map → toggle-x7-6JYvP.mjs.map} +1 -1
  184. package/dist/chunks/{tooltip-DL6xVJHi.mjs → tooltip-aCFcTWvT.mjs} +11 -13
  185. package/dist/chunks/{tooltip-DL6xVJHi.mjs.map → tooltip-aCFcTWvT.mjs.map} +1 -1
  186. package/dist/chunks/{trash-2-B6-kuqxf.mjs → trash-2-BRTBRPsE.mjs} +2 -2
  187. package/dist/chunks/{trash-2-B6-kuqxf.mjs.map → trash-2-BRTBRPsE.mjs.map} +1 -1
  188. package/dist/chunks/{triangle-alert-Gr8soT6b.mjs → triangle-alert-DEr_0gbo.mjs} +2 -2
  189. package/dist/chunks/{triangle-alert-Gr8soT6b.mjs.map → triangle-alert-DEr_0gbo.mjs.map} +1 -1
  190. package/dist/chunks/{tslib.es6-Bf7t9JE-.mjs → tslib.es6-9fTryOSE.mjs} +1 -1
  191. package/dist/chunks/{tslib.es6-Bf7t9JE-.mjs.map → tslib.es6-9fTryOSE.mjs.map} +1 -1
  192. package/dist/chunks/{utils-BOlqGJrg.mjs → utils-M7D-rn0u.mjs} +2 -2
  193. package/dist/chunks/{utils-BOlqGJrg.mjs.map → utils-M7D-rn0u.mjs.map} +1 -1
  194. package/dist/chunks/{wand-sparkles-BOLdCXYe.mjs → wand-sparkles-cr6EaHA_.mjs} +2 -2
  195. package/dist/chunks/{wand-sparkles-BOLdCXYe.mjs.map → wand-sparkles-cr6EaHA_.mjs.map} +1 -1
  196. package/dist/chunks/{x-DWHixXf6.mjs → x-Heb3hHKJ.mjs} +2 -2
  197. package/dist/chunks/{x-DWHixXf6.mjs.map → x-Heb3hHKJ.mjs.map} +1 -1
  198. package/dist/collapsible/index.mjs +8 -10
  199. package/dist/collapsible/index.mjs.map +1 -1
  200. package/dist/combobox/index.mjs +25 -27
  201. package/dist/combobox/index.mjs.map +1 -1
  202. package/dist/command/index.mjs +19 -21
  203. package/dist/command/index.mjs.map +1 -1
  204. package/dist/context-menu/index.mjs +21 -23
  205. package/dist/context-menu/index.mjs.map +1 -1
  206. package/dist/dash/index.mjs +25 -26
  207. package/dist/dash/index.mjs.map +1 -1
  208. package/dist/data-table/index.mjs +33 -35
  209. package/dist/data-table/index.mjs.map +1 -1
  210. package/dist/date-picker/index.mjs +26 -28
  211. package/dist/date-picker/index.mjs.map +1 -1
  212. package/dist/dialog/index.mjs +18 -20
  213. package/dist/dialog/index.mjs.map +1 -1
  214. package/dist/drawer/index.mjs +15 -17
  215. package/dist/drawer/index.mjs.map +1 -1
  216. package/dist/dropdown-menu/index.mjs +21 -23
  217. package/dist/dropdown-menu/index.mjs.map +1 -1
  218. package/dist/dropzone/index.mjs +16 -18
  219. package/dist/dropzone/index.mjs.map +1 -1
  220. package/dist/editable-table/index.mjs +52 -30
  221. package/dist/editable-table/index.mjs.map +1 -1
  222. package/dist/empty/index.mjs +2 -2
  223. package/dist/field/index.mjs +4 -5
  224. package/dist/field/index.mjs.map +1 -1
  225. package/dist/form/index.mjs +4 -5
  226. package/dist/form/index.mjs.map +1 -1
  227. package/dist/form-fields/index.mjs +27 -29
  228. package/dist/form-fields/index.mjs.map +1 -1
  229. package/dist/form-layout/index.d.ts +85 -0
  230. package/dist/form-layout/index.mjs +534 -0
  231. package/dist/form-layout/index.mjs.map +1 -0
  232. package/dist/hover-card/index.mjs +14 -16
  233. package/dist/hover-card/index.mjs.map +1 -1
  234. package/dist/icon/index.mjs +1 -1
  235. package/dist/index.css +1 -1
  236. package/dist/input/index.mjs +3 -3
  237. package/dist/input-group/index.mjs +5 -5
  238. package/dist/input-otp/index.mjs +5 -455
  239. package/dist/input-otp/index.mjs.map +1 -1
  240. package/dist/item/index.mjs +3 -4
  241. package/dist/item/index.mjs.map +1 -1
  242. package/dist/ivt.css +1 -1
  243. package/dist/kbd/index.mjs +2 -2
  244. package/dist/label/index.mjs +3 -4
  245. package/dist/label/index.mjs.map +1 -1
  246. package/dist/layout/index.mjs +22 -24
  247. package/dist/layout/index.mjs.map +1 -1
  248. package/dist/menubar/index.mjs +22 -24
  249. package/dist/menubar/index.mjs.map +1 -1
  250. package/dist/multi-input-list/index.d.ts +0 -1
  251. package/dist/multi-input-list/index.mjs +31 -39
  252. package/dist/multi-input-list/index.mjs.map +1 -1
  253. package/dist/multi-select/index.mjs +32 -34
  254. package/dist/multi-select/index.mjs.map +1 -1
  255. package/dist/navigation-menu/index.mjs +15 -17
  256. package/dist/navigation-menu/index.mjs.map +1 -1
  257. package/dist/pagination/index.mjs +8 -8
  258. package/dist/popover/index.mjs +17 -19
  259. package/dist/popover/index.mjs.map +1 -1
  260. package/dist/progress/index.mjs +3 -5
  261. package/dist/progress/index.mjs.map +1 -1
  262. package/dist/radio-group/index.mjs +18 -264
  263. package/dist/radio-group/index.mjs.map +1 -1
  264. package/dist/resizable/index.mjs +3 -3
  265. package/dist/scroll-area/index.mjs +10 -12
  266. package/dist/scroll-area/index.mjs.map +1 -1
  267. package/dist/select/index.mjs +6 -6
  268. package/dist/separator/index.mjs +3 -4
  269. package/dist/separator/index.mjs.map +1 -1
  270. package/dist/shared/index.mjs +5 -5
  271. package/dist/sheet/index.mjs +18 -20
  272. package/dist/sheet/index.mjs.map +1 -1
  273. package/dist/sidebar/index.mjs +26 -28
  274. package/dist/sidebar/index.mjs.map +1 -1
  275. package/dist/skeleton/index.mjs +3 -3
  276. package/dist/skeleton-component/index.mjs +4 -4
  277. package/dist/slider/index.mjs +14 -591
  278. package/dist/slider/index.mjs.map +1 -1
  279. package/dist/sortable/index.mjs +4 -4
  280. package/dist/spinner/index.mjs +4 -4
  281. package/dist/switch/index.mjs +11 -141
  282. package/dist/switch/index.mjs.map +1 -1
  283. package/dist/table/index.mjs +3 -3
  284. package/dist/table-filter/index.mjs +53 -54
  285. package/dist/table-filter/index.mjs.map +1 -1
  286. package/dist/tabs/index.mjs +14 -16
  287. package/dist/tabs/index.mjs.map +1 -1
  288. package/dist/textarea/index.mjs +3 -3
  289. package/dist/toast/index.mjs +13 -15
  290. package/dist/toast/index.mjs.map +1 -1
  291. package/dist/toggle/index.mjs +6 -7
  292. package/dist/toggle/index.mjs.map +1 -1
  293. package/dist/toggle-group/index.mjs +11 -13
  294. package/dist/toggle-group/index.mjs.map +1 -1
  295. package/dist/tooltip/index.mjs +16 -18
  296. package/dist/tooltip/index.mjs.map +1 -1
  297. package/package.json +475 -470
  298. package/dist/chunks/_commonjsHelpers-D3vrMN3C.mjs.map +0 -1
  299. package/dist/chunks/bundle-mjs-Lvc-Dri9.mjs.map +0 -1
  300. package/dist/chunks/calendar-BTfcQ69r.mjs.map +0 -1
  301. package/dist/chunks/form-CChLO9RR.mjs.map +0 -1
  302. package/dist/chunks/format-numbers-BhgU0ZHz.mjs.map +0 -1
  303. package/dist/chunks/index-BeWMIyGj.mjs +0 -12
  304. package/dist/chunks/index-BeWMIyGj.mjs.map +0 -1
  305. package/dist/chunks/index-CrXpydfv.mjs.map +0 -1
  306. package/dist/chunks/index-D5BJ_0bf.mjs +0 -40
  307. package/dist/chunks/index-D5BJ_0bf.mjs.map +0 -1
  308. package/dist/chunks/index-Dw0VFoXM.mjs.map +0 -1
  309. package/dist/chunks/index-YaCKvBnb.mjs.map +0 -1
  310. package/dist/chunks/index.module-DOV7zOvH.mjs +0 -68
  311. package/dist/chunks/index.module-DOV7zOvH.mjs.map +0 -1
  312. package/dist/chunks/label-BgC413_9.mjs.map +0 -1
  313. package/dist/chunks/progress-BcHalZVV.mjs +0 -99
  314. package/dist/chunks/progress-BcHalZVV.mjs.map +0 -1
  315. package/dist/chunks/separator-h4204yqZ.mjs.map +0 -1
@@ -0,0 +1,534 @@
1
+ import * as React from 'react';
2
+ import { useId, useState, useEffect } from 'react';
3
+ import { P as PatternFormat, N as NumericFormat } from '../chunks/react-number-format.es-rRpdCutF.mjs';
4
+ import { c as cn } from '../chunks/utils-M7D-rn0u.mjs';
5
+ import { f as formatDateToBrazilian, p as ptBR } from '../chunks/date-DYEUxjwi.mjs';
6
+ import { f as formatMoney } from '../chunks/format-numbers-BpGX211b.mjs';
7
+ import { f as FormField, a as FormItem, b as FormLabel, c as FormControl, d as FormDescription, e as FormMessage, F as Form } from '../chunks/form-CJnoOgoH.mjs';
8
+ import { T as Toggle } from '../chunks/toggle-x7-6JYvP.mjs';
9
+ import { I as InputOTP, a as InputOTPGroup, b as InputOTPSlot } from '../chunks/input-otp-b-7MmY2H.mjs';
10
+ import { S as Slider } from '../chunks/slider-C_afdOBq.mjs';
11
+ import { R as RadioGroup, a as RadioGroupItem } from '../chunks/radio-group-r3ejuIom.mjs';
12
+ import { S as Switch } from '../chunks/switch-CoxjUYji.mjs';
13
+ import { c as createLucideIcon } from '../chunks/createLucideIcon-xkRZC0aJ.mjs';
14
+ import { A as AutoComplete } from '../chunks/AutoComplete-qFuwmV53.mjs';
15
+ import { L as ListItem } from '../chunks/ListItem-zxS4CZdq.mjs';
16
+ import { C as Checkbox } from '../chunks/checkbox-C7RUdsIS.mjs';
17
+ import { P as Popover, a as PopoverTrigger, b as PopoverContent } from '../chunks/popover-ChoMUAP9.mjs';
18
+ import { B as Button } from '../chunks/button-DsgJkgEz.mjs';
19
+ import { f as format } from '../chunks/format-BSPAt__h.mjs';
20
+ import { C as Calendar$1 } from '../chunks/calendar-Co99lCn4.mjs';
21
+ import { S as Select, h as SelectTrigger, i as SelectValue, a as SelectContent, c as SelectItem } from '../chunks/select-CICQavYx.mjs';
22
+ import { I as Input } from '../chunks/input-NILUGijL.mjs';
23
+ import { S as Separator } from '../chunks/separator-CL28DVoA.mjs';
24
+ import '../chunks/bundle-mjs-B1dpl-bk.mjs';
25
+ import '@radix-ui/react-slot';
26
+ import '../chunks/label-81mjh4Q4.mjs';
27
+ import 'react-dom';
28
+ import 'react/jsx-runtime';
29
+ import '../chunks/index-G8uUqzC7.mjs';
30
+ import '../chunks/index-BpZD69GD.mjs';
31
+ import '../chunks/index-DjoMuta5.mjs';
32
+ import 'class-variance-authority';
33
+ import '../chunks/index-B8zlei3I.mjs';
34
+ import '../chunks/index-Cm5-jAR7.mjs';
35
+ import '../chunks/index-B49Rv10M.mjs';
36
+ import '../chunks/index-SJQIKyxi.mjs';
37
+ import '../chunks/index-DWtzT31F.mjs';
38
+ import '@radix-ui/react-collection';
39
+ import '../chunks/index-CvWc6WZ4.mjs';
40
+ import '../chunks/index-Dn87UbZu.mjs';
41
+ import '../chunks/index-BtdTgi0_.mjs';
42
+ import '../chunks/index-CsC-dafu.mjs';
43
+ import '../chunks/check-CzKqQLNR.mjs';
44
+ import '../chunks/index.module-B_Z75X1e.mjs';
45
+ import '../chunks/chevrons-up-down-DKM8h8j_.mjs';
46
+ import '../chunks/command-CAS791lb.mjs';
47
+ import '../chunks/index-7wUPkpwA.mjs';
48
+ import '../chunks/index-DSBOi0JP.mjs';
49
+ import '../chunks/index-fcmnzZn6.mjs';
50
+ import '../chunks/tslib.es6-9fTryOSE.mjs';
51
+ import '../chunks/index-zv8c0UAU.mjs';
52
+ import '../chunks/dialog-Dt_M700u.mjs';
53
+ import '../chunks/x-Heb3hHKJ.mjs';
54
+ import '../chunks/TooltipIndicator-CwGGAeRz.mjs';
55
+ import '../chunks/tooltip-aCFcTWvT.mjs';
56
+ import '../chunks/index-CuEeN4AG.mjs';
57
+ import '../chunks/index-0DBJW078.mjs';
58
+ import '../chunks/badge-C6mkl9yr.mjs';
59
+ import '../chunks/chevron-left-BpfBwM4S.mjs';
60
+ import '../chunks/chevron-right-uq-O8rwC.mjs';
61
+ import '../chunks/chevron-down-CZjN_vyX.mjs';
62
+ import '@radix-ui/react-select';
63
+
64
+ const __iconNode = [
65
+ [
66
+ "path",
67
+ {
68
+ d: "M8 2v4",
69
+ key: "1cmpym"
70
+ }
71
+ ],
72
+ [
73
+ "path",
74
+ {
75
+ d: "M16 2v4",
76
+ key: "4m81vk"
77
+ }
78
+ ],
79
+ [
80
+ "rect",
81
+ {
82
+ width: "18",
83
+ height: "18",
84
+ x: "3",
85
+ y: "4",
86
+ rx: "2",
87
+ key: "1hopcy"
88
+ }
89
+ ],
90
+ [
91
+ "path",
92
+ {
93
+ d: "M3 10h18",
94
+ key: "8toen8"
95
+ }
96
+ ]
97
+ ];
98
+ const Calendar = createLucideIcon("Calendar", __iconNode);
99
+
100
+ /**
101
+ * Formata uma data para o padrão brasileiro (dd/MM/yyyy)
102
+ * @param date Data a ser formatada (Date, string ou undefined)
103
+ * @returns String formatada ou undefined se não houver valor
104
+ */ function formatDate(date) {
105
+ if (!date) return undefined;
106
+ return formatDateToBrazilian(date);
107
+ }
108
+ /**
109
+ * Formata um CNPJ no padrão brasileiro (##.###.###/####-##)
110
+ * @param cnpj CNPJ a ser formatado (string com ou sem formatação)
111
+ * @returns String formatada ou undefined se não houver valor
112
+ */ function formatCNPJ(cnpj) {
113
+ if (!cnpj) return undefined;
114
+ // Remove caracteres não numéricos
115
+ const cleaned = cnpj.replace(/\D/g, "");
116
+ // Verifica se tem 14 dígitos
117
+ if (cleaned.length !== 14) {
118
+ // Se não tiver 14 dígitos, retorna o valor original
119
+ return cnpj;
120
+ }
121
+ // Formata: ##.###.###/####-##
122
+ return `${cleaned.slice(0, 2)}.${cleaned.slice(2, 5)}.${cleaned.slice(5, 8)}/${cleaned.slice(8, 12)}-${cleaned.slice(12, 14)}`;
123
+ }
124
+ /**
125
+ * Formata um valor numérico como moeda brasileira (R$)
126
+ * @param value Valor numérico a ser formatado
127
+ * @returns String formatada ou undefined se não houver valor
128
+ */ function formatCurrency(value) {
129
+ if (value === null || value === undefined) return undefined;
130
+ return formatMoney({
131
+ value,
132
+ currency: "BRL",
133
+ minimumFractionDigits: 2,
134
+ maximumFractionDigits: 2
135
+ });
136
+ }
137
+
138
+ function AutocompleteFieldWrapper({ field, form, autocompleteConfig, placeholder, disabled }) {
139
+ const [open, setOpen] = useState(false);
140
+ // biome-ignore lint/suspicious/noExplicitAny: autocomplete option type
141
+ const [selectedOption, setSelectedOption] = useState(null);
142
+ const getOptionLabel = autocompleteConfig.getOptionLabel || // biome-ignore lint/suspicious/noExplicitAny: autocomplete option type
143
+ ((option)=>option.label || String(option.id));
144
+ const getOptionKey = autocompleteConfig.getOptionKey || // biome-ignore lint/suspicious/noExplicitAny: autocomplete option type
145
+ ((option)=>option.id);
146
+ const getOptionValue = autocompleteConfig.getOptionValue || // biome-ignore lint/suspicious/noExplicitAny: autocomplete option type
147
+ ((option)=>option.id);
148
+ useEffect(()=>{
149
+ if (field.value && autocompleteConfig.fetchOptions) {
150
+ const searchTerm = typeof field.value === "string" ? field.value : "";
151
+ autocompleteConfig.fetchOptions(searchTerm).then((options)=>{
152
+ let found = options.find((opt)=>getOptionValue(opt) === field.value);
153
+ if (!found && typeof field.value === "string") {
154
+ found = options.find((opt)=>{
155
+ const label = getOptionLabel(opt);
156
+ return label === field.value || label.toLowerCase().includes(field.value.toLowerCase());
157
+ });
158
+ }
159
+ if (!found && typeof field.value === "number") {
160
+ found = options.find((opt)=>getOptionKey(opt) === field.value);
161
+ }
162
+ if (found) {
163
+ setSelectedOption(found);
164
+ } else {
165
+ setSelectedOption(null);
166
+ }
167
+ }).catch(()=>{
168
+ setSelectedOption(null);
169
+ });
170
+ } else {
171
+ setSelectedOption(null);
172
+ }
173
+ }, [
174
+ field.value,
175
+ autocompleteConfig.fetchOptions,
176
+ getOptionValue,
177
+ getOptionLabel,
178
+ getOptionKey
179
+ ]);
180
+ return /*#__PURE__*/ React.createElement(AutoComplete, {
181
+ value: selectedOption,
182
+ // biome-ignore lint/suspicious/noExplicitAny: autocomplete option type
183
+ onChange: (option)=>{
184
+ const value = option ? getOptionValue(option) : null;
185
+ field.onChange(value);
186
+ setSelectedOption(option);
187
+ if (option && autocompleteConfig.onChangeCallback) {
188
+ autocompleteConfig.onChangeCallback(option, form);
189
+ }
190
+ },
191
+ placeholder: placeholder || "Digite para buscar...",
192
+ searchPlaceholder: autocompleteConfig.searchPlaceholder || "Buscar...",
193
+ open: open,
194
+ onOpenChange: setOpen,
195
+ fetchOptions: autocompleteConfig.fetchOptions,
196
+ disabled: disabled,
197
+ messageEmpty: autocompleteConfig.messageEmpty || "Nenhum resultado encontrado...",
198
+ getOptionLabel: getOptionLabel,
199
+ getOptionKey: getOptionKey,
200
+ className: "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
201
+ });
202
+ }
203
+ function BaseFormField({ config, control, readOnly = false, form }) {
204
+ const baseId = useId();
205
+ const { name, label, type, placeholder, description, required, options, decimalScale, disabled, prefix, radioOptions, otpLength, sliderRange, format: patternFormat, mask, autocompleteConfig, render: customRender } = config;
206
+ const formatReadOnlyValue = (value, fieldType)=>{
207
+ if (value === null || value === undefined || value === "") {
208
+ return undefined;
209
+ }
210
+ switch(fieldType){
211
+ case "date":
212
+ return formatDate(value);
213
+ case "currency":
214
+ return formatCurrency(value);
215
+ case "number":
216
+ return typeof value === "number" ? value.toLocaleString("pt-BR", {
217
+ minimumFractionDigits: decimalScale ?? 0,
218
+ maximumFractionDigits: decimalScale ?? 7
219
+ }) : String(value);
220
+ case "pattern":
221
+ if (patternFormat && typeof value === "string") {
222
+ if (patternFormat.includes("##.###.###/####-##")) {
223
+ return formatCNPJ(value);
224
+ }
225
+ return value;
226
+ }
227
+ return String(value);
228
+ case "select":
229
+ if (options && options.length > 0) {
230
+ const option = options.find((opt)=>{
231
+ const optValue = typeof opt === "object" ? opt.value : opt;
232
+ return String(optValue) === String(value);
233
+ });
234
+ if (option) {
235
+ return typeof option === "object" ? option.label : option;
236
+ }
237
+ }
238
+ return String(value);
239
+ case "checkbox":
240
+ case "switch":
241
+ case "toggle":
242
+ return value ? "Sim" : "Não";
243
+ case "radio":
244
+ if (radioOptions) {
245
+ const option = radioOptions.find((opt)=>String(opt.value) === String(value));
246
+ return option ? option.label : String(value);
247
+ }
248
+ return String(value);
249
+ case "slider":
250
+ return typeof value === "number" ? String(value) : undefined;
251
+ default:
252
+ return String(value);
253
+ }
254
+ };
255
+ if (readOnly) {
256
+ return /*#__PURE__*/ React.createElement(FormField, {
257
+ control: control,
258
+ name: name,
259
+ // biome-ignore lint/suspicious/noExplicitAny: react-hook-form field type
260
+ render: ({ field })=>/*#__PURE__*/ React.createElement(ListItem, {
261
+ title: label,
262
+ value: formatReadOnlyValue(field.value, type)
263
+ })
264
+ });
265
+ }
266
+ return /*#__PURE__*/ React.createElement(FormField, {
267
+ control: control,
268
+ name: name,
269
+ // biome-ignore lint/suspicious/noExplicitAny: react-hook-form field type
270
+ render: ({ field })=>{
271
+ if (customRender && form) {
272
+ return /*#__PURE__*/ React.createElement(FormItem, {
273
+ className: type === "checkbox" ? "flex flex-row items-start space-x-3 space-y-0 rounded-md border p-4" : ""
274
+ }, type !== "checkbox" && type !== "switch" && /*#__PURE__*/ React.createElement(FormLabel, null, label, " ", required && /*#__PURE__*/ React.createElement("span", {
275
+ className: "text-destructive"
276
+ }, "*")), /*#__PURE__*/ React.createElement(FormControl, null, customRender({
277
+ field,
278
+ form
279
+ })), type !== "checkbox" && description && /*#__PURE__*/ React.createElement(FormDescription, null, description), /*#__PURE__*/ React.createElement(FormMessage, null));
280
+ }
281
+ return /*#__PURE__*/ React.createElement(FormItem, {
282
+ className: type === "checkbox" ? "flex flex-row items-start space-x-3 space-y-0 rounded-md border p-4" : ""
283
+ }, type !== "checkbox" && type !== "switch" && /*#__PURE__*/ React.createElement(FormLabel, null, label, " ", required && /*#__PURE__*/ React.createElement("span", {
284
+ className: "text-destructive"
285
+ }, "*")), /*#__PURE__*/ React.createElement(FormControl, null, (()=>{
286
+ switch(type){
287
+ case "text":
288
+ case "email":
289
+ case "url":
290
+ case "tel":
291
+ return /*#__PURE__*/ React.createElement(Input, {
292
+ ...field,
293
+ type: type,
294
+ placeholder: placeholder,
295
+ disabled: disabled,
296
+ value: field.value || ""
297
+ });
298
+ case "textarea":
299
+ return /*#__PURE__*/ React.createElement("textarea", {
300
+ className: "flex min-h-20 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
301
+ ...field,
302
+ placeholder: placeholder,
303
+ disabled: disabled,
304
+ value: field.value || ""
305
+ });
306
+ case "number":
307
+ return /*#__PURE__*/ React.createElement(NumericFormat, {
308
+ customInput: Input,
309
+ decimalSeparator: ",",
310
+ thousandSeparator: ".",
311
+ decimalScale: decimalScale ?? 7,
312
+ value: field.value ?? "",
313
+ onValueChange: (values)=>field.onChange(values.floatValue),
314
+ placeholder: placeholder,
315
+ disabled: disabled
316
+ });
317
+ case "currency":
318
+ return /*#__PURE__*/ React.createElement(NumericFormat, {
319
+ customInput: Input,
320
+ decimalSeparator: ",",
321
+ thousandSeparator: ".",
322
+ decimalScale: decimalScale ?? 2,
323
+ value: field.value ?? "",
324
+ onValueChange: (values)=>field.onChange(values.floatValue),
325
+ placeholder: placeholder,
326
+ disabled: disabled,
327
+ prefix: prefix ?? "R$ "
328
+ });
329
+ case "pattern":
330
+ return /*#__PURE__*/ React.createElement(PatternFormat, {
331
+ customInput: Input,
332
+ format: patternFormat || "",
333
+ mask: mask || "_",
334
+ placeholder: placeholder,
335
+ disabled: disabled,
336
+ value: field.value || "",
337
+ onValueChange: (values)=>{
338
+ field.onChange(values.value);
339
+ }
340
+ });
341
+ case "select":
342
+ {
343
+ const selectValue = String(field.value || "");
344
+ return /*#__PURE__*/ React.createElement(Select, {
345
+ onValueChange: field.onChange,
346
+ value: selectValue,
347
+ disabled: disabled
348
+ }, /*#__PURE__*/ React.createElement(FormControl, null, /*#__PURE__*/ React.createElement(SelectTrigger, {
349
+ className: "w-full"
350
+ }, /*#__PURE__*/ React.createElement(SelectValue, {
351
+ placeholder: placeholder || "Selecione"
352
+ }))), /*#__PURE__*/ React.createElement(SelectContent, {
353
+ className: "max-h-[300px] overflow-y-auto overflow-x-hidden"
354
+ }, options?.map((opt)=>{
355
+ const val = typeof opt === "object" ? String(opt.value) : opt;
356
+ const lab = typeof opt === "object" ? opt.label : opt;
357
+ return /*#__PURE__*/ React.createElement(SelectItem, {
358
+ key: val,
359
+ value: val
360
+ }, lab);
361
+ })));
362
+ }
363
+ case "date":
364
+ return /*#__PURE__*/ React.createElement(Popover, null, /*#__PURE__*/ React.createElement(PopoverTrigger, {
365
+ asChild: true
366
+ }, /*#__PURE__*/ React.createElement(Button, {
367
+ variant: "outline",
368
+ disabled: disabled,
369
+ className: cn("w-full justify-start text-left font-normal", !field.value && "text-muted-foreground")
370
+ }, /*#__PURE__*/ React.createElement(Calendar, {
371
+ className: "mr-2 h-4 w-4"
372
+ }), field.value ? format(new Date(field.value), "dd/MM/yyyy", {
373
+ locale: ptBR
374
+ }) : /*#__PURE__*/ React.createElement("span", null, placeholder || "Selecione"))), /*#__PURE__*/ React.createElement(PopoverContent, {
375
+ className: "w-auto p-0",
376
+ align: "start"
377
+ }, /*#__PURE__*/ React.createElement(Calendar$1, {
378
+ mode: "single",
379
+ selected: field.value ? new Date(field.value) : undefined,
380
+ onSelect: field.onChange,
381
+ locale: ptBR
382
+ })));
383
+ case "checkbox":
384
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement(Checkbox, {
385
+ checked: !!field.value,
386
+ onCheckedChange: field.onChange,
387
+ disabled: disabled
388
+ }), /*#__PURE__*/ React.createElement("div", {
389
+ className: "space-y-1 leading-none"
390
+ }, /*#__PURE__*/ React.createElement(FormLabel, null, label), description && /*#__PURE__*/ React.createElement(FormDescription, null, description)));
391
+ case "switch":
392
+ return /*#__PURE__*/ React.createElement("div", {
393
+ className: "flex items-center justify-between"
394
+ }, /*#__PURE__*/ React.createElement(FormLabel, null, label), /*#__PURE__*/ React.createElement(Switch, {
395
+ checked: !!field.value,
396
+ onCheckedChange: field.onChange,
397
+ disabled: disabled
398
+ }));
399
+ case "radio":
400
+ return /*#__PURE__*/ React.createElement(RadioGroup, {
401
+ value: String(field.value ?? ""),
402
+ onValueChange: field.onChange,
403
+ className: "flex flex-col gap-2",
404
+ disabled: disabled ?? false
405
+ }, (radioOptions ?? [])?.map((opt)=>/*#__PURE__*/ React.createElement("div", {
406
+ key: opt.value,
407
+ className: "flex items-center gap-2"
408
+ }, /*#__PURE__*/ React.createElement(RadioGroupItem, {
409
+ value: opt.value,
410
+ id: `${String(name)}-${opt.value}`
411
+ }), /*#__PURE__*/ React.createElement("label", {
412
+ htmlFor: `${String(name)}-${opt.value}`,
413
+ className: "text-sm"
414
+ }, opt.label))));
415
+ case "slider":
416
+ return /*#__PURE__*/ React.createElement("div", {
417
+ className: "space-y-2"
418
+ }, /*#__PURE__*/ React.createElement(Slider, {
419
+ value: [
420
+ Number(field.value ?? sliderRange?.min ?? 0)
421
+ ],
422
+ onValueChange: (vals)=>field.onChange(vals[0]),
423
+ min: sliderRange?.min ?? 0,
424
+ max: sliderRange?.max ?? 100,
425
+ step: sliderRange?.step ?? 1,
426
+ disabled: disabled
427
+ }), typeof field.value === "number" && /*#__PURE__*/ React.createElement("p", {
428
+ className: "text-xs text-muted-foreground"
429
+ }, "Valor: ", field.value));
430
+ case "otp":
431
+ return /*#__PURE__*/ React.createElement(InputOTP, {
432
+ maxLength: otpLength ?? 6,
433
+ value: String(field.value ?? ""),
434
+ onChange: field.onChange,
435
+ disabled: disabled
436
+ }, /*#__PURE__*/ React.createElement(InputOTPGroup, null, Array.from({
437
+ length: otpLength ?? 6
438
+ }, (_, i)=>/*#__PURE__*/ React.createElement(InputOTPSlot, {
439
+ key: `${baseId}-otp-${i}`,
440
+ index: i
441
+ }))));
442
+ case "toggle":
443
+ return /*#__PURE__*/ React.createElement("div", {
444
+ className: "flex items-center gap-2"
445
+ }, /*#__PURE__*/ React.createElement(Toggle, {
446
+ pressed: !!field.value,
447
+ onPressedChange: (pressed)=>field.onChange(pressed),
448
+ disabled: disabled
449
+ }, label));
450
+ case "autocomplete":
451
+ {
452
+ if (!autocompleteConfig || !form) {
453
+ return null;
454
+ }
455
+ return /*#__PURE__*/ React.createElement(AutocompleteFieldWrapper, {
456
+ field: field,
457
+ form: form,
458
+ autocompleteConfig: autocompleteConfig,
459
+ placeholder: placeholder,
460
+ disabled: disabled
461
+ });
462
+ }
463
+ default:
464
+ return null;
465
+ }
466
+ })()), type !== "checkbox" && description && /*#__PURE__*/ React.createElement(FormDescription, null, description), /*#__PURE__*/ React.createElement(FormMessage, null));
467
+ }
468
+ });
469
+ }
470
+ BaseFormField.displayName = "BaseFormField";
471
+ function FormLayout({ form, sections, onSubmit, onError, formId, title, description, headerContent, readOnly = false, formRef }) {
472
+ const getColSpanClass = (cols)=>{
473
+ if (!cols || cols === 1) return "col-span-12 md:col-span-6 xl:col-span-4";
474
+ if (cols === 2) return "col-span-12 md:col-span-12 xl:col-span-8";
475
+ if (cols === 3) return "col-span-12";
476
+ if (cols === 6) return "col-span-12 2xl:col-span-6";
477
+ return "col-span-12";
478
+ };
479
+ return /*#__PURE__*/ React.createElement(Form, form, onSubmit ? /*#__PURE__*/ React.createElement("form", {
480
+ onSubmit: form.handleSubmit(onSubmit, onError),
481
+ id: formId,
482
+ ref: formRef,
483
+ className: "space-y-8 relative px-1"
484
+ }, (title || description) && /*#__PURE__*/ React.createElement("div", {
485
+ className: "space-y-2 mb-6"
486
+ }, /*#__PURE__*/ React.createElement("div", {
487
+ className: "flex justify-between items-start"
488
+ }, /*#__PURE__*/ React.createElement("div", null, title && /*#__PURE__*/ React.createElement("h2", {
489
+ className: "text-xl font-semibold tracking-tight"
490
+ }, title), description && /*#__PURE__*/ React.createElement("p", {
491
+ className: "text-muted-foreground text-sm"
492
+ }, description)), headerContent)), sections.map((section, idx)=>/*#__PURE__*/ React.createElement("div", {
493
+ key: section.title ? `${section.title}-${idx}` : `section-${idx}`,
494
+ className: "space-y-4"
495
+ }, (section.title || section.description) && /*#__PURE__*/ React.createElement("div", {
496
+ className: "flex items-center gap-2"
497
+ }, section.title && /*#__PURE__*/ React.createElement("h3", null, section.title), /*#__PURE__*/ React.createElement(Separator, {
498
+ className: "flex-1"
499
+ })), /*#__PURE__*/ React.createElement("div", {
500
+ className: cn("grid grid-cols-12", readOnly ? "gap-2" : "gap-4")
501
+ }, section.fields.map((config)=>/*#__PURE__*/ React.createElement("div", {
502
+ key: String(config.name),
503
+ className: getColSpanClass(config.cols)
504
+ }, /*#__PURE__*/ React.createElement(BaseFormField, {
505
+ config: config,
506
+ control: form.control,
507
+ readOnly: readOnly,
508
+ form: form
509
+ }))))))) : /*#__PURE__*/ React.createElement("div", {
510
+ id: formId,
511
+ className: "space-y-8 relative px-1"
512
+ }, sections.map((section, idx)=>/*#__PURE__*/ React.createElement("div", {
513
+ key: section.title ? `${section.title}-${idx}` : `section-${idx}`,
514
+ className: "space-y-4"
515
+ }, (section.title || section.description) && /*#__PURE__*/ React.createElement("div", {
516
+ className: "flex items-center gap-2"
517
+ }, section.title && /*#__PURE__*/ React.createElement("h3", null, section.title), /*#__PURE__*/ React.createElement(Separator, {
518
+ className: "flex-1"
519
+ })), /*#__PURE__*/ React.createElement("div", {
520
+ className: cn("grid grid-cols-12", readOnly ? "gap-2" : "gap-4")
521
+ }, section.fields.map((config)=>/*#__PURE__*/ React.createElement("div", {
522
+ key: String(config.name),
523
+ className: getColSpanClass(config.cols)
524
+ }, /*#__PURE__*/ React.createElement(BaseFormField, {
525
+ config: config,
526
+ control: form.control,
527
+ readOnly: readOnly,
528
+ form: form
529
+ }))))))));
530
+ }
531
+ FormLayout.displayName = "FormLayout";
532
+
533
+ export { BaseFormField, FormLayout };
534
+ //# sourceMappingURL=index.mjs.map