udp-react-enterprise-component-library 25.18.1-beta.35 → 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 (546) 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/UdpFormsBuilderPage-CoNaXBSz.js.map +1 -1
  236. package/dist/{UdpPrivateForm-Dhy6BBRl.js → UdpFormsPrivateForm-BCXlSJcR.js} +20 -8
  237. package/dist/UdpFormsPrivateForm-BCXlSJcR.js.map +1 -0
  238. package/dist/{UdpPublicForm-8v4_-QNd.js → UdpFormsPublicForm-DveT2KAy.js} +5 -5
  239. package/dist/UdpFormsPublicForm-DveT2KAy.js.map +1 -0
  240. package/dist/{UdpFormsSubmissionGrid-DQn0-17O.js → UdpFormsSubmissionGrid-3806WiQB.js} +72 -15
  241. package/dist/UdpFormsSubmissionGrid-3806WiQB.js.map +1 -0
  242. package/dist/{UdpGridPanelManagementPage-INlmheiF.js → UdpGridPanelManagementPage-Dzu7o8P5.js} +2 -2
  243. package/dist/{UdpGridPanelManagementPage-INlmheiF.js.map → UdpGridPanelManagementPage-Dzu7o8P5.js.map} +1 -1
  244. package/dist/{UdpGridTemplate-SGI-8dJX.js → UdpGridTemplate-BswnwevH.js} +1 -1
  245. package/dist/{UdpGridTemplate-SGI-8dJX.js.map → UdpGridTemplate-BswnwevH.js.map} +1 -1
  246. package/dist/{UdpImportFromFileMappingPage-v0D7v216.js → UdpImportFromFileMappingPage-CjCTzU9E.js} +2 -2
  247. package/dist/{UdpImportFromFileMappingPage-v0D7v216.js.map → UdpImportFromFileMappingPage-CjCTzU9E.js.map} +1 -1
  248. package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js} +2 -2
  249. package/dist/{UdpInquiryMaintenanceEnginePage-BPZhmEmg.js.map → UdpInquiryMaintenanceEnginePage-4HYSYxGd.js.map} +1 -1
  250. package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js → UdpMaintenanceEnginePage-B8Tvv1dZ.js} +6 -6
  251. package/dist/{UdpMaintenanceEnginePage-CI3rZ6G9.js.map → UdpMaintenanceEnginePage-B8Tvv1dZ.js.map} +1 -1
  252. package/dist/{UdpNotesPage-Cbz2-Plp.js → UdpNotesPage-BGNZX-5s.js} +6 -6
  253. package/dist/{UdpNotesPage-Cbz2-Plp.js.map → UdpNotesPage-BGNZX-5s.js.map} +1 -1
  254. package/dist/{UdpPages-CdenUVIY.js → UdpPages-CMkb2m5F.js} +18 -18
  255. package/dist/UdpPages-CMkb2m5F.js.map +1 -0
  256. package/dist/{UdpRemindersPage-B8oGAjtR.js → UdpRemindersPage-J9vGaj3s.js} +6 -6
  257. package/dist/{UdpRemindersPage-B8oGAjtR.js.map → UdpRemindersPage-J9vGaj3s.js.map} +1 -1
  258. package/dist/{UdpRoutes-lY6lxxfc.js → UdpRoutes-D-muhX5C.js} +7 -7
  259. package/dist/UdpRoutes-D-muhX5C.js.map +1 -0
  260. package/dist/{UdpTransactionTypesPage-CmsWZHM4.js → UdpTransactionTypesPage-Do_tl8J2.js} +1898 -468
  261. package/dist/UdpTransactionTypesPage-Do_tl8J2.js.map +1 -0
  262. package/dist/{UdpTransactionsPage-D6lRI165.js → UdpTransactionsPage-DKF6PKUA.js} +779 -192
  263. package/dist/UdpTransactionsPage-DKF6PKUA.js.map +1 -0
  264. package/dist/{UdpVerticalManagementPage-BmQISa0N.js → UdpVerticalManagementPage-CR3YJwcI.js} +3 -3
  265. package/dist/{UdpVerticalManagementPage-BmQISa0N.js.map → UdpVerticalManagementPage-CR3YJwcI.js.map} +1 -1
  266. package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js → UdpVerticalManagementSidesheet-CCSqaYq-.js} +4 -4
  267. package/dist/{UdpVerticalManagementSidesheet-D4WSAtZC.js.map → UdpVerticalManagementSidesheet-CCSqaYq-.js.map} +1 -1
  268. package/dist/{UserForm-Cvx0qyL6.js → UserForm-DQIJUkWW.js} +2 -2
  269. package/dist/{UserForm-Cvx0qyL6.js.map → UserForm-DQIJUkWW.js.map} +1 -1
  270. package/dist/UserFormSideSheet-Cki2zS9L.js +3 -0
  271. package/dist/{UserFormSideSheet-Bo1yZr01.js → UserFormSideSheet-yMExq77r.js} +2 -2
  272. package/dist/{UserFormSideSheet-Bo1yZr01.js.map → UserFormSideSheet-yMExq77r.js.map} +1 -1
  273. package/dist/{UtilityBar-O0baEBVj.js → UtilityBar-Ct7h6CJ4.js} +2 -2
  274. package/dist/{UtilityBar-O0baEBVj.js.map → UtilityBar-Ct7h6CJ4.js.map} +1 -1
  275. package/dist/VirtualBrowser-C1IP6rhy.js +3 -0
  276. package/dist/{VirtualBrowser-clYMlLAt.js → VirtualBrowser-CLXEdKAF.js} +3 -3
  277. package/dist/{VirtualBrowser-clYMlLAt.js.map → VirtualBrowser-CLXEdKAF.js.map} +1 -1
  278. package/dist/{WorkOrderCard-Wh1AkhfU.js → WorkOrderCard-CfvJtG69.js} +1 -1
  279. package/dist/{WorkOrderCard-Wh1AkhfU.js.map → WorkOrderCard-CfvJtG69.js.map} +1 -1
  280. package/dist/{WorkflowContainer-ClMZHFEd.js → WorkflowContainer-5of_2j2y.js} +3 -3
  281. package/dist/{WorkflowContainer-ClMZHFEd.js.map → WorkflowContainer-5of_2j2y.js.map} +1 -1
  282. package/dist/{WorkflowContainer-BBvEDJx3.js → WorkflowContainer-Bb0Amji_.js} +1 -1
  283. package/dist/{WorkflowTreeMenu-CdfX1Pv0.js → WorkflowTreeMenu-BudXOCOS.js} +4 -4
  284. package/dist/{WorkflowTreeMenu-CdfX1Pv0.js.map → WorkflowTreeMenu-BudXOCOS.js.map} +1 -1
  285. package/dist/{accordion-DT5LpWAW.js → accordion-Dh-tKkr0.js} +2 -2
  286. package/dist/{accordion-DT5LpWAW.js.map → accordion-Dh-tKkr0.js.map} +1 -1
  287. package/dist/{actionSummary-BrcS82Qz.js → actionSummary-8FhDX8uJ.js} +2 -2
  288. package/dist/{actionSummary-BrcS82Qz.js.map → actionSummary-8FhDX8uJ.js.map} +1 -1
  289. package/dist/{actionUtils-DylNlciX.js → actionUtils-DREj3J3H.js} +2 -2
  290. package/dist/{actionUtils-DylNlciX.js.map → actionUtils-DREj3J3H.js.map} +1 -1
  291. package/dist/actions/actionSummary/index.js +1 -1
  292. package/dist/actions/index.js +5 -5
  293. package/dist/actions/utils/index.js +1 -1
  294. package/dist/{aggregateUtils-BCO2GaVq.js → aggregateUtils-C5GwQct7.js} +2 -2
  295. package/dist/{aggregateUtils-BCO2GaVq.js.map → aggregateUtils-C5GwQct7.js.map} +1 -1
  296. package/dist/{aggridHelpers-Dj7ES7if.js → aggridHelpers-MdXm-qhS.js} +3 -3
  297. package/dist/{aggridHelpers-Dj7ES7if.js.map → aggridHelpers-MdXm-qhS.js.map} +1 -1
  298. package/dist/{auth-DQZDqD8X.js → auth-eDuSIJxU.js} +3 -3
  299. package/dist/{auth-DQZDqD8X.js.map → auth-eDuSIJxU.js.map} +1 -1
  300. package/dist/componentSystems/multiThreadTimeline/index.js +3 -3
  301. package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +1 -1
  302. package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +1 -1
  303. package/dist/componentSystems/multiThreadTimeline/ui/index.js +1 -1
  304. package/dist/componentSystems/pageRenderer/hocs/index.js +1 -1
  305. package/dist/componentSystems/pageRenderer/index.js +3 -3
  306. package/dist/componentSystems/pageRenderer/wrappers/index.js +1 -1
  307. package/dist/dataBrowser/index.js +1 -1
  308. package/dist/{dateUtils-ChKgbJ9U.js → dateUtils-ftAbP-Mv.js} +18 -2
  309. package/dist/{dateUtils-ChKgbJ9U.js.map → dateUtils-ftAbP-Mv.js.map} +1 -1
  310. package/dist/enums/index.js +2 -2
  311. package/dist/{fileViewer-Dk6GMaSl.js → fileViewer-8-Eh4vLL.js} +2 -2
  312. package/dist/{fileViewer-Dk6GMaSl.js.map → fileViewer-8-Eh4vLL.js.map} +1 -1
  313. package/dist/{floorplans-BuvxGfwI.js → floorplans-CY6mR5bW.js} +2 -2
  314. package/dist/{floorplans-BuvxGfwI.js.map → floorplans-CY6mR5bW.js.map} +1 -1
  315. package/dist/{fluentTimeline-DceBN460.js → fluentTimeline-L0T1uOFm.js} +2 -2
  316. package/dist/{fluentTimeline-DceBN460.js.map → fluentTimeline-L0T1uOFm.js.map} +1 -1
  317. package/dist/{gridVisualizationFunctions-D5YZTZ7G.js → gridVisualizationFunctions-D83yg1AF.js} +1 -1
  318. package/dist/{gridVisualizationFunctions-D5YZTZ7G.js.map → gridVisualizationFunctions-D83yg1AF.js.map} +1 -1
  319. package/dist/hooks/index.js +3 -3
  320. package/dist/index.js +103 -101
  321. package/dist/inquiry/dashboard/index.js +1 -1
  322. package/dist/inquiry/index.js +4 -4
  323. package/dist/inquiry/inquiryBar/index.js +1 -1
  324. package/dist/inquiry/search/index.js +1 -1
  325. package/dist/{inquiry-DKgopy7F.js → inquiry-D-x5PZRJ.js} +12 -12
  326. package/dist/{inquiry-DKgopy7F.js.map → inquiry-D-x5PZRJ.js.map} +1 -1
  327. package/dist/{inquiryBar-CNAMeAq0.js → inquiryBar-lZ1qPFK6.js} +2 -2
  328. package/dist/{inquiryBar-CNAMeAq0.js.map → inquiryBar-lZ1qPFK6.js.map} +1 -1
  329. package/dist/layout/index.js +1 -1
  330. package/dist/{SideBarTemplate-B0lh7DDL.js → layout-BXuf6qmj.js} +1 -1
  331. package/dist/layout-BXuf6qmj.js.map +1 -0
  332. package/dist/maintenanceEngine/crudBrowser/index.js +2 -2
  333. package/dist/maintenanceEngine/index.js +4 -4
  334. package/dist/maintenanceEngine/tableBrowser/index.js +1 -1
  335. package/dist/maintenanceEngine/virtualBrowser/index.js +1 -1
  336. package/dist/{mapLayout-CZGgMWF6.js → mapLayout-BvKaPY3O.js} +2 -2
  337. package/dist/{mapLayout-CZGgMWF6.js.map → mapLayout-BvKaPY3O.js.map} +1 -1
  338. package/dist/menuPage/index.js +1 -1
  339. package/dist/{menuPage-DXMZEj8i.js → menuPage-BKRvZjzg.js} +2 -2
  340. package/dist/{menuPage-DXMZEj8i.js.map → menuPage-BKRvZjzg.js.map} +1 -1
  341. package/dist/{menuUtilities-cO3zYLVr.js → menuUtilities-BCPwOaeA.js} +2 -2
  342. package/dist/{menuUtilities-cO3zYLVr.js.map → menuUtilities-BCPwOaeA.js.map} +1 -1
  343. package/dist/notes/index.js +1 -1
  344. package/dist/{UdpTimeSelector-XsmTgOvP.js → pickers-DfIXzoW7.js} +1 -1
  345. package/dist/pickers-DfIXzoW7.js.map +1 -0
  346. package/dist/reminders/index.js +2 -2
  347. package/dist/routes/components/index.js +1 -1
  348. package/dist/routes/index.js +1 -1
  349. package/dist/{search-BGZwaCKb.js → search-DRxUjlyc.js} +5 -5
  350. package/dist/{search-BGZwaCKb.js.map → search-DRxUjlyc.js.map} +1 -1
  351. package/dist/shell/index.js +3 -3
  352. package/dist/shell/ui/addUser/index.js +1 -1
  353. package/dist/shell/ui/index.js +2 -2
  354. package/dist/stores/index.js +1 -1
  355. package/dist/{tenantStore-tBfq87CP.js → tenantStore-TgmV03z9.js} +2 -2
  356. package/dist/{tenantStore-tBfq87CP.js.map → tenantStore-TgmV03z9.js.map} +1 -1
  357. package/dist/treeMenu/index.js +1 -1
  358. package/dist/types/src/enums/unitySystemEnums.d.ts +4 -2
  359. package/dist/types/src/enums/unitySystemEnums.d.ts.map +1 -1
  360. package/dist/types/src/index.d.ts +3 -1
  361. package/dist/types/src/index.d.ts.map +1 -1
  362. package/dist/types/src/udp/pages/UdpFormsPrivateForm/UdpPrivateForm.d.ts +3 -0
  363. package/dist/types/src/udp/pages/UdpFormsPrivateForm/UdpPrivateForm.d.ts.map +1 -0
  364. package/dist/types/src/udp/pages/UdpFormsPrivateForm/index.d.ts +2 -0
  365. package/dist/types/src/udp/pages/UdpFormsPrivateForm/index.d.ts.map +1 -0
  366. package/dist/types/src/udp/pages/UdpFormsPublicForm/UdpPublicForm.d.ts.map +1 -0
  367. package/dist/types/src/udp/pages/UdpFormsPublicForm/index.d.ts.map +1 -0
  368. package/dist/types/src/udp/pages/UdpFormsSubmissionGrid/UdpFormsSubmissionGrid.d.ts +5 -1
  369. package/dist/types/src/udp/pages/UdpFormsSubmissionGrid/UdpFormsSubmissionGrid.d.ts.map +1 -1
  370. package/dist/types/src/udp/pages/UdpFormsSubmissionGrid/index.d.ts +0 -1
  371. package/dist/types/src/udp/pages/UdpFormsSubmissionGrid/index.d.ts.map +1 -1
  372. package/dist/types/src/udp/pages/UdpPages/index.d.ts +2 -2
  373. package/dist/types/src/udp/pages/UdpPages/index.d.ts.map +1 -1
  374. package/dist/types/src/udp/pages/UdpPagesLazy/index.d.ts +2 -2
  375. package/dist/types/src/udp/pages/UdpTransactionTypesPage/UdpTransactionTypesPage.d.ts.map +1 -1
  376. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts +4 -0
  377. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionAttachmentTypeForm.d.ts.map +1 -0
  378. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts +4 -0
  379. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationForm.d.ts.map +1 -0
  380. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts +4 -0
  381. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeConfigurationTransactionActionForm.d.ts.map +1 -0
  382. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeForm.d.ts.map +1 -1
  383. package/dist/types/src/udp/pages/UdpTransactionTypesPage/forms/UdpTransactionTypeStatusForm.d.ts.map +1 -1
  384. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts +4 -0
  385. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeCreateAndEditSidesheet.d.ts.map +1 -0
  386. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts +4 -0
  387. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionAttachmentTypeSidesheet.d.ts.map +1 -0
  388. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts +4 -0
  389. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationCreateAndEditSidesheet.d.ts.map +1 -0
  390. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts +4 -0
  391. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationSidesheet.d.ts.map +1 -0
  392. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts +4 -0
  393. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionCreateAndEditSidesheet.d.ts.map +1 -0
  394. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts +4 -0
  395. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeConfigurationTransactionActionSidesheet.d.ts.map +1 -0
  396. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeStatusSidesheet.d.ts.map +1 -1
  397. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionCreateAndEditSidesheet.d.ts.map +1 -1
  398. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionTypeTransactionActionSidesheet.d.ts.map +1 -1
  399. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionCreateAndEditSidesheet.d.ts.map +1 -1
  400. package/dist/types/src/udp/pages/UdpTransactionTypesPage/sidesheets/UdpTransactionUiActionSidesheet.d.ts.map +1 -1
  401. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionGrid.d.ts.map +1 -1
  402. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionSidesheet.d.ts.map +1 -1
  403. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionsPage.d.ts.map +1 -1
  404. package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts +4 -0
  405. package/dist/types/src/udp/pages/UdpTransactionsPage/components/AttachmentTransactionAttachmentList.d.ts.map +1 -0
  406. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFooterItem.d.ts.map +1 -1
  407. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts +4 -0
  408. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsForm.d.ts.map +1 -0
  409. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts +4 -0
  410. package/dist/types/src/udp/pages/UdpTransactionsPage/components/EditTransactionDetailsFormFields.d.ts.map +1 -0
  411. package/dist/types/src/udp/pages/UdpTransactionsPage/components/UdpTransactionCustomPage.d.ts.map +1 -1
  412. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts +3 -0
  413. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachment.d.ts.map +1 -0
  414. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts +3 -0
  415. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionAttachment/TransactionAttachments.d.ts.map +1 -0
  416. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts +4 -0
  417. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimeline.d.ts.map +1 -0
  418. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts +3 -0
  419. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionHistory/TransactionTimelineItem.d.ts.map +1 -0
  420. package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts.map +1 -1
  421. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts +3 -0
  422. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNoteForm.d.ts.map +1 -0
  423. package/dist/types/src/udp/pages/UdpTransactionsPage/components/transactionNote/TransactionNotes.d.ts.map +1 -0
  424. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts +2 -1
  425. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentTransaction.d.ts.map +1 -1
  426. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/EditTransaction.d.ts.map +1 -1
  427. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts +2 -1
  428. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/WorkflowActions.d.ts.map +1 -1
  429. package/dist/types/src/uploader/Attachments.d.ts +18 -0
  430. package/dist/types/src/uploader/Attachments.d.ts.map +1 -0
  431. package/dist/types/src/uploader/enums/systemEnums.d.ts +17 -0
  432. package/dist/types/src/uploader/enums/systemEnums.d.ts.map +1 -0
  433. package/dist/types/src/uploader/index.d.ts +1 -0
  434. package/dist/types/src/uploader/index.d.ts.map +1 -1
  435. package/dist/types/src/uploader/utils/allowedFileProperties.d.ts +3 -0
  436. package/dist/types/src/uploader/utils/allowedFileProperties.d.ts.map +1 -0
  437. package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts +4 -0
  438. package/dist/types/src/uploader/utils/downloadAttachmentFiles.d.ts.map +1 -0
  439. package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts +2 -0
  440. package/dist/types/src/utilities/transactions/useTransactionEngine.d.ts.map +1 -1
  441. package/dist/types/tsconfig.tsbuildinfo +1 -1
  442. package/dist/udp/ShortcutContent/index.js +1 -1
  443. package/dist/udp/export/index.js +1 -1
  444. package/dist/udp/fileImportMapping/index.js +2 -2
  445. package/dist/udp/pages/UdpAuditEvents/index.js +1 -1
  446. package/dist/udp/pages/UdpDataBrowserPage/index.js +1 -1
  447. package/dist/udp/pages/UdpFormsPrivateForm/index.js +3 -0
  448. package/dist/udp/pages/UdpFormsPublicForm/index.js +3 -0
  449. package/dist/udp/pages/UdpFormsSubmissionGrid/index.js +1 -1
  450. package/dist/udp/pages/UdpGridPanelManagementPage/index.js +1 -1
  451. package/dist/udp/pages/UdpImportFromFileMappingPage/index.js +1 -1
  452. package/dist/udp/pages/UdpInquiryMaintenanceEnginePage/index.js +1 -1
  453. package/dist/udp/pages/UdpMaintenanceEnginePage/index.js +1 -1
  454. package/dist/udp/pages/UdpNotesPage/index.js +1 -1
  455. package/dist/udp/pages/UdpPages/index.js +1 -1
  456. package/dist/udp/pages/UdpPagesLazy/index.js +3 -3
  457. package/dist/udp/pages/UdpPagesLazy/index.js.map +1 -1
  458. package/dist/udp/pages/UdpRemindersPage/index.js +1 -1
  459. package/dist/udp/pages/UdpTransactionTypesPage/index.js +1 -1
  460. package/dist/udp/pages/UdpTransactionsPage/index.js +1 -1
  461. package/dist/udp/pages/UdpVerticalManagementPage/index.js +1 -1
  462. package/dist/udp/pages/UdpVerticalManagementSidesheet/index.js +1 -1
  463. package/dist/udp/pages/index.js +1 -1
  464. package/dist/{unitySystemEnums-DM5vXR_m.js → unitySystemEnums-e5F9Jr7m.js} +5 -3
  465. package/dist/{unitySystemEnums-DM5vXR_m.js.map → unitySystemEnums-e5F9Jr7m.js.map} +1 -1
  466. package/dist/uploader/Attachments.css +29 -0
  467. package/dist/uploader/index.js +2 -102
  468. package/dist/uploader-C36UIFAF.js +314 -0
  469. package/dist/uploader-C36UIFAF.js.map +1 -0
  470. package/dist/{useActions-Db2P12NS.js → useActions-CxDs7v3s.js} +3 -3
  471. package/dist/{useActions-Db2P12NS.js.map → useActions-CxDs7v3s.js.map} +1 -1
  472. package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js → usePromotedMethodEntities-B3xSrWmP.js} +2 -2
  473. package/dist/{usePromotedMethodEntities-Dw_Z9GFX.js.map → usePromotedMethodEntities-B3xSrWmP.js.map} +1 -1
  474. package/dist/{useSearchFilterParamsMap-CLAStwmE.js → useSearchFilterParamsMap-DPCfEY-N.js} +2 -2
  475. package/dist/{useSearchFilterParamsMap-CLAStwmE.js.map → useSearchFilterParamsMap-DPCfEY-N.js.map} +1 -1
  476. package/dist/utilities/aggrid/datasources/index.js +1 -1
  477. package/dist/utilities/aggrid/index.js +2 -2
  478. package/dist/utilities/auth/index.js +1 -1
  479. package/dist/utilities/customIcons/index.js +1 -1
  480. package/dist/utilities/floorplanFunctions/index.js +1 -1
  481. package/dist/utilities/form/paymentForm/index.js +1 -1
  482. package/dist/utilities/menus/index.js +1 -1
  483. package/dist/utilities/provider/index.js +1 -1
  484. package/dist/utilities/redirect/pages/index.js +1 -1
  485. package/dist/utilities/search/index.js +1 -1
  486. package/dist/utilities/style/index.js +1 -1
  487. package/dist/utilities/tenant/index.js +1 -1
  488. package/dist/utilities/tree/index.js +1 -1
  489. package/dist/utilities/uploader/index.js +1 -1
  490. package/dist/{withEngineComponent-s_zEZt7e.js → withEngineComponent-Css79hMi.js} +2 -2
  491. package/dist/{withEngineComponent-s_zEZt7e.js.map → withEngineComponent-Css79hMi.js.map} +1 -1
  492. package/dist/workflow/index.js +2 -2
  493. package/dist/workflow/menus/index.js +1 -1
  494. package/export-map.json +6 -3
  495. package/package.json +2 -2
  496. package/dist/MenuPage-BxZfgpHf.js +0 -3
  497. package/dist/MyExportsPage-BnDpxtTW.js +0 -3
  498. package/dist/SideBarTemplate-B0lh7DDL.js.map +0 -1
  499. package/dist/UdpAuditEventsPage-BGIcCG26.js +0 -3
  500. package/dist/UdpFormsSubmissionGrid-DQn0-17O.js.map +0 -1
  501. package/dist/UdpPages-CdenUVIY.js.map +0 -1
  502. package/dist/UdpPrivateForm-Dhy6BBRl.js.map +0 -1
  503. package/dist/UdpPublicForm-8v4_-QNd.js.map +0 -1
  504. package/dist/UdpRoutes-lY6lxxfc.js.map +0 -1
  505. package/dist/UdpTimeSelector-XsmTgOvP.js.map +0 -1
  506. package/dist/UdpTransactionTypesPage-CmsWZHM4.js.map +0 -1
  507. package/dist/UdpTransactionsPage-D6lRI165.js.map +0 -1
  508. package/dist/UserFormSideSheet-B6CT9SiQ.js +0 -3
  509. package/dist/VirtualBrowser-Cm-d-9ws.js +0 -3
  510. package/dist/types/src/udp/pages/UdpPrivateForm/UdpPrivateForm.d.ts +0 -4
  511. package/dist/types/src/udp/pages/UdpPrivateForm/UdpPrivateForm.d.ts.map +0 -1
  512. package/dist/types/src/udp/pages/UdpPrivateForm/index.d.ts +0 -3
  513. package/dist/types/src/udp/pages/UdpPrivateForm/index.d.ts.map +0 -1
  514. package/dist/types/src/udp/pages/UdpPublicForm/UdpPublicForm.d.ts.map +0 -1
  515. package/dist/types/src/udp/pages/UdpPublicForm/index.d.ts.map +0 -1
  516. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts +0 -3
  517. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/AttachmentList.d.ts.map +0 -1
  518. package/dist/types/src/udp/pages/UdpTransactionsPage/sidesheets/transactionNote/TransactionNotes.d.ts.map +0 -1
  519. package/dist/udp/pages/UdpPrivateForm/index.js +0 -3
  520. package/dist/udp/pages/UdpPublicForm/index.js +0 -3
  521. package/dist/uploader/index.js.map +0 -1
  522. /package/dist/{addUser-C90pCSnT.js → addUser-ND44rh2U.js} +0 -0
  523. /package/dist/{appSwitcher-BVKuYNfi.js → appSwitcher-a9n2Iwje.js} +0 -0
  524. /package/dist/{components-B1RVyHlZ.js → components-DFnCokX4.js} +0 -0
  525. /package/dist/{crudBrowser-C4YqsRrl.js → crudBrowser-D2jkhTHL.js} +0 -0
  526. /package/dist/{forms-BHhy_qYQ.js → forms-Bqbd2PSS.js} +0 -0
  527. /package/dist/{functions-48UNDwct.js → functions-BsqJgCPf.js} +0 -0
  528. /package/dist/{hocs-CWPyxUPi.js → hocs-ffxbQsXq.js} +0 -0
  529. /package/dist/{hooks-CkNaVLLH.js → hooks-DZQTSvZa.js} +0 -0
  530. /package/dist/{menus-DRIHkeQr.js → menus-Bcz2WjML.js} +0 -0
  531. /package/dist/{modified-BHJzuqPC.js → modified-Bhd8wpcw.js} +0 -0
  532. /package/dist/{mttMainTimeline-CLFQyr-b.js → mttMainTimeline-4YnP9sFd.js} +0 -0
  533. /package/dist/{mttSummary-13x9tvMI.js → mttSummary-DUe99dle.js} +0 -0
  534. /package/dist/{renderers-B2fqkGT5.js → renderers-DMzVV_xu.js} +0 -0
  535. /package/dist/{sidebar-CM1ujsxj.js → sidebar-Wi8WckFO.js} +0 -0
  536. /package/dist/{tableBrowser-CSDLzrvz.js → tableBrowser-C1wXuOXy.js} +0 -0
  537. /package/dist/types/src/udp/pages/{UdpPublicForm → UdpFormsPublicForm}/UdpPublicForm.d.ts +0 -0
  538. /package/dist/types/src/udp/pages/{UdpPublicForm → UdpFormsPublicForm}/index.d.ts +0 -0
  539. /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNote.d.ts +0 -0
  540. /package/dist/types/src/udp/pages/UdpTransactionsPage/{sidesheets → components}/transactionNote/TransactionNotes.d.ts +0 -0
  541. /package/dist/{ui-CPBXC1Ld.js → ui-BjpkPJO5.js} +0 -0
  542. /package/dist/{ui-DKHa8sM6.js → ui-DDD_eO_6.js} +0 -0
  543. /package/dist/{utils-D3uaSx1C.js → utils-DNwO498R.js} +0 -0
  544. /package/dist/{utils-mr65G560.js → utils-Drtwu1nG.js} +0 -0
  545. /package/dist/{virtualBrowser-DpJvv72S.js → virtualBrowser-zN1T60dc.js} +0 -0
  546. /package/dist/{wrappers-C7ViYUDV.js → wrappers-CQ2ylYPw.js} +0 -0
