@erpsquad/common 1.11.5 → 1.11.6

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 (395) hide show
  1. package/dist/chunks/{DynamicDependentField-Bug_QweP.esm.js → DynamicDependentField-C0XXmMlG.esm.js} +2 -2
  2. package/dist/chunks/{DynamicDependentField-Bug_QweP.esm.js.map → DynamicDependentField-C0XXmMlG.esm.js.map} +1 -1
  3. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js → DynamicDependentField-CQIfDDqc.js} +2 -2
  4. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js.map → DynamicDependentField-CQIfDDqc.js.map} +1 -1
  5. package/dist/chunks/{FORMS-QqBksLc2.esm.js → FORMS-B40NtUdz.esm.js} +5 -5
  6. package/dist/chunks/{FORMS-QqBksLc2.esm.js.map → FORMS-B40NtUdz.esm.js.map} +1 -1
  7. package/dist/chunks/{FORMS-DITDFHy1.js → FORMS-K5QYZYJc.js} +5 -5
  8. package/dist/chunks/{FORMS-DITDFHy1.js.map → FORMS-K5QYZYJc.js.map} +1 -1
  9. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js → FlexibleReduxExample-WGpR03V0.js} +3 -3
  10. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js.map → FlexibleReduxExample-WGpR03V0.js.map} +1 -1
  11. package/dist/chunks/{FlexibleReduxExample-BweOhhft.esm.js → FlexibleReduxExample-lJRAIjmS.esm.js} +3 -3
  12. package/dist/chunks/{FlexibleReduxExample-BweOhhft.esm.js.map → FlexibleReduxExample-lJRAIjmS.esm.js.map} +1 -1
  13. package/dist/chunks/{SectionFlowEditor-COarQdF5.esm.js → SectionFlowEditor-CFfJBYKx.esm.js} +2 -2
  14. package/dist/chunks/{SectionFlowEditor-COarQdF5.esm.js.map → SectionFlowEditor-CFfJBYKx.esm.js.map} +1 -1
  15. package/dist/chunks/{SectionFlowEditor--gfRgdM2.js → SectionFlowEditor-sKsZ3oQo.js} +2 -2
  16. package/dist/chunks/{SectionFlowEditor--gfRgdM2.js.map → SectionFlowEditor-sKsZ3oQo.js.map} +1 -1
  17. package/dist/chunks/{action-bar-sX54kFo9.esm.js → action-bar-C7Alva4T.esm.js} +3 -3
  18. package/dist/chunks/{action-bar-sX54kFo9.esm.js.map → action-bar-C7Alva4T.esm.js.map} +1 -1
  19. package/dist/chunks/{action-bar-CGP-GLkt.js → action-bar-DdtpxWNk.js} +3 -3
  20. package/dist/chunks/{action-bar-CGP-GLkt.js.map → action-bar-DdtpxWNk.js.map} +1 -1
  21. package/dist/chunks/{add-template-xyPHm3zV.esm.js → add-template-DVvbD9a4.esm.js} +2 -2
  22. package/dist/chunks/{add-template-xyPHm3zV.esm.js.map → add-template-DVvbD9a4.esm.js.map} +1 -1
  23. package/dist/chunks/{add-template-vpXcccHo.js → add-template-Dohg2bHJ.js} +2 -2
  24. package/dist/chunks/{add-template-vpXcccHo.js.map → add-template-Dohg2bHJ.js.map} +1 -1
  25. package/dist/chunks/{address-modal-DFd5sQtR.js → address-modal-CYhiC7ui.js} +2 -2
  26. package/dist/chunks/{address-modal-DFd5sQtR.js.map → address-modal-CYhiC7ui.js.map} +1 -1
  27. package/dist/chunks/{address-modal-DRT30GGc.esm.js → address-modal-CkDBjnye.esm.js} +2 -2
  28. package/dist/chunks/{address-modal-DRT30GGc.esm.js.map → address-modal-CkDBjnye.esm.js.map} +1 -1
  29. package/dist/chunks/{app-switcher-VhH9z0Rd.js → app-switcher-CyEQmYAN.js} +2 -2
  30. package/dist/chunks/{app-switcher-VhH9z0Rd.js.map → app-switcher-CyEQmYAN.js.map} +1 -1
  31. package/dist/chunks/{app-switcher-B6eapuGG.esm.js → app-switcher-D-Bvz9uO.esm.js} +2 -2
  32. package/dist/chunks/{app-switcher-B6eapuGG.esm.js.map → app-switcher-D-Bvz9uO.esm.js.map} +1 -1
  33. package/dist/chunks/{appbar-D5moUuMm.esm.js → appbar-BdTp1k68.esm.js} +2 -2
  34. package/dist/chunks/{appbar-D5moUuMm.esm.js.map → appbar-BdTp1k68.esm.js.map} +1 -1
  35. package/dist/chunks/{appbar-WvWT7p_M.js → appbar-DyIptRTa.js} +2 -2
  36. package/dist/chunks/{appbar-WvWT7p_M.js.map → appbar-DyIptRTa.js.map} +1 -1
  37. package/dist/chunks/{common-PH2uWkqL.js → common-CS5L0Ld_.js} +2 -2
  38. package/dist/chunks/{common-PH2uWkqL.js.map → common-CS5L0Ld_.js.map} +1 -1
  39. package/dist/chunks/{common-Cl5oGXmX.esm.js → common-yORBIVv-.esm.js} +2 -2
  40. package/dist/chunks/{common-Cl5oGXmX.esm.js.map → common-yORBIVv-.esm.js.map} +1 -1
  41. package/dist/chunks/{constants-D_xuLHSu.js → constants-06kIVUBw.js} +2 -2
  42. package/dist/chunks/{constants-D_xuLHSu.js.map → constants-06kIVUBw.js.map} +1 -1
  43. package/dist/chunks/{constants-BrmMAwu2.esm.js → constants-nmkxkzps.esm.js} +2 -2
  44. package/dist/chunks/{constants-BrmMAwu2.esm.js.map → constants-nmkxkzps.esm.js.map} +1 -1
  45. package/dist/chunks/{custom-form-T4yc_sE_.js → custom-form-CFU7NEVb.js} +4 -4
  46. package/dist/chunks/{custom-form-T4yc_sE_.js.map → custom-form-CFU7NEVb.js.map} +1 -1
  47. package/dist/chunks/{custom-form-B0iJKE-f.esm.js → custom-form-DD7YOHMF.esm.js} +4 -4
  48. package/dist/chunks/{custom-form-B0iJKE-f.esm.js.map → custom-form-DD7YOHMF.esm.js.map} +1 -1
  49. package/dist/chunks/{dashboard-u68tvYf2.esm.js → dashboard-B5qcT2Dt.esm.js} +3 -3
  50. package/dist/chunks/{dashboard-u68tvYf2.esm.js.map → dashboard-B5qcT2Dt.esm.js.map} +1 -1
  51. package/dist/chunks/{dashboard-Ck4clis4.js → dashboard-Dzts5-X6.js} +3 -3
  52. package/dist/chunks/{dashboard-Ck4clis4.js.map → dashboard-Dzts5-X6.js.map} +1 -1
  53. package/dist/chunks/{filter-BxLWUhFQ.esm.js → filter-COXKBEER.esm.js} +3 -3
  54. package/dist/chunks/{filter-BxLWUhFQ.esm.js.map → filter-COXKBEER.esm.js.map} +1 -1
  55. package/dist/chunks/{filter-DQNAPq4l.js → filter-Cr_OSIpb.js} +3 -3
  56. package/dist/chunks/{filter-DQNAPq4l.js.map → filter-Cr_OSIpb.js.map} +1 -1
  57. package/dist/chunks/{footer-DioOh69g.js → footer-CD3kMRdS.js} +2 -2
  58. package/dist/chunks/{footer-DioOh69g.js.map → footer-CD3kMRdS.js.map} +1 -1
  59. package/dist/chunks/{footer-BXClGYIb.esm.js → footer-m3_dlNl8.esm.js} +2 -2
  60. package/dist/chunks/{footer-BXClGYIb.esm.js.map → footer-m3_dlNl8.esm.js.map} +1 -1
  61. package/dist/chunks/{form-fields-DKFiyLCi.esm.js → form-fields-hMMnB_wE.esm.js} +2 -2
  62. package/dist/chunks/{form-fields-DKFiyLCi.esm.js.map → form-fields-hMMnB_wE.esm.js.map} +1 -1
  63. package/dist/chunks/{form-fields-BYDhbAgB.js → form-fields-yE9kwjvb.js} +2 -2
  64. package/dist/chunks/{form-fields-BYDhbAgB.js.map → form-fields-yE9kwjvb.js.map} +1 -1
  65. package/dist/chunks/{form-parser-C95b2on7.esm.js → form-parser-DbnSn5eY.esm.js} +2 -2
  66. package/dist/chunks/{form-parser-C95b2on7.esm.js.map → form-parser-DbnSn5eY.esm.js.map} +1 -1
  67. package/dist/chunks/{form-parser-BnMdMDSb.js → form-parser-m4fnw38a.js} +2 -2
  68. package/dist/chunks/{form-parser-BnMdMDSb.js.map → form-parser-m4fnw38a.js.map} +1 -1
  69. package/dist/chunks/{form-section-CFeWD-tF.js → form-section-CPIyMdk2.js} +5 -5
  70. package/dist/chunks/{form-section-CFeWD-tF.js.map → form-section-CPIyMdk2.js.map} +1 -1
  71. package/dist/chunks/{form-section-Bx_D21gW.esm.js → form-section-TMjdOVeW.esm.js} +5 -5
  72. package/dist/chunks/{form-section-Bx_D21gW.esm.js.map → form-section-TMjdOVeW.esm.js.map} +1 -1
  73. package/dist/chunks/{fullScreen-q9u5VL-5.js → fullScreen-B5iqC1y0.js} +2 -2
  74. package/dist/chunks/{fullScreen-q9u5VL-5.js.map → fullScreen-B5iqC1y0.js.map} +1 -1
  75. package/dist/chunks/{fullScreen-DTQ6tqij.esm.js → fullScreen-D-isf0wv.esm.js} +2 -2
  76. package/dist/chunks/{fullScreen-DTQ6tqij.esm.js.map → fullScreen-D-isf0wv.esm.js.map} +1 -1
  77. package/dist/chunks/{global-search-DCsutWXD.esm.js → global-search-BOkxXiZ0.esm.js} +2 -2
  78. package/dist/chunks/{global-search-DCsutWXD.esm.js.map → global-search-BOkxXiZ0.esm.js.map} +1 -1
  79. package/dist/chunks/{global-search-BTV5iL6-.js → global-search-BjKPmzsQ.js} +2 -2
  80. package/dist/chunks/{global-search-BTV5iL6-.js.map → global-search-BjKPmzsQ.js.map} +1 -1
  81. package/dist/chunks/{header-CqTEaHw3.js → header-DQ_e75rt.js} +6 -6
  82. package/dist/chunks/{header-CqTEaHw3.js.map → header-DQ_e75rt.js.map} +1 -1
  83. package/dist/chunks/{header-I2izTvvZ.esm.js → header-D_pPOjdz.esm.js} +6 -6
  84. package/dist/chunks/{header-I2izTvvZ.esm.js.map → header-D_pPOjdz.esm.js.map} +1 -1
  85. package/dist/chunks/{header-enhanced-Dxdetx0I.js → header-enhanced-DCDMljaN.js} +3 -3
  86. package/dist/chunks/{header-enhanced-Dxdetx0I.js.map → header-enhanced-DCDMljaN.js.map} +1 -1
  87. package/dist/chunks/{header-enhanced-D31BpL2H.esm.js → header-enhanced-OiKzLG4i.esm.js} +3 -3
  88. package/dist/chunks/{header-enhanced-D31BpL2H.esm.js.map → header-enhanced-OiKzLG4i.esm.js.map} +1 -1
  89. package/dist/chunks/{inline-edit-fields-CjqUhdIv.esm.js → inline-edit-fields-BYhRpPcH.esm.js} +2 -2
  90. package/dist/chunks/{inline-edit-fields-CjqUhdIv.esm.js.map → inline-edit-fields-BYhRpPcH.esm.js.map} +1 -1
  91. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js → inline-edit-fields-atDP84QL.js} +2 -2
  92. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js.map → inline-edit-fields-atDP84QL.js.map} +1 -1
  93. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js → inventory-reports-title-bar-Bog2i0dr.js} +2 -2
  94. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js.map → inventory-reports-title-bar-Bog2i0dr.js.map} +1 -1
  95. package/dist/chunks/{inventory-reports-title-bar-DPS3r5V2.esm.js → inventory-reports-title-bar-CP8FzW6A.esm.js} +2 -2
  96. package/dist/chunks/{inventory-reports-title-bar-DPS3r5V2.esm.js.map → inventory-reports-title-bar-CP8FzW6A.esm.js.map} +1 -1
  97. package/dist/chunks/{item-response-details-BheThTTK.js → item-response-details-DsGQ7Dlc.js} +2 -2
  98. package/dist/chunks/{item-response-details-BheThTTK.js.map → item-response-details-DsGQ7Dlc.js.map} +1 -1
  99. package/dist/chunks/{item-response-details-BtCmz7XT.esm.js → item-response-details-SHSD-nBh.esm.js} +2 -2
  100. package/dist/chunks/{item-response-details-BtCmz7XT.esm.js.map → item-response-details-SHSD-nBh.esm.js.map} +1 -1
  101. package/dist/chunks/{listing-Ck-RqIjL.esm.js → listing-C0Yb6MVq.esm.js} +4 -4
  102. package/dist/chunks/{listing-Ck-RqIjL.esm.js.map → listing-C0Yb6MVq.esm.js.map} +1 -1
  103. package/dist/chunks/{listing-BDN5cLvI.js → listing-DIuzQrzb.js} +4 -4
  104. package/dist/chunks/{listing-BDN5cLvI.js.map → listing-DIuzQrzb.js.map} +1 -1
  105. package/dist/chunks/{location-select-jwR8SCYN.esm.js → location-select-CFa00fy4.esm.js} +2 -2
  106. package/dist/chunks/{location-select-jwR8SCYN.esm.js.map → location-select-CFa00fy4.esm.js.map} +1 -1
  107. package/dist/chunks/{location-select-CLyRUilk.js → location-select-g5uczAUF.js} +2 -2
  108. package/dist/chunks/{location-select-CLyRUilk.js.map → location-select-g5uczAUF.js.map} +1 -1
  109. package/dist/chunks/{material-editable-table-DFGB0q-s.js → material-editable-table-BGLjrTzT.js} +3 -3
  110. package/dist/chunks/{material-editable-table-DFGB0q-s.js.map → material-editable-table-BGLjrTzT.js.map} +1 -1
  111. package/dist/chunks/{material-editable-table-qC9FTg-4.esm.js → material-editable-table-pAyK7KYf.esm.js} +3 -3
  112. package/dist/chunks/{material-editable-table-qC9FTg-4.esm.js.map → material-editable-table-pAyK7KYf.esm.js.map} +1 -1
  113. package/dist/chunks/{modules-DTRr7zwt.js → modules-BZNWOWrz.js} +2 -2
  114. package/dist/chunks/{modules-DTRr7zwt.js.map → modules-BZNWOWrz.js.map} +1 -1
  115. package/dist/chunks/{modules-enwLrpfQ.esm.js → modules-CWV4WSHs.esm.js} +2 -2
  116. package/dist/chunks/{modules-enwLrpfQ.esm.js.map → modules-CWV4WSHs.esm.js.map} +1 -1
  117. package/dist/chunks/{notification-menu-B00hDUbn.js → notification-menu-D7ASm-K1.js} +2 -2
  118. package/dist/chunks/{notification-menu-B00hDUbn.js.map → notification-menu-D7ASm-K1.js.map} +1 -1
  119. package/dist/chunks/{notification-menu-B_4BOTgX.esm.js → notification-menu-XAadkn-e.esm.js} +2 -2
  120. package/dist/chunks/{notification-menu-B_4BOTgX.esm.js.map → notification-menu-XAadkn-e.esm.js.map} +1 -1
  121. package/dist/chunks/{page-action-TMFOytDw.js → page-action-BPzaL2KJ.js} +2 -2
  122. package/dist/chunks/{page-action-TMFOytDw.js.map → page-action-BPzaL2KJ.js.map} +1 -1
  123. package/dist/chunks/{page-action-0S_h4623.esm.js → page-action-C07iGjvN.esm.js} +2 -2
  124. package/dist/chunks/{page-action-0S_h4623.esm.js.map → page-action-C07iGjvN.esm.js.map} +1 -1
  125. package/dist/chunks/{page-navigator-B17f-mUz.esm.js → page-navigator-8gZpp9_P.esm.js} +2 -2
  126. package/dist/chunks/{page-navigator-B17f-mUz.esm.js.map → page-navigator-8gZpp9_P.esm.js.map} +1 -1
  127. package/dist/chunks/{page-navigator-DdRsmtLy.js → page-navigator-Cgbh3tTG.js} +2 -2
  128. package/dist/chunks/{page-navigator-DdRsmtLy.js.map → page-navigator-Cgbh3tTG.js.map} +1 -1
  129. package/dist/chunks/{page-view-CnzxewUy.esm.js → page-view-CokUNMBn.esm.js} +3 -3
  130. package/dist/chunks/{page-view-CnzxewUy.esm.js.map → page-view-CokUNMBn.esm.js.map} +1 -1
  131. package/dist/chunks/{page-view-CvfqzV03.js → page-view-DJ6HS_dV.js} +3 -3
  132. package/dist/chunks/{page-view-CvfqzV03.js.map → page-view-DJ6HS_dV.js.map} +1 -1
  133. package/dist/chunks/{pathname.rental-CwK6JuID.js → pathname.rental-DgH4LoG7.js} +7 -2
  134. package/dist/chunks/{pathname.rental-CwK6JuID.js.map → pathname.rental-DgH4LoG7.js.map} +1 -1
  135. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js → pathname.rental-qsAe3XFd.esm.js} +81 -76
  136. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js.map → pathname.rental-qsAe3XFd.esm.js.map} +1 -1
  137. package/dist/chunks/{reports-title-bar-CqVqKrPd.esm.js → reports-title-bar-Cay4E8SQ.esm.js} +2 -2
  138. package/dist/chunks/{reports-title-bar-CqVqKrPd.esm.js.map → reports-title-bar-Cay4E8SQ.esm.js.map} +1 -1
  139. package/dist/chunks/{reports-title-bar-B1_IweEc.js → reports-title-bar-Kz6JjqsY.js} +2 -2
  140. package/dist/chunks/{reports-title-bar-B1_IweEc.js.map → reports-title-bar-Kz6JjqsY.js.map} +1 -1
  141. package/dist/chunks/{route-page-map-CSg28AvB.esm.js → route-page-map-DkWoisiB.esm.js} +132 -75
  142. package/dist/chunks/{route-page-map-CSg28AvB.esm.js.map → route-page-map-DkWoisiB.esm.js.map} +1 -1
  143. package/dist/chunks/{route-page-map-__F1KHUj.js → route-page-map-Dn-SAbdf.js} +59 -2
  144. package/dist/chunks/{route-page-map-__F1KHUj.js.map → route-page-map-Dn-SAbdf.js.map} +1 -1
  145. package/dist/chunks/{routes-DauYjaxu.esm.js → routes-Be8qxaVS.esm.js} +3 -3
  146. package/dist/chunks/{routes-DauYjaxu.esm.js.map → routes-Be8qxaVS.esm.js.map} +1 -1
  147. package/dist/chunks/{routes-Bs7dqd7j.js → routes-Bi8lChPT.js} +3 -3
  148. package/dist/chunks/{routes-Bs7dqd7j.js.map → routes-Bi8lChPT.js.map} +1 -1
  149. package/dist/chunks/{schedule-report-BwmZ5jea.js → schedule-report-B4ZfEuiU.js} +4 -4
  150. package/dist/chunks/{schedule-report-BwmZ5jea.js.map → schedule-report-B4ZfEuiU.js.map} +1 -1
  151. package/dist/chunks/{schedule-report-D2oYKVGN.esm.js → schedule-report-CLXjjfjc.esm.js} +4 -4
  152. package/dist/chunks/{schedule-report-D2oYKVGN.esm.js.map → schedule-report-CLXjjfjc.esm.js.map} +1 -1
  153. package/dist/chunks/{schedule-report-modal-maDNFV-h.esm.js → schedule-report-modal-CB3G9H7x.esm.js} +2 -2
  154. package/dist/chunks/{schedule-report-modal-maDNFV-h.esm.js.map → schedule-report-modal-CB3G9H7x.esm.js.map} +1 -1
  155. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js → schedule-report-modal-iwoDI-sg.js} +2 -2
  156. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js.map → schedule-report-modal-iwoDI-sg.js.map} +1 -1
  157. package/dist/chunks/{searchable-select-CcG1qflA.esm.js → searchable-select-0F6E4XAr.esm.js} +2 -2
  158. package/dist/chunks/{searchable-select-CcG1qflA.esm.js.map → searchable-select-0F6E4XAr.esm.js.map} +1 -1
  159. package/dist/chunks/{searchable-select-DVUCWWti.js → searchable-select-_DCkITfk.js} +2 -2
  160. package/dist/chunks/{searchable-select-DVUCWWti.js.map → searchable-select-_DCkITfk.js.map} +1 -1
  161. package/dist/chunks/{share-modal-CQYd5GU0.esm.js → share-modal-BaEyZs2h.esm.js} +2 -2
  162. package/dist/chunks/{share-modal-CQYd5GU0.esm.js.map → share-modal-BaEyZs2h.esm.js.map} +1 -1
  163. package/dist/chunks/{share-modal-CobK7BN7.js → share-modal-DrXvh-fV.js} +2 -2
  164. package/dist/chunks/{share-modal-CobK7BN7.js.map → share-modal-DrXvh-fV.js.map} +1 -1
  165. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js → share-modal-enhanced-BTr0zRhF.js} +2 -2
  166. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js.map → share-modal-enhanced-BTr0zRhF.js.map} +1 -1
  167. package/dist/chunks/{share-modal-enhanced-04WjO7Ej.esm.js → share-modal-enhanced-DnEdDBmu.esm.js} +2 -2
  168. package/dist/chunks/{share-modal-enhanced-04WjO7Ej.esm.js.map → share-modal-enhanced-DnEdDBmu.esm.js.map} +1 -1
  169. package/dist/chunks/{sidebarScreen-BvaFDSr8.js → sidebarScreen-3iZYCAMn.js} +2 -2
  170. package/dist/chunks/{sidebarScreen-BvaFDSr8.js.map → sidebarScreen-3iZYCAMn.js.map} +1 -1
  171. package/dist/chunks/{sidebarScreen-CLsGgJpX.esm.js → sidebarScreen-CYUn8OsB.esm.js} +2 -2
  172. package/dist/chunks/{sidebarScreen-CLsGgJpX.esm.js.map → sidebarScreen-CYUn8OsB.esm.js.map} +1 -1
  173. package/dist/chunks/{table-Bpt6ggr3.js → table-DWx7x8zw.js} +2 -2
  174. package/dist/chunks/{table-Bpt6ggr3.js.map → table-DWx7x8zw.js.map} +1 -1
  175. package/dist/chunks/{table-DgCWox6A.esm.js → table-gxAlAeTq.esm.js} +2 -2
  176. package/dist/chunks/{table-DgCWox6A.esm.js.map → table-gxAlAeTq.esm.js.map} +1 -1
  177. package/dist/chunks/{template-editor-router-Dq3Hsw99.js → template-editor-router-BRxF8Dj_.js} +2 -2
  178. package/dist/chunks/{template-editor-router-Dq3Hsw99.js.map → template-editor-router-BRxF8Dj_.js.map} +1 -1
  179. package/dist/chunks/{template-editor-router-DAGjgCfA.esm.js → template-editor-router-BV5FrwJm.esm.js} +2 -2
  180. package/dist/chunks/{template-editor-router-DAGjgCfA.esm.js.map → template-editor-router-BV5FrwJm.esm.js.map} +1 -1
  181. package/dist/chunks/{templates-BkVjG5c0.js → templates-BY9HF32G.js} +4 -4
  182. package/dist/chunks/{templates-BkVjG5c0.js.map → templates-BY9HF32G.js.map} +1 -1
  183. package/dist/chunks/{templates-DrKOJkmh.esm.js → templates-DxvU4PQY.esm.js} +4 -4
  184. package/dist/chunks/{templates-DrKOJkmh.esm.js.map → templates-DxvU4PQY.esm.js.map} +1 -1
  185. package/dist/chunks/{uom-field-wrapper-DyhwLo9Q.esm.js → uom-field-wrapper-CTbEc-MB.esm.js} +2 -2
  186. package/dist/chunks/{uom-field-wrapper-DyhwLo9Q.esm.js.map → uom-field-wrapper-CTbEc-MB.esm.js.map} +1 -1
  187. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js → uom-field-wrapper-DXZgzOYB.js} +2 -2
  188. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js.map → uom-field-wrapper-DXZgzOYB.js.map} +1 -1
  189. package/dist/chunks/{use-translations-RGIbWjPM.esm.js → use-translations-BzykVZOP.esm.js} +2 -2
  190. package/dist/chunks/{use-translations-RGIbWjPM.esm.js.map → use-translations-BzykVZOP.esm.js.map} +1 -1
  191. package/dist/chunks/{use-translations-Cn3b4Kqh.js → use-translations-CNI_xsIo.js} +2 -2
  192. package/dist/chunks/{use-translations-Cn3b4Kqh.js.map → use-translations-CNI_xsIo.js.map} +1 -1
  193. package/dist/chunks/{value-editor-Br7X_wEB.js → value-editor-BSS9Ns2T.js} +2 -2
  194. package/dist/chunks/{value-editor-Br7X_wEB.js.map → value-editor-BSS9Ns2T.js.map} +1 -1
  195. package/dist/chunks/{value-editor-DkDNIrZ4.esm.js → value-editor-DQ1qgZ2u.esm.js} +2 -2
  196. package/dist/chunks/{value-editor-DkDNIrZ4.esm.js.map → value-editor-DQ1qgZ2u.esm.js.map} +1 -1
  197. package/dist/chunks/{vendor-ai-summary-C33oHYPA.esm.js → vendor-ai-summary-BA6m2dH9.esm.js} +2 -2
  198. package/dist/chunks/{vendor-ai-summary-C33oHYPA.esm.js.map → vendor-ai-summary-BA6m2dH9.esm.js.map} +1 -1
  199. package/dist/chunks/{vendor-ai-summary-zranZkfk.js → vendor-ai-summary-DWmAaQ_N.js} +2 -2
  200. package/dist/chunks/{vendor-ai-summary-zranZkfk.js.map → vendor-ai-summary-DWmAaQ_N.js.map} +1 -1
  201. package/dist/components/action-bar/action-bar/index.esm.js +1 -1
  202. package/dist/components/action-bar/action-bar/index.js +1 -1
  203. package/dist/components/action-bar/index.esm.js +1 -1
  204. package/dist/components/action-bar/index.js +1 -1
  205. package/dist/components/address-modal/index.esm.js +1 -1
  206. package/dist/components/address-modal/index.js +1 -1
  207. package/dist/components/appbar/appbar/index.esm.js +1 -1
  208. package/dist/components/appbar/appbar/index.js +1 -1
  209. package/dist/components/appbar/index.esm.js +1 -1
  210. package/dist/components/appbar/index.js +1 -1
  211. package/dist/components/custom-forms/FORMS/index.esm.js +1 -1
  212. package/dist/components/custom-forms/FORMS/index.js +1 -1
  213. package/dist/components/custom-forms/index.esm.js +1 -1
  214. package/dist/components/custom-forms/index.js +1 -1
  215. package/dist/components/department-add-modal/index.esm.js +1 -1
  216. package/dist/components/department-add-modal/index.js +1 -1
  217. package/dist/components/designation-add-modal/index.esm.js +1 -1
  218. package/dist/components/designation-add-modal/index.js +1 -1
  219. package/dist/components/examples/FlexibleReduxExample/index.esm.js +1 -1
  220. package/dist/components/examples/FlexibleReduxExample/index.js +1 -1
  221. package/dist/components/examples/index.esm.js +1 -1
  222. package/dist/components/examples/index.js +1 -1
  223. package/dist/components/filter/components/index.esm.js +1 -1
  224. package/dist/components/filter/components/index.js +1 -1
  225. package/dist/components/filter/components/value-editor/index.esm.js +1 -1
  226. package/dist/components/filter/components/value-editor/index.js +1 -1
  227. package/dist/components/filter/filter/index.esm.js +1 -1
  228. package/dist/components/filter/filter/index.js +1 -1
  229. package/dist/components/filter/index.esm.js +2 -2
  230. package/dist/components/filter/index.js +2 -2
  231. package/dist/components/footer/footer/index.esm.js +1 -1
  232. package/dist/components/footer/footer/index.js +1 -1
  233. package/dist/components/footer/index.esm.js +1 -1
  234. package/dist/components/footer/index.js +1 -1
  235. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.esm.js +1 -1
  236. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.js +1 -1
  237. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.esm.js +1 -1
  238. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.js +1 -1
  239. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.esm.js +1 -1
  240. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.js +1 -1
  241. package/dist/components/form-control/form-builder/form-builder-element/index.esm.js +3 -3
  242. package/dist/components/form-control/form-builder/form-builder-element/index.js +3 -3
  243. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.esm.js +1 -1
  244. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.js +1 -1
  245. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.esm.js +1 -1
  246. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.js +1 -1
  247. package/dist/components/form-control/form-builder/form-builder-element/table/index.esm.js +1 -1
  248. package/dist/components/form-control/form-builder/form-builder-element/table/index.js +1 -1
  249. package/dist/components/form-control/form-builder/index.esm.js +3 -3
  250. package/dist/components/form-control/form-builder/index.js +3 -3
  251. package/dist/components/form-control/form-parser/form-parser/index.esm.js +1 -1
  252. package/dist/components/form-control/form-parser/form-parser/index.js +1 -1
  253. package/dist/components/form-control/form-parser/form-section/index.esm.js +1 -1
  254. package/dist/components/form-control/form-parser/form-section/index.js +1 -1
  255. package/dist/components/form-control/form-parser/index.esm.js +2 -2
  256. package/dist/components/form-control/form-parser/index.js +2 -2
  257. package/dist/components/form-control/index.esm.js +5 -5
  258. package/dist/components/form-control/index.js +5 -5
  259. package/dist/components/header/components/app-switcher/index.esm.js +1 -1
  260. package/dist/components/header/components/app-switcher/index.js +1 -1
  261. package/dist/components/header/components/global-search/index.esm.js +1 -1
  262. package/dist/components/header/components/global-search/index.js +1 -1
  263. package/dist/components/header/components/index.esm.js +1 -1
  264. package/dist/components/header/components/index.js +1 -1
  265. package/dist/components/header/components/notification-menu/index.esm.js +1 -1
  266. package/dist/components/header/components/notification-menu/index.js +1 -1
  267. package/dist/components/header/components/notification-menu/notification-menu/index.esm.js +1 -1
  268. package/dist/components/header/components/notification-menu/notification-menu/index.js +1 -1
  269. package/dist/components/header/header/index.esm.js +1 -1
  270. package/dist/components/header/header/index.js +1 -1
  271. package/dist/components/header/header-enhanced/index.esm.js +1 -1
  272. package/dist/components/header/header-enhanced/index.js +1 -1
  273. package/dist/components/header/index.esm.js +3 -3
  274. package/dist/components/header/index.js +3 -3
  275. package/dist/components/index.esm.js +26 -26
  276. package/dist/components/index.js +26 -26
  277. package/dist/components/inventory-reports-title-bar/index.esm.js +1 -1
  278. package/dist/components/inventory-reports-title-bar/index.js +1 -1
  279. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.esm.js +1 -1
  280. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.js +1 -1
  281. package/dist/components/listing/index.esm.js +1 -1
  282. package/dist/components/listing/index.js +1 -1
  283. package/dist/components/listing/listing/index.esm.js +1 -1
  284. package/dist/components/listing/listing/index.js +1 -1
  285. package/dist/components/location-select/index.esm.js +1 -1
  286. package/dist/components/location-select/index.js +1 -1
  287. package/dist/components/material-editable-table/components/index.esm.js +1 -1
  288. package/dist/components/material-editable-table/components/index.js +1 -1
  289. package/dist/components/material-editable-table/components/inline-edit-fields/index.esm.js +1 -1
  290. package/dist/components/material-editable-table/components/inline-edit-fields/index.js +1 -1
  291. package/dist/components/material-editable-table/index.esm.js +2 -2
  292. package/dist/components/material-editable-table/index.js +2 -2
  293. package/dist/components/material-editable-table/material-editable-table/index.esm.js +1 -1
  294. package/dist/components/material-editable-table/material-editable-table/index.js +1 -1
  295. package/dist/components/material-table/components/index.esm.js +1 -1
  296. package/dist/components/material-table/components/index.js +1 -1
  297. package/dist/components/material-table/components/inline-edit-fields/index.esm.js +1 -1
  298. package/dist/components/material-table/components/inline-edit-fields/index.js +1 -1
  299. package/dist/components/material-table/index.esm.js +1 -1
  300. package/dist/components/material-table/index.js +1 -1
  301. package/dist/components/material-table/material-table/index.esm.js +1 -1
  302. package/dist/components/material-table/material-table/index.js +1 -1
  303. package/dist/components/page-navigator/components/index.esm.js +1 -1
  304. package/dist/components/page-navigator/components/index.js +1 -1
  305. package/dist/components/page-navigator/components/page-action/index.esm.js +1 -1
  306. package/dist/components/page-navigator/components/page-action/index.js +1 -1
  307. package/dist/components/page-navigator/index.esm.js +2 -2
  308. package/dist/components/page-navigator/index.js +2 -2
  309. package/dist/components/page-navigator/page-navigator/index.esm.js +1 -1
  310. package/dist/components/page-navigator/page-navigator/index.js +1 -1
  311. package/dist/components/parties-modal/index.esm.js +1 -1
  312. package/dist/components/parties-modal/index.js +1 -1
  313. package/dist/components/parties-modal/parties-modal/index.esm.js +1 -1
  314. package/dist/components/parties-modal/parties-modal/index.js +1 -1
  315. package/dist/components/reports-title-bar/index.esm.js +1 -1
  316. package/dist/components/reports-title-bar/index.js +1 -1
  317. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +1 -1
  318. package/dist/components/reports-title-bar/reports-title-bar/index.js +1 -1
  319. package/dist/components/rfq-response/index.esm.js +1 -1
  320. package/dist/components/rfq-response/index.js +1 -1
  321. package/dist/components/rfq-response/item-response-details/index.esm.js +1 -1
  322. package/dist/components/rfq-response/item-response-details/index.js +1 -1
  323. package/dist/components/schedule-report/index.esm.js +2 -2
  324. package/dist/components/schedule-report/index.js +2 -2
  325. package/dist/components/schedule-report/schedule-report/index.esm.js +1 -1
  326. package/dist/components/schedule-report/schedule-report/index.js +1 -1
  327. package/dist/components/schedule-report/schedule-report-modal/index.esm.js +1 -1
  328. package/dist/components/schedule-report/schedule-report-modal/index.js +1 -1
  329. package/dist/components/searchable-select/index.esm.js +1 -1
  330. package/dist/components/searchable-select/index.js +1 -1
  331. package/dist/components/share-modal/index.esm.js +2 -2
  332. package/dist/components/share-modal/index.js +2 -2
  333. package/dist/components/share-modal/share-modal/index.esm.js +1 -1
  334. package/dist/components/share-modal/share-modal/index.js +1 -1
  335. package/dist/components/share-modal/share-modal-enhanced/index.esm.js +1 -1
  336. package/dist/components/share-modal/share-modal-enhanced/index.js +1 -1
  337. package/dist/components/team-add-modal/index.esm.js +1 -1
  338. package/dist/components/team-add-modal/index.js +1 -1
  339. package/dist/components/uom-field-wrapper/index.esm.js +1 -1
  340. package/dist/components/uom-field-wrapper/index.js +1 -1
  341. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.esm.js +1 -1
  342. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.js +1 -1
  343. package/dist/components/vendor-ai-summary/index.esm.js +1 -1
  344. package/dist/components/vendor-ai-summary/index.js +1 -1
  345. package/dist/constants/index.esm.js +145 -143
  346. package/dist/constants/index.js +5 -3
  347. package/dist/constants/index.js.map +1 -1
  348. package/dist/hooks/index.esm.js +1 -1
  349. package/dist/hooks/index.js +1 -1
  350. package/dist/hooks/use-translations/index.esm.js +1 -1
  351. package/dist/hooks/use-translations/index.js +1 -1
  352. package/dist/index.esm.js +182 -180
  353. package/dist/index.js +43 -41
  354. package/dist/index.js.map +1 -1
  355. package/dist/layout/fullScreen/index.esm.js +1 -1
  356. package/dist/layout/fullScreen/index.js +1 -1
  357. package/dist/layout/index.esm.js +2 -2
  358. package/dist/layout/index.js +2 -2
  359. package/dist/layout/sidebarScreen/index.esm.js +1 -1
  360. package/dist/layout/sidebarScreen/index.js +1 -1
  361. package/dist/runtime/index.esm.js +2 -2
  362. package/dist/runtime/index.js +2 -2
  363. package/dist/src/constants/defaultColumns.d.ts +1 -0
  364. package/dist/src/constants/pathnames/pathname.procurement.d.ts +4 -0
  365. package/dist/utils/export-filters/index.esm.js +1 -0
  366. package/dist/utils/export-filters/index.esm.js.map +1 -1
  367. package/dist/utils/export-filters/index.js +1 -0
  368. package/dist/utils/export-filters/index.js.map +1 -1
  369. package/dist/views/afterAuth/dashboard/index.esm.js +1 -1
  370. package/dist/views/afterAuth/dashboard/index.js +1 -1
  371. package/dist/views/afterAuth/index.esm.js +2 -2
  372. package/dist/views/afterAuth/index.js +2 -2
  373. package/dist/views/afterAuth/page-view/index.esm.js +1 -1
  374. package/dist/views/afterAuth/page-view/index.js +1 -1
  375. package/dist/views/form-builder/custom-form/index.esm.js +1 -1
  376. package/dist/views/form-builder/custom-form/index.js +1 -1
  377. package/dist/views/form-builder/form-fields/index.esm.js +1 -1
  378. package/dist/views/form-builder/form-fields/index.js +1 -1
  379. package/dist/views/form-builder/index.esm.js +3 -3
  380. package/dist/views/form-builder/index.js +3 -3
  381. package/dist/views/form-builder/utils/index.esm.js +1 -1
  382. package/dist/views/form-builder/utils/index.js +1 -1
  383. package/dist/views/index.esm.js +10 -10
  384. package/dist/views/index.js +10 -10
  385. package/dist/views/template-editor/add-template/index.esm.js +1 -1
  386. package/dist/views/template-editor/add-template/index.js +1 -1
  387. package/dist/views/template-editor/components/index.esm.js +1 -1
  388. package/dist/views/template-editor/components/index.js +1 -1
  389. package/dist/views/template-editor/index.esm.js +5 -5
  390. package/dist/views/template-editor/index.js +5 -5
  391. package/dist/views/template-editor/routes/index.esm.js +1 -1
  392. package/dist/views/template-editor/routes/index.js +1 -1
  393. package/dist/views/template-editor/templates/index.esm.js +1 -1
  394. package/dist/views/template-editor/templates/index.js +1 -1
  395. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"form-section-CFeWD-tF.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["memo","getApiConfigSafe","useMemo","_a","useCallback","jsxs","createElement","DynamicInput","DynamicDate","DynamicTime","DynamicPhone","DynamicSearchSelect","DynamicDependentField","DynamicMedia","DynamicInfo","DynamicToggleButton","DynamicCheckBox","DynamicTable","DynamicRadioButton","DynamicTagsInput","DynamicCurrency","jsx","DynamicInputSelect","ChipGenerator","index","LocationSearchSelect","Grid","FormSwitcher","FormControlLabel","Radio","Divider","Typography","Accordion"],"mappings":"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"}
