udp-react-enterprise-component-library 25.18.1-beta.59 → 25.18.1-beta.60

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 (131) hide show
  1. package/dist/{BarChartWidget-Dwav8_8e.js → BarChartWidget-BYJS3vMQ.js} +3 -3
  2. package/dist/{BarChartWidget-Dwav8_8e.js.map → BarChartWidget-BYJS3vMQ.js.map} +1 -1
  3. package/dist/{BubbleWidget-CsIheJTW.js → BubbleWidget-FNCYe8So.js} +3 -3
  4. package/dist/{BubbleWidget-CsIheJTW.js.map → BubbleWidget-FNCYe8So.js.map} +1 -1
  5. package/dist/{ChatUDP-D8qb3QN5.js → ChatUDP-BHtX1Ipw.js} +3 -3
  6. package/dist/{ChatUDP-D8qb3QN5.js.map → ChatUDP-BHtX1Ipw.js.map} +1 -1
  7. package/dist/{DateTrendWidget-cdExY12Q.js → DateTrendWidget-CbhpScrj.js} +3 -3
  8. package/dist/{DateTrendWidget-cdExY12Q.js.map → DateTrendWidget-CbhpScrj.js.map} +1 -1
  9. package/dist/{DensePlotWidget-DHRKyeck.js → DensePlotWidget-CsrA6oiC.js} +3 -3
  10. package/dist/{DensePlotWidget-DHRKyeck.js.map → DensePlotWidget-CsrA6oiC.js.map} +1 -1
  11. package/dist/{DonutChartWidget-vOeXhdOe.js → DonutChartWidget-C0XsTjF9.js} +3 -3
  12. package/dist/{DonutChartWidget-vOeXhdOe.js.map → DonutChartWidget-C0XsTjF9.js.map} +1 -1
  13. package/dist/Inquiry-C094H1jQ.js +3 -0
  14. package/dist/{Inquiry-BCu8bSal.js → Inquiry-KKLgba3g.js} +2 -2
  15. package/dist/{Inquiry-BCu8bSal.js.map → Inquiry-KKLgba3g.js.map} +1 -1
  16. package/dist/{InquirySearchContainer-DLkAOjWJ.js → InquirySearchContainer-DKDrIqNO.js} +2 -2
  17. package/dist/{InquirySearchContainer-DLkAOjWJ.js.map → InquirySearchContainer-DKDrIqNO.js.map} +1 -1
  18. package/dist/{LineAndSparklinesWidget-CUq3QxmN.js → LineAndSparklinesWidget-J0kTiLt2.js} +3 -3
  19. package/dist/{LineAndSparklinesWidget-CUq3QxmN.js.map → LineAndSparklinesWidget-J0kTiLt2.js.map} +1 -1
  20. package/dist/{LineGraphWidget-DOwAVdTR.js → LineGraphWidget-OkrYlfsd.js} +3 -3
  21. package/dist/{LineGraphWidget-DOwAVdTR.js.map → LineGraphWidget-OkrYlfsd.js.map} +1 -1
  22. package/dist/{MttMainTimeline-BG6nlcC_.js → MttMainTimeline-s0ANW7l-.js} +2 -2
  23. package/dist/{MttMainTimeline-BG6nlcC_.js.map → MttMainTimeline-s0ANW7l-.js.map} +1 -1
  24. package/dist/{MttSummary-DP2U55LK.js → MttSummary-DNc71fHh.js} +2 -2
  25. package/dist/{MttSummary-DP2U55LK.js.map → MttSummary-DNc71fHh.js.map} +1 -1
  26. package/dist/{ProgressBarWidget-Bo8LoOYA.js → ProgressBarWidget-gY0_iFB-.js} +3 -3
  27. package/dist/{ProgressBarWidget-Bo8LoOYA.js.map → ProgressBarWidget-gY0_iFB-.js.map} +1 -1
  28. package/dist/{PropertyFields-Dm90Hcer.js → PropertyFields-DlNSPR7S.js} +2 -2
  29. package/dist/{PropertyFields-Dm90Hcer.js.map → PropertyFields-DlNSPR7S.js.map} +1 -1
  30. package/dist/{RecentlyLoadedNodesWidget-C5chQWOm.js → RecentlyLoadedNodesWidget-Cb8fiSSn.js} +3 -3
  31. package/dist/{RecentlyLoadedNodesWidget-C5chQWOm.js.map → RecentlyLoadedNodesWidget-Cb8fiSSn.js.map} +1 -1
  32. package/dist/{RemindersWidget-BnaccE9-.js → RemindersWidget-u_oonyMf.js} +3 -3
  33. package/dist/{RemindersWidget-BnaccE9-.js.map → RemindersWidget-u_oonyMf.js.map} +1 -1
  34. package/dist/{Shell-B8oi58iV.js → Shell-a2L-cKzs.js} +2 -2
  35. package/dist/{Shell-B8oi58iV.js.map → Shell-a2L-cKzs.js.map} +1 -1
  36. package/dist/{SparklineWidget-BbkOUjcS.js → SparklineWidget-Bbeyk07x.js} +3 -3
  37. package/dist/{SparklineWidget-BbkOUjcS.js.map → SparklineWidget-Bbeyk07x.js.map} +1 -1
  38. package/dist/{SparsePlotWidget-ZYP6TKB6.js → SparsePlotWidget-DSjCtlMJ.js} +3 -3
  39. package/dist/{SparsePlotWidget-ZYP6TKB6.js.map → SparsePlotWidget-DSjCtlMJ.js.map} +1 -1
  40. package/dist/UI/charts/index.js +1 -1
  41. package/dist/UI/index.js +2 -2
  42. package/dist/UI/property/index.js +1 -1
  43. package/dist/UI/property/widgets/index.js +1 -1
  44. package/dist/UI/widgets/library/BarChartWidget/index.js +1 -1
  45. package/dist/UI/widgets/library/BubbleWidget/index.js +1 -1
  46. package/dist/UI/widgets/library/DateTrendWidget/index.js +1 -1
  47. package/dist/UI/widgets/library/DensePlotWidget/index.js +1 -1
  48. package/dist/UI/widgets/library/DonutChartWidget/index.js +1 -1
  49. package/dist/UI/widgets/library/LineAndSparklinesWidget/index.js +1 -1
  50. package/dist/UI/widgets/library/LineGraphWidget/index.js +1 -1
  51. package/dist/UI/widgets/library/ProgressBarWidget/index.js +1 -1
  52. package/dist/UI/widgets/library/RecentlyLoadedNodesWidget/index.js +1 -1
  53. package/dist/UI/widgets/library/RemindersWidget/index.js +1 -1
  54. package/dist/UI/widgets/library/SparklineWidget/index.js +1 -1
  55. package/dist/UI/widgets/library/SparsePlotWidget/index.js +1 -1
  56. package/dist/UdpAuditEvents-C5p1KgV0.js +9 -0
  57. package/dist/{UdpAuditEvents-JP-tGjrh.js.map → UdpAuditEvents-C5p1KgV0.js.map} +1 -1
  58. package/dist/{UdpDataBrowserPage-CpDMeFtE.js → UdpDataBrowserPage-DQXaWtYD.js} +3 -3
  59. package/dist/{UdpDataBrowserPage-CpDMeFtE.js.map → UdpDataBrowserPage-DQXaWtYD.js.map} +1 -1
  60. package/dist/{UdpFormsBuilderPage-C1oc66zH.js → UdpFormsBuilderPage-BobXHgd_.js} +3 -3
  61. package/dist/{UdpFormsBuilderPage-C1oc66zH.js.map → UdpFormsBuilderPage-BobXHgd_.js.map} +1 -1
  62. package/dist/{UdpFormsListPage-BsTi2bXy.js → UdpFormsListPage-BuoLTPWK.js} +3 -3
  63. package/dist/{UdpFormsListPage-BsTi2bXy.js.map → UdpFormsListPage-BuoLTPWK.js.map} +1 -1
  64. package/dist/{UdpFormsPrivateForm-D6clAgfY.js → UdpFormsPrivateForm-Cy3PXVju.js} +3 -3
  65. package/dist/{UdpFormsPrivateForm-D6clAgfY.js.map → UdpFormsPrivateForm-Cy3PXVju.js.map} +1 -1
  66. package/dist/{UdpFormsPublicForm-DgyMCWuh.js → UdpFormsPublicForm-DDCpLG6l.js} +3 -3
  67. package/dist/{UdpFormsPublicForm-DgyMCWuh.js.map → UdpFormsPublicForm-DDCpLG6l.js.map} +1 -1
  68. package/dist/{UdpGridPanelManagementPage-CJbKbZeN.js → UdpGridPanelManagementPage-BYdQNWN3.js} +3 -3
  69. package/dist/{UdpGridPanelManagementPage-CJbKbZeN.js.map → UdpGridPanelManagementPage-BYdQNWN3.js.map} +1 -1
  70. package/dist/{UdpImportFromFileMappingPage-B2jpLQlP.js → UdpImportFromFileMappingPage-Dti79T9x.js} +3 -3
  71. package/dist/{UdpImportFromFileMappingPage-B2jpLQlP.js.map → UdpImportFromFileMappingPage-Dti79T9x.js.map} +1 -1
  72. package/dist/{UdpInquiryMaintenanceEnginePage-B7jCKzw5.js → UdpInquiryMaintenanceEnginePage-Boln3evx.js} +4 -4
  73. package/dist/{UdpInquiryMaintenanceEnginePage-B7jCKzw5.js.map → UdpInquiryMaintenanceEnginePage-Boln3evx.js.map} +1 -1
  74. package/dist/{UdpMaintenanceEnginePage-C5OzABlj.js → UdpMaintenanceEnginePage-B8OpNNcP.js} +4 -4
  75. package/dist/{UdpMaintenanceEnginePage-C5OzABlj.js.map → UdpMaintenanceEnginePage-B8OpNNcP.js.map} +1 -1
  76. package/dist/{UdpNotesPage-CO5te_bd.js → UdpNotesPage-DCjDBqqU.js} +3 -3
  77. package/dist/{UdpNotesPage-CO5te_bd.js.map → UdpNotesPage-DCjDBqqU.js.map} +1 -1
  78. package/dist/{UdpRemindersPage-Dvoe-qlm.js → UdpRemindersPage-CrgWmKWD.js} +3 -3
  79. package/dist/{UdpRemindersPage-Dvoe-qlm.js.map → UdpRemindersPage-CrgWmKWD.js.map} +1 -1
  80. package/dist/{UdpReportsPage-Dyyo-Pys.js → UdpReportsPage-CO1460ws.js} +3 -3
  81. package/dist/{UdpReportsPage-Dyyo-Pys.js.map → UdpReportsPage-CO1460ws.js.map} +1 -1
  82. package/dist/{UdpTransactionTypesPage-MdoNtG3E.js → UdpTransactionTypesPage-CWA-n7y0.js} +3 -3
  83. package/dist/{UdpTransactionTypesPage-MdoNtG3E.js.map → UdpTransactionTypesPage-CWA-n7y0.js.map} +1 -1
  84. package/dist/{UdpTransactionsPage-D6wi5mEV.js → UdpTransactionsPage-BabTkzhM.js} +5 -5
  85. package/dist/UdpTransactionsPage-BabTkzhM.js.map +1 -0
  86. package/dist/{UdpVerticalManagementPage-Cc4zz9Tv.js → UdpVerticalManagementPage-CQeGGUyp.js} +3 -3
  87. package/dist/{UdpVerticalManagementPage-Cc4zz9Tv.js.map → UdpVerticalManagementPage-CQeGGUyp.js.map} +1 -1
  88. package/dist/{amcharts-BqT36-RL.js → amcharts-aenA6giA.js} +3 -3
  89. package/dist/{amcharts-BqT36-RL.js.map → amcharts-aenA6giA.js.map} +1 -1
  90. package/dist/{charts-oWe5K2aR.js → charts-pX01x8rO.js} +2 -2
  91. package/dist/{charts-oWe5K2aR.js.map → charts-pX01x8rO.js.map} +1 -1
  92. package/dist/{chunk-B4enJp2Q.js → chunk-BN_g-Awi.js} +2 -2
  93. package/dist/componentSystems/multiThreadTimeline/functions/index.js +1 -1
  94. package/dist/componentSystems/multiThreadTimeline/index.js +3 -3
  95. package/dist/componentSystems/multiThreadTimeline/mttMainTimeline/index.js +1 -1
  96. package/dist/componentSystems/multiThreadTimeline/mttSummary/index.js +1 -1
  97. package/dist/index.js +28 -28
  98. package/dist/inquiry/index.js +2 -2
  99. package/dist/inquiry/search/index.js +1 -1
  100. package/dist/{mttFunctions-ioZ0_5JX.js → mttFunctions-5g2DjtR9.js} +3 -3
  101. package/dist/{mttFunctions-ioZ0_5JX.js.map → mttFunctions-5g2DjtR9.js.map} +1 -1
  102. package/dist/routes/index.js +1 -1
  103. package/dist/{routes-BxMFj34q.js → routes-DM7kVvCm.js} +2 -2
  104. package/dist/{routes-BxMFj34q.js.map → routes-DM7kVvCm.js.map} +1 -1
  105. package/dist/shell/index.js +1 -1
  106. package/dist/types/src/udp/pages/UdpTransactionsPage/UdpTransactionGrid.d.ts.map +1 -1
  107. package/dist/types/tsconfig.tsbuildinfo +1 -1
  108. package/dist/udp/pages/ChatUDP/index.js +1 -1
  109. package/dist/udp/pages/UdpDataBrowserPage/index.js +1 -1
  110. package/dist/udp/pages/UdpFormsBuilderPage/index.js +1 -1
  111. package/dist/udp/pages/UdpFormsListPage/index.js +1 -1
  112. package/dist/udp/pages/UdpFormsPrivateForm/index.js +1 -1
  113. package/dist/udp/pages/UdpFormsPublicForm/index.js +1 -1
  114. package/dist/udp/pages/UdpGridPanelManagementPage/index.js +1 -1
  115. package/dist/udp/pages/UdpImportFromFileMappingPage/index.js +1 -1
  116. package/dist/udp/pages/UdpInquiryMaintenanceEnginePage/index.js +1 -1
  117. package/dist/udp/pages/UdpMaintenanceEnginePage/index.js +1 -1
  118. package/dist/udp/pages/UdpNotesPage/index.js +1 -1
  119. package/dist/udp/pages/UdpPages/index.js +22 -22
  120. package/dist/udp/pages/UdpRemindersPage/index.js +1 -1
  121. package/dist/udp/pages/UdpReportsPage/index.js +1 -1
  122. package/dist/udp/pages/UdpTransactionTypesPage/index.js +1 -1
  123. package/dist/udp/pages/UdpTransactionsPage/index.js +1 -1
  124. package/dist/udp/pages/UdpVerticalManagementPage/index.js +1 -1
  125. package/dist/{widgets-Cp52ccgB.js → widgets-CtrxUwuu.js} +13 -13
  126. package/dist/{widgets-Cp52ccgB.js.map → widgets-CtrxUwuu.js.map} +1 -1
  127. package/export-map.json +1 -1
  128. package/package.json +1 -1
  129. package/dist/Inquiry-NWBPf-o4.js +0 -3
  130. package/dist/UdpAuditEvents-JP-tGjrh.js +0 -9
  131. package/dist/UdpTransactionsPage-D6wi5mEV.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { t as __export } from "./chunk-B4enJp2Q.js";
