@stachelock/ui 0.2.14 → 0.3.0

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 (737) hide show
  1. package/dist/AddDeleteButtonGroup.vue_vue_type_script_setup_true_lang-CFS3lVF-.js +128 -0
  2. package/dist/AddDeleteButtonGroup.vue_vue_type_script_setup_true_lang-CFS3lVF-.js.map +1 -0
  3. package/dist/AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js +194 -0
  4. package/dist/AlertModal.vue_vue_type_script_setup_true_lang-CxwewAVy.js.map +1 -0
  5. package/dist/BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js +34 -0
  6. package/dist/BackgroundGradientWrapper.vue_vue_type_script_setup_true_lang-B570pdYL.js.map +1 -0
  7. package/dist/BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js +67 -0
  8. package/dist/BarChart.vue_vue_type_script_setup_true_lang-Dnuzd7vZ.js.map +1 -0
  9. package/dist/Bars3Icon-BdOqcGcY.js +22 -0
  10. package/dist/Bars3Icon-BdOqcGcY.js.map +1 -0
  11. package/dist/BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js +235 -0
  12. package/dist/BaseModal.vue_vue_type_script_setup_true_lang-Cr_GAD6Q.js.map +1 -0
  13. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js +328 -0
  14. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-DRwe4rw8.js.map +1 -0
  15. package/dist/CardWrapper.vue_vue_type_script_setup_true_lang-D59QBAi9.js +13 -0
  16. package/dist/CardWrapper.vue_vue_type_script_setup_true_lang-D59QBAi9.js.map +1 -0
  17. package/dist/CheckIcon-BGlsmVwT.js +20 -0
  18. package/dist/CheckIcon-BGlsmVwT.js.map +1 -0
  19. package/dist/{CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js → CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js} +52 -51
  20. package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-B8wJVkPP.js.map +1 -0
  21. package/dist/ChevronRightIcon-DkUqw988.js +20 -0
  22. package/dist/ChevronRightIcon-DkUqw988.js.map +1 -0
  23. package/dist/ChevronUpDownIcon-Bq_fsgrb.js +20 -0
  24. package/dist/ChevronUpDownIcon-Bq_fsgrb.js.map +1 -0
  25. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js +1315 -0
  26. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-ClGP5YU0.js.map +1 -0
  27. package/dist/ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js +60 -0
  28. package/dist/ComingSoon.vue_vue_type_script_setup_true_lang-C5GU-yiK.js.map +1 -0
  29. package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js → DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js} +23 -22
  30. package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-DV-XVWqh.js.map +1 -0
  31. package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js +688 -0
  32. package/dist/DatepickerInput.vue_vue_type_style_index_0_lang-BdkGLw0H.js.map +1 -0
  33. package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js +238 -0
  34. package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-BV9vYYuX.js.map +1 -0
  35. package/dist/DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js +138 -0
  36. package/dist/DisclosureWrapper.vue_vue_type_script_setup_true_lang-B-Mr_vdx.js.map +1 -0
  37. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js +253 -0
  38. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-DRDP86Yc.js.map +1 -0
  39. package/dist/{DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js → DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js} +25 -41
  40. package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-Ct8b80dM.js.map +1 -0
  41. package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js +122 -0
  42. package/dist/EmailInput.vue_vue_type_script_setup_true_lang-Dhfgs2Jn.js.map +1 -0
  43. package/dist/EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js +32 -0
  44. package/dist/EmptyInput.vue_vue_type_script_setup_true_lang-BDxgc5Bs.js.map +1 -0
  45. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js +74 -0
  46. package/dist/EmptyState.vue_vue_type_script_setup_true_lang-B_XAq5Sr.js.map +1 -0
  47. package/dist/{EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js → EventCard.vue_vue_type_script_setup_true_lang-j1mtKShZ.js} +56 -77
  48. package/dist/EventCard.vue_vue_type_script_setup_true_lang-j1mtKShZ.js.map +1 -0
  49. package/dist/{EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js → EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js} +9 -9
  50. package/dist/{EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js.map → EventsList.vue_vue_type_script_setup_true_lang-D3q9wJ4E.js.map} +1 -1
  51. package/dist/ExclamationCircleIcon-DjxYk45_.js +22 -0
  52. package/dist/ExclamationCircleIcon-DjxYk45_.js.map +1 -0
  53. package/dist/ExclamationCircleIcon-DmL8Wwjo.js +36 -0
  54. package/dist/ExclamationCircleIcon-DmL8Wwjo.js.map +1 -0
  55. package/dist/ExclamationTriangleIcon-BNKYmV_J.js +22 -0
  56. package/dist/ExclamationTriangleIcon-BNKYmV_J.js.map +1 -0
  57. package/dist/FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js +211 -0
  58. package/dist/FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js.map +1 -0
  59. package/dist/FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js +63 -0
  60. package/dist/FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js.map +1 -0
  61. package/dist/FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js +67 -0
  62. package/dist/FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js.map +1 -0
  63. package/dist/HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js +22 -0
  64. package/dist/HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js.map +1 -0
  65. package/dist/InformationCircleIcon-B322GNIt.js +40 -0
  66. package/dist/InformationCircleIcon-B322GNIt.js.map +1 -0
  67. package/dist/InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js +93 -0
  68. package/dist/InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js.map +1 -0
  69. package/dist/LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js +66 -0
  70. package/dist/LineChart.vue_vue_type_script_setup_true_lang-DszQ-a5L.js.map +1 -0
  71. package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js +36 -0
  72. package/dist/LottieAnimation.vue_vue_type_script_setup_true_lang-CwOOShcM.js.map +1 -0
  73. package/dist/MapPinIcon-CSTDUZnD.js +27 -0
  74. package/dist/MapPinIcon-CSTDUZnD.js.map +1 -0
  75. package/dist/MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js +193 -0
  76. package/dist/MonthCalendar.vue_vue_type_style_index_0_lang-CnX3Ih0W.js.map +1 -0
  77. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js +162 -0
  78. package/dist/NotificationToast.vue_vue_type_script_setup_true_lang-Cm5RsC7C.js.map +1 -0
  79. package/dist/PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js +69 -0
  80. package/dist/PieChart.vue_vue_type_script_setup_true_lang-DJRcsty7.js.map +1 -0
  81. package/dist/{XMarkIcon-C4wILUsz.js → PlusIcon-aDFVlB90.js} +5 -5
  82. package/dist/PlusIcon-aDFVlB90.js.map +1 -0
  83. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js +130 -0
  84. package/dist/ProfileHeaderAvatar.vue_vue_type_script_setup_true_lang-Cri9BiBy.js.map +1 -0
  85. package/dist/ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js +108 -0
  86. package/dist/ProjectLogo.vue_vue_type_script_setup_true_lang-CtroDq7L.js.map +1 -0
  87. package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js +303 -0
  88. package/dist/SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js.map +1 -0
  89. package/dist/SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js +339 -0
  90. package/dist/SelectTextInput.vue_vue_type_script_setup_true_lang-B2Gw_se2.js.map +1 -0
  91. package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-CzLbBcNS.js → SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js} +25 -24
  92. package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-BD2PF5xp.js.map +1 -0
  93. package/dist/SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js +78 -0
  94. package/dist/SparklineChart.vue_vue_type_script_setup_true_lang-DDTcpEjy.js.map +1 -0
  95. package/dist/StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js +111 -0
  96. package/dist/StatCard.vue_vue_type_script_setup_true_lang-DTOT0-WB.js.map +1 -0
  97. package/dist/StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js +119 -0
  98. package/dist/StepperPanels.vue_vue_type_script_setup_true_lang-BtHrfqFI.js.map +1 -0
  99. package/dist/{SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js → SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js} +63 -58
  100. package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-D6M1qwP1.js.map +1 -0
  101. package/dist/SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js +183 -0
  102. package/dist/SwitchInputGroup.vue_vue_type_script_setup_true_lang-BNKKEAMq.js.map +1 -0
  103. package/dist/TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js +125 -0
  104. package/dist/TabGroup.vue_vue_type_script_setup_true_lang-DrhDwLL3.js.map +1 -0
  105. package/dist/TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js +129 -0
  106. package/dist/TabGroupUnderline.vue_vue_type_script_setup_true_lang-Di33js6c.js.map +1 -0
  107. package/dist/TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js +85 -0
  108. package/dist/TabsInPills.vue_vue_type_script_setup_true_lang-CMxaK0Kw.js.map +1 -0
  109. package/dist/{TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js → TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js} +53 -63
  110. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-CAK6ZIiz.js.map +1 -0
  111. package/dist/{TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js → TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js} +47 -35
  112. package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-BMpc-5ln.js.map +1 -0
  113. package/dist/{UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js → UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js} +34 -34
  114. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-Ci7VLRZx.js.map +1 -0
  115. package/dist/UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js +88 -0
  116. package/dist/UiBadge.vue_vue_type_script_setup_true_lang-CV8WVEXL.js.map +1 -0
  117. package/dist/UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js +108 -0
  118. package/dist/UiButtonGroup.vue_vue_type_script_setup_true_lang-BKyznfxi.js.map +1 -0
  119. package/dist/UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js +96 -0
  120. package/dist/UiCheckbox.vue_vue_type_script_setup_true_lang-B5fPB7PH.js.map +1 -0
  121. package/dist/{UiLoading.vue_vue_type_script_setup_true_lang-KbLKA4SA.js → UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js} +48 -43
  122. package/dist/UiLoading.vue_vue_type_script_setup_true_lang-DldleD-3.js.map +1 -0
  123. package/dist/UiMapAll.vue_vue_type_script_setup_true_lang-CMAyvJMk.js +489 -0
  124. package/dist/UiMapAll.vue_vue_type_script_setup_true_lang-CMAyvJMk.js.map +1 -0
  125. package/dist/UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js +330 -0
  126. package/dist/UiMenu.vue_vue_type_script_setup_true_lang-aJddpshR.js.map +1 -0
  127. package/dist/UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js +214 -0
  128. package/dist/UiModal.vue_vue_type_script_setup_true_lang-CFgLuifQ.js.map +1 -0
  129. package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js +83 -0
  130. package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-C23h6Do0.js.map +1 -0
  131. package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js +69 -0
  132. package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-BioTMORv.js.map +1 -0
  133. package/dist/{UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js → UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js} +45 -44
  134. package/dist/UiTable.vue_vue_type_script_setup_true_lang-BuOCaPzi.js.map +1 -0
  135. package/dist/XMarkIcon-Cwy3T6p8.js +22 -0
  136. package/dist/XMarkIcon-Cwy3T6p8.js.map +1 -0
  137. package/dist/XMarkIcon-DNvCkiOy.js +16 -0
  138. package/dist/XMarkIcon-DNvCkiOy.js.map +1 -0
  139. package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js +89 -0
  140. package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-C01PTLg8.js.map +1 -0
  141. package/dist/active-element-history-BTBNVIJN.js +17 -0
  142. package/dist/active-element-history-BTBNVIJN.js.map +1 -0
  143. package/dist/calculate-active-index-Dim3sT-5.js +55 -0
  144. package/dist/calculate-active-index-Dim3sT-5.js.map +1 -0
  145. package/dist/calendar-DyIP7WGv.js +575 -0
  146. package/dist/calendar-DyIP7WGv.js.map +1 -0
  147. package/dist/calendars/CalendarDashboard.js +7 -7
  148. package/dist/calendars/CalendarHeader.js +1 -1
  149. package/dist/calendars/DayCalendar.js +1 -1
  150. package/dist/calendars/EventCard.js +1 -1
  151. package/dist/calendars/EventsList.js +1 -1
  152. package/dist/calendars/MonthCalendar.js +1 -1
  153. package/dist/calendars/WeekCalendar.js +376 -2
  154. package/dist/calendars/WeekCalendar.js.map +1 -1
  155. package/dist/calendars/YearCalendar.js +1 -1
  156. package/dist/charts/BarChart.d.ts +3 -0
  157. package/dist/charts/BarChart.js +5 -0
  158. package/dist/charts/BarChart.js.map +1 -0
  159. package/dist/charts/BaseChart.d.ts +3 -0
  160. package/dist/charts/BaseChart.js +135 -0
  161. package/dist/charts/BaseChart.js.map +1 -0
  162. package/dist/charts/FunnelChart.d.ts +3 -0
  163. package/dist/charts/FunnelChart.js +5 -0
  164. package/dist/charts/FunnelChart.js.map +1 -0
  165. package/dist/charts/LineChart.d.ts +3 -0
  166. package/dist/charts/LineChart.js +5 -0
  167. package/dist/charts/LineChart.js.map +1 -0
  168. package/dist/charts/PieChart.d.ts +3 -0
  169. package/dist/charts/PieChart.js +5 -0
  170. package/dist/charts/PieChart.js.map +1 -0
  171. package/dist/charts/SparklineChart.d.ts +3 -0
  172. package/dist/charts/SparklineChart.js +5 -0
  173. package/dist/charts/SparklineChart.js.map +1 -0
  174. package/dist/charts/StatCard.d.ts +3 -0
  175. package/dist/charts/StatCard.js +5 -0
  176. package/dist/charts/StatCard.js.map +1 -0
  177. package/dist/charts/chartTheme.d.ts +3 -0
  178. package/dist/charts/chartTheme.js +254 -0
  179. package/dist/charts/chartTheme.js.map +1 -0
  180. package/dist/charts/index.d.ts +1 -0
  181. package/dist/charts/index.js +33 -0
  182. package/dist/charts/index.js.map +1 -0
  183. package/dist/components/Avatar.js +1 -1
  184. package/dist/components/Badge.js +2 -39
  185. package/dist/components/Badge.js.map +1 -1
  186. package/dist/components/Banner.d.ts +3 -0
  187. package/dist/components/Banner.js +476 -0
  188. package/dist/components/Banner.js.map +1 -0
  189. package/dist/components/Breadcrumb.js +269 -2
  190. package/dist/components/Breadcrumb.js.map +1 -1
  191. package/dist/components/Button.js +132 -105
  192. package/dist/components/Button.js.map +1 -1
  193. package/dist/components/ButtonGroup.d.ts +3 -0
  194. package/dist/components/ButtonGroup.js +5 -0
  195. package/dist/components/ButtonGroup.js.map +1 -0
  196. package/dist/components/Checkbox.d.ts +3 -0
  197. package/dist/components/Checkbox.js +5 -0
  198. package/dist/components/Checkbox.js.map +1 -0
  199. package/dist/components/CloudinaryImage.d.ts +3 -0
  200. package/dist/components/CloudinaryImage.js +175 -0
  201. package/dist/components/CloudinaryImage.js.map +1 -0
  202. package/dist/components/Loading.js +1 -1
  203. package/dist/components/LoadingDots.js +3 -3
  204. package/dist/components/LoadingDots.js.map +1 -1
  205. package/dist/components/LottieAnimation.d.ts +3 -0
  206. package/dist/components/LottieAnimation.js +5 -0
  207. package/dist/components/LottieAnimation.js.map +1 -0
  208. package/dist/components/Menu.d.ts +3 -0
  209. package/dist/components/Menu.js +5 -0
  210. package/dist/components/Menu.js.map +1 -0
  211. package/dist/components/Modal.js +1 -1
  212. package/dist/components/NavLink.js +1 -1
  213. package/dist/components/ProgressBar.js +1 -1
  214. package/dist/components/RadialProgressBar.js +1 -1
  215. package/dist/components/Table.js +1 -1
  216. package/dist/composables/index.d.ts +1 -0
  217. package/dist/composables/index.js +33 -0
  218. package/dist/composables/index.js.map +1 -0
  219. package/dist/composables/useCalendar.d.ts +3 -0
  220. package/dist/composables/useCalendar.js +32 -0
  221. package/dist/composables/useCalendar.js.map +1 -0
  222. package/dist/composables/useFormValidation.d.ts +3 -0
  223. package/dist/composables/useFormValidation.js +110 -0
  224. package/dist/composables/useFormValidation.js.map +1 -0
  225. package/dist/composables/useMap.d.ts +3 -0
  226. package/dist/composables/useMap.js +10 -0
  227. package/dist/composables/useMap.js.map +1 -0
  228. package/dist/composables/useModal.d.ts +3 -0
  229. package/dist/composables/useModal.js +75 -0
  230. package/dist/composables/useModal.js.map +1 -0
  231. package/dist/composables/useNotifications.d.ts +3 -0
  232. package/dist/composables/useNotifications.js +77 -0
  233. package/dist/composables/useNotifications.js.map +1 -0
  234. package/dist/composables/useTabs.d.ts +1 -0
  235. package/dist/composables/useTabs.js +259 -0
  236. package/dist/composables/useTabs.js.map +1 -0
  237. package/dist/composables/useTheme.d.ts +3 -0
  238. package/dist/composables/useTheme.js +119 -0
  239. package/dist/composables/useTheme.js.map +1 -0
  240. package/dist/{description-CBd3BJ9O.js → description-C7cRw0tq.js} +2 -2
  241. package/dist/{description-CBd3BJ9O.js.map → description-C7cRw0tq.js.map} +1 -1
  242. package/dist/{dialog-U1KNiPzc.js → dialog-B2WA4G25.js} +141 -135
  243. package/dist/dialog-B2WA4G25.js.map +1 -0
  244. package/dist/empty-state/ComingSoon.d.ts +3 -0
  245. package/dist/empty-state/ComingSoon.js +5 -0
  246. package/dist/empty-state/ComingSoon.js.map +1 -0
  247. package/dist/empty-state/EmptyState.d.ts +3 -0
  248. package/dist/empty-state/EmptyState.js +5 -0
  249. package/dist/empty-state/EmptyState.js.map +1 -0
  250. package/dist/empty-state/index.d.ts +1 -0
  251. package/dist/empty-state/index.js +7 -0
  252. package/dist/empty-state/index.js.map +1 -0
  253. package/dist/env-BZfPsfnF.js +29 -0
  254. package/dist/env-BZfPsfnF.js.map +1 -0
  255. package/dist/form-f8yP4kN-.js +35 -0
  256. package/dist/form-f8yP4kN-.js.map +1 -0
  257. package/dist/forms/DynamicForm.js +1 -1
  258. package/dist/forms/DynamicFormField.js +1 -1
  259. package/dist/forms/FormFieldWrapper.js +72 -92
  260. package/dist/forms/FormFieldWrapper.js.map +1 -1
  261. package/dist/hidden-BSRluD1y.js +15 -0
  262. package/dist/hidden-BSRluD1y.js.map +1 -0
  263. package/dist/index-Dca39bYA.js +2167 -0
  264. package/dist/index-Dca39bYA.js.map +1 -0
  265. package/dist/index.js +1257 -274
  266. package/dist/index.js.map +1 -1
  267. package/dist/inputs/AddDeleteButtonGroup.d.ts +3 -0
  268. package/dist/inputs/AddDeleteButtonGroup.js +5 -0
  269. package/dist/inputs/AddDeleteButtonGroup.js.map +1 -0
  270. package/dist/inputs/CheckboxInput.js +1 -1
  271. package/dist/inputs/ComboboxInput.js +1 -1
  272. package/dist/inputs/DatepickerInput.d.ts +3 -0
  273. package/dist/inputs/DatepickerInput.js +5 -0
  274. package/dist/inputs/DatepickerInput.js.map +1 -0
  275. package/dist/inputs/EmailInput.d.ts +3 -0
  276. package/dist/inputs/EmailInput.js +5 -0
  277. package/dist/inputs/EmailInput.js.map +1 -0
  278. package/dist/inputs/EmptyInput.d.ts +3 -0
  279. package/dist/inputs/EmptyInput.js +5 -0
  280. package/dist/inputs/EmptyInput.js.map +1 -0
  281. package/dist/inputs/FileDropzoneInput.d.ts +3 -0
  282. package/dist/inputs/FileDropzoneInput.js +5 -0
  283. package/dist/inputs/FileDropzoneInput.js.map +1 -0
  284. package/dist/inputs/HiddenInput.d.ts +3 -0
  285. package/dist/inputs/HiddenInput.js +5 -0
  286. package/dist/inputs/HiddenInput.js.map +1 -0
  287. package/dist/inputs/PhoneInput.d.ts +3 -0
  288. package/dist/inputs/PhoneInput.js +3783 -0
  289. package/dist/inputs/PhoneInput.js.map +1 -0
  290. package/dist/inputs/RichTextInput.d.ts +3 -0
  291. package/dist/inputs/RichTextInput.js +17492 -0
  292. package/dist/inputs/RichTextInput.js.map +1 -0
  293. package/dist/inputs/SelectInput.js +1 -1
  294. package/dist/inputs/SelectTextInput.d.ts +3 -0
  295. package/dist/inputs/SelectTextInput.js +5 -0
  296. package/dist/inputs/SelectTextInput.js.map +1 -0
  297. package/dist/inputs/SwitchInput.js +1 -1
  298. package/dist/inputs/SwitchInputGroup.d.ts +3 -0
  299. package/dist/inputs/SwitchInputGroup.js +5 -0
  300. package/dist/inputs/SwitchInputGroup.js.map +1 -0
  301. package/dist/inputs/TagifyInput.js +1 -1
  302. package/dist/inputs/TextAreaInput.js +1 -1
  303. package/dist/inputs/TextInput.d.ts +3 -0
  304. package/dist/{components → inputs}/TextInput.js +17 -17
  305. package/dist/inputs/TextInput.js.map +1 -0
  306. package/dist/keyboard-Dd_2-cFu.js +5 -0
  307. package/dist/keyboard-Dd_2-cFu.js.map +1 -0
  308. package/dist/layouts/DashboardLayout.js +1 -1
  309. package/dist/layouts/ProfileHeaderAvatar.d.ts +3 -0
  310. package/dist/layouts/ProfileHeaderAvatar.js +5 -0
  311. package/dist/layouts/ProfileHeaderAvatar.js.map +1 -0
  312. package/dist/layouts/ProjectLogo.d.ts +3 -0
  313. package/dist/layouts/ProjectLogo.js +5 -0
  314. package/dist/layouts/ProjectLogo.js.map +1 -0
  315. package/dist/layouts/SidebarLayout.js +1 -1
  316. package/dist/listbox-p2_4hUSD.js +257 -0
  317. package/dist/listbox-p2_4hUSD.js.map +1 -0
  318. package/dist/loading/ContentSkeleton.d.ts +3 -0
  319. package/dist/loading/ContentSkeleton.js +96 -0
  320. package/dist/loading/ContentSkeleton.js.map +1 -0
  321. package/dist/loading/SmartLoadingIndicator.d.ts +3 -0
  322. package/dist/loading/SmartLoadingIndicator.js +230 -0
  323. package/dist/loading/SmartLoadingIndicator.js.map +1 -0
  324. package/dist/loading/index.d.ts +1 -0
  325. package/dist/loading/index.js +7 -0
  326. package/dist/loading/index.js.map +1 -0
  327. package/dist/mapThemes-DFE9fZm3.js +675 -0
  328. package/dist/mapThemes-DFE9fZm3.js.map +1 -0
  329. package/dist/maps/GoogleMap.d.ts +3 -0
  330. package/dist/maps/GoogleMap.js +170 -0
  331. package/dist/maps/GoogleMap.js.map +1 -0
  332. package/dist/maps/UiInfoWindow.d.ts +3 -0
  333. package/dist/maps/UiInfoWindow.js +286 -0
  334. package/dist/maps/UiInfoWindow.js.map +1 -0
  335. package/dist/maps/UiMap.d.ts +3 -0
  336. package/dist/maps/UiMap.js +591 -0
  337. package/dist/maps/UiMap.js.map +1 -0
  338. package/dist/maps/UiMapAll.d.ts +3 -0
  339. package/dist/maps/UiMapAll.js +5 -0
  340. package/dist/maps/UiMapAll.js.map +1 -0
  341. package/dist/maps/UiMapMarker.d.ts +3 -0
  342. package/dist/maps/UiMapMarker.js +237 -0
  343. package/dist/maps/UiMapMarker.js.map +1 -0
  344. package/dist/maps/index.d.ts +1 -0
  345. package/dist/maps/index.js +13 -0
  346. package/dist/maps/index.js.map +1 -0
  347. package/dist/micro-task-D-oTY33s.js +9 -0
  348. package/dist/micro-task-D-oTY33s.js.map +1 -0
  349. package/dist/modals/AlertModal.d.ts +3 -0
  350. package/dist/modals/AlertModal.js +5 -0
  351. package/dist/modals/AlertModal.js.map +1 -0
  352. package/dist/modals/BaseModal.d.ts +3 -0
  353. package/dist/modals/BaseModal.js +5 -0
  354. package/dist/modals/BaseModal.js.map +1 -0
  355. package/dist/modals/ImageCropperModal.d.ts +3 -0
  356. package/dist/modals/ImageCropperModal.js +1804 -0
  357. package/dist/modals/ImageCropperModal.js.map +1 -0
  358. package/dist/notifications/NotificationContainer.d.ts +3 -0
  359. package/dist/notifications/NotificationContainer.js +25 -0
  360. package/dist/notifications/NotificationContainer.js.map +1 -0
  361. package/dist/notifications/NotificationToast.d.ts +3 -0
  362. package/dist/notifications/NotificationToast.js +5 -0
  363. package/dist/notifications/NotificationToast.js.map +1 -0
  364. package/dist/notifications/index.d.ts +1 -0
  365. package/dist/notifications/index.js +7 -0
  366. package/dist/notifications/index.js.map +1 -0
  367. package/dist/open-closed-JTEvYTg2.js +19 -0
  368. package/dist/open-closed-JTEvYTg2.js.map +1 -0
  369. package/dist/render-QUUPyNjX.js +101 -0
  370. package/dist/render-QUUPyNjX.js.map +1 -0
  371. package/dist/src/components/CloudinaryImage.d.ts +144 -0
  372. package/dist/src/components/CloudinaryImage.d.ts.map +1 -0
  373. package/dist/src/components/LottieAnimation.d.ts +65 -0
  374. package/dist/src/components/LottieAnimation.d.ts.map +1 -0
  375. package/dist/src/components/ThemeDebugModal.d.ts +20 -0
  376. package/dist/src/components/ThemeDebugModal.d.ts.map +1 -0
  377. package/dist/src/components/UiAvatar.d.ts.map +1 -1
  378. package/dist/src/components/UiBadge.d.ts +22 -12
  379. package/dist/src/components/UiBadge.d.ts.map +1 -1
  380. package/dist/src/components/UiBanner.d.ts +166 -0
  381. package/dist/src/components/UiBanner.d.ts.map +1 -0
  382. package/dist/src/components/UiBreadcrumb.d.ts +240 -1
  383. package/dist/src/components/UiBreadcrumb.d.ts.map +1 -1
  384. package/dist/src/components/UiButton.d.ts +5 -4
  385. package/dist/src/components/UiButton.d.ts.map +1 -1
  386. package/dist/src/components/UiButtonGroup.d.ts +78 -0
  387. package/dist/src/components/UiButtonGroup.d.ts.map +1 -0
  388. package/dist/src/components/UiCheckbox.d.ts +55 -0
  389. package/dist/src/components/UiCheckbox.d.ts.map +1 -0
  390. package/dist/src/components/UiLoading.d.ts +2 -2
  391. package/dist/src/components/UiLoading.d.ts.map +1 -1
  392. package/dist/src/components/UiMenu.d.ts +67 -0
  393. package/dist/src/components/UiMenu.d.ts.map +1 -0
  394. package/dist/src/components/UiModal.d.ts +1 -1
  395. package/dist/src/components/UiModal.d.ts.map +1 -1
  396. package/dist/src/components/UiNavLink.d.ts +1 -1
  397. package/dist/src/components/UiProgressBar.d.ts +43 -31
  398. package/dist/src/components/UiProgressBar.d.ts.map +1 -1
  399. package/dist/src/components/UiRadialProgressBar.d.ts +46 -39
  400. package/dist/src/components/UiRadialProgressBar.d.ts.map +1 -1
  401. package/dist/src/components/UiTable.d.ts.map +1 -1
  402. package/dist/src/components/UiTransition.d.ts +1 -1
  403. package/dist/src/components/calendars/CalendarHeader.d.ts +66 -19
  404. package/dist/src/components/calendars/CalendarHeader.d.ts.map +1 -1
  405. package/dist/src/components/calendars/DayCalendar.d.ts +11 -4
  406. package/dist/src/components/calendars/DayCalendar.d.ts.map +1 -1
  407. package/dist/src/components/calendars/MonthCalendar.d.ts +33 -22
  408. package/dist/src/components/calendars/MonthCalendar.d.ts.map +1 -1
  409. package/dist/src/components/calendars/WeekCalendar.d.ts.map +1 -1
  410. package/dist/src/components/calendars/YearCalendar.d.ts +41 -6
  411. package/dist/src/components/calendars/YearCalendar.d.ts.map +1 -1
  412. package/dist/src/components/charts/BarChart.d.ts +64 -0
  413. package/dist/src/components/charts/BarChart.d.ts.map +1 -0
  414. package/dist/src/components/charts/BaseChart.d.ts +81 -0
  415. package/dist/src/components/charts/BaseChart.d.ts.map +1 -0
  416. package/dist/src/components/charts/FunnelChart.d.ts +55 -0
  417. package/dist/src/components/charts/FunnelChart.d.ts.map +1 -0
  418. package/dist/src/components/charts/LineChart.d.ts +60 -0
  419. package/dist/src/components/charts/LineChart.d.ts.map +1 -0
  420. package/dist/src/components/charts/PieChart.d.ts +59 -0
  421. package/dist/src/components/charts/PieChart.d.ts.map +1 -0
  422. package/dist/src/components/charts/SparklineChart.d.ts +46 -0
  423. package/dist/src/components/charts/SparklineChart.d.ts.map +1 -0
  424. package/dist/src/components/charts/StatCard.d.ts +37 -0
  425. package/dist/src/components/charts/StatCard.d.ts.map +1 -0
  426. package/dist/src/components/charts/chartTheme.d.ts +166 -0
  427. package/dist/src/components/charts/chartTheme.d.ts.map +1 -0
  428. package/dist/src/components/charts/index.d.ts +9 -0
  429. package/dist/src/components/charts/index.d.ts.map +1 -0
  430. package/dist/src/components/empty-state/ComingSoon.d.ts +50 -0
  431. package/dist/src/components/empty-state/ComingSoon.d.ts.map +1 -0
  432. package/dist/src/components/empty-state/EmptyState.d.ts +49 -0
  433. package/dist/src/components/empty-state/EmptyState.d.ts.map +1 -0
  434. package/dist/src/components/empty-state/index.d.ts +3 -0
  435. package/dist/src/components/empty-state/index.d.ts.map +1 -0
  436. package/dist/src/components/forms/DynamicForm.d.ts +29 -2
  437. package/dist/src/components/forms/DynamicForm.d.ts.map +1 -1
  438. package/dist/src/components/forms/DynamicFormField.d.ts.map +1 -1
  439. package/dist/src/components/forms/FormFieldWrapper.d.ts +2 -2
  440. package/dist/src/components/forms/FormFieldWrapper.d.ts.map +1 -1
  441. package/dist/src/components/index.d.ts +16 -1
  442. package/dist/src/components/index.d.ts.map +1 -1
  443. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts +49 -0
  444. package/dist/src/components/inputs/AddDeleteButtonGroup.d.ts.map +1 -0
  445. package/dist/src/components/inputs/CheckboxInput.d.ts +1 -1
  446. package/dist/src/components/inputs/CheckboxInput.d.ts.map +1 -1
  447. package/dist/src/components/inputs/ComboboxInput.d.ts.map +1 -1
  448. package/dist/src/components/inputs/DatepickerInput.d.ts +852 -0
  449. package/dist/src/components/inputs/DatepickerInput.d.ts.map +1 -0
  450. package/dist/src/components/inputs/EmailInput.d.ts +99 -0
  451. package/dist/src/components/inputs/EmailInput.d.ts.map +1 -0
  452. package/dist/src/components/inputs/EmptyInput.d.ts +36 -0
  453. package/dist/src/components/inputs/EmptyInput.d.ts.map +1 -0
  454. package/dist/src/components/inputs/FileDropzoneInput.d.ts +91 -0
  455. package/dist/src/components/inputs/FileDropzoneInput.d.ts.map +1 -0
  456. package/dist/src/components/inputs/HiddenInput.d.ts +30 -0
  457. package/dist/src/components/inputs/HiddenInput.d.ts.map +1 -0
  458. package/dist/src/components/inputs/PhoneInput.d.ts +211 -0
  459. package/dist/src/components/inputs/PhoneInput.d.ts.map +1 -0
  460. package/dist/src/components/inputs/RichTextInput.d.ts +102 -0
  461. package/dist/src/components/inputs/RichTextInput.d.ts.map +1 -0
  462. package/dist/src/components/inputs/SelectInput.d.ts.map +1 -1
  463. package/dist/src/components/inputs/SelectTextInput.d.ts +222 -0
  464. package/dist/src/components/inputs/SelectTextInput.d.ts.map +1 -0
  465. package/dist/src/components/inputs/SwitchInput.d.ts +1 -1
  466. package/dist/src/components/inputs/SwitchInput.d.ts.map +1 -1
  467. package/dist/src/components/inputs/SwitchInputGroup.d.ts +93 -0
  468. package/dist/src/components/inputs/SwitchInputGroup.d.ts.map +1 -0
  469. package/dist/src/components/inputs/TagifyInput.d.ts +6 -6
  470. package/dist/src/components/inputs/TextAreaInput.d.ts.map +1 -1
  471. package/dist/src/components/{UiTextInput.d.ts → inputs/TextInput.d.ts} +7 -7
  472. package/dist/src/components/inputs/TextInput.d.ts.map +1 -0
  473. package/dist/src/components/inputs/index.d.ts +11 -0
  474. package/dist/src/components/inputs/index.d.ts.map +1 -1
  475. package/dist/src/components/layouts/CardLayout.d.ts +144 -0
  476. package/dist/src/components/layouts/CardLayout.d.ts.map +1 -0
  477. package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
  478. package/dist/src/components/layouts/InfoCard.d.ts +43 -0
  479. package/dist/src/components/layouts/InfoCard.d.ts.map +1 -0
  480. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts +85 -0
  481. package/dist/src/components/layouts/ProfileHeaderAvatar.d.ts.map +1 -0
  482. package/dist/src/components/layouts/ProjectLogo.d.ts +67 -0
  483. package/dist/src/components/layouts/ProjectLogo.d.ts.map +1 -0
  484. package/dist/src/components/layouts/PropsTable.d.ts +38 -0
  485. package/dist/src/components/layouts/PropsTable.d.ts.map +1 -0
  486. package/dist/src/components/layouts/ShowcaseCard.d.ts +53 -0
  487. package/dist/src/components/layouts/ShowcaseCard.d.ts.map +1 -0
  488. package/dist/src/components/layouts/ShowcaseLayout.d.ts +58 -0
  489. package/dist/src/components/layouts/ShowcaseLayout.d.ts.map +1 -0
  490. package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
  491. package/dist/src/components/layouts/StateDisplay.d.ts +32 -0
  492. package/dist/src/components/layouts/StateDisplay.d.ts.map +1 -0
  493. package/dist/src/components/layouts/index.d.ts +8 -0
  494. package/dist/src/components/layouts/index.d.ts.map +1 -1
  495. package/dist/src/components/loading/ContentSkeleton.d.ts +53 -0
  496. package/dist/src/components/loading/ContentSkeleton.d.ts.map +1 -0
  497. package/dist/src/components/loading/SmartLoadingIndicator.d.ts +88 -0
  498. package/dist/src/components/loading/SmartLoadingIndicator.d.ts.map +1 -0
  499. package/dist/src/components/loading/index.d.ts +3 -0
  500. package/dist/src/components/loading/index.d.ts.map +1 -0
  501. package/dist/src/components/maps/GoogleMap.d.ts +224 -0
  502. package/dist/src/components/maps/GoogleMap.d.ts.map +1 -0
  503. package/dist/src/components/maps/UiInfoWindow.d.ts +223 -0
  504. package/dist/src/components/maps/UiInfoWindow.d.ts.map +1 -0
  505. package/dist/src/components/maps/UiMap.d.ts +609 -0
  506. package/dist/src/components/maps/UiMap.d.ts.map +1 -0
  507. package/dist/src/components/maps/UiMapAll.d.ts +676 -0
  508. package/dist/src/components/maps/UiMapAll.d.ts.map +1 -0
  509. package/dist/src/components/maps/UiMapMarker.d.ts +223 -0
  510. package/dist/src/components/maps/UiMapMarker.d.ts.map +1 -0
  511. package/dist/src/components/maps/index.d.ts +6 -0
  512. package/dist/src/components/maps/index.d.ts.map +1 -0
  513. package/dist/src/components/modals/AlertModal.d.ts +156 -0
  514. package/dist/src/components/modals/AlertModal.d.ts.map +1 -0
  515. package/dist/src/components/modals/BaseModal.d.ts +127 -0
  516. package/dist/src/components/modals/BaseModal.d.ts.map +1 -0
  517. package/dist/src/components/modals/ImageCropperModal.d.ts +99 -0
  518. package/dist/src/components/modals/ImageCropperModal.d.ts.map +1 -0
  519. package/dist/src/components/modals/index.d.ts +4 -0
  520. package/dist/src/components/modals/index.d.ts.map +1 -0
  521. package/dist/src/components/notifications/NotificationContainer.d.ts +3 -0
  522. package/dist/src/components/notifications/NotificationContainer.d.ts.map +1 -0
  523. package/dist/src/components/notifications/NotificationToast.d.ts +22 -0
  524. package/dist/src/components/notifications/NotificationToast.d.ts.map +1 -0
  525. package/dist/src/components/notifications/index.d.ts +3 -0
  526. package/dist/src/components/notifications/index.d.ts.map +1 -0
  527. package/dist/src/components/stepper/StepperPanels.d.ts +22 -0
  528. package/dist/src/components/stepper/StepperPanels.d.ts.map +1 -0
  529. package/dist/src/components/stepper/index.d.ts +2 -0
  530. package/dist/src/components/stepper/index.d.ts.map +1 -0
  531. package/dist/src/components/tabs/InlineTabs.d.ts +48 -0
  532. package/dist/src/components/tabs/InlineTabs.d.ts.map +1 -0
  533. package/dist/src/components/tabs/TabGroup.d.ts +55 -0
  534. package/dist/src/components/tabs/TabGroup.d.ts.map +1 -0
  535. package/dist/src/components/tabs/TabGroupUnderline.d.ts +56 -0
  536. package/dist/src/components/tabs/TabGroupUnderline.d.ts.map +1 -0
  537. package/dist/src/components/tabs/TabsInPills.d.ts +44 -0
  538. package/dist/src/components/tabs/TabsInPills.d.ts.map +1 -0
  539. package/dist/src/components/tabs/index.d.ts +5 -0
  540. package/dist/src/components/tabs/index.d.ts.map +1 -0
  541. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts +64 -0
  542. package/dist/src/components/wrappers/BackgroundGradientWrapper.d.ts.map +1 -0
  543. package/dist/src/components/wrappers/CardWrapper.d.ts +10 -0
  544. package/dist/src/components/wrappers/CardWrapper.d.ts.map +1 -0
  545. package/dist/src/components/wrappers/DisclosureWrapper.d.ts +37 -0
  546. package/dist/src/components/wrappers/DisclosureWrapper.d.ts.map +1 -0
  547. package/dist/src/components/wrappers/FormErrorWrapper.d.ts +40 -0
  548. package/dist/src/components/{UiTextInput.d.ts.map → wrappers/FormErrorWrapper.d.ts.map} +1 -1
  549. package/dist/src/components/wrappers/index.d.ts +5 -0
  550. package/dist/src/components/wrappers/index.d.ts.map +1 -0
  551. package/dist/src/composables/index.d.ts +7 -0
  552. package/dist/src/composables/index.d.ts.map +1 -1
  553. package/dist/src/composables/useCalendar.d.ts +76 -20
  554. package/dist/src/composables/useCalendar.d.ts.map +1 -1
  555. package/dist/src/composables/useEventSegments.d.ts +74 -0
  556. package/dist/src/composables/useEventSegments.d.ts.map +1 -0
  557. package/dist/src/composables/useFormValidation.d.ts +47 -0
  558. package/dist/src/composables/useFormValidation.d.ts.map +1 -1
  559. package/dist/src/composables/useMap.d.ts +93 -0
  560. package/dist/src/composables/useMap.d.ts.map +1 -0
  561. package/dist/src/composables/useModal.d.ts +42 -2
  562. package/dist/src/composables/useModal.d.ts.map +1 -1
  563. package/dist/src/composables/useNotifications.d.ts +142 -0
  564. package/dist/src/composables/useNotifications.d.ts.map +1 -0
  565. package/dist/src/composables/useSimpleTabs.d.ts +45 -0
  566. package/dist/src/composables/useSimpleTabs.d.ts.map +1 -0
  567. package/dist/src/composables/useStringTransform.d.ts +107 -0
  568. package/dist/src/composables/useStringTransform.d.ts.map +1 -0
  569. package/dist/src/composables/useTabs.d.ts +48 -0
  570. package/dist/src/composables/useTabs.d.ts.map +1 -0
  571. package/dist/src/composables/useTheme.d.ts +37 -0
  572. package/dist/src/composables/useTheme.d.ts.map +1 -0
  573. package/dist/src/dev.d.ts +3 -0
  574. package/dist/src/dev.d.ts.map +1 -1
  575. package/dist/src/index.d.ts +1 -0
  576. package/dist/src/index.d.ts.map +1 -1
  577. package/dist/src/plugin/configure.d.ts +110 -0
  578. package/dist/src/plugin/configure.d.ts.map +1 -1
  579. package/dist/src/types/calendars.d.ts +74 -0
  580. package/dist/src/types/calendars.d.ts.map +1 -1
  581. package/dist/src/types/core.d.ts +679 -0
  582. package/dist/src/types/core.d.ts.map +1 -0
  583. package/dist/src/types/index.d.ts +3 -0
  584. package/dist/src/types/index.d.ts.map +1 -1
  585. package/dist/src/types/inputs.d.ts +147 -0
  586. package/dist/src/types/inputs.d.ts.map +1 -1
  587. package/dist/src/types/layouts.d.ts +25 -0
  588. package/dist/src/types/layouts.d.ts.map +1 -1
  589. package/dist/src/types/maps.d.ts +432 -0
  590. package/dist/src/types/maps.d.ts.map +1 -0
  591. package/dist/src/types/tabs.d.ts +75 -0
  592. package/dist/src/types/tabs.d.ts.map +1 -0
  593. package/dist/src/types/ui.d.ts +2 -3
  594. package/dist/src/types/ui.d.ts.map +1 -1
  595. package/dist/src/utils/calendar.d.ts +97 -5
  596. package/dist/src/utils/calendar.d.ts.map +1 -1
  597. package/dist/src/utils/countryCodes.d.ts +27 -0
  598. package/dist/src/utils/countryCodes.d.ts.map +1 -0
  599. package/dist/src/utils/index.d.ts +4 -0
  600. package/dist/src/utils/index.d.ts.map +1 -1
  601. package/dist/src/utils/mapThemes.d.ts +90 -0
  602. package/dist/src/utils/mapThemes.d.ts.map +1 -0
  603. package/dist/src/utils/phone.d.ts +73 -0
  604. package/dist/src/utils/phone.d.ts.map +1 -0
  605. package/dist/src/utils/transitions.d.ts +55 -0
  606. package/dist/src/utils/transitions.d.ts.map +1 -0
  607. package/dist/src/views/components/index.d.ts +15 -0
  608. package/dist/src/views/components/index.d.ts.map +1 -0
  609. package/dist/src/views/examples/index.d.ts +5 -0
  610. package/dist/src/views/examples/index.d.ts.map +1 -0
  611. package/dist/src/views/forms/index.d.ts +3 -0
  612. package/dist/src/views/forms/index.d.ts.map +1 -0
  613. package/dist/src/views/index.d.ts +23 -0
  614. package/dist/src/views/index.d.ts.map +1 -0
  615. package/dist/src/views/inputs/index.d.ts +13 -0
  616. package/dist/src/views/inputs/index.d.ts.map +1 -0
  617. package/dist/src/views/layouts/index.d.ts +5 -0
  618. package/dist/src/views/layouts/index.d.ts.map +1 -0
  619. package/dist/stepper/StepperPanels.d.ts +3 -0
  620. package/dist/stepper/StepperPanels.js +5 -0
  621. package/dist/stepper/StepperPanels.js.map +1 -0
  622. package/dist/stepper/index.d.ts +1 -0
  623. package/dist/stepper/index.js +5 -0
  624. package/dist/stepper/index.js.map +1 -0
  625. package/dist/style.css +1 -1
  626. package/dist/tabs/InlineTabs.d.ts +3 -0
  627. package/dist/tabs/InlineTabs.js +5 -0
  628. package/dist/tabs/InlineTabs.js.map +1 -0
  629. package/dist/tabs/TabGroup.d.ts +3 -0
  630. package/dist/tabs/TabGroup.js +5 -0
  631. package/dist/tabs/TabGroup.js.map +1 -0
  632. package/dist/tabs/TabGroupUnderline.d.ts +3 -0
  633. package/dist/tabs/TabGroupUnderline.js +5 -0
  634. package/dist/tabs/TabGroupUnderline.js.map +1 -0
  635. package/dist/tabs/TabsInPills.d.ts +3 -0
  636. package/dist/tabs/TabsInPills.js +5 -0
  637. package/dist/tabs/TabsInPills.js.map +1 -0
  638. package/dist/tabs/index.d.ts +1 -0
  639. package/dist/tabs/index.js +11 -0
  640. package/dist/tabs/index.js.map +1 -0
  641. package/dist/tabs-Da32Mbhf.js +202 -0
  642. package/dist/tabs-Da32Mbhf.js.map +1 -0
  643. package/dist/transition-_rPfnoET.js +191 -0
  644. package/dist/transition-_rPfnoET.js.map +1 -0
  645. package/dist/use-outside-click-DNDV36Sc.js +151 -0
  646. package/dist/use-outside-click-DNDV36Sc.js.map +1 -0
  647. package/dist/use-resolve-button-type-h6n-lm9q.js +20 -0
  648. package/dist/use-resolve-button-type-h6n-lm9q.js.map +1 -0
  649. package/dist/use-text-value-DKnkjK00.js +44 -0
  650. package/dist/use-text-value-DKnkjK00.js.map +1 -0
  651. package/dist/use-tree-walker-BHCORE7u.js +16 -0
  652. package/dist/use-tree-walker-BHCORE7u.js.map +1 -0
  653. package/dist/useEventSegments-B-r_8zCW.js +97 -0
  654. package/dist/useEventSegments-B-r_8zCW.js.map +1 -0
  655. package/dist/useMap-BaZEIoWM.js +525 -0
  656. package/dist/useMap-BaZEIoWM.js.map +1 -0
  657. package/dist/useSimpleTabs-CSgkChEU.js +103 -0
  658. package/dist/useSimpleTabs-CSgkChEU.js.map +1 -0
  659. package/dist/useStringTransform-CSr7nZWg.js +140 -0
  660. package/dist/useStringTransform-CSr7nZWg.js.map +1 -0
  661. package/dist/vue-datepicker-CEn0-fJj.js +4871 -0
  662. package/dist/vue-datepicker-CEn0-fJj.js.map +1 -0
  663. package/dist/vue-router-BPbyZ7xA.js +145 -0
  664. package/dist/vue-router-BPbyZ7xA.js.map +1 -0
  665. package/dist/vue3-lottie.es-C_MDkNwR.js +7976 -0
  666. package/dist/vue3-lottie.es-C_MDkNwR.js.map +1 -0
  667. package/dist/wrappers/BackgroundGradientWrapper.d.ts +3 -0
  668. package/dist/wrappers/BackgroundGradientWrapper.js +5 -0
  669. package/dist/wrappers/BackgroundGradientWrapper.js.map +1 -0
  670. package/dist/wrappers/CardWrapper.d.ts +3 -0
  671. package/dist/wrappers/CardWrapper.js +5 -0
  672. package/dist/wrappers/CardWrapper.js.map +1 -0
  673. package/dist/wrappers/DisclosureWrapper.d.ts +3 -0
  674. package/dist/wrappers/DisclosureWrapper.js +5 -0
  675. package/dist/wrappers/DisclosureWrapper.js.map +1 -0
  676. package/dist/wrappers/FormErrorWrapper.d.ts +3 -0
  677. package/dist/wrappers/FormErrorWrapper.js +5 -0
  678. package/dist/wrappers/FormErrorWrapper.js.map +1 -0
  679. package/dist/wrappers/index.d.ts +1 -0
  680. package/dist/wrappers/index.js +11 -0
  681. package/dist/wrappers/index.js.map +1 -0
  682. package/package.json +36 -4
  683. package/scripts/build-css.cjs +1 -1
  684. package/scripts/generate-config.cjs +1 -0
  685. package/scripts/generateRecursiveIndex.cjs +4 -1
  686. package/tailwind.config.js +1 -1
  687. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js +0 -70
  688. package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js.map +0 -1
  689. package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js.map +0 -1
  690. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-LE2kDHpU.js +0 -1300
  691. package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-LE2kDHpU.js.map +0 -1
  692. package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-Cg83utkU.js.map +0 -1
  693. package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js +0 -123
  694. package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js.map +0 -1
  695. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js +0 -217
  696. package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js.map +0 -1
  697. package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js.map +0 -1
  698. package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js.map +0 -1
  699. package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js +0 -66
  700. package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js.map +0 -1
  701. package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js +0 -522
  702. package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js.map +0 -1
  703. package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-CzLbBcNS.js.map +0 -1
  704. package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js.map +0 -1
  705. package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js.map +0 -1
  706. package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js.map +0 -1
  707. package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js.map +0 -1
  708. package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js +0 -82
  709. package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js.map +0 -1
  710. package/dist/UiLoading.vue_vue_type_script_setup_true_lang-KbLKA4SA.js.map +0 -1
  711. package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js +0 -163
  712. package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js.map +0 -1
  713. package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js +0 -222
  714. package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js.map +0 -1
  715. package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-D4-B3A7K.js +0 -51
  716. package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-D4-B3A7K.js.map +0 -1
  717. package/dist/UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js.map +0 -1
  718. package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js +0 -154
  719. package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js.map +0 -1
  720. package/dist/XMarkIcon-C4wILUsz.js.map +0 -1
  721. package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js +0 -29
  722. package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js.map +0 -1
  723. package/dist/calculate-active-index-CksdUwZY.js +0 -87
  724. package/dist/calculate-active-index-CksdUwZY.js.map +0 -1
  725. package/dist/calendar-905Ofszh.js +0 -77
  726. package/dist/calendar-905Ofszh.js.map +0 -1
  727. package/dist/components/TextInput.d.ts +0 -3
  728. package/dist/components/TextInput.js.map +0 -1
  729. package/dist/dialog-U1KNiPzc.js.map +0 -1
  730. package/dist/form-DQKuKVqJ.js +0 -51
  731. package/dist/form-DQKuKVqJ.js.map +0 -1
  732. package/dist/keyboard-DJD8TwH4.js +0 -113
  733. package/dist/keyboard-DJD8TwH4.js.map +0 -1
  734. package/dist/open-closed-DgcU-HDT.js +0 -179
  735. package/dist/open-closed-DgcU-HDT.js.map +0 -1
  736. package/dist/transition-CuxxW9dY.js +0 -209
  737. package/dist/transition-CuxxW9dY.js.map +0 -1
