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
@@ -7,10 +7,11 @@ import { i as useHandleAxiosSnackbar } from "./apiHelpers-B_cn3sZo.js";
7
7
  import { t as useUser } from "./useUser-wpHGo6jU.js";
8
8
  import { n as useAxiosMutate, t as apiMutate } from "./useAxiosMutate-DcLxzykX.js";
9
9
  import { t as FluentTextFieldAutoComplete } from "./FluentTextFieldAutoComplete-5Hp3qpk6.js";
10
- import { M as TransactionActionTypeEnums, N as TransactionEventTypeEnums, P as TransactionUiActionTypeEnums, z as UdpSearchEnums } from "./unitySystemEnums-DM5vXR_m.js";
10
+ import { r as getSanitizedName } from "./entityUtilities-_8w-Zjs3.js";
11
+ import { B as UdpSearchEnums, F as TransactionUiActionTypeEnums, N as TransactionActionTypeEnums, P as TransactionEventTypeEnums, n as CardinalityTypeEnums } from "./unitySystemEnums-e5F9Jr7m.js";
11
12
  import { t as useCatalogStore } from "./catalogStore-DP2GxpTJ.js";
12
13
  import { t as Typography$1 } from "./Typography-BMsa1JYd.js";
13
- import { S as getIconFromName } from "./TreeUtilities-CujOFOPm.js";
14
+ import { S as getIconFromName } from "./TreeUtilities-kiPupulY.js";
14
15
  import { n as SideSheet } from "./SideSheet-C-rILQqR.js";
15
16
  import { t as useAxiosGet } from "./useAxiosGet-vvPjwB4W.js";
16
17
  import { t as StatusChip } from "./StatusChip-DZAN88VU.js";
@@ -18,27 +19,31 @@ import { t as UdpTabs } from "./UdpTabs-DVZGEwOC.js";
18
19
  import { t as PageContainer } from "./PageContainer-CT3n_ngH.js";
19
20
  import { t as Adornment } from "./Adornment-Ciq1X7he.js";
20
21
  import { t as AmbientCard } from "./AmbientCard-CLW4bPCu.js";
22
+ import { t as FluentDatePicker } from "./FluentDatePicker-C6WEywwM.js";
21
23
  import { t as FluentDialog } from "./FluentDialog-B5ZxvX1E.js";
22
24
  import { t as LinearProgress$1 } from "./LinearProgress-DM2DNWCe.js";
23
25
  import { t as FluentTextField } from "./FluentTextField-CXvZawOG.js";
26
+ import { t as useAuthedUser } from "./useAuthedUser-CN4neRNZ.js";
24
27
  import { t as SearchMethodUdpGrid } from "./SearchMethodUdpGrid-QU4FZ0Gk.js";
25
28
  import { t as Divider$1 } from "./Divider-DNtKMiBL.js";
26
- import { r as getLocalizedDateTimeString } from "./dateUtils-ChKgbJ9U.js";
29
+ import { i as getLocalizedDateTimeString, t as formatDate } from "./dateUtils-ftAbP-Mv.js";
27
30
  import { t as EmptyStateDisplay } from "./EmptyStateDisplay-Dpho9v6S.js";
28
31
  import { n as AmbientList } from "./dataDisplay-v5yiN4js.js";
29
- import { t as FileViewer } from "./fileViewer-Dk6GMaSl.js";
32
+ import { t as FileViewer } from "./fileViewer-8-Eh4vLL.js";
33
+ import { n as UdpTabPanel } from "./tabs-DjfuHMHP.js";
34
+ import { n as UdpTimeline } from "./timeline-CuKsHylI.js";
30
35
  import { t as UdpActionCard } from "./UdpActionCard-UM7xbcyR.js";
31
- import React$1, { React as React$2, useCallback, useEffect, useMemo, useRef, useState } from "react";
32
- import { CircularProgress, makeStyles } from "@material-ui/core";
36
+ import { t as Attachments } from "./uploader-C36UIFAF.js";
37
+ import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from "react";
38
+ import { CircularProgress, FormControlLabel, LinearProgress, Switch, makeStyles } from "@material-ui/core";
33
39
  import { useSnackbar } from "notistack";
34
40
  import { ContactIcon, DocumentIcon, FileImageIcon, PDFIcon, ViewIcon, WordDocumentIcon } from "@fluentui/react-icons";
35
41
  import { useTranslation } from "react-i18next";
36
42
  import { create } from "zustand";
37
43
  import { devtools } from "zustand/middleware";
38
44
  import jsonLogic from "json-logic-js";
39
- import { ConfigService } from "udp-react-stencil-component-library";
45
+ import { ConfigService, UdpAttachmentItem, UdpTimelineConnector, UdpTimelineDot, UdpTimelineItem, UdpTimelineSeparator } from "udp-react-stencil-component-library";
40
46
  import "./udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.css";
41
- import "date-fns/locale";
42
47
  import "./udp/pages/UdpTransactionsPage/sidesheets/EditTransaction.css";
43
48
  import "./udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFooterItem.css";
44
49
  import "./udp/pages/UdpTransactionsPage/UdpTransactionsPage.css";
