@erpsquad/common 1.11.6 → 1.11.7

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 (615) hide show
  1. package/dist/api-client/index.esm.js +2 -2
  2. package/dist/chunks/{DynamicDependentField-C0XXmMlG.esm.js → DynamicDependentField-DOGY6cA_.esm.js} +2 -2
  3. package/dist/chunks/{DynamicDependentField-C0XXmMlG.esm.js.map → DynamicDependentField-DOGY6cA_.esm.js.map} +1 -1
  4. package/dist/chunks/{DynamicDependentField-CQIfDDqc.js → DynamicDependentField-GTIwrPfP.js} +2 -2
  5. package/dist/chunks/{DynamicDependentField-CQIfDDqc.js.map → DynamicDependentField-GTIwrPfP.js.map} +1 -1
  6. package/dist/chunks/{ERPUIProvider-I4j_X_SD.esm.js → ERPUIProvider-Dz0s77BR.esm.js} +3 -3
  7. package/dist/chunks/{ERPUIProvider-I4j_X_SD.esm.js.map → ERPUIProvider-Dz0s77BR.esm.js.map} +1 -1
  8. package/dist/chunks/EditorSection-BLGcgQFm.esm.js +849 -0
  9. package/dist/chunks/EditorSection-BLGcgQFm.esm.js.map +1 -0
  10. package/dist/chunks/EditorSection-D6yaBfjP.js +848 -0
  11. package/dist/chunks/EditorSection-D6yaBfjP.js.map +1 -0
  12. package/dist/chunks/{FORMS-B40NtUdz.esm.js → FORMS-CR_DlD1m.esm.js} +8 -8
  13. package/dist/chunks/{FORMS-B40NtUdz.esm.js.map → FORMS-CR_DlD1m.esm.js.map} +1 -1
  14. package/dist/chunks/{FORMS-K5QYZYJc.js → FORMS-EouVYay1.js} +5 -5
  15. package/dist/chunks/{FORMS-K5QYZYJc.js.map → FORMS-EouVYay1.js.map} +1 -1
  16. package/dist/chunks/{FlexibleReduxExample-lJRAIjmS.esm.js → FlexibleReduxExample-B2e7Wa_S.esm.js} +4 -4
  17. package/dist/chunks/{FlexibleReduxExample-lJRAIjmS.esm.js.map → FlexibleReduxExample-B2e7Wa_S.esm.js.map} +1 -1
  18. package/dist/chunks/{FlexibleReduxExample-WGpR03V0.js → FlexibleReduxExample-CMUylyy1.js} +3 -3
  19. package/dist/chunks/{FlexibleReduxExample-WGpR03V0.js.map → FlexibleReduxExample-CMUylyy1.js.map} +1 -1
  20. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js +12543 -0
  21. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js.map +1 -0
  22. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js +12542 -0
  23. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js.map +1 -0
  24. package/dist/chunks/{action-bar-C7Alva4T.esm.js → action-bar-Ci6RlMBM.esm.js} +6 -6
  25. package/dist/chunks/{action-bar-C7Alva4T.esm.js.map → action-bar-Ci6RlMBM.esm.js.map} +1 -1
  26. package/dist/chunks/{action-bar-DdtpxWNk.js → action-bar-jLqQTqU7.js} +3 -3
  27. package/dist/chunks/{action-bar-DdtpxWNk.js.map → action-bar-jLqQTqU7.js.map} +1 -1
  28. package/dist/chunks/{actionCreator-CpePNxQM.esm.js → actionCreator-B6lXR_k1.esm.js} +2 -2
  29. package/dist/chunks/{actionCreator-CpePNxQM.esm.js.map → actionCreator-B6lXR_k1.esm.js.map} +1 -1
  30. package/dist/chunks/{actionCreator-Cl8vPLVO.esm.js → actionCreator-D3uwEAua.esm.js} +3 -3
  31. package/dist/chunks/{actionCreator-Cl8vPLVO.esm.js.map → actionCreator-D3uwEAua.esm.js.map} +1 -1
  32. package/dist/chunks/{actionCreator-CL5ICuqZ.esm.js → actionCreator-DIdMRO9L.esm.js} +2 -2
  33. package/dist/chunks/{actionCreator-CL5ICuqZ.esm.js.map → actionCreator-DIdMRO9L.esm.js.map} +1 -1
  34. package/dist/chunks/{actionCreator-Cb3NxILP.esm.js → actionCreator-DKYufGAZ.esm.js} +2 -2
  35. package/dist/chunks/{actionCreator-Cb3NxILP.esm.js.map → actionCreator-DKYufGAZ.esm.js.map} +1 -1
  36. package/dist/chunks/{actionCreator-Dar9Z8_d.esm.js → actionCreator-DcdyGsIX.esm.js} +3 -3
  37. package/dist/chunks/{actionCreator-Dar9Z8_d.esm.js.map → actionCreator-DcdyGsIX.esm.js.map} +1 -1
  38. package/dist/chunks/add-template-CUPbU0z7.js +10 -0
  39. package/dist/chunks/add-template-CUPbU0z7.js.map +1 -0
  40. package/dist/chunks/add-template-CxvhzFMF.esm.js +11 -0
  41. package/dist/chunks/add-template-CxvhzFMF.esm.js.map +1 -0
  42. package/dist/chunks/{address-modal-CYhiC7ui.js → address-modal-DFd5sQtR.js} +2 -2
  43. package/dist/chunks/{address-modal-CYhiC7ui.js.map → address-modal-DFd5sQtR.js.map} +1 -1
  44. package/dist/chunks/{address-modal-CkDBjnye.esm.js → address-modal-DYGLjrqd.esm.js} +2 -2
  45. package/dist/chunks/{address-modal-CkDBjnye.esm.js.map → address-modal-DYGLjrqd.esm.js.map} +1 -1
  46. package/dist/chunks/{ai-summary-SKK5KN2s.esm.js → ai-summary-x2t8BZCx.esm.js} +2 -2
  47. package/dist/chunks/{ai-summary-SKK5KN2s.esm.js.map → ai-summary-x2t8BZCx.esm.js.map} +1 -1
  48. package/dist/chunks/{api-BIVCMSwW.esm.js → api-8jutPLh0.esm.js} +3 -3
  49. package/dist/chunks/{api-BIVCMSwW.esm.js.map → api-8jutPLh0.esm.js.map} +1 -1
  50. package/dist/chunks/{api-DBmWILBN.esm.js → api-yLpQ3k5s.esm.js} +9 -9
  51. package/dist/chunks/{api-DBmWILBN.esm.js.map → api-yLpQ3k5s.esm.js.map} +1 -1
  52. package/dist/chunks/{app-switcher-D-Bvz9uO.esm.js → app-switcher-B6eapuGG.esm.js} +2 -2
  53. package/dist/chunks/{app-switcher-D-Bvz9uO.esm.js.map → app-switcher-B6eapuGG.esm.js.map} +1 -1
  54. package/dist/chunks/{app-switcher-CyEQmYAN.js → app-switcher-VhH9z0Rd.js} +2 -2
  55. package/dist/chunks/{app-switcher-CyEQmYAN.js.map → app-switcher-VhH9z0Rd.js.map} +1 -1
  56. package/dist/chunks/{appbar-BdTp1k68.esm.js → appbar-B8EgZsrn.esm.js} +2 -2
  57. package/dist/chunks/{appbar-BdTp1k68.esm.js.map → appbar-B8EgZsrn.esm.js.map} +1 -1
  58. package/dist/chunks/{appbar-DyIptRTa.js → appbar-Is_7kfVo.js} +2 -2
  59. package/dist/chunks/{appbar-DyIptRTa.js.map → appbar-Is_7kfVo.js.map} +1 -1
  60. package/dist/chunks/{approval-wrapper-BTtmXMlk.esm.js → approval-wrapper-_kYfACQp.esm.js} +2 -2
  61. package/dist/chunks/{approval-wrapper-BTtmXMlk.esm.js.map → approval-wrapper-_kYfACQp.esm.js.map} +1 -1
  62. package/dist/chunks/{chat-bot-Dz8cR_uw.esm.js → chat-bot-DO3vAGxA.esm.js} +2 -2
  63. package/dist/chunks/{chat-bot-Dz8cR_uw.esm.js.map → chat-bot-DO3vAGxA.esm.js.map} +1 -1
  64. package/dist/chunks/common-BgXEAs_y.esm.js +851 -0
  65. package/dist/chunks/common-BgXEAs_y.esm.js.map +1 -0
  66. package/dist/chunks/{common-yORBIVv-.esm.js → common-Cl5oGXmX.esm.js} +2 -2
  67. package/dist/chunks/{common-yORBIVv-.esm.js.map → common-Cl5oGXmX.esm.js.map} +1 -1
  68. package/dist/chunks/common-D6T6NGWY.js +850 -0
  69. package/dist/chunks/common-D6T6NGWY.js.map +1 -0
  70. package/dist/chunks/{common-CS5L0Ld_.js → common-PH2uWkqL.js} +2 -2
  71. package/dist/chunks/{common-CS5L0Ld_.js.map → common-PH2uWkqL.js.map} +1 -1
  72. package/dist/chunks/common-utility-CA_Upser.js.map +1 -1
  73. package/dist/chunks/{common-utility-DGpbsf7S.esm.js → common-utility-CS_sNoAC.esm.js} +2 -2
  74. package/dist/chunks/common-utility-CS_sNoAC.esm.js.map +1 -0
  75. package/dist/chunks/company-selection-modal-B7jFVWWs.js.map +1 -1
  76. package/dist/chunks/company-selection-modal-Dn2L_skh.esm.js.map +1 -1
  77. package/dist/chunks/{constant-Bwg2s_Sn.esm.js → constant-BXPcBhJN.esm.js} +35 -5
  78. package/dist/chunks/constant-BXPcBhJN.esm.js.map +1 -0
  79. package/dist/chunks/{constant-ZYAN_teD.js → constant-BXeJD4Af.js} +35 -5
  80. package/dist/chunks/constant-BXeJD4Af.js.map +1 -0
  81. package/dist/chunks/{constants-nmkxkzps.esm.js → constants-BrmMAwu2.esm.js} +2 -2
  82. package/dist/chunks/{constants-nmkxkzps.esm.js.map → constants-BrmMAwu2.esm.js.map} +1 -1
  83. package/dist/chunks/{constants-06kIVUBw.js → constants-D_xuLHSu.js} +2 -2
  84. package/dist/chunks/{constants-06kIVUBw.js.map → constants-D_xuLHSu.js.map} +1 -1
  85. package/dist/chunks/{custom-editor-6-xqhKz6.esm.js → custom-editor-C-B5BK-H.esm.js} +3 -3
  86. package/dist/chunks/{custom-editor-6-xqhKz6.esm.js.map → custom-editor-C-B5BK-H.esm.js.map} +1 -1
  87. package/dist/chunks/{custom-form-DD7YOHMF.esm.js → custom-form-DNUpk0nq.esm.js} +7 -7
  88. package/dist/chunks/{custom-form-DD7YOHMF.esm.js.map → custom-form-DNUpk0nq.esm.js.map} +1 -1
  89. package/dist/chunks/{custom-form-CFU7NEVb.js → custom-form-T4yc_sE_.js} +4 -4
  90. package/dist/chunks/{custom-form-CFU7NEVb.js.map → custom-form-T4yc_sE_.js.map} +1 -1
  91. package/dist/chunks/{dashboard-B5qcT2Dt.esm.js → dashboard-B4xzJ1Xc.esm.js} +4 -4
  92. package/dist/chunks/{dashboard-B5qcT2Dt.esm.js.map → dashboard-B4xzJ1Xc.esm.js.map} +1 -1
  93. package/dist/chunks/{dashboard-Dzts5-X6.js → dashboard-eMHQayU_.js} +3 -3
  94. package/dist/chunks/{dashboard-Dzts5-X6.js.map → dashboard-eMHQayU_.js.map} +1 -1
  95. package/dist/chunks/default-data-6IxhqPTP.esm.js.map +1 -1
  96. package/dist/chunks/default-data-yreKVx_z.js.map +1 -1
  97. package/dist/chunks/{dynamic-report-tKn-KqAd.esm.js → dynamic-report-CMguvXj2.esm.js} +4 -4
  98. package/dist/chunks/{dynamic-report-tKn-KqAd.esm.js.map → dynamic-report-CMguvXj2.esm.js.map} +1 -1
  99. package/dist/chunks/{dynamic-rows-CTGETfcP.esm.js → dynamic-rows-CmAE9nbA.esm.js} +2 -2
  100. package/dist/chunks/{dynamic-rows-CTGETfcP.esm.js.map → dynamic-rows-CmAE9nbA.esm.js.map} +1 -1
  101. package/dist/chunks/{dynamic-text-editor-CPvlGcLK.esm.js → dynamic-text-editor-CSWdR1lK.esm.js} +2 -2
  102. package/dist/chunks/{dynamic-text-editor-CPvlGcLK.esm.js.map → dynamic-text-editor-CSWdR1lK.esm.js.map} +1 -1
  103. package/dist/chunks/edit-section-modal-Br2ITvLk.js.map +1 -1
  104. package/dist/chunks/{edit-section-modal-BW-aZmUv.esm.js → edit-section-modal-HihKbN6K.esm.js} +2 -2
  105. package/dist/chunks/edit-section-modal-HihKbN6K.esm.js.map +1 -0
  106. package/dist/chunks/{filter-COXKBEER.esm.js → filter-D9BHP_qc.esm.js} +5 -5
  107. package/dist/chunks/{filter-COXKBEER.esm.js.map → filter-D9BHP_qc.esm.js.map} +1 -1
  108. package/dist/chunks/{filter-Cr_OSIpb.js → filter-DtCrOG6W.js} +3 -3
  109. package/dist/chunks/{filter-Cr_OSIpb.js.map → filter-DtCrOG6W.js.map} +1 -1
  110. package/dist/chunks/{footer-m3_dlNl8.esm.js → footer-Bv5NOAf9.esm.js} +2 -2
  111. package/dist/chunks/{footer-m3_dlNl8.esm.js.map → footer-Bv5NOAf9.esm.js.map} +1 -1
  112. package/dist/chunks/{footer-CD3kMRdS.js → footer-DioOh69g.js} +2 -2
  113. package/dist/chunks/{footer-CD3kMRdS.js.map → footer-DioOh69g.js.map} +1 -1
  114. package/dist/chunks/{form-fields-yE9kwjvb.js → form-fields-BYDhbAgB.js} +2 -2
  115. package/dist/chunks/{form-fields-yE9kwjvb.js.map → form-fields-BYDhbAgB.js.map} +1 -1
  116. package/dist/chunks/{form-fields-hMMnB_wE.esm.js → form-fields-Di-p9XKG.esm.js} +2 -2
  117. package/dist/chunks/{form-fields-hMMnB_wE.esm.js.map → form-fields-Di-p9XKG.esm.js.map} +1 -1
  118. package/dist/chunks/{form-parser-m4fnw38a.js → form-parser-BnMdMDSb.js} +2 -2
  119. package/dist/chunks/{form-parser-m4fnw38a.js.map → form-parser-BnMdMDSb.js.map} +1 -1
  120. package/dist/chunks/{form-parser-DbnSn5eY.esm.js → form-parser-ZQpEVrzG.esm.js} +2 -2
  121. package/dist/chunks/{form-parser-DbnSn5eY.esm.js.map → form-parser-ZQpEVrzG.esm.js.map} +1 -1
  122. package/dist/chunks/{form-section-TMjdOVeW.esm.js → form-section-BJ7Iqb9R.esm.js} +5 -5
  123. package/dist/chunks/{form-section-TMjdOVeW.esm.js.map → form-section-BJ7Iqb9R.esm.js.map} +1 -1
  124. package/dist/chunks/{form-section-CPIyMdk2.js → form-section-CFeWD-tF.js} +5 -5
  125. package/dist/chunks/{form-section-CPIyMdk2.js.map → form-section-CFeWD-tF.js.map} +1 -1
  126. package/dist/chunks/{fullScreen-D-isf0wv.esm.js → fullScreen-Cz3FIdU4.esm.js} +3 -3
  127. package/dist/chunks/{fullScreen-D-isf0wv.esm.js.map → fullScreen-Cz3FIdU4.esm.js.map} +1 -1
  128. package/dist/chunks/{fullScreen-B5iqC1y0.js → fullScreen-h0JqBN4O.js} +2 -2
  129. package/dist/chunks/{fullScreen-B5iqC1y0.js.map → fullScreen-h0JqBN4O.js.map} +1 -1
  130. package/dist/chunks/{global-search-BjKPmzsQ.js → global-search-BTV5iL6-.js} +2 -2
  131. package/dist/chunks/{global-search-BjKPmzsQ.js.map → global-search-BTV5iL6-.js.map} +1 -1
  132. package/dist/chunks/{global-search-BOkxXiZ0.esm.js → global-search-CGmupYFQ.esm.js} +3 -3
  133. package/dist/chunks/{global-search-BOkxXiZ0.esm.js.map → global-search-CGmupYFQ.esm.js.map} +1 -1
  134. package/dist/chunks/{grid-view-Bo86x7YL.esm.js → grid-view-BMfleQMC.esm.js} +2 -2
  135. package/dist/chunks/{grid-view-Bo86x7YL.esm.js.map → grid-view-BMfleQMC.esm.js.map} +1 -1
  136. package/dist/chunks/{header-D_pPOjdz.esm.js → header-BnVzqpGs.esm.js} +6 -6
  137. package/dist/chunks/{header-D_pPOjdz.esm.js.map → header-BnVzqpGs.esm.js.map} +1 -1
  138. package/dist/chunks/{header-enhanced-OiKzLG4i.esm.js → header-enhanced-CkROCaOF.esm.js} +3 -3
  139. package/dist/chunks/{header-enhanced-OiKzLG4i.esm.js.map → header-enhanced-CkROCaOF.esm.js.map} +1 -1
  140. package/dist/chunks/{header-enhanced-DCDMljaN.js → header-enhanced-Dxdetx0I.js} +3 -3
  141. package/dist/chunks/{header-enhanced-DCDMljaN.js.map → header-enhanced-Dxdetx0I.js.map} +1 -1
  142. package/dist/chunks/{header-DQ_e75rt.js → header-jWPMgcy6.js} +6 -6
  143. package/dist/chunks/{header-DQ_e75rt.js.map → header-jWPMgcy6.js.map} +1 -1
  144. package/dist/chunks/{index-ALqg8b5U.esm.js → index-BCmGHdos.esm.js} +2 -2
  145. package/dist/chunks/{index-ALqg8b5U.esm.js.map → index-BCmGHdos.esm.js.map} +1 -1
  146. package/dist/chunks/{inline-edit-fields-atDP84QL.js → inline-edit-fields-Cd_qUOjU.js} +2 -2
  147. package/dist/chunks/{inline-edit-fields-atDP84QL.js.map → inline-edit-fields-Cd_qUOjU.js.map} +1 -1
  148. package/dist/chunks/{inline-edit-fields-BYhRpPcH.esm.js → inline-edit-fields-VOIx3qmC.esm.js} +2 -2
  149. package/dist/chunks/{inline-edit-fields-BYhRpPcH.esm.js.map → inline-edit-fields-VOIx3qmC.esm.js.map} +1 -1
  150. package/dist/chunks/{inventory-reports-title-bar-Bog2i0dr.js → inventory-reports-title-bar-BfUMM54c.js} +2 -2
  151. package/dist/chunks/{inventory-reports-title-bar-Bog2i0dr.js.map → inventory-reports-title-bar-BfUMM54c.js.map} +1 -1
  152. package/dist/chunks/{inventory-reports-title-bar-CP8FzW6A.esm.js → inventory-reports-title-bar-CZZFFqDc.esm.js} +3 -3
  153. package/dist/chunks/{inventory-reports-title-bar-CP8FzW6A.esm.js.map → inventory-reports-title-bar-CZZFFqDc.esm.js.map} +1 -1
  154. package/dist/chunks/{item-response-details-SHSD-nBh.esm.js → item-response-details-BTHf6ZvN.esm.js} +4 -4
  155. package/dist/chunks/{item-response-details-SHSD-nBh.esm.js.map → item-response-details-BTHf6ZvN.esm.js.map} +1 -1
  156. package/dist/chunks/{item-response-details-DsGQ7Dlc.js → item-response-details-BheThTTK.js} +2 -2
  157. package/dist/chunks/{item-response-details-DsGQ7Dlc.js.map → item-response-details-BheThTTK.js.map} +1 -1
  158. package/dist/chunks/{listing-DIuzQrzb.js → listing-Dr_1DDBr.js} +4 -4
  159. package/dist/chunks/{listing-DIuzQrzb.js.map → listing-Dr_1DDBr.js.map} +1 -1
  160. package/dist/chunks/{listing-C0Yb6MVq.esm.js → listing-ELQeM6S3.esm.js} +4 -4
  161. package/dist/chunks/{listing-C0Yb6MVq.esm.js.map → listing-ELQeM6S3.esm.js.map} +1 -1
  162. package/dist/chunks/{location-select-g5uczAUF.js → location-select-CLyRUilk.js} +2 -2
  163. package/dist/chunks/{location-select-g5uczAUF.js.map → location-select-CLyRUilk.js.map} +1 -1
  164. package/dist/chunks/{location-select-CFa00fy4.esm.js → location-select-z1C88kCy.esm.js} +2 -2
  165. package/dist/chunks/{location-select-CFa00fy4.esm.js.map → location-select-z1C88kCy.esm.js.map} +1 -1
  166. package/dist/chunks/{material-editable-table-BGLjrTzT.js → material-editable-table-DFGB0q-s.js} +3 -3
  167. package/dist/chunks/{material-editable-table-BGLjrTzT.js.map → material-editable-table-DFGB0q-s.js.map} +1 -1
  168. package/dist/chunks/{material-editable-table-pAyK7KYf.esm.js → material-editable-table-DyGdqNkX.esm.js} +4 -4
  169. package/dist/chunks/{material-editable-table-pAyK7KYf.esm.js.map → material-editable-table-DyGdqNkX.esm.js.map} +1 -1
  170. package/dist/chunks/{module-reducer-DMxxForv.esm.js → module-reducer-CEv3LZCX.esm.js} +2 -2
  171. package/dist/chunks/{module-reducer-DMxxForv.esm.js.map → module-reducer-CEv3LZCX.esm.js.map} +1 -1
  172. package/dist/chunks/{modules-BZNWOWrz.js → modules-DTRr7zwt.js} +2 -2
  173. package/dist/chunks/{modules-BZNWOWrz.js.map → modules-DTRr7zwt.js.map} +1 -1
  174. package/dist/chunks/{modules-CWV4WSHs.esm.js → modules-enwLrpfQ.esm.js} +2 -2
  175. package/dist/chunks/{modules-CWV4WSHs.esm.js.map → modules-enwLrpfQ.esm.js.map} +1 -1
  176. package/dist/chunks/{notification-menu-D7ASm-K1.js → notification-menu-B00hDUbn.js} +2 -2
  177. package/dist/chunks/{notification-menu-D7ASm-K1.js.map → notification-menu-B00hDUbn.js.map} +1 -1
  178. package/dist/chunks/{notification-menu-XAadkn-e.esm.js → notification-menu-CehCt5fA.esm.js} +4 -4
  179. package/dist/chunks/{notification-menu-XAadkn-e.esm.js.map → notification-menu-CehCt5fA.esm.js.map} +1 -1
  180. package/dist/chunks/{page-action-C07iGjvN.esm.js → page-action-RqVevciV.esm.js} +4 -4
  181. package/dist/chunks/{page-action-C07iGjvN.esm.js.map → page-action-RqVevciV.esm.js.map} +1 -1
  182. package/dist/chunks/{page-action-BPzaL2KJ.js → page-action-TMFOytDw.js} +2 -2
  183. package/dist/chunks/{page-action-BPzaL2KJ.js.map → page-action-TMFOytDw.js.map} +1 -1
  184. package/dist/chunks/{page-navigator-8gZpp9_P.esm.js → page-navigator-CuIJ0KGf.esm.js} +2 -2
  185. package/dist/chunks/{page-navigator-8gZpp9_P.esm.js.map → page-navigator-CuIJ0KGf.esm.js.map} +1 -1
  186. package/dist/chunks/{page-navigator-Cgbh3tTG.js → page-navigator-DdRsmtLy.js} +2 -2
  187. package/dist/chunks/{page-navigator-Cgbh3tTG.js.map → page-navigator-DdRsmtLy.js.map} +1 -1
  188. package/dist/chunks/{page-view-DJ6HS_dV.js → page-view-CvfqzV03.js} +3 -3
  189. package/dist/chunks/{page-view-DJ6HS_dV.js.map → page-view-CvfqzV03.js.map} +1 -1
  190. package/dist/chunks/{page-view-CokUNMBn.esm.js → page-view-Daz-OKd_.esm.js} +3 -3
  191. package/dist/chunks/{page-view-CokUNMBn.esm.js.map → page-view-Daz-OKd_.esm.js.map} +1 -1
  192. package/dist/chunks/{pathname.rental-qsAe3XFd.esm.js → pathname.rental-CqHO_l_D.esm.js} +76 -81
  193. package/dist/chunks/{pathname.rental-qsAe3XFd.esm.js.map → pathname.rental-CqHO_l_D.esm.js.map} +1 -1
  194. package/dist/chunks/{pathname.rental-DgH4LoG7.js → pathname.rental-CwK6JuID.js} +2 -7
  195. package/dist/chunks/{pathname.rental-DgH4LoG7.js.map → pathname.rental-CwK6JuID.js.map} +1 -1
  196. package/dist/chunks/{quick-approval-modal-CPWs8htH.esm.js → quick-approval-modal-B-jvkgue.esm.js} +2 -2
  197. package/dist/chunks/{quick-approval-modal-CPWs8htH.esm.js.map → quick-approval-modal-B-jvkgue.esm.js.map} +1 -1
  198. package/dist/chunks/{reducer-CdJ6znKF.esm.js → reducer-BMkh_0Py.esm.js} +3 -3
  199. package/dist/chunks/{reducer-CdJ6znKF.esm.js.map → reducer-BMkh_0Py.esm.js.map} +1 -1
  200. package/dist/chunks/{reducer-3tSO6RW6.esm.js → reducer-BOwyP0QZ.esm.js} +3 -3
  201. package/dist/chunks/{reducer-3tSO6RW6.esm.js.map → reducer-BOwyP0QZ.esm.js.map} +1 -1
  202. package/dist/chunks/{reducer-IsgN83rP.esm.js → reducer-BTfG9J4W.esm.js} +2 -2
  203. package/dist/chunks/{reducer-IsgN83rP.esm.js.map → reducer-BTfG9J4W.esm.js.map} +1 -1
  204. package/dist/chunks/{reducer-yyZtsg1A.esm.js → reducer-BWiX5vxL.esm.js} +2 -2
  205. package/dist/chunks/{reducer-yyZtsg1A.esm.js.map → reducer-BWiX5vxL.esm.js.map} +1 -1
  206. package/dist/chunks/{reducer-sgaK2vfW.esm.js → reducer-CD1VDqeT.esm.js} +2 -2
  207. package/dist/chunks/{reducer-sgaK2vfW.esm.js.map → reducer-CD1VDqeT.esm.js.map} +1 -1
  208. package/dist/chunks/{reports-title-bar-Kz6JjqsY.js → reports-title-bar-B1_IweEc.js} +2 -2
  209. package/dist/chunks/{reports-title-bar-Kz6JjqsY.js.map → reports-title-bar-B1_IweEc.js.map} +1 -1
  210. package/dist/chunks/{reports-title-bar-Cay4E8SQ.esm.js → reports-title-bar-Kl8XQe-K.esm.js} +4 -4
  211. package/dist/chunks/{reports-title-bar-Cay4E8SQ.esm.js.map → reports-title-bar-Kl8XQe-K.esm.js.map} +1 -1
  212. package/dist/chunks/{route-page-map-Dn-SAbdf.js → route-page-map-CzFUh-SC.js} +3 -60
  213. package/dist/chunks/{route-page-map-Dn-SAbdf.js.map → route-page-map-CzFUh-SC.js.map} +1 -1
  214. package/dist/chunks/{route-page-map-DkWoisiB.esm.js → route-page-map-D6-7jBQT.esm.js} +76 -133
  215. package/dist/chunks/{route-page-map-DkWoisiB.esm.js.map → route-page-map-D6-7jBQT.esm.js.map} +1 -1
  216. package/dist/chunks/{routes-Be8qxaVS.esm.js → routes-D9y_XQRu.esm.js} +4 -4
  217. package/dist/chunks/{routes-Be8qxaVS.esm.js.map → routes-D9y_XQRu.esm.js.map} +1 -1
  218. package/dist/chunks/{routes-Bi8lChPT.js → routes-Dsumzjw0.js} +4 -4
  219. package/dist/chunks/{routes-Bi8lChPT.js.map → routes-Dsumzjw0.js.map} +1 -1
  220. package/dist/chunks/{schedule-report-B4ZfEuiU.js → schedule-report-BwmZ5jea.js} +4 -4
  221. package/dist/chunks/{schedule-report-B4ZfEuiU.js.map → schedule-report-BwmZ5jea.js.map} +1 -1
  222. package/dist/chunks/{schedule-report-CLXjjfjc.esm.js → schedule-report-CJXHVZ68.esm.js} +6 -6
  223. package/dist/chunks/{schedule-report-CLXjjfjc.esm.js.map → schedule-report-CJXHVZ68.esm.js.map} +1 -1
  224. package/dist/chunks/{schedule-report-modal-CB3G9H7x.esm.js → schedule-report-modal-D8Y-TZ4u.esm.js} +3 -3
  225. package/dist/chunks/{schedule-report-modal-CB3G9H7x.esm.js.map → schedule-report-modal-D8Y-TZ4u.esm.js.map} +1 -1
  226. package/dist/chunks/{schedule-report-modal-iwoDI-sg.js → schedule-report-modal-iNnWP9s4.js} +2 -2
  227. package/dist/chunks/{schedule-report-modal-iwoDI-sg.js.map → schedule-report-modal-iNnWP9s4.js.map} +1 -1
  228. package/dist/chunks/{searchable-select-0F6E4XAr.esm.js → searchable-select-BQtcqBKV.esm.js} +6 -6
  229. package/dist/chunks/{searchable-select-0F6E4XAr.esm.js.map → searchable-select-BQtcqBKV.esm.js.map} +1 -1
  230. package/dist/chunks/{searchable-select-_DCkITfk.js → searchable-select-DVUCWWti.js} +2 -2
  231. package/dist/chunks/{searchable-select-_DCkITfk.js.map → searchable-select-DVUCWWti.js.map} +1 -1
  232. package/dist/chunks/{share-modal-BaEyZs2h.esm.js → share-modal-BOyLBawK.esm.js} +3 -3
  233. package/dist/chunks/{share-modal-BaEyZs2h.esm.js.map → share-modal-BOyLBawK.esm.js.map} +1 -1
  234. package/dist/chunks/{share-modal-DrXvh-fV.js → share-modal-CobK7BN7.js} +2 -2
  235. package/dist/chunks/{share-modal-DrXvh-fV.js.map → share-modal-CobK7BN7.js.map} +1 -1
  236. package/dist/chunks/{share-modal-enhanced-DnEdDBmu.esm.js → share-modal-enhanced-CTp-tQw8.esm.js} +2 -2
  237. package/dist/chunks/{share-modal-enhanced-DnEdDBmu.esm.js.map → share-modal-enhanced-CTp-tQw8.esm.js.map} +1 -1
  238. package/dist/chunks/{share-modal-enhanced-BTr0zRhF.js → share-modal-enhanced-DVarD-jt.js} +2 -2
  239. package/dist/chunks/{share-modal-enhanced-BTr0zRhF.js.map → share-modal-enhanced-DVarD-jt.js.map} +1 -1
  240. package/dist/chunks/{sidebarScreen-3iZYCAMn.js → sidebarScreen-K-dlM6NA.js} +2 -2
  241. package/dist/chunks/{sidebarScreen-3iZYCAMn.js.map → sidebarScreen-K-dlM6NA.js.map} +1 -1
  242. package/dist/chunks/{sidebarScreen-CYUn8OsB.esm.js → sidebarScreen-lR6rw8bW.esm.js} +4 -4
  243. package/dist/chunks/{sidebarScreen-CYUn8OsB.esm.js.map → sidebarScreen-lR6rw8bW.esm.js.map} +1 -1
  244. package/dist/chunks/{store-BL5VFPie.esm.js → store-DJh8C3Vv.esm.js} +6 -6
  245. package/dist/chunks/{store-BL5VFPie.esm.js.map → store-DJh8C3Vv.esm.js.map} +1 -1
  246. package/dist/chunks/{table-DWx7x8zw.js → table-Bpt6ggr3.js} +2 -2
  247. package/dist/chunks/{table-DWx7x8zw.js.map → table-Bpt6ggr3.js.map} +1 -1
  248. package/dist/chunks/{table-gxAlAeTq.esm.js → table-DI3MyTNm.esm.js} +3 -3
  249. package/dist/chunks/{table-gxAlAeTq.esm.js.map → table-DI3MyTNm.esm.js.map} +1 -1
  250. package/dist/chunks/{table-form-DsTwCUcs.esm.js → table-form-8_f3FwhX.esm.js} +2 -2
  251. package/dist/chunks/{table-form-DsTwCUcs.esm.js.map → table-form-8_f3FwhX.esm.js.map} +1 -1
  252. package/dist/chunks/{template-editor-router-BRxF8Dj_.js → template-editor-router-DugWbCh0.js} +2 -2
  253. package/dist/chunks/{template-editor-router-BRxF8Dj_.js.map → template-editor-router-DugWbCh0.js.map} +1 -1
  254. package/dist/chunks/{template-editor-router-BV5FrwJm.esm.js → template-editor-router-uzghBOap.esm.js} +2 -2
  255. package/dist/chunks/{template-editor-router-BV5FrwJm.esm.js.map → template-editor-router-uzghBOap.esm.js.map} +1 -1
  256. package/dist/chunks/{template-modal-B2VgotrF.esm.js → template-modal-D7aLacan.esm.js} +7 -6
  257. package/dist/chunks/template-modal-D7aLacan.esm.js.map +1 -0
  258. package/dist/chunks/{template-modal-X-iSmlki.js → template-modal-Df7gF4QI.js} +5 -4
  259. package/dist/chunks/template-modal-Df7gF4QI.js.map +1 -0
  260. package/dist/chunks/{template-name-modal-CeqxIE2r.js → template-name-modal-ClreVUaz.js} +12 -5
  261. package/dist/chunks/template-name-modal-ClreVUaz.js.map +1 -0
  262. package/dist/chunks/{template-name-modal-Dctn8t3t.esm.js → template-name-modal-Dwe7U72p.esm.js} +12 -5
  263. package/dist/chunks/template-name-modal-Dwe7U72p.esm.js.map +1 -0
  264. package/dist/chunks/{templates-DxvU4PQY.esm.js → templates-9ZMHwRR6.esm.js} +9 -9
  265. package/dist/chunks/templates-9ZMHwRR6.esm.js.map +1 -0
  266. package/dist/chunks/{templates-BY9HF32G.js → templates-DCXbeOtH.js} +6 -6
  267. package/dist/chunks/templates-DCXbeOtH.js.map +1 -0
  268. package/dist/chunks/{text-measurement-BCjauPbB.esm.js → text-measurement-DMVkqP6b.esm.js} +2 -2
  269. package/dist/chunks/{text-measurement-BCjauPbB.esm.js.map → text-measurement-DMVkqP6b.esm.js.map} +1 -1
  270. package/dist/chunks/{translations-BrwQcVN3.esm.js → translations-JcE6qyDJ.esm.js} +3 -3
  271. package/dist/chunks/{translations-BrwQcVN3.esm.js.map → translations-JcE6qyDJ.esm.js.map} +1 -1
  272. package/dist/chunks/{uom-field-wrapper-DXZgzOYB.js → uom-field-wrapper-CSqeiVPY.js} +2 -2
  273. package/dist/chunks/{uom-field-wrapper-DXZgzOYB.js.map → uom-field-wrapper-CSqeiVPY.js.map} +1 -1
  274. package/dist/chunks/{uom-field-wrapper-CTbEc-MB.esm.js → uom-field-wrapper-CWTsSsSi.esm.js} +2 -2
  275. package/dist/chunks/{uom-field-wrapper-CTbEc-MB.esm.js.map → uom-field-wrapper-CWTsSsSi.esm.js.map} +1 -1
  276. package/dist/chunks/{upload-excel-BZPP13tP.esm.js → upload-excel-CkEQqZW2.esm.js} +2 -2
  277. package/dist/chunks/{upload-excel-BZPP13tP.esm.js.map → upload-excel-CkEQqZW2.esm.js.map} +1 -1
  278. package/dist/chunks/{use-translations-BzykVZOP.esm.js → use-translations-BqBPN1DM.esm.js} +3 -3
  279. package/dist/chunks/{use-translations-BzykVZOP.esm.js.map → use-translations-BqBPN1DM.esm.js.map} +1 -1
  280. package/dist/chunks/{use-translations-CNI_xsIo.js → use-translations-Cn3b4Kqh.js} +2 -2
  281. package/dist/chunks/{use-translations-CNI_xsIo.js.map → use-translations-Cn3b4Kqh.js.map} +1 -1
  282. package/dist/chunks/{useAccountSetting-vAqgEiJB.esm.js → useAccountSetting-DsU5zsjb.esm.js} +2 -2
  283. package/dist/chunks/{useAccountSetting-vAqgEiJB.esm.js.map → useAccountSetting-DsU5zsjb.esm.js.map} +1 -1
  284. package/dist/chunks/{useCheckSkuAndName-Dl24wQO-.esm.js → useCheckSkuAndName-5ua30aZf.esm.js} +2 -2
  285. package/dist/chunks/{useCheckSkuAndName-Dl24wQO-.esm.js.map → useCheckSkuAndName-5ua30aZf.esm.js.map} +1 -1
  286. package/dist/chunks/{useReduxIntegration-DZBfKF7d.esm.js → useReduxIntegration-BlLpfwk6.esm.js} +2 -2
  287. package/dist/chunks/{useReduxIntegration-DZBfKF7d.esm.js.map → useReduxIntegration-BlLpfwk6.esm.js.map} +1 -1
  288. package/dist/chunks/{useUniquenessCheck-bYjnp_0P.esm.js → useUniquenessCheck-CiR2q5bM.esm.js} +2 -2
  289. package/dist/chunks/{useUniquenessCheck-bYjnp_0P.esm.js.map → useUniquenessCheck-CiR2q5bM.esm.js.map} +1 -1
  290. package/dist/chunks/{useVendorAICompare-DZRFDk4i.esm.js → useVendorAICompare-DMJvJJ3Y.esm.js} +2 -2
  291. package/dist/chunks/{useVendorAICompare-DZRFDk4i.esm.js.map → useVendorAICompare-DMJvJJ3Y.esm.js.map} +1 -1
  292. package/dist/chunks/{value-editor-BSS9Ns2T.js → value-editor-Br7X_wEB.js} +2 -2
  293. package/dist/chunks/{value-editor-BSS9Ns2T.js.map → value-editor-Br7X_wEB.js.map} +1 -1
  294. package/dist/chunks/{value-editor-DQ1qgZ2u.esm.js → value-editor-BxFdnUyM.esm.js} +4 -4
  295. package/dist/chunks/{value-editor-DQ1qgZ2u.esm.js.map → value-editor-BxFdnUyM.esm.js.map} +1 -1
  296. package/dist/chunks/{vendor-ai-summary-BA6m2dH9.esm.js → vendor-ai-summary-Cpx90QOx.esm.js} +2 -2
  297. package/dist/chunks/{vendor-ai-summary-BA6m2dH9.esm.js.map → vendor-ai-summary-Cpx90QOx.esm.js.map} +1 -1
  298. package/dist/chunks/{vendor-ai-summary-DWmAaQ_N.js → vendor-ai-summary-zranZkfk.js} +2 -2
  299. package/dist/chunks/{vendor-ai-summary-DWmAaQ_N.js.map → vendor-ai-summary-zranZkfk.js.map} +1 -1
  300. package/dist/components/action-bar/action-bar/index.esm.js +1 -1
  301. package/dist/components/action-bar/action-bar/index.js +1 -1
  302. package/dist/components/action-bar/index.esm.js +1 -1
  303. package/dist/components/action-bar/index.js +1 -1
  304. package/dist/components/address-modal/index.esm.js +1 -1
  305. package/dist/components/address-modal/index.js +1 -1
  306. package/dist/components/ai-summary/ai-summary/index.esm.js +1 -1
  307. package/dist/components/ai-summary/index.esm.js +1 -1
  308. package/dist/components/appbar/appbar/index.esm.js +1 -1
  309. package/dist/components/appbar/appbar/index.js +1 -1
  310. package/dist/components/appbar/index.esm.js +1 -1
  311. package/dist/components/appbar/index.js +1 -1
  312. package/dist/components/approval-wrapper/approval-wrapper/index.esm.js +1 -1
  313. package/dist/components/approval-wrapper/index.esm.js +1 -1
  314. package/dist/components/chat-bot/index.esm.js +1 -1
  315. package/dist/components/custom-forms/FORMS/index.esm.js +1 -1
  316. package/dist/components/custom-forms/FORMS/index.js +1 -1
  317. package/dist/components/custom-forms/grid-view/grid-view/index.esm.js +1 -1
  318. package/dist/components/custom-forms/grid-view/index.esm.js +1 -1
  319. package/dist/components/custom-forms/index.esm.js +2 -2
  320. package/dist/components/custom-forms/index.js +1 -1
  321. package/dist/components/department-add-modal/index.esm.js +1 -1
  322. package/dist/components/department-add-modal/index.js +1 -1
  323. package/dist/components/designation-add-modal/index.esm.js +1 -1
  324. package/dist/components/designation-add-modal/index.js +1 -1
  325. package/dist/components/editor/custom-editor/index.esm.js +1 -1
  326. package/dist/components/editor/index.esm.js +1 -1
  327. package/dist/components/examples/FlexibleReduxExample/index.esm.js +1 -1
  328. package/dist/components/examples/FlexibleReduxExample/index.js +1 -1
  329. package/dist/components/examples/index.esm.js +1 -1
  330. package/dist/components/examples/index.js +1 -1
  331. package/dist/components/filter/components/index.esm.js +1 -1
  332. package/dist/components/filter/components/index.js +1 -1
  333. package/dist/components/filter/components/value-editor/index.esm.js +1 -1
  334. package/dist/components/filter/components/value-editor/index.js +1 -1
  335. package/dist/components/filter/filter/index.esm.js +1 -1
  336. package/dist/components/filter/filter/index.js +1 -1
  337. package/dist/components/filter/index.esm.js +2 -2
  338. package/dist/components/filter/index.js +2 -2
  339. package/dist/components/footer/footer/index.esm.js +1 -1
  340. package/dist/components/footer/footer/index.js +1 -1
  341. package/dist/components/footer/index.esm.js +1 -1
  342. package/dist/components/footer/index.js +1 -1
  343. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.esm.js +1 -1
  344. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.js +1 -1
  345. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.esm.js +1 -1
  346. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.js +1 -1
  347. package/dist/components/form-control/form-builder/form-builder-element/dynamic-text-editor/index.esm.js +1 -1
  348. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.esm.js +1 -1
  349. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.js +1 -1
  350. package/dist/components/form-control/form-builder/form-builder-element/index.esm.js +4 -4
  351. package/dist/components/form-control/form-builder/form-builder-element/index.js +3 -3
  352. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.esm.js +1 -1
  353. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.js +1 -1
  354. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.esm.js +1 -1
  355. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.js +1 -1
  356. package/dist/components/form-control/form-builder/form-builder-element/table/index.esm.js +1 -1
  357. package/dist/components/form-control/form-builder/form-builder-element/table/index.js +1 -1
  358. package/dist/components/form-control/form-builder/index.esm.js +4 -4
  359. package/dist/components/form-control/form-builder/index.js +3 -3
  360. package/dist/components/form-control/form-parser/form-parser/index.esm.js +1 -1
  361. package/dist/components/form-control/form-parser/form-parser/index.js +1 -1
  362. package/dist/components/form-control/form-parser/form-section/index.esm.js +1 -1
  363. package/dist/components/form-control/form-parser/form-section/index.js +1 -1
  364. package/dist/components/form-control/form-parser/index.esm.js +2 -2
  365. package/dist/components/form-control/form-parser/index.js +2 -2
  366. package/dist/components/form-control/index.esm.js +6 -6
  367. package/dist/components/form-control/index.js +5 -5
  368. package/dist/components/header/components/app-switcher/index.esm.js +1 -1
  369. package/dist/components/header/components/app-switcher/index.js +1 -1
  370. package/dist/components/header/components/global-search/index.esm.js +1 -1
  371. package/dist/components/header/components/global-search/index.js +1 -1
  372. package/dist/components/header/components/index.esm.js +1 -1
  373. package/dist/components/header/components/index.js +1 -1
  374. package/dist/components/header/components/notification-menu/index.esm.js +1 -1
  375. package/dist/components/header/components/notification-menu/index.js +1 -1
  376. package/dist/components/header/components/notification-menu/notification-menu/index.esm.js +1 -1
  377. package/dist/components/header/components/notification-menu/notification-menu/index.js +1 -1
  378. package/dist/components/header/header/index.esm.js +1 -1
  379. package/dist/components/header/header/index.js +1 -1
  380. package/dist/components/header/header-enhanced/index.esm.js +1 -1
  381. package/dist/components/header/header-enhanced/index.js +1 -1
  382. package/dist/components/header/index.esm.js +5 -5
  383. package/dist/components/header/index.js +3 -3
  384. package/dist/components/header/redux/actionCreator/index.esm.js +1 -1
  385. package/dist/components/header/redux/index.esm.js +2 -2
  386. package/dist/components/header/redux/reducer/index.esm.js +1 -1
  387. package/dist/components/index.esm.js +36 -36
  388. package/dist/components/index.js +26 -26
  389. package/dist/components/inventory-reports-title-bar/index.esm.js +3 -3
  390. package/dist/components/inventory-reports-title-bar/index.js +1 -1
  391. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.esm.js +1 -1
  392. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.js +1 -1
  393. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  394. package/dist/components/inventory-reports-title-bar/redux/index.esm.js +2 -2
  395. package/dist/components/inventory-reports-title-bar/redux/reducer/index.esm.js +1 -1
  396. package/dist/components/listing/index.esm.js +1 -1
  397. package/dist/components/listing/index.js +1 -1
  398. package/dist/components/listing/listing/index.esm.js +1 -1
  399. package/dist/components/listing/listing/index.js +1 -1
  400. package/dist/components/location-select/index.esm.js +1 -1
  401. package/dist/components/location-select/index.js +1 -1
  402. package/dist/components/material-editable-table/components/index.esm.js +1 -1
  403. package/dist/components/material-editable-table/components/index.js +1 -1
  404. package/dist/components/material-editable-table/components/inline-edit-fields/index.esm.js +1 -1
  405. package/dist/components/material-editable-table/components/inline-edit-fields/index.js +1 -1
  406. package/dist/components/material-editable-table/index.esm.js +2 -2
  407. package/dist/components/material-editable-table/index.js +2 -2
  408. package/dist/components/material-editable-table/material-editable-table/index.esm.js +1 -1
  409. package/dist/components/material-editable-table/material-editable-table/index.js +1 -1
  410. package/dist/components/material-table/components/index.esm.js +1 -1
  411. package/dist/components/material-table/components/index.js +1 -1
  412. package/dist/components/material-table/components/inline-edit-fields/index.esm.js +1 -1
  413. package/dist/components/material-table/components/inline-edit-fields/index.js +1 -1
  414. package/dist/components/material-table/index.esm.js +1 -1
  415. package/dist/components/material-table/index.js +1 -1
  416. package/dist/components/material-table/material-table/index.esm.js +1 -1
  417. package/dist/components/material-table/material-table/index.js +1 -1
  418. package/dist/components/page-navigator/components/index.esm.js +1 -1
  419. package/dist/components/page-navigator/components/index.js +1 -1
  420. package/dist/components/page-navigator/components/page-action/index.esm.js +1 -1
  421. package/dist/components/page-navigator/components/page-action/index.js +1 -1
  422. package/dist/components/page-navigator/index.esm.js +2 -2
  423. package/dist/components/page-navigator/index.js +2 -2
  424. package/dist/components/page-navigator/page-navigator/index.esm.js +1 -1
  425. package/dist/components/page-navigator/page-navigator/index.js +1 -1
  426. package/dist/components/parties-modal/index.esm.js +1 -1
  427. package/dist/components/parties-modal/index.js +1 -1
  428. package/dist/components/parties-modal/parties-modal/index.esm.js +1 -1
  429. package/dist/components/parties-modal/parties-modal/index.js +1 -1
  430. package/dist/components/providers/ERPUIProvider/index.esm.js +1 -1
  431. package/dist/components/providers/index.esm.js +1 -1
  432. package/dist/components/quick-approval-modal/index.esm.js +1 -1
  433. package/dist/components/quick-approval-modal/quick-approval-modal/index.esm.js +1 -1
  434. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js +1 -1
  435. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js +1 -1
  436. package/dist/components/reports/dynamic-report/index.esm.js +2 -2
  437. package/dist/components/reports/index.esm.js +2 -2
  438. package/dist/components/reports-title-bar/index.esm.js +3 -3
  439. package/dist/components/reports-title-bar/index.js +1 -1
  440. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  441. package/dist/components/reports-title-bar/redux/index.esm.js +2 -2
  442. package/dist/components/reports-title-bar/redux/reducer/index.esm.js +1 -1
  443. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +1 -1
  444. package/dist/components/reports-title-bar/reports-title-bar/index.js +1 -1
  445. package/dist/components/rfq-response/index.esm.js +1 -1
  446. package/dist/components/rfq-response/index.js +1 -1
  447. package/dist/components/rfq-response/item-response-details/index.esm.js +1 -1
  448. package/dist/components/rfq-response/item-response-details/index.js +1 -1
  449. package/dist/components/schedule-report/index.esm.js +2 -2
  450. package/dist/components/schedule-report/index.js +2 -2
  451. package/dist/components/schedule-report/schedule-report/index.esm.js +1 -1
  452. package/dist/components/schedule-report/schedule-report/index.js +1 -1
  453. package/dist/components/schedule-report/schedule-report-modal/index.esm.js +1 -1
  454. package/dist/components/schedule-report/schedule-report-modal/index.js +1 -1
  455. package/dist/components/schedule-report/utils/common/index.esm.js +1 -1
  456. package/dist/components/searchable-select/index.esm.js +1 -1
  457. package/dist/components/searchable-select/index.js +1 -1
  458. package/dist/components/share-modal/index.esm.js +4 -4
  459. package/dist/components/share-modal/index.js +2 -2
  460. package/dist/components/share-modal/redux/actionCreator/index.esm.js +1 -1
  461. package/dist/components/share-modal/redux/index.esm.js +2 -2
  462. package/dist/components/share-modal/redux/reducer/index.esm.js +1 -1
  463. package/dist/components/share-modal/share-modal/index.esm.js +1 -1
  464. package/dist/components/share-modal/share-modal/index.js +1 -1
  465. package/dist/components/share-modal/share-modal-enhanced/index.esm.js +1 -1
  466. package/dist/components/share-modal/share-modal-enhanced/index.js +1 -1
  467. package/dist/components/team-add-modal/index.esm.js +1 -1
  468. package/dist/components/team-add-modal/index.js +1 -1
  469. package/dist/components/uom-field-wrapper/index.esm.js +1 -1
  470. package/dist/components/uom-field-wrapper/index.js +1 -1
  471. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.esm.js +1 -1
  472. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.js +1 -1
  473. package/dist/components/upload-excel/index.esm.js +1 -1
  474. package/dist/components/upload-excel/upload-excel/index.esm.js +1 -1
  475. package/dist/components/vendor-ai-summary/index.esm.js +1 -1
  476. package/dist/components/vendor-ai-summary/index.js +1 -1
  477. package/dist/constants/index.esm.js +143 -145
  478. package/dist/constants/index.js +3 -5
  479. package/dist/constants/index.js.map +1 -1
  480. package/dist/hooks/index.esm.js +6 -6
  481. package/dist/hooks/index.js +1 -1
  482. package/dist/hooks/use-translations/index.esm.js +1 -1
  483. package/dist/hooks/use-translations/index.js +1 -1
  484. package/dist/hooks/useAccountSetting/index.esm.js +1 -1
  485. package/dist/hooks/useCheckSkuAndName/index.esm.js +1 -1
  486. package/dist/hooks/useReduxIntegration/index.esm.js +1 -1
  487. package/dist/hooks/useUniquenessCheck/index.esm.js +1 -1
  488. package/dist/index.esm.js +235 -232
  489. package/dist/index.esm.js.map +1 -1
  490. package/dist/index.js +66 -63
  491. package/dist/index.js.map +1 -1
  492. package/dist/layout/fullScreen/index.esm.js +1 -1
  493. package/dist/layout/fullScreen/index.js +1 -1
  494. package/dist/layout/index.esm.js +2 -2
  495. package/dist/layout/index.js +2 -2
  496. package/dist/layout/sidebarScreen/index.esm.js +1 -1
  497. package/dist/layout/sidebarScreen/index.js +1 -1
  498. package/dist/redux/index.esm.js +3 -3
  499. package/dist/runtime/index.esm.js +4 -4
  500. package/dist/runtime/index.js +2 -2
  501. package/dist/src/constants/defaultColumns.d.ts +0 -1
  502. package/dist/src/constants/pathnames/pathname.procurement.d.ts +0 -4
  503. package/dist/src/views/template-editor/components/EditorCanvas/FreeCanvas.d.ts +34 -0
  504. package/dist/src/views/template-editor/components/EditorCanvas/FreeElement.d.ts +30 -0
  505. package/dist/src/views/template-editor/components/EditorCanvas.d.ts +30 -12
  506. package/dist/src/views/template-editor/components/EditorHeader.d.ts +6 -0
  507. package/dist/src/views/template-editor/components/EditorSection.d.ts +1 -0
  508. package/dist/src/views/template-editor/components/SectionFlowEditor.d.ts +2 -3
  509. package/dist/src/views/template-editor/components/SectionFormatPanel.d.ts +2 -1
  510. package/dist/src/views/template-editor/components/controllers/TableControls.d.ts +23 -0
  511. package/dist/src/views/template-editor/components/controllers/TextControls.d.ts +3 -0
  512. package/dist/src/views/template-editor/components/stationery/StationeryPreview.d.ts +24 -0
  513. package/dist/src/views/template-editor/components/stationery/StationerySidebar.d.ts +9 -0
  514. package/dist/src/views/template-editor/engine/ai.d.ts +12 -0
  515. package/dist/src/views/template-editor/engine/app.d.ts +1 -0
  516. package/dist/src/views/template-editor/engine/controls.d.ts +4 -0
  517. package/dist/src/views/template-editor/engine/design-canvas.d.ts +24 -0
  518. package/dist/src/views/template-editor/engine/editor.d.ts +17 -0
  519. package/dist/src/views/template-editor/engine/engine.d.ts +18 -0
  520. package/dist/src/views/template-editor/engine/icons.d.ts +91 -0
  521. package/dist/src/views/template-editor/engine/letterpads.d.ts +1 -0
  522. package/dist/src/views/template-editor/engine/model.d.ts +20 -0
  523. package/dist/src/views/template-editor/engine/paginator.d.ts +30 -0
  524. package/dist/src/views/template-editor/engine/picker.d.ts +20 -0
  525. package/dist/src/views/template-editor/engine/schema.d.ts +647 -0
  526. package/dist/src/views/template-editor/engine/stationery-app.d.ts +10 -0
  527. package/dist/src/views/template-editor/engine/stationery-doc.d.ts +62 -0
  528. package/dist/src/views/template-editor/engine/stationery-free-element.d.ts +22 -0
  529. package/dist/src/views/template-editor/engine/stationery-store.d.ts +154 -0
  530. package/dist/src/views/template-editor/engine/templatebuilder.d.ts +51 -0
  531. package/dist/src/views/template-editor/engine/templates.d.ts +11 -0
  532. package/dist/src/views/template-editor/icons/custom-styled-icon.d.ts +7 -0
  533. package/dist/src/views/template-editor/icons/edit.d.ts +4 -0
  534. package/dist/src/views/template-editor/icons/trash.d.ts +4 -0
  535. package/dist/src/views/template-editor/types/editor.d.ts +20 -108
  536. package/dist/src/views/template-editor/types/stationery.d.ts +66 -0
  537. package/dist/src/views/template-editor/utils/common.d.ts +10 -1
  538. package/dist/src/views/template-editor/utils/compiler.d.ts +12 -0
  539. package/dist/src/views/template-editor/utils/constant.d.ts +4 -1
  540. package/dist/style.css +4619 -33
  541. package/dist/utils/api/index.esm.js +1 -1
  542. package/dist/utils/common/index.esm.js +1 -1
  543. package/dist/utils/common-utility/index.esm.js +1 -1
  544. package/dist/utils/export-filters/index.esm.js +0 -1
  545. package/dist/utils/export-filters/index.esm.js.map +1 -1
  546. package/dist/utils/export-filters/index.js +0 -1
  547. package/dist/utils/export-filters/index.js.map +1 -1
  548. package/dist/utils/index.esm.js +8 -8
  549. package/dist/utils/server/index.esm.js +2 -2
  550. package/dist/utils/text-measurement/index.esm.js +1 -1
  551. package/dist/views/afterAuth/dashboard/index.esm.js +1 -1
  552. package/dist/views/afterAuth/dashboard/index.js +1 -1
  553. package/dist/views/afterAuth/index.esm.js +2 -2
  554. package/dist/views/afterAuth/index.js +2 -2
  555. package/dist/views/afterAuth/page-view/index.esm.js +1 -1
  556. package/dist/views/afterAuth/page-view/index.js +1 -1
  557. package/dist/views/form-builder/custom-form/index.esm.js +1 -1
  558. package/dist/views/form-builder/custom-form/index.js +1 -1
  559. package/dist/views/form-builder/element-edit-forms/index.esm.js +1 -1
  560. package/dist/views/form-builder/form-fields/index.esm.js +1 -1
  561. package/dist/views/form-builder/form-fields/index.js +1 -1
  562. package/dist/views/form-builder/index.esm.js +5 -5
  563. package/dist/views/form-builder/index.js +3 -3
  564. package/dist/views/form-builder/redux/index.esm.js +1 -1
  565. package/dist/views/form-builder/utils/index.esm.js +1 -1
  566. package/dist/views/form-builder/utils/index.js +1 -1
  567. package/dist/views/index.esm.js +39 -34
  568. package/dist/views/index.esm.js.map +1 -1
  569. package/dist/views/index.js +36 -31
  570. package/dist/views/index.js.map +1 -1
  571. package/dist/views/template-editor/add-template/index.esm.js +1 -1
  572. package/dist/views/template-editor/add-template/index.js +1 -1
  573. package/dist/views/template-editor/components/index.esm.js +7 -6
  574. package/dist/views/template-editor/components/index.esm.js.map +1 -1
  575. package/dist/views/template-editor/components/index.js +4 -3
  576. package/dist/views/template-editor/components/index.js.map +1 -1
  577. package/dist/views/template-editor/edit-section-modal/index.esm.js +1 -1
  578. package/dist/views/template-editor/index.esm.js +25 -20
  579. package/dist/views/template-editor/index.esm.js.map +1 -1
  580. package/dist/views/template-editor/index.js +16 -11
  581. package/dist/views/template-editor/index.js.map +1 -1
  582. package/dist/views/template-editor/routes/index.esm.js +1 -1
  583. package/dist/views/template-editor/routes/index.js +1 -1
  584. package/dist/views/template-editor/template-modal/index.esm.js +1 -1
  585. package/dist/views/template-editor/template-modal/index.js +1 -1
  586. package/dist/views/template-editor/template-name-modal/index.esm.js +1 -1
  587. package/dist/views/template-editor/template-name-modal/index.js +1 -1
  588. package/dist/views/template-editor/templates/index.esm.js +1 -1
  589. package/dist/views/template-editor/templates/index.js +1 -1
  590. package/dist/views/template-editor/utils/index.esm.js +10 -6
  591. package/dist/views/template-editor/utils/index.js +6 -2
  592. package/dist/views/template-editor/utils/index.js.map +1 -1
  593. package/package.json +1 -1
  594. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js +0 -5479
  595. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js.map +0 -1
  596. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js +0 -5478
  597. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js.map +0 -1
  598. package/dist/chunks/add-template-DVvbD9a4.esm.js +0 -11
  599. package/dist/chunks/add-template-DVvbD9a4.esm.js.map +0 -1
  600. package/dist/chunks/add-template-Dohg2bHJ.js +0 -10
  601. package/dist/chunks/add-template-Dohg2bHJ.js.map +0 -1
  602. package/dist/chunks/common-C5AokA7z.js +0 -368
  603. package/dist/chunks/common-C5AokA7z.js.map +0 -1
  604. package/dist/chunks/common-CaomnEjX.esm.js +0 -369
  605. package/dist/chunks/common-CaomnEjX.esm.js.map +0 -1
  606. package/dist/chunks/common-utility-DGpbsf7S.esm.js.map +0 -1
  607. package/dist/chunks/constant-Bwg2s_Sn.esm.js.map +0 -1
  608. package/dist/chunks/constant-ZYAN_teD.js.map +0 -1
  609. package/dist/chunks/edit-section-modal-BW-aZmUv.esm.js.map +0 -1
  610. package/dist/chunks/template-modal-B2VgotrF.esm.js.map +0 -1
  611. package/dist/chunks/template-modal-X-iSmlki.js.map +0 -1
  612. package/dist/chunks/template-name-modal-CeqxIE2r.js.map +0 -1
  613. package/dist/chunks/template-name-modal-Dctn8t3t.esm.js.map +0 -1
  614. package/dist/chunks/templates-BY9HF32G.js.map +0 -1
  615. package/dist/chunks/templates-DxvU4PQY.esm.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"form-parser-m4fnw38a.js","sources":["../../src/components/form-control/form-parser/form-parser.tsx"],"sourcesContent":["import { FormProvider, useForm, useWatch } from \"react-hook-form\";\n// import { useLocation } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\n\n// import FullScreenLayout from \"../../../layout/fullScreen/fullScreen\";\n\nimport { useState, useEffect, useCallback } from \"react\";\nimport images from \"../../../assets/images\";\nimport \"./form-parser.scss\";\nimport TabBar from \"../../tabs/tabs\";\nimport formBuilderDeConversion from \"../../../utils/form-builder-deconversion\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport * as yup from \"yup\";\nimport dayjs from \"dayjs\";\nimport { SECTION_TYPES } from '../../../utils/constant';\nimport { CountryData } from 'react-phone-input-2';\nimport Alert from '../../alert/alert';\nimport _ from \"lodash\";\nimport { useTranslation } from \"react-i18next\";\nimport FormSection from \"./form-section\";\nconst validationReducer = (validations: any, validation: any, field: any, translationFn: any) => {\n switch (validation.type) {\n case \"required\":\n return (field.field_properties?.is_multiselect ? validations.required(translationFn(validation.msg_en)).min(1, translationFn(validation.msg_en)) : validation.value\n ? validations.required(translationFn(validation.msg_en)).test('not-empty', translationFn(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"postive_number\":\n return validations.test('is-positive-number', translationFn(validation.msg_en), (value) => value >= 0)\n case 'email':\n return validations.email(validation.msg_en);\n case \"no_special_char\":\n return validations.test(\n \"no-special-char\",\n translationFn(validation.msg_en),\n value =>\n typeof value === \"string\"\n ? /^[^.\\-\\W_]+$/u.test(value) // allow letters/digits only\n : true\n );\n case \"matches\":\n return validations.matches(new RegExp(validation.value), { excludeEmptyString: true, message: translationFn(validation.msg_en) });\n case \"when\":\n return validations.when(validation.relation, {\n is: (val: any) => val === validation.values,\n then: () => validation?.thenValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n otherwise: () => validation?.otherWiseValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n });\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n}\n\nconst FormParser = ({\n data,\n defaultValues,\n handleFormSubmit,\n fieldArrayName,\n mode,\n displayAvtar = false,\n onTableAddClick,\n handleFormValues,\n getFormMethods,\n setFields,\n onSelectFooterClick,\n setActiveTabValue,\n activeTab = 0,\n recieveTabDataLenght,\n recieveIsValidForm,\n activeTabs,\n onTableCellChange,\n containerStyles = undefined,\n isButton = true,\n getSelectedData,\n refreshOptions = false,\n onBlur,\n}: any) => {\n\n const { t } = useTranslation();\n\n function convertToNestedObject(dotNotationString: string, field: any, existingObject: any = {}) {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n const fieldValidations = field.validation.reduce(\n (validations: any, validation: any) => {\n switch (validation.type) {\n case \"required\":\n return validation.value\n ? validations.required(t(validation.msg_en)).test('not-empty', t(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true)\n : (field.field_properties?.is_multiselect ? validations.min(1, t(validation.msg_en)) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, t(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, t(validation.msg_en));\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n },\n getValidationType(field)\n );\n currentLevel[key] = fieldValidations;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }\n\n const getValidationType = (field: any) => {\n switch (field.field_type) {\n case 'select':\n return field.field_properties?.is_multiselect\n ? yup.array()\n : yup.string()\n\n case 'number':\n case 'currency':\n return yup.number().transform((value, originalValue) => (originalValue === '' ? undefined : value)).typeError('Please enter valid number').nullable()\n case 'currency_with_amount':\n return yup.number()\n case 'url':\n return yup.string().matches(/^(https?:\\/\\/)?((([a-zA-Z0-9_-]+\\.)+[a-zA-Z]{2,})|localhost)(:\\d{2,5})?(\\/[a-zA-Z0-9#_-]+\\/?)*(\\?[a-zA-Z0-9&=_-]+)?(#\\S+)?$/, { excludeEmptyString: true, message: \"Please enter valid URL.\" })\n\n default:\n return yup.string()\n }\n }\n\n const convertNestedFieldSchemaObject = (nestedFields: any) => {\n const schema: any = {};\n\n for (const key in nestedFields) {\n if (typeof nestedFields[key] === 'object' && !Object.hasOwn(nestedFields[key], 'tests')) {\n schema[key] = yup.object().shape(convertNestedFieldSchemaObject(nestedFields[key]));\n } else {\n schema[key] = nestedFields[key]\n }\n }\n return schema;\n }\n\n\n const generateValidationSchema = (data: any[]) => {\n const yupSchemaObject: any = {};\n let nestedFielvalidations: any = {},\n nestedYupSchemaObj: any = {};\n\n data &&\n data?.forEach((field: any) => {\n let fieldValidations: any;\n if (field.validation && field.validation.length > 0) {\n if (field.name?.includes(\".\")) {\n nestedFielvalidations = convertToNestedObject(field.name, field, nestedFielvalidations);\n } else {\n fieldValidations = field.validation.reduce((validations: any, validation: any) => validationReducer(validations, validation, field, t),\n getValidationType(field)\n );\n yupSchemaObject[field.name] = fieldValidations;\n }\n\n nestedYupSchemaObj = convertNestedFieldSchemaObject(nestedFielvalidations)\n }\n\n });\n\n return yup.object().shape({\n [fieldArrayName]: yup.object().shape({ ...yupSchemaObject, ...nestedYupSchemaObj }),\n });\n };\n\n const {\n control,\n handleSubmit,\n formState,\n setValue,\n reset,\n getValues,\n watch,\n resetField,\n unregister,\n trigger,\n getFieldState,\n ...rest\n } = useForm({\n ...(defaultValues && typeof defaultValues === 'object' ? { defaultValues } : {}),\n resolver: yupResolver(generateValidationSchema(data)),\n mode: \"all\",\n });\n\n const { errors } = formState;\n\n const watchedValues = useWatch({\n control,\n name: fieldArrayName,\n });\n\n // Local States\n const [schema, setSchema] = useState<[]>([]);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [errorAlert, setErrorAlert] = useState<boolean>(false);\n const [currencyOption, setCurrencyOptions] = useState<string>('');\n const [isTabFormValid, setTabFormValid] = useState<boolean>(false);\n const [validateRequiredFields, setValidRequiredFields] = useState<any[]>([]);\n\n // Local Functions\n const handleTableAddClick = (tableName?: string) => {\n onTableAddClick?.(tableName)\n }\n\n const getSectionData = useCallback((section: any) => {\n const sectionMembers = section?.members?.map((ele: any) => ele) || []\n const values = getValues(fieldArrayName)\n const isFormSwitcher = section.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const formSwitcherName =\n section?.form_switcher_name ||\n section?.form_switcher_label?.toLowerCase().split(\" \").join(\"_\");\n const switchForms = section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }));\n const selectedSectionForm =\n values?.[formSwitcherName] ?\n switchForms.find((ele: any) =>\n ele.name === values?.[formSwitcherName]\n ) : {};\n\n // When form switcher is active, include:\n // 1. Common fields (fields without section_form_id or is_form_switcher_section)\n // 2. Form-specific fields (fields with section_form_id matching the selected form)\n let members;\n if (isFormSwitcher) {\n const commonFields = sectionMembers.filter(\n (member: any) => !member.section_form_id && !member.is_form_switcher_section\n );\n const formSpecificFields = selectedSectionForm?.formMembers || [];\n members = [...commonFields, ...formSpecificFields];\n } else {\n members = section?.members;\n }\n\n return {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n selectedSectionForm,\n members,\n values\n }\n }, [fieldArrayName, getValues])\n\n const handleSetCountryCodeField = useCallback((country: CountryData, field: any, fieldArrayName: any, values: any) => {\n const oldVal = values?.[fieldArrayName]?.[field?.country_code_field_name]\n const newVal = `+${country.dialCode}`\n if (\n field?.is_country_code_separate &&\n field?.country_code_field_name &&\n oldVal !== newVal\n ) {\n setValue(\n `${fieldArrayName}.${field?.country_code_field_name}` as never,\n newVal as never\n )\n }\n }, [setValue])\n\n const handleFieldCleanUp = useCallback((switchForms: any) => {\n switchForms.forEach((form: any) => {\n form?.formMembers.forEach((member: any) => {\n const memberName = member?.name || member.label.toLowerCase().split(\" \").join(\"_\")\n const v = _.get(defaultValues, `${fieldArrayName}.${memberName}`, null)\n const newData = data.map((ele: any) => {\n if (member?.section_form_id === ele?.section_form_id) {\n delete ele.value\n }\n return ({\n ...ele,\n ...(v ? { value: v } : {}),\n })\n })\n if (!v) {\n resetField(`${fieldArrayName}.${memberName}` as never)\n unregister(`${fieldArrayName}.${memberName}` as never)\n }\n setFields?.(newData)\n })\n\n })\n }, [data, defaultValues, fieldArrayName, resetField, setFields, unregister])\n\n const createNestedObjectFromDot = useCallback((dotNotationString: string, field: any, existingObject: any = {}) => {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n let fieldValue = field.value\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field.field_type === 'date') {\n fieldValue = dayjs(fieldValue)\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n fieldValue = dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0)\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n fieldValue = Number(fieldValue)\n }\n }\n currentLevel[key] = fieldValue;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }, [])\n\n const removeMatchingKeyValuePairs = useCallback((obj1, obj2) => {\n _.forOwn(obj1, (value, key) => {\n if (_.has(obj2, key) && _.isEqual(value, obj2[key])) {\n delete obj1[key];\n }\n });\n return obj1;\n }, [])\n\n const validateRequiredSwitchFormData = useCallback((switchData: any) => {\n const requiredFields: string[] = [];\n if (switchData) {\n switchData && switchData[0]?.formMembers.forEach((member: any) => {\n if (member?.validation && Array.isArray(member?.validation)) {\n member?.validation.forEach((validation: any) => {\n if (validation?.thenValidations && Array.isArray(validation?.thenValidations)) {\n validation?.thenValidations.forEach((thenValidation: any) => {\n if (thenValidation?.type === \"required\" && thenValidation?.value === true) {\n if (member?.name) {\n requiredFields.push(member.name);\n }\n }\n });\n } else {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n requiredFields.push(member.name);\n }\n }\n });\n }\n });\n\n }\n if (requiredFields) {\n setValidRequiredFields(_.uniq(requiredFields))\n }\n\n }, [])\n\n const isEmpty = useCallback((value: any): boolean => {\n return (\n value === null ||\n value === undefined ||\n (Array.isArray(value) && value.length === 0) ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n );\n }, [])\n\n const getMissingFields = useCallback((watchedFields: any, validationReqFields: string[]): string[] => {\n const missingFields: string[] = [];\n\n validationReqFields.forEach((fieldPath) => {\n const keys = fieldPath.split(\".\");\n let currentLevel = watchedFields;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n\n if (!currentLevel?.[key] && currentLevel?.[key] !== 0) {\n // If any key in the path is missing, mark the field as missing\n missingFields.push(fieldPath);\n return;\n }\n\n // Move deeper into the object\n currentLevel = currentLevel[key];\n }\n\n // After navigating the full path, check if the final value is empty\n if (isEmpty(currentLevel)) {\n missingFields.push(fieldPath);\n }\n });\n\n\n return missingFields;\n }, [isEmpty])\n\n // Use Effects\n useEffect(() => {\n if (recieveTabDataLenght) {\n recieveTabDataLenght(tabsData.length)\n }\n }, [recieveTabDataLenght, tabsData])\n\n useEffect(() => {\n const handleMessage = (event: MessageEvent) => {\n if (event.origin !== window.origin) {\n return;\n }\n const { state } = event.data;\n\n if (state?.length) {\n const data: any = formBuilderDeConversion(state);\n\n if (data.tab) {\n setTabsData(data.tab);\n } else if (data.section) {\n setSchema(data.section);\n }\n }\n };\n\n window.addEventListener(\"message\", handleMessage);\n\n return () => {\n window.removeEventListener(\"message\", handleMessage);\n };\n }, []);\n\n useEffect(() => {\n if (data) {\n const formData = formBuilderDeConversion(data)\n if (formData?.tab) {\n // setSchema([])\n setTabsData(formData.tab);\n if (activeTab !== undefined) {\n setSchema(formData.tab[activeTab]?.data || []);\n }\n } else {\n setSchema(formData.section);\n // setTabsData([])\n }\n const dVals = _.get(defaultValues, fieldArrayName, {})\n const wVals = removeMatchingKeyValuePairs((watchedValues || {}), (dVals || {}))\n if (mode === 'edit' && !Object.keys(wVals)?.length) {\n let formValues: any = {};\n let nestedFormValues: any = {};\n data.forEach((field: any) => {\n const fieldValue = field.value\n if (field.name?.includes(\".\")) {\n nestedFormValues = createNestedObjectFromDot(field.name, field, nestedFormValues)\n } else {\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field?.is_section_field) {\n const fieldName = field?.form_switcher_name || field?.form_switcher_label;\n formValues = { ...formValues, [fieldName]: fieldValue }\n } else if (\n field?.name &&\n ['company_id', 'email_ids'].includes(field?.name) &&\n ['edit_customer', 'add_customer', 'edit_vendor', 'add_vendor'].includes(fieldArrayName)\n ) {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else if (field.field_type === 'date') {\n formValues = { ...formValues, [field.name]: dayjs(fieldValue) }\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n formValues = { ...formValues, [field.name]: dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0) }\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n if (fieldArrayName === \"edit_user\" && field.name === \"role_id\") {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else {\n formValues = { ...formValues, [field.name]: Number(fieldValue) }\n }\n } else {\n formValues = { ...formValues, [field.name]: fieldValue }\n }\n }\n }\n })\n const finalFormValues = { ...formValues, ...nestedFormValues }\n reset({ [fieldArrayName]: { ...finalFormValues } })\n }\n getFormMethods?.({ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, getFieldState, errors, ...rest })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [data])\n\n useEffect(() => {\n if (activeTab?.toString()) {\n if (tabsData && tabsData[activeTab]) {\n setSchema(tabsData[activeTab].data);\n }\n }\n }, [activeTab, tabsData]);\n\n useEffect(() => {\n if (watchedValues && handleFormValues) {\n handleFormValues?.(watchedValues);\n }\n }, [handleFormValues, watchedValues])\n\n useEffect(() => {\n if (errors?.[fieldArrayName]) {\n setErrorAlert(true)\n } else {\n setErrorAlert(false)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fieldArrayName, JSON.stringify(errors)])\n\n useEffect(() => {\n const validatedFields: string[] = [];\n if (activeTab != undefined) {\n tabsData[activeTab]?.data.forEach((section: any) => {\n\n if (section.members && Array.isArray(section.members)) {\n\n section.members.forEach((member: any) => {\n if (member.validation && Array.isArray(member.validation)) {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n // validatedFields.push(fieldArrayName + '.' + member.name);\n validatedFields.push(member.name);\n }\n }\n });\n }\n })\n setValidRequiredFields(validatedFields);\n }\n }, [tabsData, activeTab]);\n\n useEffect(() => {\n if (watchedValues?.account_type) {\n\n const switchFormData: any[] = [];\n schema && schema.forEach((section: any) => {\n const sectionMembers = schema && section?.members?.map((ele: any) => ele) || [];\n\n const switchForms = schema && section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n ),\n }));\n if (switchForms) {\n switchFormData.push(switchForms)\n }\n })\n\n const selectValue = watchedValues?.account_type || \"Individual\";\n const switchData = switchFormData && Array.isArray(switchFormData[0])\n ? switchFormData[0].filter((form: any) => form.name === selectValue)\n : [];\n\n if (switchData) {\n validateRequiredSwitchFormData(switchData)\n }\n\n }\n }, [watchedValues?.account_type, schema, validateRequiredSwitchFormData]);\n\n useEffect(() => {\n if (validateRequiredFields.length > 0) {\n const updatedRequiredFields = getMissingFields(watchedValues, validateRequiredFields)\n\n // const updatedRequiredFields = validateRequiredFields.filter((fieldPath) => {\n // const watchedValue = watchedFields[fieldPath] ;\n // return watchedValue === undefined || watchedValue === null || watchedValue === 0 ;\n // });\n\n updatedRequiredFields.length === 0 ? setTabFormValid(true) : setTabFormValid(false);\n } else {\n setTabFormValid(true)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [validateRequiredFields, watchedValues, activeTab])\n\n useEffect(() => {\n if (recieveIsValidForm) {\n recieveIsValidForm(isTabFormValid)\n }\n }, [recieveIsValidForm, isTabFormValid])\n\n\n return (\n // <FullScreenLayout>\n <Box sx={{ width: \"100%\", padding: \"2rem\", ...containerStyles }}>\n <FormProvider {...{ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, errors, getFieldState, formState, ...rest }}>\n <form id={fieldArrayName} name={fieldArrayName} onSubmit={handleSubmit(handleFormSubmit)}>\n {Boolean(tabsData?.length) && (\n <>\n {errorAlert &&\n <Alert severity='error' onClose={() => setErrorAlert(false)}>\n Please fill all the required fields.\n </Alert>\n }\n <TabBar\n tabs={tabsData}\n activeTabs={activeTabs}\n activeValue={activeTab}\n setActiveValue={setActiveTabValue}\n isFormTabValid={isTabFormValid}\n />\n </>\n )}\n {schema &&\n schema.map((section: any, index: number) => {\n const {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n members,\n values,\n } = getSectionData(section)\n\n return (\n <FormSection\n section={section}\n index={index}\n members={members}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n displayAvtar={displayAvtar}\n isButton={isButton}\n currencyOption={currencyOption}\n values={values}\n onBlur={onBlur}\n setValue={setValue}\n onSelectFooterClick={onSelectFooterClick}\n getSelectedData={getSelectedData}\n setCurrencyOptions={setCurrencyOptions}\n refreshOptions={refreshOptions}\n handleFieldCleanUp={handleFieldCleanUp}\n handleSetCountryCodeField={handleSetCountryCodeField}\n handleTableAddClick={handleTableAddClick}\n onTableCellChange={onTableCellChange}\n // setDetailsData={setDetailsData}\n t={t}\n images={images}\n />\n );\n })}\n </form>\n </FormProvider>\n </Box>\n // </FullScreenLayout>\n );\n};\n\nexport default FormParser;\n"],"names":["_a","validations","validation","useTranslation","yup","schema","data","useForm","yupResolver","useWatch","useState","useCallback","SECTION_TYPES","fieldArrayName","useEffect","formBuilderDeConversion","Box","jsx","FormProvider","jsxs","Fragment","Alert","TabBar","FormSection","images"],"mappings":"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"}