@@ -0,0 +1,211 @@
1
+ import { createElementBlock as d, openBlock as c, createElementVNode as a, defineComponent as T, ref as v, computed as w, Fragment as F, createCommentVNode as C, withModifiers as f, normalizeClass as M, createVNode as x, renderSlot as $, unref as b, createTextVNode as A, toDisplayString as g, renderList as N } from "vue";
2
+ import { r as X } from "./XMarkIcon-Cwy3T6p8.js";
3
+ function G(r, h) {
4
+ return c(), d("svg", {
5
+ xmlns: "http://www.w3.org/2000/svg",
6
+ fill: "none",
7
+ viewBox: "0 0 24 24",
8
+ "stroke-width": "1.5",
9
+ stroke: "currentColor",
10
+ "aria-hidden": "true",
11
+ "data-slot": "icon"
12
+ }, [
13
+ a("path", {
14
+ "stroke-linecap": "round",
15
+ "stroke-linejoin": "round",
16
+ d: "M12 16.5V9.75m0 0 3 3m-3-3-3 3M6.75 19.5a4.5 4.5 0 0 1-1.41-8.775 5.25 5.25 0 0 1 10.233-2.33 3 3 0 0 1 3.758 3.848A3.752 3.752 0 0 1 18 19.5H6.75Z"
17
+ })
18
+ ]);
19
+ }
20
+ function L(r, h) {
21
+ return c(), d("svg", {
22
+ xmlns: "http://www.w3.org/2000/svg",
23
+ fill: "none",
24
+ viewBox: "0 0 24 24",
25
+ "stroke-width": "1.5",
26
+ stroke: "currentColor",
27
+ "aria-hidden": "true",
28
+ "data-slot": "icon"
29
+ }, [
30
+ a("path", {
31
+ "stroke-linecap": "round",
32
+ "stroke-linejoin": "round",
33
+ d: "M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z"
34
+ })
35
+ ]);
36
+ }
37
+ const O = { class: "sl-flex sl-flex-col sl-items-center sl-justify-center sl-py-5" }, H = { class: "sl-text-xs sl-text-gray-400 dark:sl-text-slate-300" }, W = {
38
+ key: 0,
39
+ class: "sl-mt-4 sl-w-full sl-px-4"
40
+ }, Z = { class: "sl-flex sl-flex-wrap sl-gap-2 sl-justify-center" }, R = { class: "sl-text-xs sl-text-gray-600 dark:sl-text-slate-200 sl-truncate sl-max-w-[120px]" }, J = ["onClick"], U = ["accept", "multiple", "disabled"], q = {
41
+ key: 0,
42
+ class: "sl-mt-2 sl-text-sm sl-text-red-600 dark:sl-text-red-400"
43
+ }, le = /* @__PURE__ */ T({
44
+ __name: "FileDropzoneInput",
45
+ props: {
46
+ /** Allow multiple file selection */
47
+ enableMultiple: {
48
+ type: Boolean,
49
+ default: !1
50
+ },
51
+ /** Accepted MIME types */
52
+ acceptedFormats: {
53
+ type: Array,
54
+ default: () => ["image/jpeg", "image/png", "image/gif", "application/pdf"]
55
+ },
56
+ /** Maximum file size in MB */
57
+ maximumFileSize: {
58
+ type: Number,
59
+ default: 10
60
+ },
61
+ /** Disable the dropzone */
62
+ disabled: {
63
+ type: Boolean,
64
+ default: !1
65
+ },
66
+ /** Custom ring/border classes */
67
+ ringClasses: {
68
+ type: String,
69
+ default: ""
70
+ },
71
+ /** Height of the dropzone */
72
+ height: {
73
+ type: String,
74
+ default: "md"
75
+ }
76
+ },
77
+ emits: ["update:files", "error"],
78
+ setup(r, { expose: h, emit: D }) {
79
+ const B = {
80
+ "image/jpeg": "JPG",
81
+ "image/png": "PNG",
82
+ "image/gif": "GIF",
83
+ "image/webp": "WEBP",
84
+ "image/svg+xml": "SVG",
85
+ "application/pdf": "PDF",
86
+ "application/msword": "DOC",
87
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "DOCX",
88
+ "application/vnd.ms-excel": "XLS",
89
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "XLSX",
90
+ "text/csv": "CSV",
91
+ "text/plain": "TXT",
92
+ "application/zip": "ZIP",
93
+ "video/mp4": "MP4",
94
+ "video/webm": "WEBM",
95
+ "audio/mpeg": "MP3",
96
+ "audio/wav": "WAV"
97
+ }, t = r, m = D, u = v(null), l = v([]), p = v(!1), i = v(""), S = w(() => {
98
+ const e = {
99
+ sm: "sl-h-32",
100
+ md: "sl-h-48",
101
+ lg: "sl-h-64",
102
+ auto: "sl-min-h-[128px]"
103
+ };
104
+ return e[t.height] || e.md;
105
+ }), _ = w(() => t.acceptedFormats.map((e) => B[e] || e.split("/")[1]?.toUpperCase()).filter(Boolean).join(", ")), y = (e) => {
106
+ const s = [], o = t.maximumFileSize * 1024 * 1024;
107
+ return Array.from(e).forEach((n) => {
108
+ if (!t.acceptedFormats.includes(n.type)) {
109
+ i.value = `File type "${n.type}" is not accepted`, m("error", i.value);
110
+ return;
111
+ }
112
+ if (n.size > o) {
113
+ i.value = `File "${n.name}" exceeds the maximum size of ${t.maximumFileSize}MB`, m("error", i.value);
114
+ return;
115
+ }
116
+ s.push(n);
117
+ }), s.length > 0 && (i.value = ""), s;
118
+ }, j = (e) => {
119
+ const s = e.target.files;
120
+ if (s) {
121
+ const o = y(s);
122
+ o.length > 0 && (t.enableMultiple ? l.value = [...l.value, ...o] : l.value = o.slice(0, 1), m("update:files", l.value));
123
+ }
124
+ u.value && (u.value.value = "");
125
+ }, z = (e) => {
126
+ if (p.value = !1, !t.disabled && e.dataTransfer?.files) {
127
+ const s = y(e.dataTransfer.files);
128
+ s.length > 0 && (t.enableMultiple ? l.value = [...l.value, ...s] : l.value = s.slice(0, 1), m("update:files", l.value));
129
+ }
130
+ }, V = () => {
131
+ t.disabled || (p.value = !0);
132
+ }, E = () => {
133
+ t.disabled || (p.value = !0);
134
+ }, I = () => {
135
+ p.value = !1;
136
+ }, k = () => {
137
+ t.disabled || u.value?.click();
138
+ }, P = (e) => {
139
+ l.value.splice(e, 1), m("update:files", l.value);
140
+ };
141
+ return h({ clearFiles: () => {
142
+ l.value = [], i.value = "", u.value && (u.value.value = "");
143
+ }, triggerFileInputClick: k }), (e, s) => (c(), d(F, null, [
144
+ a("div", {
145
+ class: M([
146
+ "sl-flex sl-flex-col sl-items-center sl-justify-center sl-w-full sl-rounded-lg sl-cursor-pointer sl-transition-colors",
147
+ "sl-bg-gray-50 dark:sl-bg-slate-800/50 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-800",
148
+ r.ringClasses ? r.ringClasses : "sl-border-2 sl-border-dashed sl-border-gray-300 dark:sl-border-slate-600",
149
+ { "sl-opacity-50 sl-cursor-not-allowed": r.disabled },
150
+ { "sl-border-primary-500 sl-bg-primary-50 dark:sl-bg-primary-900/20": p.value },
151
+ S.value
152
+ ]),
153
+ onClick: k,
154
+ onDragover: f(V, ["prevent"]),
155
+ onDragenter: f(E, ["prevent"]),
156
+ onDragleave: f(I, ["prevent"]),
157
+ onDrop: f(z, ["prevent"])
158
+ }, [
159
+ a("div", O, [
160
+ x(b(G), {
161
+ class: M([
162
+ "sl-h-10 sl-w-10 sl-mb-3",
163
+ p.value ? "sl-text-primary-500" : "sl-text-gray-400 dark:sl-text-slate-300"
164
+ ]),
165
+ "aria-hidden": "true"
166
+ }, null, 8, ["class"]),
167
+ $(e.$slots, "default", {}, () => [
168
+ s[0] || (s[0] = a("p", { class: "sl-mb-2 sl-text-sm sl-text-gray-500 dark:sl-text-slate-300" }, [
169
+ a("span", { class: "sl-font-semibold" }, "Click to upload"),
170
+ A(" or drag and drop ")
171
+ ], -1)),
172
+ a("p", H, g(_.value) + " (MAX. " + g(r.maximumFileSize) + "MB) ", 1)
173
+ ]),
174
+ l.value.length > 0 ? (c(), d("div", W, [
175
+ a("div", Z, [
176
+ (c(!0), d(F, null, N(l.value, (o, n) => (c(), d("div", {
177
+ key: n,
178
+ class: "sl-flex sl-items-center sl-gap-2 sl-bg-white dark:sl-bg-slate-700 sl-rounded-md sl-px-3 sl-py-1.5 sl-shadow-sm sl-border sl-border-gray-200 dark:sl-border-slate-600"
179
+ }, [
180
+ x(b(L), { class: "sl-h-4 sl-w-4 sl-text-gray-400 dark:sl-text-slate-300" }),
181
+ a("span", R, g(o.name), 1),
182
+ a("button", {
183
+ type: "button",
184
+ class: "sl-text-gray-400 hover:sl-text-red-500 dark:sl-text-slate-300 dark:hover:sl-text-red-400 sl-transition-colors sl-p-0 sl-border-0 sl-bg-transparent sl-cursor-pointer",
185
+ onClick: f((Q) => P(n), ["stop"])
186
+ }, [
187
+ x(b(X), { class: "sl-h-4 sl-w-4" })
188
+ ], 8, J)
189
+ ]))), 128))
190
+ ])
191
+ ])) : C("", !0)
192
+ ]),
193
+ a("input", {
194
+ ref_key: "fileInputRef",
195
+ ref: u,
196
+ type: "file",
197
+ class: "sl-hidden",
198
+ accept: r.acceptedFormats.join(", "),
199
+ multiple: r.enableMultiple,
200
+ disabled: r.disabled,
201
+ onChange: j
202
+ }, null, 40, U)
203
+ ], 34),
204
+ i.value ? (c(), d("p", q, g(i.value), 1)) : C("", !0)
205
+ ], 64));
206
+ }
207
+ });
208
+ export {
209
+ le as _
210
+ };
211
+ //# sourceMappingURL=FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileDropzoneInput.vue_vue_type_script_setup_true_lang-CclXceTb.js","sources":["../node_modules/@heroicons/vue/24/outline/esm/CloudArrowUpIcon.js","../node_modules/@heroicons/vue/24/outline/esm/DocumentIcon.js","../src/components/inputs/FileDropzoneInput.vue"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M12 16.5V9.75m0 0 3 3m-3-3-3 3M6.75 19.5a4.5 4.5 0 0 1-1.41-8.775 5.25 5.25 0 0 1 10.233-2.33 3 3 0 0 1 3.758 3.848A3.752 3.752 0 0 1 18 19.5H6.75Z\"\n })\n ]))\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z\"\n })\n ]))\n}","<template>\n <div\n :class=\"[\n 'sl-flex sl-flex-col sl-items-center sl-justify-center sl-w-full sl-rounded-lg sl-cursor-pointer sl-transition-colors',\n 'sl-bg-gray-50 dark:sl-bg-slate-800/50 hover:sl-bg-gray-100 dark:hover:sl-bg-slate-800',\n ringClasses ? ringClasses : 'sl-border-2 sl-border-dashed sl-border-gray-300 dark:sl-border-slate-600',\n { 'sl-opacity-50 sl-cursor-not-allowed': disabled },\n { 'sl-border-primary-500 sl-bg-primary-50 dark:sl-bg-primary-900/20': isDragOver },\n heightClass\n ]\"\n @click=\"triggerFileInputClick\"\n @dragover.prevent=\"handleDragOver\"\n @dragenter.prevent=\"handleDragEnter\"\n @dragleave.prevent=\"handleDragLeave\"\n @drop.prevent=\"handleDrop\"\n >\n <div class=\"sl-flex sl-flex-col sl-items-center sl-justify-center sl-py-5\">\n <CloudArrowUpIcon\n :class=\"[\n 'sl-h-10 sl-w-10 sl-mb-3',\n isDragOver ? 'sl-text-primary-500' : 'sl-text-gray-400 dark:sl-text-slate-300'\n ]\"\n aria-hidden=\"true\"\n />\n \n <slot>\n <p class=\"sl-mb-2 sl-text-sm sl-text-gray-500 dark:sl-text-slate-300\">\n <span class=\"sl-font-semibold\">Click to upload</span> or drag and drop\n </p>\n <p class=\"sl-text-xs sl-text-gray-400 dark:sl-text-slate-300\">\n {{ acceptedFormatsText }} (MAX. {{ maximumFileSize }}MB)\n </p>\n </slot>\n \n <!-- Selected files preview -->\n <div v-if=\"selectedFiles.length > 0\" class=\"sl-mt-4 sl-w-full sl-px-4\">\n <div class=\"sl-flex sl-flex-wrap sl-gap-2 sl-justify-center\">\n <div\n v-for=\"(file, index) in selectedFiles\"\n :key=\"index\"\n class=\"sl-flex sl-items-center sl-gap-2 sl-bg-white dark:sl-bg-slate-700 sl-rounded-md sl-px-3 sl-py-1.5 sl-shadow-sm sl-border sl-border-gray-200 dark:sl-border-slate-600\"\n >\n <DocumentIcon class=\"sl-h-4 sl-w-4 sl-text-gray-400 dark:sl-text-slate-300\" />\n <span class=\"sl-text-xs sl-text-gray-600 dark:sl-text-slate-200 sl-truncate sl-max-w-[120px]\">{{ file.name }}</span>\n <button\n type=\"button\"\n class=\"sl-text-gray-400 hover:sl-text-red-500 dark:sl-text-slate-300 dark:hover:sl-text-red-400 sl-transition-colors sl-p-0 sl-border-0 sl-bg-transparent sl-cursor-pointer\"\n @click.stop=\"removeFile(index)\"\n >\n <XMarkIcon class=\"sl-h-4 sl-w-4\" />\n </button>\n </div>\n </div>\n </div>\n </div>\n \n <input\n ref=\"fileInputRef\"\n type=\"file\"\n class=\"sl-hidden\"\n :accept=\"acceptedFormats.join(', ')\"\n :multiple=\"enableMultiple\"\n :disabled=\"disabled\"\n @change=\"handleInputFileChange\"\n />\n </div>\n \n <!-- Error message -->\n <p v-if=\"errorMessage\" class=\"sl-mt-2 sl-text-sm sl-text-red-600 dark:sl-text-red-400\">\n {{ errorMessage }}\n </p>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, type PropType } from 'vue';\nimport { CloudArrowUpIcon, DocumentIcon, XMarkIcon } from '@heroicons/vue/24/outline';\n\nexport type AcceptedFileType = \n | 'image/jpeg'\n | 'image/png'\n | 'image/gif'\n | 'image/webp'\n | 'image/svg+xml'\n | 'application/pdf'\n | 'application/msword'\n | 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n | 'application/vnd.ms-excel'\n | 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n | 'text/csv'\n | 'text/plain'\n | 'application/zip'\n | 'video/mp4'\n | 'video/webm'\n | 'audio/mpeg'\n | 'audio/wav';\n\nconst mimeToExtension: Record<string, string> = {\n 'image/jpeg': 'JPG',\n 'image/png': 'PNG',\n 'image/gif': 'GIF',\n 'image/webp': 'WEBP',\n 'image/svg+xml': 'SVG',\n 'application/pdf': 'PDF',\n 'application/msword': 'DOC',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'DOCX',\n 'application/vnd.ms-excel': 'XLS',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'XLSX',\n 'text/csv': 'CSV',\n 'text/plain': 'TXT',\n 'application/zip': 'ZIP',\n 'video/mp4': 'MP4',\n 'video/webm': 'WEBM',\n 'audio/mpeg': 'MP3',\n 'audio/wav': 'WAV',\n};\n\nconst props = defineProps({\n /** Allow multiple file selection */\n enableMultiple: {\n type: Boolean,\n default: false,\n },\n /** Accepted MIME types */\n acceptedFormats: {\n type: Array as PropType<AcceptedFileType[]>,\n default: () => ['image/jpeg', 'image/png', 'image/gif', 'application/pdf'],\n },\n /** Maximum file size in MB */\n maximumFileSize: {\n type: Number,\n default: 10,\n },\n /** Disable the dropzone */\n disabled: {\n type: Boolean,\n default: false,\n },\n /** Custom ring/border classes */\n ringClasses: {\n type: String,\n default: '',\n },\n /** Height of the dropzone */\n height: {\n type: String as PropType<'sm' | 'md' | 'lg' | 'auto'>,\n default: 'md',\n },\n});\n\nconst emit = defineEmits<{\n (e: 'update:files', files: FileList | File[]): void;\n (e: 'error', message: string): void;\n}>();\n\nconst fileInputRef = ref<HTMLInputElement | null>(null);\nconst selectedFiles = ref<File[]>([]);\nconst isDragOver = ref(false);\nconst errorMessage = ref('');\n\nconst heightClass = computed(() => {\n const heights: Record<string, string> = {\n sm: 'sl-h-32',\n md: 'sl-h-48',\n lg: 'sl-h-64',\n auto: 'sl-min-h-[128px]',\n };\n return heights[props.height] || heights.md;\n});\n\nconst acceptedFormatsText = computed(() => {\n return props.acceptedFormats\n .map(format => mimeToExtension[format] || format.split('/')[1]?.toUpperCase())\n .filter(Boolean)\n .join(', ');\n});\n\nconst validateFiles = (files: FileList | File[]): File[] => {\n const validFiles: File[] = [];\n const maxBytes = props.maximumFileSize * 1024 * 1024;\n \n Array.from(files).forEach(file => {\n // Check file type\n if (!props.acceptedFormats.includes(file.type as AcceptedFileType)) {\n errorMessage.value = `File type \"${file.type}\" is not accepted`;\n emit('error', errorMessage.value);\n return;\n }\n \n // Check file size\n if (file.size > maxBytes) {\n errorMessage.value = `File \"${file.name}\" exceeds the maximum size of ${props.maximumFileSize}MB`;\n emit('error', errorMessage.value);\n return;\n }\n \n validFiles.push(file);\n });\n \n if (validFiles.length > 0) {\n errorMessage.value = '';\n }\n \n return validFiles;\n};\n\nconst handleInputFileChange = (event: Event) => {\n const files = (event.target as HTMLInputElement).files;\n if (files) {\n const validFiles = validateFiles(files);\n if (validFiles.length > 0) {\n if (props.enableMultiple) {\n selectedFiles.value = [...selectedFiles.value, ...validFiles];\n } else {\n selectedFiles.value = validFiles.slice(0, 1);\n }\n emit('update:files', selectedFiles.value);\n }\n }\n \n // Reset input so same file can be selected again\n if (fileInputRef.value) {\n fileInputRef.value.value = '';\n }\n};\n\nconst handleDrop = (event: DragEvent) => {\n isDragOver.value = false;\n \n if (props.disabled) return;\n \n if (event.dataTransfer?.files) {\n const validFiles = validateFiles(event.dataTransfer.files);\n if (validFiles.length > 0) {\n if (props.enableMultiple) {\n selectedFiles.value = [...selectedFiles.value, ...validFiles];\n } else {\n selectedFiles.value = validFiles.slice(0, 1);\n }\n emit('update:files', selectedFiles.value);\n }\n }\n};\n\nconst handleDragOver = () => {\n if (!props.disabled) {\n isDragOver.value = true;\n }\n};\n\nconst handleDragEnter = () => {\n if (!props.disabled) {\n isDragOver.value = true;\n }\n};\n\nconst handleDragLeave = () => {\n isDragOver.value = false;\n};\n\nconst triggerFileInputClick = () => {\n if (!props.disabled) {\n fileInputRef.value?.click();\n }\n};\n\nconst removeFile = (index: number) => {\n selectedFiles.value.splice(index, 1);\n emit('update:files', selectedFiles.value);\n};\n\nconst clearFiles = () => {\n selectedFiles.value = [];\n errorMessage.value = '';\n if (fileInputRef.value) {\n fileInputRef.value.value = '';\n }\n};\n\n// Expose methods\ndefineExpose({ clearFiles, triggerFileInputClick });\n</script>\n\n"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","mimeToExtension","props","__props","emit","__emit","fileInputRef","ref","selectedFiles","isDragOver","errorMessage","heightClass","computed","heights","acceptedFormatsText","format","validateFiles","files","validFiles","maxBytes","file","handleInputFileChange","event","handleDrop","handleDragOver","handleDragEnter","handleDragLeave","triggerFileInputClick","removeFile","index","__expose","_normalizeClass","_hoisted_1","_createVNode","_unref","CloudArrowUpIcon","_renderSlot","_hoisted_2","_toDisplayString","_hoisted_3","_hoisted_4","_Fragment","_renderList","DocumentIcon","_hoisted_5","_withModifiers","$event","XMarkIcon","_hoisted_8"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -0,0 +1,63 @@
1
+ import { defineComponent as v, computed as f, createElementBlock as c, openBlock as i, renderSlot as x, createElementVNode as l, createVNode as m, unref as s, withCtx as y, Fragment as _, renderList as g, toDisplayString as w } from "vue";
2
+ import { r as E } from "./ExclamationCircleIcon-DjxYk45_.js";
3
+ import { S as k } from "./transition-_rPfnoET.js";
4
+ const S = "sl-transition-all sl-duration-500 sl-overflow-hidden", b = "sl-transform sl-scale-95 sl-opacity-0 sl-max-h-0", B = "sl-transform sl-scale-100 sl-opacity-100 sl-max-h-96", F = "sl-transition-all sl-duration-500 sl-overflow-hidden", L = "sl-transform sl-scale-100 sl-opacity-100 sl-max-h-96", T = "sl-transform sl-scale-95 sl-opacity-0 sl-max-h-0", N = { class: "sl-mt-4" }, j = { class: "sl-flex sl-grow sl-rounded-md sl-bg-red-50 dark:sl-bg-red-900/20 sl-p-3 sl-text-sm sl-text-red-600 dark:sl-text-red-400 sl-ring-1 sl-ring-red-100 dark:sl-ring-red-800" }, C = { class: "sl-space-y-1" }, M = /* @__PURE__ */ v({
5
+ __name: "FormErrorWrapper",
6
+ props: {
7
+ errors: { default: () => ({}) },
8
+ show: { type: Boolean, default: !1 }
9
+ },
10
+ setup(u) {
11
+ const d = u, o = (t) => {
12
+ const r = [];
13
+ for (const n in t) {
14
+ const e = t[n];
15
+ if (typeof e == "string") {
16
+ try {
17
+ const a = JSON.parse(e);
18
+ if (typeof a == "object" && a !== null) {
19
+ r.push(...o(a));
20
+ continue;
21
+ }
22
+ } catch {
23
+ }
24
+ r.push(e);
25
+ } else typeof e == "object" && e !== null && r.push(...o(e));
26
+ }
27
+ return r;
28
+ }, p = f(() => o(d.errors).filter(Boolean)), h = f(() => d.show && p.value.length > 0);
29
+ return (t, r) => (i(), c("div", null, [
30
+ x(t.$slots, "default"),
31
+ l("div", N, [
32
+ m(s(k), {
33
+ show: h.value,
34
+ enter: s(S),
35
+ "enter-from": s(b),
36
+ "enter-to": s(B),
37
+ leave: s(F),
38
+ "leave-from": s(L),
39
+ "leave-to": s(T)
40
+ }, {
41
+ default: y(() => [
42
+ l("div", j, [
43
+ l("ul", C, [
44
+ (i(!0), c(_, null, g(p.value, (n, e) => (i(), c("li", {
45
+ key: e,
46
+ class: "sl-flex sl-items-center sl-gap-2"
47
+ }, [
48
+ m(s(E), { class: "sl-h-4 sl-w-4 sl-flex-shrink-0" }),
49
+ l("span", null, w(n), 1)
50
+ ]))), 128))
51
+ ])
52
+ ])
53
+ ]),
54
+ _: 1
55
+ }, 8, ["show", "enter", "enter-from", "enter-to", "leave", "leave-from", "leave-to"])
56
+ ])
57
+ ]));
58
+ }
59
+ });
60
+ export {
61
+ M as _
62
+ };
63
+ //# sourceMappingURL=FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormErrorWrapper.vue_vue_type_script_setup_true_lang-BQOlG_ab.js","sources":["../src/utils/transitions.ts","../src/components/wrappers/FormErrorWrapper.vue"],"sourcesContent":["/**\n * Transition class utilities for HeadlessUI components\n */\n\n// Standard enter/leave transitions\nexport const enterTransitionClasses = 'sl-transition sl-ease-out sl-duration-300';\nexport const enterFromTransitionClasses = 'sl-opacity-0 sl-translate-y-4 sm:sl-translate-y-0 sm:sl-scale-95';\nexport const enterToTransitionClasses = 'sl-opacity-100 sl-translate-y-0 sm:sl-scale-100';\nexport const leaveTransitionClasses = 'sl-transition sl-ease-in sl-duration-200';\nexport const leaveFromTransitionClasses = 'sl-opacity-100 sl-translate-y-0 sm:sl-scale-100';\nexport const leaveToTransitionClasses = 'sl-opacity-0 sl-translate-y-4 sm:sl-translate-y-0 sm:sl-scale-95';\n\n// Fade transitions\nexport const fadeEnterTransition = 'sl-transition-opacity sl-ease-out sl-duration-300';\nexport const fadeEnterFrom = 'sl-opacity-0';\nexport const fadeEnterTo = 'sl-opacity-100';\nexport const fadeLeaveTransition = 'sl-transition-opacity sl-ease-in sl-duration-200';\nexport const fadeLeaveFrom = 'sl-opacity-100';\nexport const fadeLeaveTo = 'sl-opacity-0';\n\n// Slide transitions\nexport const slideEnterTransition = 'sl-transform sl-transition sl-ease-in-out sl-duration-300';\nexport const slideEnterFromLeft = '-sl-translate-x-full';\nexport const slideEnterFromRight = 'sl-translate-x-full';\nexport const slideEnterFromTop = '-sl-translate-y-full';\nexport const slideEnterFromBottom = 'sl-translate-y-full';\nexport const slideEnterTo = 'sl-translate-x-0 sl-translate-y-0';\nexport const slideLeaveTransition = 'sl-transform sl-transition sl-ease-in-out sl-duration-300';\nexport const slideLeaveFrom = 'sl-translate-x-0 sl-translate-y-0';\nexport const slideLeaveToLeft = '-sl-translate-x-full';\nexport const slideLeaveToRight = 'sl-translate-x-full';\nexport const slideLeaveToTop = '-sl-translate-y-full';\nexport const slideLeaveToBottom = 'sl-translate-y-full';\n\n// Scale transitions\nexport const scaleEnterTransition = 'sl-transition sl-ease-out sl-duration-200';\nexport const scaleEnterFrom = 'sl-opacity-0 sl-scale-95';\nexport const scaleEnterTo = 'sl-opacity-100 sl-scale-100';\nexport const scaleLeaveTransition = 'sl-transition sl-ease-in sl-duration-150';\nexport const scaleLeaveFrom = 'sl-opacity-100 sl-scale-100';\nexport const scaleLeaveTo = 'sl-opacity-0 sl-scale-95';\n\n// Height-based expand/collapse transitions (for FormErrorWrapper, accordions, etc.)\nexport const expandEnterTransition = 'sl-transition-all sl-duration-500 sl-overflow-hidden';\nexport const expandEnterFrom = 'sl-transform sl-scale-95 sl-opacity-0 sl-max-h-0';\nexport const expandEnterTo = 'sl-transform sl-scale-100 sl-opacity-100 sl-max-h-96';\nexport const expandLeaveTransition = 'sl-transition-all sl-duration-500 sl-overflow-hidden';\nexport const expandLeaveFrom = 'sl-transform sl-scale-100 sl-opacity-100 sl-max-h-96';\nexport const expandLeaveTo = 'sl-transform sl-scale-95 sl-opacity-0 sl-max-h-0';\n\n/**\n * Helper to create transition props for HeadlessUI components\n */\nexport interface TransitionProps {\n enter: string;\n enterFrom: string;\n enterTo: string;\n leave: string;\n leaveFrom: string;\n leaveTo: string;\n}\n\nexport function createFadeTransition(): TransitionProps {\n return {\n enter: fadeEnterTransition,\n enterFrom: fadeEnterFrom,\n enterTo: fadeEnterTo,\n leave: fadeLeaveTransition,\n leaveFrom: fadeLeaveFrom,\n leaveTo: fadeLeaveTo,\n };\n}\n\nexport function createScaleTransition(): TransitionProps {\n return {\n enter: scaleEnterTransition,\n enterFrom: scaleEnterFrom,\n enterTo: scaleEnterTo,\n leave: scaleLeaveTransition,\n leaveFrom: scaleLeaveFrom,\n leaveTo: scaleLeaveTo,\n };\n}\n\nexport function createSlideTransition(direction: 'left' | 'right' | 'top' | 'bottom' = 'left'): TransitionProps {\n const enterFrom = {\n left: slideEnterFromLeft,\n right: slideEnterFromRight,\n top: slideEnterFromTop,\n bottom: slideEnterFromBottom,\n }[direction];\n \n const leaveTo = {\n left: slideLeaveToLeft,\n right: slideLeaveToRight,\n top: slideLeaveToTop,\n bottom: slideLeaveToBottom,\n }[direction];\n \n return {\n enter: slideEnterTransition,\n enterFrom,\n enterTo: slideEnterTo,\n leave: slideLeaveTransition,\n leaveFrom: slideLeaveFrom,\n leaveTo,\n };\n}\n\nexport function createExpandTransition(): TransitionProps {\n return {\n enter: expandEnterTransition,\n enterFrom: expandEnterFrom,\n enterTo: expandEnterTo,\n leave: expandLeaveTransition,\n leaveFrom: expandLeaveFrom,\n leaveTo: expandLeaveTo,\n };\n}\n\n","<!--\n @component FormErrorWrapper\n @description Form error display container with transition.\n \n A wrapper that displays form validation errors in a styled container\n with smooth enter/leave transitions.\n \n @props\n - errors (object, optional): Object with error messages keyed by field name\n - show (boolean, optional): Whether to show the error container\n \n @slots\n - default: Content to wrap (usually the form)\n-->\n<template>\n <div>\n <slot />\n <div class=\"sl-mt-4\">\n <TransitionRoot \n :show=\"showErrors\" \n :enter=\"expandEnterTransition\"\n :enter-from=\"expandEnterFrom\"\n :enter-to=\"expandEnterTo\"\n :leave=\"expandLeaveTransition\"\n :leave-from=\"expandLeaveFrom\"\n :leave-to=\"expandLeaveTo\"\n >\n <div class=\"sl-flex sl-grow sl-rounded-md sl-bg-red-50 dark:sl-bg-red-900/20 sl-p-3 sl-text-sm sl-text-red-600 dark:sl-text-red-400 sl-ring-1 sl-ring-red-100 dark:sl-ring-red-800\">\n <ul class=\"sl-space-y-1\">\n <li \n v-for=\"(error, i) in formattedErrors\" \n :key=\"i\" \n class=\"sl-flex sl-items-center sl-gap-2\"\n >\n <ExclamationCircleIcon class=\"sl-h-4 sl-w-4 sl-flex-shrink-0\" />\n <span>{{ error }}</span>\n </li>\n </ul>\n </div>\n </TransitionRoot>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport { TransitionRoot } from '@headlessui/vue';\nimport { ExclamationCircleIcon } from '@heroicons/vue/24/outline';\nimport {\n expandEnterTransition,\n expandEnterFrom,\n expandEnterTo,\n expandLeaveTransition,\n expandLeaveFrom,\n expandLeaveTo,\n} from '../../utils/transitions';\n\ninterface Props {\n errors?: Record<string, string | undefined | Record<string, unknown>>;\n show?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n errors: () => ({}),\n show: false,\n});\n\n/**\n * Recursively flatten nested error objects into an array of strings\n */\nconst flattenErrors = (errors: Record<string, unknown>): string[] => {\n const errorMessages: string[] = [];\n \n for (const key in errors) {\n const value = errors[key];\n \n if (typeof value === 'string') {\n // Attempt to parse the string as JSON\n try {\n const parsed = JSON.parse(value);\n if (typeof parsed === 'object' && parsed !== null) {\n errorMessages.push(...flattenErrors(parsed as Record<string, unknown>));\n continue;\n }\n } catch {\n // Not a valid JSON string, it's a regular error message\n }\n errorMessages.push(value);\n } else if (typeof value === 'object' && value !== null) {\n errorMessages.push(...flattenErrors(value as Record<string, unknown>));\n }\n }\n \n return errorMessages;\n};\n\nconst formattedErrors = computed(() => {\n return flattenErrors(props.errors as Record<string, unknown>).filter(Boolean);\n});\n\nconst showErrors = computed(() => {\n return props.show && formattedErrors.value.length > 0;\n});\n</script>\n\n"],"names":["expandEnterTransition","expandEnterFrom","expandEnterTo","expandLeaveTransition","expandLeaveFrom","expandLeaveTo","props","__props","flattenErrors","errors","errorMessages","key","value","parsed","formattedErrors","computed","showErrors","_createElementBlock","_renderSlot","_ctx","_createElementVNode","_hoisted_1","_createVNode","_unref","TransitionRoot","_hoisted_2","_hoisted_3","_openBlock","_Fragment","_renderList","error","i","ExclamationCircleIcon"],"mappings":";;;AA2CO,MAAMA,IAAwB,wDACxBC,IAAkB,oDAClBC,IAAgB,wDAChBC,IAAwB,wDACxBC,IAAkB,wDAClBC,IAAgB;;;;;;;ACc7B,UAAMC,IAAQC,GAQRC,IAAgB,CAACC,MAA8C;AACnE,YAAMC,IAA0B,CAAA;AAEhC,iBAAWC,KAAOF,GAAQ;AACxB,cAAMG,IAAQH,EAAOE,CAAG;AAExB,YAAI,OAAOC,KAAU,UAAU;AAE7B,cAAI;AACF,kBAAMC,IAAS,KAAK,MAAMD,CAAK;AAC/B,gBAAI,OAAOC,KAAW,YAAYA,MAAW,MAAM;AACjD,cAAAH,EAAc,KAAK,GAAGF,EAAcK,CAAiC,CAAC;AACtE;AAAA,YACF;AAAA,UACF,QAAQ;AAAA,UAER;AACA,UAAAH,EAAc,KAAKE,CAAK;AAAA,QAC1B,MAAA,CAAW,OAAOA,KAAU,YAAYA,MAAU,QAChDF,EAAc,KAAK,GAAGF,EAAcI,CAAgC,CAAC;AAAA,MAEzE;AAEA,aAAOF;AAAA,IACT,GAEMI,IAAkBC,EAAS,MACxBP,EAAcF,EAAM,MAAiC,EAAE,OAAO,OAAO,CAC7E,GAEKU,IAAaD,EAAS,MACnBT,EAAM,QAAQQ,EAAgB,MAAM,SAAS,CACrD;2BAvFCG,EA0BM,OAAA,MAAA;AAAA,MAzBJC,EAAQC,EAAA,QAAA,SAAA;AAAA,MACRC,EAuBM,OAvBNC,GAuBM;AAAA,QAtBJC,EAqBiBC,EAAAC,CAAA,GAAA;AAAA,UApBd,MAAMR,EAAA;AAAA,UACN,OAAOO,EAAAvB,CAAA;AAAA,UACP,cAAYuB,EAAAtB,CAAA;AAAA,UACZ,YAAUsB,EAAArB,CAAA;AAAA,UACV,OAAOqB,EAAApB,CAAA;AAAA,UACP,cAAYoB,EAAAnB,CAAA;AAAA,UACZ,YAAUmB,EAAAlB,CAAA;AAAA,QAAA;qBAEX,MAWM;AAAA,YAXNe,EAWM,OAXNK,GAWM;AAAA,cAVJL,EASK,MATLM,GASK;AAAA,iBARHC,EAAA,EAAA,GAAAV,EAOKW,GAAA,MAAAC,EANkBf,EAAA,OAAe,CAA5BgB,GAAOC,YADjBd,EAOK,MAAA;AAAA,kBALF,KAAKc;AAAA,kBACN,OAAM;AAAA,gBAAA;kBAENT,EAAgEC,EAAAS,CAAA,GAAA,EAAzC,OAAM,kCAAgC;AAAA,kBAC7DZ,EAAwB,gBAAfU,CAAK,GAAA,CAAA;AAAA,gBAAA;;;;;;;;;;"}
@@ -0,0 +1,67 @@
1
+ import { defineComponent as n, computed as s, createBlock as f, openBlock as c, mergeProps as p } from "vue";
2
+ import d from "./charts/BaseChart.js";
3
+ import { chartColors as h } from "./charts/chartTheme.js";
4
+ const C = /* @__PURE__ */ n({
5
+ __name: "FunnelChart",
6
+ props: {
7
+ data: {},
8
+ title: {},
9
+ height: { default: 300 },
10
+ colors: { default: () => h.primary },
11
+ loading: { type: Boolean, default: !1 },
12
+ sort: { default: "descending" },
13
+ showLabels: { type: Boolean, default: !0 }
14
+ },
15
+ emits: ["click"],
16
+ setup(o, { emit: i }) {
17
+ const t = o, l = i, r = s(() => ({
18
+ title: t.title ? { text: t.title } : void 0,
19
+ tooltip: {
20
+ trigger: "item",
21
+ formatter: "{b}: {c}"
22
+ },
23
+ color: t.colors,
24
+ series: [{
25
+ type: "funnel",
26
+ left: "10%",
27
+ width: "80%",
28
+ minSize: "20%",
29
+ maxSize: "100%",
30
+ gap: 2,
31
+ sort: t.sort,
32
+ label: {
33
+ show: t.showLabels,
34
+ position: "inside",
35
+ color: "#ffffff",
36
+ fontSize: 12,
37
+ fontWeight: 500
38
+ },
39
+ labelLine: {
40
+ show: !1
41
+ },
42
+ itemStyle: {
43
+ borderColor: "#ffffff",
44
+ borderWidth: 1
45
+ },
46
+ emphasis: {
47
+ label: {
48
+ fontSize: 14,
49
+ fontWeight: 600
50
+ }
51
+ },
52
+ data: t.data
53
+ }]
54
+ })), a = (e) => {
55
+ l("click", e);
56
+ };
57
+ return (e, m) => (c(), f(d, p({
58
+ option: r.value,
59
+ height: e.height,
60
+ loading: e.loading
61
+ }, e.$attrs, { onClick: a }), null, 16, ["option", "height", "loading"]));
62
+ }
63
+ });
64
+ export {
65
+ C as _
66
+ };
67
+ //# sourceMappingURL=FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunnelChart.vue_vue_type_script_setup_true_lang-B8QYlJ-s.js","sources":["../src/components/charts/FunnelChart.vue"],"sourcesContent":["<!--\n @component FunnelChart\n @description Funnel chart for conversion/flow visualization.\n \n @props\n - data (array, required): Array of {name, value} objects\n - title (string, optional): Chart title\n - height (number|string, optional): Chart height\n - colors (array, optional): Custom color palette\n - sort (string, optional): Sort order - 'ascending' | 'descending' | 'none'\n \n @example\n <FunnelChart\n :data=\"[\n { name: 'Visits', value: 5000 },\n { name: 'Signups', value: 3000 },\n { name: 'Purchases', value: 1000 }\n ]\"\n title=\"Conversion Funnel\"\n />\n-->\n<template>\n <BaseChart\n :option=\"chartOption\"\n :height=\"height\"\n :loading=\"loading\"\n v-bind=\"$attrs\"\n @click=\"handleClick\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BaseChart from './BaseChart.vue';\nimport { chartColors } from './chartTheme';\nimport type { EChartsOption } from 'echarts';\n\ninterface FunnelDataItem {\n name: string;\n value: number;\n}\n\ninterface Props {\n data: FunnelDataItem[];\n title?: string;\n height?: number | string;\n colors?: string[];\n loading?: boolean;\n sort?: 'ascending' | 'descending' | 'none';\n showLabels?: boolean;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n height: 300,\n colors: () => chartColors.primary,\n loading: false,\n sort: 'descending',\n showLabels: true,\n});\n\nconst emit = defineEmits<{\n click: [params: unknown];\n}>();\n\nconst chartOption = computed<EChartsOption>(() => {\n return {\n title: props.title ? { text: props.title } : undefined,\n tooltip: {\n trigger: 'item',\n formatter: '{b}: {c}',\n },\n color: props.colors,\n series: [{\n type: 'funnel',\n left: '10%',\n width: '80%',\n minSize: '20%',\n maxSize: '100%',\n gap: 2,\n sort: props.sort,\n label: {\n show: props.showLabels,\n position: 'inside',\n color: '#ffffff',\n fontSize: 12,\n fontWeight: 500,\n },\n labelLine: {\n show: false,\n },\n itemStyle: {\n borderColor: '#ffffff',\n borderWidth: 1,\n },\n emphasis: {\n label: {\n fontSize: 14,\n fontWeight: 600,\n },\n },\n data: props.data,\n }],\n };\n});\n\nconst handleClick = (params: unknown): void => {\n emit('click', params);\n};\n</script>\n\n"],"names":["props","__props","emit","__emit","chartOption","computed","handleClick","params","_openBlock","_createBlock","BaseChart","_mergeProps","height","loading","$attrs"],"mappings":";;;;;;;;;;;;;;;;AAoDA,UAAMA,IAAQC,GAQRC,IAAOC,GAIPC,IAAcC,EAAwB,OACnC;AAAA,MACL,OAAOL,EAAM,QAAQ,EAAE,MAAMA,EAAM,UAAU;AAAA,MAC7C,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAEb,OAAOA,EAAM;AAAA,MACb,QAAQ,CAAC;AAAA,QACP,MAAM;AAAA,QACN,MAAM;AAAA,QACN,OAAO;AAAA,QACP,SAAS;AAAA,QACT,SAAS;AAAA,QACT,KAAK;AAAA,QACL,MAAMA,EAAM;AAAA,QACZ,OAAO;AAAA,UACL,MAAMA,EAAM;AAAA,UACZ,UAAU;AAAA,UACV,OAAO;AAAA,UACP,UAAU;AAAA,UACV,YAAY;AAAA,QAAA;AAAA,QAEd,WAAW;AAAA,UACT,MAAM;AAAA,QAAA;AAAA,QAER,WAAW;AAAA,UACT,aAAa;AAAA,UACb,aAAa;AAAA,QAAA;AAAA,QAEf,UAAU;AAAA,UACR,OAAO;AAAA,YACL,UAAU;AAAA,YACV,YAAY;AAAA,UAAA;AAAA,QACd;AAAA,QAEF,MAAMA,EAAM;AAAA,MAAA,CACb;AAAA,IAAA,EAEJ,GAEKM,IAAc,CAACC,MAA0B;AAC7C,MAAAL,EAAK,SAASK,CAAM;AAAA,IACtB;sBArFEC,EAAA,GAAAC,EAMEC,GANFC,EAME;AAAA,MALC,QAAQP,EAAA;AAAA,MACR,QAAQQ,EAAAA;AAAAA,MACR,SAASC,EAAAA;AAAAA,IAAAA,GACFC,EAAAA,QAAM,EACb,SAAOR,EAAA,CAAW,GAAA,MAAA,IAAA,CAAA,UAAA,UAAA,SAAA,CAAA;AAAA;;"}
@@ -0,0 +1,22 @@
1
+ import { defineComponent as t, createElementBlock as a, openBlock as p, unref as r } from "vue";
2
+ import { g as m } from "./id-DafBB_QF.js";
3
+ const s = ["name", "id", "value"], c = /* @__PURE__ */ t({
4
+ __name: "HiddenInput",
5
+ props: {
6
+ name: {},
7
+ value: { default: "" }
8
+ },
9
+ setup(n) {
10
+ const o = m(`sl-${n.name}`);
11
+ return (e, d) => (p(), a("input", {
12
+ name: e.name,
13
+ id: r(o),
14
+ type: "hidden",
15
+ value: e.value
16
+ }, null, 8, s));
17
+ }
18
+ });
19
+ export {
20
+ c as _
21
+ };
22
+ //# sourceMappingURL=HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenInput.vue_vue_type_script_setup_true_lang-DYdvWmVE.js","sources":["../src/components/inputs/HiddenInput.vue"],"sourcesContent":["<!--\n @component HiddenInput\n @description Hidden input for storing form data without display.\n \n A simple hidden input element for storing values in forms that don't\n need to be visible to the user. Useful for tracking IDs, tokens, or\n other metadata within form submissions.\n \n @props\n - name (string, required): Field name for form binding\n - value (string, optional): The hidden value\n \n @example\n <HiddenInput name=\"userId\" :value=\"user.id\" />\n-->\n<template>\n <input \n :name=\"name\" \n :id=\"id\" \n type=\"hidden\" \n :value=\"value\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { generateId } from '../../utils/id'\n\ninterface Props {\n name: string\n value?: string\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n value: ''\n})\n\nconst id = generateId(`sl-${props.name}`)\n</script>\n\n"],"names":["id","generateId","__props","_createElementBlock","name","_unref","value"],"mappings":";;;;;;;;;AAoCA,UAAMA,IAAKC,EAAW,MAJRC,EAIoB,IAAI,EAAE;2BApBtCC,EAKE,SAAA;AAAA,MAJC,MAAMC,EAAAA;AAAAA,MACN,IAAIC,EAAAL,CAAA;AAAA,MACL,MAAK;AAAA,MACJ,OAAOM,EAAAA;AAAAA,IAAAA;;;"}
@@ -0,0 +1,40 @@
1
+ import { createElementBlock as e, openBlock as r, createElementVNode as o } from "vue";
2
+ function i(t, n) {
3
+ return r(), e("svg", {
4
+ xmlns: "http://www.w3.org/2000/svg",
5
+ fill: "none",
6
+ viewBox: "0 0 24 24",
7
+ "stroke-width": "1.5",
8
+ stroke: "currentColor",
9
+ "aria-hidden": "true",
10
+ "data-slot": "icon"
11
+ }, [
12
+ o("path", {
13
+ "stroke-linecap": "round",
14
+ "stroke-linejoin": "round",
15
+ d: "M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"
16
+ })
17
+ ]);
18
+ }
19
+ function l(t, n) {
20
+ return r(), e("svg", {
21
+ xmlns: "http://www.w3.org/2000/svg",
22
+ fill: "none",
23
+ viewBox: "0 0 24 24",
24
+ "stroke-width": "1.5",
25
+ stroke: "currentColor",
26
+ "aria-hidden": "true",
27
+ "data-slot": "icon"
28
+ }, [
29
+ o("path", {
30
+ "stroke-linecap": "round",
31
+ "stroke-linejoin": "round",
32
+ d: "m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"
33
+ })
34
+ ]);
35
+ }
36
+ export {
37
+ i as a,
38
+ l as r
39
+ };
40
+ //# sourceMappingURL=InformationCircleIcon-B322GNIt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InformationCircleIcon-B322GNIt.js","sources":["../node_modules/@heroicons/vue/24/outline/esm/CheckCircleIcon.js","../node_modules/@heroicons/vue/24/outline/esm/InformationCircleIcon.js"],"sourcesContent":["import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z\"\n })\n ]))\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport default function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n \"stroke-width\": \"1.5\",\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\"\n }, [\n _createElementVNode(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z\"\n })\n ]))\n}"],"names":["render","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode"],"mappings":";AAEe,SAASA,EAAOC,GAAMC,GAAQ;AAC3C,SAAQC,EAAU,GAAIC,EAAoB,OAAO;AAAA,IAC/C,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,aAAa;AAAA,EACjB,GAAK;AAAA,IACDC,EAAoB,QAAQ;AAAA,MAC1B,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,GAAG;AAAA,IACT,CAAK;AAAA,EACL,CAAG;AACH;AChBe,SAASL,EAAOC,GAAMC,GAAQ;AAC3C,SAAQC,EAAU,GAAIC,EAAoB,OAAO;AAAA,IAC/C,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,aAAa;AAAA,EACjB,GAAK;AAAA,IACDC,EAAoB,QAAQ;AAAA,MAC1B,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,GAAG;AAAA,IACT,CAAK;AAAA,EACL,CAAG;AACH;","x_google_ignoreList":[0,1]}
@@ -0,0 +1,93 @@
1
+ import { defineComponent as w, createElementBlock as s, openBlock as t, createCommentVNode as o, createElementVNode as r, createVNode as I, unref as l, toDisplayString as n, Fragment as d, renderList as m, normalizeClass as u, withModifiers as V, createTextVNode as N, renderSlot as h } from "vue";
2
+ import { _ as S } from "./SelectInput.vue_vue_type_script_setup_true_lang--yUL7bcx.js";
3
+ import { u as $ } from "./useSimpleTabs-CSgkChEU.js";
4
+ const B = { class: "sl-w-full" }, M = {
5
+ key: 0,
6
+ class: "sl-block sm:sl-hidden sl-mb-4"
7
+ }, E = { class: "sl-hidden sm:sl-block" }, O = { class: "sl-border-b sl-border-gray-200 dark:sl-border-slate-700 sm:sl-flex sm:sl-items-baseline" }, U = {
8
+ key: 0,
9
+ class: "sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800 dark:sl-text-white"
10
+ }, z = { class: "sl-mt-4 sm:sl-ml-10 sm:sl-mt-0" }, A = { class: "sl--mb-px sl-flex sl-space-x-8" }, D = ["onClick", "aria-current"], F = { class: "sl-mt-4" }, L = { key: 0 }, K = /* @__PURE__ */ w({
11
+ __name: "InlineTabs",
12
+ props: {
13
+ tabs: {},
14
+ title: {},
15
+ dropdownOnMobile: { type: Boolean, default: !0 },
16
+ badgeTheme: { default: "primary" }
17
+ },
18
+ emits: ["tab-changed"],
19
+ setup(p, { emit: b }) {
20
+ const c = p, k = b, {
21
+ localTabs: i,
22
+ selectInputItems: g,
23
+ selectedTabItem: _,
24
+ setActiveTab: x,
25
+ handleSelectInputChange: f,
26
+ hasCount: y,
27
+ slots: v,
28
+ selectId: T
29
+ } = $({
30
+ getTabs: () => c.tabs,
31
+ onTabChange: (a) => k("tab-changed", a),
32
+ includeCountInName: !0,
33
+ badgeTheme: c.badgeTheme
34
+ });
35
+ return (a, j) => (t(), s("div", B, [
36
+ a.dropdownOnMobile ? (t(), s("div", M, [
37
+ I(S, {
38
+ name: l(T),
39
+ label: a.title,
40
+ items: l(g),
41
+ "model-value": l(_),
42
+ "item-key": "index",
43
+ "item-text": "name",
44
+ placeholder: "Select tab",
45
+ "onUpdate:modelValue": l(f)
46
+ }, null, 8, ["name", "label", "items", "model-value", "onUpdate:modelValue"])
47
+ ])) : o("", !0),
48
+ r("div", E, [
49
+ r("div", O, [
50
+ a.title ? (t(), s("h3", U, n(a.title), 1)) : o("", !0),
51
+ r("div", z, [
52
+ r("nav", A, [
53
+ (t(!0), s(d, null, m(l(i), (e, C) => (t(), s("a", {
54
+ key: e.name,
55
+ href: "#",
56
+ onClick: V((q) => l(x)(C), ["prevent"]),
57
+ class: u([
58
+ e.current ? "sl-border-stachelock-600 sl-text-stachelock-600 dark:sl-text-stachelock-400" : "sl-border-transparent sl-text-gray-500 dark:sl-text-slate-400 hover:sl-border-gray-300 dark:hover:sl-border-slate-600 hover:sl-text-gray-700 dark:hover:sl-text-slate-300",
59
+ "sl-whitespace-nowrap sl-border-b-2 sl-px-1 sl-pb-4 sl-text-sm sl-font-medium sl-transition-colors sl-duration-200 sl-flex sl-items-center sl-gap-2",
60
+ e.disabled ? "sl-opacity-50 sl-cursor-not-allowed" : "sl-cursor-pointer"
61
+ ]),
62
+ "aria-current": e.current ? "page" : void 0
63
+ }, [
64
+ N(n(e.name) + " ", 1),
65
+ l(y)(e) ? (t(), s("span", {
66
+ key: 0,
67
+ class: u([
68
+ "sl-rounded-full sl-py-0.5 sl-px-2.5 sl-text-xs sl-font-medium sl-tabular-nums",
69
+ e.current ? "sl-bg-stachelock-100 dark:sl-bg-stachelock-900/30 sl-text-stachelock-600 dark:sl-text-stachelock-400" : "sl-bg-gray-100 dark:sl-bg-slate-700 sl-text-gray-800 dark:sl-text-slate-200"
70
+ ])
71
+ }, n(e.count), 3)) : o("", !0)
72
+ ], 10, D))), 128))
73
+ ])
74
+ ])
75
+ ])
76
+ ]),
77
+ r("div", F, [
78
+ h(a.$slots, "default"),
79
+ (t(!0), s(d, null, m(l(i), (e) => (t(), s(d, {
80
+ key: e.name
81
+ }, [
82
+ e.current && l(v)[e.name] ? (t(), s("div", L, [
83
+ h(a.$slots, e.name)
84
+ ])) : o("", !0)
85
+ ], 64))), 128))
86
+ ])
87
+ ]));
88
+ }
89
+ });
90
+ export {
91
+ K as _
92
+ };
93
+ //# sourceMappingURL=InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineTabs.vue_vue_type_script_setup_true_lang-DhkX5sWS.js","sources":["../src/components/tabs/InlineTabs.vue"],"sourcesContent":["<!--\n @component InlineTabs\n @description Simple inline tab navigation with underline indicator.\n \n A lightweight tab component for simple tab navigation scenarios.\n Uses named slots for tab content. Shows SelectInput dropdown on mobile.\n \n @props\n - tabs (SimpleTabItem[], required): Array of tab configurations\n - title (string, optional): Optional heading title\n - dropdownOnMobile (boolean, optional): Show dropdown on mobile (default: true)\n - badgeTheme (TabBadgeTheme, optional): Theme for count badges (default: 'primary')\n \n @emits\n - tab-changed: Emitted when active tab changes, payload is the new index\n \n @example\n <InlineTabs\n title=\"Settings\"\n :tabs=\"[\n { name: 'General', current: true },\n { name: 'Security', current: false, count: 2 },\n { name: 'Notifications', current: false, count: 5 }\n ]\"\n @tab-changed=\"handleTabChange\"\n >\n <template #General>General content</template>\n <template #Security>Security content</template>\n <template #Notifications>Notifications content</template>\n </InlineTabs>\n-->\n<template>\n <div class=\"sl-w-full\">\n <!-- Mobile dropdown using SelectInput -->\n <div v-if=\"dropdownOnMobile\" class=\"sl-block sm:sl-hidden sl-mb-4\">\n <SelectInput\n :name=\"selectId\"\n :label=\"title\"\n :items=\"selectInputItems\"\n :model-value=\"selectedTabItem\"\n item-key=\"index\"\n item-text=\"name\"\n placeholder=\"Select tab\"\n @update:model-value=\"handleSelectInputChange\"\n />\n </div>\n\n <!-- Desktop tabs -->\n <div class=\"sl-hidden sm:sl-block\">\n <div class=\"sl-border-b sl-border-gray-200 dark:sl-border-slate-700 sm:sl-flex sm:sl-items-baseline\">\n <h3\n v-if=\"title\"\n class=\"sl-text-base sl-font-semibold sl-leading-6 sl-text-gray-800 dark:sl-text-white\"\n >\n {{ title }}\n </h3>\n <div class=\"sl-mt-4 sm:sl-ml-10 sm:sl-mt-0\">\n <nav class=\"sl--mb-px sl-flex sl-space-x-8\">\n <a\n v-for=\"(tab, index) in localTabs\"\n :key=\"tab.name\"\n href=\"#\"\n @click.prevent=\"setActiveTab(index)\"\n :class=\"[\n tab.current \n ? 'sl-border-stachelock-600 sl-text-stachelock-600 dark:sl-text-stachelock-400' \n : 'sl-border-transparent sl-text-gray-500 dark:sl-text-slate-400 hover:sl-border-gray-300 dark:hover:sl-border-slate-600 hover:sl-text-gray-700 dark:hover:sl-text-slate-300',\n 'sl-whitespace-nowrap sl-border-b-2 sl-px-1 sl-pb-4 sl-text-sm sl-font-medium sl-transition-colors sl-duration-200 sl-flex sl-items-center sl-gap-2',\n tab.disabled ? 'sl-opacity-50 sl-cursor-not-allowed' : 'sl-cursor-pointer'\n ]\"\n :aria-current=\"tab.current ? 'page' : undefined\"\n >\n {{ tab.name }}\n <span\n v-if=\"hasCount(tab)\"\n :class=\"[\n 'sl-rounded-full sl-py-0.5 sl-px-2.5 sl-text-xs sl-font-medium sl-tabular-nums',\n tab.current\n ? 'sl-bg-stachelock-100 dark:sl-bg-stachelock-900/30 sl-text-stachelock-600 dark:sl-text-stachelock-400'\n : 'sl-bg-gray-100 dark:sl-bg-slate-700 sl-text-gray-800 dark:sl-text-slate-200'\n ]\"\n >\n {{ tab.count }}\n </span>\n </a>\n </nav>\n </div>\n </div>\n </div>\n \n <!-- Default slot for general content -->\n <div class=\"sl-mt-4\">\n <slot name=\"default\" />\n \n <!-- Named slots for each tab -->\n <template v-for=\"tab in localTabs\" :key=\"tab.name\">\n <div v-if=\"tab.current && slots[tab.name]\">\n <slot :name=\"tab.name\" />\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport SelectInput from '../inputs/SelectInput.vue';\nimport { useSimpleTabs } from '../../composables/useSimpleTabs';\nimport type { SimpleTabItem, TabBadgeTheme } from '../../types/tabs';\n\ninterface Props {\n tabs: SimpleTabItem[];\n title?: string;\n dropdownOnMobile?: boolean;\n badgeTheme?: TabBadgeTheme;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n dropdownOnMobile: true,\n badgeTheme: 'primary'\n});\n\nconst emit = defineEmits<{\n 'tab-changed': [tabIndex: number];\n}>();\n\n// Use the shared composable for all tab logic\nconst {\n localTabs,\n selectInputItems,\n selectedTabItem,\n setActiveTab,\n handleSelectInputChange,\n hasCount,\n slots,\n selectId\n} = useSimpleTabs({\n getTabs: () => props.tabs,\n onTabChange: (index) => emit('tab-changed', index),\n includeCountInName: true,\n badgeTheme: props.badgeTheme\n});\n</script>\n"],"names":["props","__props","emit","__emit","localTabs","selectInputItems","selectedTabItem","setActiveTab","handleSelectInputChange","hasCount","slots","selectId","useSimpleTabs","index","_openBlock","_createElementBlock","_hoisted_1","dropdownOnMobile","_hoisted_2","_createVNode","SelectInput","_unref","title","_createElementVNode","_hoisted_3","_hoisted_4","_hoisted_5","_toDisplayString","_hoisted_6","_hoisted_7","_Fragment","_renderList","tab","_withModifiers","$event","_normalizeClass","_hoisted_9","_renderSlot","_ctx","_hoisted_10"],"mappings":";;;;;;;;;;;;;;;;;;;AAoHA,UAAMA,IAAQC,GAKRC,IAAOC,GAKP;AAAA,MACJ,WAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,yBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,UAAAC;AAAA,IAAA,IACEC,EAAc;AAAA,MAChB,SAAS,MAAMZ,EAAM;AAAA,MACrB,aAAa,CAACa,MAAUX,EAAK,eAAeW,CAAK;AAAA,MACjD,oBAAoB;AAAA,MACpB,YAAYb,EAAM;AAAA,IAAA,CACnB;sBA5GCc,EAAA,GAAAC,EAqEM,OArENC,GAqEM;AAAA,MAnEOC,EAAAA,oBAAXH,EAAA,GAAAC,EAWM,OAXNG,GAWM;AAAA,QAVJC,EASEC,GAAA;AAAA,UARC,MAAMC,EAAAV,CAAA;AAAA,UACN,OAAOW,EAAAA;AAAAA,UACP,OAAOD,EAAAhB,CAAA;AAAA,UACP,eAAagB,EAAAf,CAAA;AAAA,UACd,YAAS;AAAA,UACT,aAAU;AAAA,UACV,aAAY;AAAA,UACX,uBAAoBe,EAAAb,CAAA;AAAA,QAAA;;MAKzBe,EAwCM,OAxCNC,GAwCM;AAAA,QAvCJD,EAsCM,OAtCNE,GAsCM;AAAA,UApCIH,EAAAA,cADRP,EAKK,MALLW,GAKKC,EADAL,EAAAA,KAAK,GAAA,CAAA;UAEVC,EA8BM,OA9BNK,GA8BM;AAAA,YA7BJL,EA4BM,OA5BNM,GA4BM;AAAA,eA3BJf,EAAA,EAAA,GAAAC,EA0BIe,GAAA,MAAAC,EAzBqBV,EAAAjB,CAAA,GAAS,CAAxB4B,GAAKnB,YADfE,EA0BI,KAAA;AAAA,gBAxBD,KAAKiB,EAAI;AAAA,gBACV,MAAK;AAAA,gBACJ,SAAKC,EAAA,CAAAC,MAAUb,EAAAd,CAAA,EAAaM,CAAK,GAAA,CAAA,SAAA,CAAA;AAAA,gBACjC,OAAKsB,EAAA;AAAA,kBAAoBH,EAAI;;kBAAmeA,EAAI,WAAQ,wCAAA;AAAA,gBAAA;gBAO5gB,gBAAcA,EAAI,mBAAmB;AAAA,cAAA;oBAEnCA,EAAI,IAAI,IAAG,KACd,CAAA;AAAA,gBACQX,EAAAZ,CAAA,EAASuB,CAAG,UADpBjB,EAUO,QAAA;AAAA;kBARJ,OAAKoB,EAAA;AAAA;oBAAyHH,EAAI;;mBAOhIL,EAAAK,EAAI,KAAK,GAAA,CAAA;;;;;;MASxBT,EASM,OATNa,GASM;AAAA,QARJC,EAAuBC,EAAA,QAAA,SAAA;AAAA,gBAGvBvB,EAIWe,GAAA,MAAAC,EAJaV,EAAAjB,CAAA,GAAS,CAAhB4B;UAAwB,KAAAA,EAAI;AAAA,QAAA;UAChCA,EAAI,WAAWX,KAAMW,EAAI,IAAI,UAAxCjB,EAEM,OAAAwB,GAAA;AAAA,YADJF,EAAyBC,EAAA,QAAZN,EAAI,IAAI;AAAA,UAAA;;;;;;"}