udp-react-enterprise-component-library 25.18.1-beta.36 → 25.18.1-beta.37

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 (513) hide show
  1. package/dist/{ActionProvider-BiXGsnVD.js → ActionProvider-Baw1T6NO.js} +4 -4
  2. package/dist/{ActionProvider-BiXGsnVD.js.map → ActionProvider-Baw1T6NO.js.map} +1 -1
  3. package/dist/{ActionSplitScreen-B6CwvyKz.js → ActionSplitScreen-iHYpf5b3.js} +5 -5
  4. package/dist/{ActionSplitScreen-B6CwvyKz.js.map → ActionSplitScreen-iHYpf5b3.js.map} +1 -1
  5. package/dist/{ActionWrapper-D_kTqDlx.js → ActionWrapper-BFnTN0Yg.js} +8 -8
  6. package/dist/{ActionWrapper-D_kTqDlx.js.map → ActionWrapper-BFnTN0Yg.js.map} +1 -1
  7. package/dist/{AggregateChip-CMsjzRuS.js → AggregateChip-VJ-QIBJt.js} +3 -3
  8. package/dist/{AggregateChip-CMsjzRuS.js.map → AggregateChip-VJ-QIBJt.js.map} +1 -1
  9. package/dist/{AmChart-CGJv7thW.js → AmChart-CVhkLkUN.js} +1 -1
  10. package/dist/{AmChart-CGJv7thW.js.map → AmChart-CVhkLkUN.js.map} +1 -1
  11. package/dist/{AmbientGridTemplate-d8EoaQH7.js → AmbientGridTemplate-VCZhDcIf.js} +4 -4
  12. package/dist/{AmbientGridTemplate-d8EoaQH7.js.map → AmbientGridTemplate-VCZhDcIf.js.map} +1 -1
  13. package/dist/{AmbientSingleDateSelector-DwyiHvnP.js → AmbientSingleDateSelector-6GlRqv6f.js} +1 -1
  14. package/dist/{AmbientSingleDateSelector-DwyiHvnP.js.map → AmbientSingleDateSelector-6GlRqv6f.js.map} +1 -1
  15. package/dist/{AmbientStepper-D9NzCqa8.js → AmbientStepper-Dv1WH2x1.js} +6 -6
  16. package/dist/{AmbientStepper-D9NzCqa8.js.map → AmbientStepper-Dv1WH2x1.js.map} +1 -1
  17. package/dist/{AmbientVisualizationCard-Ci615JQM.js → AmbientVisualizationCard-BAGEKWJD.js} +3 -3
  18. package/dist/{AmbientVisualizationCard-Ci615JQM.js.map → AmbientVisualizationCard-BAGEKWJD.js.map} +1 -1
  19. package/dist/{AmbientVisualizer-B6kX3oPX.js → AmbientVisualizer-DQb7oRtt.js} +1 -1
  20. package/dist/{AmbientVisualizer-B6kX3oPX.js.map → AmbientVisualizer-DQb7oRtt.js.map} +1 -1
  21. package/dist/{AppMenu-umGrUP24.js → AppMenu-j_DFeCLT.js} +2 -2
  22. package/dist/{AppMenu-umGrUP24.js.map → AppMenu-j_DFeCLT.js.map} +1 -1
  23. package/dist/{BarChartWidget-Byhkw_b2.js → BarChartWidget-CBuIqMLi.js} +1 -1
  24. package/dist/{BarChartWidget-Byhkw_b2.js.map → BarChartWidget-CBuIqMLi.js.map} +1 -1
  25. package/dist/{BaseTreeMenu-BhAbJoRI.js → BaseTreeMenu-B4d--j95.js} +4 -4
  26. package/dist/{BaseTreeMenu-BhAbJoRI.js.map → BaseTreeMenu-B4d--j95.js.map} +1 -1
  27. package/dist/{BioCardWrapper-C6nBREs6.js → BioCardWrapper-BgaHtBHX.js} +2 -2
  28. package/dist/{BioCardWrapper-C6nBREs6.js.map → BioCardWrapper-BgaHtBHX.js.map} +1 -1
  29. package/dist/{BubbleWidget-DgZ62Qgp.js → BubbleWidget-Do4wzp65.js} +2 -2
  30. package/dist/{BubbleWidget-DgZ62Qgp.js.map → BubbleWidget-Do4wzp65.js.map} +1 -1
  31. package/dist/{BulkActionsGridButton-BqQVX9xA.js → BulkActionsGridButton-h4xG4HUd.js} +3 -3
  32. package/dist/{BulkActionsGridButton-BqQVX9xA.js.map → BulkActionsGridButton-h4xG4HUd.js.map} +1 -1
  33. package/dist/{CardList-FnAeVtYc.js → CardList-ClQJc1cb.js} +1 -1
  34. package/dist/{CardList-FnAeVtYc.js.map → CardList-ClQJc1cb.js.map} +1 -1
  35. package/dist/{CircleButton-DzJjhCYd.js → CircleButton-cl6mmDmn.js} +2 -2
  36. package/dist/{CircleButton-DzJjhCYd.js.map → CircleButton-cl6mmDmn.js.map} +1 -1
  37. package/dist/{CircleGaugeWidget-CmhDHqSL.js → CircleGaugeWidget-DpusOc7_.js} +1 -1
  38. package/dist/{CircleGaugeWidget-CmhDHqSL.js.map → CircleGaugeWidget-DpusOc7_.js.map} +1 -1
  39. package/dist/{ContentContainer-CIYq-KgJ.js → ContentContainer-BsADv-yT.js} +1 -1
  40. package/dist/{ContentContainer-CIYq-KgJ.js.map → ContentContainer-BsADv-yT.js.map} +1 -1
  41. package/dist/{CrudBrowserContainer-DI5Ad2Fs.js → CrudBrowserContainer-C9184dly.js} +2 -2
  42. package/dist/{CrudBrowserContainer-DI5Ad2Fs.js.map → CrudBrowserContainer-C9184dly.js.map} +1 -1
  43. package/dist/{CrudForm-DeevwuDd.js → CrudForm-CDbgz4Ki.js} +2 -2
  44. package/dist/{CrudForm-DeevwuDd.js.map → CrudForm-CDbgz4Ki.js.map} +1 -1
  45. package/dist/{CrudTableSidePanel-BNnuDNZS.js → CrudTableSidePanel-Bmw3Xftc.js} +3 -3
  46. package/dist/{CrudTableSidePanel-BNnuDNZS.js.map → CrudTableSidePanel-Bmw3Xftc.js.map} +1 -1
  47. package/dist/{DataBrowserContainer-nr4cDIBD.js → DataBrowserContainer-r-AWYMmq.js} +6 -6
  48. package/dist/{DataBrowserContainer-nr4cDIBD.js.map → DataBrowserContainer-r-AWYMmq.js.map} +1 -1
  49. package/dist/{DateTrendWidget-Di_sMLMg.js → DateTrendWidget-CWrblk64.js} +1 -1
  50. package/dist/{DateTrendWidget-Di_sMLMg.js.map → DateTrendWidget-CWrblk64.js.map} +1 -1
  51. package/dist/{DensePlotWidget-BjNgsZMp.js → DensePlotWidget-C6UlwnqI.js} +1 -1
  52. package/dist/{DensePlotWidget-BjNgsZMp.js.map → DensePlotWidget-C6UlwnqI.js.map} +1 -1
  53. package/dist/{Directory-BnhL-K3q.js → Directory-DvGh-Lfv.js} +1 -1
  54. package/dist/{Directory-BnhL-K3q.js.map → Directory-DvGh-Lfv.js.map} +1 -1
  55. package/dist/{EntityHeader-bK94krmA.js → EntityHeader-BPt9Q1cN.js} +4 -4
  56. package/dist/{EntityHeader-bK94krmA.js.map → EntityHeader-BPt9Q1cN.js.map} +1 -1
  57. package/dist/{FieldArrayCard-Dc9XMy05.js → FieldArrayCard-DhHMT4er.js} +3 -3
  58. package/dist/{FieldArrayCard-Dc9XMy05.js.map → FieldArrayCard-DhHMT4er.js.map} +1 -1
  59. package/dist/{FileUpload-CHoEtVre.js → FileUpload-BZxNg52V.js} +1 -1
  60. package/dist/{FileUpload-CHoEtVre.js.map → FileUpload-BZxNg52V.js.map} +1 -1
  61. package/dist/{FluentCardHeader-CsQtNtjK.js → FluentCardHeader-DhVrZpGP.js} +1 -1
  62. package/dist/{FluentCardHeader-CsQtNtjK.js.map → FluentCardHeader-DhVrZpGP.js.map} +1 -1
  63. package/dist/{FluentCell-Dm8aaWes.js → FluentCell-CedZugOG.js} +2 -2
  64. package/dist/{FluentCell-Dm8aaWes.js.map → FluentCell-CedZugOG.js.map} +1 -1
  65. package/dist/{FluentDataTable-n4F_YwWi.js → FluentDataTable-CfZvFZIp.js} +2 -2
  66. package/dist/{FluentDataTable-n4F_YwWi.js.map → FluentDataTable-CfZvFZIp.js.map} +1 -1
  67. package/dist/{FluentLink-ChTXAsZZ.js → FluentLink-DS45dlRc.js} +1 -1
  68. package/dist/{FluentLink-ChTXAsZZ.js.map → FluentLink-DS45dlRc.js.map} +1 -1
  69. package/dist/{FluentProfileMenuCard-BdLCpdPv.js → FluentProfileMenuCard-RU7wosYK.js} +5 -5
  70. package/dist/{FluentProfileMenuCard-BdLCpdPv.js.map → FluentProfileMenuCard-RU7wosYK.js.map} +1 -1
  71. package/dist/{FluentRadioGroup-CafyJl31.js → FluentRadioGroup-c7Gm4njz.js} +1 -1
  72. package/dist/{FluentRadioGroup-CafyJl31.js.map → FluentRadioGroup-c7Gm4njz.js.map} +1 -1
  73. package/dist/{FluentSelectMenu-BlGxxA1Z.js → FluentSelectMenu-DWwJk0Gh.js} +1 -1
  74. package/dist/{FluentSelectMenu-BlGxxA1Z.js.map → FluentSelectMenu-DWwJk0Gh.js.map} +1 -1
  75. package/dist/{FluentSimpleSelect-BxLwVTnc.js → FluentSimpleSelect-DCrJDofS.js} +2 -2
  76. package/dist/{FluentSimpleSelect-BxLwVTnc.js.map → FluentSimpleSelect-DCrJDofS.js.map} +1 -1
  77. package/dist/{FluentTimePicker-CtijxH02.js → FluentTimePicker-C9wwQ3wX.js} +1 -1
  78. package/dist/{FluentTimePicker-CtijxH02.js.map → FluentTimePicker-C9wwQ3wX.js.map} +1 -1
  79. package/dist/{FluentTimeline-B-6cg-o7.js → FluentTimeline--7ISkVOo.js} +1 -1
  80. package/dist/{FluentTimeline-B-6cg-o7.js.map → FluentTimeline--7ISkVOo.js.map} +1 -1
  81. package/dist/{GaugeWidget-BT7YuEQO.js → GaugeWidget-DFZwCzN6.js} +1 -1
  82. package/dist/{GaugeWidget-BT7YuEQO.js.map → GaugeWidget-DFZwCzN6.js.map} +1 -1
  83. package/dist/{GraphCard-TjBoeauz.js → GraphCard-C-nGs4y1.js} +1 -1
  84. package/dist/{GraphCard-TjBoeauz.js.map → GraphCard-C-nGs4y1.js.map} +1 -1
  85. package/dist/{GridFunctions-Chj_vcVe.js → GridFunctions-CRTDIOe0.js} +2 -2
  86. package/dist/{GridFunctions-Chj_vcVe.js.map → GridFunctions-CRTDIOe0.js.map} +1 -1
  87. package/dist/{GroupNode-D1aehQ7K.js → GroupNode-Djp62Urb.js} +2 -2
  88. package/dist/{GroupNode-D1aehQ7K.js.map → GroupNode-Djp62Urb.js.map} +1 -1
  89. package/dist/{IconKey-DKiQELkd.js → IconKey-CayWYYXb.js} +1 -1
  90. package/dist/{IconKey-DKiQELkd.js.map → IconKey-CayWYYXb.js.map} +1 -1
  91. package/dist/{IconRenderer-DFpfUgfn.js → IconRenderer-B6ZoqrTX.js} +2 -2
  92. package/dist/{IconRenderer-DFpfUgfn.js.map → IconRenderer-B6ZoqrTX.js.map} +1 -1
  93. package/dist/{ImportDataFromFileMapping-BL5MOAS-.js → ImportDataFromFileMapping-CZQe7oHY.js} +2 -2
  94. package/dist/{ImportDataFromFileMapping-BL5MOAS-.js.map → ImportDataFromFileMapping-CZQe7oHY.js.map} +1 -1
  95. package/dist/{LineAndSparklinesWidget-CWnA37yw.js → LineAndSparklinesWidget-CsbQ4V9K.js} +1 -1
  96. package/dist/{LineAndSparklinesWidget-CWnA37yw.js.map → LineAndSparklinesWidget-CsbQ4V9K.js.map} +1 -1
  97. package/dist/{LineGraphWidget-DOJF9RDB.js → LineGraphWidget-fMmDKCHt.js} +1 -1
  98. package/dist/{LineGraphWidget-DOJF9RDB.js.map → LineGraphWidget-fMmDKCHt.js.map} +1 -1
  99. package/dist/MenuPage-NcImSCbx.js +3 -0
  100. package/dist/{MenuPage-CEqDX-_3.js → MenuPage-l6jiWcbB.js} +4 -4
  101. package/dist/{MenuPage-CEqDX-_3.js.map → MenuPage-l6jiWcbB.js.map} +1 -1
  102. package/dist/{MttMainTimeline-rLgkgX8U.js → MttMainTimeline-CW0QNrZw.js} +2 -2
  103. package/dist/{MttMainTimeline-rLgkgX8U.js.map → MttMainTimeline-CW0QNrZw.js.map} +1 -1
  104. package/dist/{MttSummary-DeCFHat3.js → MttSummary-CGTFEyQB.js} +3 -3
  105. package/dist/{MttSummary-DeCFHat3.js.map → MttSummary-CGTFEyQB.js.map} +1 -1
  106. package/dist/MyExportsPage-CkmqBYdn.js +3 -0
  107. package/dist/{MyExportsPage-Aapj7fCZ.js → MyExportsPage-DKkxU7yl.js} +3 -3
  108. package/dist/{MyExportsPage-Aapj7fCZ.js.map → MyExportsPage-DKkxU7yl.js.map} +1 -1
  109. package/dist/{NewsCard-BBh7InGE.js → NewsCard-C4g0OUT_.js} +1 -1
  110. package/dist/{NewsCard-BBh7InGE.js.map → NewsCard-C4g0OUT_.js.map} +1 -1
  111. package/dist/{Notes-CKryM0aj.js → Notes-MpEDLM1w.js} +1 -1
  112. package/dist/{Notes-CKryM0aj.js.map → Notes-MpEDLM1w.js.map} +1 -1
  113. package/dist/{NotesScreen-9Y5eOiU1.js → NotesScreen-DWfxRWOF.js} +6 -6
  114. package/dist/{NotesScreen-9Y5eOiU1.js.map → NotesScreen-DWfxRWOF.js.map} +1 -1
  115. package/dist/{OutlookCallback-CnRfyIik.js → OutlookCallback-B4JgQHYB.js} +1 -1
  116. package/dist/{OutlookCallback-CnRfyIik.js.map → OutlookCallback-B4JgQHYB.js.map} +1 -1
  117. package/dist/{PageActionWrapper-QgeZfyDl.js → PageActionWrapper-D0NcrIw5.js} +3 -3
  118. package/dist/{PageActionWrapper-QgeZfyDl.js.map → PageActionWrapper-D0NcrIw5.js.map} +1 -1
  119. package/dist/{PageNotFoundRoute-BAlMpeF8.js → PageNotFoundRoute-CQzy18Sw.js} +1 -1
  120. package/dist/{PageNotFoundRoute-BAlMpeF8.js.map → PageNotFoundRoute-CQzy18Sw.js.map} +1 -1
  121. package/dist/{PageNotFoundRoute-CLhbx6VD.js → PageNotFoundRoute-CsgaQRPa.js} +1 -1
  122. package/dist/{PageRenderer-BDRCRdNS.js → PageRenderer-uHAdepVs.js} +2 -2
  123. package/dist/{PageRenderer-BDRCRdNS.js.map → PageRenderer-uHAdepVs.js.map} +1 -1
  124. package/dist/{PaymentForm-Cw-6-woy.js → PaymentForm-ErYvUdUC.js} +27 -27
  125. package/dist/{PaymentForm-Cw-6-woy.js.map → PaymentForm-ErYvUdUC.js.map} +1 -1
  126. package/dist/{RecentlyLoadedNodesTable-B28Q8F1Y.js → RecentlyLoadedNodesTable-CK3mVYCX.js} +2 -2
  127. package/dist/{RecentlyLoadedNodesTable-B28Q8F1Y.js.map → RecentlyLoadedNodesTable-CK3mVYCX.js.map} +1 -1
  128. package/dist/{RecentlyLoadedNodesWidget-BgdSOq6I.js → RecentlyLoadedNodesWidget-D-cwlG4S.js} +2 -2
  129. package/dist/{RecentlyLoadedNodesWidget-BgdSOq6I.js.map → RecentlyLoadedNodesWidget-D-cwlG4S.js.map} +1 -1
  130. package/dist/{RejectIcon-dXvOFAlm.js → RejectIcon-yYl-EGWG.js} +1 -1
  131. package/dist/{RejectIcon-dXvOFAlm.js.map → RejectIcon-yYl-EGWG.js.map} +1 -1
  132. package/dist/{RemindersCard-z4dtBhhT.js → RemindersCard-b0Z_AUu4.js} +4 -4
  133. package/dist/{RemindersCard-z4dtBhhT.js.map → RemindersCard-b0Z_AUu4.js.map} +1 -1
  134. package/dist/{RemindersScreen-DQD_XKIp.js → RemindersScreen-BOsf651X.js} +6 -6
  135. package/dist/{RemindersScreen-DQD_XKIp.js.map → RemindersScreen-BOsf651X.js.map} +1 -1
  136. package/dist/{RemindersWidget-DMWlbmbX.js → RemindersWidget-CMNGJkAt.js} +5 -5
  137. package/dist/{RemindersWidget-DMWlbmbX.js.map → RemindersWidget-CMNGJkAt.js.map} +1 -1
  138. package/dist/{SearchServiceDatasource-Ci4OIAl1.js → SearchServiceDatasource-DhJk0qU3.js} +3 -3
  139. package/dist/{SearchServiceDatasource-Ci4OIAl1.js.map → SearchServiceDatasource-DhJk0qU3.js.map} +1 -1
  140. package/dist/{SearchUtilities-On0QS5vE.js → SearchUtilities-CNz302LN.js} +2 -2
  141. package/dist/{SearchUtilities-On0QS5vE.js.map → SearchUtilities-CNz302LN.js.map} +1 -1
  142. package/dist/{Shell-CGogIHh_.js → Shell-D7FDH0KZ.js} +6 -6
  143. package/dist/{Shell-CGogIHh_.js.map → Shell-D7FDH0KZ.js.map} +1 -1
  144. package/dist/{ShortcutContentFinder-D52eFY1l.js → ShortcutContentFinder-DkWVHF1Q.js} +5 -5
  145. package/dist/{ShortcutContentFinder-D52eFY1l.js.map → ShortcutContentFinder-DkWVHF1Q.js.map} +1 -1
  146. package/dist/{SimpleTable-CqvnDTLl.js → SimpleTable-BI6LwXgh.js} +1 -1
  147. package/dist/{SimpleTable-CqvnDTLl.js.map → SimpleTable-BI6LwXgh.js.map} +1 -1
  148. package/dist/{SparsePlotWidget-H4lx8Kaz.js → SparsePlotWidget-DBAY2rX7.js} +1 -1
  149. package/dist/{SparsePlotWidget-H4lx8Kaz.js.map → SparsePlotWidget-DBAY2rX7.js.map} +1 -1
  150. package/dist/{Statistic-CBbuk5HT.js → Statistic-0UgK8lPL.js} +2 -2
  151. package/dist/{Statistic-CBbuk5HT.js.map → Statistic-0UgK8lPL.js.map} +1 -1
  152. package/dist/{StatusCellRenderer-CLU8uo3Q.js → StatusCellRenderer-DDWwna7U.js} +1 -1
  153. package/dist/{StatusCellRenderer-CLU8uo3Q.js.map → StatusCellRenderer-DDWwna7U.js.map} +1 -1
  154. package/dist/{TableContainer-CJe7qOlC.js → TableContainer-DugYuSJF.js} +3 -3
  155. package/dist/{TableContainer-CJe7qOlC.js.map → TableContainer-DugYuSJF.js.map} +1 -1
  156. package/dist/{TenantProvider-DL25tmB1.js → TenantProvider-ByI6uAoc.js} +2 -2
  157. package/dist/{TenantProvider-DL25tmB1.js.map → TenantProvider-ByI6uAoc.js.map} +1 -1
  158. package/dist/{TicketCard-DQGB9AgD.js → TicketCard-DBaKP94u.js} +1 -1
  159. package/dist/{TicketCard-DQGB9AgD.js.map → TicketCard-DBaKP94u.js.map} +1 -1
  160. package/dist/{TimelineCalendar-C0xE1Q04.js → TimelineCalendar-Wjv3XhN5.js} +1 -1
  161. package/dist/{TimelineCalendar-C0xE1Q04.js.map → TimelineCalendar-Wjv3XhN5.js.map} +1 -1
  162. package/dist/{TokenGroupItem-DLU0AK1S.js → TokenGroupItem-DBHuBDVC.js} +1 -1
  163. package/dist/{TokenGroupItem-DLU0AK1S.js.map → TokenGroupItem-DBHuBDVC.js.map} +1 -1
  164. package/dist/{TreeUtilities-CujOFOPm.js → TreeUtilities-kiPupulY.js} +4 -4
  165. package/dist/{TreeUtilities-CujOFOPm.js.map → TreeUtilities-kiPupulY.js.map} +1 -1
  166. package/dist/UI/accordion/index.js +1 -1
  167. package/dist/UI/dataDisplay/FluentDataTable/FluentCell/index.js +1 -1
  168. package/dist/UI/dataDisplay/FluentDataTable/index.js +1 -1
  169. package/dist/UI/dataDisplay/GraphCard/index.js +1 -1
  170. package/dist/UI/dataDisplay/calendar/index.js +1 -1
  171. package/dist/UI/dataDisplay/cardList/index.js +1 -1
  172. package/dist/UI/dataDisplay/directory/index.js +1 -1
  173. package/dist/UI/dataDisplay/entityHeader/index.js +1 -1
  174. package/dist/UI/dataDisplay/index.js +1 -1
  175. package/dist/UI/dataDisplay/map/index.js +1 -1
  176. package/dist/UI/dataDisplay/notes/index.js +1 -1
  177. package/dist/UI/dataDisplay/ticketCard/index.js +1 -1
  178. package/dist/UI/dataDisplay/visualization/amCharts/index.js +1 -1
  179. package/dist/UI/dataDisplay/visualization/index.js +1 -1
  180. package/dist/UI/fileViewer/index.js +1 -1
  181. package/dist/UI/floorplans/index.js +1 -1
  182. package/dist/UI/forms/index.js +1 -1
  183. package/dist/UI/index.js +14 -14
  184. package/dist/UI/inputs/calendar/index.js +1 -1
  185. package/dist/UI/inputs/dateRangeSelector/index.js +1 -1
  186. package/dist/UI/inputs/fieldArrayCard/index.js +1 -1
  187. package/dist/UI/inputs/link/index.js +1 -1
  188. package/dist/UI/inputs/menus/AmbientStepper/index.js +1 -1
  189. package/dist/UI/inputs/menus/index.js +2 -2
  190. package/dist/UI/inputs/pickers/index.js +2 -2
  191. package/dist/UI/inputs/radio/index.js +1 -1
  192. package/dist/UI/mapLayout/index.js +1 -1
  193. package/dist/UI/mapLayout/ui/index.js +1 -1
  194. package/dist/UI/navigation/index.js +1 -1
  195. package/dist/UI/navigation/menus/index.js +1 -1
  196. package/dist/UI/surfaces/cards/chartDisplayCards/index.js +1 -1
  197. package/dist/UI/surfaces/cards/fluentCards/index.js +1 -1
  198. package/dist/UI/surfaces/cards/newsCard/index.js +1 -1
  199. package/dist/UI/surfaces/cards/workOrderCard/index.js +1 -1
  200. package/dist/UI/templates/calendar/index.js +1 -1
  201. package/dist/UI/templates/deprecated/AmbientGridTemplate/index.js +1 -1
  202. package/dist/UI/templates/deprecated/UdpGridTemplate/index.js +1 -1
  203. package/dist/UI/templates/ui/index.js +1 -1
  204. package/dist/UI/templates/ui/renderers/index.js +2 -2
  205. package/dist/UI/timeline/fluentTimeline/index.js +1 -1
  206. package/dist/UI/timeline/index.js +1 -1
  207. package/dist/UI/utilityDisplay/alerts/index.js +1 -1
  208. package/dist/UI/utilityDisplay/index.js +5 -5
  209. package/dist/UI/utilityDisplay/utilities/index.js +1 -1
  210. package/dist/UI/widgets/library/BarChartWidget/index.js +1 -1
  211. package/dist/UI/widgets/library/BubbleWidget/index.js +1 -1
  212. package/dist/UI/widgets/library/CircleGaugeWidget/index.js +1 -1
  213. package/dist/UI/widgets/library/DateTrendWidget/index.js +1 -1
  214. package/dist/UI/widgets/library/DensePlotWidget/index.js +1 -1
  215. package/dist/UI/widgets/library/GaugeWidget/index.js +1 -1
  216. package/dist/UI/widgets/library/LineAndSparklinesWidget/index.js +1 -1
  217. package/dist/UI/widgets/library/LineGraphWidget/index.js +1 -1
  218. package/dist/UI/widgets/library/RecentlyLoadedNodesWidget/index.js +1 -1
  219. package/dist/UI/widgets/library/RemindersWidget/index.js +1 -1
  220. package/dist/UI/widgets/library/SparsePlotWidget/index.js +1 -1
  221. package/dist/UI/widgets/library/TableWidget/index.js +1 -1
  222. package/dist/{UdpAlertsContainer-CsQfN0Cg.js → UdpAlertsContainer-CE63vJ1B.js} +4 -4
  223. package/dist/{UdpAlertsContainer-CsQfN0Cg.js.map → UdpAlertsContainer-CE63vJ1B.js.map} +1 -1
  224. package/dist/{UdpAuditEvents-CbCZ5ND-.js → UdpAuditEvents-CiPHLRN-.js} +2 -2
  225. package/dist/{UdpAuditEvents-CbCZ5ND-.js.map → UdpAuditEvents-CiPHLRN-.js.map} +1 -1
  226. package/dist/UdpAuditEventsPage-CGWixtmq.js +3 -0
  227. package/dist/{UdpAuditEventsPage-BfwuxYxk.js → UdpAuditEventsPage-CzgzFO4P.js} +3 -3
  228. package/dist/{UdpAuditEventsPage-BfwuxYxk.js.map → UdpAuditEventsPage-CzgzFO4P.js.map} +1 -1
  229. package/dist/{UdpCalendarYearView-TZowGC77.js → UdpCalendarYearView-Djr7YCT3.js} +1 -1
  230. package/dist/{UdpCalendarYearView-TZowGC77.js.map → UdpCalendarYearView-Djr7YCT3.js.map} +1 -1
  231. package/dist/{UdpDataBrowserPage-C746qBki.js → UdpDataBrowserPage-BsR670I7.js} +7 -7
  232. package/dist/{UdpDataBrowserPage-C746qBki.js.map → UdpDataBrowserPage-BsR670I7.js.map} +1 -1
  233. package/dist/{UdpDateRangeSelector-C5toPT2E.js → UdpDateRangeSelector-C0jEXHEQ.js} +1 -1
  234. package/dist/{UdpDateRangeSelector-C5toPT2E.js.map → UdpDateRangeSelector-C0jEXHEQ.js.map} +1 -1
  235. package/dist/{UdpFormsPrivateForm-CUVom0jg.js → UdpFormsPrivateForm-BCXlSJcR.js} +2 -2
  236. package/dist/{UdpFormsPrivateForm-CUVom0jg.js.map → UdpFormsPrivateForm-BCXlSJcR.js.map} +1 -1
  237. package/dist/{UdpFormsSubmissionGrid-DJeJx9V0.js → UdpFormsSubmissionGrid-3806WiQB.js} +2 -2
  238. package/dist/{UdpFormsSubmissionGrid-DJeJx9V0.js.map → UdpFormsSubmissionGrid-3806WiQB.js.map} +1 -1
  239. package/dist/{UdpGridPanelManagementPage-INlmheiF.js → UdpGridPanelManagementPage-Dzu7o8P5.js} +2 -2
  240. package/dist/{UdpGridPanelManagementPage-INlmheiF.js.map → UdpGridPanelManagementPage-Dzu7o8P5.js.map} +1 -1
  241. package/dist/{UdpGridTemplate-SGI-8dJX.js → UdpGridTemplate-BswnwevH.js} +1 -1
  242. package/dist/{UdpGridTemplate-SGI-8dJX.js.map → UdpGridTemplate-BswnwevH.js.map} +1 -1
  243. package/dist/{UdpImportFromFileMappingPage-v0D7v216.js → UdpImportFromFileMappingPage-CjCTzU9E.js} +2 -2
  244. package/dist/{UdpImportFromFileMappingPage-v0D7v216.js.map → UdpImportFromFileMappingPage-CjCTzU9E.js.map} +1 -1
  245. package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js} +2 -2
  246. package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js.map → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js.map} +1 -1
  247. package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js → UdpMaintenanceEnginePage-B8Tvv1dZ.js} +6 -6
  248. package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js.map → UdpMaintenanceEnginePage-B8Tvv1dZ.js.map} +1 -1
  249. package/dist/{UdpNotesPage-Cbz2-Plp.js → UdpNotesPage-BGNZX-5s.js} +6 -6
  250. package/dist/{UdpNotesPage-Cbz2-Plp.js.map → UdpNotesPage-BGNZX-5s.js.map} +1 -1
  251. package/dist/{UdpPages-C555kGsU.js → UdpPages-CMkb2m5F.js} +15 -15
  252. package/dist/{UdpPages-C555kGsU.js.map → UdpPages-CMkb2m5F.js.map} +1 -1
  253. package/dist/{UdpRemindersPage-B8oGAjtR.js → UdpRemindersPage-J9vGaj3s.js} +6 -6
  254. package/dist/{UdpRemindersPage-B8oGAjtR.js.map → UdpRemindersPage-J9vGaj3s.js.map} +1 -1
  255. package/dist/{UdpRoutes-BYAHAF0u.js → UdpRoutes-D-muhX5C.js} +6 -6
  256. package/dist/{UdpRoutes-BYAHAF0u.js.map → UdpRoutes-D-muhX5C.js.map} +1 -1
  257. package/dist/{UdpTransactionTypesPage-CmsWZHM4.js → UdpTransactionTypesPage-Do_tl8J2.js} +1898 -468
  258. package/dist/UdpTransactionTypesPage-Do_tl8J2.js.map +1 -0
  259. package/dist/{UdpTransactionsPage-D6lRI165.js → UdpTransactionsPage-DKF6PKUA.js} +779 -192
  260. package/dist/UdpTransactionsPage-DKF6PKUA.js.map +1 -0
  261. package/dist/{UdpVerticalManagementPage-BmQISa0N.js → UdpVerticalManagementPage-CR3YJwcI.js} +3 -3
  262. package/dist/{UdpVerticalManagementPage-BmQISa0N.js.map → UdpVerticalManagementPage-CR3YJwcI.js.map} +1 -1
  263. package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js → UdpVerticalManagementSidesheet-CCSqaYq-.js} +4 -4
  264. package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js.map → UdpVerticalManagementSidesheet-CCSqaYq-.js.map} +1 -1
  265. package/dist/{UserForm-Cvx0qyL6.js → UserForm-DQIJUkWW.js} +2 -2
  266. package/dist/{UserForm-Cvx0qyL6.js.map → UserForm-DQIJUkWW.js.map} +1 -1
  267. package/dist/UserFormSideSheet-Cki2zS9L.js +3 -0
  268. package/dist/{UserFormSideSheet-Bo1yZr01.js → UserFormSideSheet-yMExq77r.js} +2 -2
  269. package/dist/{UserFormSideSheet-Bo1yZr01.js.map → UserFormSideSheet-yMExq77r.js.map} +1 -1
  270. package/dist/{UtilityBar-O0baEBVj.js → UtilityBar-Ct7h6CJ4.js} +2 -2
  271. package/dist/{UtilityBar-O0baEBVj.js.map → UtilityBar-Ct7h6CJ4.js.map} +1 -1
  272. package/dist/VirtualBrowser-C1IP6rhy.js +3 -0
  273. package/dist/{VirtualBrowser-clYMlLAt.js → VirtualBrowser-CLXEdKAF.js} +3 -3
  274. package/dist/{VirtualBrowser-clYMlLAt.js.map → VirtualBrowser-CLXEdKAF.js.map} +1 -1
  275. package/dist/{WorkOrderCard-Wh1AkhfU.js → WorkOrderCard-CfvJtG69.js} +1 -1
  276. package/dist/{WorkOrderCard-Wh1AkhfU.js.map → WorkOrderCard-CfvJtG69.js.map} +1 -1
  277. package/dist/{WorkflowContainer-ClMZHFEd.js → WorkflowContainer-5of_2j2y.js} +3 -3
  278. package/dist/{WorkflowContainer-ClMZHFEd.js.map → WorkflowContainer-5of_2j2y.js.map} +1 -1
  279. package/dist/{WorkflowContainer-BBvEDJx3.js → WorkflowContainer-Bb0Amji_.js} +1 -1
  280. package/dist/{WorkflowTreeMenu-CdfX1Pv0.js → WorkflowTreeMenu-BudXOCOS.js} +4 -4
  281. package/dist/{WorkflowTreeMenu-CdfX1Pv0.js.map → WorkflowTreeMenu-BudXOCOS.js.map} +1 -1
  282. package/dist/{accordion-DT5LpWAW.js → accordion-Dh-tKkr0.js} +2 -2
  283. package/dist/{accordion-DT5LpWAW.js.map → accordion-Dh-tKkr0.js.map} +1 -1
  284. package/dist/{actionSummary-BrcS82Qz.js → actionSummary-8FhDX8uJ.js} +2 -2
  285. package/dist/{actionSummary-BrcS82Qz.js.map → actionSummary-8FhDX8uJ.js.map} +1 -1
  286. package/dist/{actionUtils-DylNlciX.js → actionUtils-DREj3J3H.js} +2 -2
  287. package/dist/{actionUtils-DylNlciX.js.map → actionUtils-DREj3J3H.js.map} +1 -1
  288. package/dist/actions/actionSummary/index.js +1 -1
  289. package/dist/actions/index.js +5 -5
  290. package/dist/actions/utils/index.js +1 -1
  291. package/dist/{aggregateUtils-BCO2GaVq.js → aggregateUtils-C5GwQct7.js} +2 -2
  292. package/dist/{aggregateUtils-BCO2GaVq.js.map → aggregateUtils-C5GwQct7.js.map} +1 -1
  293. package/dist/{aggridHelpers-Dj7ES7if.js → aggridHelpers-MdXm-qhS.js} +3 -3
  294. package/dist/{aggridHelpers-Dj7ES7if.js.map → aggridHelpers-MdXm-qhS.js.map} +1 -1
  295. package/dist/{auth-DQZDqD8X.js → auth-eDuSIJxU.js} +3 -3
  296. package/dist/{auth-DQZDqD8X.js.map → auth-eDuSIJxU.js.map} +1 -1
  297. package/dist/componentSystems/multiThreadTimeline/index.js +3 -3
  298. package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +1 -1
  299. package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +1 -1
  300. package/dist/componentSystems/multiThreadTimeline/ui/index.js +1 -1
  301. package/dist/componentSystems/pageRenderer/hocs/index.js +1 -1
  302. package/dist/componentSystems/pageRenderer/index.js +3 -3
  303. package/dist/componentSystems/pageRenderer/wrappers/index.js +1 -1
  304. package/dist/dataBrowser/index.js +1 -1
  305. package/dist/{dateUtils-ChKgbJ9U.js → dateUtils-ftAbP-Mv.js} +18 -2
  306. package/dist/{dateUtils-ChKgbJ9U.js.map → dateUtils-ftAbP-Mv.js.map} +1 -1
  307. package/dist/enums/index.js +2 -2
  308. package/dist/{fileViewer-Dk6GMaSl.js → fileViewer-8-Eh4vLL.js} +2 -2
  309. package/dist/{fileViewer-Dk6GMaSl.js.map → fileViewer-8-Eh4vLL.js.map} +1 -1
  310. package/dist/{floorplans-BuvxGfwI.js → floorplans-CY6mR5bW.js} +2 -2
  311. package/dist/{floorplans-BuvxGfwI.js.map → floorplans-CY6mR5bW.js.map} +1 -1
  312. package/dist/{fluentTimeline-DceBN460.js → fluentTimeline-L0T1uOFm.js} +2 -2
  313. package/dist/{fluentTimeline-DceBN460.js.map → fluentTimeline-L0T1uOFm.js.map} +1 -1
  314. package/dist/{gridVisualizationFunctions-D5YZTZ7G.js → gridVisualizationFunctions-D83yg1AF.js} +1 -1
  315. package/dist/{gridVisualizationFunctions-D5YZTZ7G.js.map → gridVisualizationFunctions-D83yg1AF.js.map} +1 -1
  316. package/dist/hooks/index.js +3 -3
  317. package/dist/index.js +102 -101
  318. package/dist/inquiry/dashboard/index.js +1 -1
  319. package/dist/inquiry/index.js +4 -4
  320. package/dist/inquiry/inquiryBar/index.js +1 -1
  321. package/dist/inquiry/search/index.js +1 -1
  322. package/dist/{inquiry-DKgopy7F.js → inquiry-D-x5PZRJ.js} +12 -12
  323. package/dist/{inquiry-DKgopy7F.js.map → inquiry-D-x5PZRJ.js.map} +1 -1
  324. package/dist/{inquiryBar-CNAMeAq0.js → inquiryBar-lZ1qPFK6.js} +2 -2
  325. package/dist/{inquiryBar-CNAMeAq0.js.map → inquiryBar-lZ1qPFK6.js.map} +1 -1
  326. package/dist/layout/index.js +1 -1
  327. package/dist/{SideBarTemplate-B0lh7DDL.js → layout-BXuf6qmj.js} +1 -1
  328. package/dist/layout-BXuf6qmj.js.map +1 -0
  329. package/dist/maintenanceEngine/crudBrowser/index.js +2 -2
  330. package/dist/maintenanceEngine/index.js +4 -4
  331. package/dist/maintenanceEngine/tableBrowser/index.js +1 -1
  332. package/dist/maintenanceEngine/virtualBrowser/index.js +1 -1
  333. package/dist/{mapLayout-CZGgMWF6.js → mapLayout-BvKaPY3O.js} +2 -2
  334. package/dist/{mapLayout-CZGgMWF6.js.map → mapLayout-BvKaPY3O.js.map} +1 -1
  335. package/dist/menuPage/index.js +1 -1
  336. package/dist/{menuPage-DXMZEj8i.js → menuPage-BKRvZjzg.js} +2 -2
  337. package/dist/{menuPage-DXMZEj8i.js.map → menuPage-BKRvZjzg.js.map} +1 -1
  338. package/dist/{menuUtilities-cO3zYLVr.js → menuUtilities-BCPwOaeA.js} +2 -2
  339. package/dist/{menuUtilities-cO3zYLVr.js.map → menuUtilities-BCPwOaeA.js.map} +1 -1
  340. package/dist/notes/index.js +1 -1
  341. package/dist/{UdpTimeSelector-XsmTgOvP.js → pickers-DfIXzoW7.js} +1 -1
  342. package/dist/pickers-DfIXzoW7.js.map +1 -0
  343. package/dist/reminders/index.js +2 -2
  344. package/dist/routes/components/index.js +1 -1
  345. package/dist/routes/index.js +1 -1
  346. package/dist/{search-BGZwaCKb.js → search-DRxUjlyc.js} +5 -5
  347. package/dist/{search-BGZwaCKb.js.map → search-DRxUjlyc.js.map} +1 -1
  348. package/dist/shell/index.js +3 -3
  349. package/dist/shell/ui/addUser/index.js +1 -1
  350. package/dist/shell/ui/index.js +2 -2
  351. package/dist/stores/index.js +1 -1
  352. package/dist/{tenantStore-tBfq87CP.js → tenantStore-TgmV03z9.js} +2 -2
  353. package/dist/{tenantStore-tBfq87CP.js.map → tenantStore-TgmV03z9.js.map} +1 -1
  354. package/dist/treeMenu/index.js +1 -1
  355. package/dist/types/src/enums/unitySystemEnums.d.ts +4 -2
  356. package/dist/types/src/enums/unitySystemEnums.d.ts.map +1 -1
  357. package/dist/types/src/index.d.ts +1 -0
  358. package/dist/types/src/index.d.ts.map +1 -1
  359. package/dist/types/src/udp/pages/UdpTransactionTypesPage/UdpTransactionTypesPage.d.ts.map +1 -1
  360. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts +4 -0
  361. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts.map +1 -0
  362. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts +4 -0
  363. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts.map +1 -0
  364. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts +4 -0
  365. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts.map +1 -0
  366. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeForm.d.ts.map +1 -1
  367. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeStatusForm.d.ts.map +1 -1
  368. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts +4 -0
  369. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts.map +1 -0
  370. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts +4 -0
  371. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts.map +1 -0
  372. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts +4 -0
  373. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts.map +1 -0
  374. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts +4 -0
  375. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts.map +1 -0
  376. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts +4 -0
  377. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts.map +1 -0
  378. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts +4 -0
  379. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts.map +1 -0
  380. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeStatusSidesheet.d.ts.map +1 -1
  381. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionCreateAndEditSidesheet.d.ts.map +1 -1
  382. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionSidesheet.d.ts.map +1 -1
  383. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionCreateAndEditSidesheet.d.ts.map +1 -1
  384. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionSidesheet.d.ts.map +1 -1
  385. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionGrid.d.ts.map +1 -1
  386. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionSidesheet.d.ts.map +1 -1
  387. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionsPage.d.ts.map +1 -1
  388. package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts +4 -0
  389. package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts.map +1 -0
  390. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFooterItem.d.ts.map +1 -1
  391. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts +4 -0
  392. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts.map +1 -0
  393. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts +4 -0
  394. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts.map +1 -0
  395. package/dist/types/src/udp/pages/UdpTransactionsPage/components/UdpTransactionCustomPage.d.ts.map +1 -1
  396. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts +3 -0
  397. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts.map +1 -0
  398. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts +3 -0
  399. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts.map +1 -0
  400. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts +4 -0
  401. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts.map +1 -0
  402. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts +3 -0
  403. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts.map +1 -0
  404. package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts.map +1 -1
  405. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts +3 -0
  406. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts.map +1 -0
  407. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNotes.d.ts.map +1 -0
  408. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts +2 -1
  409. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts.map +1 -1
  410. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/EditTransaction.d.ts.map +1 -1
  411. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts +2 -1
  412. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts.map +1 -1
  413. package/dist/types/src/uploader/Attachments.d.ts +18 -0
  414. package/dist/types/src/uploader/Attachments.d.ts.map +1 -0
  415. package/dist/types/src/uploader/enums/systemEnums.d.ts +17 -0
  416. package/dist/types/src/uploader/enums/systemEnums.d.ts.map +1 -0
  417. package/dist/types/src/uploader/index.d.ts +1 -0
  418. package/dist/types/src/uploader/index.d.ts.map +1 -1
  419. package/dist/types/src/uploader/utils/allowedFileProperties.d.ts +3 -0
  420. package/dist/types/src/uploader/utils/allowedFileProperties.d.ts.map +1 -0
  421. package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts +4 -0
  422. package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts.map +1 -0
  423. package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts +2 -0
  424. package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts.map +1 -1
  425. package/dist/types/tsconfig.tsbuildinfo +1 -1
  426. package/dist/udp/ShortcutContent/index.js +1 -1
  427. package/dist/udp/export/index.js +1 -1
  428. package/dist/udp/fileImportMapping/index.js +2 -2
  429. package/dist/udp/pages/UdpAuditEvents/index.js +1 -1
  430. package/dist/udp/pages/UdpDataBrowserPage/index.js +1 -1
  431. package/dist/udp/pages/UdpFormsPrivateForm/index.js +1 -1
  432. package/dist/udp/pages/UdpFormsSubmissionGrid/index.js +1 -1
  433. package/dist/udp/pages/UdpGridPanelManagementPage/index.js +1 -1
  434. package/dist/udp/pages/UdpImportFromFileMappingPage/index.js +1 -1
  435. package/dist/udp/pages/UdpInquiryMaintenanceEnginePage/index.js +1 -1
  436. package/dist/udp/pages/UdpMaintenanceEnginePage/index.js +1 -1
  437. package/dist/udp/pages/UdpNotesPage/index.js +1 -1
  438. package/dist/udp/pages/UdpPages/index.js +1 -1
  439. package/dist/udp/pages/UdpPagesLazy/index.js +1 -1
  440. package/dist/udp/pages/UdpRemindersPage/index.js +1 -1
  441. package/dist/udp/pages/UdpTransactionTypesPage/index.js +1 -1
  442. package/dist/udp/pages/UdpTransactionsPage/index.js +1 -1
  443. package/dist/udp/pages/UdpVerticalManagementPage/index.js +1 -1
  444. package/dist/udp/pages/UdpVerticalManagementSidesheet/index.js +1 -1
  445. package/dist/udp/pages/index.js +1 -1
  446. package/dist/{unitySystemEnums-DM5vXR_m.js → unitySystemEnums-e5F9Jr7m.js} +5 -3
  447. package/dist/{unitySystemEnums-DM5vXR_m.js.map → unitySystemEnums-e5F9Jr7m.js.map} +1 -1
  448. package/dist/uploader/Attachments.css +29 -0
  449. package/dist/uploader/index.js +2 -102
  450. package/dist/uploader-C36UIFAF.js +314 -0
  451. package/dist/uploader-C36UIFAF.js.map +1 -0
  452. package/dist/{useActions-Db2P12NS.js → useActions-CxDs7v3s.js} +3 -3
  453. package/dist/{useActions-Db2P12NS.js.map → useActions-CxDs7v3s.js.map} +1 -1
  454. package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js → usePromotedMethodEntities-B3xSrWmP.js} +2 -2
  455. package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js.map → usePromotedMethodEntities-B3xSrWmP.js.map} +1 -1
  456. package/dist/{useSearchFilterParamsMap-CLAStwmE.js → useSearchFilterParamsMap-DPCfEY-N.js} +2 -2
  457. package/dist/{useSearchFilterParamsMap-CLAStwmE.js.map → useSearchFilterParamsMap-DPCfEY-N.js.map} +1 -1
  458. package/dist/utilities/aggrid/datasources/index.js +1 -1
  459. package/dist/utilities/aggrid/index.js +2 -2
  460. package/dist/utilities/auth/index.js +1 -1
  461. package/dist/utilities/customIcons/index.js +1 -1
  462. package/dist/utilities/floorplanFunctions/index.js +1 -1
  463. package/dist/utilities/form/paymentForm/index.js +1 -1
  464. package/dist/utilities/menus/index.js +1 -1
  465. package/dist/utilities/provider/index.js +1 -1
  466. package/dist/utilities/redirect/pages/index.js +1 -1
  467. package/dist/utilities/search/index.js +1 -1
  468. package/dist/utilities/style/index.js +1 -1
  469. package/dist/utilities/tenant/index.js +1 -1
  470. package/dist/utilities/tree/index.js +1 -1
  471. package/dist/utilities/uploader/index.js +1 -1
  472. package/dist/{withEngineComponent-s_zEZt7e.js → withEngineComponent-Css79hMi.js} +2 -2
  473. package/dist/{withEngineComponent-s_zEZt7e.js.map → withEngineComponent-Css79hMi.js.map} +1 -1
  474. package/dist/workflow/index.js +2 -2
  475. package/dist/workflow/menus/index.js +1 -1
  476. package/export-map.json +4 -2
  477. package/package.json +2 -2
  478. package/dist/MenuPage-BxZfgpHf.js +0 -3
  479. package/dist/MyExportsPage-BnDpxtTW.js +0 -3
  480. package/dist/SideBarTemplate-B0lh7DDL.js.map +0 -1
  481. package/dist/UdpAuditEventsPage-BGIcCG26.js +0 -3
  482. package/dist/UdpTimeSelector-XsmTgOvP.js.map +0 -1
  483. package/dist/UdpTransactionTypesPage-CmsWZHM4.js.map +0 -1
  484. package/dist/UdpTransactionsPage-D6lRI165.js.map +0 -1
  485. package/dist/UserFormSideSheet-B6CT9SiQ.js +0 -3
  486. package/dist/VirtualBrowser-Cm-d-9ws.js +0 -3
  487. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts +0 -3
  488. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts.map +0 -1
  489. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/transactionNote/TransactionNotes.d.ts.map +0 -1
  490. package/dist/uploader/index.js.map +0 -1
  491. /package/dist/{addUser-C90pCSnT.js → addUser-ND44rh2U.js} +0 -0
  492. /package/dist/{appSwitcher-BVKuYNfi.js → appSwitcher-a9n2Iwje.js} +0 -0
  493. /package/dist/{components-B1RVyHlZ.js → components-DFnCokX4.js} +0 -0
  494. /package/dist/{crudBrowser-C4YqsRrl.js → crudBrowser-D2jkhTHL.js} +0 -0
  495. /package/dist/{forms-BHhy_qYQ.js → forms-Bqbd2PSS.js} +0 -0
  496. /package/dist/{functions-48UNDwct.js → functions-BsqJgCPf.js} +0 -0
  497. /package/dist/{hocs-CWPyxUPi.js → hocs-ffxbQsXq.js} +0 -0
  498. /package/dist/{hooks-CkNaVLLH.js → hooks-DZQTSvZa.js} +0 -0
  499. /package/dist/{menus-DRIHkeQr.js → menus-Bcz2WjML.js} +0 -0
  500. /package/dist/{modified-BHJzuqPC.js → modified-Bhd8wpcw.js} +0 -0
  501. /package/dist/{mttMainTimeline-CLFQyr-b.js → mttMainTimeline-4YnP9sFd.js} +0 -0
  502. /package/dist/{mttSummary-13x9tvMI.js → mttSummary-DUe99dle.js} +0 -0
  503. /package/dist/{renderers-B2fqkGT5.js → renderers-DMzVV_xu.js} +0 -0
  504. /package/dist/{sidebar-CM1ujsxj.js → sidebar-Wi8WckFO.js} +0 -0
  505. /package/dist/{tableBrowser-CSDLzrvz.js → tableBrowser-C1wXuOXy.js} +0 -0
  506. /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts +0 -0
  507. /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNotes.d.ts +0 -0
  508. /package/dist/{ui-CPBXC1Ld.js → ui-BjpkPJO5.js} +0 -0
  509. /package/dist/{ui-DKHa8sM6.js → ui-DDD_eO_6.js} +0 -0
  510. /package/dist/{utils-D3uaSx1C.js → utils-DNwO498R.js} +0 -0
  511. /package/dist/{utils-mr65G560.js → utils-Drtwu1nG.js} +0 -0
  512. /package/dist/{virtualBrowser-DpJvv72S.js → virtualBrowser-zN1T60dc.js} +0 -0
  513. /package/dist/{wrappers-C7ViYUDV.js → wrappers-CQ2ylYPw.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ActionWrapper-D_kTqDlx.js","names":["useStyles","useStyles","useStyles","makeStyles","useStyles","useStyles","entityName"],"sources":["../src/actions/ActionForm.jsx","../src/actions/ActionModal.jsx","../src/actions/ActionSpeedDial.tsx","../src/actions/ActionPanelPlacement.jsx","../src/actions/ActionSideSheet.jsx","../src/actions/ActionWrapper.jsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { makeStyles, Typography } from '@material-ui/core';\nimport { Form, FormButtons, SubmitButton } from '../utilities/form';\nimport { getPrimaryKeyValues } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { useCrudActions } from '../hooks/crudActions';\nimport { CardinalityTypeEnums } from '../enums/unitySystemEnums';\nimport PropTypes from 'prop-types';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n marginTop: theme.spacing(-2)\n },\n body: {\n marginTop: theme.spacing(2)\n },\n actions: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n display: 'flex',\n flexDirection: 'row'\n },\n title: {\n flexGrow: 1\n },\n divider: {\n marginTop: theme.spacing(2)\n },\n subject: {\n marginLeft: theme.spacing(1),\n display: 'flex',\n flexDirection: 'row',\n flexGrow: 1\n },\n switchRoot: {\n marginLeft: theme.spacing(1)\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 13\n },\n labelRoot: {\n fontSize: 13\n }\n}));\n\nexport const ActionForm = (props) => {\n const {\n entityAttributes,\n foreignKeyData,\n onCreate,\n closeSideSheet,\n onUpdate,\n crudTableEditionData,\n crudTableFormData,\n udpFieldInfos\n } = props;\n const classes = useStyles();\n\n const { renderInputByFieldType } = useCrudActions();\n\n const primaryKeyValues = useMemo(\n () => getPrimaryKeyValues(entityAttributes, crudTableEditionData),\n [entityAttributes, crudTableEditionData]\n );\n\n // we'll need this to determine which property names are used as keys for many-to-many\n const manyToManyPropertyList = useMemo(() => {\n if (!entityAttributes?.length) return [];\n const mtmPropertyList = new Set();\n entityAttributes.forEach((attr) => {\n if (attr?.extendedProperties?.childEntity) {\n Object.keys(attr.extendedProperties.childEntityAssoc || {}).length &&\n attr.extendedProperties.childEntityAssoc.Cardinality ===\n CardinalityTypeEnums.Many_To_Many &&\n attr.extendedProperties.childEntityAssoc.Keys.forEach((value, i) => {\n const name = value.split(',')[0];\n if (name) {\n // check name string: if 1 word, lowercase. if 2 words, lower first char\n mtmPropertyList.add(name.toLowerCase());\n }\n });\n }\n });\n return mtmPropertyList;\n }, [entityAttributes]);\n\n const handleSubmit = async (values) => {\n let newTableData = {\n ...crudTableFormData,\n ...values\n };\n\n // remove identifiers from object\n entityAttributes\n .filter((ea) => ea?.extendedProperties?.identifier)\n .forEach((ea) => {\n delete newTableData[ea.name];\n });\n\n // transform values by fkData before creating/updating\n foreignKeyData.forEach((fkd) => {\n Object.keys(newTableData).forEach((key) => {\n if (key === fkd.fieldName) {\n newTableData[key] = fkd.data.find(\n (d) => d.id === newTableData[key].id\n )?.id;\n }\n });\n });\n\n const isNewRow = !crudTableEditionData;\n\n if (isNewRow) {\n onCreate && (await onCreate(newTableData));\n } else {\n onUpdate && (await onUpdate(newTableData, primaryKeyValues));\n }\n closeSideSheet && closeSideSheet();\n };\n\n const isNewEntry = useMemo(\n () => !crudTableEditionData,\n [crudTableEditionData]\n );\n\n return (\n <Form onSubmit={handleSubmit}>\n <div>\n {entityAttributes?.map((schemaAttribute, index) => {\n const fieldInfo = udpFieldInfos?.find(\n (fi) =>\n fi?.name.toLowerCase() === schemaAttribute?.name?.toLowerCase()\n );\n // If the field is an identity and is Updating form, we will make the field readOnly\n if (fieldInfo?.isPrimaryKey && !isNewEntry) {\n schemaAttribute.disabled = true;\n }\n if (fieldInfo?.isPrimaryKey && isNewEntry && !fieldInfo?.isIdentity) {\n schemaAttribute.disabled = false;\n }\n return (\n !schemaAttribute?.extendedProperties?.identifier && (\n <React.Fragment key={`${schemaAttribute.name}-${index}`}>\n <Typography variant='subtitle2' style={{ marginTop: 8 }}>\n {schemaAttribute.friendlyName}\n </Typography>\n {renderInputByFieldType(\n schemaAttribute,\n index,\n entityAttributes,\n fieldInfo,\n foreignKeyData,\n null,\n crudTableFormData,\n classes,\n false,\n null,\n manyToManyPropertyList\n )}\n </React.Fragment>\n )\n );\n })}\n </div>\n\n <FormButtons>\n <SubmitButton\n variant='contained'\n color='secondary'\n disablePristine={false}\n disabled={false}\n style={{ marginTop: 15 }}\n >\n Save\n </SubmitButton>\n </FormButtons>\n </Form>\n );\n};\n\nActionForm.propTypes = {\n /**\n * Entity attributes for selected entity within catalog\n */\n entityAttributes: PropTypes.array,\n /**\n * Foreign key data for selected entity within catalog\n */\n foreignKeyData: PropTypes.array,\n /**\n * Entity data\n */\n crudTableEditionData: PropTypes.array,\n /**\n * onClick event for closing sidesheet\n */\n closeSideSheet: PropTypes.func,\n /**\n * onClick event for creating\n */\n onCreate: PropTypes.func,\n /**\n * onClick event for updating\n */\n onUpdate: PropTypes.func\n};\n","import {\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n makeStyles\n} from '@material-ui/core';\nimport React from 'react';\nimport { FluentButton } from '../UI/inputs/buttons/FluentButton';\n\nconst useStyles = makeStyles((theme) => ({}));\n\nexport const ActionModal = (props) => {\n const {\n open,\n action,\n title,\n message = 'Are you sure you want to delete this row?',\n confirmAction = () => {},\n handleOnClose\n } = props;\n const classes = useStyles();\n\n return (\n <Dialog\n open={open}\n onClose={handleOnClose}\n aria-labelledby='alert-dialog-title'\n aria-describedby='alert-dialog-description'\n >\n <DialogTitle id='alert-dialog-title'>{title}</DialogTitle>\n <DialogContent>\n <DialogContentText id='alert-dialog-description'>\n {message}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <FluentButton\n onClick={handleOnClose}\n color='secondary'\n variant='contained'\n >\n Cancel\n </FluentButton>\n <FluentButton\n onClick={action}\n onMouseUp={() => {\n confirmAction();\n handleOnClose();\n }}\n autoFocus\n variant='outlined'\n >\n Confirm\n </FluentButton>\n </DialogActions>\n </Dialog>\n );\n};\n","import React, { useState } from 'react';\nimport SpeedDial, { SpeedDialProps } from '@material-ui/lab/SpeedDial';\nimport SpeedDialIcon from '@material-ui/lab/SpeedDialIcon';\nimport SpeedDialAction from '@material-ui/lab/SpeedDialAction';\nimport AddIcon from '@material-ui/icons/esm/Add';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { UnityFluentIcon } from '../utilities/iconLibrary/UnityFluentIcon';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\n\ninterface FluentSpeedDialProps extends SpeedDialProps {\n actions: Array<{\n icon: {\n type?: string;\n name: string;\n };\n name: string;\n onClick: Function;\n }>;\n}\n\nconst useStyles = makeStyles((theme) => {\n return {\n wrapper: {\n position: 'fixed',\n right: theme.spacing(0),\n bottom: theme.spacing(0),\n zIndex: 1200\n },\n speedDial: {\n position: 'absolute',\n '&.MuiSpeedDial-directionUp, &.MuiSpeedDial-directionLeft': {\n bottom: theme.spacing(2),\n right: theme.spacing(2)\n }\n },\n speedDialFab: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n opacity: 0.75,\n '&:hover': {\n backgroundColor: 'black'\n },\n '&:focus': {\n backgroundColor: 'black'\n }\n },\n speadDialFabExpanded: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n '&:hover': {\n backgroundColor: 'black'\n },\n '&:focus': {\n backgroundColor: 'black'\n }\n },\n speedDialActions: {\n '&.MuiSpeedDial-directionUp, &.MuiSpeedDial-actions': {\n paddingBottom: 0,\n marginBottom: 0,\n opacity: 0.75\n },\n '&:hover': {\n opacity: 1\n },\n '&:focus': {\n opacity: 1\n }\n },\n speedDialActionFab: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n color: 'white',\n width: 56,\n height: 56\n }\n };\n});\n\nexport const ActionSpeedDial = (props: FluentSpeedDialProps): JSX.Element | null => {\n const [expanded, setExpanded] = useState(false);\n const classes = useStyles(expanded);\n // @ts-ignore\n const { open, ariaLabel, actions, ...otherProps } = props;\n if (!actions.length) return null;\n return (\n <div className={classes.wrapper}>\n <SpeedDial\n id={'udpRecord-ActionSpeedDial'}\n // @ts-ignore\n udprecordid={'udpRecord-ActionSpeedDial'}\n className={classes.speedDial}\n ariaLabel='Fluent Speed Dial'\n classes={{\n fab: expanded ? classes.speadDialFabExpanded : classes.speedDialFab,\n actions: classes.speedDialActions\n }}\n icon={<SpeedDialIcon\n icon={<AddIcon />}\n />}\n onClose={() => setExpanded(false)}\n onOpen={() => setExpanded(true)}\n open={expanded}\n {...otherProps}\n >\n {actions.map((action) => (\n <SpeedDialAction\n id={'udpRecord-ActionSpeedDial-'+action.name}\n // @ts-ignore\n udprecordid={'udpRecord-ActionSpeedDial-'+action.name}\n key={action.name}\n icon={\n /*<UnityFluentIcon component={Icons[action.icon.name]} {...action.icon}/>*/\n <UnityFluentIcon\n type={action.icon.type}\n icon={\n action.icon.type === 'unity'\n ? getUnityIconFromName(action.icon.name)\n : getIconFromName(action.icon.name)\n }\n />\n }\n open={false}\n onClick={e => action.onClick(e)}\n classes={{\n fab: classes.speedDialActionFab\n }}\n tooltipTitle={action.name}\n />\n ))}\n </SpeedDial>\n </div>\n );\n};\n","import { makeStyles, Typography } from '@material-ui/core';\nimport { cloneDeep } from 'lodash';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useMemo } from 'react';\nimport { ActionSummaryPopover } from './actionSummary';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\nimport { PAHAdditionalRightComponent } from '../UI/utilityDisplay/utilityHeader/ui/PAHAdditionalRightComponent';\nimport { PanelPositionEnums } from '../enums/unitySystemEnums';\nimport { PrimaryActionButton } from '../UI/inputs/buttons/PrimaryActionButton';\nimport { SiteHeaderRightComponent } from '../shell/ui/SiteHeaderRightComponent';\nimport { ToolBarButton } from '../UI/inputs/buttons/ToolBarButton';\nimport { useActions } from '../hooks/useActions';\nimport { evaluateRule, mapRule } from '../utilities/rules/RuleUtilities';\nimport { ActionSpeedDial } from './ActionSpeedDial';\nimport { useActionStore } from '../stores/actionStore';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n actionsMenu: {\n color: theme?.palette?.getContrastText(theme?.palette?.primary?.main)\n },\n additionalRightComponent: {\n display: 'flex',\n alignItems: 'center'\n }\n}));\n\nexport const ActionPanelPlacement = (props) => {\n const {\n actionPanels,\n showInquiryHeaderActions,\n selectedNode,\n globalActions\n } = props;\n const classes = useStyles();\n const { triggerAction } = useActions();\n const hideActions = useActionStore((state) => state.hideActions);\n\n const handleTriggerAction = useCallback(\n (actionId) => {\n triggerAction(actionId, selectedNode?.nodeObj);\n },\n [triggerAction, selectedNode]\n );\n\n const panelsMap = useMemo(() => {\n if (!actionPanels || !actionPanels?.length) {\n return {};\n }\n return actionPanels.reduce((panelsObj, panel) => {\n const panelPositionId = panel?.panelPositionId;\n panelsObj[panelPositionId] = panel?.panelActions;\n return panelsObj;\n }, {});\n }, [actionPanels]);\n\n const siteHeaderRightComponent = useMemo(() => {\n const siteHeaderActions = panelsMap[PanelPositionEnums.Site_Header];\n const siteHeaderSummaryActions =\n panelsMap[PanelPositionEnums.Site_Header_Summary];\n let siteHeaderActionsComponent1 = null;\n let siteHeaderActionsComponent2 = null;\n let siteHeaderSummaryComponent = null;\n\n if (siteHeaderActions?.length) {\n siteHeaderActionsComponent1 = siteHeaderActions.map((panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n });\n }\n\n if (siteHeaderSummaryActions?.length) {\n if (!siteHeaderActions?.length && siteHeaderSummaryActions?.length <= 2) {\n siteHeaderActionsComponent2 = siteHeaderSummaryActions.map(\n (panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n }\n );\n } else {\n siteHeaderSummaryComponent = (\n <ActionSummaryPopover\n panelActions={siteHeaderSummaryActions}\n selectedNode={selectedNode}\n />\n );\n }\n }\n\n return (\n <SiteHeaderRightComponent>\n <div className={classes.additionalRightComponent}>\n {siteHeaderActionsComponent1}\n {siteHeaderActionsComponent2}\n {siteHeaderSummaryComponent}\n </div>\n </SiteHeaderRightComponent>\n );\n }, [panelsMap, handleTriggerAction, classes, selectedNode]);\n\n const inquiryHeaderComponent = useMemo(() => {\n const panelsMapCopy = cloneDeep(panelsMap);\n const inquiryHeaderActions =\n panelsMapCopy[PanelPositionEnums.Inquiry_Header];\n const inquiryHeaderSummaryActions =\n panelsMapCopy[PanelPositionEnums.Inquiry_Header_Summary];\n let inquiryHeaderActionsComponent = null;\n let inquiryHeaderSummaryComponent = null;\n let inquiryHeaderPrimaryAction = null;\n // if inquiry header summary actions length is more than 2, display the Actions as primary and the primary action as secondary.\n // otherwise, display the primary action as primary and Actions as secondary\n const showActionsAsSecondary =\n !inquiryHeaderSummaryActions?.length ||\n (!inquiryHeaderActions?.length &&\n inquiryHeaderSummaryActions?.length <= 2);\n\n if (inquiryHeaderActions?.length) {\n const actionList = [];\n inquiryHeaderActions.forEach((action) => {\n const passRule =\n action.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && !action?.hideAction) {\n actionList.push({ ...action, disabled: true });\n } else if (passRule) {\n actionList.push(action);\n }\n });\n\n inquiryHeaderActionsComponent = actionList\n ?.filter((pa) => {\n return showActionsAsSecondary\n ? !pa.isPrimary && pa.enabled\n : pa.enabled;\n })\n ?.map((panelAction, i) => (\n <div key={i}>\n <ToolBarButton\n // key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => {\n handleTriggerAction(panelAction?.actionId);\n }}\n disabled={panelAction?.disabled ?? false}\n />\n </div>\n ));\n\n if (showActionsAsSecondary) {\n const primaryAction = actionList?.find(\n (panelAction) => panelAction.isPrimary\n );\n\n inquiryHeaderPrimaryAction = primaryAction ? (\n <PrimaryActionButton\n onClick={() => handleTriggerAction(primaryAction?.actionId)}\n disabled={primaryAction?.disabled ?? false}\n >\n <Typography style={{ marginRight: 5 }}>\n {primaryAction?.action?.name}\n </Typography>\n </PrimaryActionButton>\n ) : null;\n }\n }\n\n if (inquiryHeaderSummaryActions?.length) {\n if (showActionsAsSecondary) {\n inquiryHeaderActionsComponent = inquiryHeaderSummaryActions.map(\n (panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n }\n );\n } else {\n inquiryHeaderSummaryComponent = (\n <ActionSummaryPopover\n panelActions={inquiryHeaderSummaryActions}\n noContrastColor={true}\n selectedNode={selectedNode}\n />\n );\n }\n }\n\n return (\n <PAHAdditionalRightComponent>\n {showInquiryHeaderActions && !hideActions && (\n <div className={classes.additionalRightComponent}>\n {inquiryHeaderActionsComponent}\n {inquiryHeaderPrimaryAction}\n {inquiryHeaderSummaryComponent}\n </div>\n )}\n </PAHAdditionalRightComponent>\n );\n }, [\n panelsMap,\n handleTriggerAction,\n classes,\n showInquiryHeaderActions,\n selectedNode,\n hideActions\n ]);\n\n const inquirySpeedDialComponent = useMemo(() => {\n const panelsMapCopy = cloneDeep(panelsMap);\n const inquirySpeedDialActions =\n panelsMapCopy[PanelPositionEnums.Speed_Dial];\n const enabledSortedActions =\n inquirySpeedDialActions\n ?.filter(\n (action) =>\n action.enabled &&\n (action.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ??\n true)\n )\n .sort((a, b) => a.sequence - b.sequence) ?? [];\n let parsedGlobalActions = [];\n if (globalActions?.length) {\n parsedGlobalActions = globalActions.map((action) => {\n const parameters = JSON.parse(action.parameters);\n return {\n icon: { name: parameters.icon, type: 'fluent' },\n action: {\n name: action.name\n },\n ...action\n };\n });\n }\n return (\n (!!enabledSortedActions?.length || !!parsedGlobalActions?.length) &&\n !hideActions && (\n <ActionSpeedDial\n actions={[...enabledSortedActions, ...parsedGlobalActions].map(\n (action) => ({\n icon: action.icon,\n onClick: () => handleTriggerAction(action.actionId),\n name: action.action.name\n })\n )}\n />\n )\n );\n }, [\n panelsMap,\n handleTriggerAction,\n selectedNode,\n globalActions,\n hideActions\n ]);\n\n return (\n <>\n {siteHeaderRightComponent}\n {inquiryHeaderComponent}\n {inquirySpeedDialComponent}\n </>\n );\n};\n\nActionPanelPlacement.propTypes = {\n /**\n * Action Panels\n */\n actionPanels: PropTypes.array,\n /**\n * Boolean to show inquiry header actions\n */\n showInquiryHeaderActions: PropTypes.bool,\n /**\n * Action Panels\n */\n selectedNode: PropTypes.object\n};\n","import { makeStyles } from '@material-ui/core';\nimport { Skeleton } from '@material-ui/lab';\nimport { useSnackbar } from 'notistack';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useMemo, useState } from 'react';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useTranslation } from 'react-i18next';\nimport { ConfigService } from '../configService';\nimport { ActionForm } from './ActionForm';\nimport { getPathObject } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { getSuccessAction } from '../UI/SuccessAction';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { NodeActionEnums } from '../enums/unitySystemEnums';\nimport { SideSheet } from '../UI/surfaces/SideSheet';\nimport { useActions } from '../hooks/useActions';\nimport { useUser } from '../utilities/auth/useUser';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { PageContainer } from '../page/PageContainer';\nimport { useActionStore } from '../stores/actionStore';\n\nconst useStyles = makeStyles((theme) => ({\n root: {}\n}));\n\nexport const ActionSideSheet = (props) => {\n const {\n open,\n action,\n actionPanel,\n selectedNodeObj,\n executeAction,\n selectedEntity,\n handleOnClose,\n entityAttributes,\n foreignKeyData,\n loadingContent,\n fetchEntityData,\n skeleton,\n showError,\n crudTableEditionData,\n crudTableFormData,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n udpFieldInfos\n } = props;\n const classes = useStyles();\n const [width, setWidth] = useState(600);\n const [buttonLabel, setButtonLabel] = useState('');\n const [onSubmit, setOnSubmit] = useState(\n () => () => console.warn('onSubmit not set')\n );\n const [additionalOnClose, setAdditionalOnClose] = useState();\n const [otherSideSheetProps, setOtherSideSheetProps] = useState({});\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\n const successAction = getSuccessAction(closeSnackbar);\n const { t } = useTranslation();\n const user = useUser();\n\n const setSelectedNodeForStore = useActionStore(\n (state) => state.setSelectedNode\n );\n const selectedNodeFromStore = useActionStore((state) => state.selectedNode);\n\n const promotedMethodPageId = useMemo(() => {\n if (action?.value) {\n if (selectedEntity?.unityBaseUpdateMethod?.apiMethodId === action.value) {\n return selectedEntity.unityBaseUpdateMethod.pageId;\n } else if (\n selectedEntity?.unityBaseCreateMethod?.apiMethodId === action.value\n ) {\n return selectedEntity.unityBaseCreateMethod.pageId;\n }\n }\n return '';\n }, [selectedEntity, action]);\n\n const [{ data: page, loading: loadingPage }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${action?.parameters?.pageId || promotedMethodPageId}`,\n {},\n !!!action?.parameters?.pageId && !!!promotedMethodPageId,\n false\n );\n\n const onCreate = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseCreateMethod && action?.value) {\n if (selectedEntity.unityBaseCreateMethod.apiMethodId === action.value) {\n return await executeAction(data, action.value);\n } else {\n showError();\n }\n }\n },\n [action, executeAction, selectedEntity, showError]\n );\n\n const onUpdate = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseUpdateMethod && action?.value) {\n if (selectedEntity.unityBaseUpdateMethod.apiMethodId === action.value) {\n return await executeAction(data, action.value);\n } else {\n showError();\n }\n }\n },\n [action, executeAction, selectedEntity, showError]\n );\n\n const handleFetchEntityData = useCallback(async () => {\n if (selectedEntity?.unityBaseGetAllMethod) {\n const data = {};\n const response = await fetchEntityData({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200 && selectedNodeObj) {\n const updatedNode = response.data.find(\n (d) => d.id === selectedNodeObj.id\n );\n\n const updatedSelectedNode = { ...selectedNodeFromStore };\n updatedSelectedNode.nodeObj = updatedNode;\n setSelectedNodeForStore(updatedSelectedNode);\n }\n }\n }, [\n enqueueSnackbar,\n fetchEntityData,\n selectedEntity,\n selectedNodeObj,\n setSelectedNodeForStore,\n selectedNodeFromStore\n ]);\n\n const handleOnCreate = useCallback(\n async (values) => {\n if (selectedEntity && selectedEntity?.unityBaseCreateMethod) {\n const entityName = selectedEntity?.entityName;\n if (selectedEntity.unityBaseCreateMethod) {\n const data = { requestBody: values };\n const response = await onCreate({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been created`)\n : t(`Entity has been created`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n }\n }\n } else {\n enqueueSnackbar(t(`Unable to retrieve entity methods`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }\n },\n [enqueueSnackbar, onCreate, selectedEntity, successAction, t]\n );\n\n const handleOnUpdate = useCallback(\n async (values, primaryKeyValues) => {\n if (selectedEntity && selectedEntity?.unityBaseUpdateMethod) {\n const entityName = selectedEntity?.entityName;\n\n if (selectedEntity.unityBaseUpdateMethod) {\n // Get primary key value object using path parameters and merge with data\n const pathObject = getPathObject(\n selectedEntity.unityBaseUpdateMethod.pathParameters,\n primaryKeyValues\n );\n const data = { ...pathObject, requestBody: values };\n const response = await onUpdate({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been updated`)\n : t(`Entity has been updated`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n\n handleFetchEntityData();\n }\n }\n } else {\n enqueueSnackbar(t(`Unable to retrieve entity methods`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }\n },\n [\n selectedEntity,\n onUpdate,\n enqueueSnackbar,\n t,\n successAction,\n handleFetchEntityData\n ]\n );\n\n const handleOnCloseSideSheet = useCallback(() => {\n if (additionalOnClose) {\n additionalOnClose();\n }\n handleOnClose();\n }, [additionalOnClose, handleOnClose]);\n\n // const primaryKeyValues = useMemo(\n // () => getPrimaryKeyValues(entityAttributes, null),\n // [entityAttributes]\n // );\n\n // @TODO: Need to add a check if a promoted method for specific Entity has a static page\n // linked to it. It can fall back to it if there is no actions page\n const content = useMemo(() => {\n if (page) {\n return (\n <DndProvider backend={HTML5Backend}>\n <PageContainer\n user={user}\n key={action?.actionId}\n pageData={page}\n widgetParams={{\n pageId: page?.pageId,\n contentId: selectedNode?.properties?.searchValue,\n nodeObj: selectedNode?.nodeObj,\n parentNodeObj: selectedNodeParent?.nodeObj,\n inquiryParams: selectedNode?.inquiryParams,\n refreshTree: refreshTree,\n requiredFieldsMap: action?.parameters?.requiredFieldMapping || {},\n setSideSheetWidth: setWidth,\n setSideSheetButtonLabel: setButtonLabel,\n setSideSheetOnSubmit: setOnSubmit,\n setSideSheetAdditionalOnClose: setAdditionalOnClose,\n setSideSheetProps: setOtherSideSheetProps,\n closeSideSheet: handleOnClose,\n onCreate: onCreate,\n onUpdate: onUpdate\n }}\n disableMargins={true}\n />\n </DndProvider>\n );\n } else {\n return (\n <ActionForm\n key={action?.actionId}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n onCreate={handleOnCreate}\n closeSideSheet={handleOnClose}\n onUpdate={handleOnUpdate}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n udpFieldInfos={udpFieldInfos}\n />\n );\n }\n }, [\n action,\n crudTableEditionData,\n crudTableFormData,\n entityAttributes,\n foreignKeyData,\n handleOnClose,\n handleOnCreate,\n handleOnUpdate,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n user,\n page,\n onCreate,\n onUpdate,\n udpFieldInfos\n ]);\n\n const sideSheetTitle = useMemo(() => {\n if (action?.parameters?.pageDisplayName) {\n return action.parameters.pageDisplayName;\n } else if (page) {\n return page?.name;\n } else {\n return (\n (action?.actionTypeId === NodeActionEnums.Create\n ? 'Add new '\n : 'Edit ') +\n (action?.parameters?.entityName ?? actionPanel?.entityName)\n );\n }\n }, [action, actionPanel, page]);\n\n return (\n <SideSheet\n open={open}\n title={t(sideSheetTitle)}\n buttonLabel={t(buttonLabel)}\n onSubmit={onSubmit}\n onClose={handleOnCloseSideSheet}\n width={width}\n {...otherSideSheetProps}\n >\n {loadingContent || loadingPage ? (\n <>\n {skeleton.map((sk) => sk)}\n <LayoutUnit unit='md' />\n <Skeleton variant='rect' className={classes.skeletonButton} />\n </>\n ) : (\n content\n )}\n </SideSheet>\n );\n};\n\nActionSideSheet.propTypes = {\n /**\n * User object\n */\n user: PropTypes.object,\n /**\n * boolean to open/close sidesheet\n */\n open: PropTypes.bool,\n /**\n * dispatch function\n */\n dispatch: PropTypes.func,\n /**\n * selected action object\n */\n action: PropTypes.object,\n /**\n * action panels array\n */\n actionPanels: PropTypes.array,\n /**\n * catalog object\n */\n catalog: PropTypes.object,\n /**\n * Selected node object\n */\n selectedNodeObj: PropTypes.object\n};\n","import { makeStyles } from '@material-ui/core';\nimport { Skeleton } from '@material-ui/lab';\nimport { useSnackbar } from 'notistack';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { ActionSplitScreen } from './ActionSplitScreen';\nimport { ActionModal } from './ActionModal';\nimport { ActionPanelPlacement } from './ActionPanelPlacement';\nimport { ActionSideSheet } from './ActionSideSheet';\nimport { apiMutate } from '../utilities/useAxiosMutate';\nimport {\n getPathObject,\n getPrimaryKeyValues\n} from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { getSuccessAction } from '../UI/SuccessAction';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { toLowerFirstChar } from '../utilities/input/StringUtilities';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { useCrudActions } from '../hooks/crudActions';\nimport { useActionStore } from '../stores/actionStore';\nimport { useShellStore } from '../stores/shellStore';\nimport { usePromotedMethodEntity } from '../hooks/usePromotedMethodEntity';\nimport { getSanitizedName } from '../utilities/entities/entityUtilities';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\nimport { executeQueryAdHoc } from '../udp/utilities/methodUtils';\nimport { ConfigService } from '../configService';\n\nconst useStyles = makeStyles((theme) => ({}));\n\nconst FIELD_NUMBER = 10;\n\nexport const ActionWrapper = (props) => {\n const {\n actionState,\n actionPanel,\n dispatch,\n catalog,\n executeAction,\n splitScreenBody,\n entityAttributes,\n foreignKeyData,\n setForeignKeyData,\n crudTableEditionData,\n crudTableFormData,\n globalActions\n } = props;\n const classes = useStyles();\n\n const { getFKData } = useCrudActions();\n\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\n const successAction = getSuccessAction(closeSnackbar);\n const { t } = useTranslation();\n const [fkMethodEntities, setFKMethodEntities] = useState([]);\n const [loadingContent, setLoadingContent] = useState(true);\n const [udpFieldInfos, setUdpFieldInfos] = useState([]);\n\n const selectedNode = useActionStore((state) => state.selectedNode);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n\n const { data: udpOjectFieldInfo } = usePromotedMethodEntity(\n 'UdpObjectFieldInfo',\n true\n );\n\n const entityName = useMemo(() => {\n return actionPanel\n ? actionPanel.entityName\n : actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n ?.properties?.catalogReturnObject;\n }, [actionPanel, actionState, currentContainerId]);\n\n const [{ data: selectedEntity }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${catalog?.apiCatalogId}/promotedMethodEntities/${entityName}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {},\n !!!catalog?.apiCatalogId || !!!entityName,\n false\n );\n\n const getMetaDataForUdpField = useCallback(\n async (entityName) => {\n let fieldInfos = [];\n if (udpOjectFieldInfo?.unityBaseSearchMethod?.apiMethodId) {\n const filterElements = [\n {\n searchField: 'ObjectInfo.SanitizedName',\n searchOperator: '=',\n searchValue: getSanitizedName(entityName)\n }\n ];\n const requestObj = getSearchObject(filterElements, 1, 50, true);\n\n await executeQueryAdHoc(\n { data: requestObj },\n udpOjectFieldInfo.unityBaseSearchMethod.apiMethodId\n ).then((resp) => {\n fieldInfos = resp.data?.pageList;\n });\n }\n return fieldInfos;\n },\n [udpOjectFieldInfo]\n );\n\n const fetchEntityData = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseGetAllMethod)\n return await executeAction(\n data,\n selectedEntity.unityBaseGetAllMethod.apiMethodId\n );\n },\n [executeAction, selectedEntity]\n );\n\n const showError = useCallback(() => {\n enqueueSnackbar(t(`Invalid action value.`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }, [enqueueSnackbar, t]);\n\n const getFKMethodEntities = useCallback(\n async (attributes) => {\n if (!attributes || !catalog) {\n return [];\n }\n let fkData = [];\n\n for (const attr of attributes) {\n // check if there is a property with this childEntity\n if (attr?.extendedProperties?.childEntity) {\n // get the list of child entity field names from the Keys array\n const ceFieldsArr = [];\n Object.keys(attr.extendedProperties.childEntityAssoc || {}).length &&\n !attr.extendedProperties.childEntityAssoc.UdpType &&\n attr.extendedProperties.childEntityAssoc.Keys.forEach(\n (value, i) => {\n const name = value.split(',')[0];\n if (name) {\n // check name string: if 1 word, lowercase. if 2 words, lower first char\n ceFieldsArr.push({\n idx: i,\n name: /^[A-Z]*$/.test(name)\n ? name.toLowerCase()\n : toLowerFirstChar(name)\n });\n }\n }\n );\n\n // find the child entity attribute\n const ceAttr = attributes.find((p) =>\n ceFieldsArr.find(\n (cef) => cef.name === p.name && !p?.extendedProperties?.identifier\n )\n );\n\n if (ceAttr) {\n // get list of entity if ceProp exists\n await apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${catalog.apiCatalogId}/promotedMethodEntities/${attr.reference}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {\n method: 'get'\n },\n {}\n ).then((resp) => {\n if (resp && resp.data) {\n fkData.push({ fkName: ceAttr.name, entity: resp.data });\n }\n });\n }\n }\n }\n setFKMethodEntities(fkData);\n },\n [catalog]\n );\n\n const handleOnClose = useCallback(\n (type, entity) => {\n dispatch({ type: type, entity });\n },\n [dispatch]\n );\n\n const onDelete = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseDeleteMethod) {\n if (\n selectedEntity.unityBaseDeleteMethod.apiMethodId ===\n actionState?.modal?.action?.value\n ) {\n return await executeAction(data, actionState?.modal?.action?.value);\n } else {\n showError();\n }\n }\n },\n [actionState, executeAction, selectedEntity, showError]\n );\n\n const handleOnDelete = useCallback(\n async (value) => {\n if (selectedEntity) {\n const entityName = selectedEntity?.entityName;\n\n // Get primary key value object using path parameters and merge with data\n const primaryKeyValues = getPrimaryKeyValues(entityAttributes, value);\n const pathObject = getPathObject(\n selectedEntity?.unityBaseDeleteMethod.pathParameters,\n primaryKeyValues\n );\n\n if (selectedEntity?.unityBaseDeleteMethod) {\n const data = { ...pathObject };\n const response = await onDelete({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been deleted`)\n : t(`Entity has been deleted`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n if (\n actionState?.menuListState &&\n actionState?.menuListState?.menuList.length > 0\n ) {\n const handleRemoveMenuItem =\n actionState?.menuListState?.handleRemoveMenuItem;\n if (handleRemoveMenuItem) {\n handleRemoveMenuItem(actionState?.menuListState?.menuList);\n }\n }\n fetchEntityData({ data: {} });\n }\n }\n }\n },\n [\n actionState,\n enqueueSnackbar,\n entityAttributes,\n fetchEntityData,\n onDelete,\n selectedEntity,\n successAction,\n t\n ]\n );\n\n const skeleton = useMemo(() => {\n const skeletonArr = [];\n for (let i = 0; i < FIELD_NUMBER; i++) {\n skeletonArr.push(\n <>\n <Skeleton key={i} variant='rect' className={classes.skeleton} />\n <LayoutUnit unit='xxs' />\n </>\n );\n }\n return skeletonArr;\n }, [classes]);\n\n useEffect(() => {\n if (entityAttributes) {\n getFKMethodEntities(entityAttributes);\n setLoadingContent(false);\n }\n }, [entityAttributes, getFKMethodEntities]);\n\n useEffect(() => {\n if (entityAttributes && fkMethodEntities && fkMethodEntities.length > 0) {\n getFKData(fkMethodEntities, setForeignKeyData, enqueueSnackbar);\n }\n }, [\n enqueueSnackbar,\n entityAttributes,\n fkMethodEntities,\n getFKData,\n setForeignKeyData\n ]);\n\n useEffect(() => {\n const setFieldInfos = async () => {\n if(!entityName) return;\n let response = await getMetaDataForUdpField(entityName);\n setUdpFieldInfos(response);\n };\n if (udpOjectFieldInfo?.unityBaseSearchMethod?.apiMethodId) {\n setFieldInfos();\n }\n }, [getMetaDataForUdpField, udpOjectFieldInfo, entityName]);\n\n return (\n <>\n <ActionSplitScreen\n body={\n <>\n {splitScreenBody}\n <ActionPanelPlacement\n actionPanels={actionState?.actionPanels[currentContainerId || 0]}\n showInquiryHeaderActions={actionState?.showInquiryHeaderActions}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNode\n }\n globalActions={globalActions}\n />\n </>\n }\n open={actionState?.splitScreen?.open}\n action={actionState?.splitScreen?.action}\n type={actionState?.splitScreen?.type}\n params={actionState?.splitScreen?.params}\n executeAction={executeAction}\n actionPanel={actionPanel}\n selectedNodeObj={selectedNode?.nodeObj}\n menuNodeList={actionState?.menuListState?.menuList}\n sidebarEntity={selectedEntity}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n }\n selectedNodeParent={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNodeParent\n }\n refreshTree={\n actionState?.inquiryParams[currentContainerId || 0]?.refreshTree\n }\n />\n <ActionSideSheet\n key={actionState?.sideSheet?.action?.actionId}\n open={actionState?.sideSheet?.open}\n dispatch={dispatch}\n action={actionState?.sideSheet?.action}\n actionPanel={actionPanel}\n selectedNodeObj={selectedNode?.nodeObj}\n executeAction={executeAction}\n selectedEntity={selectedEntity}\n handleOnClose={() => {\n const sideSheet = { open: false, action: null };\n handleOnClose('OPEN_SIDESHEET', sideSheet);\n }}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n loadingContent={loadingContent}\n fetchEntityData={fetchEntityData}\n skeleton={skeleton}\n showError={showError}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n }\n selectedNodeParent={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNodeParent\n }\n refreshTree={\n actionState?.inquiryParams[currentContainerId || 0]?.refreshTree\n }\n udpFieldInfos={udpFieldInfos}\n />\n <ActionModal\n open={actionState?.modal?.open}\n action={actionState?.modal?.action}\n title={actionState?.modal?.title + selectedEntity?.entityName}\n message={t(\n `Are you sure you want to delete this ${selectedEntity?.entityName}?`\n )}\n confirmAction={() => handleOnDelete(selectedNode?.nodeObj)}\n handleOnClose={() => {\n const modal = { open: false, action: null };\n handleOnClose('OPEN_MODAL', modal);\n }}\n showError={showError}\n />\n </>\n );\n};\n\nActionWrapper.propTypes = {\n actionState: PropTypes.object,\n actionPanel: PropTypes.object,\n dispatch: PropTypes.func,\n catalog: PropTypes.object,\n executeAction: PropTypes.func,\n user: PropTypes.object,\n splitScreenBody: PropTypes.object\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ActionWrapper-BFnTN0Yg.js","names":["useStyles","useStyles","useStyles","makeStyles","useStyles","useStyles","entityName"],"sources":["../src/actions/ActionForm.jsx","../src/actions/ActionModal.jsx","../src/actions/ActionSpeedDial.tsx","../src/actions/ActionPanelPlacement.jsx","../src/actions/ActionSideSheet.jsx","../src/actions/ActionWrapper.jsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { makeStyles, Typography } from '@material-ui/core';\nimport { Form, FormButtons, SubmitButton } from '../utilities/form';\nimport { getPrimaryKeyValues } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { useCrudActions } from '../hooks/crudActions';\nimport { CardinalityTypeEnums } from '../enums/unitySystemEnums';\nimport PropTypes from 'prop-types';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n marginTop: theme.spacing(-2)\n },\n body: {\n marginTop: theme.spacing(2)\n },\n actions: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n display: 'flex',\n flexDirection: 'row'\n },\n title: {\n flexGrow: 1\n },\n divider: {\n marginTop: theme.spacing(2)\n },\n subject: {\n marginLeft: theme.spacing(1),\n display: 'flex',\n flexDirection: 'row',\n flexGrow: 1\n },\n switchRoot: {\n marginLeft: theme.spacing(1)\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 13\n },\n labelRoot: {\n fontSize: 13\n }\n}));\n\nexport const ActionForm = (props) => {\n const {\n entityAttributes,\n foreignKeyData,\n onCreate,\n closeSideSheet,\n onUpdate,\n crudTableEditionData,\n crudTableFormData,\n udpFieldInfos\n } = props;\n const classes = useStyles();\n\n const { renderInputByFieldType } = useCrudActions();\n\n const primaryKeyValues = useMemo(\n () => getPrimaryKeyValues(entityAttributes, crudTableEditionData),\n [entityAttributes, crudTableEditionData]\n );\n\n // we'll need this to determine which property names are used as keys for many-to-many\n const manyToManyPropertyList = useMemo(() => {\n if (!entityAttributes?.length) return [];\n const mtmPropertyList = new Set();\n entityAttributes.forEach((attr) => {\n if (attr?.extendedProperties?.childEntity) {\n Object.keys(attr.extendedProperties.childEntityAssoc || {}).length &&\n attr.extendedProperties.childEntityAssoc.Cardinality ===\n CardinalityTypeEnums.Many_To_Many &&\n attr.extendedProperties.childEntityAssoc.Keys.forEach((value, i) => {\n const name = value.split(',')[0];\n if (name) {\n // check name string: if 1 word, lowercase. if 2 words, lower first char\n mtmPropertyList.add(name.toLowerCase());\n }\n });\n }\n });\n return mtmPropertyList;\n }, [entityAttributes]);\n\n const handleSubmit = async (values) => {\n let newTableData = {\n ...crudTableFormData,\n ...values\n };\n\n // remove identifiers from object\n entityAttributes\n .filter((ea) => ea?.extendedProperties?.identifier)\n .forEach((ea) => {\n delete newTableData[ea.name];\n });\n\n // transform values by fkData before creating/updating\n foreignKeyData.forEach((fkd) => {\n Object.keys(newTableData).forEach((key) => {\n if (key === fkd.fieldName) {\n newTableData[key] = fkd.data.find(\n (d) => d.id === newTableData[key].id\n )?.id;\n }\n });\n });\n\n const isNewRow = !crudTableEditionData;\n\n if (isNewRow) {\n onCreate && (await onCreate(newTableData));\n } else {\n onUpdate && (await onUpdate(newTableData, primaryKeyValues));\n }\n closeSideSheet && closeSideSheet();\n };\n\n const isNewEntry = useMemo(\n () => !crudTableEditionData,\n [crudTableEditionData]\n );\n\n return (\n <Form onSubmit={handleSubmit}>\n <div>\n {entityAttributes?.map((schemaAttribute, index) => {\n const fieldInfo = udpFieldInfos?.find(\n (fi) =>\n fi?.name.toLowerCase() === schemaAttribute?.name?.toLowerCase()\n );\n // If the field is an identity and is Updating form, we will make the field readOnly\n if (fieldInfo?.isPrimaryKey && !isNewEntry) {\n schemaAttribute.disabled = true;\n }\n if (fieldInfo?.isPrimaryKey && isNewEntry && !fieldInfo?.isIdentity) {\n schemaAttribute.disabled = false;\n }\n return (\n !schemaAttribute?.extendedProperties?.identifier && (\n <React.Fragment key={`${schemaAttribute.name}-${index}`}>\n <Typography variant='subtitle2' style={{ marginTop: 8 }}>\n {schemaAttribute.friendlyName}\n </Typography>\n {renderInputByFieldType(\n schemaAttribute,\n index,\n entityAttributes,\n fieldInfo,\n foreignKeyData,\n null,\n crudTableFormData,\n classes,\n false,\n null,\n manyToManyPropertyList\n )}\n </React.Fragment>\n )\n );\n })}\n </div>\n\n <FormButtons>\n <SubmitButton\n variant='contained'\n color='secondary'\n disablePristine={false}\n disabled={false}\n style={{ marginTop: 15 }}\n >\n Save\n </SubmitButton>\n </FormButtons>\n </Form>\n );\n};\n\nActionForm.propTypes = {\n /**\n * Entity attributes for selected entity within catalog\n */\n entityAttributes: PropTypes.array,\n /**\n * Foreign key data for selected entity within catalog\n */\n foreignKeyData: PropTypes.array,\n /**\n * Entity data\n */\n crudTableEditionData: PropTypes.array,\n /**\n * onClick event for closing sidesheet\n */\n closeSideSheet: PropTypes.func,\n /**\n * onClick event for creating\n */\n onCreate: PropTypes.func,\n /**\n * onClick event for updating\n */\n onUpdate: PropTypes.func\n};\n","import {\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n makeStyles\n} from '@material-ui/core';\nimport React from 'react';\nimport { FluentButton } from '../UI/inputs/buttons/FluentButton';\n\nconst useStyles = makeStyles((theme) => ({}));\n\nexport const ActionModal = (props) => {\n const {\n open,\n action,\n title,\n message = 'Are you sure you want to delete this row?',\n confirmAction = () => {},\n handleOnClose\n } = props;\n const classes = useStyles();\n\n return (\n <Dialog\n open={open}\n onClose={handleOnClose}\n aria-labelledby='alert-dialog-title'\n aria-describedby='alert-dialog-description'\n >\n <DialogTitle id='alert-dialog-title'>{title}</DialogTitle>\n <DialogContent>\n <DialogContentText id='alert-dialog-description'>\n {message}\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <FluentButton\n onClick={handleOnClose}\n color='secondary'\n variant='contained'\n >\n Cancel\n </FluentButton>\n <FluentButton\n onClick={action}\n onMouseUp={() => {\n confirmAction();\n handleOnClose();\n }}\n autoFocus\n variant='outlined'\n >\n Confirm\n </FluentButton>\n </DialogActions>\n </Dialog>\n );\n};\n","import React, { useState } from 'react';\nimport SpeedDial, { SpeedDialProps } from '@material-ui/lab/SpeedDial';\nimport SpeedDialIcon from '@material-ui/lab/SpeedDialIcon';\nimport SpeedDialAction from '@material-ui/lab/SpeedDialAction';\nimport AddIcon from '@material-ui/icons/esm/Add';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { UnityFluentIcon } from '../utilities/iconLibrary/UnityFluentIcon';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\n\ninterface FluentSpeedDialProps extends SpeedDialProps {\n actions: Array<{\n icon: {\n type?: string;\n name: string;\n };\n name: string;\n onClick: Function;\n }>;\n}\n\nconst useStyles = makeStyles((theme) => {\n return {\n wrapper: {\n position: 'fixed',\n right: theme.spacing(0),\n bottom: theme.spacing(0),\n zIndex: 1200\n },\n speedDial: {\n position: 'absolute',\n '&.MuiSpeedDial-directionUp, &.MuiSpeedDial-directionLeft': {\n bottom: theme.spacing(2),\n right: theme.spacing(2)\n }\n },\n speedDialFab: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n opacity: 0.75,\n '&:hover': {\n backgroundColor: 'black'\n },\n '&:focus': {\n backgroundColor: 'black'\n }\n },\n speadDialFabExpanded: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n '&:hover': {\n backgroundColor: 'black'\n },\n '&:focus': {\n backgroundColor: 'black'\n }\n },\n speedDialActions: {\n '&.MuiSpeedDial-directionUp, &.MuiSpeedDial-actions': {\n paddingBottom: 0,\n marginBottom: 0,\n opacity: 0.75\n },\n '&:hover': {\n opacity: 1\n },\n '&:focus': {\n opacity: 1\n }\n },\n speedDialActionFab: {\n backgroundColor: 'black',\n borderRadius: 1,\n margin: 0,\n color: 'white',\n width: 56,\n height: 56\n }\n };\n});\n\nexport const ActionSpeedDial = (props: FluentSpeedDialProps): JSX.Element | null => {\n const [expanded, setExpanded] = useState(false);\n const classes = useStyles(expanded);\n // @ts-ignore\n const { open, ariaLabel, actions, ...otherProps } = props;\n if (!actions.length) return null;\n return (\n <div className={classes.wrapper}>\n <SpeedDial\n id={'udpRecord-ActionSpeedDial'}\n // @ts-ignore\n udprecordid={'udpRecord-ActionSpeedDial'}\n className={classes.speedDial}\n ariaLabel='Fluent Speed Dial'\n classes={{\n fab: expanded ? classes.speadDialFabExpanded : classes.speedDialFab,\n actions: classes.speedDialActions\n }}\n icon={<SpeedDialIcon\n icon={<AddIcon />}\n />}\n onClose={() => setExpanded(false)}\n onOpen={() => setExpanded(true)}\n open={expanded}\n {...otherProps}\n >\n {actions.map((action) => (\n <SpeedDialAction\n id={'udpRecord-ActionSpeedDial-'+action.name}\n // @ts-ignore\n udprecordid={'udpRecord-ActionSpeedDial-'+action.name}\n key={action.name}\n icon={\n /*<UnityFluentIcon component={Icons[action.icon.name]} {...action.icon}/>*/\n <UnityFluentIcon\n type={action.icon.type}\n icon={\n action.icon.type === 'unity'\n ? getUnityIconFromName(action.icon.name)\n : getIconFromName(action.icon.name)\n }\n />\n }\n open={false}\n onClick={e => action.onClick(e)}\n classes={{\n fab: classes.speedDialActionFab\n }}\n tooltipTitle={action.name}\n />\n ))}\n </SpeedDial>\n </div>\n );\n};\n","import { makeStyles, Typography } from '@material-ui/core';\nimport { cloneDeep } from 'lodash';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useMemo } from 'react';\nimport { ActionSummaryPopover } from './actionSummary';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\nimport { PAHAdditionalRightComponent } from '../UI/utilityDisplay/utilityHeader/ui/PAHAdditionalRightComponent';\nimport { PanelPositionEnums } from '../enums/unitySystemEnums';\nimport { PrimaryActionButton } from '../UI/inputs/buttons/PrimaryActionButton';\nimport { SiteHeaderRightComponent } from '../shell/ui/SiteHeaderRightComponent';\nimport { ToolBarButton } from '../UI/inputs/buttons/ToolBarButton';\nimport { useActions } from '../hooks/useActions';\nimport { evaluateRule, mapRule } from '../utilities/rules/RuleUtilities';\nimport { ActionSpeedDial } from './ActionSpeedDial';\nimport { useActionStore } from '../stores/actionStore';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n actionsMenu: {\n color: theme?.palette?.getContrastText(theme?.palette?.primary?.main)\n },\n additionalRightComponent: {\n display: 'flex',\n alignItems: 'center'\n }\n}));\n\nexport const ActionPanelPlacement = (props) => {\n const {\n actionPanels,\n showInquiryHeaderActions,\n selectedNode,\n globalActions\n } = props;\n const classes = useStyles();\n const { triggerAction } = useActions();\n const hideActions = useActionStore((state) => state.hideActions);\n\n const handleTriggerAction = useCallback(\n (actionId) => {\n triggerAction(actionId, selectedNode?.nodeObj);\n },\n [triggerAction, selectedNode]\n );\n\n const panelsMap = useMemo(() => {\n if (!actionPanels || !actionPanels?.length) {\n return {};\n }\n return actionPanels.reduce((panelsObj, panel) => {\n const panelPositionId = panel?.panelPositionId;\n panelsObj[panelPositionId] = panel?.panelActions;\n return panelsObj;\n }, {});\n }, [actionPanels]);\n\n const siteHeaderRightComponent = useMemo(() => {\n const siteHeaderActions = panelsMap[PanelPositionEnums.Site_Header];\n const siteHeaderSummaryActions =\n panelsMap[PanelPositionEnums.Site_Header_Summary];\n let siteHeaderActionsComponent1 = null;\n let siteHeaderActionsComponent2 = null;\n let siteHeaderSummaryComponent = null;\n\n if (siteHeaderActions?.length) {\n siteHeaderActionsComponent1 = siteHeaderActions.map((panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n });\n }\n\n if (siteHeaderSummaryActions?.length) {\n if (!siteHeaderActions?.length && siteHeaderSummaryActions?.length <= 2) {\n siteHeaderActionsComponent2 = siteHeaderSummaryActions.map(\n (panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n }\n );\n } else {\n siteHeaderSummaryComponent = (\n <ActionSummaryPopover\n panelActions={siteHeaderSummaryActions}\n selectedNode={selectedNode}\n />\n );\n }\n }\n\n return (\n <SiteHeaderRightComponent>\n <div className={classes.additionalRightComponent}>\n {siteHeaderActionsComponent1}\n {siteHeaderActionsComponent2}\n {siteHeaderSummaryComponent}\n </div>\n </SiteHeaderRightComponent>\n );\n }, [panelsMap, handleTriggerAction, classes, selectedNode]);\n\n const inquiryHeaderComponent = useMemo(() => {\n const panelsMapCopy = cloneDeep(panelsMap);\n const inquiryHeaderActions =\n panelsMapCopy[PanelPositionEnums.Inquiry_Header];\n const inquiryHeaderSummaryActions =\n panelsMapCopy[PanelPositionEnums.Inquiry_Header_Summary];\n let inquiryHeaderActionsComponent = null;\n let inquiryHeaderSummaryComponent = null;\n let inquiryHeaderPrimaryAction = null;\n // if inquiry header summary actions length is more than 2, display the Actions as primary and the primary action as secondary.\n // otherwise, display the primary action as primary and Actions as secondary\n const showActionsAsSecondary =\n !inquiryHeaderSummaryActions?.length ||\n (!inquiryHeaderActions?.length &&\n inquiryHeaderSummaryActions?.length <= 2);\n\n if (inquiryHeaderActions?.length) {\n const actionList = [];\n inquiryHeaderActions.forEach((action) => {\n const passRule =\n action.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && !action?.hideAction) {\n actionList.push({ ...action, disabled: true });\n } else if (passRule) {\n actionList.push(action);\n }\n });\n\n inquiryHeaderActionsComponent = actionList\n ?.filter((pa) => {\n return showActionsAsSecondary\n ? !pa.isPrimary && pa.enabled\n : pa.enabled;\n })\n ?.map((panelAction, i) => (\n <div key={i}>\n <ToolBarButton\n // key={panelAction?.actionId}\n label={panelAction?.action?.name}\n aria={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => {\n handleTriggerAction(panelAction?.actionId);\n }}\n disabled={panelAction?.disabled ?? false}\n />\n </div>\n ));\n\n if (showActionsAsSecondary) {\n const primaryAction = actionList?.find(\n (panelAction) => panelAction.isPrimary\n );\n\n inquiryHeaderPrimaryAction = primaryAction ? (\n <PrimaryActionButton\n onClick={() => handleTriggerAction(primaryAction?.actionId)}\n disabled={primaryAction?.disabled ?? false}\n >\n <Typography style={{ marginRight: 5 }}>\n {primaryAction?.action?.name}\n </Typography>\n </PrimaryActionButton>\n ) : null;\n }\n }\n\n if (inquiryHeaderSummaryActions?.length) {\n if (showActionsAsSecondary) {\n inquiryHeaderActionsComponent = inquiryHeaderSummaryActions.map(\n (panelAction) => {\n const passRule =\n panelAction.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ?? true;\n\n if (!passRule && panelAction?.hideAction) {\n return null;\n }\n\n return (\n <ToolBarButton\n key={panelAction?.actionId}\n label={panelAction?.action?.name}\n icon={false}\n component={\n panelAction?.icon?.type === 'unity'\n ? getUnityIconFromName(panelAction?.icon?.name)\n : getIconFromName(panelAction?.icon?.name)\n }\n click={() => handleTriggerAction(panelAction?.actionId)}\n disabled={!passRule}\n />\n );\n }\n );\n } else {\n inquiryHeaderSummaryComponent = (\n <ActionSummaryPopover\n panelActions={inquiryHeaderSummaryActions}\n noContrastColor={true}\n selectedNode={selectedNode}\n />\n );\n }\n }\n\n return (\n <PAHAdditionalRightComponent>\n {showInquiryHeaderActions && !hideActions && (\n <div className={classes.additionalRightComponent}>\n {inquiryHeaderActionsComponent}\n {inquiryHeaderPrimaryAction}\n {inquiryHeaderSummaryComponent}\n </div>\n )}\n </PAHAdditionalRightComponent>\n );\n }, [\n panelsMap,\n handleTriggerAction,\n classes,\n showInquiryHeaderActions,\n selectedNode,\n hideActions\n ]);\n\n const inquirySpeedDialComponent = useMemo(() => {\n const panelsMapCopy = cloneDeep(panelsMap);\n const inquirySpeedDialActions =\n panelsMapCopy[PanelPositionEnums.Speed_Dial];\n const enabledSortedActions =\n inquirySpeedDialActions\n ?.filter(\n (action) =>\n action.enabled &&\n (action.action.actionRules?.reduce((boolValue, rule) => {\n const ruleExpression = mapRule(rule.mapping, rule.jsonLogic);\n return (\n boolValue &&\n evaluateRule(\n ruleExpression,\n selectedNode?.nodeObj,\n selectedNode?.properties?.joiningEntityCatalogObjectKey,\n selectedNode?.wasLazyLoaded\n )\n );\n }, true) ??\n true)\n )\n .sort((a, b) => a.sequence - b.sequence) ?? [];\n let parsedGlobalActions = [];\n if (globalActions?.length) {\n parsedGlobalActions = globalActions.map((action) => {\n const parameters = JSON.parse(action.parameters);\n return {\n icon: { name: parameters.icon, type: 'fluent' },\n action: {\n name: action.name\n },\n ...action\n };\n });\n }\n return (\n (!!enabledSortedActions?.length || !!parsedGlobalActions?.length) &&\n !hideActions && (\n <ActionSpeedDial\n actions={[...enabledSortedActions, ...parsedGlobalActions].map(\n (action) => ({\n icon: action.icon,\n onClick: () => handleTriggerAction(action.actionId),\n name: action.action.name\n })\n )}\n />\n )\n );\n }, [\n panelsMap,\n handleTriggerAction,\n selectedNode,\n globalActions,\n hideActions\n ]);\n\n return (\n <>\n {siteHeaderRightComponent}\n {inquiryHeaderComponent}\n {inquirySpeedDialComponent}\n </>\n );\n};\n\nActionPanelPlacement.propTypes = {\n /**\n * Action Panels\n */\n actionPanels: PropTypes.array,\n /**\n * Boolean to show inquiry header actions\n */\n showInquiryHeaderActions: PropTypes.bool,\n /**\n * Action Panels\n */\n selectedNode: PropTypes.object\n};\n","import { makeStyles } from '@material-ui/core';\nimport { Skeleton } from '@material-ui/lab';\nimport { useSnackbar } from 'notistack';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useMemo, useState } from 'react';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useTranslation } from 'react-i18next';\nimport { ConfigService } from '../configService';\nimport { ActionForm } from './ActionForm';\nimport { getPathObject } from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { getSuccessAction } from '../UI/SuccessAction';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { NodeActionEnums } from '../enums/unitySystemEnums';\nimport { SideSheet } from '../UI/surfaces/SideSheet';\nimport { useActions } from '../hooks/useActions';\nimport { useUser } from '../utilities/auth/useUser';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { PageContainer } from '../page/PageContainer';\nimport { useActionStore } from '../stores/actionStore';\n\nconst useStyles = makeStyles((theme) => ({\n root: {}\n}));\n\nexport const ActionSideSheet = (props) => {\n const {\n open,\n action,\n actionPanel,\n selectedNodeObj,\n executeAction,\n selectedEntity,\n handleOnClose,\n entityAttributes,\n foreignKeyData,\n loadingContent,\n fetchEntityData,\n skeleton,\n showError,\n crudTableEditionData,\n crudTableFormData,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n udpFieldInfos\n } = props;\n const classes = useStyles();\n const [width, setWidth] = useState(600);\n const [buttonLabel, setButtonLabel] = useState('');\n const [onSubmit, setOnSubmit] = useState(\n () => () => console.warn('onSubmit not set')\n );\n const [additionalOnClose, setAdditionalOnClose] = useState();\n const [otherSideSheetProps, setOtherSideSheetProps] = useState({});\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\n const successAction = getSuccessAction(closeSnackbar);\n const { t } = useTranslation();\n const user = useUser();\n\n const setSelectedNodeForStore = useActionStore(\n (state) => state.setSelectedNode\n );\n const selectedNodeFromStore = useActionStore((state) => state.selectedNode);\n\n const promotedMethodPageId = useMemo(() => {\n if (action?.value) {\n if (selectedEntity?.unityBaseUpdateMethod?.apiMethodId === action.value) {\n return selectedEntity.unityBaseUpdateMethod.pageId;\n } else if (\n selectedEntity?.unityBaseCreateMethod?.apiMethodId === action.value\n ) {\n return selectedEntity.unityBaseCreateMethod.pageId;\n }\n }\n return '';\n }, [selectedEntity, action]);\n\n const [{ data: page, loading: loadingPage }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${action?.parameters?.pageId || promotedMethodPageId}`,\n {},\n !!!action?.parameters?.pageId && !!!promotedMethodPageId,\n false\n );\n\n const onCreate = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseCreateMethod && action?.value) {\n if (selectedEntity.unityBaseCreateMethod.apiMethodId === action.value) {\n return await executeAction(data, action.value);\n } else {\n showError();\n }\n }\n },\n [action, executeAction, selectedEntity, showError]\n );\n\n const onUpdate = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseUpdateMethod && action?.value) {\n if (selectedEntity.unityBaseUpdateMethod.apiMethodId === action.value) {\n return await executeAction(data, action.value);\n } else {\n showError();\n }\n }\n },\n [action, executeAction, selectedEntity, showError]\n );\n\n const handleFetchEntityData = useCallback(async () => {\n if (selectedEntity?.unityBaseGetAllMethod) {\n const data = {};\n const response = await fetchEntityData({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200 && selectedNodeObj) {\n const updatedNode = response.data.find(\n (d) => d.id === selectedNodeObj.id\n );\n\n const updatedSelectedNode = { ...selectedNodeFromStore };\n updatedSelectedNode.nodeObj = updatedNode;\n setSelectedNodeForStore(updatedSelectedNode);\n }\n }\n }, [\n enqueueSnackbar,\n fetchEntityData,\n selectedEntity,\n selectedNodeObj,\n setSelectedNodeForStore,\n selectedNodeFromStore\n ]);\n\n const handleOnCreate = useCallback(\n async (values) => {\n if (selectedEntity && selectedEntity?.unityBaseCreateMethod) {\n const entityName = selectedEntity?.entityName;\n if (selectedEntity.unityBaseCreateMethod) {\n const data = { requestBody: values };\n const response = await onCreate({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been created`)\n : t(`Entity has been created`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n }\n }\n } else {\n enqueueSnackbar(t(`Unable to retrieve entity methods`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }\n },\n [enqueueSnackbar, onCreate, selectedEntity, successAction, t]\n );\n\n const handleOnUpdate = useCallback(\n async (values, primaryKeyValues) => {\n if (selectedEntity && selectedEntity?.unityBaseUpdateMethod) {\n const entityName = selectedEntity?.entityName;\n\n if (selectedEntity.unityBaseUpdateMethod) {\n // Get primary key value object using path parameters and merge with data\n const pathObject = getPathObject(\n selectedEntity.unityBaseUpdateMethod.pathParameters,\n primaryKeyValues\n );\n const data = { ...pathObject, requestBody: values };\n const response = await onUpdate({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been updated`)\n : t(`Entity has been updated`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n\n handleFetchEntityData();\n }\n }\n } else {\n enqueueSnackbar(t(`Unable to retrieve entity methods`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }\n },\n [\n selectedEntity,\n onUpdate,\n enqueueSnackbar,\n t,\n successAction,\n handleFetchEntityData\n ]\n );\n\n const handleOnCloseSideSheet = useCallback(() => {\n if (additionalOnClose) {\n additionalOnClose();\n }\n handleOnClose();\n }, [additionalOnClose, handleOnClose]);\n\n // const primaryKeyValues = useMemo(\n // () => getPrimaryKeyValues(entityAttributes, null),\n // [entityAttributes]\n // );\n\n // @TODO: Need to add a check if a promoted method for specific Entity has a static page\n // linked to it. It can fall back to it if there is no actions page\n const content = useMemo(() => {\n if (page) {\n return (\n <DndProvider backend={HTML5Backend}>\n <PageContainer\n user={user}\n key={action?.actionId}\n pageData={page}\n widgetParams={{\n pageId: page?.pageId,\n contentId: selectedNode?.properties?.searchValue,\n nodeObj: selectedNode?.nodeObj,\n parentNodeObj: selectedNodeParent?.nodeObj,\n inquiryParams: selectedNode?.inquiryParams,\n refreshTree: refreshTree,\n requiredFieldsMap: action?.parameters?.requiredFieldMapping || {},\n setSideSheetWidth: setWidth,\n setSideSheetButtonLabel: setButtonLabel,\n setSideSheetOnSubmit: setOnSubmit,\n setSideSheetAdditionalOnClose: setAdditionalOnClose,\n setSideSheetProps: setOtherSideSheetProps,\n closeSideSheet: handleOnClose,\n onCreate: onCreate,\n onUpdate: onUpdate\n }}\n disableMargins={true}\n />\n </DndProvider>\n );\n } else {\n return (\n <ActionForm\n key={action?.actionId}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n onCreate={handleOnCreate}\n closeSideSheet={handleOnClose}\n onUpdate={handleOnUpdate}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n udpFieldInfos={udpFieldInfos}\n />\n );\n }\n }, [\n action,\n crudTableEditionData,\n crudTableFormData,\n entityAttributes,\n foreignKeyData,\n handleOnClose,\n handleOnCreate,\n handleOnUpdate,\n selectedNode,\n selectedNodeParent,\n refreshTree,\n user,\n page,\n onCreate,\n onUpdate,\n udpFieldInfos\n ]);\n\n const sideSheetTitle = useMemo(() => {\n if (action?.parameters?.pageDisplayName) {\n return action.parameters.pageDisplayName;\n } else if (page) {\n return page?.name;\n } else {\n return (\n (action?.actionTypeId === NodeActionEnums.Create\n ? 'Add new '\n : 'Edit ') +\n (action?.parameters?.entityName ?? actionPanel?.entityName)\n );\n }\n }, [action, actionPanel, page]);\n\n return (\n <SideSheet\n open={open}\n title={t(sideSheetTitle)}\n buttonLabel={t(buttonLabel)}\n onSubmit={onSubmit}\n onClose={handleOnCloseSideSheet}\n width={width}\n {...otherSideSheetProps}\n >\n {loadingContent || loadingPage ? (\n <>\n {skeleton.map((sk) => sk)}\n <LayoutUnit unit='md' />\n <Skeleton variant='rect' className={classes.skeletonButton} />\n </>\n ) : (\n content\n )}\n </SideSheet>\n );\n};\n\nActionSideSheet.propTypes = {\n /**\n * User object\n */\n user: PropTypes.object,\n /**\n * boolean to open/close sidesheet\n */\n open: PropTypes.bool,\n /**\n * dispatch function\n */\n dispatch: PropTypes.func,\n /**\n * selected action object\n */\n action: PropTypes.object,\n /**\n * action panels array\n */\n actionPanels: PropTypes.array,\n /**\n * catalog object\n */\n catalog: PropTypes.object,\n /**\n * Selected node object\n */\n selectedNodeObj: PropTypes.object\n};\n","import { makeStyles } from '@material-ui/core';\nimport { Skeleton } from '@material-ui/lab';\nimport { useSnackbar } from 'notistack';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { ActionSplitScreen } from './ActionSplitScreen';\nimport { ActionModal } from './ActionModal';\nimport { ActionPanelPlacement } from './ActionPanelPlacement';\nimport { ActionSideSheet } from './ActionSideSheet';\nimport { apiMutate } from '../utilities/useAxiosMutate';\nimport {\n getPathObject,\n getPrimaryKeyValues\n} from '../utilities/maintenanceEngine/CrudBrowserUtilities';\nimport { getSuccessAction } from '../UI/SuccessAction';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { toLowerFirstChar } from '../utilities/input/StringUtilities';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { useCrudActions } from '../hooks/crudActions';\nimport { useActionStore } from '../stores/actionStore';\nimport { useShellStore } from '../stores/shellStore';\nimport { usePromotedMethodEntity } from '../hooks/usePromotedMethodEntity';\nimport { getSanitizedName } from '../utilities/entities/entityUtilities';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\nimport { executeQueryAdHoc } from '../udp/utilities/methodUtils';\nimport { ConfigService } from '../configService';\n\nconst useStyles = makeStyles((theme) => ({}));\n\nconst FIELD_NUMBER = 10;\n\nexport const ActionWrapper = (props) => {\n const {\n actionState,\n actionPanel,\n dispatch,\n catalog,\n executeAction,\n splitScreenBody,\n entityAttributes,\n foreignKeyData,\n setForeignKeyData,\n crudTableEditionData,\n crudTableFormData,\n globalActions\n } = props;\n const classes = useStyles();\n\n const { getFKData } = useCrudActions();\n\n const { enqueueSnackbar, closeSnackbar } = useSnackbar();\n const successAction = getSuccessAction(closeSnackbar);\n const { t } = useTranslation();\n const [fkMethodEntities, setFKMethodEntities] = useState([]);\n const [loadingContent, setLoadingContent] = useState(true);\n const [udpFieldInfos, setUdpFieldInfos] = useState([]);\n\n const selectedNode = useActionStore((state) => state.selectedNode);\n const currentContainerId = useShellStore((state) => state.currentContainerId);\n\n const { data: udpOjectFieldInfo } = usePromotedMethodEntity(\n 'UdpObjectFieldInfo',\n true\n );\n\n const entityName = useMemo(() => {\n return actionPanel\n ? actionPanel.entityName\n : actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n ?.properties?.catalogReturnObject;\n }, [actionPanel, actionState, currentContainerId]);\n\n const [{ data: selectedEntity }] = useAxiosGet(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${catalog?.apiCatalogId}/promotedMethodEntities/${entityName}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {},\n !!!catalog?.apiCatalogId || !!!entityName,\n false\n );\n\n const getMetaDataForUdpField = useCallback(\n async (entityName) => {\n let fieldInfos = [];\n if (udpOjectFieldInfo?.unityBaseSearchMethod?.apiMethodId) {\n const filterElements = [\n {\n searchField: 'ObjectInfo.SanitizedName',\n searchOperator: '=',\n searchValue: getSanitizedName(entityName)\n }\n ];\n const requestObj = getSearchObject(filterElements, 1, 50, true);\n\n await executeQueryAdHoc(\n { data: requestObj },\n udpOjectFieldInfo.unityBaseSearchMethod.apiMethodId\n ).then((resp) => {\n fieldInfos = resp.data?.pageList;\n });\n }\n return fieldInfos;\n },\n [udpOjectFieldInfo]\n );\n\n const fetchEntityData = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseGetAllMethod)\n return await executeAction(\n data,\n selectedEntity.unityBaseGetAllMethod.apiMethodId\n );\n },\n [executeAction, selectedEntity]\n );\n\n const showError = useCallback(() => {\n enqueueSnackbar(t(`Invalid action value.`), {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n }, [enqueueSnackbar, t]);\n\n const getFKMethodEntities = useCallback(\n async (attributes) => {\n if (!attributes || !catalog) {\n return [];\n }\n let fkData = [];\n\n for (const attr of attributes) {\n // check if there is a property with this childEntity\n if (attr?.extendedProperties?.childEntity) {\n // get the list of child entity field names from the Keys array\n const ceFieldsArr = [];\n Object.keys(attr.extendedProperties.childEntityAssoc || {}).length &&\n !attr.extendedProperties.childEntityAssoc.UdpType &&\n attr.extendedProperties.childEntityAssoc.Keys.forEach(\n (value, i) => {\n const name = value.split(',')[0];\n if (name) {\n // check name string: if 1 word, lowercase. if 2 words, lower first char\n ceFieldsArr.push({\n idx: i,\n name: /^[A-Z]*$/.test(name)\n ? name.toLowerCase()\n : toLowerFirstChar(name)\n });\n }\n }\n );\n\n // find the child entity attribute\n const ceAttr = attributes.find((p) =>\n ceFieldsArr.find(\n (cef) => cef.name === p.name && !p?.extendedProperties?.identifier\n )\n );\n\n if (ceAttr) {\n // get list of entity if ceProp exists\n await apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apicatalog/${catalog.apiCatalogId}/promotedMethodEntities/${attr.reference}/product/${ConfigService.config.UNITY_PRODUCT_ID}`,\n {\n method: 'get'\n },\n {}\n ).then((resp) => {\n if (resp && resp.data) {\n fkData.push({ fkName: ceAttr.name, entity: resp.data });\n }\n });\n }\n }\n }\n setFKMethodEntities(fkData);\n },\n [catalog]\n );\n\n const handleOnClose = useCallback(\n (type, entity) => {\n dispatch({ type: type, entity });\n },\n [dispatch]\n );\n\n const onDelete = useCallback(\n async (data) => {\n if (selectedEntity?.unityBaseDeleteMethod) {\n if (\n selectedEntity.unityBaseDeleteMethod.apiMethodId ===\n actionState?.modal?.action?.value\n ) {\n return await executeAction(data, actionState?.modal?.action?.value);\n } else {\n showError();\n }\n }\n },\n [actionState, executeAction, selectedEntity, showError]\n );\n\n const handleOnDelete = useCallback(\n async (value) => {\n if (selectedEntity) {\n const entityName = selectedEntity?.entityName;\n\n // Get primary key value object using path parameters and merge with data\n const primaryKeyValues = getPrimaryKeyValues(entityAttributes, value);\n const pathObject = getPathObject(\n selectedEntity?.unityBaseDeleteMethod.pathParameters,\n primaryKeyValues\n );\n\n if (selectedEntity?.unityBaseDeleteMethod) {\n const data = { ...pathObject };\n const response = await onDelete({ data }).catch((res) => {\n enqueueSnackbar(res.message, {\n variant: 'error',\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n }\n });\n });\n\n if (response?.status === 200) {\n enqueueSnackbar(\n entityName\n ? t(`${entityName} has been deleted`)\n : t(`Entity has been deleted`),\n {\n anchorOrigin: {\n vertical: 'top',\n horizontal: 'center'\n },\n action: successAction\n }\n );\n if (\n actionState?.menuListState &&\n actionState?.menuListState?.menuList.length > 0\n ) {\n const handleRemoveMenuItem =\n actionState?.menuListState?.handleRemoveMenuItem;\n if (handleRemoveMenuItem) {\n handleRemoveMenuItem(actionState?.menuListState?.menuList);\n }\n }\n fetchEntityData({ data: {} });\n }\n }\n }\n },\n [\n actionState,\n enqueueSnackbar,\n entityAttributes,\n fetchEntityData,\n onDelete,\n selectedEntity,\n successAction,\n t\n ]\n );\n\n const skeleton = useMemo(() => {\n const skeletonArr = [];\n for (let i = 0; i < FIELD_NUMBER; i++) {\n skeletonArr.push(\n <>\n <Skeleton key={i} variant='rect' className={classes.skeleton} />\n <LayoutUnit unit='xxs' />\n </>\n );\n }\n return skeletonArr;\n }, [classes]);\n\n useEffect(() => {\n if (entityAttributes) {\n getFKMethodEntities(entityAttributes);\n setLoadingContent(false);\n }\n }, [entityAttributes, getFKMethodEntities]);\n\n useEffect(() => {\n if (entityAttributes && fkMethodEntities && fkMethodEntities.length > 0) {\n getFKData(fkMethodEntities, setForeignKeyData, enqueueSnackbar);\n }\n }, [\n enqueueSnackbar,\n entityAttributes,\n fkMethodEntities,\n getFKData,\n setForeignKeyData\n ]);\n\n useEffect(() => {\n const setFieldInfos = async () => {\n if(!entityName) return;\n let response = await getMetaDataForUdpField(entityName);\n setUdpFieldInfos(response);\n };\n if (udpOjectFieldInfo?.unityBaseSearchMethod?.apiMethodId) {\n setFieldInfos();\n }\n }, [getMetaDataForUdpField, udpOjectFieldInfo, entityName]);\n\n return (\n <>\n <ActionSplitScreen\n body={\n <>\n {splitScreenBody}\n <ActionPanelPlacement\n actionPanels={actionState?.actionPanels[currentContainerId || 0]}\n showInquiryHeaderActions={actionState?.showInquiryHeaderActions}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNode\n }\n globalActions={globalActions}\n />\n </>\n }\n open={actionState?.splitScreen?.open}\n action={actionState?.splitScreen?.action}\n type={actionState?.splitScreen?.type}\n params={actionState?.splitScreen?.params}\n executeAction={executeAction}\n actionPanel={actionPanel}\n selectedNodeObj={selectedNode?.nodeObj}\n menuNodeList={actionState?.menuListState?.menuList}\n sidebarEntity={selectedEntity}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n }\n selectedNodeParent={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNodeParent\n }\n refreshTree={\n actionState?.inquiryParams[currentContainerId || 0]?.refreshTree\n }\n />\n <ActionSideSheet\n key={actionState?.sideSheet?.action?.actionId}\n open={actionState?.sideSheet?.open}\n dispatch={dispatch}\n action={actionState?.sideSheet?.action}\n actionPanel={actionPanel}\n selectedNodeObj={selectedNode?.nodeObj}\n executeAction={executeAction}\n selectedEntity={selectedEntity}\n handleOnClose={() => {\n const sideSheet = { open: false, action: null };\n handleOnClose('OPEN_SIDESHEET', sideSheet);\n }}\n entityAttributes={entityAttributes}\n foreignKeyData={foreignKeyData}\n loadingContent={loadingContent}\n fetchEntityData={fetchEntityData}\n skeleton={skeleton}\n showError={showError}\n crudTableEditionData={crudTableEditionData}\n crudTableFormData={crudTableFormData}\n selectedNode={\n actionState?.inquiryParams[currentContainerId || 0]?.selectedNode\n }\n selectedNodeParent={\n actionState?.inquiryParams[currentContainerId || 0]\n ?.selectedNodeParent\n }\n refreshTree={\n actionState?.inquiryParams[currentContainerId || 0]?.refreshTree\n }\n udpFieldInfos={udpFieldInfos}\n />\n <ActionModal\n open={actionState?.modal?.open}\n action={actionState?.modal?.action}\n title={actionState?.modal?.title + selectedEntity?.entityName}\n message={t(\n `Are you sure you want to delete this ${selectedEntity?.entityName}?`\n )}\n confirmAction={() => handleOnDelete(selectedNode?.nodeObj)}\n handleOnClose={() => {\n const modal = { open: false, action: null };\n handleOnClose('OPEN_MODAL', modal);\n }}\n showError={showError}\n />\n </>\n );\n};\n\nActionWrapper.propTypes = {\n actionState: PropTypes.object,\n actionPanel: PropTypes.object,\n dispatch: PropTypes.func,\n catalog: PropTypes.object,\n executeAction: PropTypes.func,\n user: PropTypes.object,\n splitScreenBody: PropTypes.object\n};\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { t as ConfigService } from "./configService-C4uoG3wj.js";
2
- import { k as SeverityTypeEnums } from "./unitySystemEnums-DM5vXR_m.js";
2
+ import { A as SeverityTypeEnums } from "./unitySystemEnums-e5F9Jr7m.js";
3
3
  import { t as useAxiosGet } from "./useAxiosGet-vvPjwB4W.js";
4
4
  import { t as StatusChip } from "./StatusChip-DZAN88VU.js";
5
5
  import { n as executeQueryInstance } from "./methodUtils-Cwo_kmVX.js";
6
- import { t as getThresholdStatus } from "./aggregateUtils-BCO2GaVq.js";
6
+ import { t as getThresholdStatus } from "./aggregateUtils-C5GwQct7.js";
7
7
  import React, { memo, useEffect, useMemo, useState } from "react";
8
8
  import { ButtonBase, CircularProgress, Typography, makeStyles } from "@material-ui/core";
9
9
  import PropTypes from "prop-types";
@@ -239,4 +239,4 @@ AggregateChip.propTypes = {
239
239
 
240
240
  //#endregion
241
241
  export { AlertPill as n, AggregateChip as t };
242
- //# sourceMappingURL=AggregateChip-CMsjzRuS.js.map
242
+ //# sourceMappingURL=AggregateChip-VJ-QIBJt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AggregateChip-CMsjzRuS.js","names":[],"sources":["../src/UI/dataDisplay/entityHeader/ui/AlertPill.jsx","../src/UI/utilityDisplay/AggregateChip.jsx"],"sourcesContent":["import React, { memo } from 'react';\nimport { ButtonBase, makeStyles } from '@material-ui/core';\nimport { Alert } from '@material-ui/lab';\nimport { SeverityTypeEnums } from '../../../../enums/unitySystemEnums';\n\n/**\n * Styles for the AlertPill component\n */\n\nconst useStyles = makeStyles((theme) => {\n const endRadius = theme.spacing(3);\n return {\n root: {\n display: 'flex',\n flexDirection: 'row',\n // borderRadius: endRadius,\n overflow: 'hidden',\n flexGrow: 0,\n alignSelf: 'start'\n },\n alertRoot: {\n // mui alert class\n padding: theme.spacing(0, 1.5, 0, 1),\n borderRadius: 0,\n '&:first-of-type': {\n borderTopLeftRadius: endRadius,\n borderBottomLeftRadius: endRadius\n },\n '&:last-of-type': {\n borderTopRightRadius: endRadius,\n borderBottomRightRadius: endRadius\n }\n },\n alertIcon: {\n // mui alert icon class\n marginRight: theme.spacing(0.5)\n },\n buttonBase: {\n borderRadius: endRadius,\n overflow: 'hidden'\n },\n defaultSeverityAlert: {\n backgroundColor: theme.palette.grey[400]\n }\n };\n});\n\n/**\n * Memoized version of the Alert component\n *\n * @param {object} props - Component props\n * @param {number} props.count - The count to display in the Alert\n * @param {boolean} props.hide - Whether the Alert should be hidden\n * @param {string} props.severity - The severity of the Alert\n * @param {object} props.alertProps - Additional props to pass to the Alert component\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @returns {JSX.Element | null} - The Alert component, or null if the count is falsy or hide is true\n */\nconst MemoizedAlert = memo((props) => {\n const { count, hide, severity, alertProps, maxCount, label } = props;\n const classes = useStyles(props);\n\n if (count && !hide) {\n let displayCount = count;\n if (maxCount && count > maxCount) {\n displayCount = `${maxCount}+`;\n }\n\n if (severity === SeverityTypeEnums.Default) {\n return (\n <Alert\n severity={SeverityTypeEnums.Info}\n {...alertProps}\n className={classes.defaultSeverityAlert}\n >\n {displayCount}\n </Alert>\n );\n }\n\n return (\n <Alert severity={severity} {...alertProps}>\n {label ? label : displayCount}\n </Alert>\n );\n }\n\n return null;\n});\n\nMemoizedAlert.displayName = 'MemoizedAlert';\n\n/**\n * The AlertPill component displays a row of Alerts, each with a count and a severity level.\n * Alerts can be hidden by setting the corresponding hide prop to true.\n *\n * @param {object} props - Component props\n * @param {function} [props.handleClick] - The click event handler.\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @param {number} props.errorCount - The count for the error Alert\n * @param {number} props.warningCount - The count for the warning Alert\n * @param {number} props.successCount - The count for the success Alert\n * @param {number} props.infoCount - The count for the info Alert\n * @param {number} props.defaultCount - The count for the default Alert\n * @param {string} props.errorLabel - The label for the error Alert\n * @param {string} props.warningLabel - The label for the warning Alert\n * @param {string} props.successLabel - The label for the success Alert\n * @param {string} props.infoLabel - The label for the info Alert\n * @param {string} props.defaultLabel - The label for the default Alert\n * @param {boolean} props.hideError - Whether the error Alert should be hidden\n * @param {boolean} props.hideWarning - Whether the warning Alert should be hidden\n * @param {boolean} props.hideSuccess - Whether the success Alert should be hidden\n * @param {boolean} props.hideInfo - Whether the info Alert should be hidden\n * @param {boolean} props.hideDefault - Whether the default Alert should be hidden\n * @param {string} props.variant - The variant of the Alert\n * @param {function} [props.handleClick] - The click event handler.\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @returns {JSX.Element} - The AlertPill component\n */\nexport const AlertPill = (props) => {\n const {\n variant = 'filled',\n handleClick,\n maxCount,\n errorCount,\n warningCount,\n successCount,\n infoCount,\n defaultCount,\n errorLabel,\n warningLabel,\n successLabel,\n infoLabel,\n defaultLabel,\n hideError = false,\n hideWarning = false,\n hideSuccess = false,\n hideInfo = false,\n hideDefault = false\n } = props;\n const classes = useStyles(props);\n\n const variantMapping = {\n filled: 'filled',\n standard: 'hint',\n outlined: 'outlined',\n text: ''\n };\n\n const alertProps = {\n variant: variantMapping[variant],\n classes: {\n root: classes.alertRoot,\n icon: classes.alertIcon\n }\n };\n\n return (\n <div className={classes.root}>\n <ButtonBase onClick={handleClick} className={classes.buttonBase}>\n <MemoizedAlert\n count={errorCount}\n hide={hideError}\n severity={SeverityTypeEnums.Error}\n alertProps={alertProps}\n maxCount={maxCount}\n label={errorLabel}\n />\n <MemoizedAlert\n count={warningCount}\n hide={hideWarning}\n severity={SeverityTypeEnums.Warning}\n alertProps={alertProps}\n maxCount={maxCount}\n label={warningLabel}\n />\n <MemoizedAlert\n count={successCount}\n hide={hideSuccess}\n severity={SeverityTypeEnums.Success}\n alertProps={alertProps}\n maxCount={maxCount}\n label={successLabel}\n />\n <MemoizedAlert\n count={infoCount}\n hide={hideInfo}\n severity={SeverityTypeEnums.Info}\n alertProps={alertProps}\n maxCount={maxCount}\n label={infoLabel}\n />\n <MemoizedAlert\n count={defaultCount}\n hide={hideDefault}\n severity={SeverityTypeEnums.Default}\n alertProps={alertProps}\n maxCount={maxCount}\n label={defaultLabel}\n />\n </ButtonBase>\n </div>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { StatusChip } from '../dataDisplay/status/StatusChip';\nimport { useAxiosGet } from '../../utilities/useAxiosGet';\nimport { Typography, CircularProgress } from '@material-ui/core';\nimport { executeQueryInstance } from '../../udp/utilities/methodUtils';\nimport { getThresholdStatus } from './utilities/aggregateUtils';\nimport { AlertPill } from '../dataDisplay/entityHeader/ui/AlertPill';\nimport { SeverityTypeEnums } from '../../enums/unitySystemEnums';\nimport { ConfigService } from '../../configService';\n\nexport const AggregateChip = (props) => {\n const {\n aggregateThresholdId,\n aggregateThresholdParamMappings,\n label,\n chipColor,\n setStatus,\n isActionable = false,\n isAlert = false,\n hideAlert = false,\n onAlertClick\n } = props;\n const [color, setColor] = useState(chipColor);\n const [aggregateValue, setAggregateValue] = useState(null);\n const [loading, setLoading] = useState(false);\n const [{ data: aggregateThreshold, loading: loadingAggregateThreshold }] =\n useAxiosGet(\n ConfigService.integrationV2ApiUrl,\n `aggregateThreshold/${aggregateThresholdId}`,\n {},\n !!!aggregateThresholdId\n );\n\n const alertDisplayLabel = useMemo(() => {\n if (!label) {\n return aggregateValue;\n }\n return `${label.replace('{value}', aggregateValue)}`;\n }, [aggregateValue, label]);\n\n useEffect(() => {\n const setAggregateData = async (apiMethodInstanceId, valueKey) => {\n setLoading(true);\n const data = aggregateThresholdParamMappings\n ? { data: aggregateThresholdParamMappings }\n : { data: {} };\n const response = await executeQueryInstance(\n data,\n apiMethodInstanceId\n ).catch((res) => setLoading(false));\n if (response?.status === 200 && valueKey) {\n const aggregateResult =\n response.data?.aggregateResults && response.data?.aggregateResults[0];\n if (aggregateResult) {\n setAggregateValue(\n aggregateResult[valueKey]\n ? Math.round(aggregateResult[valueKey])\n : ''\n );\n }\n }\n setLoading(false);\n };\n if (aggregateThreshold) {\n setAggregateData(\n aggregateThreshold.apiMethodInstanceId,\n aggregateThreshold.aggregateKey\n );\n }\n // when aggregateThresholdParamMappings changes we don't want to re-render chip\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [aggregateThreshold]);\n\n useEffect(() => {\n if (aggregateThreshold && aggregateValue) {\n const status = getThresholdStatus(aggregateThreshold, aggregateValue);\n setColor(status);\n if (setStatus) {\n setStatus(status || 'default');\n }\n }\n }, [aggregateThreshold, aggregateValue, setStatus]);\n\n if (loading || loadingAggregateThreshold) {\n return <CircularProgress size={18} />;\n }\n\n if (!color && !isAlert) {\n return (\n <Typography variant='caption2' style={{ fontSize: '0.7rem' }}>\n {label || aggregateValue}\n </Typography>\n );\n }\n\n if (isAlert) {\n return (\n <AlertPill\n handleClick={onAlertClick}\n successCount={color === SeverityTypeEnums.Success ? aggregateValue : ''}\n errorCount={color === SeverityTypeEnums.Error ? aggregateValue : ''}\n warningCount={color === SeverityTypeEnums.Warning ? aggregateValue : ''}\n infoCount={color === SeverityTypeEnums.Info ? aggregateValue : ''}\n defaultCount={!color && (aggregateValue || '')}\n successLabel={\n color === SeverityTypeEnums.Success ? alertDisplayLabel : ''\n }\n errorLabel={color === SeverityTypeEnums.Error ? alertDisplayLabel : ''}\n warningLabel={\n color === SeverityTypeEnums.Warning ? alertDisplayLabel : ''\n }\n infoLabel={color === SeverityTypeEnums.Info ? alertDisplayLabel : ''}\n defaultLabel={!color && (alertDisplayLabel || '')}\n hideSuccess={color === SeverityTypeEnums.Success ? hideAlert : false}\n hideError={color === SeverityTypeEnums.Error ? hideAlert : false}\n hideWarning={color === SeverityTypeEnums.Warning ? hideAlert : false}\n hideInfo={color === SeverityTypeEnums.Info ? hideAlert : false}\n hideDefault={!color ? hideAlert : false}\n />\n );\n }\n\n return label || aggregateValue ? (\n <StatusChip\n label={label || aggregateValue}\n status={color}\n useSmallChip={true}\n isActionable={isActionable}\n />\n ) : null;\n};\n\nAggregateChip.propTypes = {\n /**\n * Color of chip\n */\n chipColor: PropTypes.oneOf([\n 'success',\n 'error',\n 'warning',\n 'info',\n undefined,\n null\n ]),\n /**\n * Id of AggregateThreshold\n */\n aggregateThresholdId: PropTypes.oneOf([PropTypes.string, undefined, null])\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"AggregateChip-VJ-QIBJt.js","names":[],"sources":["../src/UI/dataDisplay/entityHeader/ui/AlertPill.jsx","../src/UI/utilityDisplay/AggregateChip.jsx"],"sourcesContent":["import React, { memo } from 'react';\nimport { ButtonBase, makeStyles } from '@material-ui/core';\nimport { Alert } from '@material-ui/lab';\nimport { SeverityTypeEnums } from '../../../../enums/unitySystemEnums';\n\n/**\n * Styles for the AlertPill component\n */\n\nconst useStyles = makeStyles((theme) => {\n const endRadius = theme.spacing(3);\n return {\n root: {\n display: 'flex',\n flexDirection: 'row',\n // borderRadius: endRadius,\n overflow: 'hidden',\n flexGrow: 0,\n alignSelf: 'start'\n },\n alertRoot: {\n // mui alert class\n padding: theme.spacing(0, 1.5, 0, 1),\n borderRadius: 0,\n '&:first-of-type': {\n borderTopLeftRadius: endRadius,\n borderBottomLeftRadius: endRadius\n },\n '&:last-of-type': {\n borderTopRightRadius: endRadius,\n borderBottomRightRadius: endRadius\n }\n },\n alertIcon: {\n // mui alert icon class\n marginRight: theme.spacing(0.5)\n },\n buttonBase: {\n borderRadius: endRadius,\n overflow: 'hidden'\n },\n defaultSeverityAlert: {\n backgroundColor: theme.palette.grey[400]\n }\n };\n});\n\n/**\n * Memoized version of the Alert component\n *\n * @param {object} props - Component props\n * @param {number} props.count - The count to display in the Alert\n * @param {boolean} props.hide - Whether the Alert should be hidden\n * @param {string} props.severity - The severity of the Alert\n * @param {object} props.alertProps - Additional props to pass to the Alert component\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @returns {JSX.Element | null} - The Alert component, or null if the count is falsy or hide is true\n */\nconst MemoizedAlert = memo((props) => {\n const { count, hide, severity, alertProps, maxCount, label } = props;\n const classes = useStyles(props);\n\n if (count && !hide) {\n let displayCount = count;\n if (maxCount && count > maxCount) {\n displayCount = `${maxCount}+`;\n }\n\n if (severity === SeverityTypeEnums.Default) {\n return (\n <Alert\n severity={SeverityTypeEnums.Info}\n {...alertProps}\n className={classes.defaultSeverityAlert}\n >\n {displayCount}\n </Alert>\n );\n }\n\n return (\n <Alert severity={severity} {...alertProps}>\n {label ? label : displayCount}\n </Alert>\n );\n }\n\n return null;\n});\n\nMemoizedAlert.displayName = 'MemoizedAlert';\n\n/**\n * The AlertPill component displays a row of Alerts, each with a count and a severity level.\n * Alerts can be hidden by setting the corresponding hide prop to true.\n *\n * @param {object} props - Component props\n * @param {function} [props.handleClick] - The click event handler.\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @param {number} props.errorCount - The count for the error Alert\n * @param {number} props.warningCount - The count for the warning Alert\n * @param {number} props.successCount - The count for the success Alert\n * @param {number} props.infoCount - The count for the info Alert\n * @param {number} props.defaultCount - The count for the default Alert\n * @param {string} props.errorLabel - The label for the error Alert\n * @param {string} props.warningLabel - The label for the warning Alert\n * @param {string} props.successLabel - The label for the success Alert\n * @param {string} props.infoLabel - The label for the info Alert\n * @param {string} props.defaultLabel - The label for the default Alert\n * @param {boolean} props.hideError - Whether the error Alert should be hidden\n * @param {boolean} props.hideWarning - Whether the warning Alert should be hidden\n * @param {boolean} props.hideSuccess - Whether the success Alert should be hidden\n * @param {boolean} props.hideInfo - Whether the info Alert should be hidden\n * @param {boolean} props.hideDefault - Whether the default Alert should be hidden\n * @param {string} props.variant - The variant of the Alert\n * @param {function} [props.handleClick] - The click event handler.\n * @param {number} props.maxCount - Max count to show before displaying as \"{maxCount}+\"\n * @returns {JSX.Element} - The AlertPill component\n */\nexport const AlertPill = (props) => {\n const {\n variant = 'filled',\n handleClick,\n maxCount,\n errorCount,\n warningCount,\n successCount,\n infoCount,\n defaultCount,\n errorLabel,\n warningLabel,\n successLabel,\n infoLabel,\n defaultLabel,\n hideError = false,\n hideWarning = false,\n hideSuccess = false,\n hideInfo = false,\n hideDefault = false\n } = props;\n const classes = useStyles(props);\n\n const variantMapping = {\n filled: 'filled',\n standard: 'hint',\n outlined: 'outlined',\n text: ''\n };\n\n const alertProps = {\n variant: variantMapping[variant],\n classes: {\n root: classes.alertRoot,\n icon: classes.alertIcon\n }\n };\n\n return (\n <div className={classes.root}>\n <ButtonBase onClick={handleClick} className={classes.buttonBase}>\n <MemoizedAlert\n count={errorCount}\n hide={hideError}\n severity={SeverityTypeEnums.Error}\n alertProps={alertProps}\n maxCount={maxCount}\n label={errorLabel}\n />\n <MemoizedAlert\n count={warningCount}\n hide={hideWarning}\n severity={SeverityTypeEnums.Warning}\n alertProps={alertProps}\n maxCount={maxCount}\n label={warningLabel}\n />\n <MemoizedAlert\n count={successCount}\n hide={hideSuccess}\n severity={SeverityTypeEnums.Success}\n alertProps={alertProps}\n maxCount={maxCount}\n label={successLabel}\n />\n <MemoizedAlert\n count={infoCount}\n hide={hideInfo}\n severity={SeverityTypeEnums.Info}\n alertProps={alertProps}\n maxCount={maxCount}\n label={infoLabel}\n />\n <MemoizedAlert\n count={defaultCount}\n hide={hideDefault}\n severity={SeverityTypeEnums.Default}\n alertProps={alertProps}\n maxCount={maxCount}\n label={defaultLabel}\n />\n </ButtonBase>\n </div>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { StatusChip } from '../dataDisplay/status/StatusChip';\nimport { useAxiosGet } from '../../utilities/useAxiosGet';\nimport { Typography, CircularProgress } from '@material-ui/core';\nimport { executeQueryInstance } from '../../udp/utilities/methodUtils';\nimport { getThresholdStatus } from './utilities/aggregateUtils';\nimport { AlertPill } from '../dataDisplay/entityHeader/ui/AlertPill';\nimport { SeverityTypeEnums } from '../../enums/unitySystemEnums';\nimport { ConfigService } from '../../configService';\n\nexport const AggregateChip = (props) => {\n const {\n aggregateThresholdId,\n aggregateThresholdParamMappings,\n label,\n chipColor,\n setStatus,\n isActionable = false,\n isAlert = false,\n hideAlert = false,\n onAlertClick\n } = props;\n const [color, setColor] = useState(chipColor);\n const [aggregateValue, setAggregateValue] = useState(null);\n const [loading, setLoading] = useState(false);\n const [{ data: aggregateThreshold, loading: loadingAggregateThreshold }] =\n useAxiosGet(\n ConfigService.integrationV2ApiUrl,\n `aggregateThreshold/${aggregateThresholdId}`,\n {},\n !!!aggregateThresholdId\n );\n\n const alertDisplayLabel = useMemo(() => {\n if (!label) {\n return aggregateValue;\n }\n return `${label.replace('{value}', aggregateValue)}`;\n }, [aggregateValue, label]);\n\n useEffect(() => {\n const setAggregateData = async (apiMethodInstanceId, valueKey) => {\n setLoading(true);\n const data = aggregateThresholdParamMappings\n ? { data: aggregateThresholdParamMappings }\n : { data: {} };\n const response = await executeQueryInstance(\n data,\n apiMethodInstanceId\n ).catch((res) => setLoading(false));\n if (response?.status === 200 && valueKey) {\n const aggregateResult =\n response.data?.aggregateResults && response.data?.aggregateResults[0];\n if (aggregateResult) {\n setAggregateValue(\n aggregateResult[valueKey]\n ? Math.round(aggregateResult[valueKey])\n : ''\n );\n }\n }\n setLoading(false);\n };\n if (aggregateThreshold) {\n setAggregateData(\n aggregateThreshold.apiMethodInstanceId,\n aggregateThreshold.aggregateKey\n );\n }\n // when aggregateThresholdParamMappings changes we don't want to re-render chip\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [aggregateThreshold]);\n\n useEffect(() => {\n if (aggregateThreshold && aggregateValue) {\n const status = getThresholdStatus(aggregateThreshold, aggregateValue);\n setColor(status);\n if (setStatus) {\n setStatus(status || 'default');\n }\n }\n }, [aggregateThreshold, aggregateValue, setStatus]);\n\n if (loading || loadingAggregateThreshold) {\n return <CircularProgress size={18} />;\n }\n\n if (!color && !isAlert) {\n return (\n <Typography variant='caption2' style={{ fontSize: '0.7rem' }}>\n {label || aggregateValue}\n </Typography>\n );\n }\n\n if (isAlert) {\n return (\n <AlertPill\n handleClick={onAlertClick}\n successCount={color === SeverityTypeEnums.Success ? aggregateValue : ''}\n errorCount={color === SeverityTypeEnums.Error ? aggregateValue : ''}\n warningCount={color === SeverityTypeEnums.Warning ? aggregateValue : ''}\n infoCount={color === SeverityTypeEnums.Info ? aggregateValue : ''}\n defaultCount={!color && (aggregateValue || '')}\n successLabel={\n color === SeverityTypeEnums.Success ? alertDisplayLabel : ''\n }\n errorLabel={color === SeverityTypeEnums.Error ? alertDisplayLabel : ''}\n warningLabel={\n color === SeverityTypeEnums.Warning ? alertDisplayLabel : ''\n }\n infoLabel={color === SeverityTypeEnums.Info ? alertDisplayLabel : ''}\n defaultLabel={!color && (alertDisplayLabel || '')}\n hideSuccess={color === SeverityTypeEnums.Success ? hideAlert : false}\n hideError={color === SeverityTypeEnums.Error ? hideAlert : false}\n hideWarning={color === SeverityTypeEnums.Warning ? hideAlert : false}\n hideInfo={color === SeverityTypeEnums.Info ? hideAlert : false}\n hideDefault={!color ? hideAlert : false}\n />\n );\n }\n\n return label || aggregateValue ? (\n <StatusChip\n label={label || aggregateValue}\n status={color}\n useSmallChip={true}\n isActionable={isActionable}\n />\n ) : null;\n};\n\nAggregateChip.propTypes = {\n /**\n * Color of chip\n */\n chipColor: PropTypes.oneOf([\n 'success',\n 'error',\n 'warning',\n 'info',\n undefined,\n null\n ]),\n /**\n * Id of AggregateThreshold\n */\n aggregateThresholdId: PropTypes.oneOf([PropTypes.string, undefined, null])\n};\n"],"mappings":"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"}
@@ -68,4 +68,4 @@ const AmChart = (props) => {
68
68
 
69
69
  //#endregion
70
70
  export { AmChart as t };
71
- //# sourceMappingURL=AmChart-CGJv7thW.js.map
71
+ //# sourceMappingURL=AmChart-CVhkLkUN.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AmChart-CGJv7thW.js","names":["chart: ReactElement | null"],"sources":["../src/UI/dataDisplay/visualization/amCharts/AmChart.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\nimport { makeStyles } from '@material-ui/core';\nimport { UdpBarChart } from '../../../charts/amcharts/UdpBarChart';\nimport { UdpLineChart } from '../../../charts/amcharts/UdpLineChart';\nimport { UdpDistributionChart } from '../../../charts/amcharts/UdpDistributionChart';\nimport { UdpDonutChart } from '../../../charts/amcharts/UdpDonutChart';\nimport { UdpSankeyChart } from '../../../charts/amcharts/UdpSankeyChart';\nimport { UdpXYMultiSeriesChart } from '../../../charts/amcharts/UdpXYMultiSeriesChart';\n\nconst useStyles = makeStyles(() => ({\n chartWrapper: {\n height: '100%',\n width: '100%'\n }\n}));\n\ntype ChartType =\n | 'sankey'\n | 'bar'\n | 'donut'\n | 'line'\n | 'distribution'\n | 'xyMultiSeries';\n\nexport interface AmChartProps {\n chartType: ChartType;\n data?: any;\n dataMappingField?: any;\n labelFormat?: any;\n tooltipTextFormat?: any;\n [key: string]: any;\n}\n\nexport const AmChart = (props: AmChartProps): ReactElement | null => {\n const {\n chartType,\n data,\n dataMappingField,\n labelFormat,\n tooltipTextFormat,\n ...otherProps\n } = props;\n const classes = useStyles();\n\n const chart: ReactElement | null = useMemo(() => {\n switch (chartType) {\n case 'sankey':\n return (\n <UdpSankeyChart\n data={data}\n valueField={dataMappingField?.valueField}\n targetIdField={dataMappingField?.targetIdField}\n sourceIdField={dataMappingField?.sourceIdField}\n labelFormat={labelFormat}\n tooltipTextFormat={tooltipTextFormat}\n {...otherProps}\n />\n );\n case 'bar':\n return (\n <UdpBarChart\n data={data}\n valueField={dataMappingField?.valueField}\n labelField={dataMappingField?.labelField}\n {...otherProps}\n />\n );\n case 'donut':\n return (\n <UdpDonutChart\n data={data}\n valueField={dataMappingField?.valueField}\n labelField={dataMappingField?.labelField}\n hideLegend={false}\n {...otherProps}\n />\n );\n case 'line':\n return (\n <UdpLineChart\n data={data}\n xAxisField={dataMappingField?.xAxisField}\n yAxisField={dataMappingField?.yAxisField}\n {...otherProps}\n />\n );\n case 'distribution':\n return (\n <UdpDistributionChart\n data={data}\n valueField={dataMappingField?.valueField}\n {...otherProps}\n />\n );\n case 'xyMultiSeries':\n return (\n <UdpXYMultiSeriesChart\n hideLegend={false}\n xAxes={[]}\n yAxes={[]}\n series={[]}\n data={data}\n {...otherProps}\n />\n );\n default:\n return null;\n }\n }, [\n chartType,\n data,\n dataMappingField,\n labelFormat,\n otherProps,\n tooltipTextFormat\n ]);\n\n return <div className={classes.chartWrapper}>{chart}</div>;\n};\n"],"mappings":";;;;;AASA,MAAM,YAAY,kBAAkB,EAClC,cAAc;CACZ,QAAQ;CACR,OAAO;CACR,EACF,EAAE;AAmBH,MAAa,WAAW,UAA6C;CACnE,MAAM,EACJ,WACA,MACA,kBACA,aACA,mBACA,GAAG,eACD;CACJ,MAAM,UAAU,WAAW;CAE3B,MAAMA,QAA6B,cAAc;AAC/C,UAAQ,WAAR;GACE,KAAK,SACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,eAAe,kBAAkB;IACjC,eAAe,kBAAkB;IACpB;IACM;IACnB,GAAI;KACJ;GAEN,KAAK,MACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,QACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,YAAY;IACZ,GAAI;KACJ;GAEN,KAAK,OACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,eACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,gBACH,QACE,oCAAC;IACC,YAAY;IACZ,OAAO,EAAE;IACT,OAAO,EAAE;IACT,QAAQ,EAAE;IACJ;IACN,GAAI;KACJ;GAEN,QACE,QAAO;;IAEV;EACD;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,QAAO,oCAAC,SAAI,WAAW,QAAQ,gBAAe,MAAY"}
1
+ {"version":3,"file":"AmChart-CVhkLkUN.js","names":["chart: ReactElement | null"],"sources":["../src/UI/dataDisplay/visualization/amCharts/AmChart.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\nimport { makeStyles } from '@material-ui/core';\nimport { UdpBarChart } from '../../../charts/amcharts/UdpBarChart';\nimport { UdpLineChart } from '../../../charts/amcharts/UdpLineChart';\nimport { UdpDistributionChart } from '../../../charts/amcharts/UdpDistributionChart';\nimport { UdpDonutChart } from '../../../charts/amcharts/UdpDonutChart';\nimport { UdpSankeyChart } from '../../../charts/amcharts/UdpSankeyChart';\nimport { UdpXYMultiSeriesChart } from '../../../charts/amcharts/UdpXYMultiSeriesChart';\n\nconst useStyles = makeStyles(() => ({\n chartWrapper: {\n height: '100%',\n width: '100%'\n }\n}));\n\ntype ChartType =\n | 'sankey'\n | 'bar'\n | 'donut'\n | 'line'\n | 'distribution'\n | 'xyMultiSeries';\n\nexport interface AmChartProps {\n chartType: ChartType;\n data?: any;\n dataMappingField?: any;\n labelFormat?: any;\n tooltipTextFormat?: any;\n [key: string]: any;\n}\n\nexport const AmChart = (props: AmChartProps): ReactElement | null => {\n const {\n chartType,\n data,\n dataMappingField,\n labelFormat,\n tooltipTextFormat,\n ...otherProps\n } = props;\n const classes = useStyles();\n\n const chart: ReactElement | null = useMemo(() => {\n switch (chartType) {\n case 'sankey':\n return (\n <UdpSankeyChart\n data={data}\n valueField={dataMappingField?.valueField}\n targetIdField={dataMappingField?.targetIdField}\n sourceIdField={dataMappingField?.sourceIdField}\n labelFormat={labelFormat}\n tooltipTextFormat={tooltipTextFormat}\n {...otherProps}\n />\n );\n case 'bar':\n return (\n <UdpBarChart\n data={data}\n valueField={dataMappingField?.valueField}\n labelField={dataMappingField?.labelField}\n {...otherProps}\n />\n );\n case 'donut':\n return (\n <UdpDonutChart\n data={data}\n valueField={dataMappingField?.valueField}\n labelField={dataMappingField?.labelField}\n hideLegend={false}\n {...otherProps}\n />\n );\n case 'line':\n return (\n <UdpLineChart\n data={data}\n xAxisField={dataMappingField?.xAxisField}\n yAxisField={dataMappingField?.yAxisField}\n {...otherProps}\n />\n );\n case 'distribution':\n return (\n <UdpDistributionChart\n data={data}\n valueField={dataMappingField?.valueField}\n {...otherProps}\n />\n );\n case 'xyMultiSeries':\n return (\n <UdpXYMultiSeriesChart\n hideLegend={false}\n xAxes={[]}\n yAxes={[]}\n series={[]}\n data={data}\n {...otherProps}\n />\n );\n default:\n return null;\n }\n }, [\n chartType,\n data,\n dataMappingField,\n labelFormat,\n otherProps,\n tooltipTextFormat\n ]);\n\n return <div className={classes.chartWrapper}>{chart}</div>;\n};\n"],"mappings":";;;;;AASA,MAAM,YAAY,kBAAkB,EAClC,cAAc;CACZ,QAAQ;CACR,OAAO;CACR,EACF,EAAE;AAmBH,MAAa,WAAW,UAA6C;CACnE,MAAM,EACJ,WACA,MACA,kBACA,aACA,mBACA,GAAG,eACD;CACJ,MAAM,UAAU,WAAW;CAE3B,MAAMA,QAA6B,cAAc;AAC/C,UAAQ,WAAR;GACE,KAAK,SACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,eAAe,kBAAkB;IACjC,eAAe,kBAAkB;IACpB;IACM;IACnB,GAAI;KACJ;GAEN,KAAK,MACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,QACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,YAAY;IACZ,GAAI;KACJ;GAEN,KAAK,OACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,eACH,QACE,oCAAC;IACO;IACN,YAAY,kBAAkB;IAC9B,GAAI;KACJ;GAEN,KAAK,gBACH,QACE,oCAAC;IACC,YAAY;IACZ,OAAO,EAAE;IACT,OAAO,EAAE;IACT,QAAQ,EAAE;IACJ;IACN,GAAI;KACJ;GAEN,QACE,QAAO;;IAEV;EACD;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,QAAO,oCAAC,SAAI,WAAW,QAAQ,gBAAe,MAAY"}
@@ -1,11 +1,11 @@
1
1
  import { r as useAgGridApi, t as AgTable } from "./AgTable-B2xTzAm2.js";
2
2
  import { t as ConfigService } from "./configService-C4uoG3wj.js";
3
3
  import { t as apiMutate } from "./useAxiosMutate-DcLxzykX.js";
4
- import { n as useActions } from "./useActions-Db2P12NS.js";
4
+ import { n as useActions } from "./useActions-CxDs7v3s.js";
5
5
  import { t as useAxiosGet } from "./useAxiosGet-vvPjwB4W.js";
6
6
  import { t as GridGroupingSidebar } from "./GridGroupingSidebar-D-ozXbff.js";
7
- import { a as GridActionBar, i as GridPrimaryBar, n as ChipSection, r as SaveViewFormDialog, t as BulkActionsGridButton } from "./BulkActionsGridButton-BqQVX9xA.js";
8
- import { i as onFirstDataRendered } from "./GridFunctions-Chj_vcVe.js";
7
+ import { a as GridActionBar, i as GridPrimaryBar, n as ChipSection, r as SaveViewFormDialog, t as BulkActionsGridButton } from "./BulkActionsGridButton-h4xG4HUd.js";
8
+ import { i as onFirstDataRendered } from "./GridFunctions-CRTDIOe0.js";
9
9
  import { t as FilterOperators } from "./SearchOperator-D9838PIe.js";
10
10
  import React, { useCallback, useEffect, useState } from "react";
11
11
  import { Grow, LinearProgress, makeStyles } from "@material-ui/core";
@@ -455,4 +455,4 @@ AmbientGridTemplate.propTypes = {
455
455
 
456
456
  //#endregion
457
457
  export { AmbientGridTemplate as t };
458
- //# sourceMappingURL=AmbientGridTemplate-d8EoaQH7.js.map
458
+ //# sourceMappingURL=AmbientGridTemplate-VCZhDcIf.js.map