1
+ {"version":3,"file":"form-parser-BnMdMDSb.js","sources":["../../src/components/form-control/form-parser/form-parser.tsx"],"sourcesContent":["import { FormProvider, useForm, useWatch } from \"react-hook-form\";\n// import { useLocation } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\n\n// import FullScreenLayout from \"../../../layout/fullScreen/fullScreen\";\n\nimport { useState, useEffect, useCallback } from \"react\";\nimport images from \"../../../assets/images\";\nimport \"./form-parser.scss\";\nimport TabBar from \"../../tabs/tabs\";\nimport formBuilderDeConversion from \"../../../utils/form-builder-deconversion\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport * as yup from \"yup\";\nimport dayjs from \"dayjs\";\nimport { SECTION_TYPES } from '../../../utils/constant';\nimport { CountryData } from 'react-phone-input-2';\nimport Alert from '../../alert/alert';\nimport _ from \"lodash\";\nimport { useTranslation } from \"react-i18next\";\nimport FormSection from \"./form-section\";\nconst validationReducer = (validations: any, validation: any, field: any, translationFn: any) => {\n switch (validation.type) {\n case \"required\":\n return (field.field_properties?.is_multiselect ? validations.required(translationFn(validation.msg_en)).min(1, translationFn(validation.msg_en)) : validation.value\n ? validations.required(translationFn(validation.msg_en)).test('not-empty', translationFn(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"postive_number\":\n return validations.test('is-positive-number', translationFn(validation.msg_en), (value) => value >= 0)\n case 'email':\n return validations.email(validation.msg_en);\n case \"no_special_char\":\n return validations.test(\n \"no-special-char\",\n translationFn(validation.msg_en),\n value =>\n typeof value === \"string\"\n ? /^[^.\\-\\W_]+$/u.test(value) // allow letters/digits only\n : true\n );\n case \"matches\":\n return validations.matches(new RegExp(validation.value), { excludeEmptyString: true, message: translationFn(validation.msg_en) });\n case \"when\":\n return validations.when(validation.relation, {\n is: (val: any) => val === validation.values,\n then: () => validation?.thenValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n otherwise: () => validation?.otherWiseValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n });\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n}\n\nconst FormParser = ({\n data,\n defaultValues,\n handleFormSubmit,\n fieldArrayName,\n mode,\n displayAvtar = false,\n onTableAddClick,\n handleFormValues,\n getFormMethods,\n setFields,\n onSelectFooterClick,\n setActiveTabValue,\n activeTab = 0,\n recieveTabDataLenght,\n recieveIsValidForm,\n activeTabs,\n onTableCellChange,\n containerStyles = undefined,\n isButton = true,\n getSelectedData,\n refreshOptions = false,\n onBlur,\n}: any) => {\n\n const { t } = useTranslation();\n\n function convertToNestedObject(dotNotationString: string, field: any, existingObject: any = {}) {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n const fieldValidations = field.validation.reduce(\n (validations: any, validation: any) => {\n switch (validation.type) {\n case \"required\":\n return validation.value\n ? validations.required(t(validation.msg_en)).test('not-empty', t(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true)\n : (field.field_properties?.is_multiselect ? validations.min(1, t(validation.msg_en)) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, t(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, t(validation.msg_en));\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n },\n getValidationType(field)\n );\n currentLevel[key] = fieldValidations;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }\n\n const getValidationType = (field: any) => {\n switch (field.field_type) {\n case 'select':\n return field.field_properties?.is_multiselect\n ? yup.array()\n : yup.string()\n\n case 'number':\n case 'currency':\n return yup.number().transform((value, originalValue) => (originalValue === '' ? undefined : value)).typeError('Please enter valid number').nullable()\n case 'currency_with_amount':\n return yup.number()\n case 'url':\n return yup.string().matches(/^(https?:\\/\\/)?((([a-zA-Z0-9_-]+\\.)+[a-zA-Z]{2,})|localhost)(:\\d{2,5})?(\\/[a-zA-Z0-9#_-]+\\/?)*(\\?[a-zA-Z0-9&=_-]+)?(#\\S+)?$/, { excludeEmptyString: true, message: \"Please enter valid URL.\" })\n\n default:\n return yup.string()\n }\n }\n\n const convertNestedFieldSchemaObject = (nestedFields: any) => {\n const schema: any = {};\n\n for (const key in nestedFields) {\n if (typeof nestedFields[key] === 'object' && !Object.hasOwn(nestedFields[key], 'tests')) {\n schema[key] = yup.object().shape(convertNestedFieldSchemaObject(nestedFields[key]));\n } else {\n schema[key] = nestedFields[key]\n }\n }\n return schema;\n }\n\n\n const generateValidationSchema = (data: any[]) => {\n const yupSchemaObject: any = {};\n let nestedFielvalidations: any = {},\n nestedYupSchemaObj: any = {};\n\n data &&\n data?.forEach((field: any) => {\n let fieldValidations: any;\n if (field.validation && field.validation.length > 0) {\n if (field.name?.includes(\".\")) {\n nestedFielvalidations = convertToNestedObject(field.name, field, nestedFielvalidations);\n } else {\n fieldValidations = field.validation.reduce((validations: any, validation: any) => validationReducer(validations, validation, field, t),\n getValidationType(field)\n );\n yupSchemaObject[field.name] = fieldValidations;\n }\n\n nestedYupSchemaObj = convertNestedFieldSchemaObject(nestedFielvalidations)\n }\n\n });\n\n return yup.object().shape({\n [fieldArrayName]: yup.object().shape({ ...yupSchemaObject, ...nestedYupSchemaObj }),\n });\n };\n\n const {\n control,\n handleSubmit,\n formState,\n setValue,\n reset,\n getValues,\n watch,\n resetField,\n unregister,\n trigger,\n getFieldState,\n ...rest\n } = useForm({\n ...(defaultValues && typeof defaultValues === 'object' ? { defaultValues } : {}),\n resolver: yupResolver(generateValidationSchema(data)),\n mode: \"all\",\n });\n\n const { errors } = formState;\n\n const watchedValues = useWatch({\n control,\n name: fieldArrayName,\n });\n\n // Local States\n const [schema, setSchema] = useState<[]>([]);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [errorAlert, setErrorAlert] = useState<boolean>(false);\n const [currencyOption, setCurrencyOptions] = useState<string>('');\n const [isTabFormValid, setTabFormValid] = useState<boolean>(false);\n const [validateRequiredFields, setValidRequiredFields] = useState<any[]>([]);\n\n // Local Functions\n const handleTableAddClick = (tableName?: string) => {\n onTableAddClick?.(tableName)\n }\n\n const getSectionData = useCallback((section: any) => {\n const sectionMembers = section?.members?.map((ele: any) => ele) || []\n const values = getValues(fieldArrayName)\n const isFormSwitcher = section.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const formSwitcherName =\n section?.form_switcher_name ||\n section?.form_switcher_label?.toLowerCase().split(\" \").join(\"_\");\n const switchForms = section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }));\n const selectedSectionForm =\n values?.[formSwitcherName] ?\n switchForms.find((ele: any) =>\n ele.name === values?.[formSwitcherName]\n ) : {};\n\n // When form switcher is active, include:\n // 1. Common fields (fields without section_form_id or is_form_switcher_section)\n // 2. Form-specific fields (fields with section_form_id matching the selected form)\n let members;\n if (isFormSwitcher) {\n const commonFields = sectionMembers.filter(\n (member: any) => !member.section_form_id && !member.is_form_switcher_section\n );\n const formSpecificFields = selectedSectionForm?.formMembers || [];\n members = [...commonFields, ...formSpecificFields];\n } else {\n members = section?.members;\n }\n\n return {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n selectedSectionForm,\n members,\n values\n }\n }, [fieldArrayName, getValues])\n\n const handleSetCountryCodeField = useCallback((country: CountryData, field: any, fieldArrayName: any, values: any) => {\n const oldVal = values?.[fieldArrayName]?.[field?.country_code_field_name]\n const newVal = `+${country.dialCode}`\n if (\n field?.is_country_code_separate &&\n field?.country_code_field_name &&\n oldVal !== newVal\n ) {\n setValue(\n `${fieldArrayName}.${field?.country_code_field_name}` as never,\n newVal as never\n )\n }\n }, [setValue])\n\n const handleFieldCleanUp = useCallback((switchForms: any) => {\n switchForms.forEach((form: any) => {\n form?.formMembers.forEach((member: any) => {\n const memberName = member?.name || member.label.toLowerCase().split(\" \").join(\"_\")\n const v = _.get(defaultValues, `${fieldArrayName}.${memberName}`, null)\n const newData = data.map((ele: any) => {\n if (member?.section_form_id === ele?.section_form_id) {\n delete ele.value\n }\n return ({\n ...ele,\n ...(v ? { value: v } : {}),\n })\n })\n if (!v) {\n resetField(`${fieldArrayName}.${memberName}` as never)\n unregister(`${fieldArrayName}.${memberName}` as never)\n }\n setFields?.(newData)\n })\n\n })\n }, [data, defaultValues, fieldArrayName, resetField, setFields, unregister])\n\n const createNestedObjectFromDot = useCallback((dotNotationString: string, field: any, existingObject: any = {}) => {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n let fieldValue = field.value\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field.field_type === 'date') {\n fieldValue = dayjs(fieldValue)\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n fieldValue = dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0)\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n fieldValue = Number(fieldValue)\n }\n }\n currentLevel[key] = fieldValue;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }, [])\n\n const removeMatchingKeyValuePairs = useCallback((obj1, obj2) => {\n _.forOwn(obj1, (value, key) => {\n if (_.has(obj2, key) && _.isEqual(value, obj2[key])) {\n delete obj1[key];\n }\n });\n return obj1;\n }, [])\n\n const validateRequiredSwitchFormData = useCallback((switchData: any) => {\n const requiredFields: string[] = [];\n if (switchData) {\n switchData && switchData[0]?.formMembers.forEach((member: any) => {\n if (member?.validation && Array.isArray(member?.validation)) {\n member?.validation.forEach((validation: any) => {\n if (validation?.thenValidations && Array.isArray(validation?.thenValidations)) {\n validation?.thenValidations.forEach((thenValidation: any) => {\n if (thenValidation?.type === \"required\" && thenValidation?.value === true) {\n if (member?.name) {\n requiredFields.push(member.name);\n }\n }\n });\n } else {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n requiredFields.push(member.name);\n }\n }\n });\n }\n });\n\n }\n if (requiredFields) {\n setValidRequiredFields(_.uniq(requiredFields))\n }\n\n }, [])\n\n const isEmpty = useCallback((value: any): boolean => {\n return (\n value === null ||\n value === undefined ||\n (Array.isArray(value) && value.length === 0) ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n );\n }, [])\n\n const getMissingFields = useCallback((watchedFields: any, validationReqFields: string[]): string[] => {\n const missingFields: string[] = [];\n\n validationReqFields.forEach((fieldPath) => {\n const keys = fieldPath.split(\".\");\n let currentLevel = watchedFields;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n\n if (!currentLevel?.[key] && currentLevel?.[key] !== 0) {\n // If any key in the path is missing, mark the field as missing\n missingFields.push(fieldPath);\n return;\n }\n\n // Move deeper into the object\n currentLevel = currentLevel[key];\n }\n\n // After navigating the full path, check if the final value is empty\n if (isEmpty(currentLevel)) {\n missingFields.push(fieldPath);\n }\n });\n\n\n return missingFields;\n }, [isEmpty])\n\n // Use Effects\n useEffect(() => {\n if (recieveTabDataLenght) {\n recieveTabDataLenght(tabsData.length)\n }\n }, [recieveTabDataLenght, tabsData])\n\n useEffect(() => {\n const handleMessage = (event: MessageEvent) => {\n if (event.origin !== window.origin) {\n return;\n }\n const { state } = event.data;\n\n if (state?.length) {\n const data: any = formBuilderDeConversion(state);\n\n if (data.tab) {\n setTabsData(data.tab);\n } else if (data.section) {\n setSchema(data.section);\n }\n }\n };\n\n window.addEventListener(\"message\", handleMessage);\n\n return () => {\n window.removeEventListener(\"message\", handleMessage);\n };\n }, []);\n\n useEffect(() => {\n if (data) {\n const formData = formBuilderDeConversion(data)\n if (formData?.tab) {\n // setSchema([])\n setTabsData(formData.tab);\n if (activeTab !== undefined) {\n setSchema(formData.tab[activeTab]?.data || []);\n }\n } else {\n setSchema(formData.section);\n // setTabsData([])\n }\n const dVals = _.get(defaultValues, fieldArrayName, {})\n const wVals = removeMatchingKeyValuePairs((watchedValues || {}), (dVals || {}))\n if (mode === 'edit' && !Object.keys(wVals)?.length) {\n let formValues: any = {};\n let nestedFormValues: any = {};\n data.forEach((field: any) => {\n const fieldValue = field.value\n if (field.name?.includes(\".\")) {\n nestedFormValues = createNestedObjectFromDot(field.name, field, nestedFormValues)\n } else {\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field?.is_section_field) {\n const fieldName = field?.form_switcher_name || field?.form_switcher_label;\n formValues = { ...formValues, [fieldName]: fieldValue }\n } else if (\n field?.name &&\n ['company_id', 'email_ids'].includes(field?.name) &&\n ['edit_customer', 'add_customer', 'edit_vendor', 'add_vendor'].includes(fieldArrayName)\n ) {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else if (field.field_type === 'date') {\n formValues = { ...formValues, [field.name]: dayjs(fieldValue) }\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n formValues = { ...formValues, [field.name]: dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0) }\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n if (fieldArrayName === \"edit_user\" && field.name === \"role_id\") {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else {\n formValues = { ...formValues, [field.name]: Number(fieldValue) }\n }\n } else {\n formValues = { ...formValues, [field.name]: fieldValue }\n }\n }\n }\n })\n const finalFormValues = { ...formValues, ...nestedFormValues }\n reset({ [fieldArrayName]: { ...finalFormValues } })\n }\n getFormMethods?.({ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, getFieldState, errors, ...rest })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [data])\n\n useEffect(() => {\n if (activeTab?.toString()) {\n if (tabsData && tabsData[activeTab]) {\n setSchema(tabsData[activeTab].data);\n }\n }\n }, [activeTab, tabsData]);\n\n useEffect(() => {\n if (watchedValues && handleFormValues) {\n handleFormValues?.(watchedValues);\n }\n }, [handleFormValues, watchedValues])\n\n useEffect(() => {\n if (errors?.[fieldArrayName]) {\n setErrorAlert(true)\n } else {\n setErrorAlert(false)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fieldArrayName, JSON.stringify(errors)])\n\n useEffect(() => {\n const validatedFields: string[] = [];\n if (activeTab != undefined) {\n tabsData[activeTab]?.data.forEach((section: any) => {\n\n if (section.members && Array.isArray(section.members)) {\n\n section.members.forEach((member: any) => {\n if (member.validation && Array.isArray(member.validation)) {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n // validatedFields.push(fieldArrayName + '.' + member.name);\n validatedFields.push(member.name);\n }\n }\n });\n }\n })\n setValidRequiredFields(validatedFields);\n }\n }, [tabsData, activeTab]);\n\n useEffect(() => {\n if (watchedValues?.account_type) {\n\n const switchFormData: any[] = [];\n schema && schema.forEach((section: any) => {\n const sectionMembers = schema && section?.members?.map((ele: any) => ele) || [];\n\n const switchForms = schema && section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n ),\n }));\n if (switchForms) {\n switchFormData.push(switchForms)\n }\n })\n\n const selectValue = watchedValues?.account_type || \"Individual\";\n const switchData = switchFormData && Array.isArray(switchFormData[0])\n ? switchFormData[0].filter((form: any) => form.name === selectValue)\n : [];\n\n if (switchData) {\n validateRequiredSwitchFormData(switchData)\n }\n\n }\n }, [watchedValues?.account_type, schema, validateRequiredSwitchFormData]);\n\n useEffect(() => {\n if (validateRequiredFields.length > 0) {\n const updatedRequiredFields = getMissingFields(watchedValues, validateRequiredFields)\n\n // const updatedRequiredFields = validateRequiredFields.filter((fieldPath) => {\n // const watchedValue = watchedFields[fieldPath] ;\n // return watchedValue === undefined || watchedValue === null || watchedValue === 0 ;\n // });\n\n updatedRequiredFields.length === 0 ? setTabFormValid(true) : setTabFormValid(false);\n } else {\n setTabFormValid(true)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [validateRequiredFields, watchedValues, activeTab])\n\n useEffect(() => {\n if (recieveIsValidForm) {\n recieveIsValidForm(isTabFormValid)\n }\n }, [recieveIsValidForm, isTabFormValid])\n\n\n return (\n // <FullScreenLayout>\n <Box sx={{ width: \"100%\", padding: \"2rem\", ...containerStyles }}>\n <FormProvider {...{ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, errors, getFieldState, formState, ...rest }}>\n <form id={fieldArrayName} name={fieldArrayName} onSubmit={handleSubmit(handleFormSubmit)}>\n {Boolean(tabsData?.length) && (\n <>\n {errorAlert &&\n <Alert severity='error' onClose={() => setErrorAlert(false)}>\n Please fill all the required fields.\n </Alert>\n }\n <TabBar\n tabs={tabsData}\n activeTabs={activeTabs}\n activeValue={activeTab}\n setActiveValue={setActiveTabValue}\n isFormTabValid={isTabFormValid}\n />\n </>\n )}\n {schema &&\n schema.map((section: any, index: number) => {\n const {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n members,\n values,\n } = getSectionData(section)\n\n return (\n <FormSection\n section={section}\n index={index}\n members={members}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n displayAvtar={displayAvtar}\n isButton={isButton}\n currencyOption={currencyOption}\n values={values}\n onBlur={onBlur}\n setValue={setValue}\n onSelectFooterClick={onSelectFooterClick}\n getSelectedData={getSelectedData}\n setCurrencyOptions={setCurrencyOptions}\n refreshOptions={refreshOptions}\n handleFieldCleanUp={handleFieldCleanUp}\n handleSetCountryCodeField={handleSetCountryCodeField}\n handleTableAddClick={handleTableAddClick}\n onTableCellChange={onTableCellChange}\n // setDetailsData={setDetailsData}\n t={t}\n images={images}\n />\n );\n })}\n </form>\n </FormProvider>\n </Box>\n // </FullScreenLayout>\n );\n};\n\nexport default FormParser;\n"],"names":["_a","validations","validation","useTranslation","yup","schema","data","useForm","yupResolver","useWatch","useState","useCallback","SECTION_TYPES","fieldArrayName","useEffect","formBuilderDeConversion","Box","jsx","FormProvider","jsxs","Fragment","Alert","TabBar","FormSection","images"],"mappings":"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"}
@@ -13,7 +13,7 @@ import { SECTION_TYPES } from "../utils/constant/index.esm.js";
13
13
  import { A as Alert } from "./alert-DSvNY_5z.esm.js";