1
+ {"version":3,"file":"form-section-CPIyMdk2.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["memo","getApiConfigSafe","useMemo","_a","useCallback","jsxs","createElement","DynamicInput","DynamicDate","DynamicTime","DynamicPhone","DynamicSearchSelect","DynamicDependentField","DynamicMedia","DynamicInfo","DynamicToggleButton","DynamicCheckBox","DynamicTable","DynamicRadioButton","DynamicTagsInput","DynamicCurrency","jsx","DynamicInputSelect","ChipGenerator","index","LocationSearchSelect","Grid","FormSwitcher","FormControlLabel","Radio","Divider","Typography","Accordion"],"mappings":"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"}
@@ -6,19 +6,19 @@ import { D as DynamicInput } from "./text-BWoRoA4r.esm.js";
6
6
  import { D as DynamicDate } from "./date-DWW33q1y.esm.js";
7
7
  import { D as DynamicTime } from "./time-BRlAFG0U.esm.js";
8
8
  import { D as DynamicPhone } from "./phone-4yVXJQwX.esm.js";
9
- import { D as DynamicSearchSelect } from "./searchable-select-CcG1qflA.esm.js";
10
- import { D as DynamicDependentField } from "./DynamicDependentField-Bug_QweP.esm.js";
9
+ import { D as DynamicSearchSelect } from "./searchable-select-0F6E4XAr.esm.js";
10
+ import { D as DynamicDependentField } from "./DynamicDependentField-C0XXmMlG.esm.js";
11
11
  import { D as DynamicMedia } from "./media-BNHjErng.esm.js";
12
12
  import { D as DynamicInfo } from "./info-D16XWffr.esm.js";
13
13
  import { D as DynamicToggleButton } from "./toggle-button-DaKspbiP.esm.js";
14
14
  import { D as DynamicCheckBox } from "./checkbox-mx9cWG2N.esm.js";
15
- import { D as DynamicTable } from "./table-DgCWox6A.esm.js";
15
+ import { D as DynamicTable } from "./table-gxAlAeTq.esm.js";
16
16
  import { D as DynamicRadioButton } from "./radio-button-CJcVVXzv.esm.js";
17
17
  import { D as DynamicTagsInput } from "./dynamic-tags-input-CwF4Mm_r.esm.js";
18
18
  import { D as DynamicCurrency } from "./dynamic-currency-input-Cql8zuV7.esm.js";
19
19
  import { D as DynamicInputSelect } from "./dynamic-input-select-CvQ6BsRt.esm.js";
20
20
  import { C as ChipGenerator } from "./chip-generator-D5Q491KI.esm.js";
21
- import { L as LocationSearchSelect } from "./location-select-jwR8SCYN.esm.js";
21
+ import { L as LocationSearchSelect } from "./location-select-CFa00fy4.esm.js";
22
22
  import { F as FormSwitcher } from "./form-switcher-DeIv-bQS.esm.js";
23
23
  import { T as Typography } from "./typography-CG_A0iOJ.esm.js";
24
24
  import { A as Accordion } from "./accordion-DlkIh3BF.esm.js";
@@ -473,4 +473,4 @@ FormSection.displayName = "FormSection";
473
473
  export {
474
474
  FormSection as F
475
475
  };
476
- //# sourceMappingURL=form-section-Bx_D21gW.esm.js.map
476
+ //# sourceMappingURL=form-section-TMjdOVeW.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-section-Bx_D21gW.esm.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["_a","index"],"mappings":"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"}
1
+ {"version":3,"file":"form-section-TMjdOVeW.esm.js","sources":["../../src/components/form-control/form-parser/form-section.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { memo, useMemo, useCallback } from 'react';\nimport { Grid, Divider, FormControlLabel, Radio } from '@mui/material';\nimport { getApiConfigSafe } from '../../../utils/api-config';\nimport DynamicInput from '../form-builder/form-builder-element/text';\nimport DynamicDate from '../form-builder/form-builder-element/date';\nimport DynamicTime from '../form-builder/form-builder-element/time';\nimport DynamicPhone from '../form-builder/form-builder-element/phone';\nimport DynamicSearchSelect from '../form-builder/form-builder-element/dynamic-select';\nimport DynamicDependentField from '../form-builder/form-builder-element/dynamic-dependent-field';\nimport DynamicMedia from '../form-builder/form-builder-element/media';\nimport DynamicInfo from '../form-builder/form-builder-element/info';\nimport DynamicToggleButton from '../form-builder/form-builder-element/toggle-button';\nimport DynamicCheckBox from '../form-builder/form-builder-element/checkbox';\nimport DynamicTable from '../form-builder/form-builder-element/table';\nimport DynamicRadioButton from '../form-builder/form-builder-element/radio-button';\nimport DynamicTagsInput from '../form-builder/form-builder-element/dynamic-tags-input';\nimport DynamicCurrency from '../form-builder/form-builder-element/dynamic-currency-input';\nimport DynamicInputSelect from '../form-builder/form-builder-element/dynamic-input-select';\nimport ChipGenerator from '../../chip-generator/chip-generator';\nimport { LocationSearchSelect } from '../../location-select';\nimport FormSwitcher from './form-switcher';\nimport Typography from '../../typography/typography';\nimport Accordion from '../../accordion/accordion';\n\n// Types for better type safety\ninterface Field {\n name?: string;\n label: string;\n field_type: string;\n is_fullwidth?: boolean;\n custom_width?: number;\n is_hidden?: boolean;\n is_required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: any;\n default_value?: any;\n title?: string;\n title_position?: string;\n table_columns?: any[];\n table_rows?: any[];\n component?: React.ReactNode;\n field_properties?: {\n apiType?: string;\n customeFilter?: any;\n filterFields?: string | string[];\n attributes?: any;\n disabledIds?: any[];\n sortOrder?: string;\n maxChips?: number;\n allowDuplicates?: boolean;\n };\n validation?: any;\n filterField?: string;\n}\n\ninterface Section {\n label?: string;\n is_accordion?: boolean;\n disabled?: boolean;\n form_switcher_label?: string;\n}\n\ninterface FormSectionProps {\n section: Section;\n index: number;\n members?: Field[];\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n displayAvtar?: boolean;\n isButton?: boolean;\n currencyOption?: any;\n values: any;\n onBlur?: (e: any, fieldName?: string) => void;\n setValue: (name: string, value: any) => void;\n onSelectFooterClick?: (field: Field) => void;\n getSelectedData?: (row: any, key: any) => void;\n setCurrencyOptions: (options: any) => void;\n refreshOptions: any;\n handleFieldCleanUp: (forms: any[]) => void;\n handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;\n handleTableAddClick: (field: Field) => void;\n onTableCellChange?: (data: any) => void;\n // setDetailsData: (data: any) => void;\n t: (key: string) => string;\n images: any;\n}\n\n// Memoized field component to prevent unnecessary re-renders\nconst MemoizedField = memo(({\n field,\n fieldName,\n sectionLabel,\n index,\n ...props\n}: {\n field: Field;\n fieldName: string;\n sectionLabel?: string;\n index: number;\n [key: string]: any;\n}) => {\n const isSpar = getApiConfigSafe()?.countryEnv === 'spar';\n const gridSize = useMemo(() =>\n field.is_fullwidth ? 12 : (field.custom_width ?? 6),\n [field.is_fullwidth, field.custom_width]\n );\n\n const fieldKey = useMemo(() =>\n `${sectionLabel}-${fieldName}-${index}`,\n [sectionLabel, fieldName, index]\n );\n\n const commonProps = useMemo(() => ({\n ...field,\n key: fieldKey,\n name: fieldName,\n position: index,\n formControl: props.control,\n fieldArrayName: props.fieldArrayName,\n required: field.is_required,\n label: props.t(field.label),\n placeholder: props.t(field.placeholder),\n defaultValue: field.value || field.default_value,\n disabled: field.disabled,\n ...(isSpar && field.field_properties?.float_step ? { float_step: field.field_properties.float_step } : {})\n }), [field, fieldName, index, fieldKey, props.control, props.fieldArrayName, props.t]);\n\n const handleBlur = useCallback((e: any) => {\n if (props.onBlur && typeof props.onBlur === 'function') {\n props.onBlur(e, fieldName);\n }\n }, [props.onBlur, fieldName]);\n\n const endIcon = useMemo(() => {\n const iconMap: Record<string, string> = {\n email: props.images.sms,\n url: props.images.url,\n currency: props.images.dollar,\n geoLocation: props.images.location\n };\n\n const iconSrc = iconMap[field.field_type];\n return iconSrc ? <img src={iconSrc} alt={field.field_type} /> : null;\n }, [field.field_type, props.images]);\n\n const relationLabel = useMemo(() => (\n field.field_type === \"relation\" ? (\n <span className=\"formSection--Relation\">\n {props.t(field.label)}\n <img src={props.images.relation} alt=\"relation\" />\n </span>\n ) : props.t(field.label)\n ), [field.field_type, field.label, props.t, props.images.relation]);\n\n // Render field based on type\n const renderField = () => {\n switch (field.field_type) {\n case \"text\":\n case \"email\":\n case \"url\":\n case \"currency\":\n case \"number\":\n case \"geoLocation\":\n case \"relation\":\n return (\n <DynamicInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n onBlur={handleBlur}\n type={field.field_type}\n endIcon={endIcon}\n disabled={field.disabled || field.field_type === \"relation\"}\n />\n );\n\n case \"date\":\n return <DynamicDate {...commonProps} key={commonProps.key} />;\n\n case \"time\":\n return <DynamicTime {...commonProps} key={commonProps.key} />;\n\n case \"phone\":\n return (\n <DynamicPhone\n {...commonProps}\n key={commonProps.key}\n setCountryCodeField={(country: any) =>\n props.handleSetCountryCodeField(country, field, props.fieldArrayName, props.values)\n }\n />\n );\n\n case \"select\":\n return (\n <DynamicSearchSelect\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"dynamic-dependent-select\":\n return (\n <DynamicDependentField\n {...commonProps}\n key={commonProps.key}\n apiType={field.field_properties?.apiType}\n customeFilter={field.field_properties?.customeFilter}\n filterFields={field.field_properties?.filterFields}\n attributes={field.field_properties?.attributes}\n disabledIds={field.field_properties?.disabledIds}\n onChipRemove={() => props.setValue(`${props.fieldArrayName}.${fieldName}`, [])}\n {\n ...(!field?.addType && !field?.field_properties?.addType\n ? { onFooterClick: () => props.onSelectFooterClick?.(field) }\n : {})\n }\n handleOptions={props.setCurrencyOptions}\n getSelectedData={props.getSelectedData}\n refresh={props.refreshOptions}\n sortOrder={field.field_properties?.sortOrder}\n showCancelButton={field.field_properties?.showCancelButton}\n addType={field?.addType || field?.field_properties?.addType}\n modalComponentProps={field?.field_properties?.modalComponentProps}\n />\n );\n\n case \"file\":\n case \"image\":\n return <DynamicMedia {...commonProps} key={commonProps.key} />;\n\n case \"info\":\n return <DynamicInfo {...commonProps} key={commonProps.key} />;\n\n case \"toggleButton\":\n return (\n <DynamicToggleButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"checkbox\":\n return (\n <DynamicCheckBox\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"table\":\n return (\n <DynamicTable\n {...commonProps}\n key={commonProps.key}\n columns={field.table_columns}\n rows={field.table_rows}\n onAddClick={() => props.handleTableAddClick(field)}\n disableTableAddButton={Boolean(field.disableTableAddButton)}\n is_button={props.isButton}\n onTableCellChange={props.onTableCellChange}\n />\n );\n\n case \"radioButton\":\n return (\n <DynamicRadioButton\n {...commonProps}\n key={commonProps.key}\n titlePosition={field.title_position}\n title={props.t(field.title)}\n />\n );\n\n case \"customComponent\":\n return field.component;\n\n case \"tagsInput\":\n return (\n <DynamicTagsInput\n {...commonProps}\n key={commonProps.key}\n label={relationLabel}\n type={field.field_type}\n endIcon={endIcon}\n />\n );\n\n case \"currency_with_amount\":\n return (\n <DynamicCurrency\n {...commonProps}\n key={commonProps.key}\n currencyType={props.currencyOption}\n />\n );\n\n case \"select_with_input\":\n return (\n <DynamicInputSelect\n {...commonProps}\n currencyType={props.currencyOption}\n />\n );\n\n case \"chipInput\":\n return (\n <ChipGenerator\n {...commonProps}\n key={commonProps.key}\n maxChips={field.field_properties?.maxChips}\n allowDuplicates={field.field_properties?.allowDuplicates}\n validation={field.validation}\n endIcon={endIcon}\n onChipAdd={(chip: any) => console.log('Chip added:', chip)}\n onChipRemove={(chip: any, index: number) => console.log('Chip removed:', chip, 'at index:', index)}\n />\n );\n\n case \"location_select\":\n return (\n <LocationSearchSelect\n fieldArrayName={props.fieldArrayName}\n filterField={field.filterField}\n getSelectedData={(row: any[]) => props.getSelectedData(row)}\n locationFieldName={field.name}\n addType=\"location\"\n enable_footer={true}\n />\n );\n\n default:\n return null;\n }\n };\n\n // For table fields, use full width\n if (field.field_type === \"table\" || field.field_type === \"customComponent\") {\n return (\n <Grid item xs={12}>\n {renderField()}\n </Grid>\n );\n }\n\n return (\n <Grid item xs={gridSize}>\n {renderField()}\n </Grid>\n );\n});\n\nMemoizedField.displayName = 'MemoizedField';\n\n// Memoized FormSwitcher component\nconst MemoizedFormSwitcher = memo(({\n section,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n handleFieldCleanUp,\n t\n}: {\n section: Section;\n switchForms?: any[];\n isFormSwitcher: boolean;\n control: any;\n fieldArrayName: string;\n formSwitcherName: string;\n handleFieldCleanUp: (forms: any[]) => void;\n t: (key: string) => string;\n}) => {\n const resetForm = useCallback(() => {\n handleFieldCleanUp(switchForms || []);\n }, [handleFieldCleanUp, switchForms]);\n\n if (!isFormSwitcher || !switchForms?.length) return null;\n\n return (\n <FormSwitcher\n {...section}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n label={t(section.form_switcher_label || '')}\n resetForm={resetForm}\n >\n {switchForms.map((forms: any) => (\n <FormControlLabel\n key={forms.id}\n value={forms.value || forms.name}\n control={<Radio />}\n slotProps={{ typography: { variant: \"body2\" } }}\n label={t(forms.name)}\n disabled={Boolean(section.disabled)}\n />\n ))}\n </FormSwitcher>\n );\n});\n\nMemoizedFormSwitcher.displayName = 'MemoizedFormSwitcher';\n\n// Main component\nconst FormSection = memo<FormSectionProps>(({\n section,\n index,\n members,\n switchForms,\n isFormSwitcher,\n control,\n fieldArrayName,\n formSwitcherName,\n displayAvtar,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleFieldCleanUp,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n}) => {\n // Memoize visible members to prevent recalculation\n const visibleMembers = useMemo(() =>\n members?.filter(f => !f.is_hidden) || [],\n [members]\n );\n\n // Memoize field names to prevent recalculation\n const fieldsWithNames = useMemo(() =>\n visibleMembers.map(field => ({\n ...field,\n fieldName: field.name || field.label.toLowerCase().split(\" \").join(\"_\")\n })),\n [visibleMembers]\n );\n\n // Memoize section header\n const sectionHeader = useMemo(() => {\n if (!section.label) return null;\n\n return (\n <div style={{ minHeight: \"16px\" }}>\n {index !== 0 && <Divider className='formParser--Section--SectionDivider' />}\n <Typography\n type=\"s3\"\n weight=\"medium\"\n mb={2}\n mt={4}\n color=\"theme.secondary.1000\"\n className='formParser--Section--SectionTitle'\n >\n {t(section.label)}\n </Typography>\n </div>\n );\n }, [section.label, index, t]);\n\n // Avatar component\n const avatarDisplay = useMemo(() =>\n displayAvtar ? <div className='avtarDisplay'>ERP</div> : null,\n [displayAvtar]\n );\n\n // Common props for field rendering\n const fieldProps = useMemo(() => ({\n control,\n fieldArrayName,\n isButton,\n currencyOption,\n values,\n onBlur,\n setValue,\n onSelectFooterClick,\n getSelectedData,\n setCurrencyOptions,\n refreshOptions,\n handleSetCountryCodeField,\n handleTableAddClick,\n onTableCellChange,\n setDetailsData,\n t,\n images\n }), [\n control, fieldArrayName, isButton, currencyOption, values,\n onBlur, setValue, onSelectFooterClick, getSelectedData,\n setCurrencyOptions, refreshOptions, handleSetCountryCodeField,\n handleTableAddClick, onTableCellChange, setDetailsData, t, images\n ]);\n\n if (section.is_accordion) {\n return (\n <section key={index} className='formParser--Section'>\n <div style={{ marginTop: '20px' }}>\n <Accordion title={t(section.label || '')}>\n <div className=\"formParser--Grid formParser--Accordion\">\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </div>\n </Accordion>\n </div>\n </section>\n );\n }\n\n return (\n <section key={index} className='formParser--Section'>\n {sectionHeader}\n\n <MemoizedFormSwitcher\n section={section}\n switchForms={switchForms}\n isFormSwitcher={isFormSwitcher}\n control={control}\n fieldArrayName={fieldArrayName}\n formSwitcherName={formSwitcherName}\n handleFieldCleanUp={handleFieldCleanUp}\n t={t}\n />\n\n <Grid container spacing={2}>\n {avatarDisplay}\n {fieldsWithNames.map((field, fieldIndex) => (\n <MemoizedField\n key={`${section.label}-${field.fieldName}-${fieldIndex}`}\n field={field}\n fieldName={field.fieldName}\n sectionLabel={section.label}\n index={fieldIndex}\n {...fieldProps}\n />\n ))}\n </Grid>\n </section>\n );\n});\n\nFormSection.displayName = 'FormSection';\n\nexport { FormSection };\nexport default FormSection;"],"names":["_a","index"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const jsxRuntime = require("react/jsx-runtime");
3
3
  const material = require("@mui/material");
4
- const appbar = require("./appbar-WvWT7p_M.js");
4
+ const appbar = require("./appbar-DyIptRTa.js");
5
5
  const activityArea = require("./activityArea-C9-Nfhjc.js");
6
6
  const chatBot = require("./chat-bot-2Ga_xA_K.js");
7
7
  const mui_constants = require("./mui.constants-CJEIUmWO.js");
@@ -15,4 +15,4 @@ const FullscreenLayout = (props) => {
15
15
  ] });
16
16
  };
