@erpsquad/common 1.11.7 → 1.11.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (629) hide show
  1. package/dist/api-client/index.esm.js +2 -2
  2. package/dist/chunks/{DynamicDependentField-DOGY6cA_.esm.js → DynamicDependentField-C0XXmMlG.esm.js} +2 -2
  3. package/dist/chunks/{DynamicDependentField-DOGY6cA_.esm.js.map → DynamicDependentField-C0XXmMlG.esm.js.map} +1 -1
  4. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js → DynamicDependentField-CQIfDDqc.js} +2 -2
  5. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js.map → DynamicDependentField-CQIfDDqc.js.map} +1 -1
  6. package/dist/chunks/{ERPUIProvider-Dz0s77BR.esm.js → ERPUIProvider-I4j_X_SD.esm.js} +3 -3
  7. package/dist/chunks/{ERPUIProvider-Dz0s77BR.esm.js.map → ERPUIProvider-I4j_X_SD.esm.js.map} +1 -1
  8. package/dist/chunks/{FORMS-EouVYay1.js → FORMS-CUx32b_4.js} +5 -5
  9. package/dist/chunks/{FORMS-EouVYay1.js.map → FORMS-CUx32b_4.js.map} +1 -1
  10. package/dist/chunks/{FORMS-CR_DlD1m.esm.js → FORMS-pxf6g6xE.esm.js} +8 -8
  11. package/dist/chunks/{FORMS-CR_DlD1m.esm.js.map → FORMS-pxf6g6xE.esm.js.map} +1 -1
  12. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js → FlexibleReduxExample--GtoEJhc.js} +3 -3
  13. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js.map → FlexibleReduxExample--GtoEJhc.js.map} +1 -1
  14. package/dist/chunks/{FlexibleReduxExample-B2e7Wa_S.esm.js → FlexibleReduxExample-C-2qOGIw.esm.js} +4 -4
  15. package/dist/chunks/{FlexibleReduxExample-B2e7Wa_S.esm.js.map → FlexibleReduxExample-C-2qOGIw.esm.js.map} +1 -1
  16. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js +5479 -0
  17. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js.map +1 -0
  18. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js +5478 -0
  19. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js.map +1 -0
  20. package/dist/chunks/{action-bar-Ci6RlMBM.esm.js → action-bar-C7Alva4T.esm.js} +6 -6
  21. package/dist/chunks/{action-bar-Ci6RlMBM.esm.js.map → action-bar-C7Alva4T.esm.js.map} +1 -1
  22. package/dist/chunks/{action-bar-jLqQTqU7.js → action-bar-DdtpxWNk.js} +3 -3
  23. package/dist/chunks/{action-bar-jLqQTqU7.js.map → action-bar-DdtpxWNk.js.map} +1 -1
  24. package/dist/chunks/{actionCreator-DIdMRO9L.esm.js → actionCreator-CL5ICuqZ.esm.js} +2 -2
  25. package/dist/chunks/{actionCreator-DIdMRO9L.esm.js.map → actionCreator-CL5ICuqZ.esm.js.map} +1 -1
  26. package/dist/chunks/{actionCreator-DKYufGAZ.esm.js → actionCreator-Cb3NxILP.esm.js} +2 -2
  27. package/dist/chunks/{actionCreator-DKYufGAZ.esm.js.map → actionCreator-Cb3NxILP.esm.js.map} +1 -1
  28. package/dist/chunks/{actionCreator-D3uwEAua.esm.js → actionCreator-Cl8vPLVO.esm.js} +3 -3
  29. package/dist/chunks/{actionCreator-D3uwEAua.esm.js.map → actionCreator-Cl8vPLVO.esm.js.map} +1 -1
  30. package/dist/chunks/{actionCreator-B6lXR_k1.esm.js → actionCreator-CpePNxQM.esm.js} +2 -2
  31. package/dist/chunks/{actionCreator-B6lXR_k1.esm.js.map → actionCreator-CpePNxQM.esm.js.map} +1 -1
  32. package/dist/chunks/{actionCreator-DcdyGsIX.esm.js → actionCreator-Dar9Z8_d.esm.js} +3 -3
  33. package/dist/chunks/{actionCreator-DcdyGsIX.esm.js.map → actionCreator-Dar9Z8_d.esm.js.map} +1 -1
  34. package/dist/chunks/add-template-DVvbD9a4.esm.js +11 -0
  35. package/dist/chunks/add-template-DVvbD9a4.esm.js.map +1 -0
  36. package/dist/chunks/add-template-Dohg2bHJ.js +10 -0
  37. package/dist/chunks/add-template-Dohg2bHJ.js.map +1 -0
  38. package/dist/chunks/{address-modal-DFd5sQtR.js → address-modal-CYhiC7ui.js} +2 -2
  39. package/dist/chunks/{address-modal-DFd5sQtR.js.map → address-modal-CYhiC7ui.js.map} +1 -1
  40. package/dist/chunks/{address-modal-DYGLjrqd.esm.js → address-modal-CkDBjnye.esm.js} +2 -2
  41. package/dist/chunks/{address-modal-DYGLjrqd.esm.js.map → address-modal-CkDBjnye.esm.js.map} +1 -1
  42. package/dist/chunks/{ai-summary-x2t8BZCx.esm.js → ai-summary-SKK5KN2s.esm.js} +2 -2
  43. package/dist/chunks/{ai-summary-x2t8BZCx.esm.js.map → ai-summary-SKK5KN2s.esm.js.map} +1 -1
  44. package/dist/chunks/{api-8jutPLh0.esm.js → api-BIVCMSwW.esm.js} +3 -3
  45. package/dist/chunks/{api-8jutPLh0.esm.js.map → api-BIVCMSwW.esm.js.map} +1 -1
  46. package/dist/chunks/{api-yLpQ3k5s.esm.js → api-DBmWILBN.esm.js} +9 -9
  47. package/dist/chunks/{api-yLpQ3k5s.esm.js.map → api-DBmWILBN.esm.js.map} +1 -1
  48. package/dist/chunks/{app-switcher-VhH9z0Rd.js → app-switcher-CyEQmYAN.js} +2 -2
  49. package/dist/chunks/{app-switcher-VhH9z0Rd.js.map → app-switcher-CyEQmYAN.js.map} +1 -1
  50. package/dist/chunks/{app-switcher-B6eapuGG.esm.js → app-switcher-D-Bvz9uO.esm.js} +2 -2
  51. package/dist/chunks/{app-switcher-B6eapuGG.esm.js.map → app-switcher-D-Bvz9uO.esm.js.map} +1 -1
  52. package/dist/chunks/{appbar-B8EgZsrn.esm.js → appbar-BRbO--as.esm.js} +2 -2
  53. package/dist/chunks/{appbar-B8EgZsrn.esm.js.map → appbar-BRbO--as.esm.js.map} +1 -1
  54. package/dist/chunks/{appbar-Is_7kfVo.js → appbar-rqqjZ99v.js} +2 -2
  55. package/dist/chunks/{appbar-Is_7kfVo.js.map → appbar-rqqjZ99v.js.map} +1 -1
  56. package/dist/chunks/{approval-wrapper-_kYfACQp.esm.js → approval-wrapper-BTtmXMlk.esm.js} +2 -2
  57. package/dist/chunks/{approval-wrapper-_kYfACQp.esm.js.map → approval-wrapper-BTtmXMlk.esm.js.map} +1 -1
  58. package/dist/chunks/{chat-bot-DO3vAGxA.esm.js → chat-bot-BpNtrZEL.esm.js} +39 -33
  59. package/dist/chunks/chat-bot-BpNtrZEL.esm.js.map +1 -0
  60. package/dist/chunks/{chat-bot-2Ga_xA_K.js → chat-bot-osiGMG3g.js} +38 -32
  61. package/dist/chunks/chat-bot-osiGMG3g.js.map +1 -0
  62. package/dist/chunks/common-C5AokA7z.js +368 -0
  63. package/dist/chunks/common-C5AokA7z.js.map +1 -0
  64. package/dist/chunks/{common-PH2uWkqL.js → common-CS5L0Ld_.js} +2 -2
  65. package/dist/chunks/{common-PH2uWkqL.js.map → common-CS5L0Ld_.js.map} +1 -1
  66. package/dist/chunks/common-CaomnEjX.esm.js +369 -0
  67. package/dist/chunks/common-CaomnEjX.esm.js.map +1 -0
  68. package/dist/chunks/common-utility-CA_Upser.js.map +1 -1
  69. package/dist/chunks/{common-utility-CS_sNoAC.esm.js → common-utility-DGpbsf7S.esm.js} +2 -2
  70. package/dist/chunks/common-utility-DGpbsf7S.esm.js.map +1 -0
  71. package/dist/chunks/{common-Cl5oGXmX.esm.js → common-yORBIVv-.esm.js} +2 -2
  72. package/dist/chunks/{common-Cl5oGXmX.esm.js.map → common-yORBIVv-.esm.js.map} +1 -1
  73. package/dist/chunks/company-selection-modal-B7jFVWWs.js.map +1 -1
  74. package/dist/chunks/company-selection-modal-Dn2L_skh.esm.js.map +1 -1
  75. package/dist/chunks/{constant-BXPcBhJN.esm.js → constant-Bwg2s_Sn.esm.js} +5 -35
  76. package/dist/chunks/constant-Bwg2s_Sn.esm.js.map +1 -0
  77. package/dist/chunks/{constant-BXeJD4Af.js → constant-ZYAN_teD.js} +5 -35
  78. package/dist/chunks/constant-ZYAN_teD.js.map +1 -0
  79. package/dist/chunks/{constants-D_xuLHSu.js → constants-06kIVUBw.js} +2 -2
  80. package/dist/chunks/{constants-D_xuLHSu.js.map → constants-06kIVUBw.js.map} +1 -1
  81. package/dist/chunks/{constants-BrmMAwu2.esm.js → constants-nmkxkzps.esm.js} +2 -2
  82. package/dist/chunks/{constants-BrmMAwu2.esm.js.map → constants-nmkxkzps.esm.js.map} +1 -1
  83. package/dist/chunks/{custom-editor-C-B5BK-H.esm.js → custom-editor-6-xqhKz6.esm.js} +3 -3
  84. package/dist/chunks/{custom-editor-C-B5BK-H.esm.js.map → custom-editor-6-xqhKz6.esm.js.map} +1 -1
  85. package/dist/chunks/{custom-form-T4yc_sE_.js → custom-form-CFU7NEVb.js} +4 -4
  86. package/dist/chunks/{custom-form-T4yc_sE_.js.map → custom-form-CFU7NEVb.js.map} +1 -1
  87. package/dist/chunks/{custom-form-DNUpk0nq.esm.js → custom-form-DD7YOHMF.esm.js} +7 -7
  88. package/dist/chunks/{custom-form-DNUpk0nq.esm.js.map → custom-form-DD7YOHMF.esm.js.map} +1 -1
  89. package/dist/chunks/{dashboard-eMHQayU_.js → dashboard-BcWVkWZt.js} +3 -3
  90. package/dist/chunks/{dashboard-eMHQayU_.js.map → dashboard-BcWVkWZt.js.map} +1 -1
  91. package/dist/chunks/{dashboard-B4xzJ1Xc.esm.js → dashboard-DL83yYRR.esm.js} +4 -4
  92. package/dist/chunks/{dashboard-B4xzJ1Xc.esm.js.map → dashboard-DL83yYRR.esm.js.map} +1 -1
  93. package/dist/chunks/default-data-6IxhqPTP.esm.js.map +1 -1
  94. package/dist/chunks/default-data-yreKVx_z.js.map +1 -1
  95. package/dist/chunks/{dynamic-report-CMguvXj2.esm.js → dynamic-report-tKn-KqAd.esm.js} +4 -4
  96. package/dist/chunks/{dynamic-report-CMguvXj2.esm.js.map → dynamic-report-tKn-KqAd.esm.js.map} +1 -1
  97. package/dist/chunks/{dynamic-rows-CmAE9nbA.esm.js → dynamic-rows-CTGETfcP.esm.js} +2 -2
  98. package/dist/chunks/{dynamic-rows-CmAE9nbA.esm.js.map → dynamic-rows-CTGETfcP.esm.js.map} +1 -1
  99. package/dist/chunks/{dynamic-text-editor-CSWdR1lK.esm.js → dynamic-text-editor-CPvlGcLK.esm.js} +2 -2
  100. package/dist/chunks/{dynamic-text-editor-CSWdR1lK.esm.js.map → dynamic-text-editor-CPvlGcLK.esm.js.map} +1 -1
  101. package/dist/chunks/{edit-section-modal-HihKbN6K.esm.js → edit-section-modal-BW-aZmUv.esm.js} +2 -2
  102. package/dist/chunks/edit-section-modal-BW-aZmUv.esm.js.map +1 -0
  103. package/dist/chunks/edit-section-modal-Br2ITvLk.js.map +1 -1
  104. package/dist/chunks/{filter-D9BHP_qc.esm.js → filter-COXKBEER.esm.js} +5 -5
  105. package/dist/chunks/{filter-D9BHP_qc.esm.js.map → filter-COXKBEER.esm.js.map} +1 -1
  106. package/dist/chunks/{filter-DtCrOG6W.js → filter-Cr_OSIpb.js} +3 -3
  107. package/dist/chunks/{filter-DtCrOG6W.js.map → filter-Cr_OSIpb.js.map} +1 -1
  108. package/dist/chunks/{footer-DioOh69g.js → footer-CD3kMRdS.js} +2 -2
  109. package/dist/chunks/{footer-DioOh69g.js.map → footer-CD3kMRdS.js.map} +1 -1
  110. package/dist/chunks/{footer-Bv5NOAf9.esm.js → footer-m3_dlNl8.esm.js} +2 -2
  111. package/dist/chunks/{footer-Bv5NOAf9.esm.js.map → footer-m3_dlNl8.esm.js.map} +1 -1
  112. package/dist/chunks/{form-fields-Di-p9XKG.esm.js → form-fields-hMMnB_wE.esm.js} +2 -2
  113. package/dist/chunks/{form-fields-Di-p9XKG.esm.js.map → form-fields-hMMnB_wE.esm.js.map} +1 -1
  114. package/dist/chunks/{form-fields-BYDhbAgB.js → form-fields-yE9kwjvb.js} +2 -2
  115. package/dist/chunks/{form-fields-BYDhbAgB.js.map → form-fields-yE9kwjvb.js.map} +1 -1
  116. package/dist/chunks/{form-parser-ZQpEVrzG.esm.js → form-parser-DbnSn5eY.esm.js} +2 -2
  117. package/dist/chunks/{form-parser-ZQpEVrzG.esm.js.map → form-parser-DbnSn5eY.esm.js.map} +1 -1
  118. package/dist/chunks/{form-parser-BnMdMDSb.js → form-parser-m4fnw38a.js} +2 -2
  119. package/dist/chunks/{form-parser-BnMdMDSb.js.map → form-parser-m4fnw38a.js.map} +1 -1
  120. package/dist/chunks/{form-section-CFeWD-tF.js → form-section-CPIyMdk2.js} +5 -5
  121. package/dist/chunks/{form-section-CFeWD-tF.js.map → form-section-CPIyMdk2.js.map} +1 -1
  122. package/dist/chunks/{form-section-BJ7Iqb9R.esm.js → form-section-TMjdOVeW.esm.js} +5 -5
  123. package/dist/chunks/{form-section-BJ7Iqb9R.esm.js.map → form-section-TMjdOVeW.esm.js.map} +1 -1
  124. package/dist/chunks/{fullScreen-h0JqBN4O.js → fullScreen-BLLa9ogA.js} +5 -5
  125. package/dist/chunks/fullScreen-BLLa9ogA.js.map +1 -0
  126. package/dist/chunks/{fullScreen-Cz3FIdU4.esm.js → fullScreen-DFgzE41_.esm.js} +5 -5
  127. package/dist/chunks/fullScreen-DFgzE41_.esm.js.map +1 -0
  128. package/dist/chunks/{global-search-CGmupYFQ.esm.js → global-search-BOkxXiZ0.esm.js} +3 -3
  129. package/dist/chunks/{global-search-CGmupYFQ.esm.js.map → global-search-BOkxXiZ0.esm.js.map} +1 -1
  130. package/dist/chunks/{global-search-BTV5iL6-.js → global-search-BjKPmzsQ.js} +2 -2
  131. package/dist/chunks/{global-search-BTV5iL6-.js.map → global-search-BjKPmzsQ.js.map} +1 -1
  132. package/dist/chunks/{grid-view-BMfleQMC.esm.js → grid-view-Bo86x7YL.esm.js} +2 -2
  133. package/dist/chunks/{grid-view-BMfleQMC.esm.js.map → grid-view-Bo86x7YL.esm.js.map} +1 -1
  134. package/dist/chunks/{header-BnVzqpGs.esm.js → header-B-HaoeK7.esm.js} +10 -12
  135. package/dist/chunks/{header-BnVzqpGs.esm.js.map → header-B-HaoeK7.esm.js.map} +1 -1
  136. package/dist/chunks/{header-jWPMgcy6.js → header-BHsex2As.js} +9 -11
  137. package/dist/chunks/{header-jWPMgcy6.js.map → header-BHsex2As.js.map} +1 -1
  138. package/dist/chunks/{header-enhanced-CkROCaOF.esm.js → header-enhanced-BjfqyQ1a.esm.js} +3 -3
  139. package/dist/chunks/{header-enhanced-CkROCaOF.esm.js.map → header-enhanced-BjfqyQ1a.esm.js.map} +1 -1
  140. package/dist/chunks/{header-enhanced-Dxdetx0I.js → header-enhanced-gJl4iC4m.js} +3 -3
  141. package/dist/chunks/{header-enhanced-Dxdetx0I.js.map → header-enhanced-gJl4iC4m.js.map} +1 -1
  142. package/dist/chunks/{index-BCmGHdos.esm.js → index-ALqg8b5U.esm.js} +2 -2
  143. package/dist/chunks/{index-BCmGHdos.esm.js.map → index-ALqg8b5U.esm.js.map} +1 -1
  144. package/dist/chunks/{inline-edit-fields-VOIx3qmC.esm.js → inline-edit-fields-BYhRpPcH.esm.js} +2 -2
  145. package/dist/chunks/{inline-edit-fields-VOIx3qmC.esm.js.map → inline-edit-fields-BYhRpPcH.esm.js.map} +1 -1
  146. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js → inline-edit-fields-atDP84QL.js} +2 -2
  147. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js.map → inline-edit-fields-atDP84QL.js.map} +1 -1
  148. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js → inventory-reports-title-bar-Bog2i0dr.js} +2 -2
  149. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js.map → inventory-reports-title-bar-Bog2i0dr.js.map} +1 -1
  150. package/dist/chunks/{inventory-reports-title-bar-CZZFFqDc.esm.js → inventory-reports-title-bar-CP8FzW6A.esm.js} +3 -3
  151. package/dist/chunks/{inventory-reports-title-bar-CZZFFqDc.esm.js.map → inventory-reports-title-bar-CP8FzW6A.esm.js.map} +1 -1
  152. package/dist/chunks/{item-response-details-BheThTTK.js → item-response-details-DsGQ7Dlc.js} +2 -2
  153. package/dist/chunks/{item-response-details-BheThTTK.js.map → item-response-details-DsGQ7Dlc.js.map} +1 -1
  154. package/dist/chunks/{item-response-details-BTHf6ZvN.esm.js → item-response-details-SHSD-nBh.esm.js} +4 -4
  155. package/dist/chunks/{item-response-details-BTHf6ZvN.esm.js.map → item-response-details-SHSD-nBh.esm.js.map} +1 -1
  156. package/dist/chunks/{listing-ELQeM6S3.esm.js → listing-C0Yb6MVq.esm.js} +4 -4
  157. package/dist/chunks/{listing-ELQeM6S3.esm.js.map → listing-C0Yb6MVq.esm.js.map} +1 -1
  158. package/dist/chunks/{listing-Dr_1DDBr.js → listing-DIuzQrzb.js} +4 -4
  159. package/dist/chunks/{listing-Dr_1DDBr.js.map → listing-DIuzQrzb.js.map} +1 -1
  160. package/dist/chunks/{location-select-z1C88kCy.esm.js → location-select-CFa00fy4.esm.js} +2 -2
  161. package/dist/chunks/{location-select-z1C88kCy.esm.js.map → location-select-CFa00fy4.esm.js.map} +1 -1
  162. package/dist/chunks/{location-select-CLyRUilk.js → location-select-g5uczAUF.js} +2 -2
  163. package/dist/chunks/{location-select-CLyRUilk.js.map → location-select-g5uczAUF.js.map} +1 -1
  164. package/dist/chunks/{material-editable-table-DFGB0q-s.js → material-editable-table-BGLjrTzT.js} +3 -3
  165. package/dist/chunks/{material-editable-table-DFGB0q-s.js.map → material-editable-table-BGLjrTzT.js.map} +1 -1
  166. package/dist/chunks/{material-editable-table-DyGdqNkX.esm.js → material-editable-table-pAyK7KYf.esm.js} +4 -4
  167. package/dist/chunks/{material-editable-table-DyGdqNkX.esm.js.map → material-editable-table-pAyK7KYf.esm.js.map} +1 -1
  168. package/dist/chunks/{module-reducer-CEv3LZCX.esm.js → module-reducer-DMxxForv.esm.js} +2 -2
  169. package/dist/chunks/{module-reducer-CEv3LZCX.esm.js.map → module-reducer-DMxxForv.esm.js.map} +1 -1
  170. package/dist/chunks/{modules-enwLrpfQ.esm.js → modules-BBu2Y-K9.esm.js} +5 -5
  171. package/dist/chunks/{modules-enwLrpfQ.esm.js.map → modules-BBu2Y-K9.esm.js.map} +1 -1
  172. package/dist/chunks/{modules-DTRr7zwt.js → modules-maXT99-4.js} +5 -5
  173. package/dist/chunks/{modules-DTRr7zwt.js.map → modules-maXT99-4.js.map} +1 -1
  174. package/dist/chunks/{notification-menu-B00hDUbn.js → notification-menu-D7ASm-K1.js} +2 -2
  175. package/dist/chunks/{notification-menu-B00hDUbn.js.map → notification-menu-D7ASm-K1.js.map} +1 -1
  176. package/dist/chunks/{notification-menu-CehCt5fA.esm.js → notification-menu-XAadkn-e.esm.js} +4 -4
  177. package/dist/chunks/{notification-menu-CehCt5fA.esm.js.map → notification-menu-XAadkn-e.esm.js.map} +1 -1
  178. package/dist/chunks/{page-action-TMFOytDw.js → page-action-BPzaL2KJ.js} +2 -2
  179. package/dist/chunks/{page-action-TMFOytDw.js.map → page-action-BPzaL2KJ.js.map} +1 -1
  180. package/dist/chunks/{page-action-RqVevciV.esm.js → page-action-C07iGjvN.esm.js} +4 -4
  181. package/dist/chunks/{page-action-RqVevciV.esm.js.map → page-action-C07iGjvN.esm.js.map} +1 -1
  182. package/dist/chunks/{page-navigator-CuIJ0KGf.esm.js → page-navigator-8gZpp9_P.esm.js} +2 -2
  183. package/dist/chunks/{page-navigator-CuIJ0KGf.esm.js.map → page-navigator-8gZpp9_P.esm.js.map} +1 -1
  184. package/dist/chunks/{page-navigator-DdRsmtLy.js → page-navigator-Cgbh3tTG.js} +2 -2
  185. package/dist/chunks/{page-navigator-DdRsmtLy.js.map → page-navigator-Cgbh3tTG.js.map} +1 -1
  186. package/dist/chunks/{page-view-Daz-OKd_.esm.js → page-view-CokUNMBn.esm.js} +3 -3
  187. package/dist/chunks/{page-view-Daz-OKd_.esm.js.map → page-view-CokUNMBn.esm.js.map} +1 -1
  188. package/dist/chunks/{page-view-CvfqzV03.js → page-view-DJ6HS_dV.js} +3 -3
  189. package/dist/chunks/{page-view-CvfqzV03.js.map → page-view-DJ6HS_dV.js.map} +1 -1
  190. package/dist/chunks/{pathname.rental-CwK6JuID.js → pathname.rental-DgH4LoG7.js} +7 -2
  191. package/dist/chunks/{pathname.rental-CwK6JuID.js.map → pathname.rental-DgH4LoG7.js.map} +1 -1
  192. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js → pathname.rental-qsAe3XFd.esm.js} +81 -76
  193. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js.map → pathname.rental-qsAe3XFd.esm.js.map} +1 -1
  194. package/dist/chunks/{quick-approval-modal-B-jvkgue.esm.js → quick-approval-modal-CPWs8htH.esm.js} +2 -2
  195. package/dist/chunks/{quick-approval-modal-B-jvkgue.esm.js.map → quick-approval-modal-CPWs8htH.esm.js.map} +1 -1
  196. package/dist/chunks/{reducer-BOwyP0QZ.esm.js → reducer-3tSO6RW6.esm.js} +3 -3
  197. package/dist/chunks/{reducer-BOwyP0QZ.esm.js.map → reducer-3tSO6RW6.esm.js.map} +1 -1
  198. package/dist/chunks/{reducer-BMkh_0Py.esm.js → reducer-CdJ6znKF.esm.js} +3 -3
  199. package/dist/chunks/{reducer-BMkh_0Py.esm.js.map → reducer-CdJ6znKF.esm.js.map} +1 -1
  200. package/dist/chunks/{reducer-BTfG9J4W.esm.js → reducer-IsgN83rP.esm.js} +2 -2
  201. package/dist/chunks/{reducer-BTfG9J4W.esm.js.map → reducer-IsgN83rP.esm.js.map} +1 -1
  202. package/dist/chunks/{reducer-CD1VDqeT.esm.js → reducer-sgaK2vfW.esm.js} +2 -2
  203. package/dist/chunks/{reducer-CD1VDqeT.esm.js.map → reducer-sgaK2vfW.esm.js.map} +1 -1
  204. package/dist/chunks/{reducer-BWiX5vxL.esm.js → reducer-yyZtsg1A.esm.js} +2 -2
  205. package/dist/chunks/{reducer-BWiX5vxL.esm.js.map → reducer-yyZtsg1A.esm.js.map} +1 -1
  206. package/dist/chunks/{reports-title-bar-Kl8XQe-K.esm.js → reports-title-bar-Cay4E8SQ.esm.js} +4 -4
  207. package/dist/chunks/{reports-title-bar-Kl8XQe-K.esm.js.map → reports-title-bar-Cay4E8SQ.esm.js.map} +1 -1
  208. package/dist/chunks/{reports-title-bar-B1_IweEc.js → reports-title-bar-Kz6JjqsY.js} +2 -2
  209. package/dist/chunks/{reports-title-bar-B1_IweEc.js.map → reports-title-bar-Kz6JjqsY.js.map} +1 -1
  210. package/dist/chunks/{route-page-map-D6-7jBQT.esm.js → route-page-map-DkWoisiB.esm.js} +133 -76
  211. package/dist/chunks/{route-page-map-D6-7jBQT.esm.js.map → route-page-map-DkWoisiB.esm.js.map} +1 -1
  212. package/dist/chunks/{route-page-map-CzFUh-SC.js → route-page-map-Dn-SAbdf.js} +60 -3
  213. package/dist/chunks/{route-page-map-CzFUh-SC.js.map → route-page-map-Dn-SAbdf.js.map} +1 -1
  214. package/dist/chunks/{routes-D9y_XQRu.esm.js → routes-CAc76Zan.esm.js} +4 -4
  215. package/dist/chunks/{routes-D9y_XQRu.esm.js.map → routes-CAc76Zan.esm.js.map} +1 -1
  216. package/dist/chunks/{routes-Dsumzjw0.js → routes-CfqLAYgR.js} +4 -4
  217. package/dist/chunks/{routes-Dsumzjw0.js.map → routes-CfqLAYgR.js.map} +1 -1
  218. package/dist/chunks/{schedule-report-BwmZ5jea.js → schedule-report-B4ZfEuiU.js} +4 -4
  219. package/dist/chunks/{schedule-report-BwmZ5jea.js.map → schedule-report-B4ZfEuiU.js.map} +1 -1
  220. package/dist/chunks/{schedule-report-CJXHVZ68.esm.js → schedule-report-CLXjjfjc.esm.js} +6 -6
  221. package/dist/chunks/{schedule-report-CJXHVZ68.esm.js.map → schedule-report-CLXjjfjc.esm.js.map} +1 -1
  222. package/dist/chunks/{schedule-report-modal-D8Y-TZ4u.esm.js → schedule-report-modal-CB3G9H7x.esm.js} +3 -3
  223. package/dist/chunks/{schedule-report-modal-D8Y-TZ4u.esm.js.map → schedule-report-modal-CB3G9H7x.esm.js.map} +1 -1
  224. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js → schedule-report-modal-iwoDI-sg.js} +2 -2
  225. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js.map → schedule-report-modal-iwoDI-sg.js.map} +1 -1
  226. package/dist/chunks/{searchable-select-BQtcqBKV.esm.js → searchable-select-0F6E4XAr.esm.js} +6 -6
  227. package/dist/chunks/{searchable-select-BQtcqBKV.esm.js.map → searchable-select-0F6E4XAr.esm.js.map} +1 -1
  228. package/dist/chunks/{searchable-select-DVUCWWti.js → searchable-select-_DCkITfk.js} +2 -2
  229. package/dist/chunks/{searchable-select-DVUCWWti.js.map → searchable-select-_DCkITfk.js.map} +1 -1
  230. package/dist/chunks/{share-modal-BOyLBawK.esm.js → share-modal-BaEyZs2h.esm.js} +3 -3
  231. package/dist/chunks/{share-modal-BOyLBawK.esm.js.map → share-modal-BaEyZs2h.esm.js.map} +1 -1
  232. package/dist/chunks/{share-modal-CobK7BN7.js → share-modal-DrXvh-fV.js} +2 -2
  233. package/dist/chunks/{share-modal-CobK7BN7.js.map → share-modal-DrXvh-fV.js.map} +1 -1
  234. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js → share-modal-enhanced-BTr0zRhF.js} +2 -2
  235. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js.map → share-modal-enhanced-BTr0zRhF.js.map} +1 -1
  236. package/dist/chunks/{share-modal-enhanced-CTp-tQw8.esm.js → share-modal-enhanced-DnEdDBmu.esm.js} +2 -2
  237. package/dist/chunks/{share-modal-enhanced-CTp-tQw8.esm.js.map → share-modal-enhanced-DnEdDBmu.esm.js.map} +1 -1
  238. package/dist/chunks/{sidebarScreen-lR6rw8bW.esm.js → sidebarScreen-DiOAiXeU.esm.js} +4 -4
  239. package/dist/chunks/{sidebarScreen-lR6rw8bW.esm.js.map → sidebarScreen-DiOAiXeU.esm.js.map} +1 -1
  240. package/dist/chunks/{sidebarScreen-K-dlM6NA.js → sidebarScreen-DpYj_wlK.js} +3 -3
  241. package/dist/chunks/{sidebarScreen-K-dlM6NA.js.map → sidebarScreen-DpYj_wlK.js.map} +1 -1
  242. package/dist/chunks/{store-DJh8C3Vv.esm.js → store-BL5VFPie.esm.js} +6 -6
  243. package/dist/chunks/{store-DJh8C3Vv.esm.js.map → store-BL5VFPie.esm.js.map} +1 -1
  244. package/dist/chunks/{table-Bpt6ggr3.js → table-DWx7x8zw.js} +2 -2
  245. package/dist/chunks/{table-Bpt6ggr3.js.map → table-DWx7x8zw.js.map} +1 -1
  246. package/dist/chunks/{table-form-8_f3FwhX.esm.js → table-form-DsTwCUcs.esm.js} +2 -2
  247. package/dist/chunks/{table-form-8_f3FwhX.esm.js.map → table-form-DsTwCUcs.esm.js.map} +1 -1
  248. package/dist/chunks/{table-DI3MyTNm.esm.js → table-gxAlAeTq.esm.js} +3 -3
  249. package/dist/chunks/{table-DI3MyTNm.esm.js.map → table-gxAlAeTq.esm.js.map} +1 -1
  250. package/dist/chunks/{template-editor-router-uzghBOap.esm.js → template-editor-router-BXLUTvsk.esm.js} +2 -2
  251. package/dist/chunks/{template-editor-router-uzghBOap.esm.js.map → template-editor-router-BXLUTvsk.esm.js.map} +1 -1
  252. package/dist/chunks/{template-editor-router-DugWbCh0.js → template-editor-router-D4NIwVws.js} +2 -2
  253. package/dist/chunks/{template-editor-router-DugWbCh0.js.map → template-editor-router-D4NIwVws.js.map} +1 -1
  254. package/dist/chunks/{template-modal-D7aLacan.esm.js → template-modal-B2VgotrF.esm.js} +6 -7
  255. package/dist/chunks/template-modal-B2VgotrF.esm.js.map +1 -0
  256. package/dist/chunks/{template-modal-Df7gF4QI.js → template-modal-X-iSmlki.js} +4 -5
  257. package/dist/chunks/template-modal-X-iSmlki.js.map +1 -0
  258. package/dist/chunks/{template-name-modal-ClreVUaz.js → template-name-modal-CeqxIE2r.js} +5 -12
  259. package/dist/chunks/template-name-modal-CeqxIE2r.js.map +1 -0
  260. package/dist/chunks/{template-name-modal-Dwe7U72p.esm.js → template-name-modal-Dctn8t3t.esm.js} +5 -12
  261. package/dist/chunks/template-name-modal-Dctn8t3t.esm.js.map +1 -0
  262. package/dist/chunks/{templates-9ZMHwRR6.esm.js → templates-CCy1eG6A.esm.js} +17 -10
  263. package/dist/chunks/templates-CCy1eG6A.esm.js.map +1 -0
  264. package/dist/chunks/{templates-DCXbeOtH.js → templates-CUREMwYo.js} +14 -7
  265. package/dist/chunks/templates-CUREMwYo.js.map +1 -0
  266. package/dist/chunks/{text-measurement-DMVkqP6b.esm.js → text-measurement-BCjauPbB.esm.js} +2 -2
  267. package/dist/chunks/{text-measurement-DMVkqP6b.esm.js.map → text-measurement-BCjauPbB.esm.js.map} +1 -1
  268. package/dist/chunks/{translations-JcE6qyDJ.esm.js → translations-BrwQcVN3.esm.js} +3 -3
  269. package/dist/chunks/{translations-JcE6qyDJ.esm.js.map → translations-BrwQcVN3.esm.js.map} +1 -1
  270. package/dist/chunks/{uom-field-wrapper-CWTsSsSi.esm.js → uom-field-wrapper-CTbEc-MB.esm.js} +2 -2
  271. package/dist/chunks/{uom-field-wrapper-CWTsSsSi.esm.js.map → uom-field-wrapper-CTbEc-MB.esm.js.map} +1 -1
  272. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js → uom-field-wrapper-DXZgzOYB.js} +2 -2
  273. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js.map → uom-field-wrapper-DXZgzOYB.js.map} +1 -1
  274. package/dist/chunks/{upload-excel-CkEQqZW2.esm.js → upload-excel-BZPP13tP.esm.js} +2 -2
  275. package/dist/chunks/{upload-excel-CkEQqZW2.esm.js.map → upload-excel-BZPP13tP.esm.js.map} +1 -1
  276. package/dist/chunks/{use-translations-Cn3b4Kqh.js → use-translations-5wUQBxMm.js} +2 -2
  277. package/dist/chunks/{use-translations-Cn3b4Kqh.js.map → use-translations-5wUQBxMm.js.map} +1 -1
  278. package/dist/chunks/{use-translations-BqBPN1DM.esm.js → use-translations-CcjSFA3F.esm.js} +3 -3
  279. package/dist/chunks/{use-translations-BqBPN1DM.esm.js.map → use-translations-CcjSFA3F.esm.js.map} +1 -1
  280. package/dist/chunks/{useAccountSetting-DsU5zsjb.esm.js → useAccountSetting-vAqgEiJB.esm.js} +2 -2
  281. package/dist/chunks/{useAccountSetting-DsU5zsjb.esm.js.map → useAccountSetting-vAqgEiJB.esm.js.map} +1 -1
  282. package/dist/chunks/{useCheckSkuAndName-5ua30aZf.esm.js → useCheckSkuAndName-Dl24wQO-.esm.js} +2 -2
  283. package/dist/chunks/{useCheckSkuAndName-5ua30aZf.esm.js.map → useCheckSkuAndName-Dl24wQO-.esm.js.map} +1 -1
  284. package/dist/chunks/{useReduxIntegration-BlLpfwk6.esm.js → useReduxIntegration-DZBfKF7d.esm.js} +2 -2
  285. package/dist/chunks/{useReduxIntegration-BlLpfwk6.esm.js.map → useReduxIntegration-DZBfKF7d.esm.js.map} +1 -1
  286. package/dist/chunks/{useUniquenessCheck-CiR2q5bM.esm.js → useUniquenessCheck-bYjnp_0P.esm.js} +2 -2
  287. package/dist/chunks/{useUniquenessCheck-CiR2q5bM.esm.js.map → useUniquenessCheck-bYjnp_0P.esm.js.map} +1 -1
  288. package/dist/chunks/{useVendorAICompare-DMJvJJ3Y.esm.js → useVendorAICompare-DZRFDk4i.esm.js} +2 -2
  289. package/dist/chunks/{useVendorAICompare-DMJvJJ3Y.esm.js.map → useVendorAICompare-DZRFDk4i.esm.js.map} +1 -1
  290. package/dist/chunks/{value-editor-Br7X_wEB.js → value-editor-BSS9Ns2T.js} +2 -2
  291. package/dist/chunks/{value-editor-Br7X_wEB.js.map → value-editor-BSS9Ns2T.js.map} +1 -1
  292. package/dist/chunks/{value-editor-BxFdnUyM.esm.js → value-editor-DQ1qgZ2u.esm.js} +4 -4
  293. package/dist/chunks/{value-editor-BxFdnUyM.esm.js.map → value-editor-DQ1qgZ2u.esm.js.map} +1 -1
  294. package/dist/chunks/{vendor-ai-summary-Cpx90QOx.esm.js → vendor-ai-summary-BA6m2dH9.esm.js} +2 -2
  295. package/dist/chunks/{vendor-ai-summary-Cpx90QOx.esm.js.map → vendor-ai-summary-BA6m2dH9.esm.js.map} +1 -1
  296. package/dist/chunks/{vendor-ai-summary-zranZkfk.js → vendor-ai-summary-DWmAaQ_N.js} +2 -2
  297. package/dist/chunks/{vendor-ai-summary-zranZkfk.js.map → vendor-ai-summary-DWmAaQ_N.js.map} +1 -1
  298. package/dist/components/action-bar/action-bar/index.esm.js +1 -1
  299. package/dist/components/action-bar/action-bar/index.js +1 -1
  300. package/dist/components/action-bar/index.esm.js +1 -1
  301. package/dist/components/action-bar/index.js +1 -1
  302. package/dist/components/address-modal/index.esm.js +1 -1
  303. package/dist/components/address-modal/index.js +1 -1
  304. package/dist/components/ai-summary/ai-summary/index.esm.js +1 -1
  305. package/dist/components/ai-summary/index.esm.js +1 -1
  306. package/dist/components/appbar/appbar/index.esm.js +1 -1
  307. package/dist/components/appbar/appbar/index.js +1 -1
  308. package/dist/components/appbar/index.esm.js +1 -1
  309. package/dist/components/appbar/index.js +1 -1
  310. package/dist/components/approval-wrapper/approval-wrapper/index.esm.js +1 -1
  311. package/dist/components/approval-wrapper/index.esm.js +1 -1
  312. package/dist/components/chat-bot/index.esm.js +1 -1
  313. package/dist/components/chat-bot/index.js +1 -1
  314. package/dist/components/custom-forms/FORMS/index.esm.js +1 -1
  315. package/dist/components/custom-forms/FORMS/index.js +1 -1
  316. package/dist/components/custom-forms/grid-view/grid-view/index.esm.js +1 -1
  317. package/dist/components/custom-forms/grid-view/index.esm.js +1 -1
  318. package/dist/components/custom-forms/index.esm.js +2 -2
  319. package/dist/components/custom-forms/index.js +1 -1
  320. package/dist/components/department-add-modal/index.esm.js +1 -1
  321. package/dist/components/department-add-modal/index.js +1 -1
  322. package/dist/components/designation-add-modal/index.esm.js +1 -1
  323. package/dist/components/designation-add-modal/index.js +1 -1
  324. package/dist/components/editor/custom-editor/index.esm.js +1 -1
  325. package/dist/components/editor/index.esm.js +1 -1
  326. package/dist/components/examples/FlexibleReduxExample/index.esm.js +1 -1
  327. package/dist/components/examples/FlexibleReduxExample/index.js +1 -1
  328. package/dist/components/examples/index.esm.js +1 -1
  329. package/dist/components/examples/index.js +1 -1
  330. package/dist/components/filter/components/index.esm.js +1 -1
  331. package/dist/components/filter/components/index.js +1 -1
  332. package/dist/components/filter/components/value-editor/index.esm.js +1 -1
  333. package/dist/components/filter/components/value-editor/index.js +1 -1
  334. package/dist/components/filter/filter/index.esm.js +1 -1
  335. package/dist/components/filter/filter/index.js +1 -1
  336. package/dist/components/filter/index.esm.js +2 -2
  337. package/dist/components/filter/index.js +2 -2
  338. package/dist/components/footer/footer/index.esm.js +1 -1
  339. package/dist/components/footer/footer/index.js +1 -1
  340. package/dist/components/footer/index.esm.js +1 -1
  341. package/dist/components/footer/index.js +1 -1
  342. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.esm.js +1 -1
  343. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.js +1 -1
  344. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.esm.js +1 -1
  345. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.js +1 -1
  346. package/dist/components/form-control/form-builder/form-builder-element/dynamic-text-editor/index.esm.js +1 -1
  347. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.esm.js +1 -1
  348. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.js +1 -1
  349. package/dist/components/form-control/form-builder/form-builder-element/index.esm.js +4 -4
  350. package/dist/components/form-control/form-builder/form-builder-element/index.js +3 -3
  351. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.esm.js +1 -1
  352. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.js +1 -1
  353. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.esm.js +1 -1
  354. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.js +1 -1
  355. package/dist/components/form-control/form-builder/form-builder-element/table/index.esm.js +1 -1
  356. package/dist/components/form-control/form-builder/form-builder-element/table/index.js +1 -1
  357. package/dist/components/form-control/form-builder/index.esm.js +4 -4
  358. package/dist/components/form-control/form-builder/index.js +3 -3
  359. package/dist/components/form-control/form-parser/form-parser/index.esm.js +1 -1
  360. package/dist/components/form-control/form-parser/form-parser/index.js +1 -1
  361. package/dist/components/form-control/form-parser/form-section/index.esm.js +1 -1
  362. package/dist/components/form-control/form-parser/form-section/index.js +1 -1
  363. package/dist/components/form-control/form-parser/index.esm.js +2 -2
  364. package/dist/components/form-control/form-parser/index.js +2 -2
  365. package/dist/components/form-control/index.esm.js +6 -6
  366. package/dist/components/form-control/index.js +5 -5
  367. package/dist/components/header/components/app-switcher/index.esm.js +1 -1
  368. package/dist/components/header/components/app-switcher/index.js +1 -1
  369. package/dist/components/header/components/global-search/index.esm.js +1 -1
  370. package/dist/components/header/components/global-search/index.js +1 -1
  371. package/dist/components/header/components/index.esm.js +1 -1
  372. package/dist/components/header/components/index.js +1 -1
  373. package/dist/components/header/components/notification-menu/index.esm.js +1 -1
  374. package/dist/components/header/components/notification-menu/index.js +1 -1
  375. package/dist/components/header/components/notification-menu/notification-menu/index.esm.js +1 -1
  376. package/dist/components/header/components/notification-menu/notification-menu/index.js +1 -1
  377. package/dist/components/header/header/index.esm.js +1 -1
  378. package/dist/components/header/header/index.js +1 -1
  379. package/dist/components/header/header-enhanced/index.esm.js +1 -1
  380. package/dist/components/header/header-enhanced/index.js +1 -1
  381. package/dist/components/header/index.esm.js +5 -5
  382. package/dist/components/header/index.js +3 -3
  383. package/dist/components/header/redux/actionCreator/index.esm.js +1 -1
  384. package/dist/components/header/redux/index.esm.js +2 -2
  385. package/dist/components/header/redux/reducer/index.esm.js +1 -1
  386. package/dist/components/index.esm.js +36 -36
  387. package/dist/components/index.js +27 -27
  388. package/dist/components/inventory-reports-title-bar/index.esm.js +3 -3
  389. package/dist/components/inventory-reports-title-bar/index.js +1 -1
  390. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.esm.js +1 -1
  391. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.js +1 -1
  392. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  393. package/dist/components/inventory-reports-title-bar/redux/index.esm.js +2 -2
  394. package/dist/components/inventory-reports-title-bar/redux/reducer/index.esm.js +1 -1
  395. package/dist/components/listing/index.esm.js +1 -1
  396. package/dist/components/listing/index.js +1 -1
  397. package/dist/components/listing/listing/index.esm.js +1 -1
  398. package/dist/components/listing/listing/index.js +1 -1
  399. package/dist/components/location-select/index.esm.js +1 -1
  400. package/dist/components/location-select/index.js +1 -1
  401. package/dist/components/material-editable-table/components/index.esm.js +1 -1
  402. package/dist/components/material-editable-table/components/index.js +1 -1
  403. package/dist/components/material-editable-table/components/inline-edit-fields/index.esm.js +1 -1
  404. package/dist/components/material-editable-table/components/inline-edit-fields/index.js +1 -1
  405. package/dist/components/material-editable-table/index.esm.js +2 -2
  406. package/dist/components/material-editable-table/index.js +2 -2
  407. package/dist/components/material-editable-table/material-editable-table/index.esm.js +1 -1
  408. package/dist/components/material-editable-table/material-editable-table/index.js +1 -1
  409. package/dist/components/material-table/components/index.esm.js +1 -1
  410. package/dist/components/material-table/components/index.js +1 -1
  411. package/dist/components/material-table/components/inline-edit-fields/index.esm.js +1 -1
  412. package/dist/components/material-table/components/inline-edit-fields/index.js +1 -1
  413. package/dist/components/material-table/index.esm.js +1 -1
  414. package/dist/components/material-table/index.js +1 -1
  415. package/dist/components/material-table/material-table/index.esm.js +1 -1
  416. package/dist/components/material-table/material-table/index.js +1 -1
  417. package/dist/components/page-navigator/components/index.esm.js +1 -1
  418. package/dist/components/page-navigator/components/index.js +1 -1
  419. package/dist/components/page-navigator/components/page-action/index.esm.js +1 -1
  420. package/dist/components/page-navigator/components/page-action/index.js +1 -1
  421. package/dist/components/page-navigator/index.esm.js +2 -2
  422. package/dist/components/page-navigator/index.js +2 -2
  423. package/dist/components/page-navigator/page-navigator/index.esm.js +1 -1
  424. package/dist/components/page-navigator/page-navigator/index.js +1 -1
  425. package/dist/components/parties-modal/index.esm.js +1 -1
  426. package/dist/components/parties-modal/index.js +1 -1
  427. package/dist/components/parties-modal/parties-modal/index.esm.js +1 -1
  428. package/dist/components/parties-modal/parties-modal/index.js +1 -1
  429. package/dist/components/providers/ERPUIProvider/index.esm.js +1 -1
  430. package/dist/components/providers/index.esm.js +1 -1
  431. package/dist/components/quick-approval-modal/index.esm.js +1 -1
  432. package/dist/components/quick-approval-modal/quick-approval-modal/index.esm.js +1 -1
  433. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js +1 -1
  434. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js +1 -1
  435. package/dist/components/reports/dynamic-report/index.esm.js +2 -2
  436. package/dist/components/reports/index.esm.js +2 -2
  437. package/dist/components/reports-title-bar/index.esm.js +3 -3
  438. package/dist/components/reports-title-bar/index.js +1 -1
  439. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  440. package/dist/components/reports-title-bar/redux/index.esm.js +2 -2
  441. package/dist/components/reports-title-bar/redux/reducer/index.esm.js +1 -1
  442. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +1 -1
  443. package/dist/components/reports-title-bar/reports-title-bar/index.js +1 -1
  444. package/dist/components/rfq-response/index.esm.js +1 -1
  445. package/dist/components/rfq-response/index.js +1 -1
  446. package/dist/components/rfq-response/item-response-details/index.esm.js +1 -1
  447. package/dist/components/rfq-response/item-response-details/index.js +1 -1
  448. package/dist/components/schedule-report/index.esm.js +2 -2
  449. package/dist/components/schedule-report/index.js +2 -2
  450. package/dist/components/schedule-report/schedule-report/index.esm.js +1 -1
  451. package/dist/components/schedule-report/schedule-report/index.js +1 -1
  452. package/dist/components/schedule-report/schedule-report-modal/index.esm.js +1 -1
  453. package/dist/components/schedule-report/schedule-report-modal/index.js +1 -1
  454. package/dist/components/schedule-report/utils/common/index.esm.js +1 -1
  455. package/dist/components/searchable-select/index.esm.js +1 -1
  456. package/dist/components/searchable-select/index.js +1 -1
  457. package/dist/components/share-modal/index.esm.js +4 -4
  458. package/dist/components/share-modal/index.js +2 -2
  459. package/dist/components/share-modal/redux/actionCreator/index.esm.js +1 -1
  460. package/dist/components/share-modal/redux/index.esm.js +2 -2
  461. package/dist/components/share-modal/redux/reducer/index.esm.js +1 -1
  462. package/dist/components/share-modal/share-modal/index.esm.js +1 -1
  463. package/dist/components/share-modal/share-modal/index.js +1 -1
  464. package/dist/components/share-modal/share-modal-enhanced/index.esm.js +1 -1
  465. package/dist/components/share-modal/share-modal-enhanced/index.js +1 -1
  466. package/dist/components/team-add-modal/index.esm.js +1 -1
  467. package/dist/components/team-add-modal/index.js +1 -1
  468. package/dist/components/uom-field-wrapper/index.esm.js +1 -1
  469. package/dist/components/uom-field-wrapper/index.js +1 -1
  470. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.esm.js +1 -1
  471. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.js +1 -1
  472. package/dist/components/upload-excel/index.esm.js +1 -1
  473. package/dist/components/upload-excel/upload-excel/index.esm.js +1 -1
  474. package/dist/components/vendor-ai-summary/index.esm.js +1 -1
  475. package/dist/components/vendor-ai-summary/index.js +1 -1
  476. package/dist/constants/index.esm.js +145 -143
  477. package/dist/constants/index.js +5 -3
  478. package/dist/constants/index.js.map +1 -1
  479. package/dist/hooks/index.esm.js +6 -6
  480. package/dist/hooks/index.js +1 -1
  481. package/dist/hooks/use-translations/index.esm.js +1 -1
  482. package/dist/hooks/use-translations/index.js +1 -1
  483. package/dist/hooks/useAccountSetting/index.esm.js +1 -1
  484. package/dist/hooks/useCheckSkuAndName/index.esm.js +1 -1
  485. package/dist/hooks/useReduxIntegration/index.esm.js +1 -1
  486. package/dist/hooks/useUniquenessCheck/index.esm.js +1 -1
  487. package/dist/images/index.esm.js +5 -5
  488. package/dist/images/index.esm.js.map +1 -1
  489. package/dist/images/index.js +5 -5
  490. package/dist/images/index.js.map +1 -1
  491. package/dist/index.esm.js +232 -235
  492. package/dist/index.esm.js.map +1 -1
  493. package/dist/index.js +64 -67
  494. package/dist/index.js.map +1 -1
  495. package/dist/layout/fullScreen/index.esm.js +1 -1
  496. package/dist/layout/fullScreen/index.js +1 -1
  497. package/dist/layout/index.esm.js +2 -2
  498. package/dist/layout/index.js +2 -2
  499. package/dist/layout/sidebarScreen/index.esm.js +1 -1
  500. package/dist/layout/sidebarScreen/index.js +1 -1
  501. package/dist/redux/index.esm.js +3 -3
  502. package/dist/runtime/index.esm.js +4 -4
  503. package/dist/runtime/index.js +2 -2
  504. package/dist/src/components/chat-bot/chat-bot-welcome.d.ts +2 -1
  505. package/dist/src/components/chat-bot/chat-bot.d.ts +5 -1
  506. package/dist/src/constants/defaultColumns.d.ts +1 -0
  507. package/dist/src/constants/pathnames/pathname.procurement.d.ts +4 -0
  508. package/dist/src/layout/fullScreen/fullScreen.d.ts +1 -0
  509. package/dist/src/views/template-editor/components/EditorCanvas.d.ts +12 -30
  510. package/dist/src/views/template-editor/components/EditorHeader.d.ts +0 -6
  511. package/dist/src/views/template-editor/components/EditorSection.d.ts +0 -1
  512. package/dist/src/views/template-editor/components/SectionFlowEditor.d.ts +3 -2
  513. package/dist/src/views/template-editor/components/SectionFormatPanel.d.ts +1 -2
  514. package/dist/src/views/template-editor/components/controllers/TableControls.d.ts +0 -23
  515. package/dist/src/views/template-editor/components/controllers/TextControls.d.ts +0 -3
  516. package/dist/src/views/template-editor/types/editor.d.ts +108 -20
  517. package/dist/src/views/template-editor/utils/common.d.ts +1 -10
  518. package/dist/src/views/template-editor/utils/constant.d.ts +1 -4
  519. package/dist/style.css +100 -4629
  520. package/dist/utils/api/index.esm.js +1 -1
  521. package/dist/utils/common/index.esm.js +1 -1
  522. package/dist/utils/common-utility/index.esm.js +1 -1
  523. package/dist/utils/export-filters/index.esm.js +1 -0
  524. package/dist/utils/export-filters/index.esm.js.map +1 -1
  525. package/dist/utils/export-filters/index.js +1 -0
  526. package/dist/utils/export-filters/index.js.map +1 -1
  527. package/dist/utils/index.esm.js +8 -8
  528. package/dist/utils/server/index.esm.js +2 -2
  529. package/dist/utils/text-measurement/index.esm.js +1 -1
  530. package/dist/views/afterAuth/dashboard/index.esm.js +1 -1
  531. package/dist/views/afterAuth/dashboard/index.js +1 -1
  532. package/dist/views/afterAuth/index.esm.js +2 -2
  533. package/dist/views/afterAuth/index.js +2 -2
  534. package/dist/views/afterAuth/page-view/index.esm.js +1 -1
  535. package/dist/views/afterAuth/page-view/index.js +1 -1
  536. package/dist/views/form-builder/custom-form/index.esm.js +1 -1
  537. package/dist/views/form-builder/custom-form/index.js +1 -1
  538. package/dist/views/form-builder/element-edit-forms/index.esm.js +1 -1
  539. package/dist/views/form-builder/form-fields/index.esm.js +1 -1
  540. package/dist/views/form-builder/form-fields/index.js +1 -1
  541. package/dist/views/form-builder/index.esm.js +5 -5
  542. package/dist/views/form-builder/index.js +3 -3
  543. package/dist/views/form-builder/redux/index.esm.js +1 -1
  544. package/dist/views/form-builder/utils/index.esm.js +1 -1
  545. package/dist/views/form-builder/utils/index.js +1 -1
  546. package/dist/views/index.esm.js +34 -39
  547. package/dist/views/index.esm.js.map +1 -1
  548. package/dist/views/index.js +31 -36
  549. package/dist/views/index.js.map +1 -1
  550. package/dist/views/template-editor/add-template/index.esm.js +1 -1
  551. package/dist/views/template-editor/add-template/index.js +1 -1
  552. package/dist/views/template-editor/components/index.esm.js +6 -7
  553. package/dist/views/template-editor/components/index.esm.js.map +1 -1
  554. package/dist/views/template-editor/components/index.js +3 -4
  555. package/dist/views/template-editor/components/index.js.map +1 -1
  556. package/dist/views/template-editor/edit-section-modal/index.esm.js +1 -1
  557. package/dist/views/template-editor/index.esm.js +20 -25
  558. package/dist/views/template-editor/index.esm.js.map +1 -1
  559. package/dist/views/template-editor/index.js +11 -16
  560. package/dist/views/template-editor/index.js.map +1 -1
  561. package/dist/views/template-editor/routes/index.esm.js +1 -1
  562. package/dist/views/template-editor/routes/index.js +1 -1
  563. package/dist/views/template-editor/template-modal/index.esm.js +1 -1
  564. package/dist/views/template-editor/template-modal/index.js +1 -1
  565. package/dist/views/template-editor/template-name-modal/index.esm.js +1 -1
  566. package/dist/views/template-editor/template-name-modal/index.js +1 -1
  567. package/dist/views/template-editor/templates/index.esm.js +1 -1
  568. package/dist/views/template-editor/templates/index.js +1 -1
  569. package/dist/views/template-editor/utils/index.esm.js +6 -10
  570. package/dist/views/template-editor/utils/index.js +2 -6
  571. package/dist/views/template-editor/utils/index.js.map +1 -1
  572. package/package.json +1 -1
  573. package/dist/chunks/EditorSection-BLGcgQFm.esm.js +0 -849
  574. package/dist/chunks/EditorSection-BLGcgQFm.esm.js.map +0 -1
  575. package/dist/chunks/EditorSection-D6yaBfjP.js +0 -848
  576. package/dist/chunks/EditorSection-D6yaBfjP.js.map +0 -1
  577. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js +0 -12543
  578. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js.map +0 -1
  579. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js +0 -12542
  580. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js.map +0 -1
  581. package/dist/chunks/add-template-CUPbU0z7.js +0 -10
  582. package/dist/chunks/add-template-CUPbU0z7.js.map +0 -1
  583. package/dist/chunks/add-template-CxvhzFMF.esm.js +0 -11
  584. package/dist/chunks/add-template-CxvhzFMF.esm.js.map +0 -1
  585. package/dist/chunks/chat-bot-2Ga_xA_K.js.map +0 -1
  586. package/dist/chunks/chat-bot-DO3vAGxA.esm.js.map +0 -1
  587. package/dist/chunks/common-BgXEAs_y.esm.js +0 -851
  588. package/dist/chunks/common-BgXEAs_y.esm.js.map +0 -1
  589. package/dist/chunks/common-D6T6NGWY.js +0 -850
  590. package/dist/chunks/common-D6T6NGWY.js.map +0 -1
  591. package/dist/chunks/common-utility-CS_sNoAC.esm.js.map +0 -1
  592. package/dist/chunks/constant-BXPcBhJN.esm.js.map +0 -1
  593. package/dist/chunks/constant-BXeJD4Af.js.map +0 -1
  594. package/dist/chunks/edit-section-modal-HihKbN6K.esm.js.map +0 -1
  595. package/dist/chunks/fullScreen-Cz3FIdU4.esm.js.map +0 -1
  596. package/dist/chunks/fullScreen-h0JqBN4O.js.map +0 -1
  597. package/dist/chunks/template-modal-D7aLacan.esm.js.map +0 -1
  598. package/dist/chunks/template-modal-Df7gF4QI.js.map +0 -1
  599. package/dist/chunks/template-name-modal-ClreVUaz.js.map +0 -1
  600. package/dist/chunks/template-name-modal-Dwe7U72p.esm.js.map +0 -1
  601. package/dist/chunks/templates-9ZMHwRR6.esm.js.map +0 -1
  602. package/dist/chunks/templates-DCXbeOtH.js.map +0 -1
  603. package/dist/src/views/template-editor/components/EditorCanvas/FreeCanvas.d.ts +0 -34
  604. package/dist/src/views/template-editor/components/EditorCanvas/FreeElement.d.ts +0 -30
  605. package/dist/src/views/template-editor/components/stationery/StationeryPreview.d.ts +0 -24
  606. package/dist/src/views/template-editor/components/stationery/StationerySidebar.d.ts +0 -9
  607. package/dist/src/views/template-editor/engine/ai.d.ts +0 -12
  608. package/dist/src/views/template-editor/engine/app.d.ts +0 -1
  609. package/dist/src/views/template-editor/engine/controls.d.ts +0 -4
  610. package/dist/src/views/template-editor/engine/design-canvas.d.ts +0 -24
  611. package/dist/src/views/template-editor/engine/editor.d.ts +0 -17
  612. package/dist/src/views/template-editor/engine/engine.d.ts +0 -18
  613. package/dist/src/views/template-editor/engine/icons.d.ts +0 -91
  614. package/dist/src/views/template-editor/engine/letterpads.d.ts +0 -1
  615. package/dist/src/views/template-editor/engine/model.d.ts +0 -20
  616. package/dist/src/views/template-editor/engine/paginator.d.ts +0 -30
  617. package/dist/src/views/template-editor/engine/picker.d.ts +0 -20
  618. package/dist/src/views/template-editor/engine/schema.d.ts +0 -647
  619. package/dist/src/views/template-editor/engine/stationery-app.d.ts +0 -10
  620. package/dist/src/views/template-editor/engine/stationery-doc.d.ts +0 -62
  621. package/dist/src/views/template-editor/engine/stationery-free-element.d.ts +0 -22
  622. package/dist/src/views/template-editor/engine/stationery-store.d.ts +0 -154
  623. package/dist/src/views/template-editor/engine/templatebuilder.d.ts +0 -51
  624. package/dist/src/views/template-editor/engine/templates.d.ts +0 -11
  625. package/dist/src/views/template-editor/icons/custom-styled-icon.d.ts +0 -7
  626. package/dist/src/views/template-editor/icons/edit.d.ts +0 -4
  627. package/dist/src/views/template-editor/icons/trash.d.ts +0 -4
  628. package/dist/src/views/template-editor/types/stationery.d.ts +0 -66
  629. package/dist/src/views/template-editor/utils/compiler.d.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"table-form-8_f3FwhX.esm.js","sources":["../../src/views/form-builder/element-edit-forms/field-select.tsx","../../src/views/form-builder/element-edit-forms/text.tsx","../../src/views/form-builder/element-edit-forms/select.tsx","../../src/views/form-builder/element-edit-forms/section.tsx","../../src/views/form-builder/element-edit-forms/checkbox.tsx","../../src/views/form-builder/element-edit-forms/table-form.tsx"],"sourcesContent":["// React imports\nimport { useEffect, useState } from \"react\";\n\n// Material UI imports\nimport { MenuItem, SelectProps, Stack } from \"@mui/material\";\n\n// ERP Common imports\nimport {\n ArrowCircleDown,\n Calendar,\n CheckboxSquare,\n Clock,\n DollarCircle,\n Email,\n Grid,\n Hashtag,\n Image,\n InfoCircle,\n Link,\n LinkHorizontal,\n Location,\n PaperClip,\n Paragraph,\n Phone,\n RadioButton,\n ToggleSwitch,\n} from \"@/components/icons\";\nimport Select from \"@/components/select/select\";\nimport Typography from \"@/components/typography/typography\";\n\ninterface IField {\n label: string;\n value: string;\n icon: typeof Paragraph | string;\n}\n\nconst fields: IField[] = [\n { label: \"Text\", value: \"text\", icon: Paragraph },\n { label: \"Number\", value: \"number\", icon: Hashtag },\n { label: \"Select\", value: \"select\", icon: ArrowCircleDown },\n { label: \"Date\", value: \"date\", icon: Calendar },\n { label: \"Files & Media\", value: \"file\", icon: PaperClip },\n { label: \"URL\", value: \"url\", icon: Link },\n { label: \"Email\", value: \"email\", icon: Email },\n { label: \"Phone\", value: \"phone\", icon: Phone },\n { label: \"Currency\", value: \"currency\", icon: DollarCircle },\n { label: \"Time\", value: \"time\", icon: Clock },\n { label: \"Table\", value: \"table\", icon: Grid },\n { label: \"Geolocation\", value: \"geoLocation\", icon: Location },\n { label: \"Check Box\", value: \"checkbox\", icon: CheckboxSquare },\n { label: \"Image Upload\", value: \"image\", icon: Image },\n { label: \"Relation Field\", value: \"relation\", icon: LinkHorizontal },\n { label: \"Info Card\", value: \"info\", icon: InfoCircle },\n { label: \"Toggle Button\", value: \"toggleButton\", icon: ToggleSwitch },\n { label: \"Radio Button\", value: \"radioButton\", icon: RadioButton },\n { label: \"tagsInput\", value: \"tagsInput\", icon: Paragraph },\n];\n\nconst FieldSelect: React.FC<SelectProps> = (props) => {\n const [selectFields, setSelectFields] = useState<IField[]>(fields);\n const [search, setSearch] = useState<string>(\"\");\n\n const handleSearch = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearch(event.target.value);\n };\n\n const handleSearchFields = (searchVal: string) => {\n if (searchVal) {\n setSelectFields([\n ...fields.filter((field) => field.value.includes(searchVal)),\n ]);\n } else {\n setSelectFields(fields);\n }\n };\n\n useEffect(() => {\n handleSearchFields(search);\n }, [search]);\n\n return (\n <Select\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n labelName=\"Field Type\"\n renderValue={(value: string) =>\n fields.find((field) => field.value === value)?.label\n }\n handleSearch={() => handleSearch}\n searchPlaceholder=\"Search Attributes\"\n searchValue={search}\n {...props}\n >\n {selectFields.map((field) => (\n <MenuItem value={field.value} onKeyDown={(e) => e.stopPropagation()}>\n <Stack direction=\"row\" spacing={1} alignItems=\"center\">\n {field.icon && <field.icon fontSize=\"small\" />}\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n {field.label}\n </Typography>\n </Stack>\n </MenuItem>\n ))}\n </Select>\n );\n};\n\nexport default FieldSelect;\n","// React imports\nimport { useCallback, useEffect, useState, useMemo, useRef } from \"react\";\n\n// Material UI imports\nimport {\n DialogActions,\n DialogContent,\n DialogTitle,\n IconButton,\n MenuItem,\n Box,\n FormControlLabel,\n FormControl,\n Slider,\n} from \"@mui/material\";\nimport { Add, Close } from \"@mui/icons-material\";\n\n// ERP Common imports\nimport Button from \"@/components/button/button\";\nimport Modal from \"@/components/modal/modal\";\nimport Typography from \"@/components/typography/typography\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Select from \"@/components/select/select\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport formatText from \"@/utils/format-text\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport { IElementJson } from \"../custom-form\";\nimport { ApiFormFields } from \"../../Redux/state\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n}\n\ninterface ITextEditFormProps {\n handleWidthChange: (value?: number) => void;\n handleColumnSelect: (value?: number) => void;\n handlePropertyValueUpdate: (\n event?: React.ChangeEvent<HTMLInputElement>,\n numberValue?: number,\n value?: any,\n fieldType?: string,\n ) => void;\n element: IElementJson | null;\n fields: ApiFormFields | null;\n}\n\n// Constants moved outside to prevent re-creation\nconst COLUMN_PER_ROW_OPTIONS = [1, 2, 3, 4, 5, 6] as const;\nconst SELECT_OPTIONS = [\n { text: \"12 Hour\", value: \"12hr\" },\n { text: \"24 Hour\", value: \"24hr\" },\n] as const;\nconst CURRENCY_OPTIONS = [\n { text: \"INR (India)\", value: \"inr\" },\n { text: \"USD (US)\", value: \"usd\" },\n] as const;\n\nconst FIELDS_WITHOUT_PLACEHOLDER = new Set([\n \"time\", \"file\", \"geoLocation\", \"image\", \"info\", \"relation\"\n]);\nconst FIELDS_WITH_MIN_MAX = new Set([\"text\", \"number\"]);\n\n// Memoized components to prevent unnecessary re-renders\nconst MemoizedMenuItem = ({ option, index, prefix }: { option: any; index: number; prefix: string }) => (\n <MenuItem key={`${prefix}-${index}`} value={option.value}>\n {option.text || option.label}\n </MenuItem>\n);\n\nconst MemoizedRelationMenuItem = ({ option, index, prefix }: { option: Option; index: number; prefix: string }) => (\n <MenuItem key={`${prefix}-${index}`} value={option.value}>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n {option.label}\n </Typography>\n </MenuItem>\n);\n\nexport function TextEditForm(props: ITextEditFormProps) {\n const { \n handlePropertyValueUpdate, \n handleColumnSelect, \n handleWidthChange, \n fields, \n element \n } = props;\n\n // State management - optimized to prevent unnecessary re-renders\n const [elementJSON, setElementJSON] = useState<IElementJson | null>(element);\n const [openModal, setOpenModal] = useState(false);\n const [relationFields, setRelationFields] = useState<Option[]>([]);\n const [functionValue, setFunctionValue] = useState(\"\");\n \n // Use refs to track previous values and prevent unnecessary updates\n const prevElementRef = useRef<IElementJson | null>(element);\n const prevFieldsRef = useRef<ApiFormFields | null>(fields);\n\n // Memoized relation modules with deep comparison prevention\n const relationModulesOptions = useMemo(() => {\n if (!fields || fields === prevFieldsRef.current) {\n if (prevFieldsRef.current && fields) return prevFieldsRef.current;\n }\n \n prevFieldsRef.current = fields;\n \n if (!fields) return [];\n return Object.keys(fields).map((key) => ({\n label: formatText(key),\n value: key,\n }));\n }, [fields]);\n\n // Optimized relation fields setter with memoization\n const setRelationFieldsOptions = useCallback(\n (moduleValue?: string) => {\n if (!fields || !moduleValue) {\n setRelationFields(prev => prev.length > 0 ? [] : prev);\n return;\n }\n\n const fieldsArr = fields[moduleValue];\n if (fieldsArr?.length) {\n const options = fieldsArr.map((field) => ({\n label: field.field,\n value: field.field,\n }));\n \n // Only update if options actually changed\n setRelationFields(prev => {\n if (prev.length !== options.length) return options;\n const isDifferent = prev.some((item, idx) => \n item.value !== options[idx]?.value || item.label !== options[idx]?.label\n );\n return isDifferent ? options : prev;\n });\n } else {\n setRelationFields(prev => prev.length > 0 ? [] : prev);\n }\n },\n [fields]\n );\n\n // Memoized event handlers to prevent child re-renders\n const handleSave = useCallback((value: string) => {\n if (!elementJSON) return;\n \n // Only update if value actually changed\n if (elementJSON.default_value !== value) {\n const updatedElement = { ...elementJSON, default_value: value };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, value);\n }\n \n if (value) {\n setFunctionValue(\"\");\n setOpenModal(false);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleFieldUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const fieldType = e.target.value;\n if (elementJSON.field_type !== fieldType) {\n const updatedElement = { ...elementJSON, field_type: fieldType };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, null, e.target.value);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleSelectUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const option = e.target.value;\n if (elementJSON.option !== option) {\n const updatedElement = { ...elementJSON, option };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, option);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleModuleSelect = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const moduleValue = e.target.value;\n if (elementJSON?.module !== moduleValue) {\n setRelationFieldsOptions(moduleValue);\n handlePropertyValueUpdate(e);\n }\n }, [elementJSON?.module, setRelationFieldsOptions, handlePropertyValueUpdate]);\n\n const handleWidthSliderChange = useCallback((_: Event, value: number | number[]) => {\n if (!elementJSON) return;\n \n const widthValue = Array.isArray(value) ? value[0] : value;\n if (elementJSON.custom_width !== widthValue) {\n const updatedElement = { ...elementJSON, custom_width: widthValue };\n setElementJSON(updatedElement);\n handleWidthChange(widthValue);\n }\n }, [elementJSON, handleWidthChange]);\n\n const handleFullWidthChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const isFullWidth = e.target.checked;\n if (elementJSON.is_fullwidth !== isFullWidth) {\n const updatedElement = { ...elementJSON, is_fullwidth: isFullWidth };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(e);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleColumnSelectChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const columnValue = Number(e.target.value);\n handleColumnSelect(columnValue);\n }, [handleColumnSelect]);\n\n // Memoized helper functions\n const getDefaultValue = useCallback((elementJSON: IElementJson) => {\n if ([\"number\", \"currency\", \"geoLocation\"].includes(elementJSON.field_type)) {\n return elementJSON.default_value?.toString().replace(/[^0-9]/g, \"\") || \"\";\n }\n return elementJSON.default_value || \"\";\n }, []);\n\n const getMinMaxLabels = useCallback((fieldType: string) => {\n return fieldType === \"text\" \n ? { min: \"Min character count (with spaces)\", max: \"Max character count (with spaces)\" }\n : { min: \"Min number\", max: \"Max number\" };\n }, []);\n\n // Modal handlers\n const handleOpenModal = useCallback(() => setOpenModal(true), []);\n const handleCloseModal = useCallback(() => {\n setOpenModal(false);\n setFunctionValue(\"\");\n }, []);\n\n const handleFunctionValueChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n setFunctionValue(e.target.value);\n }, []);\n\n // Optimized effects with proper dependency arrays\n useEffect(() => {\n // Only update if element actually changed\n if (element !== prevElementRef.current) {\n setElementJSON(element);\n prevElementRef.current = element;\n \n if (element?.module) {\n setRelationFieldsOptions(element.module);\n }\n }\n }, [element, setRelationFieldsOptions]);\n\n // Memoized render sections to prevent unnecessary re-computation\n const currencySelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"currency\") return null;\n \n return (\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Currency\"\n size=\"small\"\n onChange={handleSelectUpdate}\n defaultValue={elementJSON.option}\n label=\"Currency\"\n name=\"option\"\n variant=\"outlined\"\n >\n {CURRENCY_OPTIONS.map((option, index) => (\n <MemoizedMenuItem \n key={`currency-${index}`}\n option={option} \n index={index} \n prefix=\"currency\" \n />\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n }, [elementJSON?.field_type, elementJSON?.option, handleSelectUpdate]);\n\n const timeSelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"time\") return null;\n \n return (\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Time Format\"\n size=\"small\"\n onChange={handleSelectUpdate}\n defaultValue={elementJSON.option}\n label=\"Time Format\"\n name=\"option\"\n variant=\"outlined\"\n >\n {SELECT_OPTIONS.map((option, index) => (\n <MemoizedMenuItem \n key={`time-${index}`}\n option={option} \n index={index} \n prefix=\"time\" \n />\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n }, [elementJSON?.field_type, elementJSON?.option, handleSelectUpdate]);\n\n const relationSelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"relation\") return null;\n \n return (\n <>\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder={\n relationModulesOptions.length\n ? \"Select Relation Module\"\n : \"No data available\"\n }\n size=\"small\"\n onChange={handleModuleSelect}\n value={elementJSON.module || \"\"}\n label=\"Relation Module\"\n name=\"module\"\n >\n {relationModulesOptions.length ? (\n relationModulesOptions.map((option, index) => (\n <MemoizedRelationMenuItem \n key={`module-${index}`}\n option={option} \n index={index} \n prefix=\"module\" \n />\n ))\n ) : (\n <MenuItem disabled>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n <em>No data available</em>\n </Typography>\n </MenuItem>\n )}\n </Select>\n </FormControl>\n </Box>\n\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder={\n !elementJSON.module\n ? \"Select Module First\"\n : relationFields.length\n ? \"Select Relation Field\"\n : \"No data available\"\n }\n size=\"small\"\n onChange={handlePropertyValueUpdate}\n value={elementJSON.field || \"\"}\n label=\"Relation Field\"\n disabled={!elementJSON.module}\n name=\"field\"\n >\n {relationFields.length ? (\n relationFields.map((option, index) => (\n <MemoizedRelationMenuItem \n key={`field-${index}`}\n option={option} \n index={index} \n prefix=\"field\" \n />\n ))\n ) : (\n <MenuItem disabled>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n <em>No data available</em>\n </Typography>\n </MenuItem>\n )}\n </Select>\n </FormControl>\n </Box>\n </>\n );\n }, [\n elementJSON?.field_type, \n elementJSON?.module, \n elementJSON?.field,\n relationModulesOptions, \n relationFields, \n handleModuleSelect, \n handlePropertyValueUpdate\n ]);\n\n // Early return if no element\n if (!elementJSON) {\n return null;\n }\n\n const { field_type } = elementJSON;\n const minMaxLabels = getMinMaxLabels(field_type);\n\n return (\n <Box className=\"formSection--FieldContainer\">\n {/* Field Type Selection */}\n <Box>\n <FieldSelect\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={field_type}\n label=\"Field Type\"\n disabled={elementJSON.type === \"system\" || !elementJSON.is_new}\n />\n </Box>\n\n {/* Label Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </Box>\n\n {/* File/Image Max Size */}\n {(field_type === \"file\" || field_type === \"image\") && (\n <Box>\n <TextField\n fullWidth\n label=\"Max File Size (in MB)\"\n name=\"max_size\"\n type=\"number\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.max_size}\n />\n </Box>\n )}\n\n {/* Currency Selection - Memoized */}\n {currencySelectSection}\n\n {/* Placeholder and Default Value */}\n {!FIELDS_WITHOUT_PLACEHOLDER.has(field_type) && (\n <>\n <Box>\n <TextField\n fullWidth\n label=\"Placeholder\"\n name=\"placeholder\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.placeholder}\n />\n </Box>\n <Box>\n <TextField\n fullWidth\n label=\"Default Value\"\n placeholder=\"Default Value\"\n name=\"default_value\"\n type={field_type === \"phone\" ? \"tel\" : field_type === \"number\" ? \"number\" : \"text\"}\n onChange={handlePropertyValueUpdate}\n defaultValue={getDefaultValue(elementJSON)}\n />\n </Box>\n </>\n )}\n\n {/* Time Format Selection - Memoized */}\n {timeSelectSection}\n\n {/* Relation Module and Field Selection - Memoized */}\n {relationSelectSection}\n\n {/* Min/Max Length for Text and Number Fields */}\n {FIELDS_WITH_MIN_MAX.has(field_type) && (\n <>\n <Box>\n <TextField\n fullWidth\n label={minMaxLabels.min}\n name=\"min_length\"\n type=\"number\"\n onChange={(e) => handlePropertyValueUpdate(e, Number(e.target.value))}\n defaultValue={elementJSON.min_length || elementJSON.min || 1}\n />\n </Box>\n <Box>\n <TextField\n fullWidth\n label={minMaxLabels.max}\n name=\"max_length\"\n type=\"number\"\n onChange={(e) => handlePropertyValueUpdate(e, Number(e.target.value))}\n defaultValue={\n elementJSON.max_length || \n elementJSON.max || \n (field_type === 'number' ? 10000 : 255)\n }\n />\n </Box>\n </>\n )}\n\n {/* Column Per Row Selection */}\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelectChange}\n value={elementJSON.columns_per_row || 1}\n label=\"Select Column Per Row\"\n name=\"columns_per_row\"\n variant=\"outlined\"\n >\n {COLUMN_PER_ROW_OPTIONS.map((option, index) => (\n <MenuItem key={`column-${index}`} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n\n {/* Width Adjustment Slider */}\n <Box>\n <Typography sx={{ color: 'black', mb: 1 }}>\n Adjust Width:\n </Typography>\n <Slider\n value={elementJSON.custom_width || 12}\n name=\"custom_width\"\n min={1}\n max={12}\n step={1}\n onChange={handleWidthSliderChange}\n aria-labelledby=\"width-slider\"\n sx={{ color: \"#4AC08C\" }}\n disabled={elementJSON.is_fullwidth}\n marks\n valueLabelDisplay=\"auto\"\n />\n </Box>\n\n {/* Number Field Specific Options */}\n {field_type === \"number\" && (\n <>\n <Box>\n <TextField\n fullWidth\n label=\"Float Step\"\n name=\"float_step\"\n type=\"number\"\n step=\"0.01\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.float_step}\n />\n </Box>\n <Box>\n <FormControlLabel\n name=\"is_negative\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_negative || false}\n label=\"Allow Negative Numbers\"\n />\n </Box>\n </>\n )}\n\n {/* Date Field Specific Options */}\n {field_type === \"date\" && (\n <>\n <Box>\n <FormControlLabel\n name=\"is_future_dates_allowed\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_future_dates_allowed || false}\n label=\"Allow Future Dates\"\n />\n </Box>\n <Box>\n <FormControlLabel\n name=\"is_past_dates_allowed\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_past_dates_allowed || false}\n label=\"Allow Past Dates\"\n />\n </Box>\n </>\n )}\n\n {/* Required Field Checkbox */}\n {field_type !== \"info\" && (\n <Box>\n <FormControlLabel\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_required || false}\n label=\"This field is required\"\n />\n </Box>\n )}\n\n {/* Email Unique Checkbox */}\n {field_type === \"email\" && (\n <Box>\n <FormControlLabel\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_unique || false}\n label=\"Is Unique\"\n />\n </Box>\n )}\n\n {/* Text Multiline Checkbox */}\n {field_type === \"text\" && (\n <Box>\n <FormControlLabel\n name=\"is_multiline\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_multiline || false}\n label=\"Is Multiline\"\n />\n </Box>\n )}\n\n {/* Full Width Checkbox */}\n <Box>\n <FormControlLabel\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handleFullWidthChange}\n checked={elementJSON.is_fullwidth || false}\n label=\"Full Width\"\n />\n </Box>\n\n {/* Info Field Function Button */}\n {field_type === \"info\" && (\n <Box>\n <Button\n variant=\"outlined\"\n startIcon={<Add />}\n onClick={handleOpenModal}\n className=\"formSection--PreviewButton\"\n >\n Add Function\n </Button>\n </Box>\n )}\n\n {/* Function Modal */}\n <Modal fullWidth onClose={handleCloseModal} open={openModal}>\n <DialogTitle>\n <Typography type=\"s3\" weight=\"medium\" color=\"theme.secondary.1000\">\n Add Function\n </Typography>\n <IconButton\n edge=\"end\"\n onClick={handleCloseModal}\n size=\"small\"\n >\n <Close fontSize=\"inherit\" />\n </IconButton>\n </DialogTitle>\n <DialogContent dividers>\n <Typography weight=\"medium\" type=\"s3\" color=\"theme.secondary.700\" sx={{ mb: 2 }}>\n Label: <span style={{ color: \"#1F2125\" }}>{elementJSON.label}</span>\n </Typography>\n <TextField\n name=\"default_value\"\n fullWidth\n placeholder=\"Add a function\"\n multiline\n minRows={4}\n defaultValue={elementJSON.default_value}\n onChange={handleFunctionValueChange}\n value={functionValue}\n />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"outlined\"\n onClick={handleCloseModal}\n style={{ color: \"black\" }}\n >\n Cancel\n </Button>\n <Button onClick={() => handleSave(functionValue)}>\n Save\n </Button>\n </DialogActions>\n </Modal>\n </Box>\n );\n}\n\nexport default TextEditForm;","// React imports\nimport React, { useEffect, useState, useCallback, useMemo } from \"react\";\n\n// Material UI imports\nimport { \n MenuItem, \n Box, \n FormControlLabel, \n Slider, \n FormControl, \n IconButton\n} from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\n\n// Third-party imports\nimport { enqueueSnackbar } from \"notistack\";\n\n// ERP Common imports\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport Select from \"@/components/select/select\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Typography from \"@/components/typography/typography\";\nimport Button from \"@/components/button/button\";\nimport { Trash } from \"@/components/icons\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n [key: string]: string;\n}\n\ninterface ElementJSON {\n id: string;\n field_type: string;\n label: string;\n placeholder: string;\n default_value: string | null;\n is_multiselect: boolean;\n is_required: boolean;\n is_unique: boolean;\n is_fullwidth: boolean;\n custom_width: number;\n type?: string;\n is_new?: boolean;\n options: Option[];\n}\n\ninterface SelectEditFormProps {\n element: ElementJSON;\n handlePropertyValueUpdate: (\n event: React.ChangeEvent<HTMLInputElement> | null,\n name?: string | null,\n value?: any,\n fieldType?: string\n ) => void;\n handleSelectOptionValueUpdate: (options: Option[]) => void;\n handleColumnSelect: (event: React.ChangeEvent<{ value: unknown }>) => void;\n handleWidthChange: (value: number | number[]) => void;\n}\n\nconst COLUMN_PER_ROW_OPTIONS = [1, 2, 3, 4, 5, 6] as const;\n\nexport const SelectEditForm: React.FC<SelectEditFormProps> = React.memo(({\n element,\n handlePropertyValueUpdate,\n handleSelectOptionValueUpdate,\n handleColumnSelect,\n handleWidthChange\n}) => {\n // Local state management\n const [selectOptions, setSelectOptions] = useState<Option[]>(element.options || []);\n const [newOption, setNewOption] = useState<Option>({ label: \"\", value: \"\" });\n const [isAddingOption, setIsAddingOption] = useState(false);\n\n // Sync options with parent element when element changes\n useEffect(() => {\n if (JSON.stringify(selectOptions) !== JSON.stringify(element.options || [])) {\n setSelectOptions(element.options || []);\n }\n }, [element.options, selectOptions]);\n\n // Memoized computed values\n const isFieldDisabled = useMemo(() => \n element.type === \"system\" || !element.is_new, \n [element.type, element.is_new]\n );\n\n const selectedOptionLabel = useMemo(() => {\n const selectedOption = selectOptions.find(option => option.value === element.default_value);\n return selectedOption?.label || \"Select Default\";\n }, [selectOptions, element.default_value]);\n\n // Optimized event handlers with useCallback\n const handleFieldUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n handlePropertyValueUpdate(null, null, null, e.target.value);\n }, [handlePropertyValueUpdate]);\n\n const handleSelectUpdate = useCallback((e: React.ChangeEvent<{ value: unknown }>) => {\n handlePropertyValueUpdate(null, null, e.target.value);\n }, [handlePropertyValueUpdate]);\n\n const handleMultiSelect = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n // Reset default value when enabling multiselect\n const defaultValue = isChecked ? null : element.default_value;\n \n // Create a synthetic event for the property update\n const syntheticEvent = {\n target: {\n name: 'is_multiselect',\n checked: isChecked,\n value: isChecked\n }\n } as React.ChangeEvent<HTMLInputElement>;\n \n handlePropertyValueUpdate(syntheticEvent);\n \n // If enabling multiselect, also clear the default value\n if (isChecked && element.default_value) {\n handlePropertyValueUpdate(null, 'default_value', null);\n }\n }, [handlePropertyValueUpdate, element.default_value]);\n\n const handleNewOptionChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const { name, value } = e.target;\n setNewOption(prev => ({ ...prev, [name]: value }));\n }, []);\n\n const handleAddOption = useCallback(() => {\n if (!newOption.label.trim() || !newOption.value.trim()) {\n return; // Don't add empty options\n }\n\n // Check for duplicate values\n const isDuplicate = selectOptions.some(option => \n option.value === newOption.value || option.label === newOption.label\n );\n \n if (isDuplicate) {\n // Could show an error message here\n enqueueSnackbar(\"Option with this value or label already exists.\", { variant: \"error\" });\n return;\n }\n\n const updatedOptions = [...selectOptions, { ...newOption }];\n setSelectOptions(updatedOptions);\n handleSelectOptionValueUpdate(updatedOptions);\n \n // Reset form\n setNewOption({ label: \"\", value: \"\" });\n setIsAddingOption(false);\n }, [newOption, selectOptions, handleSelectOptionValueUpdate]);\n\n const handleRemoveOption = useCallback((indexToRemove: number) => {\n const updatedOptions = selectOptions.filter((_, index) => index !== indexToRemove);\n setSelectOptions(updatedOptions);\n handleSelectOptionValueUpdate(updatedOptions);\n \n // Clear default value if the removed option was selected\n const removedOption = selectOptions[indexToRemove];\n if (element.default_value === removedOption?.value) {\n handlePropertyValueUpdate(null, 'default_value', null);\n }\n }, [selectOptions, handleSelectOptionValueUpdate, element.default_value, handlePropertyValueUpdate]);\n\n const handleWidthChangeCallback = useCallback((\n _: Event, \n newValue: number | number[]\n ) => {\n handleWidthChange(newValue);\n }, [handleWidthChange]);\n\n return (\n <Box className=\"formSection--FieldContainer\">\n {/* Field Type Selection */}\n <Box>\n <FieldSelect\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={element.field_type}\n label=\"Field Type\"\n disabled={isFieldDisabled}\n />\n </Box>\n\n {/* Label Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={element.label}\n />\n </Box>\n\n {/* Placeholder Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Placeholder\"\n is_required\n name=\"placeholder\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={element.placeholder}\n />\n </Box>\n\n {/* Default Value Selection */}\n <Box>\n <Select\n fullWidth\n placeholder=\"Select Default\"\n size=\"small\"\n name=\"default_value\"\n onChange={handleSelectUpdate}\n value={element.default_value || \"\"}\n label=\"Default\"\n variant=\"outlined\"\n disabled={element.is_multiselect}\n renderValue={() => selectedOptionLabel}\n >\n {selectOptions.map((option, index) => (\n <MenuItem key={`${option.value}-${index}`} value={option.value}>\n {option.label}\n </MenuItem>\n ))}\n </Select>\n </Box>\n\n {/* Column Per Row Selection */}\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelect}\n label=\"Select Column Per Row\"\n name=\"columnPerRow\"\n variant=\"outlined\"\n >\n {COLUMN_PER_ROW_OPTIONS.map((option) => (\n <MenuItem key={option} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n\n {/* Width Slider */}\n <Box>\n <Typography sx={{ color: 'black', mb: 1 }}>\n Adjust Width:\n </Typography>\n <Box pr={2}>\n <Slider\n value={element.custom_width || 6}\n min={1}\n max={12}\n step={1}\n onChange={handleWidthChangeCallback}\n aria-labelledby=\"width-slider\"\n sx={{ color: \"#4AC08C\" }}\n marks\n valueLabelDisplay=\"auto\"\n />\n </Box>\n </Box>\n\n {/* Options Management */}\n <Box className=\"formSection--SelectOption\">\n <Typography \n type=\"s5\" \n weight=\"medium\" \n color=\"theme.secondary.800\"\n sx={{ mb: 0.5 }}\n >\n Options\n </Typography>\n \n {/* Existing Options */}\n {selectOptions.map((option, index) => (\n <Box key={`option-${index}`} sx={{ mb: 1, display: 'flex', gap: 1 }}>\n <TextField\n fullWidth\n value={`${option.label} (${option.value})`}\n InputProps={{ readOnly: true }}\n />\n <IconButton\n color=\"error\"\n size=\"small\"\n onClick={() => handleRemoveOption(index)}\n >\n <Trash />\n </IconButton>\n </Box>\n ))}\n\n {/* Add New Option Form */}\n {isAddingOption && (\n <Box className=\"formSection--SelectOption\" sx={{ mt:0.5, p: 2, border: '1px solid #ddd', borderRadius: 1 }}>\n <Box sx={{ mb: 2 }}>\n <TextField\n fullWidth\n label=\"Option Label\"\n is_required\n name=\"label\"\n type=\"text\"\n placeholder=\"Enter option label\"\n value={newOption.label}\n onChange={handleNewOptionChange}\n />\n </Box>\n <Box sx={{ mb: 2 }}>\n <TextField\n fullWidth\n label=\"Option Value\"\n placeholder=\"Enter option value\"\n is_required\n name=\"value\"\n type=\"text\"\n value={newOption.value}\n onChange={handleNewOptionChange}\n />\n </Box>\n <Box sx={{ display: 'flex', gap: 1 }}>\n <Button\n onClick={handleAddOption}\n // className=\"formSection--Button\"\n startIcon={<Add />}\n disabled={!newOption.label.trim() || !newOption.value.trim()}\n >\n Add Option\n </Button>\n <Button\n onClick={() => {\n setIsAddingOption(false);\n setNewOption({ label: \"\", value: \"\" });\n }}\n variant=\"outlined\"\n >\n Cancel\n </Button>\n </Box>\n </Box>\n )}\n\n {/* Add Option Button */}\n {!isAddingOption && (\n <Button\n onClick={() => setIsAddingOption(true)}\n variant=\"outlined\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n sx={{ mt: 1 }}\n >\n Add Option\n </Button>\n )}\n </Box>\n\n {/* Form Controls */}\n <Box sx={{ display: 'flex', flexDirection: 'column', gap: 1 }}>\n <FormControlLabel\n name=\"is_multiselect\"\n control={<Checkbox />}\n onChange={handleMultiSelect}\n checked={element.is_multiselect}\n label=\"Enable Multi Select\"\n />\n\n <FormControlLabel\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_required}\n label=\"This field is required\"\n />\n\n <FormControlLabel\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_unique}\n label=\"Is Unique\"\n />\n\n <FormControlLabel\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_fullwidth}\n label=\"Full Width\"\n />\n </Box>\n </Box>\n );\n});\n\nSelectEditForm.displayName = 'SelectEditForm';\n\nexport default SelectEditForm;","// React imports\nimport { useEffect, useMemo, useState } from \"react\";\n\n// Material UI imports\nimport { MenuItem, Box, FormControlLabel } from \"@mui/material\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport { Add } from \"@mui/icons-material\";\n\n// ERP Common imports\nimport Select from \"@/components/select/select\";\nimport Button from \"@/components/button/button\";\nimport Typography from \"@/components/typography/typography\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport { generateRandomId } from \"@/utils/common\";\nimport { SECTION_TYPES } from \"@/utils/constant\";\n\n// Local imports\nimport { ISwitcherForms } from \"../field_properties\";\nimport \"../custom-form.scss\";\n\nconst SectionEditForm = (props: any) => {\n const { handlePropertyValueUpdate } = props;\n const [elementJSON, setElementJSON] = useState(props.element);\n const [addForm, setAddForm] = useState<boolean>(false);\n const [newForm, setNewForm] = useState<string>(\"\");\n const selectOption = [\"section\"];\n\n const isDuplicateFormName = useMemo(\n () =>\n elementJSON.switcher_forms?.map((ele: any) => ele.name).includes(newForm),\n [elementJSON.switcher_forms, newForm]\n );\n\n useEffect(() => {\n setElementJSON(props.element);\n }, [props.element]);\n\n return (\n <Box className=\"formSection--FieldContainer\" key={elementJSON.id}>\n <div>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n disabled\n defaultValue={elementJSON.field_type}\n label=\"Field Type\"\n variant=\"outlined\"\n >\n {selectOption?.map((item) => (\n <MenuItem value={item}>{item}</MenuItem>\n ))}\n </Select>\n </div>\n <div>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n name=\"section_type\"\n defaultValue={elementJSON.section_type}\n label=\"Section Type\"\n variant=\"outlined\"\n onChange={(e: any) => handlePropertyValueUpdate(e)}\n >\n {Object.values(SECTION_TYPES).map((type) => {\n return (\n <MenuItem key={type} value={type}>\n {type}\n </MenuItem>\n );\n })}\n </Select>\n </div>\n <div>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n key={elementJSON.id}\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </div>\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_accordion\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_accordion}\n label=\"Is Accordion\"\n />\n {elementJSON.section_type === SECTION_TYPES.FORM_SWITCH_SECTION ? (\n <div className=\"formSection--SubFieldContainer\">\n <div>\n <TextField\n fullWidth\n label=\"Form label\"\n is_required\n key={elementJSON.id}\n name=\"form_switcher_label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.form_switcher_label}\n />\n </div>\n <div>\n <Typography\n type=\"s5\"\n weight={\"medium\"}\n color={\"theme.secondary.800\"}\n >\n Forms\n </Typography>\n {elementJSON?.switcher_forms?.map(\n (ele: ISwitcherForms) => (\n <div className=\"formSection--MultiOptions\" key={elementJSON.id}>\n <TextField\n fullWidth\n key={ele.id}\n value={ele.name}\n style={{ marginBottom: \"10px\" }}\n name=\"switcher_forms\"\n onChange={(e: any) => {\n const newVal = elementJSON.switcher_forms?.map(\n (formEle: ISwitcherForms) =>\n ele.id === formEle.id\n ? { ...formEle, name: e.target.value }\n : { ...formEle }\n );\n\n handlePropertyValueUpdate(e, newVal);\n }}\n />\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={(e: any) => {\n const newVal = [...elementJSON.switcher_forms].filter(\n (item) => item.id !== ele.id\n );\n e.target.name = \"switcher_forms\";\n handlePropertyValueUpdate(e, newVal);\n }}\n />\n </div>\n )\n )}\n </div>\n {addForm ? (\n <div>\n <div\n className=\"formSection--MultiOptions formSection--FullWidth\"\n key={elementJSON.id}\n >\n <div className=\"formSection--FullWidth\">\n <TextField\n fullWidth\n label=\"Form section name\"\n placeholder=\"Form section name\"\n is_required\n key={elementJSON.id}\n type=\"text\"\n value={newForm}\n error={isDuplicateFormName}\n helperText={\n isDuplicateFormName\n ? \"Form section name can not duplicate\"\n : \"\"\n }\n onChange={(e: any) => setNewForm(e.target.value)}\n />\n </div>\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={() => {\n setAddForm(false);\n setNewForm(\"\");\n }}\n />\n </div>\n <Button\n onClick={(e: any) => {\n const { uniqueStringId: id } = generateRandomId();\n const newVal = [\n ...elementJSON.switcher_forms,\n { name: newForm, id },\n ];\n handlePropertyValueUpdate(e, newVal);\n setNewForm(\"\");\n setAddForm(false);\n }}\n name=\"switcher_forms\"\n variant=\"text\"\n className=\"formSection--Button\"\n disabled={isDuplicateFormName || !newForm}\n startIcon={<Add />}\n >\n Add\n </Button>\n </div>\n ) : null}\n {!addForm ? (\n <Button\n onClick={() => setAddForm(true)}\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add forms\n </Button>\n ) : null}\n </div>\n ) : null}\n </Box>\n );\n};\n\nexport { SectionEditForm };\nexport default SectionEditForm;\n","// React imports\nimport { useEffect, useState } from \"react\";\n\n// Material UI imports\nimport {\n MenuItem,\n Box,\n FormControlLabel,\n FormControl,\n RadioGroup,\n Button,\n Select,\n InputLabel,\n Slider,\n} from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\nimport CloseIcon from \"@mui/icons-material/Close\";\n\n// ERP Common imports\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport Radio from \"@/components/radio/radio\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Typography from \"@/components/typography/typography\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n is_checked: boolean;\n [key: string]: string | boolean; // Index signature to allow any string property\n}\n\nexport function CheckboxEditForm(props: any) {\n const [isAddSelectOption, setAddSelectOption] = useState(false);\n const { handlePropertyValueUpdate, handleSelectOptionValueUpdate , handleColumnSelect , handleWidthChange } = props;\n const columnPerRowOptions = [1, 2, 3, 4, 5, 6];\n const [selectOptions, setSelectOptions] = useState(\n props.element.options || [],\n );\n const [elementJSON, setElementJSON] = useState(props.element);\n\n const allowLabelPositionModification =\n elementJSON.field_type !== \"radioButton\";\n\n const [newOptions, setNewOptions] = useState<Option>({\n label: \"\",\n value: \"\",\n is_checked: false,\n });\n\n\n\n const handleAddNewOption = (e: any) => {\n const label: string = e.target.name;\n const value: string = e.target.value;\n const option: Option = { ...newOptions };\n option[label] = value;\n setNewOptions(option);\n };\n\n const handleFieldUpdate = (e: any) => {\n elementJSON.field_type = e.target.value;\n handlePropertyValueUpdate(null, null, null, e.target.value);\n };\n\n const handleSelectUpdate = (e: any) => {\n elementJSON.default_value = e.target.value;\n handlePropertyValueUpdate(null, null, e.target.value);\n };\n\n useEffect(() => {\n setElementJSON(props.element);\n setSelectOptions(props.element.options || []);\n }, [props.element]);\n\n useEffect(() => {\n setNewOptions({ label: \"\", value: \"\", is_checked: false });\n setAddSelectOption(false);\n handleSelectOptionValueUpdate(selectOptions);\n // eslint-disable-next-line\n }, [selectOptions]);\n\n return (\n <Box className=\"formSection--FieldContainer\" key={elementJSON.id}>\n <div key={elementJSON.id}>\n <FieldSelect\n key={elementJSON.id}\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={elementJSON.field_type}\n label=\"Field Type\"\n disabled={elementJSON.type === \"system\" || !elementJSON.is_new}\n />\n </div>\n <div key={elementJSON.id}>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n key={elementJSON.id}\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </div>\n\n <div key={elementJSON.id}>\n <Select\n variant=\"outlined\"\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Default\"\n size=\"small\"\n name=\"options\"\n onChange={() => handleSelectUpdate}\n defaultValue={elementJSON.default_value}\n label=\"Default\"\n disabled={!selectOptions.length}\n >\n {selectOptions?.map((option: any, index: number) => (\n <MenuItem key={index} value={option.value}>\n {option.label}\n </MenuItem>\n ))}\n </Select>\n </div>\n <FormControl>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelect} // need to change\n // defaultValue= {} // need to change\n label=\"Select Column Per Row\"\n name=\"option\"\n variant=\"outlined\"\n >\n {columnPerRowOptions?.map((option: any, index: number) => (\n <MenuItem key={index} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n <Box>\n <Typography sx={{ color: 'black' }}>Adjust Width:</Typography>\n <Slider\n value = {elementJSON?.custom_width}\n name = \"custom_width\"\n min={1}\n max={12}\n step={1}\n onChange={(_, newValue) => handleWidthChange(newValue)}\n aria-labelledby=\"width-slider\"\n sx = {{color : \"#4AC08C\"}}\n />\n </Box>\n \n\n <div className=\"formSection--SelectOption\">\n <Typography type=\"s5\" weight={\"medium\"} color={\"theme.secondary.800\"}>\n Options\n </Typography>\n {selectOptions.map((option: any, index: number) => (\n <div className=\"formSection--MultiOptions\">\n <TextField\n fullWidth\n key={index}\n value={`${option.label} (${option.value})`}\n InputProps={{\n readOnly: true,\n }}\n />\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={() => {\n setSelectOptions([\n ...selectOptions.filter(\n (_: any, filterIndex: number) => filterIndex !== index,\n ),\n ]);\n }}\n />\n </div>\n ))}\n </div>\n {isAddSelectOption ? (\n <div className=\"formSection--SelectOption\">\n <div>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n placeholder=\"Label\"\n defaultValue={newOptions.label}\n onChange={handleAddNewOption}\n />\n </div>\n <div>\n <TextField\n fullWidth\n label=\"Value\"\n placeholder=\"Value\"\n is_required\n name=\"value\"\n type=\"text\"\n defaultValue={newOptions.value}\n onChange={handleAddNewOption}\n />\n </div>\n <Button\n onClick={() =>\n setSelectOptions([...selectOptions, { ...newOptions }])\n }\n disabled={\n !!selectOptions.find(\n (ele: Option) => ele.value === newOptions.value,\n )\n }\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add\n </Button>\n </div>\n ) : (\n <Button\n onClick={() => setAddSelectOption(true)}\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add Option\n </Button>\n )}\n\n <FormControl>\n <Typography type=\"s4\" color=\"theme.secondary.800\">\n Display style\n </Typography>\n <RadioGroup\n key={elementJSON.id}\n row\n aria-labelledby=\"demo-radio-buttons-group-label\"\n name=\"display\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.display}\n >\n <FormControlLabel\n value=\"row\"\n control={<Radio size=\"small\" />}\n label=\"Row\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n <FormControlLabel\n value=\"column\"\n control={<Radio size=\"small\" />}\n label=\"Column\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n </RadioGroup>\n </FormControl>\n\n <div key={elementJSON.id}>\n <TextField\n key={elementJSON.id}\n fullWidth\n label=\"Title\"\n is_required\n name=\"title\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.title}\n />\n </div>\n\n <FormControl disabled={!allowLabelPositionModification}>\n <Typography type=\"s4\" color=\"theme.secondary.800\">\n Title Position\n </Typography>\n <RadioGroup\n key={elementJSON.id}\n row\n aria-labelledby=\"demo-radio-buttons-group-label\"\n name=\"title_position\"\n onChange={handlePropertyValueUpdate}\n defaultValue={allowLabelPositionModification ? \"end\" : \"\"}\n >\n <FormControlLabel\n value=\"start\"\n control={<Radio size=\"small\" />}\n label=\"Start\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n <FormControlLabel\n value=\"end\"\n control={<Radio size=\"small\" />}\n label=\"End\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n </RadioGroup>\n </FormControl>\n\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_required}\n label=\"This field is required\"\n />\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_unique}\n label=\"Is Unique\"\n />\n\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate} // need to change this\n checked={elementJSON?.is_fullwidth}// need to change \n label=\"Full Width \"\n />\n </Box>\n );\n}\n\nexport default CheckboxEditForm;\n","// React imports\nimport React, { useEffect, useState } from 'react';\n\n// Material UI imports\nimport { MenuItem, Box, SelectChangeEvent } from '@mui/material';\n\n// Third-party imports\nimport { MRT_ColumnDef, MRT_RowData } from 'material-react-table';\n\n// ERP Common imports\nimport Select from '@/components/select/select';\nimport TextField from '@/components/text-field/text-field';\nimport formatText from '@/utils/format-text';\n\n// Local imports\nimport { IElementJson } from '../custom-form';\nimport { ApiFormFields } from '../../Redux/state';\nimport FieldSelect from './field-select';\nimport '../custom-form.scss';\n\ninterface ITableEditForm {\n\thandlePropertyValueUpdate: (\n\t\tevent?: any,\n\t\tnumberValue?: any,\n\t\tval?: any,\n\t\tfieldType?: any\n\t) => void;\n\thandleColumnsUpdate: (columns: MRT_ColumnDef<MRT_RowData>[]) => void;\n\telement: IElementJson | null;\n\tfields: ApiFormFields | null;\n}\n\ninterface TableOption {\n\tlabel: string;\n\tvalue: string;\n}\n\nconst TableEditForm: React.FC<ITableEditForm> = ({\n\thandlePropertyValueUpdate,\n\telement,\n\thandleColumnsUpdate,\n\tfields\n}) => {\n\t/* Local States */\n\tconst [elementJSON, setElementJSON] = useState<IElementJson | null>(element);\n\tconst [tables, setTables] = useState<TableOption[]>([]);\n\n\t/* Local Functions */\n\tconst handleFieldUpdate = (event: SelectChangeEvent<unknown>) => {\n\t\tif (elementJSON) {\n\t\t\telementJSON.field_type = event.target.value as string;\n\t\t\thandlePropertyValueUpdate(null, null, null, event.target.value as string);\n\t\t}\n\t};\n\tconst handleTableSelect = (event: SelectChangeEvent<unknown>) => {\n\t\thandlePropertyValueUpdate(event);\n\t};\n\n\t/* Use Effects */\n\tuseEffect(() => {\n\t\tsetElementJSON(element);\n\t}, [element]);\n\tuseEffect(() => {\n\t\tif (elementJSON && elementJSON.table && fields) {\n\t\t\tconst fieldsArr = fields[elementJSON.table];\n\t\t\tlet columns: any[] = [];\n\t\t\tif (fieldsArr && fieldsArr?.length) {\n\t\t\t\tcolumns = fieldsArr.map((field, index) => ({\n\t\t\t\t\theader: formatText(field.field),\n\t\t\t\t\taccessorKey: field.field,\n\t\t\t\t\tvisible: index > 3 ? false : true,\n\t\t\t\t\ttype: field.type\n\t\t\t\t}));\n\t\t\t} else {\n\t\t\t\tcolumns = [\n\t\t\t\t\t{ header: 'Column 1', accessorKey: 'column_1', visible: true },\n\t\t\t\t\t{ header: 'Column 2', accessorKey: 'column_1', visible: true }\n\t\t\t\t];\n\t\t\t}\n\t\t\tcolumns && handleColumnsUpdate(columns);\n\t\t}\n\t}, [elementJSON?.table]);\n\tuseEffect(() => {\n\t\tif (fields) {\n\t\t\tconst options = Object.keys(fields).map((key) => ({\n\t\t\t\tlabel: formatText(key),\n\t\t\t\tvalue: key\n\t\t\t}));\n\t\t\tsetTables(options);\n\t\t}\n\t}, [fields]);\n\n\tif (!elementJSON) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Box className='formSection--FieldContainer' key={elementJSON.id}>\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<FieldSelect\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tvariant='outlined'\n\t\t\t\t\tonChange={handleFieldUpdate}\n\t\t\t\t\tdefaultValue={elementJSON.field_type}\n\t\t\t\t\tdisabled={elementJSON.type === 'system' || !elementJSON.is_new}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<TextField\n\t\t\t\t\tfullWidth\n\t\t\t\t\tlabel='Label'\n\t\t\t\t\tis_required\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tname='label'\n\t\t\t\t\ttype='text'\n\t\t\t\t\tonChange={handlePropertyValueUpdate}\n\t\t\t\t\tdefaultValue={elementJSON.label}\n\t\t\t\t/>\n\t\t\t</div>\n\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<Select\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tvariant='outlined'\n\t\t\t\t\tlabel='Table'\n\t\t\t\t\tfullWidth\n\t\t\t\t\tplaceholder='Select Table'\n\t\t\t\t\tsize='small'\n\t\t\t\t\tname='table'\n\t\t\t\t\tdefaultValue={elementJSON.table}\n\t\t\t\t\tdisabled={elementJSON.type === 'system'}\n\t\t\t\t\tonChange={handleTableSelect}\n\t\t\t\t\trenderValue={(value: string) =>\n\t\t\t\t\t\ttables.find((option) => option.value === value)?.label\n\t\t\t\t\t}>\n\t\t\t\t\t{tables?.map((item) => (\n\t\t\t\t\t\t<MenuItem value={item.value}>{item.label}</MenuItem>\n\t\t\t\t\t))}\n\t\t\t\t</Select>\n\t\t\t</div>\n\t\t</Box>\n\t);\n};\n\nexport default TableEditForm;\n"],"names":["COLUMN_PER_ROW_OPTIONS","fields","elementJSON","React","_a","CloseIcon","Select","Button"],"mappings":"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"}
