ivt 0.8.1 → 0.8.3

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 (276) hide show
  1. package/dist/accordion/index.mjs +13 -13
  2. package/dist/accordion-table/index.mjs +25 -25
  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 +31 -31
  6. package/dist/avatar/index.mjs +5 -5
  7. package/dist/badge/index.mjs +3 -3
  8. package/dist/base/index.d.ts +5 -54
  9. package/dist/base/index.mjs +57 -90
  10. package/dist/base/index.mjs.map +1 -1
  11. package/dist/breadcrumb/index.mjs +5 -5
  12. package/dist/button/index.mjs +3 -3
  13. package/dist/button-group/index.mjs +7 -47
  14. package/dist/button-group/index.mjs.map +1 -1
  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/{CalendarPopover-mDZpeHvR.mjs → CalendarPopover-CRB6GXIt.mjs} +14 -14
  21. package/dist/chunks/{CalendarPopover-mDZpeHvR.mjs.map → CalendarPopover-CRB6GXIt.mjs.map} +1 -1
  22. package/dist/chunks/{CalendarRange-Us7WNimb.mjs → CalendarRange-DucTFDzH.mjs} +15 -14
  23. package/dist/chunks/CalendarRange-DucTFDzH.mjs.map +1 -0
  24. package/dist/chunks/{ComboboxField-20dI3lDY.mjs → ComboboxField-Us4hYexm.mjs} +9 -9
  25. package/dist/chunks/{ComboboxField-20dI3lDY.mjs.map → ComboboxField-Us4hYexm.mjs.map} +1 -1
  26. package/dist/chunks/{Container-ovOp1KHh.mjs → Container-BFAAGDWA.mjs} +2 -2
  27. package/dist/chunks/{Container-ovOp1KHh.mjs.map → Container-BFAAGDWA.mjs.map} +1 -1
  28. package/dist/chunks/{DeleteConfirmationModal-8baDfv_e.mjs → DeleteConfirmationModal-ClGTTktk.mjs} +4 -4
  29. package/dist/chunks/{DeleteConfirmationModal-8baDfv_e.mjs.map → DeleteConfirmationModal-ClGTTktk.mjs.map} +1 -1
  30. package/dist/chunks/ExportButtons-Ru0nKJJO.mjs +229 -0
  31. package/dist/chunks/ExportButtons-Ru0nKJJO.mjs.map +1 -0
  32. package/dist/chunks/GenericTabs-B42Kfv_U.mjs +41 -0
  33. package/dist/chunks/GenericTabs-B42Kfv_U.mjs.map +1 -0
  34. package/dist/chunks/GenericTabs-CtJk8qVb.d.ts +54 -0
  35. package/dist/chunks/{ListItem-CgT3jeGN.mjs → ListItem-Da4Od2ts.mjs} +4 -4
  36. package/dist/chunks/{ListItem-CgT3jeGN.mjs.map → ListItem-Da4Od2ts.mjs.map} +1 -1
  37. package/dist/chunks/{TooltipIndicator-BI_x_wCF.mjs → TooltipIndicator-B9oMD_x3.mjs} +4 -4
  38. package/dist/chunks/{TooltipIndicator-BI_x_wCF.mjs.map → TooltipIndicator-B9oMD_x3.mjs.map} +1 -1
  39. package/dist/chunks/{_commonjsHelpers-DeLy3UO0.mjs → _commonjsHelpers-CrMz3UM5.mjs} +1 -1
  40. package/dist/chunks/_commonjsHelpers-CrMz3UM5.mjs.map +1 -0
  41. package/dist/chunks/{accordion-knOIBS_4.mjs → accordion-BFVct-IT.mjs} +9 -9
  42. package/dist/chunks/{accordion-knOIBS_4.mjs.map → accordion-BFVct-IT.mjs.map} +1 -1
  43. package/dist/chunks/{alert-CGsBCDrY.mjs → alert-DHxNsPyM.mjs} +2 -2
  44. package/dist/chunks/{alert-CGsBCDrY.mjs.map → alert-DHxNsPyM.mjs.map} +1 -1
  45. package/dist/chunks/{badge-BqxN6L_n.mjs → badge-BUI8RIXy.mjs} +2 -2
  46. package/dist/chunks/{badge-BqxN6L_n.mjs.map → badge-BUI8RIXy.mjs.map} +1 -1
  47. package/dist/chunks/{bundle-mjs-CU6q3BA5.mjs → bundle-mjs-CjTndHqR.mjs} +1 -1
  48. package/dist/chunks/{bundle-mjs-CU6q3BA5.mjs.map → bundle-mjs-CjTndHqR.mjs.map} +1 -1
  49. package/dist/chunks/{button-DVC65cB7.mjs → button-BvsCd2vf.mjs} +2 -2
  50. package/dist/chunks/{button-DVC65cB7.mjs.map → button-BvsCd2vf.mjs.map} +1 -1
  51. package/dist/chunks/button-group-PrAqXtXn.mjs +47 -0
  52. package/dist/chunks/button-group-PrAqXtXn.mjs.map +1 -0
  53. package/dist/chunks/{calendar-CsV2gm7-.mjs → calendar-LFBK0slp.mjs} +7 -7
  54. package/dist/chunks/{calendar-CsV2gm7-.mjs.map → calendar-LFBK0slp.mjs.map} +1 -1
  55. package/dist/chunks/{calendar-days-Cd2WVgBN.mjs → calendar-days-C3N6HIT-.mjs} +2 -2
  56. package/dist/chunks/{calendar-days-Cd2WVgBN.mjs.map → calendar-days-C3N6HIT-.mjs.map} +1 -1
  57. package/dist/chunks/{card-cSIzKMIR.mjs → card-BoHc9gge.mjs} +2 -2
  58. package/dist/chunks/{card-cSIzKMIR.mjs.map → card-BoHc9gge.mjs.map} +1 -1
  59. package/dist/chunks/{check-DSiHPkp7.mjs → check-VfNn6myv.mjs} +2 -2
  60. package/dist/chunks/{check-DSiHPkp7.mjs.map → check-VfNn6myv.mjs.map} +1 -1
  61. package/dist/chunks/{checkbox-CrjmkAKW.mjs → checkbox-CgrFFc0p.mjs} +9 -9
  62. package/dist/chunks/{checkbox-CrjmkAKW.mjs.map → checkbox-CgrFFc0p.mjs.map} +1 -1
  63. package/dist/chunks/{chevron-down-BoCGZarH.mjs → chevron-down-CD1QpvBA.mjs} +2 -2
  64. package/dist/chunks/{chevron-down-BoCGZarH.mjs.map → chevron-down-CD1QpvBA.mjs.map} +1 -1
  65. package/dist/chunks/{chevron-left-6HkYwJhz.mjs → chevron-left-B7ClEtyW.mjs} +2 -2
  66. package/dist/chunks/{chevron-left-6HkYwJhz.mjs.map → chevron-left-B7ClEtyW.mjs.map} +1 -1
  67. package/dist/chunks/{chevron-right-CS62g5Sl.mjs → chevron-right-Bb52eown.mjs} +2 -2
  68. package/dist/chunks/{chevron-right-CS62g5Sl.mjs.map → chevron-right-Bb52eown.mjs.map} +1 -1
  69. package/dist/chunks/{chevrons-up-down-_JuRHx41.mjs → chevrons-up-down-C5lu4ULp.mjs} +2 -2
  70. package/dist/chunks/{chevrons-up-down-_JuRHx41.mjs.map → chevrons-up-down-C5lu4ULp.mjs.map} +1 -1
  71. package/dist/chunks/{command-CZh5UHdo.mjs → command-e20cpPEv.mjs} +8 -8
  72. package/dist/chunks/{command-CZh5UHdo.mjs.map → command-e20cpPEv.mjs.map} +1 -1
  73. package/dist/chunks/{createLucideIcon-D8CrPx3l.mjs → createLucideIcon-D3jW_oal.mjs} +1 -1
  74. package/dist/chunks/{createLucideIcon-D8CrPx3l.mjs.map → createLucideIcon-D3jW_oal.mjs.map} +1 -1
  75. package/dist/chunks/{date-ZOdK1brW.mjs → date-Dy-Pzcmp.mjs} +33 -12
  76. package/dist/chunks/{date-ZOdK1brW.mjs.map → date-Dy-Pzcmp.mjs.map} +1 -1
  77. package/dist/chunks/date-picker-B6SyJ_gl.mjs +44 -0
  78. package/dist/chunks/date-picker-B6SyJ_gl.mjs.map +1 -0
  79. package/dist/chunks/{dialog-CYSGHwic.mjs → dialog-B20zSjze.mjs} +4 -4
  80. package/dist/chunks/{dialog-CYSGHwic.mjs.map → dialog-B20zSjze.mjs.map} +1 -1
  81. package/dist/chunks/dropdown-menu-B2ja7qty.mjs +421 -0
  82. package/dist/chunks/dropdown-menu-B2ja7qty.mjs.map +1 -0
  83. package/dist/chunks/{ellipsis--m7d4rNF.mjs → ellipsis-C6LF5HVj.mjs} +2 -2
  84. package/dist/chunks/{ellipsis--m7d4rNF.mjs.map → ellipsis-C6LF5HVj.mjs.map} +1 -1
  85. package/dist/chunks/export-config-BMsuab-C.d.ts +10 -0
  86. package/dist/chunks/{form-CW-yu519.mjs → form-BrcvX0yc.mjs} +3 -3
  87. package/dist/chunks/{form-CW-yu519.mjs.map → form-BrcvX0yc.mjs.map} +1 -1
  88. package/dist/chunks/{format-B3szZANA.mjs → format-CxsCX_YZ.mjs} +1 -1
  89. package/dist/chunks/{format-B3szZANA.mjs.map → format-CxsCX_YZ.mjs.map} +1 -1
  90. package/dist/chunks/{format-numbers-CzkVKQnb.mjs → format-numbers-CBSY6ZvL.mjs} +1 -1
  91. package/dist/chunks/{format-numbers-CzkVKQnb.mjs.map → format-numbers-CBSY6ZvL.mjs.map} +1 -1
  92. package/dist/chunks/{hover-card-B7w2Wdtk.mjs → hover-card-hPKHSJ81.mjs} +9 -9
  93. package/dist/chunks/{hover-card-B7w2Wdtk.mjs.map → hover-card-hPKHSJ81.mjs.map} +1 -1
  94. package/dist/chunks/{index-CucrelNM.mjs → index-3TdUvynV.mjs} +1 -1
  95. package/dist/chunks/{index-CucrelNM.mjs.map → index-3TdUvynV.mjs.map} +1 -1
  96. package/dist/chunks/{index-F25i7Anb.mjs → index-B-46hbYc.mjs} +1 -1
  97. package/dist/chunks/{index-F25i7Anb.mjs.map → index-B-46hbYc.mjs.map} +1 -1
  98. package/dist/chunks/{index-F5Q_HsuL.mjs → index-B46fiGOC.mjs} +9 -9
  99. package/dist/chunks/{index-F5Q_HsuL.mjs.map → index-B46fiGOC.mjs.map} +1 -1
  100. package/dist/chunks/{index-Cm_Sx0w9.mjs → index-B5fbJZIT.mjs} +2 -2
  101. package/dist/chunks/{index-Cm_Sx0w9.mjs.map → index-B5fbJZIT.mjs.map} +1 -1
  102. package/dist/chunks/{index-CYbLRGX3.mjs → index-BbPnHdtV.mjs} +5 -5
  103. package/dist/chunks/{index-CYbLRGX3.mjs.map → index-BbPnHdtV.mjs.map} +1 -1
  104. package/dist/chunks/{index-BAPHzVtC.mjs → index-BzAMFivh.mjs} +6 -6
  105. package/dist/chunks/{index-BAPHzVtC.mjs.map → index-BzAMFivh.mjs.map} +1 -1
  106. package/dist/chunks/{index-BriCEER7.mjs → index-C5uKwhOD.mjs} +13 -13
  107. package/dist/chunks/{index-BriCEER7.mjs.map → index-C5uKwhOD.mjs.map} +1 -1
  108. package/dist/chunks/{index-C21v2ZEV.mjs → index-C__GtYCW.mjs} +1 -1
  109. package/dist/chunks/{index-C21v2ZEV.mjs.map → index-C__GtYCW.mjs.map} +1 -1
  110. package/dist/chunks/{index--j7S_aJJ.mjs → index-Csf3aM1P.mjs} +1 -1
  111. package/dist/chunks/{index--j7S_aJJ.mjs.map → index-Csf3aM1P.mjs.map} +1 -1
  112. package/dist/chunks/{index-CwPf2lla.mjs → index-D4iRNKtb.mjs} +7 -7
  113. package/dist/chunks/{index-CwPf2lla.mjs.map → index-D4iRNKtb.mjs.map} +1 -1
  114. package/dist/chunks/{index-A8KrKa_3.mjs → index-DDM8Lpbb.mjs} +2 -2
  115. package/dist/chunks/{index-A8KrKa_3.mjs.map → index-DDM8Lpbb.mjs.map} +1 -1
  116. package/dist/chunks/{index-swVjGZ84.mjs → index-DF-3JHwb.mjs} +2 -2
  117. package/dist/chunks/{index-swVjGZ84.mjs.map → index-DF-3JHwb.mjs.map} +1 -1
  118. package/dist/chunks/{index-CluWUNz-.mjs → index-DGUU265f.mjs} +3 -3
  119. package/dist/chunks/{index-CluWUNz-.mjs.map → index-DGUU265f.mjs.map} +1 -1
  120. package/dist/chunks/{index-DmuOZtkO.mjs → index-DIaetExD.mjs} +1 -1
  121. package/dist/chunks/{index-DmuOZtkO.mjs.map → index-DIaetExD.mjs.map} +1 -1
  122. package/dist/chunks/{index-BvAnPBN5.mjs → index-DghbVew_.mjs} +7 -7
  123. package/dist/chunks/{index-BvAnPBN5.mjs.map → index-DghbVew_.mjs.map} +1 -1
  124. package/dist/chunks/{index-B3ak2MKr.mjs → index-Dp_x2nI3.mjs} +1 -1
  125. package/dist/chunks/{index-B3ak2MKr.mjs.map → index-Dp_x2nI3.mjs.map} +1 -1
  126. package/dist/chunks/{index-Dc-XYHvj.mjs → index-DslxcA48.mjs} +1 -1
  127. package/dist/chunks/{index-Dc-XYHvj.mjs.map → index-DslxcA48.mjs.map} +1 -1
  128. package/dist/chunks/{index-WRRU_W7V.mjs → index-EcI_mW3m.mjs} +4 -4
  129. package/dist/chunks/{index-WRRU_W7V.mjs.map → index-EcI_mW3m.mjs.map} +1 -1
  130. package/dist/chunks/{index-MA5snuXo.mjs → index-JZ-FhLOH.mjs} +3 -3
  131. package/dist/chunks/{index-MA5snuXo.mjs.map → index-JZ-FhLOH.mjs.map} +1 -1
  132. package/dist/chunks/{index-Cudt6Zq6.mjs → index-RaUpQCps.mjs} +1 -1
  133. package/dist/chunks/{index-Cudt6Zq6.mjs.map → index-RaUpQCps.mjs.map} +1 -1
  134. package/dist/chunks/{index-BMgJpAGa.mjs → index-SLs8oClH.mjs} +2 -2
  135. package/dist/chunks/{index-BMgJpAGa.mjs.map → index-SLs8oClH.mjs.map} +1 -1
  136. package/dist/chunks/{index.module-CtoGlOtg.mjs → index.module-B4lVPYXp.mjs} +1 -1
  137. package/dist/chunks/{index.module-CtoGlOtg.mjs.map → index.module-B4lVPYXp.mjs.map} +1 -1
  138. package/dist/chunks/{input-DEZ4zRTO.mjs → input-B4HxPY7D.mjs} +2 -2
  139. package/dist/chunks/{input-DEZ4zRTO.mjs.map → input-B4HxPY7D.mjs.map} +1 -1
  140. package/dist/chunks/{input-otp-D-STVHHs.mjs → input-otp-DfumrHpI.mjs} +3 -3
  141. package/dist/chunks/{input-otp-D-STVHHs.mjs.map → input-otp-DfumrHpI.mjs.map} +1 -1
  142. package/dist/chunks/{label-PVtPZ-GM.mjs → label-Dxv54YUS.mjs} +2 -2
  143. package/dist/chunks/{label-PVtPZ-GM.mjs.map → label-Dxv54YUS.mjs.map} +1 -1
  144. package/dist/chunks/{loader-circle-BII92tSL.mjs → loader-circle-hYdtBTNb.mjs} +2 -2
  145. package/dist/chunks/{loader-circle-BII92tSL.mjs.map → loader-circle-hYdtBTNb.mjs.map} +1 -1
  146. package/dist/chunks/{menubar-DG0DkaOF.mjs → menubar-C76cRAzY.mjs} +11 -11
  147. package/dist/chunks/{menubar-DG0DkaOF.mjs.map → menubar-C76cRAzY.mjs.map} +1 -1
  148. package/dist/chunks/{multi-select-Cn6GBwTg.mjs → multi-select-B6DLSXK6.mjs} +13 -13
  149. package/dist/chunks/{multi-select-Cn6GBwTg.mjs.map → multi-select-B6DLSXK6.mjs.map} +1 -1
  150. package/dist/chunks/{pagination-B4vpLdhw.mjs → pagination-BF_3NYnD.mjs} +6 -6
  151. package/dist/chunks/{pagination-B4vpLdhw.mjs.map → pagination-BF_3NYnD.mjs.map} +1 -1
  152. package/dist/chunks/{popover-4BgsZTpk.mjs → popover--9SMD-cC.mjs} +11 -11
  153. package/dist/chunks/{popover-4BgsZTpk.mjs.map → popover--9SMD-cC.mjs.map} +1 -1
  154. package/dist/chunks/{progress-_CjJdprg.mjs → progress-CwFC70K1.mjs} +2 -2
  155. package/dist/chunks/{progress-_CjJdprg.mjs.map → progress-CwFC70K1.mjs.map} +1 -1
  156. package/dist/chunks/{radio-group-BnryBrck.mjs → radio-group-DhGJL_gc.mjs} +11 -11
  157. package/dist/chunks/{radio-group-BnryBrck.mjs.map → radio-group-DhGJL_gc.mjs.map} +1 -1
  158. package/dist/chunks/{react-number-format.es-C7kc01hW.mjs → react-number-format.es-B11gLKR5.mjs} +1 -1
  159. package/dist/chunks/{react-number-format.es-C7kc01hW.mjs.map → react-number-format.es-B11gLKR5.mjs.map} +1 -1
  160. package/dist/chunks/{scroll-area-DXNFrVA9.mjs → scroll-area-D0gA5i73.mjs} +9 -9
  161. package/dist/chunks/{scroll-area-DXNFrVA9.mjs.map → scroll-area-D0gA5i73.mjs.map} +1 -1
  162. package/dist/chunks/{select-Ho6QMbmu.mjs → select-Cl_ZzI9R.mjs} +5 -5
  163. package/dist/chunks/{select-Ho6QMbmu.mjs.map → select-Cl_ZzI9R.mjs.map} +1 -1
  164. package/dist/chunks/{separator-CtRAcZlu.mjs → separator-DohkJ_xb.mjs} +2 -2
  165. package/dist/chunks/{separator-CtRAcZlu.mjs.map → separator-DohkJ_xb.mjs.map} +1 -1
  166. package/dist/chunks/{sheet-DKA_mlpq.mjs → sheet-CIlwd3J-.mjs} +4 -4
  167. package/dist/chunks/{sheet-DKA_mlpq.mjs.map → sheet-CIlwd3J-.mjs.map} +1 -1
  168. package/dist/chunks/{skeleton-C7fArVLu.mjs → skeleton-ClXnWXNn.mjs} +2 -2
  169. package/dist/chunks/{skeleton-C7fArVLu.mjs.map → skeleton-ClXnWXNn.mjs.map} +1 -1
  170. package/dist/chunks/{slider-BG6RzE4c.mjs → slider-D39dP_g8.mjs} +9 -9
  171. package/dist/chunks/{slider-BG6RzE4c.mjs.map → slider-D39dP_g8.mjs.map} +1 -1
  172. package/dist/chunks/{sortable-B6w9KGE_.mjs → sortable-T_IChBln.mjs} +3 -3
  173. package/dist/chunks/{sortable-B6w9KGE_.mjs.map → sortable-T_IChBln.mjs.map} +1 -1
  174. package/dist/chunks/{switch-DsPVvx96.mjs → switch-B3zf2gI8.mjs} +7 -7
  175. package/dist/chunks/{switch-DsPVvx96.mjs.map → switch-B3zf2gI8.mjs.map} +1 -1
  176. package/dist/chunks/{table-CaFiU9We.mjs → table-Bfl280bq.mjs} +2 -2
  177. package/dist/chunks/{table-CaFiU9We.mjs.map → table-Bfl280bq.mjs.map} +1 -1
  178. package/dist/chunks/{tabs-fAtKfucR.mjs → tabs-C8FBxYmq.mjs} +9 -9
  179. package/dist/chunks/{tabs-fAtKfucR.mjs.map → tabs-C8FBxYmq.mjs.map} +1 -1
  180. package/dist/chunks/{textarea-tq3jA-Zq.mjs → textarea-W2TtG6RT.mjs} +2 -2
  181. package/dist/chunks/{textarea-tq3jA-Zq.mjs.map → textarea-W2TtG6RT.mjs.map} +1 -1
  182. package/dist/chunks/{toast-NTwN0K5O.mjs → toast-DPlHqm3b.mjs} +12 -12
  183. package/dist/chunks/{toast-NTwN0K5O.mjs.map → toast-DPlHqm3b.mjs.map} +1 -1
  184. package/dist/chunks/{toggle-DtFnx1x6.mjs → toggle-DGw8vPFo.mjs} +4 -4
  185. package/dist/chunks/{toggle-DtFnx1x6.mjs.map → toggle-DGw8vPFo.mjs.map} +1 -1
  186. package/dist/chunks/{tooltip-DUrjZ695.mjs → tooltip-CI9dbI1p.mjs} +11 -11
  187. package/dist/chunks/{tooltip-DUrjZ695.mjs.map → tooltip-CI9dbI1p.mjs.map} +1 -1
  188. package/dist/chunks/{trash-2-Bo2rb-uN.mjs → trash-2-D8vtZLQJ.mjs} +2 -2
  189. package/dist/chunks/{trash-2-Bo2rb-uN.mjs.map → trash-2-D8vtZLQJ.mjs.map} +1 -1
  190. package/dist/chunks/{triangle-alert-D1D3ikvl.mjs → triangle-alert-B-blf7Ow.mjs} +2 -2
  191. package/dist/chunks/{triangle-alert-D1D3ikvl.mjs.map → triangle-alert-B-blf7Ow.mjs.map} +1 -1
  192. package/dist/chunks/{tslib.es6-iEi2b-Nf.mjs → tslib.es6-B32hQ9eG.mjs} +1 -1
  193. package/dist/chunks/{tslib.es6-iEi2b-Nf.mjs.map → tslib.es6-B32hQ9eG.mjs.map} +1 -1
  194. package/dist/chunks/upload-CQFfafJB.mjs +32 -0
  195. package/dist/chunks/upload-CQFfafJB.mjs.map +1 -0
  196. package/dist/chunks/{use-toast-BvcpqHAq.mjs → use-toast-juJ63qRI.mjs} +1 -1
  197. package/dist/chunks/{use-toast-BvcpqHAq.mjs.map → use-toast-juJ63qRI.mjs.map} +1 -1
  198. package/dist/chunks/{utils-DnO0vXjp.mjs → utils-Dws4Ft8U.mjs} +2 -2
  199. package/dist/chunks/{utils-DnO0vXjp.mjs.map → utils-Dws4Ft8U.mjs.map} +1 -1
  200. package/dist/chunks/{wand-sparkles-Bx5B6895.mjs → wand-sparkles-C3OGp2qM.mjs} +2 -2
  201. package/dist/chunks/{wand-sparkles-Bx5B6895.mjs.map → wand-sparkles-C3OGp2qM.mjs.map} +1 -1
  202. package/dist/chunks/{x-BdsvQvnu.mjs → x-CQ0W-nWi.mjs} +2 -2
  203. package/dist/chunks/{x-BdsvQvnu.mjs.map → x-CQ0W-nWi.mjs.map} +1 -1
  204. package/dist/collapsible/index.mjs +7 -7
  205. package/dist/combobox/index.mjs +24 -24
  206. package/dist/command/index.mjs +18 -18
  207. package/dist/context-menu/index.mjs +21 -21
  208. package/dist/dash/index.mjs +23 -23
  209. package/dist/data-table/index.d.ts +48 -3
  210. package/dist/data-table/index.mjs +105 -37
  211. package/dist/data-table/index.mjs.map +1 -1
  212. package/dist/date-picker/index.mjs +29 -63
  213. package/dist/date-picker/index.mjs.map +1 -1
  214. package/dist/dialog/index.mjs +17 -17
  215. package/dist/drawer/index.mjs +14 -14
  216. package/dist/dropdown-menu/index.mjs +24 -433
  217. package/dist/dropdown-menu/index.mjs.map +1 -1
  218. package/dist/dropzone/index.mjs +20 -47
  219. package/dist/dropzone/index.mjs.map +1 -1
  220. package/dist/editable-table/index.mjs +18 -18
  221. package/dist/empty/index.mjs +2 -2
  222. package/dist/export/index.d.ts +30 -0
  223. package/dist/export/index.mjs +37 -0
  224. package/dist/export/index.mjs.map +1 -0
  225. package/dist/field/index.mjs +4 -4
  226. package/dist/form/index.mjs +4 -4
  227. package/dist/form-fields/index.mjs +26 -26
  228. package/dist/form-layout/index.mjs +63 -63
  229. package/dist/form-layout/index.mjs.map +1 -1
  230. package/dist/hover-card/index.mjs +13 -13
  231. package/dist/icon/index.mjs +1 -1
  232. package/dist/index.css +1 -1
  233. package/dist/input/index.mjs +3 -3
  234. package/dist/input-group/index.mjs +5 -5
  235. package/dist/input-otp/index.mjs +4 -4
  236. package/dist/item/index.mjs +3 -3
  237. package/dist/ivt.css +1 -1
  238. package/dist/kbd/index.mjs +2 -2
  239. package/dist/label/index.mjs +3 -3
  240. package/dist/layout/index.mjs +21 -21
  241. package/dist/menubar/index.mjs +22 -22
  242. package/dist/multi-input-list/index.mjs +28 -28
  243. package/dist/multi-select/index.mjs +31 -31
  244. package/dist/navigation-menu/index.mjs +15 -15
  245. package/dist/pagination/index.mjs +8 -8
  246. package/dist/popover/index.mjs +16 -16
  247. package/dist/progress/index.mjs +3 -3
  248. package/dist/radio-group/index.mjs +16 -16
  249. package/dist/resizable/index.mjs +3 -3
  250. package/dist/scroll-area/index.mjs +10 -10
  251. package/dist/select/index.mjs +6 -6
  252. package/dist/separator/index.mjs +3 -3
  253. package/dist/shared/index.d.ts +1 -1
  254. package/dist/shared/index.mjs +5 -5
  255. package/dist/sheet/index.mjs +17 -17
  256. package/dist/sidebar/index.mjs +25 -25
  257. package/dist/skeleton/index.mjs +3 -3
  258. package/dist/skeleton-component/index.mjs +4 -4
  259. package/dist/slider/index.mjs +11 -11
  260. package/dist/sortable/index.mjs +4 -4
  261. package/dist/spinner/index.mjs +4 -4
  262. package/dist/switch/index.mjs +9 -9
  263. package/dist/table/index.mjs +3 -3
  264. package/dist/table-filter/index.d.ts +2 -2
  265. package/dist/table-filter/index.mjs +70 -77
  266. package/dist/table-filter/index.mjs.map +1 -1
  267. package/dist/tabs/index.mjs +12 -12
  268. package/dist/textarea/index.mjs +3 -3
  269. package/dist/toast/index.mjs +14 -14
  270. package/dist/toaster/index.mjs +15 -15
  271. package/dist/toggle/index.mjs +6 -6
  272. package/dist/toggle-group/index.mjs +11 -11
  273. package/dist/tooltip/index.mjs +15 -15
  274. package/package.json +6 -1
  275. package/dist/chunks/CalendarRange-Us7WNimb.mjs.map +0 -1
  276. package/dist/chunks/_commonjsHelpers-DeLy3UO0.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/components/default/base/BadgeListLimited.tsx","../../src/components/default/base/CollapsibleHelp.tsx","../../src/components/default/base/ConfirmSave.tsx","../../src/components/default/base/GenericHeadingMenubar.tsx","../../src/components/default/base/GenericTable.tsx","../../src/components/default/base/GenericTabs.tsx","../../src/components/default/base/Header.tsx","../../src/components/default/base/HoverBadge.tsx","../../src/components/default/base/RuleFiltersBuilder.tsx","../../src/components/default/base/StepNavigator.tsx","../../src/components/default/base/TextWrap.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { Badge, type BadgeVariants } from \"@/components/ui/badge\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"@/components/ui/tooltip\";\n\ninterface BadgeListLimitedProps {\n\titems: string[];\n\tmaxVisible?: number;\n\tvariant?: BadgeVariants;\n\tsubtle?: boolean;\n\ttooltipItems?: string[];\n}\n\n/**\n * Componente que exibe uma lista de Badges com limite de itens visíveis.\n * Se houver mais itens do que o limite, exibe um Badge adicional com \"+N\".\n *\n * @param items - Array de strings para exibir como Badges\n * @param maxVisible - Número máximo de Badges visíveis (padrão: 3)\n * @param variant - Variante do Badge (padrão: \"default\")\n * @param subtle - Se o Badge deve ter estilo sutil (padrão: true)\n * @param tooltipItems - Array de strings para exibir no tooltip (opcional). Se fornecido, exibe todos os itens no tooltip, cada um em uma linha.\n */\nexport const BadgeListLimited: React.FC<BadgeListLimitedProps> = ({\n\titems,\n\tmaxVisible = 3,\n\tvariant = \"default\",\n\tsubtle = true,\n\ttooltipItems,\n}) => {\n\tconst visibleItems = items.slice(0, maxVisible);\n\tconst remainingCount = items.length - maxVisible;\n\tconst hasMore = remainingCount > 0;\n\n\tconst hiddenItems = items.slice(maxVisible);\n\tconst itemsToShowInTooltip = tooltipItems || hiddenItems;\n\n\treturn (\n\t\t<div className=\"flex items-center gap-2.5\">\n\t\t\t{visibleItems.map((item) => (\n\t\t\t\t<Badge key={item} variant={variant} subtle={subtle}>\n\t\t\t\t\t{item}\n\t\t\t\t</Badge>\n\t\t\t))}\n\t\t\t{hasMore &&\n\t\t\t\t(itemsToShowInTooltip.length > 0 ? (\n\t\t\t\t\t<TooltipProvider>\n\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t\t\t\t\t+{remainingCount}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t\t<div className=\"flex max-h-[200px] flex-col gap-1 overflow-y-auto text-xs\">\n\t\t\t\t\t\t\t\t\t{itemsToShowInTooltip.map((tooltipItem) => (\n\t\t\t\t\t\t\t\t\t\t<div key={tooltipItem}>{tooltipItem}</div>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</TooltipProvider>\n\t\t\t\t) : (\n\t\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t\t+{remainingCount}\n\t\t\t\t\t</Badge>\n\t\t\t\t))}\n\t\t</div>\n\t);\n};\n","\"use client\";\n\nimport { Info, X } from \"lucide-react\";\nimport React from \"react\";\nimport { Alert, AlertDescription, AlertTitle } from \"@/components/ui/alert\";\nimport { Button } from \"@/components/ui/button\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface CollapsibleHelpProps {\n\tchildren?: React.ReactNode;\n\tcontent: React.ReactNode;\n\ttitle?: string;\n\tclassName?: string;\n\tlabel?: React.ReactNode;\n}\n\n/**\n * A simpler CollapsibleHelp component that uses a Popover for the help content.\n * It manages its own open state internally.\n * The trigger is provided as 'children', and the content to show is passed as the 'content' prop.\n *\n * Usage:\n * <CollapsibleHelp\n * content={<p>Help text goes here...</p>}\n * title=\"Help Section\"\n * >\n * <button>Toggle Help</button> // This is your custom trigger\n * </CollapsibleHelp>\n */\nexport function CollapsibleHelp({\n\tchildren,\n\tcontent,\n\ttitle = \"Ajuda\",\n\tclassName,\n\tlabel,\n}: CollapsibleHelpProps) {\n\tconst [open, setOpen] = React.useState(false);\n\n\treturn (\n\t\t<div className={cn(\"flex items-start justify-between gap-2\", className)}>\n\t\t\t{label && <div className=\"flex-1\">{label}</div>}\n\n\t\t\t<Popover open={open} onOpenChange={setOpen}>\n\t\t\t\t<PopoverTrigger asChild>{children}</PopoverTrigger>\n\t\t\t\t<PopoverContent\n\t\t\t\t\tclassName=\"w-100 p-0 border-none bg-transparent shadow-none\"\n\t\t\t\t\talign=\"end\"\n\t\t\t\t\tside=\"bottom\"\n\t\t\t\t>\n\t\t\t\t\t<Alert className=\"relative border-primary/20 shadow-md bg-popover\">\n\t\t\t\t\t\t<Info className=\"h-4 w-4 text-primary\" />\n\t\t\t\t\t\t<AlertTitle className=\"text-primary font-medium\">{title}</AlertTitle>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName=\"absolute top-4 right-4 h-6 w-6 p-0 text-muted-foreground hover:text-foreground\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tsetOpen(false);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<X className=\"h-4 w-4\" />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<AlertDescription className=\"mt-2 text-sm space-y-3 text-foreground\">\n\t\t\t\t\t\t\t{content}\n\t\t\t\t\t\t</AlertDescription>\n\t\t\t\t\t</Alert>\n\t\t\t\t</PopoverContent>\n\t\t\t</Popover>\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport React from \"react\";\nimport { BadgeListLimited } from \"@/components/default/base/BadgeListLimited\";\nimport { ListItem } from \"@/components/default/layout\";\nimport type { BadgeVariants } from \"@/components/ui/badge\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport {\n\tDialog,\n\tDialogContent,\n\tDialogDescription,\n\tDialogFooter,\n\tDialogHeader,\n\tDialogTitle,\n\tDialogTrigger,\n} from \"@/components/ui/dialog\";\n\nexport interface ConfirmSaveRowConfig {\n\ttitle: string;\n\t// biome-ignore lint/suspicious/noExplicitAny: <Generic value>\n\tvalue: any;\n\ttype: \"text\" | \"badge-limited\" | \"custom\";\n\tbadge?: {\n\t\tvariant?: BadgeVariants;\n\t\tsubtle?: boolean;\n\t\tmaxVisible?: number;\n\t};\n}\n\ninterface ConfirmSaveProps {\n\tonSave: () => void;\n\tdisabled?: boolean;\n\tdialogTitle?: string;\n\tdialogDescription?: string;\n\tactionTitle?: string;\n\tactionVariant?: ButtonProps[\"variant\"];\n\tchildren?: React.ReactNode;\n\trows?: ConfirmSaveRowConfig[];\n}\n\nexport function ConfirmSave({\n\tonSave,\n\tdisabled,\n\tdialogTitle = \"Confirme os dados da predefinição\",\n\tdialogDescription = \"Verifique se os dados estão corretos antes de salvar. Você pode alterá-los a qualquer momento na lista de predefinições.\",\n\tactionTitle = \"Salvar predefinição\",\n\tchildren,\n\trows = [],\n\tactionVariant = \"default\",\n}: ConfirmSaveProps) {\n\tconst [open, setOpen] = React.useState(false);\n\n\treturn (\n\t\t<Dialog open={open} onOpenChange={setOpen}>\n\t\t\t<DialogTrigger asChild>{children}</DialogTrigger>\n\t\t\t<DialogContent className=\"flex max-h-[90vh] max-w-116 flex-col\">\n\t\t\t\t<DialogHeader className=\"text-left\">\n\t\t\t\t\t<DialogTitle className=\"text-xl font-semibold\">{dialogTitle}</DialogTitle>\n\t\t\t\t\t<DialogDescription>{dialogDescription}</DialogDescription>\n\t\t\t\t</DialogHeader>\n\t\t\t\t<div\n\t\t\t\t\tdata-confirm-save-scrollable\n\t\t\t\t\tclassName=\"flex min-h-0 max-w-full flex-1 flex-col overflow-y-auto py-2\"\n\t\t\t\t>\n\t\t\t\t\t{rows.map((row, index) => {\n\t\t\t\t\t\tif (!row.value || (Array.isArray(row.value) && row.value.length === 0)) {\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet content: React.ReactNode;\n\n\t\t\t\t\t\tif (row.type === \"badge-limited\") {\n\t\t\t\t\t\t\tconst items = Array.isArray(row.value) ? row.value : [];\n\t\t\t\t\t\t\tcontent = (\n\t\t\t\t\t\t\t\t<BadgeListLimited\n\t\t\t\t\t\t\t\t\titems={items}\n\t\t\t\t\t\t\t\t\tvariant={row.badge?.variant || \"default\"}\n\t\t\t\t\t\t\t\t\tsubtle={row.badge?.subtle ?? true}\n\t\t\t\t\t\t\t\t\tmaxVisible={row.badge?.maxVisible}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else if (row.type === \"custom\") {\n\t\t\t\t\t\t\tcontent = row.value;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcontent = row.value || \"-\";\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ListItem\n\t\t\t\t\t\t\t\tkey={`${row.title}-${index}`}\n\t\t\t\t\t\t\t\ttitle={row.title}\n\t\t\t\t\t\t\t\tvalue={content}\n\t\t\t\t\t\t\t\tclassName=\"*:text-sm!\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t\t<DialogFooter>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\tonSave();\n\t\t\t\t\t\t\tsetOpen(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tvariant={actionVariant}\n\t\t\t\t\t\tisAction\n\t\t\t\t\t>\n\t\t\t\t\t\t{actionTitle}\n\t\t\t\t\t</Button>\n\t\t\t\t</DialogFooter>\n\t\t\t</DialogContent>\n\t\t</Dialog>\n\t);\n}\n","\"use client\";\n\nimport React from \"react\";\nimport {\n\tMenubar,\n\tMenubarContent,\n\tMenubarItem,\n\tMenubarMenu,\n\tMenubarTrigger,\n} from \"@/components/ui/menubar\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport type MenuItemConfig = {\n\tvalue: string;\n\tlabel: string;\n\tpath: string;\n\tonClick?: () => void;\n\tsubItems?: { label: string; onClick: () => void }[];\n\t/** Função customizada para determinar se o item está ativo */\n\tisActive?: (pathname: string) => boolean;\n};\n\nexport interface GenericHeadingMenubarProps {\n\t/** Configuração dos itens do menu */\n\tmenuItems: MenuItemConfig[];\n\t/** Classes CSS adicionais para o container */\n\tclassName?: string;\n\t/** Conteúdo adicional a ser renderizado ao lado do menu */\n\tchildren?: React.ReactNode;\n\t/** Desabilita todos os itens do menu */\n\tdisabled?: boolean;\n\t/** Função customizada para determinar se um item está ativo (fallback) */\n\tdefaultIsActive?: (menuValue: string, pathname: string) => boolean;\n\t/** Caminho atual da rota (para highlight do ativo). Compatível com Next.js e React Router. */\n\tcurrentPath?: string;\n\t/** Função executada ao solicitar navegação (ex: router.push ou navigate). */\n\tonNavigate?: (path: string) => void;\n}\n\n/**\n * Componente genérico de menubar para navegação entre páginas.\n * Ajustado para ser agnóstico de framework (Next.js ou React puro).\n *\n * @example\n * ```tsx\n * // Exemplo com Next.js\n * const router = useRouter();\n * const pathname = usePathname();\n *\n * <GenericHeadingMenubar\n * menuItems={menuItems}\n * currentPath={pathname}\n * onNavigate={(path) => router.push(path)}\n * />\n * ```\n */\nexport const GenericHeadingMenubar: React.FC<GenericHeadingMenubarProps> = ({\n\tmenuItems,\n\tclassName,\n\tchildren,\n\tdisabled,\n\tdefaultIsActive,\n\tcurrentPath = \"\",\n\tonNavigate,\n}) => {\n\t/**\n\t * Determina se um item do menu está ativo\n\t */\n\tconst isMenuItemActive = (menu: MenuItemConfig): boolean => {\n\t\t// Se o item tem uma função customizada, usa ela\n\t\tif (menu.isActive) {\n\t\t\treturn menu.isActive(currentPath);\n\t\t}\n\n\t\t// Se foi passada uma função padrão, usa ela\n\t\tif (defaultIsActive) {\n\t\t\treturn defaultIsActive(menu.value, currentPath);\n\t\t}\n\n\t\t// Fallback: compara o pathname com o path do menu\n\t\treturn currentPath === menu.path;\n\t};\n\n\t/**\n\t * Handler padrão de clique (navega para o path)\n\t */\n\tconst handleMenuClick = (menu: MenuItemConfig) => {\n\t\tif (menu.onClick) {\n\t\t\tmenu.onClick();\n\t\t} else if (onNavigate) {\n\t\t\tonNavigate(menu.path);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div className={cn(\"flex flex-wrap items-center justify-between\", className)}>\n\t\t\t<Menubar>\n\t\t\t\t{menuItems.map((menu) => (\n\t\t\t\t\t<MenubarMenu key={menu.value}>\n\t\t\t\t\t\t<MenubarTrigger\n\t\t\t\t\t\t\tonClick={() => handleMenuClick(menu)}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\"flex items-center gap-1 disabled:opacity-50 aria-disabled:opacity-50\",\n\t\t\t\t\t\t\t\tisMenuItemActive(menu) && \"bg-accent text-accent-foreground\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\taria-disabled={disabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{menu.label}\n\t\t\t\t\t\t</MenubarTrigger>\n\n\t\t\t\t\t\t{menu.subItems && (\n\t\t\t\t\t\t\t<MenubarContent>\n\t\t\t\t\t\t\t\t{menu.subItems.map((item) => (\n\t\t\t\t\t\t\t\t\t<MenubarItem key={item.label} onClick={item.onClick}>\n\t\t\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t\t\t</MenubarItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</MenubarContent>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</MenubarMenu>\n\t\t\t\t))}\n\t\t\t</Menubar>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n","\"use client\";\n\nimport React from \"react\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\n\nexport interface ColumnConfig<T> {\n\theader: string;\n\tcell: (item: T) => React.ReactNode;\n\tclassName?: string;\n}\n\nexport interface GenericTableProps<T> {\n\tdata: T[];\n\tcolumns: ColumnConfig<T>[];\n\trenderSeparator?: (index: number) => React.ReactNode;\n\temptyMessage?: string;\n\tclassName?: string;\n\tkeyExtractor?: (item: T, index: number) => string | number;\n}\n\nexport function GenericTable<T>({\n\tdata,\n\tcolumns,\n\trenderSeparator,\n\temptyMessage = \"Nenhum dado encontrado.\",\n\tclassName,\n\tkeyExtractor,\n}: GenericTableProps<T>) {\n\tif (!data || data.length === 0) {\n\t\treturn <div className=\"text-muted-foreground\">{emptyMessage}</div>;\n\t}\n\n\treturn (\n\t\t<div className={`rounded-md border ${className ?? \"\"}`}>\n\t\t\t<Table>\n\t\t\t\t<TableHeader>\n\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t{columns.map((col, index) => (\n\t\t\t\t\t\t\t<TableHead key={index.toString()}>{col.header}</TableHead>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</TableHeader>\n\t\t\t\t<TableBody>\n\t\t\t\t\t{data.map((item, index) => {\n\t\t\t\t\t\tconst rowKey = keyExtractor ? keyExtractor(item, index) : index;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<React.Fragment key={rowKey}>\n\t\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t\t{columns.map((col, colIndex) => (\n\t\t\t\t\t\t\t\t\t\t<TableCell key={colIndex.toString()} className={col.className}>\n\t\t\t\t\t\t\t\t\t\t\t{col.cell(item)}\n\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t{renderSeparator?.(index)}\n\t\t\t\t\t\t\t</React.Fragment>\n\t\t\t\t\t\t);\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","\"use client\";\n\nimport React from \"react\";\nimport { ScrollArea, ScrollBar } from \"@/components/ui/scroll-area\";\nimport { Tabs, TabsList, TabsTrigger } from \"@/components/ui/tabs\";\nimport { cn } from \"@/lib/utils\";\n\nexport type TabConfig = {\n\tvalue: string;\n\tlabel: string;\n\tpath?: string;\n\tmatch?: string;\n\tdisabled?: boolean;\n\tclassName?: string;\n};\n\nexport interface GenericTabsProps {\n\t/**\n\t * Array of tab configurations.\n\t */\n\ttabs: TabConfig[];\n\t/**\n\t * Disables all tabs if true.\n\t */\n\tisLoading?: boolean;\n\t/**\n\t * Custom class name for the container.\n\t */\n\tclassName?: string;\n\t/**\n\t * Current path string used for matching active tab.\n\t * Pass browser URL or current router path here to enable auto-highlighting.\n\t * Makes the component compatible with any router (Next.js, React Router, etc).\n\t */\n\tcurrentPath?: string;\n\t/**\n\t * Callback handler for navigation.\n\t * Called with the tab's path when a tab is clicked.\n\t * Use this to trigger your router's navigation (e.g. router.push, navigate(), etc).\n\t */\n\tonNavigate?: (path: string) => void;\n\t/**\n\t * Optional override for active tab value.\n\t * If provided, the component acts as controlled for the active state display.\n\t */\n\tvalue?: string;\n\t/**\n\t * Custom class name for all tab triggers.\n\t */\n\ttriggerClassName?: string;\n\t/**\n\t * If true, sets the tab width to fit content on small screens (sm:min-w-fit),\n\t * overriding the default fixed width.\n\t */\n\twidthCurrent?: boolean;\n}\n\nexport const GenericTabs: React.FC<GenericTabsProps> = ({\n\ttabs,\n\tisLoading = false,\n\tclassName,\n\tcurrentPath = \"\",\n\tonNavigate,\n\tvalue: controlledValue,\n\ttriggerClassName,\n\twidthCurrent,\n}) => {\n\tconst activeTab =\n\t\tcontrolledValue ??\n\t\ttabs\n\t\t\t.filter((t) => {\n\t\t\t\tconst matchString = t.match ?? t.path;\n\t\t\t\treturn matchString && currentPath.includes(matchString);\n\t\t\t})\n\t\t\t.sort((a, b) => {\n\t\t\t\tconst lenA = (a.match ?? a.path ?? \"\").length;\n\t\t\t\tconst lenB = (b.match ?? b.path ?? \"\").length;\n\t\t\t\treturn lenB - lenA;\n\t\t\t})[0]?.value ??\n\t\ttabs[0]?.value;\n\n\tconst handleNavigate = (tab: TabConfig) => {\n\t\tif (tab.disabled || isLoading) return;\n\n\t\tif (onNavigate && tab.path) {\n\t\t\tonNavigate(tab.path);\n\t\t}\n\t};\n\n\treturn (\n\t\t<Tabs value={activeTab} className={className}>\n\t\t\t<ScrollArea className=\"w-full\">\n\t\t\t\t<TabsList className=\"flex h-full w-full justify-start gap-2\">\n\t\t\t\t\t{tabs.map((tab) => (\n\t\t\t\t\t\t<TabsTrigger\n\t\t\t\t\t\t\tkey={tab.value}\n\t\t\t\t\t\t\tvalue={tab.value}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\"min-w-fit sm:min-w-[180px] w-fit\",\n\t\t\t\t\t\t\t\ttriggerClassName,\n\t\t\t\t\t\t\t\twidthCurrent && \"sm:min-w-fit\",\n\t\t\t\t\t\t\t\ttab.className,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tdisabled={isLoading || tab.disabled}\n\t\t\t\t\t\t\tonClick={() => handleNavigate(tab)}\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{tab.label}\n\t\t\t\t\t\t</TabsTrigger>\n\t\t\t\t\t))}\n\t\t\t\t</TabsList>\n\t\t\t\t<ScrollBar orientation=\"horizontal\" />\n\t\t\t</ScrollArea>\n\t\t</Tabs>\n\t);\n};\n","\"use client\";\n\nimport React from \"react\";\nimport {\n\tAccordion,\n\tAccordionContent,\n\tAccordionItem,\n\tAccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { cn } from \"@/lib/utils\";\n\ninterface HeaderProps {\n\ttitle: string;\n\tdescription: string;\n\tclassName?: string;\n\tclassNameDescription?: string;\n\tchildren?: React.ReactNode;\n\tdefaultValue?: string;\n\tdefaultOpen?: boolean;\n\tmenu?: React.ReactNode;\n}\n\nexport const Header: React.FC<HeaderProps> = ({\n\ttitle,\n\tdescription,\n\tclassName,\n\tclassNameDescription,\n\tchildren,\n\tdefaultValue = \"item-1\",\n\tdefaultOpen = false,\n\tmenu,\n}) => {\n\tconst [value, setValue] = React.useState<string>(defaultOpen ? defaultValue : \"\");\n\n\tconst isOpen = value === defaultValue;\n\n\treturn (\n\t\t<header className={cn(\"text-content-high max-w-5xl px-4 py-1 text-xl\", className)}>\n\t\t\t<Accordion\n\t\t\t\ttype=\"single\"\n\t\t\t\tcollapsible\n\t\t\t\tclassName=\"w-full\"\n\t\t\t\tvalue={value}\n\t\t\t\tonValueChange={setValue}\n\t\t\t>\n\t\t\t\t<AccordionItem className=\"border-b-0\" value={defaultValue}>\n\t\t\t\t\t<AccordionTrigger\n\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\tclassName=\"justify-start gap-2 py-2 text-xl font-bold\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{title}\n\t\t\t\t\t</AccordionTrigger>\n\t\t\t\t\t<AccordionContent className=\"text-content-medium text-base\">\n\t\t\t\t\t\t<p className={cn(\"text-content-medium text-base\", classNameDescription)}>\n\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t{isOpen && menu && <div className=\"my-4 text-foreground\">{menu}</div>}\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</AccordionContent>\n\t\t\t\t</AccordionItem>\n\t\t\t</Accordion>\n\t\t\t{!isOpen && menu && <div className=\"my-4\">{menu}</div>}\n\t\t</header>\n\t);\n};\n","\"use client\";\n\nimport React from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Badge, type BadgeProps } from \"@/components/ui/badge\";\nimport { HoverCard, HoverCardContent, HoverCardTrigger } from \"@/components/ui/hover-card\";\n\ninterface HoverBadgeProps {\n\ttitle: string;\n\tdescription?: string;\n\tvariant: BadgeProps[\"variant\"];\n\tclassName?: string;\n\tshowTitleInDescription?: boolean;\n\tsubtle?: boolean;\n}\n\nexport const HoverBadge: React.FC<HoverBadgeProps> = ({\n\ttitle,\n\tdescription,\n\tvariant,\n\tclassName,\n\tshowTitleInDescription = true,\n\tsubtle = false,\n}) => {\n\treturn (\n\t\t<HoverCard>\n\t\t\t<HoverCardTrigger>\n\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t{title}\n\t\t\t\t</Badge>\n\t\t\t</HoverCardTrigger>\n\t\t\t{description && (\n\t\t\t\t<HoverCardContent className={`${twMerge(\"w-72 space-y-1\", className)}`}>\n\t\t\t\t\t{showTitleInDescription && <span className=\"text-sm font-semibold\">{title}</span>}\n\t\t\t\t\t<p className=\"w-full text-sm text-wrap break-words whitespace-pre-line\">{description}</p>\n\t\t\t\t</HoverCardContent>\n\t\t\t)}\n\t\t</HoverCard>\n\t);\n};\n","\"use client\";\n\nimport { X } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\n\ninterface RuleFilterBuilderProps {\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tfields: any[];\n\tonRemove: (index: number) => void;\n\tonAdd: () => void;\n\tmaxBlocks?: number;\n\tisPending?: boolean;\n\tinstructionContent?: React.ReactNode;\n\trenderConnector?: (index: number) => React.ReactNode;\n\trenderItem: (index: number) => React.ReactNode;\n}\n\nexport function RuleFilterBuilder({\n\tfields,\n\tonRemove,\n\tonAdd,\n\tmaxBlocks = 3,\n\tisPending = false,\n\tinstructionContent,\n\trenderConnector,\n\trenderItem,\n}: RuleFilterBuilderProps) {\n\t// Ensure at least one block exists\n\tReact.useEffect(() => {\n\t\tif (fields.length === 0) {\n\t\t\tonAdd();\n\t\t}\n\t}, [fields.length, onAdd]);\n\n\treturn (\n\t\t<div className=\"space-y-6\">\n\t\t\t{instructionContent && (\n\t\t\t\t<div className=\"bg-muted/50 p-4 rounded-md border text-sm text-muted-foreground mb-4\">\n\t\t\t\t\t{instructionContent}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{fields.map((fieldItem, index) => (\n\t\t\t\t<div key={fieldItem.id} className=\"relative\">\n\t\t\t\t\t{/* Operator Between Blocks */}\n\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t<div className=\"relative py-4 flex items-center justify-center\">\n\t\t\t\t\t\t\t<div className=\"absolute inset-0 flex items-center\">\n\t\t\t\t\t\t\t\t<span className=\"w-full border-t border-border\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"relative bg-background px-4\">\n\t\t\t\t\t\t\t\t{renderConnector ? renderConnector(index) : null}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{/* Filter Block */}\n\t\t\t\t\t<div className=\"border rounded-lg bg-card text-card-foreground shadow-sm overflow-hidden\">\n\t\t\t\t\t\t<div className=\"bg-muted/30 px-4 py-3 border-b flex items-center justify-between\">\n\t\t\t\t\t\t\t<div className=\"font-semibold text-sm flex items-center gap-2\">\n\t\t\t\t\t\t\t\t<span className=\"bg-primary/10 text-primary w-6 h-6 flex items-center justify-center rounded-full text-xs\">\n\t\t\t\t\t\t\t\t\t{index + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\tBloco de Seleção {index + 1}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\t\tonClick={() => onRemove(index)}\n\t\t\t\t\t\t\t\t\tclassName=\"hover:bg-destructive hover:text-destructive-foreground h-8 w-8 p-0\"\n\t\t\t\t\t\t\t\t\tdisabled={isPending}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<X className=\"h-4 w-4\" />\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"p-4 grid grid-cols-1 md:grid-cols-2 gap-4\">{renderItem(index)}</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t))}\n\n\t\t\t{fields.length < maxBlocks && (\n\t\t\t\t<Button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName=\"w-full border-dashed\"\n\t\t\t\t\tonClick={onAdd}\n\t\t\t\t\tdisabled={isPending}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"flex items-center gap-2\">\n\t\t\t\t\t\t<span className=\"font-semibold text-lg\">+</span>\n\t\t\t\t\t\tAdicionar Bloco de Seleção (Restam {maxBlocks - fields.length})\n\t\t\t\t\t</div>\n\t\t\t\t</Button>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\ninterface StepNavigatorProps {\n\t/** Índice atual do passo */\n\tcurrentIndex: number;\n\t/** Total de passos */\n\ttotalSteps: number;\n\t/** Ação ao clicar em \"Anterior\" */\n\tonPrev: () => void;\n\t/** Ação ao clicar em \"Próximo\" */\n\tonNext: () => void;\n\t/** Desabilita os botões (ex: loading) */\n\tdisabled?: boolean;\n\t/** Personalização opcional dos rótulos */\n\tprevLabel?: string;\n\tnextLabel?: string;\n\t/** Controla se deve ocultar os botões ao chegar nas extremidades */\n\thideEdgeButtons?: boolean;\n\tclassName?: string;\n}\n\nexport const StepNavigator: React.FC<StepNavigatorProps> = ({\n\tcurrentIndex,\n\ttotalSteps,\n\tonPrev,\n\tonNext,\n\tdisabled = false,\n\tprevLabel = \"Anterior\",\n\tnextLabel = \"Próximo\",\n\thideEdgeButtons = true,\n\tclassName,\n}) => {\n\tconst isFirst = currentIndex === 0;\n\tconst isLast = currentIndex === totalSteps - 1;\n\n\treturn (\n\t\t<div className={cn(\"flex items-center gap-2\", className)}>\n\t\t\t{(!hideEdgeButtons || !isFirst) && (\n\t\t\t\t<Button type=\"button\" variant=\"secondary\" onClick={onPrev} disabled={disabled || isFirst}>\n\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t{prevLabel}\n\t\t\t\t</Button>\n\t\t\t)}\n\n\t\t\t{(!hideEdgeButtons || !isLast) && (\n\t\t\t\t<Button type=\"button\" variant=\"secondary\" onClick={onNext} disabled={disabled || isLast}>\n\t\t\t\t\t{nextLabel}\n\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t</Button>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import React from \"react\";\nimport { cn } from \"@/lib/utils\";\n\ninterface TextWrapProps extends React.HTMLAttributes<HTMLDivElement> {\n\tchildren: React.ReactNode;\n}\n\nexport const TextWrap: React.FC<TextWrapProps> = ({ children, className, ...props }) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"line-clamp-4 w-full max-w-60 min-w-60 text-wrap break-words 2xl:max-w-[80%]\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n"],"names":["BadgeListLimited","items","maxVisible","variant","subtle","tooltipItems","visibleItems","slice","remainingCount","length","hasMore","hiddenItems","itemsToShowInTooltip","React","div","className","map","item","Badge","key","TooltipProvider","Tooltip","TooltipTrigger","asChild","TooltipContent","tooltipItem","CollapsibleHelp","children","content","title","label","open","setOpen","useState","cn","Popover","onOpenChange","PopoverTrigger","PopoverContent","align","side","Alert","Info","AlertTitle","Button","size","type","onClick","e","stopPropagation","X","AlertDescription","ConfirmSave","onSave","disabled","dialogTitle","dialogDescription","actionTitle","rows","actionVariant","Dialog","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","data-confirm-save-scrollable","row","index","value","Array","isArray","badge","ListItem","DialogFooter","isAction","GenericHeadingMenubar","menuItems","defaultIsActive","currentPath","onNavigate","isMenuItemActive","menu","isActive","path","handleMenuClick","Menubar","MenubarMenu","MenubarTrigger","aria-disabled","subItems","MenubarContent","MenubarItem","GenericTable","data","columns","renderSeparator","emptyMessage","keyExtractor","Table","TableHeader","TableRow","col","TableHead","toString","header","TableBody","rowKey","Fragment","colIndex","TableCell","cell","GenericTabs","tabs","isLoading","controlledValue","triggerClassName","widthCurrent","activeTab","filter","t","matchString","match","includes","sort","a","b","lenA","lenB","handleNavigate","tab","Tabs","ScrollArea","TabsList","TabsTrigger","ScrollBar","orientation","Header","description","classNameDescription","defaultValue","defaultOpen","setValue","isOpen","Accordion","collapsible","onValueChange","AccordionItem","AccordionTrigger","iconPosition","AccordionContent","p","HoverBadge","showTitleInDescription","HoverCard","HoverCardTrigger","HoverCardContent","twMerge","span","RuleFilterBuilder","fields","onRemove","onAdd","maxBlocks","isPending","instructionContent","renderConnector","renderItem","useEffect","fieldItem","id","StepNavigator","currentIndex","totalSteps","onPrev","onNext","prevLabel","nextLabel","hideEdgeButtons","isFirst","isLast","ChevronLeftIcon","ChevronRightIcon","TextWrap","props"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/components/default/base/BadgeListLimited.tsx","../../src/components/default/base/CollapsibleHelp.tsx","../../src/components/default/base/ConfirmSave.tsx","../../src/components/default/base/GenericHeadingMenubar.tsx","../../src/components/default/base/GenericTable.tsx","../../src/components/default/base/Header.tsx","../../src/components/default/base/HoverBadge.tsx","../../src/components/default/base/RuleFiltersBuilder.tsx","../../src/components/default/base/StepNavigator.tsx","../../src/components/default/base/TextWrap.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { Badge, type BadgeVariants } from \"@/components/ui/badge\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"@/components/ui/tooltip\";\n\ninterface BadgeListLimitedProps {\n\titems: string[];\n\tmaxVisible?: number;\n\tvariant?: BadgeVariants;\n\tsubtle?: boolean;\n\ttooltipItems?: string[];\n}\n\n/**\n * Componente que exibe uma lista de Badges com limite de itens visíveis.\n * Se houver mais itens do que o limite, exibe um Badge adicional com \"+N\".\n *\n * @param items - Array de strings para exibir como Badges\n * @param maxVisible - Número máximo de Badges visíveis (padrão: 3)\n * @param variant - Variante do Badge (padrão: \"default\")\n * @param subtle - Se o Badge deve ter estilo sutil (padrão: true)\n * @param tooltipItems - Array de strings para exibir no tooltip (opcional). Se fornecido, exibe todos os itens no tooltip, cada um em uma linha.\n */\nexport const BadgeListLimited: React.FC<BadgeListLimitedProps> = ({\n\titems,\n\tmaxVisible = 3,\n\tvariant = \"default\",\n\tsubtle = true,\n\ttooltipItems,\n}) => {\n\tconst visibleItems = items.slice(0, maxVisible);\n\tconst remainingCount = items.length - maxVisible;\n\tconst hasMore = remainingCount > 0;\n\n\tconst hiddenItems = items.slice(maxVisible);\n\tconst itemsToShowInTooltip = tooltipItems || hiddenItems;\n\n\treturn (\n\t\t<div className=\"flex items-center gap-2.5\">\n\t\t\t{visibleItems.map((item) => (\n\t\t\t\t<Badge key={item} variant={variant} subtle={subtle}>\n\t\t\t\t\t{item}\n\t\t\t\t</Badge>\n\t\t\t))}\n\t\t\t{hasMore &&\n\t\t\t\t(itemsToShowInTooltip.length > 0 ? (\n\t\t\t\t\t<TooltipProvider>\n\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t\t\t\t\t+{remainingCount}\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t\t<div className=\"flex max-h-[200px] flex-col gap-1 overflow-y-auto text-xs\">\n\t\t\t\t\t\t\t\t\t{itemsToShowInTooltip.map((tooltipItem) => (\n\t\t\t\t\t\t\t\t\t\t<div key={tooltipItem}>{tooltipItem}</div>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</TooltipProvider>\n\t\t\t\t) : (\n\t\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t\t+{remainingCount}\n\t\t\t\t\t</Badge>\n\t\t\t\t))}\n\t\t</div>\n\t);\n};\n","\"use client\";\n\nimport { Info, X } from \"lucide-react\";\nimport React from \"react\";\nimport { Alert, AlertDescription, AlertTitle } from \"@/components/ui/alert\";\nimport { Button } from \"@/components/ui/button\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface CollapsibleHelpProps {\n\tchildren?: React.ReactNode;\n\tcontent: React.ReactNode;\n\ttitle?: string;\n\tclassName?: string;\n\tlabel?: React.ReactNode;\n}\n\n/**\n * A simpler CollapsibleHelp component that uses a Popover for the help content.\n * It manages its own open state internally.\n * The trigger is provided as 'children', and the content to show is passed as the 'content' prop.\n *\n * Usage:\n * <CollapsibleHelp\n * content={<p>Help text goes here...</p>}\n * title=\"Help Section\"\n * >\n * <button>Toggle Help</button> // This is your custom trigger\n * </CollapsibleHelp>\n */\nexport function CollapsibleHelp({\n\tchildren,\n\tcontent,\n\ttitle = \"Ajuda\",\n\tclassName,\n\tlabel,\n}: CollapsibleHelpProps) {\n\tconst [open, setOpen] = React.useState(false);\n\n\treturn (\n\t\t<div className={cn(\"flex items-start justify-between gap-2\", className)}>\n\t\t\t{label && <div className=\"flex-1\">{label}</div>}\n\n\t\t\t<Popover open={open} onOpenChange={setOpen}>\n\t\t\t\t<PopoverTrigger asChild>{children}</PopoverTrigger>\n\t\t\t\t<PopoverContent\n\t\t\t\t\tclassName=\"w-100 p-0 border-none bg-transparent shadow-none\"\n\t\t\t\t\talign=\"end\"\n\t\t\t\t\tside=\"bottom\"\n\t\t\t\t>\n\t\t\t\t\t<Alert className=\"relative border-primary/20 shadow-md bg-popover\">\n\t\t\t\t\t\t<Info className=\"h-4 w-4 text-primary\" />\n\t\t\t\t\t\t<AlertTitle className=\"text-primary font-medium\">{title}</AlertTitle>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tclassName=\"absolute top-4 right-4 h-6 w-6 p-0 text-muted-foreground hover:text-foreground\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tsetOpen(false);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<X className=\"h-4 w-4\" />\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<AlertDescription className=\"mt-2 text-sm space-y-3 text-foreground\">\n\t\t\t\t\t\t\t{content}\n\t\t\t\t\t\t</AlertDescription>\n\t\t\t\t\t</Alert>\n\t\t\t\t</PopoverContent>\n\t\t\t</Popover>\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport React from \"react\";\nimport { BadgeListLimited } from \"@/components/default/base/BadgeListLimited\";\nimport { ListItem } from \"@/components/default/layout\";\nimport type { BadgeVariants } from \"@/components/ui/badge\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport {\n\tDialog,\n\tDialogContent,\n\tDialogDescription,\n\tDialogFooter,\n\tDialogHeader,\n\tDialogTitle,\n\tDialogTrigger,\n} from \"@/components/ui/dialog\";\n\nexport interface ConfirmSaveRowConfig {\n\ttitle: string;\n\t// biome-ignore lint/suspicious/noExplicitAny: <Generic value>\n\tvalue: any;\n\ttype: \"text\" | \"badge-limited\" | \"custom\";\n\tbadge?: {\n\t\tvariant?: BadgeVariants;\n\t\tsubtle?: boolean;\n\t\tmaxVisible?: number;\n\t};\n}\n\ninterface ConfirmSaveProps {\n\tonSave: () => void;\n\tdisabled?: boolean;\n\tdialogTitle?: string;\n\tdialogDescription?: string;\n\tactionTitle?: string;\n\tactionVariant?: ButtonProps[\"variant\"];\n\tchildren?: React.ReactNode;\n\trows?: ConfirmSaveRowConfig[];\n}\n\nexport function ConfirmSave({\n\tonSave,\n\tdisabled,\n\tdialogTitle = \"Confirme os dados da predefinição\",\n\tdialogDescription = \"Verifique se os dados estão corretos antes de salvar. Você pode alterá-los a qualquer momento na lista de predefinições.\",\n\tactionTitle = \"Salvar predefinição\",\n\tchildren,\n\trows = [],\n\tactionVariant = \"default\",\n}: ConfirmSaveProps) {\n\tconst [open, setOpen] = React.useState(false);\n\n\treturn (\n\t\t<Dialog open={open} onOpenChange={setOpen}>\n\t\t\t<DialogTrigger asChild>{children}</DialogTrigger>\n\t\t\t<DialogContent className=\"flex max-h-[90vh] max-w-116 flex-col\">\n\t\t\t\t<DialogHeader className=\"text-left\">\n\t\t\t\t\t<DialogTitle className=\"text-xl font-semibold\">{dialogTitle}</DialogTitle>\n\t\t\t\t\t<DialogDescription>{dialogDescription}</DialogDescription>\n\t\t\t\t</DialogHeader>\n\t\t\t\t<div\n\t\t\t\t\tdata-confirm-save-scrollable\n\t\t\t\t\tclassName=\"flex min-h-0 max-w-full flex-1 flex-col overflow-y-auto py-2\"\n\t\t\t\t>\n\t\t\t\t\t{rows.map((row, index) => {\n\t\t\t\t\t\tif (!row.value || (Array.isArray(row.value) && row.value.length === 0)) {\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet content: React.ReactNode;\n\n\t\t\t\t\t\tif (row.type === \"badge-limited\") {\n\t\t\t\t\t\t\tconst items = Array.isArray(row.value) ? row.value : [];\n\t\t\t\t\t\t\tcontent = (\n\t\t\t\t\t\t\t\t<BadgeListLimited\n\t\t\t\t\t\t\t\t\titems={items}\n\t\t\t\t\t\t\t\t\tvariant={row.badge?.variant || \"default\"}\n\t\t\t\t\t\t\t\t\tsubtle={row.badge?.subtle ?? true}\n\t\t\t\t\t\t\t\t\tmaxVisible={row.badge?.maxVisible}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else if (row.type === \"custom\") {\n\t\t\t\t\t\t\tcontent = row.value;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcontent = row.value || \"-\";\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ListItem\n\t\t\t\t\t\t\t\tkey={`${row.title}-${index}`}\n\t\t\t\t\t\t\t\ttitle={row.title}\n\t\t\t\t\t\t\t\tvalue={content}\n\t\t\t\t\t\t\t\tclassName=\"*:text-sm!\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t\t<DialogFooter>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\tonSave();\n\t\t\t\t\t\t\tsetOpen(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tvariant={actionVariant}\n\t\t\t\t\t\tisAction\n\t\t\t\t\t>\n\t\t\t\t\t\t{actionTitle}\n\t\t\t\t\t</Button>\n\t\t\t\t</DialogFooter>\n\t\t\t</DialogContent>\n\t\t</Dialog>\n\t);\n}\n","\"use client\";\n\nimport React from \"react\";\nimport {\n\tMenubar,\n\tMenubarContent,\n\tMenubarItem,\n\tMenubarMenu,\n\tMenubarTrigger,\n} from \"@/components/ui/menubar\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport type MenuItemConfig = {\n\tvalue: string;\n\tlabel: string;\n\tpath: string;\n\tonClick?: () => void;\n\tsubItems?: { label: string; onClick: () => void }[];\n\t/** Função customizada para determinar se o item está ativo */\n\tisActive?: (pathname: string) => boolean;\n};\n\nexport interface GenericHeadingMenubarProps {\n\t/** Configuração dos itens do menu */\n\tmenuItems: MenuItemConfig[];\n\t/** Classes CSS adicionais para o container */\n\tclassName?: string;\n\t/** Conteúdo adicional a ser renderizado ao lado do menu */\n\tchildren?: React.ReactNode;\n\t/** Desabilita todos os itens do menu */\n\tdisabled?: boolean;\n\t/** Função customizada para determinar se um item está ativo (fallback) */\n\tdefaultIsActive?: (menuValue: string, pathname: string) => boolean;\n\t/** Caminho atual da rota (para highlight do ativo). Compatível com Next.js e React Router. */\n\tcurrentPath?: string;\n\t/** Função executada ao solicitar navegação (ex: router.push ou navigate). */\n\tonNavigate?: (path: string) => void;\n}\n\n/**\n * Componente genérico de menubar para navegação entre páginas.\n * Ajustado para ser agnóstico de framework (Next.js ou React puro).\n *\n * @example\n * ```tsx\n * // Exemplo com Next.js\n * const router = useRouter();\n * const pathname = usePathname();\n *\n * <GenericHeadingMenubar\n * menuItems={menuItems}\n * currentPath={pathname}\n * onNavigate={(path) => router.push(path)}\n * />\n * ```\n */\nexport const GenericHeadingMenubar: React.FC<GenericHeadingMenubarProps> = ({\n\tmenuItems,\n\tclassName,\n\tchildren,\n\tdisabled,\n\tdefaultIsActive,\n\tcurrentPath = \"\",\n\tonNavigate,\n}) => {\n\t/**\n\t * Determina se um item do menu está ativo\n\t */\n\tconst isMenuItemActive = (menu: MenuItemConfig): boolean => {\n\t\t// Se o item tem uma função customizada, usa ela\n\t\tif (menu.isActive) {\n\t\t\treturn menu.isActive(currentPath);\n\t\t}\n\n\t\t// Se foi passada uma função padrão, usa ela\n\t\tif (defaultIsActive) {\n\t\t\treturn defaultIsActive(menu.value, currentPath);\n\t\t}\n\n\t\t// Fallback: compara o pathname com o path do menu\n\t\treturn currentPath === menu.path;\n\t};\n\n\t/**\n\t * Handler padrão de clique (navega para o path)\n\t */\n\tconst handleMenuClick = (menu: MenuItemConfig) => {\n\t\tif (menu.onClick) {\n\t\t\tmenu.onClick();\n\t\t} else if (onNavigate) {\n\t\t\tonNavigate(menu.path);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div className={cn(\"flex flex-wrap items-center justify-between\", className)}>\n\t\t\t<Menubar>\n\t\t\t\t{menuItems.map((menu) => (\n\t\t\t\t\t<MenubarMenu key={menu.value}>\n\t\t\t\t\t\t<MenubarTrigger\n\t\t\t\t\t\t\tonClick={() => handleMenuClick(menu)}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\"flex items-center gap-1 disabled:opacity-50 aria-disabled:opacity-50\",\n\t\t\t\t\t\t\t\tisMenuItemActive(menu) && \"bg-accent text-accent-foreground\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\taria-disabled={disabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{menu.label}\n\t\t\t\t\t\t</MenubarTrigger>\n\n\t\t\t\t\t\t{menu.subItems && (\n\t\t\t\t\t\t\t<MenubarContent>\n\t\t\t\t\t\t\t\t{menu.subItems.map((item) => (\n\t\t\t\t\t\t\t\t\t<MenubarItem key={item.label} onClick={item.onClick}>\n\t\t\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t\t\t</MenubarItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</MenubarContent>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</MenubarMenu>\n\t\t\t\t))}\n\t\t\t</Menubar>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n","\"use client\";\n\nimport React from \"react\";\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\n\nexport interface ColumnConfig<T> {\n\theader: string;\n\tcell: (item: T) => React.ReactNode;\n\tclassName?: string;\n}\n\nexport interface GenericTableProps<T> {\n\tdata: T[];\n\tcolumns: ColumnConfig<T>[];\n\trenderSeparator?: (index: number) => React.ReactNode;\n\temptyMessage?: string;\n\tclassName?: string;\n\tkeyExtractor?: (item: T, index: number) => string | number;\n}\n\nexport function GenericTable<T>({\n\tdata,\n\tcolumns,\n\trenderSeparator,\n\temptyMessage = \"Nenhum dado encontrado.\",\n\tclassName,\n\tkeyExtractor,\n}: GenericTableProps<T>) {\n\tif (!data || data.length === 0) {\n\t\treturn <div className=\"text-muted-foreground\">{emptyMessage}</div>;\n\t}\n\n\treturn (\n\t\t<div className={`rounded-md border ${className ?? \"\"}`}>\n\t\t\t<Table>\n\t\t\t\t<TableHeader>\n\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t{columns.map((col, index) => (\n\t\t\t\t\t\t\t<TableHead key={index.toString()}>{col.header}</TableHead>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableRow>\n\t\t\t\t</TableHeader>\n\t\t\t\t<TableBody>\n\t\t\t\t\t{data.map((item, index) => {\n\t\t\t\t\t\tconst rowKey = keyExtractor ? keyExtractor(item, index) : index;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<React.Fragment key={rowKey}>\n\t\t\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t\t\t{columns.map((col, colIndex) => (\n\t\t\t\t\t\t\t\t\t\t<TableCell key={colIndex.toString()} className={col.className}>\n\t\t\t\t\t\t\t\t\t\t\t{col.cell(item)}\n\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t\t{renderSeparator?.(index)}\n\t\t\t\t\t\t\t</React.Fragment>\n\t\t\t\t\t\t);\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","\"use client\";\n\nimport React from \"react\";\nimport {\n\tAccordion,\n\tAccordionContent,\n\tAccordionItem,\n\tAccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { cn } from \"@/lib/utils\";\n\ninterface HeaderProps {\n\ttitle: string;\n\tdescription: string;\n\tclassName?: string;\n\tclassNameDescription?: string;\n\tchildren?: React.ReactNode;\n\tdefaultValue?: string;\n\tdefaultOpen?: boolean;\n\tmenu?: React.ReactNode;\n}\n\nexport const Header: React.FC<HeaderProps> = ({\n\ttitle,\n\tdescription,\n\tclassName,\n\tclassNameDescription,\n\tchildren,\n\tdefaultValue = \"item-1\",\n\tdefaultOpen = false,\n\tmenu,\n}) => {\n\tconst [value, setValue] = React.useState<string>(defaultOpen ? defaultValue : \"\");\n\n\tconst isOpen = value === defaultValue;\n\n\treturn (\n\t\t<header className={cn(\"text-content-high max-w-5xl px-4 py-1 text-xl\", className)}>\n\t\t\t<Accordion\n\t\t\t\ttype=\"single\"\n\t\t\t\tcollapsible\n\t\t\t\tclassName=\"w-full\"\n\t\t\t\tvalue={value}\n\t\t\t\tonValueChange={setValue}\n\t\t\t>\n\t\t\t\t<AccordionItem className=\"border-b-0\" value={defaultValue}>\n\t\t\t\t\t<AccordionTrigger\n\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\tclassName=\"justify-start gap-2 py-2 text-xl font-bold\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{title}\n\t\t\t\t\t</AccordionTrigger>\n\t\t\t\t\t<AccordionContent className=\"text-content-medium text-base\">\n\t\t\t\t\t\t<p className={cn(\"text-content-medium text-base\", classNameDescription)}>\n\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t{isOpen && menu && <div className=\"my-4 text-foreground\">{menu}</div>}\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</AccordionContent>\n\t\t\t\t</AccordionItem>\n\t\t\t</Accordion>\n\t\t\t{!isOpen && menu && <div className=\"my-4\">{menu}</div>}\n\t\t</header>\n\t);\n};\n","\"use client\";\n\nimport React from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Badge, type BadgeProps } from \"@/components/ui/badge\";\nimport { HoverCard, HoverCardContent, HoverCardTrigger } from \"@/components/ui/hover-card\";\n\ninterface HoverBadgeProps {\n\ttitle: string;\n\tdescription?: string;\n\tvariant: BadgeProps[\"variant\"];\n\tclassName?: string;\n\tshowTitleInDescription?: boolean;\n\tsubtle?: boolean;\n}\n\nexport const HoverBadge: React.FC<HoverBadgeProps> = ({\n\ttitle,\n\tdescription,\n\tvariant,\n\tclassName,\n\tshowTitleInDescription = true,\n\tsubtle = false,\n}) => {\n\treturn (\n\t\t<HoverCard>\n\t\t\t<HoverCardTrigger>\n\t\t\t\t<Badge variant={variant} subtle={subtle}>\n\t\t\t\t\t{title}\n\t\t\t\t</Badge>\n\t\t\t</HoverCardTrigger>\n\t\t\t{description && (\n\t\t\t\t<HoverCardContent className={`${twMerge(\"w-72 space-y-1\", className)}`}>\n\t\t\t\t\t{showTitleInDescription && <span className=\"text-sm font-semibold\">{title}</span>}\n\t\t\t\t\t<p className=\"w-full text-sm text-wrap break-words whitespace-pre-line\">{description}</p>\n\t\t\t\t</HoverCardContent>\n\t\t\t)}\n\t\t</HoverCard>\n\t);\n};\n","\"use client\";\n\nimport { X } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\n\ninterface RuleFilterBuilderProps {\n\t// biome-ignore lint/suspicious/noExplicitAny: <any>\n\tfields: any[];\n\tonRemove: (index: number) => void;\n\tonAdd: () => void;\n\tmaxBlocks?: number;\n\tisPending?: boolean;\n\tinstructionContent?: React.ReactNode;\n\trenderConnector?: (index: number) => React.ReactNode;\n\trenderItem: (index: number) => React.ReactNode;\n}\n\nexport function RuleFilterBuilder({\n\tfields,\n\tonRemove,\n\tonAdd,\n\tmaxBlocks = 3,\n\tisPending = false,\n\tinstructionContent,\n\trenderConnector,\n\trenderItem,\n}: RuleFilterBuilderProps) {\n\t// Ensure at least one block exists\n\tReact.useEffect(() => {\n\t\tif (fields.length === 0) {\n\t\t\tonAdd();\n\t\t}\n\t}, [fields.length, onAdd]);\n\n\treturn (\n\t\t<div className=\"space-y-6\">\n\t\t\t{instructionContent && (\n\t\t\t\t<div className=\"bg-muted/50 p-4 rounded-md border text-sm text-muted-foreground mb-4\">\n\t\t\t\t\t{instructionContent}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{fields.map((fieldItem, index) => (\n\t\t\t\t<div key={fieldItem.id} className=\"relative\">\n\t\t\t\t\t{/* Operator Between Blocks */}\n\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t<div className=\"relative py-4 flex items-center justify-center\">\n\t\t\t\t\t\t\t<div className=\"absolute inset-0 flex items-center\">\n\t\t\t\t\t\t\t\t<span className=\"w-full border-t border-border\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"relative bg-background px-4\">\n\t\t\t\t\t\t\t\t{renderConnector ? renderConnector(index) : null}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{/* Filter Block */}\n\t\t\t\t\t<div className=\"border rounded-lg bg-card text-card-foreground shadow-sm overflow-hidden\">\n\t\t\t\t\t\t<div className=\"bg-muted/30 px-4 py-3 border-b flex items-center justify-between\">\n\t\t\t\t\t\t\t<div className=\"font-semibold text-sm flex items-center gap-2\">\n\t\t\t\t\t\t\t\t<span className=\"bg-primary/10 text-primary w-6 h-6 flex items-center justify-center rounded-full text-xs\">\n\t\t\t\t\t\t\t\t\t{index + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\tBloco de Seleção {index + 1}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\t\tonClick={() => onRemove(index)}\n\t\t\t\t\t\t\t\t\tclassName=\"hover:bg-destructive hover:text-destructive-foreground h-8 w-8 p-0\"\n\t\t\t\t\t\t\t\t\tdisabled={isPending}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<X className=\"h-4 w-4\" />\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"p-4 grid grid-cols-1 md:grid-cols-2 gap-4\">{renderItem(index)}</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t))}\n\n\t\t\t{fields.length < maxBlocks && (\n\t\t\t\t<Button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName=\"w-full border-dashed\"\n\t\t\t\t\tonClick={onAdd}\n\t\t\t\t\tdisabled={isPending}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"flex items-center gap-2\">\n\t\t\t\t\t\t<span className=\"font-semibold text-lg\">+</span>\n\t\t\t\t\t\tAdicionar Bloco de Seleção (Restam {maxBlocks - fields.length})\n\t\t\t\t\t</div>\n\t\t\t\t</Button>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n","\"use client\";\n\nimport { ChevronLeftIcon, ChevronRightIcon } from \"lucide-react\";\nimport React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\ninterface StepNavigatorProps {\n\t/** Índice atual do passo */\n\tcurrentIndex: number;\n\t/** Total de passos */\n\ttotalSteps: number;\n\t/** Ação ao clicar em \"Anterior\" */\n\tonPrev: () => void;\n\t/** Ação ao clicar em \"Próximo\" */\n\tonNext: () => void;\n\t/** Desabilita os botões (ex: loading) */\n\tdisabled?: boolean;\n\t/** Personalização opcional dos rótulos */\n\tprevLabel?: string;\n\tnextLabel?: string;\n\t/** Controla se deve ocultar os botões ao chegar nas extremidades */\n\thideEdgeButtons?: boolean;\n\tclassName?: string;\n}\n\nexport const StepNavigator: React.FC<StepNavigatorProps> = ({\n\tcurrentIndex,\n\ttotalSteps,\n\tonPrev,\n\tonNext,\n\tdisabled = false,\n\tprevLabel = \"Anterior\",\n\tnextLabel = \"Próximo\",\n\thideEdgeButtons = true,\n\tclassName,\n}) => {\n\tconst isFirst = currentIndex === 0;\n\tconst isLast = currentIndex === totalSteps - 1;\n\n\treturn (\n\t\t<div className={cn(\"flex items-center gap-2\", className)}>\n\t\t\t{(!hideEdgeButtons || !isFirst) && (\n\t\t\t\t<Button type=\"button\" variant=\"secondary\" onClick={onPrev} disabled={disabled || isFirst}>\n\t\t\t\t\t<ChevronLeftIcon className=\"size-4\" />\n\t\t\t\t\t{prevLabel}\n\t\t\t\t</Button>\n\t\t\t)}\n\n\t\t\t{(!hideEdgeButtons || !isLast) && (\n\t\t\t\t<Button type=\"button\" variant=\"secondary\" onClick={onNext} disabled={disabled || isLast}>\n\t\t\t\t\t{nextLabel}\n\t\t\t\t\t<ChevronRightIcon className=\"size-4\" />\n\t\t\t\t</Button>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import React from \"react\";\nimport { cn } from \"@/lib/utils\";\n\ninterface TextWrapProps extends React.HTMLAttributes<HTMLDivElement> {\n\tchildren: React.ReactNode;\n}\n\nexport const TextWrap: React.FC<TextWrapProps> = ({ children, className, ...props }) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"line-clamp-4 w-full max-w-60 min-w-60 text-wrap break-words 2xl:max-w-[80%]\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</div>\n\t);\n};\n"],"names":["BadgeListLimited","items","maxVisible","variant","subtle","tooltipItems","visibleItems","slice","remainingCount","length","hasMore","hiddenItems","itemsToShowInTooltip","React","div","className","map","item","Badge","key","TooltipProvider","Tooltip","TooltipTrigger","asChild","TooltipContent","tooltipItem","CollapsibleHelp","children","content","title","label","open","setOpen","useState","cn","Popover","onOpenChange","PopoverTrigger","PopoverContent","align","side","Alert","Info","AlertTitle","Button","size","type","onClick","e","stopPropagation","X","AlertDescription","ConfirmSave","onSave","disabled","dialogTitle","dialogDescription","actionTitle","rows","actionVariant","Dialog","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","data-confirm-save-scrollable","row","index","value","Array","isArray","badge","ListItem","DialogFooter","isAction","GenericHeadingMenubar","menuItems","defaultIsActive","currentPath","onNavigate","isMenuItemActive","menu","isActive","path","handleMenuClick","Menubar","MenubarMenu","MenubarTrigger","aria-disabled","subItems","MenubarContent","MenubarItem","GenericTable","data","columns","renderSeparator","emptyMessage","keyExtractor","Table","TableHeader","TableRow","col","TableHead","toString","header","TableBody","rowKey","Fragment","colIndex","TableCell","cell","Header","description","classNameDescription","defaultValue","defaultOpen","setValue","isOpen","Accordion","collapsible","onValueChange","AccordionItem","AccordionTrigger","iconPosition","AccordionContent","p","HoverBadge","showTitleInDescription","HoverCard","HoverCardTrigger","HoverCardContent","twMerge","span","RuleFilterBuilder","fields","onRemove","onAdd","maxBlocks","isPending","instructionContent","renderConnector","renderItem","useEffect","fieldItem","id","StepNavigator","currentIndex","totalSteps","onPrev","onNext","prevLabel","nextLabel","hideEdgeButtons","isFirst","isLast","ChevronLeftIcon","ChevronRightIcon","TextWrap","props"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA;;;;;;;;;AASC,IACM,MAAMA,gBAAAA,GAAoD,CAAC,EACjEC,KAAK,EACLC,UAAAA,GAAa,CAAC,EACdC,UAAU,SAAS,EACnBC,SAAS,IAAI,EACbC,YAAY,EACZ,GAAA;AACA,IAAA,MAAMC,YAAAA,GAAeL,KAAAA,CAAMM,KAAK,CAAC,CAAA,EAAGL,UAAAA,CAAAA;IACpC,MAAMM,cAAAA,GAAiBP,KAAAA,CAAMQ,MAAM,GAAGP,UAAAA;AACtC,IAAA,MAAMQ,UAAUF,cAAAA,GAAiB,CAAA;IAEjC,MAAMG,WAAAA,GAAcV,KAAAA,CAAMM,KAAK,CAACL,UAAAA,CAAAA;AAChC,IAAA,MAAMU,uBAAuBP,YAAAA,IAAgBM,WAAAA;AAE7C,IAAA,qBACCE,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AACbT,KAAAA,EAAAA,YAAAA,CAAaU,GAAG,CAAC,CAACC,IAAAA,iBAClBJ,cAAA,CAAA,aAAA,CAACK,KAAAA,EAAAA;YAAMC,GAAAA,EAAKF,IAAAA;YAAMd,OAAAA,EAASA,OAAAA;YAASC,MAAAA,EAAQA;WAC1Ca,IAAAA,CAAAA,CAAAA,EAGFP,OAAAA,KACCE,oBAAAA,CAAqBH,MAAM,GAAG,kBAC9BI,cAAA,CAAA,aAAA,CAACO,eAAAA,EAAAA,IAAAA,gBACAP,cAAA,CAAA,aAAA,CAACQ,OAAAA,EAAAA,IAAAA,gBACAR,cAAA,CAAA,aAAA,CAACS,cAAAA,EAAAA;QAAeC,OAAAA,EAAAA;qBACfV,cAAA,CAAA,aAAA,CAACK,KAAAA,EAAAA;QAAMf,OAAAA,EAASA,OAAAA;QAASC,MAAAA,EAAQA;OAAQ,GAAA,EACtCI,cAAAA,CAAAA,CAAAA,gBAGJK,cAAA,CAAA,aAAA,CAACW,cAAAA,EAAAA,IAAAA,gBACAX,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AACbH,KAAAA,EAAAA,oBAAAA,CAAqBI,GAAG,CAAC,CAACS,WAAAA,iBAC1BZ,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIK,GAAAA,EAAKM;AAAcA,SAAAA,EAAAA,WAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,iBAO7BZ,cAAA,CAAA,aAAA,CAACK,KAAAA,EAAAA;QAAMf,OAAAA,EAASA,OAAAA;QAASC,MAAAA,EAAQA;AAAQ,KAAA,EAAA,GAAA,EACtCI,cAAAA,CAEJ,CAAA,CAAA;AAGJ;;ACrDA;;;;;;;;;;;;AAYC,IACM,SAASkB,eAAAA,CAAgB,EAC/BC,QAAQ,EACRC,OAAO,EACPC,KAAAA,GAAQ,OAAO,EACfd,SAAS,EACTe,KAAK,EACiB,EAAA;AACtB,IAAA,MAAM,CAACC,IAAAA,EAAMC,OAAAA,CAAQ,GAAGnB,cAAAA,CAAMoB,QAAQ,CAAC,KAAA,CAAA;AAEvC,IAAA,qBACCpB,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AAAIC,QAAAA,SAAAA,EAAWmB,GAAG,wCAAA,EAA0CnB,SAAAA;AAC3De,KAAAA,EAAAA,KAAAA,kBAASjB,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AAAUe,KAAAA,EAAAA,KAAAA,CAAAA,gBAEnCjB,cAAA,CAAA,aAAA,CAACsB,OAAAA,EAAAA;QAAQJ,IAAAA,EAAMA,IAAAA;QAAMK,YAAAA,EAAcJ;qBAClCnB,cAAA,CAAA,aAAA,CAACwB,cAAAA,EAAAA;QAAed,OAAAA,EAAAA;AAASI,KAAAA,EAAAA,QAAAA,CAAAA,gBACzBd,cAAA,CAAA,aAAA,CAACyB,cAAAA,EAAAA;QACAvB,SAAAA,EAAU,kDAAA;QACVwB,KAAAA,EAAM,KAAA;QACNC,IAAAA,EAAK;qBAEL3B,cAAA,CAAA,aAAA,CAAC4B,KAAAA,EAAAA;QAAM1B,SAAAA,EAAU;qBAChBF,cAAA,CAAA,aAAA,CAAC6B,IAAAA,EAAAA;QAAK3B,SAAAA,EAAU;sBAChBF,cAAA,CAAA,aAAA,CAAC8B,UAAAA,EAAAA;QAAW5B,SAAAA,EAAU;AAA4Bc,KAAAA,EAAAA,KAAAA,CAAAA,gBAClDhB,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;QACAzC,OAAAA,EAAQ,OAAA;QACR0C,IAAAA,EAAK,IAAA;QACLC,IAAAA,EAAK,QAAA;QACL/B,SAAAA,EAAU,gFAAA;AACVgC,QAAAA,OAAAA,EAAS,CAACC,CAAAA,GAAAA;AACTA,YAAAA,CAAAA,CAAEC,eAAe,EAAA;YACjBjB,OAAAA,CAAQ,KAAA,CAAA;AACT,QAAA;qBAEAnB,cAAA,CAAA,aAAA,CAACqC,CAAAA,EAAAA;QAAEnC,SAAAA,EAAU;uBAEdF,cAAA,CAAA,aAAA,CAACsC,gBAAAA,EAAAA;QAAiBpC,SAAAA,EAAU;AAC1Ba,KAAAA,EAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAOR;;ACjCO,SAASwB,YAAY,EAC3BC,MAAM,EACNC,QAAQ,EACRC,WAAAA,GAAc,mCAAmC,EACjDC,iBAAAA,GAAoB,0HAA0H,EAC9IC,WAAAA,GAAc,qBAAqB,EACnC9B,QAAQ,EACR+B,OAAO,EAAE,EACTC,aAAAA,GAAgB,SAAS,EACP,EAAA;AAClB,IAAA,MAAM,CAAC5B,IAAAA,EAAMC,OAAAA,CAAQ,GAAGnB,cAAAA,CAAMoB,QAAQ,CAAC,KAAA,CAAA;AAEvC,IAAA,qBACCpB,cAAA,CAAA,aAAA,CAAC+C,MAAAA,EAAAA;QAAO7B,IAAAA,EAAMA,IAAAA;QAAMK,YAAAA,EAAcJ;qBACjCnB,cAAA,CAAA,aAAA,CAACgD,aAAAA,EAAAA;QAActC,OAAAA,EAAAA;AAASI,KAAAA,EAAAA,QAAAA,CAAAA,gBACxBd,cAAA,CAAA,aAAA,CAACiD,aAAAA,EAAAA;QAAc/C,SAAAA,EAAU;qBACxBF,cAAA,CAAA,aAAA,CAACkD,YAAAA,EAAAA;QAAahD,SAAAA,EAAU;qBACvBF,cAAA,CAAA,aAAA,CAACmD,WAAAA,EAAAA;QAAYjD,SAAAA,EAAU;OAAyBwC,WAAAA,CAAAA,gBAChD1C,cAAA,CAAA,aAAA,CAACoD,iBAAAA,EAAAA,IAAAA,EAAmBT,iBAAAA,CAAAA,CAAAA,gBAErB3C,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QACAoD,8BAAAA,EAAAA,IAAAA;QACAnD,SAAAA,EAAU;OAET2C,IAAAA,CAAK1C,GAAG,CAAC,CAACmD,GAAAA,EAAKC,KAAAA,GAAAA;AACf,QAAA,IAAI,CAACD,GAAAA,CAAIE,KAAK,IAAKC,KAAAA,CAAMC,OAAO,CAACJ,GAAAA,CAAIE,KAAK,CAAA,IAAKF,IAAIE,KAAK,CAAC5D,MAAM,KAAK,GAAI;QAGxE,IAAImB,OAAAA;QAEJ,IAAIuC,GAAAA,CAAIrB,IAAI,KAAK,eAAA,EAAiB;YACjC,MAAM7C,KAAAA,GAAQqE,KAAAA,CAAMC,OAAO,CAACJ,GAAAA,CAAIE,KAAK,CAAA,GAAIF,GAAAA,CAAIE,KAAK,GAAG,EAAE;AACvDzC,YAAAA,OAAAA,iBACCf,cAAA,CAAA,aAAA,CAACb,gBAAAA,EAAAA;gBACAC,KAAAA,EAAOA,KAAAA;gBACPE,OAAAA,EAASgE,GAAAA,CAAIK,KAAK,EAAErE,OAAAA,IAAW,SAAA;gBAC/BC,MAAAA,EAAQ+D,GAAAA,CAAIK,KAAK,EAAEpE,MAAAA,IAAU,IAAA;gBAC7BF,UAAAA,EAAYiE,GAAAA,CAAIK,KAAK,EAAEtE;;AAG1B,QAAA,CAAA,MAAO,IAAIiE,GAAAA,CAAIrB,IAAI,KAAK,QAAA,EAAU;AACjClB,YAAAA,OAAAA,GAAUuC,IAAIE,KAAK;QACpB,CAAA,MAAO;YACNzC,OAAAA,GAAUuC,GAAAA,CAAIE,KAAK,IAAI,GAAA;AACxB,QAAA;AAEA,QAAA,qBACCxD,cAAA,CAAA,aAAA,CAAC4D,QAAAA,EAAAA;AACAtD,YAAAA,GAAAA,EAAK,GAAGgD,GAAAA,CAAItC,KAAK,CAAC,CAAC,EAAEuC,KAAAA,CAAAA,CAAO;AAC5BvC,YAAAA,KAAAA,EAAOsC,IAAItC,KAAK;YAChBwC,KAAAA,EAAOzC,OAAAA;YACPb,SAAAA,EAAU;;IAGb,CAAA,CAAA,CAAA,gBAEDF,cAAA,CAAA,aAAA,CAAC6D,kCACA7D,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;QACAU,QAAAA,EAAUA,QAAAA;QACVP,OAAAA,EAAS,IAAA;AACRM,YAAAA,MAAAA,EAAAA;YACArB,OAAAA,CAAQ,KAAA,CAAA;AACT,QAAA,CAAA;QACA7B,OAAAA,EAASwD,aAAAA;QACTgB,QAAAA,EAAAA;AAEClB,KAAAA,EAAAA,WAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAMP;;ACxEA;;;;;;;;;;;;;;;;AAgBC,IACM,MAAMmB,qBAAAA,GAA8D,CAAC,EAC3EC,SAAS,EACT9D,SAAS,EACTY,QAAQ,EACR2B,QAAQ,EACRwB,eAAe,EACfC,cAAc,EAAE,EAChBC,UAAU,EACV,GAAA;AACA;;KAGA,MAAMC,mBAAmB,CAACC,IAAAA,GAAAA;;QAEzB,IAAIA,IAAAA,CAAKC,QAAQ,EAAE;YAClB,OAAOD,IAAAA,CAAKC,QAAQ,CAACJ,WAAAA,CAAAA;AACtB,QAAA;;AAGA,QAAA,IAAID,eAAAA,EAAiB;YACpB,OAAOA,eAAAA,CAAgBI,IAAAA,CAAKb,KAAK,EAAEU,WAAAA,CAAAA;AACpC,QAAA;;QAGA,OAAOA,WAAAA,KAAgBG,KAAKE,IAAI;AACjC,IAAA,CAAA;AAEA;;KAGA,MAAMC,kBAAkB,CAACH,IAAAA,GAAAA;QACxB,IAAIA,IAAAA,CAAKnC,OAAO,EAAE;AACjBmC,YAAAA,IAAAA,CAAKnC,OAAO,EAAA;AACb,QAAA,CAAA,MAAO,IAAIiC,UAAAA,EAAY;AACtBA,YAAAA,UAAAA,CAAWE,KAAKE,IAAI,CAAA;AACrB,QAAA;AACD,IAAA,CAAA;AAEA,IAAA,qBACCvE,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AAAIC,QAAAA,SAAAA,EAAWmB,GAAG,6CAAA,EAA+CnB,SAAAA;AACjE,KAAA,gBAAAF,cAAA,CAAA,aAAA,CAACyE,eACCT,SAAAA,CAAU7D,GAAG,CAAC,CAACkE,qBACfrE,cAAA,CAAA,aAAA,CAAC0E,WAAAA,EAAAA;AAAYpE,YAAAA,GAAAA,EAAK+D,KAAKb;yBACtBxD,cAAA,CAAA,aAAA,CAAC2E,cAAAA,EAAAA;AACAzC,YAAAA,OAAAA,EAAS,IAAMsC,eAAAA,CAAgBH,IAAAA,CAAAA;YAC/BnE,SAAAA,EAAWmB,EAAAA,CACV,sEAAA,EACA+C,gBAAAA,CAAiBC,IAAAA,CAAAA,IAAS,kCAAA,CAAA;YAE3B5B,QAAAA,EAAUA,QAAAA;YACVmC,eAAAA,EAAenC;AAEd4B,SAAAA,EAAAA,IAAAA,CAAKpD,KAAK,CAAA,EAGXoD,IAAAA,CAAKQ,QAAQ,kBACb7E,cAAA,CAAA,aAAA,CAAC8E,cAAAA,EAAAA,IAAAA,EACCT,IAAAA,CAAKQ,QAAQ,CAAC1E,GAAG,CAAC,CAACC,qBACnBJ,cAAA,CAAA,aAAA,CAAC+E,WAAAA,EAAAA;AAAYzE,gBAAAA,GAAAA,EAAKF,KAAKa,KAAK;AAAEiB,gBAAAA,OAAAA,EAAS9B,KAAK8B;AAC1C9B,aAAAA,EAAAA,IAAAA,CAAKa,KAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAQjBH,QAAAA,CAAAA;AAGJ;;ACpGO,SAASkE,YAAAA,CAAgB,EAC/BC,IAAI,EACJC,OAAO,EACPC,eAAe,EACfC,eAAe,yBAAyB,EACxClF,SAAS,EACTmF,YAAY,EACU,EAAA;AACtB,IAAA,IAAI,CAACJ,IAAAA,IAAQA,IAAAA,CAAKrF,MAAM,KAAK,CAAA,EAAG;AAC/B,QAAA,qBAAOI,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;AAAyBkF,SAAAA,EAAAA,YAAAA,CAAAA;AAChD,IAAA;AAEA,IAAA,qBACCpF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AAAIC,QAAAA,SAAAA,EAAW,CAAC,kBAAkB,EAAEA,SAAAA,IAAa,EAAA,CAAA;qBACjDF,cAAA,CAAA,aAAA,CAACsF,KAAAA,EAAAA,IAAAA,gBACAtF,cAAA,CAAA,aAAA,CAACuF,WAAAA,EAAAA,IAAAA,gBACAvF,cAAA,CAAA,aAAA,CAACwF,QAAAA,EAAAA,IAAAA,EACCN,OAAAA,CAAQ/E,GAAG,CAAC,CAACsF,GAAAA,EAAKlC,KAAAA,iBAClBvD,cAAA,CAAA,aAAA,CAAC0F,SAAAA,EAAAA;AAAUpF,YAAAA,GAAAA,EAAKiD,MAAMoC,QAAQ;WAAKF,GAAAA,CAAIG,MAAM,oBAIhD5F,cAAA,CAAA,aAAA,CAAC6F,SAAAA,EAAAA,IAAAA,EACCZ,KAAK9E,GAAG,CAAC,CAACC,IAAAA,EAAMmD,KAAAA,GAAAA;AAChB,QAAA,MAAMuC,MAAAA,GAAST,YAAAA,GAAeA,YAAAA,CAAajF,IAAAA,EAAMmD,KAAAA,CAAAA,GAASA,KAAAA;QAC1D,qBACCvD,cAAA,CAAA,aAAA,CAACA,eAAM+F,QAAQ,EAAA;YAACzF,GAAAA,EAAKwF;AACpB,SAAA,gBAAA9F,cAAA,CAAA,aAAA,CAACwF,gBACCN,OAAAA,CAAQ/E,GAAG,CAAC,CAACsF,GAAAA,EAAKO,yBAClBhG,cAAA,CAAA,aAAA,CAACiG,SAAAA,EAAAA;AAAU3F,gBAAAA,GAAAA,EAAK0F,SAASL,QAAQ,EAAA;AAAIzF,gBAAAA,SAAAA,EAAWuF,IAAIvF;eAClDuF,GAAAA,CAAIS,IAAI,CAAC9F,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAIZ+E,eAAAA,GAAkB5B,KAAAA,CAAAA,CAAAA;AAGtB,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAKL;;AC/CO,MAAM4C,SAAgC,CAAC,EAC7CnF,KAAK,EACLoF,WAAW,EACXlG,SAAS,EACTmG,oBAAoB,EACpBvF,QAAQ,EACRwF,YAAAA,GAAe,QAAQ,EACvBC,WAAAA,GAAc,KAAK,EACnBlC,IAAI,EACJ,GAAA;IACA,MAAM,CAACb,OAAOgD,QAAAA,CAAS,GAAGxG,eAAMoB,QAAQ,CAASmF,cAAcD,YAAAA,GAAe,EAAA,CAAA;AAE9E,IAAA,MAAMG,SAASjD,KAAAA,KAAU8C,YAAAA;AAEzB,IAAA,qBACCtG,cAAA,CAAA,aAAA,CAAC4F,QAAAA,EAAAA;AAAO1F,QAAAA,SAAAA,EAAWmB,GAAG,+CAAA,EAAiDnB,SAAAA;qBACtEF,cAAA,CAAA,aAAA,CAAC0G,SAAAA,EAAAA;QACAzE,IAAAA,EAAK,QAAA;QACL0E,WAAAA,EAAAA,IAAAA;QACAzG,SAAAA,EAAU,QAAA;QACVsD,KAAAA,EAAOA,KAAAA;QACPoD,aAAAA,EAAeJ;qBAEfxG,cAAA,CAAA,aAAA,CAAC6G,aAAAA,EAAAA;QAAc3G,SAAAA,EAAU,YAAA;QAAasD,KAAAA,EAAO8C;qBAC5CtG,cAAA,CAAA,aAAA,CAAC8G,gBAAAA,EAAAA;QACAC,YAAAA,EAAa,MAAA;QACb7G,SAAAA,EAAU;AAETc,KAAAA,EAAAA,KAAAA,CAAAA,gBAEFhB,cAAA,CAAA,aAAA,CAACgH,gBAAAA,EAAAA;QAAiB9G,SAAAA,EAAU;qBAC3BF,cAAA,CAAA,aAAA,CAACiH,GAAAA,EAAAA;AAAE/G,QAAAA,SAAAA,EAAWmB,GAAG,+BAAA,EAAiCgF,oBAAAA;OAChDD,WAAAA,CAAAA,EAEDK,MAAAA,IAAUpC,sBAAQrE,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AAAwBmE,KAAAA,EAAAA,IAAAA,CAAAA,EACzDvD,QAAAA,CAAAA,CAAAA,CAAAA,EAIH,CAAC2F,MAAAA,IAAUpC,IAAAA,kBAAQrE,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AAAQmE,KAAAA,EAAAA,IAAAA,CAAAA,CAAAA;AAG9C;;MChDa6C,UAAAA,GAAwC,CAAC,EACrDlG,KAAK,EACLoF,WAAW,EACX9G,OAAO,EACPY,SAAS,EACTiH,sBAAAA,GAAyB,IAAI,EAC7B5H,MAAAA,GAAS,KAAK,EACd,GAAA;AACA,IAAA,qBACCS,cAAA,CAAA,aAAA,CAACoH,SAAAA,EAAAA,IAAAA,gBACApH,cAAA,CAAA,aAAA,CAACqH,gBAAAA,EAAAA,IAAAA,gBACArH,cAAA,CAAA,aAAA,CAACK,KAAAA,EAAAA;QAAMf,OAAAA,EAASA,OAAAA;QAASC,MAAAA,EAAQA;AAC/ByB,KAAAA,EAAAA,KAAAA,CAAAA,CAAAA,EAGFoF,6BACApG,cAAA,CAAA,aAAA,CAACsH,gBAAAA,EAAAA;QAAiBpH,SAAAA,EAAW,CAAA,EAAGqH,OAAAA,CAAQ,gBAAA,EAAkBrH,SAAAA,CAAAA,CAAAA;AACxDiH,KAAAA,EAAAA,sBAAAA,kBAA0BnH,cAAA,CAAA,aAAA,CAACwH,MAAAA,EAAAA;QAAKtH,SAAAA,EAAU;AAAyBc,KAAAA,EAAAA,KAAAA,CAAAA,gBACpEhB,cAAA,CAAA,aAAA,CAACiH,GAAAA,EAAAA;QAAE/G,SAAAA,EAAU;AAA4DkG,KAAAA,EAAAA,WAAAA,CAAAA,CAAAA,CAAAA;AAK9E;;ACrBO,SAASqB,kBAAkB,EACjCC,MAAM,EACNC,QAAQ,EACRC,KAAK,EACLC,SAAAA,GAAY,CAAC,EACbC,SAAAA,GAAY,KAAK,EACjBC,kBAAkB,EAClBC,eAAe,EACfC,UAAU,EACc,EAAA;;AAExBjI,IAAAA,cAAAA,CAAMkI,SAAS,CAAC,IAAA;QACf,IAAIR,MAAAA,CAAO9H,MAAM,KAAK,CAAA,EAAG;AACxBgI,YAAAA,KAAAA,EAAAA;AACD,QAAA;IACD,CAAA,EAAG;AAACF,QAAAA,MAAAA,CAAO9H,MAAM;AAAEgI,QAAAA;AAAM,KAAA,CAAA;AAEzB,IAAA,qBACC5H,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AACb6H,KAAAA,EAAAA,kBAAAA,kBACA/H,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;AACb6H,KAAAA,EAAAA,kBAAAA,CAAAA,EAIFL,OAAOvH,GAAG,CAAC,CAACgI,SAAAA,EAAW5E,sBACvBvD,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AAAIK,YAAAA,GAAAA,EAAK6H,UAAUC,EAAE;YAAElI,SAAAA,EAAU;AAEhCqD,SAAAA,EAAAA,KAAAA,GAAQ,mBACRvD,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;yBACdF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;yBACdF,cAAA,CAAA,aAAA,CAACwH,MAAAA,EAAAA;YAAKtH,SAAAA,EAAU;2BAEjBF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;WACb8H,eAAAA,GAAkBA,eAAAA,CAAgBzE,KAAAA,CAAAA,GAAS,IAAA,CAAA,CAAA,gBAM/CvD,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;yBACdF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;yBACdF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;yBACdF,cAAA,CAAA,aAAA,CAACwH,MAAAA,EAAAA;YAAKtH,SAAAA,EAAU;AACdqD,SAAAA,EAAAA,KAAAA,GAAQ,IACH,mBAAA,EACWA,KAAAA,GAAQ,CAAA,CAAA,EAE1BA,KAAAA,GAAQ,mBACRvD,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;YACAE,IAAAA,EAAK,QAAA;YACL3C,OAAAA,EAAQ,OAAA;YACR0C,IAAAA,EAAK,IAAA;AACLE,YAAAA,OAAAA,EAAS,IAAMyF,QAAAA,CAASpE,KAAAA,CAAAA;YACxBrD,SAAAA,EAAU,oEAAA;YACVuC,QAAAA,EAAUqF;yBAEV9H,cAAA,CAAA,aAAA,CAACqC,CAAAA,EAAAA;YAAEnC,SAAAA,EAAU;4BAKhBF,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU;AAA6C+H,SAAAA,EAAAA,UAAAA,CAAW1E,KAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAKzEmE,MAAAA,CAAO9H,MAAM,GAAGiI,2BAChB7H,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;QACAE,IAAAA,EAAK,QAAA;QACL3C,OAAAA,EAAQ,SAAA;QACRY,SAAAA,EAAU,sBAAA;QACVgC,OAAAA,EAAS0F,KAAAA;QACTnF,QAAAA,EAAUqF;qBAEV9H,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU;qBACdF,cAAA,CAAA,aAAA,CAACwH,MAAAA,EAAAA;QAAKtH,SAAAA,EAAU;AAAwB,KAAA,EAAA,GAAA,CAAA,EAAQ,qCAAA,EACZ2H,SAAAA,GAAYH,MAAAA,CAAO9H,MAAM,EAAC,GAAA,CAAA,CAAA,CAAA;AAMpE;;AC3EO,MAAMyI,aAAAA,GAA8C,CAAC,EAC3DC,YAAY,EACZC,UAAU,EACVC,MAAM,EACNC,MAAM,EACNhG,WAAW,KAAK,EAChBiG,SAAAA,GAAY,UAAU,EACtBC,SAAAA,GAAY,SAAS,EACrBC,eAAAA,GAAkB,IAAI,EACtB1I,SAAS,EACT,GAAA;AACA,IAAA,MAAM2I,UAAUP,YAAAA,KAAiB,CAAA;IACjC,MAAMQ,MAAAA,GAASR,iBAAiBC,UAAAA,GAAa,CAAA;AAE7C,IAAA,qBACCvI,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AAAIC,QAAAA,SAAAA,EAAWmB,GAAG,yBAAA,EAA2BnB,SAAAA;AAC5C,KAAA,EAAC,CAAA,CAAC0I,eAAAA,IAAmB,CAACC,OAAM,mBAC5B7I,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;QAAOE,IAAAA,EAAK,QAAA;QAAS3C,OAAAA,EAAQ,WAAA;QAAY4C,OAAAA,EAASsG,MAAAA;AAAQ/F,QAAAA,QAAAA,EAAUA,QAAAA,IAAYoG;qBAChF7I,cAAA,CAAA,aAAA,CAAC+I,WAAAA,EAAAA;QAAgB7I,SAAAA,EAAU;AAC1BwI,KAAAA,CAAAA,EAAAA,SAAAA,CAAAA,EAIF,CAAC,CAACE,mBAAmB,CAACE,MAAK,mBAC3B9I,cAAA,CAAA,aAAA,CAAC+B,MAAAA,EAAAA;QAAOE,IAAAA,EAAK,QAAA;QAAS3C,OAAAA,EAAQ,WAAA;QAAY4C,OAAAA,EAASuG,MAAAA;AAAQhG,QAAAA,QAAAA,EAAUA,QAAAA,IAAYqG;AAC/EH,KAAAA,EAAAA,SAAAA,gBACD3I,cAAA,CAAA,aAAA,CAACgJ,YAAAA,EAAAA;QAAiB9I,SAAAA,EAAU;;AAKjC;;AClDO,MAAM+I,WAAoC,CAAC,EAAEnI,QAAQ,EAAEZ,SAAS,EAAE,GAAGgJ,KAAAA,EAAO,GAAA;AAClF,IAAA,qBACClJ,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;AACAC,QAAAA,SAAAA,EAAWmB,GACV,6EAAA,EACAnB,SAAAA,CAAAA;AAEA,QAAA,GAAGgJ;AAEHpI,KAAAA,EAAAA,QAAAA,CAAAA;AAGJ;;;;"}