14
14
  import _ from "lodash";
15
15
  import { useTranslation } from "react-i18next";
16
- import { F as FormSection } from "./form-section-TMjdOVeW.esm.js";
16
+ import { F as FormSection } from "./form-section-BJ7Iqb9R.esm.js";
17
17
  const validationReducer = (validations, validation, field, translationFn) => {
18
18
  var _a;
19
19
  switch (validation.type) {
@@ -588,4 +588,4 @@ const FormParser = ({
588
588
  export {
589
589
  FormParser as F
590
590
  };
591
- //# sourceMappingURL=form-parser-DbnSn5eY.esm.js.map
591
+ //# sourceMappingURL=form-parser-ZQpEVrzG.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-parser-DbnSn5eY.esm.js","sources":["../../src/components/form-control/form-parser/form-parser.tsx"],"sourcesContent":["import { FormProvider, useForm, useWatch } from \"react-hook-form\";\n// import { useLocation } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\n\n// import FullScreenLayout from \"../../../layout/fullScreen/fullScreen\";\n\nimport { useState, useEffect, useCallback } from \"react\";\nimport images from \"../../../assets/images\";\nimport \"./form-parser.scss\";\nimport TabBar from \"../../tabs/tabs\";\nimport formBuilderDeConversion from \"../../../utils/form-builder-deconversion\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport * as yup from \"yup\";\nimport dayjs from \"dayjs\";\nimport { SECTION_TYPES } from '../../../utils/constant';\nimport { CountryData } from 'react-phone-input-2';\nimport Alert from '../../alert/alert';\nimport _ from \"lodash\";\nimport { useTranslation } from \"react-i18next\";\nimport FormSection from \"./form-section\";\nconst validationReducer = (validations: any, validation: any, field: any, translationFn: any) => {\n switch (validation.type) {\n case \"required\":\n return (field.field_properties?.is_multiselect ? validations.required(translationFn(validation.msg_en)).min(1, translationFn(validation.msg_en)) : validation.value\n ? validations.required(translationFn(validation.msg_en)).test('not-empty', translationFn(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"postive_number\":\n return validations.test('is-positive-number', translationFn(validation.msg_en), (value) => value >= 0)\n case 'email':\n return validations.email(validation.msg_en);\n case \"no_special_char\":\n return validations.test(\n \"no-special-char\",\n translationFn(validation.msg_en),\n value =>\n typeof value === \"string\"\n ? /^[^.\\-\\W_]+$/u.test(value) // allow letters/digits only\n : true\n );\n case \"matches\":\n return validations.matches(new RegExp(validation.value), { excludeEmptyString: true, message: translationFn(validation.msg_en) });\n case \"when\":\n return validations.when(validation.relation, {\n is: (val: any) => val === validation.values,\n then: () => validation?.thenValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n otherwise: () => validation?.otherWiseValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n });\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n}\n\nconst FormParser = ({\n data,\n defaultValues,\n handleFormSubmit,\n fieldArrayName,\n mode,\n displayAvtar = false,\n onTableAddClick,\n handleFormValues,\n getFormMethods,\n setFields,\n onSelectFooterClick,\n setActiveTabValue,\n activeTab = 0,\n recieveTabDataLenght,\n recieveIsValidForm,\n activeTabs,\n onTableCellChange,\n containerStyles = undefined,\n isButton = true,\n getSelectedData,\n refreshOptions = false,\n onBlur,\n}: any) => {\n\n const { t } = useTranslation();\n\n function convertToNestedObject(dotNotationString: string, field: any, existingObject: any = {}) {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n const fieldValidations = field.validation.reduce(\n (validations: any, validation: any) => {\n switch (validation.type) {\n case \"required\":\n return validation.value\n ? validations.required(t(validation.msg_en)).test('not-empty', t(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true)\n : (field.field_properties?.is_multiselect ? validations.min(1, t(validation.msg_en)) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, t(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, t(validation.msg_en));\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n },\n getValidationType(field)\n );\n currentLevel[key] = fieldValidations;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }\n\n const getValidationType = (field: any) => {\n switch (field.field_type) {\n case 'select':\n return field.field_properties?.is_multiselect\n ? yup.array()\n : yup.string()\n\n case 'number':\n case 'currency':\n return yup.number().transform((value, originalValue) => (originalValue === '' ? undefined : value)).typeError('Please enter valid number').nullable()\n case 'currency_with_amount':\n return yup.number()\n case 'url':\n return yup.string().matches(/^(https?:\\/\\/)?((([a-zA-Z0-9_-]+\\.)+[a-zA-Z]{2,})|localhost)(:\\d{2,5})?(\\/[a-zA-Z0-9#_-]+\\/?)*(\\?[a-zA-Z0-9&=_-]+)?(#\\S+)?$/, { excludeEmptyString: true, message: \"Please enter valid URL.\" })\n\n default:\n return yup.string()\n }\n }\n\n const convertNestedFieldSchemaObject = (nestedFields: any) => {\n const schema: any = {};\n\n for (const key in nestedFields) {\n if (typeof nestedFields[key] === 'object' && !Object.hasOwn(nestedFields[key], 'tests')) {\n schema[key] = yup.object().shape(convertNestedFieldSchemaObject(nestedFields[key]));\n } else {\n schema[key] = nestedFields[key]\n }\n }\n return schema;\n }\n\n\n const generateValidationSchema = (data: any[]) => {\n const yupSchemaObject: any = {};\n let nestedFielvalidations: any = {},\n nestedYupSchemaObj: any = {};\n\n data &&\n data?.forEach((field: any) => {\n let fieldValidations: any;\n if (field.validation && field.validation.length > 0) {\n if (field.name?.includes(\".\")) {\n nestedFielvalidations = convertToNestedObject(field.name, field, nestedFielvalidations);\n } else {\n fieldValidations = field.validation.reduce((validations: any, validation: any) => validationReducer(validations, validation, field, t),\n getValidationType(field)\n );\n yupSchemaObject[field.name] = fieldValidations;\n }\n\n nestedYupSchemaObj = convertNestedFieldSchemaObject(nestedFielvalidations)\n }\n\n });\n\n return yup.object().shape({\n [fieldArrayName]: yup.object().shape({ ...yupSchemaObject, ...nestedYupSchemaObj }),\n });\n };\n\n const {\n control,\n handleSubmit,\n formState,\n setValue,\n reset,\n getValues,\n watch,\n resetField,\n unregister,\n trigger,\n getFieldState,\n ...rest\n } = useForm({\n ...(defaultValues && typeof defaultValues === 'object' ? { defaultValues } : {}),\n resolver: yupResolver(generateValidationSchema(data)),\n mode: \"all\",\n });\n\n const { errors } = formState;\n\n const watchedValues = useWatch({\n control,\n name: fieldArrayName,\n });\n\n // Local States\n const [schema, setSchema] = useState<[]>([]);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [errorAlert, setErrorAlert] = useState<boolean>(false);\n const [currencyOption, setCurrencyOptions] = useState<string>('');\n const [isTabFormValid, setTabFormValid] = useState<boolean>(false);\n const [validateRequiredFields, setValidRequiredFields] = useState<any[]>([]);\n\n // Local Functions\n const handleTableAddClick = (tableName?: string) => {\n onTableAddClick?.(tableName)\n }\n\n const getSectionData = useCallback((section: any) => {\n const sectionMembers = section?.members?.map((ele: any) => ele) || []\n const values = getValues(fieldArrayName)\n const isFormSwitcher = section.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const formSwitcherName =\n section?.form_switcher_name ||\n section?.form_switcher_label?.toLowerCase().split(\" \").join(\"_\");\n const switchForms = section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }));\n const selectedSectionForm =\n values?.[formSwitcherName] ?\n switchForms.find((ele: any) =>\n ele.name === values?.[formSwitcherName]\n ) : {};\n\n // When form switcher is active, include:\n // 1. Common fields (fields without section_form_id or is_form_switcher_section)\n // 2. Form-specific fields (fields with section_form_id matching the selected form)\n let members;\n if (isFormSwitcher) {\n const commonFields = sectionMembers.filter(\n (member: any) => !member.section_form_id && !member.is_form_switcher_section\n );\n const formSpecificFields = selectedSectionForm?.formMembers || [];\n members = [...commonFields, ...formSpecificFields];\n } else {\n members = section?.members;\n }\n\n return {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n selectedSectionForm,\n members,\n values\n }\n }, [fieldArrayName, getValues])\n\n const handleSetCountryCodeField = useCallback((country: CountryData, field: any, fieldArrayName: any, values: any) => {\n const oldVal = values?.[fieldArrayName]?.[field?.country_code_field_name]\n const newVal = `+${country.dialCode}`\n if (\n field?.is_country_code_separate &&\n field?.country_code_field_name &&\n oldVal !== newVal\n ) {\n setValue(\n `${fieldArrayName}.${field?.country_code_field_name}` as never,\n newVal as never\n )\n }\n }, [setValue])\n\n const handleFieldCleanUp = useCallback((switchForms: any) => {\n switchForms.forEach((form: any) => {\n form?.formMembers.forEach((member: any) => {\n const memberName = member?.name || member.label.toLowerCase().split(\" \").join(\"_\")\n const v = _.get(defaultValues, `${fieldArrayName}.${memberName}`, null)\n const newData = data.map((ele: any) => {\n if (member?.section_form_id === ele?.section_form_id) {\n delete ele.value\n }\n return ({\n ...ele,\n ...(v ? { value: v } : {}),\n })\n })\n if (!v) {\n resetField(`${fieldArrayName}.${memberName}` as never)\n unregister(`${fieldArrayName}.${memberName}` as never)\n }\n setFields?.(newData)\n })\n\n })\n }, [data, defaultValues, fieldArrayName, resetField, setFields, unregister])\n\n const createNestedObjectFromDot = useCallback((dotNotationString: string, field: any, existingObject: any = {}) => {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n let fieldValue = field.value\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field.field_type === 'date') {\n fieldValue = dayjs(fieldValue)\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n fieldValue = dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0)\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n fieldValue = Number(fieldValue)\n }\n }\n currentLevel[key] = fieldValue;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }, [])\n\n const removeMatchingKeyValuePairs = useCallback((obj1, obj2) => {\n _.forOwn(obj1, (value, key) => {\n if (_.has(obj2, key) && _.isEqual(value, obj2[key])) {\n delete obj1[key];\n }\n });\n return obj1;\n }, [])\n\n const validateRequiredSwitchFormData = useCallback((switchData: any) => {\n const requiredFields: string[] = [];\n if (switchData) {\n switchData && switchData[0]?.formMembers.forEach((member: any) => {\n if (member?.validation && Array.isArray(member?.validation)) {\n member?.validation.forEach((validation: any) => {\n if (validation?.thenValidations && Array.isArray(validation?.thenValidations)) {\n validation?.thenValidations.forEach((thenValidation: any) => {\n if (thenValidation?.type === \"required\" && thenValidation?.value === true) {\n if (member?.name) {\n requiredFields.push(member.name);\n }\n }\n });\n } else {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n requiredFields.push(member.name);\n }\n }\n });\n }\n });\n\n }\n if (requiredFields) {\n setValidRequiredFields(_.uniq(requiredFields))\n }\n\n }, [])\n\n const isEmpty = useCallback((value: any): boolean => {\n return (\n value === null ||\n value === undefined ||\n (Array.isArray(value) && value.length === 0) ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n );\n }, [])\n\n const getMissingFields = useCallback((watchedFields: any, validationReqFields: string[]): string[] => {\n const missingFields: string[] = [];\n\n validationReqFields.forEach((fieldPath) => {\n const keys = fieldPath.split(\".\");\n let currentLevel = watchedFields;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n\n if (!currentLevel?.[key] && currentLevel?.[key] !== 0) {\n // If any key in the path is missing, mark the field as missing\n missingFields.push(fieldPath);\n return;\n }\n\n // Move deeper into the object\n currentLevel = currentLevel[key];\n }\n\n // After navigating the full path, check if the final value is empty\n if (isEmpty(currentLevel)) {\n missingFields.push(fieldPath);\n }\n });\n\n\n return missingFields;\n }, [isEmpty])\n\n // Use Effects\n useEffect(() => {\n if (recieveTabDataLenght) {\n recieveTabDataLenght(tabsData.length)\n }\n }, [recieveTabDataLenght, tabsData])\n\n useEffect(() => {\n const handleMessage = (event: MessageEvent) => {\n if (event.origin !== window.origin) {\n return;\n }\n const { state } = event.data;\n\n if (state?.length) {\n const data: any = formBuilderDeConversion(state);\n\n if (data.tab) {\n setTabsData(data.tab);\n } else if (data.section) {\n setSchema(data.section);\n }\n }\n };\n\n window.addEventListener(\"message\", handleMessage);\n\n return () => {\n window.removeEventListener(\"message\", handleMessage);\n };\n }, []);\n\n useEffect(() => {\n if (data) {\n const formData = formBuilderDeConversion(data)\n if (formData?.tab) {\n // setSchema([])\n setTabsData(formData.tab);\n if (activeTab !== undefined) {\n setSchema(formData.tab[activeTab]?.data || []);\n }\n } else {\n setSchema(formData.section);\n // setTabsData([])\n }\n const dVals = _.get(defaultValues, fieldArrayName, {})\n const wVals = removeMatchingKeyValuePairs((watchedValues || {}), (dVals || {}))\n if (mode === 'edit' && !Object.keys(wVals)?.length) {\n let formValues: any = {};\n let nestedFormValues: any = {};\n data.forEach((field: any) => {\n const fieldValue = field.value\n if (field.name?.includes(\".\")) {\n nestedFormValues = createNestedObjectFromDot(field.name, field, nestedFormValues)\n } else {\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field?.is_section_field) {\n const fieldName = field?.form_switcher_name || field?.form_switcher_label;\n formValues = { ...formValues, [fieldName]: fieldValue }\n } else if (\n field?.name &&\n ['company_id', 'email_ids'].includes(field?.name) &&\n ['edit_customer', 'add_customer', 'edit_vendor', 'add_vendor'].includes(fieldArrayName)\n ) {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else if (field.field_type === 'date') {\n formValues = { ...formValues, [field.name]: dayjs(fieldValue) }\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n formValues = { ...formValues, [field.name]: dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0) }\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n if (fieldArrayName === \"edit_user\" && field.name === \"role_id\") {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else {\n formValues = { ...formValues, [field.name]: Number(fieldValue) }\n }\n } else {\n formValues = { ...formValues, [field.name]: fieldValue }\n }\n }\n }\n })\n const finalFormValues = { ...formValues, ...nestedFormValues }\n reset({ [fieldArrayName]: { ...finalFormValues } })\n }\n getFormMethods?.({ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, getFieldState, errors, ...rest })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [data])\n\n useEffect(() => {\n if (activeTab?.toString()) {\n if (tabsData && tabsData[activeTab]) {\n setSchema(tabsData[activeTab].data);\n }\n }\n }, [activeTab, tabsData]);\n\n useEffect(() => {\n if (watchedValues && handleFormValues) {\n handleFormValues?.(watchedValues);\n }\n }, [handleFormValues, watchedValues])\n\n useEffect(() => {\n if (errors?.[fieldArrayName]) {\n setErrorAlert(true)\n } else {\n setErrorAlert(false)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fieldArrayName, JSON.stringify(errors)])\n\n useEffect(() => {\n const validatedFields: string[] = [];\n if (activeTab != undefined) {\n tabsData[activeTab]?.data.forEach((section: any) => {\n\n if (section.members && Array.isArray(section.members)) {\n\n section.members.forEach((member: any) => {\n if (member.validation && Array.isArray(member.validation)) {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n // validatedFields.push(fieldArrayName + '.' + member.name);\n validatedFields.push(member.name);\n }\n }\n });\n }\n })\n setValidRequiredFields(validatedFields);\n }\n }, [tabsData, activeTab]);\n\n useEffect(() => {\n if (watchedValues?.account_type) {\n\n const switchFormData: any[] = [];\n schema && schema.forEach((section: any) => {\n const sectionMembers = schema && section?.members?.map((ele: any) => ele) || [];\n\n const switchForms = schema && section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n ),\n }));\n if (switchForms) {\n switchFormData.push(switchForms)\n }\n })\n\n const selectValue = watchedValues?.account_type || \"Individual\";\n const switchData = switchFormData && Array.isArray(switchFormData[0])\n ? switchFormData[0].filter((form: any) => form.name === selectValue)\n : [];\n\n if (switchData) {\n validateRequiredSwitchFormData(switchData)\n }\n\n }\n }, [watchedValues?.account_type, schema, validateRequiredSwitchFormData]);\n\n useEffect(() => {\n if (validateRequiredFields.length > 0) {\n const updatedRequiredFields = getMissingFields(watchedValues, validateRequiredFields)\n\n // const updatedRequiredFields = validateRequiredFields.filter((fieldPath) => {\n // const watchedValue = watchedFields[fieldPath] ;\n // return watchedValue === undefined || watchedValue === null || watchedValue === 0 ;\n // });\n\n updatedRequiredFields.length === 0 ? setTabFormValid(true) : setTabFormValid(false);\n } else {\n setTabFormValid(true)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [validateRequiredFields, watchedValues, activeTab])\n\n useEffect(() => {\n if (recieveIsValidForm) {\n recieveIsValidForm(isTabFormValid)\n }\n }, [recieveIsValidForm, isTabFormValid])\n\n\n return (\n // <FullScreenLayout>\n <Box sx={{ width: \"100%\", padding: \"2rem\", ...containerStyles }}>\n <FormProvider {...{ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, errors, getFieldState, formState, ...rest }}>\n <form id={fieldArrayName} name={fieldArrayName} onSubmit={handleSubmit(handleFormSubmit)}>\n {Boolean(tabsData?.length) && (\n <>\n {errorAlert &&\n <Alert severity='error' onClose={() => setErrorAlert(false)}>\n Please fill all the required fields.\n </Alert>\n }\n <TabBar\n tabs={tabsData}\n activeTabs={activeTabs}\n activeValue={activeTab}\n setActiveValue={setActiveTabValue}\n isFormTabValid={isTabFormValid}\n />\n </>\n )}\n {schema &&\n schema.map((section: any, index: number) => {\n const {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n members,\n values,\n } = getSectionData(section)\n\n return (\n <FormSection\n section={section}\n index={index}\n members={members}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n displayAvtar={displayAvtar}\n isButton={isButton}\n currencyOption={currencyOption}\n values={values}\n onBlur={onBlur}\n setValue={setValue}\n onSelectFooterClick={onSelectFooterClick}\n getSelectedData={getSelectedData}\n setCurrencyOptions={setCurrencyOptions}\n refreshOptions={refreshOptions}\n handleFieldCleanUp={handleFieldCleanUp}\n handleSetCountryCodeField={handleSetCountryCodeField}\n handleTableAddClick={handleTableAddClick}\n onTableCellChange={onTableCellChange}\n // setDetailsData={setDetailsData}\n t={t}\n images={images}\n />\n );\n })}\n </form>\n </FormProvider>\n </Box>\n // </FullScreenLayout>\n );\n};\n\nexport default FormParser;\n"],"names":["_a","validations","validation","yup","schema","data","fieldArrayName"],"mappings":"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"}
1
+ {"version":3,"file":"form-parser-ZQpEVrzG.esm.js","sources":["../../src/components/form-control/form-parser/form-parser.tsx"],"sourcesContent":["import { FormProvider, useForm, useWatch } from \"react-hook-form\";\n// import { useLocation } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\n\n// import FullScreenLayout from \"../../../layout/fullScreen/fullScreen\";\n\nimport { useState, useEffect, useCallback } from \"react\";\nimport images from \"../../../assets/images\";\nimport \"./form-parser.scss\";\nimport TabBar from \"../../tabs/tabs\";\nimport formBuilderDeConversion from \"../../../utils/form-builder-deconversion\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport * as yup from \"yup\";\nimport dayjs from \"dayjs\";\nimport { SECTION_TYPES } from '../../../utils/constant';\nimport { CountryData } from 'react-phone-input-2';\nimport Alert from '../../alert/alert';\nimport _ from \"lodash\";\nimport { useTranslation } from \"react-i18next\";\nimport FormSection from \"./form-section\";\nconst validationReducer = (validations: any, validation: any, field: any, translationFn: any) => {\n switch (validation.type) {\n case \"required\":\n return (field.field_properties?.is_multiselect ? validations.required(translationFn(validation.msg_en)).min(1, translationFn(validation.msg_en)) : validation.value\n ? validations.required(translationFn(validation.msg_en)).test('not-empty', translationFn(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, translationFn(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, translationFn(validation.msg_en));\n case \"postive_number\":\n return validations.test('is-positive-number', translationFn(validation.msg_en), (value) => value >= 0)\n case 'email':\n return validations.email(validation.msg_en);\n case \"no_special_char\":\n return validations.test(\n \"no-special-char\",\n translationFn(validation.msg_en),\n value =>\n typeof value === \"string\"\n ? /^[^.\\-\\W_]+$/u.test(value) // allow letters/digits only\n : true\n );\n case \"matches\":\n return validations.matches(new RegExp(validation.value), { excludeEmptyString: true, message: translationFn(validation.msg_en) });\n case \"when\":\n return validations.when(validation.relation, {\n is: (val: any) => val === validation.values,\n then: () => validation?.thenValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n otherwise: () => validation?.otherWiseValidations?.reduce(\n (validations: any, validation: any) => validationReducer(validations, validation, field, translationFn),\n validations\n ) || validations,\n });\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n}\n\nconst FormParser = ({\n data,\n defaultValues,\n handleFormSubmit,\n fieldArrayName,\n mode,\n displayAvtar = false,\n onTableAddClick,\n handleFormValues,\n getFormMethods,\n setFields,\n onSelectFooterClick,\n setActiveTabValue,\n activeTab = 0,\n recieveTabDataLenght,\n recieveIsValidForm,\n activeTabs,\n onTableCellChange,\n containerStyles = undefined,\n isButton = true,\n getSelectedData,\n refreshOptions = false,\n onBlur,\n}: any) => {\n\n const { t } = useTranslation();\n\n function convertToNestedObject(dotNotationString: string, field: any, existingObject: any = {}) {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n const fieldValidations = field.validation.reduce(\n (validations: any, validation: any) => {\n switch (validation.type) {\n case \"required\":\n return validation.value\n ? validations.required(t(validation.msg_en)).test('not-empty', t(validation.msg_en), value => typeof value === 'string' ? value && value?.trim()?.length > 0 : true)\n : (field.field_properties?.is_multiselect ? validations.min(1, t(validation.msg_en)) : validations.nullable());\n case \"min_length\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_length\":\n return validations.max(validation.value, t(validation.msg_en));\n case \"min_val\":\n return validations.min(validation.value, t(validation.msg_en));\n case \"max_val\":\n return validations.max(validation.value, t(validation.msg_en));\n // Add more cases for other validation types as needed\n default:\n return validations;\n }\n },\n getValidationType(field)\n );\n currentLevel[key] = fieldValidations;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }\n\n const getValidationType = (field: any) => {\n switch (field.field_type) {\n case 'select':\n return field.field_properties?.is_multiselect\n ? yup.array()\n : yup.string()\n\n case 'number':\n case 'currency':\n return yup.number().transform((value, originalValue) => (originalValue === '' ? undefined : value)).typeError('Please enter valid number').nullable()\n case 'currency_with_amount':\n return yup.number()\n case 'url':\n return yup.string().matches(/^(https?:\\/\\/)?((([a-zA-Z0-9_-]+\\.)+[a-zA-Z]{2,})|localhost)(:\\d{2,5})?(\\/[a-zA-Z0-9#_-]+\\/?)*(\\?[a-zA-Z0-9&=_-]+)?(#\\S+)?$/, { excludeEmptyString: true, message: \"Please enter valid URL.\" })\n\n default:\n return yup.string()\n }\n }\n\n const convertNestedFieldSchemaObject = (nestedFields: any) => {\n const schema: any = {};\n\n for (const key in nestedFields) {\n if (typeof nestedFields[key] === 'object' && !Object.hasOwn(nestedFields[key], 'tests')) {\n schema[key] = yup.object().shape(convertNestedFieldSchemaObject(nestedFields[key]));\n } else {\n schema[key] = nestedFields[key]\n }\n }\n return schema;\n }\n\n\n const generateValidationSchema = (data: any[]) => {\n const yupSchemaObject: any = {};\n let nestedFielvalidations: any = {},\n nestedYupSchemaObj: any = {};\n\n data &&\n data?.forEach((field: any) => {\n let fieldValidations: any;\n if (field.validation && field.validation.length > 0) {\n if (field.name?.includes(\".\")) {\n nestedFielvalidations = convertToNestedObject(field.name, field, nestedFielvalidations);\n } else {\n fieldValidations = field.validation.reduce((validations: any, validation: any) => validationReducer(validations, validation, field, t),\n getValidationType(field)\n );\n yupSchemaObject[field.name] = fieldValidations;\n }\n\n nestedYupSchemaObj = convertNestedFieldSchemaObject(nestedFielvalidations)\n }\n\n });\n\n return yup.object().shape({\n [fieldArrayName]: yup.object().shape({ ...yupSchemaObject, ...nestedYupSchemaObj }),\n });\n };\n\n const {\n control,\n handleSubmit,\n formState,\n setValue,\n reset,\n getValues,\n watch,\n resetField,\n unregister,\n trigger,\n getFieldState,\n ...rest\n } = useForm({\n ...(defaultValues && typeof defaultValues === 'object' ? { defaultValues } : {}),\n resolver: yupResolver(generateValidationSchema(data)),\n mode: \"all\",\n });\n\n const { errors } = formState;\n\n const watchedValues = useWatch({\n control,\n name: fieldArrayName,\n });\n\n // Local States\n const [schema, setSchema] = useState<[]>([]);\n const [tabsData, setTabsData] = useState<any[]>([]);\n const [errorAlert, setErrorAlert] = useState<boolean>(false);\n const [currencyOption, setCurrencyOptions] = useState<string>('');\n const [isTabFormValid, setTabFormValid] = useState<boolean>(false);\n const [validateRequiredFields, setValidRequiredFields] = useState<any[]>([]);\n\n // Local Functions\n const handleTableAddClick = (tableName?: string) => {\n onTableAddClick?.(tableName)\n }\n\n const getSectionData = useCallback((section: any) => {\n const sectionMembers = section?.members?.map((ele: any) => ele) || []\n const values = getValues(fieldArrayName)\n const isFormSwitcher = section.section_type === SECTION_TYPES.FORM_SWITCH_SECTION\n const formSwitcherName =\n section?.form_switcher_name ||\n section?.form_switcher_label?.toLowerCase().split(\" \").join(\"_\");\n const switchForms = section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n )\n }));\n const selectedSectionForm =\n values?.[formSwitcherName] ?\n switchForms.find((ele: any) =>\n ele.name === values?.[formSwitcherName]\n ) : {};\n\n // When form switcher is active, include:\n // 1. Common fields (fields without section_form_id or is_form_switcher_section)\n // 2. Form-specific fields (fields with section_form_id matching the selected form)\n let members;\n if (isFormSwitcher) {\n const commonFields = sectionMembers.filter(\n (member: any) => !member.section_form_id && !member.is_form_switcher_section\n );\n const formSpecificFields = selectedSectionForm?.formMembers || [];\n members = [...commonFields, ...formSpecificFields];\n } else {\n members = section?.members;\n }\n\n return {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n selectedSectionForm,\n members,\n values\n }\n }, [fieldArrayName, getValues])\n\n const handleSetCountryCodeField = useCallback((country: CountryData, field: any, fieldArrayName: any, values: any) => {\n const oldVal = values?.[fieldArrayName]?.[field?.country_code_field_name]\n const newVal = `+${country.dialCode}`\n if (\n field?.is_country_code_separate &&\n field?.country_code_field_name &&\n oldVal !== newVal\n ) {\n setValue(\n `${fieldArrayName}.${field?.country_code_field_name}` as never,\n newVal as never\n )\n }\n }, [setValue])\n\n const handleFieldCleanUp = useCallback((switchForms: any) => {\n switchForms.forEach((form: any) => {\n form?.formMembers.forEach((member: any) => {\n const memberName = member?.name || member.label.toLowerCase().split(\" \").join(\"_\")\n const v = _.get(defaultValues, `${fieldArrayName}.${memberName}`, null)\n const newData = data.map((ele: any) => {\n if (member?.section_form_id === ele?.section_form_id) {\n delete ele.value\n }\n return ({\n ...ele,\n ...(v ? { value: v } : {}),\n })\n })\n if (!v) {\n resetField(`${fieldArrayName}.${memberName}` as never)\n unregister(`${fieldArrayName}.${memberName}` as never)\n }\n setFields?.(newData)\n })\n\n })\n }, [data, defaultValues, fieldArrayName, resetField, setFields, unregister])\n\n const createNestedObjectFromDot = useCallback((dotNotationString: string, field: any, existingObject: any = {}) => {\n const keys = dotNotationString.split('.');\n let currentLevel = existingObject;\n\n keys.forEach((key, index) => {\n if (index === keys.length - 1) {\n if (!currentLevel[key]) {\n let fieldValue = field.value\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field.field_type === 'date') {\n fieldValue = dayjs(fieldValue)\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n fieldValue = dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0)\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n fieldValue = Number(fieldValue)\n }\n }\n currentLevel[key] = fieldValue;\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n } else {\n if (!currentLevel[key]) {\n currentLevel[key] = {};\n } else if (typeof currentLevel[key] !== 'object' || Array.isArray(currentLevel[key])) {\n throw new Error(`Conflict: The key \"${key}\" already exists and is not an object.`);\n }\n currentLevel = currentLevel[key];\n\n }\n });\n\n return existingObject;\n }, [])\n\n const removeMatchingKeyValuePairs = useCallback((obj1, obj2) => {\n _.forOwn(obj1, (value, key) => {\n if (_.has(obj2, key) && _.isEqual(value, obj2[key])) {\n delete obj1[key];\n }\n });\n return obj1;\n }, [])\n\n const validateRequiredSwitchFormData = useCallback((switchData: any) => {\n const requiredFields: string[] = [];\n if (switchData) {\n switchData && switchData[0]?.formMembers.forEach((member: any) => {\n if (member?.validation && Array.isArray(member?.validation)) {\n member?.validation.forEach((validation: any) => {\n if (validation?.thenValidations && Array.isArray(validation?.thenValidations)) {\n validation?.thenValidations.forEach((thenValidation: any) => {\n if (thenValidation?.type === \"required\" && thenValidation?.value === true) {\n if (member?.name) {\n requiredFields.push(member.name);\n }\n }\n });\n } else {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n requiredFields.push(member.name);\n }\n }\n });\n }\n });\n\n }\n if (requiredFields) {\n setValidRequiredFields(_.uniq(requiredFields))\n }\n\n }, [])\n\n const isEmpty = useCallback((value: any): boolean => {\n return (\n value === null ||\n value === undefined ||\n (Array.isArray(value) && value.length === 0) ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n );\n }, [])\n\n const getMissingFields = useCallback((watchedFields: any, validationReqFields: string[]): string[] => {\n const missingFields: string[] = [];\n\n validationReqFields.forEach((fieldPath) => {\n const keys = fieldPath.split(\".\");\n let currentLevel = watchedFields;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n\n if (!currentLevel?.[key] && currentLevel?.[key] !== 0) {\n // If any key in the path is missing, mark the field as missing\n missingFields.push(fieldPath);\n return;\n }\n\n // Move deeper into the object\n currentLevel = currentLevel[key];\n }\n\n // After navigating the full path, check if the final value is empty\n if (isEmpty(currentLevel)) {\n missingFields.push(fieldPath);\n }\n });\n\n\n return missingFields;\n }, [isEmpty])\n\n // Use Effects\n useEffect(() => {\n if (recieveTabDataLenght) {\n recieveTabDataLenght(tabsData.length)\n }\n }, [recieveTabDataLenght, tabsData])\n\n useEffect(() => {\n const handleMessage = (event: MessageEvent) => {\n if (event.origin !== window.origin) {\n return;\n }\n const { state } = event.data;\n\n if (state?.length) {\n const data: any = formBuilderDeConversion(state);\n\n if (data.tab) {\n setTabsData(data.tab);\n } else if (data.section) {\n setSchema(data.section);\n }\n }\n };\n\n window.addEventListener(\"message\", handleMessage);\n\n return () => {\n window.removeEventListener(\"message\", handleMessage);\n };\n }, []);\n\n useEffect(() => {\n if (data) {\n const formData = formBuilderDeConversion(data)\n if (formData?.tab) {\n // setSchema([])\n setTabsData(formData.tab);\n if (activeTab !== undefined) {\n setSchema(formData.tab[activeTab]?.data || []);\n }\n } else {\n setSchema(formData.section);\n // setTabsData([])\n }\n const dVals = _.get(defaultValues, fieldArrayName, {})\n const wVals = removeMatchingKeyValuePairs((watchedValues || {}), (dVals || {}))\n if (mode === 'edit' && !Object.keys(wVals)?.length) {\n let formValues: any = {};\n let nestedFormValues: any = {};\n data.forEach((field: any) => {\n const fieldValue = field.value\n if (field.name?.includes(\".\")) {\n nestedFormValues = createNestedObjectFromDot(field.name, field, nestedFormValues)\n } else {\n if (fieldValue && (field.field_type !== 'image' || field.field_type !== 'file')) {\n if (field?.is_section_field) {\n const fieldName = field?.form_switcher_name || field?.form_switcher_label;\n formValues = { ...formValues, [fieldName]: fieldValue }\n } else if (\n field?.name &&\n ['company_id', 'email_ids'].includes(field?.name) &&\n ['edit_customer', 'add_customer', 'edit_vendor', 'add_vendor'].includes(fieldArrayName)\n ) {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else if (field.field_type === 'date') {\n formValues = { ...formValues, [field.name]: dayjs(fieldValue) }\n } else if (field.field_type === 'time') {\n const [hours, minutes, seconds] = fieldValue.split(\":\").map(Number);\n formValues = { ...formValues, [field.name]: dayjs().set('hour', hours).set('minute', minutes).set('second', seconds).set('millisecond', 0) }\n } else if (field.name.includes('_id') && !Array.isArray(field?.value)) {\n if (fieldArrayName === \"edit_user\" && field.name === \"role_id\") {\n formValues = { ...formValues, [field.name]: fieldValue }\n } else {\n formValues = { ...formValues, [field.name]: Number(fieldValue) }\n }\n } else {\n formValues = { ...formValues, [field.name]: fieldValue }\n }\n }\n }\n })\n const finalFormValues = { ...formValues, ...nestedFormValues }\n reset({ [fieldArrayName]: { ...finalFormValues } })\n }\n getFormMethods?.({ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, getFieldState, errors, ...rest })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [data])\n\n useEffect(() => {\n if (activeTab?.toString()) {\n if (tabsData && tabsData[activeTab]) {\n setSchema(tabsData[activeTab].data);\n }\n }\n }, [activeTab, tabsData]);\n\n useEffect(() => {\n if (watchedValues && handleFormValues) {\n handleFormValues?.(watchedValues);\n }\n }, [handleFormValues, watchedValues])\n\n useEffect(() => {\n if (errors?.[fieldArrayName]) {\n setErrorAlert(true)\n } else {\n setErrorAlert(false)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fieldArrayName, JSON.stringify(errors)])\n\n useEffect(() => {\n const validatedFields: string[] = [];\n if (activeTab != undefined) {\n tabsData[activeTab]?.data.forEach((section: any) => {\n\n if (section.members && Array.isArray(section.members)) {\n\n section.members.forEach((member: any) => {\n if (member.validation && Array.isArray(member.validation)) {\n const hasRequiredValidation = member.validation.some(\n (validation: any) => validation.type === 'required' && validation.value === true\n )\n if (hasRequiredValidation) {\n // validatedFields.push(fieldArrayName + '.' + member.name);\n validatedFields.push(member.name);\n }\n }\n });\n }\n })\n setValidRequiredFields(validatedFields);\n }\n }, [tabsData, activeTab]);\n\n useEffect(() => {\n if (watchedValues?.account_type) {\n\n const switchFormData: any[] = [];\n schema && schema.forEach((section: any) => {\n const sectionMembers = schema && section?.members?.map((ele: any) => ele) || [];\n\n const switchForms = schema && section?.switcher_forms?.map((form: any) => ({\n ...form,\n formMembers: sectionMembers.filter(\n (member: any) => member.section_form_id === form.id,\n ),\n }));\n if (switchForms) {\n switchFormData.push(switchForms)\n }\n })\n\n const selectValue = watchedValues?.account_type || \"Individual\";\n const switchData = switchFormData && Array.isArray(switchFormData[0])\n ? switchFormData[0].filter((form: any) => form.name === selectValue)\n : [];\n\n if (switchData) {\n validateRequiredSwitchFormData(switchData)\n }\n\n }\n }, [watchedValues?.account_type, schema, validateRequiredSwitchFormData]);\n\n useEffect(() => {\n if (validateRequiredFields.length > 0) {\n const updatedRequiredFields = getMissingFields(watchedValues, validateRequiredFields)\n\n // const updatedRequiredFields = validateRequiredFields.filter((fieldPath) => {\n // const watchedValue = watchedFields[fieldPath] ;\n // return watchedValue === undefined || watchedValue === null || watchedValue === 0 ;\n // });\n\n updatedRequiredFields.length === 0 ? setTabFormValid(true) : setTabFormValid(false);\n } else {\n setTabFormValid(true)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [validateRequiredFields, watchedValues, activeTab])\n\n useEffect(() => {\n if (recieveIsValidForm) {\n recieveIsValidForm(isTabFormValid)\n }\n }, [recieveIsValidForm, isTabFormValid])\n\n\n return (\n // <FullScreenLayout>\n <Box sx={{ width: \"100%\", padding: \"2rem\", ...containerStyles }}>\n <FormProvider {...{ control, handleSubmit, setValue, reset, resetField, getValues, unregister, trigger, watch, errors, getFieldState, formState, ...rest }}>\n <form id={fieldArrayName} name={fieldArrayName} onSubmit={handleSubmit(handleFormSubmit)}>\n {Boolean(tabsData?.length) && (\n <>\n {errorAlert &&\n <Alert severity='error' onClose={() => setErrorAlert(false)}>\n Please fill all the required fields.\n </Alert>\n }\n <TabBar\n tabs={tabsData}\n activeTabs={activeTabs}\n activeValue={activeTab}\n setActiveValue={setActiveTabValue}\n isFormTabValid={isTabFormValid}\n />\n </>\n )}\n {schema &&\n schema.map((section: any, index: number) => {\n const {\n isFormSwitcher,\n formSwitcherName,\n switchForms,\n members,\n values,\n } = getSectionData(section)\n\n return (\n <FormSection\n section={section}\n index={index}\n members={members}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n displayAvtar={displayAvtar}\n isButton={isButton}\n currencyOption={currencyOption}\n values={values}\n onBlur={onBlur}\n setValue={setValue}\n onSelectFooterClick={onSelectFooterClick}\n getSelectedData={getSelectedData}\n setCurrencyOptions={setCurrencyOptions}\n refreshOptions={refreshOptions}\n handleFieldCleanUp={handleFieldCleanUp}\n handleSetCountryCodeField={handleSetCountryCodeField}\n handleTableAddClick={handleTableAddClick}\n onTableCellChange={onTableCellChange}\n // setDetailsData={setDetailsData}\n t={t}\n images={images}\n />\n );\n })}\n </form>\n </FormProvider>\n </Box>\n // </FullScreenLayout>\n );\n};\n\nexport default FormParser;\n"],"names":["_a","validations","validation","yup","schema","data","fieldArrayName"],"mappings":"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"}
@@ -6,19 +6,19 @@ import { D as DynamicInput } from "./text-BWoRoA4r.esm.js";
6
6
  import { D as DynamicDate } from "./date-DWW33q1y.esm.js";
7
7
  import { D as DynamicTime } from "./time-BRlAFG0U.esm.js";
8
8
  import { D as DynamicPhone } from "./phone-4yVXJQwX.esm.js";
9
- import { D as DynamicSearchSelect } from "./searchable-select-0F6E4XAr.esm.js";
10
- import { D as DynamicDependentField } from "./DynamicDependentField-C0XXmMlG.esm.js";
9
+ import { D as DynamicSearchSelect } from "./searchable-select-BQtcqBKV.esm.js";
10
+ import { D as DynamicDependentField } from "./DynamicDependentField-DOGY6cA_.esm.js";
11
11
  import { D as DynamicMedia } from "./media-BNHjErng.esm.js";
12
12
  import { D as DynamicInfo } from "./info-D16XWffr.esm.js";
13
13
  import { D as DynamicToggleButton } from "./toggle-button-DaKspbiP.esm.js";
14
14
  import { D as DynamicCheckBox } from "./checkbox-mx9cWG2N.esm.js";
15
- import { D as DynamicTable } from "./table-gxAlAeTq.esm.js";
15
+ import { D as DynamicTable } from "./table-DI3MyTNm.esm.js";
16
16
  import { D as DynamicRadioButton } from "./radio-button-CJcVVXzv.esm.js";
17
17
  import { D as DynamicTagsInput } from "./dynamic-tags-input-CwF4Mm_r.esm.js";
18
18
  import { D as DynamicCurrency } from "./dynamic-currency-input-Cql8zuV7.esm.js";
19
19
  import { D as DynamicInputSelect } from "./dynamic-input-select-CvQ6BsRt.esm.js";
20
20
  import { C as ChipGenerator } from "./chip-generator-D5Q491KI.esm.js";
21
- import { L as LocationSearchSelect } from "./location-select-CFa00fy4.esm.js";
21
+ import { L as LocationSearchSelect } from "./location-select-z1C88kCy.esm.js";
22
22
  import { F as FormSwitcher } from "./form-switcher-DeIv-bQS.esm.js";
23
23
  import { T as Typography } from "./typography-CG_A0iOJ.esm.js";
24
24
  import { A as Accordion } from "./accordion-DlkIh3BF.esm.js";
@@ -473,4 +473,4 @@ FormSection.displayName = "FormSection";
473
473
  export {
474
474
  FormSection as F
475
475
  };
476
- //# sourceMappingURL=form-section-TMjdOVeW.esm.js.map
476
+ //# sourceMappingURL=form-section-BJ7Iqb9R.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-section-TMjdOVeW.esm.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["_a","index"],"mappings":"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"}
1
+ {"version":3,"file":"form-section-BJ7Iqb9R.esm.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["_a","index"],"mappings":"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"}