@@ -113,6 +118,16 @@ const useTransactionEngine = (transactionTypeId) => {
113
118
  const getUiActionRenderPageId = useCallback((uiActionType) => {
114
119
  return (transactionType?.udpTransactionTypeUdpTransactionUiAction?.find((action) => action.transactionUiActionTypeId === uiActionType))?.parameters?.pageId || null;
115
120
  }, [transactionType]);
121
+ const getTransactionTypeLabel = useCallback((udpTransaction) => {
122
+ if (!transactionType?.domainFieldLabel) return null;
123
+ return udpTransaction?.entityBusinessObject ? udpTransaction.entityBusinessObject[transactionType.domainFieldLabel] : null;
124
+ }, [transactionType]);
125
+ const checkIfTransactionIsClosed = useCallback((udpTransaction) => {
126
+ if (!hasClosedStatus) return false;
127
+ const closedStatus = transactionType?.udpTransactionTypeUdpTransactionTypeStatus?.find((status) => status.isClosedStatus);
128
+ if (!closedStatus) return false;
129
+ return closedStatus.transactionTypeStatusId === udpTransaction?.currentStatusId;
130
+ }, [hasClosedStatus, transactionType]);
116
131
  useEffect(() => {
117
132
  if (catalogsMap && currentApiCatalogId && transactionType) {
118
133
  const apiCatalog = catalogsMap[currentApiCatalogId];
@@ -135,7 +150,9 @@ const useTransactionEngine = (transactionTypeId) => {
135
150
  getRequiredFields,
136
151
  hasClosedStatus,
137
152
  transactionTypeGridColumns,
138
- getUiActionRenderPageId
153
+ getUiActionRenderPageId,
154
+ checkIfTransactionIsClosed,
155
+ getTransactionTypeLabel
139
156
  };
140
157
  };
141
158
 
@@ -146,7 +163,7 @@ const UdpTransactionGrid = (props) => {
146
163
  const [dialogOpen, setDialogOpen] = useState(false);
147
164
  const [selectedTransaction, setSelectedTransaction] = useState(null);
148
165
  const { t } = useTranslation();
149
- const { hasRevisions, transactionTypeGridColumns } = useTransactionEngine(transactionTypeId);
166
+ const { hasRevisions, transactionTypeGridColumns, getUiActionRenderPageId } = useTransactionEngine(transactionTypeId);
150
167
  const { handleErrorSnackbar, handleSuccessSnackbar } = useHandleAxiosSnackbar();
151
168
  const [{ data, loading: deleteLoading, error: deleteError }, deleteTransaction] = useAxiosMutate(`${ConfigService$1.productV1ApiUrl}`, `udptransaction/${selectedTransaction?.transactionId}`, { method: "delete" }, {});
152
169
  const handleDialogClose = () => {
@@ -171,11 +188,15 @@ const UdpTransactionGrid = (props) => {
171
188
  handleSuccessSnackbar,
172
189
  t
173
190
  ]);
191
+ const pdfViewPageId = useMemo(() => {
192
+ return getUiActionRenderPageId(TransactionUiActionTypeEnums.Render_View_Pdf_Page);
193
+ }, [getUiActionRenderPageId]);
174
194
  const columnDefs = useMemo(() => {
175
195
  const initialColumnDefs = [
176
196
  {
177
197
  headerName: t("Transaction Id"),
178
- field: "transactionId"
198
+ field: "transactionId",
199
+ hide: true
179
200
  },
180
201
  {
181
202
  headerName: t("Created On"),
@@ -234,7 +255,8 @@ const UdpTransactionGrid = (props) => {
234
255
  iconName: "view",
235
256
  handleOnClick: (e, params) => {
236
257
  openViewTransaction(params?.data);
237
- }
258
+ },
259
+ disabled: !pdfViewPageId
238
260
  },
239
261
  {
240
262
  id: 2,
@@ -246,6 +268,15 @@ const UdpTransactionGrid = (props) => {
246
268
  },
247
269
  {
248
270
  id: 3,
271
+ title: t("Create Revision"),
272
+ iconName: "add",
273
+ handleOnClick: (e, params) => {
274
+ openCreateRevision(params?.data);
275
+ },
276
+ disabled: !hasRevisions
277
+ },
278
+ {
279
+ id: 4,
249
280
  title: t("Cancel"),
250
281
  iconName: "close16",
251
282
  handleOnClick: (e, params) => {
@@ -277,30 +308,9 @@ const UdpTransactionGrid = (props) => {
277
308
  openAttachmentTransaction,
278
309
  openWorkflowActionTransaction,
279
310
  domainColumnFormatters,
280
- transactionTypeGridColumns
281
- ]);
282
- const secondaryActionButtons = useMemo(() => {
283
- const buttons = [{
284
- label: t("Print"),
285
- iconName: "printer",
286
- onClick: () => {}
287
- }];
288
- if (hasRevisions) buttons.unshift({
289
- label: t("Create Revision"),
290
- iconName: "edit",
291
- onClick: () => {
292
- const selectedNodes = gridApiRef?.current?.getSelectedNodes();
293
- const selectedData = selectedNodes?.length === 1 ? selectedNodes[0].data : null;
294
- if (selectedData) openCreateRevision(selectedData);
295
- else console.warn("Please select a row to create a revision.");
296
- }
297
- });
298
- return buttons;
299
- }, [
300
- hasRevisions,
301
- t,
311
+ transactionTypeGridColumns,
302
312
  openCreateRevision,
303
- gridApiRef
313
+ hasRevisions
304
314
  ]);
305
315
  const headerConfig = {
306
316
  title: domainName,
@@ -310,8 +320,7 @@ const UdpTransactionGrid = (props) => {
310
320
  onClick: () => {
311
321
  openAddTransaction();
312
322
  }
313
- },
314
- secondaryActionButtons
323
+ }
315
324
  };
316
325
  const gridFunctions = [
317
326
  { name: "agGridExport" },
@@ -321,7 +330,7 @@ const UdpTransactionGrid = (props) => {
321
330
  const gridOptions = useMemo(() => {
322
331
  return {
323
332
  pagination: true,
324
- rowSelection: { mode: "singleRow" }
333
+ rowSelection: "none"
325
334
  };
326
335
  }, []);
327
336
  const searchMethodConfig = useMemo(() => {
@@ -353,14 +362,14 @@ const UdpTransactionGrid = (props) => {
353
362
  customSearchObject: combinedSearchObject
354
363
  };
355
364
  }, [transactionTypeId, searchMethodObject]);
356
- return /* @__PURE__ */ React$1.createElement(React$1.Fragment, null, transactionTypeLoading && /* @__PURE__ */ React$1.createElement(LinearProgress$1, null), /* @__PURE__ */ React$1.createElement(SearchMethodUdpGrid, {
365
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, transactionTypeLoading && /* @__PURE__ */ React.createElement(LinearProgress$1, null), /* @__PURE__ */ React.createElement(SearchMethodUdpGrid, {
357
366
  gridHeaderConfig: headerConfig,
358
367
  gridFunctions,
359
368
  gridOptions,
360
369
  columnDefs,
361
370
  searchMethodConfig,
362
371
  gridApiCallback: handleGridApiCallback
363
- }), /* @__PURE__ */ React$1.createElement(FluentDialog, {
372
+ }), /* @__PURE__ */ React.createElement(FluentDialog, {
364
373
  title: t(`Cancel Transaction`),
365
374
  message: `Are you sure you want to cancel the transaction for ${selectedTransaction?.entityBusinessKey || ""}?`,
366
375
  labelOne: t("Confirm"),
@@ -378,7 +387,7 @@ var UdpTransactionGrid_default = UdpTransactionGrid;
378
387
  //#region src/udp/pages/UdpTransactionsPage/sidesheets/ViewTransaction.jsx
379
388
  const ViewTransaction = (props) => {
380
389
  const { transaction } = props;
381
- return /* @__PURE__ */ React$1.createElement(React$1.Fragment, null, /* @__PURE__ */ React$1.createElement(FileViewer, {
390
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(FileViewer, {
382
391
  data: {
383
392
  filePath: "",
384
393
  fileExtension: "pdf"
@@ -389,8 +398,8 @@ const ViewTransaction = (props) => {
389
398
  var ViewTransaction_default = ViewTransaction;
390
399
 
391
400
  //#endregion
392
- //#region src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.jsx
393
- const AttachmentList = (props) => {
401
+ //#region src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.jsx
402
+ const AttachmentTransactionAttachmentList = (props) => {
394
403
  const { attachments, setSelectedAttachment } = props;
395
404
  const formattedAttachments = useMemo(() => {
396
405
  return attachments.map((attachment) => ({
@@ -421,12 +430,12 @@ const AttachmentList = (props) => {
421
430
  maxHeight: 900
422
431
  }));
423
432
  };
424
- var AttachmentList_default = AttachmentList;
433
+ var AttachmentTransactionAttachmentList_default = AttachmentTransactionAttachmentList;
425
434
 
426
435
  //#endregion
427
436
  //#region src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.jsx
428
437
  const AttachmentTransaction = (props) => {
429
- const { transaction } = props;
438
+ const { transaction, attachmentRef } = props;
430
439
  const [selectedAttachment, setSelectedAttachment] = useState("");
431
440
  const attachments = transaction?.udpTransactionUdpTransactionAttachment;
432
441
  const [{ data: attachmentFileInfo }, refetchattachmentFileInfo] = useAxiosGet(`${process.env.REACT_APP_PRODUCT_API_BASE}`, `UdpTransactionAttachment/${selectedAttachment?.transactionAttachmentId}/udpDriveFile/download`, {}, true);
@@ -486,7 +495,21 @@ const AttachmentTransaction = (props) => {
486
495
  },
487
496
  divider: { "& MuiDivider-root": { backgroundColor: "var(--gray-02)" } }
488
497
  }))();
489
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: classStyles.sidesheet }, /* @__PURE__ */ React.createElement("div", { className: classStyles.attachmentListContainer }, /* @__PURE__ */ React.createElement("div", { className: classStyles.attachmentListHeader }, /* @__PURE__ */ React.createElement("p", { className: classStyles.attachmentListHeaderPrimaryText }, "Attachments"), /* @__PURE__ */ React.createElement("p", { className: classStyles.attachmentListHeaderSecondaryText }, attachments.length + " file(s) attached")), /* @__PURE__ */ React.createElement("div", { className: classStyles.divider }, /* @__PURE__ */ React.createElement(Divider$1, null)), /* @__PURE__ */ React.createElement(AttachmentList_default, {
498
+ useImperativeHandle(attachmentRef, () => ({ downloadSelectedFile: async () => {
499
+ if (!selectedAttachment) return;
500
+ try {
501
+ const url = (await apiMutate(ConfigService$1.productV1ApiUrl, `UdpTransactionAttachment/${selectedAttachment.transactionAttachmentId}/udpDriveFile/download`, {})).data.link;
502
+ const link = document.createElement("a");
503
+ link.href = url;
504
+ link.download = selectedAttachment.fileName ?? selectedAttachment.name;
505
+ document.body.appendChild(link);
506
+ link.click();
507
+ document.body.removeChild(link);
508
+ } catch (e) {
509
+ console.error("Download failed", e);
510
+ }
511
+ } }));
512
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: classStyles.sidesheet }, /* @__PURE__ */ React.createElement("div", { className: classStyles.attachmentListContainer }, /* @__PURE__ */ React.createElement("div", { className: classStyles.attachmentListHeader }, /* @__PURE__ */ React.createElement("p", { className: classStyles.attachmentListHeaderPrimaryText }, "Attachments"), /* @__PURE__ */ React.createElement("p", { className: classStyles.attachmentListHeaderSecondaryText }, attachments.length + " file(s) attached")), /* @__PURE__ */ React.createElement("div", { className: classStyles.divider }, /* @__PURE__ */ React.createElement(Divider$1, null)), /* @__PURE__ */ React.createElement(AttachmentTransactionAttachmentList_default, {
490
513
  transaction,
491
514
  attachments,
492
515
  setSelectedAttachment
@@ -501,8 +524,8 @@ var AttachmentTransaction_default = AttachmentTransaction;
501
524
  //#endregion
502
525
  //#region src/udp/pages/UdpTransactionsPage/components/UdpTransactionCustomPage.jsx
503
526
  const UdpTransactionCustomPage = (props) => {
504
- const { pageId, transactionTypeId, transactionUiActionType, formRef, setHandleOnSubmit, transaction, transactionTypeTransactionActionId } = props;
505
- const { getUiActionRenderPageId } = useTransactionEngine(transactionTypeId);
527
+ const { pageId, transactionTypeId, transactionUiActionType, formRef, transaction, transactionTypeTransactionActionId } = props;
528
+ const { getUiActionRenderPageId, getHiddenFields, getRequiredFields } = useTransactionEngine(transactionTypeId);
506
529
  const { handleErrorSnackbar, handleSuccessSnackbar } = useHandleAxiosSnackbar();
507
530
  const { t } = useTranslation();
508
531
  const executeCreateTransactionAction = useCallback(async (data) => apiMutate(ConfigService.productV1ApiUrl, `udpTransaction/transactionType/${transactionTypeId}/create`, { method: "post" }, data), [transactionTypeId]);
@@ -548,13 +571,12 @@ const UdpTransactionCustomPage = (props) => {
548
571
  t,
549
572
  transactionTypeTransactionActionId
550
573
  ]);
551
- useEffect(() => {
552
- if (setHandleOnSubmit) setHandleOnSubmit(() => formRef?.current?.form?.submit);
553
- }, [
554
- onSubmit,
555
- setHandleOnSubmit,
556
- formRef
557
- ]);
574
+ const isFieldRequired = useCallback((fieldName) => {
575
+ return getRequiredFields(transaction)?.includes(fieldName);
576
+ }, [getRequiredFields, transaction]);
577
+ const isFieldHidden = useCallback((fieldName) => {
578
+ return getHiddenFields(transaction)?.includes(fieldName);
579
+ }, [getHiddenFields, transaction]);
558
580
  const transactionPageId = useMemo(() => {
559
581
  if (pageId) return pageId;
560
582
  return getUiActionRenderPageId(transactionUiActionType);
@@ -564,13 +586,17 @@ const UdpTransactionCustomPage = (props) => {
564
586
  pageId
565
587
  ]);
566
588
  if (!transactionPageId) return null;
567
- return /* @__PURE__ */ React$1.createElement(Form, {
589
+ return /* @__PURE__ */ React.createElement(Form, {
568
590
  onSubmit,
569
591
  ref: formRef
570
- }, /* @__PURE__ */ React$1.createElement(PageContainer, {
592
+ }, /* @__PURE__ */ React.createElement(PageContainer, {
571
593
  pageId: transactionPageId,
572
594
  updateLocationState: false,
573
- widgetParams: transaction
595
+ widgetParams: {
596
+ transaction,
597
+ isFieldRequired,
598
+ isFieldHidden
599
+ }
574
600
  }));
575
601
  };
576
602
  var UdpTransactionCustomPage_default = UdpTransactionCustomPage;
@@ -579,7 +605,7 @@ var UdpTransactionCustomPage_default = UdpTransactionCustomPage;
579
605
  //#region src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.jsx
580
606
  const TransactionActionButton = ({ icon, primaryText, secondaryText, onClick, action }) => {
581
607
  const actionCardIcon = useMemo(() => getIconFromName(icon), [icon]);
582
- return /* @__PURE__ */ React$2.createElement(UdpActionCard, {
608
+ return /* @__PURE__ */ React.createElement(UdpActionCard, {
583
609
  icon: actionCardIcon ? actionCardIcon : DocumentIcon,
584
610
  primaryText,
585
611
  secondaryText,
@@ -594,7 +620,6 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
594
620
  const [selectedAction, setSelectedAction] = useState(null);
595
621
  const [sideSheetOpen, setSideSheetOpen] = useState(false);
596
622
  const [loading, setLoading] = useState(false);
597
- const [handleSubmitAction, setHandleSubmitAction] = useState(null);
598
623
  const formRef = useRef(null);
599
624
  const { getTransactionTypeTransactionActions } = useTransactionEngine(transaction.transactionTypeId);
600
625
  const handleOnCloseSideSheet = useCallback(() => {
@@ -602,7 +627,7 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
602
627
  }, []);
603
628
  const handleSubmitWorkflowAction = useCallback(async () => {
604
629
  setLoading(true);
605
- if (handleSubmitAction) await handleSubmitAction();
630
+ await formRef.current?.form?.submit();
606
631
  setLoading(false);
607
632
  handleOnCloseSideSheet();
608
633
  closeSideSheet();
@@ -610,8 +635,8 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
610
635
  }, [
611
636
  handleOnCloseSideSheet,
612
637
  refreshGridData,
613
- handleSubmitAction,
614
- closeSideSheet
638
+ closeSideSheet,
639
+ formRef
615
640
  ]);
616
641
  const transactionTypeTransactionActions = useMemo(() => {
617
642
  return getTransactionTypeTransactionActions(transaction, TransactionEventTypeEnums.Sidesheet) || [];
@@ -675,7 +700,7 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
675
700
  }, [handleDialogOpen]);
676
701
  const TransactionActionButtons = useMemo(() => {
677
702
  if (!transactionTypeTransactionActions.length) return null;
678
- return transactionTypeTransactionActions?.map((action) => /* @__PURE__ */ React$2.createElement(TransactionActionButton, {
703
+ return transactionTypeTransactionActions?.map((action) => /* @__PURE__ */ React.createElement(TransactionActionButton, {
679
704
  key: action.transactionTypeTransactionActionId,
680
705
  primaryText: action.name,
681
706
  secondaryText: action.description,
@@ -684,7 +709,7 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
684
709
  action
685
710
  }));
686
711
  }, [transactionTypeTransactionActions, handleOnActionClick]);
687
- return /* @__PURE__ */ React$2.createElement(React$2.Fragment, null, /* @__PURE__ */ React$2.createElement("div", { className: "transaction-action-buttons-container" }, TransactionActionButtons), dialogUserStrings && /* @__PURE__ */ React$2.createElement(FluentDialog, {
712
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "transaction-action-buttons-container" }, TransactionActionButtons), dialogUserStrings && /* @__PURE__ */ React.createElement(FluentDialog, {
688
713
  title: i18n(`Are you sure you want to proceed with \"${dialogUserStrings.title}\"?`),
689
714
  message: dialogUserStrings.message,
690
715
  labelOne: i18n("Confirm"),
@@ -693,7 +718,7 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
693
718
  actionTwo: handleDialogClose,
694
719
  open: dialogOpen,
695
720
  handleClose: handleDialogClose
696
- }), /* @__PURE__ */ React$2.createElement(SideSheet, {
721
+ }), /* @__PURE__ */ React.createElement(SideSheet, {
697
722
  open: sideSheetOpen,
698
723
  title: "",
699
724
  onClose: handleOnCloseSideSheet,
@@ -702,27 +727,131 @@ const WorkflowActions = ({ transaction, closeSideSheet, refreshGridData }) => {
702
727
  onSubmit: handleSubmitWorkflowAction,
703
728
  progress: loading,
704
729
  variant: "indeterminate"
705
- }, selectedAction && selectedAction.parameters?.pageId && /* @__PURE__ */ React$2.createElement(UdpTransactionCustomPage_default, {
730
+ }, selectedAction && selectedAction.parameters?.pageId && /* @__PURE__ */ React.createElement(UdpTransactionCustomPage_default, {
706
731
  pageId: selectedAction.parameters.pageId,
707
732
  transaction,
708
733
  formRef,
709
- setHandleOnSubmit: setHandleSubmitAction,
710
734
  transactionTypeTransactionActionId: selectedAction.transactionTypeTransactionActionId
711
735
  })));
712
736
  };
713
737
  var WorkflowActions_default = WorkflowActions;
714
738
 
739
+ //#endregion
740
+ //#region src/uploader/utils/allowedFileProperties.js
741
+ const MAX_FILE_SIZE_MB = 30;
742
+ const allowedExtensions = [
743
+ "pdf",
744
+ "xlsx",
745
+ "xls",
746
+ "xlsm",
747
+ "csv",
748
+ "jpg",
749
+ "jpeg",
750
+ "png",
751
+ "tif",
752
+ "tiff",
753
+ "doc",
754
+ "docx",
755
+ "docm",
756
+ "ppt",
757
+ "pptm",
758
+ "rtf"
759
+ ];
760
+
715
761
  //#endregion
716
762
  //#region src/udp/pages/UdpTransactionsPage/sidesheets/EditTransactionHeaderItem.jsx
717
763
  const EditTransactionHeaderItem = (props) => {
718
764
  const { label, value, statusChip } = props;
719
- return /* @__PURE__ */ React$1.createElement("div", { className: "transaction-sidesheet-header-item" }, /* @__PURE__ */ React$1.createElement(Typography$1, { variant: "caption" }, label), statusChip ? /* @__PURE__ */ React$1.createElement("div", { className: "transaction-sidesheet-header-item-status" }, /* @__PURE__ */ React$1.createElement(StatusChip, statusChip)) : /* @__PURE__ */ React$1.createElement(Typography$1, { variant: "body1" }, value));
765
+ return /* @__PURE__ */ React.createElement("div", { className: "transaction-sidesheet-header-item" }, /* @__PURE__ */ React.createElement(Typography$1, { variant: "caption" }, label), statusChip ? /* @__PURE__ */ React.createElement("div", { className: "transaction-sidesheet-header-item-status" }, /* @__PURE__ */ React.createElement(StatusChip, statusChip)) : /* @__PURE__ */ React.createElement(Typography$1, { variant: "body1" }, value));
720
766
  };
721
767
  var EditTransactionHeaderItem_default = EditTransactionHeaderItem;
722
768
 
723
769
  //#endregion
724
- //#region src/udp/pages/UdpTransactionsPage/sidesheets/transactionNote/TransactionNote.jsx
725
- const useStyles$1 = makeStyles((theme) => ({
770
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.jsx
771
+ const TransactionTimelineItem = (props) => {
772
+ const { title, description, date, status, onClick } = props;
773
+ return /* @__PURE__ */ React.createElement(UdpTimelineItem, {
774
+ dotShape: "default",
775
+ onItemClick: onClick,
776
+ clickable: true,
777
+ statusLabel: status
778
+ }, /* @__PURE__ */ React.createElement(UdpTimelineSeparator, { slot: "separator" }, /* @__PURE__ */ React.createElement(UdpTimelineConnector, null), /* @__PURE__ */ React.createElement(UdpTimelineDot, {
779
+ color: "primary",
780
+ shape: "default",
781
+ size: "medium"
782
+ })), /* @__PURE__ */ React.createElement("span", { slot: "title" }, title), /* @__PURE__ */ React.createElement("span", { slot: "content" }, date), /* @__PURE__ */ React.createElement("span", { slot: "caption" }, description));
783
+ };
784
+
785
+ //#endregion
786
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.jsx
787
+ const TransactionTimeline = (props) => {
788
+ const { transactionId } = props;
789
+ const { t } = useTranslation();
790
+ const searchObj = useMemo(() => {
791
+ return {
792
+ eagerLoad: true,
793
+ pageNumber: 0,
794
+ pageSize: 100,
795
+ filterElements: [{
796
+ searchField: "transactionId",
797
+ searchValue: transactionId,
798
+ searchOperator: "="
799
+ }],
800
+ orderElements: [{
801
+ sortColumn: "createdOn",
802
+ sortDirection: "desc"
803
+ }],
804
+ getAll: true
805
+ };
806
+ }, [transactionId]);
807
+ const [{ data: transactionHistory, loading: isLoading }, fetchTransactionHistory] = useAxiosMutate(ConfigService$1.productV1ApiUrl, `UdpTransactionHistory/search`, {
808
+ method: "post",
809
+ data: searchObj
810
+ });
811
+ useEffect(() => {
812
+ fetchTransactionHistory();
813
+ }, [fetchTransactionHistory]);
814
+ return /* @__PURE__ */ React.createElement("div", null, isLoading ? /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(LinearProgress, null)) : transactionHistory?.pageList?.length > 0 ? /* @__PURE__ */ React.createElement(UdpTimeline, null, transactionHistory?.pageList?.map((item, index) => /* @__PURE__ */ React.createElement(TransactionTimelineItem, {
815
+ key: index,
816
+ title: item?.udpTransactionHistoryUdpTransactionTypeTransactionAction?.name ?? item?.udpTransactionHistoryUdpTransactionEventType?.name,
817
+ description: item?.changedByName ? `By ${item?.changedByName}` : null,
818
+ date: item?.createdOn ? formatDate(item?.createdOn, "dd/mm/yyyy") : null,
819
+ status: item?.udpTransactionHistoryUdpTransactionTypeStatus?.name
820
+ }))) : /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(EmptyStateDisplay, { primaryText: t("No History") })));
821
+ };
822
+
823
+ //#endregion
824
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.jsx
825
+ const TransactionAttachment = (props) => {
826
+ const { attachment, isLastItem } = props;
827
+ const [{ data: attachmentWithDownloadLink, loading: isLoading }] = useAxiosGet(ConfigService.productV1ApiUrl, `UdpTransactionAttachment/${attachment?.transactionAttachmentId}/udpDriveFile/download`, {}, !!!attachment?.transactionAttachmentId);
828
+ return /* @__PURE__ */ React.createElement(UdpAttachmentItem, {
829
+ loading: isLoading,
830
+ fileName: attachment?.fileName,
831
+ fileSize: attachment?.fileSize,
832
+ fileExtension: attachment?.extension,
833
+ uploadedBy: attachment?.updatedByName,
834
+ uploadedDate: attachment?.lastUpdated,
835
+ isLastItem,
836
+ downloadUrl: attachmentWithDownloadLink?.link
837
+ });
838
+ };
839
+
840
+ //#endregion
841
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.jsx
842
+ const TransactionAttachments = (props) => {
843
+ const { transactionAttachments, isLoading } = props;
844
+ const { t } = useTranslation();
845
+ return /* @__PURE__ */ React.createElement("div", null, isLoading ? /* @__PURE__ */ React.createElement(LinearProgress, null) : /* @__PURE__ */ React.createElement(AmbientCard, { fullWidth: true }, transactionAttachments?.pageList?.length > 0 ? transactionAttachments?.pageList?.map((attachment, index) => /* @__PURE__ */ React.createElement(TransactionAttachment, {
846
+ key: index,
847
+ attachment,
848
+ isLastItem: index === transactionAttachments?.pageList?.length - 1
849
+ })) : /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(EmptyStateDisplay, { primaryText: t("No Attachments") }))));
850
+ };
851
+
852
+ //#endregion
853
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNote.jsx
854
+ const useStyles$2 = makeStyles((theme) => ({
726
855
  titleContainer: {
727
856
  display: "flex",
728
857
  gap: "8px",
@@ -746,40 +875,122 @@ const useStyles$1 = makeStyles((theme) => ({
746
875
  }));
747
876
  const TransactionNote = (props) => {
748
877
  const { onClick, note } = props;
749
- const classes = useStyles$1();
750
- return /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement(AmbientCard, {
878
+ const classes = useStyles$2();
879
+ return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(AmbientCard, {
751
880
  fullWidth: true,
752
881
  adornment: "info",
753
882
  noAdornment: false,
754
- customAdornment: /* @__PURE__ */ React$1.createElement(Adornment, { color: "info" }),
883
+ customAdornment: /* @__PURE__ */ React.createElement(Adornment, { color: "info" }),
755
884
  removeTopLayoutUnit: true,
756
885
  removePadding: true,
757
886
  lastChildBottomPadding: "0px",
758
887
  cardContentHeight: "100%"
759
- }, /* @__PURE__ */ React$1.createElement("div", {
888
+ }, /* @__PURE__ */ React.createElement("div", {
760
889
  className: classes.card,
761
890
  onClick
762
- }, /* @__PURE__ */ React$1.createElement("div", { className: classes.titleContainer }, /* @__PURE__ */ React$1.createElement(Typography$1, { variant: "h6" }, note?.subject ?? "Transaction Note"), /* @__PURE__ */ React$1.createElement(Typography$1, {
891
+ }, /* @__PURE__ */ React.createElement("div", { className: classes.titleContainer }, /* @__PURE__ */ React.createElement(Typography$1, { variant: "h6" }, note?.subject ?? "Transaction Note"), /* @__PURE__ */ React.createElement(Typography$1, {
763
892
  variant: "caption",
764
893
  className: classes.captionText
765
- }, getLocalizedDateTimeString(note?.createdOn))), /* @__PURE__ */ React$1.createElement(Typography$1, { variant: "body1" }, note?.content ?? "This is a placeholder for the transaction note component."), /* @__PURE__ */ React$1.createElement("div", { className: classes.chipContainer }, /* @__PURE__ */ React$1.createElement(StatusChip, {
894
+ }, getLocalizedDateTimeString(note?.createdOn))), /* @__PURE__ */ React.createElement(Typography$1, { variant: "body1" }, note?.content ?? "This is a placeholder for the transaction note component."), /* @__PURE__ */ React.createElement("div", { className: classes.chipContainer }, /* @__PURE__ */ React.createElement(StatusChip, {
766
895
  label: note?.userDisplayName,
767
896
  color: "default",
768
897
  variant: "outline",
769
- icon: /* @__PURE__ */ React$1.createElement(ContactIcon, null)
898
+ icon: /* @__PURE__ */ React.createElement(ContactIcon, null)
770
899
  })))));
771
900
  };
772
901
 
773
902
  //#endregion
774
- //#region src/udp/pages/UdpTransactionsPage/sidesheets/transactionNote/TransactionNotes.jsx
903
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.jsx
904
+ const useStyles$1 = makeStyles((theme) => ({ loading: { marginBottom: theme.spacing(1) } }));
905
+ const TransactionNoteFormComponent = (props, ref) => {
906
+ const { initialValues, viewOnly, businessObjectKey, closeSideSheet, noteTypes, fetchNoteTypesLoading } = props;
907
+ const [isLoading, setIsLoading] = useState(false);
908
+ const user = useAuthedUser();
909
+ const { handleSuccessSnackbar, handleErrorSnackbar } = useHandleAxiosSnackbar();
910
+ const { t } = useTranslation();
911
+ const classes = useStyles$1();
912
+ const addTransactionNote = useCallback(async (data) => apiMutate(ConfigService$1.productV1ApiUrl, `UdpNote`, { method: "post" }, data), []);
913
+ const addNoteFiledFor = useCallback(async (data) => apiMutate(ConfigService$1.productV1ApiUrl, `UdpNoteFiledFor`, { method: "post" }, data), []);
914
+ const handleSubmitForm = useCallback(async (values) => {
915
+ setIsLoading(true);
916
+ await addTransactionNote({ data: {
917
+ typeCode: values?.noteType?.code,
918
+ subject: values?.subject,
919
+ content: values?.content,
920
+ unityUserID: user?.id,
921
+ userDisplayName: user?.name ?? ""
922
+ } }).then(async (res) => {
923
+ console.log("Transaction Note response: ", { res });
924
+ if (res?.data?.id) await addNoteFiledFor({ data: {
925
+ entityBusinessKey: businessObjectKey,
926
+ noteId: res?.data?.id
927
+ } }).then(() => {
928
+ handleSuccessSnackbar(t("Transaction note has been added successfully."));
929
+ if (closeSideSheet) closeSideSheet();
930
+ });
931
+ }).catch((res) => {
932
+ handleErrorSnackbar(res, t("Unable to add transaction note."));
933
+ });
934
+ setIsLoading(false);
935
+ }, [
936
+ addNoteFiledFor,
937
+ addTransactionNote,
938
+ businessObjectKey,
939
+ handleErrorSnackbar,
940
+ handleSuccessSnackbar,
941
+ t,
942
+ user,
943
+ closeSideSheet
944
+ ]);
945
+ return /* @__PURE__ */ React.createElement("div", null, fetchNoteTypesLoading ? /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(LinearProgress$1, null)) : /* @__PURE__ */ React.createElement("div", null, isLoading && /* @__PURE__ */ React.createElement("div", { className: classes.loading }, /* @__PURE__ */ React.createElement(LinearProgress$1, null)), /* @__PURE__ */ React.createElement(Form, {
946
+ ref,
947
+ onSubmit: handleSubmitForm,
948
+ initialValues,
949
+ id: `transactionNoteForm-${businessObjectKey}`,
950
+ render: ({ submitting }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Field, {
951
+ component: FluentTextFieldAutoComplete,
952
+ id: "noteType",
953
+ name: "noteType",
954
+ optionKey: "name",
955
+ disableClearable: true,
956
+ label: t("Type"),
957
+ options: noteTypes ?? [],
958
+ disabled: viewOnly || submitting,
959
+ onChange: () => {},
960
+ required: true
961
+ }), /* @__PURE__ */ React.createElement(Field, {
962
+ component: FluentTextField,
963
+ id: "subject",
964
+ name: "subject",
965
+ label: t("Subject"),
966
+ disabled: viewOnly || submitting,
967
+ onChange: () => {},
968
+ required: true
969
+ }), /* @__PURE__ */ React.createElement(Field, {
970
+ component: FluentTextField,
971
+ id: "content",
972
+ name: "content",
973
+ label: t("Details"),
974
+ onChange: () => {},
975
+ multiline: true,
976
+ rows: 5,
977
+ maxRows: 10,
978
+ disabled: viewOnly || submitting,
979
+ required: true
980
+ }), viewOnly && /* @__PURE__ */ React.createElement(Typography$1, { variant: "caption" }, t("Viewing note details. Use the Add Note action to create a new entry.")))
981
+ })));
982
+ };
983
+ const TransactionNoteForm = forwardRef(TransactionNoteFormComponent);
984
+
985
+ //#endregion
986
+ //#region src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNotes.jsx
775
987
  const useStyles = makeStyles((theme) => ({ notes: {
776
988
  display: "flex",
777
989
  flexDirection: "column",
778
- gap: theme.spacing(1),
779
- margin: theme.spacing(2)
990
+ gap: theme.spacing(1)
780
991
  } }));
781
992
  const TransactionNotes = (props) => {
782
- const { businessObjectKey = `Univerus.Unity.CPS.Domain.Models.UdpTransaction|0314A512-D7AF-4B46-A5F1-FBD34FBAA694` } = props;
993
+ const { businessObjectKey, refreshNotes, setRefreshNotes, noteTypes, fetchNoteTypesLoading } = props;
783
994
  const [openSideSheet, setOpenSideSheet] = useState(false);
784
995
  const [selectedNote, setSelectedNote] = useState(null);
785
996
  const [noteList, setNoteList] = useState([]);
@@ -799,11 +1010,10 @@ const TransactionNotes = (props) => {
799
1010
  getAll: true
800
1011
  };
801
1012
  }, [businessObjectKey]);
802
- const [{ data: noteFiledFor, loading: fetchNoteFiledForLoading }, fetchNoteFiledFor] = useAxiosMutate(process.env.REACT_APP_PRODUCT_API_BASE, `UdpNoteFiledFor/search`, {
1013
+ const [{ data: noteFiledFor, loading: fetchNoteFiledForLoading }, fetchNoteFiledFor] = useAxiosMutate(ConfigService$1.productV1ApiUrl, `UdpNoteFiledFor/search`, {
803
1014
  method: "post",
804
1015
  data: noteFileForSearchObj
805
1016
  });
806
- const [{ data: noteTypes, loading: fetchNoteTypesLoading }] = useAxiosGet(ConfigService$1.productV1ApiUrl, `UdpNoteType`, {});
807
1017
  const handleViewNote = useCallback((note) => {
808
1018
  setSelectedNote(note);
809
1019
  setOpenSideSheet(true);
@@ -812,12 +1022,19 @@ const TransactionNotes = (props) => {
812
1022
  setOpenSideSheet(false);
813
1023
  setSelectedNote(null);
814
1024
  }, []);
815
- const formattedSelectedNote = useMemo(() => {
816
- return selectedNote;
817
- }, [selectedNote]);
818
1025
  useEffect(() => {
819
1026
  fetchNoteFiledFor();
820
1027
  }, [fetchNoteFiledFor]);
1028
+ useEffect(() => {
1029
+ if (refreshNotes) {
1030
+ fetchNoteFiledFor();
1031
+ setRefreshNotes(false);
1032
+ }
1033
+ }, [
1034
+ fetchNoteFiledFor,
1035
+ refreshNotes,
1036
+ setRefreshNotes
1037
+ ]);
821
1038
  useEffect(() => {
822
1039
  if (!fetchNoteFiledForLoading && noteFiledFor?.pageList?.length > 0) {
823
1040
  const searchObj = {
@@ -838,55 +1055,31 @@ const TransactionNotes = (props) => {
838
1055
  }, {}).then((resp) => {
839
1056
  if (resp && resp.data) setNoteList(resp.data?.pageList);
840
1057
  else setNoteList([]);
1058
+ }).finally(() => {
1059
+ setIsLoading(false);
841
1060
  });
842
- setIsLoading(false);
843
1061
  } else setNoteList([]);
844
1062
  }, [
845
1063
  fetchNoteFiledForLoading,
846
1064
  noteFiledFor,
847
1065
  setIsLoading
848
1066
  ]);
849
- return /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement("div", { className: classes.notes }, isLoading || fetchNoteFiledForLoading ? /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement(LinearProgress$1, null)) : noteList?.length > 0 ? noteList.map((note, index) => /* @__PURE__ */ React$1.createElement(TransactionNote, {
1067
+ return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: classes.notes }, isLoading || fetchNoteFiledForLoading ? /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(LinearProgress$1, null)) : noteList?.length > 0 ? noteList.map((note, index) => /* @__PURE__ */ React.createElement(TransactionNote, {
850
1068
  key: index,
851
1069
  note,
852
1070
  onClick: () => handleViewNote(note)
853
- })) : /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement(EmptyStateDisplay, { primaryText: "No Notes" }))), /* @__PURE__ */ React$1.createElement(SideSheet, {
1071
+ })) : /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(EmptyStateDisplay, { primaryText: "No Notes" }))), /* @__PURE__ */ React.createElement(SideSheet, {
854
1072
  title: t("View Note"),
855
- width: 500,
1073
+ width: 600,
856
1074
  open: openSideSheet,
857
1075
  onClose: handleCloseSideSheet
858
- }, /* @__PURE__ */ React$1.createElement("div", null, fetchNoteTypesLoading ? /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement(LinearProgress$1, null)) : /* @__PURE__ */ React$1.createElement(Form, {
859
- onSubmit: () => {},
860
- initialValues: formattedSelectedNote
861
- }, /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement(Field, {
862
- component: FluentTextFieldAutoComplete,
863
- id: "noteType",
864
- name: "noteType",
865
- optionKey: "name",
866
- disableClearable: true,
867
- label: t("Type"),
868
- options: noteTypes ?? [],
869
- disabled: true,
870
- onChange: () => {}
871
- })), /* @__PURE__ */ React$1.createElement(Field, {
872
- component: FluentTextField,
873
- id: "subject",
874
- name: "subject",
875
- label: t("Subject"),
876
- disabled: true,
877
- onChange: () => {}
878
- }), /* @__PURE__ */ React$1.createElement(Field, {
879
- component: FluentTextField,
880
- id: "content",
881
- name: "content",
882
- slotProps: { input: { readOnly: true } },
883
- label: t("Details"),
884
- onChange: () => {},
885
- multiline: true,
886
- rows: 5,
887
- maxRows: 10,
888
- disabled: true
889
- }), /* @__PURE__ */ React$1.createElement(Typography$1, { variant: "caption" }, t("Viewing note details. Use the Add Note action to create a new entry."))))));
1076
+ }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(TransactionNoteForm, {
1077
+ initialValues: selectedNote,
1078
+ businessObjectKey,
1079
+ viewOnly: true,
1080
+ noteTypes,
1081
+ fetchNoteTypeLoading: fetchNoteTypesLoading
1082
+ }))));
890
1083
  };
891
1084
 
892
1085
  //#endregion
@@ -902,14 +1095,14 @@ let TRANSACTION_TAB = /* @__PURE__ */ function(TRANSACTION_TAB$1) {
902
1095
  //#endregion
903
1096
  //#region src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFooterItem.jsx
904
1097
  const EditTransactionDetailsFooterItem = (props) => {
905
- const { transactionTypeId, handleOnCancel, handleOnSaveChanges, handleOnCreateRevision } = props;
1098
+ const { transactionTypeId, transactionIsClosed, handleOnCancel, handleOnSaveChanges } = props;
906
1099
  const { hasRevisions } = useTransactionEngine(transactionTypeId);
907
1100
  const { t } = useTranslation();
908
- return /* @__PURE__ */ React$1.createElement("div", { className: "transaction-details-footer-item" }, /* @__PURE__ */ React$1.createElement(FluentButton, {
1101
+ return /* @__PURE__ */ React.createElement("div", { className: "transaction-details-footer-item" }, /* @__PURE__ */ React.createElement(FluentButton, {
909
1102
  variant: "outlined",
910
1103
  color: "secondary",
911
1104
  onClick: handleOnCancel
912
- }, t("Cancel")), /* @__PURE__ */ React$1.createElement(FluentButton, {
1105
+ }, t("Cancel")), !transactionIsClosed && /* @__PURE__ */ React.createElement(FluentButton, {
913
1106
  variant: "contained",
914
1107
  color: "primary",
915
1108
  onClick: handleOnSaveChanges
@@ -917,14 +1110,174 @@ const EditTransactionDetailsFooterItem = (props) => {
917
1110
  };
918
1111
  var EditTransactionDetailsFooterItem_default = EditTransactionDetailsFooterItem;
919
1112
 
1113
+ //#endregion
1114
+ //#region src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.jsx
1115
+ const EditTransactionDetailsFormFields = (props) => {
1116
+ const { transaction, fieldAttributes } = props;
1117
+ const { t } = useTranslation();
1118
+ const fieldComponentMap = {
1119
+ string: FluentTextField,
1120
+ datetime: FluentDatePicker,
1121
+ number: FluentTextField,
1122
+ bool: Switch,
1123
+ array: FluentTextFieldAutoComplete
1124
+ };
1125
+ const getEntityName = (optionValuesArr, entityId) => {
1126
+ return (optionValuesArr?.find((entity) => entity.id == entityId))?.name;
1127
+ };
1128
+ const numberDataTypes = [
1129
+ "int",
1130
+ "short",
1131
+ "long"
1132
+ ];
1133
+ const dataTypeComponentMap = (transaction$1, attribute) => {
1134
+ let formattedSanitizedName = attribute.sanitizedName.slice(0, 1).toLowerCase() + attribute.sanitizedName.slice(1);
1135
+ let formattedDataType = attribute.dataType.includes("?") ? attribute.dataType.split("?")[0].toLowerCase() : attribute.dataType.toLowerCase();
1136
+ formattedDataType = numberDataTypes.includes(formattedDataType) ? "number" : formattedDataType;
1137
+ if (attribute.sanitizedName.toLowerCase() == "id") formattedSanitizedName = formattedSanitizedName.toLowerCase();
1138
+ const isAsscoiationLabel = attribute.properties.maintainenceConfig.associationLabel;
1139
+ let fieldComponentProps = null;
1140
+ switch (formattedDataType) {
1141
+ case "number":
1142
+ fieldComponentProps = {
1143
+ initialValue: transaction$1.entityBusinessObject[formattedSanitizedName],
1144
+ type: "number",
1145
+ InputProps: { inputProps: { min: 0 } }
1146
+ };
1147
+ break;
1148
+ case "datetime":
1149
+ fieldComponentProps = { initialValue: transaction$1.entityBusinessObject[formattedSanitizedName] };
1150
+ break;
1151
+ case "array":
1152
+ fieldComponentProps = {
1153
+ options: attribute?.options.map((option) => option.id),
1154
+ optionLabelDisplayFunction: (option) => getEntityName(attribute?.options, option),
1155
+ initialValue: transaction$1.entityBusinessObject[formattedSanitizedName]
1156
+ };
1157
+ break;
1158
+ case "bool":
1159
+ fieldComponentProps = {
1160
+ type: "checkbox",
1161
+ initialValue: false
1162
+ };
1163
+ break;
1164
+ default: fieldComponentProps = { initialValue: transaction$1.entityBusinessObject[formattedSanitizedName] };
1165
+ }
1166
+ let formLabel = isAsscoiationLabel ? attribute.domainName + " Name" : attribute.sanitizedName;
1167
+ let fieldComponent = /* @__PURE__ */ React.createElement(Field, {
1168
+ component: fieldComponentMap[formattedDataType] ?? FluentTextField,
1169
+ label: t(formLabel),
1170
+ name: formattedSanitizedName,
1171
+ fullWidth: true,
1172
+ variant: "outlined",
1173
+ margin: "normal",
1174
+ disabled: attribute.properties.isReadOnly,
1175
+ required: !attribute.dataType.includes("?") && formattedDataType != "bool",
1176
+ ...fieldComponentProps
1177
+ });
1178
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, attribute.dataType == "bool" ? /* @__PURE__ */ React.createElement(FormControlLabel, {
1179
+ control: fieldComponent,
1180
+ label: formLabel
1181
+ }) : fieldComponent);
1182
+ };
1183
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, fieldAttributes.map((attribute) => {
1184
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, dataTypeComponentMap(transaction, attribute));
1185
+ }));
1186
+ };
1187
+ var EditTransactionDetailsFormFields_default = EditTransactionDetailsFormFields;
1188
+
1189
+ //#endregion
1190
+ //#region src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.jsx
1191
+ const EditTransactionDetailsForm = (props) => {
1192
+ const { transaction, formRef } = props;
1193
+ const [entityAttributes, setEntityAttributes] = useState(null);
1194
+ const fullyQualifiedName = transaction.entityBusinessKey?.split("|")[0];
1195
+ const { handleErrorSnackbar, handleSuccessSnackbar } = useHandleAxiosSnackbar();
1196
+ const { t } = useTranslation();
1197
+ const [{ data: udpObjectInfo }, fetchUdpObjectInfo] = useAxiosMutate(`${process.env.REACT_APP_PRODUCT_API_BASE}`, `UdpObjectInfo/search`, {
1198
+ method: "post",
1199
+ data: {
1200
+ eagerLoad: true,
1201
+ pageNumber: 1,
1202
+ pageSize: 50,
1203
+ filterElements: [{
1204
+ searchField: "sanitizedName",
1205
+ searchOperator: "=",
1206
+ searchValue: getSanitizedName(fullyQualifiedName)
1207
+ }]
1208
+ }
1209
+ });
1210
+ const updateFieldInfo = (tableEntries, filteredEntityFieldInfo, fkFieldInfo, fkDomainName) => {
1211
+ let updatedFields = {
1212
+ dataType: "array",
1213
+ options: tableEntries,
1214
+ domainName: fkDomainName
1215
+ };
1216
+ const updatedFieldInfo = {
1217
+ ...fkFieldInfo,
1218
+ ...updatedFields
1219
+ };
1220
+ const index = filteredEntityFieldInfo.findIndex((f) => f.id === fkFieldInfo.id);
1221
+ if (index != -1) filteredEntityFieldInfo[index] = updatedFieldInfo;
1222
+ };
1223
+ const filterAdjustEntityAttributes = async (entityObjectInfo) => {
1224
+ let filteredEntityFieldInfo = entityObjectInfo.objectFieldInfo.filter((fieldInfo) => fieldInfo.properties.isDefaultVisible);
1225
+ await Promise.all(entityObjectInfo.childObjectAssociations.map(async (coa) => {
1226
+ let fkFieldInfo = filteredEntityFieldInfo.find((fieldInfo) => fieldInfo.id == coa.sourceFieldInfoID);
1227
+ if (fkFieldInfo?.id == coa.sourceFieldInfoID && coa.cardinality != CardinalityTypeEnums.Many_To_Many) {
1228
+ let fkDomainName = (await apiMutate(`${process.env.REACT_APP_PRODUCT_API_BASE}`, `UdpObjectInfo/${coa.targetObjectID}`, { method: "get" })).data.sanitizedName;
1229
+ const getTableEntriesResp = await apiMutate(`${process.env.REACT_APP_PRODUCT_API_BASE}`, `${fkDomainName}`, { method: "get" });
1230
+ if (getTableEntriesResp.data.length > 0) updateFieldInfo(getTableEntriesResp.data, filteredEntityFieldInfo, fkFieldInfo, fkDomainName);
1231
+ }
1232
+ }));
1233
+ return filteredEntityFieldInfo;
1234
+ };
1235
+ useEffect(() => {
1236
+ fetchUdpObjectInfo().then((udpObjectInfoResp) => {
1237
+ filterAdjustEntityAttributes(udpObjectInfoResp.data.pageList[0]).then((filteredResp) => {
1238
+ setEntityAttributes(filteredResp);
1239
+ });
1240
+ });
1241
+ }, []);
1242
+ const executeSaveChanges = useCallback(async (data) => apiMutate(ConfigService.productV1ApiUrl, `udpTransaction/${transaction?.transactionId}/saveChanges`, { method: "put" }, data), [transaction.transactionId]);
1243
+ const onSubmit = useCallback(async (values) => {
1244
+ if ((await executeSaveChanges({ data: values }))?.status === 200) handleSuccessSnackbar(t("Transaction has been saved successfully"));
1245
+ else handleErrorSnackbar(new Error(t(`Error saving Transaction. Please try again later.`)));
1246
+ }, [
1247
+ executeSaveChanges,
1248
+ handleSuccessSnackbar,
1249
+ handleErrorSnackbar,
1250
+ t
1251
+ ]);
1252
+ const fieldAttributes = useMemo(() => {
1253
+ if (!entityAttributes) return [];
1254
+ return entityAttributes;
1255
+ }, [entityAttributes]);
1256
+ return fieldAttributes.length == 0 ? /* @__PURE__ */ React.createElement(LinearProgress, null) : /* @__PURE__ */ React.createElement(AmbientCard, null, /* @__PURE__ */ React.createElement(Form, {
1257
+ onSubmit,
1258
+ ref: formRef
1259
+ }, /* @__PURE__ */ React.createElement(EditTransactionDetailsFormFields_default, {
1260
+ transaction,
1261
+ fieldAttributes
1262
+ })));
1263
+ };
1264
+ var EditTransactionDetailsForm_default = EditTransactionDetailsForm;
1265
+
920
1266
  //#endregion
921
1267
  //#region src/udp/pages/UdpTransactionsPage/sidesheets/EditTransaction.jsx
922
1268
  const EditTransaction = (props) => {
923
- const { transaction: initialTransaction, transactionTypeId, openInnerSidesheetState, setOpenInnerSidesheetState, refreshGridData, closeSideSheet, setSidesheetLoading } = props;
1269
+ const { transaction: initialTransaction, transactionTypeId, transactionIsClosed, openInnerSidesheetState, setOpenInnerSidesheetState, refreshGridData, closeSideSheet, setSidesheetLoading } = props;
924
1270
  const { t } = useTranslation();
925
1271
  const [selectedTab, setSelectedTab] = useState(0);
926
- const [transactionSaveChangesOnSubmit, setTransactionSaveChangesOnSubmit] = useState(null);
927
1272
  const [transaction, setTransaction] = useState(initialTransaction);
1273
+ const [transactionAttachments, setTransactionAttachments] = useState([]);
1274
+ const [filePreview, setFilePreview] = useState(false);
1275
+ const [currentAttachments, setCurrentAttachments] = useState([]);
1276
+ const [attachmentType, setAttachmentType] = useState(null);
1277
+ const [attachmentProgress, setAttachmentProgress] = useState(false);
1278
+ const [refreshNotes, setRefreshNotes] = useState(false);
1279
+ const [{ data: noteTypes, loading: fetchNoteTypesLoading }] = useAxiosGet(ConfigService$1.productV1ApiUrl, `UdpNoteType`, {});
1280
+ const { getUiActionRenderPageId } = useTransactionEngine(transactionTypeId);
928
1281
  const refetchTransaction = useCallback(async () => {
929
1282
  setSidesheetLoading(true);
930
1283
  const response = await apiMutate(ConfigService$1.productV1ApiUrl, `udpTransaction/${initialTransaction.transactionId}/full`, { method: "get" });
@@ -932,38 +1285,135 @@ const EditTransaction = (props) => {
932
1285
  setSidesheetLoading(false);
933
1286
  }, [initialTransaction.transactionId, setSidesheetLoading]);
934
1287
  const formRef = useRef(null);
1288
+ const transactionNoteFormRef = useRef(null);
1289
+ const handleNoteFormSubmit = useCallback(() => {
1290
+ transactionNoteFormRef.current?.handleSubmit?.();
1291
+ }, []);
1292
+ const handleNoteFormReset = useCallback(() => {
1293
+ transactionNoteFormRef.current?.form?.reset?.();
1294
+ }, []);
935
1295
  const handleSaveChanges = useCallback(async () => {
936
1296
  setSidesheetLoading(true);
937
- if (transactionSaveChangesOnSubmit) await transactionSaveChangesOnSubmit();
1297
+ await formRef.current?.form?.submit();
938
1298
  setSidesheetLoading(false);
939
1299
  refreshGridData();
940
1300
  }, [
941
1301
  refreshGridData,
942
- transactionSaveChangesOnSubmit,
943
- setSidesheetLoading
1302
+ setSidesheetLoading,
1303
+ formRef
944
1304
  ]);
1305
+ const [{ data: transactionAttachmentsData, loading: fetchTransactionAttachmentsLoading }, fetchTransactionAttachments] = useAxiosMutate(ConfigService$1.productV1ApiUrl, `UdpTransactionAttachment/search`, {
1306
+ method: "post",
1307
+ data: {
1308
+ pageSize: 50,
1309
+ filterElements: [{
1310
+ searchField: "TransactionId",
1311
+ searchValue: transaction.transactionId,
1312
+ searchOperator: "="
1313
+ }, {
1314
+ searchField: "IsDeleted",
1315
+ searchValue: 0,
1316
+ searchOperator: "="
1317
+ }]
1318
+ }
1319
+ });
1320
+ const [{ data: transactionAttachmentTypes }, fetchTransactionAttachmentType] = useAxiosMutate(process.env.REACT_APP_PRODUCT_API_BASE, `UdpTransactionAttachmentType/search`, {
1321
+ method: "post",
1322
+ data: {
1323
+ pageSize: 50,
1324
+ filterElements: [{
1325
+ searchField: "TransactionTypeId",
1326
+ searchValue: transaction.transactionTypeId,
1327
+ searchOperator: "="
1328
+ }]
1329
+ }
1330
+ });
1331
+ const { enqueueSnackbar } = useSnackbar();
1332
+ const getAttachments = useCallback(async () => {
1333
+ try {
1334
+ setTransactionAttachments((await fetchTransactionAttachments()).data.pageList);
1335
+ } catch (error) {
1336
+ console.error("Failed to fetch attachments:", error);
1337
+ enqueueSnackbar("Attachment fetch failed: We encountered a system error. Please try again or contact support if the issue persists.", {
1338
+ variant: "error",
1339
+ anchorOrigin: {
1340
+ vertical: "top",
1341
+ horizontal: "center"
1342
+ }
1343
+ });
1344
+ }
1345
+ }, [fetchTransactionAttachments, enqueueSnackbar]);
945
1346
  const tabNames = [
946
1347
  t("Details"),
947
1348
  t("History"),
948
1349
  t("Attachments"),
949
1350
  t("Notes")
950
1351
  ];
951
- const headerItemInfo = [{
952
- label: "Status",
953
- statusChip: {
954
- label: transaction.udpTransactionUdpTransactionTypeStatus?.name,
955
- status: "success"
1352
+ const headerItemInfo = useMemo(() => {
1353
+ const items = [{
1354
+ label: "Status",
1355
+ statusChip: {
1356
+ label: transaction.udpTransactionUdpTransactionTypeStatus?.name,
1357
+ status: "success"
1358
+ }
1359
+ }];
1360
+ if (transaction?.currentRevisionNo) items.push({
1361
+ label: "Revision",
1362
+ value: `${transaction.currentRevisionNo}`
1363
+ });
1364
+ return items;
1365
+ }, [transaction]);
1366
+ const handleUploadFiles = useCallback(async () => {
1367
+ if (!currentAttachments.length) throw new Error("No files added for upload");
1368
+ const formData = new FormData();
1369
+ currentAttachments.forEach((file) => formData.append("files", file));
1370
+ formData.append("attachmentTypeId", attachmentType.transactionAttachmentTypeId);
1371
+ try {
1372
+ setAttachmentProgress(true);
1373
+ await apiMutate(ConfigService$1.productV1ApiUrl, `UdpTransactionAttachment/transaction/${transaction.transactionId}/upload`, {
1374
+ method: "post",
1375
+ headers: {
1376
+ transactionId: transaction.transactionId,
1377
+ attachmentTypeId: attachmentType.transactionAttachmentTypeId
1378
+ },
1379
+ data: formData
1380
+ });
1381
+ await getAttachments();
1382
+ setCurrentAttachments([]);
1383
+ setOpenInnerSidesheetState({ attachments: false });
1384
+ enqueueSnackbar("Files uploaded successfully", {
1385
+ variant: "success",
1386
+ anchorOrigin: {
1387
+ vertical: "top",
1388
+ horizontal: "center"
1389
+ }
1390
+ });
1391
+ } catch (error) {
1392
+ enqueueSnackbar(`File upload failed: We encountered a system error. Please try again or contact support if the issue persists.`, {
1393
+ variant: "error",
1394
+ anchorOrigin: {
1395
+ vertical: "top",
1396
+ horizontal: "center"
1397
+ }
1398
+ });
1399
+ throw error;
1400
+ } finally {
1401
+ setAttachmentProgress(false);
956
1402
  }
957
- }, {
958
- label: "Revision",
959
- value: transaction?.currentRevisionNo
960
- }];
961
- const innerSidesheetList = [
1403
+ }, [
1404
+ attachmentType,
1405
+ currentAttachments,
1406
+ enqueueSnackbar,
1407
+ getAttachments,
1408
+ setOpenInnerSidesheetState,
1409
+ transaction.transactionId
1410
+ ]);
1411
+ const innerSidesheetList = useMemo(() => [
962
1412
  {
963
1413
  open: openInnerSidesheetState.workflowAction,
964
1414
  closeSheet: () => setOpenInnerSidesheetState({ workflowActions: false }),
965
1415
  title: "Available Workflow Actions",
966
- children: /* @__PURE__ */ React$1.createElement(WorkflowActions_default, {
1416
+ children: /* @__PURE__ */ React.createElement(WorkflowActions_default, {
967
1417
  transaction,
968
1418
  closeSideSheet: () => {
969
1419
  setOpenInnerSidesheetState({ workflowActions: false });
@@ -976,7 +1426,27 @@ const EditTransaction = (props) => {
976
1426
  open: openInnerSidesheetState.attachments,
977
1427
  closeSheet: () => setOpenInnerSidesheetState({ attachments: false }),
978
1428
  title: "Add Attachment",
979
- children: /* @__PURE__ */ React$1.createElement("h1", null, "Add Attachments content")
1429
+ buttonLabel: "Save",
1430
+ buttonOneDisabled: !attachmentType || currentAttachments.length <= 0,
1431
+ onSubmit: () => {
1432
+ handleUploadFiles().then(() => refreshGridData()).catch((error) => console.error(error));
1433
+ },
1434
+ children: /* @__PURE__ */ React.createElement(Attachments, {
1435
+ attachmentTypes: transactionAttachmentTypes,
1436
+ attachmentType,
1437
+ setAttachmentType,
1438
+ attachmentProgress,
1439
+ setAttachmentProgress,
1440
+ currentAttachments,
1441
+ setCurrentAttachments,
1442
+ transaction,
1443
+ previousAttachments: transactionAttachments,
1444
+ setPreviousAttachments: setTransactionAttachments,
1445
+ MAX_FILE_SIZE_MB,
1446
+ allowedExtensions,
1447
+ filePreview,
1448
+ setFilePreview
1449
+ })
980
1450
  },
981
1451
  {
982
1452
  open: openInnerSidesheetState.notes,
@@ -984,55 +1454,127 @@ const EditTransaction = (props) => {
984
1454
  title: "Add Note",
985
1455
  buttonLabel: "Save note",
986
1456
  buttonTwoLabel: "Clear",
987
- buttonTwoAction: () => {},
988
- children: /* @__PURE__ */ React$1.createElement("h1", null, "Add Notes content")
1457
+ buttonTwoAction: handleNoteFormReset,
1458
+ onSubmit: handleNoteFormSubmit,
1459
+ children: /* @__PURE__ */ React.createElement(TransactionNoteForm, {
1460
+ ref: transactionNoteFormRef,
1461
+ businessObjectKey: transaction?.businessObjectKey,
1462
+ closeSideSheet: () => {
1463
+ setOpenInnerSidesheetState({ notes: false });
1464
+ setRefreshNotes(true);
1465
+ },
1466
+ noteTypes,
1467
+ fetchNoteTypesLoading
1468
+ })
989
1469
  }
990
- ];
991
- return /* @__PURE__ */ React$1.createElement(React$1.Fragment, null, /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet" }, /* @__PURE__ */ React$1.createElement("div", { className: `edit-transaction-sidesheet-header 'is-sticky'` }, /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-header-title" }), /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-header-content" }, /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-header-items" }, headerItemInfo.map((headerItem) => {
992
- return /* @__PURE__ */ React$1.createElement(EditTransactionHeaderItem_default, {
1470
+ ], [
1471
+ openInnerSidesheetState.workflowAction,
1472
+ openInnerSidesheetState.attachments,
1473
+ openInnerSidesheetState.notes,
1474
+ transaction,
1475
+ refreshGridData,
1476
+ attachmentType,
1477
+ currentAttachments,
1478
+ transactionAttachmentTypes,
1479
+ attachmentProgress,
1480
+ transactionAttachments,
1481
+ filePreview,
1482
+ handleNoteFormReset,
1483
+ handleNoteFormSubmit,
1484
+ noteTypes,
1485
+ fetchNoteTypesLoading,
1486
+ setOpenInnerSidesheetState,
1487
+ refetchTransaction,
1488
+ handleUploadFiles
1489
+ ]);
1490
+ const transactionDetailPageId = useMemo(() => {
1491
+ return getUiActionRenderPageId(TransactionUiActionTypeEnums.Render_Transaction_Details_Page);
1492
+ }, [getUiActionRenderPageId]);
1493
+ useEffect(() => {
1494
+ (async () => {
1495
+ if (!transactionAttachmentsData) getAttachments();
1496
+ })();
1497
+ }, [transactionAttachmentsData, getAttachments]);
1498
+ useEffect(() => {
1499
+ if (!transactionAttachmentTypes) {
1500
+ setAttachmentProgress(true);
1501
+ fetchTransactionAttachmentType().then(() => {
1502
+ setAttachmentProgress(false);
1503
+ });
1504
+ }
1505
+ }, [fetchTransactionAttachmentType, transactionAttachmentTypes]);
1506
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet" }, /* @__PURE__ */ React.createElement("div", { className: `edit-transaction-sidesheet-header 'is-sticky'` }, /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-header-title" }), /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-header-content" }, /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-header-items" }, headerItemInfo.map((headerItem) => {
1507
+ return /* @__PURE__ */ React.createElement(EditTransactionHeaderItem_default, {
993
1508
  key: headerItem.label,
994
1509
  label: headerItem.label,
995
1510
  statusChip: headerItem.statusChip,
996
1511
  value: headerItem.value
997
1512
  });
998
- })), /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-header-buttons" }, /* @__PURE__ */ React$1.createElement(FluentButton, {
1513
+ })), /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-header-buttons" }, /* @__PURE__ */ React.createElement(FluentButton, {
999
1514
  variant: "contained",
1000
1515
  color: "secondary",
1001
1516
  onClick: () => {
1002
1517
  setOpenInnerSidesheetState({ attachments: true });
1003
1518
  }
1004
- }, "Add Attachment"), /* @__PURE__ */ React$1.createElement(FluentButton, {
1519
+ }, "Add Attachment"), /* @__PURE__ */ React.createElement(FluentButton, {
1005
1520
  variant: "contained",
1006
1521
  color: "secondary",
1007
1522
  onClick: () => {
1008
1523
  setOpenInnerSidesheetState({ notes: true });
1009
1524
  }
1010
- }, "Add Note")), /* @__PURE__ */ React$1.createElement("div", { className: "divider" }, /* @__PURE__ */ React$1.createElement(Divider$1, null)), /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-tabs" }, /* @__PURE__ */ React$1.createElement(UdpTabs, {
1525
+ }, "Add Note")), /* @__PURE__ */ React.createElement("div", { className: "divider" }, /* @__PURE__ */ React.createElement(Divider$1, null)), /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-tabs" }, /* @__PURE__ */ React.createElement(UdpTabs, {
1011
1526
  value: selectedTab,
1012
1527
  onChange: (value, tabIndex) => {
1013
1528
  setSelectedTab(tabIndex);
1014
1529
  },
1015
1530
  tabList: tabNames.map((tabName) => ({ label: tabName })),
1016
1531
  buttonWidth: "100%"
1017
- }))), /* @__PURE__ */ React$1.createElement("div", { className: "divider" }, /* @__PURE__ */ React$1.createElement(Divider$1, null))), /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-body" }, /* @__PURE__ */ React$1.createElement("div", null, /* @__PURE__ */ React$1.createElement("div", { style: { display: selectedTab === TRANSACTION_TAB.DETAILS ? "block" : "none" } }, " ", /* @__PURE__ */ React$1.createElement(UdpTransactionCustomPage_default, {
1532
+ }))), /* @__PURE__ */ React.createElement("div", { className: "divider" }, /* @__PURE__ */ React.createElement(Divider$1, null))), /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-body" }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(UdpTabPanel, {
1533
+ value: selectedTab,
1534
+ index: TRANSACTION_TAB.DETAILS
1535
+ }, transactionDetailPageId ? /* @__PURE__ */ React.createElement(UdpTransactionCustomPage_default, {
1018
1536
  transactionTypeId,
1019
1537
  transactionUiActionType: TransactionUiActionTypeEnums.Render_Transaction_Details_Page,
1020
1538
  formRef,
1021
- setHandleOnSubmit: setTransactionSaveChangesOnSubmit,
1022
1539
  transaction
1023
- })), /* @__PURE__ */ React$1.createElement("div", { style: { display: selectedTab === TRANSACTION_TAB.HISTORY ? "block" : "none" } }, /* @__PURE__ */ React$1.createElement("div", null, "History Content Placeholder")), /* @__PURE__ */ React$1.createElement("div", { style: { display: selectedTab === TRANSACTION_TAB.ATTACHMENTS ? "block" : "none" } }, /* @__PURE__ */ React$1.createElement("div", null, "Attachments Content Placeholder")), /* @__PURE__ */ React$1.createElement("div", { style: { display: selectedTab === TRANSACTION_TAB.NOTES ? "block" : "none" } }, /* @__PURE__ */ React$1.createElement(TransactionNotes, { businessObjectKey: transaction?.businessObjectKey })))), selectedTab == 0 && /* @__PURE__ */ React$1.createElement("div", { className: "edit-transaction-sidesheet-footer" }, /* @__PURE__ */ React$1.createElement(EditTransactionDetailsFooterItem_default, {
1540
+ }) : /* @__PURE__ */ React.createElement(EditTransactionDetailsForm_default, {
1541
+ transaction,
1542
+ formRef
1543
+ })), /* @__PURE__ */ React.createElement(UdpTabPanel, {
1544
+ value: selectedTab,
1545
+ index: TRANSACTION_TAB.HISTORY
1546
+ }, /* @__PURE__ */ React.createElement(TransactionTimeline, { transactionId: transaction?.transactionId })), /* @__PURE__ */ React.createElement(UdpTabPanel, {
1547
+ value: selectedTab,
1548
+ index: TRANSACTION_TAB.ATTACHMENTS
1549
+ }, /* @__PURE__ */ React.createElement(TransactionAttachments, {
1550
+ transactionAttachments: transactionAttachmentsData,
1551
+ isLoading: fetchTransactionAttachmentsLoading
1552
+ })), /* @__PURE__ */ React.createElement(UdpTabPanel, {
1553
+ value: selectedTab,
1554
+ index: TRANSACTION_TAB.NOTES
1555
+ }, /* @__PURE__ */ React.createElement(TransactionNotes, {
1556
+ businessObjectKey: transaction?.businessObjectKey,
1557
+ refreshNotes,
1558
+ setRefreshNotes,
1559
+ noteTypes,
1560
+ fetchNoteTypeLoading: fetchNoteTypesLoading
1561
+ })))), selectedTab == TRANSACTION_TAB.DETAILS && /* @__PURE__ */ React.createElement("div", { className: "edit-transaction-sidesheet-footer" }, /* @__PURE__ */ React.createElement(EditTransactionDetailsFooterItem_default, {
1024
1562
  transactionTypeId,
1563
+ transactionIsClosed,
1025
1564
  handleOnCancel: closeSideSheet,
1026
1565
  handleOnSaveChanges: handleSaveChanges
1027
1566
  }))), openInnerSidesheetState && innerSidesheetList.map((item) => {
1028
- return /* @__PURE__ */ React$1.createElement(SideSheet, {
1567
+ return /* @__PURE__ */ React.createElement(SideSheet, {
1029
1568
  key: item.title,
1030
1569
  open: item.open,
1031
1570
  width: 600,
1032
1571
  title: item.title,
1033
1572
  onClose: item.closeSheet,
1034
1573
  buttonLabel: item?.buttonLabel,
1574
+ buttonOneDisabled: item?.buttonOneDisabled,
1035
1575
  buttonTwoLabel: item?.buttonTwoLabel,
1576
+ buttonTwoAction: item?.buttonTwoAction,
1577
+ onSubmit: item?.onSubmit,
1036
1578
  color: "primary"
1037
1579
  }, item.children);
1038
1580
  }));
@@ -1044,24 +1586,25 @@ var EditTransaction_default = EditTransaction;
1044
1586
  const UdpTransactionSidesheet = (props) => {
1045
1587
  const { openStates, handleSidesheet, handleAttachmentTransaction, transaction, transactionTypeId, domainName, refreshGridData } = props;
1046
1588
  const [sidesheetLoading, setSidesheetLoading] = useState(false);
1047
- const [transactionCreationOnSubmit, setTransactionCreationOnSubmit] = useState(null);
1048
- const [transactionCreateRevisionOnSubmit, setTransactionCreateRevisionOnSubmit] = useState(null);
1589
+ const [closingTransactionLoading, setClosingTransactionLoading] = useState(false);
1049
1590
  const [editTransactionopenInnerSidesheetState, setEditTransactionOpenInnerSidesheetState] = useState({
1050
1591
  attachments: false,
1051
1592
  workflowActions: false,
1052
1593
  notes: false
1053
1594
  });
1595
+ const [dialogOpen, setDialogOpen] = useState(false);
1054
1596
  const { handleSuccessSnackbar, handleErrorSnackbar } = useHandleAxiosSnackbar();
1055
- const { hasClosedStatus } = useTransactionEngine(transactionTypeId);
1597
+ const { hasClosedStatus, checkIfTransactionIsClosed, getTransactionTypeLabel, getUiActionRenderPageId } = useTransactionEngine(transactionTypeId);
1056
1598
  const { t } = useTranslation();
1057
1599
  const formRef = useRef(null);
1600
+ const attachmentRef = useRef();
1058
1601
  const sidesheetWidth = 800;
1059
1602
  const transactionTypeEntry = transaction?.entityBusinessObject;
1603
+ const handleDialogClose = () => {
1604
+ setDialogOpen(false);
1605
+ };
1060
1606
  const executeCloseTransaction = useCallback(async () => {
1061
- setSidesheetLoading(true);
1062
- const response = await apiMutate(ConfigService$1.productV1ApiUrl, `udpTransaction/${transaction?.transactionId}/closeTransaction`, { method: "post" });
1063
- setSidesheetLoading(false);
1064
- if (response?.status === 200) {
1607
+ if ((await apiMutate(ConfigService$1.productV1ApiUrl, `udpTransaction/${transaction?.transactionId}/closeTransaction`, { method: "post" }))?.status === 200) {
1065
1608
  handleSidesheet("edit", false);
1066
1609
  refreshGridData();
1067
1610
  handleSuccessSnackbar(t(`Transaction has been closed successfully`));
@@ -1074,28 +1617,56 @@ const UdpTransactionSidesheet = (props) => {
1074
1617
  handleErrorSnackbar,
1075
1618
  t
1076
1619
  ]);
1620
+ const handleConfirmCloseTransactionDialog = useCallback(async () => {
1621
+ try {
1622
+ setClosingTransactionLoading(true);
1623
+ await executeCloseTransaction();
1624
+ } catch (error) {
1625
+ handleErrorSnackbar(error);
1626
+ } finally {
1627
+ setClosingTransactionLoading(false);
1628
+ handleDialogClose();
1629
+ }
1630
+ }, [executeCloseTransaction, handleErrorSnackbar]);
1077
1631
  const formattedBusinesskey = transactionTypeEntry?.businessObjectKey?.split("|")?.pop();
1078
1632
  const handleTransactionCreation = useCallback(async () => {
1079
1633
  setSidesheetLoading(true);
1080
- if (transactionCreationOnSubmit) await transactionCreationOnSubmit();
1634
+ await formRef.current?.form?.submit();
1081
1635
  setSidesheetLoading(false);
1082
1636
  handleSidesheet("add", false);
1083
1637
  refreshGridData();
1084
1638
  }, [
1085
1639
  handleSidesheet,
1086
1640
  refreshGridData,
1087
- transactionCreationOnSubmit
1641
+ formRef
1088
1642
  ]);
1089
1643
  const handleCreateRevision = useCallback(async () => {
1090
1644
  setSidesheetLoading(true);
1091
- if (transactionCreateRevisionOnSubmit) await transactionCreateRevisionOnSubmit();
1645
+ formRef.current?.form?.submit();
1092
1646
  setSidesheetLoading(false);
1093
1647
  handleSidesheet("createRevision", false);
1094
1648
  refreshGridData();
1095
1649
  }, [
1096
1650
  handleSidesheet,
1097
1651
  refreshGridData,
1098
- transactionCreateRevisionOnSubmit
1652
+ formRef
1653
+ ]);
1654
+ const pdfViewPageId = useMemo(() => {
1655
+ return getUiActionRenderPageId(TransactionUiActionTypeEnums.Render_View_Pdf_Page);
1656
+ }, [getUiActionRenderPageId]);
1657
+ const viewTransactionPage = useMemo(() => {
1658
+ if (pdfViewPageId) return /* @__PURE__ */ React.createElement(PageContainer, { pageId: pdfViewPageId });
1659
+ else return /* @__PURE__ */ React.createElement(ViewTransaction_default, { transaction });
1660
+ }, [transaction, pdfViewPageId]);
1661
+ const transactionIsClosed = useMemo(() => {
1662
+ return checkIfTransactionIsClosed(transaction);
1663
+ }, [checkIfTransactionIsClosed, transaction]);
1664
+ const transactionLabel = useMemo(() => {
1665
+ return getTransactionTypeLabel(transaction) ?? formattedBusinesskey;
1666
+ }, [
1667
+ getTransactionTypeLabel,
1668
+ transaction,
1669
+ formattedBusinesskey
1099
1670
  ]);
1100
1671
  const sidesheetList = useMemo(() => {
1101
1672
  return [
@@ -1105,30 +1676,33 @@ const UdpTransactionSidesheet = (props) => {
1105
1676
  title: domainName,
1106
1677
  width: sidesheetWidth,
1107
1678
  onSubmit: handleTransactionCreation,
1108
- children: /* @__PURE__ */ React$1.createElement(UdpTransactionCustomPage_default, {
1679
+ children: /* @__PURE__ */ React.createElement(UdpTransactionCustomPage_default, {
1109
1680
  transactionTypeId,
1110
1681
  transactionUiActionType: TransactionUiActionTypeEnums.Render_Create_Transaction_Page,
1111
- formRef,
1112
- setHandleOnSubmit: setTransactionCreationOnSubmit
1682
+ formRef
1113
1683
  }),
1114
1684
  buttonLabel: "Add"
1115
1685
  },
1116
1686
  {
1117
1687
  open: openStates.viewTransaction,
1118
1688
  closeSheet: () => handleSidesheet("view", false),
1119
- title: domainName + " " + formattedBusinesskey + " - Preview",
1689
+ title: domainName + " " + transactionLabel + " - Preview",
1120
1690
  width: sidesheetWidth,
1121
- children: /* @__PURE__ */ React$1.createElement(ViewTransaction_default, { transaction }),
1122
- buttonLabel: "Download"
1691
+ children: viewTransactionPage,
1692
+ buttonLabel: !pdfViewPageId ? "Download" : null
1123
1693
  },
1124
1694
  {
1125
1695
  open: openStates.attachmentTransaction,
1126
1696
  closeSheet: () => handleSidesheet("view", false),
1127
- title: "Attachment for " + domainName + " " + formattedBusinesskey,
1697
+ title: "Attachment for " + domainName + " " + transactionLabel,
1128
1698
  width: sidesheetWidth,
1129
1699
  buttonLabel: "Download",
1130
- children: /* @__PURE__ */ React$1.createElement(AttachmentTransaction_default, {
1700
+ onSubmit: () => {
1701
+ if (attachmentRef.current) attachmentRef.current.downloadSelectedFile();
1702
+ },
1703
+ children: /* @__PURE__ */ React.createElement(AttachmentTransaction_default, {
1131
1704
  handleAttachmentTransaction,
1705
+ attachmentRef,
1132
1706
  transaction,
1133
1707
  domainName,
1134
1708
  setSidesheetLoading
@@ -1137,9 +1711,9 @@ const UdpTransactionSidesheet = (props) => {
1137
1711
  {
1138
1712
  open: openStates.workflowAction,
1139
1713
  closeSheet: () => handleSidesheet("action", false),
1140
- title: `Workflow Actions - ${domainName} ${formattedBusinesskey}`,
1714
+ title: `Workflow Actions - ${domainName} ${transactionLabel}`,
1141
1715
  width: sidesheetWidth,
1142
- children: /* @__PURE__ */ React$1.createElement(WorkflowActions_default, {
1716
+ children: /* @__PURE__ */ React.createElement(WorkflowActions_default, {
1143
1717
  transaction,
1144
1718
  closeSideSheet: () => {
1145
1719
  handleSidesheet("action", false);
@@ -1150,15 +1724,16 @@ const UdpTransactionSidesheet = (props) => {
1150
1724
  {
1151
1725
  open: openStates.editTransaction,
1152
1726
  closeSheet: () => handleSidesheet("edit", false),
1153
- title: `Edit ${domainName} ${formattedBusinesskey}`,
1727
+ title: `Edit ${domainName} ${transactionLabel}`,
1154
1728
  width: sidesheetWidth,
1155
- buttonLabel: "Next Steps",
1729
+ buttonLabel: !transactionIsClosed ? "Next Steps" : null,
1156
1730
  onSubmit: () => setEditTransactionOpenInnerSidesheetState({ workflowAction: true }),
1157
- buttonTwoLabel: hasClosedStatus ? "Close " + domainName : null,
1158
- buttonTwoAction: hasClosedStatus ? executeCloseTransaction : null,
1159
- children: /* @__PURE__ */ React$1.createElement(EditTransaction_default, {
1731
+ buttonTwoLabel: !transactionIsClosed ? hasClosedStatus ? "Close " + domainName : null : null,
1732
+ buttonTwoAction: !transactionIsClosed ? hasClosedStatus ? () => setDialogOpen(true) : null : null,
1733
+ children: /* @__PURE__ */ React.createElement(EditTransaction_default, {
1160
1734
  transaction,
1161
1735
  transactionTypeId,
1736
+ transactionIsClosed,
1162
1737
  openInnerSidesheetState: editTransactionopenInnerSidesheetState,
1163
1738
  setOpenInnerSidesheetState: setEditTransactionOpenInnerSidesheetState,
1164
1739
  refreshGridData,
@@ -1172,11 +1747,10 @@ const UdpTransactionSidesheet = (props) => {
1172
1747
  title: `Create Revision for ${domainName}`,
1173
1748
  width: sidesheetWidth,
1174
1749
  onSubmit: handleCreateRevision,
1175
- children: /* @__PURE__ */ React$1.createElement(UdpTransactionCustomPage_default, {
1750
+ children: /* @__PURE__ */ React.createElement(UdpTransactionCustomPage_default, {
1176
1751
  transactionTypeId,
1177
1752
  transactionUiActionType: TransactionUiActionTypeEnums.Render_Create_Revision_Page,
1178
1753
  formRef,
1179
- setHandleOnSubmit: setTransactionCreateRevisionOnSubmit,
1180
1754
  transaction
1181
1755
  }),
1182
1756
  buttonLabel: "Create Revision"
@@ -1190,15 +1764,18 @@ const UdpTransactionSidesheet = (props) => {
1190
1764
  domainName,
1191
1765
  editTransactionopenInnerSidesheetState,
1192
1766
  setEditTransactionOpenInnerSidesheetState,
1193
- formattedBusinesskey,
1767
+ transactionLabel,
1194
1768
  refreshGridData,
1195
1769
  transactionTypeId,
1196
1770
  handleTransactionCreation,
1197
1771
  hasClosedStatus,
1198
- handleCreateRevision
1772
+ handleCreateRevision,
1773
+ transactionIsClosed,
1774
+ viewTransactionPage,
1775
+ pdfViewPageId
1199
1776
  ]);
1200
- return /* @__PURE__ */ React$1.createElement(React$1.Fragment, null, openStates && sidesheetList.map((item) => {
1201
- return /* @__PURE__ */ React$1.createElement(SideSheet, {
1777
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, openStates && sidesheetList.map((item) => {
1778
+ return /* @__PURE__ */ React.createElement(SideSheet, {
1202
1779
  key: item.title,
1203
1780
  open: item.open,
1204
1781
  width: sidesheetWidth,
@@ -1212,7 +1789,17 @@ const UdpTransactionSidesheet = (props) => {
1212
1789
  buttonTwoAction: item?.buttonTwoAction,
1213
1790
  progress: sidesheetLoading,
1214
1791
  variant: "indeterminate"
1215
- }, /* @__PURE__ */ React$1.createElement("div", null, item.children));
1792
+ }, sidesheetLoading && /* @__PURE__ */ React.createElement(LinearProgress$1, null), /* @__PURE__ */ React.createElement("div", null, item.children));
1793
+ }), /* @__PURE__ */ React.createElement(FluentDialog, {
1794
+ title: t(`Close Transaction`),
1795
+ message: `Are you sure you want to close transaction for ${transaction?.entityBusinessKey || ""}?`,
1796
+ labelOne: t("Confirm"),
1797
+ actionOne: handleConfirmCloseTransactionDialog,
1798
+ labelTwo: t("Cancel"),
1799
+ actionTwo: handleDialogClose,
1800
+ open: dialogOpen,
1801
+ handleClose: handleDialogClose,
1802
+ loading: closingTransactionLoading
1216
1803
  }));
1217
1804
  };
1218
1805
  var UdpTransactionSidesheet_default = UdpTransactionSidesheet;
@@ -1333,8 +1920,8 @@ const UdpTransactionsPage = (props) => {
1333
1920
  useEffect(() => {
1334
1921
  if (transactionType) setDomainName(transactionType.domainName.split(".").pop());
1335
1922
  }, [transactionType]);
1336
- if (!transactionType) return /* @__PURE__ */ React$1.createElement("div", { className: "udp-transaction-page-loading" }, /* @__PURE__ */ React$1.createElement(CircularProgress, { size: 64 }));
1337
- return /* @__PURE__ */ React$1.createElement(React$1.Fragment, null, /* @__PURE__ */ React$1.createElement(UdpTransactionGrid_default, {
1923
+ if (!transactionType) return /* @__PURE__ */ React.createElement("div", { className: "udp-transaction-page-loading" }, /* @__PURE__ */ React.createElement(CircularProgress, { size: 64 }));
1924
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(UdpTransactionGrid_default, {
1338
1925
  transactionTypeId: transactionType?.transactionTypeId,
1339
1926
  transactionType,
1340
1927
  domainName,
@@ -1364,7 +1951,7 @@ const UdpTransactionsPage = (props) => {
1364
1951
  gridApiRef?.current?.refreshServerSide();
1365
1952
  },
1366
1953
  gridApiRef
1367
- }), /* @__PURE__ */ React$1.createElement(UdpTransactionSidesheet_default, {
1954
+ }), /* @__PURE__ */ React.createElement(UdpTransactionSidesheet_default, {
1368
1955
  openStates: sidesheetState,
1369
1956
  handleSidesheet,
1370
1957
  handleAttachmentTransaction,
@@ -1384,4 +1971,4 @@ var UdpTransactionsPage_exports = /* @__PURE__ */ __export({ default: () => UdpT
1384
1971
 
1385
1972
  //#endregion
1386
1973
  export { UdpTransactionsPage_default as n, UdpTransactionsPage_exports as t };
1387
- //# sourceMappingURL=UdpTransactionsPage-D6lRI165.js.map
1974
+ //# sourceMappingURL=UdpTransactionsPage-DKF6PKUA.js.map