geoiq-frontend-ui-kit 2.0.1 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (611) hide show
  1. package/dist/components/atoms/accordion/accordion.d.ts +2 -1
  2. package/dist/components/atoms/accordion/accordion.d.ts.map +1 -1
  3. package/dist/components/atoms/avatar/avatar.d.ts +2 -1
  4. package/dist/components/atoms/avatar/avatar.d.ts.map +1 -1
  5. package/dist/components/atoms/badge/badge.d.ts +2 -2
  6. package/dist/components/atoms/badge/badge.d.ts.map +1 -1
  7. package/dist/components/atoms/badge/badge.styles.d.ts +2 -2
  8. package/dist/components/atoms/button/button.styles.d.ts +2 -2
  9. package/dist/components/atoms/checkbox/checkbox.styles.d.ts +2 -2
  10. package/dist/components/atoms/skeleton/skeleton.d.ts +1 -1
  11. package/dist/components/atoms/skeleton/skeleton.d.ts.map +1 -1
  12. package/dist/components/atoms/switch/switch.styles.d.ts +2 -2
  13. package/dist/components/atoms/tooltip/tooltip.d.ts +2 -2
  14. package/dist/components/atoms/tooltip/tooltip.d.ts.map +1 -1
  15. package/dist/components/molecules/alert/alert.styles.d.ts +1 -1
  16. package/dist/components/molecules/breadcrumb/breadcrumb-components.d.ts +2 -2
  17. package/dist/components/molecules/breadcrumb/breadcrumb.d.ts +2 -1
  18. package/dist/components/molecules/breadcrumb/breadcrumb.d.ts.map +1 -1
  19. package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.d.ts +5 -0
  20. package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.d.ts.map +1 -0
  21. package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.types.d.ts +49 -0
  22. package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.types.d.ts.map +1 -0
  23. package/dist/components/molecules/creatable-multi-combobox/index.d.ts +4 -0
  24. package/dist/components/molecules/creatable-multi-combobox/index.d.ts.map +1 -0
  25. package/dist/components/molecules/dropdown-menu/dropdown-menu-components.d.ts +1 -1
  26. package/dist/components/molecules/dropdown-menu/dropdown-menu.d.ts +2 -1
  27. package/dist/components/molecules/dropdown-menu/dropdown-menu.d.ts.map +1 -1
  28. package/dist/components/molecules/multi-combobox/index.d.ts +2 -2
  29. package/dist/components/molecules/multi-combobox/index.d.ts.map +1 -1
  30. package/dist/components/molecules/multi-select/index.d.ts +2 -2
  31. package/dist/components/molecules/multi-select/index.d.ts.map +1 -1
  32. package/dist/components/molecules/pagination/pagination-components.d.ts +4 -4
  33. package/dist/components/molecules/single-combobox/single-combobox.d.ts +2 -2
  34. package/dist/components/molecules/single-combobox/single-combobox.d.ts.map +1 -1
  35. package/dist/components/molecules/single-select/index.d.ts.map +1 -1
  36. package/dist/components/molecules/single-select/single-select-components.d.ts +3 -1
  37. package/dist/components/molecules/single-select/single-select-components.d.ts.map +1 -1
  38. package/dist/components/molecules/single-select/single-select.types.d.ts +9 -0
  39. package/dist/components/molecules/single-select/single-select.types.d.ts.map +1 -1
  40. package/dist/components/molecules/split-button/split-button.styles.d.ts +3 -3
  41. package/dist/components/molecules/stepper/stepper-components.d.ts +1 -1
  42. package/dist/components/molecules/stepper/stepper-components.d.ts.map +1 -1
  43. package/dist/components/molecules/stepper/stepper.d.ts +2 -1
  44. package/dist/components/molecules/stepper/stepper.d.ts.map +1 -1
  45. package/dist/components/molecules/stepper/stepper.mock.d.ts +2 -2
  46. package/dist/components/molecules/stepper/stepper.mock.d.ts.map +1 -1
  47. package/dist/components/molecules/swatch-grid/index.d.ts +3 -0
  48. package/dist/components/molecules/swatch-grid/index.d.ts.map +1 -0
  49. package/dist/components/molecules/swatch-grid/swatch-grid.d.ts +5 -0
  50. package/dist/components/molecules/swatch-grid/swatch-grid.d.ts.map +1 -0
  51. package/dist/components/molecules/swatch-grid/swatch-grid.types.d.ts +17 -0
  52. package/dist/components/molecules/swatch-grid/swatch-grid.types.d.ts.map +1 -0
  53. package/dist/components/molecules/tabs/tabs.d.ts.map +1 -1
  54. package/dist/components/molecules/tabs/tabs.styles.d.ts +2 -2
  55. package/dist/components/molecules/tabs/tabs.types.d.ts +1 -0
  56. package/dist/components/molecules/tabs/tabs.types.d.ts.map +1 -1
  57. package/dist/components/molecules/toast/assets/svgs/danger-icon.d.ts +3 -1
  58. package/dist/components/molecules/toast/assets/svgs/danger-icon.d.ts.map +1 -1
  59. package/dist/components/molecules/toast/assets/svgs/info-icon.d.ts +3 -1
  60. package/dist/components/molecules/toast/assets/svgs/info-icon.d.ts.map +1 -1
  61. package/dist/components/molecules/toast/assets/svgs/success-icon.d.ts +3 -1
  62. package/dist/components/molecules/toast/assets/svgs/success-icon.d.ts.map +1 -1
  63. package/dist/components/molecules/toast/assets/svgs/warning-icon.d.ts +3 -1
  64. package/dist/components/molecules/toast/assets/svgs/warning-icon.d.ts.map +1 -1
  65. package/dist/components/molecules/toast/toast-components.d.ts +1 -1
  66. package/dist/components/molecules/toast/toast.d.ts +2 -1
  67. package/dist/components/molecules/toast/toast.d.ts.map +1 -1
  68. package/dist/components/molecules/toggle-multi-select/index.d.ts +2 -2
  69. package/dist/components/molecules/toggle-multi-select/index.d.ts.map +1 -1
  70. package/dist/components/organisms/alert-dialog/alert-dialog-components.d.ts +2 -2
  71. package/dist/components/organisms/alert-dialog/alert-dialog.d.ts +2 -1
  72. package/dist/components/organisms/alert-dialog/alert-dialog.d.ts.map +1 -1
  73. package/dist/components/organisms/dialog/dialog-components.d.ts +2 -2
  74. package/dist/components/organisms/dialog/dialog.d.ts +2 -1
  75. package/dist/components/organisms/dialog/dialog.d.ts.map +1 -1
  76. package/dist/components/organisms/dialog/dialog.types.d.ts +9 -0
  77. package/dist/components/organisms/dialog/dialog.types.d.ts.map +1 -1
  78. package/dist/components/organisms/image-editor/components/color-picker.d.ts +9 -0
  79. package/dist/components/organisms/image-editor/components/color-picker.d.ts.map +1 -0
  80. package/dist/components/organisms/image-editor/components/layers-list.d.ts +10 -0
  81. package/dist/components/organisms/image-editor/components/layers-list.d.ts.map +1 -0
  82. package/dist/components/organisms/image-editor/components/panel-adjust.d.ts +10 -0
  83. package/dist/components/organisms/image-editor/components/panel-adjust.d.ts.map +1 -0
  84. package/dist/components/organisms/image-editor/components/panel-crop.d.ts +10 -0
  85. package/dist/components/organisms/image-editor/components/panel-crop.d.ts.map +1 -0
  86. package/dist/components/organisms/image-editor/components/panel-insert.d.ts +10 -0
  87. package/dist/components/organisms/image-editor/components/panel-insert.d.ts.map +1 -0
  88. package/dist/components/organisms/image-editor/components/panel-selected.d.ts +10 -0
  89. package/dist/components/organisms/image-editor/components/panel-selected.d.ts.map +1 -0
  90. package/dist/components/organisms/image-editor/components/panel.d.ts +10 -0
  91. package/dist/components/organisms/image-editor/components/panel.d.ts.map +1 -0
  92. package/dist/components/organisms/image-editor/components/portal-context.d.ts +3 -0
  93. package/dist/components/organisms/image-editor/components/portal-context.d.ts.map +1 -0
  94. package/dist/components/organisms/image-editor/components/ribbon.d.ts +10 -0
  95. package/dist/components/organisms/image-editor/components/ribbon.d.ts.map +1 -0
  96. package/dist/components/organisms/image-editor/components/shape-icons.d.ts +4 -0
  97. package/dist/components/organisms/image-editor/components/shape-icons.d.ts.map +1 -0
  98. package/dist/components/organisms/image-editor/components/stage.d.ts +18 -0
  99. package/dist/components/organisms/image-editor/components/stage.d.ts.map +1 -0
  100. package/dist/components/organisms/image-editor/components/status-bar.d.ts +7 -0
  101. package/dist/components/organisms/image-editor/components/status-bar.d.ts.map +1 -0
  102. package/dist/components/organisms/image-editor/image-editor-modal.d.ts +11 -0
  103. package/dist/components/organisms/image-editor/image-editor-modal.d.ts.map +1 -0
  104. package/dist/components/organisms/image-editor/image-editor.d.ts +5 -0
  105. package/dist/components/organisms/image-editor/image-editor.d.ts.map +1 -0
  106. package/dist/components/organisms/image-editor/image-editor.types.d.ts +182 -0
  107. package/dist/components/organisms/image-editor/image-editor.types.d.ts.map +1 -0
  108. package/dist/components/organisms/image-editor/index.d.ts +4 -0
  109. package/dist/components/organisms/image-editor/index.d.ts.map +1 -0
  110. package/dist/components/organisms/image-editor/native-bridge.d.ts +3 -0
  111. package/dist/components/organisms/image-editor/native-bridge.d.ts.map +1 -0
  112. package/dist/components/organisms/image-editor/picture-studio-engine.d.ts +16 -0
  113. package/dist/components/organisms/image-editor/use-image-editor.d.ts +4 -0
  114. package/dist/components/organisms/image-editor/use-image-editor.d.ts.map +1 -0
  115. package/dist/components/organisms/navbar/navbar-desktop.d.ts.map +1 -1
  116. package/dist/components/organisms/navbar/navbar-extended.d.ts.map +1 -1
  117. package/dist/components/organisms/navbar/navbar-mobile.d.ts.map +1 -1
  118. package/dist/components/organisms/navbar/navbar.types.d.ts +17 -0
  119. package/dist/components/organisms/navbar/navbar.types.d.ts.map +1 -1
  120. package/dist/components/organisms/sheet/sheet-components.d.ts +2 -2
  121. package/dist/components/organisms/sheet/sheet.d.ts +2 -1
  122. package/dist/components/organisms/sheet/sheet.d.ts.map +1 -1
  123. package/dist/components/organisms/sheet/sheet.types.d.ts +1 -0
  124. package/dist/components/organisms/sheet/sheet.types.d.ts.map +1 -1
  125. package/dist/components/organisms/sidebar/sidebar-components.d.ts +1 -1
  126. package/dist/components/organisms/sidebar/sidebar.d.ts +2 -1
  127. package/dist/components/organisms/sidebar/sidebar.d.ts.map +1 -1
  128. package/dist/components/ui/agent-snippet-view/agent-snippet-view.d.ts +1 -1
  129. package/dist/components/ui/agent-snippet-view/agent-snippet-view.d.ts.map +1 -1
  130. package/dist/components/ui/brand-switcher/brand-switcher.d.ts +5 -0
  131. package/dist/components/ui/brand-switcher/brand-switcher.d.ts.map +1 -0
  132. package/dist/components/ui/brand-switcher/brand-switcher.types.d.ts +29 -0
  133. package/dist/components/ui/brand-switcher/brand-switcher.types.d.ts.map +1 -0
  134. package/dist/components/ui/brand-switcher/index.d.ts +3 -0
  135. package/dist/components/ui/brand-switcher/index.d.ts.map +1 -0
  136. package/dist/components/ui/credit-sheet/credit-sheet.d.ts.map +1 -1
  137. package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts +3 -0
  138. package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts.map +1 -1
  139. package/dist/components/ui/credits-indicator/credits-indicator.d.ts +6 -0
  140. package/dist/components/ui/credits-indicator/credits-indicator.d.ts.map +1 -0
  141. package/dist/components/ui/credits-indicator/credits-indicator.styles.d.ts +7 -0
  142. package/dist/components/ui/credits-indicator/credits-indicator.styles.d.ts.map +1 -0
  143. package/dist/components/ui/credits-indicator/credits-indicator.types.d.ts +14 -0
  144. package/dist/components/ui/credits-indicator/credits-indicator.types.d.ts.map +1 -0
  145. package/dist/components/ui/credits-indicator/index.d.ts +3 -0
  146. package/dist/components/ui/credits-indicator/index.d.ts.map +1 -0
  147. package/dist/components/ui/form-renderer/components/form-fields/components/multi-image-picker/index.d.ts.map +1 -1
  148. package/dist/components/ui/form-renderer/components/form-fields/components/single-image-picker/index.d.ts.map +1 -1
  149. package/dist/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker/index.d.ts.map +1 -1
  150. package/dist/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker-with-input/index.d.ts.map +1 -1
  151. package/dist/components/ui/form-renderer/components/form-fields/index.d.ts.map +1 -1
  152. package/dist/components/ui/form-renderer/components/form-read-only-view.d.ts.map +1 -1
  153. package/dist/components/ui/form-renderer/context/form-values/form-values.context.d.ts +4 -0
  154. package/dist/components/ui/form-renderer/context/form-values/form-values.context.d.ts.map +1 -1
  155. package/dist/components/ui/form-renderer/context/form-values/form-values.provider.d.ts +2 -0
  156. package/dist/components/ui/form-renderer/context/form-values/form-values.provider.d.ts.map +1 -1
  157. package/dist/components/ui/form-renderer/form-renderer.d.ts +10 -0
  158. package/dist/components/ui/form-renderer/form-renderer.d.ts.map +1 -1
  159. package/dist/components/ui/form-renderer/form.enums.d.ts +1 -0
  160. package/dist/components/ui/form-renderer/form.enums.d.ts.map +1 -1
  161. package/dist/components/ui/form-renderer/form.types.d.ts +20 -1
  162. package/dist/components/ui/form-renderer/form.types.d.ts.map +1 -1
  163. package/dist/components/ui/map-marker-hover-card/components/map-cluster-hover-card.d.ts +2 -1
  164. package/dist/components/ui/map-marker-hover-card/components/map-cluster-hover-card.d.ts.map +1 -1
  165. package/dist/components/ui/map-marker-hover-card/components/map-point-hover-card.d.ts +2 -1
  166. package/dist/components/ui/map-marker-hover-card/components/map-point-hover-card.d.ts.map +1 -1
  167. package/dist/components/ui/map-marker-hover-card/map-marker-hover-card.d.ts +2 -1
  168. package/dist/components/ui/map-marker-hover-card/map-marker-hover-card.d.ts.map +1 -1
  169. package/dist/components/ui/report-snippet-view/report-snippet-view-components.d.ts.map +1 -1
  170. package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts.map +1 -1
  171. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts +3 -0
  172. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts.map +1 -1
  173. package/dist/components/ui/request-credits-view/index.d.ts +1 -0
  174. package/dist/components/ui/request-credits-view/index.d.ts.map +1 -1
  175. package/dist/components/ui/request-credits-view/request-credits-view.d.ts.map +1 -1
  176. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts +3 -0
  177. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts.map +1 -1
  178. package/dist/components/ui/star-score/star-score.d.ts +2 -1
  179. package/dist/components/ui/star-score/star-score.d.ts.map +1 -1
  180. package/dist/components/unstyled/calendar/calendar.d.ts +1 -1
  181. package/dist/components/unstyled/calendar/calendar.d.ts.map +1 -1
  182. package/dist/components/unstyled/command/index.d.ts +2 -2
  183. package/dist/components/unstyled/command/index.d.ts.map +1 -1
  184. package/dist/components/unstyled/date-picker/date-picker.d.ts +2 -2
  185. package/dist/components/unstyled/date-picker/date-picker.d.ts.map +1 -1
  186. package/dist/components/unstyled/hover-card/hover-card.d.ts +2 -1
  187. package/dist/components/unstyled/hover-card/hover-card.d.ts.map +1 -1
  188. package/dist/components/unstyled/popover/popover.d.ts +2 -1
  189. package/dist/components/unstyled/popover/popover.d.ts.map +1 -1
  190. package/dist/components/unstyled/spinner/spinner.styles.d.ts +1 -1
  191. package/dist/components/unstyled/table/table.d.ts +2 -2
  192. package/dist/components/unstyled/table/table.d.ts.map +1 -1
  193. package/dist/index.d.ts +8 -0
  194. package/dist/index.d.ts.map +1 -1
  195. package/dist/index.es.js +210 -193
  196. package/dist/index.es.js.map +1 -1
  197. package/dist/{index.es8.js → index10.es.js} +3 -3
  198. package/dist/index10.es.js.map +1 -0
  199. package/dist/{index.es96.js → index100.es.js} +1 -1
  200. package/dist/index100.es.js.map +1 -0
  201. package/dist/{index.es109.js → index101.es.js} +1 -1
  202. package/dist/{index.es109.js.map → index101.es.js.map} +1 -1
  203. package/dist/{index.es90.js → index102.es.js} +2 -2
  204. package/dist/index102.es.js.map +1 -0
  205. package/dist/{index.es91.js → index103.es.js} +2 -2
  206. package/dist/index103.es.js.map +1 -0
  207. package/dist/{index.es92.js → index104.es.js} +1 -1
  208. package/dist/index104.es.js.map +1 -0
  209. package/dist/{index.es95.js → index105.es.js} +1 -1
  210. package/dist/index105.es.js.map +1 -0
  211. package/dist/{index.es110.js → index106.es.js} +1 -1
  212. package/dist/{index.es110.js.map → index106.es.js.map} +1 -1
  213. package/dist/{index.es114.js → index107.es.js} +5 -5
  214. package/dist/{index.es114.js.map → index107.es.js.map} +1 -1
  215. package/dist/{index.es115.js → index108.es.js} +1 -1
  216. package/dist/{index.es115.js.map → index108.es.js.map} +1 -1
  217. package/dist/{index.es112.js → index109.es.js} +1 -1
  218. package/dist/{index.es112.js.map → index109.es.js.map} +1 -1
  219. package/dist/{index.es9.js → index11.es.js} +4 -4
  220. package/dist/index11.es.js.map +1 -0
  221. package/dist/{index.es117.js → index110.es.js} +4 -4
  222. package/dist/{index.es117.js.map → index110.es.js.map} +1 -1
  223. package/dist/{index.es118.js → index111.es.js} +4 -4
  224. package/dist/{index.es118.js.map → index111.es.js.map} +1 -1
  225. package/dist/{index.es119.js → index112.es.js} +58 -57
  226. package/dist/index112.es.js.map +1 -0
  227. package/dist/{index.es120.js → index113.es.js} +2 -2
  228. package/dist/{index.es120.js.map → index113.es.js.map} +1 -1
  229. package/dist/{index.es121.js → index114.es.js} +65 -39
  230. package/dist/index114.es.js.map +1 -0
  231. package/dist/index115.es.js +38 -0
  232. package/dist/index115.es.js.map +1 -0
  233. package/dist/{index.es107.js → index116.es.js} +6 -6
  234. package/dist/{index.es107.js.map → index116.es.js.map} +1 -1
  235. package/dist/index117.es.js +19 -0
  236. package/dist/index117.es.js.map +1 -0
  237. package/dist/index118.es.js +103 -0
  238. package/dist/index118.es.js.map +1 -0
  239. package/dist/index119.es.js +17 -0
  240. package/dist/index119.es.js.map +1 -0
  241. package/dist/{index.es10.js → index12.es.js} +3 -3
  242. package/dist/{index.es10.js.map → index12.es.js.map} +1 -1
  243. package/dist/index120.es.js +105 -0
  244. package/dist/index120.es.js.map +1 -0
  245. package/dist/{index.es97.js → index121.es.js} +4 -4
  246. package/dist/index121.es.js.map +1 -0
  247. package/dist/{index.es98.js → index122.es.js} +3 -3
  248. package/dist/index122.es.js.map +1 -0
  249. package/dist/{index.es99.js → index123.es.js} +3 -3
  250. package/dist/index123.es.js.map +1 -0
  251. package/dist/{index.es100.js → index124.es.js} +3 -3
  252. package/dist/{index.es100.js.map → index124.es.js.map} +1 -1
  253. package/dist/{index.es101.js → index125.es.js} +10 -10
  254. package/dist/{index.es101.js.map → index125.es.js.map} +1 -1
  255. package/dist/{index.es102.js → index126.es.js} +10 -10
  256. package/dist/{index.es102.js.map → index126.es.js.map} +1 -1
  257. package/dist/{index.es103.js → index127.es.js} +5 -5
  258. package/dist/{index.es103.js.map → index127.es.js.map} +1 -1
  259. package/dist/{index.es122.js → index128.es.js} +1 -1
  260. package/dist/{index.es122.js.map → index128.es.js.map} +1 -1
  261. package/dist/{index.es123.js → index129.es.js} +26 -20
  262. package/dist/index129.es.js.map +1 -0
  263. package/dist/{index.es11.js → index13.es.js} +3 -3
  264. package/dist/{index.es11.js.map → index13.es.js.map} +1 -1
  265. package/dist/{index.es124.js → index130.es.js} +3 -3
  266. package/dist/{index.es124.js.map → index130.es.js.map} +1 -1
  267. package/dist/{index.es116.js → index131.es.js} +22 -21
  268. package/dist/index131.es.js.map +1 -0
  269. package/dist/{index.es113.js → index132.es.js} +3 -3
  270. package/dist/{index.es113.js.map → index132.es.js.map} +1 -1
  271. package/dist/{index.es93.js → index133.es.js} +1 -1
  272. package/dist/index133.es.js.map +1 -0
  273. package/dist/index134.es.js +10 -0
  274. package/dist/index134.es.js.map +1 -0
  275. package/dist/{index.es111.js → index135.es.js} +3 -3
  276. package/dist/{index.es111.js.map → index135.es.js.map} +1 -1
  277. package/dist/{index.es104.js → index136.es.js} +1 -1
  278. package/dist/{index.es104.js.map → index136.es.js.map} +1 -1
  279. package/dist/{index.es127.js → index137.es.js} +2 -2
  280. package/dist/{index.es127.js.map → index137.es.js.map} +1 -1
  281. package/dist/{index.es125.js → index138.es.js} +1 -1
  282. package/dist/{index.es125.js.map → index138.es.js.map} +1 -1
  283. package/dist/{index.es128.js → index139.es.js} +3 -3
  284. package/dist/{index.es128.js.map → index139.es.js.map} +1 -1
  285. package/dist/{index.es12.js → index14.es.js} +2 -2
  286. package/dist/{index.es12.js.map → index14.es.js.map} +1 -1
  287. package/dist/{index.es129.js → index140.es.js} +1 -1
  288. package/dist/{index.es129.js.map → index140.es.js.map} +1 -1
  289. package/dist/{index.es130.js → index141.es.js} +1 -1
  290. package/dist/index141.es.js.map +1 -0
  291. package/dist/index142.es.js +5 -0
  292. package/dist/index142.es.js.map +1 -0
  293. package/dist/index143.es.js +10 -0
  294. package/dist/index143.es.js.map +1 -0
  295. package/dist/index144.es.js +25 -0
  296. package/dist/index144.es.js.map +1 -0
  297. package/dist/index145.es.js +173 -0
  298. package/dist/index145.es.js.map +1 -0
  299. package/dist/index146.es.js +85 -0
  300. package/dist/index146.es.js.map +1 -0
  301. package/dist/index147.es.js +8 -0
  302. package/dist/index147.es.js.map +1 -0
  303. package/dist/index148.es.js +59 -0
  304. package/dist/index148.es.js.map +1 -0
  305. package/dist/index149.es.js +120 -0
  306. package/dist/index149.es.js.map +1 -0
  307. package/dist/{index.es13.js → index15.es.js} +3 -3
  308. package/dist/{index.es13.js.map → index15.es.js.map} +1 -1
  309. package/dist/index150.es.js +325 -0
  310. package/dist/index150.es.js.map +1 -0
  311. package/dist/index151.es.js +31 -0
  312. package/dist/index151.es.js.map +1 -0
  313. package/dist/index152.es.js +71 -0
  314. package/dist/index152.es.js.map +1 -0
  315. package/dist/index153.es.js +35 -0
  316. package/dist/index153.es.js.map +1 -0
  317. package/dist/index154.es.js +28 -0
  318. package/dist/index154.es.js.map +1 -0
  319. package/dist/index155.es.js +41 -0
  320. package/dist/index155.es.js.map +1 -0
  321. package/dist/index156.es.js +146 -0
  322. package/dist/index156.es.js.map +1 -0
  323. package/dist/index157.es.js +147 -0
  324. package/dist/index157.es.js.map +1 -0
  325. package/dist/index158.es.js +50 -0
  326. package/dist/index158.es.js.map +1 -0
  327. package/dist/{index.es126.js → index159.es.js} +1 -1
  328. package/dist/{index.es126.js.map → index159.es.js.map} +1 -1
  329. package/dist/{index.es14.js → index16.es.js} +8 -8
  330. package/dist/{index.es14.js.map → index16.es.js.map} +1 -1
  331. package/dist/index160.es.js +5 -0
  332. package/dist/index160.es.js.map +1 -0
  333. package/dist/{index.es132.js → index161.es.js} +1 -1
  334. package/dist/{index.es132.js.map → index161.es.js.map} +1 -1
  335. package/dist/index162.es.js +94 -0
  336. package/dist/index162.es.js.map +1 -0
  337. package/dist/index163.es.js +216 -0
  338. package/dist/index163.es.js.map +1 -0
  339. package/dist/index164.es.js +57 -0
  340. package/dist/index164.es.js.map +1 -0
  341. package/dist/index165.es.js +39 -0
  342. package/dist/index165.es.js.map +1 -0
  343. package/dist/index166.es.js +36 -0
  344. package/dist/index166.es.js.map +1 -0
  345. package/dist/index167.es.js +36 -0
  346. package/dist/index167.es.js.map +1 -0
  347. package/dist/index168.es.js +94 -0
  348. package/dist/index168.es.js.map +1 -0
  349. package/dist/index169.es.js +120 -0
  350. package/dist/index169.es.js.map +1 -0
  351. package/dist/{index.es15.js → index17.es.js} +3 -3
  352. package/dist/{index.es15.js.map → index17.es.js.map} +1 -1
  353. package/dist/{index.es133.js → index170.es.js} +122 -93
  354. package/dist/index170.es.js.map +1 -0
  355. package/dist/{index.es134.js → index171.es.js} +4 -4
  356. package/dist/{index.es134.js.map → index171.es.js.map} +1 -1
  357. package/dist/{index.es135.js → index172.es.js} +2 -2
  358. package/dist/{index.es135.js.map → index172.es.js.map} +1 -1
  359. package/dist/{index.es136.js → index173.es.js} +25 -23
  360. package/dist/index173.es.js.map +1 -0
  361. package/dist/{index.es137.js → index174.es.js} +17 -16
  362. package/dist/{index.es137.js.map → index174.es.js.map} +1 -1
  363. package/dist/{index.es138.js → index175.es.js} +30 -28
  364. package/dist/{index.es138.js.map → index175.es.js.map} +1 -1
  365. package/dist/{index.es139.js → index176.es.js} +13 -12
  366. package/dist/{index.es139.js.map → index176.es.js.map} +1 -1
  367. package/dist/{index.es140.js → index177.es.js} +5 -5
  368. package/dist/{index.es140.js.map → index177.es.js.map} +1 -1
  369. package/dist/{index.es141.js → index178.es.js} +24 -22
  370. package/dist/index178.es.js.map +1 -0
  371. package/dist/{index.es142.js → index179.es.js} +44 -42
  372. package/dist/index179.es.js.map +1 -0
  373. package/dist/{index.es16.js → index18.es.js} +2 -2
  374. package/dist/{index.es16.js.map → index18.es.js.map} +1 -1
  375. package/dist/index180.es.js +29 -0
  376. package/dist/index180.es.js.map +1 -0
  377. package/dist/index181.es.js +27 -0
  378. package/dist/index181.es.js.map +1 -0
  379. package/dist/{index.es143.js → index182.es.js} +1 -1
  380. package/dist/{index.es143.js.map → index182.es.js.map} +1 -1
  381. package/dist/{index.es17.js → index19.es.js} +4 -4
  382. package/dist/{index.es17.js.map → index19.es.js.map} +1 -1
  383. package/dist/index2.es.js +125 -0
  384. package/dist/index2.es.js.map +1 -0
  385. package/dist/{index.es18.js → index20.es.js} +5 -5
  386. package/dist/{index.es18.js.map → index20.es.js.map} +1 -1
  387. package/dist/{index.es19.js → index21.es.js} +6 -6
  388. package/dist/{index.es19.js.map → index21.es.js.map} +1 -1
  389. package/dist/{index.es20.js → index22.es.js} +2 -2
  390. package/dist/{index.es20.js.map → index22.es.js.map} +1 -1
  391. package/dist/{index.es21.js → index23.es.js} +7 -7
  392. package/dist/{index.es21.js.map → index23.es.js.map} +1 -1
  393. package/dist/{index.es22.js → index24.es.js} +7 -7
  394. package/dist/{index.es22.js.map → index24.es.js.map} +1 -1
  395. package/dist/{index.es23.js → index25.es.js} +3 -3
  396. package/dist/{index.es23.js.map → index25.es.js.map} +1 -1
  397. package/dist/{index.es24.js → index26.es.js} +2 -2
  398. package/dist/{index.es24.js.map → index26.es.js.map} +1 -1
  399. package/dist/{index.es25.js → index27.es.js} +7 -7
  400. package/dist/{index.es25.js.map → index27.es.js.map} +1 -1
  401. package/dist/index28.es.js +277 -0
  402. package/dist/index28.es.js.map +1 -0
  403. package/dist/{index.es26.js → index29.es.js} +18 -17
  404. package/dist/index29.es.js.map +1 -0
  405. package/dist/index3.es.js +43 -0
  406. package/dist/index3.es.js.map +1 -0
  407. package/dist/{index.es27.js → index30.es.js} +3 -3
  408. package/dist/{index.es27.js.map → index30.es.js.map} +1 -1
  409. package/dist/{index.es28.js → index31.es.js} +1 -1
  410. package/dist/{index.es28.js.map → index31.es.js.map} +1 -1
  411. package/dist/{index.es29.js → index32.es.js} +2 -2
  412. package/dist/{index.es29.js.map → index32.es.js.map} +1 -1
  413. package/dist/index33.es.js +82 -0
  414. package/dist/{index.es30.js.map → index33.es.js.map} +1 -1
  415. package/dist/{index.es31.js → index34.es.js} +5 -5
  416. package/dist/{index.es31.js.map → index34.es.js.map} +1 -1
  417. package/dist/{index.es32.js → index35.es.js} +11 -11
  418. package/dist/index35.es.js.map +1 -0
  419. package/dist/{index.es33.js → index36.es.js} +5 -5
  420. package/dist/{index.es33.js.map → index36.es.js.map} +1 -1
  421. package/dist/{index.es34.js → index37.es.js} +6 -6
  422. package/dist/{index.es34.js.map → index37.es.js.map} +1 -1
  423. package/dist/index38.es.js +57 -0
  424. package/dist/index38.es.js.map +1 -0
  425. package/dist/{index.es35.js → index39.es.js} +3 -3
  426. package/dist/{index.es35.js.map → index39.es.js.map} +1 -1
  427. package/dist/{index.es2.js → index4.es.js} +2 -2
  428. package/dist/{index.es2.js.map → index4.es.js.map} +1 -1
  429. package/dist/{index.es36.js → index40.es.js} +4 -4
  430. package/dist/{index.es36.js.map → index40.es.js.map} +1 -1
  431. package/dist/index41.es.js +46 -0
  432. package/dist/index41.es.js.map +1 -0
  433. package/dist/index42.es.js +49 -0
  434. package/dist/index42.es.js.map +1 -0
  435. package/dist/{index.es39.js → index43.es.js} +2 -2
  436. package/dist/{index.es39.js.map → index43.es.js.map} +1 -1
  437. package/dist/index44.es.js +18 -0
  438. package/dist/index44.es.js.map +1 -0
  439. package/dist/index45.es.js +67 -0
  440. package/dist/index45.es.js.map +1 -0
  441. package/dist/{index.es40.js → index46.es.js} +36 -30
  442. package/dist/index46.es.js.map +1 -0
  443. package/dist/{index.es41.js → index47.es.js} +67 -50
  444. package/dist/index47.es.js.map +1 -0
  445. package/dist/index48.es.js +317 -0
  446. package/dist/index48.es.js.map +1 -0
  447. package/dist/{index.es43.js → index49.es.js} +2 -2
  448. package/dist/{index.es43.js.map → index49.es.js.map} +1 -1
  449. package/dist/{index.es3.js → index5.es.js} +2 -2
  450. package/dist/{index.es3.js.map → index5.es.js.map} +1 -1
  451. package/dist/{index.es44.js → index50.es.js} +1 -1
  452. package/dist/{index.es44.js.map → index50.es.js.map} +1 -1
  453. package/dist/{index.es45.js → index51.es.js} +2 -2
  454. package/dist/{index.es45.js.map → index51.es.js.map} +1 -1
  455. package/dist/{index.es46.js → index52.es.js} +3 -3
  456. package/dist/{index.es46.js.map → index52.es.js.map} +1 -1
  457. package/dist/{index.es47.js → index53.es.js} +13 -13
  458. package/dist/index53.es.js.map +1 -0
  459. package/dist/{index.es48.js → index54.es.js} +4 -4
  460. package/dist/{index.es48.js.map → index54.es.js.map} +1 -1
  461. package/dist/index55.es.js +108 -0
  462. package/dist/index55.es.js.map +1 -0
  463. package/dist/index56.es.js +76 -0
  464. package/dist/index56.es.js.map +1 -0
  465. package/dist/{index.es50.js → index57.es.js} +9 -9
  466. package/dist/{index.es50.js.map → index57.es.js.map} +1 -1
  467. package/dist/{index.es51.js → index58.es.js} +4 -3
  468. package/dist/{index.es51.js.map → index58.es.js.map} +1 -1
  469. package/dist/{index.es52.js → index59.es.js} +2 -2
  470. package/dist/{index.es52.js.map → index59.es.js.map} +1 -1
  471. package/dist/{index.es4.js → index6.es.js} +2 -2
  472. package/dist/{index.es4.js.map → index6.es.js.map} +1 -1
  473. package/dist/{index.es53.js → index60.es.js} +3 -3
  474. package/dist/{index.es53.js.map → index60.es.js.map} +1 -1
  475. package/dist/{index.es54.js → index61.es.js} +2 -2
  476. package/dist/{index.es54.js.map → index61.es.js.map} +1 -1
  477. package/dist/{index.es55.js → index62.es.js} +2 -2
  478. package/dist/{index.es55.js.map → index62.es.js.map} +1 -1
  479. package/dist/{index.es56.js → index63.es.js} +2 -2
  480. package/dist/{index.es56.js.map → index63.es.js.map} +1 -1
  481. package/dist/{index.es57.js → index64.es.js} +3 -3
  482. package/dist/{index.es57.js.map → index64.es.js.map} +1 -1
  483. package/dist/{index.es58.js → index65.es.js} +3 -3
  484. package/dist/{index.es58.js.map → index65.es.js.map} +1 -1
  485. package/dist/{index.es59.js → index66.es.js} +2 -2
  486. package/dist/{index.es59.js.map → index66.es.js.map} +1 -1
  487. package/dist/{index.es60.js → index67.es.js} +3 -3
  488. package/dist/{index.es60.js.map → index67.es.js.map} +1 -1
  489. package/dist/{index.es61.js → index68.es.js} +3 -3
  490. package/dist/{index.es61.js.map → index68.es.js.map} +1 -1
  491. package/dist/{index.es62.js → index69.es.js} +6 -6
  492. package/dist/{index.es62.js.map → index69.es.js.map} +1 -1
  493. package/dist/{index.es5.js → index7.es.js} +2 -2
  494. package/dist/{index.es5.js.map → index7.es.js.map} +1 -1
  495. package/dist/index70.es.js +70 -0
  496. package/dist/index70.es.js.map +1 -0
  497. package/dist/{index.es64.js → index71.es.js} +4 -4
  498. package/dist/{index.es64.js.map → index71.es.js.map} +1 -1
  499. package/dist/{index.es65.js → index72.es.js} +8 -8
  500. package/dist/{index.es65.js.map → index72.es.js.map} +1 -1
  501. package/dist/{index.es66.js → index73.es.js} +5 -5
  502. package/dist/{index.es66.js.map → index73.es.js.map} +1 -1
  503. package/dist/{index.es67.js → index74.es.js} +1 -1
  504. package/dist/{index.es67.js.map → index74.es.js.map} +1 -1
  505. package/dist/{index.es68.js → index75.es.js} +1 -1
  506. package/dist/{index.es68.js.map → index75.es.js.map} +1 -1
  507. package/dist/{index.es69.js → index76.es.js} +1 -1
  508. package/dist/{index.es69.js.map → index76.es.js.map} +1 -1
  509. package/dist/index77.es.js +35 -0
  510. package/dist/index77.es.js.map +1 -0
  511. package/dist/{index.es70.js → index78.es.js} +2 -2
  512. package/dist/{index.es70.js.map → index78.es.js.map} +1 -1
  513. package/dist/{index.es71.js → index79.es.js} +1 -1
  514. package/dist/{index.es71.js.map → index79.es.js.map} +1 -1
  515. package/dist/{index.es6.js → index8.es.js} +3 -3
  516. package/dist/{index.es6.js.map → index8.es.js.map} +1 -1
  517. package/dist/{index.es72.js → index80.es.js} +3 -3
  518. package/dist/{index.es72.js.map → index80.es.js.map} +1 -1
  519. package/dist/{index.es73.js → index81.es.js} +4 -4
  520. package/dist/{index.es73.js.map → index81.es.js.map} +1 -1
  521. package/dist/{index.es74.js → index82.es.js} +1 -1
  522. package/dist/{index.es74.js.map → index82.es.js.map} +1 -1
  523. package/dist/{index.es75.js → index83.es.js} +1 -1
  524. package/dist/{index.es75.js.map → index83.es.js.map} +1 -1
  525. package/dist/{index.es76.js → index84.es.js} +1 -1
  526. package/dist/{index.es76.js.map → index84.es.js.map} +1 -1
  527. package/dist/{index.es77.js → index85.es.js} +2 -2
  528. package/dist/{index.es77.js.map → index85.es.js.map} +1 -1
  529. package/dist/{index.es78.js → index86.es.js} +2 -2
  530. package/dist/{index.es78.js.map → index86.es.js.map} +1 -1
  531. package/dist/{index.es79.js → index87.es.js} +1 -1
  532. package/dist/{index.es79.js.map → index87.es.js.map} +1 -1
  533. package/dist/index88.es.js +5 -0
  534. package/dist/index88.es.js.map +1 -0
  535. package/dist/{index.es81.js → index89.es.js} +1 -1
  536. package/dist/{index.es81.js.map → index89.es.js.map} +1 -1
  537. package/dist/{index.es7.js → index9.es.js} +4 -4
  538. package/dist/{index.es7.js.map → index9.es.js.map} +1 -1
  539. package/dist/{index.es82.js → index90.es.js} +2 -2
  540. package/dist/{index.es82.js.map → index90.es.js.map} +1 -1
  541. package/dist/index91.es.js +122 -0
  542. package/dist/index91.es.js.map +1 -0
  543. package/dist/{index.es84.js → index92.es.js} +1 -1
  544. package/dist/{index.es84.js.map → index92.es.js.map} +1 -1
  545. package/dist/{index.es85.js → index93.es.js} +1 -1
  546. package/dist/{index.es85.js.map → index93.es.js.map} +1 -1
  547. package/dist/{index.es86.js → index94.es.js} +1 -1
  548. package/dist/{index.es86.js.map → index94.es.js.map} +1 -1
  549. package/dist/{index.es87.js → index95.es.js} +1 -1
  550. package/dist/{index.es87.js.map → index95.es.js.map} +1 -1
  551. package/dist/{index.es88.js → index96.es.js} +1 -1
  552. package/dist/{index.es88.js.map → index96.es.js.map} +1 -1
  553. package/dist/{index.es89.js → index97.es.js} +1 -1
  554. package/dist/{index.es89.js.map → index97.es.js.map} +1 -1
  555. package/dist/{index.es105.js → index98.es.js} +1 -1
  556. package/dist/index98.es.js.map +1 -0
  557. package/dist/{index.es108.js → index99.es.js} +1 -1
  558. package/dist/index99.es.js.map +1 -0
  559. package/dist/lib/constants.d.ts +2 -0
  560. package/dist/lib/constants.d.ts.map +1 -0
  561. package/dist/styles.css +374 -48
  562. package/dist/ui-kit-preset.js +2 -1
  563. package/package.json +2 -1
  564. package/dist/index.es105.js.map +0 -1
  565. package/dist/index.es106.js +0 -36
  566. package/dist/index.es106.js.map +0 -1
  567. package/dist/index.es108.js.map +0 -1
  568. package/dist/index.es116.js.map +0 -1
  569. package/dist/index.es119.js.map +0 -1
  570. package/dist/index.es121.js.map +0 -1
  571. package/dist/index.es123.js.map +0 -1
  572. package/dist/index.es130.js.map +0 -1
  573. package/dist/index.es131.js +0 -5
  574. package/dist/index.es131.js.map +0 -1
  575. package/dist/index.es133.js.map +0 -1
  576. package/dist/index.es136.js.map +0 -1
  577. package/dist/index.es141.js.map +0 -1
  578. package/dist/index.es142.js.map +0 -1
  579. package/dist/index.es26.js.map +0 -1
  580. package/dist/index.es30.js +0 -82
  581. package/dist/index.es32.js.map +0 -1
  582. package/dist/index.es37.js +0 -43
  583. package/dist/index.es37.js.map +0 -1
  584. package/dist/index.es38.js +0 -48
  585. package/dist/index.es38.js.map +0 -1
  586. package/dist/index.es40.js.map +0 -1
  587. package/dist/index.es41.js.map +0 -1
  588. package/dist/index.es42.js +0 -278
  589. package/dist/index.es42.js.map +0 -1
  590. package/dist/index.es47.js.map +0 -1
  591. package/dist/index.es49.js +0 -37
  592. package/dist/index.es49.js.map +0 -1
  593. package/dist/index.es63.js +0 -39
  594. package/dist/index.es63.js.map +0 -1
  595. package/dist/index.es8.js.map +0 -1
  596. package/dist/index.es80.js +0 -5
  597. package/dist/index.es80.js.map +0 -1
  598. package/dist/index.es83.js +0 -116
  599. package/dist/index.es83.js.map +0 -1
  600. package/dist/index.es9.js.map +0 -1
  601. package/dist/index.es90.js.map +0 -1
  602. package/dist/index.es91.js.map +0 -1
  603. package/dist/index.es92.js.map +0 -1
  604. package/dist/index.es93.js.map +0 -1
  605. package/dist/index.es94.js +0 -105
  606. package/dist/index.es94.js.map +0 -1
  607. package/dist/index.es95.js.map +0 -1
  608. package/dist/index.es96.js.map +0 -1
  609. package/dist/index.es97.js.map +0 -1
  610. package/dist/index.es98.js.map +0 -1
  611. package/dist/index.es99.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.es140.js","sources":["../src/components/ui/form-renderer/components/form-fields/components/repeatable-group/index.tsx"],"sourcesContent":["// components/form-fields/RepeatableGroup.tsx\nimport React from 'react'\nimport { Typography } from '@/components/atoms/typography'\nimport { Button } from '@/components/atoms/button'\n\nimport { FormField } from '../../index' // Import your existing FormField component\nimport { useFormValues } from '../../../../context/form-values'\nimport { FormValues, RepeatableGroupField } from '../../../../form.types'\nimport { Plus } from 'lucide-react'\n\ninterface FormFieldProps {\n field: RepeatableGroupField\n}\n\nexport const RepeatableGroup: React.FC<FormFieldProps> = ({ field }) => {\n const { values, setValue, setFormValues } = useFormValues()\n\n // Get all entries for this repeatable group\n const getEntries = () => {\n const entries: FormValues[] = []\n const prefix = `${field.id}||`\n\n // Find all entry indices in one pass\n const entryIndices = new Set<number>()\n Object.keys(values).forEach((key) => {\n if (key.startsWith(prefix)) {\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n entryIndices.add(parseInt(match[1]))\n }\n }\n })\n\n // Sort indices numerically\n const sortedIndices = Array.from(entryIndices).sort((a, b) => a - b)\n\n // Build entry objects\n for (const index of sortedIndices) {\n const entryObject: FormValues = {}\n\n // Collect all subfields for this entry\n for (const subField of field.options) {\n const key = `${field.id}||${index}||${subField.id}`\n if (key in values) {\n entryObject[subField.id] = values[key]\n }\n }\n\n entries.push(entryObject)\n }\n\n return entries\n }\n\n const entries = getEntries()\n\n const handleAddEntry = () => {\n const newIndex = entries.length\n // Initialize new entry by setting values for each subfield\n field.options.forEach((subField) => {\n setValue(`${field.id}||${newIndex}||${subField.id}`, undefined)\n })\n }\n\n const handleRemoveEntry = (indexToRemove: number) => {\n const newValues = { ...values }\n\n // Step 1: Find all keys associated with all entries of this repeatable group\n const groupPrefix = `${field.id}||`\n const allGroupKeys = Object.keys(values).filter((key) =>\n key.startsWith(groupPrefix)\n )\n\n // Step 2: Process each key - either remove it or reindex it\n allGroupKeys.forEach((key) => {\n // Extract entry index from the key\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n const entryIndex = parseInt(match[1])\n\n if (entryIndex === indexToRemove) {\n // Delete keys for the entry being removed\n delete newValues[key]\n } else if (entryIndex > indexToRemove) {\n // Reindex entries that come after the removed one\n const remainingPart = key.substring(\n key.indexOf('||', groupPrefix.length)\n )\n\n const newKey = `${field.id}||${entryIndex - 1}${remainingPart}`\n\n // Copy the value to the new index\n newValues[newKey] = values[key]\n\n // Remove the old key\n delete newValues[key]\n }\n }\n })\n\n // Update form values with a single call\n setFormValues(newValues)\n }\n\n // Rest of your component remains largely the same\n return (\n <div className=\"flex flex-col gap-4\">\n {entries.length === 0 && (\n <div className=\"flex items-center justify-between\">\n <Typography variant={'body1'} className=\"text-light-4\">\n No entry added yet.\n </Typography>\n <Button\n size=\"sm\"\n prefixIcon={<Plus size={20} />}\n variant=\"secondary\"\n onClick={handleAddEntry}\n className=\"capitalize w-fit\"\n title={`Add `}\n />\n </div>\n )}\n\n {entries.map((_, entryIndex) => (\n <div key={`${field.id}-entry-${entryIndex}`}>\n <div className=\"flex items-center justify-between mb-3\">\n <Typography variant=\"body2\" className=\"text-light-4\">\n Entry {entryIndex + 1}\n </Typography>\n <Button\n size=\"sm\"\n variant=\"link-secondary\"\n onClick={() => handleRemoveEntry(entryIndex)}\n className=\"w-fit text-danger-1\"\n >\n Remove\n </Button>\n </div>\n\n <div className=\"flex flex-col gap-3\">\n {field.options.map((subField) => {\n const uniqueId = `${field.id}||${entryIndex}||${subField.id}`\n const modifiedField = {\n ...subField,\n id: uniqueId,\n }\n return <FormField key={uniqueId} field={modifiedField} />\n })}\n </div>\n </div>\n ))}\n {entries.length ? (\n <div className=\"flex justify-end\">\n <Button\n size=\"sm\"\n prefixIcon={<Plus size={20} />}\n variant=\"secondary\"\n onClick={handleAddEntry}\n className=\"mt-2 capitalize w-fit\"\n title={`Add more ${field.name}`}\n />\n </div>\n ) : null}\n </div>\n )\n}\n"],"names":["RepeatableGroup","field","values","setValue","setFormValues","useFormValues","entries","prefix","entryIndices","key","match","sortedIndices","a","b","index","entryObject","subField","handleAddEntry","newIndex","handleRemoveEntry","indexToRemove","newValues","groupPrefix","entryIndex","remainingPart","newKey","React","Typography","Button","Plus","_","uniqueId","modifiedField","FormField"],"mappings":"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"}