@@ -1,15 +1,15 @@
1
1
  import { t as ConfigService } from "./configService-C4uoG3wj.js";
2
2
  import { t as useUser } from "./useUser-wpHGo6jU.js";
3
- import { F as TreeViewModeEnums } from "./unitySystemEnums-DM5vXR_m.js";
3
+ import { I as TreeViewModeEnums } from "./unitySystemEnums-e5F9Jr7m.js";
4
4
  import { n as useShellStore } from "./shellStore-C8zfPsZ-.js";
5
- import { H as transformMenuPageTree } from "./TreeUtilities-CujOFOPm.js";
5
+ import { H as transformMenuPageTree } from "./TreeUtilities-kiPupulY.js";
6
6
  import { t as useAxiosGet } from "./useAxiosGet-vvPjwB4W.js";
7
7
  import { t as useSetLocationState } from "./useSetLocationState-Kvcc9BTb.js";
8
8
  import { t as PageContainer } from "./PageContainer-CT3n_ngH.js";
9
9
  import { n as useBuildEnvironment, t as APP_RIBBON_SPACE } from "./useBuildEnvironment-2gdqpmBX.js";
10
10
  import { t as NodeLoader } from "./NodeLoader-BtOQQiwA.js";
11
11
  import { t as UtilitySideBar } from "./UtilitySideBar-N84D3gCu.js";
12
- import { t as BaseTreeMenu } from "./BaseTreeMenu-BhAbJoRI.js";
12
+ import { t as BaseTreeMenu } from "./BaseTreeMenu-B4d--j95.js";
13
13
  import React, { useCallback, useEffect, useRef, useState } from "react";
14
14
  import { makeStyles } from "@material-ui/core";
15
15
  import { Prompt, useHistory, useLocation } from "react-router-dom";
@@ -265,4 +265,4 @@ var MenuPage_default = MenuPage;
265
265
 
266
266
  //#endregion
267
267
  export { MenuPage_default as t };
