@erpsquad/common 1.8.6 → 1.8.8

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 (829) hide show
  1. package/dist/_virtual/extends/index.esm.js +4 -2
  2. package/dist/_virtual/extends/index.esm.js.map +1 -1
  3. package/dist/_virtual/extends/index.js +1 -1
  4. package/dist/components/accordion/accordion.d.ts +1 -1
  5. package/dist/components/action-bar/action-bar/index.esm.js +4 -56
  6. package/dist/components/action-bar/action-bar/index.esm.js.map +1 -1
  7. package/dist/components/action-bar/action-bar/index.js +18 -28
  8. package/dist/components/action-bar/action-bar/index.js.map +1 -1
  9. package/dist/components/action-bar/action-bar.d.ts +1 -1
  10. package/dist/components/checkbox/checkbox.d.ts +1 -1
  11. package/dist/components/date-picker/date-picker.d.ts +1 -1
  12. package/dist/components/editor/custom-editor/index.esm.js +1 -1
  13. package/dist/components/editor/custom-editor/index.esm.js.map +1 -1
  14. package/dist/components/editor/custom-editor/index.js +1 -1
  15. package/dist/components/editor/custom-editor/index.js.map +1 -1
  16. package/dist/components/filter/filter/index.esm.js +1 -1
  17. package/dist/components/filter/filter/index.esm.js.map +1 -1
  18. package/dist/components/filter/filter/index.js +1 -1
  19. package/dist/components/filter/filter/index.js.map +1 -1
  20. package/dist/components/footer/footer.d.ts +1 -1
  21. package/dist/components/form-control/form-builder/form-builder-element/media.d.ts +1 -1
  22. package/dist/components/form-control/form-builder/form-builder-element/phone.d.ts +1 -1
  23. package/dist/components/form-control/form-builder/form-builder-element/select.d.ts +1 -1
  24. package/dist/components/form-control/form-builder/form-builder-element/text.d.ts +1 -1
  25. package/dist/components/form-control/form-builder/form-builder-element/time.d.ts +1 -1
  26. package/dist/components/form-control/form-parser/form-switcher.d.ts +1 -1
  27. package/dist/components/header/header/index.esm.js +1 -1
  28. package/dist/components/header/header/index.esm.js.map +1 -1
  29. package/dist/components/header/header/index.js +1 -1
  30. package/dist/components/header/header/index.js.map +1 -1
  31. package/dist/components/header/redux/actionCreator/index.esm.js +1 -1
  32. package/dist/components/header/redux/actionCreator/index.esm.js.map +1 -1
  33. package/dist/components/header/redux/actionCreator/index.js +1 -1
  34. package/dist/components/header/redux/actionCreator/index.js.map +1 -1
  35. package/dist/components/icons/action-arrow.d.ts +3 -3
  36. package/dist/components/icons/add-circle.d.ts +3 -3
  37. package/dist/components/icons/arrow-bidirectional.d.ts +3 -3
  38. package/dist/components/icons/arrow-circle-down.d.ts +3 -3
  39. package/dist/components/icons/arrow-down-three.d.ts +3 -3
  40. package/dist/components/icons/arrow-down-two.d.ts +3 -3
  41. package/dist/components/icons/arrow-down.d.ts +3 -3
  42. package/dist/components/icons/arrow-up-down.d.ts +3 -3
  43. package/dist/components/icons/arrow-up-two.d.ts +3 -3
  44. package/dist/components/icons/assignments.d.ts +3 -3
  45. package/dist/components/icons/blank-circle.d.ts +3 -3
  46. package/dist/components/icons/block-filled.d.ts +3 -3
  47. package/dist/components/icons/calendar-add.d.ts +3 -3
  48. package/dist/components/icons/calendar.d.ts +3 -3
  49. package/dist/components/icons/checkbox-square.d.ts +3 -3
  50. package/dist/components/icons/circular-arrow-setting.d.ts +3 -3
  51. package/dist/components/icons/clock.d.ts +3 -3
  52. package/dist/components/icons/close.d.ts +3 -3
  53. package/dist/components/icons/coin-outline.d.ts +3 -3
  54. package/dist/components/icons/copy.d.ts +3 -3
  55. package/dist/components/icons/coupon.d.ts +3 -3
  56. package/dist/components/icons/cross-hire.d.ts +3 -3
  57. package/dist/components/icons/custom-styled-icon.d.ts +3 -3
  58. package/dist/components/icons/dashboard.d.ts +3 -3
  59. package/dist/components/icons/document-download.d.ts +3 -3
  60. package/dist/components/icons/document.d.ts +3 -3
  61. package/dist/components/icons/dollar-circle-filled.d.ts +3 -3
  62. package/dist/components/icons/dollar-circle.d.ts +3 -3
  63. package/dist/components/icons/edit.d.ts +3 -3
  64. package/dist/components/icons/email.d.ts +3 -3
  65. package/dist/components/icons/export.d.ts +3 -3
  66. package/dist/components/icons/eye-off.d.ts +3 -3
  67. package/dist/components/icons/eye-plus-circle.d.ts +3 -3
  68. package/dist/components/icons/eye.d.ts +3 -3
  69. package/dist/components/icons/filled-circle.d.ts +3 -3
  70. package/dist/components/icons/filter-remove.d.ts +3 -3
  71. package/dist/components/icons/filter.d.ts +3 -3
  72. package/dist/components/icons/folder-save.d.ts +3 -3
  73. package/dist/components/icons/grid.d.ts +3 -3
  74. package/dist/components/icons/hashtag.d.ts +3 -3
  75. package/dist/components/icons/image.d.ts +3 -3
  76. package/dist/components/icons/import.d.ts +3 -3
  77. package/dist/components/icons/info-circle.d.ts +3 -3
  78. package/dist/components/icons/info.d.ts +3 -3
  79. package/dist/components/icons/link-horizontal.d.ts +3 -3
  80. package/dist/components/icons/link.d.ts +3 -3
  81. package/dist/components/icons/location.d.ts +3 -3
  82. package/dist/components/icons/lowest-lead-time.d.ts +3 -3
  83. package/dist/components/icons/lowest-min-qty.d.ts +3 -3
  84. package/dist/components/icons/lowest-price.d.ts +3 -3
  85. package/dist/components/icons/more.d.ts +3 -3
  86. package/dist/components/icons/notification.d.ts +3 -3
  87. package/dist/components/icons/paper-clip.d.ts +3 -3
  88. package/dist/components/icons/paragraph.d.ts +3 -3
  89. package/dist/components/icons/payment-request.d.ts +3 -3
  90. package/dist/components/icons/phone.d.ts +3 -3
  91. package/dist/components/icons/printer.d.ts +3 -3
  92. package/dist/components/icons/process-calendar.d.ts +3 -3
  93. package/dist/components/icons/promotion.d.ts +3 -3
  94. package/dist/components/icons/radio-button.d.ts +3 -3
  95. package/dist/components/icons/receipt-filled.d.ts +3 -3
  96. package/dist/components/icons/receipt-outline.d.ts +3 -3
  97. package/dist/components/icons/receipt.d.ts +3 -3
  98. package/dist/components/icons/refresh-icon.d.ts +3 -3
  99. package/dist/components/icons/replace.d.ts +3 -3
  100. package/dist/components/icons/save.d.ts +3 -3
  101. package/dist/components/icons/search-status.d.ts +3 -3
  102. package/dist/components/icons/search.d.ts +3 -3
  103. package/dist/components/icons/settings-fallback.d.ts +3 -3
  104. package/dist/components/icons/sort-arrow-icon.d.ts +3 -3
  105. package/dist/components/icons/stacked-layer.d.ts +3 -3
  106. package/dist/components/icons/start-filled.d.ts +3 -3
  107. package/dist/components/icons/three-dot-icon.d.ts +3 -3
  108. package/dist/components/icons/tick-circle-filled.d.ts +3 -3
  109. package/dist/components/icons/tick-circle.d.ts +3 -3
  110. package/dist/components/icons/tick-octagon.d.ts +3 -3
  111. package/dist/components/icons/tick.d.ts +3 -3
  112. package/dist/components/icons/toggle-switch.d.ts +3 -3
  113. package/dist/components/icons/trash.d.ts +3 -3
  114. package/dist/components/icons/wave.d.ts +3 -3
  115. package/dist/components/icons/with-out-tick-octagon.d.ts +3 -3
  116. package/dist/components/icons/work-centre.d.ts +3 -3
  117. package/dist/components/index.d.ts +28 -57
  118. package/dist/components/index.esm.js +433 -477
  119. package/dist/components/index.esm.js.map +1 -1
  120. package/dist/components/index.js +1 -1
  121. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  122. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js.map +1 -1
  123. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.js +1 -1
  124. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.js.map +1 -1
  125. package/dist/components/location-select.d.ts +1 -1
  126. package/dist/components/material-table/material-table.d.ts +1 -1
  127. package/dist/components/phone-input/phone-input.d.ts +1 -1
  128. package/dist/components/radio/radio.d.ts +1 -1
  129. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  130. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js.map +1 -1
  131. package/dist/components/reports-title-bar/redux/actionCreator/index.js +1 -1
  132. package/dist/components/reports-title-bar/redux/actionCreator/index.js.map +1 -1
  133. package/dist/components/select/select.d.ts +1 -1
  134. package/dist/components/share-modal/redux/actionCreator/index.esm.js +1 -1
  135. package/dist/components/share-modal/redux/actionCreator/index.esm.js.map +1 -1
  136. package/dist/components/share-modal/redux/actionCreator/index.js +1 -1
  137. package/dist/components/share-modal/redux/actionCreator/index.js.map +1 -1
  138. package/dist/components/switches/android-12-switch.d.ts +3 -1
  139. package/dist/components/text-field/text-field.d.ts +1 -1
  140. package/dist/components/time-picker/time-picker.d.ts +1 -1
  141. package/dist/components/upload/upload/index.esm.js +2 -2
  142. package/dist/components/upload/upload/index.esm.js.map +1 -1
  143. package/dist/components/upload/upload/index.js +2 -2
  144. package/dist/components/upload/upload/index.js.map +1 -1
  145. package/dist/components/upload-media/upload-media.d.ts +1 -1
  146. package/dist/constants/index.d.ts +4 -1
  147. package/dist/constants/index.esm.js +2 -0
  148. package/dist/constants/index.esm.js.map +1 -1
  149. package/dist/constants/index.js +1 -1
  150. package/dist/contexts/AuthContext/index.esm.js +2 -2
  151. package/dist/contexts/AuthContext/index.esm.js.map +1 -1
  152. package/dist/contexts/AuthContext/index.js +1 -1
  153. package/dist/contexts/AuthContext/index.js.map +1 -1
  154. package/dist/contexts/languageContext/index.esm.js +1 -1
  155. package/dist/contexts/languageContext/index.esm.js.map +1 -1
  156. package/dist/contexts/languageContext/index.js +1 -1
  157. package/dist/contexts/languageContext/index.js.map +1 -1
  158. package/dist/index.esm.js +549 -561
  159. package/dist/index.esm.js.map +1 -1
  160. package/dist/index.js +1 -1
  161. package/dist/node_modules/@mui/icons-material/esm/Remove/index.esm.js +9 -0
  162. package/dist/node_modules/@mui/icons-material/esm/Remove/index.esm.js.map +1 -0
  163. package/dist/node_modules/@mui/icons-material/esm/Remove/index.js +2 -0
  164. package/dist/node_modules/@mui/icons-material/esm/Remove/index.js.map +1 -0
  165. package/dist/node_modules/@mui/system/createStyled/index.esm.js +4 -4
  166. package/dist/node_modules/@mui/system/createStyled/index.esm.js.map +1 -1
  167. package/dist/node_modules/@mui/system/createStyled/index.js +1 -1
  168. package/dist/node_modules/@mui/system/createStyled/index.js.map +1 -1
  169. package/dist/redux/store/index.esm.js +5 -2
  170. package/dist/redux/store/index.esm.js.map +1 -1
  171. package/dist/redux/store/index.js +1 -1
  172. package/dist/redux/store/index.js.map +1 -1
  173. package/dist/redux/types.d.ts +1 -0
  174. package/dist/style.css +3 -1
  175. package/dist/utils/api/index.esm.js +4 -4
  176. package/dist/utils/api/index.esm.js.map +1 -1
  177. package/dist/utils/api/index.js +1 -1
  178. package/dist/utils/api/index.js.map +1 -1
  179. package/dist/utils/common/index.esm.js +8 -8
  180. package/dist/utils/common/index.esm.js.map +1 -1
  181. package/dist/utils/common/index.js +1 -1
  182. package/dist/utils/common/index.js.map +1 -1
  183. package/dist/utils/common-utility.d.ts +1 -1
  184. package/dist/utils/deformat-text/index.esm.js +7 -0
  185. package/dist/utils/deformat-text/index.esm.js.map +1 -0
  186. package/dist/{_virtual/ArrowDropDown → utils/deformat-text}/index.js +1 -1
  187. package/dist/utils/deformat-text/index.js.map +1 -0
  188. package/dist/utils/form-builder-conversion/index.esm.js +279 -0
  189. package/dist/utils/form-builder-conversion/index.esm.js.map +1 -0
  190. package/dist/utils/form-builder-conversion/index.js +2 -0
  191. package/dist/utils/form-builder-conversion/index.js.map +1 -0
  192. package/dist/views/form-builder/custom-form/index.esm.js +1151 -0
  193. package/dist/views/form-builder/custom-form/index.esm.js.map +1 -0
  194. package/dist/views/form-builder/custom-form/index.js +30 -0
  195. package/dist/views/form-builder/custom-form/index.js.map +1 -0
  196. package/dist/views/form-builder/custom-form.d.ts +7 -0
  197. package/dist/views/form-builder/element-edit-forms/checkbox/index.esm.js +327 -0
  198. package/dist/views/form-builder/element-edit-forms/checkbox/index.esm.js.map +1 -0
  199. package/dist/views/form-builder/element-edit-forms/checkbox/index.js +30 -0
  200. package/dist/views/form-builder/element-edit-forms/checkbox/index.js.map +1 -0
  201. package/dist/views/form-builder/element-edit-forms/checkbox.d.ts +3 -0
  202. package/dist/views/form-builder/element-edit-forms/column-width/index.esm.js +92 -0
  203. package/dist/views/form-builder/element-edit-forms/column-width/index.esm.js.map +1 -0
  204. package/dist/views/form-builder/element-edit-forms/column-width/index.js +4 -0
  205. package/dist/views/form-builder/element-edit-forms/column-width/index.js.map +1 -0
  206. package/dist/views/form-builder/element-edit-forms/column-width.d.ts +3 -0
  207. package/dist/views/form-builder/element-edit-forms/field-select/index.esm.js +89 -0
  208. package/dist/views/form-builder/element-edit-forms/field-select/index.esm.js.map +1 -0
  209. package/dist/views/form-builder/element-edit-forms/field-select/index.js +3 -0
  210. package/dist/views/form-builder/element-edit-forms/field-select/index.js.map +1 -0
  211. package/dist/views/form-builder/element-edit-forms/field-select.d.ts +4 -0
  212. package/dist/views/form-builder/element-edit-forms/index.d.ts +7 -0
  213. package/dist/views/form-builder/element-edit-forms/section/index.esm.js +221 -0
  214. package/dist/views/form-builder/element-edit-forms/section/index.esm.js.map +1 -0
  215. package/dist/views/form-builder/element-edit-forms/section/index.js +15 -0
  216. package/dist/views/form-builder/element-edit-forms/section/index.js.map +1 -0
  217. package/dist/views/form-builder/element-edit-forms/section.d.ts +3 -0
  218. package/dist/views/form-builder/element-edit-forms/select/index.esm.js +318 -0
  219. package/dist/views/form-builder/element-edit-forms/select/index.esm.js.map +1 -0
  220. package/dist/views/form-builder/element-edit-forms/select/index.js +25 -0
  221. package/dist/views/form-builder/element-edit-forms/select/index.js.map +1 -0
  222. package/dist/views/form-builder/element-edit-forms/select.d.ts +33 -0
  223. package/dist/views/form-builder/element-edit-forms/table-form/index.esm.js +111 -0
  224. package/dist/views/form-builder/element-edit-forms/table-form/index.esm.js.map +1 -0
  225. package/dist/views/form-builder/element-edit-forms/table-form/index.js +5 -0
  226. package/dist/views/form-builder/element-edit-forms/table-form/index.js.map +1 -0
  227. package/dist/views/form-builder/element-edit-forms/table-form.d.ts +13 -0
  228. package/dist/views/form-builder/element-edit-forms/text/index.esm.js +559 -0
  229. package/dist/views/form-builder/element-edit-forms/text/index.esm.js.map +1 -0
  230. package/dist/views/form-builder/element-edit-forms/text/index.js +31 -0
  231. package/dist/views/form-builder/element-edit-forms/text/index.js.map +1 -0
  232. package/dist/views/form-builder/element-edit-forms/text.d.ts +12 -0
  233. package/dist/views/form-builder/field_properties/index.esm.js +216 -0
  234. package/dist/views/form-builder/field_properties/index.esm.js.map +1 -0
  235. package/dist/views/form-builder/field_properties/index.js +2 -0
  236. package/dist/views/form-builder/field_properties/index.js.map +1 -0
  237. package/dist/views/form-builder/field_properties.d.ts +99 -0
  238. package/dist/views/form-builder/form-fields/index.esm.js +354 -0
  239. package/dist/views/form-builder/form-fields/index.esm.js.map +1 -0
  240. package/dist/views/form-builder/form-fields/index.js +24 -0
  241. package/dist/views/form-builder/form-fields/index.js.map +1 -0
  242. package/dist/views/form-builder/form-fields.d.ts +46 -0
  243. package/dist/views/form-builder/index/index.esm.js +32 -0
  244. package/dist/views/form-builder/index/index.esm.js.map +1 -0
  245. package/dist/views/form-builder/index/index.js +2 -0
  246. package/dist/views/form-builder/index/index.js.map +1 -0
  247. package/dist/views/form-builder/index.d.ts +33 -0
  248. package/dist/views/form-builder/redux/actionCreator/index.esm.js +41 -0
  249. package/dist/views/form-builder/redux/actionCreator/index.esm.js.map +1 -0
  250. package/dist/views/form-builder/redux/actionCreator/index.js +2 -0
  251. package/dist/views/form-builder/redux/actionCreator/index.js.map +1 -0
  252. package/dist/views/form-builder/redux/actionCreator.d.ts +5 -0
  253. package/dist/views/form-builder/redux/reducer/index.esm.js +96 -0
  254. package/dist/views/form-builder/redux/reducer/index.esm.js.map +1 -0
  255. package/dist/views/form-builder/redux/reducer/index.js +2 -0
  256. package/dist/views/form-builder/redux/reducer/index.js.map +1 -0
  257. package/dist/views/form-builder/redux/state/index.esm.js +23 -0
  258. package/dist/views/form-builder/redux/state/index.esm.js.map +1 -0
  259. package/dist/views/form-builder/redux/state/index.js +2 -0
  260. package/dist/views/form-builder/redux/state/index.js.map +1 -0
  261. package/dist/views/form-builder/redux/state.d.ts +27 -0
  262. package/dist/views/form-builder/types.d.ts +2 -0
  263. package/dist/views/form-builder/utils/common/index.esm.js +285 -0
  264. package/dist/views/form-builder/utils/common/index.esm.js.map +1 -0
  265. package/dist/views/form-builder/utils/common/index.js +2 -0
  266. package/dist/views/form-builder/utils/common/index.js.map +1 -0
  267. package/dist/views/form-builder/utils/common.d.ts +66 -0
  268. package/dist/views/form-builder/utils/index.d.ts +2 -0
  269. package/dist/views/index.esm.js +37 -3
  270. package/dist/views/index.esm.js.map +1 -1
  271. package/dist/views/index.js +1 -1
  272. package/dist/views/template-editor/components/EditorHeader/index.esm.js +1 -1
  273. package/dist/views/template-editor/components/EditorHeader/index.js +3 -3
  274. package/dist/views/template-editor/components/EditorSidebar/index.esm.js +3 -3
  275. package/dist/views/template-editor/components/EditorSidebar/index.esm.js.map +1 -1
  276. package/dist/views/template-editor/components/EditorSidebar/index.js +14 -14
  277. package/dist/views/template-editor/components/EditorSidebar/index.js.map +1 -1
  278. package/dist/views/template-editor/templates/index.esm.js +1 -1
  279. package/dist/views/template-editor/templates/index.esm.js.map +1 -1
  280. package/dist/views/template-editor/templates/index.js +1 -1
  281. package/dist/views/template-editor/templates/index.js.map +1 -1
  282. package/dist/views/template-editor/utils/index.d.ts +1 -1
  283. package/package.json +35 -35
  284. package/CSS_SETUP.md +0 -67
  285. package/QUICK_START.md +0 -34
  286. package/dist/_virtual/ArrowDropDown/index.esm.js +0 -5
  287. package/dist/_virtual/ArrowDropDown/index.esm.js.map +0 -1
  288. package/dist/_virtual/ArrowDropDown/index.js.map +0 -1
  289. package/dist/_virtual/ArrowDropUp/index.esm.js +0 -5
  290. package/dist/_virtual/ArrowDropUp/index.esm.js.map +0 -1
  291. package/dist/_virtual/ArrowDropUp/index.js +0 -2
  292. package/dist/_virtual/ArrowDropUp/index.js.map +0 -1
  293. package/dist/components/Dashboard/dashboard-card/index.esm.js +0 -17
  294. package/dist/components/Dashboard/dashboard-card/index.esm.js.map +0 -1
  295. package/dist/components/Dashboard/dashboard-card/index.js +0 -6
  296. package/dist/components/Dashboard/dashboard-card/index.js.map +0 -1
  297. package/dist/components/Dashboard/dashboard-header/index.esm.js +0 -68
  298. package/dist/components/Dashboard/dashboard-header/index.esm.js.map +0 -1
  299. package/dist/components/Dashboard/dashboard-header/index.js +0 -7
  300. package/dist/components/Dashboard/dashboard-header/index.js.map +0 -1
  301. package/dist/components/activityLog/activity-log/index.esm.js +0 -104
  302. package/dist/components/activityLog/activity-log/index.esm.js.map +0 -1
  303. package/dist/components/activityLog/activity-log/index.js +0 -14
  304. package/dist/components/activityLog/activity-log/index.js.map +0 -1
  305. package/dist/components/charts/ChartLegends/index.esm.js +0 -31
  306. package/dist/components/charts/ChartLegends/index.esm.js.map +0 -1
  307. package/dist/components/charts/ChartLegends/index.js +0 -5
  308. package/dist/components/charts/ChartLegends/index.js.map +0 -1
  309. package/dist/components/charts/areaLinerChart/index.esm.js +0 -110
  310. package/dist/components/charts/areaLinerChart/index.esm.js.map +0 -1
  311. package/dist/components/charts/areaLinerChart/index.js +0 -4
  312. package/dist/components/charts/areaLinerChart/index.js.map +0 -1
  313. package/dist/components/charts/bar-chart/bar-chart/index.esm.js +0 -85
  314. package/dist/components/charts/bar-chart/bar-chart/index.esm.js.map +0 -1
  315. package/dist/components/charts/bar-chart/bar-chart/index.js +0 -2
  316. package/dist/components/charts/bar-chart/bar-chart/index.js.map +0 -1
  317. package/dist/components/charts/barChart/barChart/index.esm.js +0 -147
  318. package/dist/components/charts/barChart/barChart/index.esm.js.map +0 -1
  319. package/dist/components/charts/barChart/barChart/index.js +0 -2
  320. package/dist/components/charts/barChart/barChart/index.js.map +0 -1
  321. package/dist/components/charts/barLineChart/barLinechart/index.esm.js +0 -193
  322. package/dist/components/charts/barLineChart/barLinechart/index.esm.js.map +0 -1
  323. package/dist/components/charts/barLineChart/barLinechart/index.js +0 -11
  324. package/dist/components/charts/barLineChart/barLinechart/index.js.map +0 -1
  325. package/dist/components/charts/donut-chart/donut-chart/index.esm.js +0 -85
  326. package/dist/components/charts/donut-chart/donut-chart/index.esm.js.map +0 -1
  327. package/dist/components/charts/donut-chart/donut-chart/index.js +0 -6
  328. package/dist/components/charts/donut-chart/donut-chart/index.js.map +0 -1
  329. package/dist/components/charts/donutChart/DonutChart/index.esm.js +0 -96
  330. package/dist/components/charts/donutChart/DonutChart/index.esm.js.map +0 -1
  331. package/dist/components/charts/donutChart/DonutChart/index.js +0 -5
  332. package/dist/components/charts/donutChart/DonutChart/index.js.map +0 -1
  333. package/dist/components/charts/groupBarChart/GroupBarChart/index.esm.js +0 -92
  334. package/dist/components/charts/groupBarChart/GroupBarChart/index.esm.js.map +0 -1
  335. package/dist/components/charts/groupBarChart/GroupBarChart/index.js +0 -2
  336. package/dist/components/charts/groupBarChart/GroupBarChart/index.js.map +0 -1
  337. package/dist/components/charts/line-chart/area-lineChart/index.esm.js +0 -55
  338. package/dist/components/charts/line-chart/area-lineChart/index.esm.js.map +0 -1
  339. package/dist/components/charts/line-chart/area-lineChart/index.js +0 -2
  340. package/dist/components/charts/line-chart/area-lineChart/index.js.map +0 -1
  341. package/dist/components/charts/line-chart/line-chart/index.esm.js +0 -108
  342. package/dist/components/charts/line-chart/line-chart/index.esm.js.map +0 -1
  343. package/dist/components/charts/line-chart/line-chart/index.js +0 -2
  344. package/dist/components/charts/line-chart/line-chart/index.js.map +0 -1
  345. package/dist/components/charts/multiLineChart/multi-line-chart/index.esm.js +0 -100
  346. package/dist/components/charts/multiLineChart/multi-line-chart/index.esm.js.map +0 -1
  347. package/dist/components/charts/multiLineChart/multi-line-chart/index.js +0 -2
  348. package/dist/components/charts/multiLineChart/multi-line-chart/index.js.map +0 -1
  349. package/dist/components/grid/custom-grid-card/custom-grid-card/index.esm.js +0 -131
  350. package/dist/components/grid/custom-grid-card/custom-grid-card/index.esm.js.map +0 -1
  351. package/dist/components/grid/custom-grid-card/custom-grid-card/index.js +0 -11
  352. package/dist/components/grid/custom-grid-card/custom-grid-card/index.js.map +0 -1
  353. package/dist/components/grid/grid-card/grid-card/index.esm.js +0 -102
  354. package/dist/components/grid/grid-card/grid-card/index.esm.js.map +0 -1
  355. package/dist/components/grid/grid-card/grid-card/index.js +0 -12
  356. package/dist/components/grid/grid-card/grid-card/index.js.map +0 -1
  357. package/dist/components/grid/grid-wrapper/grid-wrapper/index.esm.js +0 -17
  358. package/dist/components/grid/grid-wrapper/grid-wrapper/index.esm.js.map +0 -1
  359. package/dist/components/grid/grid-wrapper/grid-wrapper/index.js +0 -5
  360. package/dist/components/grid/grid-wrapper/grid-wrapper/index.js.map +0 -1
  361. package/dist/components/mulitline/multiline/index.esm.js +0 -62
  362. package/dist/components/mulitline/multiline/index.esm.js.map +0 -1
  363. package/dist/components/mulitline/multiline/index.js +0 -13
  364. package/dist/components/mulitline/multiline/index.js.map +0 -1
  365. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js +0 -472
  366. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js.map +0 -1
  367. package/dist/components/reports/dynamic-report/dynamic-report/index.js +0 -8
  368. package/dist/components/reports/dynamic-report/dynamic-report/index.js.map +0 -1
  369. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js +0 -201
  370. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js.map +0 -1
  371. package/dist/components/reports/dynamic-report/dynamic-rows/index.js +0 -6
  372. package/dist/components/reports/dynamic-report/dynamic-rows/index.js.map +0 -1
  373. package/dist/components/rfq-response/item-response-details/index.esm.js +0 -91
  374. package/dist/components/rfq-response/item-response-details/index.esm.js.map +0 -1
  375. package/dist/components/rfq-response/item-response-details/index.js +0 -9
  376. package/dist/components/rfq-response/item-response-details/index.js.map +0 -1
  377. package/dist/node_modules/@babel/runtime/helpers/extends/index.esm.js +0 -23
  378. package/dist/node_modules/@babel/runtime/helpers/extends/index.esm.js.map +0 -1
  379. package/dist/node_modules/@babel/runtime/helpers/extends/index.js +0 -2
  380. package/dist/node_modules/@babel/runtime/helpers/extends/index.js.map +0 -1
  381. package/dist/node_modules/@mui/icons-material/ArrowDropDown/index.esm.js +0 -18
  382. package/dist/node_modules/@mui/icons-material/ArrowDropDown/index.esm.js.map +0 -1
  383. package/dist/node_modules/@mui/icons-material/ArrowDropDown/index.js +0 -2
  384. package/dist/node_modules/@mui/icons-material/ArrowDropDown/index.js.map +0 -1
  385. package/dist/node_modules/@mui/icons-material/ArrowDropUp/index.esm.js +0 -18
  386. package/dist/node_modules/@mui/icons-material/ArrowDropUp/index.esm.js.map +0 -1
  387. package/dist/node_modules/@mui/icons-material/ArrowDropUp/index.js +0 -2
  388. package/dist/node_modules/@mui/icons-material/ArrowDropUp/index.js.map +0 -1
  389. package/dist/node_modules/d3-array/src/ascending/index.esm.js +0 -7
  390. package/dist/node_modules/d3-array/src/ascending/index.esm.js.map +0 -1
  391. package/dist/node_modules/d3-array/src/ascending/index.js +0 -2
  392. package/dist/node_modules/d3-array/src/ascending/index.js.map +0 -1
  393. package/dist/node_modules/d3-array/src/bisect/index.esm.js +0 -11
  394. package/dist/node_modules/d3-array/src/bisect/index.esm.js.map +0 -1
  395. package/dist/node_modules/d3-array/src/bisect/index.js +0 -2
  396. package/dist/node_modules/d3-array/src/bisect/index.js.map +0 -1
  397. package/dist/node_modules/d3-array/src/bisector/index.esm.js +0 -48
  398. package/dist/node_modules/d3-array/src/bisector/index.esm.js.map +0 -1
  399. package/dist/node_modules/d3-array/src/bisector/index.js +0 -2
  400. package/dist/node_modules/d3-array/src/bisector/index.js.map +0 -1
  401. package/dist/node_modules/d3-array/src/descending/index.esm.js +0 -7
  402. package/dist/node_modules/d3-array/src/descending/index.esm.js.map +0 -1
  403. package/dist/node_modules/d3-array/src/descending/index.js +0 -2
  404. package/dist/node_modules/d3-array/src/descending/index.js.map +0 -1
  405. package/dist/node_modules/d3-array/src/max/index.esm.js +0 -22
  406. package/dist/node_modules/d3-array/src/max/index.esm.js.map +0 -1
  407. package/dist/node_modules/d3-array/src/max/index.js +0 -2
  408. package/dist/node_modules/d3-array/src/max/index.js.map +0 -1
  409. package/dist/node_modules/d3-array/src/min/index.esm.js +0 -22
  410. package/dist/node_modules/d3-array/src/min/index.esm.js.map +0 -1
  411. package/dist/node_modules/d3-array/src/min/index.js +0 -2
  412. package/dist/node_modules/d3-array/src/min/index.js.map +0 -1
  413. package/dist/node_modules/d3-array/src/number/index.esm.js +0 -7
  414. package/dist/node_modules/d3-array/src/number/index.esm.js.map +0 -1
  415. package/dist/node_modules/d3-array/src/number/index.js +0 -2
  416. package/dist/node_modules/d3-array/src/number/index.js.map +0 -1
  417. package/dist/node_modules/d3-array/src/range/index.esm.js +0 -12
  418. package/dist/node_modules/d3-array/src/range/index.esm.js.map +0 -1
  419. package/dist/node_modules/d3-array/src/range/index.js +0 -2
  420. package/dist/node_modules/d3-array/src/range/index.js.map +0 -1
  421. package/dist/node_modules/d3-array/src/ticks/index.esm.js +0 -52
  422. package/dist/node_modules/d3-array/src/ticks/index.esm.js.map +0 -1
  423. package/dist/node_modules/d3-array/src/ticks/index.js +0 -2
  424. package/dist/node_modules/d3-array/src/ticks/index.js.map +0 -1
  425. package/dist/node_modules/d3-axis/src/axis/index.esm.js +0 -99
  426. package/dist/node_modules/d3-axis/src/axis/index.esm.js.map +0 -1
  427. package/dist/node_modules/d3-axis/src/axis/index.js +0 -2
  428. package/dist/node_modules/d3-axis/src/axis/index.js.map +0 -1
  429. package/dist/node_modules/d3-axis/src/identity/index.esm.js +0 -7
  430. package/dist/node_modules/d3-axis/src/identity/index.esm.js.map +0 -1
  431. package/dist/node_modules/d3-axis/src/identity/index.js +0 -2
  432. package/dist/node_modules/d3-axis/src/identity/index.js.map +0 -1
  433. package/dist/node_modules/d3-color/src/color/index.esm.js +0 -339
  434. package/dist/node_modules/d3-color/src/color/index.esm.js.map +0 -1
  435. package/dist/node_modules/d3-color/src/color/index.js +0 -2
  436. package/dist/node_modules/d3-color/src/color/index.js.map +0 -1
  437. package/dist/node_modules/d3-color/src/define/index.esm.js +0 -14
  438. package/dist/node_modules/d3-color/src/define/index.esm.js.map +0 -1
  439. package/dist/node_modules/d3-color/src/define/index.js +0 -2
  440. package/dist/node_modules/d3-color/src/define/index.js.map +0 -1
  441. package/dist/node_modules/d3-format/src/defaultLocale/index.esm.js +0 -21
  442. package/dist/node_modules/d3-format/src/defaultLocale/index.esm.js.map +0 -1
  443. package/dist/node_modules/d3-format/src/defaultLocale/index.js +0 -2
  444. package/dist/node_modules/d3-format/src/defaultLocale/index.js.map +0 -1
  445. package/dist/node_modules/d3-format/src/exponent/index.esm.js +0 -8
  446. package/dist/node_modules/d3-format/src/exponent/index.esm.js.map +0 -1
  447. package/dist/node_modules/d3-format/src/exponent/index.js +0 -2
  448. package/dist/node_modules/d3-format/src/exponent/index.js.map +0 -1
  449. package/dist/node_modules/d3-format/src/formatDecimal/index.esm.js +0 -16
  450. package/dist/node_modules/d3-format/src/formatDecimal/index.esm.js.map +0 -1
  451. package/dist/node_modules/d3-format/src/formatDecimal/index.js +0 -2
  452. package/dist/node_modules/d3-format/src/formatDecimal/index.js.map +0 -1
  453. package/dist/node_modules/d3-format/src/formatGroup/index.esm.js +0 -16
  454. package/dist/node_modules/d3-format/src/formatGroup/index.esm.js.map +0 -1
  455. package/dist/node_modules/d3-format/src/formatGroup/index.js +0 -2
  456. package/dist/node_modules/d3-format/src/formatGroup/index.js.map +0 -1
  457. package/dist/node_modules/d3-format/src/formatNumerals/index.esm.js +0 -11
  458. package/dist/node_modules/d3-format/src/formatNumerals/index.esm.js.map +0 -1
  459. package/dist/node_modules/d3-format/src/formatNumerals/index.js +0 -2
  460. package/dist/node_modules/d3-format/src/formatNumerals/index.js.map +0 -1
  461. package/dist/node_modules/d3-format/src/formatPrefixAuto/index.esm.js +0 -13
  462. package/dist/node_modules/d3-format/src/formatPrefixAuto/index.esm.js.map +0 -1
  463. package/dist/node_modules/d3-format/src/formatPrefixAuto/index.js +0 -2
  464. package/dist/node_modules/d3-format/src/formatPrefixAuto/index.js.map +0 -1
  465. package/dist/node_modules/d3-format/src/formatRounded/index.esm.js +0 -11
  466. package/dist/node_modules/d3-format/src/formatRounded/index.esm.js.map +0 -1
  467. package/dist/node_modules/d3-format/src/formatRounded/index.js +0 -2
  468. package/dist/node_modules/d3-format/src/formatRounded/index.js.map +0 -1
  469. package/dist/node_modules/d3-format/src/formatSpecifier/index.esm.js +0 -38
  470. package/dist/node_modules/d3-format/src/formatSpecifier/index.esm.js.map +0 -1
  471. package/dist/node_modules/d3-format/src/formatSpecifier/index.js +0 -2
  472. package/dist/node_modules/d3-format/src/formatSpecifier/index.js.map +0 -1
  473. package/dist/node_modules/d3-format/src/formatTrim/index.esm.js +0 -22
  474. package/dist/node_modules/d3-format/src/formatTrim/index.esm.js.map +0 -1
  475. package/dist/node_modules/d3-format/src/formatTrim/index.js +0 -2
  476. package/dist/node_modules/d3-format/src/formatTrim/index.js.map +0 -1
  477. package/dist/node_modules/d3-format/src/formatTypes/index.esm.js +0 -22
  478. package/dist/node_modules/d3-format/src/formatTypes/index.esm.js.map +0 -1
  479. package/dist/node_modules/d3-format/src/formatTypes/index.js +0 -2
  480. package/dist/node_modules/d3-format/src/formatTypes/index.js.map +0 -1
  481. package/dist/node_modules/d3-format/src/identity/index.esm.js +0 -7
  482. package/dist/node_modules/d3-format/src/identity/index.esm.js.map +0 -1
  483. package/dist/node_modules/d3-format/src/identity/index.js +0 -2
  484. package/dist/node_modules/d3-format/src/identity/index.js.map +0 -1
  485. package/dist/node_modules/d3-format/src/locale/index.esm.js +0 -83
  486. package/dist/node_modules/d3-format/src/locale/index.esm.js.map +0 -1
  487. package/dist/node_modules/d3-format/src/locale/index.js +0 -2
  488. package/dist/node_modules/d3-format/src/locale/index.js.map +0 -1
  489. package/dist/node_modules/d3-format/src/precisionFixed/index.esm.js +0 -8
  490. package/dist/node_modules/d3-format/src/precisionFixed/index.esm.js.map +0 -1
  491. package/dist/node_modules/d3-format/src/precisionFixed/index.js +0 -2
  492. package/dist/node_modules/d3-format/src/precisionFixed/index.js.map +0 -1
  493. package/dist/node_modules/d3-format/src/precisionPrefix/index.esm.js +0 -8
  494. package/dist/node_modules/d3-format/src/precisionPrefix/index.esm.js.map +0 -1
  495. package/dist/node_modules/d3-format/src/precisionPrefix/index.js +0 -2
  496. package/dist/node_modules/d3-format/src/precisionPrefix/index.js.map +0 -1
  497. package/dist/node_modules/d3-format/src/precisionRound/index.esm.js +0 -9
  498. package/dist/node_modules/d3-format/src/precisionRound/index.esm.js.map +0 -1
  499. package/dist/node_modules/d3-format/src/precisionRound/index.js +0 -2
  500. package/dist/node_modules/d3-format/src/precisionRound/index.js.map +0 -1
  501. package/dist/node_modules/d3-interpolate/src/array/index.esm.js +0 -14
  502. package/dist/node_modules/d3-interpolate/src/array/index.esm.js.map +0 -1
  503. package/dist/node_modules/d3-interpolate/src/array/index.js +0 -2
  504. package/dist/node_modules/d3-interpolate/src/array/index.js.map +0 -1
  505. package/dist/node_modules/d3-interpolate/src/color/index.esm.js +0 -25
  506. package/dist/node_modules/d3-interpolate/src/color/index.esm.js.map +0 -1
  507. package/dist/node_modules/d3-interpolate/src/color/index.js +0 -2
  508. package/dist/node_modules/d3-interpolate/src/color/index.js.map +0 -1
  509. package/dist/node_modules/d3-interpolate/src/constant/index.esm.js +0 -5
  510. package/dist/node_modules/d3-interpolate/src/constant/index.esm.js.map +0 -1
  511. package/dist/node_modules/d3-interpolate/src/constant/index.js +0 -2
  512. package/dist/node_modules/d3-interpolate/src/constant/index.js.map +0 -1
  513. package/dist/node_modules/d3-interpolate/src/date/index.esm.js +0 -10
  514. package/dist/node_modules/d3-interpolate/src/date/index.esm.js.map +0 -1
  515. package/dist/node_modules/d3-interpolate/src/date/index.js +0 -2
  516. package/dist/node_modules/d3-interpolate/src/date/index.js.map +0 -1
  517. package/dist/node_modules/d3-interpolate/src/number/index.esm.js +0 -9
  518. package/dist/node_modules/d3-interpolate/src/number/index.esm.js.map +0 -1
  519. package/dist/node_modules/d3-interpolate/src/number/index.js +0 -2
  520. package/dist/node_modules/d3-interpolate/src/number/index.js.map +0 -1
  521. package/dist/node_modules/d3-interpolate/src/numberArray/index.esm.js +0 -16
  522. package/dist/node_modules/d3-interpolate/src/numberArray/index.esm.js.map +0 -1
  523. package/dist/node_modules/d3-interpolate/src/numberArray/index.js +0 -2
  524. package/dist/node_modules/d3-interpolate/src/numberArray/index.js.map +0 -1
  525. package/dist/node_modules/d3-interpolate/src/object/index.esm.js +0 -21
  526. package/dist/node_modules/d3-interpolate/src/object/index.esm.js.map +0 -1
  527. package/dist/node_modules/d3-interpolate/src/object/index.js +0 -2
  528. package/dist/node_modules/d3-interpolate/src/object/index.js.map +0 -1
  529. package/dist/node_modules/d3-interpolate/src/rgb/index.esm.js +0 -21
  530. package/dist/node_modules/d3-interpolate/src/rgb/index.esm.js.map +0 -1
  531. package/dist/node_modules/d3-interpolate/src/rgb/index.js +0 -2
  532. package/dist/node_modules/d3-interpolate/src/rgb/index.js.map +0 -1
  533. package/dist/node_modules/d3-interpolate/src/round/index.esm.js +0 -9
  534. package/dist/node_modules/d3-interpolate/src/round/index.esm.js.map +0 -1
  535. package/dist/node_modules/d3-interpolate/src/round/index.js +0 -2
  536. package/dist/node_modules/d3-interpolate/src/round/index.js.map +0 -1
  537. package/dist/node_modules/d3-interpolate/src/string/index.esm.js +0 -44
  538. package/dist/node_modules/d3-interpolate/src/string/index.esm.js.map +0 -1
  539. package/dist/node_modules/d3-interpolate/src/string/index.js +0 -2
  540. package/dist/node_modules/d3-interpolate/src/string/index.js.map +0 -1
  541. package/dist/node_modules/d3-interpolate/src/value/index.esm.js +0 -17
  542. package/dist/node_modules/d3-interpolate/src/value/index.esm.js.map +0 -1
  543. package/dist/node_modules/d3-interpolate/src/value/index.js +0 -2
  544. package/dist/node_modules/d3-interpolate/src/value/index.js.map +0 -1
  545. package/dist/node_modules/d3-path/src/path/index.esm.js +0 -89
  546. package/dist/node_modules/d3-path/src/path/index.esm.js.map +0 -1
  547. package/dist/node_modules/d3-path/src/path/index.js +0 -2
  548. package/dist/node_modules/d3-path/src/path/index.js.map +0 -1
  549. package/dist/node_modules/d3-scale/src/band/index.esm.js +0 -71
  550. package/dist/node_modules/d3-scale/src/band/index.esm.js.map +0 -1
  551. package/dist/node_modules/d3-scale/src/band/index.js +0 -2
  552. package/dist/node_modules/d3-scale/src/band/index.js.map +0 -1
  553. package/dist/node_modules/d3-scale/src/constant/index.esm.js +0 -9
  554. package/dist/node_modules/d3-scale/src/constant/index.esm.js.map +0 -1
  555. package/dist/node_modules/d3-scale/src/constant/index.js +0 -2
  556. package/dist/node_modules/d3-scale/src/constant/index.js.map +0 -1
  557. package/dist/node_modules/d3-scale/src/continuous/index.esm.js +0 -96
  558. package/dist/node_modules/d3-scale/src/continuous/index.esm.js.map +0 -1
  559. package/dist/node_modules/d3-scale/src/continuous/index.js +0 -2
  560. package/dist/node_modules/d3-scale/src/continuous/index.js.map +0 -1
  561. package/dist/node_modules/d3-scale/src/init/index.esm.js +0 -17
  562. package/dist/node_modules/d3-scale/src/init/index.esm.js.map +0 -1
  563. package/dist/node_modules/d3-scale/src/init/index.js +0 -2
  564. package/dist/node_modules/d3-scale/src/init/index.js.map +0 -1
  565. package/dist/node_modules/d3-scale/src/linear/index.esm.js +0 -62
  566. package/dist/node_modules/d3-scale/src/linear/index.esm.js.map +0 -1
  567. package/dist/node_modules/d3-scale/src/linear/index.js +0 -2
  568. package/dist/node_modules/d3-scale/src/linear/index.js.map +0 -1
  569. package/dist/node_modules/d3-scale/src/number/index.esm.js +0 -7
  570. package/dist/node_modules/d3-scale/src/number/index.esm.js.map +0 -1
  571. package/dist/node_modules/d3-scale/src/number/index.js +0 -2
  572. package/dist/node_modules/d3-scale/src/number/index.js.map +0 -1
  573. package/dist/node_modules/d3-scale/src/ordinal/index.esm.js +0 -39
  574. package/dist/node_modules/d3-scale/src/ordinal/index.esm.js.map +0 -1
  575. package/dist/node_modules/d3-scale/src/ordinal/index.js +0 -2
  576. package/dist/node_modules/d3-scale/src/ordinal/index.js.map +0 -1
  577. package/dist/node_modules/d3-scale/src/tickFormat/index.esm.js +0 -35
  578. package/dist/node_modules/d3-scale/src/tickFormat/index.esm.js.map +0 -1
  579. package/dist/node_modules/d3-scale/src/tickFormat/index.js +0 -2
  580. package/dist/node_modules/d3-scale/src/tickFormat/index.js.map +0 -1
  581. package/dist/node_modules/d3-selection/src/array/index.esm.js +0 -7
  582. package/dist/node_modules/d3-selection/src/array/index.esm.js.map +0 -1
  583. package/dist/node_modules/d3-selection/src/array/index.js +0 -2
  584. package/dist/node_modules/d3-selection/src/array/index.js.map +0 -1
  585. package/dist/node_modules/d3-selection/src/constant/index.esm.js +0 -9
  586. package/dist/node_modules/d3-selection/src/constant/index.esm.js.map +0 -1
  587. package/dist/node_modules/d3-selection/src/constant/index.js +0 -2
  588. package/dist/node_modules/d3-selection/src/constant/index.js.map +0 -1
  589. package/dist/node_modules/d3-selection/src/creator/index.esm.js +0 -21
  590. package/dist/node_modules/d3-selection/src/creator/index.esm.js.map +0 -1
  591. package/dist/node_modules/d3-selection/src/creator/index.js +0 -2
  592. package/dist/node_modules/d3-selection/src/creator/index.js.map +0 -1
  593. package/dist/node_modules/d3-selection/src/matcher/index.esm.js +0 -15
  594. package/dist/node_modules/d3-selection/src/matcher/index.esm.js.map +0 -1
  595. package/dist/node_modules/d3-selection/src/matcher/index.js +0 -2
  596. package/dist/node_modules/d3-selection/src/matcher/index.js.map +0 -1
  597. package/dist/node_modules/d3-selection/src/namespace/index.esm.js +0 -10
  598. package/dist/node_modules/d3-selection/src/namespace/index.esm.js.map +0 -1
  599. package/dist/node_modules/d3-selection/src/namespace/index.js +0 -2
  600. package/dist/node_modules/d3-selection/src/namespace/index.js.map +0 -1
  601. package/dist/node_modules/d3-selection/src/namespaces/index.esm.js +0 -13
  602. package/dist/node_modules/d3-selection/src/namespaces/index.esm.js.map +0 -1
  603. package/dist/node_modules/d3-selection/src/namespaces/index.js +0 -2
  604. package/dist/node_modules/d3-selection/src/namespaces/index.js.map +0 -1
  605. package/dist/node_modules/d3-selection/src/pointer/index.esm.js +0 -23
  606. package/dist/node_modules/d3-selection/src/pointer/index.esm.js.map +0 -1
  607. package/dist/node_modules/d3-selection/src/pointer/index.js +0 -2
  608. package/dist/node_modules/d3-selection/src/pointer/index.js.map +0 -1
  609. package/dist/node_modules/d3-selection/src/select/index.esm.js +0 -8
  610. package/dist/node_modules/d3-selection/src/select/index.esm.js.map +0 -1
  611. package/dist/node_modules/d3-selection/src/select/index.js +0 -2
  612. package/dist/node_modules/d3-selection/src/select/index.js.map +0 -1
  613. package/dist/node_modules/d3-selection/src/selection/append/index.esm.js +0 -11
  614. package/dist/node_modules/d3-selection/src/selection/append/index.esm.js.map +0 -1
  615. package/dist/node_modules/d3-selection/src/selection/append/index.js +0 -2
  616. package/dist/node_modules/d3-selection/src/selection/append/index.js.map +0 -1
  617. package/dist/node_modules/d3-selection/src/selection/attr/index.esm.js +0 -47
  618. package/dist/node_modules/d3-selection/src/selection/attr/index.esm.js.map +0 -1
  619. package/dist/node_modules/d3-selection/src/selection/attr/index.js +0 -2
  620. package/dist/node_modules/d3-selection/src/selection/attr/index.js.map +0 -1
  621. package/dist/node_modules/d3-selection/src/selection/call/index.esm.js +0 -10
  622. package/dist/node_modules/d3-selection/src/selection/call/index.esm.js.map +0 -1
  623. package/dist/node_modules/d3-selection/src/selection/call/index.js +0 -2
  624. package/dist/node_modules/d3-selection/src/selection/call/index.js.map +0 -1
  625. package/dist/node_modules/d3-selection/src/selection/classed/index.esm.js +0 -65
  626. package/dist/node_modules/d3-selection/src/selection/classed/index.esm.js.map +0 -1
  627. package/dist/node_modules/d3-selection/src/selection/classed/index.js +0 -2
  628. package/dist/node_modules/d3-selection/src/selection/classed/index.js.map +0 -1
  629. package/dist/node_modules/d3-selection/src/selection/clone/index.esm.js +0 -15
  630. package/dist/node_modules/d3-selection/src/selection/clone/index.esm.js.map +0 -1
  631. package/dist/node_modules/d3-selection/src/selection/clone/index.js +0 -2
  632. package/dist/node_modules/d3-selection/src/selection/clone/index.js.map +0 -1
  633. package/dist/node_modules/d3-selection/src/selection/data/index.esm.js +0 -77
  634. package/dist/node_modules/d3-selection/src/selection/data/index.esm.js.map +0 -1
  635. package/dist/node_modules/d3-selection/src/selection/data/index.js +0 -2
  636. package/dist/node_modules/d3-selection/src/selection/data/index.js.map +0 -1
  637. package/dist/node_modules/d3-selection/src/selection/datum/index.esm.js +0 -7
  638. package/dist/node_modules/d3-selection/src/selection/datum/index.esm.js.map +0 -1
  639. package/dist/node_modules/d3-selection/src/selection/datum/index.js +0 -2
  640. package/dist/node_modules/d3-selection/src/selection/datum/index.js.map +0 -1
  641. package/dist/node_modules/d3-selection/src/selection/dispatch/index.esm.js +0 -29
  642. package/dist/node_modules/d3-selection/src/selection/dispatch/index.esm.js.map +0 -1
  643. package/dist/node_modules/d3-selection/src/selection/dispatch/index.js +0 -2
  644. package/dist/node_modules/d3-selection/src/selection/dispatch/index.js.map +0 -1
  645. package/dist/node_modules/d3-selection/src/selection/each/index.esm.js +0 -12
  646. package/dist/node_modules/d3-selection/src/selection/each/index.esm.js.map +0 -1
  647. package/dist/node_modules/d3-selection/src/selection/each/index.js +0 -2
  648. package/dist/node_modules/d3-selection/src/selection/each/index.js.map +0 -1
  649. package/dist/node_modules/d3-selection/src/selection/empty/index.esm.js +0 -7
  650. package/dist/node_modules/d3-selection/src/selection/empty/index.esm.js.map +0 -1
  651. package/dist/node_modules/d3-selection/src/selection/empty/index.js +0 -2
  652. package/dist/node_modules/d3-selection/src/selection/empty/index.js.map +0 -1
  653. package/dist/node_modules/d3-selection/src/selection/enter/index.esm.js +0 -32
  654. package/dist/node_modules/d3-selection/src/selection/enter/index.esm.js.map +0 -1
  655. package/dist/node_modules/d3-selection/src/selection/enter/index.js +0 -2
  656. package/dist/node_modules/d3-selection/src/selection/enter/index.js.map +0 -1
  657. package/dist/node_modules/d3-selection/src/selection/exit/index.esm.js +0 -9
  658. package/dist/node_modules/d3-selection/src/selection/exit/index.esm.js.map +0 -1
  659. package/dist/node_modules/d3-selection/src/selection/exit/index.js +0 -2
  660. package/dist/node_modules/d3-selection/src/selection/exit/index.js.map +0 -1
  661. package/dist/node_modules/d3-selection/src/selection/filter/index.esm.js +0 -17
  662. package/dist/node_modules/d3-selection/src/selection/filter/index.esm.js.map +0 -1
  663. package/dist/node_modules/d3-selection/src/selection/filter/index.js +0 -2
  664. package/dist/node_modules/d3-selection/src/selection/filter/index.js.map +0 -1
  665. package/dist/node_modules/d3-selection/src/selection/html/index.esm.js +0 -21
  666. package/dist/node_modules/d3-selection/src/selection/html/index.esm.js.map +0 -1
  667. package/dist/node_modules/d3-selection/src/selection/html/index.js +0 -2
  668. package/dist/node_modules/d3-selection/src/selection/html/index.js.map +0 -1
  669. package/dist/node_modules/d3-selection/src/selection/index/index.esm.js +0 -85
  670. package/dist/node_modules/d3-selection/src/selection/index/index.esm.js.map +0 -1
  671. package/dist/node_modules/d3-selection/src/selection/index/index.js +0 -2
  672. package/dist/node_modules/d3-selection/src/selection/index/index.js.map +0 -1
  673. package/dist/node_modules/d3-selection/src/selection/insert/index.esm.js +0 -15
  674. package/dist/node_modules/d3-selection/src/selection/insert/index.esm.js.map +0 -1
  675. package/dist/node_modules/d3-selection/src/selection/insert/index.js +0 -2
  676. package/dist/node_modules/d3-selection/src/selection/insert/index.js.map +0 -1
  677. package/dist/node_modules/d3-selection/src/selection/iterator/index.esm.js +0 -11
  678. package/dist/node_modules/d3-selection/src/selection/iterator/index.esm.js.map +0 -1
  679. package/dist/node_modules/d3-selection/src/selection/iterator/index.js +0 -2
  680. package/dist/node_modules/d3-selection/src/selection/iterator/index.js.map +0 -1
  681. package/dist/node_modules/d3-selection/src/selection/join/index.esm.js +0 -20
  682. package/dist/node_modules/d3-selection/src/selection/join/index.esm.js.map +0 -1
  683. package/dist/node_modules/d3-selection/src/selection/join/index.js +0 -2
  684. package/dist/node_modules/d3-selection/src/selection/join/index.js.map +0 -1
  685. package/dist/node_modules/d3-selection/src/selection/lower/index.esm.js +0 -10
  686. package/dist/node_modules/d3-selection/src/selection/lower/index.esm.js.map +0 -1
  687. package/dist/node_modules/d3-selection/src/selection/lower/index.js +0 -2
  688. package/dist/node_modules/d3-selection/src/selection/lower/index.js.map +0 -1
  689. package/dist/node_modules/d3-selection/src/selection/merge/index.esm.js +0 -19
  690. package/dist/node_modules/d3-selection/src/selection/merge/index.esm.js.map +0 -1
  691. package/dist/node_modules/d3-selection/src/selection/merge/index.js +0 -2
  692. package/dist/node_modules/d3-selection/src/selection/merge/index.js.map +0 -1
  693. package/dist/node_modules/d3-selection/src/selection/node/index.esm.js +0 -13
  694. package/dist/node_modules/d3-selection/src/selection/node/index.esm.js.map +0 -1
  695. package/dist/node_modules/d3-selection/src/selection/node/index.js +0 -2
  696. package/dist/node_modules/d3-selection/src/selection/node/index.js.map +0 -1
  697. package/dist/node_modules/d3-selection/src/selection/nodes/index.esm.js +0 -7
  698. package/dist/node_modules/d3-selection/src/selection/nodes/index.esm.js.map +0 -1
  699. package/dist/node_modules/d3-selection/src/selection/nodes/index.js +0 -2
  700. package/dist/node_modules/d3-selection/src/selection/nodes/index.js.map +0 -1
  701. package/dist/node_modules/d3-selection/src/selection/on/index.esm.js +0 -65
  702. package/dist/node_modules/d3-selection/src/selection/on/index.esm.js.map +0 -1
  703. package/dist/node_modules/d3-selection/src/selection/on/index.js +0 -2
  704. package/dist/node_modules/d3-selection/src/selection/on/index.js.map +0 -1
  705. package/dist/node_modules/d3-selection/src/selection/order/index.esm.js +0 -15
  706. package/dist/node_modules/d3-selection/src/selection/order/index.esm.js.map +0 -1
  707. package/dist/node_modules/d3-selection/src/selection/order/index.js +0 -2
  708. package/dist/node_modules/d3-selection/src/selection/order/index.js.map +0 -1
  709. package/dist/node_modules/d3-selection/src/selection/property/index.esm.js +0 -24
  710. package/dist/node_modules/d3-selection/src/selection/property/index.esm.js.map +0 -1
  711. package/dist/node_modules/d3-selection/src/selection/property/index.js +0 -2
  712. package/dist/node_modules/d3-selection/src/selection/property/index.js.map +0 -1
  713. package/dist/node_modules/d3-selection/src/selection/raise/index.esm.js +0 -10
  714. package/dist/node_modules/d3-selection/src/selection/raise/index.esm.js.map +0 -1
  715. package/dist/node_modules/d3-selection/src/selection/raise/index.js +0 -2
  716. package/dist/node_modules/d3-selection/src/selection/raise/index.js.map +0 -1
  717. package/dist/node_modules/d3-selection/src/selection/remove/index.esm.js +0 -11
  718. package/dist/node_modules/d3-selection/src/selection/remove/index.esm.js.map +0 -1
  719. package/dist/node_modules/d3-selection/src/selection/remove/index.js +0 -2
  720. package/dist/node_modules/d3-selection/src/selection/remove/index.js.map +0 -1
  721. package/dist/node_modules/d3-selection/src/selection/select/index.esm.js +0 -18
  722. package/dist/node_modules/d3-selection/src/selection/select/index.esm.js.map +0 -1
  723. package/dist/node_modules/d3-selection/src/selection/select/index.js +0 -2
  724. package/dist/node_modules/d3-selection/src/selection/select/index.js.map +0 -1
  725. package/dist/node_modules/d3-selection/src/selection/selectAll/index.esm.js +0 -25
  726. package/dist/node_modules/d3-selection/src/selection/selectAll/index.esm.js.map +0 -1
  727. package/dist/node_modules/d3-selection/src/selection/selectAll/index.js +0 -2
  728. package/dist/node_modules/d3-selection/src/selection/selectAll/index.js.map +0 -1
  729. package/dist/node_modules/d3-selection/src/selection/selectChild/index.esm.js +0 -17
  730. package/dist/node_modules/d3-selection/src/selection/selectChild/index.esm.js.map +0 -1
  731. package/dist/node_modules/d3-selection/src/selection/selectChild/index.js +0 -2
  732. package/dist/node_modules/d3-selection/src/selection/selectChild/index.js.map +0 -1
  733. package/dist/node_modules/d3-selection/src/selection/selectChildren/index.esm.js +0 -17
  734. package/dist/node_modules/d3-selection/src/selection/selectChildren/index.esm.js.map +0 -1
  735. package/dist/node_modules/d3-selection/src/selection/selectChildren/index.js +0 -2
  736. package/dist/node_modules/d3-selection/src/selection/selectChildren/index.js.map +0 -1
  737. package/dist/node_modules/d3-selection/src/selection/size/index.esm.js +0 -9
  738. package/dist/node_modules/d3-selection/src/selection/size/index.esm.js.map +0 -1
  739. package/dist/node_modules/d3-selection/src/selection/size/index.js +0 -2
  740. package/dist/node_modules/d3-selection/src/selection/size/index.js.map +0 -1
  741. package/dist/node_modules/d3-selection/src/selection/sort/index.esm.js +0 -23
  742. package/dist/node_modules/d3-selection/src/selection/sort/index.esm.js.map +0 -1
  743. package/dist/node_modules/d3-selection/src/selection/sort/index.js +0 -2
  744. package/dist/node_modules/d3-selection/src/selection/sort/index.js.map +0 -1
  745. package/dist/node_modules/d3-selection/src/selection/sparse/index.esm.js +0 -7
  746. package/dist/node_modules/d3-selection/src/selection/sparse/index.esm.js.map +0 -1
  747. package/dist/node_modules/d3-selection/src/selection/sparse/index.js +0 -2
  748. package/dist/node_modules/d3-selection/src/selection/sparse/index.js.map +0 -1
  749. package/dist/node_modules/d3-selection/src/selection/style/index.esm.js +0 -29
  750. package/dist/node_modules/d3-selection/src/selection/style/index.esm.js.map +0 -1
  751. package/dist/node_modules/d3-selection/src/selection/style/index.js +0 -2
  752. package/dist/node_modules/d3-selection/src/selection/style/index.js.map +0 -1
  753. package/dist/node_modules/d3-selection/src/selection/text/index.esm.js +0 -21
  754. package/dist/node_modules/d3-selection/src/selection/text/index.esm.js.map +0 -1
  755. package/dist/node_modules/d3-selection/src/selection/text/index.js +0 -2
  756. package/dist/node_modules/d3-selection/src/selection/text/index.js.map +0 -1
  757. package/dist/node_modules/d3-selection/src/selector/index.esm.js +0 -11
  758. package/dist/node_modules/d3-selection/src/selector/index.esm.js.map +0 -1
  759. package/dist/node_modules/d3-selection/src/selector/index.js +0 -2
  760. package/dist/node_modules/d3-selection/src/selector/index.js.map +0 -1
  761. package/dist/node_modules/d3-selection/src/selectorAll/index.esm.js +0 -12
  762. package/dist/node_modules/d3-selection/src/selectorAll/index.esm.js.map +0 -1
  763. package/dist/node_modules/d3-selection/src/selectorAll/index.js +0 -2
  764. package/dist/node_modules/d3-selection/src/selectorAll/index.js.map +0 -1
  765. package/dist/node_modules/d3-selection/src/sourceEvent/index.esm.js +0 -9
  766. package/dist/node_modules/d3-selection/src/sourceEvent/index.esm.js.map +0 -1
  767. package/dist/node_modules/d3-selection/src/sourceEvent/index.js +0 -2
  768. package/dist/node_modules/d3-selection/src/sourceEvent/index.js.map +0 -1
  769. package/dist/node_modules/d3-selection/src/window/index.esm.js +0 -7
  770. package/dist/node_modules/d3-selection/src/window/index.esm.js.map +0 -1
  771. package/dist/node_modules/d3-selection/src/window/index.js +0 -2
  772. package/dist/node_modules/d3-selection/src/window/index.js.map +0 -1
  773. package/dist/node_modules/d3-shape/src/arc/index.esm.js +0 -134
  774. package/dist/node_modules/d3-shape/src/arc/index.esm.js.map +0 -1
  775. package/dist/node_modules/d3-shape/src/arc/index.js +0 -2
  776. package/dist/node_modules/d3-shape/src/arc/index.js.map +0 -1
  777. package/dist/node_modules/d3-shape/src/area/index.esm.js +0 -82
  778. package/dist/node_modules/d3-shape/src/area/index.esm.js.map +0 -1
  779. package/dist/node_modules/d3-shape/src/area/index.js +0 -2
  780. package/dist/node_modules/d3-shape/src/area/index.js.map +0 -1
  781. package/dist/node_modules/d3-shape/src/array/index.esm.js +0 -7
  782. package/dist/node_modules/d3-shape/src/array/index.esm.js.map +0 -1
  783. package/dist/node_modules/d3-shape/src/array/index.js +0 -2
  784. package/dist/node_modules/d3-shape/src/array/index.js.map +0 -1
  785. package/dist/node_modules/d3-shape/src/constant/index.esm.js +0 -9
  786. package/dist/node_modules/d3-shape/src/constant/index.esm.js.map +0 -1
  787. package/dist/node_modules/d3-shape/src/constant/index.js +0 -2
  788. package/dist/node_modules/d3-shape/src/constant/index.js.map +0 -1
  789. package/dist/node_modules/d3-shape/src/curve/linear/index.esm.js +0 -39
  790. package/dist/node_modules/d3-shape/src/curve/linear/index.esm.js.map +0 -1
  791. package/dist/node_modules/d3-shape/src/curve/linear/index.js +0 -2
  792. package/dist/node_modules/d3-shape/src/curve/linear/index.js.map +0 -1
  793. package/dist/node_modules/d3-shape/src/curve/monotone/index.esm.js +0 -76
  794. package/dist/node_modules/d3-shape/src/curve/monotone/index.esm.js.map +0 -1
  795. package/dist/node_modules/d3-shape/src/curve/monotone/index.js +0 -2
  796. package/dist/node_modules/d3-shape/src/curve/monotone/index.js.map +0 -1
  797. package/dist/node_modules/d3-shape/src/descending/index.esm.js +0 -7
  798. package/dist/node_modules/d3-shape/src/descending/index.esm.js.map +0 -1
  799. package/dist/node_modules/d3-shape/src/descending/index.js +0 -2
  800. package/dist/node_modules/d3-shape/src/descending/index.js.map +0 -1
  801. package/dist/node_modules/d3-shape/src/identity/index.esm.js +0 -7
  802. package/dist/node_modules/d3-shape/src/identity/index.esm.js.map +0 -1
  803. package/dist/node_modules/d3-shape/src/identity/index.js +0 -2
  804. package/dist/node_modules/d3-shape/src/identity/index.js.map +0 -1
  805. package/dist/node_modules/d3-shape/src/line/index.esm.js +0 -42
  806. package/dist/node_modules/d3-shape/src/line/index.esm.js.map +0 -1
  807. package/dist/node_modules/d3-shape/src/line/index.js +0 -2
  808. package/dist/node_modules/d3-shape/src/line/index.js.map +0 -1
  809. package/dist/node_modules/d3-shape/src/math/index.esm.js +0 -33
  810. package/dist/node_modules/d3-shape/src/math/index.esm.js.map +0 -1
  811. package/dist/node_modules/d3-shape/src/math/index.js +0 -2
  812. package/dist/node_modules/d3-shape/src/math/index.js.map +0 -1
  813. package/dist/node_modules/d3-shape/src/path/index.esm.js +0 -20
  814. package/dist/node_modules/d3-shape/src/path/index.esm.js.map +0 -1
  815. package/dist/node_modules/d3-shape/src/path/index.js +0 -2
  816. package/dist/node_modules/d3-shape/src/path/index.js.map +0 -1
  817. package/dist/node_modules/d3-shape/src/pie/index.esm.js +0 -56
  818. package/dist/node_modules/d3-shape/src/pie/index.esm.js.map +0 -1
  819. package/dist/node_modules/d3-shape/src/pie/index.js +0 -2
  820. package/dist/node_modules/d3-shape/src/pie/index.js.map +0 -1
  821. package/dist/node_modules/d3-shape/src/point/index.esm.js +0 -11
  822. package/dist/node_modules/d3-shape/src/point/index.esm.js.map +0 -1
  823. package/dist/node_modules/d3-shape/src/point/index.js +0 -2
  824. package/dist/node_modules/d3-shape/src/point/index.js.map +0 -1
  825. package/dist/node_modules/internmap/src/index/index.esm.js +0 -44
  826. package/dist/node_modules/internmap/src/index/index.esm.js.map +0 -1
  827. package/dist/node_modules/internmap/src/index/index.js +0 -2
  828. package/dist/node_modules/internmap/src/index/index.js.map +0 -1
  829. package/dist/redux/store.d.ts +0 -1575
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../src/views/form-builder/custom-form.tsx"],"sourcesContent":["// React imports\nimport { useState, useEffect, useMemo, useCallback } from \"react\";\n\n// React Router imports\nimport { useLocation, useNavigate } from \"react-router-dom\";\n\n// React Hook Form imports\nimport { useForm, useFieldArray } from \"react-hook-form\";\n\n// Material UI imports\nimport { Box, FormControlLabel, Grid, RadioGroup } from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\n\n// Third-party imports\nimport { DndProvider } from \"react-dnd\";\nimport { HTML5Backend } from \"react-dnd-html5-backend\";\nimport { MRT_ColumnDef, MRT_RowData } from \"material-react-table\";\nimport { useTranslation } from \"react-i18next\";\nimport { enqueueSnackbar } from \"notistack\";\n\n// ERP Common imports\nimport DynamicSectionHOC from \"@/components/form-control/form-builder/form-builder-element/section\";\nimport Button from \"@/components/form-control/form-builder/form-builder-element/button\";\nimport TabBar from \"@/components/tabs/tabs\";\nimport images from \"@/assets/images\";\nimport { Pathname } from \"@/constants\";\nimport FormHeader from \"@/components/form-header/form-header\";\nimport Typography from \"@/components/typography/typography\";\nimport formBuilderConversion from \"@/utils/form-builder-conversion\";\nimport { useAppDispatch, useAppSelector } from \"@/redux/hooks\";\nimport { formatLabel } from \"@/utils/format-text\";\nimport Toast from \"@/components/toast/toast\";\nimport Radio from \"@/components/radio/radio\";\nimport { SECTION_TYPES } from \"@/utils/constant\";\nimport ErpLoader from \"@/components/loaders/erp-loader\";\nimport { getErrorMessage } from \"@/utils/common\";\nimport FormParser from \"@/components/form-control/form-parser/form-parser\";\nimport { Eye, EyeOff } from \"@/components/icons\";\n\n// Redux actions\nimport {\n patchFormDataById,\n getFormDataById,\n getFieldsByFormId,\n} from \"../form-builder/redux/actionCreator\";\n\n// Local imports\nimport {\n IProperty,\n ISectionProperty,\n ISelectProperty,\n element,\n} from \"./field_properties\";\nimport TextEditForm from \"./element-edit-forms/text\";\nimport SelectEditForm from \"./element-edit-forms/select\";\nimport SectionEditForm from \"./element-edit-forms/section\";\nimport CheckboxEditForm from \"./element-edit-forms/checkbox\";\nimport TableEditForm from \"./element-edit-forms/table-form\";\nimport FormFields from \"./form-fields\";\nimport { generateModulePath, useFormDataEffect } from \"./utils/common\";\nimport \"./custom-form.scss\";\n\nexport interface IElementJson extends IProperty {\n type: string;\n}\n\nconst FIELD_TYPES = {\n TEXT: 'text',\n NUMBER: 'number',\n EMAIL: 'email',\n PHONE: 'phone',\n SELECT: 'select',\n DATE: 'date',\n TIME: 'time',\n URL: 'url',\n CURRENCY: 'currency',\n FILE: 'file',\n GEO_LOCATION: 'geoLocation',\n IMAGE: 'image',\n SECTION: 'section',\n INFO: 'info',\n RELATION: 'relation',\n CHECKBOX: 'checkbox',\n TOGGLE_BUTTON: 'toggleButton',\n TAGS_INPUT: 'tagsInput'\n} as const;\n\nconst DEFAULT_GRID_COLUMNS = 12;\nconst DEFAULT_COLUMN_WIDTH = 2;\nconst DEFAULT_TAB_TITLE = 'data';\n\nconst isValidNumber = (value: any): boolean => !isNaN(Number(value)) && isFinite(Number(value));\nconst deepClone = (obj: T): T => JSON.parse(JSON.stringify(obj));\nconst generateUniqueId = (separator = ''): { uniqueStringId: string } => {\n return { uniqueStringId: `${Date.now()}${separator}${Math.random().toString(36).substr(2, 9)}` };\n};\n\n\nexport function CustomForm() {\n const { t } = useTranslation();\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const location = useLocation();\n const rowData = location.state ?? [];\n\n const formBuilder = useAppSelector((state) => state.formBuilder);\n\n const { control } = useForm({\n reValidateMode: \"onBlur\",\n });\n\n const {\n fields: members,\n append,\n remove,\n update,\n move,\n insert,\n } = useFieldArray({\n control,\n name: \"members\",\n });\n\n const {\n fields: section,\n append: appendSection,\n remove: removeSection,\n update: updateSection,\n } = useFieldArray({\n control,\n name: \"section\",\n });\n\n const [selectedHoc, setSelectedHoc] = useState(\"\");\n const [activeSection, setActiveSection] = useState<number>();\n const [activeMember, setActiveMember] = useState<number>();\n\n const [formJSON, setFormJSON] = useState<object[]>([]);\n const [elementJSON, setElementJSON] = useState<any>(null);\n const [positionEditedElement, setPositionEditedElement] = useState<\n number | undefined\n >();\n\n const [sectionFormJSON, setSectionFormJSON] = useState<object[]>([]);\n const [sectionJSON, setSectionJSON] = useState<any>({});\n const [sectionPositionEditedElement, setSectionPositionEditedElement] =\n useState<number | undefined>();\n const [removeSectionActionPerformed, setRemoveSectionActionPerformed] =\n useState(false);\n const [removeSectionMembersPerformed, setRemoveSectionMembersPerformed] =\n useState(false);\n const [removeSectionPosition, setRemoveSectionPosition] = useState<\n number | undefined\n >();\n const [initialLoading, setInitialLoading] = useState(true);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [activeTabValue, setActiveTabValue] = useState<number | undefined>(0);\n\n const [elementSwap, setElementSwap] = useState(false);\n const [modifyAccordion, setModifyAccordion] = useState(false);\n const [toast, setToast] = useState<IToast | null>(null);\n const [previewFieldsData, setPreviewFields] = useState<any>(null);\n const [_, setFormParserMethods] = useState<any>();\n\n let elementPerColumn: any;\n\n const currentModule = location.pathname.split('/')[2]\n\n const path = generateModulePath(currentModule)\n\n useFormDataEffect(\n formBuilder,\n tabsData,\n activeTabValue,\n {\n removeSection,\n remove,\n setTabsData,\n append,\n appendSection\n }\n );\n\n const pickPropertyEditForm = useCallback((type: string): React.ReactElement => {\n try {\n if (!type || typeof type !== 'string') {\n console.warn('Invalid field type provided to pickPropertyEditForm');\n return <div className=\"text-gray-500 p-4\">Select a field to edit</div>;\n }\n\n const normalizedType = type.toLowerCase().trim();\n\n // Define form type groups for better maintainability\n const formGroups = {\n text: [\n 'text', 'number', 'email', 'phone', 'date', 'time',\n 'url', 'currency', 'file', 'geolocation', 'image',\n 'relation', 'info', 'tagsinput'\n ],\n select: ['select'],\n section: ['section'],\n checkbox: ['checkbox', 'togglebutton', 'radiobutton'],\n table: ['table']\n };\n\n // Common props for reusability\n const commonTextProps = {\n element: elementJSON,\n handlePropertyValueUpdate,\n handleWidthChange,\n handleColumnSelect,\n fields: formBuilder?.fields || []\n };\n\n const commonSelectProps = {\n element: elementJSON,\n handlePropertyValueUpdate,\n handleSelectOptionValueUpdate,\n handleWidthChange,\n handleColumnSelect\n };\n\n // Determine form type and render appropriate component\n if (formGroups.text.includes(normalizedType)) {\n return (\n <TextEditForm\n {...commonTextProps}\n key={`text-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.select.includes(normalizedType)) {\n return (\n <SelectEditForm\n {...commonSelectProps}\n key={`select-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.section.includes(normalizedType)) {\n return (\n <SectionEditForm\n element={sectionJSON}\n handlePropertyValueUpdate={handleSectionPropertyValueUpdate}\n key={`section-form-${sectionJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.checkbox.includes(normalizedType)) {\n return (\n <CheckboxEditForm\n {...commonSelectProps}\n key={`checkbox-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.table.includes(normalizedType)) {\n return (\n <TableEditForm\n element={elementJSON}\n handlePropertyValueUpdate={handlePropertyValueUpdate}\n handleColumnsUpdate={handleColumnsUpdate}\n fields={formBuilder?.fields || []}\n key={`table-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n // Default fallback with helpful message\n console.warn(`Unknown field type: ${type}`);\n return (\n <div className=\"text-gray-500 p-4 border border-gray-200 rounded\">\n <p className=\"font-medium\">Unknown Field Type</p>\n <p className=\"text-sm mt-1\">\n Field type \"{type}\" is not supported. Please select a valid field to edit.\n </p>\n </div>\n );\n\n } catch (error) {\n console.error('Error in pickPropertyEditForm:', error);\n return (\n <div className=\"text-red-500 p-4 border border-red-200 rounded bg-red-50\">\n <p className=\"font-medium\">Error Loading Form</p>\n <p className=\"text-sm mt-1\">\n There was an error loading the property edit form. Please try again.\n </p>\n </div>\n );\n }\n }, [elementJSON, sectionJSON, formBuilder]);\n\n const addNewSection = useCallback((): void => {\n try {\n if (!element?.section) {\n console.error('Element section template is not available');\n return;\n }\n\n const { uniqueStringId: id } = generateUniqueId('-');\n const newSection: ISectionProperty = {\n ...deepClone(element.section),\n id: id,\n };\n\n // Update switcher forms with new ID if they exist\n if (newSection.switcher_forms) {\n newSection.switcher_forms = newSection.switcher_forms.map(form => ({\n ...form,\n id: generateUniqueId('-').uniqueStringId\n }));\n }\n\n const newSectionIndex = section.length;\n\n appendSection(newSection);\n setActiveSection(newSectionIndex);\n setSelectedHoc('section');\n\n const sectionData: ISectionProperty = {\n field_type: newSection.field_type,\n section_type: newSection.section_type,\n switcher_forms: newSection.switcher_forms,\n form_switcher_label: newSection.form_switcher_label,\n form_switcher_name: newSection.form_switcher_name,\n label: newSection.label,\n is_accordion: newSection.is_accordion,\n id: newSection.id ?? newSectionIndex,\n };\n\n setSectionJSON(sectionData);\n setSectionPositionEditedElement(newSectionIndex);\n pickPropertyEditForm(newSection.field_type);\n } catch (error) {\n console.error('Error adding new section:', error);\n }\n }, [element, section, appendSection, setActiveSection, setSelectedHoc, setSectionJSON, setSectionPositionEditedElement, pickPropertyEditForm]);\n\n /**\n * Enhanced handleAddTab with better validation and error handling\n */\n const handleAddTab = useCallback((): void => {\n try {\n const formWithMembers = deepClone(sectionFormJSON);\n\n // Populate sections with their members\n formWithMembers.forEach((section: ISectionProperty, sectionIndex: number) => {\n section.members = members.filter(\n (member: IProperty) => member?.section_order === sectionIndex\n );\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const shouldRemoveTab = !tabsData?.length && hasSystemMembers;\n\n const newTab: TabData = {\n tab_order: tabsData.length + 1,\n title: DEFAULT_TAB_TITLE,\n remove_tab: shouldRemoveTab,\n data: tabsData?.length ? [] : formWithMembers\n };\n\n setTabsData(prevTabs => [...prevTabs, newTab]);\n } catch (error) {\n console.error('Error adding new tab:', error);\n }\n }, [sectionFormJSON, members, tabsData, setTabsData]);\n\n const handleEditTabTitle = useCallback((tabId: number, newTitle: string): void => {\n try {\n if (!isValidNumber(tabId) || !newTitle?.trim()) {\n console.error('Invalid tab ID or title provided');\n return;\n }\n\n setTabsData(prevTabs =>\n prevTabs.map((tab: TabData) =>\n tab.tab_order === tabId ? { ...tab, title: newTitle.trim() } : tab\n )\n );\n } catch (error) {\n console.error('Error editing tab title:', error);\n }\n }, [setTabsData]);\n\n const handleRemoveTab = useCallback((id: number): void => {\n try {\n if (!isValidNumber(id)) {\n console.error('Invalid tab ID provided');\n return;\n }\n\n const filteredTabs = tabsData.filter((tab: TabData) => tab.tab_order !== id);\n\n // Reorder remaining tabs\n const reorderedTabs = filteredTabs.map((tab: TabData) => ({\n ...tab,\n tab_order: tab.tab_order > id ? tab.tab_order - 1 : tab.tab_order,\n }));\n\n setTabsData(reorderedTabs);\n if (activeTabValue == id) {\n setActiveTabValue(reorderedTabs?.length - 1)\n }\n\n if (reorderedTabs.length > 0) {\n const activeTab = reorderedTabs.find(\n (tab: TabData) => tab.tab_order === (activeTabValue ?? 0) + 1\n );\n\n if (activeTab?.data) {\n const sections = activeTab.data.map(\n ({ field_type, label, is_accordion, id, remove_section }) => ({\n field_type,\n label,\n is_accordion,\n id,\n remove_section,\n })\n );\n\n const membersList = activeTab.data.flatMap((section: ISectionProperty) =>\n section.members?.map((member: IProperty) => ({ ...member })) || []\n );\n\n // Clear current data and add new data\n remove();\n removeSection();\n membersList.forEach(member => append(member));\n sections.forEach(section => appendSection(section));\n }\n } else {\n // Clear all data if no tabs remain\n remove();\n removeSection();\n }\n } catch (error) {\n console.error('Error removing tab:', error);\n }\n }, [tabsData, activeTabValue, setTabsData, remove, removeSection, append, appendSection]);\n\n const handleElementSelection = useCallback((e: React.MouseEvent<HTMLElement>): void => {\n try {\n const target = e.target as HTMLElement;\n const elementPositionIndex = target.dataset.position;\n\n if (!elementPositionIndex || !isValidNumber(elementPositionIndex)) {\n console.error('Invalid element position index');\n return;\n }\n\n const positionIndex = Number(elementPositionIndex);\n\n if (positionIndex < 0 || positionIndex >= formJSON.length) {\n console.error('Element position index out of bounds');\n return;\n }\n\n setActiveMember(positionIndex);\n\n const elementDetails = deepClone(formJSON[positionIndex]);\n setPositionEditedElement(positionIndex);\n setElementJSON(elementDetails);\n setSelectedHoc('element');\n } catch (error) {\n console.error('Error selecting element:', error);\n }\n }, [formJSON, setActiveMember, setPositionEditedElement, setElementJSON, setSelectedHoc]);\n\n const handleSectionSelection = useCallback((e: React.MouseEvent<HTMLElement>): void => {\n try {\n const target = e.target as HTMLElement;\n const sectionPositionIndex = target.dataset.position;\n\n if (!sectionPositionIndex || !isValidNumber(sectionPositionIndex)) {\n console.error('Invalid section position index');\n return;\n }\n\n const positionIndex = Number(sectionPositionIndex);\n\n if (positionIndex < 0 || positionIndex >= sectionFormJSON.length) {\n console.error('Section position index out of bounds');\n return;\n }\n\n setActiveSection(positionIndex);\n\n const sectionDetails = deepClone(sectionFormJSON[positionIndex]);\n setSectionPositionEditedElement(positionIndex);\n setSectionJSON(sectionDetails);\n setSelectedHoc('section');\n } catch (error) {\n console.error('Error selecting section:', error);\n }\n }, [sectionFormJSON, setActiveSection, setSectionPositionEditedElement, setSectionJSON, setSelectedHoc]);\n\n const handleAddMember = useCallback((\n e: React.SyntheticEvent<HTMLElement>,\n otherProperties?: Record<string, any>\n ): void => {\n try {\n const target = e.currentTarget as HTMLElement;\n const sectionPositionIndex = target?.dataset?.position;\n\n if (sectionPositionIndex === undefined || !isValidNumber(sectionPositionIndex)) {\n console.error('Invalid section position index for adding member');\n return;\n }\n\n const positionIndex = Number(sectionPositionIndex);\n\n if (positionIndex < 0) {\n console.error('Section position index cannot be negative');\n return;\n }\n\n if (!element?.text) {\n console.error('Element text template is not available');\n return;\n }\n\n const newMember: IProperty = {\n ...deepClone(element.text),\n ...otherProperties,\n section_order: positionIndex,\n type: 'custom',\n is_new: true,\n custom_width: Math.floor(DEFAULT_GRID_COLUMNS / DEFAULT_COLUMN_WIDTH),\n is_fullwidth: false,\n is_system_field: Boolean(otherProperties?.is_system_field),\n id: generateUniqueId().uniqueStringId,\n };\n\n setActiveSection(positionIndex);\n append(newMember);\n\n const elementPositionIndex = members.length;\n setActiveMember(elementPositionIndex);\n setSelectedHoc('element');\n setPositionEditedElement(elementPositionIndex);\n setElementJSON(newMember);\n pickPropertyEditForm(newMember.field_type);\n } catch (error) {\n console.error('Error adding new member:', error);\n }\n }, [element, members, setActiveSection, append, setActiveMember, setSelectedHoc, setPositionEditedElement, setElementJSON, pickPropertyEditForm]);\n\n\n const handleSectionPropertyValueUpdate = useCallback((\n e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement>,\n overrideValue?: any\n ): void => {\n try {\n const { name, type, checked, value } = e.target;\n\n if (!name) {\n console.error('Property name is required for update');\n return;\n }\n\n const updatedValue = overrideValue !== undefined ? overrideValue : (type === 'checkbox' ? checked : value);\n\n // Only update if value actually changed\n if (sectionJSON[name] !== updatedValue) {\n setSectionJSON(prev => ({ ...prev, [name]: updatedValue }));\n }\n } catch (error) {\n console.error('Error updating section property:', error);\n }\n }, [sectionJSON, setSectionJSON]);\n\n const handleWidthChange = useCallback((newCustomWidth: number): void => {\n try {\n if (!isValidNumber(newCustomWidth) || newCustomWidth < 1 || newCustomWidth > DEFAULT_GRID_COLUMNS) {\n console.error('Invalid width value provided');\n return;\n }\n\n setElementJSON(prevData => ({\n ...prevData,\n custom_width: newCustomWidth,\n }));\n } catch (error) {\n console.error('Error updating width:', error);\n }\n }, [setElementJSON]);\n\n const handleColumnSelect = useCallback((e: React.ChangeEvent<HTMLSelectElement>): void => {\n try {\n const columnValue = Number(e.target.value);\n\n if (!isValidNumber(columnValue) || columnValue <= 0) {\n console.error('Invalid column value provided');\n return;\n }\n\n const elementPerColumn = Math.floor(DEFAULT_GRID_COLUMNS / columnValue);\n\n if (elementPerColumn <= 0) {\n console.error('Calculated element per column is invalid');\n return;\n }\n\n // Batch update all members\n members.forEach((field: IProperty, index: number) => {\n update(index, { ...field, custom_width: elementPerColumn });\n });\n } catch (error) {\n console.error('Error updating column selection:', error);\n }\n }, [members, update]);\n\n const handlePropertyValueUpdate = useCallback((\n e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement>,\n numberValue?: number,\n val?: string,\n fieldType?: keyof typeof FIELD_TYPES\n ): void => {\n try {\n const getValue = (): any => {\n if (fieldType) return fieldType;\n if (val !== undefined) return val;\n if (numberValue !== undefined) return numberValue;\n return e?.target?.value;\n };\n\n const value = getValue();\n const elementJSONCopy = deepClone(elementJSON);\n\n if (e?.target?.name) {\n elementJSONCopy[e.target.name] = e.target.type === 'checkbox' ? e.target.checked : value;\n }\n // Only update if there's an actual change\n if (fieldType) {\n const { uniqueStringId: uniqueId } = generateUniqueId();\n const copyOfUpdatedElement: IProperty = {\n ...element[fieldType],\n section_form_id: elementJSONCopy?.section_form_id,\n is_form_switcher_section: elementJSONCopy?.is_form_switcher_section,\n section_order: elementJSONCopy.section_order,\n id: uniqueId,\n type: 'custom',\n is_system_field: Boolean(elementJSONCopy?.is_system_field),\n is_new: true,\n column_width: elementJSONCopy?.column_width || 6,\n custom_width: elementJSONCopy?.custom_width || 6\n };\n setElementJSON(copyOfUpdatedElement);\n } else if (JSON.stringify(elementJSON) !== JSON.stringify(elementJSONCopy)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy });\n }\n } catch (error) {\n console.error('Error updating property value:', error);\n }\n }, [elementJSON, element, setElementJSON]);\n\n const handleSelectOptionValueUpdate = useCallback((options: any[]): void => {\n try {\n if (!Array.isArray(options)) {\n console.error('Options must be an array');\n return;\n }\n\n const elementJSONCopy = deepClone(elementJSON);\n elementJSONCopy.options = [...options];\n const { uniqueStringId: uniqueId } = generateUniqueId('-');\n\n if (JSON.stringify(elementJSON.options) !== JSON.stringify(options)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy, id: uniqueId });\n }\n } catch (error) {\n console.error('Error updating select options:', error);\n }\n }, [elementJSON, setElementJSON]);\n\n const handleColumnsUpdate = useCallback((columns: MRT_ColumnDef<MRT_RowData>[]): void => {\n try {\n if (!Array.isArray(columns)) {\n console.error('Columns must be an array');\n return;\n }\n\n const elementJSONCopy = deepClone(elementJSON);\n elementJSONCopy.table_columns = [...columns];\n const { uniqueStringId: uniqueId } = generateUniqueId('-');\n\n if (JSON.stringify(elementJSON.table_columns) !== JSON.stringify(columns)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy, id: uniqueId });\n }\n } catch (error) {\n console.error('Error updating table columns:', error);\n }\n }, [elementJSON, setElementJSON]);\n\n const handleRemoveSection = useCallback((sectionIndex: number): void => {\n try {\n if (!isValidNumber(sectionIndex) || sectionIndex < 0 || sectionIndex >= section.length) {\n console.error('Invalid section index for removal');\n return;\n }\n\n setRemoveSectionPosition(sectionIndex);\n removeSection(sectionIndex);\n\n // Remove associated members in reverse order to maintain indices\n const membersToRemove: number[] = [];\n members.forEach((member: IProperty, index: number) => {\n if (member?.section_order === sectionIndex) {\n membersToRemove.push(index);\n }\n });\n\n // Remove members in reverse order to maintain correct indices\n membersToRemove.reverse().forEach(memberIndex => {\n remove(memberIndex);\n });\n\n setRemoveSectionActionPerformed(true);\n } catch (error) {\n console.error('Error removing section:', error);\n }\n }, [section, members, setRemoveSectionPosition, removeSection, remove, setRemoveSectionActionPerformed]);\n\n const handleMakeAccordion = useCallback((sectionIndex: number): void => {\n try {\n if (!isValidNumber(sectionIndex) || sectionIndex < 0 || sectionIndex >= section.length) {\n console.error('Invalid section index for accordion conversion');\n return;\n }\n\n setModifyAccordion(true);\n setSectionPositionEditedElement(sectionIndex);\n setActiveSection(sectionIndex);\n\n const copyOfSection: ISectionProperty = {\n ...deepClone(section[sectionIndex]),\n is_accordion: true\n };\n\n updateSection(sectionIndex, copyOfSection);\n setSelectedHoc('section');\n setSectionJSON(copyOfSection);\n pickPropertyEditForm(copyOfSection.field_type);\n } catch (error) {\n console.error('Error making section accordion:', error);\n }\n }, [section, setModifyAccordion, setSectionPositionEditedElement, setActiveSection, updateSection, setSelectedHoc, setSectionJSON, pickPropertyEditForm]);\n\n const handleTabData = useCallback((): void => {\n try {\n const formWithMembers = deepClone(sectionFormJSON);\n\n formWithMembers.forEach((section: ISectionProperty, sectionIndex: number) => {\n section.members = members.filter(\n (member: IProperty) => member?.section_order === sectionIndex\n );\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const activeTabIndex = Number(activeTabValue);\n if (isValidNumber(activeTabIndex) && activeTabIndex >= 0 && activeTabIndex < tabsData.length) {\n const updatedTabsData = [...tabsData];\n updatedTabsData[activeTabIndex] = {\n ...updatedTabsData[activeTabIndex],\n data: formWithMembers,\n remove_tab: hasSystemMembers,\n };\n setTabsData(updatedTabsData)\n remove();\n removeSection();\n setActiveMember(undefined);\n setSelectedHoc(\"\");\n setActiveSection(undefined);\n }\n } catch (error) {\n console.error('Error updating tab data:', error);\n }\n }, [sectionFormJSON, members, activeTabValue, tabsData, setTabsData]);\n\n // const handlePreview = () => {\n // const formWithMembers = JSON.parse(JSON.stringify(sectionFormJSON));\n\n // formWithMembers.forEach(\n // (section: ISectionProperty, sectionIndex: number) => {\n // section.members = members.filter(\n // (member: any) => member?.section_order === sectionIndex,\n // ) as (IProperty | ISelectProperty)[];\n // },\n // );\n // const state = tabsData?.length\n // ? { tab: tabsData }\n // : { section: formWithMembers };\n\n // const FormBuilderConversion = state && formBuilderConversion(state);\n\n // setPreviewFields(FormBuilderConversion);\n // };\n\n // Option 1: Using useMemo to memoize the expensive computation\n const formWithMembers = useMemo(() => {\n if (!sectionFormJSON || !members) return null;\n\n return sectionFormJSON.map((section: ISectionProperty, sectionIndex: number) => ({\n ...section,\n members: members.filter(\n (member: any) => member?.section_order === sectionIndex,\n ) as (IProperty | ISelectProperty)[]\n }));\n }, [sectionFormJSON, members]);\n\n const previewState = useMemo(() => {\n if (!formWithMembers) return null;\n\n return tabsData?.length\n ? { tab: tabsData }\n : { section: formWithMembers };\n }, [tabsData, formWithMembers]);\n\n const previewFields = useMemo(() => {\n if (!previewState) return null;\n return formBuilderConversion(previewState);\n }, [previewState]);\n\n\n // Option 2: Optimized handlePreview function using useCallback\n const showPreview = useCallback(() => {\n if (previewFields) {\n setPreviewFields(previewFields);\n }\n }, [previewFields, setPreviewFields]);\n const hidePreview = useCallback(() => {\n setPreviewFields(null);\n }, []);\n\n // Enhanced handleFormUpdate with proper error handling and validation\n const handleFormUpdate = useCallback(async (): void => {\n try {\n\n\n\n // Early validation checks\n if (!sectionFormJSON || !Array.isArray(sectionFormJSON)) {\n console.warn('Invalid sectionFormJSON provided');\n return;\n }\n\n if (!members || !Array.isArray(members)) {\n console.warn('Invalid members array provided');\n return;\n }\n\n if (!rowData?._id) {\n console.warn('Missing rowData._id for form update');\n return;\n }\n\n // Deep clone with proper error handling\n let formWithMembers: IEnhancedSectionProperty[];\n\n try {\n formWithMembers = structuredClone(sectionFormJSON);\n } catch (cloneError) {\n // Fallback to JSON method if structuredClone is not available\n formWithMembers = JSON.parse(JSON.stringify(sectionFormJSON));\n }\n\n // Enhanced member filtering with better type safety and validation\n formWithMembers.forEach((section: IEnhancedSectionProperty, sectionIndex: number) => {\n // Validate section object\n if (!section || typeof section !== 'object') {\n console.warn(`Invalid section at index ${sectionIndex}`);\n return;\n }\n\n // Filter members with proper type checking and validation\n section.members = members.filter((member: IMember) => {\n // Validate member object and section_order\n return (\n member &&\n typeof member === 'object' &&\n typeof member.section_order === 'number' &&\n member.section_order === sectionIndex\n );\n }) as (IProperty | ISelectProperty)[];\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const activeTabIndex = Number(activeTabValue);\n let updatedTabsData = [...tabsData];\n if (isValidNumber(activeTabIndex) && activeTabIndex >= 0 && activeTabIndex < tabsData.length) {\n updatedTabsData = [...tabsData];\n updatedTabsData[activeTabIndex] = {\n ...updatedTabsData[activeTabIndex],\n data: formWithMembers,\n remove_tab: hasSystemMembers,\n };\n\n setTabsData(updatedTabsData)\n }\n\n // Build state object with proper validation\n const state: IFormState = updatedTabsData?.length > 0\n ? { tab: updatedTabsData }\n : { section: formWithMembers };\n\n // Validate formBuilderConversion function exists\n if (typeof formBuilderConversion !== 'function') {\n console.error('formBuilderConversion is not a function');\n return;\n }\n\n // Execute conversion with error handling\n let formBuilderConversionResult: any;\n try {\n formBuilderConversionResult = formBuilderConversion(state);\n } catch (conversionError) {\n console.error('Error during form builder conversion:', conversionError);\n return;\n }\n\n // Validate conversion result\n if (!formBuilderConversionResult) {\n console.warn('Form builder conversion returned empty result');\n return;\n }\n\n // Validate elementPerColumn\n // if (typeof elementPerColumn !== 'number' || elementPerColumn <= 0) {\n\n // console.warn('Invalid elementPerColumn value');\n // return;\n // }\n\n // Prepare payload with validation\n const updatePayload: IFormUpdatePayload = {\n gridCol: elementPerColumn || 2,\n fields: formBuilderConversionResult\n };\n\n // Dispatch update action\n const updateRes = await dispatch(\n patchFormDataById({\n id: rowData._id,\n data: updatePayload\n })\n );\n if (updateRes.meta.requestStatus === 'rejected') {\n\n const m = getErrorMessage(updateRes?.error?.message);\n enqueueSnackbar(m, { variant: 'error' });\n } else {\n enqueueSnackbar(\"Form updated successfully\", { variant: 'success' });\n navigate(path);\n }\n\n } catch (error) {\n const m = error?.message || 'Something went wrong while updating the form';\n enqueueSnackbar(m, { variant: 'error' });\n }\n }, [\n sectionFormJSON,\n members,\n tabsData,\n rowData?._id,\n elementPerColumn,\n dispatch,\n formBuilderConversion\n ]);\n\n const handleDuplicateElement = (index: number) => {\n const copyOfMember: any = { ...members[index], type: \"custom\" };\n copyOfMember && insert(index + 1, copyOfMember);\n setActiveMember(index + 1);\n setSelectedHoc(\"element\");\n setPositionEditedElement(index + 1);\n setElementJSON(copyOfMember);\n pickPropertyEditForm(copyOfMember.field_type);\n };\n\n const breadCrumbPath = [\n {\n link: path,\n label: \"Forms\",\n },\n {\n link: \"\",\n label: formatLabel(rowData?.name),\n },\n {\n link: \"\",\n label: \"Edit Form\",\n },\n ];\n\n\n useEffect(() => {\n if (removeSectionActionPerformed) {\n members.forEach((member: any, index: number) => {\n if (\n removeSectionPosition !== undefined &&\n Boolean(removeSectionPosition?.toString) &&\n member.section_order > removeSectionPosition\n ) {\n update(index, { ...member, section_order: member.section_order - 1 });\n }\n });\n setRemoveSectionActionPerformed(false);\n setRemoveSectionMembersPerformed(true);\n setRemoveSectionPosition(undefined);\n setSelectedHoc(\"\");\n }\n\n // eslint-disable-next-line\n }, [removeSectionActionPerformed]);\n\n useEffect(() => {\n formBuilder.isSuccess && navigate(path);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [formBuilder.isSuccess]);\n\n useEffect(() => {\n if (formBuilder.isError) {\n setToast({\n type: 'alert',\n message: formBuilder.error\n });\n }\n }, [formBuilder.error, formBuilder.isError]);\n\n useEffect(() => {\n if (\n typeof positionEditedElement !== \"number\" ||\n typeof positionEditedElement !== \"string\"\n ) {\n const index = Number(positionEditedElement);\n if (formJSON[index]) {\n const copyOfUpdatedFormJson = JSON.parse(\n JSON.stringify(formJSON[index]),\n );\n update(index, { ...copyOfUpdatedFormJson });\n }\n }\n // eslint-disable-next-line\n }, [formJSON]);\n\n useEffect(() => {\n const updatedFormJSON = formJSON.map((obj: any, index: number) => {\n if (index === Number(positionEditedElement)) {\n return { ...elementJSON };\n } else {\n return { ...obj };\n }\n });\n setFormJSON(updatedFormJSON);\n\n // eslint-disable-next-line\n }, [elementJSON]);\n\n useEffect(() => {\n if (members.length !== formJSON.length) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n }\n if (\n Boolean(elementSwap) &&\n JSON.stringify(members) !== JSON.stringify(formJSON)\n ) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n setElementSwap(false);\n const newMember: any =\n positionEditedElement && members[positionEditedElement];\n newMember && setSelectedHoc(\"element\");\n newMember && setElementJSON(newMember);\n newMember && pickPropertyEditForm(newMember.field_type);\n }\n if (\n removeSectionMembersPerformed &&\n JSON.stringify(members) !== JSON.stringify(formJSON)\n ) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n setRemoveSectionMembersPerformed(false);\n }\n // eslint-disable-next-line\n }, [members, elementSwap]);\n\n useEffect(() => {\n if (\n typeof sectionPositionEditedElement !== \"number\" ||\n typeof sectionPositionEditedElement !== \"string\"\n ) {\n const index = Number(sectionPositionEditedElement);\n if (sectionFormJSON[index]) {\n const copyOfUpdatedFormJson = JSON.parse(\n JSON.stringify(sectionFormJSON[index]),\n );\n updateSection(index, { ...copyOfUpdatedFormJson });\n }\n }\n // eslint-disable-next-line\n }, [sectionFormJSON]);\n\n useEffect(() => {\n const updatedFormJSON = sectionFormJSON.map((obj: any, index: number) => {\n if (index === Number(sectionPositionEditedElement)) {\n return { ...obj, ...sectionJSON };\n } else {\n return { ...obj };\n }\n });\n setSectionFormJSON(updatedFormJSON);\n // eslint-disable-next-line\n }, [sectionJSON]);\n\n useEffect(() => {\n if (section.length !== sectionFormJSON.length) {\n setSectionFormJSON(JSON.parse(JSON.stringify(section)));\n }\n if (\n JSON.stringify(sectionFormJSON) !== JSON.stringify(section) &&\n modifyAccordion\n ) {\n setSectionFormJSON(JSON.parse(JSON.stringify(section)));\n setModifyAccordion(false);\n }\n // eslint-disable-next-line\n }, [section]);\n\n useEffect(() => {\n () => setInitialLoading(true);\n }, [])\n\n const handleFormData = useCallback(async () => {\n setInitialLoading(true)\n try {\n if (rowData?._id) {\n setTabsData([])\n await dispatch(getFormDataById(rowData?._id));\n await dispatch(getFieldsByFormId({ id: rowData?._id }));\n\n }\n } finally {\n setInitialLoading(false);\n }\n\n }, [rowData?._id])\n\n useEffect(() => {\n handleFormData();\n }, [handleFormData]);\n\n type SelectedHoc = \"element\" | \"section\" | null;\n\n // Constants\n const DEFAULT_FIELD_TYPE = \"text\";\n const HOC_TYPES = {\n ELEMENT: \"element\",\n SECTION: \"section\"\n } as const;\n\n // Helper function to check if object has meaningful content\n const hasValidContent = (obj: Record<string, any>): boolean => {\n return obj && Object.keys(obj).length > 0;\n };\n\n const EmptyStateMessage = () => (\n <Typography type=\"s5\" color={\"theme.secondary.800\"} className=\"formSection--Text\">Select a field to edit its properties.</Typography>\n )\n\n // Helper function to get field type with fallback\n const getFieldTypeWithFallback = (\n json: ElementJSON | SectionJSON | null | undefined,\n fallback: string = DEFAULT_FIELD_TYPE\n ): string => {\n return json?.field_type || fallback;\n };\n\n const memoizedForm = useMemo(() => {\n // Early return for empty state\n if (!selectedHoc) {\n\n return <EmptyStateMessage />;\n }\n\n // Handle element selection\n if (selectedHoc === HOC_TYPES.ELEMENT) {\n if (!hasValidContent(members)) {\n console.warn('Element selected but no members data available');\n return <EmptyStateMessage />;\n }\n\n const fieldType = getFieldTypeWithFallback(elementJSON);\n return pickPropertyEditForm(fieldType);\n }\n\n // Handle section selection\n if (selectedHoc === HOC_TYPES.SECTION) {\n if (!hasValidContent(section)) {\n console.warn('Section selected but no section data available');\n return <EmptyStateMessage />;\n }\n\n const fieldType = getFieldTypeWithFallback(sectionJSON);\n return pickPropertyEditForm(fieldType);\n }\n\n // Fallback for unknown selection type\n console.warn(`Unknown selectedHoc type: ${selectedHoc}`);\n return <EmptyStateMessage />;\n }, [\n // Core dependencies\n selectedHoc,\n\n // Data dependencies\n Object.keys(members).length,\n Object.keys(section).length,\n\n // JSON dependencies with deep comparison consideration\n elementJSON?.field_type,\n elementJSON?.field_properties,\n sectionJSON?.field_type,\n sectionJSON?.field_properties,\n\n // Function dependency\n pickPropertyEditForm\n ]);\n\n return (\n // <FullScreenLayout className=\"formSection--Layout\">\n <Box position='relative'>\n {initialLoading ? <ErpLoader /> :\n <DndProvider backend={HTML5Backend}>\n <FormHeader breadCrumbPath={breadCrumbPath}>\n <div className=\"formSection--Buttons\">\n <Button\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n text=\"Preview\"\n onClick={() => { !previewFieldsData ? showPreview() : hidePreview() }}\n disable={!members?.length}\n startIcon={previewFieldsData ? <EyeOff /> : <Eye />}\n />\n <Button\n variant=\"contained\"\n type=\"submit\"\n text=\"Update\"\n onClick={handleFormUpdate}\n disable={previewFieldsData}\n />\n </div>\n </FormHeader>\n {!previewFieldsData ?\n <Grid className=\"formSection--Grid\" container>\n <Grid\n item\n xs={9}\n component=\"form\"\n sx={{\n position: \"relative\",\n background: \"#F5F6F5\",\n padding: \"0.75rem\",\n }}\n >\n <Grid className=\"formSection--GridContainer\">\n <Box className=\"formSection--Tab\">\n {tabsData && (\n <TabBar\n tabs={tabsData}\n onEditTabTitle={handleEditTabTitle}\n activeValue={activeTabValue}\n setActiveValue={setActiveTabValue}\n handleTabChange={() => {\n handleTabData()\n }}\n handleRemoveTab={handleRemoveTab}\n containerProps={{ mb: 0 }}\n />\n )}\n <Button\n variant=\"outlined\"\n text=\"Add Tab\"\n onClick={handleAddTab}\n style={{ color: \"#292D32\", margin: \"0.5rem\" }}\n />\n </Box>\n <div className=\"formSection--Form\">\n {section?.map((item: any, i: number) => {\n const sectionMembers = members.filter(\n (member: any) => member.section_order === i,\n );\n const isFormSwitcher = item.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const switchForms = item?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: members.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }))\n\n return (\n <DynamicSectionHOC\n index={i}\n label={t(item.label)}\n onClick={handleSectionSelection}\n position={i}\n fieldArrayName=\"section\"\n isFormSwitcher={isFormSwitcher}\n activeIndex={activeSection === i}\n removeSection={() => handleRemoveSection(i)}\n handleAccordion={() => handleMakeAccordion(i)}\n handleAddButton={(e) => handleAddMember(e)}\n remove_section={item.remove_section}\n >\n {isFormSwitcher ? (\n <div style={{ width: '100%' }} >\n <Typography type=\"s5\" style={{ fontWeight: 500 }} color={\"theme.secondary.800\"}>\n {item.form_switcher_label}\n </Typography>\n <RadioGroup\n aria-labelledby=\"theme-radio-buttons-group-label\"\n name={item.form_switcher_name || item.form_switcher_label}\n >\n\n {switchForms?.map(({ name, id, formMembers }: { name: string, id: number, formMembers: any }) => (\n <>\n <div>\n <FormControlLabel\n key={id}\n value={name}\n control={<Radio />}\n label={t(name)}\n disabled\n />\n </div>\n\n <Grid container sx={{ mb: 3 }}>\n <FormFields\n sectionMembers={formMembers || []}\n members={members}\n activeMember={activeMember}\n control={control}\n t={t}\n element={element}\n images={images}\n elementJSON={elementJSON}\n remove={remove}\n move={move}\n handleElementSelection={handleElementSelection}\n setElementSwap={setElementSwap}\n handleDuplicateElement={handleDuplicateElement}\n setSelectedHoc={setSelectedHoc}\n setActiveMember={setActiveMember}\n />\n </Grid>\n <Button\n text=\"Add\"\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n data-position={i}\n onClick={(e) => handleAddMember(e, {\n section_form_id: id,\n is_form_switcher_section: true\n })}\n startIcon={<Add />}\n />\n </>\n ))}\n </RadioGroup>\n </div>\n ) : null}\n {!isFormSwitcher &&\n <FormFields\n sectionMembers={sectionMembers || []}\n members={members}\n activeMember={activeMember}\n control={control}\n t={t}\n element={element}\n images={images}\n elementJSON={elementJSON}\n remove={remove}\n move={move}\n handleElementSelection={handleElementSelection}\n setElementSwap={setElementSwap}\n handleDuplicateElement={handleDuplicateElement}\n setSelectedHoc={setSelectedHoc}\n setActiveMember={setActiveMember}\n />\n }\n </DynamicSectionHOC>\n );\n })}\n <div className=\"formSection--Section\">\n <Button\n text=\"Add a section\"\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n onClick={addNewSection}\n startIcon={<Add />}\n />\n </div>\n </div>\n </Grid>\n\n </Grid>\n <Grid\n item\n xs={3}\n className={\n Boolean(selectedHoc) && (members?.length || section.length)\n ? \"formSection--RightGrid\"\n : \"formSection--RightGrid formSection--Text\"\n }\n >\n {memoizedForm}\n </Grid>\n </Grid>\n :\n <FormParser\n data={previewFieldsData || []}\n handleFormSubmit={(data) => console.log(\"Preview Data\", data)}\n className='form-container'\n fieldArrayName='form-builder-preview'\n getFormMethods={(methods: any) =>\n setFormParserMethods({ ...methods })\n }\n />\n }\n <Toast\n open={Boolean(toast)}\n type={toast?.type}\n message={toast?.message}\n handleClose={() => setToast(null)}\n anchorOrigin={{ horizontal: 'right', vertical: 'bottom' }}\n />\n </DndProvider>}\n </Box>\n // </FullScreenLayout>\n );\n}\n\nexport default CustomForm;\n"],"names":["formWithMembers","section","id","elementPerColumn","_a","Button"],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("react-router-dom"),i=require("react-hook-form"),n=require("react-dnd"),o=require("react-dnd-html5-backend"),s=require("react-i18next"),l=,/* empty css */a=,/* empty css */d=,/* empty css */c=,/* empty css */u=,/* empty css */m=,/* empty css */f=,/* empty css */h=,/* empty css */p=,/* empty css */b=,/* empty css */v=,/* empty css */y=,/* empty css */_=,/* empty css */x=,/* empty css */g=,/* empty css */S=,/* empty css */j=,/* empty css */N=,/* empty css */k=,/* empty css */q=,/* empty css */C=,/* empty css */w=,/* empty css */E=,/* empty css */O=,/* empty css */J=;/* empty css */;/* empty css */var F=,/* empty css */A=,/* empty css */M=,/* empty css */B=,/* empty css */T=,/* empty css */I=,/* empty css */P=;/* empty css */const D=e=>!isNaN(Number(e))&&isFinite(Number(e)),G=e=>JSON.parse(JSON.stringify(e)),U=(e="")=>({uniqueStringId:`${Date.now()}${e}${Math.random().toString(36).substr(2,9)}`});function V(){const{t:V}=s.useTranslation(),$=p.useAppDispatch(),L=r.useNavigate(),R=r.useLocation(),H=R.state??[],W=p.useAppSelector(e=>e.formBuilder),{control:z}=i.useForm({reValidateMode:"onBlur"}),{fields:Y,append:K,remove:Q,update:X,move:Z,insert:ee}=i.useFieldArray({control:z,name:"members"}),{fields:te,append:re,remove:ie,update:ne}=i.useFieldArray({control:z,name:"section"}),[oe,se]=t.useState(""),[le,ae]=t.useState(),[de,ce]=t.useState(),[ue,me]=t.useState([]),[fe,he]=t.useState(null),[pe,be]=t.useState(),[ve,ye]=t.useState([]),[_e,xe]=t.useState({}),[ge,Se]=t.useState(),[je,Ne]=t.useState(!1),[ke,qe]=t.useState(!1),[Ce,we]=t.useState(),[Ee,Oe]=t.useState(!0),[Je,Fe]=t.useState([]),[Ae,Me]=t.useState(0),[Be,Te]=t.useState(!1),[Ie,Pe]=t.useState(!1),[De,Ge]=t.useState(null),[Ue,Ve]=t.useState(null),[$e,Le]=t.useState(),Re=R.pathname.split("/")[2],He=J.generateModulePath(Re);J.useFormDataEffect(W,Je,Ae,{removeSection:ie,remove:Q,setTabsData:Fe,append:K,appendSection:re});const We=t.useCallback(r=>{try{if(!r||"string"!=typeof r)/* @__PURE__ */
2
+ return e.jsx("div",{className:"text-gray-500 p-4",children:"Select a field to edit"});const i=r.toLowerCase().trim(),n={text:["text","number","email","phone","date","time","url","currency","file","geolocation","image","relation","info","tagsinput"],select:["select"],section:["section"],checkbox:["checkbox","togglebutton","radiobutton"],table:["table"]},o={element:fe,handlePropertyValueUpdate:nt,handleWidthChange:rt,handleColumnSelect:it,fields:(null==W?void 0:W.fields)||[]},s={element:fe,handlePropertyValueUpdate:nt,handleSelectOptionValueUpdate:ot,handleWidthChange:rt,handleColumnSelect:it};return n.text.includes(i)?/* @__PURE__ */t.createElement(k.TextEditForm,{...o,key:`text-form-${(null==fe?void 0:fe.id)||"default"}`}):n.select.includes(i)?/* @__PURE__ */t.createElement(q.SelectEditForm,{...s,key:`select-form-${(null==fe?void 0:fe.id)||"default"}`}):n.section.includes(i)?/* @__PURE__ */e.jsx(C.default,{element:_e,handlePropertyValueUpdate:tt},`section-form-${(null==_e?void 0:_e.id)||"default"}`):n.checkbox.includes(i)?/* @__PURE__ */t.createElement(w.CheckboxEditForm,{...s,key:`checkbox-form-${(null==fe?void 0:fe.id)||"default"}`}):n.table.includes(i)?/* @__PURE__ */e.jsx(E.default,{element:fe,handlePropertyValueUpdate:nt,handleColumnsUpdate:st,fields:(null==W?void 0:W.fields)||[]},`table-form-${(null==fe?void 0:fe.id)||"default"}`):/* @__PURE__ */e.jsxs("div",{className:"text-gray-500 p-4 border border-gray-200 rounded",children:[
3
+ /* @__PURE__ */e.jsx("p",{className:"font-medium",children:"Unknown Field Type"}),
4
+ /* @__PURE__ */e.jsxs("p",{className:"text-sm mt-1",children:['Field type "',r,'" is not supported. Please select a valid field to edit.']})]})}catch(i){/* @__PURE__ */
5
+ return e.jsxs("div",{className:"text-red-500 p-4 border border-red-200 rounded bg-red-50",children:[
6
+ /* @__PURE__ */e.jsx("p",{className:"font-medium",children:"Error Loading Form"}),
7
+ /* @__PURE__ */e.jsx("p",{className:"text-sm mt-1",children:"There was an error loading the property edit form. Please try again."})]})}},[fe,_e,W]),ze=t.useCallback(()=>{var e;try{if(!(null==(e=N.element)?void 0:e.section))return;const{uniqueStringId:t}=U("-"),r={...G(N.element.section),id:t};r.switcher_forms&&(r.switcher_forms=r.switcher_forms.map(e=>({...e,id:U("-").uniqueStringId})));const i=te.length;re(r),ae(i),se("section");const n={field_type:r.field_type,section_type:r.section_type,switcher_forms:r.switcher_forms,form_switcher_label:r.form_switcher_label,form_switcher_name:r.form_switcher_name,label:r.label,is_accordion:r.is_accordion,id:r.id??i};xe(n),Se(i),We(r.field_type)}catch(t){}},[N.element,te,re,ae,se,xe,Se,We]),Ye=t.useCallback(()=>{try{const e=G(ve);e.forEach((e,t)=>{e.members=Y.filter(e=>(null==e?void 0:e.section_order)===t)});const t=e.some(e=>{var t;return null==(t=e.members)?void 0:t.some(e=>Boolean(null==e?void 0:e.is_system_field))}),r=!(null==Je?void 0:Je.length)&&t,i={tab_order:Je.length+1,title:"data",remove_tab:r,data:(null==Je?void 0:Je.length)?[]:e};Fe(e=>[...e,i])}catch(e){}},[ve,Y,Je,Fe]),Ke=t.useCallback((e,t)=>{try{if(!D(e)||!(null==t?void 0:t.trim()))return;Fe(r=>r.map(r=>r.tab_order===e?{...r,title:t.trim()}:r))}catch(r){}},[Fe]),Qe=t.useCallback(e=>{try{if(!D(e))return;const t=Je.filter(t=>t.tab_order!==e).map(t=>({...t,tab_order:t.tab_order>e?t.tab_order-1:t.tab_order}));if(Fe(t),Ae==e&&Me((null==t?void 0:t.length)-1),t.length>0){const e=t.find(e=>e.tab_order===(Ae??0)+1);if(null==e?void 0:e.data){const t=e.data.map(({field_type:e,label:t,is_accordion:r,id:i,remove_section:n})=>({field_type:e,label:t,is_accordion:r,id:i,remove_section:n})),r=e.data.flatMap(e=>{var t;return(null==(t=e.members)?void 0:t.map(e=>({...e})))||[]});Q(),ie(),r.forEach(e=>K(e)),t.forEach(e=>re(e))}}else Q(),ie()}catch(t){}},[Je,Ae,Fe,Q,ie,K,re]),Xe=t.useCallback(e=>{try{const t=e.target.dataset.position;if(!t||!D(t))return;const r=Number(t);if(r<0||r>=ue.length)return;ce(r);const i=G(ue[r]);be(r),he(i),se("element")}catch(t){}},[ue,ce,be,he,se]),Ze=t.useCallback(e=>{try{const t=e.target.dataset.position;if(!t||!D(t))return;const r=Number(t);if(r<0||r>=ve.length)return;ae(r);const i=G(ve[r]);Se(r),xe(i),se("section")}catch(t){}},[ve,ae,Se,xe,se]),et=t.useCallback((e,t)=>{var r,i;try{const n=e.currentTarget,o=null==(r=null==n?void 0:n.dataset)?void 0:r.position;if(void 0===o||!D(o))return;const s=Number(o);if(s<0)return;if(!(null==(i=N.element)?void 0:i.text))return;const l={...G(N.element.text),...t,section_order:s,type:"custom",is_new:!0,custom_width:Math.floor(6),is_fullwidth:!1,is_system_field:Boolean(null==t?void 0:t.is_system_field),id:U().uniqueStringId};ae(s),K(l);const a=Y.length;ce(a),se("element"),be(a),he(l),We(l.field_type)}catch(n){}},[N.element,Y,ae,K,ce,se,be,he,We]),tt=t.useCallback((e,t)=>{try{const{name:r,type:i,checked:n,value:o}=e.target;if(!r)return;const s=void 0!==t?t:"checkbox"===i?n:o;_e[r]!==s&&xe(e=>({...e,[r]:s}))}catch(r){}},[_e,xe]),rt=t.useCallback(e=>{try{if(!D(e)||e<1||e>12)return;he(t=>({...t,custom_width:e}))}catch(t){}},[he]),it=t.useCallback(e=>{try{const t=Number(e.target.value);if(!D(t)||t<=0)return;const r=Math.floor(12/t);if(r<=0)return;Y.forEach((e,t)=>{X(t,{...e,custom_width:r})})}catch(t){}},[Y,X]),nt=t.useCallback((e,t,r,i)=>{var n;try{const o=(()=>{var n;return i||(void 0!==r?r:void 0!==t?t:null==(n=null==e?void 0:e.target)?void 0:n.value)})(),s=G(fe);if((null==(n=null==e?void 0:e.target)?void 0:n.name)&&(s[e.target.name]="checkbox"===e.target.type?e.target.checked:o),i){const{uniqueStringId:e}=U(),t={...N.element[i],section_form_id:null==s?void 0:s.section_form_id,is_form_switcher_section:null==s?void 0:s.is_form_switcher_section,section_order:s.section_order,id:e,type:"custom",is_system_field:Boolean(null==s?void 0:s.is_system_field),is_new:!0,column_width:(null==s?void 0:s.column_width)||6,custom_width:(null==s?void 0:s.custom_width)||6};he(t)}else JSON.stringify(fe)!==JSON.stringify(s)&&he({...fe,...s})}catch(o){}},[fe,N.element,he]),ot=t.useCallback(e=>{try{if(!Array.isArray(e))return;const t=G(fe);t.options=[...e];const{uniqueStringId:r}=U("-");JSON.stringify(fe.options)!==JSON.stringify(e)&&he({...fe,...t,id:r})}catch(t){}},[fe,he]),st=t.useCallback(e=>{try{if(!Array.isArray(e))return;const t=G(fe);t.table_columns=[...e];const{uniqueStringId:r}=U("-");JSON.stringify(fe.table_columns)!==JSON.stringify(e)&&he({...fe,...t,id:r})}catch(t){}},[fe,he]),lt=t.useCallback(e=>{try{if(!D(e)||e<0||e>=te.length)return;we(e),ie(e);const t=[];Y.forEach((r,i)=>{(null==r?void 0:r.section_order)===e&&t.push(i)}),t.reverse().forEach(e=>{Q(e)}),Ne(!0)}catch(t){}},[te,Y,we,ie,Q,Ne]),at=t.useCallback(e=>{try{if(!D(e)||e<0||e>=te.length)return;Pe(!0),Se(e),ae(e);const t={...G(te[e]),is_accordion:!0};ne(e,t),se("section"),xe(t),We(t.field_type)}catch(t){}},[te,Pe,Se,ae,ne,se,xe,We]),dt=t.useCallback(()=>{try{const e=G(ve);e.forEach((e,t)=>{e.members=Y.filter(e=>(null==e?void 0:e.section_order)===t)});const t=e.some(e=>{var t;return null==(t=e.members)?void 0:t.some(e=>Boolean(null==e?void 0:e.is_system_field))}),r=Number(Ae);if(D(r)&&r>=0&&r<Je.length){const i=[...Je];i[r]={...i[r],data:e,remove_tab:t},Fe(i),Q(),ie(),ce(void 0),se(""),ae(void 0)}}catch(e){}},[ve,Y,Ae,Je,Fe]),ct=t.useMemo(()=>ve&&Y?ve.map((e,t)=>({...e,members:Y.filter(e=>(null==e?void 0:e.section_order)===t)})):null,[ve,Y]),ut=t.useMemo(()=>ct?(null==Je?void 0:Je.length)?{tab:Je}:{section:ct}:null,[Je,ct]),mt=t.useMemo(()=>ut?h.default(ut):null,[ut]),ft=t.useCallback(()=>{mt&&Ve(mt)},[mt,Ve]),ht=t.useCallback(()=>{Ve(null)},[]),pt=t.useCallback(async()=>{var e;try{if(!ve||!Array.isArray(ve))return;if(!Y||!Array.isArray(Y))return;if(!(null==H?void 0:H._id))return;let i;try{i=structuredClone(ve)}catch(t){i=JSON.parse(JSON.stringify(ve))}i.forEach((e,t)=>{e&&"object"==typeof e&&(e.members=Y.filter(e=>e&&"object"==typeof e&&"number"==typeof e.section_order&&e.section_order===t))});const n=i.some(e=>{var t;return null==(t=e.members)?void 0:t.some(e=>Boolean(null==e?void 0:e.is_system_field))}),o=Number(Ae);let s=[...Je];D(o)&&o>=0&&o<Je.length&&(s=[...Je],s[o]={...s[o],data:i,remove_tab:n},Fe(s));const a=(null==s?void 0:s.length)>0?{tab:s}:{section:i};if("function"!=typeof h.default)return;let d;try{d=h.default(a)}catch(r){return}if(!d)return;const c={gridCol:2,fields:d},u=await $(j.patchFormDataById({id:H._id,data:c}));if("rejected"===u.meta.requestStatus){const t=g.getErrorMessage(null==(e=null==u?void 0:u.error)?void 0:e.message);l.enqueueSnackbar(t,{variant:"error"})}else l.enqueueSnackbar("Form updated successfully",{variant:"success"}),L(He)}catch(i){const e=(null==i?void 0:i.message)||"Something went wrong while updating the form";l.enqueueSnackbar(e,{variant:"error"})}},[ve,Y,Je,null==H?void 0:H._id,void 0,$,h.default]),bt=e=>{const t={...Y[e],type:"custom"};t&&ee(e+1,t),ce(e+1),se("element"),be(e+1),he(t),We(t.field_type)},vt=[{link:He,label:"Forms"},{link:"",label:b.formatLabel(null==H?void 0:H.name)},{link:"",label:"Edit Form"}];t.useEffect(()=>{je&&(Y.forEach((e,t)=>{void 0!==Ce&&Boolean(null==Ce?void 0:Ce.toString)&&e.section_order>Ce&&X(t,{...e,section_order:e.section_order-1})}),Ne(!1),qe(!0),we(void 0),se(""))},[je]),t.useEffect(()=>{W.isSuccess&&L(He)},[W.isSuccess]),t.useEffect(()=>{W.isError&&Ge({type:"alert",message:W.error})},[W.error,W.isError]),t.useEffect(()=>{if("number"!=typeof pe||"string"!=typeof pe){const e=Number(pe);if(ue[e]){const t=JSON.parse(JSON.stringify(ue[e]));X(e,{...t})}}},[ue]),t.useEffect(()=>{const e=ue.map((e,t)=>t===Number(pe)?{...fe}:{...e});me(e)},[fe]),t.useEffect(()=>{if(Y.length!==ue.length&&me(JSON.parse(JSON.stringify(Y))),Boolean(Be)&&JSON.stringify(Y)!==JSON.stringify(ue)){me(JSON.parse(JSON.stringify(Y))),Te(!1);const e=pe&&Y[pe];e&&se("element"),e&&he(e),e&&We(e.field_type)}ke&&JSON.stringify(Y)!==JSON.stringify(ue)&&(me(JSON.parse(JSON.stringify(Y))),qe(!1))},[Y,Be]),t.useEffect(()=>{if("number"!=typeof ge||"string"!=typeof ge){const e=Number(ge);if(ve[e]){const t=JSON.parse(JSON.stringify(ve[e]));ne(e,{...t})}}},[ve]),t.useEffect(()=>{const e=ve.map((e,t)=>t===Number(ge)?{...e,..._e}:{...e});ye(e)},[_e]),t.useEffect(()=>{te.length!==ve.length&&ye(JSON.parse(JSON.stringify(te))),JSON.stringify(ve)!==JSON.stringify(te)&&Ie&&(ye(JSON.parse(JSON.stringify(te))),Pe(!1))},[te]),t.useEffect(()=>{},[]);const yt=t.useCallback(async()=>{Oe(!0);try{(null==H?void 0:H._id)&&(Fe([]),await $(j.getFormDataById(null==H?void 0:H._id)),await $(j.getFieldsByFormId({id:null==H?void 0:H._id})))}finally{Oe(!1)}},[null==H?void 0:H._id]);t.useEffect(()=>{yt()},[yt]);const _t=e=>e&&Object.keys(e).length>0,xt=()=>/* @__PURE__ */e.jsx(f.Typography,{type:"s5",color:"theme.secondary.800",className:"formSection--Text",children:"Select a field to edit its properties."}),gt=(e,t="text")=>(null==e?void 0:e.field_type)||t,St=t.useMemo(()=>{if(!oe)/* @__PURE__ */
8
+ return e.jsx(xt,{});if("element"===oe){if(!_t(Y))/* @__PURE__ */
9
+ return e.jsx(xt,{});const t=gt(fe);return We(t)}if("section"===oe){if(!_t(te))/* @__PURE__ */
10
+ return e.jsx(xt,{});const t=gt(_e);return We(t)}/* @__PURE__ */
11
+ return e.jsx(xt,{})},[oe,Object.keys(Y).length,Object.keys(te).length,null==fe?void 0:fe.field_type,null==fe?void 0:fe.field_properties,null==_e?void 0:_e.field_type,null==_e?void 0:_e.field_properties,We]);
12
+ /* @__PURE__ */
13
+ return e.jsx(F.default,{position:"relative",children:Ee?/* @__PURE__ */e.jsx(x.default,{}):/* @__PURE__ */e.jsxs(n.DndProvider,{backend:o.HTML5Backend,children:[
14
+ /* @__PURE__ */e.jsx(m.default,{breadCrumbPath:vt,children:/* @__PURE__ */e.jsxs("div",{className:"formSection--Buttons",children:[
15
+ /* @__PURE__ */e.jsx(d.default,{variant:"outlined",className:"formSection--PreviewButton",text:"Preview",onClick:()=>{Ue?ht():ft()},disable:!(null==Y?void 0:Y.length),startIcon:Ue?/* @__PURE__ */e.jsx(I.EyeOff,{}):/* @__PURE__ */e.jsx(P.Eye,{})}),
16
+ /* @__PURE__ */e.jsx(d.default,{variant:"contained",type:"submit",text:"Update",onClick:pt,disable:Ue})]})}),Ue?/* @__PURE__ */e.jsx(S.default,{data:Ue||[],handleFormSubmit:e=>{},className:"form-container",fieldArrayName:"form-builder-preview",getFormMethods:e=>Le({...e})}):/* @__PURE__ */e.jsxs(A.default,{className:"formSection--Grid",container:!0,children:[
17
+ /* @__PURE__ */e.jsx(A.default,{item:!0,xs:9,component:"form",sx:{position:"relative",background:"#F5F6F5",padding:"0.75rem"},children:/* @__PURE__ */e.jsxs(A.default,{className:"formSection--GridContainer",children:[
18
+ /* @__PURE__ */e.jsxs(F.default,{className:"formSection--Tab",children:[Je&&/* @__PURE__ */e.jsx(c.default,{tabs:Je,onEditTabTitle:Ke,activeValue:Ae,setActiveValue:Me,handleTabChange:()=>{dt()},handleRemoveTab:Qe,containerProps:{mb:0}}),
19
+ /* @__PURE__ */e.jsx(d.default,{variant:"outlined",text:"Add Tab",onClick:Ye,style:{color:"#292D32",margin:"0.5rem"}})]}),
20
+ /* @__PURE__ */e.jsxs("div",{className:"formSection--Form",children:[null==te?void 0:te.map((t,r)=>{var i;const n=Y.filter(e=>e.section_order===r),o=t.section_type===_.SECTION_TYPES.FORM_SWITCH_SECTION,s=null==(i=null==t?void 0:t.switcher_forms)?void 0:i.map(e=>({...e,formMembers:Y.filter(t=>t.section_form_id===e.id)}));/* @__PURE__ */
21
+ return e.jsxs(a.default,{index:r,label:V(t.label),onClick:Ze,position:r,fieldArrayName:"section",isFormSwitcher:o,activeIndex:le===r,removeSection:()=>lt(r),handleAccordion:()=>at(r),handleAddButton:e=>et(e),remove_section:t.remove_section,children:[o?/* @__PURE__ */e.jsxs("div",{style:{width:"100%"},children:[
22
+ /* @__PURE__ */e.jsx(f.Typography,{type:"s5",style:{fontWeight:500},color:"theme.secondary.800",children:t.form_switcher_label}),
23
+ /* @__PURE__ */e.jsx(M.default,{"aria-labelledby":"theme-radio-buttons-group-label",name:t.form_switcher_name||t.form_switcher_label,children:null==s?void 0:s.map(({name:t,id:i,formMembers:n})=>/* @__PURE__ */e.jsxs(e.Fragment,{children:[
24
+ /* @__PURE__ */e.jsx("div",{children:/* @__PURE__ */e.jsx(B.default,{value:t,control:/* @__PURE__ */e.jsx(y.default,{}),label:V(t),disabled:!0},i)}),
25
+ /* @__PURE__ */e.jsx(A.default,{container:!0,sx:{mb:3},children:/* @__PURE__ */e.jsx(O.default,{sectionMembers:n||[],members:Y,activeMember:de,control:z,t:V,element:N.element,images:u.images,elementJSON:fe,remove:Q,move:Z,handleElementSelection:Xe,setElementSwap:Te,handleDuplicateElement:bt,setSelectedHoc:se,setActiveMember:ce})}),
26
+ /* @__PURE__ */e.jsx(d.default,{text:"Add",variant:"outlined",className:"formSection--PreviewButton","data-position":r,onClick:e=>et(e,{section_form_id:i,is_form_switcher_section:!0}),startIcon:/* @__PURE__ */e.jsx(T.default,{})})]}))})]}):null,!o&&/* @__PURE__ */e.jsx(O.default,{sectionMembers:n||[],members:Y,activeMember:de,control:z,t:V,element:N.element,images:u.images,elementJSON:fe,remove:Q,move:Z,handleElementSelection:Xe,setElementSwap:Te,handleDuplicateElement:bt,setSelectedHoc:se,setActiveMember:ce})]})}),
27
+ /* @__PURE__ */e.jsx("div",{className:"formSection--Section",children:/* @__PURE__ */e.jsx(d.default,{text:"Add a section",variant:"outlined",className:"formSection--PreviewButton",onClick:ze,startIcon:/* @__PURE__ */e.jsx(T.default,{})})})]})]})}),
28
+ /* @__PURE__ */e.jsx(A.default,{item:!0,xs:3,className:Boolean(oe)&&((null==Y?void 0:Y.length)||te.length)?"formSection--RightGrid":"formSection--RightGrid formSection--Text",children:St})]}),
29
+ /* @__PURE__ */e.jsx(v.default,{open:Boolean(De),type:null==De?void 0:De.type,message:null==De?void 0:De.message,handleClose:()=>Ge(null),anchorOrigin:{horizontal:"right",vertical:"bottom"}})]})})}exports.CustomForm=V,exports.default=V;
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/views/form-builder/custom-form.tsx"],"sourcesContent":["// React imports\nimport { useState, useEffect, useMemo, useCallback } from \"react\";\n\n// React Router imports\nimport { useLocation, useNavigate } from \"react-router-dom\";\n\n// React Hook Form imports\nimport { useForm, useFieldArray } from \"react-hook-form\";\n\n// Material UI imports\nimport { Box, FormControlLabel, Grid, RadioGroup } from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\n\n// Third-party imports\nimport { DndProvider } from \"react-dnd\";\nimport { HTML5Backend } from \"react-dnd-html5-backend\";\nimport { MRT_ColumnDef, MRT_RowData } from \"material-react-table\";\nimport { useTranslation } from \"react-i18next\";\nimport { enqueueSnackbar } from \"notistack\";\n\n// ERP Common imports\nimport DynamicSectionHOC from \"@/components/form-control/form-builder/form-builder-element/section\";\nimport Button from \"@/components/form-control/form-builder/form-builder-element/button\";\nimport TabBar from \"@/components/tabs/tabs\";\nimport images from \"@/assets/images\";\nimport { Pathname } from \"@/constants\";\nimport FormHeader from \"@/components/form-header/form-header\";\nimport Typography from \"@/components/typography/typography\";\nimport formBuilderConversion from \"@/utils/form-builder-conversion\";\nimport { useAppDispatch, useAppSelector } from \"@/redux/hooks\";\nimport { formatLabel } from \"@/utils/format-text\";\nimport Toast from \"@/components/toast/toast\";\nimport Radio from \"@/components/radio/radio\";\nimport { SECTION_TYPES } from \"@/utils/constant\";\nimport ErpLoader from \"@/components/loaders/erp-loader\";\nimport { getErrorMessage } from \"@/utils/common\";\nimport FormParser from \"@/components/form-control/form-parser/form-parser\";\nimport { Eye, EyeOff } from \"@/components/icons\";\n\n// Redux actions\nimport {\n patchFormDataById,\n getFormDataById,\n getFieldsByFormId,\n} from \"../form-builder/redux/actionCreator\";\n\n// Local imports\nimport {\n IProperty,\n ISectionProperty,\n ISelectProperty,\n element,\n} from \"./field_properties\";\nimport TextEditForm from \"./element-edit-forms/text\";\nimport SelectEditForm from \"./element-edit-forms/select\";\nimport SectionEditForm from \"./element-edit-forms/section\";\nimport CheckboxEditForm from \"./element-edit-forms/checkbox\";\nimport TableEditForm from \"./element-edit-forms/table-form\";\nimport FormFields from \"./form-fields\";\nimport { generateModulePath, useFormDataEffect } from \"./utils/common\";\nimport \"./custom-form.scss\";\n\nexport interface IElementJson extends IProperty {\n type: string;\n}\n\nconst FIELD_TYPES = {\n TEXT: 'text',\n NUMBER: 'number',\n EMAIL: 'email',\n PHONE: 'phone',\n SELECT: 'select',\n DATE: 'date',\n TIME: 'time',\n URL: 'url',\n CURRENCY: 'currency',\n FILE: 'file',\n GEO_LOCATION: 'geoLocation',\n IMAGE: 'image',\n SECTION: 'section',\n INFO: 'info',\n RELATION: 'relation',\n CHECKBOX: 'checkbox',\n TOGGLE_BUTTON: 'toggleButton',\n TAGS_INPUT: 'tagsInput'\n} as const;\n\nconst DEFAULT_GRID_COLUMNS = 12;\nconst DEFAULT_COLUMN_WIDTH = 2;\nconst DEFAULT_TAB_TITLE = 'data';\n\nconst isValidNumber = (value: any): boolean => !isNaN(Number(value)) && isFinite(Number(value));\nconst deepClone = (obj: T): T => JSON.parse(JSON.stringify(obj));\nconst generateUniqueId = (separator = ''): { uniqueStringId: string } => {\n return { uniqueStringId: `${Date.now()}${separator}${Math.random().toString(36).substr(2, 9)}` };\n};\n\n\nexport function CustomForm() {\n const { t } = useTranslation();\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const location = useLocation();\n const rowData = location.state ?? [];\n\n const formBuilder = useAppSelector((state) => state.formBuilder);\n\n const { control } = useForm({\n reValidateMode: \"onBlur\",\n });\n\n const {\n fields: members,\n append,\n remove,\n update,\n move,\n insert,\n } = useFieldArray({\n control,\n name: \"members\",\n });\n\n const {\n fields: section,\n append: appendSection,\n remove: removeSection,\n update: updateSection,\n } = useFieldArray({\n control,\n name: \"section\",\n });\n\n const [selectedHoc, setSelectedHoc] = useState(\"\");\n const [activeSection, setActiveSection] = useState<number>();\n const [activeMember, setActiveMember] = useState<number>();\n\n const [formJSON, setFormJSON] = useState<object[]>([]);\n const [elementJSON, setElementJSON] = useState<any>(null);\n const [positionEditedElement, setPositionEditedElement] = useState<\n number | undefined\n >();\n\n const [sectionFormJSON, setSectionFormJSON] = useState<object[]>([]);\n const [sectionJSON, setSectionJSON] = useState<any>({});\n const [sectionPositionEditedElement, setSectionPositionEditedElement] =\n useState<number | undefined>();\n const [removeSectionActionPerformed, setRemoveSectionActionPerformed] =\n useState(false);\n const [removeSectionMembersPerformed, setRemoveSectionMembersPerformed] =\n useState(false);\n const [removeSectionPosition, setRemoveSectionPosition] = useState<\n number | undefined\n >();\n const [initialLoading, setInitialLoading] = useState(true);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [activeTabValue, setActiveTabValue] = useState<number | undefined>(0);\n\n const [elementSwap, setElementSwap] = useState(false);\n const [modifyAccordion, setModifyAccordion] = useState(false);\n const [toast, setToast] = useState<IToast | null>(null);\n const [previewFieldsData, setPreviewFields] = useState<any>(null);\n const [_, setFormParserMethods] = useState<any>();\n\n let elementPerColumn: any;\n\n const currentModule = location.pathname.split('/')[2]\n\n const path = generateModulePath(currentModule)\n\n useFormDataEffect(\n formBuilder,\n tabsData,\n activeTabValue,\n {\n removeSection,\n remove,\n setTabsData,\n append,\n appendSection\n }\n );\n\n const pickPropertyEditForm = useCallback((type: string): React.ReactElement => {\n try {\n if (!type || typeof type !== 'string') {\n console.warn('Invalid field type provided to pickPropertyEditForm');\n return <div className=\"text-gray-500 p-4\">Select a field to edit</div>;\n }\n\n const normalizedType = type.toLowerCase().trim();\n\n // Define form type groups for better maintainability\n const formGroups = {\n text: [\n 'text', 'number', 'email', 'phone', 'date', 'time',\n 'url', 'currency', 'file', 'geolocation', 'image',\n 'relation', 'info', 'tagsinput'\n ],\n select: ['select'],\n section: ['section'],\n checkbox: ['checkbox', 'togglebutton', 'radiobutton'],\n table: ['table']\n };\n\n // Common props for reusability\n const commonTextProps = {\n element: elementJSON,\n handlePropertyValueUpdate,\n handleWidthChange,\n handleColumnSelect,\n fields: formBuilder?.fields || []\n };\n\n const commonSelectProps = {\n element: elementJSON,\n handlePropertyValueUpdate,\n handleSelectOptionValueUpdate,\n handleWidthChange,\n handleColumnSelect\n };\n\n // Determine form type and render appropriate component\n if (formGroups.text.includes(normalizedType)) {\n return (\n <TextEditForm\n {...commonTextProps}\n key={`text-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.select.includes(normalizedType)) {\n return (\n <SelectEditForm\n {...commonSelectProps}\n key={`select-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.section.includes(normalizedType)) {\n return (\n <SectionEditForm\n element={sectionJSON}\n handlePropertyValueUpdate={handleSectionPropertyValueUpdate}\n key={`section-form-${sectionJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.checkbox.includes(normalizedType)) {\n return (\n <CheckboxEditForm\n {...commonSelectProps}\n key={`checkbox-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n if (formGroups.table.includes(normalizedType)) {\n return (\n <TableEditForm\n element={elementJSON}\n handlePropertyValueUpdate={handlePropertyValueUpdate}\n handleColumnsUpdate={handleColumnsUpdate}\n fields={formBuilder?.fields || []}\n key={`table-form-${elementJSON?.id || 'default'}`}\n />\n );\n }\n\n // Default fallback with helpful message\n console.warn(`Unknown field type: ${type}`);\n return (\n <div className=\"text-gray-500 p-4 border border-gray-200 rounded\">\n <p className=\"font-medium\">Unknown Field Type</p>\n <p className=\"text-sm mt-1\">\n Field type \"{type}\" is not supported. Please select a valid field to edit.\n </p>\n </div>\n );\n\n } catch (error) {\n console.error('Error in pickPropertyEditForm:', error);\n return (\n <div className=\"text-red-500 p-4 border border-red-200 rounded bg-red-50\">\n <p className=\"font-medium\">Error Loading Form</p>\n <p className=\"text-sm mt-1\">\n There was an error loading the property edit form. Please try again.\n </p>\n </div>\n );\n }\n }, [elementJSON, sectionJSON, formBuilder]);\n\n const addNewSection = useCallback((): void => {\n try {\n if (!element?.section) {\n console.error('Element section template is not available');\n return;\n }\n\n const { uniqueStringId: id } = generateUniqueId('-');\n const newSection: ISectionProperty = {\n ...deepClone(element.section),\n id: id,\n };\n\n // Update switcher forms with new ID if they exist\n if (newSection.switcher_forms) {\n newSection.switcher_forms = newSection.switcher_forms.map(form => ({\n ...form,\n id: generateUniqueId('-').uniqueStringId\n }));\n }\n\n const newSectionIndex = section.length;\n\n appendSection(newSection);\n setActiveSection(newSectionIndex);\n setSelectedHoc('section');\n\n const sectionData: ISectionProperty = {\n field_type: newSection.field_type,\n section_type: newSection.section_type,\n switcher_forms: newSection.switcher_forms,\n form_switcher_label: newSection.form_switcher_label,\n form_switcher_name: newSection.form_switcher_name,\n label: newSection.label,\n is_accordion: newSection.is_accordion,\n id: newSection.id ?? newSectionIndex,\n };\n\n setSectionJSON(sectionData);\n setSectionPositionEditedElement(newSectionIndex);\n pickPropertyEditForm(newSection.field_type);\n } catch (error) {\n console.error('Error adding new section:', error);\n }\n }, [element, section, appendSection, setActiveSection, setSelectedHoc, setSectionJSON, setSectionPositionEditedElement, pickPropertyEditForm]);\n\n /**\n * Enhanced handleAddTab with better validation and error handling\n */\n const handleAddTab = useCallback((): void => {\n try {\n const formWithMembers = deepClone(sectionFormJSON);\n\n // Populate sections with their members\n formWithMembers.forEach((section: ISectionProperty, sectionIndex: number) => {\n section.members = members.filter(\n (member: IProperty) => member?.section_order === sectionIndex\n );\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const shouldRemoveTab = !tabsData?.length && hasSystemMembers;\n\n const newTab: TabData = {\n tab_order: tabsData.length + 1,\n title: DEFAULT_TAB_TITLE,\n remove_tab: shouldRemoveTab,\n data: tabsData?.length ? [] : formWithMembers\n };\n\n setTabsData(prevTabs => [...prevTabs, newTab]);\n } catch (error) {\n console.error('Error adding new tab:', error);\n }\n }, [sectionFormJSON, members, tabsData, setTabsData]);\n\n const handleEditTabTitle = useCallback((tabId: number, newTitle: string): void => {\n try {\n if (!isValidNumber(tabId) || !newTitle?.trim()) {\n console.error('Invalid tab ID or title provided');\n return;\n }\n\n setTabsData(prevTabs =>\n prevTabs.map((tab: TabData) =>\n tab.tab_order === tabId ? { ...tab, title: newTitle.trim() } : tab\n )\n );\n } catch (error) {\n console.error('Error editing tab title:', error);\n }\n }, [setTabsData]);\n\n const handleRemoveTab = useCallback((id: number): void => {\n try {\n if (!isValidNumber(id)) {\n console.error('Invalid tab ID provided');\n return;\n }\n\n const filteredTabs = tabsData.filter((tab: TabData) => tab.tab_order !== id);\n\n // Reorder remaining tabs\n const reorderedTabs = filteredTabs.map((tab: TabData) => ({\n ...tab,\n tab_order: tab.tab_order > id ? tab.tab_order - 1 : tab.tab_order,\n }));\n\n setTabsData(reorderedTabs);\n if (activeTabValue == id) {\n setActiveTabValue(reorderedTabs?.length - 1)\n }\n\n if (reorderedTabs.length > 0) {\n const activeTab = reorderedTabs.find(\n (tab: TabData) => tab.tab_order === (activeTabValue ?? 0) + 1\n );\n\n if (activeTab?.data) {\n const sections = activeTab.data.map(\n ({ field_type, label, is_accordion, id, remove_section }) => ({\n field_type,\n label,\n is_accordion,\n id,\n remove_section,\n })\n );\n\n const membersList = activeTab.data.flatMap((section: ISectionProperty) =>\n section.members?.map((member: IProperty) => ({ ...member })) || []\n );\n\n // Clear current data and add new data\n remove();\n removeSection();\n membersList.forEach(member => append(member));\n sections.forEach(section => appendSection(section));\n }\n } else {\n // Clear all data if no tabs remain\n remove();\n removeSection();\n }\n } catch (error) {\n console.error('Error removing tab:', error);\n }\n }, [tabsData, activeTabValue, setTabsData, remove, removeSection, append, appendSection]);\n\n const handleElementSelection = useCallback((e: React.MouseEvent<HTMLElement>): void => {\n try {\n const target = e.target as HTMLElement;\n const elementPositionIndex = target.dataset.position;\n\n if (!elementPositionIndex || !isValidNumber(elementPositionIndex)) {\n console.error('Invalid element position index');\n return;\n }\n\n const positionIndex = Number(elementPositionIndex);\n\n if (positionIndex < 0 || positionIndex >= formJSON.length) {\n console.error('Element position index out of bounds');\n return;\n }\n\n setActiveMember(positionIndex);\n\n const elementDetails = deepClone(formJSON[positionIndex]);\n setPositionEditedElement(positionIndex);\n setElementJSON(elementDetails);\n setSelectedHoc('element');\n } catch (error) {\n console.error('Error selecting element:', error);\n }\n }, [formJSON, setActiveMember, setPositionEditedElement, setElementJSON, setSelectedHoc]);\n\n const handleSectionSelection = useCallback((e: React.MouseEvent<HTMLElement>): void => {\n try {\n const target = e.target as HTMLElement;\n const sectionPositionIndex = target.dataset.position;\n\n if (!sectionPositionIndex || !isValidNumber(sectionPositionIndex)) {\n console.error('Invalid section position index');\n return;\n }\n\n const positionIndex = Number(sectionPositionIndex);\n\n if (positionIndex < 0 || positionIndex >= sectionFormJSON.length) {\n console.error('Section position index out of bounds');\n return;\n }\n\n setActiveSection(positionIndex);\n\n const sectionDetails = deepClone(sectionFormJSON[positionIndex]);\n setSectionPositionEditedElement(positionIndex);\n setSectionJSON(sectionDetails);\n setSelectedHoc('section');\n } catch (error) {\n console.error('Error selecting section:', error);\n }\n }, [sectionFormJSON, setActiveSection, setSectionPositionEditedElement, setSectionJSON, setSelectedHoc]);\n\n const handleAddMember = useCallback((\n e: React.SyntheticEvent<HTMLElement>,\n otherProperties?: Record<string, any>\n ): void => {\n try {\n const target = e.currentTarget as HTMLElement;\n const sectionPositionIndex = target?.dataset?.position;\n\n if (sectionPositionIndex === undefined || !isValidNumber(sectionPositionIndex)) {\n console.error('Invalid section position index for adding member');\n return;\n }\n\n const positionIndex = Number(sectionPositionIndex);\n\n if (positionIndex < 0) {\n console.error('Section position index cannot be negative');\n return;\n }\n\n if (!element?.text) {\n console.error('Element text template is not available');\n return;\n }\n\n const newMember: IProperty = {\n ...deepClone(element.text),\n ...otherProperties,\n section_order: positionIndex,\n type: 'custom',\n is_new: true,\n custom_width: Math.floor(DEFAULT_GRID_COLUMNS / DEFAULT_COLUMN_WIDTH),\n is_fullwidth: false,\n is_system_field: Boolean(otherProperties?.is_system_field),\n id: generateUniqueId().uniqueStringId,\n };\n\n setActiveSection(positionIndex);\n append(newMember);\n\n const elementPositionIndex = members.length;\n setActiveMember(elementPositionIndex);\n setSelectedHoc('element');\n setPositionEditedElement(elementPositionIndex);\n setElementJSON(newMember);\n pickPropertyEditForm(newMember.field_type);\n } catch (error) {\n console.error('Error adding new member:', error);\n }\n }, [element, members, setActiveSection, append, setActiveMember, setSelectedHoc, setPositionEditedElement, setElementJSON, pickPropertyEditForm]);\n\n\n const handleSectionPropertyValueUpdate = useCallback((\n e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement>,\n overrideValue?: any\n ): void => {\n try {\n const { name, type, checked, value } = e.target;\n\n if (!name) {\n console.error('Property name is required for update');\n return;\n }\n\n const updatedValue = overrideValue !== undefined ? overrideValue : (type === 'checkbox' ? checked : value);\n\n // Only update if value actually changed\n if (sectionJSON[name] !== updatedValue) {\n setSectionJSON(prev => ({ ...prev, [name]: updatedValue }));\n }\n } catch (error) {\n console.error('Error updating section property:', error);\n }\n }, [sectionJSON, setSectionJSON]);\n\n const handleWidthChange = useCallback((newCustomWidth: number): void => {\n try {\n if (!isValidNumber(newCustomWidth) || newCustomWidth < 1 || newCustomWidth > DEFAULT_GRID_COLUMNS) {\n console.error('Invalid width value provided');\n return;\n }\n\n setElementJSON(prevData => ({\n ...prevData,\n custom_width: newCustomWidth,\n }));\n } catch (error) {\n console.error('Error updating width:', error);\n }\n }, [setElementJSON]);\n\n const handleColumnSelect = useCallback((e: React.ChangeEvent<HTMLSelectElement>): void => {\n try {\n const columnValue = Number(e.target.value);\n\n if (!isValidNumber(columnValue) || columnValue <= 0) {\n console.error('Invalid column value provided');\n return;\n }\n\n const elementPerColumn = Math.floor(DEFAULT_GRID_COLUMNS / columnValue);\n\n if (elementPerColumn <= 0) {\n console.error('Calculated element per column is invalid');\n return;\n }\n\n // Batch update all members\n members.forEach((field: IProperty, index: number) => {\n update(index, { ...field, custom_width: elementPerColumn });\n });\n } catch (error) {\n console.error('Error updating column selection:', error);\n }\n }, [members, update]);\n\n const handlePropertyValueUpdate = useCallback((\n e: React.ChangeEvent<HTMLInputElement | HTMLSelectElement>,\n numberValue?: number,\n val?: string,\n fieldType?: keyof typeof FIELD_TYPES\n ): void => {\n try {\n const getValue = (): any => {\n if (fieldType) return fieldType;\n if (val !== undefined) return val;\n if (numberValue !== undefined) return numberValue;\n return e?.target?.value;\n };\n\n const value = getValue();\n const elementJSONCopy = deepClone(elementJSON);\n\n if (e?.target?.name) {\n elementJSONCopy[e.target.name] = e.target.type === 'checkbox' ? e.target.checked : value;\n }\n // Only update if there's an actual change\n if (fieldType) {\n const { uniqueStringId: uniqueId } = generateUniqueId();\n const copyOfUpdatedElement: IProperty = {\n ...element[fieldType],\n section_form_id: elementJSONCopy?.section_form_id,\n is_form_switcher_section: elementJSONCopy?.is_form_switcher_section,\n section_order: elementJSONCopy.section_order,\n id: uniqueId,\n type: 'custom',\n is_system_field: Boolean(elementJSONCopy?.is_system_field),\n is_new: true,\n column_width: elementJSONCopy?.column_width || 6,\n custom_width: elementJSONCopy?.custom_width || 6\n };\n setElementJSON(copyOfUpdatedElement);\n } else if (JSON.stringify(elementJSON) !== JSON.stringify(elementJSONCopy)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy });\n }\n } catch (error) {\n console.error('Error updating property value:', error);\n }\n }, [elementJSON, element, setElementJSON]);\n\n const handleSelectOptionValueUpdate = useCallback((options: any[]): void => {\n try {\n if (!Array.isArray(options)) {\n console.error('Options must be an array');\n return;\n }\n\n const elementJSONCopy = deepClone(elementJSON);\n elementJSONCopy.options = [...options];\n const { uniqueStringId: uniqueId } = generateUniqueId('-');\n\n if (JSON.stringify(elementJSON.options) !== JSON.stringify(options)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy, id: uniqueId });\n }\n } catch (error) {\n console.error('Error updating select options:', error);\n }\n }, [elementJSON, setElementJSON]);\n\n const handleColumnsUpdate = useCallback((columns: MRT_ColumnDef<MRT_RowData>[]): void => {\n try {\n if (!Array.isArray(columns)) {\n console.error('Columns must be an array');\n return;\n }\n\n const elementJSONCopy = deepClone(elementJSON);\n elementJSONCopy.table_columns = [...columns];\n const { uniqueStringId: uniqueId } = generateUniqueId('-');\n\n if (JSON.stringify(elementJSON.table_columns) !== JSON.stringify(columns)) {\n setElementJSON({ ...elementJSON, ...elementJSONCopy, id: uniqueId });\n }\n } catch (error) {\n console.error('Error updating table columns:', error);\n }\n }, [elementJSON, setElementJSON]);\n\n const handleRemoveSection = useCallback((sectionIndex: number): void => {\n try {\n if (!isValidNumber(sectionIndex) || sectionIndex < 0 || sectionIndex >= section.length) {\n console.error('Invalid section index for removal');\n return;\n }\n\n setRemoveSectionPosition(sectionIndex);\n removeSection(sectionIndex);\n\n // Remove associated members in reverse order to maintain indices\n const membersToRemove: number[] = [];\n members.forEach((member: IProperty, index: number) => {\n if (member?.section_order === sectionIndex) {\n membersToRemove.push(index);\n }\n });\n\n // Remove members in reverse order to maintain correct indices\n membersToRemove.reverse().forEach(memberIndex => {\n remove(memberIndex);\n });\n\n setRemoveSectionActionPerformed(true);\n } catch (error) {\n console.error('Error removing section:', error);\n }\n }, [section, members, setRemoveSectionPosition, removeSection, remove, setRemoveSectionActionPerformed]);\n\n const handleMakeAccordion = useCallback((sectionIndex: number): void => {\n try {\n if (!isValidNumber(sectionIndex) || sectionIndex < 0 || sectionIndex >= section.length) {\n console.error('Invalid section index for accordion conversion');\n return;\n }\n\n setModifyAccordion(true);\n setSectionPositionEditedElement(sectionIndex);\n setActiveSection(sectionIndex);\n\n const copyOfSection: ISectionProperty = {\n ...deepClone(section[sectionIndex]),\n is_accordion: true\n };\n\n updateSection(sectionIndex, copyOfSection);\n setSelectedHoc('section');\n setSectionJSON(copyOfSection);\n pickPropertyEditForm(copyOfSection.field_type);\n } catch (error) {\n console.error('Error making section accordion:', error);\n }\n }, [section, setModifyAccordion, setSectionPositionEditedElement, setActiveSection, updateSection, setSelectedHoc, setSectionJSON, pickPropertyEditForm]);\n\n const handleTabData = useCallback((): void => {\n try {\n const formWithMembers = deepClone(sectionFormJSON);\n\n formWithMembers.forEach((section: ISectionProperty, sectionIndex: number) => {\n section.members = members.filter(\n (member: IProperty) => member?.section_order === sectionIndex\n );\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const activeTabIndex = Number(activeTabValue);\n if (isValidNumber(activeTabIndex) && activeTabIndex >= 0 && activeTabIndex < tabsData.length) {\n const updatedTabsData = [...tabsData];\n updatedTabsData[activeTabIndex] = {\n ...updatedTabsData[activeTabIndex],\n data: formWithMembers,\n remove_tab: hasSystemMembers,\n };\n setTabsData(updatedTabsData)\n remove();\n removeSection();\n setActiveMember(undefined);\n setSelectedHoc(\"\");\n setActiveSection(undefined);\n }\n } catch (error) {\n console.error('Error updating tab data:', error);\n }\n }, [sectionFormJSON, members, activeTabValue, tabsData, setTabsData]);\n\n // const handlePreview = () => {\n // const formWithMembers = JSON.parse(JSON.stringify(sectionFormJSON));\n\n // formWithMembers.forEach(\n // (section: ISectionProperty, sectionIndex: number) => {\n // section.members = members.filter(\n // (member: any) => member?.section_order === sectionIndex,\n // ) as (IProperty | ISelectProperty)[];\n // },\n // );\n // const state = tabsData?.length\n // ? { tab: tabsData }\n // : { section: formWithMembers };\n\n // const FormBuilderConversion = state && formBuilderConversion(state);\n\n // setPreviewFields(FormBuilderConversion);\n // };\n\n // Option 1: Using useMemo to memoize the expensive computation\n const formWithMembers = useMemo(() => {\n if (!sectionFormJSON || !members) return null;\n\n return sectionFormJSON.map((section: ISectionProperty, sectionIndex: number) => ({\n ...section,\n members: members.filter(\n (member: any) => member?.section_order === sectionIndex,\n ) as (IProperty | ISelectProperty)[]\n }));\n }, [sectionFormJSON, members]);\n\n const previewState = useMemo(() => {\n if (!formWithMembers) return null;\n\n return tabsData?.length\n ? { tab: tabsData }\n : { section: formWithMembers };\n }, [tabsData, formWithMembers]);\n\n const previewFields = useMemo(() => {\n if (!previewState) return null;\n return formBuilderConversion(previewState);\n }, [previewState]);\n\n\n // Option 2: Optimized handlePreview function using useCallback\n const showPreview = useCallback(() => {\n if (previewFields) {\n setPreviewFields(previewFields);\n }\n }, [previewFields, setPreviewFields]);\n const hidePreview = useCallback(() => {\n setPreviewFields(null);\n }, []);\n\n // Enhanced handleFormUpdate with proper error handling and validation\n const handleFormUpdate = useCallback(async (): void => {\n try {\n\n\n\n // Early validation checks\n if (!sectionFormJSON || !Array.isArray(sectionFormJSON)) {\n console.warn('Invalid sectionFormJSON provided');\n return;\n }\n\n if (!members || !Array.isArray(members)) {\n console.warn('Invalid members array provided');\n return;\n }\n\n if (!rowData?._id) {\n console.warn('Missing rowData._id for form update');\n return;\n }\n\n // Deep clone with proper error handling\n let formWithMembers: IEnhancedSectionProperty[];\n\n try {\n formWithMembers = structuredClone(sectionFormJSON);\n } catch (cloneError) {\n // Fallback to JSON method if structuredClone is not available\n formWithMembers = JSON.parse(JSON.stringify(sectionFormJSON));\n }\n\n // Enhanced member filtering with better type safety and validation\n formWithMembers.forEach((section: IEnhancedSectionProperty, sectionIndex: number) => {\n // Validate section object\n if (!section || typeof section !== 'object') {\n console.warn(`Invalid section at index ${sectionIndex}`);\n return;\n }\n\n // Filter members with proper type checking and validation\n section.members = members.filter((member: IMember) => {\n // Validate member object and section_order\n return (\n member &&\n typeof member === 'object' &&\n typeof member.section_order === 'number' &&\n member.section_order === sectionIndex\n );\n }) as (IProperty | ISelectProperty)[];\n });\n\n const hasSystemMembers = formWithMembers.some((section: ISectionProperty) =>\n section.members?.some((member: IProperty) => Boolean(member?.is_system_field))\n );\n\n const activeTabIndex = Number(activeTabValue);\n let updatedTabsData = [...tabsData];\n if (isValidNumber(activeTabIndex) && activeTabIndex >= 0 && activeTabIndex < tabsData.length) {\n updatedTabsData = [...tabsData];\n updatedTabsData[activeTabIndex] = {\n ...updatedTabsData[activeTabIndex],\n data: formWithMembers,\n remove_tab: hasSystemMembers,\n };\n\n setTabsData(updatedTabsData)\n }\n\n // Build state object with proper validation\n const state: IFormState = updatedTabsData?.length > 0\n ? { tab: updatedTabsData }\n : { section: formWithMembers };\n\n // Validate formBuilderConversion function exists\n if (typeof formBuilderConversion !== 'function') {\n console.error('formBuilderConversion is not a function');\n return;\n }\n\n // Execute conversion with error handling\n let formBuilderConversionResult: any;\n try {\n formBuilderConversionResult = formBuilderConversion(state);\n } catch (conversionError) {\n console.error('Error during form builder conversion:', conversionError);\n return;\n }\n\n // Validate conversion result\n if (!formBuilderConversionResult) {\n console.warn('Form builder conversion returned empty result');\n return;\n }\n\n // Validate elementPerColumn\n // if (typeof elementPerColumn !== 'number' || elementPerColumn <= 0) {\n\n // console.warn('Invalid elementPerColumn value');\n // return;\n // }\n\n // Prepare payload with validation\n const updatePayload: IFormUpdatePayload = {\n gridCol: elementPerColumn || 2,\n fields: formBuilderConversionResult\n };\n\n // Dispatch update action\n const updateRes = await dispatch(\n patchFormDataById({\n id: rowData._id,\n data: updatePayload\n })\n );\n if (updateRes.meta.requestStatus === 'rejected') {\n\n const m = getErrorMessage(updateRes?.error?.message);\n enqueueSnackbar(m, { variant: 'error' });\n } else {\n enqueueSnackbar(\"Form updated successfully\", { variant: 'success' });\n navigate(path);\n }\n\n } catch (error) {\n const m = error?.message || 'Something went wrong while updating the form';\n enqueueSnackbar(m, { variant: 'error' });\n }\n }, [\n sectionFormJSON,\n members,\n tabsData,\n rowData?._id,\n elementPerColumn,\n dispatch,\n formBuilderConversion\n ]);\n\n const handleDuplicateElement = (index: number) => {\n const copyOfMember: any = { ...members[index], type: \"custom\" };\n copyOfMember && insert(index + 1, copyOfMember);\n setActiveMember(index + 1);\n setSelectedHoc(\"element\");\n setPositionEditedElement(index + 1);\n setElementJSON(copyOfMember);\n pickPropertyEditForm(copyOfMember.field_type);\n };\n\n const breadCrumbPath = [\n {\n link: path,\n label: \"Forms\",\n },\n {\n link: \"\",\n label: formatLabel(rowData?.name),\n },\n {\n link: \"\",\n label: \"Edit Form\",\n },\n ];\n\n\n useEffect(() => {\n if (removeSectionActionPerformed) {\n members.forEach((member: any, index: number) => {\n if (\n removeSectionPosition !== undefined &&\n Boolean(removeSectionPosition?.toString) &&\n member.section_order > removeSectionPosition\n ) {\n update(index, { ...member, section_order: member.section_order - 1 });\n }\n });\n setRemoveSectionActionPerformed(false);\n setRemoveSectionMembersPerformed(true);\n setRemoveSectionPosition(undefined);\n setSelectedHoc(\"\");\n }\n\n // eslint-disable-next-line\n }, [removeSectionActionPerformed]);\n\n useEffect(() => {\n formBuilder.isSuccess && navigate(path);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [formBuilder.isSuccess]);\n\n useEffect(() => {\n if (formBuilder.isError) {\n setToast({\n type: 'alert',\n message: formBuilder.error\n });\n }\n }, [formBuilder.error, formBuilder.isError]);\n\n useEffect(() => {\n if (\n typeof positionEditedElement !== \"number\" ||\n typeof positionEditedElement !== \"string\"\n ) {\n const index = Number(positionEditedElement);\n if (formJSON[index]) {\n const copyOfUpdatedFormJson = JSON.parse(\n JSON.stringify(formJSON[index]),\n );\n update(index, { ...copyOfUpdatedFormJson });\n }\n }\n // eslint-disable-next-line\n }, [formJSON]);\n\n useEffect(() => {\n const updatedFormJSON = formJSON.map((obj: any, index: number) => {\n if (index === Number(positionEditedElement)) {\n return { ...elementJSON };\n } else {\n return { ...obj };\n }\n });\n setFormJSON(updatedFormJSON);\n\n // eslint-disable-next-line\n }, [elementJSON]);\n\n useEffect(() => {\n if (members.length !== formJSON.length) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n }\n if (\n Boolean(elementSwap) &&\n JSON.stringify(members) !== JSON.stringify(formJSON)\n ) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n setElementSwap(false);\n const newMember: any =\n positionEditedElement && members[positionEditedElement];\n newMember && setSelectedHoc(\"element\");\n newMember && setElementJSON(newMember);\n newMember && pickPropertyEditForm(newMember.field_type);\n }\n if (\n removeSectionMembersPerformed &&\n JSON.stringify(members) !== JSON.stringify(formJSON)\n ) {\n setFormJSON(JSON.parse(JSON.stringify(members)));\n setRemoveSectionMembersPerformed(false);\n }\n // eslint-disable-next-line\n }, [members, elementSwap]);\n\n useEffect(() => {\n if (\n typeof sectionPositionEditedElement !== \"number\" ||\n typeof sectionPositionEditedElement !== \"string\"\n ) {\n const index = Number(sectionPositionEditedElement);\n if (sectionFormJSON[index]) {\n const copyOfUpdatedFormJson = JSON.parse(\n JSON.stringify(sectionFormJSON[index]),\n );\n updateSection(index, { ...copyOfUpdatedFormJson });\n }\n }\n // eslint-disable-next-line\n }, [sectionFormJSON]);\n\n useEffect(() => {\n const updatedFormJSON = sectionFormJSON.map((obj: any, index: number) => {\n if (index === Number(sectionPositionEditedElement)) {\n return { ...obj, ...sectionJSON };\n } else {\n return { ...obj };\n }\n });\n setSectionFormJSON(updatedFormJSON);\n // eslint-disable-next-line\n }, [sectionJSON]);\n\n useEffect(() => {\n if (section.length !== sectionFormJSON.length) {\n setSectionFormJSON(JSON.parse(JSON.stringify(section)));\n }\n if (\n JSON.stringify(sectionFormJSON) !== JSON.stringify(section) &&\n modifyAccordion\n ) {\n setSectionFormJSON(JSON.parse(JSON.stringify(section)));\n setModifyAccordion(false);\n }\n // eslint-disable-next-line\n }, [section]);\n\n useEffect(() => {\n () => setInitialLoading(true);\n }, [])\n\n const handleFormData = useCallback(async () => {\n setInitialLoading(true)\n try {\n if (rowData?._id) {\n setTabsData([])\n await dispatch(getFormDataById(rowData?._id));\n await dispatch(getFieldsByFormId({ id: rowData?._id }));\n\n }\n } finally {\n setInitialLoading(false);\n }\n\n }, [rowData?._id])\n\n useEffect(() => {\n handleFormData();\n }, [handleFormData]);\n\n type SelectedHoc = \"element\" | \"section\" | null;\n\n // Constants\n const DEFAULT_FIELD_TYPE = \"text\";\n const HOC_TYPES = {\n ELEMENT: \"element\",\n SECTION: \"section\"\n } as const;\n\n // Helper function to check if object has meaningful content\n const hasValidContent = (obj: Record<string, any>): boolean => {\n return obj && Object.keys(obj).length > 0;\n };\n\n const EmptyStateMessage = () => (\n <Typography type=\"s5\" color={\"theme.secondary.800\"} className=\"formSection--Text\">Select a field to edit its properties.</Typography>\n )\n\n // Helper function to get field type with fallback\n const getFieldTypeWithFallback = (\n json: ElementJSON | SectionJSON | null | undefined,\n fallback: string = DEFAULT_FIELD_TYPE\n ): string => {\n return json?.field_type || fallback;\n };\n\n const memoizedForm = useMemo(() => {\n // Early return for empty state\n if (!selectedHoc) {\n\n return <EmptyStateMessage />;\n }\n\n // Handle element selection\n if (selectedHoc === HOC_TYPES.ELEMENT) {\n if (!hasValidContent(members)) {\n console.warn('Element selected but no members data available');\n return <EmptyStateMessage />;\n }\n\n const fieldType = getFieldTypeWithFallback(elementJSON);\n return pickPropertyEditForm(fieldType);\n }\n\n // Handle section selection\n if (selectedHoc === HOC_TYPES.SECTION) {\n if (!hasValidContent(section)) {\n console.warn('Section selected but no section data available');\n return <EmptyStateMessage />;\n }\n\n const fieldType = getFieldTypeWithFallback(sectionJSON);\n return pickPropertyEditForm(fieldType);\n }\n\n // Fallback for unknown selection type\n console.warn(`Unknown selectedHoc type: ${selectedHoc}`);\n return <EmptyStateMessage />;\n }, [\n // Core dependencies\n selectedHoc,\n\n // Data dependencies\n Object.keys(members).length,\n Object.keys(section).length,\n\n // JSON dependencies with deep comparison consideration\n elementJSON?.field_type,\n elementJSON?.field_properties,\n sectionJSON?.field_type,\n sectionJSON?.field_properties,\n\n // Function dependency\n pickPropertyEditForm\n ]);\n\n return (\n // <FullScreenLayout className=\"formSection--Layout\">\n <Box position='relative'>\n {initialLoading ? <ErpLoader /> :\n <DndProvider backend={HTML5Backend}>\n <FormHeader breadCrumbPath={breadCrumbPath}>\n <div className=\"formSection--Buttons\">\n <Button\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n text=\"Preview\"\n onClick={() => { !previewFieldsData ? showPreview() : hidePreview() }}\n disable={!members?.length}\n startIcon={previewFieldsData ? <EyeOff /> : <Eye />}\n />\n <Button\n variant=\"contained\"\n type=\"submit\"\n text=\"Update\"\n onClick={handleFormUpdate}\n disable={previewFieldsData}\n />\n </div>\n </FormHeader>\n {!previewFieldsData ?\n <Grid className=\"formSection--Grid\" container>\n <Grid\n item\n xs={9}\n component=\"form\"\n sx={{\n position: \"relative\",\n background: \"#F5F6F5\",\n padding: \"0.75rem\",\n }}\n >\n <Grid className=\"formSection--GridContainer\">\n <Box className=\"formSection--Tab\">\n {tabsData && (\n <TabBar\n tabs={tabsData}\n onEditTabTitle={handleEditTabTitle}\n activeValue={activeTabValue}\n setActiveValue={setActiveTabValue}\n handleTabChange={() => {\n handleTabData()\n }}\n handleRemoveTab={handleRemoveTab}\n containerProps={{ mb: 0 }}\n />\n )}\n <Button\n variant=\"outlined\"\n text=\"Add Tab\"\n onClick={handleAddTab}\n style={{ color: \"#292D32\", margin: \"0.5rem\" }}\n />\n </Box>\n <div className=\"formSection--Form\">\n {section?.map((item: any, i: number) => {\n const sectionMembers = members.filter(\n (member: any) => member.section_order === i,\n );\n const isFormSwitcher = item.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const switchForms = item?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: members.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }))\n\n return (\n <DynamicSectionHOC\n index={i}\n label={t(item.label)}\n onClick={handleSectionSelection}\n position={i}\n fieldArrayName=\"section\"\n isFormSwitcher={isFormSwitcher}\n activeIndex={activeSection === i}\n removeSection={() => handleRemoveSection(i)}\n handleAccordion={() => handleMakeAccordion(i)}\n handleAddButton={(e) => handleAddMember(e)}\n remove_section={item.remove_section}\n >\n {isFormSwitcher ? (\n <div style={{ width: '100%' }} >\n <Typography type=\"s5\" style={{ fontWeight: 500 }} color={\"theme.secondary.800\"}>\n {item.form_switcher_label}\n </Typography>\n <RadioGroup\n aria-labelledby=\"theme-radio-buttons-group-label\"\n name={item.form_switcher_name || item.form_switcher_label}\n >\n\n {switchForms?.map(({ name, id, formMembers }: { name: string, id: number, formMembers: any }) => (\n <>\n <div>\n <FormControlLabel\n key={id}\n value={name}\n control={<Radio />}\n label={t(name)}\n disabled\n />\n </div>\n\n <Grid container sx={{ mb: 3 }}>\n <FormFields\n sectionMembers={formMembers || []}\n members={members}\n activeMember={activeMember}\n control={control}\n t={t}\n element={element}\n images={images}\n elementJSON={elementJSON}\n remove={remove}\n move={move}\n handleElementSelection={handleElementSelection}\n setElementSwap={setElementSwap}\n handleDuplicateElement={handleDuplicateElement}\n setSelectedHoc={setSelectedHoc}\n setActiveMember={setActiveMember}\n />\n </Grid>\n <Button\n text=\"Add\"\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n data-position={i}\n onClick={(e) => handleAddMember(e, {\n section_form_id: id,\n is_form_switcher_section: true\n })}\n startIcon={<Add />}\n />\n </>\n ))}\n </RadioGroup>\n </div>\n ) : null}\n {!isFormSwitcher &&\n <FormFields\n sectionMembers={sectionMembers || []}\n members={members}\n activeMember={activeMember}\n control={control}\n t={t}\n element={element}\n images={images}\n elementJSON={elementJSON}\n remove={remove}\n move={move}\n handleElementSelection={handleElementSelection}\n setElementSwap={setElementSwap}\n handleDuplicateElement={handleDuplicateElement}\n setSelectedHoc={setSelectedHoc}\n setActiveMember={setActiveMember}\n />\n }\n </DynamicSectionHOC>\n );\n })}\n <div className=\"formSection--Section\">\n <Button\n text=\"Add a section\"\n variant=\"outlined\"\n className=\"formSection--PreviewButton\"\n onClick={addNewSection}\n startIcon={<Add />}\n />\n </div>\n </div>\n </Grid>\n\n </Grid>\n <Grid\n item\n xs={3}\n className={\n Boolean(selectedHoc) && (members?.length || section.length)\n ? \"formSection--RightGrid\"\n : \"formSection--RightGrid formSection--Text\"\n }\n >\n {memoizedForm}\n </Grid>\n </Grid>\n :\n <FormParser\n data={previewFieldsData || []}\n handleFormSubmit={(data) => console.log(\"Preview Data\", data)}\n className='form-container'\n fieldArrayName='form-builder-preview'\n getFormMethods={(methods: any) =>\n setFormParserMethods({ ...methods })\n }\n />\n }\n <Toast\n open={Boolean(toast)}\n type={toast?.type}\n message={toast?.message}\n handleClose={() => setToast(null)}\n anchorOrigin={{ horizontal: 'right', vertical: 'bottom' }}\n />\n </DndProvider>}\n </Box>\n // </FullScreenLayout>\n );\n}\n\nexport default CustomForm;\n"],"names":["isValidNumber","value","isNaN","Number","isFinite","deepClone","obj","JSON","parse","stringify","generateUniqueId","separator","uniqueStringId","Date","now","Math","random","toString","substr","CustomForm","t","useTranslation","dispatch","useAppDispatch","navigate","useNavigate","location","useLocation","rowData","state","formBuilder","useAppSelector","control","useForm","reValidateMode","fields","members","append","remove","update","move","insert","useFieldArray","name","section","appendSection","removeSection","updateSection","selectedHoc","setSelectedHoc","useState","activeSection","setActiveSection","activeMember","setActiveMember","formJSON","setFormJSON","elementJSON","setElementJSON","positionEditedElement","setPositionEditedElement","sectionFormJSON","setSectionFormJSON","sectionJSON","setSectionJSON","sectionPositionEditedElement","setSectionPositionEditedElement","removeSectionActionPerformed","setRemoveSectionActionPerformed","removeSectionMembersPerformed","setRemoveSectionMembersPerformed","removeSectionPosition","setRemoveSectionPosition","initialLoading","setInitialLoading","tabsData","setTabsData","activeTabValue","setActiveTabValue","elementSwap","setElementSwap","modifyAccordion","setModifyAccordion","toast","setToast","previewFieldsData","setPreviewFields","_","setFormParserMethods","currentModule","pathname","split","path","generateModulePath","useFormDataEffect","pickPropertyEditForm","useCallback","type","jsx","className","children","normalizedType","toLowerCase","trim","formGroups","text","select","checkbox","table","commonTextProps","element","handlePropertyValueUpdate","handleWidthChange","handleColumnSelect","commonSelectProps","handleSelectOptionValueUpdate","includes","createElement","TextEditForm","key","id","SelectEditForm","SectionEditForm","handleSectionPropertyValueUpdate","CheckboxEditForm","TableEditForm","handleColumnsUpdate","jsxs","error","addNewSection","newSection","switcher_forms","map","form","newSectionIndex","length","sectionData","field_type","section_type","form_switcher_label","form_switcher_name","label","is_accordion","handleAddTab","formWithMembers","forEach","sectionIndex","filter","member","section_order","hasSystemMembers","some","Boolean","is_system_field","shouldRemoveTab","newTab","tab_order","title","remove_tab","data","prevTabs","handleEditTabTitle","tabId","newTitle","tab","handleRemoveTab","reorderedTabs","activeTab","find","sections","remove_section","membersList","flatMap","handleElementSelection","e","elementPositionIndex","target","dataset","position","positionIndex","elementDetails","handleSectionSelection","sectionPositionIndex","sectionDetails","handleAddMember","otherProperties","currentTarget","_a","newMember","is_new","custom_width","floor","DEFAULT_GRID_COLUMNS","is_fullwidth","overrideValue","checked","updatedValue","prev","newCustomWidth","prevData","columnValue","elementPerColumn","field","index","numberValue","val","fieldType","getValue","elementJSONCopy","uniqueId","copyOfUpdatedElement","section_form_id","is_form_switcher_section","column_width","options","Array","isArray","columns","table_columns","handleRemoveSection","membersToRemove","push","reverse","memberIndex","handleMakeAccordion","copyOfSection","handleTabData","activeTabIndex","updatedTabsData","useMemo","previewState","previewFields","formBuilderConversion","showPreview","hidePreview","handleFormUpdate","async","_id","structuredClone","cloneError","formBuilderConversionResult","conversionError","updatePayload","gridCol","updateRes","patchFormDataById","meta","requestStatus","m","getErrorMessage","message","enqueueSnackbar","variant","handleDuplicateElement","copyOfMember","breadCrumbPath","link","formatLabel","useEffect","isSuccess","isError","copyOfUpdatedFormJson","updatedFormJSON","handleFormData","getFormDataById","getFieldsByFormId","hasValidContent","Object","keys","EmptyStateMessage","Typography","color","getFieldTypeWithFallback","json","fallback","memoizedForm","field_properties","Box","ErpLoader","DndProvider","backend","HTML5Backend","FormHeader","Button","onClick","disable","startIcon","EyeOff","Eye","FormParser","handleFormSubmit","fieldArrayName","getFormMethods","methods","Grid","container","item","xs","component","sx","background","padding","TabBar","tabs","onEditTabTitle","activeValue","setActiveValue","handleTabChange","containerProps","mb","style","margin","i","sectionMembers","isFormSwitcher","SECTION_TYPES","FORM_SWITCH_SECTION","switchForms","formMembers","DynamicSectionHOC","activeIndex","handleAccordion","handleAddButton","width","fontWeight","RadioGroup","Fragment","FormControlLabel","Radio","disabled","FormFields","images","Add","Toast","open","handleClose","anchorOrigin","horizontal","vertical"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { IProperty } from './field_properties';
2
+
3
+ export interface IElementJson extends IProperty {
4
+ type: string;
5
+ }
6
+ export declare function CustomForm(): import("react/jsx-runtime").JSX.Element;
7
+ export default CustomForm;