1
+ {"version":3,"file":"index177.es.js","sources":["../src/components/ui/form-renderer/components/form-fields/components/repeatable-group/index.tsx"],"sourcesContent":["// components/form-fields/RepeatableGroup.tsx\nimport React from 'react'\nimport { Typography } from '@/components/atoms/typography'\nimport { Button } from '@/components/atoms/button'\n\nimport { FormField } from '../../index' // Import your existing FormField component\nimport { useFormValues } from '../../../../context/form-values'\nimport { FormValues, RepeatableGroupField } from '../../../../form.types'\nimport { Plus } from 'lucide-react'\n\ninterface FormFieldProps {\n field: RepeatableGroupField\n}\n\nexport const RepeatableGroup: React.FC<FormFieldProps> = ({ field }) => {\n const { values, setValue, setFormValues } = useFormValues()\n\n // Get all entries for this repeatable group\n const getEntries = () => {\n const entries: FormValues[] = []\n const prefix = `${field.id}||`\n\n // Find all entry indices in one pass\n const entryIndices = new Set<number>()\n Object.keys(values).forEach((key) => {\n if (key.startsWith(prefix)) {\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n entryIndices.add(parseInt(match[1]))\n }\n }\n })\n\n // Sort indices numerically\n const sortedIndices = Array.from(entryIndices).sort((a, b) => a - b)\n\n // Build entry objects\n for (const index of sortedIndices) {\n const entryObject: FormValues = {}\n\n // Collect all subfields for this entry\n for (const subField of field.options) {\n const key = `${field.id}||${index}||${subField.id}`\n if (key in values) {\n entryObject[subField.id] = values[key]\n }\n }\n\n entries.push(entryObject)\n }\n\n return entries\n }\n\n const entries = getEntries()\n\n const handleAddEntry = () => {\n const newIndex = entries.length\n // Initialize new entry by setting values for each subfield\n field.options.forEach((subField) => {\n setValue(`${field.id}||${newIndex}||${subField.id}`, undefined)\n })\n }\n\n const handleRemoveEntry = (indexToRemove: number) => {\n const newValues = { ...values }\n\n // Step 1: Find all keys associated with all entries of this repeatable group\n const groupPrefix = `${field.id}||`\n const allGroupKeys = Object.keys(values).filter((key) =>\n key.startsWith(groupPrefix)\n )\n\n // Step 2: Process each key - either remove it or reindex it\n allGroupKeys.forEach((key) => {\n // Extract entry index from the key\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n const entryIndex = parseInt(match[1])\n\n if (entryIndex === indexToRemove) {\n // Delete keys for the entry being removed\n delete newValues[key]\n } else if (entryIndex > indexToRemove) {\n // Reindex entries that come after the removed one\n const remainingPart = key.substring(\n key.indexOf('||', groupPrefix.length)\n )\n\n const newKey = `${field.id}||${entryIndex - 1}${remainingPart}`\n\n // Copy the value to the new index\n newValues[newKey] = values[key]\n\n // Remove the old key\n delete newValues[key]\n }\n }\n })\n\n // Update form values with a single call\n setFormValues(newValues)\n }\n\n // Rest of your component remains largely the same\n return (\n <div className=\"flex flex-col gap-4\">\n {entries.length === 0 && (\n <div className=\"flex items-center justify-between\">\n <Typography variant={'body1'} className=\"text-light-4\">\n No entry added yet.\n </Typography>\n <Button\n size=\"sm\"\n prefixIcon={<Plus size={20} />}\n variant=\"secondary\"\n onClick={handleAddEntry}\n className=\"capitalize w-fit\"\n title={`Add `}\n />\n </div>\n )}\n\n {entries.map((_, entryIndex) => (\n <div key={`${field.id}-entry-${entryIndex}`}>\n <div className=\"flex items-center justify-between mb-3\">\n <Typography variant=\"body2\" className=\"text-light-4\">\n Entry {entryIndex + 1}\n </Typography>\n <Button\n size=\"sm\"\n variant=\"link-secondary\"\n onClick={() => handleRemoveEntry(entryIndex)}\n className=\"w-fit text-danger-1\"\n >\n Remove\n </Button>\n </div>\n\n <div className=\"flex flex-col gap-3\">\n {field.options.map((subField) => {\n const uniqueId = `${field.id}||${entryIndex}||${subField.id}`\n const modifiedField = {\n ...subField,\n id: uniqueId,\n }\n return <FormField key={uniqueId} field={modifiedField} />\n })}\n </div>\n </div>\n ))}\n {entries.length ? (\n <div className=\"flex justify-end\">\n <Button\n size=\"sm\"\n prefixIcon={<Plus size={20} />}\n variant=\"secondary\"\n onClick={handleAddEntry}\n className=\"mt-2 capitalize w-fit\"\n title={`Add more ${field.name}`}\n />\n </div>\n ) : null}\n </div>\n )\n}\n"],"names":["RepeatableGroup","field","values","setValue","setFormValues","useFormValues","entries","prefix","entryIndices","key","match","sortedIndices","a","b","index","entryObject","subField","handleAddEntry","newIndex","handleRemoveEntry","indexToRemove","newValues","groupPrefix","entryIndex","remainingPart","newKey","React","Typography","Button","Plus","_","uniqueId","modifiedField","FormField"],"mappings":"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"}
@@ -1,12 +1,13 @@
1
- import { Typography as g } from "./index.es17.js";
2
- import { Spinner as $ } from "./index.es57.js";
3
- import { SingleCombobox as x } from "./index.es25.js";
4
- import { Upload as R, Pen as S, X as T } from "lucide-react";
5
- import e, { useState as _, useRef as C } from "react";
6
- import { useFormValues as M } from "./index.es130.js";
7
- import { useToast as P } from "./index.es79.js";
8
- const X = ({
9
- id: b,
1
+ import { Typography as g } from "./index19.es.js";
2
+ import e, { useState as $, useRef as x } from "react";
3
+ import "./index35.es.js";
4
+ import { useToast as T } from "./index87.es.js";
5
+ import { Spinner as R } from "./index64.es.js";
6
+ import { SingleCombobox as S } from "./index27.es.js";
7
+ import { Upload as _, Pen as C, X as M } from "lucide-react";
8
+ import { useFormValues as P } from "./index141.es.js";
9
+ const q = ({
10
+ id: h,
10
11
  onChange: c,
11
12
  value: l = [],
12
13
  accept: y = "image/*",
@@ -14,7 +15,7 @@ const X = ({
14
15
  maxImages: a = 20,
15
16
  options: E
16
17
  }) => {
17
- const { onAssetUpload: u, onToggleImageEditor: f } = M(), { toast: o } = P(), [i, h] = _(!1), m = C(null), N = async (s) => {
18
+ const { onAssetUpload: u, onToggleImageEditor: f } = P(), { toast: o } = T(), [i, b] = $(!1), m = x(null), N = async (s) => {
18
19
  const t = s.target.files;
19
20
  if (!(!t?.length || i)) {
20
21
  if (l.length + t.length > a) {
@@ -26,7 +27,7 @@ const X = ({
26
27
  return;
27
28
  }
28
29
  if (u) {
29
- h(!0);
30
+ b(!0);
30
31
  try {
31
32
  const r = Array.from(t).map((d) => u(d)), A = (await Promise.all(r)).map((d) => ({ ...d, tag: "" }));
32
33
  c([...l, ...A]), o({
@@ -41,7 +42,7 @@ const X = ({
41
42
  icon: "warning"
42
43
  });
43
44
  } finally {
44
- h(!1), m.current && (m.current.value = "");
45
+ b(!1), m.current && (m.current.value = "");
45
46
  }
46
47
  }
47
48
  }
@@ -60,7 +61,7 @@ const X = ({
60
61
  const r = [...l], n = r[t];
61
62
  r.splice(t, 1, { ...n, ...s }), c(r);
62
63
  };
63
- return /* @__PURE__ */ e.createElement("div", { className: "relative" }, i && /* @__PURE__ */ e.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70" }, /* @__PURE__ */ e.createElement($, { className: "w-8 h-8 text-primary-1" })), /* @__PURE__ */ e.createElement("div", { className: "relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1" }, /* @__PURE__ */ e.createElement(
64
+ return /* @__PURE__ */ e.createElement("div", { className: "relative" }, i && /* @__PURE__ */ e.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70" }, /* @__PURE__ */ e.createElement(R, { className: "w-8 h-8 text-primary-1" })), /* @__PURE__ */ e.createElement("div", { className: "relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1" }, /* @__PURE__ */ e.createElement(
64
65
  "button",
65
66
  {
66
67
  className: "w-full",
@@ -68,12 +69,12 @@ const X = ({
68
69
  type: "button",
69
70
  disabled: i || l.length >= a
70
71
  },
71
- /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center gap-3 text-center" }, /* @__PURE__ */ e.createElement("div", { className: "bg-gray-100 rounded-full" }, /* @__PURE__ */ e.createElement(R, { className: "w-6 h-6 text-gray-500" })), /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-600" }, i ? "Uploading..." : l.length >= a ? `Maximum ${a} images reached` : "Add Images"), l.length > 0 && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-500" }, l.length, " of ", a, " images"))
72
+ /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center gap-3 text-center" }, /* @__PURE__ */ e.createElement("div", { className: "bg-gray-100 rounded-full" }, /* @__PURE__ */ e.createElement(_, { className: "w-6 h-6 text-gray-500" })), /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-600" }, i ? "Uploading..." : l.length >= a ? `Maximum ${a} images reached` : "Add Images"), l.length > 0 && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-500" }, l.length, " of ", a, " images"))
72
73
  ), /* @__PURE__ */ e.createElement(
73
74
  "input",
74
75
  {
75
76
  ref: m,
76
- id: `${b}-gallery`,
77
+ id: `${h}-gallery`,
77
78
  type: "file",
78
79
  accept: y,
79
80
  disabled: i || l.length >= a,
@@ -91,8 +92,9 @@ const X = ({
91
92
  ), f && /* @__PURE__ */ e.createElement(
92
93
  "button",
93
94
  {
94
- onClick: () => {
95
- f({
95
+ type: "button",
96
+ onClick: (r) => {
97
+ r.currentTarget.blur(), f({
96
98
  imageUrl: s.public_url,
97
99
  index: t,
98
100
  onReplaceImage: v
@@ -100,7 +102,7 @@ const X = ({
100
102
  },
101
103
  className: "absolute p-1 text-white bg-white rounded-full left-2 top-2 opacity-70 hover:opacity-100"
102
104
  },
103
- /* @__PURE__ */ e.createElement(S, { size: 16, className: "stroke-danger" })
105
+ /* @__PURE__ */ e.createElement(C, { size: 16, className: "stroke-danger" })
104
106
  ), /* @__PURE__ */ e.createElement(
105
107
  "button",
106
108
  {
@@ -109,9 +111,9 @@ const X = ({
109
111
  type: "button",
110
112
  disabled: i
111
113
  },
112
- /* @__PURE__ */ e.createElement(T, { size: 16, className: "stroke-danger" })
114
+ /* @__PURE__ */ e.createElement(M, { size: 16, className: "stroke-danger" })
113
115
  )), /* @__PURE__ */ e.createElement(
114
- x,
116
+ S,
115
117
  {
116
118
  options: E.map((r) => ({
117
119
  id: r,
@@ -127,6 +129,6 @@ const X = ({
127
129
  )))));
128
130
  };
129
131
  export {
130
- X as TaggableMultiImagePicker
132
+ q as TaggableMultiImagePicker
131
133
  };
132
- //# sourceMappingURL=index.es141.js.map
134
+ //# sourceMappingURL=index178.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index178.es.js","sources":["../src/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker/index.tsx"],"sourcesContent":["import { Typography } from '@/components/atoms/typography'\nimport { useToast } from '@/components/molecules/toast'\nimport { Spinner } from '@/components/unstyled/spinner'\nimport { SingleCombobox } from '@/components/molecules/single-combobox'\n\nimport { Upload, X, Pen } from 'lucide-react'\nimport React, { useRef, useState } from 'react'\nimport { useFormValues } from '../../../../context/form-values'\nimport { AssetValue, TaggableAssetValue } from '../../../../form.types'\n\ninterface TaggableMultiImagePickerProps {\n id: string\n onChange: (data: TaggableAssetValue[]) => void\n value?: TaggableAssetValue[]\n accept?: string\n error?: string\n maxImages?: number\n options: string[]\n}\n\nconst TaggableMultiImagePicker: React.FC<TaggableMultiImagePickerProps> = ({\n id,\n onChange,\n value = [],\n accept = 'image/*',\n error,\n maxImages = 20,\n options,\n}) => {\n const { onAssetUpload, onToggleImageEditor } = useFormValues()\n const { toast } = useToast()\n\n const [isLoading, setIsLoading] = useState(false)\n const fileInputRef = useRef<HTMLInputElement>(null)\n\n const handleImageSelect = async (e: React.ChangeEvent<HTMLInputElement>) => {\n const files = e.target.files\n if (!files?.length || isLoading) return\n\n if (value.length + files.length > maxImages) {\n toast({\n title: 'Alert!',\n description: `Maximum ${maxImages} images allowed.`,\n icon: 'warning',\n })\n return\n }\n\n if (onAssetUpload) {\n setIsLoading(true)\n\n try {\n const uploads = Array.from(files).map((file) => onAssetUpload(file))\n const results = await Promise.all(uploads)\n\n const TaggedResults = results.map((result) => ({ ...result, tag: '' }))\n\n onChange([...value, ...TaggedResults])\n\n toast({\n title: 'Alert!',\n description: `${files.length} ${files.length === 1 ? 'image' : 'images'} uploaded successfully.`,\n icon: 'success',\n })\n } catch (error) {\n toast({\n title: 'Alert!',\n description: `Error uploading images`,\n icon: 'warning',\n })\n } finally {\n setIsLoading(false)\n // Reset the file input so the same files can be selected again\n if (fileInputRef.current) {\n fileInputRef.current.value = ''\n }\n }\n }\n }\n\n const handleClick = () => {\n if (!isLoading && value.length < maxImages) {\n fileInputRef.current?.click()\n } else if (value.length >= maxImages) {\n toast({\n title: 'Alert!',\n description: `Maximum ${maxImages} images allowed.`,\n icon: 'warning',\n })\n }\n }\n\n const removeImage = (index: number) => {\n if (!isLoading) {\n const newImages = [...value]\n newImages.splice(index, 1)\n onChange(newImages)\n }\n }\n\n const onReplaceImage = (data: AssetValue, index: number) => {\n const newValue = [...value]\n const existingImage = newValue[index]\n\n newValue.splice(index, 1, { ...existingImage, ...data })\n onChange(newValue)\n }\n\n return (\n <div className=\"relative\">\n {isLoading && (\n <div className=\"absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70\">\n <Spinner className=\"w-8 h-8 text-primary-1\" />\n </div>\n )}\n <div className=\"relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1\">\n <button\n className=\"w-full\"\n onClick={handleClick}\n type=\"button\"\n disabled={isLoading || value.length >= maxImages}\n >\n <div className=\"flex flex-col items-center gap-3 text-center\">\n <div className=\"bg-gray-100 rounded-full\">\n <Upload className=\"w-6 h-6 text-gray-500\" />\n </div>\n <Typography variant=\"body1\" className=\"text-gray-600\">\n {isLoading\n ? 'Uploading...'\n : value.length >= maxImages\n ? `Maximum ${maxImages} images reached`\n : 'Add Images'}\n </Typography>\n {value.length > 0 && (\n <Typography variant=\"body1\" className=\"text-gray-500\">\n {value.length} of {maxImages} images\n </Typography>\n )}\n </div>\n </button>\n <input\n ref={fileInputRef}\n id={`${id}-gallery`}\n type=\"file\"\n accept={accept}\n disabled={isLoading || value.length >= maxImages}\n onChange={handleImageSelect}\n className=\"hidden\"\n multiple\n />\n\n {error && (\n <Typography variant=\"body1\" className=\"mt-1 text-danger-1\">\n {error}\n </Typography>\n )}\n </div>\n\n {value.length > 0 && (\n <div className=\"grid grid-cols-2 gap-4 mt-4 sm:grid-cols-3 md:grid-cols-4\">\n {value.map((image, index) => (\n <div key={image.private_url} className=\"flex flex-col gap-2\">\n <div key={index} className=\"relative flex rounded\">\n <img\n src={image.public_url}\n alt={`Preview ${index + 1}`}\n className=\"object-cover w-full h-24 rounded\"\n />\n {onToggleImageEditor && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.currentTarget.blur()\n onToggleImageEditor({\n imageUrl: image.public_url,\n index,\n onReplaceImage,\n })\n }}\n className=\"absolute p-1 text-white bg-white rounded-full left-2 top-2 opacity-70 hover:opacity-100\"\n >\n <Pen size={16} className=\"stroke-danger\" />\n </button>\n )}\n <button\n onClick={() => removeImage(index)}\n className=\"absolute p-1 text-white bg-white rounded-full right-2 top-2 opacity-70 hover:opacity-100\"\n type=\"button\"\n disabled={isLoading}\n >\n <X size={16} className=\"stroke-danger\" />\n </button>\n </div>\n <SingleCombobox\n options={options.map((option) => ({\n id: option,\n name: option,\n }))}\n value={image.tag}\n onChange={(data) => {\n const newImages = [...value]\n newImages[index].tag = data\n onChange(newImages)\n }}\n placeholder={'Select '}\n />\n </div>\n ))}\n </div>\n )}\n </div>\n )\n}\n\nexport { TaggableMultiImagePicker }\n"],"names":["TaggableMultiImagePicker","id","onChange","value","accept","error","maxImages","options","onAssetUpload","onToggleImageEditor","useFormValues","toast","useToast","isLoading","setIsLoading","useState","fileInputRef","useRef","handleImageSelect","e","files","uploads","file","TaggedResults","result","handleClick","removeImage","index","newImages","onReplaceImage","data","newValue","existingImage","React","Spinner","Upload","Typography","image","Pen","X","SingleCombobox","option"],"mappings":"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"}
@@ -1,27 +1,28 @@
1
1
  import * as e from "react";
2
- import { useState as $, useRef as x } from "react";
3
- import { Input as R } from "./index.es9.js";
4
- import { Typography as g } from "./index.es17.js";
5
- import { Spinner as T } from "./index.es57.js";
6
- import { Upload as U, Pen as I, X as z } from "lucide-react";
7
- import { useFormValues as C } from "./index.es130.js";
8
- import { useToast as M } from "./index.es79.js";
9
- const q = ({
2
+ import { useState as $, useRef as T } from "react";
3
+ import { Input as x } from "./index11.es.js";
4
+ import { Typography as g } from "./index19.es.js";
5
+ import "./index35.es.js";
6
+ import { useToast as R } from "./index87.es.js";
7
+ import { Spinner as U } from "./index64.es.js";
8
+ import { Upload as I, Pen as z, X as C } from "lucide-react";
9
+ import { useFormValues as M } from "./index141.es.js";
10
+ const W = ({
10
11
  id: p,
11
- onChange: c,
12
- value: l = [],
12
+ onChange: o,
13
+ value: r = [],
13
14
  accept: E = "image/*",
14
15
  error: u,
15
- maxImages: r = 20,
16
+ maxImages: l = 20,
16
17
  placeholder: f
17
18
  }) => {
18
- const { onAssetUpload: h, onToggleImageEditor: y } = C(), { toast: o } = M(), [s, b] = $(!1), m = x(null), N = async (a) => {
19
+ const { onAssetUpload: h, onToggleImageEditor: y } = M(), { toast: c } = R(), [i, b] = $(!1), m = T(null), N = async (a) => {
19
20
  const t = a.target.files;
20
- if (!(!t?.length || s)) {
21
- if (l.length + t.length > r) {
22
- o({
21
+ if (!(!t?.length || i)) {
22
+ if (r.length + t.length > l) {
23
+ c({
23
24
  title: "Alert!",
24
- description: `Maximum ${r} images allowed.`,
25
+ description: `Maximum ${l} images allowed.`,
25
26
  icon: "warning"
26
27
  });
27
28
  return;
@@ -29,14 +30,14 @@ const q = ({
29
30
  if (h) {
30
31
  b(!0);
31
32
  try {
32
- const i = Array.from(t).map((d) => h(d)), A = (await Promise.all(i)).map((d) => ({ ...d, tag: "" }));
33
- c([...l, ...A]), o({
33
+ const s = Array.from(t).map((d) => h(d)), A = (await Promise.all(s)).map((d) => ({ ...d, tag: "" }));
34
+ o([...r, ...A]), c({
34
35
  title: "Alert!",
35
36
  description: `${t.length} ${t.length === 1 ? "image" : "images"} uploaded successfully.`,
36
37
  icon: "success"
37
38
  });
38
39
  } catch {
39
- o({
40
+ c({
40
41
  title: "Alert!",
41
42
  description: "Error uploading images",
42
43
  icon: "warning"
@@ -47,29 +48,29 @@ const q = ({
47
48
  }
48
49
  }
49
50
  }, w = () => {
50
- !s && l.length < r ? m.current?.click() : l.length >= r && o({
51
+ !i && r.length < l ? m.current?.click() : r.length >= l && c({
51
52
  title: "Alert!",
52
- description: `Maximum ${r} images allowed.`,
53
+ description: `Maximum ${l} images allowed.`,
53
54
  icon: "warning"
54
55
  });
55
56
  }, v = (a) => {
56
- if (!s) {
57
- const t = [...l];
58
- t.splice(a, 1), c(t);
57
+ if (!i) {
58
+ const t = [...r];
59
+ t.splice(a, 1), o(t);
59
60
  }
60
61
  }, k = (a, t) => {
61
- const i = [...l], n = i[t];
62
- i.splice(t, 1, { ...n, ...a }), c(i);
62
+ const s = [...r], n = s[t];
63
+ s.splice(t, 1, { ...n, ...a }), o(s);
63
64
  };
64
- return /* @__PURE__ */ e.createElement("div", { className: "relative" }, s && /* @__PURE__ */ e.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70" }, /* @__PURE__ */ e.createElement(T, { className: "w-8 h-8 text-primary-1" })), /* @__PURE__ */ e.createElement("div", { className: "relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1" }, /* @__PURE__ */ e.createElement(
65
+ return /* @__PURE__ */ e.createElement("div", { className: "relative" }, i && /* @__PURE__ */ e.createElement("div", { className: "absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70" }, /* @__PURE__ */ e.createElement(U, { className: "w-8 h-8 text-primary-1" })), /* @__PURE__ */ e.createElement("div", { className: "relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1" }, /* @__PURE__ */ e.createElement(
65
66
  "button",
66
67
  {
67
68
  className: "w-full",
68
69
  onClick: w,
69
70
  type: "button",
70
- disabled: s || l.length >= r
71
+ disabled: i || r.length >= l
71
72
  },
72
- /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center gap-3 text-center" }, /* @__PURE__ */ e.createElement("div", { className: "bg-gray-100 rounded-full" }, /* @__PURE__ */ e.createElement(U, { className: "w-6 h-6 text-gray-500" })), /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-600" }, s ? "Uploading..." : l.length >= r ? `Maximum ${r} images reached` : "Add Images"), l.length > 0 && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-500" }, l.length, " of ", r, " images"))
73
+ /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center gap-3 text-center" }, /* @__PURE__ */ e.createElement("div", { className: "bg-gray-100 rounded-full" }, /* @__PURE__ */ e.createElement(I, { className: "w-6 h-6 text-gray-500" })), /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-600" }, i ? "Uploading..." : r.length >= l ? `Maximum ${l} images reached` : "Add Images"), r.length > 0 && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "text-gray-500" }, r.length, " of ", l, " images"))
73
74
  ), /* @__PURE__ */ e.createElement(
74
75
  "input",
75
76
  {
@@ -77,12 +78,12 @@ const q = ({
77
78
  id: `${p}-gallery`,
78
79
  type: "file",
79
80
  accept: E,
80
- disabled: s || l.length >= r,
81
+ disabled: i || r.length >= l,
81
82
  onChange: N,
82
83
  className: "hidden",
83
84
  multiple: !0
84
85
  }
85
- ), u && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "mt-1 text-danger-1" }, u)), l.length > 0 && /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-2 gap-4 mt-4 sm:grid-cols-3 md:grid-cols-4" }, l.map((a, t) => /* @__PURE__ */ e.createElement("div", { key: a.private_url, className: "flex flex-col gap-2" }, /* @__PURE__ */ e.createElement("div", { key: t, className: "relative flex rounded" }, /* @__PURE__ */ e.createElement(
86
+ ), u && /* @__PURE__ */ e.createElement(g, { variant: "body1", className: "mt-1 text-danger-1" }, u)), r.length > 0 && /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-2 gap-4 mt-4 sm:grid-cols-3 md:grid-cols-4" }, r.map((a, t) => /* @__PURE__ */ e.createElement("div", { key: a.private_url, className: "flex flex-col gap-2" }, /* @__PURE__ */ e.createElement("div", { key: t, className: "relative flex rounded" }, /* @__PURE__ */ e.createElement(
86
87
  "img",
87
88
  {
88
89
  src: a.public_url,
@@ -92,8 +93,9 @@ const q = ({
92
93
  ), y && /* @__PURE__ */ e.createElement(
93
94
  "button",
94
95
  {
95
- onClick: () => {
96
- y({
96
+ type: "button",
97
+ onClick: (s) => {
98
+ s.currentTarget.blur(), y({
97
99
  imageUrl: a.public_url,
98
100
  index: t,
99
101
  onReplaceImage: k
@@ -101,32 +103,32 @@ const q = ({
101
103
  },
102
104
  className: "absolute p-1 text-white bg-white rounded-full left-2 top-2 opacity-70 hover:opacity-100"
103
105
  },
104
- /* @__PURE__ */ e.createElement(I, { size: 16, className: "stroke-danger" })
106
+ /* @__PURE__ */ e.createElement(z, { size: 16, className: "stroke-danger" })
105
107
  ), /* @__PURE__ */ e.createElement(
106
108
  "button",
107
109
  {
108
110
  onClick: () => v(t),
109
111
  className: "absolute p-1 text-white bg-white rounded-full right-2 top-2 opacity-70 hover:opacity-100",
110
112
  type: "button",
111
- disabled: s
113
+ disabled: i
112
114
  },
113
- /* @__PURE__ */ e.createElement(z, { size: 16, className: "stroke-danger" })
115
+ /* @__PURE__ */ e.createElement(C, { size: 16, className: "stroke-danger" })
114
116
  )), /* @__PURE__ */ e.createElement(
115
- R,
117
+ x,
116
118
  {
117
119
  id: p + t,
118
120
  type: "text",
119
121
  placeholder: f || "",
120
122
  value: a.tag,
121
123
  required: !0,
122
- onChange: (i) => {
123
- const n = [...l];
124
- n[t].tag = i.target.value, c(n);
124
+ onChange: (s) => {
125
+ const n = [...r];
126
+ n[t].tag = s.target.value, o(n);
125
127
  }
126
128
  }
127
129
  )))));
128
130
  };
129
131
  export {
130
- q as TaggableImageUploadFieldWithInput
132
+ W as TaggableImageUploadFieldWithInput
131
133
  };
132
- //# sourceMappingURL=index.es142.js.map
134
+ //# sourceMappingURL=index179.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index179.es.js","sources":["../src/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker-with-input/index.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Input } from '@/components/atoms/input'\nimport { Typography } from '@/components/atoms/typography'\nimport { useToast } from '@/components/molecules/toast'\nimport { useFormValues } from '@/components/ui/form-renderer/context/form-values'\nimport {\n AssetValue,\n TaggableAssetValue,\n} from '@/components/ui/form-renderer/form.types'\nimport { Spinner } from '@/components/unstyled/spinner'\nimport { Upload, X, Pen } from 'lucide-react'\nimport { useRef, useState } from 'react'\n\ninterface TaggableImageUploadFieldWithInputProps {\n id: string\n onChange: (data: TaggableAssetValue[]) => void\n value?: TaggableAssetValue[]\n accept?: string\n error?: string\n maxImages?: number\n placeholder?: string\n}\n\nconst TaggableImageUploadFieldWithInput: React.FC<\n TaggableImageUploadFieldWithInputProps\n> = ({\n id,\n onChange,\n value = [],\n accept = 'image/*',\n error,\n maxImages = 20,\n placeholder,\n}) => {\n const { onAssetUpload, onToggleImageEditor } = useFormValues()\n const { toast } = useToast()\n\n const [isLoading, setIsLoading] = useState(false)\n const fileInputRef = useRef<HTMLInputElement>(null)\n\n const handleImageSelect = async (e: React.ChangeEvent<HTMLInputElement>) => {\n const files = e.target.files\n if (!files?.length || isLoading) return\n\n if (value.length + files.length > maxImages) {\n toast({\n title: 'Alert!',\n description: `Maximum ${maxImages} images allowed.`,\n icon: 'warning',\n })\n return\n }\n\n if (onAssetUpload) {\n setIsLoading(true)\n\n try {\n const uploads = Array.from(files).map((file) => onAssetUpload(file))\n const results = await Promise.all(uploads)\n\n const TaggedResults = results.map((result) => ({ ...result, tag: '' }))\n\n onChange([...value, ...TaggedResults])\n\n toast({\n title: 'Alert!',\n description: `${files.length} ${files.length === 1 ? 'image' : 'images'} uploaded successfully.`,\n icon: 'success',\n })\n } catch (error) {\n toast({\n title: 'Alert!',\n description: `Error uploading images`,\n icon: 'warning',\n })\n } finally {\n setIsLoading(false)\n // Reset the file input so the same files can be selected again\n if (fileInputRef.current) {\n fileInputRef.current.value = ''\n }\n }\n }\n }\n\n const handleClick = () => {\n if (!isLoading && value.length < maxImages) {\n fileInputRef.current?.click()\n } else if (value.length >= maxImages) {\n toast({\n title: 'Alert!',\n description: `Maximum ${maxImages} images allowed.`,\n icon: 'warning',\n })\n }\n }\n\n const removeImage = (index: number) => {\n if (!isLoading) {\n const newImages = [...value]\n newImages.splice(index, 1)\n onChange(newImages)\n }\n }\n\n const onReplaceImage = (data: AssetValue, index: number) => {\n const newValue = [...value]\n const existingImage = newValue[index]\n\n newValue.splice(index, 1, { ...existingImage, ...data })\n onChange(newValue)\n }\n return (\n <div className=\"relative\">\n {isLoading && (\n <div className=\"absolute inset-0 z-10 flex items-center justify-center bg-white bg-opacity-70\">\n <Spinner className=\"w-8 h-8 text-primary-1\" />\n </div>\n )}\n <div className=\"relative p-8 border-2 border-dashed rounded-lg border-primary-1 bg-primary-1\">\n <button\n className=\"w-full\"\n onClick={handleClick}\n type=\"button\"\n disabled={isLoading || value.length >= maxImages}\n >\n <div className=\"flex flex-col items-center gap-3 text-center\">\n <div className=\"bg-gray-100 rounded-full\">\n <Upload className=\"w-6 h-6 text-gray-500\" />\n </div>\n <Typography variant=\"body1\" className=\"text-gray-600\">\n {isLoading\n ? 'Uploading...'\n : value.length >= maxImages\n ? `Maximum ${maxImages} images reached`\n : 'Add Images'}\n </Typography>\n {value.length > 0 && (\n <Typography variant=\"body1\" className=\"text-gray-500\">\n {value.length} of {maxImages} images\n </Typography>\n )}\n </div>\n </button>\n <input\n ref={fileInputRef}\n id={`${id}-gallery`}\n type=\"file\"\n accept={accept}\n disabled={isLoading || value.length >= maxImages}\n onChange={handleImageSelect}\n className=\"hidden\"\n multiple\n />\n\n {error && (\n <Typography variant=\"body1\" className=\"mt-1 text-danger-1\">\n {error}\n </Typography>\n )}\n </div>\n\n {value.length > 0 && (\n <div className=\"grid grid-cols-2 gap-4 mt-4 sm:grid-cols-3 md:grid-cols-4\">\n {value.map((image, index) => (\n <div key={image.private_url} className=\"flex flex-col gap-2\">\n <div key={index} className=\"relative flex rounded\">\n <img\n src={image.public_url}\n alt={`Preview ${index + 1}`}\n className=\"object-cover w-full h-24 rounded\"\n />\n {onToggleImageEditor && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.currentTarget.blur()\n onToggleImageEditor({\n imageUrl: image.public_url,\n index,\n onReplaceImage,\n })\n }}\n className=\"absolute p-1 text-white bg-white rounded-full left-2 top-2 opacity-70 hover:opacity-100\"\n >\n <Pen size={16} className=\"stroke-danger\" />\n </button>\n )}\n <button\n onClick={() => removeImage(index)}\n className=\"absolute p-1 text-white bg-white rounded-full right-2 top-2 opacity-70 hover:opacity-100\"\n type=\"button\"\n disabled={isLoading}\n >\n <X size={16} className=\"stroke-danger\" />\n </button>\n </div>\n <Input\n id={id + index}\n type=\"text\"\n placeholder={placeholder ? placeholder : ''}\n value={image.tag}\n required={true}\n onChange={(e) => {\n const newImages = [...value]\n newImages[index].tag = e.target.value\n onChange(newImages)\n }}\n />\n </div>\n ))}\n </div>\n )}\n </div>\n )\n}\n\nexport { TaggableImageUploadFieldWithInput }\n"],"names":["TaggableImageUploadFieldWithInput","id","onChange","value","accept","error","maxImages","placeholder","onAssetUpload","onToggleImageEditor","useFormValues","toast","useToast","isLoading","setIsLoading","useState","fileInputRef","useRef","handleImageSelect","e","files","uploads","file","TaggedResults","result","handleClick","removeImage","index","newImages","onReplaceImage","data","newValue","existingImage","React","Spinner","Upload","Typography","image","Pen","X","Input"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TooltipProvider as i, TooltipWrapper as n, TooltipTrigger as a, TooltipContent as m } from "./index.es15.js";
1
+ import { TooltipProvider as i, TooltipWrapper as n, TooltipTrigger as a, TooltipContent as m } from "./index17.es.js";
2
2
  import * as t from "react";
3
3
  function c({
4
4
  headerText: o,
@@ -24,4 +24,4 @@ function c({
24
24
  export {
25
25
  c as default
26
26
  };
27
- //# sourceMappingURL=index.es16.js.map
27
+ //# sourceMappingURL=index18.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es16.js","sources":["../src/components/atoms/tooltip/tooltip.tsx"],"sourcesContent":["import {\n TooltipWrapper,\n TooltipContent,\n TooltipTrigger,\n TooltipProvider,\n} from './tooltip-components'\nimport * as React from 'react'\nimport { TooltipProps } from './tooltip.types'\n\nexport default function Tooltip({\n headerText,\n content,\n className,\n // id,\n ...props\n}: TooltipProps) {\n return (\n // <div id={id}>\n <TooltipProvider>\n <TooltipWrapper {...props}>\n <TooltipTrigger>{props?.triggerElement}</TooltipTrigger>\n <TooltipContent\n side={props?.side ?? 'top'}\n headerText={headerText ?? ''}\n content={content ?? ''}\n className={className}\n {...props}\n />\n </TooltipWrapper>\n </TooltipProvider>\n // </div>\n )\n}\n"],"names":["Tooltip","headerText","content","className","props","React","TooltipProvider","TooltipWrapper","TooltipTrigger","TooltipContent"],"mappings":";;AASA,SAAwBA,EAAQ;AAAA,EAC9B,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AAAA;AAAA,EAEA,GAAGC;AACL,GAAiB;AACf;AAAA;AAAA,IAEE,gBAAAC,EAAA,cAACC,GAAA,MACC,gBAAAD,EAAA,cAACE,GAAA,EAAgB,GAAGH,KAClB,gBAAAC,EAAA,cAACG,GAAA,MAAgBJ,GAAO,cAAe,GACvC,gBAAAC,EAAA;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAML,GAAO,QAAQ;AAAA,QACrB,YAAYH,KAAc;AAAA,QAC1B,SAASC,KAAW;AAAA,QACpB,WAAAC;AAAA,QACC,GAAGC;AAAA,MAAA;AAAA,IAAA,CAER,CACF;AAAA;AAGJ;"}
1
+ {"version":3,"file":"index18.es.js","sources":["../src/components/atoms/tooltip/tooltip.tsx"],"sourcesContent":["import {\n TooltipWrapper,\n TooltipContent,\n TooltipTrigger,\n TooltipProvider,\n} from './tooltip-components'\nimport * as React from 'react'\nimport { TooltipProps } from './tooltip.types'\n\nexport default function Tooltip({\n headerText,\n content,\n className,\n // id,\n ...props\n}: TooltipProps) {\n return (\n // <div id={id}>\n <TooltipProvider>\n <TooltipWrapper {...props}>\n <TooltipTrigger>{props?.triggerElement}</TooltipTrigger>\n <TooltipContent\n side={props?.side ?? 'top'}\n headerText={headerText ?? ''}\n content={content ?? ''}\n className={className}\n {...props}\n />\n </TooltipWrapper>\n </TooltipProvider>\n // </div>\n )\n}\n"],"names":["Tooltip","headerText","content","className","props","React","TooltipProvider","TooltipWrapper","TooltipTrigger","TooltipContent"],"mappings":";;AASA,SAAwBA,EAAQ;AAAA,EAC9B,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AAAA;AAAA,EAEA,GAAGC;AACL,GAAiB;AACf;AAAA;AAAA,IAEE,gBAAAC,EAAA,cAACC,GAAA,MACC,gBAAAD,EAAA,cAACE,GAAA,EAAgB,GAAGH,KAClB,gBAAAC,EAAA,cAACG,GAAA,MAAgBJ,GAAO,cAAe,GACvC,gBAAAC,EAAA;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAML,GAAO,QAAQ;AAAA,QACrB,YAAYH,KAAc;AAAA,QAC1B,SAASC,KAAW;AAAA,QACpB,WAAAC;AAAA,QACC,GAAGC;AAAA,MAAA;AAAA,IAAA,CAER,CACF;AAAA;AAGJ;"}
@@ -0,0 +1,29 @@
1
+ import e from "react";
2
+ function t({ children: r }) {
3
+ return /* @__PURE__ */ e.createElement(
4
+ "svg",
5
+ {
6
+ viewBox: "0 0 24 24",
7
+ fill: "none",
8
+ stroke: "currentColor",
9
+ strokeWidth: 1.6,
10
+ strokeLinecap: "round"
11
+ },
12
+ r
13
+ );
14
+ }
15
+ const l = {
16
+ rect: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("rect", { x: "4", y: "5", width: "16", height: "14", rx: "1" })),
17
+ ellipse: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("ellipse", { cx: "12", cy: "12", rx: "9", ry: "6" })),
18
+ circle: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("circle", { cx: "12", cy: "12", r: "8" })),
19
+ line: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5" })),
20
+ dashedLine: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5", strokeDasharray: "4 3", strokeLinecap: "butt" })),
21
+ arrow: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5" }), /* @__PURE__ */ e.createElement("path", { d: "M19 5v7M19 5h-7" })),
22
+ dashedArrow: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5", strokeDasharray: "4 3", strokeLinecap: "butt" }), /* @__PURE__ */ e.createElement("path", { d: "M19 5v7M19 5h-7" })),
23
+ doubleArrow: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5" }), /* @__PURE__ */ e.createElement("path", { d: "M19 5v7M19 5h-7" }), /* @__PURE__ */ e.createElement("path", { d: "M5 19v-7M5 19h7" })),
24
+ dashedDoubleArrow: /* @__PURE__ */ e.createElement(t, null, /* @__PURE__ */ e.createElement("path", { d: "M5 19L19 5", strokeDasharray: "4 3", strokeLinecap: "butt" }), /* @__PURE__ */ e.createElement("path", { d: "M19 5v7M19 5h-7" }), /* @__PURE__ */ e.createElement("path", { d: "M5 19v-7M5 19h7" }))
25
+ };
26
+ export {
27
+ l as ShapeIcons
28
+ };
29
+ //# sourceMappingURL=index180.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index180.es.js","sources":["../src/components/organisms/image-editor/components/shape-icons.tsx"],"sourcesContent":["import React from 'react'\n\nfunction Icon({ children }: { children: React.ReactNode }) {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={1.6}\n strokeLinecap=\"round\"\n >\n {children}\n </svg>\n )\n}\n\nexport const ShapeIcons: Record<string, React.ReactNode> = {\n rect: (\n <Icon>\n <rect x=\"4\" y=\"5\" width=\"16\" height=\"14\" rx=\"1\" />\n </Icon>\n ),\n ellipse: (\n <Icon>\n <ellipse cx=\"12\" cy=\"12\" rx=\"9\" ry=\"6\" />\n </Icon>\n ),\n circle: (\n <Icon>\n <circle cx=\"12\" cy=\"12\" r=\"8\" />\n </Icon>\n ),\n line: (\n <Icon>\n <path d=\"M5 19L19 5\" />\n </Icon>\n ),\n dashedLine: (\n <Icon>\n <path d=\"M5 19L19 5\" strokeDasharray=\"4 3\" strokeLinecap=\"butt\" />\n </Icon>\n ),\n arrow: (\n <Icon>\n <path d=\"M5 19L19 5\" />\n <path d=\"M19 5v7M19 5h-7\" />\n </Icon>\n ),\n dashedArrow: (\n <Icon>\n <path d=\"M5 19L19 5\" strokeDasharray=\"4 3\" strokeLinecap=\"butt\" />\n <path d=\"M19 5v7M19 5h-7\" />\n </Icon>\n ),\n doubleArrow: (\n <Icon>\n <path d=\"M5 19L19 5\" />\n <path d=\"M19 5v7M19 5h-7\" />\n <path d=\"M5 19v-7M5 19h7\" />\n </Icon>\n ),\n dashedDoubleArrow: (\n <Icon>\n <path d=\"M5 19L19 5\" strokeDasharray=\"4 3\" strokeLinecap=\"butt\" />\n <path d=\"M19 5v7M19 5h-7\" />\n <path d=\"M5 19v-7M5 19h7\" />\n </Icon>\n ),\n}\n"],"names":["Icon","children","React","ShapeIcons"],"mappings":";AAEA,SAASA,EAAK,EAAE,UAAAC,KAA2C;AACzD,SACEC,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,QAAO;AAAA,MACP,aAAa;AAAA,MACb,eAAc;AAAA,IAAA;AAAA,IAEbD;AAAA,EAAA;AAGP;AAEO,MAAME,IAA8C;AAAA,EACzD,MACED,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,UAAK,GAAE,KAAI,GAAE,KAAI,OAAM,MAAK,QAAO,MAAK,IAAG,KAAI,CAClD;AAAA,EAEF,SACEA,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,WAAA,EAAQ,IAAG,MAAK,IAAG,MAAK,IAAG,KAAI,IAAG,KAAI,CACzC;AAAA,EAEF,QACEA,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,UAAA,EAAO,IAAG,MAAK,IAAG,MAAK,GAAE,IAAA,CAAI,CAChC;AAAA,EAEF,MACEA,gBAAAA,EAAA,cAACF,GAAA,sCACE,QAAA,EAAK,GAAE,cAAa,CACvB;AAAA,EAEF,YACEE,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,cAAa,iBAAgB,OAAM,eAAc,OAAA,CAAO,CAClE;AAAA,EAEF,OACEA,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,aAAA,CAAa,GACrBA,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,kBAAA,CAAkB,CAC5B;AAAA,EAEF,aACEA,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,cAAa,iBAAgB,OAAM,eAAc,QAAO,GAChEA,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,mBAAkB,CAC5B;AAAA,EAEF,aACEA,gBAAAA,EAAA,cAACF,GAAA,MACCE,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,aAAA,CAAa,GACrBA,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,kBAAA,CAAkB,mCACzB,QAAA,EAAK,GAAE,mBAAkB,CAC5B;AAAA,EAEF,mDACGF,GAAA,MACCE,gBAAAA,EAAA,cAAC,UAAK,GAAE,cAAa,iBAAgB,OAAM,eAAc,QAAO,GAChEA,gBAAAA,EAAA,cAAC,UAAK,GAAE,kBAAA,CAAkB,GAC1BA,gBAAAA,EAAA,cAAC,QAAA,EAAK,GAAE,kBAAA,CAAkB,CAC5B;AAEJ;"}
@@ -0,0 +1,27 @@
1
+ import t from "react";
2
+ import { SWATCHES as l } from "./index148.es.js";
3
+ function m({ value: r, onChange: a }) {
4
+ return /* @__PURE__ */ t.createElement("div", null, /* @__PURE__ */ t.createElement("span", { className: "mb-1 block text-xs text-light-4" }, "Color"), /* @__PURE__ */ t.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ t.createElement(
5
+ "input",
6
+ {
7
+ type: "color",
8
+ value: r,
9
+ onChange: (e) => a(e.target.value),
10
+ className: "h-[34px] w-10 cursor-pointer rounded-md border border-neutral-1 bg-white p-0.5"
11
+ }
12
+ ), /* @__PURE__ */ t.createElement("span", { className: "text-xs text-light-4" }, r)), /* @__PURE__ */ t.createElement("div", { className: "mt-2 flex flex-wrap gap-1.5" }, l.map((e) => /* @__PURE__ */ t.createElement(
13
+ "button",
14
+ {
15
+ key: e,
16
+ type: "button",
17
+ "aria-label": e,
18
+ onClick: () => a(e),
19
+ className: `h-[26px] w-[26px] rounded-md border-2 hover:border-light-2 ${r.toLowerCase() === e.toLowerCase() ? "border-rest-p1" : "border-transparent"}`,
20
+ style: { backgroundColor: e }
21
+ }
22
+ ))));
23
+ }
24
+ export {
25
+ m as ColorPicker
26
+ };
27
+ //# sourceMappingURL=index181.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index181.es.js","sources":["../src/components/organisms/image-editor/components/color-picker.tsx"],"sourcesContent":["import React from 'react'\n\nimport { SWATCHES } from '../picture-studio-engine'\n\ninterface ColorPickerProps {\n value: string\n onChange: (color: string) => void\n}\n\nexport function ColorPicker({ value, onChange }: ColorPickerProps) {\n return (\n <div>\n <span className=\"mb-1 block text-xs text-light-4\">Color</span>\n <div className=\"flex items-center gap-2\">\n <input\n type=\"color\"\n value={value}\n onChange={(e) => onChange(e.target.value)}\n className=\"h-[34px] w-10 cursor-pointer rounded-md border border-neutral-1 bg-white p-0.5\"\n />\n <span className=\"text-xs text-light-4\">{value}</span>\n </div>\n <div className=\"mt-2 flex flex-wrap gap-1.5\">\n {SWATCHES.map((color) => (\n <button\n key={color}\n type=\"button\"\n aria-label={color}\n onClick={() => onChange(color)}\n className={`h-[26px] w-[26px] rounded-md border-2 hover:border-light-2 ${\n value.toLowerCase() === color.toLowerCase()\n ? 'border-rest-p1'\n : 'border-transparent'\n }`}\n style={{ backgroundColor: color }}\n />\n ))}\n </div>\n </div>\n )\n}\n"],"names":["ColorPicker","value","onChange","React","SWATCHES","color"],"mappings":";;AASO,SAASA,EAAY,EAAE,OAAAC,GAAO,UAAAC,KAA8B;AACjE,SACEC,gBAAAA,EAAA,cAAC,OAAA,MACCA,gBAAAA,EAAA,cAAC,QAAA,EAAK,WAAU,kCAAA,GAAkC,OAAK,GACvDA,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,6BACbA,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,OAAAF;AAAA,MACA,UAAU,CAAC,MAAMC,EAAS,EAAE,OAAO,KAAK;AAAA,MACxC,WAAU;AAAA,IAAA;AAAA,EAAA,GAEZC,gBAAAA,EAAA,cAAC,QAAA,EAAK,WAAU,0BAAwBF,CAAM,CAChD,GACAE,gBAAAA,EAAA,cAAC,SAAI,WAAU,8BAAA,GACZC,EAAS,IAAI,CAACC,MACbF,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAKE;AAAA,MACL,MAAK;AAAA,MACL,cAAYA;AAAA,MACZ,SAAS,MAAMH,EAASG,CAAK;AAAA,MAC7B,WAAW,8DACTJ,EAAM,YAAA,MAAkBI,EAAM,YAAA,IAC1B,mBACA,oBACN;AAAA,MACA,OAAO,EAAE,iBAAiBA,EAAA;AAAA,IAAM;AAAA,EAAA,CAEnC,CACH,CACF;AAEJ;"}
@@ -6,4 +6,4 @@ const m = (t) => {
6
6
  export {
7
7
  m as convertEpochTime
8
8
  };
9
- //# sourceMappingURL=index.es143.js.map
9
+ //# sourceMappingURL=index182.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es143.js","sources":["../src/components/organisms/navbar/components/notification-panel/components/notification-card/notification.utils.ts"],"sourcesContent":["import { format } from 'date-fns'\n\nconst convertEpochTime = (epochTime: number) => {\n const date = new Date(epochTime * 1000)\n return format(date, 'dd MMM yyyy, hh:mm a')\n}\n\nexport { convertEpochTime }\n"],"names":["convertEpochTime","epochTime","date","format"],"mappings":";AAEA,MAAMA,IAAmB,CAACC,MAAsB;AAC9C,QAAMC,IAAO,IAAI,KAAKD,IAAY,GAAI;AACtC,SAAOE,EAAOD,GAAM,sBAAsB;AAC5C;"}
1
+ {"version":3,"file":"index182.es.js","sources":["../src/components/organisms/navbar/components/notification-panel/components/notification-card/notification.utils.ts"],"sourcesContent":["import { format } from 'date-fns'\n\nconst convertEpochTime = (epochTime: number) => {\n const date = new Date(epochTime * 1000)\n return format(date, 'dd MMM yyyy, hh:mm a')\n}\n\nexport { convertEpochTime }\n"],"names":["convertEpochTime","epochTime","date","format"],"mappings":";AAEA,MAAMA,IAAmB,CAACC,MAAsB;AAC9C,QAAMC,IAAO,IAAI,KAAKD,IAAY,GAAI;AACtC,SAAOE,EAAOD,GAAM,sBAAsB;AAC5C;"}
@@ -1,7 +1,7 @@
1
1
  import * as o from "react";
2
- import { cn as n } from "./index.es81.js";
3
- import { TypographyVariants as y } from "./index.es77.js";
4
- import { variantElementMap as i, defaultTypographyVariant as c } from "./index.es108.js";
2
+ import { cn as n } from "./index89.es.js";
3
+ import { TypographyVariants as y } from "./index85.es.js";
4
+ import { variantElementMap as i, defaultTypographyVariant as c } from "./index99.es.js";
5
5
  const f = o.forwardRef(({ className: t, variant: r = c, id: e, ...a }, p) => {
6
6
  const m = i[r];
7
7
  return /* @__PURE__ */ o.createElement(
@@ -20,4 +20,4 @@ export {
20
20
  f as Typography,
21
21
  y as TypographyVariants
22
22
  };
23
- //# sourceMappingURL=index.es17.js.map
23
+ //# sourceMappingURL=index19.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es17.js","sources":["../src/components/atoms/typography/typography.tsx"],"sourcesContent":["import * as React from 'react'\nimport { cn } from '@/lib/utils'\nimport { TypographyVariants } from './typography.styles'\nimport { TypographyProps } from './typography.types'\nimport {\n defaultTypographyVariant,\n variantElementMap,\n} from './typography.config'\n\nconst Typography = React.forwardRef<\n HTMLHeadingElement | HTMLParagraphElement,\n TypographyProps\n>(({ className, variant = defaultTypographyVariant, id, ...props }, ref) => {\n const Comp: React.ElementType = variantElementMap[\n variant as keyof typeof variantElementMap\n ] as React.ElementType\n\n return (\n <Comp\n className={cn(TypographyVariants({ variant, className }))}\n ref={ref}\n id={id}\n {...props}\n >\n {props.children}\n </Comp>\n )\n})\n\nTypography.displayName = 'Typography'\n\nexport { Typography, TypographyVariants }\n"],"names":["Typography","React","className","variant","defaultTypographyVariant","id","props","ref","Comp","variantElementMap","cn","TypographyVariants"],"mappings":";;;;AASA,MAAMA,IAAaC,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,SAAAC,IAAUC,GAA0B,IAAAC,GAAI,GAAGC,EAAA,GAASC,MAAQ;AAC1E,QAAMC,IAA0BC,EAC9BN,CACF;AAEA,SACE,gBAAAF,EAAA;AAAA,IAACO;AAAA,IAAA;AAAA,MACC,WAAWE,EAAGC,EAAmB,EAAE,SAAAR,GAAS,WAAAD,EAAA,CAAW,CAAC;AAAA,MACxD,KAAAK;AAAA,MACA,IAAAF;AAAA,MACC,GAAGC;AAAA,IAAA;AAAA,IAEHA,EAAM;AAAA,EAAA;AAGb,CAAC;AAEDN,EAAW,cAAc;"}
1
+ {"version":3,"file":"index19.es.js","sources":["../src/components/atoms/typography/typography.tsx"],"sourcesContent":["import * as React from 'react'\nimport { cn } from '@/lib/utils'\nimport { TypographyVariants } from './typography.styles'\nimport { TypographyProps } from './typography.types'\nimport {\n defaultTypographyVariant,\n variantElementMap,\n} from './typography.config'\n\nconst Typography = React.forwardRef<\n HTMLHeadingElement | HTMLParagraphElement,\n TypographyProps\n>(({ className, variant = defaultTypographyVariant, id, ...props }, ref) => {\n const Comp: React.ElementType = variantElementMap[\n variant as keyof typeof variantElementMap\n ] as React.ElementType\n\n return (\n <Comp\n className={cn(TypographyVariants({ variant, className }))}\n ref={ref}\n id={id}\n {...props}\n >\n {props.children}\n </Comp>\n )\n})\n\nTypography.displayName = 'Typography'\n\nexport { Typography, TypographyVariants }\n"],"names":["Typography","React","className","variant","defaultTypographyVariant","id","props","ref","Comp","variantElementMap","cn","TypographyVariants"],"mappings":";;;;AASA,MAAMA,IAAaC,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,SAAAC,IAAUC,GAA0B,IAAAC,GAAI,GAAGC,EAAA,GAASC,MAAQ;AAC1E,QAAMC,IAA0BC,EAC9BN,CACF;AAEA,SACE,gBAAAF,EAAA;AAAA,IAACO;AAAA,IAAA;AAAA,MACC,WAAWE,EAAGC,EAAmB,EAAE,SAAAR,GAAS,WAAAD,EAAA,CAAW,CAAC;AAAA,MACxD,KAAAK;AAAA,MACA,IAAAF;AAAA,MACC,GAAGC;AAAA,IAAA;AAAA,IAEHA,EAAM;AAAA,EAAA;AAGb,CAAC;AAEDN,EAAW,cAAc;"}