@@ -1,10 +1,10 @@
1
1
  import { Slot } from '@radix-ui/react-slot';
2
2
  import * as React from 'react';
3
- import { c as cn } from '../chunks/utils-DnO0vXjp.mjs';
4
- import { C as ChevronRight } from '../chunks/chevron-right-CS62g5Sl.mjs';
5
- import { E as Ellipsis } from '../chunks/ellipsis--m7d4rNF.mjs';
6
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
7
- import '../chunks/createLucideIcon-D8CrPx3l.mjs';
3
+ import { c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
4
+ import { C as ChevronRight } from '../chunks/chevron-right-Bb52eown.mjs';
5
+ import { E as Ellipsis } from '../chunks/ellipsis-C6LF5HVj.mjs';
6
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
7
+ import '../chunks/createLucideIcon-D3jW_oal.mjs';
8
8
 
9
9
  function Breadcrumb({ ...props }) {
10
10
  return /*#__PURE__*/ React.createElement("nav", {
@@ -1,7 +1,7 @@
1
- export { B as Button, b as buttonVariants } from '../chunks/button-DVC65cB7.mjs';
1
+ export { B as Button, b as buttonVariants } from '../chunks/button-BvsCd2vf.mjs';
2
2
  import '@radix-ui/react-slot';
3
3
  import 'class-variance-authority';
4
4
  import 'react';
5
- import '../chunks/utils-DnO0vXjp.mjs';
6
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
5
+ import '../chunks/utils-Dws4Ft8U.mjs';
6
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
7
7
  //# sourceMappingURL=index.mjs.map
@@ -1,50 +1,10 @@
1
- import { Slot } from '@radix-ui/react-slot';
2
- import { cva } from 'class-variance-authority';
3
- import React__default from 'react';
4
- import { c as cn } from '../chunks/utils-DnO0vXjp.mjs';
5
- import { S as Separator } from '../chunks/separator-CtRAcZlu.mjs';
6
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
1
+ export { B as ButtonGroup, a as ButtonGroupSeparator, b as ButtonGroupText, c as buttonGroupVariants } from '../chunks/button-group-PrAqXtXn.mjs';
2
+ import '@radix-ui/react-slot';
3
+ import 'class-variance-authority';
4
+ import 'react';
5
+ import '../chunks/utils-Dws4Ft8U.mjs';
6
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
7
+ import '../chunks/separator-DohkJ_xb.mjs';
7
8
  import 'react-dom';
8
9
  import 'react/jsx-runtime';
9
-
10
- const buttonGroupVariants = cva("flex w-fit items-stretch [&>*]:focus-visible:z-10 [&>*]:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md has-[>[data-slot=button-group]]:gap-2", {
11
- variants: {
12
- orientation: {
13
- horizontal: "[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",
14
- vertical: "flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none"
15
- }
16
- },
17
- defaultVariants: {
18
- orientation: "horizontal"
19
- }
20
- });
21
- function ButtonGroup({ className, orientation, ...props }) {
22
- return(// biome-ignore lint/a11y/useSemanticElements: <group>
23
- /*#__PURE__*/ React__default.createElement("div", {
24
- role: "group",
25
- "data-slot": "button-group",
26
- "data-orientation": orientation,
27
- className: cn(buttonGroupVariants({
28
- orientation
29
- }), className),
30
- ...props
31
- }));
32
- }
33
- function ButtonGroupText({ className, asChild = false, ...props }) {
34
- const Comp = asChild ? Slot : "div";
35
- return /*#__PURE__*/ React__default.createElement(Comp, {
36
- className: cn("bg-muted flex items-center gap-2 rounded-md border px-4 text-sm font-medium shadow-xs [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4", className),
37
- ...props
38
- });
39
- }
40
- function ButtonGroupSeparator({ className, orientation = "vertical", ...props }) {
41
- return /*#__PURE__*/ React__default.createElement(Separator, {
42
- "data-slot": "button-group-separator",
43
- orientation: orientation,
44
- className: cn("bg-input relative m-0! self-stretch data-[orientation=vertical]:h-auto", className),
45
- ...props
46
- });
47
- }
48
-
49
- export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
50
10
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/components/ui/button-group/button-group.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport React from \"react\";\n\nimport { Separator } from \"@/components/ui/separator\";\nimport { cn } from \"@/lib/utils\";\n\nconst buttonGroupVariants = cva(\n\t\"flex w-fit items-stretch [&>*]:focus-visible:z-10 [&>*]:focus-visible:relative [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md has-[>[data-slot=button-group]]:gap-2\",\n\t{\n\t\tvariants: {\n\t\t\torientation: {\n\t\t\t\thorizontal:\n\t\t\t\t\t\"[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none\",\n\t\t\t\tvertical:\n\t\t\t\t\t\"flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\torientation: \"horizontal\",\n\t\t},\n\t},\n);\n\nfunction ButtonGroup({\n\tclassName,\n\torientation,\n\t...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof buttonGroupVariants>) {\n\treturn (\n\t\t// biome-ignore lint/a11y/useSemanticElements: <group>\n\t\t<div\n\t\t\trole=\"group\"\n\t\t\tdata-slot=\"button-group\"\n\t\t\tdata-orientation={orientation}\n\t\t\tclassName={cn(buttonGroupVariants({ orientation }), className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ButtonGroupText({\n\tclassName,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tasChild?: boolean;\n}) {\n\tconst Comp = asChild ? Slot : \"div\";\n\n\treturn (\n\t\t<Comp\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-muted flex items-center gap-2 rounded-md border px-4 text-sm font-medium shadow-xs [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ButtonGroupSeparator({\n\tclassName,\n\torientation = \"vertical\",\n\t...props\n}: React.ComponentProps<typeof Separator>) {\n\treturn (\n\t\t<Separator\n\t\t\tdata-slot=\"button-group-separator\"\n\t\t\torientation={orientation}\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-input relative m-0! self-stretch data-[orientation=vertical]:h-auto\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };\n"],"names":["buttonGroupVariants","cva","variants","orientation","horizontal","vertical","defaultVariants","ButtonGroup","className","props","React","div","role","data-slot","data-orientation","cn","ButtonGroupText","asChild","Comp","Slot","ButtonGroupSeparator","Separator"],"mappings":";;;;;;;;;AAOA,MAAMA,mBAAAA,GAAsBC,IAC3B,kSAAA,EACA;IACCC,QAAAA,EAAU;QACTC,WAAAA,EAAa;YACZC,UAAAA,EACC,iHAAA;YACDC,QAAAA,EACC;AACF;AACD,KAAA;IACAC,eAAAA,EAAiB;QAChBH,WAAAA,EAAa;AACd;AACD,CAAA;AAGD,SAASI,YAAY,EACpBC,SAAS,EACTL,WAAW,EACX,GAAGM,KAAAA,EACqE,EAAA;AACxE,IAAA;kBAECC,cAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QACAC,IAAAA,EAAK,OAAA;QACLC,WAAAA,EAAU,cAAA;QACVC,kBAAAA,EAAkBX,WAAAA;AAClBK,QAAAA,SAAAA,EAAWO,GAAGf,mBAAAA,CAAoB;AAAEG,YAAAA;SAAY,CAAA,EAAIK,SAAAA,CAAAA;AACnD,QAAA,GAAGC;;AAGP;AAEA,SAASO,eAAAA,CAAgB,EACxBR,SAAS,EACTS,UAAU,KAAK,EACf,GAAGR,KAAAA,EAGH,EAAA;IACA,MAAMS,IAAAA,GAAOD,UAAUE,IAAAA,GAAO,KAAA;AAE9B,IAAA,qBACCT,cAAA,CAAA,aAAA,CAACQ,IAAAA,EAAAA;AACAV,QAAAA,SAAAA,EAAWO,GACV,wJAAA,EACAP,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;AAEA,SAASW,oBAAAA,CAAqB,EAC7BZ,SAAS,EACTL,cAAc,UAAU,EACxB,GAAGM,KAAAA,EACqC,EAAA;AACxC,IAAA,qBACCC,cAAA,CAAA,aAAA,CAACW,SAAAA,EAAAA;QACAR,WAAAA,EAAU,wBAAA;QACVV,WAAAA,EAAaA,WAAAA;AACbK,QAAAA,SAAAA,EAAWO,GACV,wEAAA,EACAP,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1,13 +1,13 @@
1
- export { C as Calendar, a as CalendarDayButton } from '../chunks/calendar-CsV2gm7-.mjs';
1
+ export { C as Calendar, a as CalendarDayButton } from '../chunks/calendar-LFBK0slp.mjs';
2
2
  import 'react';
3
- import '../chunks/utils-DnO0vXjp.mjs';
4
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
5
- import '../chunks/format-B3szZANA.mjs';
6
- import '../chunks/chevron-left-6HkYwJhz.mjs';
7
- import '../chunks/createLucideIcon-D8CrPx3l.mjs';
8
- import '../chunks/chevron-right-CS62g5Sl.mjs';
9
- import '../chunks/chevron-down-BoCGZarH.mjs';
10
- import '../chunks/button-DVC65cB7.mjs';
3
+ import '../chunks/utils-Dws4Ft8U.mjs';
4
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
5
+ import '../chunks/format-CxsCX_YZ.mjs';
6
+ import '../chunks/chevron-left-B7ClEtyW.mjs';
7
+ import '../chunks/createLucideIcon-D3jW_oal.mjs';
8
+ import '../chunks/chevron-right-Bb52eown.mjs';
9
+ import '../chunks/chevron-down-CD1QpvBA.mjs';
10
+ import '../chunks/button-BvsCd2vf.mjs';
11
11
  import '@radix-ui/react-slot';
12
12
  import 'class-variance-authority';
13
13
  //# sourceMappingURL=index.mjs.map
@@ -1,5 +1,5 @@
1
- export { C as Card, d as CardAction, f as CardContent, e as CardDescription, b as CardFooter, a as CardHeader, c as CardTitle } from '../chunks/card-cSIzKMIR.mjs';
1
+ export { C as Card, d as CardAction, f as CardContent, e as CardDescription, b as CardFooter, a as CardHeader, c as CardTitle } from '../chunks/card-BoHc9gge.mjs';
2
2
  import 'react';
3
- import '../chunks/utils-DnO0vXjp.mjs';
4
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
3
+ import '../chunks/utils-Dws4Ft8U.mjs';
4
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
5
5
  //# sourceMappingURL=index.mjs.map
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { useRef, useState, useCallback, useEffect } from 'react';
3
- import { c as cn } from '../chunks/utils-DnO0vXjp.mjs';
4
- import { c as createLucideIcon } from '../chunks/createLucideIcon-D8CrPx3l.mjs';
5
- import { B as Button } from '../chunks/button-DVC65cB7.mjs';
6
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
3
+ import { c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
4
+ import { c as createLucideIcon } from '../chunks/createLucideIcon-D3jW_oal.mjs';
5
+ import { B as Button } from '../chunks/button-BvsCd2vf.mjs';
6
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
7
7
  import '@radix-ui/react-slot';
8
8
  import 'class-variance-authority';
9
9
 
@@ -1,10 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { isValidElement, forwardRef, useContext, createContext, useState, useCallback, useMemo, useRef, useImperativeHandle, useEffect, PureComponent, useLayoutEffect, cloneElement, createElement } from 'react';
3
- import { a as clsx, c as cn } from '../chunks/utils-DnO0vXjp.mjs';
3
+ import { a as clsx, c as cn } from '../chunks/utils-Dws4Ft8U.mjs';
4
4
  import { createPortal } from 'react-dom';
5
- import { g as getDefaultExportFromCjs } from '../chunks/_commonjsHelpers-DeLy3UO0.mjs';
6
- import { r as requireShim } from '../chunks/index-DmuOZtkO.mjs';
7
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
5
+ import { g as getDefaultExportFromCjs } from '../chunks/_commonjsHelpers-CrMz3UM5.mjs';
6
+ import { r as requireShim } from '../chunks/index-DIaetExD.mjs';
7
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
8
8
 
9
9
  var EventKeys = [
10
10
  'dangerouslySetInnerHTML',
@@ -1,17 +1,17 @@
1
- export { C as Checkbox } from '../chunks/checkbox-CrjmkAKW.mjs';
1
+ export { C as Checkbox } from '../chunks/checkbox-CgrFFc0p.mjs';
2
2
  import 'react';
3
- import '../chunks/index-Cudt6Zq6.mjs';
3
+ import '../chunks/index-RaUpQCps.mjs';
4
4
  import 'react/jsx-runtime';
5
- import '../chunks/index-F25i7Anb.mjs';
5
+ import '../chunks/index-B-46hbYc.mjs';
6
6
  import 'react-dom';
7
7
  import '@radix-ui/react-slot';
8
- import '../chunks/index-BMgJpAGa.mjs';
9
- import '../chunks/index-C21v2ZEV.mjs';
10
- import '../chunks/index-CucrelNM.mjs';
11
- import '../chunks/index-A8KrKa_3.mjs';
12
- import '../chunks/index-CluWUNz-.mjs';
13
- import '../chunks/utils-DnO0vXjp.mjs';
14
- import '../chunks/bundle-mjs-CU6q3BA5.mjs';
15
- import '../chunks/check-DSiHPkp7.mjs';
16
- import '../chunks/createLucideIcon-D8CrPx3l.mjs';
8
+ import '../chunks/index-SLs8oClH.mjs';
9
+ import '../chunks/index-C__GtYCW.mjs';
10
+ import '../chunks/index-3TdUvynV.mjs';
11
+ import '../chunks/index-DDM8Lpbb.mjs';
12
+ import '../chunks/index-DGUU265f.mjs';
13
+ import '../chunks/utils-Dws4Ft8U.mjs';
14
+ import '../chunks/bundle-mjs-CjTndHqR.mjs';
15
+ import '../chunks/check-VfNn6myv.mjs';
16
+ import '../chunks/createLucideIcon-D3jW_oal.mjs';
17
17
  //# sourceMappingURL=index.mjs.map
@@ -1,17 +1,17 @@
1
1
  import React__default from 'react';
2
- import { c } from './index.module-CtoGlOtg.mjs';
3
- import { c as cn } from './utils-DnO0vXjp.mjs';
4
- import { X } from './x-BdsvQvnu.mjs';
5
- import { C as ChevronsUpDown } from './chevrons-up-down-_JuRHx41.mjs';
6
- import { C as Check } from './check-DSiHPkp7.mjs';
7
- import { P as Popover, a as PopoverTrigger, b as PopoverContent } from './popover-4BgsZTpk.mjs';
8
- import { B as Button } from './button-DVC65cB7.mjs';
9
- import { C as Command, b as CommandInput, d as CommandEmpty, c as CommandList, e as CommandGroup, f as CommandItem } from './command-CZh5UHdo.mjs';
10
- import { t as tryParseDate, p as ptBR } from './date-ZOdK1brW.mjs';
11
- import { L as LoaderCircle } from './loader-circle-BII92tSL.mjs';
12
- import { C as CalendarDays } from './calendar-days-Cd2WVgBN.mjs';
13
- import { t as toDate, f as format } from './format-B3szZANA.mjs';
14
- import { C as Calendar } from './calendar-CsV2gm7-.mjs';
2
+ import { c } from './index.module-B4lVPYXp.mjs';
3
+ import { c as cn } from './utils-Dws4Ft8U.mjs';
4
+ import { X } from './x-CQ0W-nWi.mjs';
5
+ import { C as ChevronsUpDown } from './chevrons-up-down-C5lu4ULp.mjs';
6
+ import { C as Check } from './check-VfNn6myv.mjs';
7
+ import { P as Popover, a as PopoverTrigger, b as PopoverContent } from './popover--9SMD-cC.mjs';
8
+ import { B as Button } from './button-BvsCd2vf.mjs';
9
+ import { C as Command, b as CommandInput, d as CommandEmpty, c as CommandList, e as CommandGroup, f as CommandItem } from './command-e20cpPEv.mjs';
10
+ import { t as tryParseDate, p as ptBR } from './date-Dy-Pzcmp.mjs';
11
+ import { L as LoaderCircle } from './loader-circle-hYdtBTNb.mjs';
12
+ import { C as CalendarDays } from './calendar-days-C3N6HIT-.mjs';
13
+ import { t as toDate, f as format } from './format-CxsCX_YZ.mjs';
14
+ import { C as Calendar } from './calendar-LFBK0slp.mjs';
15
15
 
16
16
  /**
17
17
  * The {@link isWeekend} function options.
@@ -212,4 +212,4 @@ const CalendarPopover = ({ date, setDate, placeholder = "Selecione uma data", id
212
212
  };
213
213
 
214
214
  export { AutoComplete as A, CalendarPopover as C, normalizeDate as n };
215
- //# sourceMappingURL=CalendarPopover-mDZpeHvR.mjs.map
215
+ //# sourceMappingURL=CalendarPopover-CRB6GXIt.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarPopover-mDZpeHvR.mjs","sources":["../../node_modules/date-fns/isWeekend.js","../../src/components/default/base/AutoComplete.tsx","../../src/components/default/base/CalendarPopover.tsx"],"sourcesContent":["import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link isWeekend} function options.\n */\n\n/**\n * @name isWeekend\n * @category Weekday Helpers\n * @summary Does the given date fall on a weekend?\n *\n * @description\n * Does the given date fall on a weekend? A weekend is either Saturday (`6`) or Sunday (`0`).\n *\n * @param date - The date to check\n * @param options - An object with options\n *\n * @returns The date falls on a weekend\n *\n * @example\n * // Does 5 October 2014 fall on a weekend?\n * const result = isWeekend(new Date(2014, 9, 5))\n * //=> true\n */\nexport function isWeekend(date, options) {\n const day = toDate(date, options?.in).getDay();\n return day === 0 || day === 6;\n}\n\n// Fallback for modularized imports:\nexport default isWeekend;\n","\"use client\";\n\nimport { CheckIcon, ChevronsUpDown, X } from \"lucide-react\";\nimport React from \"react\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface AutoCompleteProps<T> {\n\tvalue: T | null;\n\tonChange: (value: T | null) => void;\n\tplaceholder?: string;\n\tsearchPlaceholder?: string;\n\topen: boolean;\n\tonOpenChange: (open: boolean) => void;\n\tdisabled?: boolean;\n\tmessageEmpty?: string;\n\tfetchOptions: (term: string) => Promise<T[]>;\n\tgetOptionLabel: (option: T) => string;\n\tgetOptionKey: (option: T) => string | number;\n\tonSelect?: (option: T) => void;\n\tclassName?: string;\n\tclearable?: boolean;\n}\n\nexport function AutoComplete<T>({\n\tvalue,\n\tonChange,\n\tplaceholder,\n\tsearchPlaceholder,\n\topen,\n\tonOpenChange,\n\tdisabled,\n\tmessageEmpty = \"Nenhum item encontrado.\",\n\tfetchOptions,\n\tgetOptionLabel,\n\tgetOptionKey,\n\tonSelect,\n\tclassName,\n\tclearable = false,\n}: AutoCompleteProps<T>) {\n\tconst [options, setOptions] = React.useState<T[]>([]);\n\tconst [loading, setLoading] = React.useState(false);\n\tconst [searchTerm, setSearchTerm] = React.useState(\"\");\n\n\tconst sortedOptions = React.useMemo(() => {\n\t\tif (!value) return options;\n\t\treturn [...options].sort((a, b) => {\n\t\t\tif (getOptionLabel(a) === getOptionLabel(value)) return -1;\n\t\t\tif (getOptionLabel(b) === getOptionLabel(value)) return 1;\n\t\t\treturn getOptionLabel(a).localeCompare(getOptionLabel(b));\n\t\t});\n\t}, [options, value, getOptionLabel]);\n\n\tconst debouncedFetch = useDebouncedCallback(async (term: string) => {\n\t\ttry {\n\t\t\tconst result = await fetchOptions(term);\n\t\t\tsetOptions(result);\n\t\t} catch (err) {\n\t\t\tconsole.error(\"Erro ao buscar opções:\", err);\n\t\t\tsetOptions([]);\n\t\t} finally {\n\t\t\tsetLoading(false);\n\t\t}\n\t}, 500);\n\n\tconst handleInputChange = (val: string) => {\n\t\tsetSearchTerm(val);\n\n\t\tif (val.trim() === \"\") {\n\t\t\tsetOptions([]);\n\t\t\tsetLoading(false);\n\t\t\treturn;\n\t\t}\n\n\t\tsetLoading(true);\n\t\tdebouncedFetch(val);\n\t};\n\n\tconst handleSelect = (option: T) => {\n\t\tif (onSelect) {\n\t\t\tonSelect(option);\n\t\t} else {\n\t\t\tonChange(option);\n\t\t\tonOpenChange(false);\n\t\t}\n\t};\n\n\tconst handleClear = (e: React.MouseEvent) => {\n\t\te.stopPropagation();\n\t\tonChange(null);\n\t};\n\n\treturn (\n\t\t<Popover open={open} onOpenChange={onOpenChange}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\"flex h-10 w-full items-center justify-between truncate\", className)}\n\t\t\t\t\taria-expanded={open}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t>\n\t\t\t\t\t<span className={cn(\"truncate text-muted-foreground\", value && \"text-foreground\")}>\n\t\t\t\t\t\t{value ? getOptionLabel(value) : placeholder}\n\t\t\t\t\t</span>\n\t\t\t\t\t<div className=\"ml-2 flex shrink-0 items-center gap-1\">\n\t\t\t\t\t\t{clearable && value && !disabled && (\n\t\t\t\t\t\t\t<X\n\t\t\t\t\t\t\t\tclassName=\"h-4 w-4 opacity-50 hover:opacity-100\"\n\t\t\t\t\t\t\t\tonClick={handleClear}\n\t\t\t\t\t\t\t\taria-label=\"Limpar seleção\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<ChevronsUpDown className=\"h-4 w-4 opacity-50\" />\n\t\t\t\t\t</div>\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\tclassName=\"max-h-[300px] w-[--radix-popover-trigger-width] overflow-auto p-0\"\n\t\t\t\tside=\"bottom\"\n\t\t\t\talign=\"start\"\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tclassName=\"h-9\"\n\t\t\t\t\t\tonValueChange={handleInputChange}\n\t\t\t\t\t/>\n\t\t\t\t\t<CommandEmpty>\n\t\t\t\t\t\t{loading\n\t\t\t\t\t\t\t? \"Carregando...\"\n\t\t\t\t\t\t\t: searchTerm.trim() === \"\"\n\t\t\t\t\t\t\t\t? \"Digite algo para buscar...\"\n\t\t\t\t\t\t\t\t: messageEmpty}\n\t\t\t\t\t</CommandEmpty>\n\t\t\t\t\t<CommandList className=\"max-h-60 overflow-y-auto\">\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{sortedOptions.map((item) => {\n\t\t\t\t\t\t\t\tconst label = getOptionLabel(item);\n\t\t\t\t\t\t\t\tconst key = getOptionKey(item);\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<CommandItem key={key} value={label} onSelect={() => handleSelect(item)}>\n\t\t\t\t\t\t\t\t\t\t{value && getOptionLabel(value) === label && (\n\t\t\t\t\t\t\t\t\t\t\t<CheckIcon className=\"h-4 w-4 opacity-100\" />\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t<span>{label}</span>\n\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","\"use client\";\n\nimport { format, isWeekend } from \"date-fns\";\nimport { ptBR } from \"date-fns/locale\";\nimport { CalendarDaysIcon, LoaderCircleIcon, X } from \"lucide-react\";\nimport React from \"react\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport { tryParseDate } from \"@/utils/date\";\n\nexport function normalizeDate(date: Date): string {\n\treturn format(date, \"yyyy-MM-dd\");\n}\n\nexport interface CalendarPopoverProps\n\textends Omit<React.ComponentProps<typeof Calendar>, \"mode\" | \"selected\" | \"onSelect\"> {\n\t/** Data selecionada (pode ser Date ou string parseável) */\n\tdate: Date | string | undefined | null;\n\n\t/** Função chamada ao selecionar uma data */\n\tsetDate: (date: Date | undefined | null) => void;\n\n\t/** Texto exibido quando não há data selecionada */\n\tplaceholder?: string;\n\n\t/** ID opcional do botão */\n\tid?: string;\n\n\t/** Props extras para o botão */\n\tbuttonProps?: ButtonProps;\n\n\t/** Props extras para o popover */\n\tpopoverProps?: React.ComponentProps<typeof Popover>;\n\n\t/** Classe extra para o conteúdo do popover */\n\tpopoverContentClassName?: string;\n\n\t/** Classe extra para o botão */\n\tclassName?: string;\n\n\t/**\n\t * Permite desabilitar datas específicas (igual ao Calendar do shadcn)\n\t * Pode ser um boolean, ou uma função que recebe a data e retorna boolean\n\t */\n\tdisabled?: boolean | ((date: Date) => boolean);\n\n\t/**\n\t * Exibe o estado de carregamento geral do componente\n\t * Quando true, mostra o ícone de loading e desabilita a interação\n\t */\n\tisLoading?: boolean;\n\n\t/**\n\t * Exibe o estado de carregamento específico da tabela (caso exista)\n\t * Quando true, impede a seleção de datas no calendário\n\t */\n\tisLoadingTable?: boolean;\n\n\t/**\n\t * Define um conjunto de datas desabilitadas (formato 'yyyy-MM-dd')\n\t * Cada data presente neste Set será bloqueada na seleção do calendário\n\t */\n\tdisabledDates?: Set<string>;\n\n\t/**\n\t * Mês padrão a ser mostrado (caso nenhuma data esteja selecionada)\n\t * Por padrão, será o mês atual.\n\t */\n\tdefaultMonth?: Date;\n\n\t/**\n\t * Se true, desabilita datas futuras.\n\t * @default true\n\t */\n\tdisableFuture?: boolean;\n\n\t/**\n\t * Se true, desabilita fins de semana.\n\t * @default true\n\t */\n\tdisableWeekends?: boolean;\n}\n\nexport const CalendarPopover: React.FC<CalendarPopoverProps> = ({\n\tdate,\n\tsetDate,\n\tplaceholder = \"Selecione uma data\",\n\tid = \"calendar-popover\",\n\tbuttonProps,\n\tpopoverProps,\n\tpopoverContentClassName,\n\tclassName,\n\tdisabled,\n\tisLoading,\n\tdisabledDates,\n\tisLoadingTable,\n\tdisableFuture = true,\n\tdisableWeekends = true,\n\t...props\n}) => {\n\tconst validDate = tryParseDate(date ?? undefined);\n\tconst [isOpen, setIsOpen] = React.useState(false);\n\tconst [month, setMonth] = React.useState(validDate || new Date());\n\n\tReact.useEffect(() => {\n\t\tif (isOpen) {\n\t\t\tsetMonth(validDate || new Date());\n\t\t}\n\t}, [isOpen, validDate]);\n\n\tconst handleClear = (e: React.MouseEvent) => {\n\t\te.stopPropagation();\n\t\tsetDate(null);\n\t};\n\n\treturn (\n\t\t<Popover open={isOpen} onOpenChange={setIsOpen} {...popoverProps}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tid={id}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"hover:text-foreground justify-between text-left font-normal\",\n\t\t\t\t\t\t!validDate && \"text-muted-foreground hover:text-muted-foreground\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\tdisabled={typeof disabled === \"boolean\" ? disabled : undefined}\n\t\t\t\t\t{...buttonProps}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"flex items-center\">\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<LoaderCircleIcon className=\"size-4 animate-spin mr-2\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<CalendarDaysIcon className=\"size-4 mr-2\" />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<span>carregando...</span>\n\t\t\t\t\t\t) : validDate ? (\n\t\t\t\t\t\t\tformat(validDate, \"P\", { locale: ptBR })\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span>{placeholder}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{validDate && !disabled && !isLoading && (\n\t\t\t\t\t\t// biome-ignore lint/a11y/useKeyWithClickEvents: clear button action\n\t\t\t\t\t\t// biome-ignore lint/a11y/noStaticElementInteractions: clear button action\n\t\t\t\t\t\t<div onClick={handleClear} className=\"cursor-pointer p-1\">\n\t\t\t\t\t\t\t<X className=\"h-4 w-4 opacity-50 hover:opacity-100\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\n\t\t\t<PopoverContent className={cn(\"w-auto p-0\", popoverContentClassName)} align=\"start\">\n\t\t\t\t<Calendar\n\t\t\t\t\tautoFocus\n\t\t\t\t\tcaptionLayout=\"dropdown\"\n\t\t\t\t\tselected={validDate || undefined}\n\t\t\t\t\tonSelect={(d) => {\n\t\t\t\t\t\tsetDate(d);\n\t\t\t\t\t\tsetIsOpen(false);\n\t\t\t\t\t}}\n\t\t\t\t\tlocale={ptBR}\n\t\t\t\t\tnumberOfMonths={1}\n\t\t\t\t\tfromYear={1900}\n\t\t\t\t\ttoYear={2100}\n\t\t\t\t\tdisabled={(currentDate) => {\n\t\t\t\t\t\tif (isLoading || isLoadingTable) return true;\n\n\t\t\t\t\t\t// Se disabled for uma função, respeite-a\n\t\t\t\t\t\tif (typeof disabled === \"function\") {\n\t\t\t\t\t\t\tif (disabled(currentDate)) return true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst normalizedCurrentDate = normalizeDate(currentDate);\n\n\t\t\t\t\t\tconst isHoliday = disabledDates?.has(normalizedCurrentDate);\n\t\t\t\t\t\tconst isWeekendDay = disableWeekends && isWeekend(currentDate);\n\t\t\t\t\t\tconst isFutureDate = disableFuture && currentDate > new Date();\n\n\t\t\t\t\t\treturn isHoliday || isWeekendDay || isFutureDate || false;\n\t\t\t\t\t}}\n\t\t\t\t\tmonth={month}\n\t\t\t\t\tonMonthChange={setMonth}\n\t\t\t\t\t{...props}\n\t\t\t\t\tmode=\"single\"\n\t\t\t\t/>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n};\n"],"names":["isWeekend","date","options","day","toDate","in","getDay","AutoComplete","value","onChange","placeholder","searchPlaceholder","open","onOpenChange","disabled","messageEmpty","fetchOptions","getOptionLabel","getOptionKey","onSelect","className","clearable","setOptions","React","useState","loading","setLoading","searchTerm","setSearchTerm","sortedOptions","useMemo","sort","a","b","localeCompare","debouncedFetch","useDebouncedCallback","term","result","err","console","error","handleInputChange","val","trim","handleSelect","option","handleClear","e","stopPropagation","Popover","PopoverTrigger","asChild","Button","variant","cn","aria-expanded","span","div","X","onClick","aria-label","ChevronsUpDown","PopoverContent","side","align","Command","CommandInput","onValueChange","CommandEmpty","CommandList","CommandGroup","map","item","label","key","CommandItem","CheckIcon","normalizeDate","format","CalendarPopover","setDate","id","buttonProps","popoverProps","popoverContentClassName","isLoading","disabledDates","isLoadingTable","disableFuture","disableWeekends","props","validDate","tryParseDate","undefined","isOpen","setIsOpen","month","setMonth","Date","useEffect","LoaderCircleIcon","CalendarDaysIcon","locale","ptBR","Calendar","autoFocus","captionLayout","selected","d","numberOfMonths","fromYear","toYear","currentDate","normalizedCurrentDate","isHoliday","has","isWeekendDay","isFutureDate","onMonthChange","mode"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"CalendarPopover-CRB6GXIt.mjs","sources":["../../node_modules/date-fns/isWeekend.js","../../src/components/default/base/AutoComplete.tsx","../../src/components/default/base/CalendarPopover.tsx"],"sourcesContent":["import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link isWeekend} function options.\n */\n\n/**\n * @name isWeekend\n * @category Weekday Helpers\n * @summary Does the given date fall on a weekend?\n *\n * @description\n * Does the given date fall on a weekend? A weekend is either Saturday (`6`) or Sunday (`0`).\n *\n * @param date - The date to check\n * @param options - An object with options\n *\n * @returns The date falls on a weekend\n *\n * @example\n * // Does 5 October 2014 fall on a weekend?\n * const result = isWeekend(new Date(2014, 9, 5))\n * //=> true\n */\nexport function isWeekend(date, options) {\n const day = toDate(date, options?.in).getDay();\n return day === 0 || day === 6;\n}\n\n// Fallback for modularized imports:\nexport default isWeekend;\n","\"use client\";\n\nimport { CheckIcon, ChevronsUpDown, X } from \"lucide-react\";\nimport React from \"react\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n\tCommand,\n\tCommandEmpty,\n\tCommandGroup,\n\tCommandInput,\n\tCommandItem,\n\tCommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\n\ninterface AutoCompleteProps<T> {\n\tvalue: T | null;\n\tonChange: (value: T | null) => void;\n\tplaceholder?: string;\n\tsearchPlaceholder?: string;\n\topen: boolean;\n\tonOpenChange: (open: boolean) => void;\n\tdisabled?: boolean;\n\tmessageEmpty?: string;\n\tfetchOptions: (term: string) => Promise<T[]>;\n\tgetOptionLabel: (option: T) => string;\n\tgetOptionKey: (option: T) => string | number;\n\tonSelect?: (option: T) => void;\n\tclassName?: string;\n\tclearable?: boolean;\n}\n\nexport function AutoComplete<T>({\n\tvalue,\n\tonChange,\n\tplaceholder,\n\tsearchPlaceholder,\n\topen,\n\tonOpenChange,\n\tdisabled,\n\tmessageEmpty = \"Nenhum item encontrado.\",\n\tfetchOptions,\n\tgetOptionLabel,\n\tgetOptionKey,\n\tonSelect,\n\tclassName,\n\tclearable = false,\n}: AutoCompleteProps<T>) {\n\tconst [options, setOptions] = React.useState<T[]>([]);\n\tconst [loading, setLoading] = React.useState(false);\n\tconst [searchTerm, setSearchTerm] = React.useState(\"\");\n\n\tconst sortedOptions = React.useMemo(() => {\n\t\tif (!value) return options;\n\t\treturn [...options].sort((a, b) => {\n\t\t\tif (getOptionLabel(a) === getOptionLabel(value)) return -1;\n\t\t\tif (getOptionLabel(b) === getOptionLabel(value)) return 1;\n\t\t\treturn getOptionLabel(a).localeCompare(getOptionLabel(b));\n\t\t});\n\t}, [options, value, getOptionLabel]);\n\n\tconst debouncedFetch = useDebouncedCallback(async (term: string) => {\n\t\ttry {\n\t\t\tconst result = await fetchOptions(term);\n\t\t\tsetOptions(result);\n\t\t} catch (err) {\n\t\t\tconsole.error(\"Erro ao buscar opções:\", err);\n\t\t\tsetOptions([]);\n\t\t} finally {\n\t\t\tsetLoading(false);\n\t\t}\n\t}, 500);\n\n\tconst handleInputChange = (val: string) => {\n\t\tsetSearchTerm(val);\n\n\t\tif (val.trim() === \"\") {\n\t\t\tsetOptions([]);\n\t\t\tsetLoading(false);\n\t\t\treturn;\n\t\t}\n\n\t\tsetLoading(true);\n\t\tdebouncedFetch(val);\n\t};\n\n\tconst handleSelect = (option: T) => {\n\t\tif (onSelect) {\n\t\t\tonSelect(option);\n\t\t} else {\n\t\t\tonChange(option);\n\t\t\tonOpenChange(false);\n\t\t}\n\t};\n\n\tconst handleClear = (e: React.MouseEvent) => {\n\t\te.stopPropagation();\n\t\tonChange(null);\n\t};\n\n\treturn (\n\t\t<Popover open={open} onOpenChange={onOpenChange}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\"flex h-10 w-full items-center justify-between truncate\", className)}\n\t\t\t\t\taria-expanded={open}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t>\n\t\t\t\t\t<span className={cn(\"truncate text-muted-foreground\", value && \"text-foreground\")}>\n\t\t\t\t\t\t{value ? getOptionLabel(value) : placeholder}\n\t\t\t\t\t</span>\n\t\t\t\t\t<div className=\"ml-2 flex shrink-0 items-center gap-1\">\n\t\t\t\t\t\t{clearable && value && !disabled && (\n\t\t\t\t\t\t\t<X\n\t\t\t\t\t\t\t\tclassName=\"h-4 w-4 opacity-50 hover:opacity-100\"\n\t\t\t\t\t\t\t\tonClick={handleClear}\n\t\t\t\t\t\t\t\taria-label=\"Limpar seleção\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<ChevronsUpDown className=\"h-4 w-4 opacity-50\" />\n\t\t\t\t\t</div>\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\tclassName=\"max-h-[300px] w-[--radix-popover-trigger-width] overflow-auto p-0\"\n\t\t\t\tside=\"bottom\"\n\t\t\t\talign=\"start\"\n\t\t\t>\n\t\t\t\t<Command>\n\t\t\t\t\t<CommandInput\n\t\t\t\t\t\tplaceholder={searchPlaceholder}\n\t\t\t\t\t\tclassName=\"h-9\"\n\t\t\t\t\t\tonValueChange={handleInputChange}\n\t\t\t\t\t/>\n\t\t\t\t\t<CommandEmpty>\n\t\t\t\t\t\t{loading\n\t\t\t\t\t\t\t? \"Carregando...\"\n\t\t\t\t\t\t\t: searchTerm.trim() === \"\"\n\t\t\t\t\t\t\t\t? \"Digite algo para buscar...\"\n\t\t\t\t\t\t\t\t: messageEmpty}\n\t\t\t\t\t</CommandEmpty>\n\t\t\t\t\t<CommandList className=\"max-h-60 overflow-y-auto\">\n\t\t\t\t\t\t<CommandGroup>\n\t\t\t\t\t\t\t{sortedOptions.map((item) => {\n\t\t\t\t\t\t\t\tconst label = getOptionLabel(item);\n\t\t\t\t\t\t\t\tconst key = getOptionKey(item);\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<CommandItem key={key} value={label} onSelect={() => handleSelect(item)}>\n\t\t\t\t\t\t\t\t\t\t{value && getOptionLabel(value) === label && (\n\t\t\t\t\t\t\t\t\t\t\t<CheckIcon className=\"h-4 w-4 opacity-100\" />\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t<span>{label}</span>\n\t\t\t\t\t\t\t\t\t</CommandItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</CommandGroup>\n\t\t\t\t\t</CommandList>\n\t\t\t\t</Command>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n}\n","\"use client\";\n\nimport { format, isWeekend } from \"date-fns\";\nimport { ptBR } from \"date-fns/locale\";\nimport { CalendarDaysIcon, LoaderCircleIcon, X } from \"lucide-react\";\nimport React from \"react\";\nimport { Button, type ButtonProps } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils\";\nimport { tryParseDate } from \"@/utils/date\";\n\nexport function normalizeDate(date: Date): string {\n\treturn format(date, \"yyyy-MM-dd\");\n}\n\nexport interface CalendarPopoverProps\n\textends Omit<React.ComponentProps<typeof Calendar>, \"mode\" | \"selected\" | \"onSelect\"> {\n\t/** Data selecionada (pode ser Date ou string parseável) */\n\tdate: Date | string | undefined | null;\n\n\t/** Função chamada ao selecionar uma data */\n\tsetDate: (date: Date | undefined | null) => void;\n\n\t/** Texto exibido quando não há data selecionada */\n\tplaceholder?: string;\n\n\t/** ID opcional do botão */\n\tid?: string;\n\n\t/** Props extras para o botão */\n\tbuttonProps?: ButtonProps;\n\n\t/** Props extras para o popover */\n\tpopoverProps?: React.ComponentProps<typeof Popover>;\n\n\t/** Classe extra para o conteúdo do popover */\n\tpopoverContentClassName?: string;\n\n\t/** Classe extra para o botão */\n\tclassName?: string;\n\n\t/**\n\t * Permite desabilitar datas específicas (igual ao Calendar do shadcn)\n\t * Pode ser um boolean, ou uma função que recebe a data e retorna boolean\n\t */\n\tdisabled?: boolean | ((date: Date) => boolean);\n\n\t/**\n\t * Exibe o estado de carregamento geral do componente\n\t * Quando true, mostra o ícone de loading e desabilita a interação\n\t */\n\tisLoading?: boolean;\n\n\t/**\n\t * Exibe o estado de carregamento específico da tabela (caso exista)\n\t * Quando true, impede a seleção de datas no calendário\n\t */\n\tisLoadingTable?: boolean;\n\n\t/**\n\t * Define um conjunto de datas desabilitadas (formato 'yyyy-MM-dd')\n\t * Cada data presente neste Set será bloqueada na seleção do calendário\n\t */\n\tdisabledDates?: Set<string>;\n\n\t/**\n\t * Mês padrão a ser mostrado (caso nenhuma data esteja selecionada)\n\t * Por padrão, será o mês atual.\n\t */\n\tdefaultMonth?: Date;\n\n\t/**\n\t * Se true, desabilita datas futuras.\n\t * @default true\n\t */\n\tdisableFuture?: boolean;\n\n\t/**\n\t * Se true, desabilita fins de semana.\n\t * @default true\n\t */\n\tdisableWeekends?: boolean;\n}\n\nexport const CalendarPopover: React.FC<CalendarPopoverProps> = ({\n\tdate,\n\tsetDate,\n\tplaceholder = \"Selecione uma data\",\n\tid = \"calendar-popover\",\n\tbuttonProps,\n\tpopoverProps,\n\tpopoverContentClassName,\n\tclassName,\n\tdisabled,\n\tisLoading,\n\tdisabledDates,\n\tisLoadingTable,\n\tdisableFuture = true,\n\tdisableWeekends = true,\n\t...props\n}) => {\n\tconst validDate = tryParseDate(date ?? undefined);\n\tconst [isOpen, setIsOpen] = React.useState(false);\n\tconst [month, setMonth] = React.useState(validDate || new Date());\n\n\tReact.useEffect(() => {\n\t\tif (isOpen) {\n\t\t\tsetMonth(validDate || new Date());\n\t\t}\n\t}, [isOpen, validDate]);\n\n\tconst handleClear = (e: React.MouseEvent) => {\n\t\te.stopPropagation();\n\t\tsetDate(null);\n\t};\n\n\treturn (\n\t\t<Popover open={isOpen} onOpenChange={setIsOpen} {...popoverProps}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<Button\n\t\t\t\t\tid={id}\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"hover:text-foreground justify-between text-left font-normal\",\n\t\t\t\t\t\t!validDate && \"text-muted-foreground hover:text-muted-foreground\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\tdisabled={typeof disabled === \"boolean\" ? disabled : undefined}\n\t\t\t\t\t{...buttonProps}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"flex items-center\">\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<LoaderCircleIcon className=\"size-4 animate-spin mr-2\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<CalendarDaysIcon className=\"size-4 mr-2\" />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<span>carregando...</span>\n\t\t\t\t\t\t) : validDate ? (\n\t\t\t\t\t\t\tformat(validDate, \"P\", { locale: ptBR })\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span>{placeholder}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{validDate && !disabled && !isLoading && (\n\t\t\t\t\t\t// biome-ignore lint/a11y/useKeyWithClickEvents: clear button action\n\t\t\t\t\t\t// biome-ignore lint/a11y/noStaticElementInteractions: clear button action\n\t\t\t\t\t\t<div onClick={handleClear} className=\"cursor-pointer p-1\">\n\t\t\t\t\t\t\t<X className=\"h-4 w-4 opacity-50 hover:opacity-100\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</Button>\n\t\t\t</PopoverTrigger>\n\n\t\t\t<PopoverContent className={cn(\"w-auto p-0\", popoverContentClassName)} align=\"start\">\n\t\t\t\t<Calendar\n\t\t\t\t\tautoFocus\n\t\t\t\t\tcaptionLayout=\"dropdown\"\n\t\t\t\t\tselected={validDate || undefined}\n\t\t\t\t\tonSelect={(d) => {\n\t\t\t\t\t\tsetDate(d);\n\t\t\t\t\t\tsetIsOpen(false);\n\t\t\t\t\t}}\n\t\t\t\t\tlocale={ptBR}\n\t\t\t\t\tnumberOfMonths={1}\n\t\t\t\t\tfromYear={1900}\n\t\t\t\t\ttoYear={2100}\n\t\t\t\t\tdisabled={(currentDate) => {\n\t\t\t\t\t\tif (isLoading || isLoadingTable) return true;\n\n\t\t\t\t\t\t// Se disabled for uma função, respeite-a\n\t\t\t\t\t\tif (typeof disabled === \"function\") {\n\t\t\t\t\t\t\tif (disabled(currentDate)) return true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst normalizedCurrentDate = normalizeDate(currentDate);\n\n\t\t\t\t\t\tconst isHoliday = disabledDates?.has(normalizedCurrentDate);\n\t\t\t\t\t\tconst isWeekendDay = disableWeekends && isWeekend(currentDate);\n\t\t\t\t\t\tconst isFutureDate = disableFuture && currentDate > new Date();\n\n\t\t\t\t\t\treturn isHoliday || isWeekendDay || isFutureDate || false;\n\t\t\t\t\t}}\n\t\t\t\t\tmonth={month}\n\t\t\t\t\tonMonthChange={setMonth}\n\t\t\t\t\t{...props}\n\t\t\t\t\tmode=\"single\"\n\t\t\t\t/>\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t);\n};\n"],"names":["isWeekend","date","options","day","toDate","in","getDay","AutoComplete","value","onChange","placeholder","searchPlaceholder","open","onOpenChange","disabled","messageEmpty","fetchOptions","getOptionLabel","getOptionKey","onSelect","className","clearable","setOptions","React","useState","loading","setLoading","searchTerm","setSearchTerm","sortedOptions","useMemo","sort","a","b","localeCompare","debouncedFetch","useDebouncedCallback","term","result","err","console","error","handleInputChange","val","trim","handleSelect","option","handleClear","e","stopPropagation","Popover","PopoverTrigger","asChild","Button","variant","cn","aria-expanded","span","div","X","onClick","aria-label","ChevronsUpDown","PopoverContent","side","align","Command","CommandInput","onValueChange","CommandEmpty","CommandList","CommandGroup","map","item","label","key","CommandItem","CheckIcon","normalizeDate","format","CalendarPopover","setDate","id","buttonProps","popoverProps","popoverContentClassName","isLoading","disabledDates","isLoadingTable","disableFuture","disableWeekends","props","validDate","tryParseDate","undefined","isOpen","setIsOpen","month","setMonth","Date","useEffect","LoaderCircleIcon","CalendarDaysIcon","locale","ptBR","Calendar","autoFocus","captionLayout","selected","d","numberOfMonths","fromYear","toYear","currentDate","normalizedCurrentDate","isHoliday","has","isWeekendDay","isFutureDate","onMonthChange","mode"],"mappings":"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","x_google_ignoreList":[0]}