1
+ import { t as __exportAll } from "./chunk-BN_g-Awi.js";
2
2
  import { t as FluentButton } from "./FluentButton-BexKrnAp.js";
3
3
  import { i as useHandleAxiosSnackbar } from "./apiHelpers-WIR8pqy0.js";
4
4
  import { t as useUser } from "./useUser-wpHGo6jU.js";
@@ -328,11 +328,11 @@ var RemindersWidget_default = forwardRef(RemindersWidget);
328
328
 
329
329
  //#endregion
330
330
  //#region src/UI/widgets/library/RemindersWidget/index.ts
331
- var RemindersWidget_exports = /* @__PURE__ */ __export({
331
+ var RemindersWidget_exports = /* @__PURE__ */ __exportAll({
332
332
  RemindersWidget: () => RemindersWidget,
333
333
  default: () => RemindersWidget_default
334
334
  });
335
335
 
336
336
  //#endregion
337
337
  export { RemindersWidget as n, RemindersWidget_default as r, RemindersWidget_exports as t };
338
- //# sourceMappingURL=RemindersWidget-BnaccE9-.js.map
338
+ //# sourceMappingURL=RemindersWidget-u_oonyMf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RemindersWidget-BnaccE9-.js","names":["uuid","reminders","WidgetCard"],"sources":["../src/UI/widgets/library/RemindersWidget/RemindersWidget.jsx","../src/UI/widgets/library/RemindersWidget/index.ts"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useState\n} from 'react';\nimport WidgetCard from '../../WidgetCard';\nimport { RemindersCard } from '../../../../reminders/RemindersCard';\nimport { FluentButton } from '../../../inputs/buttons/FluentButton';\nimport {\n CircularProgress,\n makeStyles,\n FormControlLabel,\n Switch\n} from '@material-ui/core';\nimport { useTranslation } from 'react-i18next';\nimport { useUser } from '../../../../utilities/auth/useUser';\nimport {\n getSearchIdentifiers,\n getSearchObject\n} from '../../../../utilities/search/SearchUtilities';\nimport {\n executeQueryAdHoc,\n executeQueryWithParameters,\n getBaseMethod\n} from '../../../../udp/utilities/methodUtils';\nimport {\n LogicalSearchOperatorEnums,\n UdpEnums,\n UdpReminderFiledForType\n} from '../../../../enums/unitySystemEnums';\nimport { useActionState } from '../../../../hooks/useActions';\nimport { useHandleAxiosSnackbar } from '../../../../utilities/apiHelpers';\nimport { FluentIconButton } from '../../../inputs/buttons/FluentIconButton';\nimport { SortIcon } from '@fluentui/react-icons';\nimport { Alert } from '@material-ui/lab';\nimport { v4 as uuid } from 'uuid';\n\n// export const layout = {\n// w: { default: 2, min: 0, max: 4 },\n// h: { default: 2, min: 0, max: 4 }\n// };\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n actions: {\n display: 'flex',\n alignItems: 'center',\n width: '100%',\n justifyContent: 'flex-end'\n },\n actionButton: {\n marginRight: theme.spacing(0.25),\n position: 'relative'\n },\n fabProgress: {\n position: 'absolute',\n top: 4,\n left: '35%',\n zIndex: 1\n }\n}));\n\nexport const RemindersWidget = (props, ref) => {\n const { children, params, setParam, ...other } = props;\n const { onLoadedNodeClick, hideWidgetName, tree, catalogObjects } = params;\n\n const [sortDirection, setSortDirection] = useState(null);\n const [reminders, setReminders] = useState(null);\n const [loading, setLoading] = useState(false);\n const [allRemindersRequested, setAllRemindersRequested] = useState(false);\n const [buttonProgress, setButtonProgress] = useState(false);\n const [alertWarnings, setAlertWarnings] = useState([]);\n\n const classes = useStyles(props);\n const actionState = useActionState();\n const { catalogPromotedEntities } = actionState;\n const { handleErrorSnackbar } = useHandleAxiosSnackbar();\n const { t } = useTranslation();\n const user = useUser();\n\n const reminderFiledForSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const currentSortDirection = useMemo(() => {\n if (sortDirection === 'asc') {\n return 'desc';\n } else if (sortDirection === 'desc') {\n return 'asc';\n } else {\n return null;\n }\n }, [sortDirection]);\n\n const getNodeToLoad = useCallback(\n (reminder) => {\n const nodeToLoad = {};\n const domainObject = reminder?.domainObject;\n const entityBusinessKey = reminder?.entityBusinessKey || '';\n let treeStructureId = '';\n let apiMethodId = '';\n const matchingNode = tree?.treeStructure?.find(\n (node) => node.properties?.catalogReturnObject === domainObject\n );\n\n if (matchingNode) {\n treeStructureId = matchingNode.id;\n if (!matchingNode.parentId) {\n apiMethodId = tree.apiMethodInstance.apiMethodId;\n } else {\n const associatedInquiryTree =\n matchingNode.properties?.associatedInquiryTree;\n if (associatedInquiryTree) {\n apiMethodId =\n associatedInquiryTree.apiMethodInstance?.apiMethodId || '';\n }\n }\n }\n nodeToLoad.apiMethodId = apiMethodId;\n\n const searchIdentifiers = getSearchIdentifiers(\n catalogObjects,\n domainObject\n );\n const filterElements = [];\n const searchValue = entityBusinessKey.split('|')?.[1];\n const values = searchValue.split(',');\n\n searchIdentifiers.forEach((searchIdentifier, index) => {\n const searchField = searchIdentifier\n ? searchIdentifier.charAt(0).toUpperCase() + searchIdentifier.slice(1)\n : '';\n filterElements.push({\n searchField: searchField,\n searchOperator: '=',\n searchValue: values[index]\n });\n });\n\n nodeToLoad.queryPayload = getSearchObject(\n filterElements,\n 1,\n 50,\n true,\n LogicalSearchOperatorEnums.And\n );\n\n nodeToLoad.nodeDetails = {\n catalogReturnObject: domainObject,\n treeStructureId: treeStructureId\n };\n\n return nodeToLoad;\n },\n [tree, catalogObjects]\n );\n\n const getIcon = useCallback(\n (reminder) => {\n const domainObject = reminder?.domainObject;\n const matchingNode = tree?.treeStructure?.find(\n (node) => node.properties?.catalogReturnObject === domainObject\n );\n return matchingNode?.properties?.defaultIcon || {};\n },\n [tree]\n );\n\n const sortByDate = useCallback((reminderList, direction) => {\n const sortedReminders = [...reminderList];\n if (direction === 'asc') {\n sortedReminders.sort(\n (a, b) => new Date(b.reminderDate) - new Date(a.reminderDate)\n );\n } else if (direction === 'desc') {\n sortedReminders.sort(\n (a, b) => new Date(a.reminderDate) - new Date(b.reminderDate)\n );\n }\n setReminders(sortedReminders);\n }, []);\n\n const sort = useCallback(() => {\n sortByDate(reminders, sortDirection || 'desc');\n if (sortDirection === 'desc' || !sortDirection) {\n setSortDirection('asc');\n } else if (sortDirection === 'asc') {\n setSortDirection('desc');\n }\n }, [reminders, sortByDate, sortDirection]);\n\n const getReminders = useCallback(\n async (allRequested = false, rffSearchApiMethod) => {\n let remindersList = [];\n const warnings = [];\n\n if (!reminders) {\n setLoading(true);\n }\n\n let filterElements = [\n {\n searchField: 'Reminder.Acknowledged',\n searchValue: false,\n searchOperator: '=',\n groupId: 1\n },\n {\n searchField: 'Reminder.ReminderDate',\n searchValue: new Date(),\n searchOperator: '<=',\n groupId: 1\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.System,\n searchOperator: '=',\n groupId: 2\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.User,\n searchOperator: '=',\n groupId: 3\n },\n\n {\n searchField: 'Reminder.UnityUserID',\n searchValue: user.id,\n searchOperator: '=',\n groupId: 3\n }\n ];\n\n let filterGroups = [\n {\n groupId: 1,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: null\n },\n {\n groupId: 2,\n logicalSearchOperator: LogicalSearchOperatorEnums.Or,\n parentGroupId: null\n },\n {\n groupId: 3,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: 2\n }\n ];\n\n if (allRequested) {\n filterElements = [\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.System,\n searchOperator: '=',\n groupId: 2\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.User,\n searchOperator: '=',\n groupId: 3\n },\n {\n searchField: 'Reminder.UnityUserID',\n searchValue: user.id,\n searchOperator: '=',\n groupId: 3\n }\n ];\n\n filterGroups = [\n {\n groupId: 2,\n logicalSearchOperator: LogicalSearchOperatorEnums.Or,\n parentGroupId: null\n },\n {\n groupId: 3,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: 2\n }\n ];\n }\n\n const searchObject = getSearchObject(\n filterElements,\n 1,\n 200,\n true,\n LogicalSearchOperatorEnums.And,\n filterGroups\n );\n const data = { data: searchObject };\n\n if (rffSearchApiMethod) {\n if (!rffSearchApiMethod.apiMethodId) {\n warnings.push({\n id: uuid(),\n severity: 'warning',\n message: t('Search ReminderFiledFor Method Not Promoted')\n });\n } else {\n const response = await executeQueryAdHoc(\n data,\n rffSearchApiMethod.apiMethodId\n ).catch((e) => {\n setLoading(false);\n });\n\n if (response?.status === 200) {\n const pageList = response.data.pageList;\n if (pageList?.length) {\n remindersList = pageList.map((item) => ({\n ...item.reminder,\n domainObject: item.domainObject,\n filedToType: item.type,\n entityBusinessKey: item.entityBusinessKey\n }));\n }\n } else {\n warnings.push({\n id: uuid(),\n severity: 'error',\n message: t('Could not retrieve reminders')\n });\n }\n }\n }\n // Filter for reminders that belong to any of the domains within the tree\n const treeDomains = tree?.treeStructure.map(\n (node) => node.properties?.catalogReturnObject\n );\n if (treeDomains.length) {\n remindersList = remindersList.filter((reminder) =>\n treeDomains.includes(reminder.domainObject)\n );\n } else {\n remindersList = [];\n }\n setAlertWarnings(warnings);\n setLoading(false);\n sortByDate(remindersList, currentSortDirection);\n },\n [t, user, reminders, sortByDate, currentSortDirection, tree]\n );\n\n const updateRemindersAcknowledgement = useCallback(\n async (reminders) => {\n if (updateReminderApiMethod) {\n const updatedPromises = [];\n reminders.forEach((reminder) => {\n reminder.acknowledged = reminder.checked;\n const data = {\n requestBody: {\n ...reminder\n }\n };\n data['{iD}'] = reminder.id;\n updatedPromises.push(\n executeQueryWithParameters(\n { data },\n updateReminderApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(updatedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminder = reminders?.find(\n (nftu) => nftu.value === entityBusinessKey\n );\n if (!matchingReminder) {\n console.warn(`Reminder not updated for all file to entities`);\n }\n }\n });\n }\n );\n } else {\n handleErrorSnackbar(null, 'Update Reminder Method Not Promoted');\n }\n },\n [updateReminderApiMethod, handleErrorSnackbar]\n );\n\n const handleAcknowledgeClick = useCallback(async () => {\n const acknowledgedReminders = reminders?.filter((r) => r.checked);\n if (acknowledgedReminders.length) {\n setButtonProgress(true);\n await updateRemindersAcknowledgement(acknowledgedReminders);\n setButtonProgress(false);\n getReminders(allRemindersRequested, reminderFiledForSearchApiMethod);\n }\n }, [\n reminders,\n getReminders,\n updateRemindersAcknowledgement,\n allRemindersRequested,\n reminderFiledForSearchApiMethod\n ]);\n\n const handleSwitchChange = useCallback(\n async (event) => {\n setLoading(true);\n if (event.target.checked) {\n setAllRemindersRequested(event.target.checked);\n await getReminders(true, reminderFiledForSearchApiMethod);\n } else {\n setAllRemindersRequested(false);\n await getReminders(false, reminderFiledForSearchApiMethod);\n }\n setLoading(false);\n },\n [getReminders, reminderFiledForSearchApiMethod]\n );\n\n // no dependencies in the array because we only want getReminders to run once\n useEffect(() => {\n if (reminderFiledForSearchApiMethod) {\n getReminders(false, reminderFiledForSearchApiMethod);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reminderFiledForSearchApiMethod]);\n\n return (\n <WidgetCard\n ref={ref}\n // title={'Reminders'}\n hideWidgetName={hideWidgetName}\n headerActions={\n <div className={classes.actions}>\n <FormControlLabel\n control={\n <Switch\n id='udpRecord-RemindersWidget-Switch'\n udprecordid='udpRecord-RemindersWidget-Switch'\n size='small'\n onChange={handleSwitchChange}\n />\n }\n label='All'\n style={{ marginRight: 8 }}\n />\n <FluentIconButton\n id='udpRecord-RemindersWidget-Sort'\n udprecordid='udpRecord-RemindersWidget-Sort'\n icon={SortIcon}\n onClick={sort}\n style={{ marginRight: 4 }}\n />\n <div className={classes.actionButton}>\n <FluentButton\n id='udpRecord-RemindersWidget-Complete'\n udprecordid='udpRecord-RemindersWidget-Complete'\n variant='contained'\n color='secondary'\n onClick={handleAcknowledgeClick}\n >\n {buttonProgress && (\n <CircularProgress\n size={24}\n color='primary'\n className={classes.fabProgress}\n />\n )}\n {t('Complete')}\n </FluentButton>\n </div>\n </div>\n }\n {...other}\n >\n {alertWarnings.length ? (\n alertWarnings.map((warning) => (\n <Alert severity={warning.severity || 'warning'}>\n {warning.message || ''}\n </Alert>\n ))\n ) : (\n <RemindersCard\n reminders={reminders}\n setReminders={setReminders}\n loading={loading}\n onLoadedNodeClick={onLoadedNodeClick}\n getNodeToLoad={getNodeToLoad}\n getIcon={getIcon}\n updateRemindersAcknowledgement={updateRemindersAcknowledgement}\n />\n )}\n\n {children}\n </WidgetCard>\n );\n};\n\nexport default forwardRef(RemindersWidget);\n","export * from './RemindersWidget';\nexport {default} from './RemindersWidget';\n"],"mappings":"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"}
1
+ {"version":3,"file":"RemindersWidget-u_oonyMf.js","names":["uuid","reminders","WidgetCard"],"sources":["../src/UI/widgets/library/RemindersWidget/RemindersWidget.jsx","../src/UI/widgets/library/RemindersWidget/index.ts"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useState\n} from 'react';\nimport WidgetCard from '../../WidgetCard';\nimport { RemindersCard } from '../../../../reminders/RemindersCard';\nimport { FluentButton } from '../../../inputs/buttons/FluentButton';\nimport {\n CircularProgress,\n makeStyles,\n FormControlLabel,\n Switch\n} from '@material-ui/core';\nimport { useTranslation } from 'react-i18next';\nimport { useUser } from '../../../../utilities/auth/useUser';\nimport {\n getSearchIdentifiers,\n getSearchObject\n} from '../../../../utilities/search/SearchUtilities';\nimport {\n executeQueryAdHoc,\n executeQueryWithParameters,\n getBaseMethod\n} from '../../../../udp/utilities/methodUtils';\nimport {\n LogicalSearchOperatorEnums,\n UdpEnums,\n UdpReminderFiledForType\n} from '../../../../enums/unitySystemEnums';\nimport { useActionState } from '../../../../hooks/useActions';\nimport { useHandleAxiosSnackbar } from '../../../../utilities/apiHelpers';\nimport { FluentIconButton } from '../../../inputs/buttons/FluentIconButton';\nimport { SortIcon } from '@fluentui/react-icons';\nimport { Alert } from '@material-ui/lab';\nimport { v4 as uuid } from 'uuid';\n\n// export const layout = {\n// w: { default: 2, min: 0, max: 4 },\n// h: { default: 2, min: 0, max: 4 }\n// };\n\nconst useStyles = makeStyles((theme) => ({\n root: {},\n actions: {\n display: 'flex',\n alignItems: 'center',\n width: '100%',\n justifyContent: 'flex-end'\n },\n actionButton: {\n marginRight: theme.spacing(0.25),\n position: 'relative'\n },\n fabProgress: {\n position: 'absolute',\n top: 4,\n left: '35%',\n zIndex: 1\n }\n}));\n\nexport const RemindersWidget = (props, ref) => {\n const { children, params, setParam, ...other } = props;\n const { onLoadedNodeClick, hideWidgetName, tree, catalogObjects } = params;\n\n const [sortDirection, setSortDirection] = useState(null);\n const [reminders, setReminders] = useState(null);\n const [loading, setLoading] = useState(false);\n const [allRemindersRequested, setAllRemindersRequested] = useState(false);\n const [buttonProgress, setButtonProgress] = useState(false);\n const [alertWarnings, setAlertWarnings] = useState([]);\n\n const classes = useStyles(props);\n const actionState = useActionState();\n const { catalogPromotedEntities } = actionState;\n const { handleErrorSnackbar } = useHandleAxiosSnackbar();\n const { t } = useTranslation();\n const user = useUser();\n\n const reminderFiledForSearchApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder_Filed_For,\n 'unityBaseSearchMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const updateReminderApiMethod = useMemo(() => {\n return getBaseMethod(\n UdpEnums.Udp_Reminder,\n 'unityBaseUpdateMethod',\n catalogPromotedEntities\n );\n }, [catalogPromotedEntities]);\n\n const currentSortDirection = useMemo(() => {\n if (sortDirection === 'asc') {\n return 'desc';\n } else if (sortDirection === 'desc') {\n return 'asc';\n } else {\n return null;\n }\n }, [sortDirection]);\n\n const getNodeToLoad = useCallback(\n (reminder) => {\n const nodeToLoad = {};\n const domainObject = reminder?.domainObject;\n const entityBusinessKey = reminder?.entityBusinessKey || '';\n let treeStructureId = '';\n let apiMethodId = '';\n const matchingNode = tree?.treeStructure?.find(\n (node) => node.properties?.catalogReturnObject === domainObject\n );\n\n if (matchingNode) {\n treeStructureId = matchingNode.id;\n if (!matchingNode.parentId) {\n apiMethodId = tree.apiMethodInstance.apiMethodId;\n } else {\n const associatedInquiryTree =\n matchingNode.properties?.associatedInquiryTree;\n if (associatedInquiryTree) {\n apiMethodId =\n associatedInquiryTree.apiMethodInstance?.apiMethodId || '';\n }\n }\n }\n nodeToLoad.apiMethodId = apiMethodId;\n\n const searchIdentifiers = getSearchIdentifiers(\n catalogObjects,\n domainObject\n );\n const filterElements = [];\n const searchValue = entityBusinessKey.split('|')?.[1];\n const values = searchValue.split(',');\n\n searchIdentifiers.forEach((searchIdentifier, index) => {\n const searchField = searchIdentifier\n ? searchIdentifier.charAt(0).toUpperCase() + searchIdentifier.slice(1)\n : '';\n filterElements.push({\n searchField: searchField,\n searchOperator: '=',\n searchValue: values[index]\n });\n });\n\n nodeToLoad.queryPayload = getSearchObject(\n filterElements,\n 1,\n 50,\n true,\n LogicalSearchOperatorEnums.And\n );\n\n nodeToLoad.nodeDetails = {\n catalogReturnObject: domainObject,\n treeStructureId: treeStructureId\n };\n\n return nodeToLoad;\n },\n [tree, catalogObjects]\n );\n\n const getIcon = useCallback(\n (reminder) => {\n const domainObject = reminder?.domainObject;\n const matchingNode = tree?.treeStructure?.find(\n (node) => node.properties?.catalogReturnObject === domainObject\n );\n return matchingNode?.properties?.defaultIcon || {};\n },\n [tree]\n );\n\n const sortByDate = useCallback((reminderList, direction) => {\n const sortedReminders = [...reminderList];\n if (direction === 'asc') {\n sortedReminders.sort(\n (a, b) => new Date(b.reminderDate) - new Date(a.reminderDate)\n );\n } else if (direction === 'desc') {\n sortedReminders.sort(\n (a, b) => new Date(a.reminderDate) - new Date(b.reminderDate)\n );\n }\n setReminders(sortedReminders);\n }, []);\n\n const sort = useCallback(() => {\n sortByDate(reminders, sortDirection || 'desc');\n if (sortDirection === 'desc' || !sortDirection) {\n setSortDirection('asc');\n } else if (sortDirection === 'asc') {\n setSortDirection('desc');\n }\n }, [reminders, sortByDate, sortDirection]);\n\n const getReminders = useCallback(\n async (allRequested = false, rffSearchApiMethod) => {\n let remindersList = [];\n const warnings = [];\n\n if (!reminders) {\n setLoading(true);\n }\n\n let filterElements = [\n {\n searchField: 'Reminder.Acknowledged',\n searchValue: false,\n searchOperator: '=',\n groupId: 1\n },\n {\n searchField: 'Reminder.ReminderDate',\n searchValue: new Date(),\n searchOperator: '<=',\n groupId: 1\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.System,\n searchOperator: '=',\n groupId: 2\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.User,\n searchOperator: '=',\n groupId: 3\n },\n\n {\n searchField: 'Reminder.UnityUserID',\n searchValue: user.id,\n searchOperator: '=',\n groupId: 3\n }\n ];\n\n let filterGroups = [\n {\n groupId: 1,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: null\n },\n {\n groupId: 2,\n logicalSearchOperator: LogicalSearchOperatorEnums.Or,\n parentGroupId: null\n },\n {\n groupId: 3,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: 2\n }\n ];\n\n if (allRequested) {\n filterElements = [\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.System,\n searchOperator: '=',\n groupId: 2\n },\n {\n searchField: 'Type',\n searchValue: UdpReminderFiledForType.User,\n searchOperator: '=',\n groupId: 3\n },\n {\n searchField: 'Reminder.UnityUserID',\n searchValue: user.id,\n searchOperator: '=',\n groupId: 3\n }\n ];\n\n filterGroups = [\n {\n groupId: 2,\n logicalSearchOperator: LogicalSearchOperatorEnums.Or,\n parentGroupId: null\n },\n {\n groupId: 3,\n logicalSearchOperator: LogicalSearchOperatorEnums.And,\n parentGroupId: 2\n }\n ];\n }\n\n const searchObject = getSearchObject(\n filterElements,\n 1,\n 200,\n true,\n LogicalSearchOperatorEnums.And,\n filterGroups\n );\n const data = { data: searchObject };\n\n if (rffSearchApiMethod) {\n if (!rffSearchApiMethod.apiMethodId) {\n warnings.push({\n id: uuid(),\n severity: 'warning',\n message: t('Search ReminderFiledFor Method Not Promoted')\n });\n } else {\n const response = await executeQueryAdHoc(\n data,\n rffSearchApiMethod.apiMethodId\n ).catch((e) => {\n setLoading(false);\n });\n\n if (response?.status === 200) {\n const pageList = response.data.pageList;\n if (pageList?.length) {\n remindersList = pageList.map((item) => ({\n ...item.reminder,\n domainObject: item.domainObject,\n filedToType: item.type,\n entityBusinessKey: item.entityBusinessKey\n }));\n }\n } else {\n warnings.push({\n id: uuid(),\n severity: 'error',\n message: t('Could not retrieve reminders')\n });\n }\n }\n }\n // Filter for reminders that belong to any of the domains within the tree\n const treeDomains = tree?.treeStructure.map(\n (node) => node.properties?.catalogReturnObject\n );\n if (treeDomains.length) {\n remindersList = remindersList.filter((reminder) =>\n treeDomains.includes(reminder.domainObject)\n );\n } else {\n remindersList = [];\n }\n setAlertWarnings(warnings);\n setLoading(false);\n sortByDate(remindersList, currentSortDirection);\n },\n [t, user, reminders, sortByDate, currentSortDirection, tree]\n );\n\n const updateRemindersAcknowledgement = useCallback(\n async (reminders) => {\n if (updateReminderApiMethod) {\n const updatedPromises = [];\n reminders.forEach((reminder) => {\n reminder.acknowledged = reminder.checked;\n const data = {\n requestBody: {\n ...reminder\n }\n };\n data['{iD}'] = reminder.id;\n updatedPromises.push(\n executeQueryWithParameters(\n { data },\n updateReminderApiMethod.apiMethodId\n )\n );\n });\n await Promise.all(updatedPromises.map((p) => p.catch((e) => e))).then(\n (responses) => {\n responses.forEach((response) => {\n if (response.status === 200) {\n const entityBusinessKey = response.data.entityBusinessKey;\n const matchingReminder = reminders?.find(\n (nftu) => nftu.value === entityBusinessKey\n );\n if (!matchingReminder) {\n console.warn(`Reminder not updated for all file to entities`);\n }\n }\n });\n }\n );\n } else {\n handleErrorSnackbar(null, 'Update Reminder Method Not Promoted');\n }\n },\n [updateReminderApiMethod, handleErrorSnackbar]\n );\n\n const handleAcknowledgeClick = useCallback(async () => {\n const acknowledgedReminders = reminders?.filter((r) => r.checked);\n if (acknowledgedReminders.length) {\n setButtonProgress(true);\n await updateRemindersAcknowledgement(acknowledgedReminders);\n setButtonProgress(false);\n getReminders(allRemindersRequested, reminderFiledForSearchApiMethod);\n }\n }, [\n reminders,\n getReminders,\n updateRemindersAcknowledgement,\n allRemindersRequested,\n reminderFiledForSearchApiMethod\n ]);\n\n const handleSwitchChange = useCallback(\n async (event) => {\n setLoading(true);\n if (event.target.checked) {\n setAllRemindersRequested(event.target.checked);\n await getReminders(true, reminderFiledForSearchApiMethod);\n } else {\n setAllRemindersRequested(false);\n await getReminders(false, reminderFiledForSearchApiMethod);\n }\n setLoading(false);\n },\n [getReminders, reminderFiledForSearchApiMethod]\n );\n\n // no dependencies in the array because we only want getReminders to run once\n useEffect(() => {\n if (reminderFiledForSearchApiMethod) {\n getReminders(false, reminderFiledForSearchApiMethod);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reminderFiledForSearchApiMethod]);\n\n return (\n <WidgetCard\n ref={ref}\n // title={'Reminders'}\n hideWidgetName={hideWidgetName}\n headerActions={\n <div className={classes.actions}>\n <FormControlLabel\n control={\n <Switch\n id='udpRecord-RemindersWidget-Switch'\n udprecordid='udpRecord-RemindersWidget-Switch'\n size='small'\n onChange={handleSwitchChange}\n />\n }\n label='All'\n style={{ marginRight: 8 }}\n />\n <FluentIconButton\n id='udpRecord-RemindersWidget-Sort'\n udprecordid='udpRecord-RemindersWidget-Sort'\n icon={SortIcon}\n onClick={sort}\n style={{ marginRight: 4 }}\n />\n <div className={classes.actionButton}>\n <FluentButton\n id='udpRecord-RemindersWidget-Complete'\n udprecordid='udpRecord-RemindersWidget-Complete'\n variant='contained'\n color='secondary'\n onClick={handleAcknowledgeClick}\n >\n {buttonProgress && (\n <CircularProgress\n size={24}\n color='primary'\n className={classes.fabProgress}\n />\n )}\n {t('Complete')}\n </FluentButton>\n </div>\n </div>\n }\n {...other}\n >\n {alertWarnings.length ? (\n alertWarnings.map((warning) => (\n <Alert severity={warning.severity || 'warning'}>\n {warning.message || ''}\n </Alert>\n ))\n ) : (\n <RemindersCard\n reminders={reminders}\n setReminders={setReminders}\n loading={loading}\n onLoadedNodeClick={onLoadedNodeClick}\n getNodeToLoad={getNodeToLoad}\n getIcon={getIcon}\n updateRemindersAcknowledgement={updateRemindersAcknowledgement}\n />\n )}\n\n {children}\n </WidgetCard>\n );\n};\n\nexport default forwardRef(RemindersWidget);\n","export * from './RemindersWidget';\nexport {default} from './RemindersWidget';\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import { t as UtilitySideBar } from "./UtilitySideBar-wvrocDGI.js";
7
7
  import { t as PageActionWrapper } from "./PageActionWrapper-BBkGtnC6.js";
8
8
  import { t as getMenuItemsRecursively } from "./menuUtilities-Da5uVIJ8.js";
9
9
  import { n as useMenuContext } from "./MenuProvider-BuTAUs0Z.js";
10
- import { t as UdpRoutes } from "./routes-BxMFj34q.js";
10
+ import { t as UdpRoutes } from "./routes-DM7kVvCm.js";
11
11
  import { c as NavigationSidebar_default, n as SiteHeader_default } from "./SiteHeader-CuOFCr7D.js";
12
12
  import { t as useTenant } from "./useTenant-CGaZEBEJ.js";
13
13
  import { t as UtilityBar } from "./utilityDisplay-DtdjV7V1.js";
@@ -286,4 +286,4 @@ Shell.propTypes = {
286
286
 
287
287
  //#endregion
288
288
  export { Shell as t };
289
- //# sourceMappingURL=Shell-B8oi58iV.js.map
289
+ //# sourceMappingURL=Shell-a2L-cKzs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Shell-B8oi58iV.js","names":["menus","Switch","SiteHeader","NavigationSidebar","FUIAppSwitcher"],"sources":["../src/shell/Shell.jsx"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback, Suspense } from 'react';\nimport { makeStyles, Drawer, useMediaQuery, useTheme } from '@material-ui/core';\nimport NavigationSidebar from './ui/NavigationSidebar';\nimport SiteHeader from './ui/SiteHeader';\nimport { UtilityBar } from '../UI/utilityDisplay/UtilityBar';\nimport { useTranslation } from 'react-i18next';\nimport FUIAppSwitcher from './ui/appSwitcher/FUIAppSwitcher';\nimport { getMenuItemsRecursively } from '../utilities/menus/menuUtilities';\nimport clsx from 'clsx';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport PropTypes from 'prop-types';\nimport { useUser } from '../utilities/auth/useUser';\nimport { ActionProvider } from '../utilities/provider/ActionProvider';\nimport { PageActionWrapper } from '../actions/PageActionWrapper';\nimport { useInquiryStore } from '../stores/inquiryStore';\nimport {\n useSetInitialShellVisibility,\n useShellStore\n} from '../stores/shellStore';\n\nimport { useBuildEnvironment, APP_RIBBON_SPACE } from './ui/useBuildEnvironment';\nimport { ChatBotProvider } from '../utilities/chatBot/ChatBotProvider';\nimport { UserProfileMenuWrapper } from '../shell/ui/profile';\nimport { useMenuContext } from '../utilities/menus/MenuProvider';\nimport { LoadingIndicator } from '../UI/loading/LoadingIndicator';\nimport { useTenant } from '../utilities/tenant';\nimport { BrowserRouter, Switch} from 'react-router-dom';\n//import { usePreloadPages } from '../hooks/usePreloadPages';\nimport { PageLoading } from '../UI';\nimport { UdpRoutes } from '../routes';\n// load the page container module so its loaded when we need it\nvoid import('../page/PageContainer');\nconst MenuTypeEnums = {\n Left_Menu: 1,\n Application_Menu: 2,\n Builders_Menu: 3,\n Favorites_Menu: 4\n};\n\nconst useStyles = makeStyles(\n (theme) => ({\n '@global': {\n html: {\n minHeight: '100%'\n },\n 'html, body, #root': {\n display: 'flex',\n flexDirection: 'column'\n },\n 'body, #root': {\n flex: 1\n }\n },\n root: {\n flex: 1,\n minHeight: '100vh',\n display: 'grid',\n gridTemplateAreas: ['sidebar header', 'sidebar content']\n .map((line) => `\"${line}\"`)\n .join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n header: {\n gridArea: 'header'\n },\n sidebar: {\n gridArea: 'sidebar'\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${56 + appRibbonSpace}px)`,\n overflowY: 'auto'\n },\n paper: {\n width: '100%',\n [theme.breakpoints.up('sm')]: {\n width: (props) => props.drawerWidth || 520\n }\n }\n }),\n { name: 'Layout' }\n);\n\n/**\n * Core site layout common to all pages\n */\nexport const Shell = (props) => {\n\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n ribbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const {\n children,\n useNewRoutes,\n userAvatar = <UserProfileMenuWrapper />,\n appContent,\n leftMenu,\n appSelectorMenus,\n siteName,\n className,\n navRoot,\n hideToggle,\n useMockData,\n mockMenus,\n user: passedInUser,\n unityUrl,\n expander,\n sidebarTitle,\n navMenuHoverOn = true,\n secondExtended,\n toggleOne,\n toggleTwo,\n closePrimary,\n closeSecondary,\n panelExpanded,\n panelExpandedSecondary,\n setPanelExpanded = false,\n setPanelExpandedSecondary = false,\n breadCrumbAltLabelList = [],\n currentLocation,\n utilitySidebarResizable,\n utilitySidebarToggleOverride,\n onUtilitySidebarToggleExpandClick,\n hideLayout = false,\n getAccessToken,\n switcherData,\n selectedItem,\n switcherWidth,\n languages,\n projectSwitcherColor,\n getWidget,\n isValidWidget,\n appSwitcherHeader,\n hamburgerMenuAccessRole,\n hideLanguageSwitcher = false,\n subheader,\n hideHelpCenter = false\n } = props;\n const contextUser = useUser();\n const user = passedInUser ?? contextUser;\n const { setGetWidget, setIsValidWidget, shellHidden } = useShellStore();\n const [appSwitcherMobile, setAppSwitcherMobile] = useState(false);\n const [appSwitcherDesktop, setAppSwitcherDesktop] = useState(false);\n const { i18n } = useTranslation();\n const inquiryTitle = useInquiryStore((state) => state.title);\n useSetInitialShellVisibility();\n const tenant = useTenant();\n const activeTenant = tenant?.activeTenant ?? null;\n\n //usePreloadPages();\n\n const menuContext = useMenuContext?.();\n const resolvedLeftMenu = leftMenu ?? menuContext?.leftMenu;\n const resolvedAppSelectorMenus =\n appSelectorMenus ?? menuContext?.appSelectorMenus;\n const providedLanguages = languages ?? menuContext?.languages;\n const resolvedLanguages = Array.isArray(providedLanguages)\n ? providedLanguages\n : [];\n useEffect(() => {\n setGetWidget(getWidget);\n return () => setGetWidget(null);\n }, [getWidget, setGetWidget]);\n\n useEffect(() => {\n setIsValidWidget(isValidWidget);\n return () => setIsValidWidget(null);\n }, [isValidWidget, setIsValidWidget]);\n\n const getMenuItems = useCallback(\n (menuTypeId, menus) => {\n if (!menus && !useMockData) {\n return [];\n }\n const menusToFilter = useMockData ? mockMenus : menus;\n\n const foundMenus = menusToFilter.filter(\n (menu) => menu.menuTypeId === menuTypeId && menu.active\n );\n\n if (foundMenus) {\n return foundMenus.reduce((menuItemInstanceStructureViews, menu) => {\n return [\n ...menuItemInstanceStructureViews,\n ...menu.menuItemInstanceStructureViews\n ];\n }, []);\n } else {\n return [];\n }\n },\n [useMockData, mockMenus]\n );\n\n const menus = useMemo(() => {\n const menuItems = getMenuItems(1, resolvedLeftMenu);\n return getMenuItemsRecursively(menuItems, true, user);\n }, [getMenuItems, user, resolvedLeftMenu]);\n\n const theme = useTheme();\n const mobile = useMediaQuery(theme.breakpoints.up('sm'));\n\n const handleAppSwitcher = (type, bool) => {\n if (type === 'mobile') {\n setAppSwitcherMobile(bool);\n } else {\n setAppSwitcherDesktop(bool);\n }\n };\n\n const builderMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Builders_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const favoriteMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Favorites_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const appMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Application_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const hideAppMenu = useMemo(\n () =>\n !resolvedAppSelectorMenus ||\n (hamburgerMenuAccessRole &&\n !user?.roleNames.includes(hamburgerMenuAccessRole)),\n [user, resolvedAppSelectorMenus, hamburgerMenuAccessRole]\n );\n\n useEffect(() => {\n i18n.changeLanguage('en-US');\n }, [i18n]);\n\n const isUserInitialized = Boolean(user?.id);\n const isTenantInitialized = Boolean(activeTenant?.tenantId);\n const isThemeInitialized = Boolean(theme?.isInitialized);\n\n if (!isUserInitialized || !isTenantInitialized || !isThemeInitialized) {\n return <LoadingIndicator />;\n }\n let enrichedChildren = children;\n if(useNewRoutes)\n enrichedChildren = <Suspense fallback={<PageLoading />}>\n <Switch>{children}<UdpRoutes/></Switch></Suspense>;\n if (hideLayout) {\n return <div>{enrichedChildren}</div>;\n }\n return (\n <ChatBotProvider>\n <ActionProvider>\n <div className={classes.root}>\n {!shellHidden && (\n <SiteHeader\n className={classes.header}\n siteName={siteName}\n appContent={appContent}\n userAvatar={userAvatar}\n breadCrumbRoot={navRoot}\n setAppSwitcherOpen={(type, bool) => handleAppSwitcher(type, bool)}\n breadCrumbAltLabelList={breadCrumbAltLabelList}\n currentLocation={currentLocation}\n switcherData={switcherData}\n selectedItem={selectedItem}\n switcherWidth={switcherWidth}\n hideAppLaunch={hideAppMenu}\n languages={resolvedLanguages}\n hideLanguageSwitcher={hideLanguageSwitcher}\n backgroundColor={projectSwitcherColor}\n hideHelpCenter={hideHelpCenter}\n />\n )}\n\n <div style={{ display: 'flex' }} className={classes.sidebar}>\n {!shellHidden && mobile && (\n <NavigationSidebar\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n {expander && (\n <div>\n <UtilitySideBar\n title={inquiryTitle || sidebarTitle}\n resizable={utilitySidebarResizable}\n utilitySidebarToggleOverride={utilitySidebarToggleOverride}\n onUtilitySidebarToggleExpandClick={\n onUtilitySidebarToggleExpandClick\n }\n sidebarHidden={shellHidden}\n {...props}\n />\n </div>\n )}\n </div>\n\n <div className={classes.content}>\n <UtilityBar\n className={clsx(className)}\n gutters={false}\n hideToggle={hideToggle}\n expander={expander}\n secondExtended={secondExtended}\n toggleOne={toggleOne}\n toggleTwo={toggleTwo}\n closePrimary={closePrimary}\n closeSecondary={closeSecondary}\n expanded={panelExpanded}\n expandedSecondary={panelExpandedSecondary}\n setExpanded={setPanelExpanded}\n setExpandedSecondary={setPanelExpandedSecondary}\n />\n\n <PageActionWrapper>{subheader}{enrichedChildren}</PageActionWrapper>\n </div>\n <Drawer\n variant='temporary'\n anchor='left'\n open={appSwitcherDesktop}\n classes={\n !mobile\n ? {}\n : !resolvedAppSelectorMenus\n ? {}\n : { paper: classes.paper }\n }\n onClose={() => handleAppSwitcher('desktop', false)}\n >\n {mobile && resolvedAppSelectorMenus && (\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('desktop', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n )}\n {(!mobile || (mobile && !resolvedAppSelectorMenus)) && (\n <NavigationSidebar\n toggle={false}\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n </Drawer>\n\n <Drawer\n variant='temporary'\n anchor='right'\n open={appSwitcherMobile}\n classes={{ paper: classes.paper }}\n onClose={() => handleAppSwitcher('mobile', false)}\n >\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('mobile', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n </Drawer>\n </div>\n </ActionProvider>\n </ChatBotProvider>\n );\n};\n\nShell.propTypes = {\n /**\n * The newest propTypes have been added but older ones are missing @todo: add missing propTypes for Shell.\n */\n\n /**\n * The array used to map for label and functions to list items.\n */\n switcherData: PropTypes.array,\n /**\n * The active label displayed.\n */\n selectedItem: PropTypes.string,\n /**\n * Provides a method set the selector width. Default is 100.\n */\n switcherWidth: PropTypes.number,\n /**\n * Children nodes\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired,\n\n /**\n * Name of site\n */\n siteName: PropTypes.string,\n\n /**\n * Component to render for the user Avatar\n */\n userAvatar: PropTypes.element,\n\n appContent: PropTypes.element,\n\n leftMenu: PropTypes.array,\n\n appSelectorMenus: PropTypes.array,\n\n className: PropTypes.object,\n\n navRoot: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.node]),\n\n /**\n * Should the shell use mock data\n */\n useMockData: PropTypes.bool,\n\n mockMenus: PropTypes.array,\n\n unityUrl: PropTypes.string,\n\n expander: PropTypes.bool,\n\n sidebarTitle: PropTypes.string,\n\n navMenuHoverOn: PropTypes.bool,\n\n toggleOne: PropTypes.bool,\n\n toggleTwo: PropTypes.bool,\n\n closePrimary: PropTypes.bool,\n\n closeSecondary: PropTypes.bool,\n\n panelExpanded: PropTypes.bool,\n\n panelExpandedSecondary: PropTypes.bool,\n\n setPanelExpanded: PropTypes.func,\n\n setPanelExpandedSecondary: PropTypes.func,\n\n breadCrumbAltLabelList: PropTypes.array,\n\n currentLocation: PropTypes.object,\n\n utilitySidebarResizable: PropTypes.bool,\n\n utilitySidebarToggleOverride: PropTypes.bool,\n\n onUtilitySidebarToggleExpandClick: PropTypes.func,\n\n hideLayout: PropTypes.bool,\n\n languages: PropTypes.arrayOf(PropTypes.object),\n\n /**\n * Passes the background color on the project switcher (default: theme secondary)\n */\n projectSwitcherColor: PropTypes.string,\n getWidget: PropTypes.func,\n isValidWidget: PropTypes.func,\n currentTenant: PropTypes.object,\n hamburgerMenuAccessRole: PropTypes.string\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA+BK,OAAO;AACZ,MAAM,gBAAgB;CACpB,WAAW;CACX,kBAAkB;CAClB,eAAe;CACf,gBAAgB;CACjB;AAED,MAAM,YAAY,YACf,WAAW;CACV,WAAW;EACT,MAAM,EACJ,WAAW,QACZ;EACD,qBAAqB;GACnB,SAAS;GACT,eAAe;GAChB;EACD,eAAe,EACb,MAAM,GACP;EACF;CACD,MAAM;EACJ,MAAM;EACN,WAAW;EACX,SAAS;EACT,mBAAmB,CAAC,kBAAkB,kBAAkB,CACrD,KAAK,SAAS,IAAI,KAAK,GAAG,CAC1B,KAAK,IAAI;EACZ,qBAAqB;EACrB,kBAAkB;EACnB;CACD,QAAQ,EACN,UAAU,UACX;CACD,SAAS,EACP,UAAU,WACX;CACD,SAAS;EACP,UAAU;EACV,SAAS;EACT,eAAe;EACf,UAAU;EACV,QAAQ;EACR,SAAS,EAAE,qBAAqB,gBAAgB,KAAK,eAAe;EACpE,WAAW;EACZ;CACD,OAAO;EACL,OAAO;GACN,MAAM,YAAY,GAAG,KAAK,GAAG,EAC5B,QAAQ,UAAU,MAAM,eAAe,KACxC;EACF;CACF,GACD,EAAE,MAAM,UAAU,CACnB;;;;AAKD,MAAa,SAAS,UAAU;CAE9B,MAAM,WAAW,qBAAqB;CACtC,MAAM,UAAU,UAAU;EACxB,GAAG;EACH,aAAa,WAAW,mBAAmB;EAC5C,CAAC;CACF,MAAM,EACJ,UACA,cACA,aAAa,oCAAC,6BAAyB,EACvC,YACA,UACA,kBACA,UACA,WACA,SACA,YACA,aACA,WACA,MAAM,cACN,UACA,UACA,cACA,iBAAiB,MACjB,gBACA,WACA,WACA,cACA,gBACA,eACA,wBACA,mBAAmB,OACnB,4BAA4B,OAC5B,yBAAyB,EAAE,EAC3B,iBACA,yBACA,8BACA,mCACA,aAAa,OACb,gBACA,cACA,cACA,eACA,WACA,sBACA,WACA,eACA,mBACA,yBACA,uBAAuB,OACvB,WACA,iBAAiB,UACf;CACJ,MAAM,cAAc,SAAS;CAC7B,MAAM,OAAO,gBAAgB;CAC7B,MAAM,EAAE,cAAc,kBAAkB,gBAAgB,eAAe;CACvE,MAAM,CAAC,mBAAmB,wBAAwB,SAAS,MAAM;CACjE,MAAM,CAAC,oBAAoB,yBAAyB,SAAS,MAAM;CACnE,MAAM,EAAE,SAAS,gBAAgB;CACjC,MAAM,eAAe,iBAAiB,UAAU,MAAM,MAAM;AAC5D,+BAA8B;CAE9B,MAAM,eADS,WAAW,EACG,gBAAgB;CAI7C,MAAM,cAAc,kBAAkB;CACtC,MAAM,mBAAmB,YAAY,aAAa;CAClD,MAAM,2BACJ,oBAAoB,aAAa;CACnC,MAAM,oBAAoB,aAAa,aAAa;CACpD,MAAM,oBAAoB,MAAM,QAAQ,kBAAkB,GACtD,oBACA,EAAE;AACN,iBAAgB;AACd,eAAa,UAAU;AACvB,eAAa,aAAa,KAAK;IAC9B,CAAC,WAAW,aAAa,CAAC;AAE7B,iBAAgB;AACd,mBAAiB,cAAc;AAC/B,eAAa,iBAAiB,KAAK;IAClC,CAAC,eAAe,iBAAiB,CAAC;CAErC,MAAM,eAAe,aAClB,YAAY,YAAU;AACrB,MAAI,CAACA,WAAS,CAAC,YACb,QAAO,EAAE;EAIX,MAAM,cAFgB,cAAc,YAAYA,SAEf,QAC9B,SAAS,KAAK,eAAe,cAAc,KAAK,OAClD;AAED,MAAI,WACF,QAAO,WAAW,QAAQ,gCAAgC,SAAS;AACjE,UAAO,CACL,GAAG,gCACH,GAAG,KAAK,+BACT;KACA,EAAE,CAAC;MAEN,QAAO,EAAE;IAGb,CAAC,aAAa,UAAU,CACzB;CAED,MAAM,QAAQ,cAAc;AAE1B,SAAO,wBADW,aAAa,GAAG,iBAAiB,EACT,MAAM,KAAK;IACpD;EAAC;EAAc;EAAM;EAAiB,CAAC;CAE1C,MAAM,QAAQ,UAAU;CACxB,MAAM,SAAS,cAAc,MAAM,YAAY,GAAG,KAAK,CAAC;CAExD,MAAM,qBAAqB,MAAM,SAAS;AACxC,MAAI,SAAS,SACX,sBAAqB,KAAK;MAE1B,uBAAsB,KAAK;;CAI/B,MAAM,cAAc,cAAc;AAKhC,SAAO,wBAJW,aAChB,cAAc,eACd,yBACD,EACyC,MAAM,MAAM,eAAe;IACpE;EAAC;EAAc;EAAM;EAA0B;EAAe,CAAC;CAElE,MAAM,eAAe,cAAc;AAKjC,SAAO,wBAJW,aAChB,cAAc,gBACd,yBACD,EACyC,MAAM,MAAM,eAAe;IACpE;EAAC;EAAc;EAAM;EAA0B;EAAe,CAAC;CAElE,MAAM,UAAU,cAAc;AAK5B,SAAO,wBAJW,aAChB,cAAc,kBACd,yBACD,EACyC,MAAM,MAAM,eAAe;IACpE;EAAC;EAAc;EAAM;EAA0B;EAAe,CAAC;CAElE,MAAM,cAAc,cAEhB,CAAC,4BACA,2BACC,CAAC,MAAM,UAAU,SAAS,wBAAwB,EACtD;EAAC;EAAM;EAA0B;EAAwB,CAC1D;AAED,iBAAgB;AACd,OAAK,eAAe,QAAQ;IAC3B,CAAC,KAAK,CAAC;CAEV,MAAM,oBAAoB,QAAQ,MAAM,GAAG;CAC3C,MAAM,sBAAsB,QAAQ,cAAc,SAAS;CAC3D,MAAM,qBAAqB,QAAQ,OAAO,cAAc;AAExD,KAAI,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,mBACjD,QAAO,oCAAC,uBAAmB;CAE7B,IAAI,mBAAmB;AACvB,KAAG,aACD,oBAAmB,oCAAC,YAAS,UAAU,oCAAC,kBAAc,IAClD,oCAACC,gBAAQ,UAAS,oCAAC,gBAAW,CAAS,CAAW;AACxD,KAAI,WACF,QAAO,oCAAC,aAAK,iBAAuB;AAEtC,QACE,oCAAC,uBACC,oCAAC,sBACC,oCAAC,SAAI,WAAW,QAAQ,QACrB,CAAC,eACA,oCAACC;EACC,WAAW,QAAQ;EACT;EACE;EACA;EACZ,gBAAgB;EAChB,qBAAqB,MAAM,SAAS,kBAAkB,MAAM,KAAK;EACzC;EACP;EACH;EACA;EACC;EACf,eAAe;EACf,WAAW;EACW;EACtB,iBAAiB;EACD;GAChB,EAGJ,oCAAC;EAAI,OAAO,EAAE,SAAS,QAAQ;EAAE,WAAW,QAAQ;IACjD,CAAC,eAAe,UACf,oCAACC;EACC,WAAW,QAAQ;EACnB,MAAM;EACU;EACV;EACN,gBAAgB;GAChB,EAEH,YACC,oCAAC,aACC,oCAAC;EACC,OAAO,gBAAgB;EACvB,WAAW;EACmB;EAE5B;EAEF,eAAe;EACf,GAAI;GACJ,CACE,CAEJ,EAEN,oCAAC,SAAI,WAAW,QAAQ,WACtB,oCAAC;EACC,WAAW,KAAK,UAAU;EAC1B,SAAS;EACG;EACF;EACM;EACL;EACA;EACG;EACE;EAChB,UAAU;EACV,mBAAmB;EACnB,aAAa;EACb,sBAAsB;GACtB,EAEF,oCAAC,yBAAmB,WAAW,iBAAqC,CAChE,EACN,oCAAC;EACC,SAAQ;EACR,QAAO;EACP,MAAM;EACN,SACE,CAAC,SACG,EAAE,GACF,CAAC,2BACC,EAAE,GACF,EAAE,OAAO,QAAQ,OAAO;EAEhC,eAAe,kBAAkB,WAAW,MAAM;IAEjD,UAAU,4BACT,oCAACC;EACC,eAAe,kBAAkB,WAAW,MAAM;EACpC;EACD;EACJ;EACC;EACJ;EACN,QAAQ;GACR,GAEF,CAAC,UAAW,UAAU,CAAC,6BACvB,oCAACD;EACC,QAAQ;EACR,WAAW,QAAQ;EACnB,MAAM;EACU;EACV;EACN,gBAAgB;GAChB,CAEG,EAET,oCAAC;EACC,SAAQ;EACR,QAAO;EACP,MAAM;EACN,SAAS,EAAE,OAAO,QAAQ,OAAO;EACjC,eAAe,kBAAkB,UAAU,MAAM;IAEjD,oCAACC;EACC,eAAe,kBAAkB,UAAU,MAAM;EACnC;EACD;EACJ;EACC;EACJ;EACN,QAAQ;GACR,CACK,CACL,CACS,CACD;;AAItB,MAAM,YAAY;CAQhB,cAAc,UAAU;CAIxB,cAAc,UAAU;CAIxB,eAAe,UAAU;CAIzB,UAAU,UAAU,UAAU,CAC5B,UAAU,QAAQ,UAAU,KAAK,EACjC,UAAU,KACX,CAAC,CAAC;CAKH,UAAU,UAAU;CAKpB,YAAY,UAAU;CAEtB,YAAY,UAAU;CAEtB,UAAU,UAAU;CAEpB,kBAAkB,UAAU;CAE5B,WAAW,UAAU;CAErB,SAAS,UAAU,UAAU;EAAC,UAAU;EAAQ,UAAU;EAAS,UAAU;EAAK,CAAC;CAKnF,aAAa,UAAU;CAEvB,WAAW,UAAU;CAErB,UAAU,UAAU;CAEpB,UAAU,UAAU;CAEpB,cAAc,UAAU;CAExB,gBAAgB,UAAU;CAE1B,WAAW,UAAU;CAErB,WAAW,UAAU;CAErB,cAAc,UAAU;CAExB,gBAAgB,UAAU;CAE1B,eAAe,UAAU;CAEzB,wBAAwB,UAAU;CAElC,kBAAkB,UAAU;CAE5B,2BAA2B,UAAU;CAErC,wBAAwB,UAAU;CAElC,iBAAiB,UAAU;CAE3B,yBAAyB,UAAU;CAEnC,8BAA8B,UAAU;CAExC,mCAAmC,UAAU;CAE7C,YAAY,UAAU;CAEtB,WAAW,UAAU,QAAQ,UAAU,OAAO;CAK9C,sBAAsB,UAAU;CAChC,WAAW,UAAU;CACrB,eAAe,UAAU;CACzB,eAAe,UAAU;CACzB,yBAAyB,UAAU;CACpC"}
1
+ {"version":3,"file":"Shell-a2L-cKzs.js","names":["menus","Switch","SiteHeader","NavigationSidebar","FUIAppSwitcher"],"sources":["../src/shell/Shell.jsx"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback, Suspense } from 'react';\nimport { makeStyles, Drawer, useMediaQuery, useTheme } from '@material-ui/core';\nimport NavigationSidebar from './ui/NavigationSidebar';\nimport SiteHeader from './ui/SiteHeader';\nimport { UtilityBar } from '../UI/utilityDisplay/UtilityBar';\nimport { useTranslation } from 'react-i18next';\nimport FUIAppSwitcher from './ui/appSwitcher/FUIAppSwitcher';\nimport { getMenuItemsRecursively } from '../utilities/menus/menuUtilities';\nimport clsx from 'clsx';\nimport { UtilitySideBar } from '../UI/utilityDisplay/UtilitySideBar';\nimport PropTypes from 'prop-types';\nimport { useUser } from '../utilities/auth/useUser';\nimport { ActionProvider } from '../utilities/provider/ActionProvider';\nimport { PageActionWrapper } from '../actions/PageActionWrapper';\nimport { useInquiryStore } from '../stores/inquiryStore';\nimport {\n useSetInitialShellVisibility,\n useShellStore\n} from '../stores/shellStore';\n\nimport { useBuildEnvironment, APP_RIBBON_SPACE } from './ui/useBuildEnvironment';\nimport { ChatBotProvider } from '../utilities/chatBot/ChatBotProvider';\nimport { UserProfileMenuWrapper } from '../shell/ui/profile';\nimport { useMenuContext } from '../utilities/menus/MenuProvider';\nimport { LoadingIndicator } from '../UI/loading/LoadingIndicator';\nimport { useTenant } from '../utilities/tenant';\nimport { BrowserRouter, Switch} from 'react-router-dom';\n//import { usePreloadPages } from '../hooks/usePreloadPages';\nimport { PageLoading } from '../UI';\nimport { UdpRoutes } from '../routes';\n// load the page container module so its loaded when we need it\nvoid import('../page/PageContainer');\nconst MenuTypeEnums = {\n Left_Menu: 1,\n Application_Menu: 2,\n Builders_Menu: 3,\n Favorites_Menu: 4\n};\n\nconst useStyles = makeStyles(\n (theme) => ({\n '@global': {\n html: {\n minHeight: '100%'\n },\n 'html, body, #root': {\n display: 'flex',\n flexDirection: 'column'\n },\n 'body, #root': {\n flex: 1\n }\n },\n root: {\n flex: 1,\n minHeight: '100vh',\n display: 'grid',\n gridTemplateAreas: ['sidebar header', 'sidebar content']\n .map((line) => `\"${line}\"`)\n .join(' '),\n gridTemplateColumns: 'auto 1fr',\n gridTemplateRows: 'auto 1fr'\n },\n header: {\n gridArea: 'header'\n },\n sidebar: {\n gridArea: 'sidebar'\n },\n content: {\n gridArea: 'content',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n zIndex: 1,\n height: ({ appRibbonSpace }) => `calc(100vh - ${56 + appRibbonSpace}px)`,\n overflowY: 'auto'\n },\n paper: {\n width: '100%',\n [theme.breakpoints.up('sm')]: {\n width: (props) => props.drawerWidth || 520\n }\n }\n }),\n { name: 'Layout' }\n);\n\n/**\n * Core site layout common to all pages\n */\nexport const Shell = (props) => {\n\n const buildEnv = useBuildEnvironment();\n const classes = useStyles({\n ...props,\n ribbonSpace: buildEnv ? APP_RIBBON_SPACE : 0\n });\n const {\n children,\n useNewRoutes,\n userAvatar = <UserProfileMenuWrapper />,\n appContent,\n leftMenu,\n appSelectorMenus,\n siteName,\n className,\n navRoot,\n hideToggle,\n useMockData,\n mockMenus,\n user: passedInUser,\n unityUrl,\n expander,\n sidebarTitle,\n navMenuHoverOn = true,\n secondExtended,\n toggleOne,\n toggleTwo,\n closePrimary,\n closeSecondary,\n panelExpanded,\n panelExpandedSecondary,\n setPanelExpanded = false,\n setPanelExpandedSecondary = false,\n breadCrumbAltLabelList = [],\n currentLocation,\n utilitySidebarResizable,\n utilitySidebarToggleOverride,\n onUtilitySidebarToggleExpandClick,\n hideLayout = false,\n getAccessToken,\n switcherData,\n selectedItem,\n switcherWidth,\n languages,\n projectSwitcherColor,\n getWidget,\n isValidWidget,\n appSwitcherHeader,\n hamburgerMenuAccessRole,\n hideLanguageSwitcher = false,\n subheader,\n hideHelpCenter = false\n } = props;\n const contextUser = useUser();\n const user = passedInUser ?? contextUser;\n const { setGetWidget, setIsValidWidget, shellHidden } = useShellStore();\n const [appSwitcherMobile, setAppSwitcherMobile] = useState(false);\n const [appSwitcherDesktop, setAppSwitcherDesktop] = useState(false);\n const { i18n } = useTranslation();\n const inquiryTitle = useInquiryStore((state) => state.title);\n useSetInitialShellVisibility();\n const tenant = useTenant();\n const activeTenant = tenant?.activeTenant ?? null;\n\n //usePreloadPages();\n\n const menuContext = useMenuContext?.();\n const resolvedLeftMenu = leftMenu ?? menuContext?.leftMenu;\n const resolvedAppSelectorMenus =\n appSelectorMenus ?? menuContext?.appSelectorMenus;\n const providedLanguages = languages ?? menuContext?.languages;\n const resolvedLanguages = Array.isArray(providedLanguages)\n ? providedLanguages\n : [];\n useEffect(() => {\n setGetWidget(getWidget);\n return () => setGetWidget(null);\n }, [getWidget, setGetWidget]);\n\n useEffect(() => {\n setIsValidWidget(isValidWidget);\n return () => setIsValidWidget(null);\n }, [isValidWidget, setIsValidWidget]);\n\n const getMenuItems = useCallback(\n (menuTypeId, menus) => {\n if (!menus && !useMockData) {\n return [];\n }\n const menusToFilter = useMockData ? mockMenus : menus;\n\n const foundMenus = menusToFilter.filter(\n (menu) => menu.menuTypeId === menuTypeId && menu.active\n );\n\n if (foundMenus) {\n return foundMenus.reduce((menuItemInstanceStructureViews, menu) => {\n return [\n ...menuItemInstanceStructureViews,\n ...menu.menuItemInstanceStructureViews\n ];\n }, []);\n } else {\n return [];\n }\n },\n [useMockData, mockMenus]\n );\n\n const menus = useMemo(() => {\n const menuItems = getMenuItems(1, resolvedLeftMenu);\n return getMenuItemsRecursively(menuItems, true, user);\n }, [getMenuItems, user, resolvedLeftMenu]);\n\n const theme = useTheme();\n const mobile = useMediaQuery(theme.breakpoints.up('sm'));\n\n const handleAppSwitcher = (type, bool) => {\n if (type === 'mobile') {\n setAppSwitcherMobile(bool);\n } else {\n setAppSwitcherDesktop(bool);\n }\n };\n\n const builderMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Builders_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const favoriteMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Favorites_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const appMenu = useMemo(() => {\n const menuItems = getMenuItems(\n MenuTypeEnums.Application_Menu,\n resolvedAppSelectorMenus\n );\n return getMenuItemsRecursively(menuItems, true, user, getAccessToken);\n }, [getMenuItems, user, resolvedAppSelectorMenus, getAccessToken]);\n\n const hideAppMenu = useMemo(\n () =>\n !resolvedAppSelectorMenus ||\n (hamburgerMenuAccessRole &&\n !user?.roleNames.includes(hamburgerMenuAccessRole)),\n [user, resolvedAppSelectorMenus, hamburgerMenuAccessRole]\n );\n\n useEffect(() => {\n i18n.changeLanguage('en-US');\n }, [i18n]);\n\n const isUserInitialized = Boolean(user?.id);\n const isTenantInitialized = Boolean(activeTenant?.tenantId);\n const isThemeInitialized = Boolean(theme?.isInitialized);\n\n if (!isUserInitialized || !isTenantInitialized || !isThemeInitialized) {\n return <LoadingIndicator />;\n }\n let enrichedChildren = children;\n if(useNewRoutes)\n enrichedChildren = <Suspense fallback={<PageLoading />}>\n <Switch>{children}<UdpRoutes/></Switch></Suspense>;\n if (hideLayout) {\n return <div>{enrichedChildren}</div>;\n }\n return (\n <ChatBotProvider>\n <ActionProvider>\n <div className={classes.root}>\n {!shellHidden && (\n <SiteHeader\n className={classes.header}\n siteName={siteName}\n appContent={appContent}\n userAvatar={userAvatar}\n breadCrumbRoot={navRoot}\n setAppSwitcherOpen={(type, bool) => handleAppSwitcher(type, bool)}\n breadCrumbAltLabelList={breadCrumbAltLabelList}\n currentLocation={currentLocation}\n switcherData={switcherData}\n selectedItem={selectedItem}\n switcherWidth={switcherWidth}\n hideAppLaunch={hideAppMenu}\n languages={resolvedLanguages}\n hideLanguageSwitcher={hideLanguageSwitcher}\n backgroundColor={projectSwitcherColor}\n hideHelpCenter={hideHelpCenter}\n />\n )}\n\n <div style={{ display: 'flex' }} className={classes.sidebar}>\n {!shellHidden && mobile && (\n <NavigationSidebar\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n {expander && (\n <div>\n <UtilitySideBar\n title={inquiryTitle || sidebarTitle}\n resizable={utilitySidebarResizable}\n utilitySidebarToggleOverride={utilitySidebarToggleOverride}\n onUtilitySidebarToggleExpandClick={\n onUtilitySidebarToggleExpandClick\n }\n sidebarHidden={shellHidden}\n {...props}\n />\n </div>\n )}\n </div>\n\n <div className={classes.content}>\n <UtilityBar\n className={clsx(className)}\n gutters={false}\n hideToggle={hideToggle}\n expander={expander}\n secondExtended={secondExtended}\n toggleOne={toggleOne}\n toggleTwo={toggleTwo}\n closePrimary={closePrimary}\n closeSecondary={closeSecondary}\n expanded={panelExpanded}\n expandedSecondary={panelExpandedSecondary}\n setExpanded={setPanelExpanded}\n setExpandedSecondary={setPanelExpandedSecondary}\n />\n\n <PageActionWrapper>{subheader}{enrichedChildren}</PageActionWrapper>\n </div>\n <Drawer\n variant='temporary'\n anchor='left'\n open={appSwitcherDesktop}\n classes={\n !mobile\n ? {}\n : !resolvedAppSelectorMenus\n ? {}\n : { paper: classes.paper }\n }\n onClose={() => handleAppSwitcher('desktop', false)}\n >\n {mobile && resolvedAppSelectorMenus && (\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('desktop', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n )}\n {(!mobile || (mobile && !resolvedAppSelectorMenus)) && (\n <NavigationSidebar\n toggle={false}\n className={classes.sidebar}\n data={menus}\n navMenuHoverOn={navMenuHoverOn}\n user={user}\n useGlobalState={true}\n />\n )}\n </Drawer>\n\n <Drawer\n variant='temporary'\n anchor='right'\n open={appSwitcherMobile}\n classes={{ paper: classes.paper }}\n onClose={() => handleAppSwitcher('mobile', false)}\n >\n <FUIAppSwitcher\n onClose={() => handleAppSwitcher('mobile', false)}\n favoriteMenu={favoriteMenu}\n builderMenu={builderMenu}\n appMenu={appMenu}\n unityUrl={unityUrl}\n user={user}\n header={appSwitcherHeader}\n />\n </Drawer>\n </div>\n </ActionProvider>\n </ChatBotProvider>\n );\n};\n\nShell.propTypes = {\n /**\n * The newest propTypes have been added but older ones are missing @todo: add missing propTypes for Shell.\n */\n\n /**\n * The array used to map for label and functions to list items.\n */\n switcherData: PropTypes.array,\n /**\n * The active label displayed.\n */\n selectedItem: PropTypes.string,\n /**\n * Provides a method set the selector width. Default is 100.\n */\n switcherWidth: PropTypes.number,\n /**\n * Children nodes\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired,\n\n /**\n * Name of site\n */\n siteName: PropTypes.string,\n\n /**\n * Component to render for the user Avatar\n */\n userAvatar: PropTypes.element,\n\n appContent: PropTypes.element,\n\n leftMenu: PropTypes.array,\n\n appSelectorMenus: PropTypes.array,\n\n className: PropTypes.object,\n\n navRoot: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.node]),\n\n /**\n * Should the shell use mock data\n */\n useMockData: PropTypes.bool,\n\n mockMenus: PropTypes.array,\n\n unityUrl: PropTypes.string,\n\n expander: PropTypes.bool,\n\n sidebarTitle: PropTypes.string,\n\n navMenuHoverOn: PropTypes.bool,\n\n toggleOne: PropTypes.bool,\n\n toggleTwo: PropTypes.bool,\n\n closePrimary: PropTypes.bool,\n\n closeSecondary: PropTypes.bool,\n\n panelExpanded: PropTypes.bool,\n\n panelExpandedSecondary: PropTypes.bool,\n\n setPanelExpanded: PropTypes.func,\n\n setPanelExpandedSecondary: PropTypes.func,\n\n breadCrumbAltLabelList: PropTypes.array,\n\n currentLocation: PropTypes.object,\n\n utilitySidebarResizable: PropTypes.bool,\n\n utilitySidebarToggleOverride: PropTypes.bool,\n\n onUtilitySidebarToggleExpandClick: PropTypes.func,\n\n hideLayout: PropTypes.bool,\n\n languages: PropTypes.arrayOf(PropTypes.object),\n\n /**\n * Passes the background color on the project switcher (default: theme secondary)\n */\n projectSwitcherColor: PropTypes.string,\n getWidget: PropTypes.func,\n isValidWidget: PropTypes.func,\n currentTenant: PropTypes.object,\n hamburgerMenuAccessRole: PropTypes.string\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { t as __export } from "./chunk-B4enJp2Q.js";
1
+ import { t as __exportAll } from "./chunk-BN_g-Awi.js";
2
2
  import { t as WidgetCard_default } from "./WidgetCard-U1XoSuoz.js";
3
3
  import { t as FluentStatsSnippet_default } from "./FluentStatsSnippet-BN9VkqNq.js";
4
4
  import { t as convertISODate } from "./ConvertISODate-C640-_Cm.js";
@@ -55,11 +55,11 @@ var SparklineWidget_default = forwardRef(SparklineWidget);
55
55
 
56
56
  //#endregion
57
57
  //#region src/UI/widgets/library/SparklineWidget/index.ts
58
- var SparklineWidget_exports = /* @__PURE__ */ __export({
58
+ var SparklineWidget_exports = /* @__PURE__ */ __exportAll({
59
59
  default: () => SparklineWidget_default,
60
60
  layout: () => layout
61
61
  });
62
62
 
63
63
  //#endregion
64
64
  export { SparklineWidget_default as n, layout as r, SparklineWidget_exports as t };
65
- //# sourceMappingURL=SparklineWidget-BbkOUjcS.js.map
65
+ //# sourceMappingURL=SparklineWidget-Bbeyk07x.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SparklineWidget-BbkOUjcS.js","names":["WidgetCard","FluentStatsSnippet"],"sources":["../src/UI/widgets/library/SparklineWidget/SparklineWidget.jsx","../src/UI/widgets/library/SparklineWidget/index.ts"],"sourcesContent":["import React, { forwardRef, Fragment } from 'react'\nimport { Grid, Typography, makeStyles } from '@material-ui/core'\nimport WidgetCard from '../../WidgetCard'\nimport { Sparklines, SparklinesLine } from 'react-sparklines'\nimport FluentStatsSnippet from '../../FluentComponents/atoms/FluentStatsSnippet'\nimport { convertISODate } from '../../utils/ConvertISODate'\n\nexport const layout = {\n w: { default: 2, min: 0, max: 4 },\n h: { default: 2, min: 0, max: 4 }\n}\n\nconst useStyles = makeStyles((theme) => ({\n statList: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between'\n }\n}))\n\nconst SparklineWidget = (props, ref) => {\n const classes = useStyles()\n const { children, params, setParam, ...other } = props\n const { mockData, apiUrl, theme, dateRange } = params\n\n return (\n <WidgetCard\n className={classes.root}\n theme={theme}\n ref={ref}\n {...other}\n title={mockData?.title}\n >\n {mockData ? (\n <Fragment>\n {dateRange && (\n <Typography gutterBottom variant='caption' component='h3'>\n From: {convertISODate(dateRange.from)} to:{' '}\n {convertISODate(dateRange.to)}\n </Typography>\n )}\n <div className={classes.statList}>\n {mockData?.stats?.map((stat) => (\n <Grid item key={stat.label}>\n <FluentStatsSnippet\n label={stat.label}\n amount={stat.amount}\n percent={stat.percent && stat.percent}\n trend={stat.trend}\n />\n </Grid>\n ))}\n </div>\n\n <Sparklines data={mockData?.data} strokeWidth={0.5}>\n <SparklinesLine color='#067e7e' />\n </Sparklines>\n {children}\n </Fragment>\n ) : (\n <Typography variant='subtitle2'>\n Could not retrieve widget data. Please contact support.\n </Typography>\n )}\n </WidgetCard>\n )\n}\n\nexport default forwardRef(SparklineWidget)\n","export * from './SparklineWidget';\nexport {default} from './SparklineWidget';\n"],"mappings":";;;;;;;;;AAOA,MAAa,SAAS;CACpB,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CACjC,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CAClC;AAED,MAAM,YAAY,YAAY,WAAW,EACvC,UAAU;CACR,SAAS;CACT,eAAe;CACf,gBAAgB;CACjB,EACF,EAAE;AAEH,MAAM,mBAAmB,OAAO,QAAQ;CACtC,MAAM,UAAU,WAAW;CAC3B,MAAM,EAAE,UAAU,QAAQ,UAAU,GAAG,UAAU;CACjD,MAAM,EAAE,UAAU,QAAQ,OAAO,cAAc;AAE/C,QACE,oCAACA;EACC,WAAW,QAAQ;EACZ;EACF;EACL,GAAI;EACJ,OAAO,UAAU;IAEhB,WACC,oCAAC,gBACE,aACC,oCAAC;EAAW;EAAa,SAAQ;EAAU,WAAU;IAAK,UACjD,eAAe,UAAU,KAAK,EAAC,QAAK,KAC1C,eAAe,UAAU,GAAG,CAClB,EAEf,oCAAC,SAAI,WAAW,QAAQ,YACrB,UAAU,OAAO,KAAK,SACrB,oCAAC;EAAK;EAAK,KAAK,KAAK;IACnB,oCAACC;EACC,OAAO,KAAK;EACZ,QAAQ,KAAK;EACb,SAAS,KAAK,WAAW,KAAK;EAC9B,OAAO,KAAK;GACZ,CACG,CACP,CACE,EAEN,oCAAC;EAAW,MAAM,UAAU;EAAM,aAAa;IAC7C,oCAAC,kBAAe,OAAM,YAAY,CACvB,EACZ,SACQ,GAEX,oCAAC,cAAW,SAAQ,eAAY,0DAEnB,CAEJ;;AAIjB,8BAAe,WAAW,gBAAgB"}
1
+ {"version":3,"file":"SparklineWidget-Bbeyk07x.js","names":["WidgetCard","FluentStatsSnippet"],"sources":["../src/UI/widgets/library/SparklineWidget/SparklineWidget.jsx","../src/UI/widgets/library/SparklineWidget/index.ts"],"sourcesContent":["import React, { forwardRef, Fragment } from 'react'\nimport { Grid, Typography, makeStyles } from '@material-ui/core'\nimport WidgetCard from '../../WidgetCard'\nimport { Sparklines, SparklinesLine } from 'react-sparklines'\nimport FluentStatsSnippet from '../../FluentComponents/atoms/FluentStatsSnippet'\nimport { convertISODate } from '../../utils/ConvertISODate'\n\nexport const layout = {\n w: { default: 2, min: 0, max: 4 },\n h: { default: 2, min: 0, max: 4 }\n}\n\nconst useStyles = makeStyles((theme) => ({\n statList: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between'\n }\n}))\n\nconst SparklineWidget = (props, ref) => {\n const classes = useStyles()\n const { children, params, setParam, ...other } = props\n const { mockData, apiUrl, theme, dateRange } = params\n\n return (\n <WidgetCard\n className={classes.root}\n theme={theme}\n ref={ref}\n {...other}\n title={mockData?.title}\n >\n {mockData ? (\n <Fragment>\n {dateRange && (\n <Typography gutterBottom variant='caption' component='h3'>\n From: {convertISODate(dateRange.from)} to:{' '}\n {convertISODate(dateRange.to)}\n </Typography>\n )}\n <div className={classes.statList}>\n {mockData?.stats?.map((stat) => (\n <Grid item key={stat.label}>\n <FluentStatsSnippet\n label={stat.label}\n amount={stat.amount}\n percent={stat.percent && stat.percent}\n trend={stat.trend}\n />\n </Grid>\n ))}\n </div>\n\n <Sparklines data={mockData?.data} strokeWidth={0.5}>\n <SparklinesLine color='#067e7e' />\n </Sparklines>\n {children}\n </Fragment>\n ) : (\n <Typography variant='subtitle2'>\n Could not retrieve widget data. Please contact support.\n </Typography>\n )}\n </WidgetCard>\n )\n}\n\nexport default forwardRef(SparklineWidget)\n","export * from './SparklineWidget';\nexport {default} from './SparklineWidget';\n"],"mappings":";;;;;;;;;AAOA,MAAa,SAAS;CACpB,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CACjC,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CAClC;AAED,MAAM,YAAY,YAAY,WAAW,EACvC,UAAU;CACR,SAAS;CACT,eAAe;CACf,gBAAgB;CACjB,EACF,EAAE;AAEH,MAAM,mBAAmB,OAAO,QAAQ;CACtC,MAAM,UAAU,WAAW;CAC3B,MAAM,EAAE,UAAU,QAAQ,UAAU,GAAG,UAAU;CACjD,MAAM,EAAE,UAAU,QAAQ,OAAO,cAAc;AAE/C,QACE,oCAACA;EACC,WAAW,QAAQ;EACZ;EACF;EACL,GAAI;EACJ,OAAO,UAAU;IAEhB,WACC,oCAAC,gBACE,aACC,oCAAC;EAAW;EAAa,SAAQ;EAAU,WAAU;IAAK,UACjD,eAAe,UAAU,KAAK,EAAC,QAAK,KAC1C,eAAe,UAAU,GAAG,CAClB,EAEf,oCAAC,SAAI,WAAW,QAAQ,YACrB,UAAU,OAAO,KAAK,SACrB,oCAAC;EAAK;EAAK,KAAK,KAAK;IACnB,oCAACC;EACC,OAAO,KAAK;EACZ,QAAQ,KAAK;EACb,SAAS,KAAK,WAAW,KAAK;EAC9B,OAAO,KAAK;GACZ,CACG,CACP,CACE,EAEN,oCAAC;EAAW,MAAM,UAAU;EAAM,aAAa;IAC7C,oCAAC,kBAAe,OAAM,YAAY,CACvB,EACZ,SACQ,GAEX,oCAAC,cAAW,SAAQ,eAAY,0DAEnB,CAEJ;;AAIjB,8BAAe,WAAW,gBAAgB"}
@@ -1,4 +1,4 @@
1
- import { t as __export } from "./chunk-B4enJp2Q.js";
1
+ import { t as __exportAll } from "./chunk-BN_g-Awi.js";
2
2
  import { t as WidgetCard_default } from "./WidgetCard-U1XoSuoz.js";
3
3
  import { t as FluentStatsSnippet_default } from "./FluentStatsSnippet-BN9VkqNq.js";
4
4
  import React, { forwardRef } from "react";
@@ -71,7 +71,7 @@ var SparsePlotWidget_default = forwardRef(SparsePlotWidget);
71
71
 
72
72
  //#endregion
73
73
  //#region src/UI/widgets/library/SparsePlotWidget/index.ts
74
- var SparsePlotWidget_exports = /* @__PURE__ */ __export({
74
+ var SparsePlotWidget_exports = /* @__PURE__ */ __exportAll({
75
75
  default: () => SparsePlotWidget_default,
76
76
  layout: () => layout,
77
77
  params: () => params
@@ -79,4 +79,4 @@ var SparsePlotWidget_exports = /* @__PURE__ */ __export({
79
79
 
80
80
  //#endregion
81
81
  export { params as i, SparsePlotWidget_default as n, layout as r, SparsePlotWidget_exports as t };
82
- //# sourceMappingURL=SparsePlotWidget-ZYP6TKB6.js.map
82
+ //# sourceMappingURL=SparsePlotWidget-DSjCtlMJ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SparsePlotWidget-ZYP6TKB6.js","names":["params","WidgetCard","FluentStatsSnippet"],"sources":["../src/UI/widgets/library/SparsePlotWidget/SparsePlotWidget.jsx","../src/UI/widgets/library/SparsePlotWidget/index.ts"],"sourcesContent":["import React, { forwardRef } from 'react'\nimport { Grid, Box } from '@material-ui/core'\nimport { MuiVegaLite } from '@material-vega/material-ui'\nimport WidgetCard from '../../WidgetCard'\nimport FluentStatsSnippet from '../../FluentComponents/atoms/FluentStatsSnippet'\n\nexport const layout = {\n w: { default: 2, min: 0, max: 4 },\n h: { default: 2, min: 0, max: 4 }\n}\n\nexport const params = {\n mode: {\n defaultValue: 'chart'\n }\n}\n\nconst SparsePlotWidget = (props, ref) => {\n const { children, params, setParam, ...other } = props\n const { mockData, apiUrl, theme } = params\n\n return (\n <WidgetCard ref={ref} {...other} title={mockData?.title} theme={theme}>\n <Grid container>\n {mockData?.stats.map((stat) => (\n <Grid item xs={3} key={stat.label}>\n <FluentStatsSnippet\n label={stat.label}\n amount={stat.currentValue}\n prevAmount={stat.previousValue}\n />\n </Grid>\n ))}\n </Grid>\n <Box clone flex={1} mt={1} overflow='hidden'>\n <MuiVegaLite\n spec={{\n $schema: 'https://vega.github.io/schema/vega-lite/v4.json',\n width: 'container',\n height: 'container',\n data: mockData?.data,\n mark: { type: 'point', line: true, point: true },\n encoding: {\n x: { field: 'xAxis', type: mockData?.xAxisType },\n y: { field: 'yAxis', type: mockData?.yAxisType }\n }\n }}\n variant='scatterplotChart'\n autoResize\n actions={false}\n />\n </Box>\n {children}\n </WidgetCard>\n )\n}\n\nexport default forwardRef(SparsePlotWidget)\n","export * from './SparsePlotWidget';\nexport {default} from './SparsePlotWidget';\n"],"mappings":";;;;;;;;AAMA,MAAa,SAAS;CACpB,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CACjC,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CAClC;AAED,MAAa,SAAS,EACpB,MAAM,EACJ,cAAc,SACf,EACF;AAED,MAAM,oBAAoB,OAAO,QAAQ;CACvC,MAAM,EAAE,UAAU,kBAAQ,UAAU,GAAG,UAAU;CACjD,MAAM,EAAE,UAAU,QAAQ,UAAUA;AAEpC,QACE,oCAACC;EAAgB;EAAK,GAAI;EAAO,OAAO,UAAU;EAAc;IAC9D,oCAAC,QAAK,mBACH,UAAU,MAAM,KAAK,SACpB,oCAAC;EAAK;EAAK,IAAI;EAAG,KAAK,KAAK;IAC1B,oCAACC;EACC,OAAO,KAAK;EACZ,QAAQ,KAAK;EACb,YAAY,KAAK;GACjB,CACG,CACP,CACG,EACP,oCAAC;EAAI;EAAM,MAAM;EAAG,IAAI;EAAG,UAAS;IAClC,oCAAC;EACC,MAAM;GACJ,SAAS;GACT,OAAO;GACP,QAAQ;GACR,MAAM,UAAU;GAChB,MAAM;IAAE,MAAM;IAAS,MAAM;IAAM,OAAO;IAAM;GAChD,UAAU;IACR,GAAG;KAAE,OAAO;KAAS,MAAM,UAAU;KAAW;IAChD,GAAG;KAAE,OAAO;KAAS,MAAM,UAAU;KAAW;IACjD;GACF;EACD,SAAQ;EACR;EACA,SAAS;GACT,CACE,EACL,SACU;;AAIjB,+BAAe,WAAW,iBAAiB"}
1
+ {"version":3,"file":"SparsePlotWidget-DSjCtlMJ.js","names":["params","WidgetCard","FluentStatsSnippet"],"sources":["../src/UI/widgets/library/SparsePlotWidget/SparsePlotWidget.jsx","../src/UI/widgets/library/SparsePlotWidget/index.ts"],"sourcesContent":["import React, { forwardRef } from 'react'\nimport { Grid, Box } from '@material-ui/core'\nimport { MuiVegaLite } from '@material-vega/material-ui'\nimport WidgetCard from '../../WidgetCard'\nimport FluentStatsSnippet from '../../FluentComponents/atoms/FluentStatsSnippet'\n\nexport const layout = {\n w: { default: 2, min: 0, max: 4 },\n h: { default: 2, min: 0, max: 4 }\n}\n\nexport const params = {\n mode: {\n defaultValue: 'chart'\n }\n}\n\nconst SparsePlotWidget = (props, ref) => {\n const { children, params, setParam, ...other } = props\n const { mockData, apiUrl, theme } = params\n\n return (\n <WidgetCard ref={ref} {...other} title={mockData?.title} theme={theme}>\n <Grid container>\n {mockData?.stats.map((stat) => (\n <Grid item xs={3} key={stat.label}>\n <FluentStatsSnippet\n label={stat.label}\n amount={stat.currentValue}\n prevAmount={stat.previousValue}\n />\n </Grid>\n ))}\n </Grid>\n <Box clone flex={1} mt={1} overflow='hidden'>\n <MuiVegaLite\n spec={{\n $schema: 'https://vega.github.io/schema/vega-lite/v4.json',\n width: 'container',\n height: 'container',\n data: mockData?.data,\n mark: { type: 'point', line: true, point: true },\n encoding: {\n x: { field: 'xAxis', type: mockData?.xAxisType },\n y: { field: 'yAxis', type: mockData?.yAxisType }\n }\n }}\n variant='scatterplotChart'\n autoResize\n actions={false}\n />\n </Box>\n {children}\n </WidgetCard>\n )\n}\n\nexport default forwardRef(SparsePlotWidget)\n","export * from './SparsePlotWidget';\nexport {default} from './SparsePlotWidget';\n"],"mappings":";;;;;;;;AAMA,MAAa,SAAS;CACpB,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CACjC,GAAG;EAAE,SAAS;EAAG,KAAK;EAAG,KAAK;EAAG;CAClC;AAED,MAAa,SAAS,EACpB,MAAM,EACJ,cAAc,SACf,EACF;AAED,MAAM,oBAAoB,OAAO,QAAQ;CACvC,MAAM,EAAE,UAAU,kBAAQ,UAAU,GAAG,UAAU;CACjD,MAAM,EAAE,UAAU,QAAQ,UAAUA;AAEpC,QACE,oCAACC;EAAgB;EAAK,GAAI;EAAO,OAAO,UAAU;EAAc;IAC9D,oCAAC,QAAK,mBACH,UAAU,MAAM,KAAK,SACpB,oCAAC;EAAK;EAAK,IAAI;EAAG,KAAK,KAAK;IAC1B,oCAACC;EACC,OAAO,KAAK;EACZ,QAAQ,KAAK;EACb,YAAY,KAAK;GACjB,CACG,CACP,CACG,EACP,oCAAC;EAAI;EAAM,MAAM;EAAG,IAAI;EAAG,UAAS;IAClC,oCAAC;EACC,MAAM;GACJ,SAAS;GACT,OAAO;GACP,QAAQ;GACR,MAAM,UAAU;GAChB,MAAM;IAAE,MAAM;IAAS,MAAM;IAAM,OAAO;IAAM;GAChD,UAAU;IACR,GAAG;KAAE,OAAO;KAAS,MAAM,UAAU;KAAW;IAChD,GAAG;KAAE,OAAO;KAAS,MAAM,UAAU;KAAW;IACjD;GACF;EACD,SAAQ;EACR;EACA,SAAS;GACT,CACE,EACL,SACU;;AAIjB,+BAAe,WAAW,iBAAiB"}
@@ -1,3 +1,3 @@
1
- import { t as InsightRenderer } from "../../charts-oWe5K2aR.js";
1
+ import { t as InsightRenderer } from "../../charts-pX01x8rO.js";
2
2
 
3
3
  export { InsightRenderer };
package/dist/UI/index.js CHANGED
@@ -16,7 +16,7 @@ import { t as BioCard } from "../BioCard-M1ZP7x1X.js";
16
16
  import { t as Iframe } from "../Iframe-BfXbTs-j.js";
17
17
  import { t as QuickViewCard } from "../QuickViewCard-odqSWVkJ.js";
18
18
  import { t as SummaryBlock } from "../SummaryBlock-BjUNDl4q.js";
19
- import { i as getPropertiesForFieldValues, n as PropertyFields, r as getFieldValuesForProperties, t as PropertyField } from "../PropertyFields-Dm90Hcer.js";
19
+ import { i as getPropertiesForFieldValues, n as PropertyFields, r as getFieldValuesForProperties, t as PropertyField } from "../PropertyFields-DlNSPR7S.js";
20
20
  import { t as NodeLoader } from "../NodeLoader-6vxxLuHg.js";
21
21
  import { t as getThresholdStatus } from "../aggregateUtils-UcpEjFnf.js";
22
22
  import { t as AggregateChip } from "../AggregateChip-BF7S3x_K.js";
@@ -64,7 +64,7 @@ import { t as AvatarAlphabet } from "../AvatarAlphabet-D5klbFfJ.js";
64
64
  import { n as FluentActivity, t as FluentActivityRow } from "../FluentActivity-CQQeL7Qe.js";
65
65
  import { t as FluentListItem } from "../FluentListItem-_Nq3fhEY.js";
66
66
  import { t as ChipAlphabet } from "../ChipAlphabet-DCU1DsB-.js";
67
- import { t as InsightRenderer } from "../charts-oWe5K2aR.js";
67
+ import { t as InsightRenderer } from "../charts-pX01x8rO.js";
68
68
  import { t as FluentTabPanel } from "../FluentTabPanel-DZPtDTkV.js";
69
69
  import { i as FluentTabUtility, n as StyledTab, r as a11yProps, t as FluentTabPanels } from "../defaultTabs-B4clt2kH.js";
70
70
  import { n as UdpTabPanel, t as UdpTabUtility } from "../tabs-CAaJhUt5.js";
@@ -1,3 +1,3 @@
1
- import { i as getPropertiesForFieldValues, n as PropertyFields, r as getFieldValuesForProperties, t as PropertyField } from "../../PropertyFields-Dm90Hcer.js";
1
+ import { i as getPropertiesForFieldValues, n as PropertyFields, r as getFieldValuesForProperties, t as PropertyField } from "../../PropertyFields-DlNSPR7S.js";
2
2
 
3
3
  export { PropertyField, PropertyFields, getFieldValuesForProperties, getPropertiesForFieldValues };
@@ -1,3 +1,3 @@
1
- import { S as TextPropertyWidget_default, b as IntegerPropertyWidget_default, c as TimePropertyWidget_default, f as SelectPropertyWidget_default, g as DatePropertyWidget_default, i as DateTimePropertyWidget_default, m as MultilineTextPropertyWidget_default, n as AutoCompletePropertyWidget_default, o as BooleanPropertyWidget_default, t as widgets_default, u as FloatPropertyWidget_default, v as NumericPropertyWidget_default } from "../../../widgets-Cp52ccgB.js";
1
+ import { S as TextPropertyWidget_default, b as IntegerPropertyWidget_default, c as TimePropertyWidget_default, f as SelectPropertyWidget_default, g as DatePropertyWidget_default, i as DateTimePropertyWidget_default, m as MultilineTextPropertyWidget_default, n as AutoCompletePropertyWidget_default, o as BooleanPropertyWidget_default, t as widgets_default, u as FloatPropertyWidget_default, v as NumericPropertyWidget_default } from "../../../widgets-CtrxUwuu.js";
2
2
 
3
3
  export { AutoCompletePropertyWidget_default as AutoCompletePropertyWidget, BooleanPropertyWidget_default as BooleanPropertyWidget, DatePropertyWidget_default as DatePropertyWidget, DateTimePropertyWidget_default as DateTimePropertyWidget, FloatPropertyWidget_default as FloatPropertyWidget, IntegerPropertyWidget_default as IntegerPropertyWidget, MultilineTextPropertyWidget_default as MultilineTextPropertyWidget, NumericPropertyWidget_default as NumericPropertyWidget, SelectPropertyWidget_default as SelectPropertyWidget, TextPropertyWidget_default as TextPropertyWidget, TimePropertyWidget_default as TimePropertyWidget, widgets_default as default };
@@ -1,3 +1,3 @@
1
- import { i as params, n as BarChartWidget_default, r as layout } from "../../../../BarChartWidget-Dwav8_8e.js";
1
+ import { i as params, n as BarChartWidget_default, r as layout } from "../../../../BarChartWidget-BYJS3vMQ.js";
2
2
 
3
3
  export { BarChartWidget_default as default, layout, params };
@@ -1,3 +1,3 @@
1
- import { i as params, n as BubbleWidget_default, r as layout } from "../../../../BubbleWidget-CsIheJTW.js";
1
+ import { i as params, n as BubbleWidget_default, r as layout } from "../../../../BubbleWidget-FNCYe8So.js";
2
2
 
3
3
  export { BubbleWidget_default as default, layout, params };
@@ -1,3 +1,3 @@
1
- import { n as DateTrendWidget_default, r as layout } from "../../../../DateTrendWidget-cdExY12Q.js";
1
+ import { n as DateTrendWidget_default, r as layout } from "../../../../DateTrendWidget-CbhpScrj.js";
2
2
 
3
3
  export { DateTrendWidget_default as default, layout };
@@ -1,3 +1,3 @@
1
- import { i as params, n as DensePlotWidget_default, r as layout } from "../../../../DensePlotWidget-DHRKyeck.js";
1
+ import { i as params, n as DensePlotWidget_default, r as layout } from "../../../../DensePlotWidget-CsrA6oiC.js";
2
2
 
3
3
  export { DensePlotWidget_default as default, layout, params };
@@ -1,3 +1,3 @@
1
- import { n as DonutChartWidget_default, r as layout } from "../../../../DonutChartWidget-vOeXhdOe.js";
1
+ import { n as DonutChartWidget_default, r as layout } from "../../../../DonutChartWidget-C0XsTjF9.js";
2
2
 
3
3
  export { DonutChartWidget_default as default, layout };
@@ -1,3 +1,3 @@
1
- import { n as LineAndSparklinesWidget_default, r as layout } from "../../../../LineAndSparklinesWidget-CUq3QxmN.js";
1
+ import { n as LineAndSparklinesWidget_default, r as layout } from "../../../../LineAndSparklinesWidget-J0kTiLt2.js";
2
2
 
3
3
  export { LineAndSparklinesWidget_default as default, layout };
@@ -1,3 +1,3 @@
1
- import { i as params, n as LineGraphWidget_default, r as layout } from "../../../../LineGraphWidget-DOwAVdTR.js";
1
+ import { i as params, n as LineGraphWidget_default, r as layout } from "../../../../LineGraphWidget-OkrYlfsd.js";
2
2
 
3
3
  export { LineGraphWidget_default as default, layout, params };
@@ -1,3 +1,3 @@
1
- import { n as ProgressBarWidget_default, r as layout } from "../../../../ProgressBarWidget-Bo8LoOYA.js";
1
+ import { n as ProgressBarWidget_default, r as layout } from "../../../../ProgressBarWidget-gY0_iFB-.js";
2
2
 
3
3
  export { ProgressBarWidget_default as default, layout };
@@ -1,3 +1,3 @@
1
- import { n as RecentlyLoadedNodesWidget, r as RecentlyLoadedNodesWidget_default } from "../../../../RecentlyLoadedNodesWidget-C5chQWOm.js";
1
+ import { n as RecentlyLoadedNodesWidget, r as RecentlyLoadedNodesWidget_default } from "../../../../RecentlyLoadedNodesWidget-Cb8fiSSn.js";
2
2
 
3
3
  export { RecentlyLoadedNodesWidget, RecentlyLoadedNodesWidget_default as default };
@@ -1,3 +1,3 @@
1
- import { n as RemindersWidget, r as RemindersWidget_default } from "../../../../RemindersWidget-BnaccE9-.js";
1
+ import { n as RemindersWidget, r as RemindersWidget_default } from "../../../../RemindersWidget-u_oonyMf.js";
2
2
 
3
3
  export { RemindersWidget, RemindersWidget_default as default };
@@ -1,3 +1,3 @@
1
- import { n as SparklineWidget_default, r as layout } from "../../../../SparklineWidget-BbkOUjcS.js";
1
+ import { n as SparklineWidget_default, r as layout } from "../../../../SparklineWidget-Bbeyk07x.js";
2
2
 
3
3
  export { SparklineWidget_default as default, layout };
@@ -1,3 +1,3 @@
1
- import { i as params, n as SparsePlotWidget_default, r as layout } from "../../../../SparsePlotWidget-ZYP6TKB6.js";
1
+ import { i as params, n as SparsePlotWidget_default, r as layout } from "../../../../SparsePlotWidget-DSjCtlMJ.js";
2
2
 
3
3
  export { SparsePlotWidget_default as default, layout, params };
@@ -0,0 +1,9 @@
1
+ import { t as __exportAll } from "./chunk-BN_g-Awi.js";
2
+ import { t as UdpAuditEventsPage_default } from "./UdpAuditEventsPage-CohNvZiq.js";
3
+
4
+ //#region src/udp/pages/UdpAuditEvents/index.ts
5
+ var UdpAuditEvents_exports = /* @__PURE__ */ __exportAll({ default: () => UdpAuditEventsPage_default });
6
+
7
+ //#endregion
8
+ export { UdpAuditEvents_exports as t };
9
+ //# sourceMappingURL=UdpAuditEvents-C5p1KgV0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UdpAuditEvents-JP-tGjrh.js","names":[],"sources":["../src/udp/pages/UdpAuditEvents/index.ts"],"sourcesContent":["export * from './UdpAuditEventsPage';\nexport {default} from './UdpAuditEventsPage';\n"],"mappings":""}
1
+ {"version":3,"file":"UdpAuditEvents-C5p1KgV0.js","names":[],"sources":["../src/udp/pages/UdpAuditEvents/index.ts"],"sourcesContent":["export * from './UdpAuditEventsPage';\nexport {default} from './UdpAuditEventsPage';\n"],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { t as __export } from "./chunk-B4enJp2Q.js";
1
+ import { t as __exportAll } from "./chunk-BN_g-Awi.js";
2
2
  import { a as getPrimaryKeyValues, n as getEntityAttributes, r as getPathObject } from "./CrudBrowserUtilities-C9nVmUR3.js";
3
3
  import { t as ConfigService } from "./configService-C4uoG3wj.js";
4
4
  import { i as useHandleAxiosSnackbar } from "./apiHelpers-WIR8pqy0.js";
@@ -448,11 +448,11 @@ var UdpDataBrowserPage_default = memo(UdpDataBrowserPage);
448
448
 
449
449
  //#endregion
450
450
  //#region src/udp/pages/UdpDataBrowserPage/index.ts
451
- var UdpDataBrowserPage_exports = /* @__PURE__ */ __export({
451
+ var UdpDataBrowserPage_exports = /* @__PURE__ */ __exportAll({
452
452
  UdpDataBrowserPage: () => UdpDataBrowserPage,
453
453
  default: () => UdpDataBrowserPage_default
454
454
  });
455
455
 
456
456
  //#endregion
457
457
  export { UdpDataBrowserPage as n, UdpDataBrowserPage_default as r, UdpDataBrowserPage_exports as t };
458
- //# sourceMappingURL=UdpDataBrowserPage-CpDMeFtE.js.map
458
+ //# sourceMappingURL=UdpDataBrowserPage-DQXaWtYD.js.map