udp-react-enterprise-component-library 25.16.0 → 25.16.2-beta.1

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 (1157) hide show
  1. package/README.md +97 -0
  2. package/dist/ActionLoadingContext-CNjaZnRA.js +8 -0
  3. package/dist/ActionLoadingContext-CNjaZnRA.js.map +1 -0
  4. package/dist/ActionLoadingDispatchContext-BnmdA_n3.js +16 -0
  5. package/dist/ActionLoadingDispatchContext-BnmdA_n3.js.map +1 -0
  6. package/dist/ActionProvider-1yV0Pb_q.js +368 -0
  7. package/dist/ActionProvider-1yV0Pb_q.js.map +1 -0
  8. package/dist/ActionSplitScreen-QDScakF5.js +296 -0
  9. package/dist/ActionSplitScreen-QDScakF5.js.map +1 -0
  10. package/dist/ActionWrapper-si5rnFjn.js +889 -0
  11. package/dist/ActionWrapper-si5rnFjn.js.map +1 -0
  12. package/dist/AddressListItem-ab1iGRhK.js +19 -0
  13. package/dist/AddressListItem-ab1iGRhK.js.map +1 -0
  14. package/dist/Adornment-9YJw6GPr.js +19 -0
  15. package/dist/Adornment-9YJw6GPr.js.map +1 -0
  16. package/dist/AgTable-0F_xrxvX.js +184 -0
  17. package/dist/AgTable-0F_xrxvX.js.map +1 -0
  18. package/dist/AggregateChip-7tOziH82.js +242 -0
  19. package/dist/AggregateChip-7tOziH82.js.map +1 -0
  20. package/dist/AmbientAlert-Daw5MVak.js +42 -0
  21. package/dist/AmbientAlert-Daw5MVak.js.map +1 -0
  22. package/dist/AmbientAutoComplete-BmBgMVpv.js +101 -0
  23. package/dist/AmbientAutoComplete-BmBgMVpv.js.map +1 -0
  24. package/dist/AmbientCard-Cp-eNzrW.js +165 -0
  25. package/dist/AmbientCard-Cp-eNzrW.js.map +1 -0
  26. package/dist/AmbientCardButton-DGmyyJxn.js +31 -0
  27. package/dist/AmbientCardButton-DGmyyJxn.js.map +1 -0
  28. package/dist/AmbientCardTitle-CF2luWZ_.js +38 -0
  29. package/dist/AmbientCardTitle-CF2luWZ_.js.map +1 -0
  30. package/dist/AmbientChipButton-C2KvNywY.js +50 -0
  31. package/dist/AmbientChipButton-C2KvNywY.js.map +1 -0
  32. package/dist/AmbientGridTemplate-B58pNLnZ.js +1664 -0
  33. package/dist/AmbientGridTemplate-B58pNLnZ.js.map +1 -0
  34. package/dist/AmbientPopoverMenuItem-Dy3rQ7sp.js +75 -0
  35. package/dist/AmbientPopoverMenuItem-Dy3rQ7sp.js.map +1 -0
  36. package/dist/AmbientSingleDateSelector-bGMAQaH2.js +51 -0
  37. package/dist/AmbientSingleDateSelector-bGMAQaH2.js.map +1 -0
  38. package/dist/AmbientTextField-BHfLW2L3.js +76 -0
  39. package/dist/AmbientTextField-BHfLW2L3.js.map +1 -0
  40. package/dist/AmbientToast-7aYv2gtH.js +70 -0
  41. package/dist/AmbientToast-7aYv2gtH.js.map +1 -0
  42. package/dist/AmbientToggleButton-C-7jtLY0.js +67 -0
  43. package/dist/AmbientToggleButton-C-7jtLY0.js.map +1 -0
  44. package/dist/AmbientToggleButtonGroup-BWYKeDtB.js +87 -0
  45. package/dist/AmbientToggleButtonGroup-BWYKeDtB.js.map +1 -0
  46. package/dist/AmbientToggleButtonGroupDefault-JAnbpfxZ.js +107 -0
  47. package/dist/AmbientToggleButtonGroupDefault-JAnbpfxZ.js.map +1 -0
  48. package/dist/AmbientTokenButton-CpdlLmsF.js +46 -0
  49. package/dist/AmbientTokenButton-CpdlLmsF.js.map +1 -0
  50. package/dist/AmbientVisualizer-BFFwonre.js +672 -0
  51. package/dist/AmbientVisualizer-BFFwonre.js.map +1 -0
  52. package/dist/AppMenu-CWyoGTC4.js +170 -0
  53. package/dist/AppMenu-CWyoGTC4.js.map +1 -0
  54. package/dist/AvatarAlphabet-kN4P-dsj.js +187 -0
  55. package/dist/AvatarAlphabet-kN4P-dsj.js.map +1 -0
  56. package/dist/{MenuPage-BZk69VmF.js → BaseTreeMenu-CroItvOA.js} +18 -219
  57. package/dist/BaseTreeMenu-CroItvOA.js.map +1 -0
  58. package/dist/BioCard-DWXySB2s.js +60 -0
  59. package/dist/BioCard-DWXySB2s.js.map +1 -0
  60. package/dist/BioCardWrapper-oL2gu9ec.js +512 -0
  61. package/dist/BioCardWrapper-oL2gu9ec.js.map +1 -0
  62. package/dist/Box-DQPELDGC.js +11 -0
  63. package/dist/Box-DQPELDGC.js.map +1 -0
  64. package/dist/BreadCrumbMenu-42SrTsSI.js +54 -0
  65. package/dist/BreadCrumbMenu-42SrTsSI.js.map +1 -0
  66. package/dist/CatalogUtilities-C2RsZM3t.js +16 -0
  67. package/dist/CatalogUtilities-C2RsZM3t.js.map +1 -0
  68. package/dist/ChatBotContext-aIWq8Gqd.js +8 -0
  69. package/dist/ChatBotContext-aIWq8Gqd.js.map +1 -0
  70. package/dist/ChatBotProvider-3yBWdcfe.js +67 -0
  71. package/dist/ChatBotProvider-3yBWdcfe.js.map +1 -0
  72. package/dist/ChatContainer-il3bj22z.js +252 -0
  73. package/dist/ChatContainer-il3bj22z.js.map +1 -0
  74. package/dist/CircleButton-RIWPMVG6.js +240 -0
  75. package/dist/CircleButton-RIWPMVG6.js.map +1 -0
  76. package/dist/CircularProgress-BNz8u0DY.js +48 -0
  77. package/dist/CircularProgress-BNz8u0DY.js.map +1 -0
  78. package/dist/CkRichEditor-BzyNk5CH.js +47 -0
  79. package/dist/CkRichEditor-BzyNk5CH.js.map +1 -0
  80. package/dist/ClientSideUdpGrid-DPeVlSHy.js +11 -0
  81. package/dist/ClientSideUdpGrid-DPeVlSHy.js.map +1 -0
  82. package/dist/CompactDataList-QWDPJrR5.js +16 -0
  83. package/dist/CompactDataList-QWDPJrR5.js.map +1 -0
  84. package/dist/CompactDataListItem-DMGFdFDP.js +28 -0
  85. package/dist/CompactDataListItem-DMGFdFDP.js.map +1 -0
  86. package/dist/ContentContainer-DfQA0RcA.js +30 -0
  87. package/dist/ContentContainer-DfQA0RcA.js.map +1 -0
  88. package/dist/Controls-Dns0KUBq.js +27 -0
  89. package/dist/Controls-Dns0KUBq.js.map +1 -0
  90. package/dist/CrudBrowserContainer-CkKwGxjy.js +175 -0
  91. package/dist/CrudBrowserContainer-CkKwGxjy.js.map +1 -0
  92. package/dist/CrudBrowserUtilities-Cm_FNdfE.js +77 -0
  93. package/dist/CrudBrowserUtilities-Cm_FNdfE.js.map +1 -0
  94. package/dist/CrudForm-CS8iy0jE.js +348 -0
  95. package/dist/CrudForm-CS8iy0jE.js.map +1 -0
  96. package/dist/CrudTableSidePanel-DdQ_D8g0.js +120 -0
  97. package/dist/CrudTableSidePanel-DdQ_D8g0.js.map +1 -0
  98. package/dist/DashboardWidget-CpxtRgWv.js +248 -0
  99. package/dist/DashboardWidget-CpxtRgWv.js.map +1 -0
  100. package/dist/DataBrowserContainer-CESNdu3e.js +396 -0
  101. package/dist/DataBrowserContainer-CESNdu3e.js.map +1 -0
  102. package/dist/DateTimeField-O7EKOyoH.js +32 -0
  103. package/dist/DateTimeField-O7EKOyoH.js.map +1 -0
  104. package/dist/DateUtilities-DHTEYbE8.js +15 -0
  105. package/dist/DateUtilities-DHTEYbE8.js.map +1 -0
  106. package/dist/DemoJuly-46P2EFI7.js +1 -0
  107. package/dist/DiffChecker-BZGx08fd.js +38 -0
  108. package/dist/DiffChecker-BZGx08fd.js.map +1 -0
  109. package/dist/Divider-BU1-Ll14.js +11 -0
  110. package/dist/Divider-BU1-Ll14.js.map +1 -0
  111. package/dist/DragDropFileUpload-D2moCBGI.js +89 -0
  112. package/dist/DragDropFileUpload-D2moCBGI.js.map +1 -0
  113. package/dist/DraggableSidebarTemplate-Dhrbn1H1.js +93 -0
  114. package/dist/DraggableSidebarTemplate-Dhrbn1H1.js.map +1 -0
  115. package/dist/DynamicContainerWithMenu-CQLpIY2A.js +141 -0
  116. package/dist/DynamicContainerWithMenu-CQLpIY2A.js.map +1 -0
  117. package/dist/DynamicRangeSlider-D8UVBHSs.js +569 -0
  118. package/dist/DynamicRangeSlider-D8UVBHSs.js.map +1 -0
  119. package/dist/Ellipse-q1-sPjh3.js +113 -0
  120. package/dist/Ellipse-q1-sPjh3.js.map +1 -0
  121. package/dist/EmailDisplay-Bglp_poX.js +116 -0
  122. package/dist/EmailDisplay-Bglp_poX.js.map +1 -0
  123. package/dist/EmptyStateDisplay-BMhnBskG.js +66 -0
  124. package/dist/EmptyStateDisplay-BMhnBskG.js.map +1 -0
  125. package/dist/EntitySideBarContent-Do-R7Fr2.js +84 -0
  126. package/dist/EntitySideBarContent-Do-R7Fr2.js.map +1 -0
  127. package/dist/EnvironmentRibbon-CPm8YnJ4.js +59 -0
  128. package/dist/EnvironmentRibbon-CPm8YnJ4.js.map +1 -0
  129. package/dist/ExportSidesheet-RFDKlbH5.js +334 -0
  130. package/dist/ExportSidesheet-RFDKlbH5.js.map +1 -0
  131. package/dist/ExtenderToggle-C16vjdkn.js +48 -0
  132. package/dist/ExtenderToggle-C16vjdkn.js.map +1 -0
  133. package/dist/ExternalRedirectUrlStorage-DWzDQVSk.js +15 -0
  134. package/dist/ExternalRedirectUrlStorage-DWzDQVSk.js.map +1 -0
  135. package/dist/FUIAppSwitcher-DzE2TQlx.js +360 -0
  136. package/dist/FUIAppSwitcher-DzE2TQlx.js.map +1 -0
  137. package/dist/FUICard-B5SvhKL0.js +140 -0
  138. package/dist/FUICard-B5SvhKL0.js.map +1 -0
  139. package/dist/FUIMenuItem-C6Ypt-fU.js +26 -0
  140. package/dist/FUIMenuItem-C6Ypt-fU.js.map +1 -0
  141. package/dist/FUISquareIconButton-CzLgq8u-.js +20 -0
  142. package/dist/FUISquareIconButton-CzLgq8u-.js.map +1 -0
  143. package/dist/Field-Idoc1A5M.js +61 -0
  144. package/dist/Field-Idoc1A5M.js.map +1 -0
  145. package/dist/FieldArrayCard-BOx60qvz.js +404 -0
  146. package/dist/FieldArrayCard-BOx60qvz.js.map +1 -0
  147. package/dist/FileUpload-BZYmsW6_.js +241 -0
  148. package/dist/FileUpload-BZYmsW6_.js.map +1 -0
  149. package/dist/FluentActivity-CtrJ9Fik.js +69 -0
  150. package/dist/FluentActivity-CtrJ9Fik.js.map +1 -0
  151. package/dist/FluentBody-CFW_TccT.js +16 -0
  152. package/dist/FluentBody-CFW_TccT.js.map +1 -0
  153. package/dist/FluentButton-h_8VjXGT.js +44 -0
  154. package/dist/FluentButton-h_8VjXGT.js.map +1 -0
  155. package/dist/FluentCard-CjR2Ft0S.js +23 -0
  156. package/dist/FluentCard-CjR2Ft0S.js.map +1 -0
  157. package/dist/FluentCardText-jo91oH3j.js +89 -0
  158. package/dist/FluentCardText-jo91oH3j.js.map +1 -0
  159. package/dist/FluentCell-DVrO5tto.js +81 -0
  160. package/dist/FluentCell-DVrO5tto.js.map +1 -0
  161. package/dist/FluentCheckbox-DdPx94AF.js +23 -0
  162. package/dist/FluentCheckbox-DdPx94AF.js.map +1 -0
  163. package/dist/FluentColorPicker-DWJ1ri6q.js +77 -0
  164. package/dist/FluentColorPicker-DWJ1ri6q.js.map +1 -0
  165. package/dist/FluentDataTable-qC_3o6gq.js +30 -0
  166. package/dist/FluentDataTable-qC_3o6gq.js.map +1 -0
  167. package/dist/FluentDatePicker-BV0xrRuX.js +75 -0
  168. package/dist/FluentDatePicker-BV0xrRuX.js.map +1 -0
  169. package/dist/FluentDialog-DU5BAKwU.js +80 -0
  170. package/dist/FluentDialog-DU5BAKwU.js.map +1 -0
  171. package/dist/FluentHead-XCqa3kd7.js +20 -0
  172. package/dist/FluentHead-XCqa3kd7.js.map +1 -0
  173. package/dist/FluentIcon-CB-ANF6C.js +57 -0
  174. package/dist/FluentIcon-CB-ANF6C.js.map +1 -0
  175. package/dist/FluentIconButton-le92OnEc.js +29 -0
  176. package/dist/FluentIconButton-le92OnEc.js.map +1 -0
  177. package/dist/FluentIconKey-DdoCGnzt.js +41 -0
  178. package/dist/FluentIconKey-DdoCGnzt.js.map +1 -0
  179. package/dist/FluentInputSlider-brB0q5Ek.js +50 -0
  180. package/dist/FluentInputSlider-brB0q5Ek.js.map +1 -0
  181. package/dist/FluentLink-3Baymb9o.js +39 -0
  182. package/dist/FluentLink-3Baymb9o.js.map +1 -0
  183. package/dist/FluentListItem-kFAFSSEq.js +99 -0
  184. package/dist/FluentListItem-kFAFSSEq.js.map +1 -0
  185. package/dist/FluentMap-Ba3tDjti.js +72 -0
  186. package/dist/FluentMap-Ba3tDjti.js.map +1 -0
  187. package/dist/FluentMenuListItem-B_HwFoIS.js +32 -0
  188. package/dist/FluentMenuListItem-B_HwFoIS.js.map +1 -0
  189. package/dist/FluentProfileMenuCard-BIwebgKW.js +771 -0
  190. package/dist/FluentProfileMenuCard-BIwebgKW.js.map +1 -0
  191. package/dist/FluentRadioGroup-BS69aaHF.js +31 -0
  192. package/dist/FluentRadioGroup-BS69aaHF.js.map +1 -0
  193. package/dist/FluentRow-B46NBxvd.js +18 -0
  194. package/dist/FluentRow-B46NBxvd.js.map +1 -0
  195. package/dist/FluentSearchField-D8ke5wUJ.js +135 -0
  196. package/dist/FluentSearchField-D8ke5wUJ.js.map +1 -0
  197. package/dist/FluentSimpleSelect-C2BL_HdI.js +441 -0
  198. package/dist/FluentSimpleSelect-C2BL_HdI.js.map +1 -0
  199. package/dist/FluentSimpleTabs-DUU2kdmG.js +72 -0
  200. package/dist/FluentSimpleTabs-DUU2kdmG.js.map +1 -0
  201. package/dist/FluentTabPanel-BGuFHfIQ.js +24 -0
  202. package/dist/FluentTabPanel-BGuFHfIQ.js.map +1 -0
  203. package/dist/FluentTextField-DCzp_6wE.js +68 -0
  204. package/dist/FluentTextField-DCzp_6wE.js.map +1 -0
  205. package/dist/FluentTextFieldAutoComplete-BQvVv8m_.js +100 -0
  206. package/dist/FluentTextFieldAutoComplete-BQvVv8m_.js.map +1 -0
  207. package/dist/FluentTimePicker-Dr8FiVtC.js +67 -0
  208. package/dist/FluentTimePicker-Dr8FiVtC.js.map +1 -0
  209. package/dist/FluentToggle-CCL31z0_.js +49 -0
  210. package/dist/FluentToggle-CCL31z0_.js.map +1 -0
  211. package/dist/FluentUploadIconButton-CzNiaIpa.js +129 -0
  212. package/dist/FluentUploadIconButton-CzNiaIpa.js.map +1 -0
  213. package/dist/FormButtons-BL9d-T3e.js +130 -0
  214. package/dist/FormButtons-BL9d-T3e.js.map +1 -0
  215. package/dist/FormControlLabel-C2H2jokx.js +17 -0
  216. package/dist/FormControlLabel-C2H2jokx.js.map +1 -0
  217. package/dist/GeoLocation-Dv1vb1xw.js +116 -0
  218. package/dist/GeoLocation-Dv1vb1xw.js.map +1 -0
  219. package/dist/GeoMap-CVGJXRRA.js +108 -0
  220. package/dist/GeoMap-CVGJXRRA.js.map +1 -0
  221. package/dist/Grid-5LtTpExg.js +17 -0
  222. package/dist/Grid-5LtTpExg.js.map +1 -0
  223. package/dist/GridFunctions-Dx91xe8e.js +150 -0
  224. package/dist/GridFunctions-Dx91xe8e.js.map +1 -0
  225. package/dist/GridGroupingSidebar-nHJQULrr.js +142 -0
  226. package/dist/GridGroupingSidebar-nHJQULrr.js.map +1 -0
  227. package/dist/GridRow-Bu4ZB7BW.js +54 -0
  228. package/dist/GridRow-Bu4ZB7BW.js.map +1 -0
  229. package/dist/GroupNode-C1Y28U4c.js +39 -0
  230. package/dist/GroupNode-C1Y28U4c.js.map +1 -0
  231. package/dist/HeaderExpander-Ai4mICeo.js +53 -0
  232. package/dist/HeaderExpander-Ai4mICeo.js.map +1 -0
  233. package/dist/HintPanel-DkMCmuP2.js +44 -0
  234. package/dist/HintPanel-DkMCmuP2.js.map +1 -0
  235. package/dist/IconButtonWithToolTip-DQacH9wQ.js +28 -0
  236. package/dist/IconButtonWithToolTip-DQacH9wQ.js.map +1 -0
  237. package/dist/IconLibrary-CPErCan6.js +180 -0
  238. package/dist/IconLibrary-CPErCan6.js.map +1 -0
  239. package/dist/IconRenderer-BbcxG30f.js +43 -0
  240. package/dist/IconRenderer-BbcxG30f.js.map +1 -0
  241. package/dist/Iframe-T9O-RU10.js +31 -0
  242. package/dist/Iframe-T9O-RU10.js.map +1 -0
  243. package/dist/IframeContainer-Cr0vSFwX.js +23 -0
  244. package/dist/IframeContainer-Cr0vSFwX.js.map +1 -0
  245. package/dist/ImportDataFromFileMapping-CjANFPa8.js +737 -0
  246. package/dist/ImportDataFromFileMapping-CjANFPa8.js.map +1 -0
  247. package/dist/IndicatorChip-Bi4tqLlK.js +39 -0
  248. package/dist/IndicatorChip-Bi4tqLlK.js.map +1 -0
  249. package/dist/InputFieldTypeEnums-yNsnE6kL.js +14 -0
  250. package/dist/InputFieldTypeEnums-yNsnE6kL.js.map +1 -0
  251. package/dist/Inquiry-C4hRlNvR.js +2978 -0
  252. package/dist/Inquiry-C4hRlNvR.js.map +1 -0
  253. package/dist/InquiryDashboard-Cn4F0BuC.js +17 -0
  254. package/dist/InquiryDashboard-Cn4F0BuC.js.map +1 -0
  255. package/dist/InquiryHeaderControl-D8G6OuEN.js +40 -0
  256. package/dist/InquiryHeaderControl-D8G6OuEN.js.map +1 -0
  257. package/dist/InquiryHeaderSecondaryAlert-BnYD5HYk.js +39 -0
  258. package/dist/InquiryHeaderSecondaryAlert-BnYD5HYk.js.map +1 -0
  259. package/dist/InquiryNodeControls-u17S3yQl.js +209 -0
  260. package/dist/InquiryNodeControls-u17S3yQl.js.map +1 -0
  261. package/dist/InquirySearchContainer-BluT5hv3.js +834 -0
  262. package/dist/InquirySearchContainer-BluT5hv3.js.map +1 -0
  263. package/dist/KeyValueTextField-DPDWprk4.js +104 -0
  264. package/dist/KeyValueTextField-DPDWprk4.js.map +1 -0
  265. package/dist/LayoutUnit-fGVQwt6Y.js +80 -0
  266. package/dist/LayoutUnit-fGVQwt6Y.js.map +1 -0
  267. package/dist/LibraryData-BtirxoE9.js +9043 -0
  268. package/dist/LibraryData-BtirxoE9.js.map +1 -0
  269. package/dist/LinearProgress-CVk0GRO-.js +49 -0
  270. package/dist/LinearProgress-CVk0GRO-.js.map +1 -0
  271. package/dist/LoadingIndicator-DDx4mIsm.js +47 -0
  272. package/dist/LoadingIndicator-DDx4mIsm.js.map +1 -0
  273. package/dist/LoadingOverlay-DBYfWYwS.js +17 -0
  274. package/dist/LoadingOverlay-DBYfWYwS.js.map +1 -0
  275. package/dist/LocalRedirectUrlStorage-BQHr5JcA.js +21 -0
  276. package/dist/LocalRedirectUrlStorage-BQHr5JcA.js.map +1 -0
  277. package/dist/Map-CM3OkjUS.js +56 -0
  278. package/dist/Map-CM3OkjUS.js.map +1 -0
  279. package/dist/Map-yjCCFFzf.js +127 -0
  280. package/dist/Map-yjCCFFzf.js.map +1 -0
  281. package/dist/MapContent-JgIyNm5C.js +117 -0
  282. package/dist/MapContent-JgIyNm5C.js.map +1 -0
  283. package/dist/MapContext-CUKty8Mr.js +9 -0
  284. package/dist/MapContext-CUKty8Mr.js.map +1 -0
  285. package/dist/MapContext-D6Th9h9w.js +9 -0
  286. package/dist/MapContext-D6Th9h9w.js.map +1 -0
  287. package/dist/MapControlsStandard-twyqBTRG.js +142 -0
  288. package/dist/MapControlsStandard-twyqBTRG.js.map +1 -0
  289. package/dist/MenuPage-C4LnhsE3.js +251 -0
  290. package/dist/MenuPage-C4LnhsE3.js.map +1 -0
  291. package/dist/MenuPage-fQS1_KWY.js +56 -0
  292. package/dist/MttMainTimeline-B5wICTvi.js +888 -0
  293. package/dist/MttMainTimeline-B5wICTvi.js.map +1 -0
  294. package/dist/MttSummary-nc74ZtC8.js +256 -0
  295. package/dist/MttSummary-nc74ZtC8.js.map +1 -0
  296. package/dist/MttYearTag-Cb_oIUNq.js +178 -0
  297. package/dist/MttYearTag-Cb_oIUNq.js.map +1 -0
  298. package/dist/MyExportsPage-C3PjlL4J.js +229 -0
  299. package/dist/MyExportsPage-C3PjlL4J.js.map +1 -0
  300. package/dist/MyExportsPage-DbH8z4-2.js +65 -0
  301. package/dist/NestedGrid-qYvtjvQd.js +84 -0
  302. package/dist/NestedGrid-qYvtjvQd.js.map +1 -0
  303. package/dist/NodeLoader-DRIIc46w.js +46 -0
  304. package/dist/NodeLoader-DRIIc46w.js.map +1 -0
  305. package/dist/NotesScreen-CvAvZ_R3.js +365 -0
  306. package/dist/NotesScreen-CvAvZ_R3.js.map +1 -0
  307. package/dist/NumberOperator-CDToRW8i.js +45 -0
  308. package/dist/NumberOperator-CDToRW8i.js.map +1 -0
  309. package/dist/PAHAdditionalRightComponent-CvWTgdMd.js +21 -0
  310. package/dist/PAHAdditionalRightComponent-CvWTgdMd.js.map +1 -0
  311. package/dist/PageActionWrapper-D2qr_WIM.js +55 -0
  312. package/dist/PageActionWrapper-D2qr_WIM.js.map +1 -0
  313. package/dist/PageContainer-BI8ve3o2.js +223 -0
  314. package/dist/PageContainer-BI8ve3o2.js.map +1 -0
  315. package/dist/PageContext-DujK-Yng.js +49 -0
  316. package/dist/PageContext-DujK-Yng.js.map +1 -0
  317. package/dist/PageLoading-DCoyVjWf.js +18 -0
  318. package/dist/PageLoading-DCoyVjWf.js.map +1 -0
  319. package/dist/PageNotFoundRoute-B82i8e68.js +24 -0
  320. package/dist/PageNotFoundRoute-B82i8e68.js.map +1 -0
  321. package/dist/PageNotFoundRoute-CsXuq0vw.js +4 -0
  322. package/dist/PageRenderer-NgWXYsLr.js +29 -0
  323. package/dist/PageRenderer-NgWXYsLr.js.map +1 -0
  324. package/dist/PageSectionSpacer-D_yz3sra.js +88 -0
  325. package/dist/PageSectionSpacer-D_yz3sra.js.map +1 -0
  326. package/dist/{PageNotFoundRoute-D9dLbM_w.js → PageStatus-CjupI8az.js} +4 -21
  327. package/dist/PageStatus-CjupI8az.js.map +1 -0
  328. package/dist/PageSubHeaderAction-Cw7gmU2W.js +20 -0
  329. package/dist/PageSubHeaderAction-Cw7gmU2W.js.map +1 -0
  330. package/dist/PasswordResetRedirect-DmhA2INZ.js +4 -0
  331. package/dist/{PasswordResetRedirect-C3g8L0vA.js → PasswordResetRedirect-MMUb4reI.js} +4 -21
  332. package/dist/PasswordResetRedirect-MMUb4reI.js.map +1 -0
  333. package/dist/PowerBIReport-CYX6YxbE.js +60 -0
  334. package/dist/PowerBIReport-CYX6YxbE.js.map +1 -0
  335. package/dist/PrimaryActionButton-CQXyHAeG.js +36 -0
  336. package/dist/PrimaryActionButton-CQXyHAeG.js.map +1 -0
  337. package/dist/PrimaryActionHeader-D9vn0zfH.js +547 -0
  338. package/dist/PrimaryActionHeader-D9vn0zfH.js.map +1 -0
  339. package/dist/PropertyFields-BOhyMi0i.js +65 -0
  340. package/dist/PropertyFields-BOhyMi0i.js.map +1 -0
  341. package/dist/QueryResult-BXX3-4Zh.js +10 -0
  342. package/dist/QueryResult-BXX3-4Zh.js.map +1 -0
  343. package/dist/QuickViewCard-Du-MuSVf.js +24 -0
  344. package/dist/QuickViewCard-Du-MuSVf.js.map +1 -0
  345. package/dist/RecentlyLoadedNodesTable-BZ4YiuvL.js +108 -0
  346. package/dist/RecentlyLoadedNodesTable-BZ4YiuvL.js.map +1 -0
  347. package/dist/RejectIcon-BbYRcoLI.js +40 -0
  348. package/dist/RejectIcon-BbYRcoLI.js.map +1 -0
  349. package/dist/RemindersCard-BJhfqNQk.js +138 -0
  350. package/dist/RemindersCard-BJhfqNQk.js.map +1 -0
  351. package/dist/RemindersScreen-9OpdtOBe.js +440 -0
  352. package/dist/RemindersScreen-9OpdtOBe.js.map +1 -0
  353. package/dist/RequiredFieldsMappingForm-D_mg2RJ2.js +344 -0
  354. package/dist/RequiredFieldsMappingForm-D_mg2RJ2.js.map +1 -0
  355. package/dist/RuleUtilities-DXVlN84J.js +89 -0
  356. package/dist/RuleUtilities-DXVlN84J.js.map +1 -0
  357. package/dist/SearchMethodUdpGrid-Ua0Kj84J.js +11 -0
  358. package/dist/SearchMethodUdpGrid-Ua0Kj84J.js.map +1 -0
  359. package/dist/SearchOperator-BLSwbmXG.js +59 -0
  360. package/dist/SearchOperator-BLSwbmXG.js.map +1 -0
  361. package/dist/SearchServiceDatasource-C-eLl_u3.js +156 -0
  362. package/dist/SearchServiceDatasource-C-eLl_u3.js.map +1 -0
  363. package/dist/{SearchUtilities-lVLvOpzo.js → SearchUtilities-CxVn31Ak.js} +4 -5
  364. package/dist/SearchUtilities-CxVn31Ak.js.map +1 -0
  365. package/dist/SelectUtilities-BCLrDhpD.js +30 -0
  366. package/dist/SelectUtilities-BCLrDhpD.js.map +1 -0
  367. package/dist/Shell-B9M8lQ22.js +268 -0
  368. package/dist/Shell-B9M8lQ22.js.map +1 -0
  369. package/dist/ShortcutContentFinder-D5qCCU1l.js +123 -0
  370. package/dist/ShortcutContentFinder-D5qCCU1l.js.map +1 -0
  371. package/dist/SideBarTemplate-CsJPE01r.js +128 -0
  372. package/dist/SideBarTemplate-CsJPE01r.js.map +1 -0
  373. package/dist/SideSheet-BhKZOd2G.js +82 -0
  374. package/dist/SideSheet-BhKZOd2G.js.map +1 -0
  375. package/dist/SideSheetHeader-DomTDjrB.js +79 -0
  376. package/dist/SideSheetHeader-DomTDjrB.js.map +1 -0
  377. package/dist/SidebarCollapseButton-B6H3WAMn.js +64 -0
  378. package/dist/SidebarCollapseButton-B6H3WAMn.js.map +1 -0
  379. package/dist/SidebarHeader-BKV537q9.js +82 -0
  380. package/dist/SidebarHeader-BKV537q9.js.map +1 -0
  381. package/dist/SiteHeaderRightComponent-zuiawaq3.js +20 -0
  382. package/dist/SiteHeaderRightComponent-zuiawaq3.js.map +1 -0
  383. package/dist/Source-BUBwrbaZ.js +34 -0
  384. package/dist/Source-BUBwrbaZ.js.map +1 -0
  385. package/dist/StandardTitle-DkEO3oI5.js +23 -0
  386. package/dist/StandardTitle-DkEO3oI5.js.map +1 -0
  387. package/dist/StatusChip-Bw-0wE_B.js +75 -0
  388. package/dist/StatusChip-Bw-0wE_B.js.map +1 -0
  389. package/dist/StringUtilities-DyjYA5pU.js +30 -0
  390. package/dist/StringUtilities-DyjYA5pU.js.map +1 -0
  391. package/dist/SubHeaderAction-vXEAp3A2.js +27 -0
  392. package/dist/SubHeaderAction-vXEAp3A2.js.map +1 -0
  393. package/dist/SummaryBlock-BUKWxmJe.js +98 -0
  394. package/dist/SummaryBlock-BUKWxmJe.js.map +1 -0
  395. package/dist/SupportCaseSideSheet-GV3FfBpO.js +375 -0
  396. package/dist/SupportCaseSideSheet-GV3FfBpO.js.map +1 -0
  397. package/dist/TableColumnDefs-nlfu2DdT.js +33 -0
  398. package/dist/TableColumnDefs-nlfu2DdT.js.map +1 -0
  399. package/dist/TableContainer-DX7ylhSY.js +109 -0
  400. package/dist/TableContainer-DX7ylhSY.js.map +1 -0
  401. package/dist/TenantProvider-CKbxaw0X.js +37 -0
  402. package/dist/TenantProvider-CKbxaw0X.js.map +1 -0
  403. package/dist/TileDisplay-Bg0ZJFDh.js +224 -0
  404. package/dist/TileDisplay-Bg0ZJFDh.js.map +1 -0
  405. package/dist/TileLayer-Bk6rITEu.js +31 -0
  406. package/dist/TileLayer-Bk6rITEu.js.map +1 -0
  407. package/dist/TimeField-DK4r4zAc.js +62 -0
  408. package/dist/TimeField-DK4r4zAc.js.map +1 -0
  409. package/dist/TimelineToken-H8lALbXg.js +72 -0
  410. package/dist/TimelineToken-H8lALbXg.js.map +1 -0
  411. package/dist/Token-DOIAu9p4.js +70 -0
  412. package/dist/Token-DOIAu9p4.js.map +1 -0
  413. package/dist/TokenGroupItem-DKGmGnzr.js +36 -0
  414. package/dist/TokenGroupItem-DKGmGnzr.js.map +1 -0
  415. package/dist/{UtilitySideBar-9LDu9AaN.js → TreeUtilities-BxV5PMJ8.js} +15 -854
  416. package/dist/TreeUtilities-BxV5PMJ8.js.map +1 -0
  417. package/dist/TrimForAvatar-BQMU2_5J.js +8 -0
  418. package/dist/TrimForAvatar-BQMU2_5J.js.map +1 -0
  419. package/dist/Typography-6jelcyoY.js +22 -0
  420. package/dist/Typography-6jelcyoY.js.map +1 -0
  421. package/dist/UI/accordion/index.js +14 -0
  422. package/dist/UI/advancedSearchBuilder/index.js +4 -0
  423. package/dist/UI/charts/index.js +3 -0
  424. package/dist/UI/components/dataDisplay/index.js +19 -0
  425. package/dist/UI/components/feedback/index.js +4 -0
  426. package/dist/UI/components/index.js +22 -0
  427. package/dist/UI/containers/index.js +7 -0
  428. package/dist/UI/dataDisplay/FluentActivity/index.js +5 -0
  429. package/dist/UI/dataDisplay/FluentDataTable/FluentBody/index.js +3 -0
  430. package/dist/UI/dataDisplay/FluentDataTable/FluentCell/index.js +13 -0
  431. package/dist/UI/dataDisplay/FluentDataTable/FluentHead/index.js +3 -0
  432. package/dist/UI/dataDisplay/FluentDataTable/FluentRow/index.js +3 -0
  433. package/dist/UI/dataDisplay/FluentDataTable/index.js +17 -0
  434. package/dist/UI/dataDisplay/address/index.js +4 -0
  435. package/dist/UI/dataDisplay/cardList/index.js +4 -0
  436. package/dist/UI/dataDisplay/directory/index.js +4 -0
  437. package/dist/UI/dataDisplay/entityHeader/index.js +34 -0
  438. package/dist/UI/dataDisplay/index.js +78 -0
  439. package/dist/UI/dataDisplay/map/index.js +6 -0
  440. package/dist/UI/dataDisplay/notes/index.js +7 -0
  441. package/dist/UI/dataDisplay/ticketCard/index.js +6 -0
  442. package/dist/UI/dataDisplay/typography/index.js +12 -0
  443. package/dist/UI/dataDisplay/visualization/index.js +7 -0
  444. package/dist/UI/demos/index.js +3 -0
  445. package/dist/UI/feedback/index.js +12 -0
  446. package/dist/UI/fileViewer/index.js +27 -0
  447. package/dist/UI/floorplans/index.js +56 -0
  448. package/dist/UI/forms/index.js +50 -0
  449. package/dist/UI/iframe/index.js +4 -0
  450. package/dist/UI/index.js +213 -0
  451. package/dist/UI/inputs/buttons/index.js +53 -0
  452. package/dist/UI/inputs/buttons/index.js.map +1 -0
  453. package/dist/UI/inputs/calendar/index.js +3 -0
  454. package/dist/UI/inputs/checkbox/index.js +3 -0
  455. package/dist/UI/inputs/datetimes/index.js +4 -0
  456. package/dist/UI/inputs/fieldArrayCard/index.js +66 -0
  457. package/dist/UI/inputs/link/index.js +4 -0
  458. package/dist/UI/inputs/menus/index.js +11 -0
  459. package/dist/UI/inputs/pickers/index.js +8 -0
  460. package/dist/UI/inputs/radio/index.js +3 -0
  461. package/dist/UI/inputs/richEditors/index.js +3 -0
  462. package/dist/UI/inputs/sliders/index.js +3 -0
  463. package/dist/UI/inputs/textField/index.js +14 -0
  464. package/dist/UI/inputs/toggle/index.js +3 -0
  465. package/dist/UI/loading/LoadingIndicator/index.js +3 -0
  466. package/dist/UI/loading/index.js +6 -0
  467. package/dist/UI/mapLayout/index.js +61 -0
  468. package/dist/UI/maps/index.js +4 -0
  469. package/dist/UI/navigation/index.js +27 -0
  470. package/dist/UI/navigation/menus/index.js +21 -0
  471. package/dist/UI/navigation/tabs/defaultTabs/index.js +5 -0
  472. package/dist/UI/navigation/tabs/index.js +8 -0
  473. package/dist/UI/property/index.js +9 -0
  474. package/dist/UI/property/widgets/index.js +7 -0
  475. package/dist/UI/stepper/index.js +3 -0
  476. package/dist/UI/support/index.js +31 -0
  477. package/dist/UI/surfaces/NestedGrid/index.js +6 -0
  478. package/dist/UI/surfaces/NestedGrid/ui/index.js +4 -0
  479. package/dist/UI/surfaces/cards/index.js +33 -0
  480. package/dist/UI/surfaces/cards/newsCard/index.js +3 -0
  481. package/dist/UI/surfaces/cards/workOrderCard/index.js +13 -0
  482. package/dist/UI/surfaces/index.js +39 -0
  483. package/dist/UI/templates/index.js +74 -0
  484. package/dist/UI/templates/newGrid/index.js +36 -0
  485. package/dist/UI/templates/ui/index.js +15 -0
  486. package/dist/UI/timeline/fluentTimeline/index.js +13 -0
  487. package/dist/UI/timeline/index.js +14 -0
  488. package/dist/UI/utilityDisplay/alerts/index.js +24 -0
  489. package/dist/UI/utilityDisplay/index.js +85 -0
  490. package/dist/UI/utilityDisplay/ui/index.js +5 -0
  491. package/dist/UI/utilityDisplay/utilities/index.js +6 -0
  492. package/dist/UI/utilityDisplay/utilityHeader/index.js +16 -0
  493. package/dist/UI/widgets/index.js +17 -0
  494. package/dist/UI-B4fGY3AB.js +45 -0
  495. package/dist/UI-B4fGY3AB.js.map +1 -0
  496. package/dist/UdpAlertsContainer-BFByWJQT.js +80 -0
  497. package/dist/UdpAlertsContainer-BFByWJQT.js.map +1 -0
  498. package/dist/{UdpMaintenanceConfigPage-Bbaa9QQm.js → UdpMaintenanceConfigPage-Chsq3iZC.js} +10 -8
  499. package/dist/UdpMaintenanceConfigPage-Chsq3iZC.js.map +1 -0
  500. package/dist/UdpMaintenanceConfigPage-DvSwjF_L.js +15 -0
  501. package/dist/UdpMaintenanceEnginePage-CpqXzyEv.js +439 -0
  502. package/dist/UdpMaintenanceEnginePage-CpqXzyEv.js.map +1 -0
  503. package/dist/UdpMaintenanceEnginePage-CutwTNgV.js +59 -0
  504. package/dist/UdpMapToolbar-B6g5Kc_y.js +17 -0
  505. package/dist/UdpMapToolbar-B6g5Kc_y.js.map +1 -0
  506. package/dist/{UdpPublicForm-3xkpVjji.js → UdpPublicForm-CGo9h-lA.js} +10 -20
  507. package/dist/UdpPublicForm-CGo9h-lA.js.map +1 -0
  508. package/dist/UdpPublicForm-iGqFAAqg.js +6 -0
  509. package/dist/UdpRoutes-DgjUyGo6.js +110 -0
  510. package/dist/UdpRoutes-DgjUyGo6.js.map +1 -0
  511. package/dist/UdpTabs-C7pvmyRq.js +209 -0
  512. package/dist/UdpTabs-C7pvmyRq.js.map +1 -0
  513. package/dist/UdpTimeSelector-BIKJO-Q4.js +147 -0
  514. package/dist/UdpTimeSelector-BIKJO-Q4.js.map +1 -0
  515. package/dist/UnityFluentIcon-fuqAQh0C.js +70 -0
  516. package/dist/UnityFluentIcon-fuqAQh0C.js.map +1 -0
  517. package/dist/UnityIconLibrary-DnCuEr5M.js +44 -0
  518. package/dist/UnityIconLibrary-DnCuEr5M.js.map +1 -0
  519. package/dist/UnitySessionStorage-DBqfMiK5.js +19 -0
  520. package/dist/UnitySessionStorage-DBqfMiK5.js.map +1 -0
  521. package/dist/UserFormSideSheet-ExBC8Coy.js +399 -0
  522. package/dist/UserFormSideSheet-ExBC8Coy.js.map +1 -0
  523. package/dist/UtilityBar-CoBkrOKT.js +98 -0
  524. package/dist/UtilityBar-CoBkrOKT.js.map +1 -0
  525. package/dist/UtilityBarInport-BZbPE650.js +22 -0
  526. package/dist/UtilityBarInport-BZbPE650.js.map +1 -0
  527. package/dist/UtilitySideBar-otYqGPhu.js +95 -0
  528. package/dist/UtilitySideBar-otYqGPhu.js.map +1 -0
  529. package/dist/VectorLayer-DvXP_PbI.js +72 -0
  530. package/dist/VectorLayer-DvXP_PbI.js.map +1 -0
  531. package/dist/{VirtualBrowser-CiD8XKsM.js → VirtualBrowser-79SyTCIe.js} +28 -141
  532. package/dist/VirtualBrowser-79SyTCIe.js.map +1 -0
  533. package/dist/VirtualBrowser-CiO6tvKp.js +76 -0
  534. package/dist/VirtualForm-CZWtQ2vU.js +65 -0
  535. package/dist/VirtualForm-CZWtQ2vU.js.map +1 -0
  536. package/dist/WorkflowContainer-9V9u_P1t.js +187 -0
  537. package/dist/WorkflowContainer-9V9u_P1t.js.map +1 -0
  538. package/dist/WorkflowContainer-DtvXxyTb.js +73 -0
  539. package/dist/WorkflowContent-BnzM52Sa.js +428 -0
  540. package/dist/WorkflowContent-BnzM52Sa.js.map +1 -0
  541. package/dist/WorkflowTaskFlow-BCm5Iyy0.js +135 -0
  542. package/dist/WorkflowTaskFlow-BCm5Iyy0.js.map +1 -0
  543. package/dist/WorkflowTreeMenu-H_Nbxi3A.js +346 -0
  544. package/dist/WorkflowTreeMenu-H_Nbxi3A.js.map +1 -0
  545. package/dist/ZoomControl-Bud43x3A.js +38 -0
  546. package/dist/ZoomControl-Bud43x3A.js.map +1 -0
  547. package/dist/accordion-Sv7pQXQW.js +192 -0
  548. package/dist/accordion-Sv7pQXQW.js.map +1 -0
  549. package/dist/actionSummary-CyjnFFFF.js +255 -0
  550. package/dist/actionSummary-CyjnFFFF.js.map +1 -0
  551. package/dist/actionUtils-7dmb-PYX.js +218 -0
  552. package/dist/actionUtils-7dmb-PYX.js.map +1 -0
  553. package/dist/actions/actionSummary/index.js +26 -0
  554. package/dist/actions/index.js +89 -0
  555. package/dist/actions/sidebar/index.js +12 -0
  556. package/dist/actions/utils/index.js +13 -0
  557. package/dist/addUser-DdxKkJbW.js +1 -0
  558. package/dist/address-CHc5T3Ve.js +1 -0
  559. package/dist/advancedSearchBuilder-tEAoUd1I.js +19 -0
  560. package/dist/advancedSearchBuilder-tEAoUd1I.js.map +1 -0
  561. package/dist/aggregateUtils-C04KQf3k.js +70 -0
  562. package/dist/aggregateUtils-C04KQf3k.js.map +1 -0
  563. package/dist/aggrid-TPfO-kkM.js +1 -0
  564. package/dist/aggridHelpers-C5ZG2ZqM.js +103 -0
  565. package/dist/aggridHelpers-C5ZG2ZqM.js.map +1 -0
  566. package/dist/alerts-DzYv3cz-.js +1 -0
  567. package/dist/{apiHelpers-DZPI1QCL.js → apiHelpers-Bju2gkBq.js} +4 -38
  568. package/dist/apiHelpers-Bju2gkBq.js.map +1 -0
  569. package/dist/appSwitcher-ERlag4rB.js +1 -0
  570. package/dist/assets/index.js +1 -0
  571. package/dist/auth-BOzVI3A0.js +1 -0
  572. package/dist/axiosInterceptors-Dn_haR1Q.js +28 -0
  573. package/dist/axiosInterceptors-Dn_haR1Q.js.map +1 -0
  574. package/dist/cardList-DCz9PlTm.js +78 -0
  575. package/dist/cardList-DCz9PlTm.js.map +1 -0
  576. package/dist/cards-K6gJJHyT.js +287 -0
  577. package/dist/cards-K6gJJHyT.js.map +1 -0
  578. package/dist/catalog-DoJ2_1fY.js +1 -0
  579. package/dist/catalogStore-DDyUXvDn.js +30 -0
  580. package/dist/catalogStore-DDyUXvDn.js.map +1 -0
  581. package/dist/charts-OdBKS6di.js +55 -0
  582. package/dist/charts-OdBKS6di.js.map +1 -0
  583. package/dist/chatBot/index.js +13 -0
  584. package/dist/chatBot-flH0_FCC.js +1 -0
  585. package/dist/chunk-CTAAG5j7.js +13 -0
  586. package/dist/colorConverter-sleh0lAZ.js +91 -0
  587. package/dist/colorConverter-sleh0lAZ.js.map +1 -0
  588. package/dist/colors-VLk-T125.js +73 -0
  589. package/dist/colors-VLk-T125.js.map +1 -0
  590. package/dist/componentSystems/multiThreadTimeline/functions/index.js +4 -0
  591. package/dist/componentSystems/multiThreadTimeline/index.js +34 -0
  592. package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +28 -0
  593. package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +24 -0
  594. package/dist/componentSystems/multiThreadTimeline/ui/index.js +23 -0
  595. package/dist/componentSystems/multiThreadTimeline/ui/modified/index.js +5 -0
  596. package/dist/componentSystems/pageRenderer/hocs/index.js +68 -0
  597. package/dist/componentSystems/pageRenderer/hooks/index.js +4 -0
  598. package/dist/componentSystems/pageRenderer/index.js +72 -0
  599. package/dist/componentSystems/pageRenderer/utils/index.js +4 -0
  600. package/dist/componentSystems/pageRenderer/wrappers/index.js +67 -0
  601. package/dist/components-CG2vp7rI.js +1 -0
  602. package/dist/components-DqInG_Nm.js +1 -0
  603. package/dist/configService/index.js +3 -0
  604. package/dist/constants/index.js +3 -0
  605. package/dist/containers/index.js +4 -0
  606. package/dist/containers-DDfXvwcE.js +1 -0
  607. package/dist/contexts/index.js +6 -0
  608. package/dist/crud-BCrruPIb.js +1 -0
  609. package/dist/crudActions-DL7ifk-D.js +205 -0
  610. package/dist/crudActions-DL7ifk-D.js.map +1 -0
  611. package/dist/crudBrowser-BG7BYo4m.js +1 -0
  612. package/dist/customIcons-D0bpSyKS.js +1 -0
  613. package/dist/dashboard/index.js +10 -0
  614. package/dist/dashboard-DfDQY2Uz.js +1 -0
  615. package/dist/dataBrowser/forms/index.js +17 -0
  616. package/dist/dataBrowser/index.js +90 -0
  617. package/dist/dataDisplay-CAJwXLeD.js +50 -0
  618. package/dist/dataDisplay-CAJwXLeD.js.map +1 -0
  619. package/dist/dataDisplay-CFDmXer4.js +280 -0
  620. package/dist/dataDisplay-CFDmXer4.js.map +1 -0
  621. package/dist/defaultTabs-OEo6-sj7.js +93 -0
  622. package/dist/defaultTabs-OEo6-sj7.js.map +1 -0
  623. package/dist/demos-CF7sKLmt.js +11 -0
  624. package/dist/demos-CF7sKLmt.js.map +1 -0
  625. package/dist/diffChecker/index.js +4 -0
  626. package/dist/directory-BTN_b0Hg.js +52 -0
  627. package/dist/directory-BTN_b0Hg.js.map +1 -0
  628. package/dist/entities-B32Z17Rb.js +1 -0
  629. package/dist/entityHeader-DDrAG_I8.js +875 -0
  630. package/dist/entityHeader-DDrAG_I8.js.map +1 -0
  631. package/dist/{entityUtilities-Hohniu0Q.js → entityUtilities-D7_FeTEd.js} +2 -2
  632. package/dist/{entityUtilities-Hohniu0Q.js.map → entityUtilities-D7_FeTEd.js.map} +1 -1
  633. package/dist/enums/index.js +10 -0
  634. package/dist/feedback-BYM33Djb.js +1 -0
  635. package/dist/feedback-xwtgVkbx.js +1 -0
  636. package/dist/fileViewer-DnbpU0bo.js +546 -0
  637. package/dist/fileViewer-DnbpU0bo.js.map +1 -0
  638. package/dist/floorplanFunctions-QEXAOJwy.js +1 -0
  639. package/dist/floorplans-c_VQn4Rz.js +154 -0
  640. package/dist/floorplans-c_VQn4Rz.js.map +1 -0
  641. package/dist/fluentTimeline-DSUMhWcD.js +156 -0
  642. package/dist/fluentTimeline-DSUMhWcD.js.map +1 -0
  643. package/dist/form-CiiauVLk.js +76 -0
  644. package/dist/form-CiiauVLk.js.map +1 -0
  645. package/dist/formatBytes-D6vdwZ2k.js +23 -0
  646. package/dist/formatBytes-D6vdwZ2k.js.map +1 -0
  647. package/dist/forms-CKk0LTpY.js +456 -0
  648. package/dist/forms-CKk0LTpY.js.map +1 -0
  649. package/dist/forms-DJnB4tsd.js +1 -0
  650. package/dist/functions-MWuMR-lY.js +1 -0
  651. package/dist/gridVisualizationFunctions-CRMRUuum.js +67 -0
  652. package/dist/gridVisualizationFunctions-CRMRUuum.js.map +1 -0
  653. package/dist/hocs-1cIHPs7M.js +1 -0
  654. package/dist/hooks/index.js +52 -0
  655. package/dist/hooks-BJgvHLxQ.js +1 -0
  656. package/dist/hooks-CqVWErg9.js +160 -0
  657. package/dist/hooks-CqVWErg9.js.map +1 -0
  658. package/dist/iconLibrary-C8sePp_X.js +1 -0
  659. package/dist/iframe-T69IOxry.js +1 -0
  660. package/dist/index.js +3816 -44099
  661. package/dist/index.js.map +1 -1
  662. package/dist/input-B3JblbZF.js +1 -0
  663. package/dist/inquiry/dashboard/index.js +29 -0
  664. package/dist/inquiry/index.js +150 -0
  665. package/dist/inquiry/index.js.map +1 -0
  666. package/dist/inquiry/inquiryBar/index.js +10 -0
  667. package/dist/inquiry/search/index.js +41 -0
  668. package/dist/inquiryBar-CTeb-8eD.js +1 -0
  669. package/dist/inquiryStore-COAx0QBg.js +39 -0
  670. package/dist/inquiryStore-COAx0QBg.js.map +1 -0
  671. package/dist/isValueSelected-BfNYVyaD.js +10 -0
  672. package/dist/isValueSelected-BfNYVyaD.js.map +1 -0
  673. package/dist/layout/index.js +14 -0
  674. package/dist/leafletMaps-DKJcEBvd.js +1 -0
  675. package/dist/loading-DRhXmScv.js +1 -0
  676. package/dist/lookupsStore-A8pX7cDA.js +20 -0
  677. package/dist/lookupsStore-A8pX7cDA.js.map +1 -0
  678. package/dist/maintenanceEngine/crudBrowser/index.js +54 -0
  679. package/dist/maintenanceEngine/index.js +93 -0
  680. package/dist/maintenanceEngine/tableBrowser/index.js +61 -0
  681. package/dist/maintenanceEngine/virtualBrowser/index.js +77 -0
  682. package/dist/maintenanceEngine-CpZ9tfB0.js +1 -0
  683. package/dist/map-DU7O_P-0.js +60 -0
  684. package/dist/map-DU7O_P-0.js.map +1 -0
  685. package/dist/map-library/Controls/index.js +31 -0
  686. package/dist/map-library/Controls/index.js.map +1 -0
  687. package/dist/map-library/Layers/index.js +4 -0
  688. package/dist/map-library/Map/index.js +8 -0
  689. package/dist/map-library/Source/index.js +34 -0
  690. package/dist/map-library/Source/index.js.map +1 -0
  691. package/dist/map-library/functions/index.js +3 -0
  692. package/dist/map-library/geoLocation/index.js +5 -0
  693. package/dist/map-library/ui/index.js +6 -0
  694. package/dist/mapFunctions-6iGvgVF1.js +32 -0
  695. package/dist/mapFunctions-6iGvgVF1.js.map +1 -0
  696. package/dist/mapLayout-CxliPJ5p.js +785 -0
  697. package/dist/mapLayout-CxliPJ5p.js.map +1 -0
  698. package/dist/maps/index.js +16 -0
  699. package/dist/maps/leafletMaps/index.js +7 -0
  700. package/dist/maps/leafletMaps/ui/index.js +5 -0
  701. package/dist/maps/openLayerMaps/Controls/index.js +4 -0
  702. package/dist/maps/openLayerMaps/Layers/index.js +46 -0
  703. package/dist/maps/openLayerMaps/Layers/index.js.map +1 -0
  704. package/dist/maps/openLayerMaps/Map/index.js +4 -0
  705. package/dist/maps/openLayerMaps/Source/index.js +3 -0
  706. package/dist/maps/openLayerMaps/ui/index.js +6 -0
  707. package/dist/maps-DgJG7ziA.js +11 -0
  708. package/dist/maps-DgJG7ziA.js.map +1 -0
  709. package/dist/menuPage/index.js +56 -0
  710. package/dist/menuUtilities-DTbyD6bg.js +55 -0
  711. package/dist/menuUtilities-DTbyD6bg.js.map +1 -0
  712. package/dist/menus-B-Xz-Ggy.js +1 -0
  713. package/dist/menus-QHvrjl6w.js +1 -0
  714. package/dist/menus-berWqAF-.js +81 -0
  715. package/dist/menus-berWqAF-.js.map +1 -0
  716. package/dist/methodUtils-Bgi0VCWP.js +20 -0
  717. package/dist/methodUtils-Bgi0VCWP.js.map +1 -0
  718. package/dist/models/index.js +7 -0
  719. package/dist/modified-Bg5LeKdV.js +1 -0
  720. package/dist/mttFunctions-BFUthekm.js +248 -0
  721. package/dist/mttFunctions-BFUthekm.js.map +1 -0
  722. package/dist/mttMainTimeline-DgGEegXs.js +1 -0
  723. package/dist/mttSummary-Dbl2ZLl1.js +1 -0
  724. package/dist/navigation-DtBAqSLf.js +144 -0
  725. package/dist/navigation-DtBAqSLf.js.map +1 -0
  726. package/dist/newGrid-Da54TcHb.js +126 -0
  727. package/dist/newGrid-Da54TcHb.js.map +1 -0
  728. package/dist/newsCard-CTtyYCtA.js +57 -0
  729. package/dist/newsCard-CTtyYCtA.js.map +1 -0
  730. package/dist/notes/index.js +40 -0
  731. package/dist/notes-D_Iqxv0x.js +63 -0
  732. package/dist/notes-D_Iqxv0x.js.map +1 -0
  733. package/dist/page/index.js +29 -0
  734. package/dist/page-BGtqWrDb.js +1 -0
  735. package/dist/pageEnums-CT6NFA8B.js +21 -0
  736. package/dist/pageEnums-CT6NFA8B.js.map +1 -0
  737. package/dist/paymentVendorFactoryEnum-BqXZMcQF.js +38 -0
  738. package/dist/paymentVendorFactoryEnum-BqXZMcQF.js.map +1 -0
  739. package/dist/property-CkiS6bPL.js +1 -0
  740. package/dist/propertyTypeEnums-VqSmSIfe.js +15 -0
  741. package/dist/propertyTypeEnums-VqSmSIfe.js.map +1 -0
  742. package/dist/provider-D1EvAE26.js +1 -0
  743. package/dist/redirect-DEombgSz.js +1 -0
  744. package/dist/redirectToLink-B4Y9oH1K.js +31 -0
  745. package/dist/redirectToLink-B4Y9oH1K.js.map +1 -0
  746. package/dist/redirectToProduct-BHIghYZd.js +9 -0
  747. package/dist/redirectToProduct-BHIghYZd.js.map +1 -0
  748. package/dist/reminderConstants-Btqf39dU.js +12 -0
  749. package/dist/reminderConstants-Btqf39dU.js.map +1 -0
  750. package/dist/reminders/index.js +45 -0
  751. package/dist/reports/index.js +12 -0
  752. package/dist/routes/index.js +8 -0
  753. package/dist/rules-Bbd-Yg6p.js +1 -0
  754. package/dist/search-D3z7GAO_.js +1 -0
  755. package/dist/search-YPsWhV_L.js +1 -0
  756. package/dist/searchEnums-BFWywTGh.js +11 -0
  757. package/dist/searchEnums-BFWywTGh.js.map +1 -0
  758. package/dist/shell/index.js +124 -0
  759. package/dist/shell/ui/addUser/index.js +23 -0
  760. package/dist/shell/ui/appSwitcher/index.js +9 -0
  761. package/dist/shell/ui/index.js +60 -0
  762. package/dist/shellStore-Bqwtbs_K.js +31 -0
  763. package/dist/shellStore-Bqwtbs_K.js.map +1 -0
  764. package/dist/sidebar-C96Z7xFg.js +1 -0
  765. package/dist/stepper-BNXvKPS_.js +11 -0
  766. package/dist/stepper-BNXvKPS_.js.map +1 -0
  767. package/dist/storage-Dxdn7n1x.js +1 -0
  768. package/dist/stores/index.js +10 -0
  769. package/dist/style-C58TNESf.js +1 -0
  770. package/dist/support-BmEH05sB.js +1 -0
  771. package/dist/surfaces-BermwmhU.js +1 -0
  772. package/dist/tableBrowser-_iJW5ftf.js +1 -0
  773. package/dist/tabs-BcnfMjRc.js +49 -0
  774. package/dist/tabs-BcnfMjRc.js.map +1 -0
  775. package/dist/tagEnums-BD6xUu3X.js +11 -0
  776. package/dist/tagEnums-BD6xUu3X.js.map +1 -0
  777. package/dist/teleporterStore-hSgRrvso.js +33 -0
  778. package/dist/teleporterStore-hSgRrvso.js.map +1 -0
  779. package/dist/templates-DuK-z0vt.js +211 -0
  780. package/dist/templates-DuK-z0vt.js.map +1 -0
  781. package/dist/tenant-Dv4CtN1T.js +1 -0
  782. package/dist/tenantContext-Bh6_Lj9T.js +8 -0
  783. package/dist/tenantContext-Bh6_Lj9T.js.map +1 -0
  784. package/dist/tenantStore-dj8UJA7G.js +19 -0
  785. package/dist/tenantStore-dj8UJA7G.js.map +1 -0
  786. package/dist/theme-DLwkifVk.js +286 -0
  787. package/dist/theme-DLwkifVk.js.map +1 -0
  788. package/dist/ticketCard-CFV9u37h.js +143 -0
  789. package/dist/ticketCard-CFV9u37h.js.map +1 -0
  790. package/dist/timeline-BjNWT18j.js +213 -0
  791. package/dist/timeline-BjNWT18j.js.map +1 -0
  792. package/dist/tree-BE3grkxa.js +1 -0
  793. package/dist/treeMenu/index.js +23 -0
  794. package/dist/types/UI/accordion/index.d.ts +3 -0
  795. package/dist/types/UI/advancedSearchBuilder/index.d.ts +3 -0
  796. package/dist/types/UI/charts/UdpSankeyChart.d.ts +12 -0
  797. package/dist/types/UI/charts/UdpXYMultiSeriesChart.d.ts +9 -0
  798. package/dist/types/UI/charts/types.d.ts +32 -6
  799. package/dist/types/UI/components/dataDisplay/index.d.ts +5 -0
  800. package/dist/types/UI/components/feedback/index.d.ts +1 -0
  801. package/dist/types/UI/components/index.d.ts +2 -0
  802. package/dist/types/UI/containers/index.d.ts +3 -0
  803. package/dist/types/UI/dataDisplay/FluentActivity/index.d.ts +4 -0
  804. package/dist/types/UI/dataDisplay/FluentDataTable/index.d.ts +3 -0
  805. package/dist/types/UI/dataDisplay/address/index.d.ts +3 -0
  806. package/dist/types/UI/dataDisplay/cardList/index.d.ts +4 -0
  807. package/dist/types/UI/dataDisplay/directory/index.d.ts +4 -0
  808. package/dist/types/UI/dataDisplay/entityHeader/index.d.ts +3 -0
  809. package/dist/types/UI/dataDisplay/index.d.ts +28 -0
  810. package/dist/types/UI/dataDisplay/map/index.d.ts +5 -0
  811. package/dist/types/UI/dataDisplay/notes/index.d.ts +4 -0
  812. package/dist/types/UI/dataDisplay/ticketCard/index.d.ts +5 -0
  813. package/dist/types/UI/dataDisplay/typography/index.d.ts +8 -0
  814. package/dist/types/UI/dataDisplay/visualization/amCharts/AmChart.d.ts +1 -1
  815. package/dist/types/UI/dataDisplay/visualization/index.d.ts +5 -0
  816. package/dist/types/UI/demos/index.d.ts +3 -0
  817. package/dist/types/UI/feedback/index.d.ts +7 -0
  818. package/dist/types/UI/fileViewer/index.d.ts +3 -0
  819. package/dist/types/UI/floorplans/index.d.ts +3 -0
  820. package/dist/types/UI/forms/index.d.ts +7 -0
  821. package/dist/types/UI/iframe/index.d.ts +3 -0
  822. package/dist/types/UI/index.d.ts +30 -0
  823. package/dist/types/UI/inputs/buttons/index.d.ts +21 -0
  824. package/dist/types/UI/inputs/calendar/AmbientDateRangeSelector.d.ts +3 -0
  825. package/dist/types/UI/inputs/calendar/AmbientSingleDateSelector.d.ts +3 -0
  826. package/dist/types/UI/inputs/calendar/index.d.ts +4 -0
  827. package/dist/types/UI/inputs/checkbox/index.d.ts +3 -0
  828. package/dist/types/UI/inputs/dateRangeSelector/UdpDateRangeSelector.d.ts +2 -0
  829. package/dist/types/UI/inputs/datetimes/index.d.ts +5 -0
  830. package/dist/types/UI/inputs/fieldArrayCard/index.d.ts +7 -0
  831. package/dist/types/UI/inputs/link/index.d.ts +4 -0
  832. package/dist/types/UI/inputs/menus/index.d.ts +7 -0
  833. package/dist/types/UI/inputs/pickers/index.d.ts +8 -0
  834. package/dist/types/UI/inputs/radio/index.d.ts +4 -0
  835. package/dist/types/UI/inputs/richEditors/index.d.ts +3 -0
  836. package/dist/types/UI/inputs/sliders/index.d.ts +3 -0
  837. package/dist/types/UI/inputs/textField/index.d.ts +9 -0
  838. package/dist/types/UI/inputs/toggle/index.d.ts +3 -0
  839. package/dist/types/UI/loading/LoadingIndicator/index.d.ts +1 -0
  840. package/dist/types/UI/loading/index.d.ts +5 -0
  841. package/dist/types/UI/mapLayout/index.d.ts +3 -0
  842. package/dist/types/UI/maps/index.d.ts +5 -0
  843. package/dist/types/UI/navigation/index.d.ts +5 -0
  844. package/dist/types/UI/navigation/menus/index.d.ts +8 -0
  845. package/dist/types/UI/navigation/tabs/defaultTabs/index.d.ts +7 -0
  846. package/dist/types/UI/navigation/tabs/index.d.ts +6 -0
  847. package/dist/types/UI/property/index.d.ts +3 -0
  848. package/dist/types/UI/stepper/index.d.ts +4 -0
  849. package/dist/types/UI/support/index.d.ts +4 -0
  850. package/dist/types/UI/surfaces/NestedGrid/index.d.ts +4 -0
  851. package/dist/types/UI/surfaces/NestedGrid/ui/index.d.ts +3 -0
  852. package/dist/types/UI/surfaces/cards/index.d.ts +18 -0
  853. package/dist/types/UI/surfaces/cards/newsCard/index.d.ts +3 -0
  854. package/dist/types/UI/surfaces/cards/workOrderCard/index.d.ts +4 -0
  855. package/dist/types/UI/surfaces/index.d.ts +5 -0
  856. package/dist/types/UI/templates/index.d.ts +15 -0
  857. package/dist/types/UI/templates/newGrid/index.d.ts +8 -0
  858. package/dist/types/UI/templates/ui/index.d.ts +7 -0
  859. package/dist/types/UI/timeline/fluentTimeline/index.d.ts +5 -0
  860. package/dist/types/UI/timeline/index.d.ts +14 -0
  861. package/dist/types/UI/utilityDisplay/alerts/index.d.ts +4 -0
  862. package/dist/types/UI/utilityDisplay/index.d.ts +20 -0
  863. package/dist/types/UI/utilityDisplay/ui/index.d.ts +3 -0
  864. package/dist/types/UI/utilityDisplay/utilities/index.d.ts +3 -0
  865. package/dist/types/UI/utilityDisplay/utilityHeader/index.d.ts +7 -0
  866. package/dist/types/UI/widgets/index.d.ts +4 -0
  867. package/dist/types/UI/widgets/utils/dateUtils.d.ts +46 -0
  868. package/dist/types/actions/index.d.ts +13 -0
  869. package/dist/types/actions/sidebar/index.d.ts +3 -0
  870. package/dist/types/actions/utils/index.d.ts +3 -0
  871. package/dist/types/assets/index.d.ts +2 -0
  872. package/dist/types/chatBot/index.d.ts +4 -0
  873. package/dist/types/componentSystems/multiThreadTimeline/functions/index.d.ts +3 -0
  874. package/dist/types/componentSystems/multiThreadTimeline/index.d.ts +7 -0
  875. package/dist/types/componentSystems/multiThreadTimeline/mttMainTimeline/index.d.ts +5 -0
  876. package/dist/types/componentSystems/multiThreadTimeline/mttSummary/index.d.ts +3 -0
  877. package/dist/types/componentSystems/multiThreadTimeline/ui/index.d.ts +20 -0
  878. package/dist/types/componentSystems/multiThreadTimeline/ui/modified/index.d.ts +3 -0
  879. package/dist/types/componentSystems/pageRenderer/hocs/index.d.ts +3 -0
  880. package/dist/types/componentSystems/pageRenderer/hooks/index.d.ts +3 -0
  881. package/dist/types/componentSystems/pageRenderer/index.d.ts +7 -0
  882. package/dist/types/componentSystems/pageRenderer/utils/index.d.ts +3 -0
  883. package/dist/types/componentSystems/pageRenderer/wrappers/index.d.ts +10 -0
  884. package/dist/types/configService/index.d.ts +1 -0
  885. package/dist/types/constants/index.d.ts +3 -0
  886. package/dist/types/containers/index.d.ts +3 -0
  887. package/dist/types/contexts/index.d.ts +8 -0
  888. package/dist/types/dashboard/index.d.ts +7 -0
  889. package/dist/types/dataBrowser/forms/index.d.ts +6 -0
  890. package/dist/types/dataBrowser/index.d.ts +5 -0
  891. package/dist/types/diffChecker/index.d.ts +3 -0
  892. package/dist/types/enums/auditEventEnums.d.ts +5 -0
  893. package/dist/types/enums/index.d.ts +12 -0
  894. package/dist/types/enums/unitySystemEnums.d.ts +12 -1
  895. package/dist/types/hooks/index.d.ts +21 -0
  896. package/dist/types/index.d.ts +6 -3
  897. package/dist/types/inquiry/dashboard/index.d.ts +4 -0
  898. package/dist/types/inquiry/index.d.ts +23 -0
  899. package/dist/types/inquiry/inquiryBar/index.d.ts +4 -0
  900. package/dist/types/inquiry/search/index.d.ts +7 -0
  901. package/dist/types/layout/index.d.ts +9 -0
  902. package/dist/types/maintenanceEngine/crudBrowser/index.d.ts +6 -0
  903. package/dist/types/maintenanceEngine/index.d.ts +6 -0
  904. package/dist/types/maintenanceEngine/tableBrowser/TableColumnDefs.d.ts +1 -1
  905. package/dist/types/maintenanceEngine/tableBrowser/index.d.ts +4 -0
  906. package/dist/types/maintenanceEngine/virtualBrowser/VirtualBrowser.d.ts +1 -0
  907. package/dist/types/maintenanceEngine/virtualBrowser/index.d.ts +5 -0
  908. package/dist/types/map-library/Controls/index.d.ts +7 -5
  909. package/dist/types/map-library/Layers/index.d.ts +7 -5
  910. package/dist/types/map-library/Map/index.d.ts +5 -1
  911. package/dist/types/map-library/Source/index.d.ts +6 -4
  912. package/dist/types/map-library/functions/index.d.ts +3 -0
  913. package/dist/types/map-library/geoLocation/index.d.ts +4 -0
  914. package/dist/types/map-library/ui/index.d.ts +12 -0
  915. package/dist/types/maps/index.d.ts +4 -0
  916. package/dist/types/maps/leafletMaps/index.d.ts +5 -0
  917. package/dist/types/maps/leafletMaps/ui/index.d.ts +4 -0
  918. package/dist/types/maps/openLayerMaps/Layers/index.d.ts +7 -5
  919. package/dist/types/maps/openLayerMaps/ui/index.d.ts +9 -0
  920. package/dist/types/menuPage/CustomMenuPage.d.ts +24 -0
  921. package/dist/types/menuPage/index.d.ts +3 -0
  922. package/dist/types/models/index.d.ts +8 -0
  923. package/dist/types/notes/index.d.ts +3 -0
  924. package/dist/types/page/index.d.ts +8 -0
  925. package/dist/types/reminders/index.d.ts +5 -0
  926. package/dist/types/reports/index.d.ts +3 -0
  927. package/dist/types/routes/components/PageNotFoundRoute.d.ts +1 -0
  928. package/dist/types/routes/components/PasswordResetRedirect.d.ts +1 -0
  929. package/dist/types/routes/index.d.ts +4 -0
  930. package/dist/types/shell/index.d.ts +4 -0
  931. package/dist/types/shell/ui/addUser/index.d.ts +6 -0
  932. package/dist/types/shell/ui/appSwitcher/index.d.ts +9 -0
  933. package/dist/types/shell/ui/index.d.ts +17 -0
  934. package/dist/types/stores/index.d.ts +10 -0
  935. package/dist/types/treeMenu/index.d.ts +4 -0
  936. package/dist/types/tsconfig.tsbuildinfo +1 -1
  937. package/dist/types/udp/ShortcutContent/index.d.ts +4 -0
  938. package/dist/types/udp/export/MyExportsPage.d.ts +1 -0
  939. package/dist/types/udp/export/index.d.ts +6 -0
  940. package/dist/types/udp/fileImportMapping/index.d.ts +8 -0
  941. package/dist/types/udp/pages/UdpAuditEventSidesheet.d.ts +3 -0
  942. package/dist/types/udp/pages/UdpAuditEventsPage.d.ts +3 -0
  943. package/dist/types/udp/pages/index.d.ts +20 -0
  944. package/dist/types/udp/pages/udpPages.d.ts +2 -0
  945. package/dist/types/udp/utilities/dateLocalizationHooks.d.ts +26 -0
  946. package/dist/types/udp/utilities/index.d.ts +3 -0
  947. package/dist/types/udp/utilities/useDateStringColumnDef.d.ts +18 -0
  948. package/dist/types/uploader/index.d.ts +7 -0
  949. package/dist/types/utilities/DemoJuly/index.d.ts +3 -0
  950. package/dist/types/utilities/aggrid/index.d.ts +6 -0
  951. package/dist/types/utilities/auth/index.d.ts +17 -0
  952. package/dist/types/utilities/catalog/index.d.ts +3 -0
  953. package/dist/types/utilities/chatBot/index.d.ts +5 -0
  954. package/dist/types/utilities/crud/index.d.ts +3 -0
  955. package/dist/types/utilities/customIcons/index.d.ts +4 -0
  956. package/dist/types/utilities/entities/index.d.ts +3 -0
  957. package/dist/types/utilities/floorplanFunctions/index.d.ts +3 -0
  958. package/dist/types/utilities/form/paymentForm/CreditCardUtils.d.ts +5 -1
  959. package/dist/types/utilities/iconLibrary/SvgIcon.d.ts +12 -0
  960. package/dist/types/utilities/iconLibrary/index.d.ts +9 -0
  961. package/dist/types/utilities/index.d.ts +44 -0
  962. package/dist/types/utilities/input/index.d.ts +5 -0
  963. package/dist/types/utilities/maintenanceEngine/index.d.ts +3 -0
  964. package/dist/types/utilities/menus/index.d.ts +4 -0
  965. package/dist/types/utilities/page/index.d.ts +3 -0
  966. package/dist/types/utilities/provider/index.d.ts +3 -0
  967. package/dist/types/utilities/redirect/index.d.ts +4 -0
  968. package/dist/types/utilities/rules/index.d.ts +3 -0
  969. package/dist/types/utilities/search/index.d.ts +4 -0
  970. package/dist/types/utilities/storage/index.d.ts +3 -0
  971. package/dist/types/utilities/style/index.d.ts +6 -0
  972. package/dist/types/utilities/tenant/index.d.ts +5 -0
  973. package/dist/types/utilities/tree/TreeUtilities.d.ts +2 -0
  974. package/dist/types/utilities/tree/index.d.ts +3 -0
  975. package/dist/types/utilities/uploader/index.d.ts +7 -0
  976. package/dist/types/utilities/utilityBar/index.d.ts +8 -0
  977. package/dist/types/utilities/workflow/index.d.ts +3 -0
  978. package/dist/types/workflow/WorkflowContainer.d.ts +1 -0
  979. package/dist/types/workflow/components/index.d.ts +3 -0
  980. package/dist/types/workflow/index.d.ts +7 -0
  981. package/dist/types/workflow/menus/index.d.ts +4 -0
  982. package/dist/typography-Cm-MBm67.js +47 -0
  983. package/dist/typography-Cm-MBm67.js.map +1 -0
  984. package/dist/udp/ShortcutContent/index.js +20 -0
  985. package/dist/udp/export/index.js +73 -0
  986. package/dist/udp/fileImportMapping/index.js +120 -0
  987. package/dist/udp/fileImportMapping/index.js.map +1 -0
  988. package/dist/udp/pages/index.js +255 -0
  989. package/dist/udp/utilities/index.js +3 -0
  990. package/dist/udpPages-D8I3GU4V.js +2824 -0
  991. package/dist/udpPages-D8I3GU4V.js.map +1 -0
  992. package/dist/ui-AtMBCKfe.js +20 -0
  993. package/dist/ui-AtMBCKfe.js.map +1 -0
  994. package/dist/ui-CdJK-GeY.js +1 -0
  995. package/dist/ui-DIMtL2w5.js +1 -0
  996. package/dist/ui-DJnya6DW.js +19 -0
  997. package/dist/ui-DJnya6DW.js.map +1 -0
  998. package/dist/ui-Dk8IEfOq.js +1 -0
  999. package/dist/ui-_KR24HU9.js +1 -0
  1000. package/dist/unitySystemEnums-DXk8yS3v.js +296 -0
  1001. package/dist/unitySystemEnums-DXk8yS3v.js.map +1 -0
  1002. package/dist/uploader/index.js +107 -0
  1003. package/dist/uploader/index.js.map +1 -0
  1004. package/dist/uploader-CslKfeTU.js +1 -0
  1005. package/dist/useActions-C4qJAr_e.js +192 -0
  1006. package/dist/useActions-C4qJAr_e.js.map +1 -0
  1007. package/dist/useApiCatalog-Bt9zKIld.js +62 -0
  1008. package/dist/useApiCatalog-Bt9zKIld.js.map +1 -0
  1009. package/dist/useAuthedUser-BbuZ-TTz.js +34 -0
  1010. package/dist/useAuthedUser-BbuZ-TTz.js.map +1 -0
  1011. package/dist/useAxiosGet-CAH3ZOZ8.js +76 -0
  1012. package/dist/useAxiosGet-CAH3ZOZ8.js.map +1 -0
  1013. package/dist/{useAxiosMutate-pB7OdGIa.js → useAxiosMutate-BiRO7ZCN.js} +4 -3
  1014. package/dist/{useAxiosMutate-pB7OdGIa.js.map → useAxiosMutate-BiRO7ZCN.js.map} +1 -1
  1015. package/dist/useChatBot-CFYM_uhz.js +11 -0
  1016. package/dist/useChatBot-CFYM_uhz.js.map +1 -0
  1017. package/dist/useDefaultFormValues-DvWSqhBl.js +14 -0
  1018. package/dist/useDefaultFormValues-DvWSqhBl.js.map +1 -0
  1019. package/dist/useDynamicListCalculation-B4erIwyM.js +41 -0
  1020. package/dist/useDynamicListCalculation-B4erIwyM.js.map +1 -0
  1021. package/dist/useFluentIcon-CfE2FQgB.js +14 -0
  1022. package/dist/useFluentIcon-CfE2FQgB.js.map +1 -0
  1023. package/dist/useGravatar-CbLAVn5R.js +49 -0
  1024. package/dist/useGravatar-CbLAVn5R.js.map +1 -0
  1025. package/dist/useId-Dfv7qFlj.js +23 -0
  1026. package/dist/useId-Dfv7qFlj.js.map +1 -0
  1027. package/dist/useIsUnityAuthenticated-n3QuDnIj.js +10 -0
  1028. package/dist/useIsUnityAuthenticated-n3QuDnIj.js.map +1 -0
  1029. package/dist/useItemSubCard-BxxyLSUY.js +41 -0
  1030. package/dist/useItemSubCard-BxxyLSUY.js.map +1 -0
  1031. package/dist/usePageContext-BSM5LtIY.js +9 -0
  1032. package/dist/usePageContext-BSM5LtIY.js.map +1 -0
  1033. package/dist/usePrevious-BAOvZhl7.js +14 -0
  1034. package/dist/usePrevious-BAOvZhl7.js.map +1 -0
  1035. package/dist/usePromotedMethodEntities-BNxCKmpY.js +97 -0
  1036. package/dist/usePromotedMethodEntities-BNxCKmpY.js.map +1 -0
  1037. package/dist/usePromotedMethodEntity-YlKDqDnn.js +90 -0
  1038. package/dist/usePromotedMethodEntity-YlKDqDnn.js.map +1 -0
  1039. package/dist/useQueryExecutors-CU1LD7zt.js +148 -0
  1040. package/dist/useQueryExecutors-CU1LD7zt.js.map +1 -0
  1041. package/dist/useReadMetaData-CxjwewcJ.js +31 -0
  1042. package/dist/useReadMetaData-CxjwewcJ.js.map +1 -0
  1043. package/dist/useSearchFilterParamsMap-tHRVgYQ-.js +128 -0
  1044. package/dist/useSearchFilterParamsMap-tHRVgYQ-.js.map +1 -0
  1045. package/dist/useSetLocationState-BGgFvNVh.js +25 -0
  1046. package/dist/useSetLocationState-BGgFvNVh.js.map +1 -0
  1047. package/dist/useSingleLogout-CxS-L1qp.js +272 -0
  1048. package/dist/useSingleLogout-CxS-L1qp.js.map +1 -0
  1049. package/dist/useSplitDecimal-DWG5FyYU.js +24 -0
  1050. package/dist/useSplitDecimal-DWG5FyYU.js.map +1 -0
  1051. package/dist/useTenant-BGWpH8AX.js +11 -0
  1052. package/dist/useTenant-BGWpH8AX.js.map +1 -0
  1053. package/dist/useUpdateSearchParams-DmNKNx8U.js +23 -0
  1054. package/dist/useUpdateSearchParams-DmNKNx8U.js.map +1 -0
  1055. package/dist/useUser-Cn88hlN_.js +21 -0
  1056. package/dist/useUser-Cn88hlN_.js.map +1 -0
  1057. package/dist/users-Dd3wK8x1.js +42 -0
  1058. package/dist/users-Dd3wK8x1.js.map +1 -0
  1059. package/dist/utilities/DemoJuly/index.js +4 -0
  1060. package/dist/utilities/aggrid/index.js +10 -0
  1061. package/dist/utilities/auth/index.js +21 -0
  1062. package/dist/utilities/catalog/index.js +4 -0
  1063. package/dist/utilities/chatBot/index.js +7 -0
  1064. package/dist/utilities/crud/index.js +5 -0
  1065. package/dist/utilities/customIcons/index.js +4 -0
  1066. package/dist/utilities/entities/index.js +5 -0
  1067. package/dist/utilities/floorplanFunctions/index.js +4 -0
  1068. package/dist/utilities/form/index.js +6 -0
  1069. package/dist/utilities/iconLibrary/index.js +9 -0
  1070. package/dist/utilities/index.js +159 -0
  1071. package/dist/utilities/input/index.js +6 -0
  1072. package/dist/utilities/maintenanceEngine/index.js +4 -0
  1073. package/dist/utilities/menus/index.js +7 -0
  1074. package/dist/utilities/page/index.js +4 -0
  1075. package/dist/utilities/provider/index.js +94 -0
  1076. package/dist/utilities/redirect/index.js +5 -0
  1077. package/dist/utilities/rules/index.js +4 -0
  1078. package/dist/utilities/search/index.js +6 -0
  1079. package/dist/utilities/storage/index.js +4 -0
  1080. package/dist/utilities/style/index.js +7 -0
  1081. package/dist/utilities/tenant/index.js +14 -0
  1082. package/dist/utilities/tree/index.js +10 -0
  1083. package/dist/utilities/uploader/index.js +6 -0
  1084. package/dist/utilities/utilityBar/index.js +8 -0
  1085. package/dist/utilities/workflow/index.js +6 -0
  1086. package/dist/utilities-CO8iPD5J.js +1 -0
  1087. package/dist/utilityBar-efXsIsm6.js +1 -0
  1088. package/dist/utilityDisplay-CpRgXxVJ.js +15 -0
  1089. package/dist/utilityDisplay-CpRgXxVJ.js.map +1 -0
  1090. package/dist/utilityHeader-DR5YhYZ4.js +47 -0
  1091. package/dist/utilityHeader-DR5YhYZ4.js.map +1 -0
  1092. package/dist/utils-Ccah2Nvr.js +1 -0
  1093. package/dist/utils-K0OjqNhn.js +1 -0
  1094. package/dist/verticalStyles-CNJRNnZb.js +141 -0
  1095. package/dist/verticalStyles-CNJRNnZb.js.map +1 -0
  1096. package/dist/virtualActions-ByTDOaHE.js +84 -0
  1097. package/dist/virtualActions-ByTDOaHE.js.map +1 -0
  1098. package/dist/virtualBrowser-BjGPv8Ks.js +1 -0
  1099. package/dist/visualization-BmGUb6uk.js +1 -0
  1100. package/dist/widgets-C-lZrGAQ.js +281 -0
  1101. package/dist/widgets-C-lZrGAQ.js.map +1 -0
  1102. package/dist/widgets-CRzkTpIV.js +246 -0
  1103. package/dist/widgets-CRzkTpIV.js.map +1 -0
  1104. package/dist/withEngineComponent-BZhUdMxf.js +28 -0
  1105. package/dist/withEngineComponent-BZhUdMxf.js.map +1 -0
  1106. package/dist/workOrderCard-BpoZx9de.js +55 -0
  1107. package/dist/workOrderCard-BpoZx9de.js.map +1 -0
  1108. package/dist/workflow/components/index.js +6 -0
  1109. package/dist/workflow/index.js +75 -0
  1110. package/dist/workflow/menus/index.js +24 -0
  1111. package/dist/workflow-B3zdi9Fz.js +1 -0
  1112. package/dist/workflowEnums-xHM1JN6x.js +48 -0
  1113. package/dist/workflowEnums-xHM1JN6x.js.map +1 -0
  1114. package/dist/workflowStore-PaHzw4YO.js +25 -0
  1115. package/dist/workflowStore-PaHzw4YO.js.map +1 -0
  1116. package/dist/workflowUtilities-DpW6oHRe.js +152 -0
  1117. package/dist/workflowUtilities-DpW6oHRe.js.map +1 -0
  1118. package/dist/wrappers-CLy_1LEL.js +1 -0
  1119. package/export-map.json +782 -0
  1120. package/package.json +30 -8
  1121. package/dist/AmbientGridTemplate-Ch1eLyEu.js +0 -3478
  1122. package/dist/AmbientGridTemplate-Ch1eLyEu.js.map +0 -1
  1123. package/dist/ClientSideUdpGrid-B3NVu-9l.js +0 -56
  1124. package/dist/ClientSideUdpGrid-B3NVu-9l.js.map +0 -1
  1125. package/dist/EnvironmentRibbon-OD01SY9G.js +0 -935
  1126. package/dist/EnvironmentRibbon-OD01SY9G.js.map +0 -1
  1127. package/dist/MenuPage-BZk69VmF.js.map +0 -1
  1128. package/dist/MyExportsPage-DxyYPVIc.js +0 -11
  1129. package/dist/MyExportsPage-WaXST3tF.js +0 -662
  1130. package/dist/MyExportsPage-WaXST3tF.js.map +0 -1
  1131. package/dist/PageContainer-BxChq1eP.js +0 -1536
  1132. package/dist/PageContainer-BxChq1eP.js.map +0 -1
  1133. package/dist/PageNotFoundRoute-D9dLbM_w.js.map +0 -1
  1134. package/dist/PageNotFoundRoute-DUj0Q9J8.js +0 -3
  1135. package/dist/PasswordResetRedirect-C3g8L0vA.js.map +0 -1
  1136. package/dist/PasswordResetRedirect-Dh-S5Ril.js +0 -3
  1137. package/dist/SearchUtilities-lVLvOpzo.js.map +0 -1
  1138. package/dist/SideSheet-D48-jzNi.js +0 -288
  1139. package/dist/SideSheet-D48-jzNi.js.map +0 -1
  1140. package/dist/UdpMaintenanceConfigPage-Bbaa9QQm.js.map +0 -1
  1141. package/dist/UdpPublicForm-3xkpVjji.js.map +0 -1
  1142. package/dist/UdpPublicForm-BdzIFRc0.js +0 -4
  1143. package/dist/UtilitySideBar-9LDu9AaN.js.map +0 -1
  1144. package/dist/VirtualBrowser-CiD8XKsM.js.map +0 -1
  1145. package/dist/WorkflowContainer-BK2z5UDl.js +0 -11
  1146. package/dist/WorkflowContainer-CpWRhlBx.js +0 -1552
  1147. package/dist/WorkflowContainer-CpWRhlBx.js.map +0 -1
  1148. package/dist/apiHelpers-DZPI1QCL.js.map +0 -1
  1149. package/dist/propertyTypeEnums-BfQfG6sp.js +0 -136
  1150. package/dist/propertyTypeEnums-BfQfG6sp.js.map +0 -1
  1151. package/dist/types/UI/dataDisplay/visualization/amCharts/AmSankeyChart.d.ts +0 -3
  1152. package/dist/useAxiosGet-Bi4Z0b8W.js +0 -143
  1153. package/dist/useAxiosGet-Bi4Z0b8W.js.map +0 -1
  1154. /package/dist/types/UI/loading/{LoadingIndicator.d.ts → LoadingIndicator/LoadingIndicator.d.ts} +0 -0
  1155. /package/dist/types/utilities/{FluentIcon.d.ts → iconLibrary/FluentIcon.d.ts} +0 -0
  1156. /package/dist/types/utilities/{UnityFluentIcon.d.ts → iconLibrary/UnityFluentIcon.d.ts} +0 -0
  1157. /package/dist/types/utilities/{UnityIcon.d.ts → iconLibrary/UnityIcon.d.ts} +0 -0