17
17
  exports.FullscreenLayout = FullscreenLayout;
18
- //# sourceMappingURL=fullScreen-q9u5VL-5.js.map
18
+ //# sourceMappingURL=fullScreen-B5iqC1y0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fullScreen-q9u5VL-5.js","sources":["../../src/layout/fullScreen/fullScreen.tsx"],"sourcesContent":["import { CssBaseline } from '@mui/material';\nimport { Box } from '@mui/material';\n\nimport AppBar from '../../components/appbar/appbar';\nimport ActivityArea from '../../components/activityArea/activityArea';\nimport ChatBot from '../../components/chat-bot/chat-bot';\n\nimport drawerWidth from '../../constants/mui.constants';\n\nexport interface IFullscreenLayoutProps {\n children: React.ReactNode;\n}\n\nexport const FullscreenLayout = (props: IFullscreenLayoutProps) => {\n\tconst { children } = props;\n\treturn (\n\t\t<Box sx={{ display: 'flex' }}>\n\t\t\t<CssBaseline />\n\t\t\t<AppBar width={drawerWidth} />\n\t\t\t<ActivityArea>{children}</ActivityArea>\n\t\t\t<ChatBot />\n\t\t</Box>\n\t);\n};\n\nexport default FullscreenLayout;\n"],"names":["Box","jsx","CssBaseline","AppBar","drawerWidth","ActivityArea","ChatBot"],"mappings":";;;;;;;AAaO,MAAM,mBAAmB,CAAC,UAAkC;AAClE,QAAM,EAAE,aAAa;AACrB,yCACEA,SAAAA,KAAA,EAAI,IAAI,EAAE,SAAS,UACnB,UAAA;AAAA,IAAAC,2BAAAA,IAACC,SAAAA,aAAA,EAAY;AAAA,IACbD,2BAAAA,IAACE,OAAAA,eAAA,EAAO,OAAOC,cAAAA,YAAA,CAAa;AAAA,IAC5BH,+BAACI,aAAAA,gBAAc,UAAS;AAAA,mCACvBC,QAAAA,SAAA,CAAA,CAAQ;AAAA,EAAA,GACV;AAEF;;"}
1
+ {"version":3,"file":"fullScreen-B5iqC1y0.js","sources":["../../src/layout/fullScreen/fullScreen.tsx"],"sourcesContent":["import { CssBaseline } from '@mui/material';\nimport { Box } from '@mui/material';\n\nimport AppBar from '../../components/appbar/appbar';\nimport ActivityArea from '../../components/activityArea/activityArea';\nimport ChatBot from '../../components/chat-bot/chat-bot';\n\nimport drawerWidth from '../../constants/mui.constants';\n\nexport interface IFullscreenLayoutProps {\n children: React.ReactNode;\n}\n\nexport const FullscreenLayout = (props: IFullscreenLayoutProps) => {\n\tconst { children } = props;\n\treturn (\n\t\t<Box sx={{ display: 'flex' }}>\n\t\t\t<CssBaseline />\n\t\t\t<AppBar width={drawerWidth} />\n\t\t\t<ActivityArea>{children}</ActivityArea>\n\t\t\t<ChatBot />\n\t\t</Box>\n\t);\n};\n\nexport default FullscreenLayout;\n"],"names":["Box","jsx","CssBaseline","AppBar","drawerWidth","ActivityArea","ChatBot"],"mappings":";;;;;;;AAaO,MAAM,mBAAmB,CAAC,UAAkC;AAClE,QAAM,EAAE,aAAa;AACrB,yCACEA,SAAAA,KAAA,EAAI,IAAI,EAAE,SAAS,UACnB,UAAA;AAAA,IAAAC,2BAAAA,IAACC,SAAAA,aAAA,EAAY;AAAA,IACbD,2BAAAA,IAACE,OAAAA,eAAA,EAAO,OAAOC,cAAAA,YAAA,CAAa;AAAA,IAC5BH,+BAACI,aAAAA,gBAAc,UAAS;AAAA,mCACvBC,QAAAA,SAAA,CAAA,CAAQ;AAAA,EAAA,GACV;AAEF;;"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import { Box, CssBaseline } from "@mui/material";
3
- import { A as AppBarWrapper } from "./appbar-D5moUuMm.esm.js";
3
+ import { A as AppBarWrapper } from "./appbar-BdTp1k68.esm.js";
4
4
  import { A as ActivityArea } from "./activityArea-BSwK0nxT.esm.js";
5
5
  import { C as ChatBot } from "./chat-bot-Dz8cR_uw.esm.js";
6
6
  import { d as drawerWidth } from "./mui.constants-BFBzxaiA.esm.js";
@@ -16,4 +16,4 @@ const FullscreenLayout = (props) => {
16
16
  export {
17
17
  FullscreenLayout as F
18
18
  };
19
- //# sourceMappingURL=fullScreen-DTQ6tqij.esm.js.map
19
+ //# sourceMappingURL=fullScreen-D-isf0wv.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fullScreen-DTQ6tqij.esm.js","sources":["../../src/layout/fullScreen/fullScreen.tsx"],"sourcesContent":["import { CssBaseline } from '@mui/material';\nimport { Box } from '@mui/material';\n\nimport AppBar from '../../components/appbar/appbar';\nimport ActivityArea from '../../components/activityArea/activityArea';\nimport ChatBot from '../../components/chat-bot/chat-bot';\n\nimport drawerWidth from '../../constants/mui.constants';\n\nexport interface IFullscreenLayoutProps {\n children: React.ReactNode;\n}\n\nexport const FullscreenLayout = (props: IFullscreenLayoutProps) => {\n\tconst { children } = props;\n\treturn (\n\t\t<Box sx={{ display: 'flex' }}>\n\t\t\t<CssBaseline />\n\t\t\t<AppBar width={drawerWidth} />\n\t\t\t<ActivityArea>{children}</ActivityArea>\n\t\t\t<ChatBot />\n\t\t</Box>\n\t);\n};\n\nexport default FullscreenLayout;\n"],"names":["AppBar"],"mappings":";;;;;;AAaO,MAAM,mBAAmB,CAAC,UAAkC;AAClE,QAAM,EAAE,aAAa;AACrB,8BACE,KAAA,EAAI,IAAI,EAAE,SAAS,UACnB,UAAA;AAAA,IAAA,oBAAC,aAAA,EAAY;AAAA,IACb,oBAACA,eAAA,EAAO,OAAO,YAAA,CAAa;AAAA,IAC5B,oBAAC,gBAAc,UAAS;AAAA,wBACvB,SAAA,CAAA,CAAQ;AAAA,EAAA,GACV;AAEF;"}
1
+ {"version":3,"file":"fullScreen-D-isf0wv.esm.js","sources":["../../src/layout/fullScreen/fullScreen.tsx"],"sourcesContent":["import { CssBaseline } from '@mui/material';\nimport { Box } from '@mui/material';\n\nimport AppBar from '../../components/appbar/appbar';\nimport ActivityArea from '../../components/activityArea/activityArea';\nimport ChatBot from '../../components/chat-bot/chat-bot';\n\nimport drawerWidth from '../../constants/mui.constants';\n\nexport interface IFullscreenLayoutProps {\n children: React.ReactNode;\n}\n\nexport const FullscreenLayout = (props: IFullscreenLayoutProps) => {\n\tconst { children } = props;\n\treturn (\n\t\t<Box sx={{ display: 'flex' }}>\n\t\t\t<CssBaseline />\n\t\t\t<AppBar width={drawerWidth} />\n\t\t\t<ActivityArea>{children}</ActivityArea>\n\t\t\t<ChatBot />\n\t\t</Box>\n\t);\n};\n\nexport default FullscreenLayout;\n"],"names":["AppBar"],"mappings":";;;;;;AAaO,MAAM,mBAAmB,CAAC,UAAkC;AAClE,QAAM,EAAE,aAAa;AACrB,8BACE,KAAA,EAAI,IAAI,EAAE,SAAS,UACnB,UAAA;AAAA,IAAA,oBAAC,aAAA,EAAY;AAAA,IACb,oBAACA,eAAA,EAAO,OAAO,YAAA,CAAa;AAAA,IAC5B,oBAAC,gBAAc,UAAS;AAAA,wBACvB,SAAA,CAAA,CAAQ;AAAA,EAAA,GACV;AAEF;"}
@@ -5,7 +5,7 @@ import Close from "@mui/icons-material/Close";
5
5
  import { ab as getToken } from "./api-BIVCMSwW.esm.js";
6
6
  import { getApiConfigSafe } from "../utils/api-config/index.esm.js";
7
7
  import { n as postV1AiFeatureSearchQuery } from "./api-Bl6wVi9D.esm.js";
8
- import { D as DOC_TYPE_LABEL, a as MODULE_THUMB_COLOR, g as getSearchResultUrl } from "./constants-BrmMAwu2.esm.js";
8
+ import { D as DOC_TYPE_LABEL, a as MODULE_THUMB_COLOR, g as getSearchResultUrl } from "./constants-nmkxkzps.esm.js";
9
9
  import { removeSeriesFromTitle } from "../utils/format-text/index.esm.js";
10
10
  function GlobalSearch() {
11
11
  var _a;
@@ -147,4 +147,4 @@ function GlobalSearch() {
147
147
  export {
148
148
  GlobalSearch as G
149
149
  };
150
- //# sourceMappingURL=global-search-DCsutWXD.esm.js.map
150
+ //# sourceMappingURL=global-search-BOkxXiZ0.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-search-DCsutWXD.esm.js","sources":["../../src/components/header/components/global-search/global-search.tsx"],"sourcesContent":["import React, { useState, useMemo, useRef, useEffect } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport Close from \"@mui/icons-material/Close\";\n\nimport { getToken } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { postV1AiFeatureSearchQuery } from \"../../../../api-client/api.ai-feature/api\";\nimport { DOC_TYPE_LABEL, MODULE_THUMB_COLOR, getSearchResultUrl } from \"../../constants\";\nimport { removeSeriesFromTitle } from \"../../../../utils/format-text\";\n\nexport function GlobalSearch() {\n const isAiEnabled = getApiConfigSafe()?.aiFeatureEnabled === 'true';\n if (!isAiEnabled) return null;\n const navigate = useNavigate();\n const [gsOpen, setGsOpen] = useState(false);\n const [gsQuery, setGsQuery] = useState(\"\");\n const [gsApiResults, setGsApiResults] = useState<any>(null);\n const [gsLoading, setGsLoading] = useState(false);\n const [gsError, setGsError] = useState<string | null>(null);\n const gsDebounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n\n if (!gsQuery.trim()) {\n setGsApiResults(null);\n setGsError(null);\n setGsLoading(false);\n return;\n }\n\n setGsLoading(true);\n setGsError(null);\n gsDebounceRef.current = setTimeout(async () => {\n try {\n const token = getToken();\n const data = await postV1AiFeatureSearchQuery({ query: gsQuery, 'x-token': token['x-token'], 'x-timezone': String(token['x-timezone']) });\n setGsApiResults(data);\n } catch (err) {\n console.error('[SmartSearch] error:', err);\n setGsApiResults(null);\n setGsError('Search failed. Please try again.');\n } finally {\n setGsLoading(false);\n }\n }, 400);\n\n return () => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n };\n }, [gsQuery]);\n\n const gsGrouped = useMemo(() => {\n const results: any[] = gsApiResults?.data?.results ?? [];\n const map = new Map<string, any[]>();\n for (const r of results) {\n if (!map.has(r.doc_type)) map.set(r.doc_type, []);\n map.get(r.doc_type)!.push(r);\n }\n return map;\n }, [gsApiResults]);\n\n return (\n <div className={`gs${gsOpen ? \" open\" : \"\"}`}>\n <input\n className=\"gs-input\"\n placeholder=\"Search employees, vendors, orders, anything…\"\n value={gsQuery}\n onFocus={() => setGsOpen(true)}\n onBlur={() => setTimeout(() => setGsOpen(false), 150)}\n onChange={(e) => setGsQuery(e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n setGsOpen(false);\n setGsQuery(\"\");\n }\n }}\n />\n {gsOpen && gsQuery && (\n <button\n className=\"gs-clear\"\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setGsQuery(\"\");\n }}\n aria-label=\"Clear search\"\n >\n <Close style={{ fontSize: 14 }} />\n </button>\n )}\n\n {/**/}\n {/* {!gsOpen && <span className=\"gs-kbd\">⌘K</span>} */}\n {/**/}\n\n {gsOpen && (\n <div className=\"gs-pop\">\n {!gsQuery.trim() && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Start typing to search across all modules…\n </div>\n )}\n\n {gsQuery.trim() && gsLoading && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Searching…\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && gsError && (\n <div style={{ padding: \"20px 16px\", color: \"#EF4444\", fontSize: 13, textAlign: \"center\" }}>\n {gsError}\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && gsGrouped.size === 0 && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n No results for \"{gsQuery}\"\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && [...gsGrouped.entries()].map(([docType, items]) => (\n <div key={docType} className=\"gs-group\">\n <div className=\"gs-group-label\">\n {DOC_TYPE_LABEL[docType] || docType.replace(/_/g, \" \")}\n <span className=\"count\"> · {items.length}</span>\n </div>\n {items.map((item: any) => {\n const highlightTitle = item.highlight?.title?.[0];\n const displayTitle = removeSeriesFromTitle(highlightTitle ?? item.title);\n const initials = item.title.split(\" \").slice(0, 2).map((w: string) => w[0]?.toUpperCase() ?? \"\").join(\"\");\n const bgColor = MODULE_THUMB_COLOR[item.module] ?? \"linear-gradient(135deg,#6B7280,#4B5563)\";\n const meta = [item.reference, item.date, item.amount != null ? Number(item.amount).toLocaleString(undefined, { maximumFractionDigits: 2 }) : null].filter(Boolean).join(\" · \");\n const trail = item.status || item.approval_status;\n const url = getSearchResultUrl(item.doc_type, item.source_id, item);\n return (\n <div\n key={item.id}\n className=\"gs-item\"\n style={{ cursor: url ? 'pointer' : 'default' }}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n if (url) {\n setGsOpen(false);\n setGsQuery(\"\");\n navigate(url);\n }\n }}\n >\n <div className=\"gs-thumb av\" style={{ background: bgColor }}>{initials}</div>\n <div className=\"gs-body\">\n <div className=\"gs-title\" dangerouslySetInnerHTML={{ __html: displayTitle }} />\n {meta && <div className=\"gs-meta\">{meta}</div>}\n </div>\n {trail && <span className=\"gs-trail\">{trail}</span>}\n </div>\n );\n })}\n </div>\n ))}\n\n {/* <div className=\"gs-foot\"> */}\n {/* <span><span className=\"gs-kbd\">↑↓</span> Navigate</span> */}\n {/* <span><span className=\"gs-kbd\">↵</span> Open</span> */}\n {/* <span><span className=\"gs-kbd\">esc</span> Close</span> */}\n {/* {gsApiResults?.data?.total > 0 && ( */}\n {/* <span className=\"right\">Show all {gsApiResults.data.total} results →</span> */}\n {/* )} */}\n {/* </div> */}\n\n </div>\n )}\n </div>\n );\n}\n\nexport default GlobalSearch;\n"],"names":["_a"],"mappings":"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"}
1
+ {"version":3,"file":"global-search-BOkxXiZ0.esm.js","sources":["../../src/components/header/components/global-search/global-search.tsx"],"sourcesContent":["import React, { useState, useMemo, useRef, useEffect } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport Close from \"@mui/icons-material/Close\";\n\nimport { getToken } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { postV1AiFeatureSearchQuery } from \"../../../../api-client/api.ai-feature/api\";\nimport { DOC_TYPE_LABEL, MODULE_THUMB_COLOR, getSearchResultUrl } from \"../../constants\";\nimport { removeSeriesFromTitle } from \"../../../../utils/format-text\";\n\nexport function GlobalSearch() {\n const isAiEnabled = getApiConfigSafe()?.aiFeatureEnabled === 'true';\n if (!isAiEnabled) return null;\n const navigate = useNavigate();\n const [gsOpen, setGsOpen] = useState(false);\n const [gsQuery, setGsQuery] = useState(\"\");\n const [gsApiResults, setGsApiResults] = useState<any>(null);\n const [gsLoading, setGsLoading] = useState(false);\n const [gsError, setGsError] = useState<string | null>(null);\n const gsDebounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n\n if (!gsQuery.trim()) {\n setGsApiResults(null);\n setGsError(null);\n setGsLoading(false);\n return;\n }\n\n setGsLoading(true);\n setGsError(null);\n gsDebounceRef.current = setTimeout(async () => {\n try {\n const token = getToken();\n const data = await postV1AiFeatureSearchQuery({ query: gsQuery, 'x-token': token['x-token'], 'x-timezone': String(token['x-timezone']) });\n setGsApiResults(data);\n } catch (err) {\n console.error('[SmartSearch] error:', err);\n setGsApiResults(null);\n setGsError('Search failed. Please try again.');\n } finally {\n setGsLoading(false);\n }\n }, 400);\n\n return () => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n };\n }, [gsQuery]);\n\n const gsGrouped = useMemo(() => {\n const results: any[] = gsApiResults?.data?.results ?? [];\n const map = new Map<string, any[]>();\n for (const r of results) {\n if (!map.has(r.doc_type)) map.set(r.doc_type, []);\n map.get(r.doc_type)!.push(r);\n }\n return map;\n }, [gsApiResults]);\n\n return (\n <div className={`gs${gsOpen ? \" open\" : \"\"}`}>\n <input\n className=\"gs-input\"\n placeholder=\"Search employees, vendors, orders, anything…\"\n value={gsQuery}\n onFocus={() => setGsOpen(true)}\n onBlur={() => setTimeout(() => setGsOpen(false), 150)}\n onChange={(e) => setGsQuery(e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n setGsOpen(false);\n setGsQuery(\"\");\n }\n }}\n />\n {gsOpen && gsQuery && (\n <button\n className=\"gs-clear\"\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setGsQuery(\"\");\n }}\n aria-label=\"Clear search\"\n >\n <Close style={{ fontSize: 14 }} />\n </button>\n )}\n\n {/**/}\n {/* {!gsOpen && <span className=\"gs-kbd\">⌘K</span>} */}\n {/**/}\n\n {gsOpen && (\n <div className=\"gs-pop\">\n {!gsQuery.trim() && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Start typing to search across all modules…\n </div>\n )}\n\n {gsQuery.trim() && gsLoading && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Searching…\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && gsError && (\n <div style={{ padding: \"20px 16px\", color: \"#EF4444\", fontSize: 13, textAlign: \"center\" }}>\n {gsError}\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && gsGrouped.size === 0 && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n No results for \"{gsQuery}\"\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && [...gsGrouped.entries()].map(([docType, items]) => (\n <div key={docType} className=\"gs-group\">\n <div className=\"gs-group-label\">\n {DOC_TYPE_LABEL[docType] || docType.replace(/_/g, \" \")}\n <span className=\"count\"> · {items.length}</span>\n </div>\n {items.map((item: any) => {\n const highlightTitle = item.highlight?.title?.[0];\n const displayTitle = removeSeriesFromTitle(highlightTitle ?? item.title);\n const initials = item.title.split(\" \").slice(0, 2).map((w: string) => w[0]?.toUpperCase() ?? \"\").join(\"\");\n const bgColor = MODULE_THUMB_COLOR[item.module] ?? \"linear-gradient(135deg,#6B7280,#4B5563)\";\n const meta = [item.reference, item.date, item.amount != null ? Number(item.amount).toLocaleString(undefined, { maximumFractionDigits: 2 }) : null].filter(Boolean).join(\" · \");\n const trail = item.status || item.approval_status;\n const url = getSearchResultUrl(item.doc_type, item.source_id, item);\n return (\n <div\n key={item.id}\n className=\"gs-item\"\n style={{ cursor: url ? 'pointer' : 'default' }}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n if (url) {\n setGsOpen(false);\n setGsQuery(\"\");\n navigate(url);\n }\n }}\n >\n <div className=\"gs-thumb av\" style={{ background: bgColor }}>{initials}</div>\n <div className=\"gs-body\">\n <div className=\"gs-title\" dangerouslySetInnerHTML={{ __html: displayTitle }} />\n {meta && <div className=\"gs-meta\">{meta}</div>}\n </div>\n {trail && <span className=\"gs-trail\">{trail}</span>}\n </div>\n );\n })}\n </div>\n ))}\n\n {/* <div className=\"gs-foot\"> */}\n {/* <span><span className=\"gs-kbd\">↑↓</span> Navigate</span> */}\n {/* <span><span className=\"gs-kbd\">↵</span> Open</span> */}\n {/* <span><span className=\"gs-kbd\">esc</span> Close</span> */}\n {/* {gsApiResults?.data?.total > 0 && ( */}\n {/* <span className=\"right\">Show all {gsApiResults.data.total} results →</span> */}\n {/* )} */}\n {/* </div> */}\n\n </div>\n )}\n </div>\n );\n}\n\nexport default GlobalSearch;\n"],"names":["_a"],"mappings":"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"}
@@ -6,7 +6,7 @@ const Close = require("@mui/icons-material/Close");
6
6
  const api = require("./api-EomXz8pk.js");
7
7
  const utils_apiConfig = require("../utils/api-config/index.js");
8
8
  const api$1 = require("./api-DBhNDBh9.js");
9
- const constants = require("./constants-D_xuLHSu.js");
9
+ const constants = require("./constants-06kIVUBw.js");
10
10
  const utils_formatText = require("../utils/format-text/index.js");
11
11
  function GlobalSearch() {
12
12
  var _a;
@@ -146,4 +146,4 @@ function GlobalSearch() {
146
146
  ] });
147
147
  }
148
148
  exports.GlobalSearch = GlobalSearch;
149
- //# sourceMappingURL=global-search-BTV5iL6-.js.map
149
+ //# sourceMappingURL=global-search-BjKPmzsQ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-search-BTV5iL6-.js","sources":["../../src/components/header/components/global-search/global-search.tsx"],"sourcesContent":["import React, { useState, useMemo, useRef, useEffect } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport Close from \"@mui/icons-material/Close\";\n\nimport { getToken } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { postV1AiFeatureSearchQuery } from \"../../../../api-client/api.ai-feature/api\";\nimport { DOC_TYPE_LABEL, MODULE_THUMB_COLOR, getSearchResultUrl } from \"../../constants\";\nimport { removeSeriesFromTitle } from \"../../../../utils/format-text\";\n\nexport function GlobalSearch() {\n const isAiEnabled = getApiConfigSafe()?.aiFeatureEnabled === 'true';\n if (!isAiEnabled) return null;\n const navigate = useNavigate();\n const [gsOpen, setGsOpen] = useState(false);\n const [gsQuery, setGsQuery] = useState(\"\");\n const [gsApiResults, setGsApiResults] = useState<any>(null);\n const [gsLoading, setGsLoading] = useState(false);\n const [gsError, setGsError] = useState<string | null>(null);\n const gsDebounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n\n if (!gsQuery.trim()) {\n setGsApiResults(null);\n setGsError(null);\n setGsLoading(false);\n return;\n }\n\n setGsLoading(true);\n setGsError(null);\n gsDebounceRef.current = setTimeout(async () => {\n try {\n const token = getToken();\n const data = await postV1AiFeatureSearchQuery({ query: gsQuery, 'x-token': token['x-token'], 'x-timezone': String(token['x-timezone']) });\n setGsApiResults(data);\n } catch (err) {\n console.error('[SmartSearch] error:', err);\n setGsApiResults(null);\n setGsError('Search failed. Please try again.');\n } finally {\n setGsLoading(false);\n }\n }, 400);\n\n return () => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n };\n }, [gsQuery]);\n\n const gsGrouped = useMemo(() => {\n const results: any[] = gsApiResults?.data?.results ?? [];\n const map = new Map<string, any[]>();\n for (const r of results) {\n if (!map.has(r.doc_type)) map.set(r.doc_type, []);\n map.get(r.doc_type)!.push(r);\n }\n return map;\n }, [gsApiResults]);\n\n return (\n <div className={`gs${gsOpen ? \" open\" : \"\"}`}>\n <input\n className=\"gs-input\"\n placeholder=\"Search employees, vendors, orders, anything…\"\n value={gsQuery}\n onFocus={() => setGsOpen(true)}\n onBlur={() => setTimeout(() => setGsOpen(false), 150)}\n onChange={(e) => setGsQuery(e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n setGsOpen(false);\n setGsQuery(\"\");\n }\n }}\n />\n {gsOpen && gsQuery && (\n <button\n className=\"gs-clear\"\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setGsQuery(\"\");\n }}\n aria-label=\"Clear search\"\n >\n <Close style={{ fontSize: 14 }} />\n </button>\n )}\n\n {/**/}\n {/* {!gsOpen && <span className=\"gs-kbd\">⌘K</span>} */}\n {/**/}\n\n {gsOpen && (\n <div className=\"gs-pop\">\n {!gsQuery.trim() && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Start typing to search across all modules…\n </div>\n )}\n\n {gsQuery.trim() && gsLoading && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Searching…\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && gsError && (\n <div style={{ padding: \"20px 16px\", color: \"#EF4444\", fontSize: 13, textAlign: \"center\" }}>\n {gsError}\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && gsGrouped.size === 0 && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n No results for \"{gsQuery}\"\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && [...gsGrouped.entries()].map(([docType, items]) => (\n <div key={docType} className=\"gs-group\">\n <div className=\"gs-group-label\">\n {DOC_TYPE_LABEL[docType] || docType.replace(/_/g, \" \")}\n <span className=\"count\"> · {items.length}</span>\n </div>\n {items.map((item: any) => {\n const highlightTitle = item.highlight?.title?.[0];\n const displayTitle = removeSeriesFromTitle(highlightTitle ?? item.title);\n const initials = item.title.split(\" \").slice(0, 2).map((w: string) => w[0]?.toUpperCase() ?? \"\").join(\"\");\n const bgColor = MODULE_THUMB_COLOR[item.module] ?? \"linear-gradient(135deg,#6B7280,#4B5563)\";\n const meta = [item.reference, item.date, item.amount != null ? Number(item.amount).toLocaleString(undefined, { maximumFractionDigits: 2 }) : null].filter(Boolean).join(\" · \");\n const trail = item.status || item.approval_status;\n const url = getSearchResultUrl(item.doc_type, item.source_id, item);\n return (\n <div\n key={item.id}\n className=\"gs-item\"\n style={{ cursor: url ? 'pointer' : 'default' }}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n if (url) {\n setGsOpen(false);\n setGsQuery(\"\");\n navigate(url);\n }\n }}\n >\n <div className=\"gs-thumb av\" style={{ background: bgColor }}>{initials}</div>\n <div className=\"gs-body\">\n <div className=\"gs-title\" dangerouslySetInnerHTML={{ __html: displayTitle }} />\n {meta && <div className=\"gs-meta\">{meta}</div>}\n </div>\n {trail && <span className=\"gs-trail\">{trail}</span>}\n </div>\n );\n })}\n </div>\n ))}\n\n {/* <div className=\"gs-foot\"> */}\n {/* <span><span className=\"gs-kbd\">↑↓</span> Navigate</span> */}\n {/* <span><span className=\"gs-kbd\">↵</span> Open</span> */}\n {/* <span><span className=\"gs-kbd\">esc</span> Close</span> */}\n {/* {gsApiResults?.data?.total > 0 && ( */}\n {/* <span className=\"right\">Show all {gsApiResults.data.total} results →</span> */}\n {/* )} */}\n {/* </div> */}\n\n </div>\n )}\n </div>\n );\n}\n\nexport default GlobalSearch;\n"],"names":["getApiConfigSafe","useNavigate","useState","useRef","useEffect","getToken","postV1AiFeatureSearchQuery","useMemo","_a","jsx","jsxs","DOC_TYPE_LABEL","removeSeriesFromTitle","MODULE_THUMB_COLOR","getSearchResultUrl"],"mappings":"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"}
1
+ {"version":3,"file":"global-search-BjKPmzsQ.js","sources":["../../src/components/header/components/global-search/global-search.tsx"],"sourcesContent":["import React, { useState, useMemo, useRef, useEffect } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport Close from \"@mui/icons-material/Close\";\n\nimport { getToken } from \"../../../../utils/common\";\nimport { getApiConfigSafe } from \"../../../../utils/api-config\";\nimport { postV1AiFeatureSearchQuery } from \"../../../../api-client/api.ai-feature/api\";\nimport { DOC_TYPE_LABEL, MODULE_THUMB_COLOR, getSearchResultUrl } from \"../../constants\";\nimport { removeSeriesFromTitle } from \"../../../../utils/format-text\";\n\nexport function GlobalSearch() {\n const isAiEnabled = getApiConfigSafe()?.aiFeatureEnabled === 'true';\n if (!isAiEnabled) return null;\n const navigate = useNavigate();\n const [gsOpen, setGsOpen] = useState(false);\n const [gsQuery, setGsQuery] = useState(\"\");\n const [gsApiResults, setGsApiResults] = useState<any>(null);\n const [gsLoading, setGsLoading] = useState(false);\n const [gsError, setGsError] = useState<string | null>(null);\n const gsDebounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n\n if (!gsQuery.trim()) {\n setGsApiResults(null);\n setGsError(null);\n setGsLoading(false);\n return;\n }\n\n setGsLoading(true);\n setGsError(null);\n gsDebounceRef.current = setTimeout(async () => {\n try {\n const token = getToken();\n const data = await postV1AiFeatureSearchQuery({ query: gsQuery, 'x-token': token['x-token'], 'x-timezone': String(token['x-timezone']) });\n setGsApiResults(data);\n } catch (err) {\n console.error('[SmartSearch] error:', err);\n setGsApiResults(null);\n setGsError('Search failed. Please try again.');\n } finally {\n setGsLoading(false);\n }\n }, 400);\n\n return () => {\n if (gsDebounceRef.current) clearTimeout(gsDebounceRef.current);\n };\n }, [gsQuery]);\n\n const gsGrouped = useMemo(() => {\n const results: any[] = gsApiResults?.data?.results ?? [];\n const map = new Map<string, any[]>();\n for (const r of results) {\n if (!map.has(r.doc_type)) map.set(r.doc_type, []);\n map.get(r.doc_type)!.push(r);\n }\n return map;\n }, [gsApiResults]);\n\n return (\n <div className={`gs${gsOpen ? \" open\" : \"\"}`}>\n <input\n className=\"gs-input\"\n placeholder=\"Search employees, vendors, orders, anything…\"\n value={gsQuery}\n onFocus={() => setGsOpen(true)}\n onBlur={() => setTimeout(() => setGsOpen(false), 150)}\n onChange={(e) => setGsQuery(e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n setGsOpen(false);\n setGsQuery(\"\");\n }\n }}\n />\n {gsOpen && gsQuery && (\n <button\n className=\"gs-clear\"\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setGsQuery(\"\");\n }}\n aria-label=\"Clear search\"\n >\n <Close style={{ fontSize: 14 }} />\n </button>\n )}\n\n {/**/}\n {/* {!gsOpen && <span className=\"gs-kbd\">⌘K</span>} */}\n {/**/}\n\n {gsOpen && (\n <div className=\"gs-pop\">\n {!gsQuery.trim() && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Start typing to search across all modules…\n </div>\n )}\n\n {gsQuery.trim() && gsLoading && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n Searching…\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && gsError && (\n <div style={{ padding: \"20px 16px\", color: \"#EF4444\", fontSize: 13, textAlign: \"center\" }}>\n {gsError}\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && gsGrouped.size === 0 && (\n <div style={{ padding: \"20px 16px\", color: \"#9CA3AF\", fontSize: 13, textAlign: \"center\" }}>\n No results for \"{gsQuery}\"\n </div>\n )}\n\n {gsQuery.trim() && !gsLoading && !gsError && [...gsGrouped.entries()].map(([docType, items]) => (\n <div key={docType} className=\"gs-group\">\n <div className=\"gs-group-label\">\n {DOC_TYPE_LABEL[docType] || docType.replace(/_/g, \" \")}\n <span className=\"count\"> · {items.length}</span>\n </div>\n {items.map((item: any) => {\n const highlightTitle = item.highlight?.title?.[0];\n const displayTitle = removeSeriesFromTitle(highlightTitle ?? item.title);\n const initials = item.title.split(\" \").slice(0, 2).map((w: string) => w[0]?.toUpperCase() ?? \"\").join(\"\");\n const bgColor = MODULE_THUMB_COLOR[item.module] ?? \"linear-gradient(135deg,#6B7280,#4B5563)\";\n const meta = [item.reference, item.date, item.amount != null ? Number(item.amount).toLocaleString(undefined, { maximumFractionDigits: 2 }) : null].filter(Boolean).join(\" · \");\n const trail = item.status || item.approval_status;\n const url = getSearchResultUrl(item.doc_type, item.source_id, item);\n return (\n <div\n key={item.id}\n className=\"gs-item\"\n style={{ cursor: url ? 'pointer' : 'default' }}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n if (url) {\n setGsOpen(false);\n setGsQuery(\"\");\n navigate(url);\n }\n }}\n >\n <div className=\"gs-thumb av\" style={{ background: bgColor }}>{initials}</div>\n <div className=\"gs-body\">\n <div className=\"gs-title\" dangerouslySetInnerHTML={{ __html: displayTitle }} />\n {meta && <div className=\"gs-meta\">{meta}</div>}\n </div>\n {trail && <span className=\"gs-trail\">{trail}</span>}\n </div>\n );\n })}\n </div>\n ))}\n\n {/* <div className=\"gs-foot\"> */}\n {/* <span><span className=\"gs-kbd\">↑↓</span> Navigate</span> */}\n {/* <span><span className=\"gs-kbd\">↵</span> Open</span> */}\n {/* <span><span className=\"gs-kbd\">esc</span> Close</span> */}\n {/* {gsApiResults?.data?.total > 0 && ( */}\n {/* <span className=\"right\">Show all {gsApiResults.data.total} results →</span> */}\n {/* )} */}\n {/* </div> */}\n\n </div>\n )}\n </div>\n );\n}\n\nexport default GlobalSearch;\n"],"names":["getApiConfigSafe","useNavigate","useState","useRef","useEffect","getToken","postV1AiFeatureSearchQuery","useMemo","_a","jsx","jsxs","DOC_TYPE_LABEL","removeSeriesFromTitle","MODULE_THUMB_COLOR","getSearchResultUrl"],"mappings":"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"}
@@ -3,18 +3,18 @@ const jsxRuntime = require("react/jsx-runtime");
3
3
  const React = require("react");
4
4
  const reactRouterDom = require("react-router-dom");
5
5
  const reactI18next = require("react-i18next");
6
- const modules = require("./modules-DTRr7zwt.js");
7
- const appSwitcher = require("./app-switcher-VhH9z0Rd.js");
6
+ const modules = require("./modules-BZNWOWrz.js");
7
+ const appSwitcher = require("./app-switcher-CyEQmYAN.js");
8
8
  const breadcrumb = require("./breadcrumb-CLBLZKc7.js");
9
- const globalSearch = require("./global-search-BTV5iL6-.js");
9
+ const globalSearch = require("./global-search-BjKPmzsQ.js");
10
10
  const languageSwitch = require("./language-switch-DB1b1lfo.js");
11
- const notificationMenu = require("./notification-menu-B00hDUbn.js");
11
+ const notificationMenu = require("./notification-menu-D7ASm-K1.js");
12
12
  const userMenu = require("./user-menu-BXm0FBnk.js");
13
13
  const runtime = require("@erpsquad/common/runtime");
14
14
  const utils_apiConfig = require("../utils/api-config/index.js");
15
15
  const images = require("../images/index.js");
16
16
  const pathname = require("./pathname-7-q_H5dJ.js");
17
- const routePageMap = require("./route-page-map-__F1KHUj.js");
17
+ const routePageMap = require("./route-page-map-Dn-SAbdf.js");
18
18
  ;/* empty css */
19
19
  function Header(props) {
20
20
  var _a;
@@ -89,4 +89,4 @@ function Header(props) {
89
89
  ] });
90
90
  }
91
91
  exports.Header = Header;
92
- //# sourceMappingURL=header-CqTEaHw3.js.map
92
+ //# sourceMappingURL=header-DQ_e75rt.js.map