udp-react-enterprise-component-library 25.14.1-beta.6 → 25.14.1-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (366) hide show
  1. package/dist/{Accordion-Cd6gzd60.js → Accordion-DL61AM6M.js} +2 -2
  2. package/dist/{Accordion-Cd6gzd60.js.map → Accordion-DL61AM6M.js.map} +1 -1
  3. package/dist/{ActionProvider-BPuiwxd4.js → ActionProvider-DL5qMp-u.js} +2 -2
  4. package/dist/{ActionProvider-BPuiwxd4.js.map → ActionProvider-DL5qMp-u.js.map} +1 -1
  5. package/dist/{ActionSplitScreen-Cym0gCOb.js → ActionSplitScreen-x0Bh5GEF.js} +3 -3
  6. package/dist/{ActionSplitScreen-Cym0gCOb.js.map → ActionSplitScreen-x0Bh5GEF.js.map} +1 -1
  7. package/dist/{ActionWrapper-CoP91vel.js → ActionWrapper-BRzh3vn0.js} +3 -3
  8. package/dist/{ActionWrapper-CoP91vel.js.map → ActionWrapper-BRzh3vn0.js.map} +1 -1
  9. package/dist/{BaseTreeMenu-DxXnVd_v.js → BaseTreeMenu-DHEMztjA.js} +7 -3
  10. package/dist/BaseTreeMenu-DHEMztjA.js.map +1 -0
  11. package/dist/{CatalogUtilities-j8ACiDe3.js → CatalogUtilities-BvkdL-P6.js} +1 -1
  12. package/dist/{CatalogUtilities-j8ACiDe3.js.map → CatalogUtilities-BvkdL-P6.js.map} +1 -1
  13. package/dist/{CircleButton-BFASpo5t.js → CircleButton-DBPFjNl1.js} +2 -2
  14. package/dist/{CircleButton-BFASpo5t.js.map → CircleButton-DBPFjNl1.js.map} +1 -1
  15. package/dist/{CrudBrowserContainer-Dpgwjt7c.js → CrudBrowserContainer-B8AKH7kQ.js} +9 -4
  16. package/dist/CrudBrowserContainer-B8AKH7kQ.js.map +1 -0
  17. package/dist/{EntityHeader-Buq_r4IE.js → EntityHeader-DOoeCEj3.js} +2 -2
  18. package/dist/{EntityHeader-Buq_r4IE.js.map → EntityHeader-DOoeCEj3.js.map} +1 -1
  19. package/dist/{FieldArrayCard-D5AzG_US.js → FieldArrayCard-ColjIX9t.js} +1 -1
  20. package/dist/{FieldArrayCard-D5AzG_US.js.map → FieldArrayCard-ColjIX9t.js.map} +1 -1
  21. package/dist/{FileViewer-Cp8UpoMF.js → FileViewer-Bhubf4Uv.js} +2 -2
  22. package/dist/{FileViewer-Cp8UpoMF.js.map → FileViewer-Bhubf4Uv.js.map} +1 -1
  23. package/dist/FluentBody-PdsySA1c.js +16 -0
  24. package/dist/FluentBody-PdsySA1c.js.map +1 -0
  25. package/dist/{FluentDataTable-BhA49RJS.js → FluentCell-C7lb2y4Z.js} +7 -67
  26. package/dist/FluentCell-C7lb2y4Z.js.map +1 -0
  27. package/dist/FluentDataTable-C3A36z2b.js +30 -0
  28. package/dist/FluentDataTable-C3A36z2b.js.map +1 -0
  29. package/dist/FluentHead-BTV-o45z.js +20 -0
  30. package/dist/FluentHead-BTV-o45z.js.map +1 -0
  31. package/dist/FluentRow-CVqnk9pB.js +18 -0
  32. package/dist/FluentRow-CVqnk9pB.js.map +1 -0
  33. package/dist/{FluentTimeline-ChthjfxZ.js → FluentTimeline-B0VjMqsq.js} +2 -2
  34. package/dist/{FluentTimeline-ChthjfxZ.js.map → FluentTimeline-B0VjMqsq.js.map} +1 -1
  35. package/dist/{GeoMap-jDYoW-Jl.js → GeoMap-CVGJXRRA.js} +2 -2
  36. package/dist/{GeoMap-jDYoW-Jl.js.map → GeoMap-CVGJXRRA.js.map} +1 -1
  37. package/dist/{IconRenderer-8w6JVRET.js → IconRenderer-DiwGfDul.js} +2 -2
  38. package/dist/{IconRenderer-8w6JVRET.js.map → IconRenderer-DiwGfDul.js.map} +1 -1
  39. package/dist/{InputsExample-C11hu5Fw.js → InputsExample-BPDEWFXK.js} +1 -1
  40. package/dist/{InputsExample-C11hu5Fw.js.map → InputsExample-BPDEWFXK.js.map} +1 -1
  41. package/dist/{Inquiry-Bi4iSUSQ.js → Inquiry-3kldgl4S.js} +6 -6
  42. package/dist/{Inquiry-Bi4iSUSQ.js.map → Inquiry-3kldgl4S.js.map} +1 -1
  43. package/dist/{MenuPage-CuB7g460.js → MenuPage-CJ1JVrk8.js} +10 -5
  44. package/dist/MenuPage-CJ1JVrk8.js.map +1 -0
  45. package/dist/{MenuPage-B4gixMrI.js → MenuPage-kn130DcT.js} +3 -3
  46. package/dist/{MttMainTimeline-au5xi1SZ.js → MttMainTimeline-Bme6LQZO.js} +2 -2
  47. package/dist/{MttMainTimeline-au5xi1SZ.js.map → MttMainTimeline-Bme6LQZO.js.map} +1 -1
  48. package/dist/{MttSummary-DHB1AW_0.js → MttSummary-CTETqPbU.js} +3 -3
  49. package/dist/{MttSummary-DHB1AW_0.js.map → MttSummary-CTETqPbU.js.map} +1 -1
  50. package/dist/{MyExportsPage-CBqIhu4I.js → MyExportsPage-Cq2MRoRf.js} +3 -2
  51. package/dist/{MyExportsPage-CBqIhu4I.js.map → MyExportsPage-Cq2MRoRf.js.map} +1 -1
  52. package/dist/{MyExportsPage-BE8qvq_F.js → MyExportsPage-ZP2V0i5h.js} +2 -2
  53. package/dist/{NotesScreen-moR3WUoq.js → NotesScreen-CmMz3GTR.js} +2 -2
  54. package/dist/{NotesScreen-moR3WUoq.js.map → NotesScreen-CmMz3GTR.js.map} +1 -1
  55. package/dist/{PageActionWrapper-KtNGraWi.js → PageActionWrapper-HgV0I8Km.js} +2 -2
  56. package/dist/{PageActionWrapper-KtNGraWi.js.map → PageActionWrapper-HgV0I8Km.js.map} +1 -1
  57. package/dist/{PageNotFoundRoute-BSlmqegI.js → PageNotFoundRoute-BGj6tqmn.js} +3 -2
  58. package/dist/{PageNotFoundRoute-BSlmqegI.js.map → PageNotFoundRoute-BGj6tqmn.js.map} +1 -1
  59. package/dist/PageNotFoundRoute-CTaRcNjL.js +4 -0
  60. package/dist/PasswordResetRedirect-BMDMHdhE.js +4 -0
  61. package/dist/{PasswordResetRedirect-BvC0vH06.js → PasswordResetRedirect-avgVRKhM.js} +3 -2
  62. package/dist/{PasswordResetRedirect-BvC0vH06.js.map → PasswordResetRedirect-avgVRKhM.js.map} +1 -1
  63. package/dist/{RecentlyLoadedNodesTable-B5KlS1HR.js → RecentlyLoadedNodesTable-BRxssq07.js} +2 -2
  64. package/dist/{RecentlyLoadedNodesTable-B5KlS1HR.js.map → RecentlyLoadedNodesTable-BRxssq07.js.map} +1 -1
  65. package/dist/{RejectIcon-BoBX4G_D.js → RejectIcon-D8AWbOZq.js} +1 -1
  66. package/dist/{RejectIcon-BoBX4G_D.js.map → RejectIcon-D8AWbOZq.js.map} +1 -1
  67. package/dist/{RemindersCard-CRstZlRF.js → RemindersCard-BrjYmZVz.js} +2 -2
  68. package/dist/{RemindersCard-CRstZlRF.js.map → RemindersCard-BrjYmZVz.js.map} +1 -1
  69. package/dist/{RemindersScreen-C2hcBWnk.js → RemindersScreen-CVTHY97W.js} +2 -2
  70. package/dist/{RemindersScreen-C2hcBWnk.js.map → RemindersScreen-CVTHY97W.js.map} +1 -1
  71. package/dist/{Shell-CuYfQQKW.js → Shell-DM4ZssU1.js} +3 -3
  72. package/dist/{Shell-CuYfQQKW.js.map → Shell-DM4ZssU1.js.map} +1 -1
  73. package/dist/TileLayer-Bk6rITEu.js +31 -0
  74. package/dist/TileLayer-Bk6rITEu.js.map +1 -0
  75. package/dist/{TreeUtilities-DVY-2md6.js → TreeUtilities-XLrXtUeL.js} +9 -8
  76. package/dist/{TreeUtilities-DVY-2md6.js.map → TreeUtilities-XLrXtUeL.js.map} +1 -1
  77. package/dist/UI/accordion/index.js +3 -3
  78. package/dist/UI/advancedSearchBuilder/index.js +1 -1
  79. package/dist/UI/charts/index.js +1 -1
  80. package/dist/UI/components/dataDisplay/index.js +1 -1
  81. package/dist/UI/components/feedback/index.js +1 -1
  82. package/dist/UI/components/index.js +3 -3
  83. package/dist/UI/containers/index.js +1 -1
  84. package/dist/UI/dataDisplay/FluentActivity/index.js +1 -1
  85. package/dist/UI/dataDisplay/FluentDataTable/FluentBody/index.js +3 -0
  86. package/dist/UI/dataDisplay/FluentDataTable/FluentCell/index.js +13 -0
  87. package/dist/UI/dataDisplay/FluentDataTable/FluentHead/index.js +3 -0
  88. package/dist/UI/dataDisplay/FluentDataTable/FluentRow/index.js +3 -0
  89. package/dist/UI/dataDisplay/FluentDataTable/index.js +7 -3
  90. package/dist/UI/dataDisplay/address/index.js +1 -1
  91. package/dist/UI/dataDisplay/cardList/index.js +1 -1
  92. package/dist/UI/dataDisplay/directory/index.js +1 -1
  93. package/dist/UI/dataDisplay/entityHeader/index.js +4 -4
  94. package/dist/UI/dataDisplay/index.js +20 -16
  95. package/dist/UI/dataDisplay/map/index.js +1 -1
  96. package/dist/UI/dataDisplay/notes/index.js +1 -1
  97. package/dist/UI/dataDisplay/ticketCard/index.js +1 -1
  98. package/dist/UI/dataDisplay/typography/index.js +1 -1
  99. package/dist/UI/dataDisplay/visualization/index.js +1 -1
  100. package/dist/UI/demos/index.js +2 -2
  101. package/dist/UI/feedback/index.js +1 -1
  102. package/dist/UI/fileViewer/index.js +3 -3
  103. package/dist/UI/floorplans/index.js +1 -1
  104. package/dist/UI/forms/index.js +3 -3
  105. package/dist/UI/iframe/index.js +1 -1
  106. package/dist/UI/index.js +67 -63
  107. package/dist/UI/inputs/fieldArrayCard/index.js +1 -1
  108. package/dist/UI/loading/index.js +1 -1
  109. package/dist/UI/mapLayout/index.js +1 -1
  110. package/dist/UI/maps/index.js +2 -2
  111. package/dist/UI/navigation/index.js +4 -4
  112. package/dist/UI/navigation/menus/index.js +1 -1
  113. package/dist/UI/navigation/tabs/defaultTabs/index.js +1 -1
  114. package/dist/UI/navigation/tabs/index.js +2 -2
  115. package/dist/UI/property/index.js +1 -1
  116. package/dist/UI/stepper/index.js +1 -1
  117. package/dist/UI/support/index.js +1 -1
  118. package/dist/UI/surfaces/NestedGrid/index.js +2 -2
  119. package/dist/UI/surfaces/NestedGrid/ui/index.js +1 -1
  120. package/dist/UI/surfaces/cards/index.js +3 -3
  121. package/dist/UI/surfaces/cards/newsCard/index.js +1 -1
  122. package/dist/UI/surfaces/cards/workOrderCard/index.js +1 -1
  123. package/dist/UI/surfaces/index.js +6 -6
  124. package/dist/UI/templates/index.js +3 -3
  125. package/dist/UI/templates/newGrid/index.js +1 -1
  126. package/dist/UI/templates/ui/index.js +1 -1
  127. package/dist/UI/timeline/fluentTimeline/index.js +3 -3
  128. package/dist/UI/timeline/index.js +4 -4
  129. package/dist/UI/utilityDisplay/alerts/index.js +1 -1
  130. package/dist/UI/utilityDisplay/index.js +5 -5
  131. package/dist/UI/utilityDisplay/ui/index.js +1 -1
  132. package/dist/UI/utilityDisplay/utilities/index.js +1 -1
  133. package/dist/UI/utilityDisplay/utilityHeader/index.js +1 -1
  134. package/dist/UI/widgets/index.js +1 -1
  135. package/dist/{UdpMaintenanceConfigPage-DdZJT9rB.js → UdpMaintenanceConfigPage-DfKk0PmB.js} +1 -1
  136. package/dist/{UdpMaintenanceConfigPage-CnvPi5Gq.js → UdpMaintenanceConfigPage-mJ4AkDYp.js} +3 -2
  137. package/dist/UdpMaintenanceConfigPage-mJ4AkDYp.js.map +1 -0
  138. package/dist/{UdpMaintenanceEnginePage-o40sezly.js → UdpMaintenanceEnginePage-DAioIeSf.js} +8 -3
  139. package/dist/UdpMaintenanceEnginePage-DAioIeSf.js.map +1 -0
  140. package/dist/{UdpMaintenanceEnginePage-b5cm6uW2.js → UdpMaintenanceEnginePage-M0RbzSTX.js} +2 -2
  141. package/dist/{UdpMap-lSMNXUoe.js → UdpMap-5NE3rUIS.js} +1 -1
  142. package/dist/{UdpMap-lSMNXUoe.js.map → UdpMap-5NE3rUIS.js.map} +1 -1
  143. package/dist/{UdpRoutes-iU7qvtVt.js → UdpRoutes-Bmn455yo.js} +9 -9
  144. package/dist/{UdpRoutes-iU7qvtVt.js.map → UdpRoutes-Bmn455yo.js.map} +1 -1
  145. package/dist/{VirtualBrowser-Dg52rd5g.js → VirtualBrowser-B66Iyn4h.js} +4 -4
  146. package/dist/{VirtualBrowser-BNjKPaXR.js → VirtualBrowser-BansR6-F.js} +4 -3
  147. package/dist/{VirtualBrowser-BNjKPaXR.js.map → VirtualBrowser-BansR6-F.js.map} +1 -1
  148. package/dist/{VirtualForm-Da9cgNqE.js → VirtualForm-DlTtINdK.js} +2 -2
  149. package/dist/{VirtualForm-Da9cgNqE.js.map → VirtualForm-DlTtINdK.js.map} +1 -1
  150. package/dist/{WorkflowContainer-Bf7oW53_.js → WorkflowContainer-BTwu3z4L.js} +5 -5
  151. package/dist/{WorkflowContainer-Dmp3rpCg.js → WorkflowContainer-Cq23yESD.js} +5 -4
  152. package/dist/{WorkflowContainer-Dmp3rpCg.js.map → WorkflowContainer-Cq23yESD.js.map} +1 -1
  153. package/dist/{WorkflowTreeMenu-Dc9l7jEY.js → WorkflowTreeMenu-BtolZKVF.js} +2 -2
  154. package/dist/{WorkflowTreeMenu-Dc9l7jEY.js.map → WorkflowTreeMenu-BtolZKVF.js.map} +1 -1
  155. package/dist/actions/index.js +8 -8
  156. package/dist/actions/sidebar/index.js +1 -1
  157. package/dist/actions/utils/index.js +1 -1
  158. package/dist/{cards-CpCLKLuT.js → cards-CD1BE7Mh.js} +1 -1
  159. package/dist/{cards-CpCLKLuT.js.map → cards-CD1BE7Mh.js.map} +1 -1
  160. package/dist/{charts-Dm_iW2_N.js → charts-PdiOkLDF.js} +1 -1
  161. package/dist/{charts-Dm_iW2_N.js.map → charts-PdiOkLDF.js.map} +1 -1
  162. package/dist/componentSystems/multiThreadTimeline/functions/index.js +1 -1
  163. package/dist/componentSystems/multiThreadTimeline/index.js +10 -10
  164. package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +4 -4
  165. package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +5 -5
  166. package/dist/componentSystems/multiThreadTimeline/ui/index.js +5 -5
  167. package/dist/componentSystems/multiThreadTimeline/ui/modified/index.js +1 -1
  168. package/dist/componentSystems/pageRenderer/hocs/index.js +1 -1
  169. package/dist/componentSystems/pageRenderer/hooks/index.js +1 -1
  170. package/dist/componentSystems/pageRenderer/index.js +4 -4
  171. package/dist/componentSystems/pageRenderer/utils/index.js +1 -1
  172. package/dist/componentSystems/pageRenderer/wrappers/index.js +1 -1
  173. package/dist/dataBrowser/forms/index.js +1 -1
  174. package/dist/dataBrowser/index.js +1 -1
  175. package/dist/{defaultTabs-Bmq_wtOy.js → defaultTabs-C07t9FPZ.js} +1 -1
  176. package/dist/{defaultTabs-Bmq_wtOy.js.map → defaultTabs-C07t9FPZ.js.map} +1 -1
  177. package/dist/hooks/index.js +2 -2
  178. package/dist/index.js +161 -73
  179. package/dist/index.js.map +1 -1
  180. package/dist/inquiry/dashboard/index.js +4 -4
  181. package/dist/inquiry/index.js +13 -13
  182. package/dist/inquiry/inquiryBar/index.js +1 -1
  183. package/dist/inquiry/search/index.js +1 -1
  184. package/dist/maintenanceEngine/crudBrowser/index.js +2 -2
  185. package/dist/maintenanceEngine/index.js +7 -7
  186. package/dist/maintenanceEngine/tableBrowser/index.js +1 -1
  187. package/dist/maintenanceEngine/virtualBrowser/index.js +4 -4
  188. package/dist/map-library/Source/index.js +34 -1
  189. package/dist/map-library/Source/index.js.map +1 -0
  190. package/dist/maps/index.js +4 -4
  191. package/dist/maps/leafletMaps/index.js +2 -2
  192. package/dist/maps/leafletMaps/ui/index.js +1 -1
  193. package/dist/maps/openLayerMaps/Layers/index.js +45 -3
  194. package/dist/maps/openLayerMaps/Layers/index.js.map +1 -0
  195. package/dist/menuPage/index.js +3 -3
  196. package/dist/notes/index.js +2 -2
  197. package/dist/reminders/index.js +3 -3
  198. package/dist/routes/index.js +1 -1
  199. package/dist/shell/index.js +11 -11
  200. package/dist/shell/ui/addUser/index.js +1 -1
  201. package/dist/shell/ui/appSwitcher/index.js +1 -1
  202. package/dist/shell/ui/index.js +3 -3
  203. package/dist/{theme-HNYKI2UT.js → theme-DtUeftmy.js} +3 -2
  204. package/dist/theme-DtUeftmy.js.map +1 -0
  205. package/dist/treeMenu/index.js +2 -2
  206. package/dist/types/index.d.ts +1 -0
  207. package/dist/types/maintenanceEngine/virtualBrowser/VirtualBrowser.d.ts +1 -0
  208. package/dist/types/menuPage/CustomMenuPage.d.ts +22 -0
  209. package/dist/types/routes/components/PageNotFoundRoute.d.ts +1 -0
  210. package/dist/types/routes/components/PasswordResetRedirect.d.ts +1 -0
  211. package/dist/types/tsconfig.tsbuildinfo +1 -1
  212. package/dist/types/udp/export/MyExportsPage.d.ts +1 -0
  213. package/dist/types/utilities/tree/TreeUtilities.d.ts +2 -0
  214. package/dist/types/workflow/WorkflowContainer.d.ts +1 -0
  215. package/dist/udp/export/index.js +1 -1
  216. package/dist/udp/pages/index.js +10 -10
  217. package/dist/{udpPages-WbvmyuOa.js → udpPages-D6t7REhp.js} +7 -7
  218. package/dist/{udpPages-WbvmyuOa.js.map → udpPages-D6t7REhp.js.map} +1 -1
  219. package/dist/{ui-DEnf6-9j.js → ui-z-P1tNCJ.js} +1 -1
  220. package/dist/{ui-DEnf6-9j.js.map → ui-z-P1tNCJ.js.map} +1 -1
  221. package/dist/{useSingleLogout-DRSY_UK_.js → useSingleLogout-DeHKk6v6.js} +2 -2
  222. package/dist/{useSingleLogout-DRSY_UK_.js.map → useSingleLogout-DeHKk6v6.js.map} +1 -1
  223. package/dist/{useUpdateSearchParams-fEinMP0r.js → useUpdateSearchParams-CKTTs6Zx.js} +1 -1
  224. package/dist/{useUpdateSearchParams-fEinMP0r.js.map → useUpdateSearchParams-CKTTs6Zx.js.map} +1 -1
  225. package/dist/utilities/DemoJuly/index.js +1 -1
  226. package/dist/utilities/aggrid/index.js +1 -1
  227. package/dist/utilities/auth/index.js +3 -3
  228. package/dist/utilities/catalog/index.js +2 -2
  229. package/dist/utilities/chatBot/index.js +1 -1
  230. package/dist/utilities/crud/index.js +1 -1
  231. package/dist/utilities/customIcons/index.js +2 -2
  232. package/dist/utilities/entities/index.js +1 -1
  233. package/dist/utilities/floorplanFunctions/index.js +1 -1
  234. package/dist/utilities/iconLibrary/index.js +1 -1
  235. package/dist/utilities/index.js +36 -36
  236. package/dist/utilities/input/index.js +1 -1
  237. package/dist/utilities/maintenanceEngine/index.js +1 -1
  238. package/dist/utilities/menus/index.js +1 -1
  239. package/dist/utilities/page/index.js +1 -1
  240. package/dist/utilities/provider/index.js +7 -7
  241. package/dist/utilities/redirect/index.js +1 -1
  242. package/dist/utilities/rules/index.js +1 -1
  243. package/dist/utilities/search/index.js +1 -1
  244. package/dist/utilities/storage/index.js +1 -1
  245. package/dist/utilities/style/index.js +1 -1
  246. package/dist/utilities/tenant/index.js +1 -1
  247. package/dist/utilities/tree/index.js +2 -2
  248. package/dist/utilities/uploader/index.js +1 -1
  249. package/dist/utilities/utilityBar/index.js +1 -1
  250. package/dist/utilities/workflow/index.js +1 -1
  251. package/dist/{virtualActions-DlqSD5s0.js → virtualActions-B-cs7Mxr.js} +1 -1
  252. package/dist/{virtualActions-DlqSD5s0.js.map → virtualActions-B-cs7Mxr.js.map} +1 -1
  253. package/dist/workflow/components/index.js +1 -1
  254. package/dist/workflow/index.js +6 -6
  255. package/dist/workflow/menus/index.js +3 -3
  256. package/export-map.json +4 -3
  257. package/package.json +3 -2
  258. package/dist/BaseTreeMenu-DxXnVd_v.js.map +0 -1
  259. package/dist/CrudBrowserContainer-Dpgwjt7c.js.map +0 -1
  260. package/dist/FluentDataTable-BhA49RJS.js.map +0 -1
  261. package/dist/Layers-CQUYxZqM.js +0 -71
  262. package/dist/Layers-CQUYxZqM.js.map +0 -1
  263. package/dist/MenuPage-CuB7g460.js.map +0 -1
  264. package/dist/PageNotFoundRoute-Dw80_viU.js +0 -4
  265. package/dist/PasswordResetRedirect-P7XBzXp-.js +0 -4
  266. package/dist/UdpMaintenanceConfigPage-CnvPi5Gq.js.map +0 -1
  267. package/dist/UdpMaintenanceEnginePage-o40sezly.js.map +0 -1
  268. package/dist/theme-HNYKI2UT.js.map +0 -1
  269. /package/dist/{DemoJuly-mBlFDlXO.js → DemoJuly-D7RhIRiO.js} +0 -0
  270. /package/dist/{FluentActivity-BrIQN8GI.js → FluentActivity-Btq_69F-.js} +0 -0
  271. /package/dist/{FluentDataTable-qrNqXPRF.js → FluentDataTable-BwVi4r3o.js} +0 -0
  272. /package/dist/{NestedGrid-CHqHYRS8.js → NestedGrid-fseCejIz.js} +0 -0
  273. /package/dist/{accordion-BHm_jIsS.js → accordion-ChuOXM_i.js} +0 -0
  274. /package/dist/{addUser-CyMrC1rE.js → addUser-CS0LS9_W.js} +0 -0
  275. /package/dist/{address-DlScXNBU.js → address-D8Cf2B--.js} +0 -0
  276. /package/dist/{advancedSearchBuilder-JWTOT_dc.js → advancedSearchBuilder-BNE1r194.js} +0 -0
  277. /package/dist/{aggrid-DuGBxiR8.js → aggrid-C3KMLJBL.js} +0 -0
  278. /package/dist/{alerts-fNWU3EXg.js → alerts-B--Jzz0v.js} +0 -0
  279. /package/dist/{appSwitcher-dCBbv3It.js → appSwitcher-DqliMkfh.js} +0 -0
  280. /package/dist/{auth-CwXOQn2B.js → auth-DLdDsXt6.js} +0 -0
  281. /package/dist/{cardList-gSDuPOQB.js → cardList-B0bYLPWj.js} +0 -0
  282. /package/dist/{catalog-p3yrFQgg.js → catalog-DLo7sqLU.js} +0 -0
  283. /package/dist/{chatBot-_aXO7sdm.js → chatBot-dEV9kiqk.js} +0 -0
  284. /package/dist/{components-BX70C7Xh.js → components-BpG8EmUu.js} +0 -0
  285. /package/dist/{components-DV8tbAMk.js → components-CnnFIob2.js} +0 -0
  286. /package/dist/{containers-CXy3OKvD.js → containers-Cl2DkUJz.js} +0 -0
  287. /package/dist/{crud-By2po3xT.js → crud-C_ERd-Ed.js} +0 -0
  288. /package/dist/{crudBrowser-3U59T0v9.js → crudBrowser-BoZrPfr-.js} +0 -0
  289. /package/dist/{customIcons-DdZ5YpJU.js → customIcons-BzKpDhOz.js} +0 -0
  290. /package/dist/{dashboard-iA68nouc.js → dashboard-B3PkRVxB.js} +0 -0
  291. /package/dist/{dataDisplay-D-k_23Y1.js → dataDisplay-BivdlLmj.js} +0 -0
  292. /package/dist/{dataDisplay-DwmhNGSc.js → dataDisplay-BkAq_6Ba.js} +0 -0
  293. /package/dist/{demos-Be_LEs0N.js → demos-L9SUck5b.js} +0 -0
  294. /package/dist/{directory-QndEV4Ip.js → directory-BmBd7DNf.js} +0 -0
  295. /package/dist/{entities-okCA6j-F.js → entities-Z3wHDYPc.js} +0 -0
  296. /package/dist/{entityHeader-BJdZfqWn.js → entityHeader-uoWltVXF.js} +0 -0
  297. /package/dist/{feedback-BFVY3F4O.js → feedback-CT_YIVkQ.js} +0 -0
  298. /package/dist/{feedback-DxBgLa50.js → feedback-Cq3y6mnG.js} +0 -0
  299. /package/dist/{fileViewer-IW404ILx.js → fileViewer-DNmXMgEv.js} +0 -0
  300. /package/dist/{floorplanFunctions-C3h7qiy7.js → floorplanFunctions-CyG-A6Ho.js} +0 -0
  301. /package/dist/{floorplans-CAy6OBti.js → floorplans-DCsLstCq.js} +0 -0
  302. /package/dist/{fluentTimeline-VY1uVRIt.js → fluentTimeline-Bw3MB61J.js} +0 -0
  303. /package/dist/{forms-3Zdzp4gn.js → forms-CTGzji9-.js} +0 -0
  304. /package/dist/{forms-BbMWRT_y.js → forms-DBN5u9vQ.js} +0 -0
  305. /package/dist/{functions-DxOG2OTQ.js → functions-B886DHHN.js} +0 -0
  306. /package/dist/{hocs-DBWxBvoU.js → hocs-CLAAIJfF.js} +0 -0
  307. /package/dist/{hooks-CwtIArSw.js → hooks-d0fHOxwg.js} +0 -0
  308. /package/dist/{iconLibrary-Ckm-SSry.js → iconLibrary-DkiwUTn0.js} +0 -0
  309. /package/dist/{iframe-0yE4pScI.js → iframe-qtuPeiq4.js} +0 -0
  310. /package/dist/{input-JbgQSbft.js → input-Bd3pOKUF.js} +0 -0
  311. /package/dist/{inquiryBar-Dxy8ppZB.js → inquiryBar-cjTVuVy_.js} +0 -0
  312. /package/dist/{leafletMaps-s9gEVu5W.js → leafletMaps-BjTYRV2R.js} +0 -0
  313. /package/dist/{loading-xxfy2ZlM.js → loading-BwYpS7fe.js} +0 -0
  314. /package/dist/{maintenanceEngine-BafuhHra.js → maintenanceEngine-BiIXrgHI.js} +0 -0
  315. /package/dist/{map-DV91zIAC.js → map-BWuSYF6e.js} +0 -0
  316. /package/dist/{mapLayout-DtENn_sr.js → mapLayout-D7YBYQ7P.js} +0 -0
  317. /package/dist/{maps-D5joGxHk.js → maps-CevY6l2a.js} +0 -0
  318. /package/dist/{menus-B32cxSun.js → menus-CreZRf8_.js} +0 -0
  319. /package/dist/{menus-C0jFXQQc.js → menus-CwNO89uQ.js} +0 -0
  320. /package/dist/{menus-Nbum4678.js → menus-lneAs-ot.js} +0 -0
  321. /package/dist/{modified-DKPoXWSV.js → modified-Cf42z6i8.js} +0 -0
  322. /package/dist/{mttMainTimeline-DmKTPyfl.js → mttMainTimeline-D7IXpP1x.js} +0 -0
  323. /package/dist/{mttSummary-DbADB7pv.js → mttSummary-BMkmdNju.js} +0 -0
  324. /package/dist/{navigation-C_xITs8t.js → navigation-B6o0jZNc.js} +0 -0
  325. /package/dist/{newGrid-DtnaU91a.js → newGrid-DMD24lFv.js} +0 -0
  326. /package/dist/{newsCard-C7LwX_z1.js → newsCard-BEEsHzuT.js} +0 -0
  327. /package/dist/{notes-BzUsl5ox.js → notes-DXPGMU6E.js} +0 -0
  328. /package/dist/{page-XSjNp2Nd.js → page-DF9Cce_a.js} +0 -0
  329. /package/dist/{property-D-lRqI5q.js → property-BxFkD-ST.js} +0 -0
  330. /package/dist/{provider-276_eTQP.js → provider-CDMCgVZv.js} +0 -0
  331. /package/dist/{redirect-Cb0zPMUp.js → redirect-DXdJsOUE.js} +0 -0
  332. /package/dist/{rules-C4NrJLax.js → rules-vy1m9JZd.js} +0 -0
  333. /package/dist/{search-D77NrIpT.js → search-By3X_wDu.js} +0 -0
  334. /package/dist/{search-w-OrIt_P.js → search-CxezFXdW.js} +0 -0
  335. /package/dist/{sidebar-CqBPneDb.js → sidebar-CGs1WNkU.js} +0 -0
  336. /package/dist/{stepper-BImbyzRm.js → stepper-DSXFT-Iq.js} +0 -0
  337. /package/dist/{storage-BL60r231.js → storage-Dzx9lS99.js} +0 -0
  338. /package/dist/{style-BiG-DeqE.js → style-DCetPHEb.js} +0 -0
  339. /package/dist/{support-BMrRk2nr.js → support-1Hknr9H-.js} +0 -0
  340. /package/dist/{surfaces-D7Gv5-jf.js → surfaces-SrimKL5h.js} +0 -0
  341. /package/dist/{tableBrowser-BMPoXYzI.js → tableBrowser-BgKcSdyL.js} +0 -0
  342. /package/dist/{tabs-LSMdumcR.js → tabs-HRFDrAzD.js} +0 -0
  343. /package/dist/{templates-DxIYQEwm.js → templates-XRou7iKM.js} +0 -0
  344. /package/dist/{tenant-Ba0QsFun.js → tenant-9yY-GOUj.js} +0 -0
  345. /package/dist/{ticketCard-vpgwV6yo.js → ticketCard-B1ueM7V9.js} +0 -0
  346. /package/dist/{timeline-B7z-jUTx.js → timeline-CvlnNFik.js} +0 -0
  347. /package/dist/{tree-Bdu7gGxB.js → tree-n0-Yv6Oq.js} +0 -0
  348. /package/dist/{typography-cWXaOaj-.js → typography-BUD73n7-.js} +0 -0
  349. /package/dist/{ui-B7XVO_hX.js → ui-5ngIc6S4.js} +0 -0
  350. /package/dist/{ui-Cje9T4Uy.js → ui-C4SYLrHn.js} +0 -0
  351. /package/dist/{ui-RoqPR_sc.js → ui-CMEdOOxm.js} +0 -0
  352. /package/dist/{ui-b3YPtlpb.js → ui-GKTg3I2L.js} +0 -0
  353. /package/dist/{ui-en5KNlmI.js → ui-Qt0TiwMS.js} +0 -0
  354. /package/dist/{uploader-6C3jSbvh.js → uploader-DSBUHOEF.js} +0 -0
  355. /package/dist/{utilities-DI2DK3EE.js → utilities-C8yTJ1rO.js} +0 -0
  356. /package/dist/{utilityBar-BnpknzCg.js → utilityBar-BgOu4S_x.js} +0 -0
  357. /package/dist/{utilityDisplay-BtOjD5dW.js → utilityDisplay-B2kppcKk.js} +0 -0
  358. /package/dist/{utilityHeader-BcADv4L8.js → utilityHeader-B9G8SBPx.js} +0 -0
  359. /package/dist/{utils-CxjlnL_a.js → utils-BWi9Cg7u.js} +0 -0
  360. /package/dist/{utils-Dp2c8faV.js → utils-BaVKyFU8.js} +0 -0
  361. /package/dist/{virtualBrowser-CYUz09Zq.js → virtualBrowser-DjU3bOv0.js} +0 -0
  362. /package/dist/{visualization-Nic9OP-u.js → visualization-C71zC7Zo.js} +0 -0
  363. /package/dist/{widgets-_PSKWMOa.js → widgets-BOvBco5h.js} +0 -0
  364. /package/dist/{workOrderCard-D95cXcFu.js → workOrderCard-Cq8NIxl6.js} +0 -0
  365. /package/dist/{workflow-OW7yAb2X.js → workflow-Cy4leS9X.js} +0 -0
  366. /package/dist/{wrappers-YZRMr_jq.js → wrappers-Bvf3DVNC.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"RemindersCard-CRstZlRF.js","names":[],"sources":["../src/reminders/CompleteReminderSwitch.jsx","../src/reminders/RemindersCard.jsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport { Switch } from '@material-ui/core';\n\nexport const CompleteReminderSwitch = (props) => {\n const { checked, onChange, ...otherProps } = props;\n const [switchChecked, setSwitchChecked] = useState(checked);\n\n const handleOnChange = useCallback(\n (event) => {\n setSwitchChecked(event.target.checked);\n onChange && onChange(event);\n },\n [onChange]\n );\n\n return (\n <Switch checked={switchChecked} onChange={handleOnChange} {...otherProps} />\n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport {\n Typography,\n LinearProgress,\n makeStyles,\n List,\n ListItem,\n Checkbox,\n ListItemText,\n ListItemSecondaryAction,\n Divider,\n FormControlLabel\n} from '@material-ui/core';\nimport { StatusChip } from '../UI/dataDisplay/StatusChip';\nimport { UnityFluentIcon } from '../utilities/iconLibrary/UnityFluentIcon';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { useActions } from '../hooks/useActions';\nimport { SplitScreenTypeEnums } from '../enums/unitySystemEnums';\nimport { CompleteReminderSwitch } from './CompleteReminderSwitch';\nimport { executeQueryWithParameters } from '../udp/utilities/methodUtils';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n item: {\n display: 'flex',\n '& .MuiListItem-container': {\n width: '100%'\n },\n '& .MuiListItem-container > .MuiListItem-button': {\n paddingLeft: 0,\n paddingRight: 0\n }\n }\n}));\n\nexport const RemindersCard = (props) => {\n const {\n reminders,\n setReminders,\n loading,\n getNodeToLoad,\n onLoadedNodeClick,\n getIcon = () => {},\n updateRemindersAcknowledgement\n } = props;\n const classes = useStyles(props);\n const { openSplitScreen } = useActions();\n\n const handleSwitchChange = useCallback(\n async (event, reminder) => {\n const updatedReminder = { ...reminder };\n updatedReminder.checked = event.target.checked;\n await updateRemindersAcknowledgement([updatedReminder]);\n },\n [updateRemindersAcknowledgement]\n );\n\n const getCompleteSwitch = useCallback(\n (reminder) => (\n <FormControlLabel\n control={\n <CompleteReminderSwitch\n size='small'\n checked={reminder?.acknowledged || false}\n onChange={(event) => handleSwitchChange(event, reminder)}\n />\n }\n label='Complete'\n style={{ marginRight: 8 }}\n />\n ),\n [handleSwitchChange]\n );\n\n const getStatusLabel = useCallback((date) => {\n const day = 1000 * 60 * 60 * 24;\n const reminderDate = new Date(date).getTime();\n if (reminderDate >= Date.now() - day * 7) {\n // Less than or equal 7 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (\n reminderDate < Date.now() - day * 7 &&\n reminderDate >= Date.now() - day * 30\n ) {\n // Greater than 7 days but less than or equal to 30 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (\n reminderDate < Date.now() - day * 30 &&\n reminderDate >= Date.now() - day * 180\n ) {\n // Greater 30 days but less than or equal to 180 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (reminderDate < Date.now() - day * 180) {\n // Greater than 180 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n }\n }, []);\n\n const getStatusColor = useCallback((date) => {\n const day = 1000 * 60 * 60 * 24;\n const reminderDate = new Date(date).getTime();\n if (reminderDate >= Date.now() - day * 7) {\n // Less than or equal 7 days past reminder date\n return '';\n } else if (\n reminderDate < Date.now() - day * 7 &&\n reminderDate >= Date.now() - day * 30\n ) {\n // Greater than 7 days but less than or equal to 30 days past reminder date\n return 'info';\n } else if (\n reminderDate < Date.now() - day * 30 &&\n reminderDate >= Date.now() - day * 180\n ) {\n // Greater 30 days but less than or equal to 180 days past reminder date\n return 'warning';\n } else if (reminderDate < Date.now() - day * 180) {\n // Greater than 180 days past reminder date\n return 'error';\n }\n }, []);\n\n const handleReminderCheck = useCallback(\n (evt, reminder) => {\n const updatedReminders = [...reminders];\n const matchingReminders = updatedReminders.filter(\n (r) => r.id === reminder.id\n );\n matchingReminders?.forEach(\n (matchingReminder) => (matchingReminder.checked = evt.target.checked)\n );\n setReminders(updatedReminders);\n },\n [reminders, setReminders]\n );\n\n const handleReminderClick = useCallback(\n (nodeToLoad, reminder) => {\n onLoadedNodeClick(nodeToLoad);\n\n openSplitScreen({\n open: true,\n action: null,\n type: SplitScreenTypeEnums.Reminders,\n params: {\n id: reminder?.id || '',\n additionalInputs: reminder ? getCompleteSwitch(reminder) : null\n }\n });\n },\n [onLoadedNodeClick, openSplitScreen, getCompleteSwitch]\n );\n\n return loading ? (\n <LinearProgress />\n ) : reminders?.length ? (\n <List className={classes.root}>\n {reminders.map((reminder) => {\n const icon = getIcon(reminder);\n const nodeToLoad = getNodeToLoad(reminder);\n return (\n <>\n <div className={classes.item} key={reminder.id}>\n <Checkbox\n id='udpRecord-RemindersCard-Checkbox'\n udprecordid='udpRecord-RemindersCard-Checkbox'\n edge='start'\n checked={reminder.checked || reminder.acknowledged}\n disableRipple\n size='small'\n onChange={(evt) => handleReminderCheck(evt, reminder)}\n disabled={reminder.acknowledged}\n />\n <ListItem\n id='udpRecord-ReminderCard-Item'\n udprecordid='udpRecord-ReminderCard-Item'\n key={reminder.id}\n dense\n subject={reminder.subject}\n removePadding={true}\n button\n onClick={() => handleReminderClick(nodeToLoad, reminder)}\n >\n <ListItemText>\n <div style={{ display: 'block' }}>\n <Typography\n style={{ lineHeight: '0.9rem', fontSize: '0.8rem' }}\n >\n {reminder.subject}\n </Typography>\n </div>\n <Typography\n style={{\n lineHeight: '0.8rem',\n fontSize: '0.7rem',\n fontWeight: 400,\n color: 'rgba(0, 0, 0, 0.54)'\n }}\n >\n {new Date(reminder.reminderDate).toDateString()}\n </Typography>\n </ListItemText>\n <ListItemSecondaryAction>\n <StatusChip\n status={getStatusColor(reminder.reminderDate)}\n label={getStatusLabel(reminder.reminderDate)}\n icon={\n <UnityFluentIcon\n type={icon?.type}\n icon={\n icon?.type === 'unity'\n ? getUnityIconFromName(icon?.name || '')\n : getIconFromName(icon?.name || '')\n }\n />\n }\n />\n </ListItemSecondaryAction>\n </ListItem>\n </div>\n <Divider style={{ height: 1 }} />\n </>\n );\n })}\n </List>\n ) : (\n <Typography>All Reminders Completed</Typography>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"RemindersCard-BrjYmZVz.js","names":[],"sources":["../src/reminders/CompleteReminderSwitch.jsx","../src/reminders/RemindersCard.jsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport { Switch } from '@material-ui/core';\n\nexport const CompleteReminderSwitch = (props) => {\n const { checked, onChange, ...otherProps } = props;\n const [switchChecked, setSwitchChecked] = useState(checked);\n\n const handleOnChange = useCallback(\n (event) => {\n setSwitchChecked(event.target.checked);\n onChange && onChange(event);\n },\n [onChange]\n );\n\n return (\n <Switch checked={switchChecked} onChange={handleOnChange} {...otherProps} />\n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport {\n Typography,\n LinearProgress,\n makeStyles,\n List,\n ListItem,\n Checkbox,\n ListItemText,\n ListItemSecondaryAction,\n Divider,\n FormControlLabel\n} from '@material-ui/core';\nimport { StatusChip } from '../UI/dataDisplay/StatusChip';\nimport { UnityFluentIcon } from '../utilities/iconLibrary/UnityFluentIcon';\nimport { getUnityIconFromName } from '../utilities/iconLibrary/UnityIconLibrary';\nimport { getIconFromName } from '../utilities/tree/TreeUtilities';\nimport { useActions } from '../hooks/useActions';\nimport { SplitScreenTypeEnums } from '../enums/unitySystemEnums';\nimport { CompleteReminderSwitch } from './CompleteReminderSwitch';\nimport { executeQueryWithParameters } from '../udp/utilities/methodUtils';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n item: {\n display: 'flex',\n '& .MuiListItem-container': {\n width: '100%'\n },\n '& .MuiListItem-container > .MuiListItem-button': {\n paddingLeft: 0,\n paddingRight: 0\n }\n }\n}));\n\nexport const RemindersCard = (props) => {\n const {\n reminders,\n setReminders,\n loading,\n getNodeToLoad,\n onLoadedNodeClick,\n getIcon = () => {},\n updateRemindersAcknowledgement\n } = props;\n const classes = useStyles(props);\n const { openSplitScreen } = useActions();\n\n const handleSwitchChange = useCallback(\n async (event, reminder) => {\n const updatedReminder = { ...reminder };\n updatedReminder.checked = event.target.checked;\n await updateRemindersAcknowledgement([updatedReminder]);\n },\n [updateRemindersAcknowledgement]\n );\n\n const getCompleteSwitch = useCallback(\n (reminder) => (\n <FormControlLabel\n control={\n <CompleteReminderSwitch\n size='small'\n checked={reminder?.acknowledged || false}\n onChange={(event) => handleSwitchChange(event, reminder)}\n />\n }\n label='Complete'\n style={{ marginRight: 8 }}\n />\n ),\n [handleSwitchChange]\n );\n\n const getStatusLabel = useCallback((date) => {\n const day = 1000 * 60 * 60 * 24;\n const reminderDate = new Date(date).getTime();\n if (reminderDate >= Date.now() - day * 7) {\n // Less than or equal 7 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (\n reminderDate < Date.now() - day * 7 &&\n reminderDate >= Date.now() - day * 30\n ) {\n // Greater than 7 days but less than or equal to 30 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (\n reminderDate < Date.now() - day * 30 &&\n reminderDate >= Date.now() - day * 180\n ) {\n // Greater 30 days but less than or equal to 180 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n } else if (reminderDate < Date.now() - day * 180) {\n // Greater than 180 days past reminder date\n return Math.floor((Date.now() - reminderDate) / (1000 * 3600 * 24));\n }\n }, []);\n\n const getStatusColor = useCallback((date) => {\n const day = 1000 * 60 * 60 * 24;\n const reminderDate = new Date(date).getTime();\n if (reminderDate >= Date.now() - day * 7) {\n // Less than or equal 7 days past reminder date\n return '';\n } else if (\n reminderDate < Date.now() - day * 7 &&\n reminderDate >= Date.now() - day * 30\n ) {\n // Greater than 7 days but less than or equal to 30 days past reminder date\n return 'info';\n } else if (\n reminderDate < Date.now() - day * 30 &&\n reminderDate >= Date.now() - day * 180\n ) {\n // Greater 30 days but less than or equal to 180 days past reminder date\n return 'warning';\n } else if (reminderDate < Date.now() - day * 180) {\n // Greater than 180 days past reminder date\n return 'error';\n }\n }, []);\n\n const handleReminderCheck = useCallback(\n (evt, reminder) => {\n const updatedReminders = [...reminders];\n const matchingReminders = updatedReminders.filter(\n (r) => r.id === reminder.id\n );\n matchingReminders?.forEach(\n (matchingReminder) => (matchingReminder.checked = evt.target.checked)\n );\n setReminders(updatedReminders);\n },\n [reminders, setReminders]\n );\n\n const handleReminderClick = useCallback(\n (nodeToLoad, reminder) => {\n onLoadedNodeClick(nodeToLoad);\n\n openSplitScreen({\n open: true,\n action: null,\n type: SplitScreenTypeEnums.Reminders,\n params: {\n id: reminder?.id || '',\n additionalInputs: reminder ? getCompleteSwitch(reminder) : null\n }\n });\n },\n [onLoadedNodeClick, openSplitScreen, getCompleteSwitch]\n );\n\n return loading ? (\n <LinearProgress />\n ) : reminders?.length ? (\n <List className={classes.root}>\n {reminders.map((reminder) => {\n const icon = getIcon(reminder);\n const nodeToLoad = getNodeToLoad(reminder);\n return (\n <>\n <div className={classes.item} key={reminder.id}>\n <Checkbox\n id='udpRecord-RemindersCard-Checkbox'\n udprecordid='udpRecord-RemindersCard-Checkbox'\n edge='start'\n checked={reminder.checked || reminder.acknowledged}\n disableRipple\n size='small'\n onChange={(evt) => handleReminderCheck(evt, reminder)}\n disabled={reminder.acknowledged}\n />\n <ListItem\n id='udpRecord-ReminderCard-Item'\n udprecordid='udpRecord-ReminderCard-Item'\n key={reminder.id}\n dense\n subject={reminder.subject}\n removePadding={true}\n button\n onClick={() => handleReminderClick(nodeToLoad, reminder)}\n >\n <ListItemText>\n <div style={{ display: 'block' }}>\n <Typography\n style={{ lineHeight: '0.9rem', fontSize: '0.8rem' }}\n >\n {reminder.subject}\n </Typography>\n </div>\n <Typography\n style={{\n lineHeight: '0.8rem',\n fontSize: '0.7rem',\n fontWeight: 400,\n color: 'rgba(0, 0, 0, 0.54)'\n }}\n >\n {new Date(reminder.reminderDate).toDateString()}\n </Typography>\n </ListItemText>\n <ListItemSecondaryAction>\n <StatusChip\n status={getStatusColor(reminder.reminderDate)}\n label={getStatusLabel(reminder.reminderDate)}\n icon={\n <UnityFluentIcon\n type={icon?.type}\n icon={\n icon?.type === 'unity'\n ? getUnityIconFromName(icon?.name || '')\n : getIconFromName(icon?.name || '')\n }\n />\n }\n />\n </ListItemSecondaryAction>\n </ListItem>\n </div>\n <Divider style={{ height: 1 }} />\n </>\n );\n })}\n </List>\n ) : (\n <Typography>All Reminders Completed</Typography>\n );\n};\n"],"mappings":"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"}
@@ -8,7 +8,7 @@ import { useActionStore } from "./inquiryStore-COAx0QBg.js";
8
8
  import { useShellStore } from "./shellStore-Bqwtbs_K.js";
9
9
  import { useActionState } from "./useActions-CKdp6TpD.js";
10
10
  import { getSearchObject } from "./SearchUtilities-CzmJ6hI2.js";
11
- import { constructBusinessObjectArrFromTree } from "./TreeUtilities-DVY-2md6.js";
11
+ import { constructBusinessObjectArrFromTree } from "./TreeUtilities-XLrXtUeL.js";
12
12
  import { LayoutUnit } from "./LayoutUnit-fGVQwt6Y.js";
13
13
  import { CkRichEditor } from "./CkRichEditor-BzyNk5CH.js";
14
14
  import { executeQueryAdHoc, executeQueryWithParameters, getBaseMethod } from "./methodUtils-Bgi0VCWP.js";
@@ -439,4 +439,4 @@ const RemindersScreen = (props) => {
439
439
 
440
440
  //#endregion
441
441
  export { RemindersScreen };
442
- //# sourceMappingURL=RemindersScreen-C2hcBWnk.js.map
442
+ //# sourceMappingURL=RemindersScreen-CVTHY97W.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RemindersScreen-C2hcBWnk.js","names":["reminder","existingReminderObj"],"sources":["../src/reminders/RemindersScreen.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { CkRichEditor } from '../UI/inputs/richEditors/CkRichEditor';\nimport { makeStyles, TextField, LinearProgress } from '@material-ui/core';\nimport { Field, Form } from '../utilities/form';\nimport { FluentTextFieldAutoComplete } from '../UI/inputs/textField/FluentTextFieldAutoComplete';\nimport { useTranslation } from 'react-i18next';\nimport { useActionState } from '../hooks/useActions';\nimport { constructBusinessObjectArrFromTree } from '../utilities/tree/TreeUtilities';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { UdpEnums } from '../enums/unitySystemEnums';\nimport { useHandleAxiosSnackbar } from '../utilities/apiHelpers';\nimport { useUser } from '../utilities/auth/useUser';\nimport { differenceWith } from 'lodash';\nimport {\n executeQueryAdHoc,\n getBaseMethod,\n executeQueryWithParameters\n} from '../udp/utilities/methodUtils';\nimport { ShortcutContentFinder } from '../udp/ShortcutContent/ShortcutContentFinder';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { useShellStore } from '../stores/shellStore';\nimport { FluentDatePicker } from '../UI/inputs/pickers/FluentDatePicker';\nimport { useActionStore } from '../stores/actionStore';\nimport { FILE_TO_TYPES } from '../constants/reminderConstants';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n editor: {\n '& .ck-editor__main > .ck-editor__editable_inline': {\n backgroundColor:\n theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[800]\n : theme.palette.grey[100]\n }\n },\n row: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 14\n },\n labelRoot: {\n fontSize: 14\n }\n}));\n\nexport const RemindersScreen = (props) => {\n const {\n formRef,\n onSubmit,\n shortcutContentFinderEnabled,\n id,\n viewOnly,\n reloadReminders\n } = props;\n const [reminder, setReminder] = useState('');\n const [typeOptions, setTypeOptions] = useState([]);\n const [templateOptions, setTemplateOptions] = useState([]);\n const [reminderId, setReminderId] = useState(id || '');\n const [existingReminderFiledFor, setExistingReminderFiledFor] = useState([]);\n const [existingReminderObj, setExistingReminderObj] = useState(null);\n const [loading, setLoading] = useState(false);\n const classes = useStyles(props);\n const { t } = useTranslation();\n const actionState = useActionState();\n const shellHidden = useShellStore((state) => state.shellHidden);\n const { menuListState, catalogPromotedEntities } = actionState;\n const { handleSuccessSnackbar, handleErrorSnackbar } =\n useHandleAxiosSnackbar();\n const user = useUser();\n const editorRef = useRef(null);\n const selectedNode = useActionStore((state) => state.selectedNode);\n\n const selectedMenu = useMemo(() => {\n if (menuListState.menuList.length) {\n return menuListState.menuList[menuListState.selectedMenuIndex] || null;\n }\n return null;\n }, [menuListState]);\n\n const reminderGetFullApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseGetFullMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const reminderTypeSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Type,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const reminderTemplateSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Template,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const deleteReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseDeleteMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const disabled = useMemo(() => {\n return viewOnly;\n }, [viewOnly]);\n\n const handleSaveReminder = useCallback(\n async (values) => {\n let response = null;\n const reminderDate = new Date(values?.reminderDate?.setHours(0, 0, 0, 0));\n const data = {\n requestBody: {\n tenantId: user?.currentTenantId,\n typeCode: values?.type?.code,\n subject: values?.subject,\n content: values?.reminder,\n unityUserId: user?.id,\n userDisplayName: `${user?.firstName} ${user?.familyName}`,\n reminderDate: reminderDate.toDateString()\n }\n };\n if (reminderId) {\n if (updateReminderApiMethod) {\n // Set the url parameter for updating reminder\n data['{iD}'] = reminderId;\n response = await executeQueryWithParameters(\n { data },\n updateReminderApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Update Reminder'));\n } else {\n handleErrorSnackbar(null, 'Update Reminder Method Not Promoted');\n }\n } else {\n if (createReminderApiMethod) {\n response = await executeQueryWithParameters(\n { data },\n createReminderApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Save Reminder'));\n } else {\n handleErrorSnackbar(null, 'Create Reminder Method Not Promoted');\n }\n }\n\n if (response?.status === 200) {\n if (!reminderId) {\n setReminderId(response.data.id || '');\n handleSuccessSnackbar('Reminder Saved');\n } else {\n handleSuccessSnackbar('Reminder Updated');\n }\n if (reloadReminders) {\n reloadReminders();\n }\n return response.data.id || reminderId;\n }\n\n return reminderId;\n },\n [\n createReminderApiMethod,\n updateReminderApiMethod,\n reminderId,\n setReminderId,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n reloadReminders\n ]\n );\n\n const reminderFiledForToComparator = (nftc1, nftc2) => {\n return nftc1?.value === nftc2?.value;\n };\n\n const handleReminderFiledFor = useCallback(\n async (values, reminderdIdToFileFor) => {\n // Get the reminderFiledFor objects to delete\n const reminderFiledForToDelete = differenceWith(\n existingReminderFiledFor,\n values?.fileTo,\n reminderFiledForToComparator\n );\n\n // Get the reminderFiledFor objects to create\n const reminderFiledForToCreate = differenceWith(\n values?.fileTo,\n existingReminderFiledFor,\n reminderFiledForToComparator\n );\n\n if (reminderdIdToFileFor) {\n if (deleteReminderFiledForApiMethod) {\n const deletedPromises = [];\n reminderFiledForToDelete.forEach((nftd) => {\n const data = {};\n data['{reminderID}'] = reminderdIdToFileFor;\n data['{entityBusinessKey}'] = nftd.value;\n\n deletedPromises.push(\n executeQueryWithParameters(\n { data },\n deleteReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n\n await Promise.all(deletedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n if (responses.length !== deletedPromises.length) {\n console.warn(`Not all Reminder Filed For deleted`);\n }\n }\n );\n } else {\n handleErrorSnackbar(\n null,\n 'Delete Reminder Filed For Method Not Promoted'\n );\n }\n\n if (createReminderFiledForApiMethod) {\n const createdPromises = [];\n reminderFiledForToCreate.forEach((nftc) => {\n const data = {\n requestBody: {\n reminderId: reminderdIdToFileFor,\n entityBusinessKey: nftc.value,\n domainObject: nftc.domainObject,\n type: values?.fileToType?.value || 1\n }\n };\n createdPromises.push(\n executeQueryWithParameters(\n { data },\n createReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(createdPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminderFiledFor =\n reminderFiledForToCreate.find(\n (nftc) => nftc.value === entityBusinessKey\n );\n if (!matchingReminderFiledFor) {\n console.warn(\n `Reminder Filed For not created for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingReminderFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Create Reminder Filed For Method Not Promoted'\n );\n }\n\n if (updateReminderFiledForApiMethod) {\n const updatedPromises = [];\n values?.fileTo?.forEach((nftu) => {\n const data = {\n requestBody: {\n reminderId: reminderdIdToFileFor,\n entityBusinessKey: nftu.value,\n domainObject: nftu.domainObject,\n type: values?.fileToType?.value || 1\n }\n };\n data['{reminderID}'] = reminderdIdToFileFor;\n data['{entityBusinessKey}'] = nftu.value;\n updatedPromises.push(\n executeQueryWithParameters(\n { data },\n updateReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(updatedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminderFiledFor = values?.fileTo?.find(\n (nftu) => nftu.value === entityBusinessKey\n );\n if (!matchingReminderFiledFor) {\n console.warn(\n `Reminder Filed For not updated for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingReminderFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Update Reminder Filed For Method Not Promoted'\n );\n }\n }\n },\n [\n createReminderFiledForApiMethod,\n updateReminderFiledForApiMethod,\n deleteReminderFiledForApiMethod,\n handleErrorSnackbar,\n existingReminderFiledFor,\n setExistingReminderFiledFor\n ]\n );\n\n const handleOnSubmit = useCallback(\n async (values) => {\n if (onSubmit) {\n onSubmit({ reminder, ...values });\n } else {\n const reminderdIdToFileFor = await handleSaveReminder({\n reminder,\n ...values\n });\n await handleReminderFiledFor(\n { reminder, ...values },\n reminderdIdToFileFor\n );\n }\n },\n [reminder, onSubmit, handleSaveReminder, handleReminderFiledFor]\n );\n\n const handleTextEditorChange = (reminder) => {\n setReminder(reminder);\n };\n\n const onTemplateChange = useCallback(\n (value) => {\n formRef?.current?.form?.change('subject', value?.subject || '');\n const type = typeOptions.find((option) => option.code === value.typeCode);\n formRef?.current?.form?.change('type', type || null);\n formRef?.current?.form?.change(\n 'reminderDate',\n value.reminderDate === '0001-01-01T00:00:00'\n ? new Date()\n : new Date(value.reminderDate)\n );\n setReminder(value?.content || '');\n },\n [setReminder, formRef, typeOptions]\n );\n\n const handleShortcutOnSelect = useCallback(\n (shortcutContent) => {\n editorRef?.current?.model?.change((writer) => {\n const insertPosition =\n editorRef?.current?.model?.document?.selection?.getFirstPosition();\n writer.remove(\n editorRef?.current?.model?.document?.selection?.getFirstRange()\n );\n writer.insertText(shortcutContent, insertPosition);\n });\n\n setReminder(editorRef?.current?.getData());\n },\n [editorRef, setReminder]\n );\n\n const fileToOptions = useMemo(() => {\n let options = [];\n if (selectedMenu) {\n options = constructBusinessObjectArrFromTree(selectedMenu);\n }\n return options;\n }, [selectedMenu]);\n\n useEffect(() => {\n // TODO: update to use getAll reminderTypes\n const getTypeOptions = async () => {\n let options = [];\n if (reminderTypeSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const typesResponse = await executeQueryAdHoc(\n data,\n reminderTypeSearchApiMethod.apiMethodId\n );\n if (typesResponse?.status === 200) {\n options = typesResponse.data?.pageList || [];\n }\n }\n setTypeOptions(options);\n };\n getTypeOptions();\n }, [reminderTypeSearchApiMethod, setTypeOptions, user]);\n\n useEffect(() => {\n // TODO: update to use getAll reminderTemplates\n const getTemplateOptions = async () => {\n let options = [];\n if (reminderTemplateSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const templatesResponse = await executeQueryAdHoc(\n data,\n reminderTemplateSearchApiMethod.apiMethodId\n );\n if (templatesResponse?.status === 200) {\n options = templatesResponse.data?.pageList || [];\n }\n }\n setTemplateOptions(options);\n };\n getTemplateOptions();\n }, [reminderTemplateSearchApiMethod, setTemplateOptions, user]);\n\n useEffect(() => {\n const getExistingReminder = async () => {\n let existingReminderObj = null;\n const data = {};\n if (reminderGetFullApiMethod) {\n setLoading(true);\n data['{iD}'] = id;\n const reminderResponse = await executeQueryWithParameters(\n { data },\n reminderGetFullApiMethod.apiMethodId\n ).catch((e) => {\n console.error(e);\n setLoading(false);\n });\n if (reminderResponse?.status === 200) {\n existingReminderObj = reminderResponse.data;\n }\n }\n setExistingReminderObj(existingReminderObj);\n setReminder(existingReminderObj?.content);\n setLoading(false);\n };\n if (id) {\n getExistingReminder();\n }\n }, [id, reminderGetFullApiMethod]);\n\n useEffect(() => {\n if (!existingReminderObj || !fileToOptions?.length) {\n return;\n }\n const initialFileTos = fileToOptions.filter((option) => {\n return existingReminderObj.reminderFiledFor.find(\n (nff) => option.value === nff.entityBusinessKey\n );\n });\n setExistingReminderFiledFor(initialFileTos);\n formRef?.current?.form?.change('fileTo', initialFileTos);\n }, [existingReminderObj, fileToOptions, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj || !typeOptions?.length) {\n return;\n }\n const initialType = typeOptions.find(\n (option) => option.code === existingReminderObj.typeCode\n );\n formRef?.current?.form?.change('type', initialType || null);\n }, [existingReminderObj, typeOptions, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj) {\n return;\n }\n formRef?.current?.form?.change(\n 'subject',\n existingReminderObj?.subject || ''\n );\n }, [existingReminderObj, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj?.reminderDate) {\n return;\n }\n formRef?.current?.form?.change(\n 'reminderDate',\n new Date(existingReminderObj.reminderDate)\n );\n }, [existingReminderObj, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj) {\n return;\n }\n const matchingReminderFiledFor = existingReminderObj.reminderFiledFor?.find(\n (rff) =>\n rff.domainObject === selectedNode?.properties?.catalogReturnObject\n );\n const initialFileToType = FILE_TO_TYPES.find(\n (option) => option.value === matchingReminderFiledFor?.type\n );\n formRef?.current?.form?.change('fileToType', initialFileToType || null);\n }, [existingReminderObj, typeOptions, formRef, selectedNode]);\n\n return (\n <div className={classes.root}>\n {loading && <LinearProgress color='secondary' />}\n <AmbientCard fullWidth={true} header={true}>\n <Form onSubmit={handleOnSubmit} ref={formRef}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To')}\n name='fileTo'\n id='fileTo'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={fileToOptions || []}\n optionKey={'label'}\n required={true}\n limitTags={!viewOnly ? 2 : -1}\n isMultiple={true}\n disabled={disabled}\n />\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To Type')}\n name='fileToType'\n id='fileToType'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={FILE_TO_TYPES || []}\n optionKey={'label'}\n required={true}\n disabled={disabled}\n />\n <div className={classes.row}>\n <div style={{ width: '100%' }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Type')}\n name='type'\n id='type'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={typeOptions || []}\n optionKey={'name'}\n required={true}\n disabled={disabled}\n />\n </div>\n {!viewOnly && (\n <div style={{ width: '100%', marginLeft: 8 }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Template')}\n name='template'\n id='template'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={templateOptions || []}\n optionKey={'name'}\n additionalOnChangeAction={onTemplateChange}\n />\n </div>\n )}\n </div>\n <Field\n component={FluentDatePicker}\n label={t('Reminder Date')}\n name='reminderDate'\n id='reminderDate'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n />\n <Field\n component={TextField}\n label={t('Subject')}\n name='subject'\n id='subject'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n InputProps={{\n classes: {\n root: classes?.input,\n input: classes?.formTextInput\n }\n }}\n InputLabelProps={{\n classes: {\n root: classes?.labelRoot\n }\n }}\n />\n <LayoutUnit unit='nudge' />\n <CkRichEditor\n handleChange={handleTextEditorChange}\n classes={{ editor: classes.editor }}\n data={reminder}\n editorRef={editorRef}\n isUsingRef={true}\n readOnly={disabled}\n />\n </Form>\n </AmbientCard>\n <LayoutUnit unit='nudge' />\n {shortcutContentFinderEnabled && (\n <AmbientCard\n fullWidth={true}\n header={true}\n lastChildBottomPadding={'0px'}\n cardContentHeight={`calc(100vh - ${shellHidden ? '568px' : '623px'})`}\n >\n <ShortcutContentFinder onSelect={handleShortcutOnSelect} />\n </AmbientCard>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"RemindersScreen-CVTHY97W.js","names":["reminder","existingReminderObj"],"sources":["../src/reminders/RemindersScreen.jsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { CkRichEditor } from '../UI/inputs/richEditors/CkRichEditor';\nimport { makeStyles, TextField, LinearProgress } from '@material-ui/core';\nimport { Field, Form } from '../utilities/form';\nimport { FluentTextFieldAutoComplete } from '../UI/inputs/textField/FluentTextFieldAutoComplete';\nimport { useTranslation } from 'react-i18next';\nimport { useActionState } from '../hooks/useActions';\nimport { constructBusinessObjectArrFromTree } from '../utilities/tree/TreeUtilities';\nimport { LayoutUnit } from '../layout/LayoutUnit';\nimport { UdpEnums } from '../enums/unitySystemEnums';\nimport { useHandleAxiosSnackbar } from '../utilities/apiHelpers';\nimport { useUser } from '../utilities/auth/useUser';\nimport { differenceWith } from 'lodash';\nimport {\n executeQueryAdHoc,\n getBaseMethod,\n executeQueryWithParameters\n} from '../udp/utilities/methodUtils';\nimport { ShortcutContentFinder } from '../udp/ShortcutContent/ShortcutContentFinder';\nimport { AmbientCard } from '../UI/surfaces/cards/AmbientCard';\nimport { useShellStore } from '../stores/shellStore';\nimport { FluentDatePicker } from '../UI/inputs/pickers/FluentDatePicker';\nimport { useActionStore } from '../stores/actionStore';\nimport { FILE_TO_TYPES } from '../constants/reminderConstants';\nimport { getSearchObject } from '../utilities/search/SearchUtilities';\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n editor: {\n '& .ck-editor__main > .ck-editor__editable_inline': {\n backgroundColor:\n theme?.getThemeData()?.mode === 'dark'\n ? theme.palette.grey[800]\n : theme.palette.grey[100]\n }\n },\n row: {\n display: 'flex',\n justifyContent: 'space-between'\n },\n input: {\n height: 34,\n padding: 0\n },\n formTextInput: {\n fontSize: 14\n },\n labelRoot: {\n fontSize: 14\n }\n}));\n\nexport const RemindersScreen = (props) => {\n const {\n formRef,\n onSubmit,\n shortcutContentFinderEnabled,\n id,\n viewOnly,\n reloadReminders\n } = props;\n const [reminder, setReminder] = useState('');\n const [typeOptions, setTypeOptions] = useState([]);\n const [templateOptions, setTemplateOptions] = useState([]);\n const [reminderId, setReminderId] = useState(id || '');\n const [existingReminderFiledFor, setExistingReminderFiledFor] = useState([]);\n const [existingReminderObj, setExistingReminderObj] = useState(null);\n const [loading, setLoading] = useState(false);\n const classes = useStyles(props);\n const { t } = useTranslation();\n const actionState = useActionState();\n const shellHidden = useShellStore((state) => state.shellHidden);\n const { menuListState, catalogPromotedEntities } = actionState;\n const { handleSuccessSnackbar, handleErrorSnackbar } =\n useHandleAxiosSnackbar();\n const user = useUser();\n const editorRef = useRef(null);\n const selectedNode = useActionStore((state) => state.selectedNode);\n\n const selectedMenu = useMemo(() => {\n if (menuListState.menuList.length) {\n return menuListState.menuList[menuListState.selectedMenuIndex] || null;\n }\n return null;\n }, [menuListState]);\n\n const reminderGetFullApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseGetFullMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const reminderTypeSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Type,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const reminderTemplateSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Template,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const createReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseCreateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const deleteReminderFiledForApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseDeleteMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const disabled = useMemo(() => {\n return viewOnly;\n }, [viewOnly]);\n\n const handleSaveReminder = useCallback(\n async (values) => {\n let response = null;\n const reminderDate = new Date(values?.reminderDate?.setHours(0, 0, 0, 0));\n const data = {\n requestBody: {\n tenantId: user?.currentTenantId,\n typeCode: values?.type?.code,\n subject: values?.subject,\n content: values?.reminder,\n unityUserId: user?.id,\n userDisplayName: `${user?.firstName} ${user?.familyName}`,\n reminderDate: reminderDate.toDateString()\n }\n };\n if (reminderId) {\n if (updateReminderApiMethod) {\n // Set the url parameter for updating reminder\n data['{iD}'] = reminderId;\n response = await executeQueryWithParameters(\n { data },\n updateReminderApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Update Reminder'));\n } else {\n handleErrorSnackbar(null, 'Update Reminder Method Not Promoted');\n }\n } else {\n if (createReminderApiMethod) {\n response = await executeQueryWithParameters(\n { data },\n createReminderApiMethod.apiMethodId\n ).catch((e) => handleErrorSnackbar(e, 'Could not Save Reminder'));\n } else {\n handleErrorSnackbar(null, 'Create Reminder Method Not Promoted');\n }\n }\n\n if (response?.status === 200) {\n if (!reminderId) {\n setReminderId(response.data.id || '');\n handleSuccessSnackbar('Reminder Saved');\n } else {\n handleSuccessSnackbar('Reminder Updated');\n }\n if (reloadReminders) {\n reloadReminders();\n }\n return response.data.id || reminderId;\n }\n\n return reminderId;\n },\n [\n createReminderApiMethod,\n updateReminderApiMethod,\n reminderId,\n setReminderId,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n reloadReminders\n ]\n );\n\n const reminderFiledForToComparator = (nftc1, nftc2) => {\n return nftc1?.value === nftc2?.value;\n };\n\n const handleReminderFiledFor = useCallback(\n async (values, reminderdIdToFileFor) => {\n // Get the reminderFiledFor objects to delete\n const reminderFiledForToDelete = differenceWith(\n existingReminderFiledFor,\n values?.fileTo,\n reminderFiledForToComparator\n );\n\n // Get the reminderFiledFor objects to create\n const reminderFiledForToCreate = differenceWith(\n values?.fileTo,\n existingReminderFiledFor,\n reminderFiledForToComparator\n );\n\n if (reminderdIdToFileFor) {\n if (deleteReminderFiledForApiMethod) {\n const deletedPromises = [];\n reminderFiledForToDelete.forEach((nftd) => {\n const data = {};\n data['{reminderID}'] = reminderdIdToFileFor;\n data['{entityBusinessKey}'] = nftd.value;\n\n deletedPromises.push(\n executeQueryWithParameters(\n { data },\n deleteReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n\n await Promise.all(deletedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n if (responses.length !== deletedPromises.length) {\n console.warn(`Not all Reminder Filed For deleted`);\n }\n }\n );\n } else {\n handleErrorSnackbar(\n null,\n 'Delete Reminder Filed For Method Not Promoted'\n );\n }\n\n if (createReminderFiledForApiMethod) {\n const createdPromises = [];\n reminderFiledForToCreate.forEach((nftc) => {\n const data = {\n requestBody: {\n reminderId: reminderdIdToFileFor,\n entityBusinessKey: nftc.value,\n domainObject: nftc.domainObject,\n type: values?.fileToType?.value || 1\n }\n };\n createdPromises.push(\n executeQueryWithParameters(\n { data },\n createReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(createdPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminderFiledFor =\n reminderFiledForToCreate.find(\n (nftc) => nftc.value === entityBusinessKey\n );\n if (!matchingReminderFiledFor) {\n console.warn(\n `Reminder Filed For not created for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingReminderFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Create Reminder Filed For Method Not Promoted'\n );\n }\n\n if (updateReminderFiledForApiMethod) {\n const updatedPromises = [];\n values?.fileTo?.forEach((nftu) => {\n const data = {\n requestBody: {\n reminderId: reminderdIdToFileFor,\n entityBusinessKey: nftu.value,\n domainObject: nftu.domainObject,\n type: values?.fileToType?.value || 1\n }\n };\n data['{reminderID}'] = reminderdIdToFileFor;\n data['{entityBusinessKey}'] = nftu.value;\n updatedPromises.push(\n executeQueryWithParameters(\n { data },\n updateReminderFiledForApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(updatedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminderFiledFor = values?.fileTo?.find(\n (nftu) => nftu.value === entityBusinessKey\n );\n if (!matchingReminderFiledFor) {\n console.warn(\n `Reminder Filed For not updated for all file to entities`\n );\n }\n }\n });\n }\n );\n setExistingReminderFiledFor(values?.fileTo);\n } else {\n handleErrorSnackbar(\n null,\n 'Update Reminder Filed For Method Not Promoted'\n );\n }\n }\n },\n [\n createReminderFiledForApiMethod,\n updateReminderFiledForApiMethod,\n deleteReminderFiledForApiMethod,\n handleErrorSnackbar,\n existingReminderFiledFor,\n setExistingReminderFiledFor\n ]\n );\n\n const handleOnSubmit = useCallback(\n async (values) => {\n if (onSubmit) {\n onSubmit({ reminder, ...values });\n } else {\n const reminderdIdToFileFor = await handleSaveReminder({\n reminder,\n ...values\n });\n await handleReminderFiledFor(\n { reminder, ...values },\n reminderdIdToFileFor\n );\n }\n },\n [reminder, onSubmit, handleSaveReminder, handleReminderFiledFor]\n );\n\n const handleTextEditorChange = (reminder) => {\n setReminder(reminder);\n };\n\n const onTemplateChange = useCallback(\n (value) => {\n formRef?.current?.form?.change('subject', value?.subject || '');\n const type = typeOptions.find((option) => option.code === value.typeCode);\n formRef?.current?.form?.change('type', type || null);\n formRef?.current?.form?.change(\n 'reminderDate',\n value.reminderDate === '0001-01-01T00:00:00'\n ? new Date()\n : new Date(value.reminderDate)\n );\n setReminder(value?.content || '');\n },\n [setReminder, formRef, typeOptions]\n );\n\n const handleShortcutOnSelect = useCallback(\n (shortcutContent) => {\n editorRef?.current?.model?.change((writer) => {\n const insertPosition =\n editorRef?.current?.model?.document?.selection?.getFirstPosition();\n writer.remove(\n editorRef?.current?.model?.document?.selection?.getFirstRange()\n );\n writer.insertText(shortcutContent, insertPosition);\n });\n\n setReminder(editorRef?.current?.getData());\n },\n [editorRef, setReminder]\n );\n\n const fileToOptions = useMemo(() => {\n let options = [];\n if (selectedMenu) {\n options = constructBusinessObjectArrFromTree(selectedMenu);\n }\n return options;\n }, [selectedMenu]);\n\n useEffect(() => {\n // TODO: update to use getAll reminderTypes\n const getTypeOptions = async () => {\n let options = [];\n if (reminderTypeSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const typesResponse = await executeQueryAdHoc(\n data,\n reminderTypeSearchApiMethod.apiMethodId\n );\n if (typesResponse?.status === 200) {\n options = typesResponse.data?.pageList || [];\n }\n }\n setTypeOptions(options);\n };\n getTypeOptions();\n }, [reminderTypeSearchApiMethod, setTypeOptions, user]);\n\n useEffect(() => {\n // TODO: update to use getAll reminderTemplates\n const getTemplateOptions = async () => {\n let options = [];\n if (reminderTemplateSearchApiMethod) {\n const filterElements = [];\n const searchObject = getSearchObject(filterElements, 1, 200, true);\n const data = { data: searchObject };\n const templatesResponse = await executeQueryAdHoc(\n data,\n reminderTemplateSearchApiMethod.apiMethodId\n );\n if (templatesResponse?.status === 200) {\n options = templatesResponse.data?.pageList || [];\n }\n }\n setTemplateOptions(options);\n };\n getTemplateOptions();\n }, [reminderTemplateSearchApiMethod, setTemplateOptions, user]);\n\n useEffect(() => {\n const getExistingReminder = async () => {\n let existingReminderObj = null;\n const data = {};\n if (reminderGetFullApiMethod) {\n setLoading(true);\n data['{iD}'] = id;\n const reminderResponse = await executeQueryWithParameters(\n { data },\n reminderGetFullApiMethod.apiMethodId\n ).catch((e) => {\n console.error(e);\n setLoading(false);\n });\n if (reminderResponse?.status === 200) {\n existingReminderObj = reminderResponse.data;\n }\n }\n setExistingReminderObj(existingReminderObj);\n setReminder(existingReminderObj?.content);\n setLoading(false);\n };\n if (id) {\n getExistingReminder();\n }\n }, [id, reminderGetFullApiMethod]);\n\n useEffect(() => {\n if (!existingReminderObj || !fileToOptions?.length) {\n return;\n }\n const initialFileTos = fileToOptions.filter((option) => {\n return existingReminderObj.reminderFiledFor.find(\n (nff) => option.value === nff.entityBusinessKey\n );\n });\n setExistingReminderFiledFor(initialFileTos);\n formRef?.current?.form?.change('fileTo', initialFileTos);\n }, [existingReminderObj, fileToOptions, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj || !typeOptions?.length) {\n return;\n }\n const initialType = typeOptions.find(\n (option) => option.code === existingReminderObj.typeCode\n );\n formRef?.current?.form?.change('type', initialType || null);\n }, [existingReminderObj, typeOptions, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj) {\n return;\n }\n formRef?.current?.form?.change(\n 'subject',\n existingReminderObj?.subject || ''\n );\n }, [existingReminderObj, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj?.reminderDate) {\n return;\n }\n formRef?.current?.form?.change(\n 'reminderDate',\n new Date(existingReminderObj.reminderDate)\n );\n }, [existingReminderObj, formRef]);\n\n useEffect(() => {\n if (!existingReminderObj) {\n return;\n }\n const matchingReminderFiledFor = existingReminderObj.reminderFiledFor?.find(\n (rff) =>\n rff.domainObject === selectedNode?.properties?.catalogReturnObject\n );\n const initialFileToType = FILE_TO_TYPES.find(\n (option) => option.value === matchingReminderFiledFor?.type\n );\n formRef?.current?.form?.change('fileToType', initialFileToType || null);\n }, [existingReminderObj, typeOptions, formRef, selectedNode]);\n\n return (\n <div className={classes.root}>\n {loading && <LinearProgress color='secondary' />}\n <AmbientCard fullWidth={true} header={true}>\n <Form onSubmit={handleOnSubmit} ref={formRef}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To')}\n name='fileTo'\n id='fileTo'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={fileToOptions || []}\n optionKey={'label'}\n required={true}\n limitTags={!viewOnly ? 2 : -1}\n isMultiple={true}\n disabled={disabled}\n />\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('File To Type')}\n name='fileToType'\n id='fileToType'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={FILE_TO_TYPES || []}\n optionKey={'label'}\n required={true}\n disabled={disabled}\n />\n <div className={classes.row}>\n <div style={{ width: '100%' }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Type')}\n name='type'\n id='type'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={typeOptions || []}\n optionKey={'name'}\n required={true}\n disabled={disabled}\n />\n </div>\n {!viewOnly && (\n <div style={{ width: '100%', marginLeft: 8 }}>\n <Field\n component={FluentTextFieldAutoComplete}\n label={t('Template')}\n name='template'\n id='template'\n fullWidth\n variant='outlined'\n margin='dense'\n size='small'\n options={templateOptions || []}\n optionKey={'name'}\n additionalOnChangeAction={onTemplateChange}\n />\n </div>\n )}\n </div>\n <Field\n component={FluentDatePicker}\n label={t('Reminder Date')}\n name='reminderDate'\n id='reminderDate'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n />\n <Field\n component={TextField}\n label={t('Subject')}\n name='subject'\n id='subject'\n fullWidth\n variant='outlined'\n size='small'\n margin='dense'\n required\n disabled={disabled}\n InputProps={{\n classes: {\n root: classes?.input,\n input: classes?.formTextInput\n }\n }}\n InputLabelProps={{\n classes: {\n root: classes?.labelRoot\n }\n }}\n />\n <LayoutUnit unit='nudge' />\n <CkRichEditor\n handleChange={handleTextEditorChange}\n classes={{ editor: classes.editor }}\n data={reminder}\n editorRef={editorRef}\n isUsingRef={true}\n readOnly={disabled}\n />\n </Form>\n </AmbientCard>\n <LayoutUnit unit='nudge' />\n {shortcutContentFinderEnabled && (\n <AmbientCard\n fullWidth={true}\n header={true}\n lastChildBottomPadding={'0px'}\n cardContentHeight={`calc(100vh - ${shellHidden ? '568px' : '623px'})`}\n >\n <ShortcutContentFinder onSelect={handleShortcutOnSelect} />\n </AmbientCard>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -3,12 +3,12 @@ import { useInquiryStore } from "./inquiryStore-COAx0QBg.js";
3
3
  import { useSetInitialShellVisibility, useShellStore } from "./shellStore-Bqwtbs_K.js";
4
4
  import { APP_RIBBON_SPACE, useBuildEnvironment } from "./EnvironmentRibbon-CPm8YnJ4.js";
5
5
  import { UtilitySideBar } from "./UtilitySideBar-DlCvljVV.js";
6
- import { PageActionWrapper } from "./PageActionWrapper-KtNGraWi.js";
6
+ import { PageActionWrapper } from "./PageActionWrapper-HgV0I8Km.js";
7
7
  import { NavigationSidebar_default, SiteHeader_default } from "./FluentProfileMenuCard-FKdOEzYd.js";
8
8
  import { UtilityBar } from "./UtilityBar-8sXK6La8.js";
9
9
  import { FUIAppSwitcher_default } from "./FUIAppSwitcher-DzE2TQlx.js";
10
10
  import { getMenuItemsRecursively } from "./menuUtilities-Ckh0KoGJ.js";
11
- import { ActionProvider } from "./ActionProvider-BPuiwxd4.js";
11
+ import { ActionProvider } from "./ActionProvider-DL5qMp-u.js";
12
12
  import { ChatBotProvider } from "./ChatBotProvider-DtLgLU17.js";
13
13
  import React, { useCallback, useEffect, useMemo, useState } from "react";
14
14
  import { Drawer, makeStyles, useMediaQuery, useTheme } from "@material-ui/core";
@@ -270,4 +270,4 @@ Shell.propTypes = {
270
270
 
271
271
  //#endregion
272
272
  export { Shell };
273
- //# sourceMappingURL=Shell-CuYfQQKW.js.map
273
+ //# sourceMappingURL=Shell-DM4ZssU1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Shell-CuYfQQKW.js","names":["menus","SiteHeader","NavigationSidebar","FUIAppSwitcher"],"sources":["../src/shell/Shell.jsx"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport { makeStyles, Drawer, useMediaQuery, useTheme } from '@material-ui/core';\nimport NavigationSidebar from './ui/NavigationSidebar';\nimport SiteHeader from './ui/SiteHeader';\nimport { UtilityBar } from '../UI/utilityDisplay/UtilityBar';\nimport { useTranslation } from 'react-i18next';\nimport FUIAppSwitcher from './ui/appSwitcher/FUIAppSwitcher';\nimport { getMenuItemsRecursively } from '../utilities/menus/menuUtilities';\nimport clsx from 'clsx';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport PropTypes from 'prop-types';\nimport { useUser } from '../utilities/auth/useUser';\nimport { ActionProvider } from '../utilities/provider/ActionProvider';\nimport { PageActionWrapper } from '../actions/PageActionWrapper';\nimport { useInquiryStore } from '../stores/inquiryStore';\nimport {\n useSetInitialShellVisibility,\n useShellStore\n} from '../stores/shellStore';\n\nimport { useBuildEnvironment, APP_RIBBON_SPACE } from './ui/EnvironmentRibbon';\nimport { ChatBotProvider } from '../utilities/chatBot/ChatBotProvider';\n\nconst MenuTypeEnums = {\n Left_Menu: 1,\n Application_Menu: 2,\n Builders_Menu: 3,\n Favorites_Menu: 4\n};\n\nconst useStyles = makeStyles(\n (theme) => ({\n '@global': {\n html: {\n minHeight: '100%'\n },\n 'html, body, #root': {\n display: 'flex',\n flexDirection: 'column'\n },\n 'body, #root': {\n flex: 1\n }\n },\n root: {\n flex: 1,\n minHeight: '100vh',\n display: 'grid',\n gridTemplateAreas: ['sidebar header', 'sidebar content']\n .map((line) => `\"${line}\"`)\n .join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n header: {\n gridArea: 'header'\n },\n sidebar: {\n gridArea: 'sidebar'\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${56 + appRibbonSpace}px)`,\n overflowY: 'auto'\n },\n paper: {\n width: '100%',\n [theme.breakpoints.up('sm')]: {\n width: (props) => props.drawerWidth || 520\n }\n }\n }),\n { name: 'Layout' }\n);\n\n/**\n * Core site layout common to all pages\n */\nexport const Shell = (props) => {\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n ribbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const {\n children,\n userAvatar,\n appContent,\n leftMenu,\n appSelectorMenus,\n siteName,\n className,\n navRoot,\n hideToggle,\n useMockData,\n mockMenus,\n user: passedInUser,\n unityUrl,\n expander,\n sidebarTitle,\n navMenuHoverOn = true,\n secondExtended,\n toggleOne,\n toggleTwo,\n closePrimary,\n closeSecondary,\n panelExpanded,\n panelExpandedSecondary,\n setPanelExpanded = false,\n setPanelExpandedSecondary = false,\n breadCrumbAltLabelList = [],\n currentLocation,\n utilitySidebarResizable,\n utilitySidebarToggleOverride,\n onUtilitySidebarToggleExpandClick,\n hideLayout = false,\n getAccessToken,\n switcherData,\n selectedItem,\n switcherWidth,\n languages,\n utilityBarHasTabsOpen,\n projectSwitcherColor,\n getWidget,\n isValidWidget,\n appSwitcherHeader,\n hamburgerMenuAccessRole\n } = props;\n const contextUser = useUser();\n const user = passedInUser ?? contextUser;\n const { setGetWidget, setIsValidWidget, shellHidden } = useShellStore();\n const [appSwitcherMobile, setAppSwitcherMobile] = useState(false);\n const [appSwitcherDesktop, setAppSwitcherDesktop] = useState(false);\n const { i18n } = useTranslation();\n const inquiryTitle = useInquiryStore((state) => state.title);\n useSetInitialShellVisibility();\n\n useEffect(() => {\n setGetWidget(getWidget);\n return () => setGetWidget(null);\n }, [getWidget, setGetWidget]);\n\n useEffect(() => {\n setIsValidWidget(isValidWidget);\n return () => setIsValidWidget(null);\n }, [isValidWidget, setIsValidWidget]);\n\n const getMenuItems = useCallback(\n (menuTypeId, menus) => {\n if (!menus && !useMockData) {\n return [];\n }\n const menusToFilter = useMockData ? mockMenus : menus;\n\n const foundMenus = menusToFilter.filter(\n (menu) => menu.menuTypeId === menuTypeId && menu.active\n );\n\n if (foundMenus) {\n return foundMenus.reduce((menuItemInstanceStructureViews, menu) => {\n return [\n ...menuItemInstanceStructureViews,\n ...menu.menuItemInstanceStructureViews\n ];\n }, []);\n } else {\n return [];\n }\n },\n [useMockData, mockMenus]\n );\n\n const menus = useMemo(() => {\n const menuItems = getMenuItems(1, leftMenu);\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, leftMenu, getAccessToken]);\n\n const theme = useTheme();\n const mobile = useMediaQuery(theme.breakpoints.up('sm'));\n\n const handleAppSwitcher = (type, bool) => {\n if (type === 'mobile') {\n setAppSwitcherMobile(bool);\n } else {\n setAppSwitcherDesktop(bool);\n }\n };\n\n const builderMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Builders_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const favoriteMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Favorites_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const appMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Application_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const hideAppMenu = useMemo(\n () =>\n !appSelectorMenus ||\n (hamburgerMenuAccessRole &&\n !user?.roleNames.includes(hamburgerMenuAccessRole)),\n [user, appSelectorMenus, hamburgerMenuAccessRole]\n );\n\n useEffect(() => {\n i18n.changeLanguage('en-US');\n }, [i18n]);\n\n if (hideLayout) {\n return <div>{children}</div>;\n }\n\n return (\n <ChatBotProvider>\n <ActionProvider>\n <div className={classes.root}>\n {!shellHidden && (\n <SiteHeader\n className={classes.header}\n siteName={siteName}\n appContent={appContent}\n userAvatar={userAvatar}\n breadCrumbRoot={navRoot}\n setAppSwitcherOpen={(type, bool) => handleAppSwitcher(type, bool)}\n breadCrumbAltLabelList={breadCrumbAltLabelList}\n currentLocation={currentLocation}\n switcherData={switcherData}\n selectedItem={selectedItem}\n switcherWidth={switcherWidth}\n hideAppLaunch={hideAppMenu}\n languages={languages}\n backgroundColor={projectSwitcherColor}\n />\n )}\n\n <div style={{ display: 'flex' }} className={classes.sidebar}>\n {!shellHidden && mobile && (\n <NavigationSidebar\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n {expander && (\n <div>\n <UtilitySideBar\n title={inquiryTitle || sidebarTitle}\n resizable={utilitySidebarResizable}\n utilitySidebarToggleOverride={utilitySidebarToggleOverride}\n onUtilitySidebarToggleExpandClick={\n onUtilitySidebarToggleExpandClick\n }\n sidebarHidden={shellHidden}\n {...props}\n />\n </div>\n )}\n </div>\n\n <div className={classes.content}>\n <UtilityBar\n className={clsx(className)}\n gutters={false}\n hideToggle={hideToggle}\n expander={expander}\n secondExtended={secondExtended}\n toggleOne={toggleOne}\n toggleTwo={toggleTwo}\n closePrimary={closePrimary}\n closeSecondary={closeSecondary}\n expanded={panelExpanded}\n expandedSecondary={panelExpandedSecondary}\n setExpanded={setPanelExpanded}\n setExpandedSecondary={setPanelExpandedSecondary}\n />\n <PageActionWrapper>{children}</PageActionWrapper>\n </div>\n <Drawer\n variant='temporary'\n anchor='left'\n open={appSwitcherDesktop}\n classes={\n !mobile ? {} : !appSelectorMenus ? {} : { paper: classes.paper }\n }\n onClose={() => handleAppSwitcher('desktop', false)}\n >\n {mobile && appSelectorMenus && (\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('desktop', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n )}\n {(!mobile || (mobile && !appSelectorMenus)) && (\n <NavigationSidebar\n toggle={false}\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n </Drawer>\n\n <Drawer\n variant='temporary'\n anchor='right'\n open={appSwitcherMobile}\n classes={{ paper: classes.paper }}\n onClose={() => handleAppSwitcher('mobile', false)}\n >\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('mobile', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n </Drawer>\n </div>\n </ActionProvider>\n </ChatBotProvider>\n );\n};\n\nShell.propTypes = {\n /**\n * The newest propTypes have been added but older ones are missing @todo: add missing propTypes for Shell.\n */\n\n /**\n * The array used to map for label and functions to list items.\n */\n switcherData: PropTypes.array,\n /**\n * The active label displayed.\n */\n selectedItem: PropTypes.string,\n /**\n * Provides a method set the selector width. Default is 100.\n */\n switcherWidth: PropTypes.number,\n /**\n * Children nodes\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired,\n\n /**\n * Name of site\n */\n siteName: PropTypes.string,\n\n /**\n * Component to render for the user Avatar\n */\n userAvatar: PropTypes.element,\n\n appContent: PropTypes.element,\n\n leftMenu: PropTypes.array,\n\n appSelectorMenus: PropTypes.array,\n\n className: PropTypes.object,\n\n navRoot: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.node]),\n\n /**\n * Should the shell use mock data\n */\n useMockData: PropTypes.bool,\n\n mockMenus: PropTypes.array,\n\n unityUrl: PropTypes.string,\n\n expander: PropTypes.bool,\n\n sidebarTitle: PropTypes.string,\n\n navMenuHoverOn: PropTypes.bool,\n\n toggleOne: PropTypes.bool,\n\n toggleTwo: PropTypes.bool,\n\n closePrimary: PropTypes.bool,\n\n closeSecondary: PropTypes.bool,\n\n panelExpanded: PropTypes.bool,\n\n panelExpandedSecondary: PropTypes.bool,\n\n setPanelExpanded: PropTypes.func,\n\n setPanelExpandedSecondary: PropTypes.func,\n\n breadCrumbAltLabelList: PropTypes.array,\n\n currentLocation: PropTypes.object,\n\n utilitySidebarResizable: PropTypes.bool,\n\n utilitySidebarToggleOverride: PropTypes.bool,\n\n onUtilitySidebarToggleExpandClick: PropTypes.func,\n\n hideLayout: PropTypes.bool,\n\n languages: PropTypes.arrayOf(PropTypes.object),\n\n utilityBarHasTabsOpen: PropTypes.bool,\n /**\n * Passes the background color on the project switcher (default: theme secondary)\n */\n projectSwitcherColor: PropTypes.string,\n getWidget: PropTypes.func,\n isValidWidget: PropTypes.func,\n currentTenant: PropTypes.object,\n hamburgerMenuAccessRole: PropTypes.string\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Shell-DM4ZssU1.js","names":["menus","SiteHeader","NavigationSidebar","FUIAppSwitcher"],"sources":["../src/shell/Shell.jsx"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport { makeStyles, Drawer, useMediaQuery, useTheme } from '@material-ui/core';\nimport NavigationSidebar from './ui/NavigationSidebar';\nimport SiteHeader from './ui/SiteHeader';\nimport { UtilityBar } from '../UI/utilityDisplay/UtilityBar';\nimport { useTranslation } from 'react-i18next';\nimport FUIAppSwitcher from './ui/appSwitcher/FUIAppSwitcher';\nimport { getMenuItemsRecursively } from '../utilities/menus/menuUtilities';\nimport clsx from 'clsx';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport PropTypes from 'prop-types';\nimport { useUser } from '../utilities/auth/useUser';\nimport { ActionProvider } from '../utilities/provider/ActionProvider';\nimport { PageActionWrapper } from '../actions/PageActionWrapper';\nimport { useInquiryStore } from '../stores/inquiryStore';\nimport {\n useSetInitialShellVisibility,\n useShellStore\n} from '../stores/shellStore';\n\nimport { useBuildEnvironment, APP_RIBBON_SPACE } from './ui/EnvironmentRibbon';\nimport { ChatBotProvider } from '../utilities/chatBot/ChatBotProvider';\n\nconst MenuTypeEnums = {\n Left_Menu: 1,\n Application_Menu: 2,\n Builders_Menu: 3,\n Favorites_Menu: 4\n};\n\nconst useStyles = makeStyles(\n (theme) => ({\n '@global': {\n html: {\n minHeight: '100%'\n },\n 'html, body, #root': {\n display: 'flex',\n flexDirection: 'column'\n },\n 'body, #root': {\n flex: 1\n }\n },\n root: {\n flex: 1,\n minHeight: '100vh',\n display: 'grid',\n gridTemplateAreas: ['sidebar header', 'sidebar content']\n .map((line) => `\"${line}\"`)\n .join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n header: {\n gridArea: 'header'\n },\n sidebar: {\n gridArea: 'sidebar'\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${56 + appRibbonSpace}px)`,\n overflowY: 'auto'\n },\n paper: {\n width: '100%',\n [theme.breakpoints.up('sm')]: {\n width: (props) => props.drawerWidth || 520\n }\n }\n }),\n { name: 'Layout' }\n);\n\n/**\n * Core site layout common to all pages\n */\nexport const Shell = (props) => {\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n ribbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const {\n children,\n userAvatar,\n appContent,\n leftMenu,\n appSelectorMenus,\n siteName,\n className,\n navRoot,\n hideToggle,\n useMockData,\n mockMenus,\n user: passedInUser,\n unityUrl,\n expander,\n sidebarTitle,\n navMenuHoverOn = true,\n secondExtended,\n toggleOne,\n toggleTwo,\n closePrimary,\n closeSecondary,\n panelExpanded,\n panelExpandedSecondary,\n setPanelExpanded = false,\n setPanelExpandedSecondary = false,\n breadCrumbAltLabelList = [],\n currentLocation,\n utilitySidebarResizable,\n utilitySidebarToggleOverride,\n onUtilitySidebarToggleExpandClick,\n hideLayout = false,\n getAccessToken,\n switcherData,\n selectedItem,\n switcherWidth,\n languages,\n utilityBarHasTabsOpen,\n projectSwitcherColor,\n getWidget,\n isValidWidget,\n appSwitcherHeader,\n hamburgerMenuAccessRole\n } = props;\n const contextUser = useUser();\n const user = passedInUser ?? contextUser;\n const { setGetWidget, setIsValidWidget, shellHidden } = useShellStore();\n const [appSwitcherMobile, setAppSwitcherMobile] = useState(false);\n const [appSwitcherDesktop, setAppSwitcherDesktop] = useState(false);\n const { i18n } = useTranslation();\n const inquiryTitle = useInquiryStore((state) => state.title);\n useSetInitialShellVisibility();\n\n useEffect(() => {\n setGetWidget(getWidget);\n return () => setGetWidget(null);\n }, [getWidget, setGetWidget]);\n\n useEffect(() => {\n setIsValidWidget(isValidWidget);\n return () => setIsValidWidget(null);\n }, [isValidWidget, setIsValidWidget]);\n\n const getMenuItems = useCallback(\n (menuTypeId, menus) => {\n if (!menus && !useMockData) {\n return [];\n }\n const menusToFilter = useMockData ? mockMenus : menus;\n\n const foundMenus = menusToFilter.filter(\n (menu) => menu.menuTypeId === menuTypeId && menu.active\n );\n\n if (foundMenus) {\n return foundMenus.reduce((menuItemInstanceStructureViews, menu) => {\n return [\n ...menuItemInstanceStructureViews,\n ...menu.menuItemInstanceStructureViews\n ];\n }, []);\n } else {\n return [];\n }\n },\n [useMockData, mockMenus]\n );\n\n const menus = useMemo(() => {\n const menuItems = getMenuItems(1, leftMenu);\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, leftMenu, getAccessToken]);\n\n const theme = useTheme();\n const mobile = useMediaQuery(theme.breakpoints.up('sm'));\n\n const handleAppSwitcher = (type, bool) => {\n if (type === 'mobile') {\n setAppSwitcherMobile(bool);\n } else {\n setAppSwitcherDesktop(bool);\n }\n };\n\n const builderMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Builders_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const favoriteMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Favorites_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const appMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Application_Menu,\n appSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, appSelectorMenus, getAccessToken]);\n\n const hideAppMenu = useMemo(\n () =>\n !appSelectorMenus ||\n (hamburgerMenuAccessRole &&\n !user?.roleNames.includes(hamburgerMenuAccessRole)),\n [user, appSelectorMenus, hamburgerMenuAccessRole]\n );\n\n useEffect(() => {\n i18n.changeLanguage('en-US');\n }, [i18n]);\n\n if (hideLayout) {\n return <div>{children}</div>;\n }\n\n return (\n <ChatBotProvider>\n <ActionProvider>\n <div className={classes.root}>\n {!shellHidden && (\n <SiteHeader\n className={classes.header}\n siteName={siteName}\n appContent={appContent}\n userAvatar={userAvatar}\n breadCrumbRoot={navRoot}\n setAppSwitcherOpen={(type, bool) => handleAppSwitcher(type, bool)}\n breadCrumbAltLabelList={breadCrumbAltLabelList}\n currentLocation={currentLocation}\n switcherData={switcherData}\n selectedItem={selectedItem}\n switcherWidth={switcherWidth}\n hideAppLaunch={hideAppMenu}\n languages={languages}\n backgroundColor={projectSwitcherColor}\n />\n )}\n\n <div style={{ display: 'flex' }} className={classes.sidebar}>\n {!shellHidden && mobile && (\n <NavigationSidebar\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n {expander && (\n <div>\n <UtilitySideBar\n title={inquiryTitle || sidebarTitle}\n resizable={utilitySidebarResizable}\n utilitySidebarToggleOverride={utilitySidebarToggleOverride}\n onUtilitySidebarToggleExpandClick={\n onUtilitySidebarToggleExpandClick\n }\n sidebarHidden={shellHidden}\n {...props}\n />\n </div>\n )}\n </div>\n\n <div className={classes.content}>\n <UtilityBar\n className={clsx(className)}\n gutters={false}\n hideToggle={hideToggle}\n expander={expander}\n secondExtended={secondExtended}\n toggleOne={toggleOne}\n toggleTwo={toggleTwo}\n closePrimary={closePrimary}\n closeSecondary={closeSecondary}\n expanded={panelExpanded}\n expandedSecondary={panelExpandedSecondary}\n setExpanded={setPanelExpanded}\n setExpandedSecondary={setPanelExpandedSecondary}\n />\n <PageActionWrapper>{children}</PageActionWrapper>\n </div>\n <Drawer\n variant='temporary'\n anchor='left'\n open={appSwitcherDesktop}\n classes={\n !mobile ? {} : !appSelectorMenus ? {} : { paper: classes.paper }\n }\n onClose={() => handleAppSwitcher('desktop', false)}\n >\n {mobile && appSelectorMenus && (\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('desktop', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n )}\n {(!mobile || (mobile && !appSelectorMenus)) && (\n <NavigationSidebar\n toggle={false}\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n </Drawer>\n\n <Drawer\n variant='temporary'\n anchor='right'\n open={appSwitcherMobile}\n classes={{ paper: classes.paper }}\n onClose={() => handleAppSwitcher('mobile', false)}\n >\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('mobile', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n </Drawer>\n </div>\n </ActionProvider>\n </ChatBotProvider>\n );\n};\n\nShell.propTypes = {\n /**\n * The newest propTypes have been added but older ones are missing @todo: add missing propTypes for Shell.\n */\n\n /**\n * The array used to map for label and functions to list items.\n */\n switcherData: PropTypes.array,\n /**\n * The active label displayed.\n */\n selectedItem: PropTypes.string,\n /**\n * Provides a method set the selector width. Default is 100.\n */\n switcherWidth: PropTypes.number,\n /**\n * Children nodes\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired,\n\n /**\n * Name of site\n */\n siteName: PropTypes.string,\n\n /**\n * Component to render for the user Avatar\n */\n userAvatar: PropTypes.element,\n\n appContent: PropTypes.element,\n\n leftMenu: PropTypes.array,\n\n appSelectorMenus: PropTypes.array,\n\n className: PropTypes.object,\n\n navRoot: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.node]),\n\n /**\n * Should the shell use mock data\n */\n useMockData: PropTypes.bool,\n\n mockMenus: PropTypes.array,\n\n unityUrl: PropTypes.string,\n\n expander: PropTypes.bool,\n\n sidebarTitle: PropTypes.string,\n\n navMenuHoverOn: PropTypes.bool,\n\n toggleOne: PropTypes.bool,\n\n toggleTwo: PropTypes.bool,\n\n closePrimary: PropTypes.bool,\n\n closeSecondary: PropTypes.bool,\n\n panelExpanded: PropTypes.bool,\n\n panelExpandedSecondary: PropTypes.bool,\n\n setPanelExpanded: PropTypes.func,\n\n setPanelExpandedSecondary: PropTypes.func,\n\n breadCrumbAltLabelList: PropTypes.array,\n\n currentLocation: PropTypes.object,\n\n utilitySidebarResizable: PropTypes.bool,\n\n utilitySidebarToggleOverride: PropTypes.bool,\n\n onUtilitySidebarToggleExpandClick: PropTypes.func,\n\n hideLayout: PropTypes.bool,\n\n languages: PropTypes.arrayOf(PropTypes.object),\n\n utilityBarHasTabsOpen: PropTypes.bool,\n /**\n * Passes the background color on the project switcher (default: theme secondary)\n */\n projectSwitcherColor: PropTypes.string,\n getWidget: PropTypes.func,\n isValidWidget: PropTypes.func,\n currentTenant: PropTypes.object,\n hamburgerMenuAccessRole: PropTypes.string\n};\n"],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { MapContext_default } from "./MapContext-D6Th9h9w.js";
2
+ import React, { useContext, useEffect } from "react";
3
+ import OLTileLayer from "ol/layer/Tile";
4
+
5
+ //#region src/maps/openLayerMaps/Layers/Layers.jsx
6
+ const Layers = ({ children }) => {
7
+ return /* @__PURE__ */ React.createElement("div", null, children);
8
+ };
9
+
10
+ //#endregion
11
+ //#region src/maps/openLayerMaps/Layers/TileLayer.js
12
+ const TileLayer = ({ source, zIndex = 0 }) => {
13
+ const { map } = useContext(MapContext_default);
14
+ useEffect(() => {
15
+ if (!map) return;
16
+ const tileLayer = new OLTileLayer({
17
+ source,
18
+ zIndex
19
+ });
20
+ map.addLayer(tileLayer);
21
+ tileLayer.setZIndex(zIndex);
22
+ return () => {
23
+ if (map) map.removeLayer(tileLayer);
24
+ };
25
+ }, [map, source]);
26
+ return null;
27
+ };
28
+
29
+ //#endregion
30
+ export { Layers, TileLayer };
31
+ //# sourceMappingURL=TileLayer-Bk6rITEu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TileLayer-Bk6rITEu.js","names":["MapContext"],"sources":["../src/maps/openLayerMaps/Layers/Layers.jsx","../src/maps/openLayerMaps/Layers/TileLayer.js"],"sourcesContent":["import React from 'react'\n\nexport const Layers = ({ children }) => {\n return <div>{children}</div>\n}\n","import { useContext, useEffect } from 'react'\nimport MapContext from '../Map/MapContext'\nimport OLTileLayer from 'ol/layer/Tile'\n\nexport const TileLayer = ({ source, zIndex = 0 }) => {\n const { map } = useContext(MapContext)\n\n useEffect(() => {\n if (!map) return\n\n const tileLayer = new OLTileLayer({\n source,\n zIndex\n })\n\n map.addLayer(tileLayer)\n tileLayer.setZIndex(zIndex)\n\n return () => {\n if (map) {\n map.removeLayer(tileLayer)\n }\n }\n }, [map, source])\n\n return null\n}\n"],"mappings":";;;;;AAEA,MAAa,UAAU,EAAE,eAAe;AACtC,QAAO,oCAAC,aAAK,SAAe;;;;;ACC9B,MAAa,aAAa,EAAE,QAAQ,SAAS,QAAQ;CACnD,MAAM,EAAE,QAAQ,WAAWA,mBAAW;AAEtC,iBAAgB;AACd,MAAI,CAAC,IAAK;EAEV,MAAM,YAAY,IAAI,YAAY;GAChC;GACA;GACD,CAAC;AAEF,MAAI,SAAS,UAAU;AACvB,YAAU,UAAU,OAAO;AAE3B,eAAa;AACX,OAAI,IACF,KAAI,YAAY,UAAU;;IAG7B,CAAC,KAAK,OAAO,CAAC;AAEjB,QAAO"}
@@ -1092,21 +1092,22 @@ const transformMenuPageTree = (node) => {
1092
1092
  properties: {
1093
1093
  defaultIcon: {
1094
1094
  type: "",
1095
- name: parameters.FluentIcon,
1095
+ name: parameters?.FluentIcon,
1096
1096
  color: ""
1097
1097
  },
1098
1098
  nodeLabel: label,
1099
1099
  nodeSubLabel: "",
1100
+ itemCount: parameters?.itemCount ?? node.menuItemInstance?.itemCount ?? null,
1100
1101
  page: {
1101
- id: parameters.PageId,
1102
- entity: { entityName: parameters.entityName },
1103
- pbiReportCode: parameters.pbiReportCode,
1104
- udpTagId: parameters.udpTagId,
1105
- queryId: parameters.queryId,
1102
+ id: parameters?.PageId,
1103
+ entity: { entityName: parameters?.entityName },
1104
+ pbiReportCode: parameters?.pbiReportCode,
1105
+ udpTagId: parameters?.udpTagId,
1106
+ queryId: parameters?.queryId,
1106
1107
  inquiryTreeId: parameters?.InquiryTreeId,
1107
1108
  requiredFieldMapping: parameters?.requiredFieldMapping
1108
1109
  },
1109
- aggregateThresholdId: parameters.aggregateThresholdId || ""
1110
+ aggregateThresholdId: parameters?.aggregateThresholdId || ""
1110
1111
  },
1111
1112
  children: []
1112
1113
  };
@@ -1136,4 +1137,4 @@ const getSearchValueString = (nodeObj, searchIdentifier) => {
1136
1137
 
1137
1138
  //#endregion
1138
1139
  export { checkNodeIsHidden, collapseAllNodes, constructBusinessObjectArrFromTree, constructDynamicNodeGroups, constructDynamicNodeGroups2, constructPreloadedTree, constructStaticNodeGroups, deleteNode, deleteNodeAndChildren, expandAllNodes, findAllParentIds, findLastNode, findNodeById, findNodeByIdAndLabel, findNodesByIdAndLabel, formatTreeLabel, formatTreeMenuItem, getAllChildrenNodesToDelete, getDisplayDetails, getDisplayName, getHeaderTitle, getIconFromName, getLazyLoadChildrenArr, getNodeIdForRightBorder, getOrderedDynamicGroups, getSearchValueString, makeDynamicGroupStructures, makeDynamicTreeStructure, makeTreeStaticGroupStructure, makeTreeStructure, mapNodeGroupChildren, mapNodeObjValuesToSearchParameters, processCatalogObjectKeysInOrder, processItemForDynamicNodeGroups, processItemForStaticNodeGroup, processObjIndex, processObjectToTree, processOrderedTreeData, processReferences, searchForMatchingNode, searchTree, transformMenuPageTree, updateTreeIds };
1139
- //# sourceMappingURL=TreeUtilities-DVY-2md6.js.map
1140
+ //# sourceMappingURL=TreeUtilities-XLrXtUeL.js.map