@@ -1,3478 +0,0 @@
1
- import { Field, Form, SideSheet } from "./SideSheet-D48-jzNi.js";
2
- import { FluentButton, FluentIcon, GridStateTypeEnums, LayoutUnit, NodeActionEnums, PrimaryActionButton, PrimaryActionButton_default, SplitScreenTypeEnums, UnityFluentIcon, VisibilityTypeEnums, useId, useShellStore } from "./EnvironmentRibbon-OD01SY9G.js";
3
- import { ClickOpenEnums, useHandleAxiosSnackbar } from "./apiHelpers-DZPI1QCL.js";
4
- import { useAxiosGet } from "./useAxiosGet-Bi4Z0b8W.js";
5
- import { apiMutate as apiMutate$1 } from "./useAxiosMutate-pB7OdGIa.js";
6
- import React, { Children, cloneElement, createContext, forwardRef, isValidElement, memo, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useReducer, useRef, useState } from "react";
7
- import { Badge, Box, Button, ButtonGroup, Chip, ClickAwayListener, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FormControlLabel, Grid, Grow, IconButton, InputAdornment, LinearProgress, MenuItem, MenuList, Paper, Popover, Popper, Switch, Tab, Tabs, TextField, Tooltip, Typography, lighten, makeStyles, useTheme } from "@material-ui/core";
8
- import { ConfigService } from "udp-react-stencil-component-library";
9
- import { useSnackbar } from "notistack";
10
- import { useHistory } from "react-router-dom";
11
- import clsx from "clsx";
12
- import { AppIconDefaultIcon, AssessmentGroupIcon, BlockedIcon, BulletedTreeListIcon, ChevronDownIcon, ChevronFold10Icon, ChevronUnfold10Icon, ChromeCloseIcon, ClearIcon, CombineIcon, DeleteIcon, DownloadIcon, ErrorIcon, ExportIcon, FavoriteStarIcon, FilterIcon, LightbulbIcon, MoreVerticalIcon, OpenInNewTabIcon, SaveIcon, SearchIcon, TableHeaderRowIcon, TripleColumnIcon, UploadIcon } from "@fluentui/react-icons";
13
- import PropTypes from "prop-types";
14
- import { useTranslation } from "react-i18next";
15
- import { create } from "zustand";
16
- import { devtools } from "zustand/middleware";
17
- import { makeStyles as makeStyles$1, useTheme as useTheme$1, withStyles as withStyles$1 } from "@material-ui/core/styles";
18
- import { Skeleton } from "@material-ui/lab";
19
- import "./style.css";
20
- import ToggleButton from "@material-ui/lab/ToggleButton";
21
- import { isFragment } from "react-is";
22
- import { capitalize } from "@material-ui/core/utils";
23
- import { ServerSideRowModelModule } from "@ag-grid-enterprise/server-side-row-model";
24
- import invariant from "invariant";
25
- import { AllModules } from "@ag-grid-enterprise/all-modules";
26
- import "@ag-grid-enterprise/all-modules/dist/styles/ag-grid.css";
27
- import "@ag-grid-enterprise/all-modules/dist/styles/ag-theme-material.css";
28
- import "./utilities/aggrid/ag-grid-styles.scss";
29
- import { AgGridReact } from "@ag-grid-community/react";
30
- import { ExcelExportModule } from "@ag-grid-enterprise/excel-export";
31
- import { bindPopper, bindTrigger, usePopupState } from "material-ui-popup-state/hooks";
32
- import { ArrowDropDown } from "@material-ui/icons";
33
- import { LicenseManager } from "@ag-grid-enterprise/core";
34
- import Chip$1 from "@material-ui/core/Chip";
35
- import Divider$1 from "@material-ui/core/Divider";
36
- import Tooltip$1 from "@material-ui/core/Tooltip";
37
- import Typography$1 from "@material-ui/core/Typography";
38
- import StarIcon from "@material-ui/icons/Star";
39
-
40
- //#region src/AGLicense.js
41
- const LicenseKey = "Using_this_{AG_Grid}_Enterprise_key_{AG-080613}_in_excess_of_the_licence_granted_is_not_permitted___Please_report_misuse_to_legal@ag-grid.com___For_help_with_changing_this_key_please_contact_info@ag-grid.com___{Univerus_Software_Inc}_is_granted_a_{Single_Application}_Developer_License_for_the_application_{MAIS_eRec}_only_for_{1}_Front-End_JavaScript_developer___All_Front-End_JavaScript_developers_working_on_{MAIS_eRec}_need_to_be_licensed___{MAIS_eRec}_has_not_been_granted_a_Deployment_License_Add-on___This_key_works_with_{AG_Grid}_Enterprise_versions_released_before_{28_June_2026}____[v3]_[01]_MTc4MjYwMTIwMDAwMA==5c7d1487ecb13b28e75415d34b7cf694";
42
-
43
- //#endregion
44
- //#region src/utilities/maintenanceEngine/CrudBrowserUtilities.js
45
- const RESERVED_PATH_PARAMETERS = ["version", "udp-api-version"];
46
- const getPrimaryKeyValues = (properties, entityValue) => {
47
- return properties.filter((property) => property?.extendedProperties?.identifier).reduce((keyValues, property) => {
48
- if (entityValue && entityValue[property["name"]] !== null) keyValues.push(entityValue[property["name"]]);
49
- return keyValues;
50
- }, []);
51
- };
52
- const getPathObject = (pathParameters, primaryKeyValues) => {
53
- const primaryKeyParameters = pathParameters.filter((parameter) => parameter.name !== RESERVED_PATH_PARAMETERS);
54
- const pathObject = {};
55
- if (primaryKeyParameters.length && primaryKeyValues.length) primaryKeyParameters.forEach((pkp, index) => {
56
- pathObject[`{${pkp.name}}`] = primaryKeyValues[index];
57
- });
58
- return pathObject;
59
- };
60
- const findTermByType = (fieldType, term) => {
61
- if (fieldType.toLowerCase() === term) return fieldType.toLowerCase();
62
- else return "";
63
- };
64
- const getModelProperties = (model, componentsObj) => {
65
- let modelPropertiesObj = null;
66
- if (model) {
67
- modelPropertiesObj = model.properties;
68
- if (!modelPropertiesObj) {
69
- const refKeys = [];
70
- if (model["allOf"]?.length) model["allOf"].forEach((reference) => {
71
- if (reference["$ref"]) {
72
- const refString = reference["$ref"];
73
- if (refString) {
74
- const lastIndex = refString.lastIndexOf("/");
75
- const referenceModel = refString.substring(lastIndex + 1);
76
- refKeys.push(referenceModel);
77
- }
78
- }
79
- });
80
- refKeys.forEach((key) => {
81
- const abstractModel = componentsObj[key];
82
- if (modelPropertiesObj && abstractModel?.properties) modelPropertiesObj = {
83
- ...modelPropertiesObj,
84
- ...abstractModel.properties
85
- };
86
- else modelPropertiesObj = abstractModel?.properties;
87
- });
88
- }
89
- }
90
- return modelPropertiesObj;
91
- };
92
- const getEntityAttributes = (catalog, entityName) => {
93
- if (!catalog) return [];
94
- const catalogObjectList = catalog?.ctlg?.catalogObjectList;
95
- const componentsObj = catalog?.ctlg?.components;
96
- const entity = catalogObjectList?.find((catalogObject) => catalogObject.catalogObjectName === entityName);
97
- if (!!componentsObj && Object.keys(componentsObj).length) {
98
- const model = componentsObj[entityName];
99
- let modelPropertiesObj = getModelProperties(model, componentsObj);
100
- if (entity?.properties?.length) entity.properties.forEach((property) => {
101
- let nullable = true;
102
- if (modelPropertiesObj) {
103
- const modelProperty = modelPropertiesObj[property["name"]];
104
- if (modelProperty) nullable = modelProperty.nullable || false;
105
- }
106
- property["nullable"] = nullable;
107
- });
108
- }
109
- return entity ? entity.properties : [];
110
- };
111
- const getPathParametersObj = (pathParametersDefinition, entityData) => {
112
- if (!pathParametersDefinition || !entityData) return {};
113
- const pathParametersObj = {};
114
- for (let param of pathParametersDefinition) pathParametersObj[param.name] = entityData[param.name];
115
- return pathParametersObj;
116
- };
117
-
118
- //#endregion
119
- //#region src/contexts/ActionDispatchContext.js
120
- const ActionDispatchContext = createContext(null);
121
-
122
- //#endregion
123
- //#region src/contexts/ActionContext.js
124
- const ActionContext = createContext(null);
125
-
126
- //#endregion
127
- //#region src/UI/SuccessAction.jsx
128
- const getSuccessAction = (closeSnackbar) => {
129
- const successAction = (key) => /* @__PURE__ */ React.createElement(Button, {
130
- color: "secondary",
131
- size: "small",
132
- onClick: () => {
133
- closeSnackbar(key);
134
- }
135
- }, "OK");
136
- return successAction;
137
- };
138
-
139
- //#endregion
140
- //#region src/stores/actionStore.ts
141
- const useActionStore = create()(devtools((set) => ({
142
- selectedNode: null,
143
- setSelectedNode: (selectedNode) => set((state) => ({ selectedNode })),
144
- hideActions: false,
145
- setHideActions: (hideActions) => set((state) => ({ hideActions }))
146
- })));
147
-
148
- //#endregion
149
- //#region src/stores/inquiryStore.ts
150
- const useInquiryStore = create()(devtools((set) => ({
151
- title: "",
152
- setInquiryToolbarTitle: (title) => set((state) => ({ title })),
153
- workflowMap: {},
154
- setWorkflowMap: (workflowMap) => set((state) => ({ workflowMap: {
155
- ...state.workflowMap,
156
- ...workflowMap
157
- } })),
158
- workflowStarting: false,
159
- setWorkflowStarting: (workflowStarting) => set((state) => ({ workflowStarting })),
160
- inquiryMenuHidden: false,
161
- setInquiryMenuHidden: (inquiryMenuHidden) => set((state) => ({ inquiryMenuHidden }))
162
- })));
163
- const useSetInitialInquiryMenuVisibility = () => {
164
- const searchParams = new URLSearchParams(window.location.search);
165
- const inquiryMenuHidden = searchParams.has("inquiryMenuHidden") === true ? searchParams.get("inquiryMenuHidden") === "true" ? true : false : false;
166
- const setInquiryMenuHidden = useInquiryStore((state) => state.setInquiryMenuHidden);
167
- useEffect(() => {
168
- if (inquiryMenuHidden) setInquiryMenuHidden(true);
169
- }, [setInquiryMenuHidden, inquiryMenuHidden]);
170
- };
171
-
172
- //#endregion
173
- //#region src/actions/utils/actionUtils.js
174
- function isValidURL(url) {
175
- return /^(ftp|http|https):\/\/[^ "]+$/.test(url);
176
- }
177
- const useHandleAction = () => {
178
- const history = useHistory();
179
- const { t } = useTranslation();
180
- const { enqueueSnackbar, closeSnackbar } = useSnackbar();
181
- const successAction = getSuccessAction(closeSnackbar);
182
- const selectedNode = useActionStore((state) => state.selectedNode);
183
- const setWorkflowMap = useInquiryStore((state) => state.setWorkflowMap);
184
- const setWorkflowStarting = useInquiryStore((state) => state.setWorkflowStarting);
185
- const executeStartWorkflow = async (workflowId, payload) => apiMutate$1(ConfigService.config.BUILDER_API_BASE, `workflow/${workflowId}/start`, { method: "post" }, { data: payload });
186
- const getApiMethod = async (apiMethodId) => apiMutate$1(ConfigService.config.INTEGRATION_API_BASE, `apimethod/${apiMethodId}`, { method: "get" });
187
- const handleAction = async (dispatch, action, state, executeAction, apiCatalogId, entityAttributes, actionData, currentContainerId) => {
188
- if (!action) return;
189
- const actionName = action.name;
190
- let actionValue = action.value;
191
- if (action?.parameters?.entityName) actionValue += "?entityName=" + action.parameters.entityName + "&apiCatalogId=" + apiCatalogId;
192
- switch (action.actionTypeId) {
193
- case NodeActionEnums.Open_External_Link:
194
- window.open(actionValue, "_blank");
195
- break;
196
- case NodeActionEnums.Redirect:
197
- if (isValidURL(actionValue)) window.location.href = actionValue;
198
- else history.push(actionValue);
199
- break;
200
- case NodeActionEnums.Create:
201
- if (dispatch) dispatch({
202
- type: "OPEN_SIDESHEET",
203
- sideSheet: {
204
- action,
205
- open: true
206
- }
207
- });
208
- break;
209
- case NodeActionEnums.Update:
210
- if (dispatch) dispatch({
211
- type: "OPEN_SIDESHEET",
212
- sideSheet: {
213
- action,
214
- open: true
215
- }
216
- });
217
- break;
218
- case NodeActionEnums.Delete:
219
- if (dispatch) dispatch({
220
- type: "OPEN_MODAL",
221
- modal: {
222
- action,
223
- open: true,
224
- title: "Delete "
225
- }
226
- });
227
- break;
228
- case NodeActionEnums.Retrieve:
229
- if (dispatch) if (currentContainerId) break;
230
- else dispatch({
231
- type: "OPEN_SPLIT_SCREEN",
232
- splitScreen: {
233
- action,
234
- open: true,
235
- type: SplitScreenTypeEnums.Entity
236
- }
237
- });
238
- break;
239
- case NodeActionEnums.Open_Page_Split_Screen:
240
- if (dispatch) if (!!selectedNode) dispatch({
241
- type: "OPEN_PAGE_CONTAINER_SPLIT_SCREEN",
242
- pageContainerSplitScreen: {
243
- action,
244
- open: true,
245
- type: SplitScreenTypeEnums.Page
246
- }
247
- });
248
- else dispatch({
249
- type: "OPEN_PAGE_SPLIT_SCREEN",
250
- pageSplitScreen: {
251
- action,
252
- open: true,
253
- type: SplitScreenTypeEnums.Page
254
- }
255
- });
256
- break;
257
- case NodeActionEnums.Open_Shell_Split_Screen:
258
- if (dispatch) if (currentContainerId) break;
259
- else dispatch({
260
- type: "OPEN_SPLIT_SCREEN",
261
- splitScreen: {
262
- action,
263
- open: true,
264
- type: SplitScreenTypeEnums.Page
265
- }
266
- });
267
- break;
268
- case NodeActionEnums.Open_Notes:
269
- if (dispatch) if (currentContainerId) break;
270
- else dispatch({
271
- type: "OPEN_SPLIT_SCREEN",
272
- splitScreen: {
273
- action,
274
- open: true,
275
- type: SplitScreenTypeEnums.Notes
276
- }
277
- });
278
- break;
279
- case NodeActionEnums.Open_Reminders:
280
- if (dispatch) if (currentContainerId) break;
281
- else dispatch({
282
- type: "OPEN_SPLIT_SCREEN",
283
- splitScreen: {
284
- action,
285
- open: true,
286
- type: SplitScreenTypeEnums.Reminders
287
- }
288
- });
289
- break;
290
- case NodeActionEnums.Execute_Api:
291
- if (executeAction && action?.value) {
292
- let data = {};
293
- if (entityAttributes.length > 0 && (selectedNode?.nodeObj || actionData)) {
294
- if (actionData) data = { ...actionData };
295
- else data = { ...selectedNode?.nodeObj };
296
- entityAttributes.filter((p) => p?.extendedProperties?.childEntity).forEach((att) => {
297
- if (att["name"] in data || "serializeFields" in data) delete data[att["name"]];
298
- });
299
- }
300
- const pathParamValues = getPathParametersObj((await getApiMethod(action?.value))?.data?.pathParametersDefinition, data);
301
- executeAction({ data: {
302
- requestBody: data,
303
- ...pathParamValues
304
- } }, action.value).then((res) => {
305
- enqueueSnackbar(t(`${action?.name} api has been executed successfully.`), {
306
- anchorOrigin: {
307
- vertical: "top",
308
- horizontal: "center"
309
- },
310
- action: successAction
311
- });
312
- }).catch((res) => {
313
- enqueueSnackbar(res.message, {
314
- variant: "error",
315
- anchorOrigin: {
316
- vertical: "top",
317
- horizontal: "center"
318
- }
319
- });
320
- });
321
- } else enqueueSnackbar(t(`Unable to execute ${actionName} action.`), {
322
- variant: "error",
323
- anchorOrigin: {
324
- vertical: "top",
325
- horizontal: "center"
326
- }
327
- });
328
- break;
329
- case NodeActionEnums.Start_Workflow:
330
- setWorkflowStarting(true);
331
- const response = await executeStartWorkflow(actionValue, actionData || {}).catch((e) => {
332
- enqueueSnackbar(t(`Unable to Start Workflow`), {
333
- variant: "error",
334
- anchorOrigin: {
335
- vertical: "top",
336
- horizontal: "center"
337
- }
338
- });
339
- });
340
- setWorkflowStarting(false);
341
- if (response.status === 200) {
342
- const playId = response.data;
343
- if (selectedNode) {
344
- const workflow = {
345
- inWorkflowMode: true,
346
- currentWorkflowPlayId: playId
347
- };
348
- setWorkflowMap({ [currentContainerId || 0]: workflow });
349
- } else history.push({
350
- pathname: `/workflowtask/${playId}?taskId=`,
351
- state: { label: t("Workflow") }
352
- });
353
- }
354
- break;
355
- case NodeActionEnums.Execute_Function:
356
- actionData?.execute && actionData.execute();
357
- break;
358
- default: break;
359
- }
360
- };
361
- return { handleAction };
362
- };
363
-
364
- //#endregion
365
- //#region src/contexts/ActionLoadingDispatchContext.js
366
- const ActionLoadingDispatchContext = createContext(null);
367
-
368
- //#endregion
369
- //#region src/stores/catalogStore.ts
370
- const useCatalogStore = create()(devtools((set) => ({
371
- currentApiCatalogId: "",
372
- setCurrentApiCatalogId: (apiCatalogId) => {
373
- sessionStorage.setItem("current-api-catalog-id", apiCatalogId);
374
- set((state) => ({ currentApiCatalogId: apiCatalogId }));
375
- },
376
- catalogsMap: {},
377
- setCatalogsMap: (catalogsMap) => set((state) => ({ catalogsMap: {
378
- ...state.catalogsMap,
379
- ...catalogsMap
380
- } })),
381
- promotedEntityMap: {},
382
- setPromotedEntityMap: (promotedEntityMap) => set((state) => ({ promotedEntityMap: {
383
- ...state.promotedEntityMap,
384
- ...promotedEntityMap
385
- } })),
386
- promotedMethodEntitiesMap: {},
387
- setPromotedMethodEntitiesMap: (promotedMethodEntitiesMap) => set((state) => ({ promotedMethodEntitiesMap: {
388
- ...state.promotedMethodEntitiesMap,
389
- ...promotedMethodEntitiesMap
390
- } }))
391
- })));
392
-
393
- //#endregion
394
- //#region src/hooks/useActions.js
395
- const useActions = () => {
396
- const dispatch = useContext(ActionDispatchContext);
397
- const dispatchActionLoading = useContext(ActionLoadingDispatchContext);
398
- const actionState = useActionState();
399
- const { catalogsMap, currentApiCatalogId } = useCatalogStore();
400
- const currentContainerId = useShellStore((state) => state.currentContainerId);
401
- const { enqueueSnackbar } = useSnackbar();
402
- const { t } = useTranslation();
403
- const { handleAction } = useHandleAction();
404
- const setActionLoading = useCallback((loading) => {
405
- dispatchActionLoading({
406
- type: "SET_ACTION_LOADING",
407
- loading
408
- });
409
- }, [dispatchActionLoading]);
410
- const setActionWaitingToExecute = useCallback((actionId) => {
411
- dispatchActionLoading({
412
- type: "SET_ACTION_WAITING_TO_EXECUTE",
413
- actionId
414
- });
415
- }, [dispatchActionLoading]);
416
- const executeGetAction = useCallback(async (actionId) => apiMutate$1(ConfigService.integrationV1ApiUrl, `action/${actionId}`, { method: "get" }, {}), []);
417
- const executeAction = useCallback(async (data, id) => apiMutate$1(ConfigService.integrationV1ApiUrl, `apimethod/executeQueryWithParameters/${id}`, { method: "post" }, data), []);
418
- const setActionPanels = useCallback((actionPanels, containerId) => {
419
- dispatch({
420
- type: "SET_ACTION_PANELS",
421
- actionPanels,
422
- containerId
423
- });
424
- }, [dispatch]);
425
- const getActionPanelByAction = useCallback((act) => {
426
- if (act && actionState) {
427
- const actionPanels = actionState.actionPanels;
428
- const containerId = currentContainerId || 0;
429
- if (actionPanels && Array.isArray(actionPanels) && actionPanels[containerId]) {
430
- const actionPanel = actionPanels[containerId];
431
- if (Array.isArray(actionPanel.panelActions)) return actionPanel.find((ap) => {
432
- return ap.panelActions.find((pa) => {
433
- return pa.actionId === act.actionId;
434
- });
435
- });
436
- else console.error("panelActions is not an array:", actionPanel.panelActions);
437
- } else console.error("actionPanels is not valid:", actionPanels);
438
- } else console.error("act or actionState is not defined:", act, actionState);
439
- return null;
440
- }, [actionState, currentContainerId]);
441
- const setupAndExecuteAction = useCallback(async (catalog, actionId, actionData) => {
442
- await executeGetAction(actionId).then((resp) => {
443
- const panel = getActionPanelByAction(resp.data);
444
- let entityName = panel?.entityName;
445
- if (!panel) entityName = resp?.data?.parameters?.entityName;
446
- if (entityName) {
447
- actionState?.setCurrentEntityName && actionState.setCurrentEntityName(entityName);
448
- const eAttributes = getEntityAttributes(catalog, entityName);
449
- if (!eAttributes?.length && resp.data.actionTypeId !== NodeActionEnums.Start_Workflow) enqueueSnackbar(t(`Unable to retrieve entity attributes.`), {
450
- variant: "error",
451
- anchorOrigin: {
452
- vertical: "top",
453
- horizontal: "center"
454
- }
455
- });
456
- else handleAction(dispatch, resp.data, actionState, executeAction, catalog?.apiCatalogId, eAttributes, actionData, currentContainerId);
457
- } else {
458
- console.warn("Entity name does not exist");
459
- handleAction(dispatch, resp.data, actionState, executeAction, catalog?.apiCatalogId, {}, actionData, currentContainerId);
460
- }
461
- });
462
- }, [
463
- actionState,
464
- enqueueSnackbar,
465
- executeAction,
466
- executeGetAction,
467
- getActionPanelByAction,
468
- handleAction,
469
- t,
470
- dispatch,
471
- currentContainerId
472
- ]);
473
- const executeTriggerAction = useCallback(async (actionId, actionData) => {
474
- if (actionState?.catalogPromise) {
475
- if (!actionState?.catalog) setActionWaitingToExecute(actionId);
476
- try {
477
- setupAndExecuteAction((await actionState.catalogPromise)?.data || catalogsMap[currentApiCatalogId], actionId, actionData);
478
- } catch (error) {
479
- enqueueSnackbar(t(`Unable to retrieve catalog data.`), {
480
- variant: "error",
481
- anchorOrigin: {
482
- vertical: "top",
483
- horizontal: "center"
484
- }
485
- });
486
- }
487
- }
488
- setActionWaitingToExecute("");
489
- }, [
490
- setupAndExecuteAction,
491
- enqueueSnackbar,
492
- t,
493
- actionState,
494
- setActionWaitingToExecute,
495
- catalogsMap,
496
- currentApiCatalogId
497
- ]);
498
- return {
499
- setActionPanels,
500
- triggerAction: useCallback((actionId, actionData) => {
501
- executeTriggerAction(actionId, actionData);
502
- }, [executeTriggerAction]),
503
- triggerMultipleActions: useCallback((actionIds) => {
504
- actionIds.forEach((id) => {
505
- executeTriggerAction(id);
506
- });
507
- }, [executeTriggerAction]),
508
- setCatalogEntities: useCallback((catalogEntities) => {
509
- dispatch({
510
- type: "SET_CATALOG_ENTITIES",
511
- catalogEntities
512
- });
513
- }, [dispatch]),
514
- setCatalogPromotedEntities: useCallback((catalogPromotedEntities) => {
515
- dispatch({
516
- type: "SET_CATALOG_PROMOTED_ENTITIES",
517
- catalogPromotedEntities
518
- });
519
- }, [dispatch]),
520
- setInquiryParams: useCallback((inquiryParams, containerId) => {
521
- dispatch({
522
- type: "SET_INQUIRY_PARAMS",
523
- inquiryParams,
524
- containerId
525
- });
526
- }, [dispatch]),
527
- setShowInquiryHeaderActions: useCallback((showInquiryHeaderActions) => {
528
- dispatch({
529
- type: "SET_SHOW_INQUIRY_HEADER_ACTIONS",
530
- showInquiryHeaderActions
531
- });
532
- }, [dispatch]),
533
- setMenuListState: useCallback((menuListState) => {
534
- dispatch({
535
- type: "SET_MENU_LIST_STATE",
536
- menuListState
537
- });
538
- }, [dispatch]),
539
- closeAllSplitScreens: useCallback(() => {
540
- dispatch({ type: "CLOSE_ALL_SPLIT_SCREENS" });
541
- }, [dispatch]),
542
- openSplitScreen: useCallback((splitScreen) => {
543
- dispatch({
544
- type: "OPEN_SPLIT_SCREEN",
545
- splitScreen
546
- });
547
- }, [dispatch]),
548
- openPageSplitScreen: useCallback((pageSplitScreen) => {
549
- dispatch({
550
- type: "OPEN_PAGE_SPLIT_SCREEN",
551
- pageSplitScreen
552
- });
553
- }, [dispatch]),
554
- openPageContainerSplitScreen: useCallback((pageContainerSplitScreen) => {
555
- dispatch({
556
- type: "OPEN_PAGE_CONTAINER_SPLIT_SCREEN",
557
- pageContainerSplitScreen
558
- });
559
- }, [dispatch]),
560
- setApiCatalog: useCallback((catalog) => {
561
- dispatch({
562
- type: "SET_API_CATALOG",
563
- catalog
564
- });
565
- }, [dispatch]),
566
- setActionLoading
567
- };
568
- };
569
- const useActionState = () => useContext(ActionContext);
570
-
571
- //#endregion
572
- //#region src/UI/inputs/textField/AmbientTextField.jsx
573
- const useStyles$21 = makeStyles((theme) => ({
574
- input: {
575
- borderRadius: 2,
576
- height: (props) => !props.multiline && !Array.isArray(props.value) && 32,
577
- padding: (props) => !props.multiline && 0,
578
- paddingBottom: 10,
579
- marginTop: 3,
580
- "& .MuiFilledInput-inputMarginDense": { paddingTop: 8 },
581
- "& .MuiInputAdornment-filled.MuiInputAdornment-positionStart:not(.MuiInputAdornment-hiddenLabel)": {
582
- marginTop: theme.spacing(.5),
583
- marginLeft: theme.spacing(1)
584
- }
585
- },
586
- formTextInput: { fontSize: 14 },
587
- labelRoot: { fontSize: 14 },
588
- FormControl: {
589
- display: "none",
590
- marginTop: 0
591
- },
592
- root: {
593
- width: "100%",
594
- marginTop: 25,
595
- "& .MuiFormLabel-root": {
596
- marginTop: -30,
597
- marginLeft: -11
598
- },
599
- "& .MuiInputAdornment-root": { paddingLeft: theme.spacing(1) }
600
- },
601
- noLabel: { marginTop: theme.spacing(1) }
602
- }));
603
- const AmbientTextField = (props) => {
604
- const classes = useStyles$21(props);
605
- const { id, label, startAdornment, endAdornment, title = "noTitle",...InputProps } = props;
606
- return /* @__PURE__ */ React.createElement("div", { className: label ? classes.root : classes.noLabel }, /* @__PURE__ */ React.createElement(TextField, {
607
- ...InputProps,
608
- id,
609
- udprecordid: `udpRecord-FluentAmbientTextField-${title.replace(/\s/g, "")}-${props?.InputProps?.type}`,
610
- variant: "filled",
611
- size: "small",
612
- margin: "dense",
613
- label,
614
- classes: { label: classes.label },
615
- InputProps: {
616
- classes: {
617
- root: classes.input,
618
- input: classes.formTextInput,
619
- ...props.InputProps?.classes
620
- },
621
- ...props.InputProps,
622
- ...startAdornment,
623
- ...endAdornment
624
- },
625
- InputLabelProps: {
626
- shrink: false,
627
- classes: {
628
- root: classes.labelRoot,
629
- focused: classes.labelFocused
630
- }
631
- }
632
- }));
633
- };
634
- AmbientTextField.propTypes = {
635
- id: PropTypes.string,
636
- label: PropTypes.string,
637
- startAdornment: PropTypes.node,
638
- endAdornment: PropTypes.node
639
- };
640
-
641
- //#endregion
642
- //#region src/utilities/style/utils/styleUtils.js
643
- const getEllipseColor = (theme, color) => {
644
- if (!theme) return "";
645
- let ellipseColor = theme.palette.primary.main;
646
- switch (color) {
647
- case "action":
648
- ellipseColor = theme.palette.systemIcon?.action?.main;
649
- break;
650
- case "sequence":
651
- ellipseColor = theme.palette.systemIcon?.sequence?.main;
652
- break;
653
- case "trigger":
654
- ellipseColor = theme.palette.systemIcon?.trigger?.main;
655
- break;
656
- case "condition":
657
- ellipseColor = theme.palette.systemIcon?.condition?.main;
658
- break;
659
- case "primary":
660
- ellipseColor = theme.palette.primary.main;
661
- break;
662
- case "secondary":
663
- ellipseColor = theme.palette.secondary.main;
664
- break;
665
- case "info":
666
- ellipseColor = theme.palette.info.main;
667
- break;
668
- case "warning":
669
- ellipseColor = theme.palette.warning.main;
670
- break;
671
- case "error":
672
- ellipseColor = theme.palette.error.main;
673
- break;
674
- case "success":
675
- ellipseColor = theme.palette.success.main;
676
- break;
677
- default:
678
- ellipseColor = theme.palette.secondary.main;
679
- break;
680
- }
681
- return ellipseColor;
682
- };
683
- const getEllipseHintColor = (theme, color) => {
684
- if (!theme) return "";
685
- let ellipseHintColor = theme.palette.primary.main;
686
- switch (color) {
687
- case "action":
688
- ellipseHintColor = theme.palette.systemIcon?.action?.hint;
689
- break;
690
- case "sequence":
691
- ellipseHintColor = theme.palette.systemIcon?.sequence?.hint;
692
- break;
693
- case "trigger":
694
- ellipseHintColor = theme.palette.systemIcon?.trigger?.hint;
695
- break;
696
- case "condition":
697
- ellipseHintColor = theme.palette.systemIcon?.condition?.hint;
698
- break;
699
- case "primary":
700
- ellipseHintColor = theme.palette.primary.hint;
701
- break;
702
- case "secondary":
703
- ellipseHintColor = theme.palette.secondary.hint;
704
- break;
705
- case "info":
706
- ellipseHintColor = theme.palette.unity?.info?.hint;
707
- break;
708
- case "warning":
709
- ellipseHintColor = theme.palette.unity?.warning?.hint;
710
- break;
711
- case "error":
712
- ellipseHintColor = theme.palette.unity?.error?.hint;
713
- break;
714
- case "success":
715
- ellipseHintColor = theme.palette.unity?.success?.hint;
716
- break;
717
- default:
718
- ellipseHintColor = theme.palette.common.white;
719
- break;
720
- }
721
- return ellipseHintColor;
722
- };
723
-
724
- //#endregion
725
- //#region src/UI/components/dataDisplay/Ellipse.jsx
726
- const useStyles$20 = makeStyles((theme) => ({ root: {
727
- display: "flex",
728
- alignItems: "center",
729
- justifyContent: "center",
730
- width: (props) => props.size === "small" ? theme.spacing(4) : theme.spacing(5),
731
- height: (props) => props.size === "small" ? theme.spacing(4) : theme.spacing(5),
732
- borderRadius: 50,
733
- border: (props) => props.variant === "filled" ? "none" : `2px solid`,
734
- backgroundColor: (props) => props.variant === "filled" && getEllipseHintColor(theme, props.color),
735
- borderColor: (props) => getEllipseColor(theme, props.color)
736
- } }));
737
- const Ellipse = (props) => {
738
- const { children } = props;
739
- const classes = useStyles$20(props);
740
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, children);
741
- };
742
- Ellipse.propTypes = {
743
- color: PropTypes.string,
744
- size: PropTypes.string,
745
- variant: PropTypes.string
746
- };
747
-
748
- //#endregion
749
- //#region src/UI/templates/ui/GridSidebarContainer.jsx
750
- const useStyles$19 = makeStyles((theme) => ({
751
- root: {},
752
- groupWrapper: {
753
- padding: theme.spacing(2),
754
- height: (props) => props?.height ? `${props.height} !important` : "calc(100vh - 280px) !important",
755
- overflow: "auto"
756
- }
757
- }));
758
- const GridSidebarContainer = (props) => {
759
- const { children, color } = props;
760
- const classes = useStyles$19(props);
761
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(Paper, {
762
- elevation: "0",
763
- square: true,
764
- style: { background: color }
765
- }, /* @__PURE__ */ React.createElement("div", { className: classes.groupWrapper }, children)));
766
- };
767
- GridSidebarContainer.propTypes = {
768
- children: PropTypes.node,
769
- color: PropTypes.string
770
- };
771
-
772
- //#endregion
773
- //#region src/UI/inputs/buttons/AmbientTokenButton.jsx
774
- const useStyles$18 = makeStyles((theme) => ({
775
- root: {},
776
- actionHeader: {
777
- display: "flex",
778
- flexDirection: "row"
779
- },
780
- icon: {
781
- background: theme.palette.common.white,
782
- padding: theme.spacing(1),
783
- color: theme.palette.secondary.main
784
- }
785
- }));
786
- const AmbientTokenButton = forwardRef(function AmbientTokenButton$1(props, ref) {
787
- const { tooltip, ariaLabel, onClick, size, icon = ChevronDownIcon, iconClassName, otherProps, id = "token-button", udprecordid } = props;
788
- const classes = useStyles$18(props);
789
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(Tooltip, { title: tooltip }, /* @__PURE__ */ React.createElement(IconButton, {
790
- id,
791
- udprecordid,
792
- ref,
793
- "aria-label": ariaLabel,
794
- className: iconClassName ?? classes.icon,
795
- size: size ?? "small",
796
- onClick,
797
- ...otherProps
798
- }, /* @__PURE__ */ React.createElement(FluentIcon, {
799
- className: classes.iconButtonStyle,
800
- component: icon
801
- }))));
802
- });
803
- AmbientTokenButton.propTypes = {
804
- tooltip: PropTypes.string.isRequired,
805
- ariaLabel: PropTypes.string.isRequired,
806
- onClick: PropTypes.func,
807
- icon: PropTypes.func.isRequired
808
- };
809
-
810
- //#endregion
811
- //#region src/UI/templates/ui/GridGroupingHeader.jsx
812
- const useStyles$17 = makeStyles((theme) => ({
813
- root: {},
814
- actionHeader: {
815
- display: "flex",
816
- flexDirection: "row",
817
- gap: 10
818
- },
819
- icon: {
820
- background: theme.palette.common.white,
821
- padding: theme.spacing(1),
822
- color: theme.palette.secondary.main
823
- }
824
- }));
825
- const GridGroupingHeader = ({ expandClick, collapseClick }) => {
826
- const classes = useStyles$17();
827
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement("div", { className: classes.actionHeader }, /* @__PURE__ */ React.createElement(AmbientTokenButton, {
828
- icon: ChevronFold10Icon,
829
- tooltip: "Collapse All",
830
- ariaLabel: "Collapse All",
831
- onClick: collapseClick
832
- }), /* @__PURE__ */ React.createElement(AmbientTokenButton, {
833
- icon: ChevronUnfold10Icon,
834
- tooltip: "Expand All",
835
- ariaLabel: "Expand All",
836
- onClick: expandClick
837
- })), /* @__PURE__ */ React.createElement(LayoutUnit, { unit: "nudge" }), /* @__PURE__ */ React.createElement("div", { className: classes.label }, /* @__PURE__ */ React.createElement(Typography, { variant: "caption" }, "Group By:")), /* @__PURE__ */ React.createElement(LayoutUnit, { unit: "nudge" }));
838
- };
839
- GridGroupingHeader.propTypes = {
840
- expandClick: PropTypes.func.isRequired,
841
- collapseClick: PropTypes.func.isRequired
842
- };
843
-
844
- //#endregion
845
- //#region src/UI/components/dataDisplay/Token.jsx
846
- const useStyles$16 = makeStyles((theme) => ({
847
- root: { margin: (props) => props.compact ? theme.spacing(.5) : theme.spacing(1) },
848
- letter: {
849
- fontSize: (props) => props.size === "small" ? theme.spacing(2.25) : theme.spacing(2.5),
850
- color: (props) => getEllipseColor(theme, props.color)
851
- },
852
- buttonRoot: {
853
- margin: theme.spacing(1),
854
- width: (props) => props.size === "small" ? theme.spacing(4) : theme.spacing(5),
855
- height: (props) => props.size === "small" ? theme.spacing(4) : theme.spacing(5),
856
- background: (props) => props.variant === "filled" ? getEllipseHintColor(theme, props.color) : "",
857
- border: (props) => props.variant === "outlined" ? `1px solid` : "none",
858
- borderColor: (props) => props.variant === "outlined" ? getEllipseColor(theme, props.color) : ""
859
- }
860
- }));
861
- const Token = (props) => {
862
- const { type = "default", variant = "outlined", color = "default", size = "large", iconType, icon, letter = "A", IconEllipseProps, onClick } = props;
863
- const classes = useStyles$16(props);
864
- const theme = useTheme();
865
- const iconColor = useMemo(() => {
866
- return getEllipseColor(theme, color);
867
- }, [color, theme]);
868
- const tokenComponent = /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(Ellipse, {
869
- variant,
870
- size,
871
- color,
872
- ...IconEllipseProps
873
- }, type === "letter" ? /* @__PURE__ */ React.createElement(Typography, {
874
- variant: "body1",
875
- className: classes.letter
876
- }, letter.toUpperCase()) : /* @__PURE__ */ React.createElement(UnityFluentIcon, {
877
- size: size === "small" ? size : "medium",
878
- color: iconColor,
879
- type: iconType,
880
- icon,
881
- style: { color: iconColor }
882
- })));
883
- if (type === "action") return /* @__PURE__ */ React.createElement(IconButton, {
884
- classes: { root: classes.buttonRoot },
885
- onClick
886
- }, /* @__PURE__ */ React.createElement(UnityFluentIcon, {
887
- size: size === "small" ? size : "medium",
888
- color: iconColor,
889
- type: iconType,
890
- icon,
891
- style: { color: iconColor }
892
- }));
893
- return tokenComponent;
894
- };
895
- Token.propTypes = {
896
- type: PropTypes.string,
897
- variant: PropTypes.string,
898
- color: PropTypes.string,
899
- size: PropTypes.string,
900
- iconType: PropTypes.string,
901
- icon: PropTypes.elementType,
902
- letter: PropTypes.string,
903
- onClick: PropTypes.func
904
- };
905
-
906
- //#endregion
907
- //#region src/UI/inputs/buttons/AmbientToggleButton.jsx
908
- const useStyles$15 = makeStyles((theme) => ({
909
- root: {},
910
- groupActionContainer: {
911
- display: "flex",
912
- flexDirection: "column",
913
- flexWrap: "wrap",
914
- alignContent: "space-around"
915
- },
916
- toggleRoot: {
917
- "&:not(:first-child)": {
918
- marginTop: 16,
919
- border: "1px solid lightgrey",
920
- borderTopLeftRadius: 25,
921
- borderTopRightRadius: 25,
922
- borderRadius: 25,
923
- padding: 0,
924
- paddingRight: theme.spacing(2)
925
- },
926
- "&:not(:last-child)": {
927
- borderBottomLeftRadius: 25,
928
- borderBottomRightRadius: 25,
929
- borderRadius: 25,
930
- padding: 0,
931
- border: "1px solid lightgrey",
932
- paddingRight: theme.spacing(2)
933
- },
934
- "& .MuiToggleButton-root.Mui-selected": {
935
- color: "rgba(0, 0, 0, 0.54)",
936
- backgroundColor: "white"
937
- }
938
- },
939
- buttonRoot: {
940
- textTransform: "none",
941
- fontWeight: 700,
942
- justifyContent: "flex-start"
943
- },
944
- ".MuiToggleButton-root.Mui-selected": {
945
- color: "rgba(0, 0, 0, 0.54)",
946
- backgroundColor: "white"
947
- }
948
- }));
949
- const AmbientToggleButton = ({ children, value, ariaLabel, onClick,...otherProps }) => {
950
- const classes = useStyles$15();
951
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(ToggleButton, {
952
- classes: { root: classes.buttonRoot },
953
- value,
954
- "aria-label": ariaLabel,
955
- onClick,
956
- ...otherProps
957
- }, children));
958
- };
959
- AmbientToggleButton.propTypes = {
960
- children: PropTypes.node,
961
- value: PropTypes.string,
962
- ariaLabel: PropTypes.string,
963
- onClick: PropTypes.func
964
- };
965
-
966
- //#endregion
967
- //#region src/utilities/isValueSelected.js
968
- function isValueSelected(value, candidate) {
969
- if (candidate === void 0 || value === void 0) return false;
970
- if (Array.isArray(candidate)) return candidate.indexOf(value) >= 0;
971
- return value === candidate;
972
- }
973
-
974
- //#endregion
975
- //#region src/UI/inputs/buttons/AmbientToggleButtonGroupDefault.jsx
976
- const styles = (theme) => ({
977
- root: {
978
- display: "inline-flex",
979
- padding: 0
980
- },
981
- vertical: { flexDirection: "column" },
982
- grouped: {},
983
- groupedHorizontal: {
984
- borderRadius: 25,
985
- padding: 0,
986
- paddingRight: 16,
987
- "&:not(:first-child)": {
988
- marginTop: 16,
989
- borderRadius: 25,
990
- paddingRight: 16,
991
- padding: 0
992
- },
993
- "&:not(:last-child)": {
994
- padding: 0,
995
- borderRadius: 25,
996
- paddingRight: 16
997
- }
998
- },
999
- groupedVertical: {
1000
- borderRadius: 25,
1001
- padding: 0,
1002
- paddingRight: 16,
1003
- "&:not(:first-child)": {
1004
- marginTop: 16,
1005
- borderRadius: 25,
1006
- paddingRight: 16,
1007
- padding: 0
1008
- },
1009
- "&:not(:last-child)": {
1010
- padding: 0,
1011
- borderRadius: 25,
1012
- paddingRight: 16
1013
- }
1014
- }
1015
- });
1016
- const AmbientToggleButtonGroupDefault = forwardRef(function AmbientToggleButton$1(props, ref) {
1017
- const { children, classes, className, exclusive = false, onChange, orientation = "horizontal", size = "medium", value,...other } = props;
1018
- const handleChange = (event, buttonValue) => {
1019
- if (!onChange) return;
1020
- const index = value && value.indexOf(buttonValue);
1021
- let newValue;
1022
- if (value && index >= 0) {
1023
- newValue = value.slice();
1024
- newValue.splice(index, 1);
1025
- } else newValue = value ? value.concat(buttonValue) : [buttonValue];
1026
- onChange(event, newValue);
1027
- };
1028
- const handleExclusiveChange = (event, buttonValue) => {
1029
- if (!onChange) return;
1030
- onChange(event, value === buttonValue ? null : buttonValue);
1031
- };
1032
- return /* @__PURE__ */ React.createElement("div", {
1033
- role: "group",
1034
- className: clsx(classes.root, { [classes.vertical]: orientation === "vertical" }, className),
1035
- ref,
1036
- ...other
1037
- }, Children.map(children, (child) => {
1038
- if (!isValidElement(child)) return null;
1039
- if (process.env.NODE_ENV !== "production") {
1040
- if (isFragment(child)) console.error(["Material-UI: The ToggleButtonGroup component doesn't accept a Fragment as a child.", "Consider providing an array instead."].join("\n"));
1041
- }
1042
- return cloneElement(child, {
1043
- className: clsx(classes.grouped, classes[`grouped${capitalize(orientation)}`], child.props.className),
1044
- onChange: exclusive ? handleExclusiveChange : handleChange,
1045
- selected: child.props.selected === void 0 ? isValueSelected(child.props.value, value) : child.props.selected,
1046
- size: child.props.size || size
1047
- });
1048
- }));
1049
- });
1050
- AmbientToggleButtonGroupDefault.propTypes = {
1051
- children: PropTypes.node,
1052
- classes: PropTypes.object,
1053
- className: PropTypes.string,
1054
- exclusive: PropTypes.bool,
1055
- onChange: PropTypes.func,
1056
- orientation: PropTypes.oneOf(["horizontal", "vertical"]),
1057
- size: PropTypes.oneOf([
1058
- "large",
1059
- "medium",
1060
- "small"
1061
- ]),
1062
- value: PropTypes.any
1063
- };
1064
- /**
1065
- * Explicitly cast the HOC to any to avoid non-portable inferred React types in declaration output.
1066
- * @type {any}
1067
- */
1068
- const AmbientToggleButtonGroupDefaultExport = withStyles$1(styles, { name: "MuiToggleButtonGroup" })(AmbientToggleButtonGroupDefault);
1069
- var AmbientToggleButtonGroupDefault_default = AmbientToggleButtonGroupDefaultExport;
1070
-
1071
- //#endregion
1072
- //#region src/UI/templates/ui/GridGroupingSidebar.jsx
1073
- const useStyles$14 = makeStyles((theme) => ({
1074
- root: {},
1075
- groupActionContainer: {
1076
- display: "flex",
1077
- flexDirection: "column",
1078
- flexWrap: "wrap",
1079
- alignContent: "space-around"
1080
- },
1081
- buttonRoot: {
1082
- textTransform: "none",
1083
- fontWeight: 700,
1084
- justifyContent: "flex-start"
1085
- },
1086
- buttonGroupWrapper: { gap: theme.spacing(2) }
1087
- }));
1088
- const GridGroupingSidebar = ({ groupItem, expandClick, collapseClick, closeClick, groupingData, height, color = "#F5F2F8" }) => {
1089
- const classes = useStyles$14();
1090
- const [view, setView] = useState("");
1091
- const handleChange = (event, nextView) => {
1092
- setView(nextView);
1093
- };
1094
- const GroupItem = ({ label, clear }) => {
1095
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Token, {
1096
- icon: clear ? ChromeCloseIcon : AssessmentGroupIcon,
1097
- color: "trigger",
1098
- size: "small",
1099
- variant: "filled",
1100
- type: "icon"
1101
- }), /* @__PURE__ */ React.createElement(Typography, {
1102
- variant: "caption",
1103
- style: { color: "black" }
1104
- }, " ", label, " "));
1105
- };
1106
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(GridSidebarContainer, {
1107
- color,
1108
- height
1109
- }, /* @__PURE__ */ React.createElement(GridGroupingHeader, {
1110
- expandClick,
1111
- collapseClick,
1112
- closeClick
1113
- }), /* @__PURE__ */ React.createElement("div", { className: classes.groupActionContainer }, /* @__PURE__ */ React.createElement(AmbientToggleButtonGroupDefault_default, {
1114
- orientation: "vertical",
1115
- value: view,
1116
- exclusive: true,
1117
- onChange: handleChange,
1118
- className: classes.buttonGroupWrapper
1119
- }, groupingData.map((item) => {
1120
- return /* @__PURE__ */ React.createElement(AmbientToggleButton, {
1121
- value: item.value,
1122
- "aria-label": item.label,
1123
- onClick: () => groupItem(item.groupItem)
1124
- }, /* @__PURE__ */ React.createElement(GroupItem, { label: item.label }));
1125
- }), /* @__PURE__ */ React.createElement(AmbientToggleButton, {
1126
- value: "noGroups",
1127
- "aria-label": "noGroups",
1128
- onClick: closeClick
1129
- }, /* @__PURE__ */ React.createElement(GroupItem, {
1130
- label: "No Groups",
1131
- clear: true
1132
- }))))));
1133
- };
1134
- GridGroupingSidebar.propTypes = {
1135
- groupItem: PropTypes.func,
1136
- expandClick: PropTypes.func,
1137
- collapseClick: PropTypes.func,
1138
- closeClick: PropTypes.func,
1139
- groupingData: PropTypes.array,
1140
- color: PropTypes.string
1141
- };
1142
-
1143
- //#endregion
1144
- //#region src/utilities/aggrid/SplitButton.jsx
1145
- const useStyles$13 = makeStyles((theme) => ({
1146
- arrowButtonRoot: { padding: 0 },
1147
- menu: { zIndex: theme.zIndex.tooltip },
1148
- paper: {}
1149
- }), { name: "SplitButton" });
1150
- /**
1151
- * https://material-ui.com/components/button-group/#split-button
1152
- */
1153
- const SplitButton = (props) => {
1154
- const classes = useStyles$13(props);
1155
- const { popupName, color, size, variant, label, "aria-label": ariaLabel, children } = props;
1156
- const popupState = usePopupState({
1157
- variant: "popper",
1158
- popupId: useId(popupName)
1159
- });
1160
- const firstItem = Children.toArray(children)[0];
1161
- const setAnchorEl = useCallback((ref) => {
1162
- if (ref) popupState.setAnchorEl(ref);
1163
- }, []);
1164
- return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(ButtonGroup, {
1165
- variant,
1166
- color,
1167
- size,
1168
- ref: setAnchorEl,
1169
- "aria-label": ariaLabel
1170
- }, /* @__PURE__ */ React.createElement(Button, { onClick: firstItem?.props?.onClick }, label || firstItem?.props?.children), /* @__PURE__ */ React.createElement(Button, {
1171
- ...bindTrigger(popupState),
1172
- className: classes.arrowButtonRoot,
1173
- color,
1174
- size: "small",
1175
- "aria-expanded": popupState.isOpen ? true : void 0
1176
- }, /* @__PURE__ */ React.createElement(ArrowDropDown, null))), /* @__PURE__ */ React.createElement(Popper, {
1177
- ...bindPopper(popupState),
1178
- role: void 0,
1179
- transition: true,
1180
- disablePortal: true,
1181
- className: classes.menu
1182
- }, ({ TransitionProps, placement }) => /* @__PURE__ */ React.createElement(Grow, {
1183
- ...TransitionProps,
1184
- style: { transformOrigin: placement === "bottom" ? "center top" : "center bottom" }
1185
- }, /* @__PURE__ */ React.createElement(Paper, { className: classes.paper }, /* @__PURE__ */ React.createElement(ClickAwayListener, { onClickAway: popupState.close }, /* @__PURE__ */ React.createElement(MenuList, null, children))))));
1186
- };
1187
-
1188
- //#endregion
1189
- //#region src/utilities/aggrid/AgTable.tsx
1190
- LicenseManager.setLicenseKey(LicenseKey);
1191
- const useStyles$12 = makeStyles((theme) => ({
1192
- root: {
1193
- flex: 1,
1194
- height: (props) => props?.height ? props.height : "calc(100vh - 280px)"
1195
- },
1196
- AgGrid: (props) => ({
1197
- "--ag-control-panel-background-color": theme.palette.primary.light,
1198
- "--ag-checkbox-checked-color": theme.palette.primary.main,
1199
- ...props.hideHeader ? {} : {
1200
- "--ag-header-background-color": theme.palette.primary.main,
1201
- "--ag-header-foreground-color": theme.palette.primary.light
1202
- }
1203
- })
1204
- }), { name: "AgTable" });
1205
- const globalModules = [...AllModules, ExcelExportModule];
1206
- /**
1207
- * Utility hook for getting the ag-grid APIs into state
1208
- */
1209
- function useAgGridApi() {
1210
- const [{ gridApi, gridColumnApi }, onGridReady] = useReducer((state, params) => {
1211
- return {
1212
- gridApi: params.api,
1213
- gridColumnApi: params.columnApi
1214
- };
1215
- }, {});
1216
- return {
1217
- gridApi,
1218
- gridColumnApi,
1219
- onGridReady
1220
- };
1221
- }
1222
- /**
1223
- * Size/Export buttons for AgGrid tables
1224
- */
1225
- const AgTableButtons = (props) => {
1226
- const { gridApi, gridColumnApi } = props;
1227
- const exportToCSV = useCallback(() => {
1228
- invariant(gridApi, `gridApi not ready`);
1229
- gridApi?.exportDataAsCsv({
1230
- allColumns: true,
1231
- fileName: "export"
1232
- });
1233
- }, [gridApi]);
1234
- const exportToExcel = useCallback(() => {
1235
- invariant(gridApi, `gridApi not ready`);
1236
- gridApi?.exportDataAsExcel({
1237
- allColumns: true,
1238
- fileName: "export"
1239
- });
1240
- }, [gridApi]);
1241
- const sizeToFit = useCallback((params) => {
1242
- invariant(gridApi, `gridApi not ready`);
1243
- gridApi?.sizeColumnsToFit();
1244
- }, [gridApi]);
1245
- const autoSizeAll = useCallback((skipHeader) => {
1246
- invariant(gridColumnApi, `gridColumnApi not ready`);
1247
- const allColumnIds = [];
1248
- gridColumnApi?.getAllColumns()?.forEach((column) => {
1249
- allColumnIds.push(column.getColId());
1250
- });
1251
- gridColumnApi?.autoSizeColumns(allColumnIds, skipHeader);
1252
- }, [gridColumnApi]);
1253
- const autoSizeAllWithHeader = useCallback(() => autoSizeAll(false), [autoSizeAll]);
1254
- const autoSizeAllWithoutHeader = useCallback(() => autoSizeAll(false), [autoSizeAll]);
1255
- return /* @__PURE__ */ React.createElement(Box, { mb: 1 }, /* @__PURE__ */ React.createElement(Grid, {
1256
- container: true,
1257
- direction: "row",
1258
- spacing: 1,
1259
- justify: "flex-end"
1260
- }, /* @__PURE__ */ React.createElement(Grid, { item: true }, /* @__PURE__ */ React.createElement(Button, {
1261
- variant: "outlined",
1262
- size: "small",
1263
- onClick: sizeToFit
1264
- }, "Size to Fit")), /* @__PURE__ */ React.createElement(Grid, { item: true }, /* @__PURE__ */ React.createElement(SplitButton, {
1265
- popupName: "auto-size",
1266
- variant: "outlined",
1267
- size: "small",
1268
- label: "Auto-Size"
1269
- }, /* @__PURE__ */ React.createElement(MenuItem, { onClick: autoSizeAllWithHeader }, "All"), /* @__PURE__ */ React.createElement(MenuItem, { onClick: autoSizeAllWithoutHeader }, "Skip Header"))), /* @__PURE__ */ React.createElement(Grid, { item: true }, /* @__PURE__ */ React.createElement(SplitButton, {
1270
- popupName: "export",
1271
- variant: "outlined",
1272
- size: "small",
1273
- label: "Export"
1274
- }, /* @__PURE__ */ React.createElement(MenuItem, { onClick: exportToExcel }, "Excel"), /* @__PURE__ */ React.createElement(MenuItem, { onClick: exportToCSV }, "CSV")))));
1275
- };
1276
- /**
1277
- * AgGrid with tweaks
1278
- */
1279
- const AgTable = (props) => {
1280
- const classes = useStyles$12(props);
1281
- const { modules: modulesProp, className, getRowHeight, rowModelType, isUsingAgRowHeight = false, hideHeader = false } = props;
1282
- const modules = useMemo(() => modulesProp ? globalModules.concat(modulesProp) : globalModules, [modulesProp]);
1283
- const calculateRowHeight = (params) => {
1284
- if (params.node.level === 0) return 48;
1285
- if (params.node.level === 1) return 32;
1286
- return 16;
1287
- };
1288
- const rowHeightFunction = useCallback((params) => {
1289
- if (rowModelType === "serverSide") if (isUsingAgRowHeight) return;
1290
- else if (getRowHeight) return getRowHeight(params);
1291
- else return calculateRowHeight(params);
1292
- else if (getRowHeight) return getRowHeight(params);
1293
- }, [getRowHeight, isUsingAgRowHeight]);
1294
- const onGridSizeChanged = () => {
1295
- if (props.dynamicSizing) props.api?.sizeColumnsToFit();
1296
- };
1297
- return /* @__PURE__ */ React.createElement("div", { className: clsx("ag-theme-material", classes.root, className) }, /* @__PURE__ */ React.createElement(AgGridReact, {
1298
- ...props,
1299
- modules,
1300
- onGridSizeChanged,
1301
- getRowHeight: rowHeightFunction,
1302
- className: classes.AgGrid
1303
- }));
1304
- };
1305
-
1306
- //#endregion
1307
- //#region src/UI/utilityDisplay/GridActionBar.jsx
1308
- const useStyles$11 = makeStyles((theme) => ({
1309
- root: {
1310
- display: "flex",
1311
- flexDirection: "row",
1312
- padding: theme.spacing(.5),
1313
- background: (props) => props.background ? props.background : lighten(theme.palette.secondary.light, .9)
1314
- },
1315
- label: {
1316
- display: "flex",
1317
- alignItems: "center",
1318
- justifyContent: "flex-end"
1319
- },
1320
- title: {
1321
- flex: 1,
1322
- display: "flex",
1323
- alignItems: "center",
1324
- marginLeft: (props) => props.title ? theme.spacing(2) : 0
1325
- },
1326
- tabRoot: {
1327
- minWidth: 0,
1328
- textTransform: "none"
1329
- },
1330
- controls: {
1331
- display: "flex",
1332
- alignItems: "center",
1333
- gridGap: theme.spacing(2),
1334
- gap: theme.spacing(2),
1335
- marginRight: theme.spacing(2)
1336
- },
1337
- icon: {
1338
- background: theme.palette.common.white,
1339
- padding: theme.spacing(1),
1340
- color: theme.palette.secondary.main
1341
- }
1342
- }));
1343
- const GridActionBar = (props) => {
1344
- const classes = useStyles$11(props);
1345
- const { children, onChange, handleChange, value, exportCSV, exportExcel, exportPDF, fitClick, expandClick, clearClick, exportClick, saveGridConfig, deleteGridConfig, clearGridConfig, title, hideFitGrid = false, hideExpandGrid = false, hideExportGrid = false, hideRemoveFilters = false, hideFilterTab = false, hideGroupTab = false, hideColumnTab = false, hideSearchBar = false } = props;
1346
- const gridControlsExport = /* @__PURE__ */ React.createElement("div", null);
1347
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement("div", { className: classes.title }, title && /* @__PURE__ */ React.createElement(Typography, {
1348
- variant: "h6",
1349
- style: {
1350
- overflow: "hidden",
1351
- whiteSpace: "nowrap",
1352
- textOverflow: "ellipsis"
1353
- }
1354
- }, " ", title, " "), !hideSearchBar && /* @__PURE__ */ React.createElement("div", { style: {
1355
- flex: 1,
1356
- marginLeft: 16,
1357
- marginRight: 16,
1358
- marginTop: -16
1359
- } }, /* @__PURE__ */ React.createElement(AmbientTextField, {
1360
- title,
1361
- onChange,
1362
- InputProps: {
1363
- type: "search",
1364
- startAdornment: /* @__PURE__ */ React.createElement(InputAdornment, { position: "start" }, /* @__PURE__ */ React.createElement(SearchIcon, null))
1365
- }
1366
- }))), /* @__PURE__ */ React.createElement("div", null, " ", gridControlsExport), /* @__PURE__ */ React.createElement("div", { className: classes.controls }, saveGridConfig && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1367
- iconClassName: classes.icon,
1368
- icon: SaveIcon,
1369
- tooltip: "Save Grid Configuration",
1370
- ariaLabel: "Save Grid Configuration",
1371
- onClick: saveGridConfig
1372
- }), deleteGridConfig && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1373
- iconClassName: classes.icon,
1374
- icon: DeleteIcon,
1375
- tooltip: "Delete Grid Configuration",
1376
- ariaLabel: "Delete Grid Configuration",
1377
- onClick: deleteGridConfig
1378
- }), clearGridConfig && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1379
- iconClassName: classes.icon,
1380
- icon: ClearIcon,
1381
- tooltip: "Clear Grid Configuration",
1382
- ariaLabel: "Clear Grid Configuration",
1383
- onClick: clearGridConfig
1384
- }), !hideFitGrid && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1385
- iconClassName: classes.icon,
1386
- icon: CombineIcon,
1387
- tooltip: "Fit Grid",
1388
- ariaLabel: "Fit Grid",
1389
- onClick: fitClick
1390
- }), !hideExpandGrid && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1391
- iconClassName: classes.icon,
1392
- icon: ExportIcon,
1393
- tooltip: "Expand Grid",
1394
- ariaLabel: "Expand Grid",
1395
- onClick: expandClick
1396
- }), !hideExportGrid && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1397
- iconClassName: classes.icon,
1398
- icon: DownloadIcon,
1399
- tooltip: "Export Grid",
1400
- ariaLabel: "Export Grid",
1401
- onClick: exportClick
1402
- }), !hideRemoveFilters && /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1403
- iconClassName: classes.icon,
1404
- icon: BlockedIcon,
1405
- tooltip: "Remove Filters",
1406
- ariaLabel: "Remove Filters",
1407
- onClick: clearClick
1408
- })), /* @__PURE__ */ React.createElement(Tabs, {
1409
- value,
1410
- onChange: handleChange,
1411
- "aria-label": "basic tabs example"
1412
- }, !hideFilterTab && /* @__PURE__ */ React.createElement(Tab, {
1413
- label: "Filter",
1414
- classes: { root: classes.tabRoot }
1415
- }), !hideGroupTab && /* @__PURE__ */ React.createElement(Tab, {
1416
- label: "Group",
1417
- classes: { root: classes.tabRoot }
1418
- }), !hideColumnTab && /* @__PURE__ */ React.createElement(Tab, {
1419
- label: "Column",
1420
- classes: { root: classes.tabRoot }
1421
- })), children);
1422
- };
1423
- GridActionBar.propTypes = {
1424
- title: PropTypes.string,
1425
- children: PropTypes.node,
1426
- handleChange: PropTypes.func,
1427
- value: PropTypes.number,
1428
- fitClick: PropTypes.func,
1429
- expandClick: PropTypes.func,
1430
- clearClick: PropTypes.func,
1431
- exportClick: PropTypes.func
1432
- };
1433
-
1434
- //#endregion
1435
- //#region src/UI/inputs/buttons/AmbientChipButton.jsx
1436
- const useStyles$10 = makeStyles((theme) => ({
1437
- root: {},
1438
- actionHeader: {
1439
- display: "flex",
1440
- flexDirection: "row"
1441
- },
1442
- icon: {
1443
- marginLeft: theme.spacing(1),
1444
- color: (props) => props.background === "transparent" ? theme.palette.secondary.main : theme.palette.primary.main
1445
- },
1446
- chipRoot: { background: (props) => props.background ? props.background : theme.palette.common.white },
1447
- label: {
1448
- overflow: "hidden",
1449
- whiteSpace: "nowrap",
1450
- textOverflow: "ellipsis"
1451
- }
1452
- }));
1453
- const AmbientChipButton = forwardRef(function AmbientChipButton$1(props, ref) {
1454
- const { tooltip, label, onClick, icon, iconClassName, className, labelClassName, otherProps, id = "chip-button", udprecordid } = props;
1455
- const classes = useStyles$10(props);
1456
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement(Tooltip, { title: tooltip }, /* @__PURE__ */ React.createElement(Chip, {
1457
- id,
1458
- udprecordid,
1459
- ref,
1460
- className: className ?? classes.chipRoot,
1461
- label: /* @__PURE__ */ React.createElement(Typography, { className: labelClassName ?? classes.label }, label),
1462
- onClick,
1463
- icon: icon && /* @__PURE__ */ React.createElement(FluentIcon, {
1464
- className: iconClassName ?? classes.icon,
1465
- component: icon
1466
- }),
1467
- ...otherProps
1468
- })));
1469
- });
1470
- AmbientChipButton.propTypes = {
1471
- tooltip: PropTypes.string.isRequired,
1472
- label: PropTypes.string.isRequired,
1473
- onClick: PropTypes.func,
1474
- icon: PropTypes.func.isRequired
1475
- };
1476
-
1477
- //#endregion
1478
- //#region src/UI/utilityDisplay/GridPrimaryBar.jsx
1479
- const useStyles$9 = makeStyles((theme) => ({
1480
- root: {
1481
- display: "flex",
1482
- flexDirection: "row",
1483
- padding: theme.spacing(.5)
1484
- },
1485
- label: {
1486
- display: "flex",
1487
- alignItems: "center",
1488
- justifyContent: "flex-end"
1489
- },
1490
- title: {
1491
- flex: 1,
1492
- display: "flex",
1493
- alignItems: "center",
1494
- marginLeft: (props) => props.title ? theme.spacing(2) : 0
1495
- },
1496
- tabRoot: {
1497
- minWidth: 0,
1498
- textTransform: "none"
1499
- },
1500
- controls: {
1501
- display: "flex",
1502
- alignItems: "center",
1503
- gridGap: theme.spacing(2),
1504
- gap: theme.spacing(2),
1505
- marginRight: theme.spacing(2)
1506
- },
1507
- icon: {
1508
- background: theme.palette.common.white,
1509
- padding: theme.spacing(1),
1510
- color: theme.palette.primary.main
1511
- }
1512
- }));
1513
- const GridPrimaryBar = (props) => {
1514
- const classes = useStyles$9(props);
1515
- const { children, onChange, fitClick, expandClick, clearClick, exportClick, filterClick, columnsClick, groupClick, title, hiddenActionButtons, hiddenLabels, hideSearchBar = false, secondaryActionButtons, saveViewClick, viewsClick, insightsClick, onPrimaryActionClick, primaryActionDisabled, primaryActionLabel, primaryActionIcon, onSearchKeyDown } = props;
1516
- const [actionButtonMedianPx, setActionButtonMedianPx] = useState(0);
1517
- const [actionButtons, setActionButtons] = useState([]);
1518
- const [menuActionButtons, setMenuActionButtons] = useState([]);
1519
- const [anchorEl, setAnchorEl] = useState(null);
1520
- const [windowWidthBreakpoint, setWindowWidthBreakpoint] = useState(1400);
1521
- const chipButtonSizePx = 100;
1522
- const tokenButtonSizePx = 40;
1523
- const open = Boolean(anchorEl);
1524
- const id = open ? "simple-popover" : void 0;
1525
- const defaultActionButtons = useMemo(() => [
1526
- {
1527
- icon: SaveIcon,
1528
- tooltip: "Save Grid Configuration",
1529
- label: "Save View",
1530
- visible: !hiddenActionButtons.includes("saveView"),
1531
- hideLabel: hiddenLabels.includes("saveView"),
1532
- onClick: saveViewClick,
1533
- background: "transparent"
1534
- },
1535
- {
1536
- icon: FavoriteStarIcon,
1537
- tooltip: "Browse Views",
1538
- label: "Views",
1539
- visible: !hiddenActionButtons.includes("views"),
1540
- onClick: viewsClick,
1541
- hideLabel: hiddenLabels.includes("views"),
1542
- iconClassName: classes.icon
1543
- },
1544
- {
1545
- icon: LightbulbIcon,
1546
- tooltip: "Insights",
1547
- label: "Insights",
1548
- visible: !hiddenActionButtons.includes("insights"),
1549
- hideLabel: hiddenLabels.includes("insights"),
1550
- onClick: insightsClick,
1551
- iconClassName: classes.icon
1552
- },
1553
- {
1554
- icon: UploadIcon,
1555
- tooltip: "Import/Export",
1556
- label: "Import/Export",
1557
- visible: !!exportClick && !hiddenActionButtons.includes("importExport"),
1558
- hideLabel: hiddenLabels.includes("importExport"),
1559
- onClick: exportClick,
1560
- iconClassName: classes.icon
1561
- },
1562
- {
1563
- icon: BulletedTreeListIcon,
1564
- tooltip: "Group",
1565
- label: "Group",
1566
- visible: !!groupClick && !hiddenActionButtons.includes("group"),
1567
- hideLabel: hiddenLabels.includes("group"),
1568
- onClick: groupClick,
1569
- iconClassName: classes.icon
1570
- },
1571
- {
1572
- icon: FilterIcon,
1573
- tooltip: "Filter",
1574
- label: "Filter",
1575
- visible: !!filterClick && !hiddenActionButtons.includes("filter"),
1576
- hideLabel: hiddenLabels.includes("filter"),
1577
- onClick: filterClick,
1578
- iconClassName: classes.icon
1579
- },
1580
- {
1581
- icon: TripleColumnIcon,
1582
- tooltip: "Columns",
1583
- label: "Columns",
1584
- visible: !!columnsClick && !hiddenActionButtons.includes("columns"),
1585
- hideLabel: hiddenLabels.includes("columns"),
1586
- onClick: columnsClick,
1587
- iconClassName: classes.icon
1588
- },
1589
- {
1590
- icon: CombineIcon,
1591
- tooltip: "Fit Grid",
1592
- label: "Fit Grid",
1593
- visible: !!fitClick && !hiddenActionButtons.includes("fitGrid"),
1594
- hideLabel: hiddenLabels.includes("fitGrid"),
1595
- onClick: fitClick,
1596
- iconClassName: classes.icon
1597
- },
1598
- {
1599
- icon: ExportIcon,
1600
- tooltip: "Expand Grid",
1601
- label: "Expand Grid",
1602
- visible: !!expandClick && !hiddenActionButtons.includes("expandGrid"),
1603
- hideLabel: hiddenLabels.includes("expandGrid"),
1604
- onClick: expandClick,
1605
- iconClassName: classes.icon
1606
- },
1607
- {
1608
- icon: BlockedIcon,
1609
- tooltip: "Clear Filters",
1610
- label: "Clear Filters",
1611
- visible: !!clearClick && !hiddenActionButtons.includes("clearFilters"),
1612
- hideLabel: hiddenLabels.includes("clearFilters"),
1613
- onClick: clearClick,
1614
- iconClassName: classes.icon
1615
- }
1616
- ], [
1617
- classes.icon,
1618
- clearClick,
1619
- columnsClick,
1620
- expandClick,
1621
- exportClick,
1622
- filterClick,
1623
- fitClick,
1624
- groupClick,
1625
- hiddenActionButtons,
1626
- hiddenLabels,
1627
- insightsClick,
1628
- saveViewClick,
1629
- viewsClick
1630
- ]);
1631
- const handlePopoverClick = (event) => {
1632
- setAnchorEl(event.currentTarget);
1633
- };
1634
- const handlePopoverClose = () => {
1635
- setAnchorEl(null);
1636
- };
1637
- const formatActionButtons = useCallback((buttons) => {
1638
- return buttons.map((button) => {
1639
- if (button.visible === void 0) button.visible = true;
1640
- if (button.hideLabel === void 0) button.hideLabel = false;
1641
- if (button.label === void 0) {
1642
- button.label = button.tooltip ?? "Button";
1643
- button.hideLabel = true;
1644
- }
1645
- if (button.iconClassName === void 0 && button.background === void 0) button.iconClassName = classes.icon;
1646
- return button;
1647
- });
1648
- }, [classes?.icon]);
1649
- useEffect(() => {
1650
- const allActionButtons = formatActionButtons([...defaultActionButtons, ...secondaryActionButtons]);
1651
- const menuButtons = [];
1652
- const numActionButtons = allActionButtons.length - hiddenActionButtons.length;
1653
- const buttonTotalWidth = numActionButtons * chipButtonSizePx - (chipButtonSizePx - tokenButtonSizePx) * hiddenLabels.length;
1654
- const calculatedMedian = Math.floor(buttonTotalWidth / numActionButtons);
1655
- let breakPoint = (calculatedMedian > 70 ? 950 : 900) + buttonTotalWidth;
1656
- const currentWindowWidth = window.innerWidth;
1657
- while (currentWindowWidth < breakPoint && allActionButtons.length > 0) {
1658
- const movedAction = allActionButtons.pop();
1659
- menuButtons.push(movedAction);
1660
- breakPoint -= calculatedMedian;
1661
- }
1662
- setActionButtonMedianPx(calculatedMedian);
1663
- setActionButtons(allActionButtons);
1664
- setMenuActionButtons(menuButtons);
1665
- setWindowWidthBreakpoint(breakPoint);
1666
- }, [
1667
- formatActionButtons,
1668
- defaultActionButtons,
1669
- secondaryActionButtons,
1670
- hiddenActionButtons?.length,
1671
- hiddenLabels?.length
1672
- ]);
1673
- useEffect(() => {
1674
- const handleResize = () => {
1675
- let breakPoint = windowWidthBreakpoint;
1676
- let visibleButtons = [...actionButtons];
1677
- let menuButtons = [...menuActionButtons];
1678
- while (window.innerWidth < breakPoint && visibleButtons.length > 0) {
1679
- const movedAction = visibleButtons.pop();
1680
- menuButtons.push(movedAction);
1681
- breakPoint -= actionButtonMedianPx;
1682
- }
1683
- while (window.innerWidth > breakPoint + actionButtonMedianPx && menuButtons.length > 0) {
1684
- const movedAction = menuButtons.pop(0);
1685
- visibleButtons.push(movedAction);
1686
- breakPoint += actionButtonMedianPx;
1687
- }
1688
- setActionButtons(visibleButtons);
1689
- setMenuActionButtons(menuButtons);
1690
- setWindowWidthBreakpoint(breakPoint);
1691
- };
1692
- window.addEventListener("resize", handleResize);
1693
- return () => {
1694
- window.removeEventListener("resize", handleResize);
1695
- };
1696
- }, [
1697
- windowWidthBreakpoint,
1698
- actionButtons,
1699
- menuActionButtons,
1700
- actionButtonMedianPx
1701
- ]);
1702
- const handleCustomKeyDown = (event) => {
1703
- if (onSearchKeyDown) {
1704
- if (event.key === "Enter") onSearchKeyDown();
1705
- }
1706
- };
1707
- return /* @__PURE__ */ React.createElement("div", { className: classes.root }, /* @__PURE__ */ React.createElement("div", { className: classes.title }, title && /* @__PURE__ */ React.createElement(Typography, {
1708
- variant: "h6",
1709
- style: {
1710
- overflow: "hidden",
1711
- whiteSpace: "nowrap",
1712
- textOverflow: "ellipsis"
1713
- }
1714
- }, " ", title, " "), !hideSearchBar && /* @__PURE__ */ React.createElement("div", { style: {
1715
- flex: 1,
1716
- marginLeft: 16,
1717
- marginRight: 16,
1718
- marginTop: -16,
1719
- maxWidth: 300
1720
- } }, /* @__PURE__ */ React.createElement(AmbientTextField, {
1721
- title,
1722
- onChange,
1723
- onKeyDown: handleCustomKeyDown,
1724
- InputProps: {
1725
- type: "search",
1726
- startAdornment: /* @__PURE__ */ React.createElement(InputAdornment, { position: "start" }, /* @__PURE__ */ React.createElement(SearchIcon, null))
1727
- }
1728
- }))), /* @__PURE__ */ React.createElement("div", { className: classes.controls }, actionButtons.map((button) => button.visible && (button.hideLabel ? /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1729
- id: "udpRecord-GridPrimaryBar-Token-" + button.label.replace(/ /g, "-"),
1730
- udprecordid: "udpRecord-GridPrimaryBar-Token-" + button.label.replace(/ /g, "-"),
1731
- icon: button.icon ?? AppIconDefaultIcon,
1732
- tooltip: button.tooltip,
1733
- onClick: button.onClick,
1734
- ariaLabel: button.label,
1735
- iconClassName: button.iconClassName
1736
- }) : /* @__PURE__ */ React.createElement(AmbientChipButton, {
1737
- id: "udpRecord-GridPrimaryBar-Chip-" + button.label.replace(/ /g, "-"),
1738
- udprecordid: "udpRecord-GridPrimaryBar-Chip-" + button.label.replace(/ /g, "-"),
1739
- icon: button.icon ?? AppIconDefaultIcon,
1740
- tooltip: button.tooltip,
1741
- label: button.label,
1742
- onClick: button.onClick,
1743
- background: button.background
1744
- }))), !!menuActionButtons.length && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(AmbientTokenButton, {
1745
- id,
1746
- icon: MoreVerticalIcon,
1747
- tooltip: "More Actions",
1748
- ariaLabel: "More Actions",
1749
- onClick: handlePopoverClick,
1750
- iconClassName: classes.icon
1751
- }), /* @__PURE__ */ React.createElement(Popover, {
1752
- id,
1753
- open,
1754
- anchorEl,
1755
- onClose: handlePopoverClose,
1756
- anchorOrigin: {
1757
- vertical: "bottom",
1758
- horizontal: "right"
1759
- },
1760
- transformOrigin: {
1761
- vertical: "top",
1762
- horizontal: "right"
1763
- }
1764
- }, menuActionButtons.slice(0).reverse().map((button) => {
1765
- if (!button.visible) return null;
1766
- return /* @__PURE__ */ React.createElement(MenuItem, {
1767
- id: "udpRecord-GridPrimaryBar-MenuItem-" + button.label.replace(/ /g, "-"),
1768
- udprecordid: "udpRecord-GridPrimaryBar-MenuItem-" + button.label.replace(/ /g, "-"),
1769
- onClick: button.onClick,
1770
- style: {
1771
- display: "flex",
1772
- justifyContent: "space-between"
1773
- }
1774
- }, /* @__PURE__ */ React.createElement(Typography, null, button.label), /* @__PURE__ */ React.createElement(FluentIcon, {
1775
- component: button.icon ?? AppIconDefaultIcon,
1776
- style: { marginLeft: 7 }
1777
- }));
1778
- })))), onPrimaryActionClick && /* @__PURE__ */ React.createElement(PrimaryActionButton_default, {
1779
- onClick: onPrimaryActionClick,
1780
- id: "udpRecord-GridPrimaryBar-Add",
1781
- udprecordid: "udpRecord-GridPrimaryBar-Add",
1782
- disabled: primaryActionDisabled
1783
- }, /* @__PURE__ */ React.createElement(Typography, { style: { marginLeft: 4 } }, primaryActionLabel ?? "Button"), /* @__PURE__ */ React.createElement(FluentIcon, {
1784
- style: { marginLeft: 7 },
1785
- component: primaryActionIcon ?? AppIconDefaultIcon
1786
- })));
1787
- };
1788
- GridPrimaryBar.propTypes = {
1789
- title: PropTypes.string,
1790
- children: PropTypes.node,
1791
- onChange: PropTypes.func,
1792
- fitClick: PropTypes.func,
1793
- expandClick: PropTypes.func,
1794
- clearClick: PropTypes.func,
1795
- exportClick: PropTypes.func,
1796
- insightsClick: PropTypes.func,
1797
- filterClick: PropTypes.func,
1798
- columnsClick: PropTypes.func,
1799
- groupClick: PropTypes.func,
1800
- hideSearchBar: PropTypes.bool,
1801
- secondaryActionButtons: PropTypes.arrayOf(PropTypes.object),
1802
- hiddenActionButtons: PropTypes.arrayOf(PropTypes.oneOf([
1803
- "saveView",
1804
- "views",
1805
- "insights",
1806
- "importExport",
1807
- "group",
1808
- "filter",
1809
- "columns",
1810
- "fitGrid",
1811
- "expandGrid",
1812
- "clearFilters"
1813
- ])),
1814
- hiddenLabels: PropTypes.arrayOf(PropTypes.oneOf([
1815
- "saveView",
1816
- "views",
1817
- "insights",
1818
- "importExport",
1819
- "group",
1820
- "filter",
1821
- "columns",
1822
- "fitGrid",
1823
- "expandGrid",
1824
- "clearFilters"
1825
- ])),
1826
- onPrimaryActionClick: PropTypes.func,
1827
- primaryActionLabel: PropTypes.string,
1828
- primaryActionIcon: PropTypes.elementType
1829
- };
1830
-
1831
- //#endregion
1832
- //#region src/UI/feedback/FluentDialog.jsx
1833
- const useStyles$8 = makeStyles((theme) => ({
1834
- root: {},
1835
- paper: {
1836
- borderRadius: 2,
1837
- borderTop: (props) => props.header && `4px solid ${theme.palette.secondary.main}`
1838
- },
1839
- title: { color: (props) => props.header && theme.palette.secondary.main },
1840
- actions: {
1841
- marginBottom: 0,
1842
- marginRight: 0,
1843
- padding: 0
1844
- },
1845
- button: {
1846
- borderRadius: 0,
1847
- padding: "calc(.875rem - 3px) 23px calc(.875rem - 3px) 15px",
1848
- textTransform: "none"
1849
- },
1850
- dialogContent: {
1851
- height: (props) => props.dialogContentHeight || "auto",
1852
- width: (props) => props.dialogContentWidth || "auto"
1853
- },
1854
- dialogLeftBorder: {
1855
- position: "absolute",
1856
- left: 0,
1857
- top: 0,
1858
- bottom: 0,
1859
- width: theme.spacing(1),
1860
- backgroundColor: (props) => props.dialogLeftBorderColor ?? theme.palette.primary.main
1861
- }
1862
- }));
1863
- const FluentDialog = (props) => {
1864
- const classes = useStyles$8(props);
1865
- const { title, message, actionOne, actionTwo, actionThree, labelOne, labelTwo, labelThree, open, handleClose, ariaLabelledby, ariaDescribedby, titleId, descriptionId, children, buttonOneHidden = false, buttonTwoHidden = false, buttonThreeHidden = true, disableOne, disableTwo, disableThree, progress, enableLeftBorderStyling = false,...otherProps } = props;
1866
- return /* @__PURE__ */ React.createElement(Dialog, {
1867
- open,
1868
- onClose: handleClose,
1869
- "aria-labelledby": ariaLabelledby,
1870
- "aria-describedby": ariaDescribedby,
1871
- ...otherProps,
1872
- classes: { paper: classes.paper }
1873
- }, /* @__PURE__ */ React.createElement("div", { className: enableLeftBorderStyling ? classes.dialogLeftBorder : "" }), /* @__PURE__ */ React.createElement(DialogTitle, {
1874
- className: classes.title,
1875
- id: titleId
1876
- }, title), /* @__PURE__ */ React.createElement(DialogContent, { className: classes.dialogContent }, /* @__PURE__ */ React.createElement(DialogContentText, { id: descriptionId }, message), children), /* @__PURE__ */ React.createElement(DialogActions, {
1877
- className: classes.actions,
1878
- disableSpacing: true
1879
- }, !buttonThreeHidden && /* @__PURE__ */ React.createElement(Button, {
1880
- id: "udpRecord-FluentDialog-Confirm",
1881
- udprecordid: "udpRecord-FluentDialog-Confirm",
1882
- onClick: actionThree,
1883
- color: "secondary",
1884
- disabled: disableThree,
1885
- className: classes.button
1886
- }, labelThree), !buttonTwoHidden && /* @__PURE__ */ React.createElement(Button, {
1887
- id: "udpRecord-FluentDialog-Confirm",
1888
- udprecordid: "udpRecord-FluentDialog-Confirm",
1889
- onClick: actionTwo,
1890
- color: "secondary",
1891
- disabled: disableTwo,
1892
- className: classes.button
1893
- }, labelTwo), !buttonOneHidden && /* @__PURE__ */ React.createElement(PrimaryActionButton, {
1894
- id: "udpRecord-FluentDialog-Cancel",
1895
- udprecordid: "udpRecord-FluentDialog-Cancel",
1896
- disabled: disableOne,
1897
- onClick: actionOne
1898
- }, labelOne)), progress && /* @__PURE__ */ React.createElement(LinearProgress, {
1899
- color: "secondary",
1900
- value: progress,
1901
- ...otherProps
1902
- }));
1903
- };
1904
-
1905
- //#endregion
1906
- //#region src/utilities/aggrid/GridFunctions.js
1907
- const useGridFormat = () => {
1908
- const gridFormat = (gridApi, type) => {
1909
- type === "expand" && gridApi.expandAll();
1910
- type === "collapse" && gridApi.collapseAll();
1911
- type === "resize" && gridApi.sizeColumnsToFit();
1912
- };
1913
- return [gridFormat];
1914
- };
1915
- const useGridClear = () => {
1916
- const gridClear = (gridApi, gridColumnApi) => {
1917
- gridColumnApi.setRowGroupColumns([]);
1918
- gridApi.setFilterModel(null);
1919
- gridApi.setQuickFilter("");
1920
- gridApi.sizeColumnsToFit();
1921
- gridColumnApi.resetColumnState();
1922
- };
1923
- return [gridClear];
1924
- };
1925
- const useQuickFilter = () => {
1926
- const quickFilter = (gridApi, event) => {
1927
- gridApi.setQuickFilter(event?.target.value);
1928
- };
1929
- return [quickFilter];
1930
- };
1931
- const useExport = () => {
1932
- const gridExport = (gridApi, type) => {
1933
- type === "excel" && gridApi.exportDataAsExcel();
1934
- type === "csv" && gridApi.exportDataAsCsv();
1935
- };
1936
- return [gridExport];
1937
- };
1938
- const saveGridState = async (gridId, gridApi, gridColumnApi, execute) => {
1939
- const columnState = gridColumnApi?.getColumnState();
1940
- const columnGroupState = gridColumnApi?.getColumnGroupState();
1941
- const sortModel = gridApi.getSortModel();
1942
- const filterModel = gridApi.getFilterModel();
1943
- const isPivotMode = gridColumnApi.isPivotMode();
1944
- const gridState = [];
1945
- const columnGridConfiguration = {
1946
- gridStateTypeId: GridStateTypeEnums.Column,
1947
- gridId,
1948
- values: JSON.stringify(columnState)
1949
- };
1950
- const columnGroupGridConfiguration = {
1951
- gridStateTypeId: GridStateTypeEnums.Column_Group,
1952
- gridId,
1953
- values: JSON.stringify(columnGroupState)
1954
- };
1955
- const columnSortGridConfiguration = {
1956
- gridStateTypeId: GridStateTypeEnums.Column_Sort,
1957
- gridId,
1958
- values: JSON.stringify(sortModel)
1959
- };
1960
- const columnFilterGridConfiguration = {
1961
- gridStateTypeId: GridStateTypeEnums.Column_Filter,
1962
- gridId,
1963
- values: JSON.stringify(filterModel)
1964
- };
1965
- const pivotGridConfiguration = {
1966
- gridStateTypeId: GridStateTypeEnums.Pivot_Mode,
1967
- gridId,
1968
- values: JSON.stringify(isPivotMode)
1969
- };
1970
- gridState.push(columnGridConfiguration);
1971
- gridState.push(columnGroupGridConfiguration);
1972
- gridState.push(columnSortGridConfiguration);
1973
- gridState.push(columnFilterGridConfiguration);
1974
- gridState.push(pivotGridConfiguration);
1975
- return await execute({ data: gridState });
1976
- };
1977
- const getGridState = (gridApi, gridColumnApi, gridId) => {
1978
- const columnState = gridColumnApi?.getColumnState();
1979
- const columnGroupState = gridColumnApi?.getColumnGroupState();
1980
- const sortModel = gridApi.getSortModel();
1981
- const filterModel = gridApi.getFilterModel();
1982
- const isPivotMode = gridColumnApi.isPivotMode();
1983
- const gridState = [];
1984
- const columnGridConfiguration = {
1985
- gridStateTypeId: GridStateTypeEnums.Column,
1986
- gridId,
1987
- values: JSON.stringify(columnState)
1988
- };
1989
- const columnGroupGridConfiguration = {
1990
- gridStateTypeId: GridStateTypeEnums.Column_Group,
1991
- gridId,
1992
- values: JSON.stringify(columnGroupState)
1993
- };
1994
- const columnSortGridConfiguration = {
1995
- gridStateTypeId: GridStateTypeEnums.Column_Sort,
1996
- gridId,
1997
- values: JSON.stringify(sortModel)
1998
- };
1999
- const columnFilterGridConfiguration = {
2000
- gridStateTypeId: GridStateTypeEnums.Column_Filter,
2001
- gridId,
2002
- values: JSON.stringify(filterModel)
2003
- };
2004
- const pivotGridConfiguration = {
2005
- gridStateTypeId: GridStateTypeEnums.Pivot_Mode,
2006
- gridId,
2007
- values: JSON.stringify(isPivotMode)
2008
- };
2009
- gridState.push(columnGridConfiguration);
2010
- gridState.push(columnGroupGridConfiguration);
2011
- gridState.push(columnSortGridConfiguration);
2012
- gridState.push(columnFilterGridConfiguration);
2013
- gridState.push(pivotGridConfiguration);
2014
- return gridState;
2015
- };
2016
- const deleteGridState = async (gridApi, gridColumnApi, deleteGridState$1) => {
2017
- clearGridState(gridApi, gridColumnApi);
2018
- return await deleteGridState$1();
2019
- };
2020
- const clearGridState = (gridApi, gridColumnApi) => {
2021
- gridColumnApi.resetColumnState();
2022
- gridColumnApi.resetColumnGroupState();
2023
- gridApi.setFilterModel({});
2024
- gridApi.setSortModel([]);
2025
- gridColumnApi.setPivotMode(false);
2026
- gridApi.sizeColumnsToFit();
2027
- };
2028
- const onFirstDataRendered = (gridApi, gridColumnApi, gridStates) => {
2029
- if (gridStates && gridStates.length) gridStates.forEach((state) => {
2030
- switch (state.gridStateTypeId) {
2031
- case GridStateTypeEnums.Column:
2032
- gridColumnApi.setColumnState(JSON.parse(state.values));
2033
- break;
2034
- case GridStateTypeEnums.Column_Group:
2035
- gridColumnApi.setColumnGroupState(JSON.parse(state.values));
2036
- break;
2037
- case GridStateTypeEnums.Pivot_Mode:
2038
- gridColumnApi.setPivotMode(JSON.parse(state.values));
2039
- break;
2040
- case GridStateTypeEnums.Column_Sort:
2041
- gridApi.setSortModel(JSON.parse(state.values));
2042
- break;
2043
- case GridStateTypeEnums.Column_Filter:
2044
- gridApi.setFilterModel(JSON.parse(state.values));
2045
- break;
2046
- default: break;
2047
- }
2048
- });
2049
- };
2050
-
2051
- //#endregion
2052
- //#region src/UI/utilityDisplay/SaveViewFormDialog.jsx
2053
- const useStyles$7 = makeStyles((theme) => ({
2054
- root: {},
2055
- saveForm: {
2056
- minWidth: 450,
2057
- paddingLeft: theme.spacing(2),
2058
- paddingRight: theme.spacing(2)
2059
- },
2060
- column: {
2061
- flex: 1,
2062
- paddingLeft: theme.spacing(2),
2063
- paddingRight: theme.spacing(2)
2064
- },
2065
- divider: {
2066
- backgroundColor: "grey",
2067
- color: "grey",
2068
- width: 2,
2069
- height: "100%"
2070
- },
2071
- infoHeader: { color: "grey" }
2072
- }));
2073
- /**
2074
- * @param {PropTypes.InferProps<typeof SaveViewFormDialog.propTypes>} props
2075
- */
2076
- const SaveViewFormDialog = (props) => {
2077
- const { handleErrorSnackbar, handleSuccessSnackbar } = useHandleAxiosSnackbar();
2078
- const { open, handleClose, tenant, application, user, refetchViews, gApi, gcApi, gridId, domain, apiCatalogId } = props;
2079
- const { t } = useTranslation();
2080
- const classes = useStyles$7(props);
2081
- const saveViewFormRef = useRef(null);
2082
- const triggerSaveView = useCallback(() => {
2083
- saveViewFormRef.current.handleSubmit();
2084
- }, [saveViewFormRef]);
2085
- const saveView = async (values) => {
2086
- const data = {
2087
- data: {
2088
- gridView: {
2089
- Name: values.name,
2090
- GridViewVisibilityTypeId: values.private ? VisibilityTypeEnums.Private : VisibilityTypeEnums.Public,
2091
- isDefault: 0,
2092
- tenantId: user?.currentTenantId,
2093
- userId: user?.id,
2094
- gridId,
2095
- domain,
2096
- apiCatalogId
2097
- },
2098
- gridConfigurations: getGridState(gApi, gcApi, gridId)
2099
- },
2100
- method: "POST"
2101
- };
2102
- handleClose();
2103
- await apiMutate$1(ConfigService.tenantV2ApiUrl, `GridView/createGridView`, data).then((response) => {
2104
- handleSuccessSnackbar(t("View Saved"));
2105
- refetchViews();
2106
- }).catch((error) => {
2107
- console.log(error);
2108
- handleErrorSnackbar(error, t("Failed to Save View"));
2109
- });
2110
- };
2111
- return /* @__PURE__ */ React.createElement(FluentDialog, {
2112
- title: t("Save New View"),
2113
- open,
2114
- handleClose,
2115
- labelOne: t("Save View"),
2116
- labelTwo: t("Cancel"),
2117
- actionOne: triggerSaveView,
2118
- actionTwo: handleClose
2119
- }, /* @__PURE__ */ React.createElement(Box, { display: "flex" }, /* @__PURE__ */ React.createElement("div", { className: classes.column }, /* @__PURE__ */ React.createElement(Typography, {
2120
- className: classes.infoHeader,
2121
- align: "left"
2122
- }, t("Tenant")), /* @__PURE__ */ React.createElement(Typography, {
2123
- variant: "subtitle2",
2124
- align: "left"
2125
- }, tenant ?? "--")), /* @__PURE__ */ React.createElement(Divider, {
2126
- flexItem: true,
2127
- orientation: "vertical"
2128
- }), /* @__PURE__ */ React.createElement("div", { className: classes.column }, /* @__PURE__ */ React.createElement(Typography, {
2129
- className: classes.infoHeader,
2130
- align: "left"
2131
- }, t("Application")), /* @__PURE__ */ React.createElement(Typography, {
2132
- variant: "subtitle2",
2133
- align: "left"
2134
- }, application ?? "--")), /* @__PURE__ */ React.createElement(Divider, {
2135
- flexItem: true,
2136
- orientation: "vertical"
2137
- }), /* @__PURE__ */ React.createElement("div", { className: classes.column }, /* @__PURE__ */ React.createElement(Typography, {
2138
- className: classes.infoHeader,
2139
- align: "left"
2140
- }, t("Entity")), /* @__PURE__ */ React.createElement(Typography, {
2141
- variant: "subtitle2",
2142
- align: "left"
2143
- }, domain ?? "--"))), /* @__PURE__ */ React.createElement("div", { className: classes.saveForm }, /* @__PURE__ */ React.createElement(Form, {
2144
- onSubmit: saveView,
2145
- ref: saveViewFormRef
2146
- }, /* @__PURE__ */ React.createElement(Field, {
2147
- type: "text",
2148
- component: AmbientTextField,
2149
- name: "name",
2150
- id: "name",
2151
- label: t("Name"),
2152
- fullWidth: true,
2153
- required: true,
2154
- style: {
2155
- marginBottom: 20,
2156
- marginTop: 10
2157
- }
2158
- }), /* @__PURE__ */ React.createElement(FormControlLabel, {
2159
- control: /* @__PURE__ */ React.createElement(Field, {
2160
- component: Switch,
2161
- name: "private",
2162
- id: "private",
2163
- defaultValue: false,
2164
- type: "checkbox"
2165
- }),
2166
- label: t("Private"),
2167
- labelPlacement: "end"
2168
- }))));
2169
- };
2170
- SaveViewFormDialog.propTypes = {
2171
- open: PropTypes.bool.isRequired,
2172
- handleClose: PropTypes.func.isRequired,
2173
- tenant: PropTypes.string,
2174
- application: PropTypes.string,
2175
- entity: PropTypes.string,
2176
- user: PropTypes.object,
2177
- columnDefsValues: PropTypes.array,
2178
- refetchViews: PropTypes.func,
2179
- gApi: PropTypes.object,
2180
- gcApi: PropTypes.object,
2181
- setSelectedView: PropTypes.func
2182
- };
2183
-
2184
- //#endregion
2185
- //#region src/hooks/useDynamicListCalculation.jsx
2186
- /**
2187
- * A custom React hook for calculating the number of visible children in a dynamic list based on container width and child widths.
2188
- *
2189
- * @returns {object} An object containing the `calculateNumberOfVisibleChildren` function.
2190
- *
2191
- * @example
2192
- * // Basic usage:
2193
- * const parentRef = useRef();
2194
- * const childRefs = useRef([]);
2195
- * const { calculateNumberOfVisibleChildren } = useDynamicListCalculation();
2196
- * const maxVisibleChildren = calculateNumberOfVisibleChildren(parentRef, childRefs);
2197
-
2198
- * @example
2199
- * // Excluding a buffer for less white space:
2200
- * const parentRef = useRef();
2201
- * const childRefs = useRef([]);
2202
- * const { calculateNumberOfVisibleChildren } = useDynamicListCalculation();
2203
- * const maxVisibleChildren = calculateNumberOfVisibleChildren(parentRef, childRefs, false);
2204
- */
2205
- const useDynamicListCalculation = () => {
2206
- const [averageChildWidth, setAverageChildWidth] = useState(0);
2207
- const [previousChildRefs, setPreviousChildRefs] = useState([]);
2208
- return { calculateNumberOfVisibleChildren: useCallback((parentRef, childRefs, includeBuffer = true) => {
2209
- if (!parentRef.current || !childRefs.current) return;
2210
- const containerWidth = parentRef.current.getBoundingClientRect().width ?? 0;
2211
- if (!averageChildWidth || previousChildRefs !== childRefs.current) {
2212
- setAverageChildWidth(childRefs.current.map((ref) => ref && typeof ref?.getBoundingClientRect === "function" ? ref.getBoundingClientRect().width : 0).reduce((acc, curr) => acc + curr, 0) / childRefs.current.length);
2213
- setPreviousChildRefs(childRefs.current);
2214
- }
2215
- const maxVisibleChildren = Math.floor(containerWidth / averageChildWidth);
2216
- if (includeBuffer) return maxVisibleChildren - 1;
2217
- return maxVisibleChildren;
2218
- }, [averageChildWidth, previousChildRefs]) };
2219
- };
2220
-
2221
- //#endregion
2222
- //#region src/UI/containers/DynamicContainerWithMenu.jsx
2223
- const useStyles$6 = makeStyles$1((theme) => ({ filterChipMenuIcon: {
2224
- background: theme.palette.common.grey,
2225
- padding: theme.spacing(1),
2226
- color: theme.palette.primary.main
2227
- } }));
2228
- const DynamicContainerWithMenu = forwardRef((props, ref) => {
2229
- const { children, className, menuButton, menuIconClassName, includeBuffer = true } = props;
2230
- const classes = useStyles$6();
2231
- const { calculateNumberOfVisibleChildren } = useDynamicListCalculation();
2232
- const modifiedMenuButton = useMemo(() => {
2233
- if (!menuButton) return null;
2234
- return cloneElement(menuButton, {
2235
- onClick: (event) => {
2236
- menuButton.props.onClick(event);
2237
- handlePopoverClick(event);
2238
- },
2239
- ...menuButton.props
2240
- }, menuButton.props.children);
2241
- }, [menuButton]);
2242
- const [allChildren, setAllChildren] = useState([]);
2243
- const [visibleChildren, setVisibleChildren] = useState([]);
2244
- const [menuChildren, setMenuChildren] = useState([]);
2245
- const [anchorEl, setAnchorEl] = useState(null);
2246
- const open = Boolean(anchorEl);
2247
- const id = open ? "simple-popover" : void 0;
2248
- const containerRef = useRef(ref);
2249
- const outerContainerRef = useRef(null);
2250
- const childrenRefs = useRef([]);
2251
- const handlePopoverClick = (event) => {
2252
- setAnchorEl(event.currentTarget);
2253
- };
2254
- const handlePopoverClose = () => {
2255
- setAnchorEl(null);
2256
- };
2257
- const handleSizeChange = useCallback(() => {
2258
- const maxVisibleChildren = calculateNumberOfVisibleChildren(containerRef, childrenRefs, includeBuffer);
2259
- const visibleChildren$1 = allChildren.slice(0, maxVisibleChildren);
2260
- const menuChildren$1 = allChildren.slice(maxVisibleChildren);
2261
- setVisibleChildren(visibleChildren$1);
2262
- setMenuChildren(menuChildren$1);
2263
- }, [
2264
- containerRef,
2265
- allChildren,
2266
- childrenRefs,
2267
- calculateNumberOfVisibleChildren,
2268
- includeBuffer
2269
- ]);
2270
- const handleMenuItemClick = useCallback((child) => {
2271
- if (child.props.onClick && typeof child.props.onClick === "function") child.props.onClick();
2272
- let children$1 = child.props.children;
2273
- while (children$1) {
2274
- if (Array.isArray(children$1) && children$1.length > 0) children$1.forEach((child$1) => {
2275
- if (child$1.props.onClick && typeof child$1.props.onClick === "function") child$1.props.onClick();
2276
- });
2277
- else if (typeof children$1 === "object") {
2278
- if (children$1.props.onClick && typeof children$1.props.onClick === "function") children$1.props.onClick();
2279
- }
2280
- children$1 = children$1.props.children;
2281
- }
2282
- handlePopoverClose();
2283
- }, []);
2284
- useEffect(() => {
2285
- const arrayChildren = Children.toArray(children);
2286
- setAllChildren(arrayChildren);
2287
- setVisibleChildren(arrayChildren);
2288
- }, [children]);
2289
- useLayoutEffect(handleSizeChange, [handleSizeChange]);
2290
- useLayoutEffect(() => {
2291
- window.addEventListener("resize", handleSizeChange);
2292
- const resizeObserver = new ResizeObserver(handleSizeChange);
2293
- if (outerContainerRef.current) resizeObserver.observe(outerContainerRef.current);
2294
- return () => {
2295
- window.removeEventListener("resize", handleSizeChange);
2296
- resizeObserver.disconnect();
2297
- };
2298
- }, [handleSizeChange, outerContainerRef]);
2299
- return /* @__PURE__ */ React.createElement("div", {
2300
- ref: outerContainerRef,
2301
- style: {
2302
- width: "100%",
2303
- overflow: "hidden"
2304
- }
2305
- }, /* @__PURE__ */ React.createElement("div", {
2306
- className,
2307
- ref: containerRef,
2308
- style: {
2309
- display: "flex",
2310
- flexWrap: "noWrap",
2311
- overflow: "hidden",
2312
- flexGrow: 1
2313
- }
2314
- }, visibleChildren && Children.map(visibleChildren, (child, index) => {
2315
- return cloneElement(child, {
2316
- ref: (ref$1) => childrenRefs.current[index] = ref$1,
2317
- ...child.props
2318
- }, child.props.children);
2319
- }), menuChildren && menuChildren.length > 0 && /* @__PURE__ */ React.createElement("div", null, modifiedMenuButton ?? /* @__PURE__ */ React.createElement(AmbientTokenButton, {
2320
- id,
2321
- icon: MoreVerticalIcon,
2322
- tooltip: "Additional Filter Values",
2323
- ariaLabel: "Additional Filter Values",
2324
- onClick: handlePopoverClick,
2325
- iconClassName: menuIconClassName ?? classes.filterChipMenuIcon
2326
- }), /* @__PURE__ */ React.createElement(Popover, {
2327
- id,
2328
- open,
2329
- anchorEl,
2330
- onClose: handlePopoverClose,
2331
- anchorOrigin: {
2332
- vertical: "bottom",
2333
- horizontal: "right"
2334
- },
2335
- transformOrigin: {
2336
- vertical: "top",
2337
- horizontal: "right"
2338
- }
2339
- }, Children.map(menuChildren, (child, index) => {
2340
- return /* @__PURE__ */ React.createElement(MenuItem, { onClick: () => handleMenuItemClick(child) }, cloneElement(child, { ...child.props }, child.props.children));
2341
- })))));
2342
- });
2343
- DynamicContainerWithMenu.displayName = "DynamicContainerWithMenu";
2344
- DynamicContainerWithMenu.propTypes = {
2345
- children: PropTypes.node.isRequired,
2346
- className: PropTypes.string,
2347
- menuButton: PropTypes.node,
2348
- menuIconClassName: PropTypes.string,
2349
- includeBuffer: PropTypes.bool
2350
- };
2351
-
2352
- //#endregion
2353
- //#region src/UI/utilityDisplay/ChipSection.jsx
2354
- const useStyles$5 = makeStyles$1((theme) => ({
2355
- wrapper: {
2356
- display: "flex",
2357
- gap: theme.spacing(1),
2358
- flexWrap: "noWrap",
2359
- backgroundColor: `${theme.palette.secondary.light}80`,
2360
- alignItems: "center",
2361
- flexGrow: 1,
2362
- width: "100%"
2363
- },
2364
- chipHolder: {
2365
- display: "flex",
2366
- gap: theme.spacing(1),
2367
- flexWrap: "noWrap",
2368
- backgroundColor: `${theme.palette.secondary.light}80`,
2369
- alignItems: "center",
2370
- overflow: "scroll",
2371
- "&::-webkit-scrollbar": { display: "none" },
2372
- flexGrow: 1
2373
- },
2374
- viewChip: {
2375
- backgroundColor: theme.palette.secondary.main,
2376
- color: "white",
2377
- maxWidth: "150px",
2378
- transition: "opacity 0.3s ease",
2379
- marginLeft: theme.spacing(1)
2380
- },
2381
- menuItem: { backgroundColor: "white" },
2382
- filterChipMenuIcon: {
2383
- background: theme.palette.common.grey,
2384
- padding: theme.spacing(1),
2385
- color: theme.palette.primary.main
2386
- },
2387
- additionalFilterChip: {},
2388
- KPI: {
2389
- marginLeft: "auto",
2390
- display: "flex",
2391
- gap: theme.spacing(1),
2392
- color: "grey",
2393
- width: "auto"
2394
- },
2395
- kpiValue: {
2396
- color: "black",
2397
- fontSize: "1.1em"
2398
- },
2399
- kpiItem: {
2400
- display: "flex",
2401
- justifyContent: "center",
2402
- width: "max-content"
2403
- },
2404
- kpiLabel: {
2405
- width: "max-content",
2406
- marginRight: theme.spacing(1)
2407
- },
2408
- clickedChip: {
2409
- backgroundColor: theme.palette.primary.main,
2410
- color: "white",
2411
- maxWidth: "150px"
2412
- },
2413
- filterChipLabel: {
2414
- color: theme.palette.text.primary,
2415
- whiteSpace: "nowrap",
2416
- marginRight: theme.spacing(1)
2417
- },
2418
- filterChipValue: {
2419
- color: theme.palette.text.secondary,
2420
- whiteSpace: "nowrap"
2421
- }
2422
- }));
2423
- const ChipSection = (props) => {
2424
- const { filterChips = [], viewChips = [], additionalFilterChips = [], hideKpiSection = false, kpiValues = [], maxKPIsDisplayed = 4, handleDelete } = props;
2425
- const classes = useStyles$5();
2426
- const chipRefs = useRef([]);
2427
- const chipSectionContainerRef = useRef(null);
2428
- const viewChipsContainerRef = useRef(null);
2429
- const filterChipsContainerRef = useRef(null);
2430
- const additionalFilterChipsContainerRef = useRef(null);
2431
- const kpiContainerRef = useRef(null);
2432
- const [selectedFilterChip, setSelectedFilterChip] = useState(null);
2433
- const abbrNum = (number, decPlaces) => {
2434
- if (typeof number === "string" && !isNaN(Number(number))) number = Number(number);
2435
- else if (typeof number !== "number") throw new Error("The input must be a number or a string that can be converted to a number.");
2436
- if (typeof decPlaces !== "number") return null;
2437
- decPlaces = Math.pow(10, decPlaces);
2438
- let abbrev = [
2439
- "k",
2440
- "m",
2441
- "b",
2442
- "t"
2443
- ];
2444
- for (let i = abbrev.length - 1; i >= 0; i--) {
2445
- let size = Math.pow(10, (i + 1) * 3);
2446
- if (size <= number) {
2447
- number = Math.round(number * decPlaces / size) / decPlaces;
2448
- if (number === 1e3 && i < abbrev.length - 1) {
2449
- number = 1;
2450
- i++;
2451
- }
2452
- number += abbrev[i];
2453
- break;
2454
- }
2455
- }
2456
- return number;
2457
- };
2458
- const isEmpty = (array) => Array.isArray(array) && array.length === 0;
2459
- const abbreviateLabel = (label) => {
2460
- const maxLength = 10;
2461
- if (label.length > maxLength) return label.slice(0, maxLength - 3) + "...";
2462
- else return null;
2463
- };
2464
- const handleFilterChipToggle = (chip) => {
2465
- setSelectedFilterChip(chip);
2466
- if (typeof chip.onToggle === "function") chip.onToggle();
2467
- };
2468
- const handleFilterChipUntoggle = () => {
2469
- if (selectedFilterChip) {
2470
- if (typeof selectedFilterChip.onUntoggle === "function") selectedFilterChip.onUntoggle();
2471
- setSelectedFilterChip(null);
2472
- }
2473
- };
2474
- return /* @__PURE__ */ React.createElement("div", {
2475
- ref: chipSectionContainerRef,
2476
- className: classes.wrapper,
2477
- style: { display: [
2478
- kpiValues,
2479
- additionalFilterChips,
2480
- viewChips,
2481
- filterChips
2482
- ].every((arr) => arr.length === 0) ? "none" : "flex" }
2483
- }, /* @__PURE__ */ React.createElement("div", { className: classes.chipHolder }, /* @__PURE__ */ React.createElement("div", { ref: viewChipsContainerRef }, viewChips.map((chip, index) => /* @__PURE__ */ React.createElement(Chip$1, {
2484
- onDelete: () => handleDelete("view", index),
2485
- key: index,
2486
- label: chip.label,
2487
- className: classes.viewChip,
2488
- icon: /* @__PURE__ */ React.createElement(StarIcon, null),
2489
- size: "small"
2490
- }))), !isEmpty(viewChips) && !isEmpty(filterChips) && /* @__PURE__ */ React.createElement(Divider$1, {
2491
- orientation: "vertical",
2492
- flexItem: true
2493
- }), !isEmpty(filterChips) && /* @__PURE__ */ React.createElement(DynamicContainerWithMenu, {
2494
- className: classes.chipHolder,
2495
- ref: filterChipsContainerRef
2496
- }, selectedFilterChip && /* @__PURE__ */ React.createElement(Chip$1, {
2497
- onDelete: handleFilterChipUntoggle,
2498
- label: selectedFilterChip.label,
2499
- className: classes.viewChip,
2500
- size: "small"
2501
- }), filterChips.map((chip, index) => {
2502
- if (selectedFilterChip && chip.id === selectedFilterChip.id) return null;
2503
- return /* @__PURE__ */ React.createElement(Tooltip$1, { title: chip.label }, /* @__PURE__ */ React.createElement(Chip$1, {
2504
- key: index,
2505
- label: /* @__PURE__ */ React.createElement("div", { style: {
2506
- display: "flex",
2507
- flexWrap: "noWrap"
2508
- } }, /* @__PURE__ */ React.createElement(Typography$1, {
2509
- noWrap: true,
2510
- className: chip.value ? classes.filterChipLabel : ""
2511
- }, chip.label), /* @__PURE__ */ React.createElement(Typography$1, {
2512
- noWrap: true,
2513
- className: classes.filterChipValue
2514
- }, chip.value)),
2515
- className: classes.filterChip,
2516
- size: "small",
2517
- onClick: () => handleFilterChipToggle(chip),
2518
- ref: (el) => chipRefs.current[index] = el
2519
- }));
2520
- })), !isEmpty(additionalFilterChips) && !isEmpty(filterChips) && /* @__PURE__ */ React.createElement(Divider$1, {
2521
- orientation: "vertical",
2522
- flexItem: true
2523
- }), /* @__PURE__ */ React.createElement("div", {
2524
- ref: additionalFilterChipsContainerRef,
2525
- style: { display: "flex" }
2526
- }, additionalFilterChips.map((chip, index) => /* @__PURE__ */ React.createElement(Chip$1, {
2527
- variant: "outlined",
2528
- onDelete: () => handleDelete("additionalFilter", index),
2529
- key: index,
2530
- label: chip.label,
2531
- className: classes.additionalFilterChip,
2532
- size: "small"
2533
- })))), !hideKpiSection && /* @__PURE__ */ React.createElement("div", {
2534
- className: classes.KPI,
2535
- ref: kpiContainerRef
2536
- }, kpiValues.slice(0, 4).map((kpi, index) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
2537
- className: classes.kpiItem,
2538
- id: index
2539
- }, /* @__PURE__ */ React.createElement("span", { className: classes.kpiLabel }, abbreviateLabel(kpi.label) && /* @__PURE__ */ React.createElement(Tooltip$1, {
2540
- title: kpi.label,
2541
- arrow: true
2542
- }, /* @__PURE__ */ React.createElement(Typography$1, { noWrap: true }, /* @__PURE__ */ React.createElement("span", null, kpi.label, ":"))) || /* @__PURE__ */ React.createElement(React.Fragment, null, kpi.label)), /* @__PURE__ */ React.createElement("span", { className: classes.kpiValue }, /* @__PURE__ */ React.createElement(Tooltip$1, {
2543
- title: kpi.value,
2544
- arrow: true
2545
- }, /* @__PURE__ */ React.createElement("span", null, abbrNum(kpi.value, 1))))), index !== maxKPIsDisplayed - 1 && /* @__PURE__ */ React.createElement(Divider$1, {
2546
- orientation: "vertical",
2547
- flexItem: true
2548
- })))));
2549
- };
2550
- ChipSection.propTypes = {
2551
- filterChips: PropTypes.arrayOf(PropTypes.shape({
2552
- label: PropTypes.string.isRequired,
2553
- value: PropTypes.string.isRequired
2554
- })),
2555
- viewChips: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string.isRequired })),
2556
- additionalFilterChips: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string.isRequired })),
2557
- hideKpiSection: PropTypes.bool,
2558
- kpiValues: PropTypes.arrayOf(PropTypes.shape({
2559
- label: PropTypes.string.isRequired,
2560
- value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired
2561
- })),
2562
- maxKPIsDisplayed: PropTypes.number,
2563
- handleDelete: PropTypes.func,
2564
- selectedFilterChipsIndex: PropTypes.number,
2565
- setSelectedFilterChipsIndex: PropTypes.func
2566
- };
2567
-
2568
- //#endregion
2569
- //#region src/UI/inputs/buttons/IconButtonWithToolTip.jsx
2570
- const useStyles$4 = makeStyles(() => ({ root: { "&.Mui-disabled": { pointerEvents: "auto" } } }));
2571
- const IconButtonWithTooltip = ({ icon, title, disabled, onClick, className, fluentIconClassName, id, udprecordid,...other }) => {
2572
- const adjustedButtonProps = {
2573
- disabled,
2574
- component: disabled ? "div" : void 0,
2575
- onClick: disabled ? void 0 : onClick
2576
- };
2577
- const classes = useStyles$4();
2578
- return /* @__PURE__ */ React.createElement(Tooltip, { title }, /* @__PURE__ */ React.createElement(IconButton, {
2579
- id,
2580
- udprecordid,
2581
- className: `${className} ${classes.root}`,
2582
- ...other,
2583
- ...adjustedButtonProps
2584
- }, /* @__PURE__ */ React.createElement(FluentIcon, {
2585
- className: fluentIconClassName,
2586
- component: icon
2587
- })));
2588
- };
2589
-
2590
- //#endregion
2591
- //#region src/UI/templates/ui/renderers/ActionsRenderer.jsx
2592
- const useStyles$3 = makeStyles((theme) => ({
2593
- icon: { margin: theme.spacing(.5) },
2594
- iconButtonStyle: {
2595
- width: `${theme.spacing(3)}px !important`,
2596
- height: `${theme.spacing(3)}px !important`,
2597
- background: "#fff",
2598
- borderRadius: 25,
2599
- padding: 6
2600
- },
2601
- circularSkeleton: { borderRadius: "50%" }
2602
- }));
2603
- const ActionItem = memo((props) => {
2604
- const { icon, title, onClick, disabled, businessObjectKey = "" } = props;
2605
- const classes = useStyles$3();
2606
- return /* @__PURE__ */ React.createElement(IconButtonWithTooltip, {
2607
- title,
2608
- className: classes.icon,
2609
- size: "small",
2610
- onClick,
2611
- disabled,
2612
- icon,
2613
- fluentIconClassName: classes.iconButtonStyle,
2614
- id: "udpRecord-ActionsRenderer-" + title,
2615
- udprecordid: "udpRecord-ActionsRenderer-" + title
2616
- });
2617
- });
2618
- const ActionsRenderer = memo((props) => {
2619
- const { data: value, actionList, onClick } = props;
2620
- const classes = useStyles$3();
2621
- const [sheetOpen, setSheetOpen] = useState(false);
2622
- const [sheetItem, setSheetItem] = useState(null);
2623
- const [dialogItem, setDialogItem] = useState(null);
2624
- const [dialogOpen, setDialogOpen] = useState(false);
2625
- const [isLoading, setIsLoading] = useState(false);
2626
- const [sideSheetWidth, setSideSheetWidth] = useState(600);
2627
- const [sideSheetButtonLabel, setSideSheetButtonLabel] = useState("");
2628
- const [sideSheetOnSubmit, setSideSheetOnSubmit] = useState(() => () => console.warn("onSubmit not set"));
2629
- const openSheet = useCallback((sheetView) => {
2630
- setSheetItem(sheetView);
2631
- setSheetOpen(true);
2632
- }, []);
2633
- const openDialog = useCallback((dialogView) => {
2634
- setDialogItem(dialogView);
2635
- setDialogOpen(true);
2636
- }, []);
2637
- const closeSheet = useCallback(() => {
2638
- setSheetOpen(false);
2639
- }, []);
2640
- const closeDialog = useCallback(() => {
2641
- setDialogOpen(false);
2642
- }, []);
2643
- const getSheetView = (actionItem) => {
2644
- if (actionItem.opens === ClickOpenEnums.SideSheet) {
2645
- const valuePropName = actionItem?.view?.properties?.valuePropName;
2646
- if (valuePropName) actionItem.view.properties[valuePropName] = value;
2647
- const closeSideSheetPropName = actionItem?.view?.properties?.closeSideSheetPropName;
2648
- if (closeSideSheetPropName) actionItem.view.properties[closeSideSheetPropName] = closeSheet;
2649
- }
2650
- const properties = actionItem?.view?.properties || {};
2651
- return {
2652
- id: actionItem.id,
2653
- title: actionItem.title || "",
2654
- width: actionItem?.view?.width,
2655
- children: actionItem?.view?.component({
2656
- ...properties,
2657
- setSideSheetWidth,
2658
- setSideSheetButtonLabel,
2659
- setSideSheetOnSubmit
2660
- })
2661
- };
2662
- };
2663
- const getDialogView = (actionItem) => {
2664
- if (actionItem.opens === ClickOpenEnums.Dialog) {
2665
- const handleActionTwo = async () => {
2666
- if (actionItem?.view?.properties?.actionTwo) {
2667
- setIsLoading(true);
2668
- await actionItem?.view?.properties?.actionTwo(value);
2669
- setIsLoading(false);
2670
- }
2671
- closeDialog();
2672
- };
2673
- return {
2674
- id: actionItem.id,
2675
- title: actionItem?.title || "",
2676
- closeDialog,
2677
- message: actionItem?.view?.properties?.message,
2678
- labelOne: actionItem?.view?.properties?.labelOne,
2679
- actionTwo: handleActionTwo,
2680
- labelTwo: actionItem?.view?.properties?.labelTwo
2681
- };
2682
- }
2683
- };
2684
- const displayActions = actionList.map((item, index) => {
2685
- let onClick$1 = () => item.onClick(value);
2686
- let title = item.title;
2687
- let disabled = item.disabled;
2688
- if (item.opens === ClickOpenEnums.SideSheet) {
2689
- const sheetView = getSheetView(item);
2690
- onClick$1 = () => openSheet(sheetView);
2691
- }
2692
- if (item.opens === ClickOpenEnums.Dialog) {
2693
- const dialogView = getDialogView(item);
2694
- onClick$1 = () => openDialog(dialogView);
2695
- }
2696
- if (item.getTitle) title = item.getTitle(value);
2697
- if (item.checkDisabled) disabled = item.checkDisabled(value);
2698
- return /* @__PURE__ */ React.createElement(React.Fragment, null, item.loading && /* @__PURE__ */ React.createElement("div", { style: {
2699
- display: "inline-flex",
2700
- marginRight: 10
2701
- } }, /* @__PURE__ */ React.createElement(Skeleton, {
2702
- className: classes.circularSkeleton,
2703
- width: 24,
2704
- height: 40
2705
- })), !item.loading && /* @__PURE__ */ React.createElement(ActionItem, {
2706
- key: `${item.id}-${index}`,
2707
- title,
2708
- icon: item.icon,
2709
- onClick: onClick$1,
2710
- disabled,
2711
- businessObjectKey: value?.businessObjectKey
2712
- }));
2713
- });
2714
- return /* @__PURE__ */ React.createElement("div", null, displayActions, /* @__PURE__ */ React.createElement(SideSheet, {
2715
- open: sheetOpen,
2716
- onClose: closeSheet,
2717
- title: sheetItem?.title,
2718
- width: sheetItem?.width || 600,
2719
- buttonLabel: sideSheetButtonLabel,
2720
- onSubmit: sideSheetOnSubmit
2721
- }, /* @__PURE__ */ React.createElement("div", null, sheetItem?.children)), /* @__PURE__ */ React.createElement(FluentDialog, {
2722
- open: dialogOpen,
2723
- handleClose: closeDialog,
2724
- title: dialogItem?.title,
2725
- message: dialogItem?.message,
2726
- actionOne: dialogItem?.closeDialog,
2727
- labelOne: dialogItem?.labelOne,
2728
- actionTwo: dialogItem?.actionTwo,
2729
- labelTwo: dialogItem?.labelTwo,
2730
- progress: dialogItem?.isLoading
2731
- }));
2732
- });
2733
- ActionItem.displayName = "ActionItem";
2734
- ActionsRenderer.displayName = "ActionsRenderer";
2735
-
2736
- //#endregion
2737
- //#region src/UI/dataDisplay/HintPanel.jsx
2738
- const useStyles$2 = makeStyles$1((theme) => ({
2739
- hintContainer: { borderLeft: `3px solid ${theme.palette.primary.main}` },
2740
- hintContent: {
2741
- backgroundColor: "#F3F9FE",
2742
- padding: `1rem`
2743
- },
2744
- hideHintButton: {
2745
- border: "none",
2746
- background: "none",
2747
- cursor: "pointer",
2748
- color: "#0B79D0",
2749
- textDecoration: "none"
2750
- },
2751
- hidehelp: {
2752
- display: "flex",
2753
- flexDirection: "column",
2754
- alignItems: "flex-end",
2755
- width: "100%"
2756
- }
2757
- }));
2758
- const HintPanel = ({ hint, hideHintText }) => {
2759
- const classes = useStyles$2(useTheme$1());
2760
- const [showHint, setShowHint] = useState(true);
2761
- const handleHideHint = () => {
2762
- setShowHint(false);
2763
- };
2764
- return /* @__PURE__ */ React.createElement("div", { className: classes.hintContainer }, showHint && /* @__PURE__ */ React.createElement("div", { className: classes.hintContent }, /* @__PURE__ */ React.createElement("div", null, hint), /* @__PURE__ */ React.createElement("div", { className: classes.hidehelp }, /* @__PURE__ */ React.createElement("button", {
2765
- className: classes.hideHintButton,
2766
- onClick: handleHideHint
2767
- }, hideHintText))));
2768
- };
2769
- HintPanel.propTypes = {
2770
- hint: PropTypes.string.isRequired,
2771
- hideHintText: PropTypes.string.isRequired
2772
- };
2773
-
2774
- //#endregion
2775
- //#region src/UI/utilityDisplay/GridViewsSideSheet.jsx
2776
- const useStyles$1 = makeStyles((theme) => ({
2777
- publicChip: {
2778
- backgroundColor: "#96d2ff",
2779
- color: "black",
2780
- width: "60%"
2781
- },
2782
- privateChip: {
2783
- backgroundColor: "#fce597",
2784
- color: "black",
2785
- width: "60%"
2786
- }
2787
- }));
2788
- const GridViewsSideSheet = (props) => {
2789
- const { onClose, open, openSaveView, rowData, setSelectedView } = props;
2790
- const classes = useStyles$1();
2791
- const { t } = useTranslation();
2792
- const { gridApi, onGridReady } = useAgGridApi();
2793
- const gApi = gridApi;
2794
- const ChipRenderer = ({ onChange, value, id }) => {
2795
- const handleChipClick = () => {
2796
- onChange(id);
2797
- };
2798
- return /* @__PURE__ */ React.createElement(Chip$1, {
2799
- label: value === VisibilityTypeEnums.Public ? t("Public") : t("Private"),
2800
- onClick: handleChipClick,
2801
- className: value === VisibilityTypeEnums.Public ? classes.publicChip : classes.privateChip,
2802
- size: "small"
2803
- });
2804
- };
2805
- const setView = useCallback((value) => {
2806
- setSelectedView(value);
2807
- onClose();
2808
- }, [setSelectedView, onClose]);
2809
- const actionList = useMemo(() => [{
2810
- id: 1,
2811
- title: t("Load View"),
2812
- icon: OpenInNewTabIcon,
2813
- onClick: setView,
2814
- disabled: false
2815
- }, {
2816
- id: 2,
2817
- title: t("Workflows"),
2818
- icon: TableHeaderRowIcon,
2819
- disabled: false
2820
- }], [setView, t]);
2821
- const gridOptions = {
2822
- headerHeight: 0,
2823
- frameworkComponents: {
2824
- actionsRenderer: ActionsRenderer,
2825
- chipRenderer: ChipRenderer
2826
- },
2827
- columnDefs: [
2828
- {
2829
- headerName: t("Name"),
2830
- field: "name"
2831
- },
2832
- {
2833
- field: "visibility",
2834
- cellRenderer: "chipRenderer",
2835
- cellRendererParams: (params) => ({
2836
- onChange: (id) => {},
2837
- value: params.data.gridViewVisibilityTypeId
2838
- })
2839
- },
2840
- {
2841
- headerName: t("Actions"),
2842
- cellRenderer: "actionsRenderer",
2843
- cellRendererParams: { actionList },
2844
- width: "100px",
2845
- pinned: "right",
2846
- suppressMenu: true,
2847
- sortable: false
2848
- }
2849
- ]
2850
- };
2851
- return /* @__PURE__ */ React.createElement(SideSheet, {
2852
- id: "udpRecord-GridViewsSideSheet",
2853
- udprecordid: "udpRecord-GridViewsSideSheet",
2854
- open,
2855
- onClose,
2856
- width: "40%",
2857
- title: "Select a View",
2858
- buttonLabel: "Create View",
2859
- onSubmit: openSaveView
2860
- }, /* @__PURE__ */ React.createElement("div", { style: { marginBottom: 10 } }, /* @__PURE__ */ React.createElement(HintPanel, {
2861
- hint: "Quickly access and manage your pre-configured table/grid views. These views are designed to help you focus on specific sets of data and streamline your workflow.",
2862
- hideHintText: "Hide Help"
2863
- })), /* @__PURE__ */ React.createElement(AmbientGridTemplate, {
2864
- gridOptions,
2865
- title: "Saved Views",
2866
- rowData: rowData || [],
2867
- onGridReady,
2868
- suppressCellSelection: true,
2869
- suppressRowClickSelection: true,
2870
- sideBar: false,
2871
- pivotMode: false,
2872
- pivotPanelShow: "never",
2873
- animateRows: true,
2874
- pagination: false,
2875
- api: gApi,
2876
- useNewHeader: true,
2877
- hiddenActionButtons: [
2878
- "saveView",
2879
- "views",
2880
- "insights",
2881
- "importExport",
2882
- "group",
2883
- "filter",
2884
- "columns",
2885
- "fitGrid",
2886
- "expandGrid",
2887
- "clearFilters"
2888
- ]
2889
- }));
2890
- };
2891
- var GridViewsSideSheet_default = GridViewsSideSheet;
2892
- GridViewsSideSheet.propTypes = {
2893
- onClose: PropTypes.func.isRequired,
2894
- open: PropTypes.bool.isRequired,
2895
- selectedMethod: PropTypes.string,
2896
- catalog: PropTypes.array,
2897
- openSaveView: PropTypes.func,
2898
- setViewChips: PropTypes.func,
2899
- setFilter: PropTypes.func,
2900
- rowData: PropTypes.array,
2901
- setSelectedView: PropTypes.func,
2902
- frameworkComponents: PropTypes.object,
2903
- scrollToTopOnStateChange: PropTypes.bool
2904
- };
2905
-
2906
- //#endregion
2907
- //#region src/UI/utilityDisplay/BulkActionsGridButton.jsx
2908
- const BulkActionsGridButton = (props) => {
2909
- const { numSelectedRows, bulkActions, triggerAction, domain } = props;
2910
- const [actionsAnchorEl, setActionsAnchorEl] = useState(null);
2911
- const handleBulkActionsClick = (event) => {
2912
- setActionsAnchorEl(event.currentTarget);
2913
- };
2914
- const triggerBulkAction = (actionId) => {
2915
- triggerAction(actionId);
2916
- };
2917
- const filterAction = (action) => {
2918
- return !!domain ? JSON.parse(action?.parameters)?.entityName === domain : true;
2919
- };
2920
- return /* @__PURE__ */ React.createElement("div", { style: {
2921
- marginTop: 5,
2922
- marginLeft: 20
2923
- } }, /* @__PURE__ */ React.createElement(Badge, {
2924
- badgeContent: numSelectedRows,
2925
- color: "secondary"
2926
- }, /* @__PURE__ */ React.createElement(FluentButton, {
2927
- type: "button",
2928
- onClick: handleBulkActionsClick,
2929
- variant: "outlined",
2930
- color: "primary",
2931
- endIcon: /* @__PURE__ */ React.createElement(FluentIcon, {
2932
- component: ChevronDownIcon,
2933
- size: "small"
2934
- })
2935
- }, "With Selected")), /* @__PURE__ */ React.createElement(Popover, {
2936
- id: "actions",
2937
- open: Boolean(actionsAnchorEl),
2938
- anchorEl: actionsAnchorEl,
2939
- onClose: () => setActionsAnchorEl(null),
2940
- anchorOrigin: {
2941
- vertical: "bottom",
2942
- horizontal: "right"
2943
- },
2944
- transformOrigin: {
2945
- vertical: "top",
2946
- horizontal: "right"
2947
- }
2948
- }, bulkActions && bulkActions.map((action) => {
2949
- const valid = filterAction(action);
2950
- return /* @__PURE__ */ React.createElement(Tooltip, {
2951
- placement: "right",
2952
- title: !valid ? "Action entity does not match data grid entity" : ""
2953
- }, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(MenuItem, {
2954
- onClick: () => triggerBulkAction(action.actionId),
2955
- style: {
2956
- display: "flex",
2957
- justifyContent: "space-between"
2958
- },
2959
- disabled: !valid
2960
- }, /* @__PURE__ */ React.createElement(Typography, null, action.name), /* @__PURE__ */ React.createElement(FluentIcon, {
2961
- component: valid ? action.icon ?? AppIconDefaultIcon : ErrorIcon,
2962
- style: { marginLeft: 7 },
2963
- color: !valid && "red"
2964
- }))));
2965
- })));
2966
- };
2967
-
2968
- //#endregion
2969
- //#region src/models/SearchOperator.ts
2970
- const SearchOperators = [
2971
- {
2972
- value: "=",
2973
- label: "Equals"
2974
- },
2975
- {
2976
- value: "IN",
2977
- label: "Contains"
2978
- },
2979
- {
2980
- value: "<>",
2981
- label: "Does not Equal"
2982
- },
2983
- {
2984
- value: ">",
2985
- label: "Greater Than"
2986
- },
2987
- {
2988
- value: "<",
2989
- label: "Less Than"
2990
- },
2991
- {
2992
- value: ">=",
2993
- label: "Greater Than or Equal To"
2994
- },
2995
- {
2996
- value: "<=",
2997
- label: "Less Than or Equal To"
2998
- },
2999
- {
3000
- value: "LIKE",
3001
- label: "Like"
3002
- },
3003
- {
3004
- value: "STARTSWITH",
3005
- label: "Starts With"
3006
- },
3007
- {
3008
- value: "BETWEEN",
3009
- label: "Between"
3010
- }
3011
- ];
3012
- const FilterOperators = {
3013
- equals: "=",
3014
- contains: "LIKE",
3015
- notEqual: "<>",
3016
- greaterThan: ">",
3017
- lessThan: "<",
3018
- greaterThanOrEqual: ">=",
3019
- lessThanOrEqual: "<=",
3020
- between: "BETWEEN",
3021
- In: "IN",
3022
- startsWith: "STARTSWITH"
3023
- };
3024
-
3025
- //#endregion
3026
- //#region src/UI/templates/AmbientGridTemplate.jsx
3027
- const useStyles = makeStyles((theme) => ({
3028
- root: {},
3029
- pab: {
3030
- display: "flex",
3031
- [theme.breakpoints.between("xs", "sm")]: {
3032
- position: "fixed",
3033
- bottom: theme.spacing(2),
3034
- right: theme.spacing(2),
3035
- zIndex: theme.zIndex.appBar
3036
- }
3037
- },
3038
- groupSideBar: { width: 225 },
3039
- gridApi: { display: "flex" }
3040
- }));
3041
- const AmbientGridTemplate = (props) => {
3042
- const { additionalFilters, api, apiMethod, applicationName, bulkActionFunctions, clearGridConfig, columnApi, columnDefs, data, defaultAutoSize, deleteGridConfig, disablePagination, disableDynamicSizing, disableRowSelection, entityName, filterChips = [], filters, frameworkComponents, gridReady, gridId, groupingData, height, hideFitGrid, hideExpandGrid, hideExportGrid, hideRemoveFilters, hideFilterTab, hideGroupTab, hideColumnTab, hideSearchBar, hiddenLabels, hiddenActionButtons = [], kpiValues = [], loading = false, onRowSelected, onSearch, onPrimaryActionClick, paginationPageSize = 20, primaryActionButton, primaryActionDisabled, primaryActionLabel, primaryActionIcon, rowModelType = "clientSide", rowNodeIdName, saveGridConfig, scrollToTopOnStateChange, secondaryActionButtons, title, tenantName, hideHeader, useNewHeader, insightsClick, user, id, udprecordid, additionalGridOptions = {}, headerBackgroundColor, onSearchKeyDown,...otherGridProps } = props;
3043
- const classes = useStyles();
3044
- const { gridApi, gridColumnApi, onGridReady } = useAgGridApi();
3045
- const [isVisible, setIsVisible] = useState();
3046
- const [sidebarIsVisible, setSidebarIsVisible] = useState(false);
3047
- const [showGroupOptions, setShowGroupOptions] = useState(false);
3048
- const [selectedRow, setSelectedRow] = useState(null);
3049
- const [value, setValue] = useState(0);
3050
- const [saveViewOpen, setSaveViewOpen] = useState(false);
3051
- const [defaultViews, setDefaultViews] = useState([]);
3052
- const [viewsOpen, setViewsOpen] = useState(false);
3053
- const [agGridOptions, setAgGridOptions] = useState({
3054
- frameworkComponents,
3055
- suppressScrollOnNewData: !scrollToTopOnStateChange,
3056
- ...additionalGridOptions
3057
- });
3058
- const gApi = api || gridApi;
3059
- const gcApi = columnApi || gridColumnApi;
3060
- const [viewChips, setViewChips] = useState([]);
3061
- const [additionalFilterChips, setAdditionalFilterChips] = useState(additionalFilters);
3062
- const [columnDefsValues, setColumnDefsValues] = useState(null);
3063
- const [selectedView, setSelectedView] = useState(null);
3064
- const [viewsRowData, setViewsRowData] = useState(null);
3065
- const [nonDefaultViewsRowData, setNonDefaultViewsRowData] = useState();
3066
- const [numSelectedRows, setNumSelectedRows] = useState(0);
3067
- const [domain, setDomain] = useState(null);
3068
- const [apiCatalogId, setApiCatalogId] = useState(null);
3069
- const { triggerAction } = useActions();
3070
- useEffect(() => {
3071
- if (apiMethod) {
3072
- setDomain(apiMethod.entityName);
3073
- setApiCatalogId(apiMethod.apiCatalogId);
3074
- }
3075
- }, [
3076
- apiMethod,
3077
- setDomain,
3078
- setApiCatalogId
3079
- ]);
3080
- const defaultColActionsDef = {
3081
- resizable: true,
3082
- editable: false,
3083
- sortable: true,
3084
- filter: true,
3085
- floatingFilter: false,
3086
- enableRowGroup: true,
3087
- filterParams: { filterOptions: rowModelType === "serverSide" ? Object.keys(FilterOperators) : void 0 }
3088
- };
3089
- const handleChange = (event, newValue) => {
3090
- event.preventDefault();
3091
- setValue((preValue) => {
3092
- if (newValue === preValue && newValue !== 1) gApi.setSideBarVisible(!gApi.isSideBarVisible());
3093
- else if (newValue === 0) {
3094
- gApi.setSideBarVisible(true);
3095
- gApi.openToolPanel("filters");
3096
- setShowGroupOptions(false);
3097
- } else if (newValue === 1) {
3098
- showGrouping();
3099
- gApi.setSideBarVisible(false);
3100
- } else {
3101
- gApi.setSideBarVisible(true);
3102
- gApi.openToolPanel("columns");
3103
- setShowGroupOptions(false);
3104
- }
3105
- return newValue;
3106
- });
3107
- };
3108
- const onFilterClick = (event) => {
3109
- event.preventDefault();
3110
- gApi.setSideBarVisible(!gApi.isSideBarVisible());
3111
- gApi.openToolPanel("filters");
3112
- setShowGroupOptions(false);
3113
- setValue(0);
3114
- setSidebarIsVisible(!sidebarIsVisible);
3115
- };
3116
- const onColumnsClick = (event) => {
3117
- event.preventDefault();
3118
- gApi.setSideBarVisible(!gApi.isSideBarVisible());
3119
- gApi.openToolPanel("columns");
3120
- setShowGroupOptions(false);
3121
- setValue(2);
3122
- setSidebarIsVisible(!sidebarIsVisible);
3123
- };
3124
- const emptyArr = [];
3125
- const handleRowSelected = useCallback((event) => {
3126
- if (!gApi) return;
3127
- const selectedRows = gApi.getSelectedRows();
3128
- setNumSelectedRows(selectedRows.length);
3129
- const row = selectedRows.length && selectedRows[0];
3130
- setSelectedRow(row);
3131
- if (onRowSelected) onRowSelected(event, row);
3132
- }, [gApi, onRowSelected]);
3133
- const setSideBarInvisible = () => {
3134
- if (gApi.isSideBarVisible()) {
3135
- gApi.setSideBarVisible(false);
3136
- setIsVisible(false);
3137
- } else {
3138
- gApi.setSideBarVisible(true);
3139
- gApi.openToolPanel("filters");
3140
- setShowGroupOptions(false);
3141
- setIsVisible(true);
3142
- }
3143
- };
3144
- const handleFilterChange = (event) => {
3145
- gApi.setQuickFilter(event.target.value);
3146
- };
3147
- const groupGridItems = (groupItem) => {
3148
- gcApi.setRowGroupColumns([groupItem]);
3149
- gApi.expandAll();
3150
- };
3151
- const restoreGridDefault = () => {
3152
- gApi.setQuickFilter("");
3153
- gcApi.setRowGroupColumns([]);
3154
- gApi.setFilterModel(null);
3155
- gApi.setQuickFilter("");
3156
- gcApi.resetColumnState();
3157
- };
3158
- const showGrouping = () => {
3159
- setShowGroupOptions(!showGroupOptions);
3160
- gApi.setSideBarVisible(false);
3161
- };
3162
- const expandGroupedGrid = () => {
3163
- gApi.expandAll();
3164
- };
3165
- const collapseGroupedGrid = () => {
3166
- gApi.collapseAll();
3167
- };
3168
- const fitToSpace = () => {
3169
- gApi.sizeColumnsToFit();
3170
- };
3171
- const exportGrid = () => {
3172
- gApi.exportDataAsCsv({
3173
- allColumns: true,
3174
- fileName: "export"
3175
- });
3176
- };
3177
- const openSaveView = () => {
3178
- setColumnDefsValues(JSON.stringify(gcApi.getColumnState()));
3179
- setSaveViewOpen(true);
3180
- };
3181
- const closeSaveView = () => {
3182
- setSaveViewOpen(false);
3183
- };
3184
- const openViews = useCallback(() => {
3185
- setViewsOpen(true);
3186
- }, []);
3187
- const closeViews = () => {
3188
- setViewsOpen(false);
3189
- };
3190
- const handleTriggerAction = useCallback((actionId) => {
3191
- if (triggerAction && gApi) triggerAction(actionId, gApi.getSelectedRows());
3192
- }, [triggerAction, gApi]);
3193
- const autoSizeAll = useCallback((skipHeader) => {
3194
- invariant(gcApi, `gridColumnApi not ready`);
3195
- const allColumnIds = [];
3196
- gcApi.getAllColumns().forEach((column) => {
3197
- allColumnIds.push(column.getColId());
3198
- });
3199
- gcApi.autoSizeColumns(allColumnIds, skipHeader);
3200
- }, [gcApi]);
3201
- const autoSizeAllWithoutHeader = useCallback(() => autoSizeAll(false), [autoSizeAll]);
3202
- const firstDataRendered = useCallback((params) => {
3203
- !defaultAutoSize && params?.api.sizeColumnsToFit();
3204
- defaultAutoSize && autoSizeAllWithoutHeader();
3205
- }, [defaultAutoSize, autoSizeAllWithoutHeader]);
3206
- useEffect(() => {
3207
- if (!gApi) return;
3208
- setSelectedRow(gApi.getSelectedRows()?.length && gApi.getSelectedRows()[0]);
3209
- selectedRow && gApi.ensureNodeVisible(selectedRow);
3210
- }, [gApi, selectedRow]);
3211
- const handleChipDelete = (chipType, chipIndex) => {
3212
- switch (chipType) {
3213
- case "view":
3214
- setViewChips((prevChips) => prevChips.filter((_, index) => index !== chipIndex));
3215
- setSelectedView(null);
3216
- gcApi.resetColumnState();
3217
- gApi.sizeColumnsToFit();
3218
- break;
3219
- case "additionalFilter":
3220
- setAdditionalFilterChips((prevChips) => {
3221
- if (prevChips[chipIndex]?.onUntoggle) prevChips[chipIndex]?.onUntoggle();
3222
- return prevChips.filter((_, index) => index !== chipIndex);
3223
- });
3224
- break;
3225
- default: break;
3226
- }
3227
- };
3228
- useEffect(() => {
3229
- if (viewsRowData?.length > 0) {
3230
- const DefaultViews = viewsRowData.reduce((acc, row) => {
3231
- if (row.isDefault) return [...acc, row];
3232
- return acc;
3233
- }, []);
3234
- const nonDefaultViews = viewsRowData.reduce((acc, row) => {
3235
- if (!row.isDefault) return [...acc, row];
3236
- return acc;
3237
- }, []);
3238
- setDefaultViews(DefaultViews);
3239
- setNonDefaultViewsRowData(nonDefaultViews);
3240
- }
3241
- }, [viewsRowData]);
3242
- const setView = useCallback((value$1) => {
3243
- const columnState = value$1?.gridViewGridViewGridConfiguration.map((ele) => ele.gridViewGridConfigurationGridConfiguration);
3244
- setViewChips((prevChips) => [{ label: value$1?.name }]);
3245
- onFirstDataRendered(gApi, gcApi, columnState);
3246
- }, [
3247
- setViewChips,
3248
- gApi,
3249
- gcApi
3250
- ]);
3251
- const setFilter = (value$1) => {};
3252
- const [{ data: views }, refetch] = useAxiosGet(ConfigService.tenantV2ApiUrl, `GridView/getFromUser/${user?.id}/${gridId}`, { params: {
3253
- domainName: domain,
3254
- apiCatalogId
3255
- } }, !!!ConfigService.tenantV2ApiUrl || !!!gridId || !!!user);
3256
- const [{ data: bulkActions }] = useAxiosGet(ConfigService.integrationV2ApiUrl, `action/grid/${gridId}`, {}, !!!ConfigService.integrationV2ApiUrl || !!!gridId);
3257
- useEffect(() => {
3258
- setViewsRowData(views);
3259
- }, [openViews, views]);
3260
- const getView = useCallback(async () => {
3261
- await apiMutate$1(ConfigService.tenantV2ApiUrl, `GridView/${selectedView.gridViewId}/PartiallyFull`, { method: "get" }).then((response) => {
3262
- setView(response.data);
3263
- }).catch((error) => {
3264
- console.log(error);
3265
- });
3266
- }, [selectedView, setView]);
3267
- useEffect(() => {
3268
- if (!selectedView?.gridViewId) {
3269
- gcApi?.resetColumnState();
3270
- gApi?.sizeColumnsToFit();
3271
- return;
3272
- }
3273
- getView();
3274
- }, [
3275
- setSelectedView,
3276
- selectedView,
3277
- gcApi,
3278
- gApi,
3279
- getView
3280
- ]);
3281
- useEffect(() => {
3282
- if (additionalFilters) setAdditionalFilterChips(additionalFilters);
3283
- }, [additionalFilters]);
3284
- return /* @__PURE__ */ React.createElement(React.Fragment, null, !hideHeader && useNewHeader && gApi && /* @__PURE__ */ React.createElement(GridPrimaryBar, {
3285
- title,
3286
- showFilter: setSideBarInvisible,
3287
- selected: isVisible,
3288
- onChange: onSearch || handleFilterChange,
3289
- showGroup: showGrouping,
3290
- value,
3291
- saveViewClick: openSaveView,
3292
- viewsClick: openViews,
3293
- handleChange,
3294
- fitClick: fitToSpace,
3295
- expandClick: autoSizeAllWithoutHeader,
3296
- exportClick: exportGrid,
3297
- insightsClick,
3298
- clearClick: restoreGridDefault,
3299
- filterClick: onFilterClick,
3300
- columnsClick: onColumnsClick,
3301
- hideSearchBar,
3302
- secondaryActionButtons: secondaryActionButtons || [],
3303
- onPrimaryActionClick,
3304
- primaryActionDisabled,
3305
- primaryActionLabel,
3306
- primaryActionIcon,
3307
- hiddenActionButtons: hiddenActionButtons || [],
3308
- hiddenLabels: hiddenLabels || [],
3309
- background: headerBackgroundColor,
3310
- onSearchKeyDown
3311
- }), useNewHeader && (kpiValues?.length > 0 || filterChips?.length > 0 || filters?.length > 0 || viewChips?.length > 0 || additionalFilterChips?.length > 0) && /* @__PURE__ */ React.createElement("div", { style: {
3312
- display: "flex",
3313
- flexDirection: "row",
3314
- height: 40
3315
- } }, /* @__PURE__ */ React.createElement(Grow, {
3316
- in: bulkActions && numSelectedRows > 0,
3317
- unmountOnExit: true
3318
- }, /* @__PURE__ */ React.createElement(BulkActionsGridButton, {
3319
- bulkActions,
3320
- numSelectedRows,
3321
- triggerAction: handleTriggerAction,
3322
- domain
3323
- })), /* @__PURE__ */ React.createElement(ChipSection, {
3324
- filterChips,
3325
- viewChips,
3326
- additionalFilterChips,
3327
- kpiValues,
3328
- handleDelete: handleChipDelete,
3329
- setAdditionalFilterChips,
3330
- setViewChips,
3331
- setFilter
3332
- })), useNewHeader && gApi && gcApi && /* @__PURE__ */ React.createElement(GridViewsSideSheet_default, {
3333
- open: viewsOpen,
3334
- onClose: closeViews,
3335
- openSaveView,
3336
- setViewChips,
3337
- setFilter: setView,
3338
- rowData: views,
3339
- setSelectedView
3340
- }), !hideHeader && !useNewHeader && /* @__PURE__ */ React.createElement(GridActionBar, {
3341
- title,
3342
- showFilter: setSideBarInvisible,
3343
- selected: isVisible,
3344
- onChange: onSearch || handleFilterChange,
3345
- showGroup: showGrouping,
3346
- value,
3347
- handleChange,
3348
- fitClick: fitToSpace,
3349
- expandClick: autoSizeAllWithoutHeader,
3350
- exportClick: exportGrid,
3351
- clearClick: restoreGridDefault,
3352
- saveGridConfig,
3353
- deleteGridConfig,
3354
- clearGridConfig,
3355
- hideFitGrid,
3356
- hideExpandGrid,
3357
- hideExportGrid,
3358
- hideRemoveFilters,
3359
- hideFilterTab,
3360
- hideGroupTab,
3361
- hideColumnTab,
3362
- hideSearchBar
3363
- }, primaryActionButton && /* @__PURE__ */ React.createElement("div", { className: classes.pab }, primaryActionButton)), loading && /* @__PURE__ */ React.createElement(LinearProgress, null), /* @__PURE__ */ React.createElement("div", { style: { display: "flex" } }, /* @__PURE__ */ React.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ React.createElement(AgTable, {
3364
- ...agGridOptions,
3365
- columnDefs,
3366
- dynamicSizing: !disableDynamicSizing,
3367
- rowData: data || emptyArr,
3368
- onGridReady: gridReady || onGridReady,
3369
- onRowSelected: handleRowSelected,
3370
- suppressCellSelection: true,
3371
- suppressRowClickSelection: false,
3372
- defaultColDef: defaultColActionsDef,
3373
- enableRangeSelection: true,
3374
- enableColResize: true,
3375
- sideBar: sidebarIsVisible,
3376
- pivotMode: false,
3377
- pivotPanelShow: "never",
3378
- groupSelectsChildren: true,
3379
- animateRows: false,
3380
- pagination: !disablePagination,
3381
- showOpenedGroup: true,
3382
- paginateChildRows: true,
3383
- paginationPageSize,
3384
- modules: rowModelType === "serverSide" ? [ServerSideRowModelModule] : [],
3385
- onFirstDataRendered: firstDataRendered,
3386
- rowModelType,
3387
- rowClassRules: { "first-row-in-group": (params) => params.node.rowIndex !== 0 && params.node.firstChild },
3388
- height,
3389
- api: gApi,
3390
- rowSelection: !disableRowSelection && (bulkActions ? "multiple" : "single"),
3391
- hideHeader,
3392
- ...otherGridProps
3393
- })), showGroupOptions && /* @__PURE__ */ React.createElement("div", { className: classes.groupSideBar }, /* @__PURE__ */ React.createElement(GridGroupingSidebar, {
3394
- groupItem: (item) => groupGridItems(item),
3395
- closeClick: () => groupGridItems(""),
3396
- expandClick: expandGroupedGrid,
3397
- collapseClick: collapseGroupedGrid,
3398
- groupingData,
3399
- height
3400
- })), !hiddenActionButtons?.includes("saveView") && /* @__PURE__ */ React.createElement(SaveViewFormDialog, {
3401
- open: saveViewOpen,
3402
- handleClose: closeSaveView,
3403
- application: applicationName,
3404
- tenant: tenantName,
3405
- user,
3406
- columnDefsValues,
3407
- refetchViews: refetch,
3408
- gApi,
3409
- gcApi,
3410
- setSelectedView: setView,
3411
- gridId,
3412
- domain,
3413
- apiCatalogId
3414
- })));
3415
- };
3416
- AmbientGridTemplate.propTypes = {
3417
- columnDefs: PropTypes.array,
3418
- handleRowSelected: PropTypes.func,
3419
- data: PropTypes.array,
3420
- title: PropTypes.string,
3421
- groupingData: PropTypes.array,
3422
- frameworkComponents: PropTypes.object,
3423
- loading: PropTypes.bool,
3424
- primaryActionButton: PropTypes.object,
3425
- rowNodeIdName: PropTypes.string,
3426
- defaultAutoSize: PropTypes.bool,
3427
- scrollToTopOnStateChange: PropTypes.bool,
3428
- disableDynamicSizing: PropTypes.bool,
3429
- filters: PropTypes.arrayOf(PropTypes.shape({
3430
- label: PropTypes.string.isRequired,
3431
- value: PropTypes.string.isRequired
3432
- })),
3433
- views: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string.isRequired })),
3434
- additionalFilters: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string.isRequired })),
3435
- kpis: PropTypes.arrayOf(PropTypes.shape({
3436
- label: PropTypes.string.isRequired,
3437
- value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired
3438
- })),
3439
- useNewHeader: PropTypes.bool,
3440
- insightsClick: PropTypes.func,
3441
- hiddenActionButtons: PropTypes.arrayOf(PropTypes.oneOf([
3442
- "saveView",
3443
- "views",
3444
- "insights",
3445
- "importExport",
3446
- "group",
3447
- "filter",
3448
- "columns",
3449
- "fitGrid",
3450
- "expandGrid",
3451
- "clearFilters"
3452
- ])),
3453
- hiddenLabels: PropTypes.arrayOf(PropTypes.oneOf([
3454
- "saveView",
3455
- "views",
3456
- "insights",
3457
- "importExport",
3458
- "group",
3459
- "filter",
3460
- "columns",
3461
- "fitGrid",
3462
- "expandGrid",
3463
- "clearFilters"
3464
- ])),
3465
- onPrimaryActionClick: PropTypes.func,
3466
- primaryActionLabel: PropTypes.string,
3467
- primaryActionIcon: PropTypes.elementType,
3468
- secondaryActionButtons: PropTypes.array,
3469
- applicationName: PropTypes.string,
3470
- entityName: PropTypes.string,
3471
- tenantName: PropTypes.string,
3472
- user: PropTypes.object,
3473
- kpiValues: PropTypes.array
3474
- };
3475
-
3476
- //#endregion
3477
- export { ActionContext, ActionDispatchContext, ActionLoadingDispatchContext, ActionsRenderer, AgTable, AgTableButtons, AmbientGridTemplate, AmbientTextField, AmbientToggleButton, AmbientTokenButton, DynamicContainerWithMenu, Ellipse, FilterOperators, FluentDialog, GridActionBar, GridGroupingHeader, GridGroupingSidebar, GridSidebarContainer, IconButtonWithTooltip, LicenseKey, SearchOperators, Token, clearGridState, deleteGridState, findTermByType, getEllipseColor, getEntityAttributes, getGridState, getPathObject, getPathParametersObj, getPrimaryKeyValues, getSuccessAction, isValueSelected, onFirstDataRendered, saveGridState, useActionState, useActionStore, useActions, useAgGridApi, useCatalogStore, useDynamicListCalculation, useExport, useGridClear, useGridFormat, useHandleAction, useInquiryStore, useQuickFilter, useSetInitialInquiryMenuVisibility };
3478
- //# sourceMappingURL=AmbientGridTemplate-Ch1eLyEu.js.map