1
+ {"version":3,"file":"table-form-DsTwCUcs.esm.js","sources":["../../src/views/form-builder/element-edit-forms/field-select.tsx","../../src/views/form-builder/element-edit-forms/text.tsx","../../src/views/form-builder/element-edit-forms/select.tsx","../../src/views/form-builder/element-edit-forms/section.tsx","../../src/views/form-builder/element-edit-forms/checkbox.tsx","../../src/views/form-builder/element-edit-forms/table-form.tsx"],"sourcesContent":["// React imports\nimport { useEffect, useState } from \"react\";\n\n// Material UI imports\nimport { MenuItem, SelectProps, Stack } from \"@mui/material\";\n\n// ERP Common imports\nimport {\n ArrowCircleDown,\n Calendar,\n CheckboxSquare,\n Clock,\n DollarCircle,\n Email,\n Grid,\n Hashtag,\n Image,\n InfoCircle,\n Link,\n LinkHorizontal,\n Location,\n PaperClip,\n Paragraph,\n Phone,\n RadioButton,\n ToggleSwitch,\n} from \"@/components/icons\";\nimport Select from \"@/components/select/select\";\nimport Typography from \"@/components/typography/typography\";\n\ninterface IField {\n label: string;\n value: string;\n icon: typeof Paragraph | string;\n}\n\nconst fields: IField[] = [\n { label: \"Text\", value: \"text\", icon: Paragraph },\n { label: \"Number\", value: \"number\", icon: Hashtag },\n { label: \"Select\", value: \"select\", icon: ArrowCircleDown },\n { label: \"Date\", value: \"date\", icon: Calendar },\n { label: \"Files & Media\", value: \"file\", icon: PaperClip },\n { label: \"URL\", value: \"url\", icon: Link },\n { label: \"Email\", value: \"email\", icon: Email },\n { label: \"Phone\", value: \"phone\", icon: Phone },\n { label: \"Currency\", value: \"currency\", icon: DollarCircle },\n { label: \"Time\", value: \"time\", icon: Clock },\n { label: \"Table\", value: \"table\", icon: Grid },\n { label: \"Geolocation\", value: \"geoLocation\", icon: Location },\n { label: \"Check Box\", value: \"checkbox\", icon: CheckboxSquare },\n { label: \"Image Upload\", value: \"image\", icon: Image },\n { label: \"Relation Field\", value: \"relation\", icon: LinkHorizontal },\n { label: \"Info Card\", value: \"info\", icon: InfoCircle },\n { label: \"Toggle Button\", value: \"toggleButton\", icon: ToggleSwitch },\n { label: \"Radio Button\", value: \"radioButton\", icon: RadioButton },\n { label: \"tagsInput\", value: \"tagsInput\", icon: Paragraph },\n];\n\nconst FieldSelect: React.FC<SelectProps> = (props) => {\n const [selectFields, setSelectFields] = useState<IField[]>(fields);\n const [search, setSearch] = useState<string>(\"\");\n\n const handleSearch = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearch(event.target.value);\n };\n\n const handleSearchFields = (searchVal: string) => {\n if (searchVal) {\n setSelectFields([\n ...fields.filter((field) => field.value.includes(searchVal)),\n ]);\n } else {\n setSelectFields(fields);\n }\n };\n\n useEffect(() => {\n handleSearchFields(search);\n }, [search]);\n\n return (\n <Select\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n labelName=\"Field Type\"\n renderValue={(value: string) =>\n fields.find((field) => field.value === value)?.label\n }\n handleSearch={() => handleSearch}\n searchPlaceholder=\"Search Attributes\"\n searchValue={search}\n {...props}\n >\n {selectFields.map((field) => (\n <MenuItem value={field.value} onKeyDown={(e) => e.stopPropagation()}>\n <Stack direction=\"row\" spacing={1} alignItems=\"center\">\n {field.icon && <field.icon fontSize=\"small\" />}\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n {field.label}\n </Typography>\n </Stack>\n </MenuItem>\n ))}\n </Select>\n );\n};\n\nexport default FieldSelect;\n","// React imports\nimport { useCallback, useEffect, useState, useMemo, useRef } from \"react\";\n\n// Material UI imports\nimport {\n DialogActions,\n DialogContent,\n DialogTitle,\n IconButton,\n MenuItem,\n Box,\n FormControlLabel,\n FormControl,\n Slider,\n} from \"@mui/material\";\nimport { Add, Close } from \"@mui/icons-material\";\n\n// ERP Common imports\nimport Button from \"@/components/button/button\";\nimport Modal from \"@/components/modal/modal\";\nimport Typography from \"@/components/typography/typography\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Select from \"@/components/select/select\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport formatText from \"@/utils/format-text\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport { IElementJson } from \"../custom-form\";\nimport { ApiFormFields } from \"../../Redux/state\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n}\n\ninterface ITextEditFormProps {\n handleWidthChange: (value?: number) => void;\n handleColumnSelect: (value?: number) => void;\n handlePropertyValueUpdate: (\n event?: React.ChangeEvent<HTMLInputElement>,\n numberValue?: number,\n value?: any,\n fieldType?: string,\n ) => void;\n element: IElementJson | null;\n fields: ApiFormFields | null;\n}\n\n// Constants moved outside to prevent re-creation\nconst COLUMN_PER_ROW_OPTIONS = [1, 2, 3, 4, 5, 6] as const;\nconst SELECT_OPTIONS = [\n { text: \"12 Hour\", value: \"12hr\" },\n { text: \"24 Hour\", value: \"24hr\" },\n] as const;\nconst CURRENCY_OPTIONS = [\n { text: \"INR (India)\", value: \"inr\" },\n { text: \"USD (US)\", value: \"usd\" },\n] as const;\n\nconst FIELDS_WITHOUT_PLACEHOLDER = new Set([\n \"time\", \"file\", \"geoLocation\", \"image\", \"info\", \"relation\"\n]);\nconst FIELDS_WITH_MIN_MAX = new Set([\"text\", \"number\"]);\n\n// Memoized components to prevent unnecessary re-renders\nconst MemoizedMenuItem = ({ option, index, prefix }: { option: any; index: number; prefix: string }) => (\n <MenuItem key={`${prefix}-${index}`} value={option.value}>\n {option.text || option.label}\n </MenuItem>\n);\n\nconst MemoizedRelationMenuItem = ({ option, index, prefix }: { option: Option; index: number; prefix: string }) => (\n <MenuItem key={`${prefix}-${index}`} value={option.value}>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n {option.label}\n </Typography>\n </MenuItem>\n);\n\nexport function TextEditForm(props: ITextEditFormProps) {\n const { \n handlePropertyValueUpdate, \n handleColumnSelect, \n handleWidthChange, \n fields, \n element \n } = props;\n\n // State management - optimized to prevent unnecessary re-renders\n const [elementJSON, setElementJSON] = useState<IElementJson | null>(element);\n const [openModal, setOpenModal] = useState(false);\n const [relationFields, setRelationFields] = useState<Option[]>([]);\n const [functionValue, setFunctionValue] = useState(\"\");\n \n // Use refs to track previous values and prevent unnecessary updates\n const prevElementRef = useRef<IElementJson | null>(element);\n const prevFieldsRef = useRef<ApiFormFields | null>(fields);\n\n // Memoized relation modules with deep comparison prevention\n const relationModulesOptions = useMemo(() => {\n if (!fields || fields === prevFieldsRef.current) {\n if (prevFieldsRef.current && fields) return prevFieldsRef.current;\n }\n \n prevFieldsRef.current = fields;\n \n if (!fields) return [];\n return Object.keys(fields).map((key) => ({\n label: formatText(key),\n value: key,\n }));\n }, [fields]);\n\n // Optimized relation fields setter with memoization\n const setRelationFieldsOptions = useCallback(\n (moduleValue?: string) => {\n if (!fields || !moduleValue) {\n setRelationFields(prev => prev.length > 0 ? [] : prev);\n return;\n }\n\n const fieldsArr = fields[moduleValue];\n if (fieldsArr?.length) {\n const options = fieldsArr.map((field) => ({\n label: field.field,\n value: field.field,\n }));\n \n // Only update if options actually changed\n setRelationFields(prev => {\n if (prev.length !== options.length) return options;\n const isDifferent = prev.some((item, idx) => \n item.value !== options[idx]?.value || item.label !== options[idx]?.label\n );\n return isDifferent ? options : prev;\n });\n } else {\n setRelationFields(prev => prev.length > 0 ? [] : prev);\n }\n },\n [fields]\n );\n\n // Memoized event handlers to prevent child re-renders\n const handleSave = useCallback((value: string) => {\n if (!elementJSON) return;\n \n // Only update if value actually changed\n if (elementJSON.default_value !== value) {\n const updatedElement = { ...elementJSON, default_value: value };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, value);\n }\n \n if (value) {\n setFunctionValue(\"\");\n setOpenModal(false);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleFieldUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const fieldType = e.target.value;\n if (elementJSON.field_type !== fieldType) {\n const updatedElement = { ...elementJSON, field_type: fieldType };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, null, e.target.value);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleSelectUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const option = e.target.value;\n if (elementJSON.option !== option) {\n const updatedElement = { ...elementJSON, option };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(null, null, option);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleModuleSelect = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const moduleValue = e.target.value;\n if (elementJSON?.module !== moduleValue) {\n setRelationFieldsOptions(moduleValue);\n handlePropertyValueUpdate(e);\n }\n }, [elementJSON?.module, setRelationFieldsOptions, handlePropertyValueUpdate]);\n\n const handleWidthSliderChange = useCallback((_: Event, value: number | number[]) => {\n if (!elementJSON) return;\n \n const widthValue = Array.isArray(value) ? value[0] : value;\n if (elementJSON.custom_width !== widthValue) {\n const updatedElement = { ...elementJSON, custom_width: widthValue };\n setElementJSON(updatedElement);\n handleWidthChange(widthValue);\n }\n }, [elementJSON, handleWidthChange]);\n\n const handleFullWidthChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n if (!elementJSON) return;\n \n const isFullWidth = e.target.checked;\n if (elementJSON.is_fullwidth !== isFullWidth) {\n const updatedElement = { ...elementJSON, is_fullwidth: isFullWidth };\n setElementJSON(updatedElement);\n handlePropertyValueUpdate(e);\n }\n }, [elementJSON, handlePropertyValueUpdate]);\n\n const handleColumnSelectChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const columnValue = Number(e.target.value);\n handleColumnSelect(columnValue);\n }, [handleColumnSelect]);\n\n // Memoized helper functions\n const getDefaultValue = useCallback((elementJSON: IElementJson) => {\n if ([\"number\", \"currency\", \"geoLocation\"].includes(elementJSON.field_type)) {\n return elementJSON.default_value?.toString().replace(/[^0-9]/g, \"\") || \"\";\n }\n return elementJSON.default_value || \"\";\n }, []);\n\n const getMinMaxLabels = useCallback((fieldType: string) => {\n return fieldType === \"text\" \n ? { min: \"Min character count (with spaces)\", max: \"Max character count (with spaces)\" }\n : { min: \"Min number\", max: \"Max number\" };\n }, []);\n\n // Modal handlers\n const handleOpenModal = useCallback(() => setOpenModal(true), []);\n const handleCloseModal = useCallback(() => {\n setOpenModal(false);\n setFunctionValue(\"\");\n }, []);\n\n const handleFunctionValueChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n setFunctionValue(e.target.value);\n }, []);\n\n // Optimized effects with proper dependency arrays\n useEffect(() => {\n // Only update if element actually changed\n if (element !== prevElementRef.current) {\n setElementJSON(element);\n prevElementRef.current = element;\n \n if (element?.module) {\n setRelationFieldsOptions(element.module);\n }\n }\n }, [element, setRelationFieldsOptions]);\n\n // Memoized render sections to prevent unnecessary re-computation\n const currencySelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"currency\") return null;\n \n return (\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Currency\"\n size=\"small\"\n onChange={handleSelectUpdate}\n defaultValue={elementJSON.option}\n label=\"Currency\"\n name=\"option\"\n variant=\"outlined\"\n >\n {CURRENCY_OPTIONS.map((option, index) => (\n <MemoizedMenuItem \n key={`currency-${index}`}\n option={option} \n index={index} \n prefix=\"currency\" \n />\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n }, [elementJSON?.field_type, elementJSON?.option, handleSelectUpdate]);\n\n const timeSelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"time\") return null;\n \n return (\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Time Format\"\n size=\"small\"\n onChange={handleSelectUpdate}\n defaultValue={elementJSON.option}\n label=\"Time Format\"\n name=\"option\"\n variant=\"outlined\"\n >\n {SELECT_OPTIONS.map((option, index) => (\n <MemoizedMenuItem \n key={`time-${index}`}\n option={option} \n index={index} \n prefix=\"time\" \n />\n ))}\n </Select>\n </FormControl>\n </Box>\n );\n }, [elementJSON?.field_type, elementJSON?.option, handleSelectUpdate]);\n\n const relationSelectSection = useMemo(() => {\n if (elementJSON?.field_type !== \"relation\") return null;\n \n return (\n <>\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder={\n relationModulesOptions.length\n ? \"Select Relation Module\"\n : \"No data available\"\n }\n size=\"small\"\n onChange={handleModuleSelect}\n value={elementJSON.module || \"\"}\n label=\"Relation Module\"\n name=\"module\"\n >\n {relationModulesOptions.length ? (\n relationModulesOptions.map((option, index) => (\n <MemoizedRelationMenuItem \n key={`module-${index}`}\n option={option} \n index={index} \n prefix=\"module\" \n />\n ))\n ) : (\n <MenuItem disabled>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n <em>No data available</em>\n </Typography>\n </MenuItem>\n )}\n </Select>\n </FormControl>\n </Box>\n\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder={\n !elementJSON.module\n ? \"Select Module First\"\n : relationFields.length\n ? \"Select Relation Field\"\n : \"No data available\"\n }\n size=\"small\"\n onChange={handlePropertyValueUpdate}\n value={elementJSON.field || \"\"}\n label=\"Relation Field\"\n disabled={!elementJSON.module}\n name=\"field\"\n >\n {relationFields.length ? (\n relationFields.map((option, index) => (\n <MemoizedRelationMenuItem \n key={`field-${index}`}\n option={option} \n index={index} \n prefix=\"field\" \n />\n ))\n ) : (\n <MenuItem disabled>\n <Typography type=\"s3\" color=\"theme.secondary.1000\">\n <em>No data available</em>\n </Typography>\n </MenuItem>\n )}\n </Select>\n </FormControl>\n </Box>\n </>\n );\n }, [\n elementJSON?.field_type, \n elementJSON?.module, \n elementJSON?.field,\n relationModulesOptions, \n relationFields, \n handleModuleSelect, \n handlePropertyValueUpdate\n ]);\n\n // Early return if no element\n if (!elementJSON) {\n return null;\n }\n\n const { field_type } = elementJSON;\n const minMaxLabels = getMinMaxLabels(field_type);\n\n return (\n <Box className=\"formSection--FieldContainer\">\n {/* Field Type Selection */}\n <Box>\n <FieldSelect\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={field_type}\n label=\"Field Type\"\n disabled={elementJSON.type === \"system\" || !elementJSON.is_new}\n />\n </Box>\n\n {/* Label Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </Box>\n\n {/* File/Image Max Size */}\n {(field_type === \"file\" || field_type === \"image\") && (\n <Box>\n <TextField\n fullWidth\n label=\"Max File Size (in MB)\"\n name=\"max_size\"\n type=\"number\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.max_size}\n />\n </Box>\n )}\n\n {/* Currency Selection - Memoized */}\n {currencySelectSection}\n\n {/* Placeholder and Default Value */}\n {!FIELDS_WITHOUT_PLACEHOLDER.has(field_type) && (\n <>\n <Box>\n <TextField\n fullWidth\n label=\"Placeholder\"\n name=\"placeholder\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.placeholder}\n />\n </Box>\n <Box>\n <TextField\n fullWidth\n label=\"Default Value\"\n placeholder=\"Default Value\"\n name=\"default_value\"\n type={field_type === \"phone\" ? \"tel\" : field_type === \"number\" ? \"number\" : \"text\"}\n onChange={handlePropertyValueUpdate}\n defaultValue={getDefaultValue(elementJSON)}\n />\n </Box>\n </>\n )}\n\n {/* Time Format Selection - Memoized */}\n {timeSelectSection}\n\n {/* Relation Module and Field Selection - Memoized */}\n {relationSelectSection}\n\n {/* Min/Max Length for Text and Number Fields */}\n {FIELDS_WITH_MIN_MAX.has(field_type) && (\n <>\n <Box>\n <TextField\n fullWidth\n label={minMaxLabels.min}\n name=\"min_length\"\n type=\"number\"\n onChange={(e) => handlePropertyValueUpdate(e, Number(e.target.value))}\n defaultValue={elementJSON.min_length || elementJSON.min || 1}\n />\n </Box>\n <Box>\n <TextField\n fullWidth\n label={minMaxLabels.max}\n name=\"max_length\"\n type=\"number\"\n onChange={(e) => handlePropertyValueUpdate(e, Number(e.target.value))}\n defaultValue={\n elementJSON.max_length || \n elementJSON.max || \n (field_type === 'number' ? 10000 : 255)\n }\n />\n </Box>\n </>\n )}\n\n {/* Column Per Row Selection */}\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelectChange}\n value={elementJSON.columns_per_row || 1}\n label=\"Select Column Per Row\"\n name=\"columns_per_row\"\n variant=\"outlined\"\n >\n {COLUMN_PER_ROW_OPTIONS.map((option, index) => (\n <MenuItem key={`column-${index}`} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n\n {/* Width Adjustment Slider */}\n <Box>\n <Typography sx={{ color: 'black', mb: 1 }}>\n Adjust Width:\n </Typography>\n <Slider\n value={elementJSON.custom_width || 12}\n name=\"custom_width\"\n min={1}\n max={12}\n step={1}\n onChange={handleWidthSliderChange}\n aria-labelledby=\"width-slider\"\n sx={{ color: \"#4AC08C\" }}\n disabled={elementJSON.is_fullwidth}\n marks\n valueLabelDisplay=\"auto\"\n />\n </Box>\n\n {/* Number Field Specific Options */}\n {field_type === \"number\" && (\n <>\n <Box>\n <TextField\n fullWidth\n label=\"Float Step\"\n name=\"float_step\"\n type=\"number\"\n step=\"0.01\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.float_step}\n />\n </Box>\n <Box>\n <FormControlLabel\n name=\"is_negative\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_negative || false}\n label=\"Allow Negative Numbers\"\n />\n </Box>\n </>\n )}\n\n {/* Date Field Specific Options */}\n {field_type === \"date\" && (\n <>\n <Box>\n <FormControlLabel\n name=\"is_future_dates_allowed\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_future_dates_allowed || false}\n label=\"Allow Future Dates\"\n />\n </Box>\n <Box>\n <FormControlLabel\n name=\"is_past_dates_allowed\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_past_dates_allowed || false}\n label=\"Allow Past Dates\"\n />\n </Box>\n </>\n )}\n\n {/* Required Field Checkbox */}\n {field_type !== \"info\" && (\n <Box>\n <FormControlLabel\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_required || false}\n label=\"This field is required\"\n />\n </Box>\n )}\n\n {/* Email Unique Checkbox */}\n {field_type === \"email\" && (\n <Box>\n <FormControlLabel\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_unique || false}\n label=\"Is Unique\"\n />\n </Box>\n )}\n\n {/* Text Multiline Checkbox */}\n {field_type === \"text\" && (\n <Box>\n <FormControlLabel\n name=\"is_multiline\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_multiline || false}\n label=\"Is Multiline\"\n />\n </Box>\n )}\n\n {/* Full Width Checkbox */}\n <Box>\n <FormControlLabel\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handleFullWidthChange}\n checked={elementJSON.is_fullwidth || false}\n label=\"Full Width\"\n />\n </Box>\n\n {/* Info Field Function Button */}\n {field_type === \"info\" && (\n <Box>\n <Button\n variant=\"outlined\"\n startIcon={<Add />}\n onClick={handleOpenModal}\n className=\"formSection--PreviewButton\"\n >\n Add Function\n </Button>\n </Box>\n )}\n\n {/* Function Modal */}\n <Modal fullWidth onClose={handleCloseModal} open={openModal}>\n <DialogTitle>\n <Typography type=\"s3\" weight=\"medium\" color=\"theme.secondary.1000\">\n Add Function\n </Typography>\n <IconButton\n edge=\"end\"\n onClick={handleCloseModal}\n size=\"small\"\n >\n <Close fontSize=\"inherit\" />\n </IconButton>\n </DialogTitle>\n <DialogContent dividers>\n <Typography weight=\"medium\" type=\"s3\" color=\"theme.secondary.700\" sx={{ mb: 2 }}>\n Label: <span style={{ color: \"#1F2125\" }}>{elementJSON.label}</span>\n </Typography>\n <TextField\n name=\"default_value\"\n fullWidth\n placeholder=\"Add a function\"\n multiline\n minRows={4}\n defaultValue={elementJSON.default_value}\n onChange={handleFunctionValueChange}\n value={functionValue}\n />\n </DialogContent>\n <DialogActions>\n <Button\n variant=\"outlined\"\n onClick={handleCloseModal}\n style={{ color: \"black\" }}\n >\n Cancel\n </Button>\n <Button onClick={() => handleSave(functionValue)}>\n Save\n </Button>\n </DialogActions>\n </Modal>\n </Box>\n );\n}\n\nexport default TextEditForm;","// React imports\nimport React, { useEffect, useState, useCallback, useMemo } from \"react\";\n\n// Material UI imports\nimport { \n MenuItem, \n Box, \n FormControlLabel, \n Slider, \n FormControl, \n IconButton\n} from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\n\n// Third-party imports\nimport { enqueueSnackbar } from \"notistack\";\n\n// ERP Common imports\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport Select from \"@/components/select/select\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Typography from \"@/components/typography/typography\";\nimport Button from \"@/components/button/button\";\nimport { Trash } from \"@/components/icons\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n [key: string]: string;\n}\n\ninterface ElementJSON {\n id: string;\n field_type: string;\n label: string;\n placeholder: string;\n default_value: string | null;\n is_multiselect: boolean;\n is_required: boolean;\n is_unique: boolean;\n is_fullwidth: boolean;\n custom_width: number;\n type?: string;\n is_new?: boolean;\n options: Option[];\n}\n\ninterface SelectEditFormProps {\n element: ElementJSON;\n handlePropertyValueUpdate: (\n event: React.ChangeEvent<HTMLInputElement> | null,\n name?: string | null,\n value?: any,\n fieldType?: string\n ) => void;\n handleSelectOptionValueUpdate: (options: Option[]) => void;\n handleColumnSelect: (event: React.ChangeEvent<{ value: unknown }>) => void;\n handleWidthChange: (value: number | number[]) => void;\n}\n\nconst COLUMN_PER_ROW_OPTIONS = [1, 2, 3, 4, 5, 6] as const;\n\nexport const SelectEditForm: React.FC<SelectEditFormProps> = React.memo(({\n element,\n handlePropertyValueUpdate,\n handleSelectOptionValueUpdate,\n handleColumnSelect,\n handleWidthChange\n}) => {\n // Local state management\n const [selectOptions, setSelectOptions] = useState<Option[]>(element.options || []);\n const [newOption, setNewOption] = useState<Option>({ label: \"\", value: \"\" });\n const [isAddingOption, setIsAddingOption] = useState(false);\n\n // Sync options with parent element when element changes\n useEffect(() => {\n if (JSON.stringify(selectOptions) !== JSON.stringify(element.options || [])) {\n setSelectOptions(element.options || []);\n }\n }, [element.options, selectOptions]);\n\n // Memoized computed values\n const isFieldDisabled = useMemo(() => \n element.type === \"system\" || !element.is_new, \n [element.type, element.is_new]\n );\n\n const selectedOptionLabel = useMemo(() => {\n const selectedOption = selectOptions.find(option => option.value === element.default_value);\n return selectedOption?.label || \"Select Default\";\n }, [selectOptions, element.default_value]);\n\n // Optimized event handlers with useCallback\n const handleFieldUpdate = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n handlePropertyValueUpdate(null, null, null, e.target.value);\n }, [handlePropertyValueUpdate]);\n\n const handleSelectUpdate = useCallback((e: React.ChangeEvent<{ value: unknown }>) => {\n handlePropertyValueUpdate(null, null, e.target.value);\n }, [handlePropertyValueUpdate]);\n\n const handleMultiSelect = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n // Reset default value when enabling multiselect\n const defaultValue = isChecked ? null : element.default_value;\n \n // Create a synthetic event for the property update\n const syntheticEvent = {\n target: {\n name: 'is_multiselect',\n checked: isChecked,\n value: isChecked\n }\n } as React.ChangeEvent<HTMLInputElement>;\n \n handlePropertyValueUpdate(syntheticEvent);\n \n // If enabling multiselect, also clear the default value\n if (isChecked && element.default_value) {\n handlePropertyValueUpdate(null, 'default_value', null);\n }\n }, [handlePropertyValueUpdate, element.default_value]);\n\n const handleNewOptionChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const { name, value } = e.target;\n setNewOption(prev => ({ ...prev, [name]: value }));\n }, []);\n\n const handleAddOption = useCallback(() => {\n if (!newOption.label.trim() || !newOption.value.trim()) {\n return; // Don't add empty options\n }\n\n // Check for duplicate values\n const isDuplicate = selectOptions.some(option => \n option.value === newOption.value || option.label === newOption.label\n );\n \n if (isDuplicate) {\n // Could show an error message here\n enqueueSnackbar(\"Option with this value or label already exists.\", { variant: \"error\" });\n return;\n }\n\n const updatedOptions = [...selectOptions, { ...newOption }];\n setSelectOptions(updatedOptions);\n handleSelectOptionValueUpdate(updatedOptions);\n \n // Reset form\n setNewOption({ label: \"\", value: \"\" });\n setIsAddingOption(false);\n }, [newOption, selectOptions, handleSelectOptionValueUpdate]);\n\n const handleRemoveOption = useCallback((indexToRemove: number) => {\n const updatedOptions = selectOptions.filter((_, index) => index !== indexToRemove);\n setSelectOptions(updatedOptions);\n handleSelectOptionValueUpdate(updatedOptions);\n \n // Clear default value if the removed option was selected\n const removedOption = selectOptions[indexToRemove];\n if (element.default_value === removedOption?.value) {\n handlePropertyValueUpdate(null, 'default_value', null);\n }\n }, [selectOptions, handleSelectOptionValueUpdate, element.default_value, handlePropertyValueUpdate]);\n\n const handleWidthChangeCallback = useCallback((\n _: Event, \n newValue: number | number[]\n ) => {\n handleWidthChange(newValue);\n }, [handleWidthChange]);\n\n return (\n <Box className=\"formSection--FieldContainer\">\n {/* Field Type Selection */}\n <Box>\n <FieldSelect\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={element.field_type}\n label=\"Field Type\"\n disabled={isFieldDisabled}\n />\n </Box>\n\n {/* Label Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={element.label}\n />\n </Box>\n\n {/* Placeholder Field */}\n <Box>\n <TextField\n fullWidth\n label=\"Placeholder\"\n is_required\n name=\"placeholder\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={element.placeholder}\n />\n </Box>\n\n {/* Default Value Selection */}\n <Box>\n <Select\n fullWidth\n placeholder=\"Select Default\"\n size=\"small\"\n name=\"default_value\"\n onChange={handleSelectUpdate}\n value={element.default_value || \"\"}\n label=\"Default\"\n variant=\"outlined\"\n disabled={element.is_multiselect}\n renderValue={() => selectedOptionLabel}\n >\n {selectOptions.map((option, index) => (\n <MenuItem key={`${option.value}-${index}`} value={option.value}>\n {option.label}\n </MenuItem>\n ))}\n </Select>\n </Box>\n\n {/* Column Per Row Selection */}\n <Box>\n <FormControl fullWidth>\n <Select\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelect}\n label=\"Select Column Per Row\"\n name=\"columnPerRow\"\n variant=\"outlined\"\n >\n {COLUMN_PER_ROW_OPTIONS.map((option) => (\n <MenuItem key={option} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n\n {/* Width Slider */}\n <Box>\n <Typography sx={{ color: 'black', mb: 1 }}>\n Adjust Width:\n </Typography>\n <Box pr={2}>\n <Slider\n value={element.custom_width || 6}\n min={1}\n max={12}\n step={1}\n onChange={handleWidthChangeCallback}\n aria-labelledby=\"width-slider\"\n sx={{ color: \"#4AC08C\" }}\n marks\n valueLabelDisplay=\"auto\"\n />\n </Box>\n </Box>\n\n {/* Options Management */}\n <Box className=\"formSection--SelectOption\">\n <Typography \n type=\"s5\" \n weight=\"medium\" \n color=\"theme.secondary.800\"\n sx={{ mb: 0.5 }}\n >\n Options\n </Typography>\n \n {/* Existing Options */}\n {selectOptions.map((option, index) => (\n <Box key={`option-${index}`} sx={{ mb: 1, display: 'flex', gap: 1 }}>\n <TextField\n fullWidth\n value={`${option.label} (${option.value})`}\n InputProps={{ readOnly: true }}\n />\n <IconButton\n color=\"error\"\n size=\"small\"\n onClick={() => handleRemoveOption(index)}\n >\n <Trash />\n </IconButton>\n </Box>\n ))}\n\n {/* Add New Option Form */}\n {isAddingOption && (\n <Box className=\"formSection--SelectOption\" sx={{ mt:0.5, p: 2, border: '1px solid #ddd', borderRadius: 1 }}>\n <Box sx={{ mb: 2 }}>\n <TextField\n fullWidth\n label=\"Option Label\"\n is_required\n name=\"label\"\n type=\"text\"\n placeholder=\"Enter option label\"\n value={newOption.label}\n onChange={handleNewOptionChange}\n />\n </Box>\n <Box sx={{ mb: 2 }}>\n <TextField\n fullWidth\n label=\"Option Value\"\n placeholder=\"Enter option value\"\n is_required\n name=\"value\"\n type=\"text\"\n value={newOption.value}\n onChange={handleNewOptionChange}\n />\n </Box>\n <Box sx={{ display: 'flex', gap: 1 }}>\n <Button\n onClick={handleAddOption}\n // className=\"formSection--Button\"\n startIcon={<Add />}\n disabled={!newOption.label.trim() || !newOption.value.trim()}\n >\n Add Option\n </Button>\n <Button\n onClick={() => {\n setIsAddingOption(false);\n setNewOption({ label: \"\", value: \"\" });\n }}\n variant=\"outlined\"\n >\n Cancel\n </Button>\n </Box>\n </Box>\n )}\n\n {/* Add Option Button */}\n {!isAddingOption && (\n <Button\n onClick={() => setIsAddingOption(true)}\n variant=\"outlined\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n sx={{ mt: 1 }}\n >\n Add Option\n </Button>\n )}\n </Box>\n\n {/* Form Controls */}\n <Box sx={{ display: 'flex', flexDirection: 'column', gap: 1 }}>\n <FormControlLabel\n name=\"is_multiselect\"\n control={<Checkbox />}\n onChange={handleMultiSelect}\n checked={element.is_multiselect}\n label=\"Enable Multi Select\"\n />\n\n <FormControlLabel\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_required}\n label=\"This field is required\"\n />\n\n <FormControlLabel\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_unique}\n label=\"Is Unique\"\n />\n\n <FormControlLabel\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={element.is_fullwidth}\n label=\"Full Width\"\n />\n </Box>\n </Box>\n );\n});\n\nSelectEditForm.displayName = 'SelectEditForm';\n\nexport default SelectEditForm;","// React imports\nimport { useEffect, useMemo, useState } from \"react\";\n\n// Material UI imports\nimport { MenuItem, Box, FormControlLabel } from \"@mui/material\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport { Add } from \"@mui/icons-material\";\n\n// ERP Common imports\nimport Select from \"@/components/select/select\";\nimport Button from \"@/components/button/button\";\nimport Typography from \"@/components/typography/typography\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport { generateRandomId } from \"@/utils/common\";\nimport { SECTION_TYPES } from \"@/utils/constant\";\n\n// Local imports\nimport { ISwitcherForms } from \"../field_properties\";\nimport \"../custom-form.scss\";\n\nconst SectionEditForm = (props: any) => {\n const { handlePropertyValueUpdate } = props;\n const [elementJSON, setElementJSON] = useState(props.element);\n const [addForm, setAddForm] = useState<boolean>(false);\n const [newForm, setNewForm] = useState<string>(\"\");\n const selectOption = [\"section\"];\n\n const isDuplicateFormName = useMemo(\n () =>\n elementJSON.switcher_forms?.map((ele: any) => ele.name).includes(newForm),\n [elementJSON.switcher_forms, newForm]\n );\n\n useEffect(() => {\n setElementJSON(props.element);\n }, [props.element]);\n\n return (\n <Box className=\"formSection--FieldContainer\" key={elementJSON.id}>\n <div>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n disabled\n defaultValue={elementJSON.field_type}\n label=\"Field Type\"\n variant=\"outlined\"\n >\n {selectOption?.map((item) => (\n <MenuItem value={item}>{item}</MenuItem>\n ))}\n </Select>\n </div>\n <div>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Field\"\n size=\"small\"\n name=\"section_type\"\n defaultValue={elementJSON.section_type}\n label=\"Section Type\"\n variant=\"outlined\"\n onChange={(e: any) => handlePropertyValueUpdate(e)}\n >\n {Object.values(SECTION_TYPES).map((type) => {\n return (\n <MenuItem key={type} value={type}>\n {type}\n </MenuItem>\n );\n })}\n </Select>\n </div>\n <div>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n key={elementJSON.id}\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </div>\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_accordion\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_accordion}\n label=\"Is Accordion\"\n />\n {elementJSON.section_type === SECTION_TYPES.FORM_SWITCH_SECTION ? (\n <div className=\"formSection--SubFieldContainer\">\n <div>\n <TextField\n fullWidth\n label=\"Form label\"\n is_required\n key={elementJSON.id}\n name=\"form_switcher_label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.form_switcher_label}\n />\n </div>\n <div>\n <Typography\n type=\"s5\"\n weight={\"medium\"}\n color={\"theme.secondary.800\"}\n >\n Forms\n </Typography>\n {elementJSON?.switcher_forms?.map(\n (ele: ISwitcherForms) => (\n <div className=\"formSection--MultiOptions\" key={elementJSON.id}>\n <TextField\n fullWidth\n key={ele.id}\n value={ele.name}\n style={{ marginBottom: \"10px\" }}\n name=\"switcher_forms\"\n onChange={(e: any) => {\n const newVal = elementJSON.switcher_forms?.map(\n (formEle: ISwitcherForms) =>\n ele.id === formEle.id\n ? { ...formEle, name: e.target.value }\n : { ...formEle }\n );\n\n handlePropertyValueUpdate(e, newVal);\n }}\n />\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={(e: any) => {\n const newVal = [...elementJSON.switcher_forms].filter(\n (item) => item.id !== ele.id\n );\n e.target.name = \"switcher_forms\";\n handlePropertyValueUpdate(e, newVal);\n }}\n />\n </div>\n )\n )}\n </div>\n {addForm ? (\n <div>\n <div\n className=\"formSection--MultiOptions formSection--FullWidth\"\n key={elementJSON.id}\n >\n <div className=\"formSection--FullWidth\">\n <TextField\n fullWidth\n label=\"Form section name\"\n placeholder=\"Form section name\"\n is_required\n key={elementJSON.id}\n type=\"text\"\n value={newForm}\n error={isDuplicateFormName}\n helperText={\n isDuplicateFormName\n ? \"Form section name can not duplicate\"\n : \"\"\n }\n onChange={(e: any) => setNewForm(e.target.value)}\n />\n </div>\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={() => {\n setAddForm(false);\n setNewForm(\"\");\n }}\n />\n </div>\n <Button\n onClick={(e: any) => {\n const { uniqueStringId: id } = generateRandomId();\n const newVal = [\n ...elementJSON.switcher_forms,\n { name: newForm, id },\n ];\n handlePropertyValueUpdate(e, newVal);\n setNewForm(\"\");\n setAddForm(false);\n }}\n name=\"switcher_forms\"\n variant=\"text\"\n className=\"formSection--Button\"\n disabled={isDuplicateFormName || !newForm}\n startIcon={<Add />}\n >\n Add\n </Button>\n </div>\n ) : null}\n {!addForm ? (\n <Button\n onClick={() => setAddForm(true)}\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add forms\n </Button>\n ) : null}\n </div>\n ) : null}\n </Box>\n );\n};\n\nexport { SectionEditForm };\nexport default SectionEditForm;\n","// React imports\nimport { useEffect, useState } from \"react\";\n\n// Material UI imports\nimport {\n MenuItem,\n Box,\n FormControlLabel,\n FormControl,\n RadioGroup,\n Button,\n Select,\n InputLabel,\n Slider,\n} from \"@mui/material\";\nimport { Add } from \"@mui/icons-material\";\nimport CloseIcon from \"@mui/icons-material/Close\";\n\n// ERP Common imports\nimport Checkbox from \"@/components/checkbox/checkbox\";\nimport Radio from \"@/components/radio/radio\";\nimport TextField from \"@/components/text-field/text-field\";\nimport Typography from \"@/components/typography/typography\";\n\n// Local imports\nimport FieldSelect from \"./field-select\";\nimport \"../custom-form.scss\";\n\ninterface Option {\n label: string;\n value: string;\n is_checked: boolean;\n [key: string]: string | boolean; // Index signature to allow any string property\n}\n\nexport function CheckboxEditForm(props: any) {\n const [isAddSelectOption, setAddSelectOption] = useState(false);\n const { handlePropertyValueUpdate, handleSelectOptionValueUpdate , handleColumnSelect , handleWidthChange } = props;\n const columnPerRowOptions = [1, 2, 3, 4, 5, 6];\n const [selectOptions, setSelectOptions] = useState(\n props.element.options || [],\n );\n const [elementJSON, setElementJSON] = useState(props.element);\n\n const allowLabelPositionModification =\n elementJSON.field_type !== \"radioButton\";\n\n const [newOptions, setNewOptions] = useState<Option>({\n label: \"\",\n value: \"\",\n is_checked: false,\n });\n\n\n\n const handleAddNewOption = (e: any) => {\n const label: string = e.target.name;\n const value: string = e.target.value;\n const option: Option = { ...newOptions };\n option[label] = value;\n setNewOptions(option);\n };\n\n const handleFieldUpdate = (e: any) => {\n elementJSON.field_type = e.target.value;\n handlePropertyValueUpdate(null, null, null, e.target.value);\n };\n\n const handleSelectUpdate = (e: any) => {\n elementJSON.default_value = e.target.value;\n handlePropertyValueUpdate(null, null, e.target.value);\n };\n\n useEffect(() => {\n setElementJSON(props.element);\n setSelectOptions(props.element.options || []);\n }, [props.element]);\n\n useEffect(() => {\n setNewOptions({ label: \"\", value: \"\", is_checked: false });\n setAddSelectOption(false);\n handleSelectOptionValueUpdate(selectOptions);\n // eslint-disable-next-line\n }, [selectOptions]);\n\n return (\n <Box className=\"formSection--FieldContainer\" key={elementJSON.id}>\n <div key={elementJSON.id}>\n <FieldSelect\n key={elementJSON.id}\n variant=\"outlined\"\n onChange={handleFieldUpdate}\n defaultValue={elementJSON.field_type}\n label=\"Field Type\"\n disabled={elementJSON.type === \"system\" || !elementJSON.is_new}\n />\n </div>\n <div key={elementJSON.id}>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n key={elementJSON.id}\n name=\"label\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.label}\n />\n </div>\n\n <div key={elementJSON.id}>\n <Select\n variant=\"outlined\"\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Default\"\n size=\"small\"\n name=\"options\"\n onChange={() => handleSelectUpdate}\n defaultValue={elementJSON.default_value}\n label=\"Default\"\n disabled={!selectOptions.length}\n >\n {selectOptions?.map((option: any, index: number) => (\n <MenuItem key={index} value={option.value}>\n {option.label}\n </MenuItem>\n ))}\n </Select>\n </div>\n <FormControl>\n <Select\n key={elementJSON.id}\n fullWidth\n placeholder=\"Select Column Per Row\"\n size=\"small\"\n onChange={handleColumnSelect} // need to change\n // defaultValue= {} // need to change\n label=\"Select Column Per Row\"\n name=\"option\"\n variant=\"outlined\"\n >\n {columnPerRowOptions?.map((option: any, index: number) => (\n <MenuItem key={index} value={option}>\n {option}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n <Box>\n <Typography sx={{ color: 'black' }}>Adjust Width:</Typography>\n <Slider\n value = {elementJSON?.custom_width}\n name = \"custom_width\"\n min={1}\n max={12}\n step={1}\n onChange={(_, newValue) => handleWidthChange(newValue)}\n aria-labelledby=\"width-slider\"\n sx = {{color : \"#4AC08C\"}}\n />\n </Box>\n \n\n <div className=\"formSection--SelectOption\">\n <Typography type=\"s5\" weight={\"medium\"} color={\"theme.secondary.800\"}>\n Options\n </Typography>\n {selectOptions.map((option: any, index: number) => (\n <div className=\"formSection--MultiOptions\">\n <TextField\n fullWidth\n key={index}\n value={`${option.label} (${option.value})`}\n InputProps={{\n readOnly: true,\n }}\n />\n <CloseIcon\n style={{ fontSize: \"1rem\", color: \"#656669\" }}\n onClick={() => {\n setSelectOptions([\n ...selectOptions.filter(\n (_: any, filterIndex: number) => filterIndex !== index,\n ),\n ]);\n }}\n />\n </div>\n ))}\n </div>\n {isAddSelectOption ? (\n <div className=\"formSection--SelectOption\">\n <div>\n <TextField\n fullWidth\n label=\"Label\"\n is_required\n name=\"label\"\n type=\"text\"\n placeholder=\"Label\"\n defaultValue={newOptions.label}\n onChange={handleAddNewOption}\n />\n </div>\n <div>\n <TextField\n fullWidth\n label=\"Value\"\n placeholder=\"Value\"\n is_required\n name=\"value\"\n type=\"text\"\n defaultValue={newOptions.value}\n onChange={handleAddNewOption}\n />\n </div>\n <Button\n onClick={() =>\n setSelectOptions([...selectOptions, { ...newOptions }])\n }\n disabled={\n !!selectOptions.find(\n (ele: Option) => ele.value === newOptions.value,\n )\n }\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add\n </Button>\n </div>\n ) : (\n <Button\n onClick={() => setAddSelectOption(true)}\n variant=\"text\"\n className=\"formSection--Button\"\n startIcon={<Add />}\n >\n Add Option\n </Button>\n )}\n\n <FormControl>\n <Typography type=\"s4\" color=\"theme.secondary.800\">\n Display style\n </Typography>\n <RadioGroup\n key={elementJSON.id}\n row\n aria-labelledby=\"demo-radio-buttons-group-label\"\n name=\"display\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.display}\n >\n <FormControlLabel\n value=\"row\"\n control={<Radio size=\"small\" />}\n label=\"Row\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n <FormControlLabel\n value=\"column\"\n control={<Radio size=\"small\" />}\n label=\"Column\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n </RadioGroup>\n </FormControl>\n\n <div key={elementJSON.id}>\n <TextField\n key={elementJSON.id}\n fullWidth\n label=\"Title\"\n is_required\n name=\"title\"\n type=\"text\"\n onChange={handlePropertyValueUpdate}\n defaultValue={elementJSON.title}\n />\n </div>\n\n <FormControl disabled={!allowLabelPositionModification}>\n <Typography type=\"s4\" color=\"theme.secondary.800\">\n Title Position\n </Typography>\n <RadioGroup\n key={elementJSON.id}\n row\n aria-labelledby=\"demo-radio-buttons-group-label\"\n name=\"title_position\"\n onChange={handlePropertyValueUpdate}\n defaultValue={allowLabelPositionModification ? \"end\" : \"\"}\n >\n <FormControlLabel\n value=\"start\"\n control={<Radio size=\"small\" />}\n label=\"Start\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n <FormControlLabel\n value=\"end\"\n control={<Radio size=\"small\" />}\n label=\"End\"\n slotProps={{ typography: { variant: \"body2\" } }}\n />\n </RadioGroup>\n </FormControl>\n\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_required\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_required}\n label=\"This field is required\"\n />\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_unique\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate}\n checked={elementJSON.is_unique}\n label=\"Is Unique\"\n />\n\n <FormControlLabel\n key={elementJSON.id}\n name=\"is_fullwidth\"\n control={<Checkbox />}\n onChange={handlePropertyValueUpdate} // need to change this\n checked={elementJSON?.is_fullwidth}// need to change \n label=\"Full Width \"\n />\n </Box>\n );\n}\n\nexport default CheckboxEditForm;\n","// React imports\nimport React, { useEffect, useState } from 'react';\n\n// Material UI imports\nimport { MenuItem, Box, SelectChangeEvent } from '@mui/material';\n\n// Third-party imports\nimport { MRT_ColumnDef, MRT_RowData } from 'material-react-table';\n\n// ERP Common imports\nimport Select from '@/components/select/select';\nimport TextField from '@/components/text-field/text-field';\nimport formatText from '@/utils/format-text';\n\n// Local imports\nimport { IElementJson } from '../custom-form';\nimport { ApiFormFields } from '../../Redux/state';\nimport FieldSelect from './field-select';\nimport '../custom-form.scss';\n\ninterface ITableEditForm {\n\thandlePropertyValueUpdate: (\n\t\tevent?: any,\n\t\tnumberValue?: any,\n\t\tval?: any,\n\t\tfieldType?: any\n\t) => void;\n\thandleColumnsUpdate: (columns: MRT_ColumnDef<MRT_RowData>[]) => void;\n\telement: IElementJson | null;\n\tfields: ApiFormFields | null;\n}\n\ninterface TableOption {\n\tlabel: string;\n\tvalue: string;\n}\n\nconst TableEditForm: React.FC<ITableEditForm> = ({\n\thandlePropertyValueUpdate,\n\telement,\n\thandleColumnsUpdate,\n\tfields\n}) => {\n\t/* Local States */\n\tconst [elementJSON, setElementJSON] = useState<IElementJson | null>(element);\n\tconst [tables, setTables] = useState<TableOption[]>([]);\n\n\t/* Local Functions */\n\tconst handleFieldUpdate = (event: SelectChangeEvent<unknown>) => {\n\t\tif (elementJSON) {\n\t\t\telementJSON.field_type = event.target.value as string;\n\t\t\thandlePropertyValueUpdate(null, null, null, event.target.value as string);\n\t\t}\n\t};\n\tconst handleTableSelect = (event: SelectChangeEvent<unknown>) => {\n\t\thandlePropertyValueUpdate(event);\n\t};\n\n\t/* Use Effects */\n\tuseEffect(() => {\n\t\tsetElementJSON(element);\n\t}, [element]);\n\tuseEffect(() => {\n\t\tif (elementJSON && elementJSON.table && fields) {\n\t\t\tconst fieldsArr = fields[elementJSON.table];\n\t\t\tlet columns: any[] = [];\n\t\t\tif (fieldsArr && fieldsArr?.length) {\n\t\t\t\tcolumns = fieldsArr.map((field, index) => ({\n\t\t\t\t\theader: formatText(field.field),\n\t\t\t\t\taccessorKey: field.field,\n\t\t\t\t\tvisible: index > 3 ? false : true,\n\t\t\t\t\ttype: field.type\n\t\t\t\t}));\n\t\t\t} else {\n\t\t\t\tcolumns = [\n\t\t\t\t\t{ header: 'Column 1', accessorKey: 'column_1', visible: true },\n\t\t\t\t\t{ header: 'Column 2', accessorKey: 'column_1', visible: true }\n\t\t\t\t];\n\t\t\t}\n\t\t\tcolumns && handleColumnsUpdate(columns);\n\t\t}\n\t}, [elementJSON?.table]);\n\tuseEffect(() => {\n\t\tif (fields) {\n\t\t\tconst options = Object.keys(fields).map((key) => ({\n\t\t\t\tlabel: formatText(key),\n\t\t\t\tvalue: key\n\t\t\t}));\n\t\t\tsetTables(options);\n\t\t}\n\t}, [fields]);\n\n\tif (!elementJSON) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Box className='formSection--FieldContainer' key={elementJSON.id}>\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<FieldSelect\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tvariant='outlined'\n\t\t\t\t\tonChange={handleFieldUpdate}\n\t\t\t\t\tdefaultValue={elementJSON.field_type}\n\t\t\t\t\tdisabled={elementJSON.type === 'system' || !elementJSON.is_new}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<TextField\n\t\t\t\t\tfullWidth\n\t\t\t\t\tlabel='Label'\n\t\t\t\t\tis_required\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tname='label'\n\t\t\t\t\ttype='text'\n\t\t\t\t\tonChange={handlePropertyValueUpdate}\n\t\t\t\t\tdefaultValue={elementJSON.label}\n\t\t\t\t/>\n\t\t\t</div>\n\n\t\t\t<div key={elementJSON.id}>\n\t\t\t\t<Select\n\t\t\t\t\tkey={elementJSON.id}\n\t\t\t\t\tvariant='outlined'\n\t\t\t\t\tlabel='Table'\n\t\t\t\t\tfullWidth\n\t\t\t\t\tplaceholder='Select Table'\n\t\t\t\t\tsize='small'\n\t\t\t\t\tname='table'\n\t\t\t\t\tdefaultValue={elementJSON.table}\n\t\t\t\t\tdisabled={elementJSON.type === 'system'}\n\t\t\t\t\tonChange={handleTableSelect}\n\t\t\t\t\trenderValue={(value: string) =>\n\t\t\t\t\t\ttables.find((option) => option.value === value)?.label\n\t\t\t\t\t}>\n\t\t\t\t\t{tables?.map((item) => (\n\t\t\t\t\t\t<MenuItem value={item.value}>{item.label}</MenuItem>\n\t\t\t\t\t))}\n\t\t\t\t</Select>\n\t\t\t</div>\n\t\t</Box>\n\t);\n};\n\nexport default TableEditForm;\n"],"names":["COLUMN_PER_ROW_OPTIONS","fields","elementJSON","React","_a","CloseIcon","Select","Button"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Add } from "@mui/icons-material";
3
3
  import { B as Button } from "./button-BtdpXmjA.esm.js";
4
- import { M as MaterialTable } from "./searchable-select-BQtcqBKV.esm.js";
4
+ import { M as MaterialTable } from "./searchable-select-0F6E4XAr.esm.js";
5
5
  import { T as Typography } from "./typography-CG_A0iOJ.esm.js";
6
6
  import { Box } from "@mui/material";
7
7
  /* empty css */
@@ -11,7 +11,7 @@ import { a as formatDate } from "./dateFormat-VzMEQghL.esm.js";
11
11
  import { C as Chip } from "./chip-CrHuY2_O.esm.js";
12
12
  import { C as Checkbox } from "./checkbox-C0Kk4Gq8.esm.js";
13
13
  import _ from "lodash";
14
- import { av as toFixedWithNumbers, _ as getFileName, C as formatAmount } from "./api-8jutPLh0.esm.js";
14
+ import { av as toFixedWithNumbers, _ as getFileName, C as formatAmount } from "./api-BIVCMSwW.esm.js";
15
15
  import { getApiConfigSafe } from "../utils/api-config/index.esm.js";
16
16
  import { useTranslation } from "react-i18next";
17
17
  import { formatLabel } from "../utils/format-text/index.esm.js";
@@ -182,4 +182,4 @@ const DynamicTable = React__default.memo(({
182
182
  export {
183
183
  DynamicTable as D
184
184
  };
185
- //# sourceMappingURL=table-DI3MyTNm.esm.js.map
185
+ //# sourceMappingURL=table-gxAlAeTq.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-DI3MyTNm.esm.js","sources":["../../src/components/form-control/form-builder/form-builder-element/table.tsx"],"sourcesContent":["// import { MRT_ColumnDef, MRT_RowData } from 'material-react-table';\nimport { Add } from '@mui/icons-material';\nimport Button from '../../../button/button';\nimport MaterialTable, { MaterialTableColumnProps } from '../../../material-table/material-table';\nimport Typography from '../../../typography/typography';\nimport { Box } from '@mui/material';\nimport './element.scss';\nimport { parse, stringify } from 'flatted';\nimport React, { useCallback } from 'react';\nimport { useAuth } from '@erpsquad/common/runtime';\nimport { formatDate } from '../../../../utils/dateFormat';\nimport Chip from '../../../chip/chip';\nimport Checkbox from '../../../checkbox/checkbox';\nimport { MRT_Row } from 'material-react-table';\nimport _ from 'lodash';\nimport { formatAmount, getFileName, toFixedWithNumbers } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { useTranslation } from 'react-i18next';\nimport { formatLabel } from '../../../../utils/format-text';\nexport interface ICellChangeParam {\n\tvalue: any,\n\tdata: any,\n\tcol: MaterialTableColumnProps,\n\trow: MRT_Row<any>,\n\tname: string,\n\tuRows: any[]\n}\n\ninterface IDynamicTable {\n\tcolumns: any[];\n\trows?: any[];\n\tposition: number;\n\tlabel: string;\n\tdisabled?: boolean;\n\ttypeOfField?: string;\n\tonAddClick?: (name?: string) => void;\n\tname?: string;\n\tis_button?: boolean;\n\tdisableTableAddButton?: boolean;\n\totherButtons?: React.ReactNode[];\n\tdefaultActionColumnItems?: React.ReactElement[];\n\tonTableCellChange: ({ value, data, col, row }: ICellChangeParam) => void;\n\tcurrencySymbol?: string;\n}\n\nconst DynamicTable: React.FC<IDynamicTable> = React.memo(({\n\tcolumns,\n\tposition,\n\tlabel,\n\trows = [],\n\tonAddClick,\n\tname,\n\tis_button = true,\n\tdisableTableAddButton,\n\totherButtons,\n\tdefaultActionColumnItems,\n\tonTableCellChange,\n\tcurrencySymbol = '',\n\t...rest\n\t// disabled\n}) => {\n\tconst { t } = useTranslation();\n\tconst { user } = useAuth();\n\tconst cs = currencySymbol || user?.currency_data?.symbol || '';\n\tconst currencyFormat = user?.currency_data?.number_format || '';\n\tconst symbolPosition = user?.currency_data?.position || 'before';\n\tconst isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n\tconst takeCurencyOrPercentage = useCallback((type: string, value: any) => {\n\t\tswitch (type) {\n\t\t\tcase 'Percentage':\n\t\t\t\treturn `${value}%`;\n\t\t\tcase 'Fixed Amount':\n\t\t\t\treturn `${cs}${value}`;\n\n\t\t\tdefault:\n\t\t\t\treturn value;\n\t\t}\n\t}, [cs]);\n\n\tconst isCellChangeAFunc = onTableCellChange instanceof Function\n\n\tconst tableColumns = useCallback(\n\t\t(columns: MaterialTableColumnProps[]) => {\n\t\t\treturn columns.map((column) => {\n\t\t\t\tconst originalCell = column.Cell;\n\t\t\t\treturn {\n\t\t\t\t\t...column,\n\t\t\t\t\theader: t(column.header),\n\t\t\t\t\tCell: (cellProps: any) => {\n\t\t\t\t\t\tif (originalCell) {\n\t\t\t\t\t\t\treturn originalCell(cellProps);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet v = cellProps.renderedCellValue;\n\t\t\t\t\t\tif (column.accessorKey?.endsWith('.items.name')) {\n\t\t\t\t\t\t\tconst prefix = column.accessorKey.replace(/\\.name$/, '');\n\t\t\t\t\t\t\tconst item = _.get(cellProps.row.original, prefix);\n\t\t\t\t\t\t\tif (item?.sku) {\n\t\t\t\t\t\t\t\tv = `${item.sku} - ${item.name}`;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isSpar && column.type !== 'currency' && typeof v === 'number' && v && String(v)?.includes('.')) {\n\t\t\t\t\t\t\treturn v = toFixedWithNumbers(v, 4)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch (column.type) {\n\t\t\t\t\t\t\tcase 'formattedString':\n\t\t\t\t\t\t\t\tv = formatLabel(cellProps.renderedCellValue) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'date':\n\t\t\t\t\t\t\t\tv = formatDate(\n\t\t\t\t\t\t\t\t\tcellProps.renderedCellValue,\n\t\t\t\t\t\t\t\t\tcolumn.editProperties?.dateFormat || 'DD-MM-YYYY'\n\t\t\t\t\t\t\t\t) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'currency':\n\t\t\t\t\t\t\t\tv = cellProps.renderedCellValue ? `${formatAmount(cellProps.renderedCellValue, currencyFormat, symbolPosition, cs, isSpar ? 4 : undefined)}` : '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'stringOrArray': {\n\t\t\t\t\t\t\t\tconst type = cellProps.row.original?.promotion_map_data?.type;\n\t\t\t\t\t\t\t\tv = Array.isArray(cellProps.renderedCellValue)\n\t\t\t\t\t\t\t\t\t? cellProps.renderedCellValue.map((rcv) => (\n\t\t\t\t\t\t\t\t\t\trcv ? <Chip label={takeCurencyOrPercentage(type, rcv)} /> : null\n\t\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t\t\t: takeCurencyOrPercentage(type, cellProps.renderedCellValue);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"checkbox\": {\n\t\t\t\t\t\t\t\tv = <Checkbox\n\t\t\t\t\t\t\t\t\tchecked={Boolean(cellProps.renderedCellValue)}\n\t\t\t\t\t\t\t\t\tonClick={isCellChangeAFunc\n\t\t\t\t\t\t\t\t\t\t? (e) => onTableCellChange({\n\t\t\t\t\t\t\t\t\t\t\tvalue: e.target.checked,\n\t\t\t\t\t\t\t\t\t\t\tdata: cellProps.row.original,\n\t\t\t\t\t\t\t\t\t\t\tcol: column,\n\t\t\t\t\t\t\t\t\t\t\trow: cellProps.row,\n\t\t\t\t\t\t\t\t\t\t\tname: name,\n\t\t\t\t\t\t\t\t\t\t\tuRows: rows\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"array\": {\n\t\t\t\t\t\t\t\tv = Array.isArray(cellProps.renderedCellValue) && cellProps.renderedCellValue.length ?\n\t\t\t\t\t\t\t\t\t<Box sx={{ display: 'flex', gap: 0.5, alignItems: 'center', flexWrap: 'wrap' }}>\n\t\t\t\t\t\t\t\t\t\t{cellProps.renderedCellValue.map(r => (<Chip type='normal' label={_.get(r, column?.valueGet, '')} active />))}\n\t\t\t\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t\t\t\t: '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"file\": {\n\t\t\t\t\t\t\t\tv = getFileName(cellProps.renderedCellValue) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn v;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t});\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[cs, takeCurencyOrPercentage, currencySymbol, rows]\n\t);\n\treturn (\n\t\t<Box data-position={position}>\n\t\t\t<Typography\n\t\t\t\ttype='s5'\n\t\t\t\tweight='medium'\n\t\t\t\tcolor='theme.secondary.800'\n\t\t\t\tdata-position={position}\n\t\t\t\tsx={{ mb: 0.5 }}>\n\t\t\t\t{t(label)}\n\t\t\t</Typography>\n\t\t\t<Box /* sx={disabled ? { pointerEvents: 'none' } : {}} */>\n\t\t\t\t<MaterialTable\n\t\t\t\t\tcolumnOrder={['mrt-row-select']}\n\t\t\t\t\t// rows={parse(stringify(rows))}\n\t\t\t\t\trows={rows}\n\t\t\t\t\tcolumns={tableColumns(columns ? columns.map((col: any) => ({ ...col })) : [])}\n\t\t\t\t\ttotalPages={20}\n\t\t\t\t\tpaginationModel={{ pageNo: 1, limit: 20 }}\n\t\t\t\t\tenableEditing={false}\n\t\t\t\t\tenableColumnDragging={false}\n\t\t\t\t\tenableBottomToolbar={false}\n\t\t\t\t\tdefaultActionColumnItems={defaultActionColumnItems}\n\t\t\t\t\t{...rest}\n\t\t\t\t/>\n\t\t\t\t{is_button && !disableTableAddButton && (\n\t\t\t\t\t<Box\n\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\t\tjustifyContent: 'space-between',\n\t\t\t\t\t\t\tmt: 1\n\t\t\t\t\t\t}}>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant='outlined'\n\t\t\t\t\t\t\tonClick={() => onAddClick?.(name)}\n\t\t\t\t\t\t\tstartIcon={<Add />}\n\t\t\t\t\t\t\tclassName='table--AddButton'>\n\t\t\t\t\t\t\tAdd\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{Boolean(otherButtons?.length) && otherButtons}\n\t\t\t\t\t</Box>\n\t\t\t\t)}\n\t\t\t</Box>\n\t\t</Box>\n\t);\n});\n\nexport default DynamicTable;\n"],"names":["React","columns","_a","_b","_c","_d"],"mappings":"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"}
1
+ {"version":3,"file":"table-gxAlAeTq.esm.js","sources":["../../src/components/form-control/form-builder/form-builder-element/table.tsx"],"sourcesContent":["// import { MRT_ColumnDef, MRT_RowData } from 'material-react-table';\nimport { Add } from '@mui/icons-material';\nimport Button from '../../../button/button';\nimport MaterialTable, { MaterialTableColumnProps } from '../../../material-table/material-table';\nimport Typography from '../../../typography/typography';\nimport { Box } from '@mui/material';\nimport './element.scss';\nimport { parse, stringify } from 'flatted';\nimport React, { useCallback } from 'react';\nimport { useAuth } from '@erpsquad/common/runtime';\nimport { formatDate } from '../../../../utils/dateFormat';\nimport Chip from '../../../chip/chip';\nimport Checkbox from '../../../checkbox/checkbox';\nimport { MRT_Row } from 'material-react-table';\nimport _ from 'lodash';\nimport { formatAmount, getFileName, toFixedWithNumbers } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { useTranslation } from 'react-i18next';\nimport { formatLabel } from '../../../../utils/format-text';\nexport interface ICellChangeParam {\n\tvalue: any,\n\tdata: any,\n\tcol: MaterialTableColumnProps,\n\trow: MRT_Row<any>,\n\tname: string,\n\tuRows: any[]\n}\n\ninterface IDynamicTable {\n\tcolumns: any[];\n\trows?: any[];\n\tposition: number;\n\tlabel: string;\n\tdisabled?: boolean;\n\ttypeOfField?: string;\n\tonAddClick?: (name?: string) => void;\n\tname?: string;\n\tis_button?: boolean;\n\tdisableTableAddButton?: boolean;\n\totherButtons?: React.ReactNode[];\n\tdefaultActionColumnItems?: React.ReactElement[];\n\tonTableCellChange: ({ value, data, col, row }: ICellChangeParam) => void;\n\tcurrencySymbol?: string;\n}\n\nconst DynamicTable: React.FC<IDynamicTable> = React.memo(({\n\tcolumns,\n\tposition,\n\tlabel,\n\trows = [],\n\tonAddClick,\n\tname,\n\tis_button = true,\n\tdisableTableAddButton,\n\totherButtons,\n\tdefaultActionColumnItems,\n\tonTableCellChange,\n\tcurrencySymbol = '',\n\t...rest\n\t// disabled\n}) => {\n\tconst { t } = useTranslation();\n\tconst { user } = useAuth();\n\tconst cs = currencySymbol || user?.currency_data?.symbol || '';\n\tconst currencyFormat = user?.currency_data?.number_format || '';\n\tconst symbolPosition = user?.currency_data?.position || 'before';\n\tconst isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n\tconst takeCurencyOrPercentage = useCallback((type: string, value: any) => {\n\t\tswitch (type) {\n\t\t\tcase 'Percentage':\n\t\t\t\treturn `${value}%`;\n\t\t\tcase 'Fixed Amount':\n\t\t\t\treturn `${cs}${value}`;\n\n\t\t\tdefault:\n\t\t\t\treturn value;\n\t\t}\n\t}, [cs]);\n\n\tconst isCellChangeAFunc = onTableCellChange instanceof Function\n\n\tconst tableColumns = useCallback(\n\t\t(columns: MaterialTableColumnProps[]) => {\n\t\t\treturn columns.map((column) => {\n\t\t\t\tconst originalCell = column.Cell;\n\t\t\t\treturn {\n\t\t\t\t\t...column,\n\t\t\t\t\theader: t(column.header),\n\t\t\t\t\tCell: (cellProps: any) => {\n\t\t\t\t\t\tif (originalCell) {\n\t\t\t\t\t\t\treturn originalCell(cellProps);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet v = cellProps.renderedCellValue;\n\t\t\t\t\t\tif (column.accessorKey?.endsWith('.items.name')) {\n\t\t\t\t\t\t\tconst prefix = column.accessorKey.replace(/\\.name$/, '');\n\t\t\t\t\t\t\tconst item = _.get(cellProps.row.original, prefix);\n\t\t\t\t\t\t\tif (item?.sku) {\n\t\t\t\t\t\t\t\tv = `${item.sku} - ${item.name}`;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isSpar && column.type !== 'currency' && typeof v === 'number' && v && String(v)?.includes('.')) {\n\t\t\t\t\t\t\treturn v = toFixedWithNumbers(v, 4)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch (column.type) {\n\t\t\t\t\t\t\tcase 'formattedString':\n\t\t\t\t\t\t\t\tv = formatLabel(cellProps.renderedCellValue) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'date':\n\t\t\t\t\t\t\t\tv = formatDate(\n\t\t\t\t\t\t\t\t\tcellProps.renderedCellValue,\n\t\t\t\t\t\t\t\t\tcolumn.editProperties?.dateFormat || 'DD-MM-YYYY'\n\t\t\t\t\t\t\t\t) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'currency':\n\t\t\t\t\t\t\t\tv = cellProps.renderedCellValue ? `${formatAmount(cellProps.renderedCellValue, currencyFormat, symbolPosition, cs, isSpar ? 4 : undefined)}` : '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'stringOrArray': {\n\t\t\t\t\t\t\t\tconst type = cellProps.row.original?.promotion_map_data?.type;\n\t\t\t\t\t\t\t\tv = Array.isArray(cellProps.renderedCellValue)\n\t\t\t\t\t\t\t\t\t? cellProps.renderedCellValue.map((rcv) => (\n\t\t\t\t\t\t\t\t\t\trcv ? <Chip label={takeCurencyOrPercentage(type, rcv)} /> : null\n\t\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t\t\t: takeCurencyOrPercentage(type, cellProps.renderedCellValue);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"checkbox\": {\n\t\t\t\t\t\t\t\tv = <Checkbox\n\t\t\t\t\t\t\t\t\tchecked={Boolean(cellProps.renderedCellValue)}\n\t\t\t\t\t\t\t\t\tonClick={isCellChangeAFunc\n\t\t\t\t\t\t\t\t\t\t? (e) => onTableCellChange({\n\t\t\t\t\t\t\t\t\t\t\tvalue: e.target.checked,\n\t\t\t\t\t\t\t\t\t\t\tdata: cellProps.row.original,\n\t\t\t\t\t\t\t\t\t\t\tcol: column,\n\t\t\t\t\t\t\t\t\t\t\trow: cellProps.row,\n\t\t\t\t\t\t\t\t\t\t\tname: name,\n\t\t\t\t\t\t\t\t\t\t\tuRows: rows\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"array\": {\n\t\t\t\t\t\t\t\tv = Array.isArray(cellProps.renderedCellValue) && cellProps.renderedCellValue.length ?\n\t\t\t\t\t\t\t\t\t<Box sx={{ display: 'flex', gap: 0.5, alignItems: 'center', flexWrap: 'wrap' }}>\n\t\t\t\t\t\t\t\t\t\t{cellProps.renderedCellValue.map(r => (<Chip type='normal' label={_.get(r, column?.valueGet, '')} active />))}\n\t\t\t\t\t\t\t\t\t</Box>\n\t\t\t\t\t\t\t\t\t: '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase \"file\": {\n\t\t\t\t\t\t\t\tv = getFileName(cellProps.renderedCellValue) || '-';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn v;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t});\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[cs, takeCurencyOrPercentage, currencySymbol, rows]\n\t);\n\treturn (\n\t\t<Box data-position={position}>\n\t\t\t<Typography\n\t\t\t\ttype='s5'\n\t\t\t\tweight='medium'\n\t\t\t\tcolor='theme.secondary.800'\n\t\t\t\tdata-position={position}\n\t\t\t\tsx={{ mb: 0.5 }}>\n\t\t\t\t{t(label)}\n\t\t\t</Typography>\n\t\t\t<Box /* sx={disabled ? { pointerEvents: 'none' } : {}} */>\n\t\t\t\t<MaterialTable\n\t\t\t\t\tcolumnOrder={['mrt-row-select']}\n\t\t\t\t\t// rows={parse(stringify(rows))}\n\t\t\t\t\trows={rows}\n\t\t\t\t\tcolumns={tableColumns(columns ? columns.map((col: any) => ({ ...col })) : [])}\n\t\t\t\t\ttotalPages={20}\n\t\t\t\t\tpaginationModel={{ pageNo: 1, limit: 20 }}\n\t\t\t\t\tenableEditing={false}\n\t\t\t\t\tenableColumnDragging={false}\n\t\t\t\t\tenableBottomToolbar={false}\n\t\t\t\t\tdefaultActionColumnItems={defaultActionColumnItems}\n\t\t\t\t\t{...rest}\n\t\t\t\t/>\n\t\t\t\t{is_button && !disableTableAddButton && (\n\t\t\t\t\t<Box\n\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\t\tjustifyContent: 'space-between',\n\t\t\t\t\t\t\tmt: 1\n\t\t\t\t\t\t}}>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant='outlined'\n\t\t\t\t\t\t\tonClick={() => onAddClick?.(name)}\n\t\t\t\t\t\t\tstartIcon={<Add />}\n\t\t\t\t\t\t\tclassName='table--AddButton'>\n\t\t\t\t\t\t\tAdd\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{Boolean(otherButtons?.length) && otherButtons}\n\t\t\t\t\t</Box>\n\t\t\t\t)}\n\t\t\t</Box>\n\t\t</Box>\n\t);\n});\n\nexport default DynamicTable;\n"],"names":["React","columns","_a","_b","_c","_d"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { useRoutes } from "react-router-dom";
2
- import { t as templateEditorRoutes } from "./routes-D9y_XQRu.esm.js";
2
+ import { t as templateEditorRoutes } from "./routes-CAc76Zan.esm.js";
3
3
  function TemplateEditorRouter({ modulePath, module }) {
4
4
  return useRoutes(templateEditorRoutes(modulePath, module));
5
5
  }
6
6
  export {
7
7
  TemplateEditorRouter as T
8
8
  };
9
- //# sourceMappingURL=template-editor-router-uzghBOap.esm.js.map
9
+ //# sourceMappingURL=template-editor-router-BXLUTvsk.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-editor-router-uzghBOap.esm.js","sources":["../../src/views/template-editor/template-editor-router.tsx"],"sourcesContent":["import { useRoutes } from \"react-router-dom\";\nimport { templateEditorRoutes } from \"./routes\";\n\ninterface Props {\n\tmodulePath: string;\n\tmodule: string;\n}\n\nexport default function TemplateEditorRouter({ modulePath, module }: Props) {\n\treturn useRoutes(templateEditorRoutes(modulePath, module));\n}\n"],"names":[],"mappings":";;AAQA,SAAwB,qBAAqB,EAAE,YAAY,UAAiB;AAC3E,SAAO,UAAU,qBAAqB,YAAY,MAAM,CAAC;AAC1D;"}
1
+ {"version":3,"file":"template-editor-router-BXLUTvsk.esm.js","sources":["../../src/views/template-editor/template-editor-router.tsx"],"sourcesContent":["import { useRoutes } from \"react-router-dom\";\nimport { templateEditorRoutes } from \"./routes\";\n\ninterface Props {\n\tmodulePath: string;\n\tmodule: string;\n}\n\nexport default function TemplateEditorRouter({ modulePath, module }: Props) {\n\treturn useRoutes(templateEditorRoutes(modulePath, module));\n}\n"],"names":[],"mappings":";;AAQA,SAAwB,qBAAqB,EAAE,YAAY,UAAiB;AAC3E,SAAO,UAAU,qBAAqB,YAAY,MAAM,CAAC;AAC1D;"}