268
- //# sourceMappingURL=MenuPage-CEqDX-_3.js.map
268
+ //# sourceMappingURL=MenuPage-l6jiWcbB.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuPage-CEqDX-_3.js","names":[],"sources":["../src/menuPage/MenuPage.jsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { useHistory, useLocation, Prompt } from 'react-router-dom';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport { makeStyles } from '@material-ui/core';\nimport { PageContainer } from '../page/PageContainer';\nimport { transformMenuPageTree } from '../utilities/tree/TreeUtilities';\nimport { BaseTreeMenu } from '../treeMenu/BaseTreeMenu';\nimport { TreeViewModeEnums } from '../enums/unitySystemEnums';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useUser } from '../utilities/auth/useUser';\nimport { useShellStore } from '../stores/shellStore';\nimport { NodeLoader } from '../UI/feedback/NodeLoader';\nimport {\n APP_RIBBON_SPACE,\n useBuildEnvironment\n} from '../shell/ui/useBuildEnvironment';\nimport { useSetLocationState } from '../hooks/useSetLocationState';\nimport { useTranslation } from 'react-i18next';\nimport { ConfigService } from '../configService';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n flex: 1,\n minHeight: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 56}px)`,\n display: 'grid',\n gridTemplateAreas: ['sidebar content'].map((line) => `\"${line}\"`).join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n sidebar: {\n gridArea: 'sidebar',\n marginRight: theme.spacing(1)\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 56}px)`,\n overflowY: 'auto'\n },\n menuContent: {\n marginTop: theme.spacing(1),\n height: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 116}px)`,\n overflowX: 'hidden'\n },\n loader: {\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1)\n },\n loadingContent: {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MenuPage = (props) => {\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n appRibbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const history = useHistory();\n const location = useLocation();\n const user = useUser();\n const { t } = useTranslation();\n const setLocationState = useSetLocationState();\n // Allow callers to provide an innerMenu directly (CustomMenuPage wrapper)\n const {\n innerMenuOverride,\n mainContent,\n menuTitle,\n allowMissingPageParam = false,\n searchParamsTransformer\n } = props;\n\n const [menuItemsList, setMenuItemsList] = useState([]); // holds a list of trees\n const [selectedNode, setSelectedNode] = useState(null);\n const [sidebarExpanded, setSidebarExpanded] = useState(true);\n const [hasUnsavedChanges, setHasUnsavedChanges] = useState(false);\n // Just the menuInstanceId for an inner menu\n const innerMenuId = location.pathname.replace('/menupage/', '');\n\n const prevInnerMenuId = useRef(innerMenuId);\n\n const [{ data: fetchedInnerMenu, loading: menuLoading }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `menus/${innerMenuId}`,\n {},\n !innerMenuId,\n false\n );\n\n const innerMenu = innerMenuOverride ?? fetchedInnerMenu;\n\n const { setSubHeaderActionHasChildren, setNavigationExpanded } =\n useShellStore();\n\n const [{ data: pageData, loading: pageLoading, error: pageError }] =\n useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${selectedNode?.properties?.page?.id}`,\n {},\n !selectedNode?.properties?.page?.id,\n false\n );\n\n const buildSearchString = useCallback(\n (params, node, menuIndex) => {\n if (typeof searchParamsTransformer === 'function') {\n const result = searchParamsTransformer({\n searchParams: params,\n node,\n menuIndex,\n location\n });\n\n if (result === null) {\n return '';\n }\n\n if (result instanceof URLSearchParams) {\n return result.toString();\n }\n\n if (typeof result === 'string') {\n return result;\n }\n\n if (result !== undefined) {\n return String(result);\n }\n }\n\n return params.toString();\n },\n [location, searchParamsTransformer]\n );\n\n const handleSelectedNode = useCallback(\n (node, menuIndex) => {\n if (allowMissingPageParam) {\n const firstNode = menuItemsList?.[0];\n if (firstNode && String(node?.id) === String(firstNode.id)) {\n // If there is an existing query string, normalize back to the base path\n if (location.search) {\n history.replace({\n pathname: location.pathname,\n search: ''\n });\n }\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n return;\n }\n }\n\n const searchParams = new URLSearchParams(location.search);\n searchParams.set('page', node.id);\n const searchString = buildSearchString(searchParams, node, menuIndex);\n\n history.push({\n pathname: location.pathname,\n search: searchString\n });\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n },\n [\n history,\n location,\n allowMissingPageParam,\n menuItemsList,\n buildSearchString\n ]\n );\n\n const handleDropNode = useCallback(\n (sourceNode, targetNode, sourceNodeMenuIndex, targetNodeMenuIndex) => {\n // TODO: Implement if we need to for next Phase\n },\n []\n );\n\n const handleSidebarExpandClick = useCallback(() => {\n setSidebarExpanded((expanded) => !expanded);\n }, []);\n\n const findNodeById = useCallback((node, id) => {\n if (!node) return null;\n if (node.id.toString() === id) return node;\n if (node.children) {\n for (const child of node.children) {\n const found = findNodeById(child, id);\n if (found) return found;\n }\n }\n return null;\n }, []);\n\n useEffect(() => {\n const searchParams = new URLSearchParams(location.search);\n const pageId = searchParams.get('page');\n if (pageId && menuItemsList.length > 0) {\n // Search all root menu trees for the node\n let node = null;\n for (const tree of menuItemsList) {\n node = findNodeById(tree, pageId);\n if (node) break;\n }\n if (node && node.id !== selectedNode?.id) {\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n }\n }\n }, [location.search, menuItemsList, findNodeById, selectedNode]);\n\n useEffect(() => {\n const mainPageIdChanged = prevInnerMenuId.current !== innerMenuId;\n\n if (innerMenu) {\n const list = [];\n innerMenu.menuItemInstanceStructureViews.forEach((menuInstance) => {\n const updatedMenu = transformMenuPageTree(menuInstance);\n if (updatedMenu) {\n list.push(updatedMenu);\n }\n });\n setMenuItemsList(list);\n\n // Find the node matching the current page param\n const searchParams = new URLSearchParams(location.search);\n const pageId = searchParams.get('page');\n let nodeToSelect = null;\n\n if (pageId && list.length > 0) {\n // Try to find the node with this id\n for (const tree of list) {\n nodeToSelect = findNodeById(tree, pageId);\n if (nodeToSelect) break;\n }\n }\n\n // If we found a node, select it. If not, select the first node.\n if (nodeToSelect) {\n setSelectedNode(nodeToSelect);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n } else if (list.length > 0) {\n const firstNode = list[0];\n if (allowMissingPageParam) {\n // Do not modify URL when missing page param; select first node only.\n setSelectedNode(firstNode);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n } else {\n // No valid page param, select first node and update URL\n searchParams.set('page', firstNode.id);\n history.replace({\n pathname: location.pathname,\n search: searchParams.toString()\n });\n setSelectedNode(firstNode);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n }\n }\n }\n prevInnerMenuId.current = innerMenuId;\n }, [\n innerMenu,\n setNavigationExpanded,\n history,\n location,\n innerMenuId,\n findNodeById,\n allowMissingPageParam\n ]);\n\n useEffect(() => {\n setSubHeaderActionHasChildren(false);\n }, [setSubHeaderActionHasChildren]);\n\n // Setting location state label so that if this page was saved to favorites\n // we can determine the bread crumb\n useEffect(() => {\n if (innerMenu) {\n setLocationState({ label: t(innerMenu?.name) });\n }\n }, [setLocationState, t, innerMenu]);\n\n return (\n <DndProvider backend={HTML5Backend}>\n <Prompt\n when={hasUnsavedChanges}\n message='You have unsaved changes. Are you sure you want to leave this page?'\n />\n <div className={classes.root}>\n <div className={classes.sidebar}>\n <UtilitySideBar\n title={innerMenu?.name || menuTitle}\n isUsingChildren={true}\n resizable={true}\n removePadding={true}\n removeTopLayoutUnit={true}\n onUtilitySidebarToggleExpandClick={handleSidebarExpandClick}\n collapsedWidth={64}\n >\n <div className={classes.menuContent} key={innerMenuId}>\n {menuItemsList?.length > 0 &&\n !menuLoading &&\n menuItemsList.map((menuItems, index) => (\n <div key={menuItems.id} className={classes.nodeContainer}>\n <BaseTreeMenu\n menuItems={menuItems}\n onSelectNode={handleSelectedNode}\n onDropNode={handleDropNode}\n menuIndex={index}\n selectedNodeId={selectedNode?.id}\n selectedNodeParentId={selectedNode?.parentId}\n sidebarExpanded={sidebarExpanded}\n treeViewMode={TreeViewModeEnums.Classic}\n />\n </div>\n ))}\n {menuLoading && (\n <div className={classes.loader}>\n <NodeLoader loading={menuLoading} />\n </div>\n )}\n </div>\n </UtilitySideBar>\n </div>\n <div className={classes.content}>\n {mainContent ? (\n typeof mainContent === 'function'\n ? mainContent({ selectedNode, menuItemsList })\n : mainContent\n ) : (\n selectedNode?.properties?.page?.id && (\n <PageContainer\n user={user}\n key={selectedNode?.id}\n pageData={pageData}\n pageLoading={pageLoading}\n widgetParams={{\n pageId: pageData?.pageId,\n entityName: selectedNode?.properties?.page?.entity?.entityName,\n pbiReportCode: selectedNode?.properties?.page?.pbiReportCode,\n requiredFieldsMap:\n selectedNode?.properties?.page?.requiredFieldMapping,\n udpTagId: selectedNode?.properties?.page?.udpTagId,\n queryId: selectedNode?.properties?.page?.queryId,\n inquiryTreeId: selectedNode?.properties?.page?.inquiryTreeId,\n setHasUnsavedChanges: setHasUnsavedChanges\n }}\n disableMargins={true}\n fromMenu={true}\n />\n )\n )}\n </div>\n </div>\n </DndProvider>\n );\n};\n\nexport default MenuPage;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MenuPage-l6jiWcbB.js","names":[],"sources":["../src/menuPage/MenuPage.jsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { useHistory, useLocation, Prompt } from 'react-router-dom';\nimport { useAxiosGet } from '../utilities/useAxiosGet';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport { makeStyles } from '@material-ui/core';\nimport { PageContainer } from '../page/PageContainer';\nimport { transformMenuPageTree } from '../utilities/tree/TreeUtilities';\nimport { BaseTreeMenu } from '../treeMenu/BaseTreeMenu';\nimport { TreeViewModeEnums } from '../enums/unitySystemEnums';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { useUser } from '../utilities/auth/useUser';\nimport { useShellStore } from '../stores/shellStore';\nimport { NodeLoader } from '../UI/feedback/NodeLoader';\nimport {\n APP_RIBBON_SPACE,\n useBuildEnvironment\n} from '../shell/ui/useBuildEnvironment';\nimport { useSetLocationState } from '../hooks/useSetLocationState';\nimport { useTranslation } from 'react-i18next';\nimport { ConfigService } from '../configService';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n flex: 1,\n minHeight: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 56}px)`,\n display: 'grid',\n gridTemplateAreas: ['sidebar content'].map((line) => `\"${line}\"`).join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n sidebar: {\n gridArea: 'sidebar',\n marginRight: theme.spacing(1)\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 56}px)`,\n overflowY: 'auto'\n },\n menuContent: {\n marginTop: theme.spacing(1),\n height: ({ appRibbonSpace }) => `calc(100vh - ${appRibbonSpace + 116}px)`,\n overflowX: 'hidden'\n },\n loader: {\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1)\n },\n loadingContent: {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center'\n }\n}));\n\nconst MenuPage = (props) => {\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n appRibbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const history = useHistory();\n const location = useLocation();\n const user = useUser();\n const { t } = useTranslation();\n const setLocationState = useSetLocationState();\n // Allow callers to provide an innerMenu directly (CustomMenuPage wrapper)\n const {\n innerMenuOverride,\n mainContent,\n menuTitle,\n allowMissingPageParam = false,\n searchParamsTransformer\n } = props;\n\n const [menuItemsList, setMenuItemsList] = useState([]); // holds a list of trees\n const [selectedNode, setSelectedNode] = useState(null);\n const [sidebarExpanded, setSidebarExpanded] = useState(true);\n const [hasUnsavedChanges, setHasUnsavedChanges] = useState(false);\n // Just the menuInstanceId for an inner menu\n const innerMenuId = location.pathname.replace('/menupage/', '');\n\n const prevInnerMenuId = useRef(innerMenuId);\n\n const [{ data: fetchedInnerMenu, loading: menuLoading }] = useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `menus/${innerMenuId}`,\n {},\n !innerMenuId,\n false\n );\n\n const innerMenu = innerMenuOverride ?? fetchedInnerMenu;\n\n const { setSubHeaderActionHasChildren, setNavigationExpanded } =\n useShellStore();\n\n const [{ data: pageData, loading: pageLoading, error: pageError }] =\n useAxiosGet(\n ConfigService.tenantV1ApiUrl,\n `page/${selectedNode?.properties?.page?.id}`,\n {},\n !selectedNode?.properties?.page?.id,\n false\n );\n\n const buildSearchString = useCallback(\n (params, node, menuIndex) => {\n if (typeof searchParamsTransformer === 'function') {\n const result = searchParamsTransformer({\n searchParams: params,\n node,\n menuIndex,\n location\n });\n\n if (result === null) {\n return '';\n }\n\n if (result instanceof URLSearchParams) {\n return result.toString();\n }\n\n if (typeof result === 'string') {\n return result;\n }\n\n if (result !== undefined) {\n return String(result);\n }\n }\n\n return params.toString();\n },\n [location, searchParamsTransformer]\n );\n\n const handleSelectedNode = useCallback(\n (node, menuIndex) => {\n if (allowMissingPageParam) {\n const firstNode = menuItemsList?.[0];\n if (firstNode && String(node?.id) === String(firstNode.id)) {\n // If there is an existing query string, normalize back to the base path\n if (location.search) {\n history.replace({\n pathname: location.pathname,\n search: ''\n });\n }\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n return;\n }\n }\n\n const searchParams = new URLSearchParams(location.search);\n searchParams.set('page', node.id);\n const searchString = buildSearchString(searchParams, node, menuIndex);\n\n history.push({\n pathname: location.pathname,\n search: searchString\n });\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n },\n [\n history,\n location,\n allowMissingPageParam,\n menuItemsList,\n buildSearchString\n ]\n );\n\n const handleDropNode = useCallback(\n (sourceNode, targetNode, sourceNodeMenuIndex, targetNodeMenuIndex) => {\n // TODO: Implement if we need to for next Phase\n },\n []\n );\n\n const handleSidebarExpandClick = useCallback(() => {\n setSidebarExpanded((expanded) => !expanded);\n }, []);\n\n const findNodeById = useCallback((node, id) => {\n if (!node) return null;\n if (node.id.toString() === id) return node;\n if (node.children) {\n for (const child of node.children) {\n const found = findNodeById(child, id);\n if (found) return found;\n }\n }\n return null;\n }, []);\n\n useEffect(() => {\n const searchParams = new URLSearchParams(location.search);\n const pageId = searchParams.get('page');\n if (pageId && menuItemsList.length > 0) {\n // Search all root menu trees for the node\n let node = null;\n for (const tree of menuItemsList) {\n node = findNodeById(tree, pageId);\n if (node) break;\n }\n if (node && node.id !== selectedNode?.id) {\n setSelectedNode(node);\n setHasUnsavedChanges(false);\n }\n }\n }, [location.search, menuItemsList, findNodeById, selectedNode]);\n\n useEffect(() => {\n const mainPageIdChanged = prevInnerMenuId.current !== innerMenuId;\n\n if (innerMenu) {\n const list = [];\n innerMenu.menuItemInstanceStructureViews.forEach((menuInstance) => {\n const updatedMenu = transformMenuPageTree(menuInstance);\n if (updatedMenu) {\n list.push(updatedMenu);\n }\n });\n setMenuItemsList(list);\n\n // Find the node matching the current page param\n const searchParams = new URLSearchParams(location.search);\n const pageId = searchParams.get('page');\n let nodeToSelect = null;\n\n if (pageId && list.length > 0) {\n // Try to find the node with this id\n for (const tree of list) {\n nodeToSelect = findNodeById(tree, pageId);\n if (nodeToSelect) break;\n }\n }\n\n // If we found a node, select it. If not, select the first node.\n if (nodeToSelect) {\n setSelectedNode(nodeToSelect);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n } else if (list.length > 0) {\n const firstNode = list[0];\n if (allowMissingPageParam) {\n // Do not modify URL when missing page param; select first node only.\n setSelectedNode(firstNode);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n } else {\n // No valid page param, select first node and update URL\n searchParams.set('page', firstNode.id);\n history.replace({\n pathname: location.pathname,\n search: searchParams.toString()\n });\n setSelectedNode(firstNode);\n setHasUnsavedChanges(false);\n setNavigationExpanded(false);\n }\n }\n }\n prevInnerMenuId.current = innerMenuId;\n }, [\n innerMenu,\n setNavigationExpanded,\n history,\n location,\n innerMenuId,\n findNodeById,\n allowMissingPageParam\n ]);\n\n useEffect(() => {\n setSubHeaderActionHasChildren(false);\n }, [setSubHeaderActionHasChildren]);\n\n // Setting location state label so that if this page was saved to favorites\n // we can determine the bread crumb\n useEffect(() => {\n if (innerMenu) {\n setLocationState({ label: t(innerMenu?.name) });\n }\n }, [setLocationState, t, innerMenu]);\n\n return (\n <DndProvider backend={HTML5Backend}>\n <Prompt\n when={hasUnsavedChanges}\n message='You have unsaved changes. Are you sure you want to leave this page?'\n />\n <div className={classes.root}>\n <div className={classes.sidebar}>\n <UtilitySideBar\n title={innerMenu?.name || menuTitle}\n isUsingChildren={true}\n resizable={true}\n removePadding={true}\n removeTopLayoutUnit={true}\n onUtilitySidebarToggleExpandClick={handleSidebarExpandClick}\n collapsedWidth={64}\n >\n <div className={classes.menuContent} key={innerMenuId}>\n {menuItemsList?.length > 0 &&\n !menuLoading &&\n menuItemsList.map((menuItems, index) => (\n <div key={menuItems.id} className={classes.nodeContainer}>\n <BaseTreeMenu\n menuItems={menuItems}\n onSelectNode={handleSelectedNode}\n onDropNode={handleDropNode}\n menuIndex={index}\n selectedNodeId={selectedNode?.id}\n selectedNodeParentId={selectedNode?.parentId}\n sidebarExpanded={sidebarExpanded}\n treeViewMode={TreeViewModeEnums.Classic}\n />\n </div>\n ))}\n {menuLoading && (\n <div className={classes.loader}>\n <NodeLoader loading={menuLoading} />\n </div>\n )}\n </div>\n </UtilitySideBar>\n </div>\n <div className={classes.content}>\n {mainContent ? (\n typeof mainContent === 'function'\n ? mainContent({ selectedNode, menuItemsList })\n : mainContent\n ) : (\n selectedNode?.properties?.page?.id && (\n <PageContainer\n user={user}\n key={selectedNode?.id}\n pageData={pageData}\n pageLoading={pageLoading}\n widgetParams={{\n pageId: pageData?.pageId,\n entityName: selectedNode?.properties?.page?.entity?.entityName,\n pbiReportCode: selectedNode?.properties?.page?.pbiReportCode,\n requiredFieldsMap:\n selectedNode?.properties?.page?.requiredFieldMapping,\n udpTagId: selectedNode?.properties?.page?.udpTagId,\n queryId: selectedNode?.properties?.page?.queryId,\n inquiryTreeId: selectedNode?.properties?.page?.inquiryTreeId,\n setHasUnsavedChanges: setHasUnsavedChanges\n }}\n disableMargins={true}\n fromMenu={true}\n />\n )\n )}\n </div>\n </div>\n </DndProvider>\n );\n};\n\nexport default MenuPage;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAsBA,MAAM,YAAY,YAAY,WAAW;CACvC,MAAM;EACJ,MAAM;EACN,YAAY,EAAE,qBAAqB,gBAAgB,iBAAiB,GAAG;EACvE,SAAS;EACT,mBAAmB,CAAC,kBAAkB,CAAC,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,KAAK,IAAI;EAC3E,qBAAqB;EACrB,kBAAkB;EACnB;CACD,SAAS;EACP,UAAU;EACV,aAAa,MAAM,QAAQ,EAAE;EAC9B;CACD,SAAS;EACP,UAAU;EACV,SAAS;EACT,eAAe;EACf,UAAU;EACV,QAAQ;EACR,SAAS,EAAE,qBAAqB,gBAAgB,iBAAiB,GAAG;EACpE,WAAW;EACZ;CACD,aAAa;EACX,WAAW,MAAM,QAAQ,EAAE;EAC3B,SAAS,EAAE,qBAAqB,gBAAgB,iBAAiB,IAAI;EACrE,WAAW;EACZ;CACD,QAAQ;EACN,aAAa,MAAM,QAAQ,EAAE;EAC7B,YAAY,MAAM,QAAQ,EAAE;EAC7B;CACD,gBAAgB;EACd,MAAM;EACN,SAAS;EACT,eAAe;EACf,YAAY;EACZ,gBAAgB;EACjB;CACF,EAAE;AAEH,MAAM,YAAY,UAAU;CAC1B,MAAM,WAAW,qBAAqB;CACtC,MAAM,UAAU,UAAU;EACxB,GAAG;EACH,gBAAgB,WAAW,mBAAmB;EAC/C,CAAC;CACF,MAAM,UAAU,YAAY;CAC5B,MAAM,WAAW,aAAa;CAC9B,MAAM,OAAO,SAAS;CACtB,MAAM,EAAE,MAAM,gBAAgB;CAC9B,MAAM,mBAAmB,qBAAqB;CAE9C,MAAM,EACJ,mBACA,aACA,WACA,wBAAwB,OACxB,4BACE;CAEJ,MAAM,CAAC,eAAe,oBAAoB,SAAS,EAAE,CAAC;CACtD,MAAM,CAAC,cAAc,mBAAmB,SAAS,KAAK;CACtD,MAAM,CAAC,iBAAiB,sBAAsB,SAAS,KAAK;CAC5D,MAAM,CAAC,mBAAmB,wBAAwB,SAAS,MAAM;CAEjE,MAAM,cAAc,SAAS,SAAS,QAAQ,cAAc,GAAG;CAE/D,MAAM,kBAAkB,OAAO,YAAY;CAE3C,MAAM,CAAC,EAAE,MAAM,kBAAkB,SAAS,iBAAiB,YACzD,cAAc,gBACd,SAAS,eACT,EAAE,EACF,CAAC,aACD,MACD;CAED,MAAM,YAAY,qBAAqB;CAEvC,MAAM,EAAE,+BAA+B,0BACrC,eAAe;CAEjB,MAAM,CAAC,EAAE,MAAM,UAAU,SAAS,aAAa,OAAO,eACpD,YACE,cAAc,gBACd,QAAQ,cAAc,YAAY,MAAM,MACxC,EAAE,EACF,CAAC,cAAc,YAAY,MAAM,IACjC,MACD;CAEH,MAAM,oBAAoB,aACvB,QAAQ,MAAM,cAAc;AAC3B,MAAI,OAAO,4BAA4B,YAAY;GACjD,MAAM,SAAS,wBAAwB;IACrC,cAAc;IACd;IACA;IACA;IACD,CAAC;AAEF,OAAI,WAAW,KACb,QAAO;AAGT,OAAI,kBAAkB,gBACpB,QAAO,OAAO,UAAU;AAG1B,OAAI,OAAO,WAAW,SACpB,QAAO;AAGT,OAAI,WAAW,OACb,QAAO,OAAO,OAAO;;AAIzB,SAAO,OAAO,UAAU;IAE1B,CAAC,UAAU,wBAAwB,CACpC;CAED,MAAM,qBAAqB,aACxB,MAAM,cAAc;AACnB,MAAI,uBAAuB;GACzB,MAAM,YAAY,gBAAgB;AAClC,OAAI,aAAa,OAAO,MAAM,GAAG,KAAK,OAAO,UAAU,GAAG,EAAE;AAE1D,QAAI,SAAS,OACX,SAAQ,QAAQ;KACd,UAAU,SAAS;KACnB,QAAQ;KACT,CAAC;AAEJ,oBAAgB,KAAK;AACrB,yBAAqB,MAAM;AAC3B;;;EAIJ,MAAM,eAAe,IAAI,gBAAgB,SAAS,OAAO;AACzD,eAAa,IAAI,QAAQ,KAAK,GAAG;EACjC,MAAM,eAAe,kBAAkB,cAAc,MAAM,UAAU;AAErE,UAAQ,KAAK;GACX,UAAU,SAAS;GACnB,QAAQ;GACT,CAAC;AACF,kBAAgB,KAAK;AACrB,uBAAqB,MAAM;IAE7B;EACE;EACA;EACA;EACA;EACA;EACD,CACF;CAED,MAAM,iBAAiB,aACpB,YAAY,YAAY,qBAAqB,wBAAwB,IAGtE,EAAE,CACH;CAED,MAAM,2BAA2B,kBAAkB;AACjD,sBAAoB,aAAa,CAAC,SAAS;IAC1C,EAAE,CAAC;CAEN,MAAM,eAAe,aAAa,MAAM,OAAO;AAC7C,MAAI,CAAC,KAAM,QAAO;AAClB,MAAI,KAAK,GAAG,UAAU,KAAK,GAAI,QAAO;AACtC,MAAI,KAAK,SACP,MAAK,MAAM,SAAS,KAAK,UAAU;GACjC,MAAM,QAAQ,aAAa,OAAO,GAAG;AACrC,OAAI,MAAO,QAAO;;AAGtB,SAAO;IACN,EAAE,CAAC;AAEN,iBAAgB;EAEd,MAAM,SADe,IAAI,gBAAgB,SAAS,OAAO,CAC7B,IAAI,OAAO;AACvC,MAAI,UAAU,cAAc,SAAS,GAAG;GAEtC,IAAI,OAAO;AACX,QAAK,MAAM,QAAQ,eAAe;AAChC,WAAO,aAAa,MAAM,OAAO;AACjC,QAAI,KAAM;;AAEZ,OAAI,QAAQ,KAAK,OAAO,cAAc,IAAI;AACxC,oBAAgB,KAAK;AACrB,yBAAqB,MAAM;;;IAG9B;EAAC,SAAS;EAAQ;EAAe;EAAc;EAAa,CAAC;AAEhE,iBAAgB;AACY,kBAAgB;AAE1C,MAAI,WAAW;GACb,MAAM,OAAO,EAAE;AACf,aAAU,+BAA+B,SAAS,iBAAiB;IACjE,MAAM,cAAc,sBAAsB,aAAa;AACvD,QAAI,YACF,MAAK,KAAK,YAAY;KAExB;AACF,oBAAiB,KAAK;GAGtB,MAAM,eAAe,IAAI,gBAAgB,SAAS,OAAO;GACzD,MAAM,SAAS,aAAa,IAAI,OAAO;GACvC,IAAI,eAAe;AAEnB,OAAI,UAAU,KAAK,SAAS,EAE1B,MAAK,MAAM,QAAQ,MAAM;AACvB,mBAAe,aAAa,MAAM,OAAO;AACzC,QAAI,aAAc;;AAKtB,OAAI,cAAc;AAChB,oBAAgB,aAAa;AAC7B,yBAAqB,MAAM;AAC3B,0BAAsB,MAAM;cACnB,KAAK,SAAS,GAAG;IAC1B,MAAM,YAAY,KAAK;AACvB,QAAI,uBAAuB;AAEzB,qBAAgB,UAAU;AAC1B,0BAAqB,MAAM;AAC3B,2BAAsB,MAAM;WACvB;AAEL,kBAAa,IAAI,QAAQ,UAAU,GAAG;AACtC,aAAQ,QAAQ;MACd,UAAU,SAAS;MACnB,QAAQ,aAAa,UAAU;MAChC,CAAC;AACF,qBAAgB,UAAU;AAC1B,0BAAqB,MAAM;AAC3B,2BAAsB,MAAM;;;;AAIlC,kBAAgB,UAAU;IACzB;EACD;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,iBAAgB;AACd,gCAA8B,MAAM;IACnC,CAAC,8BAA8B,CAAC;AAInC,iBAAgB;AACd,MAAI,UACF,kBAAiB,EAAE,OAAO,EAAE,WAAW,KAAK,EAAE,CAAC;IAEhD;EAAC;EAAkB;EAAG;EAAU,CAAC;AAEpC,QACE,oCAAC,eAAY,SAAS,gBACpB,oCAAC;EACC,MAAM;EACN,SAAQ;GACR,EACF,oCAAC,SAAI,WAAW,QAAQ,QACtB,oCAAC,SAAI,WAAW,QAAQ,WACtB,oCAAC;EACC,OAAO,WAAW,QAAQ;EAC1B,iBAAiB;EACjB,WAAW;EACX,eAAe;EACf,qBAAqB;EACrB,mCAAmC;EACnC,gBAAgB;IAEhB,oCAAC;EAAI,WAAW,QAAQ;EAAa,KAAK;IACvC,eAAe,SAAS,KACvB,CAAC,eACD,cAAc,KAAK,WAAW,UAC5B,oCAAC;EAAI,KAAK,UAAU;EAAI,WAAW,QAAQ;IACzC,oCAAC;EACY;EACX,cAAc;EACd,YAAY;EACZ,WAAW;EACX,gBAAgB,cAAc;EAC9B,sBAAsB,cAAc;EACnB;EACjB,cAAc,kBAAkB;GAChC,CACE,CACN,EACH,eACC,oCAAC,SAAI,WAAW,QAAQ,UACtB,oCAAC,cAAW,SAAS,cAAe,CAChC,CAEJ,CACS,CACb,EACN,oCAAC,SAAI,WAAW,QAAQ,WACrB,cACC,OAAO,gBAAgB,aACnB,YAAY;EAAE;EAAc;EAAe,CAAC,GAC5C,cAEJ,cAAc,YAAY,MAAM,MAC9B,oCAAC;EACO;EACN,KAAK,cAAc;EACT;EACG;EACb,cAAc;GACZ,QAAQ,UAAU;GAClB,YAAY,cAAc,YAAY,MAAM,QAAQ;GACpD,eAAe,cAAc,YAAY,MAAM;GAC/C,mBACE,cAAc,YAAY,MAAM;GAClC,UAAU,cAAc,YAAY,MAAM;GAC1C,SAAS,cAAc,YAAY,MAAM;GACzC,eAAe,cAAc,YAAY,MAAM;GACzB;GACvB;EACD,gBAAgB;EAChB,UAAU;GACV,CAGF,CACF,CACM;;AAIlB,uBAAe"}
@@ -1,7 +1,7 @@
1
1
  import { t as ConfigService } from "./configService-C4uoG3wj.js";
2
2
  import { t as apiMutate } from "./useAxiosMutate-DcLxzykX.js";
3
3
  import { n as formatDataWithTimelineCategoryNameOrderedByDate } from "./mttFunctions-ioZ0_5JX.js";
4
- import { t as IconRenderer } from "./IconRenderer-DFpfUgfn.js";
4
+ import { t as IconRenderer } from "./IconRenderer-B6ZoqrTX.js";
5
5
  import { t as MttYearTag } from "./MttYearTag-Cw8OyKTy.js";
6
6
  import { a as TimelineWrapper, i as MultiDot, n as TimelinePreloaderNode, o as TimelineNode, r as VisualizationDot, t as DynamicRangeSlider } from "./DynamicRangeSlider-prr4fg8d.js";
7
7
  import React, { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
@@ -885,4 +885,4 @@ const MttMainTimeline = (props) => {
885
885
 
886
886
  //#endregion
887
887
  export { MttTimeline as n, HeightAdjuster as r, MttMainTimeline as t };
888
- //# sourceMappingURL=MttMainTimeline-rLgkgX8U.js.map
888
+ //# sourceMappingURL=MttMainTimeline-CW0QNrZw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MttMainTimeline-rLgkgX8U.js","names":["years","uniqueYears","plots","demoDates","unique","startDate","endDate","item","dates","data","data"],"sources":["../src/componentSystems/multiThreadTimeline/mttMainTimeline/HeightAdjust.jsx","../src/componentSystems/multiThreadTimeline/mttMainTimeline/MttTimeline.jsx","../src/componentSystems/multiThreadTimeline/mttMainTimeline/MttMainTimeline.jsx"],"sourcesContent":["import React from 'react';\nimport { Slider, IconButton } from '@material-ui/core';\nimport { LineSpacingIcon, MinimumValueIcon } from '@fluentui/react-icons';\n\nexport const HeightAdjuster = ({ verticalAdjuster, setVerticalAdjuster }) => {\n const handleAdjusterChange = (event, newValue) => {\n setVerticalAdjuster(newValue);\n };\n const handleDecreaseClick = () => {\n setVerticalAdjuster(verticalAdjuster - 1);\n };\n const handleIncreaseClick = () => {\n setVerticalAdjuster(verticalAdjuster + 1);\n };\n return (\n <div style={{ display: 'flex' }}>\n <IconButton onClick={handleDecreaseClick}>\n <div style={{ fontSize: 18 }}>\n <LineSpacingIcon />\n </div>\n </IconButton>\n <Slider\n value={verticalAdjuster}\n min={0}\n max={10}\n step={0.1}\n onChange={handleAdjusterChange}\n />\n <IconButton onClick={handleIncreaseClick}>\n <div style={{ rotate: '90deg', fontSize: 24 }}>\n <MinimumValueIcon />\n </div>\n </IconButton>\n </div>\n );\n};\n","import React, {\n useState,\n useEffect,\n useRef,\n memo,\n useCallback,\n useMemo\n} from 'react';\nimport {\n makeStyles,\n Typography,\n useTheme,\n Fade,\n lighten,\n Button\n} from '@material-ui/core';\nimport { IconRenderer } from '../../../UI/templates/ui/renderers/IconRenderer';\nimport { TimelineNode } from '../ui/TimelineNode';\nimport { TimelineWrapper } from '../ui/TimelineWrapper';\nimport { MultiDot } from '../ui/MultiDot';\nimport { VisualizationDot } from '../ui/VisualizationDot';\nimport { TimelinePreloaderNode } from '../ui/TimelinePreloaderNode';\nimport 'react-range-slider-input/dist/style.css';\nimport { MttYearTag } from '../ui/MttYearTag';\nimport { DynamicRangeSlider } from '../ui/DynamicRangeSlider';\nimport { HeightAdjuster } from './HeightAdjust';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n horizontalDash: {\n backgroundImage:\n 'linear-gradient(to right, grey 33%, rgba(255,255,255,0) 0%)',\n backgroundPosition: 'bottom',\n backgroundSize: '16px 1px',\n backgroundRepeat: 'repeat-x'\n },\n slider: {\n height: 600\n },\n categoryBar: {\n background: lighten(theme.palette.common.black, 0.5),\n color: theme.palette.common.white,\n display: 'flex',\n alignItems: 'center'\n },\n categoryBarPlacement: {\n position: 'absolute',\n left: 0\n },\n categoryLabel: {\n transform: 'rotate(90deg)',\n width: 28\n },\n button: {\n '&:hover': {\n textDecoration: 'line-through'\n }\n }\n}));\n// eslint-disable-next-line react/display-name\nexport const MttTimeline = memo((props) => {\n const [showAllDetails] = useState(false);\n const [startRange, setStartRange] = useState(10);\n const [endRange, setEndRange] = useState();\n const [startDate, setStartDate] = useState();\n const [endDate, setEndDate] = useState();\n const [displayRangeFilter, setDisplayRangeFilter] = useState(true);\n const [threadHeight, setThreadHeight] = useState(92);\n const [recordLength, setRecordLength] = useState();\n const [containerWidth, setContainerWidth] = useState();\n const [showMonthMarkers, setShowMonthMarkers] = useState(false);\n const [showYearMarkers, setShowYearMarkers] = useState(false);\n const [verticalAdjuster, setVerticalAdjuster] = useState(4.5);\n const [uniqueTimelines, setUniqueTimelines] = useState(0);\n\n const classes = useStyles(props);\n const { data, loading } = props;\n const theme = useTheme();\n\n const visualizationYScale = 40;\n\n useEffect(() => {\n const years = [];\n data &&\n data.map((item) => {\n years.push(item.date.slice(-4));\n });\n\n //unique years\n const uniqueYears = [...new Set(years)].sort();\n\n data && setStartDate(uniqueYears[0] + '-01-01');\n data && setEndDate(uniqueYears[uniqueYears.length - 1] + '-12-31');\n }, [data]);\n\n const mainContainer = useRef(null);\n\n useEffect(() => {\n setContainerWidth(\n mainContainer.current ? mainContainer.current.offsetWidth : 0\n );\n }, []);\n\n let movement_timer = null;\n const RESET_TIMEOUT = 10;\n\n const set_dimensions = () => {\n if (mainContainer.current) {\n setContainerWidth(mainContainer.current.offsetWidth);\n }\n };\n\n window.addEventListener('resize', () => {\n clearInterval(movement_timer);\n movement_timer = setTimeout(set_dimensions, RESET_TIMEOUT);\n });\n\n const years = [];\n data &&\n data.map((item) => {\n years.push(item.date.slice(-4));\n });\n\n //unique years\n const uniqueYears = [...new Set(years)];\n\n let demoApiConfigDate = [];\n\n uniqueYears.map((item) => {\n demoApiConfigDate.push('01/01/' + item);\n });\n\n let yearsInRange = [];\n\n yearsInRange.push(Number(demoApiConfigDate[1]?.slice(-4)) + 1);\n\n let yearsToDisplay = [];\n\n yearsInRange.map((item) => {\n yearsToDisplay.push('01/01/' + item);\n });\n\n demoApiConfigDate.map((item) => {\n yearsToDisplay.unshift(item);\n });\n\n const yearRange = yearsToDisplay.sort();\n\n // could change plotting on range change by switching data with filteredByDate\n\n const getSingleGroupedData = useCallback(() => {\n const flatOne = data && data.map((item) => item.dates).flat();\n const flatTwo =\n data &&\n flatOne &&\n flatOne.map((item) => {\n return item.details;\n });\n return flatTwo;\n }, [data]);\n\n // Sort date\n\n const sortDate =\n data &&\n getSingleGroupedData().sort(function (a, b) {\n const c = new Date(a.date);\n const d = new Date(b.date);\n return c - d;\n });\n\n // Convert date format\n\n let dataConvertedDate =\n data &&\n sortDate.map((item) => ({\n ...item,\n date: new Date(item.date).toLocaleDateString()\n }));\n\n function formatDate(date) {\n return new Date(date).toLocaleDateString('en-US');\n }\n\n const getPositionFromDate = useCallback(\n (initDate) => {\n const start = new Date(yearRange[1]);\n const end = new Date(yearRange[2]);\n\n const rangeStart = [initDate];\n\n const dateList = [new Date(start).toLocaleDateString()];\n\n let loop = new Date(start);\n while (loop <= end) {\n const newDate = loop.setDate(loop.getDate() + 1);\n loop = new Date(newDate);\n dateList.push(loop.toLocaleDateString());\n }\n\n const mappedToObjects = dateList.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= dateList.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const startDate = mergePlots\n .filter(({ date }) => rangeStart.includes(date))\n .map(({ plots }) => plots)\n .toString();\n return startDate;\n },\n [yearRange]\n );\n\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let unique = [...new Set(demoDates)];\n\n useEffect(() => {\n setEndRange(\n unique && Number(getPositionFromDate(unique.slice(-1).pop())) + 66\n );\n }, []);\n\n const getDatesFromRangeSelectionCompact = useCallback(\n (left, right) => {\n const rangeStart = [Math.round(left)];\n const rangeEnd = [Math.round(right)];\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let unique = [...new Set(demoDates)];\n\n const getNextDay = () => {\n const dateString = unique[unique.length - 1];\n const date = new Date(dateString);\n date.setDate(date.getDate() + 1);\n const month = date.getMonth() + 1;\n const day = date.getDate();\n const year = date.getFullYear();\n return `${month}/${day}/${year}`;\n };\n\n const nextDay = getNextDay();\n unique.push(nextDay);\n\n const mappedToObjects = unique.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i * 10);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const startDate = mergePlots\n .filter(({ plots }) => rangeStart.includes(plots))\n .map(({ date }) => date)\n .toString();\n\n const endDate = mergePlots\n .filter(({ plots }) => rangeEnd.includes(plots))\n .map(({ date }) => date)\n .toString();\n\n setStartDate(startDate);\n setEndDate(endDate);\n },\n [dataConvertedDate]\n );\n\n const getRangeValues = useCallback((rangeValue) => {\n const left = rangeValue[0];\n const right = rangeValue[1];\n setStartRange(Math.round(left));\n setEndRange(Math.round(right));\n }, []);\n\n const processRangeValues = () => {\n endRange && getDatesFromRangeSelectionCompact(startRange, endRange);\n };\n\n // Plot YV\n const plotYV = useCallback(\n (item) => {\n const plotDate = [item];\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let demoDatesTwo = [];\n\n data &&\n data.map((item) => {\n demoDatesTwo.push(item.date);\n });\n\n let unique = [...new Set(demoDatesTwo)];\n\n let results = unique.map((date) => new Date(date));\n\n const resultsSorted = results.sort((a, b) => a.getTime() - b.getTime());\n\n const dtest = resultsSorted.map((date) => date.toLocaleDateString());\n\n const mappedToObjects = dtest.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const res = mergePlots\n .filter(({ date }) => plotDate.includes(date))\n .map(({ plots }) => plots);\n\n const order = res.map((item) => {\n return item;\n });\n\n const plot = order;\n\n return plot;\n },\n [data, dataConvertedDate]\n );\n\n function compareDate(date1, date2, comparison) {\n const date1Month = Number(date1.split('/')[0]);\n const date2Month = Number(date2.split('/')[0]);\n const date1Day = Number(date1.split('/')[1]);\n const date2Day = Number(date2.split('/')[1]);\n const date1Year = Number(date1.split('/')[2]);\n const date2Year = Number(date2.split('/')[2]);\n if (comparison === '>') {\n if (date1Year > date2Year) {\n return true;\n } else if (date1Year === date2Year) {\n if (date1Month > date2Month) {\n return true;\n } else if (date1Month === date2Month) {\n if (date1Day > date2Day) {\n return true;\n }\n }\n }\n return false;\n } else {\n if (date1Year < date2Year) {\n return true;\n } else if (date1Year === date2Year) {\n if (date1Month < date2Month) {\n return true;\n } else if (date1Month === date2Month) {\n if (date1Day < date2Day) {\n return true;\n }\n }\n }\n return false;\n }\n }\n\n function minnifyTimelineObject(object) {\n let cleanObject = [];\n let notUsed = false;\n object.forEach((obj, i) => {\n if (cleanObject.length === 0) {\n cleanObject.push({\n timeline: obj.timeline,\n subThread: obj.subThread,\n firstDate: formatDate(obj.date),\n lastDate: formatDate(obj.date),\n color: obj.color,\n icon: obj.iconID\n });\n } else {\n notUsed = true;\n cleanObject.forEach((clnObj) => {\n if (\n obj.timeline === clnObj.timeline &&\n obj.subThread === clnObj.subThread\n ) {\n if (\n compareDate(\n formatDate(obj.date),\n formatDate(clnObj.firstDate),\n '<'\n )\n ) {\n clnObj.firstDate = formatDate(obj.date);\n } else if (\n compareDate(\n formatDate(obj.date),\n formatDate(clnObj.lastDate),\n '>'\n )\n ) {\n clnObj.lastDate = formatDate(obj.date);\n }\n notUsed = false;\n }\n });\n }\n if (notUsed) {\n cleanObject.push({\n timeline: obj.timeline,\n subThread: obj.subThread,\n firstDate: formatDate(obj.date),\n lastDate: formatDate(obj.date),\n color: obj.color,\n icon: obj.iconID\n });\n }\n });\n return cleanObject;\n }\n\n let dates = [];\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n dates.push(item.date);\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n const startDateSet = useMemo(() => new Date(startDate), [startDate]);\n const endDateSet = useMemo(() => new Date(endDate), [endDate]);\n\n const filteredByDate =\n data &&\n data.filter((item) => {\n const date = new Date(item.date);\n return date >= startDateSet && date < endDateSet;\n });\n\n const buildCategoryLines = useCallback(() => {\n const xLine =\n data &&\n filteredByDate?.map((item) => {\n return item.timeline.toString() + '.' + item.subThread.toString();\n });\n\n let unique = [...new Set(xLine)];\n return unique;\n }, [filteredByDate, data]);\n\n const minnifiedResult = data && minnifyTimelineObject(filteredByDate);\n\n const detailedComponentSize = 130;\n const summaryComponentSize = 73;\n //const overviewComponentSize = 50;\n\n //const detailBreakpoint = Math.round(containerWidth / detailedComponentSize);\n const summaryBreakpoint = Math.round(containerWidth / detailedComponentSize);\n const overviewBreakpoint = Math.round(containerWidth / summaryComponentSize);\n\n useEffect(() => {\n const filteredByDate =\n data &&\n data.filter((item) => {\n const date = new Date(item.date);\n return date >= startDateSet && date <= endDateSet;\n });\n\n setRecordLength(filteredByDate?.length);\n }, [data, endDateSet, startDateSet]);\n\n const checkLinearLength = [];\n\n filteredByDate?.forEach((item) => {\n checkLinearLength.push(item.date);\n });\n\n let uniqueNodeScaleAmount = [...new Set(checkLinearLength)].length;\n\n const getScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 186;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const getXScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 186;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const getYScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 130;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const topMargin = uniqueNodeScaleAmount >= summaryBreakpoint ? 48 : 0;\n\n // Plot XV\n const plotXV = useCallback(\n (timeline, subThread) => {\n const xLine =\n data &&\n data.map((item) => {\n return item.timeline + '.' + item.subThread;\n });\n\n let unique = [...new Set(xLine)];\n\n const rowIndex = unique.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n const sortedRowIndex = rowIndex.sort((a, b) =>\n a.thread > b.thread ? 1 : -1\n );\n\n const concatIndex = timeline + '.' + subThread;\n const result = sortedRowIndex.map((v, index) => ({\n ...v,\n sortedRowIndex: index\n }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n const xplot = results[0] && results[0].sortedRowIndex * 50;\n return xplot - topMargin;\n },\n [data, topMargin]\n );\n\n const plotY = useCallback(\n (item) => {\n const plotDate = [item];\n\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let demoDatesTwo = [];\n\n dataConvertedDate &&\n filteredByDate.map((item) => {\n demoDatesTwo.push(item.date);\n });\n\n let unique = [...new Set(demoDatesTwo)];\n\n let results = unique.map((date) => new Date(date));\n\n const resultsSorted = results.sort((a, b) => a.getTime() - b.getTime());\n\n const dtest = resultsSorted.map((date) => date.toLocaleDateString());\n\n const mappedToObjects = dtest.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const res =\n mergePlots &&\n mergePlots\n .filter(({ date }) => plotDate.includes(date))\n .map(({ plots }) => plots);\n\n const order =\n mergePlots &&\n res.map((item) => {\n return item;\n });\n\n const plot = order * getYScale();\n\n return plot - getYScale() + (getYScale() === 130 ? 32 : 8);\n },\n [dataConvertedDate, getYScale, filteredByDate]\n );\n\n const plotX = useCallback(\n (timeline, subThread) => {\n const xLine =\n data &&\n filteredByDate.map((item) => {\n return item.timeline + '.' + item.subThread;\n });\n\n let unique = [...new Set(xLine)];\n\n const rowIndex = unique.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n // const sortedRowIndex = rowIndex.sort((a, b) =>\n // a.thread > b.thread ? 1 : -1\n // );\n\n const orderByThread = (unordered) => {\n let maxElement = 0;\n unordered.forEach((value) => {\n if (value.thread.split('.')[0] > maxElement) {\n maxElement = value.thread.split('.')[0];\n }\n });\n let sortArray = [...Array(+maxElement)].map((e) => (e = []));\n unordered.forEach((value) => {\n sortArray[+value.thread.split('.')[0] - 1].push(value);\n });\n sortArray.forEach((value) => {\n value.sort((a, b) => {\n return +a.thread.split('.')[1] - +b.thread.split('.')[1];\n });\n });\n return sortArray.flat();\n };\n\n const sortedRowIndex = orderByThread(rowIndex);\n const concatIndex = timeline + '.' + subThread;\n const result = sortedRowIndex.map((v, index) => ({\n ...v,\n sortedRowIndex: index\n }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n\n const xplot = results[0] && results[0].sortedRowIndex * getXScale();\n return xplot + topMargin;\n },\n [data, getXScale, topMargin, filteredByDate]\n );\n\n // Map to named months\n const MONTHS = {\n 1: 'Jan',\n 2: 'Feb',\n 3: 'March',\n 4: 'Apr',\n 5: 'May',\n 6: 'June',\n 7: 'July',\n 8: 'Aug',\n 9: 'Sept',\n 10: 'Oct',\n 11: 'Nov',\n 12: 'Dec'\n };\n\n const convertNumberToMonths = (months) => {\n // Convert months to order\n const orderedMonths = months;\n orderedMonths.sort(function (a, b) {\n return a - b;\n });\n\n // Map to named months\n const output = orderedMonths.map(function (i) {\n return MONTHS[i];\n });\n\n return output;\n };\n\n function lastDayOfMonthArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '12/31/9999';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay < Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '12/31/9999') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n const returnObject = dates.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n useEffect(() => {\n const timelineSet = new Set();\n data &&\n data.forEach((item) => {\n const timelineKey = `${item.timeline}-${item.subThread}`;\n timelineSet.add(timelineKey);\n });\n setUniqueTimelines(timelineSet.size);\n }, [data]);\n\n function lastDayOfYearArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '00/00/00';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay > Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '00/00/00') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n dates.sort((a, b) => new Date(a) - new Date(b));\n let dateArr = [];\n for (let x = 0; x < dates.length; x++) {\n if (\n x === dates.length - 1 ||\n Number(dates[x].split('/')[2]) !== Number(dates[x + 1].split('/')[2])\n ) {\n dateArr.push(dates[x]);\n }\n }\n const returnObject = dateArr.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n function firstDayOfYearArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '12/31/9999';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay < Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '12/31/9999') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n dates.sort((a, b) => new Date(b) - new Date(a));\n let dateArr = [];\n for (let x = 0; x < dates.length; x++) {\n if (\n x === dates.length - 1 ||\n Number(dates[x].split('/')[2]) !== Number(dates[x + 1].split('/')[2])\n ) {\n dateArr.push(dates[x]);\n }\n }\n dateArr.sort((a, b) => new Date(a) - new Date(b));\n const returnObject = dateArr.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n const Today = (object) => {\n const dateList = [];\n object &&\n object.map((item) => {\n dateList.push(item.date);\n });\n\n let unique = [...new Set(dateList)];\n\n const today = new Date().toLocaleDateString('en-US');\n\n //const todaysDate = unique.filter(date => date.includes('7/29/2022'));\n const todaysDate = unique.filter((date) => date.includes(today));\n\n return todaysDate;\n };\n\n const getInverseProportionalNumber = (inputNumber) => {\n const reciprocal = 1 / inputNumber;\n const wholeNumber = Math.round(reciprocal * 400);\n return wholeNumber;\n };\n\n const visualizationSmall = 10;\n const visualizationLarge = 30;\n const rangeHandles = 18;\n const adjusterHeight = 100;\n\n // Plot category lines\n const GuideLinesShort = () => {\n const xLines = buildCategoryLines().map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n zIndex: 0,\n top: 186 * index\n }}\n >\n <div\n className={classes.horizontalDash}\n style={{ height: threadHeight }}\n />\n <div\n style={{\n //width: 'calc(100vw * 1.7)',\n width:\n // dataConvertedDate &&\n // mergePlots.slice(-1).pop().plots * nodeWidth,\n filteredByDate &&\n uniqueNodeScaleAmount * getXScale() + getXScale(),\n height: threadHeight,\n borderBottom: `${theme.palette.divider} 1px solid`\n }}\n />\n </div>\n );\n });\n\n return xLines;\n };\n\n const preloadArray = [...Array(7).keys()];\n\n //Format visualization hover card\n const VisualizationCard = ({ title, data, date, user }) => {\n return (\n <div>\n <Typography variant='subtitle2'> {title} </Typography>\n <div>\n <Typography variant='caption'> {data} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {date} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {user} </Typography>\n </div>\n </div>\n );\n };\n\n const VisualizationCardMulti = ({ title, data, date, user }) => {\n return (\n <div\n style={{\n width: 130,\n borderRadius: 4,\n marginBottom: 16,\n padding: 8\n }}\n >\n <div>\n <Typography variant='subtitle2'> {title} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {data} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {date} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {user} </Typography>\n </div>\n </div>\n );\n };\n\n // Plot Legend\n\n const categoryList = [];\n data &&\n filteredByDate.map((item) => {\n categoryList.push({\n label: item.timelineCategoryName,\n color: item.color,\n timeline: item.timeline\n });\n });\n\n const uniqueCategoryLegend = [\n ...new Map(categoryList.map((item) => [item['label'], item])).values()\n ];\n\n const uniqueCategoryLegendSorted = uniqueCategoryLegend.sort((a, b) =>\n a.timeline > b.timeline ? 1 : -1\n );\n\n const LegendDot = ({ background }) => {\n return (\n <div\n style={{\n width: 30,\n height: 15,\n background: lighten(background, 0.5),\n borderRadius: theme.spacing(6)\n }}\n />\n );\n };\n\n const LegendItem = ({ label, color }) => {\n return (\n <div\n style={{\n display: 'flex',\n alignItems: 'center'\n }}\n >\n <LegendDot background={'#' + color} />\n <div style={{ marginLeft: theme.spacing(1) }}>\n <Typography variant='caption'>{label} </Typography>\n </div>\n </div>\n );\n };\n\n const legend =\n data &&\n uniqueCategoryLegendSorted.map((item, index) => {\n return <LegendItem key={index} color={item.color} label={item.label} />;\n });\n\n // Plot category bar\n const plotCategoryBar = (timelineNumber, subThread) => {\n const xLine =\n data &&\n filteredByDate.map((item) => {\n return item.timeline.toString() + '.' + item.subThread.toString();\n });\n\n let unique = [...new Set(xLine)];\n\n const uniqueSorted = unique.sort(function (a, b) {\n return a.localeCompare(b);\n });\n\n const rowIndex = uniqueSorted.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n const concatIndex = timelineNumber + '.' + subThread;\n\n const result = rowIndex.map((v, index) => ({ ...v, rowIndex: index + 1 }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n\n //const xplot = results[0].rowIndex * threadHeight;\n const xplot =\n (results[0] && results[0].rowIndex * getXScale()) - getXScale();\n return xplot;\n\n // const plot = (timelineNumber * threadHeight - threadHeight) * subThread;\n // return plot;\n };\n\n const CategoryBar = ({ label, height }) => {\n return (\n <div className={classes.categoryBar} style={{ height: height }}>\n <div className={classes.categoryLabel}>\n <Typography variant='subtitle2'> {label} </Typography>\n </div>\n </div>\n );\n };\n\n const DateMarkers = (\n <div>\n {filteredByDate &&\n showYearMarkers &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n firstDayOfYearArray(filteredByDate).map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item.date)\n }}\n >\n <MttYearTag year>{item.date.split('/')[2]}</MttYearTag>\n </div>\n );\n })}\n {filteredByDate &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n showMonthMarkers &&\n lastDayOfMonthArray(filteredByDate).map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item.date)\n }}\n >\n <MttYearTag>\n {convertNumberToMonths([item.date.split('/')[0]])}\n </MttYearTag>\n </div>\n );\n })}\n\n {filteredByDate &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n Today(filteredByDate).map((item) => {\n return (\n <div\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item)\n }}\n >\n <MttYearTag year today>\n <Typography variant='caption'> TODAY </Typography>\n </MttYearTag>\n </div>\n );\n })}\n </div>\n );\n\n // timeline render\n return (\n <div>\n <div\n ref={mainContainer}\n style={{\n position: 'relative',\n // top: 45,\n height: '75vh',\n overflow: 'scroll'\n }}\n >\n {/* CategoryBar */}\n {!loading && (\n <>\n <div style={{ zIndex: 99999999, position: 'absolute', bottom: 0 }}>\n {DateMarkers}\n </div>\n\n {data &&\n data &&\n uniqueNodeScaleAmount < summaryBreakpoint &&\n filteredByDate.map((item, index) => {\n return (\n <div\n key={index}\n className={classes.categoryBarPlacement}\n style={{\n top:\n plotCategoryBar(\n Number(item.timeline),\n Number(item.subThread)\n ) + 0\n }}\n >\n <CategoryBar\n key={item.id}\n label={item.timelineCategoryName}\n height={data && getXScale()}\n />\n </div>\n );\n })}\n\n {data &&\n filteredByDate.map((item, index) => {\n return item.dates.length === 1 ? (\n <div\n key={index}\n style={{\n position: 'absolute',\n left: plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ),\n top: plotX(item.timeline, item.subThread),\n //top: 0,\n zIndex:\n 999999 -\n plotY(new Date(item.date).toLocaleDateString('en-US')) -\n item.subThread\n //zIndex: 9999999 - index * index,\n }}\n >\n <TimelineNode\n icon={\n <IconRenderer\n noBorder\n value={{\n color: { hex: '#' + item.color },\n name: item.iconID\n }}\n />\n }\n dot={data && uniqueNodeScaleAmount <= overviewBreakpoint}\n dotColor={'#' + item.color}\n data={item.dates}\n details={\n data && uniqueNodeScaleAmount < summaryBreakpoint\n }\n height={\n (data &&\n uniqueNodeScaleAmount <= summaryBreakpoint &&\n 183) ||\n (data &&\n uniqueNodeScaleAmount <= overviewBreakpoint &&\n 30)\n }\n width={\n data && uniqueNodeScaleAmount < summaryBreakpoint && 130\n }\n boxStyle\n show={showAllDetails}\n iconColor={'#' + item.color}\n />\n </div>\n ) : (\n <div key={item.id}>\n <div\n style={{\n position: 'absolute',\n left:\n plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ) + 4,\n top: plotX(item.timeline, item.subThread),\n zIndex:\n 999999 -\n plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ) -\n item.timeline\n }}\n >\n <MultiDot map={item.dates} number={item.dates.length} />\n </div>\n </div>\n );\n })}\n\n <Fade in={data && uniqueNodeScaleAmount >= summaryBreakpoint}>\n <div>\n {data &&\n minnifiedResult.map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n //zIndex: 0,\n left: plotY(item.firstDate) + 2,\n top:\n data && uniqueNodeScaleAmount > overviewBreakpoint\n ? 14 + plotX(item.timeline, item.subThread)\n : 4 + plotX(item.timeline, item.subThread)\n }}\n >\n <TimelineWrapper\n timeline={item.timeline}\n style={{\n width:\n plotY(item.lastDate) - plotY(item.firstDate) + 45,\n height:\n data && uniqueNodeScaleAmount > overviewBreakpoint\n ? 20\n : 40,\n backgroundColor: lighten('#' + item.color, 0.7)\n }}\n />\n </div>\n );\n })}\n </div>\n </Fade>\n {/* <Fade in={data && filteredByDate.length < mttBreakpointMd}> */}\n {data && uniqueNodeScaleAmount < summaryBreakpoint && (\n <div>\n <GuideLinesShort />\n </div>\n )}\n </>\n )}\n {/* </Fade> */}\n </div>\n\n {/* lower Section //////////////////////////////////////////////////////////////////////////////////////////////// */}\n <div style={{ width: 250 }}>\n <HeightAdjuster\n verticalAdjuster={verticalAdjuster}\n setVerticalAdjuster={setVerticalAdjuster}\n />\n </div>\n\n {!loading && (\n <div\n style={{\n position: 'relative',\n borderTop: '1px solid lightgrey',\n overflow: 'scroll'\n }}\n >\n <div>\n {data && displayRangeFilter && (\n <div\n style={{\n overflow: 'scroll'\n }}\n >\n <div key={data}>\n <DynamicRangeSlider\n id='range-slider'\n step={10}\n threads={10 * uniqueTimelines}\n width={containerWidth - rangeHandles}\n margin={\n topMargin +\n getInverseProportionalNumber(verticalAdjuster) * 3\n }\n defaultValue={[10, unique.length * 10]}\n max={unique.length * 10}\n min={10}\n onThumbDragEnd={processRangeValues}\n onRangeDragEnd={processRangeValues}\n onInput={(e) => getRangeValues(e)}\n />\n </div>\n </div>\n )}\n\n <div>\n {data &&\n data.map((item, index) => {\n return item.dates.length === 1 ? (\n <div\n key={index}\n style={{\n position: 'absolute',\n left:\n dataConvertedDate &&\n plotYV(\n new Date(item.date).toLocaleDateString('en-US')\n ) *\n (containerWidth / unique.length) -\n (visualizationSmall + rangeHandles),\n top:\n plotXV(item.timeline, item.subThread) /\n verticalAdjuster +\n visualizationYScale +\n adjusterHeight\n }}\n >\n <VisualizationDot\n type={item.dates[0].details.shortDescription}\n hover={\n <VisualizationCard\n title={item.dates[0].details.shortDescription}\n data={item.dates[0].details.data1}\n date={item.dates[0].details.date}\n //user={item.dates[0].details.data2}\n />\n }\n />\n </div>\n ) : (\n <div key={item.id}>\n <div\n style={{\n position: 'absolute',\n left:\n dataConvertedDate &&\n plotYV(\n new Date(item.date).toLocaleDateString('en-US')\n ) *\n (containerWidth / unique.length) -\n (visualizationSmall + rangeHandles),\n top:\n plotXV(item.timeline, item.subThread) /\n verticalAdjuster +\n visualizationYScale +\n adjusterHeight\n }}\n >\n <VisualizationDot\n hover={\n <div style={{ color: 'black' }}>\n {item.dates.map((item) => {\n return (\n <VisualizationCardMulti\n title={item.details.description}\n date={item.details.date}\n key={item.id}\n />\n );\n })}\n </div>\n }\n multi\n >\n {item.dates.length}\n </VisualizationDot>\n </div>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n )}\n\n {/* Preloading */}\n <div style={{ position: 'absolute', top: 0, left: 0, zIndex: 10 }}>\n {loading &&\n preloadArray.map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n left: Math.floor(Math.random() * 11) * 60 + 40,\n top: (index + 1) * 80\n }}\n >\n <TimelinePreloaderNode longView loading={loading} />\n </div>\n );\n })}\n </div>\n {/* Preloading End */}\n\n {/* Legend */}\n {uniqueNodeScaleAmount >= summaryBreakpoint && (\n <div\n style={{\n position: 'absolute',\n right: 0,\n top: 0,\n zIndex: 999999999,\n background: 'white',\n borderRadius: 4\n }}\n >\n <div\n style={{\n display: 'flex',\n padding: theme.spacing(1),\n gap: theme.spacing(3)\n }}\n >\n {legend}\n\n <Button\n className={classes.button}\n onClick={() => setShowMonthMarkers(!showMonthMarkers)}\n >\n <span\n style={{ textDecoration: !showMonthMarkers && 'line-through' }}\n >\n M\n </span>\n </Button>\n <Button\n className={classes.button}\n onClick={() => setShowYearMarkers(!showYearMarkers)}\n >\n <span\n style={{ textDecoration: !showYearMarkers && 'line-through' }}\n >\n Y\n </span>\n </Button>\n </div>\n </div>\n )}\n {/* Breakpoint testing */}\n {/* <div\n style={{\n position: 'absolute',\n left: 0,\n top: 0,\n zIndex: 999999999,\n background: 'white',\n borderRadius: 4,\n }}\n >\n <Typography variant=\"caption\">\n Data nodes:\n <span style={{ fontWeight: 700 }}>\n {filteredByDate.length} ::::::::::\n </span>\n <span style={{ fontWeight: 700 }}>\n {uniqueNodeScaleAmount} ::::::::::\n </span>\n Summary Breakpoint:\n <span style={{ fontWeight: 700 }}>\n {summaryBreakpoint} ::::::::::\n </span>\n Overview Breakpoint:\n <span style={{ fontWeight: 700 }}>{overviewBreakpoint} ::::::::</span>\n Container Width:\n <span style={{ fontWeight: 700 }}>{containerWidth} :::::::::</span>\n Summary Width: Circle\n <span style={{ fontWeight: 700 }}>\n {summaryComponentSize} ::::::::\n </span>\n Overview width: Dot\n <span style={{ fontWeight: 700 }}>\n {overviewComponentSize} :::::::\n </span>\n </Typography>\n </div> */}\n </div>\n );\n});\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { apiMutate } from '../../../utilities/useAxiosMutate';\nimport { formatDataWithTimelineCategoryNameOrderedByDate } from '../functions/mttFunctions';\nimport { MttTimeline } from './MttTimeline';\nimport { ConfigService } from '../../../configService';\n\nexport const MttMainTimeline = (props) => {\n const { timelineApiMethodInstanceId, params = {} } = props;\n const [timelineThreads, setTimelineThreads] = useState(null);\n const [data, setData] = useState();\n const [loading, setLoading] = useState(false);\n\n const executeQueryInstance = useCallback(\n async (apiMethodInstanceId, data = {}) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryInstance/${apiMethodInstanceId}`,\n {\n method: 'post'\n },\n { data: data }\n ),\n []\n );\n\n useEffect(() => {\n const fetchTimelineThreads = async () => {\n const timelineResponse = await executeQueryInstance(\n timelineApiMethodInstanceId\n ).catch((e) => e);\n\n if (timelineResponse?.status === 200) {\n setTimelineThreads(timelineResponse?.data?.pageList || []);\n }\n };\n fetchTimelineThreads();\n }, [executeQueryInstance, timelineApiMethodInstanceId]);\n\n useEffect(() => {\n const fetchThreadEvents = async () => {\n if (!timelineThreads) {\n return null;\n }\n setLoading(true);\n const promises = [];\n const threadList = [];\n timelineThreads.forEach((thread) => {\n promises.push(executeQueryInstance(thread.queryID, { ...params }));\n });\n await Promise.all(\n promises.map((p) =>\n p.catch((e) => {\n setLoading(false);\n return e;\n })\n )\n ).then((responses) => {\n responses.forEach((response, index) => {\n if (response.status === 200) {\n const timelineThread = timelineThreads[index];\n if (response?.data?.pageList) {\n response.data.pageList.forEach(\n (evt) => (evt.threadId = timelineThread.name)\n );\n const thread = {\n ...timelineThread,\n events: response.data.pageList\n };\n threadList.push(thread);\n }\n }\n });\n setLoading(false);\n });\n setData(formatDataWithTimelineCategoryNameOrderedByDate(threadList));\n };\n fetchThreadEvents();\n }, [executeQueryInstance, timelineThreads, params]);\n\n return <MttTimeline data={data} loading={loading} />;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"MttMainTimeline-CW0QNrZw.js","names":["years","uniqueYears","plots","demoDates","unique","startDate","endDate","item","dates","data","data"],"sources":["../src/componentSystems/multiThreadTimeline/mttMainTimeline/HeightAdjust.jsx","../src/componentSystems/multiThreadTimeline/mttMainTimeline/MttTimeline.jsx","../src/componentSystems/multiThreadTimeline/mttMainTimeline/MttMainTimeline.jsx"],"sourcesContent":["import React from 'react';\nimport { Slider, IconButton } from '@material-ui/core';\nimport { LineSpacingIcon, MinimumValueIcon } from '@fluentui/react-icons';\n\nexport const HeightAdjuster = ({ verticalAdjuster, setVerticalAdjuster }) => {\n const handleAdjusterChange = (event, newValue) => {\n setVerticalAdjuster(newValue);\n };\n const handleDecreaseClick = () => {\n setVerticalAdjuster(verticalAdjuster - 1);\n };\n const handleIncreaseClick = () => {\n setVerticalAdjuster(verticalAdjuster + 1);\n };\n return (\n <div style={{ display: 'flex' }}>\n <IconButton onClick={handleDecreaseClick}>\n <div style={{ fontSize: 18 }}>\n <LineSpacingIcon />\n </div>\n </IconButton>\n <Slider\n value={verticalAdjuster}\n min={0}\n max={10}\n step={0.1}\n onChange={handleAdjusterChange}\n />\n <IconButton onClick={handleIncreaseClick}>\n <div style={{ rotate: '90deg', fontSize: 24 }}>\n <MinimumValueIcon />\n </div>\n </IconButton>\n </div>\n );\n};\n","import React, {\n useState,\n useEffect,\n useRef,\n memo,\n useCallback,\n useMemo\n} from 'react';\nimport {\n makeStyles,\n Typography,\n useTheme,\n Fade,\n lighten,\n Button\n} from '@material-ui/core';\nimport { IconRenderer } from '../../../UI/templates/ui/renderers/IconRenderer';\nimport { TimelineNode } from '../ui/TimelineNode';\nimport { TimelineWrapper } from '../ui/TimelineWrapper';\nimport { MultiDot } from '../ui/MultiDot';\nimport { VisualizationDot } from '../ui/VisualizationDot';\nimport { TimelinePreloaderNode } from '../ui/TimelinePreloaderNode';\nimport 'react-range-slider-input/dist/style.css';\nimport { MttYearTag } from '../ui/MttYearTag';\nimport { DynamicRangeSlider } from '../ui/DynamicRangeSlider';\nimport { HeightAdjuster } from './HeightAdjust';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n horizontalDash: {\n backgroundImage:\n 'linear-gradient(to right, grey 33%, rgba(255,255,255,0) 0%)',\n backgroundPosition: 'bottom',\n backgroundSize: '16px 1px',\n backgroundRepeat: 'repeat-x'\n },\n slider: {\n height: 600\n },\n categoryBar: {\n background: lighten(theme.palette.common.black, 0.5),\n color: theme.palette.common.white,\n display: 'flex',\n alignItems: 'center'\n },\n categoryBarPlacement: {\n position: 'absolute',\n left: 0\n },\n categoryLabel: {\n transform: 'rotate(90deg)',\n width: 28\n },\n button: {\n '&:hover': {\n textDecoration: 'line-through'\n }\n }\n}));\n// eslint-disable-next-line react/display-name\nexport const MttTimeline = memo((props) => {\n const [showAllDetails] = useState(false);\n const [startRange, setStartRange] = useState(10);\n const [endRange, setEndRange] = useState();\n const [startDate, setStartDate] = useState();\n const [endDate, setEndDate] = useState();\n const [displayRangeFilter, setDisplayRangeFilter] = useState(true);\n const [threadHeight, setThreadHeight] = useState(92);\n const [recordLength, setRecordLength] = useState();\n const [containerWidth, setContainerWidth] = useState();\n const [showMonthMarkers, setShowMonthMarkers] = useState(false);\n const [showYearMarkers, setShowYearMarkers] = useState(false);\n const [verticalAdjuster, setVerticalAdjuster] = useState(4.5);\n const [uniqueTimelines, setUniqueTimelines] = useState(0);\n\n const classes = useStyles(props);\n const { data, loading } = props;\n const theme = useTheme();\n\n const visualizationYScale = 40;\n\n useEffect(() => {\n const years = [];\n data &&\n data.map((item) => {\n years.push(item.date.slice(-4));\n });\n\n //unique years\n const uniqueYears = [...new Set(years)].sort();\n\n data && setStartDate(uniqueYears[0] + '-01-01');\n data && setEndDate(uniqueYears[uniqueYears.length - 1] + '-12-31');\n }, [data]);\n\n const mainContainer = useRef(null);\n\n useEffect(() => {\n setContainerWidth(\n mainContainer.current ? mainContainer.current.offsetWidth : 0\n );\n }, []);\n\n let movement_timer = null;\n const RESET_TIMEOUT = 10;\n\n const set_dimensions = () => {\n if (mainContainer.current) {\n setContainerWidth(mainContainer.current.offsetWidth);\n }\n };\n\n window.addEventListener('resize', () => {\n clearInterval(movement_timer);\n movement_timer = setTimeout(set_dimensions, RESET_TIMEOUT);\n });\n\n const years = [];\n data &&\n data.map((item) => {\n years.push(item.date.slice(-4));\n });\n\n //unique years\n const uniqueYears = [...new Set(years)];\n\n let demoApiConfigDate = [];\n\n uniqueYears.map((item) => {\n demoApiConfigDate.push('01/01/' + item);\n });\n\n let yearsInRange = [];\n\n yearsInRange.push(Number(demoApiConfigDate[1]?.slice(-4)) + 1);\n\n let yearsToDisplay = [];\n\n yearsInRange.map((item) => {\n yearsToDisplay.push('01/01/' + item);\n });\n\n demoApiConfigDate.map((item) => {\n yearsToDisplay.unshift(item);\n });\n\n const yearRange = yearsToDisplay.sort();\n\n // could change plotting on range change by switching data with filteredByDate\n\n const getSingleGroupedData = useCallback(() => {\n const flatOne = data && data.map((item) => item.dates).flat();\n const flatTwo =\n data &&\n flatOne &&\n flatOne.map((item) => {\n return item.details;\n });\n return flatTwo;\n }, [data]);\n\n // Sort date\n\n const sortDate =\n data &&\n getSingleGroupedData().sort(function (a, b) {\n const c = new Date(a.date);\n const d = new Date(b.date);\n return c - d;\n });\n\n // Convert date format\n\n let dataConvertedDate =\n data &&\n sortDate.map((item) => ({\n ...item,\n date: new Date(item.date).toLocaleDateString()\n }));\n\n function formatDate(date) {\n return new Date(date).toLocaleDateString('en-US');\n }\n\n const getPositionFromDate = useCallback(\n (initDate) => {\n const start = new Date(yearRange[1]);\n const end = new Date(yearRange[2]);\n\n const rangeStart = [initDate];\n\n const dateList = [new Date(start).toLocaleDateString()];\n\n let loop = new Date(start);\n while (loop <= end) {\n const newDate = loop.setDate(loop.getDate() + 1);\n loop = new Date(newDate);\n dateList.push(loop.toLocaleDateString());\n }\n\n const mappedToObjects = dateList.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= dateList.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const startDate = mergePlots\n .filter(({ date }) => rangeStart.includes(date))\n .map(({ plots }) => plots)\n .toString();\n return startDate;\n },\n [yearRange]\n );\n\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let unique = [...new Set(demoDates)];\n\n useEffect(() => {\n setEndRange(\n unique && Number(getPositionFromDate(unique.slice(-1).pop())) + 66\n );\n }, []);\n\n const getDatesFromRangeSelectionCompact = useCallback(\n (left, right) => {\n const rangeStart = [Math.round(left)];\n const rangeEnd = [Math.round(right)];\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let unique = [...new Set(demoDates)];\n\n const getNextDay = () => {\n const dateString = unique[unique.length - 1];\n const date = new Date(dateString);\n date.setDate(date.getDate() + 1);\n const month = date.getMonth() + 1;\n const day = date.getDate();\n const year = date.getFullYear();\n return `${month}/${day}/${year}`;\n };\n\n const nextDay = getNextDay();\n unique.push(nextDay);\n\n const mappedToObjects = unique.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i * 10);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const startDate = mergePlots\n .filter(({ plots }) => rangeStart.includes(plots))\n .map(({ date }) => date)\n .toString();\n\n const endDate = mergePlots\n .filter(({ plots }) => rangeEnd.includes(plots))\n .map(({ date }) => date)\n .toString();\n\n setStartDate(startDate);\n setEndDate(endDate);\n },\n [dataConvertedDate]\n );\n\n const getRangeValues = useCallback((rangeValue) => {\n const left = rangeValue[0];\n const right = rangeValue[1];\n setStartRange(Math.round(left));\n setEndRange(Math.round(right));\n }, []);\n\n const processRangeValues = () => {\n endRange && getDatesFromRangeSelectionCompact(startRange, endRange);\n };\n\n // Plot YV\n const plotYV = useCallback(\n (item) => {\n const plotDate = [item];\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let demoDatesTwo = [];\n\n data &&\n data.map((item) => {\n demoDatesTwo.push(item.date);\n });\n\n let unique = [...new Set(demoDatesTwo)];\n\n let results = unique.map((date) => new Date(date));\n\n const resultsSorted = results.sort((a, b) => a.getTime() - b.getTime());\n\n const dtest = resultsSorted.map((date) => date.toLocaleDateString());\n\n const mappedToObjects = dtest.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const res = mergePlots\n .filter(({ date }) => plotDate.includes(date))\n .map(({ plots }) => plots);\n\n const order = res.map((item) => {\n return item;\n });\n\n const plot = order;\n\n return plot;\n },\n [data, dataConvertedDate]\n );\n\n function compareDate(date1, date2, comparison) {\n const date1Month = Number(date1.split('/')[0]);\n const date2Month = Number(date2.split('/')[0]);\n const date1Day = Number(date1.split('/')[1]);\n const date2Day = Number(date2.split('/')[1]);\n const date1Year = Number(date1.split('/')[2]);\n const date2Year = Number(date2.split('/')[2]);\n if (comparison === '>') {\n if (date1Year > date2Year) {\n return true;\n } else if (date1Year === date2Year) {\n if (date1Month > date2Month) {\n return true;\n } else if (date1Month === date2Month) {\n if (date1Day > date2Day) {\n return true;\n }\n }\n }\n return false;\n } else {\n if (date1Year < date2Year) {\n return true;\n } else if (date1Year === date2Year) {\n if (date1Month < date2Month) {\n return true;\n } else if (date1Month === date2Month) {\n if (date1Day < date2Day) {\n return true;\n }\n }\n }\n return false;\n }\n }\n\n function minnifyTimelineObject(object) {\n let cleanObject = [];\n let notUsed = false;\n object.forEach((obj, i) => {\n if (cleanObject.length === 0) {\n cleanObject.push({\n timeline: obj.timeline,\n subThread: obj.subThread,\n firstDate: formatDate(obj.date),\n lastDate: formatDate(obj.date),\n color: obj.color,\n icon: obj.iconID\n });\n } else {\n notUsed = true;\n cleanObject.forEach((clnObj) => {\n if (\n obj.timeline === clnObj.timeline &&\n obj.subThread === clnObj.subThread\n ) {\n if (\n compareDate(\n formatDate(obj.date),\n formatDate(clnObj.firstDate),\n '<'\n )\n ) {\n clnObj.firstDate = formatDate(obj.date);\n } else if (\n compareDate(\n formatDate(obj.date),\n formatDate(clnObj.lastDate),\n '>'\n )\n ) {\n clnObj.lastDate = formatDate(obj.date);\n }\n notUsed = false;\n }\n });\n }\n if (notUsed) {\n cleanObject.push({\n timeline: obj.timeline,\n subThread: obj.subThread,\n firstDate: formatDate(obj.date),\n lastDate: formatDate(obj.date),\n color: obj.color,\n icon: obj.iconID\n });\n }\n });\n return cleanObject;\n }\n\n let dates = [];\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n dates.push(item.date);\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n const startDateSet = useMemo(() => new Date(startDate), [startDate]);\n const endDateSet = useMemo(() => new Date(endDate), [endDate]);\n\n const filteredByDate =\n data &&\n data.filter((item) => {\n const date = new Date(item.date);\n return date >= startDateSet && date < endDateSet;\n });\n\n const buildCategoryLines = useCallback(() => {\n const xLine =\n data &&\n filteredByDate?.map((item) => {\n return item.timeline.toString() + '.' + item.subThread.toString();\n });\n\n let unique = [...new Set(xLine)];\n return unique;\n }, [filteredByDate, data]);\n\n const minnifiedResult = data && minnifyTimelineObject(filteredByDate);\n\n const detailedComponentSize = 130;\n const summaryComponentSize = 73;\n //const overviewComponentSize = 50;\n\n //const detailBreakpoint = Math.round(containerWidth / detailedComponentSize);\n const summaryBreakpoint = Math.round(containerWidth / detailedComponentSize);\n const overviewBreakpoint = Math.round(containerWidth / summaryComponentSize);\n\n useEffect(() => {\n const filteredByDate =\n data &&\n data.filter((item) => {\n const date = new Date(item.date);\n return date >= startDateSet && date <= endDateSet;\n });\n\n setRecordLength(filteredByDate?.length);\n }, [data, endDateSet, startDateSet]);\n\n const checkLinearLength = [];\n\n filteredByDate?.forEach((item) => {\n checkLinearLength.push(item.date);\n });\n\n let uniqueNodeScaleAmount = [...new Set(checkLinearLength)].length;\n\n const getScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 186;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const getXScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 186;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const getYScale = useCallback(() => {\n if (uniqueNodeScaleAmount > overviewBreakpoint) {\n return 50;\n } else if (uniqueNodeScaleAmount >= summaryBreakpoint) {\n return summaryComponentSize;\n } else {\n return 130;\n }\n }, [uniqueNodeScaleAmount, summaryBreakpoint, overviewBreakpoint]);\n\n const topMargin = uniqueNodeScaleAmount >= summaryBreakpoint ? 48 : 0;\n\n // Plot XV\n const plotXV = useCallback(\n (timeline, subThread) => {\n const xLine =\n data &&\n data.map((item) => {\n return item.timeline + '.' + item.subThread;\n });\n\n let unique = [...new Set(xLine)];\n\n const rowIndex = unique.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n const sortedRowIndex = rowIndex.sort((a, b) =>\n a.thread > b.thread ? 1 : -1\n );\n\n const concatIndex = timeline + '.' + subThread;\n const result = sortedRowIndex.map((v, index) => ({\n ...v,\n sortedRowIndex: index\n }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n const xplot = results[0] && results[0].sortedRowIndex * 50;\n return xplot - topMargin;\n },\n [data, topMargin]\n );\n\n const plotY = useCallback(\n (item) => {\n const plotDate = [item];\n\n let demoDates = [];\n\n dataConvertedDate &&\n dataConvertedDate.map((item) => {\n demoDates.push(item.date);\n });\n\n let demoDatesTwo = [];\n\n dataConvertedDate &&\n filteredByDate.map((item) => {\n demoDatesTwo.push(item.date);\n });\n\n let unique = [...new Set(demoDatesTwo)];\n\n let results = unique.map((date) => new Date(date));\n\n const resultsSorted = results.sort((a, b) => a.getTime() - b.getTime());\n\n const dtest = resultsSorted.map((date) => date.toLocaleDateString());\n\n const mappedToObjects = dtest.map(function (value) {\n return { date: value };\n });\n\n const plots = [];\n for (let i = 1; i <= unique.length; i++) {\n plots.push(i);\n }\n\n let mergePlots = mappedToObjects.map((o, i) => ({\n ...o,\n plots: plots[i] || null\n }));\n\n const res =\n mergePlots &&\n mergePlots\n .filter(({ date }) => plotDate.includes(date))\n .map(({ plots }) => plots);\n\n const order =\n mergePlots &&\n res.map((item) => {\n return item;\n });\n\n const plot = order * getYScale();\n\n return plot - getYScale() + (getYScale() === 130 ? 32 : 8);\n },\n [dataConvertedDate, getYScale, filteredByDate]\n );\n\n const plotX = useCallback(\n (timeline, subThread) => {\n const xLine =\n data &&\n filteredByDate.map((item) => {\n return item.timeline + '.' + item.subThread;\n });\n\n let unique = [...new Set(xLine)];\n\n const rowIndex = unique.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n // const sortedRowIndex = rowIndex.sort((a, b) =>\n // a.thread > b.thread ? 1 : -1\n // );\n\n const orderByThread = (unordered) => {\n let maxElement = 0;\n unordered.forEach((value) => {\n if (value.thread.split('.')[0] > maxElement) {\n maxElement = value.thread.split('.')[0];\n }\n });\n let sortArray = [...Array(+maxElement)].map((e) => (e = []));\n unordered.forEach((value) => {\n sortArray[+value.thread.split('.')[0] - 1].push(value);\n });\n sortArray.forEach((value) => {\n value.sort((a, b) => {\n return +a.thread.split('.')[1] - +b.thread.split('.')[1];\n });\n });\n return sortArray.flat();\n };\n\n const sortedRowIndex = orderByThread(rowIndex);\n const concatIndex = timeline + '.' + subThread;\n const result = sortedRowIndex.map((v, index) => ({\n ...v,\n sortedRowIndex: index\n }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n\n const xplot = results[0] && results[0].sortedRowIndex * getXScale();\n return xplot + topMargin;\n },\n [data, getXScale, topMargin, filteredByDate]\n );\n\n // Map to named months\n const MONTHS = {\n 1: 'Jan',\n 2: 'Feb',\n 3: 'March',\n 4: 'Apr',\n 5: 'May',\n 6: 'June',\n 7: 'July',\n 8: 'Aug',\n 9: 'Sept',\n 10: 'Oct',\n 11: 'Nov',\n 12: 'Dec'\n };\n\n const convertNumberToMonths = (months) => {\n // Convert months to order\n const orderedMonths = months;\n orderedMonths.sort(function (a, b) {\n return a - b;\n });\n\n // Map to named months\n const output = orderedMonths.map(function (i) {\n return MONTHS[i];\n });\n\n return output;\n };\n\n function lastDayOfMonthArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '12/31/9999';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay < Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '12/31/9999') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n const returnObject = dates.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n useEffect(() => {\n const timelineSet = new Set();\n data &&\n data.forEach((item) => {\n const timelineKey = `${item.timeline}-${item.subThread}`;\n timelineSet.add(timelineKey);\n });\n setUniqueTimelines(timelineSet.size);\n }, [data]);\n\n function lastDayOfYearArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '00/00/00';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay > Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '00/00/00') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n dates.sort((a, b) => new Date(a) - new Date(b));\n let dateArr = [];\n for (let x = 0; x < dates.length; x++) {\n if (\n x === dates.length - 1 ||\n Number(dates[x].split('/')[2]) !== Number(dates[x + 1].split('/')[2])\n ) {\n dateArr.push(dates[x]);\n }\n }\n const returnObject = dateArr.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n function firstDayOfYearArray(object) {\n let tempDates = [];\n let dates = [];\n object.forEach((obj) => {\n if (!tempDates.find((date) => date === formatDate(obj.date))) {\n tempDates.push(formatDate(obj.date));\n }\n });\n tempDates.forEach((date) => {\n const dateMonth = Number(date.split('/')[0]);\n const dateYear = Number(date.split('/')[2]);\n let pushDate = '12/31/9999';\n tempDates.forEach((fDate) => {\n const fDateMonth = Number(fDate.split('/')[0]);\n const fDateDay = Number(fDate.split('/')[1]);\n const fDateYear = Number(fDate.split('/')[2]);\n if (\n fDateYear === dateYear &&\n fDateMonth === dateMonth &&\n fDateDay < Number(pushDate.split('/')[1])\n ) {\n pushDate = fDate;\n }\n });\n if (pushDate !== '12/31/9999') {\n dates.push(pushDate);\n }\n });\n dates = [...new Set(dates)];\n dates.sort((a, b) => new Date(b) - new Date(a));\n let dateArr = [];\n for (let x = 0; x < dates.length; x++) {\n if (\n x === dates.length - 1 ||\n Number(dates[x].split('/')[2]) !== Number(dates[x + 1].split('/')[2])\n ) {\n dateArr.push(dates[x]);\n }\n }\n dateArr.sort((a, b) => new Date(a) - new Date(b));\n const returnObject = dateArr.map((date) => {\n let timelines = [];\n let subThreads = [];\n object.forEach((obj) => {\n if (formatDate(obj.date) === formatDate(date)) {\n timelines.push(obj.timeline);\n subThreads.push(obj.subThread);\n }\n });\n return {\n date: date,\n timelines: timelines,\n subThread: subThreads\n };\n });\n return returnObject;\n }\n\n const Today = (object) => {\n const dateList = [];\n object &&\n object.map((item) => {\n dateList.push(item.date);\n });\n\n let unique = [...new Set(dateList)];\n\n const today = new Date().toLocaleDateString('en-US');\n\n //const todaysDate = unique.filter(date => date.includes('7/29/2022'));\n const todaysDate = unique.filter((date) => date.includes(today));\n\n return todaysDate;\n };\n\n const getInverseProportionalNumber = (inputNumber) => {\n const reciprocal = 1 / inputNumber;\n const wholeNumber = Math.round(reciprocal * 400);\n return wholeNumber;\n };\n\n const visualizationSmall = 10;\n const visualizationLarge = 30;\n const rangeHandles = 18;\n const adjusterHeight = 100;\n\n // Plot category lines\n const GuideLinesShort = () => {\n const xLines = buildCategoryLines().map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n zIndex: 0,\n top: 186 * index\n }}\n >\n <div\n className={classes.horizontalDash}\n style={{ height: threadHeight }}\n />\n <div\n style={{\n //width: 'calc(100vw * 1.7)',\n width:\n // dataConvertedDate &&\n // mergePlots.slice(-1).pop().plots * nodeWidth,\n filteredByDate &&\n uniqueNodeScaleAmount * getXScale() + getXScale(),\n height: threadHeight,\n borderBottom: `${theme.palette.divider} 1px solid`\n }}\n />\n </div>\n );\n });\n\n return xLines;\n };\n\n const preloadArray = [...Array(7).keys()];\n\n //Format visualization hover card\n const VisualizationCard = ({ title, data, date, user }) => {\n return (\n <div>\n <Typography variant='subtitle2'> {title} </Typography>\n <div>\n <Typography variant='caption'> {data} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {date} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {user} </Typography>\n </div>\n </div>\n );\n };\n\n const VisualizationCardMulti = ({ title, data, date, user }) => {\n return (\n <div\n style={{\n width: 130,\n borderRadius: 4,\n marginBottom: 16,\n padding: 8\n }}\n >\n <div>\n <Typography variant='subtitle2'> {title} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {data} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {date} </Typography>\n </div>\n <div>\n <Typography variant='caption'> {user} </Typography>\n </div>\n </div>\n );\n };\n\n // Plot Legend\n\n const categoryList = [];\n data &&\n filteredByDate.map((item) => {\n categoryList.push({\n label: item.timelineCategoryName,\n color: item.color,\n timeline: item.timeline\n });\n });\n\n const uniqueCategoryLegend = [\n ...new Map(categoryList.map((item) => [item['label'], item])).values()\n ];\n\n const uniqueCategoryLegendSorted = uniqueCategoryLegend.sort((a, b) =>\n a.timeline > b.timeline ? 1 : -1\n );\n\n const LegendDot = ({ background }) => {\n return (\n <div\n style={{\n width: 30,\n height: 15,\n background: lighten(background, 0.5),\n borderRadius: theme.spacing(6)\n }}\n />\n );\n };\n\n const LegendItem = ({ label, color }) => {\n return (\n <div\n style={{\n display: 'flex',\n alignItems: 'center'\n }}\n >\n <LegendDot background={'#' + color} />\n <div style={{ marginLeft: theme.spacing(1) }}>\n <Typography variant='caption'>{label} </Typography>\n </div>\n </div>\n );\n };\n\n const legend =\n data &&\n uniqueCategoryLegendSorted.map((item, index) => {\n return <LegendItem key={index} color={item.color} label={item.label} />;\n });\n\n // Plot category bar\n const plotCategoryBar = (timelineNumber, subThread) => {\n const xLine =\n data &&\n filteredByDate.map((item) => {\n return item.timeline.toString() + '.' + item.subThread.toString();\n });\n\n let unique = [...new Set(xLine)];\n\n const uniqueSorted = unique.sort(function (a, b) {\n return a.localeCompare(b);\n });\n\n const rowIndex = uniqueSorted.reduce(function (s, a) {\n s.push({ thread: a });\n return s;\n }, []);\n\n const concatIndex = timelineNumber + '.' + subThread;\n\n const result = rowIndex.map((v, index) => ({ ...v, rowIndex: index + 1 }));\n const results = result.filter(function (entry) {\n return entry.thread === concatIndex;\n });\n\n //const xplot = results[0].rowIndex * threadHeight;\n const xplot =\n (results[0] && results[0].rowIndex * getXScale()) - getXScale();\n return xplot;\n\n // const plot = (timelineNumber * threadHeight - threadHeight) * subThread;\n // return plot;\n };\n\n const CategoryBar = ({ label, height }) => {\n return (\n <div className={classes.categoryBar} style={{ height: height }}>\n <div className={classes.categoryLabel}>\n <Typography variant='subtitle2'> {label} </Typography>\n </div>\n </div>\n );\n };\n\n const DateMarkers = (\n <div>\n {filteredByDate &&\n showYearMarkers &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n firstDayOfYearArray(filteredByDate).map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item.date)\n }}\n >\n <MttYearTag year>{item.date.split('/')[2]}</MttYearTag>\n </div>\n );\n })}\n {filteredByDate &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n showMonthMarkers &&\n lastDayOfMonthArray(filteredByDate).map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item.date)\n }}\n >\n <MttYearTag>\n {convertNumberToMonths([item.date.split('/')[0]])}\n </MttYearTag>\n </div>\n );\n })}\n\n {filteredByDate &&\n uniqueNodeScaleAmount >= summaryBreakpoint &&\n Today(filteredByDate).map((item) => {\n return (\n <div\n style={{\n position: 'absolute',\n bottom: 0,\n left: plotY(item)\n }}\n >\n <MttYearTag year today>\n <Typography variant='caption'> TODAY </Typography>\n </MttYearTag>\n </div>\n );\n })}\n </div>\n );\n\n // timeline render\n return (\n <div>\n <div\n ref={mainContainer}\n style={{\n position: 'relative',\n // top: 45,\n height: '75vh',\n overflow: 'scroll'\n }}\n >\n {/* CategoryBar */}\n {!loading && (\n <>\n <div style={{ zIndex: 99999999, position: 'absolute', bottom: 0 }}>\n {DateMarkers}\n </div>\n\n {data &&\n data &&\n uniqueNodeScaleAmount < summaryBreakpoint &&\n filteredByDate.map((item, index) => {\n return (\n <div\n key={index}\n className={classes.categoryBarPlacement}\n style={{\n top:\n plotCategoryBar(\n Number(item.timeline),\n Number(item.subThread)\n ) + 0\n }}\n >\n <CategoryBar\n key={item.id}\n label={item.timelineCategoryName}\n height={data && getXScale()}\n />\n </div>\n );\n })}\n\n {data &&\n filteredByDate.map((item, index) => {\n return item.dates.length === 1 ? (\n <div\n key={index}\n style={{\n position: 'absolute',\n left: plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ),\n top: plotX(item.timeline, item.subThread),\n //top: 0,\n zIndex:\n 999999 -\n plotY(new Date(item.date).toLocaleDateString('en-US')) -\n item.subThread\n //zIndex: 9999999 - index * index,\n }}\n >\n <TimelineNode\n icon={\n <IconRenderer\n noBorder\n value={{\n color: { hex: '#' + item.color },\n name: item.iconID\n }}\n />\n }\n dot={data && uniqueNodeScaleAmount <= overviewBreakpoint}\n dotColor={'#' + item.color}\n data={item.dates}\n details={\n data && uniqueNodeScaleAmount < summaryBreakpoint\n }\n height={\n (data &&\n uniqueNodeScaleAmount <= summaryBreakpoint &&\n 183) ||\n (data &&\n uniqueNodeScaleAmount <= overviewBreakpoint &&\n 30)\n }\n width={\n data && uniqueNodeScaleAmount < summaryBreakpoint && 130\n }\n boxStyle\n show={showAllDetails}\n iconColor={'#' + item.color}\n />\n </div>\n ) : (\n <div key={item.id}>\n <div\n style={{\n position: 'absolute',\n left:\n plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ) + 4,\n top: plotX(item.timeline, item.subThread),\n zIndex:\n 999999 -\n plotY(\n new Date(item.date).toLocaleDateString('en-US')\n ) -\n item.timeline\n }}\n >\n <MultiDot map={item.dates} number={item.dates.length} />\n </div>\n </div>\n );\n })}\n\n <Fade in={data && uniqueNodeScaleAmount >= summaryBreakpoint}>\n <div>\n {data &&\n minnifiedResult.map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n //zIndex: 0,\n left: plotY(item.firstDate) + 2,\n top:\n data && uniqueNodeScaleAmount > overviewBreakpoint\n ? 14 + plotX(item.timeline, item.subThread)\n : 4 + plotX(item.timeline, item.subThread)\n }}\n >\n <TimelineWrapper\n timeline={item.timeline}\n style={{\n width:\n plotY(item.lastDate) - plotY(item.firstDate) + 45,\n height:\n data && uniqueNodeScaleAmount > overviewBreakpoint\n ? 20\n : 40,\n backgroundColor: lighten('#' + item.color, 0.7)\n }}\n />\n </div>\n );\n })}\n </div>\n </Fade>\n {/* <Fade in={data && filteredByDate.length < mttBreakpointMd}> */}\n {data && uniqueNodeScaleAmount < summaryBreakpoint && (\n <div>\n <GuideLinesShort />\n </div>\n )}\n </>\n )}\n {/* </Fade> */}\n </div>\n\n {/* lower Section //////////////////////////////////////////////////////////////////////////////////////////////// */}\n <div style={{ width: 250 }}>\n <HeightAdjuster\n verticalAdjuster={verticalAdjuster}\n setVerticalAdjuster={setVerticalAdjuster}\n />\n </div>\n\n {!loading && (\n <div\n style={{\n position: 'relative',\n borderTop: '1px solid lightgrey',\n overflow: 'scroll'\n }}\n >\n <div>\n {data && displayRangeFilter && (\n <div\n style={{\n overflow: 'scroll'\n }}\n >\n <div key={data}>\n <DynamicRangeSlider\n id='range-slider'\n step={10}\n threads={10 * uniqueTimelines}\n width={containerWidth - rangeHandles}\n margin={\n topMargin +\n getInverseProportionalNumber(verticalAdjuster) * 3\n }\n defaultValue={[10, unique.length * 10]}\n max={unique.length * 10}\n min={10}\n onThumbDragEnd={processRangeValues}\n onRangeDragEnd={processRangeValues}\n onInput={(e) => getRangeValues(e)}\n />\n </div>\n </div>\n )}\n\n <div>\n {data &&\n data.map((item, index) => {\n return item.dates.length === 1 ? (\n <div\n key={index}\n style={{\n position: 'absolute',\n left:\n dataConvertedDate &&\n plotYV(\n new Date(item.date).toLocaleDateString('en-US')\n ) *\n (containerWidth / unique.length) -\n (visualizationSmall + rangeHandles),\n top:\n plotXV(item.timeline, item.subThread) /\n verticalAdjuster +\n visualizationYScale +\n adjusterHeight\n }}\n >\n <VisualizationDot\n type={item.dates[0].details.shortDescription}\n hover={\n <VisualizationCard\n title={item.dates[0].details.shortDescription}\n data={item.dates[0].details.data1}\n date={item.dates[0].details.date}\n //user={item.dates[0].details.data2}\n />\n }\n />\n </div>\n ) : (\n <div key={item.id}>\n <div\n style={{\n position: 'absolute',\n left:\n dataConvertedDate &&\n plotYV(\n new Date(item.date).toLocaleDateString('en-US')\n ) *\n (containerWidth / unique.length) -\n (visualizationSmall + rangeHandles),\n top:\n plotXV(item.timeline, item.subThread) /\n verticalAdjuster +\n visualizationYScale +\n adjusterHeight\n }}\n >\n <VisualizationDot\n hover={\n <div style={{ color: 'black' }}>\n {item.dates.map((item) => {\n return (\n <VisualizationCardMulti\n title={item.details.description}\n date={item.details.date}\n key={item.id}\n />\n );\n })}\n </div>\n }\n multi\n >\n {item.dates.length}\n </VisualizationDot>\n </div>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n )}\n\n {/* Preloading */}\n <div style={{ position: 'absolute', top: 0, left: 0, zIndex: 10 }}>\n {loading &&\n preloadArray.map((item, index) => {\n return (\n <div\n key={index}\n style={{\n position: 'absolute',\n left: Math.floor(Math.random() * 11) * 60 + 40,\n top: (index + 1) * 80\n }}\n >\n <TimelinePreloaderNode longView loading={loading} />\n </div>\n );\n })}\n </div>\n {/* Preloading End */}\n\n {/* Legend */}\n {uniqueNodeScaleAmount >= summaryBreakpoint && (\n <div\n style={{\n position: 'absolute',\n right: 0,\n top: 0,\n zIndex: 999999999,\n background: 'white',\n borderRadius: 4\n }}\n >\n <div\n style={{\n display: 'flex',\n padding: theme.spacing(1),\n gap: theme.spacing(3)\n }}\n >\n {legend}\n\n <Button\n className={classes.button}\n onClick={() => setShowMonthMarkers(!showMonthMarkers)}\n >\n <span\n style={{ textDecoration: !showMonthMarkers && 'line-through' }}\n >\n M\n </span>\n </Button>\n <Button\n className={classes.button}\n onClick={() => setShowYearMarkers(!showYearMarkers)}\n >\n <span\n style={{ textDecoration: !showYearMarkers && 'line-through' }}\n >\n Y\n </span>\n </Button>\n </div>\n </div>\n )}\n {/* Breakpoint testing */}\n {/* <div\n style={{\n position: 'absolute',\n left: 0,\n top: 0,\n zIndex: 999999999,\n background: 'white',\n borderRadius: 4,\n }}\n >\n <Typography variant=\"caption\">\n Data nodes:\n <span style={{ fontWeight: 700 }}>\n {filteredByDate.length} ::::::::::\n </span>\n <span style={{ fontWeight: 700 }}>\n {uniqueNodeScaleAmount} ::::::::::\n </span>\n Summary Breakpoint:\n <span style={{ fontWeight: 700 }}>\n {summaryBreakpoint} ::::::::::\n </span>\n Overview Breakpoint:\n <span style={{ fontWeight: 700 }}>{overviewBreakpoint} ::::::::</span>\n Container Width:\n <span style={{ fontWeight: 700 }}>{containerWidth} :::::::::</span>\n Summary Width: Circle\n <span style={{ fontWeight: 700 }}>\n {summaryComponentSize} ::::::::\n </span>\n Overview width: Dot\n <span style={{ fontWeight: 700 }}>\n {overviewComponentSize} :::::::\n </span>\n </Typography>\n </div> */}\n </div>\n );\n});\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { apiMutate } from '../../../utilities/useAxiosMutate';\nimport { formatDataWithTimelineCategoryNameOrderedByDate } from '../functions/mttFunctions';\nimport { MttTimeline } from './MttTimeline';\nimport { ConfigService } from '../../../configService';\n\nexport const MttMainTimeline = (props) => {\n const { timelineApiMethodInstanceId, params = {} } = props;\n const [timelineThreads, setTimelineThreads] = useState(null);\n const [data, setData] = useState();\n const [loading, setLoading] = useState(false);\n\n const executeQueryInstance = useCallback(\n async (apiMethodInstanceId, data = {}) =>\n apiMutate(\n ConfigService.integrationV1ApiUrl,\n `apimethod/executeQueryInstance/${apiMethodInstanceId}`,\n {\n method: 'post'\n },\n { data: data }\n ),\n []\n );\n\n useEffect(() => {\n const fetchTimelineThreads = async () => {\n const timelineResponse = await executeQueryInstance(\n timelineApiMethodInstanceId\n ).catch((e) => e);\n\n if (timelineResponse?.status === 200) {\n setTimelineThreads(timelineResponse?.data?.pageList || []);\n }\n };\n fetchTimelineThreads();\n }, [executeQueryInstance, timelineApiMethodInstanceId]);\n\n useEffect(() => {\n const fetchThreadEvents = async () => {\n if (!timelineThreads) {\n return null;\n }\n setLoading(true);\n const promises = [];\n const threadList = [];\n timelineThreads.forEach((thread) => {\n promises.push(executeQueryInstance(thread.queryID, { ...params }));\n });\n await Promise.all(\n promises.map((p) =>\n p.catch((e) => {\n setLoading(false);\n return e;\n })\n )\n ).then((responses) => {\n responses.forEach((response, index) => {\n if (response.status === 200) {\n const timelineThread = timelineThreads[index];\n if (response?.data?.pageList) {\n response.data.pageList.forEach(\n (evt) => (evt.threadId = timelineThread.name)\n );\n const thread = {\n ...timelineThread,\n events: response.data.pageList\n };\n threadList.push(thread);\n }\n }\n });\n setLoading(false);\n });\n setData(formatDataWithTimelineCategoryNameOrderedByDate(threadList));\n };\n fetchThreadEvents();\n }, [executeQueryInstance, timelineThreads, params]);\n\n return <MttTimeline data={data} loading={loading} />;\n};\n"],"mappings":"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"}
@@ -2,9 +2,9 @@ import { t as ConfigService } from "./configService-C4uoG3wj.js";
2
2
  import { t as apiMutate } from "./useAxiosMutate-DcLxzykX.js";
3
3
  import { t as LayoutUnit } from "./LayoutUnit-D4jJvonh.js";
4
4
  import { t as formatDataWithTimelineCategoryName } from "./mttFunctions-ioZ0_5JX.js";
5
- import { t as IconRenderer } from "./IconRenderer-DFpfUgfn.js";
5
+ import { t as IconRenderer } from "./IconRenderer-B6ZoqrTX.js";
6
6
  import { t as MttYearTag } from "./MttYearTag-Cw8OyKTy.js";
7
- import { n as DateWrapper, o as SummaryToken, r as TimelineTopRowFilter, t as CircleButton } from "./CircleButton-DzJjhCYd.js";
7
+ import { n as DateWrapper, o as SummaryToken, r as TimelineTopRowFilter, t as CircleButton } from "./CircleButton-cl6mmDmn.js";
8
8
  import React, { useCallback, useEffect, useMemo, useState } from "react";
9
9
  import { CardContent, LinearProgress, Typography, makeStyles } from "@material-ui/core";
10
10
  import { Link as Link$1 } from "react-router-dom";
@@ -253,4 +253,4 @@ MttSummary.propTypes = { timelineApiMethodInstanceId: PropTypes.string.isRequire
253
253
 
254
254
  //#endregion
255
255
  export { createTimeline as n, MttSummary as t };
256
- //# sourceMappingURL=MttSummary-DeCFHat3.js.map
256
+ //# sourceMappingURL=MttSummary-CGTFEyQB.js.map