@reltio/remotes 1.4.1647 → 1.4.1649

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 (136) hide show
  1. package/1039.js +1 -1
  2. package/1088.js +1 -1
  3. package/1146.js +1 -1
  4. package/1148.js +1 -1
  5. package/1334.js +1 -1
  6. package/1425.js +1 -1
  7. package/1488.js +2 -0
  8. package/1488.js.map +1 -0
  9. package/1572.js +1 -1
  10. package/1664.js +1 -1
  11. package/1707.js +1 -1
  12. package/1790.js +5 -5
  13. package/1790.js.map +1 -1
  14. package/1840.js +2 -0
  15. package/1840.js.map +1 -0
  16. package/1984.js +1 -1
  17. package/2066.js +1 -1
  18. package/2400.js +1 -1
  19. package/281.js +2 -0
  20. package/281.js.map +1 -0
  21. package/2966.js +1 -1
  22. package/3096.js +1 -1
  23. package/3348.js +1 -1
  24. package/3358.js +1 -1
  25. package/3373.js +1 -1
  26. package/3381.js +1 -1
  27. package/3383.js +1 -1
  28. package/3463.js +1 -1
  29. package/3469.js +1 -1
  30. package/3538.js +1 -1
  31. package/356.js +1 -1
  32. package/3854.js +1 -1
  33. package/3902.js +1 -1
  34. package/3902.js.map +1 -1
  35. package/3912.js +1 -1
  36. package/3926.js +1 -1
  37. package/415.js +1 -1
  38. package/4212.js +1 -1
  39. package/{829.css → 4390.css} +1 -1
  40. package/4390.css.map +1 -0
  41. package/4390.js +2 -0
  42. package/4390.js.map +1 -0
  43. package/4481.js +1 -1
  44. package/4609.js +1 -1
  45. package/4610.js +1 -1
  46. package/4703.js +1 -1
  47. package/4780.js +2 -0
  48. package/4780.js.map +1 -0
  49. package/4806.js +1 -1
  50. package/4838.js +1 -1
  51. package/50.js +1 -1
  52. package/5039.js +1 -1
  53. package/5039.js.map +1 -1
  54. package/5053.js +1 -1
  55. package/5053.js.map +1 -1
  56. package/5108.js +1 -1
  57. package/5108.js.map +1 -1
  58. package/5163.js +1 -1
  59. package/5163.js.map +1 -1
  60. package/5292.js +1 -1
  61. package/5383.js +1 -1
  62. package/5617.js +1 -1
  63. package/6020.js +1 -1
  64. package/6287.js +1 -1
  65. package/636.js +1 -1
  66. package/6606.js +1 -1
  67. package/6606.js.map +1 -1
  68. package/6799.js +1 -1
  69. package/6844.js +1 -1
  70. package/6860.js +3 -0
  71. package/6860.js.map +1 -0
  72. package/6903.js +1 -1
  73. package/7128.js +1 -1
  74. package/7340.js +1 -1
  75. package/735.js +1 -1
  76. package/7422.js +1 -1
  77. package/{7303.css → 7605.css} +1 -1
  78. package/{7303.css.map → 7605.css.map} +1 -1
  79. package/7605.js +2 -0
  80. package/7605.js.map +1 -0
  81. package/7626.js +29 -0
  82. package/7626.js.map +1 -0
  83. package/{446.js → 764.js} +2 -2
  84. package/764.js.map +1 -0
  85. package/7744.js +1 -1
  86. package/7744.js.map +1 -1
  87. package/7896.js +1 -1
  88. package/820.js +1 -1
  89. package/8207.js +1 -1
  90. package/8565.js +1 -1
  91. package/870.css +635 -0
  92. package/870.css.map +1 -0
  93. package/870.js +2 -0
  94. package/870.js.map +1 -0
  95. package/8741.js +1 -1
  96. package/9016.js +1 -1
  97. package/9050.js +1 -1
  98. package/9283.js +1 -1
  99. package/9309.js +1 -1
  100. package/9328.js +1 -1
  101. package/9387.js +1 -1
  102. package/9464.js +1 -1
  103. package/9719.js +1 -1
  104. package/9736.js +1 -1
  105. package/9861.js +1 -1
  106. package/987.js +1 -1
  107. package/99.js +29 -0
  108. package/99.js.map +1 -0
  109. package/9952.js +1 -1
  110. package/9960.js +1 -1
  111. package/main.js +1 -1
  112. package/main.js.map +1 -1
  113. package/package.json +1 -1
  114. package/remoteEntry.js +1 -1
  115. package/remoteEntry.js.map +1 -1
  116. package/3785.js +0 -2
  117. package/3785.js.map +0 -1
  118. package/3880.js +0 -2
  119. package/3880.js.map +0 -1
  120. package/446.js.map +0 -1
  121. package/672.js +0 -2
  122. package/672.js.map +0 -1
  123. package/7303.js +0 -2
  124. package/7303.js.map +0 -1
  125. package/7963.js +0 -3
  126. package/7963.js.map +0 -1
  127. package/829.css.map +0 -1
  128. package/829.js +0 -2
  129. package/829.js.map +0 -1
  130. package/8344.js +0 -29
  131. package/8344.js.map +0 -1
  132. package/9109.js +0 -2
  133. package/9109.js.map +0 -1
  134. package/938.js +0 -29
  135. package/938.js.map +0 -1
  136. /package/{7963.js.LICENSE.txt → 6860.js.LICENSE.txt} +0 -0
package/672.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"672.js","mappings":"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","sources":["webpack://@reltio/remotes/../../node_modules/@mui/icons-material/DragIndicator.js","webpack://@reltio/remotes/../../node_modules/@mui/icons-material/Flag.js","webpack://@reltio/remotes/../../node_modules/@mui/icons-material/Replay.js","webpack://@reltio/remotes/../../node_modules/@mui/material/ListItemIcon/ListItemIcon.js","webpack://@reltio/remotes/../components/src/HOCs/withDragHandle/styles.ts","webpack://@reltio/remotes/../components/src/HOCs/withDragHandle/withDragHandle.tsx","webpack://@reltio/remotes/../components/src/components/AttributeSelector/styles.ts","webpack://@reltio/remotes/../components/src/components/AttributeSelector/AttributeSelector.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/HOCs/withTableContext.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/styles.ts","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/BasicTablePagination.tsx","webpack://@reltio/remotes/../components/src/components/BasicView/styles.ts","webpack://@reltio/remotes/../components/src/components/BasicView/BasicView.tsx","webpack://@reltio/remotes/../components/src/components/BasicViewHeader/styles.ts","webpack://@reltio/remotes/../components/src/components/BasicViewHeader/BasicViewHeader.tsx","webpack://@reltio/remotes/../components/src/components/CollapseButton/styles.ts","webpack://@reltio/remotes/../components/src/components/CollapseButton/CollapseButton.tsx","webpack://@reltio/remotes/../components/src/components/ColorBar/styles.ts","webpack://@reltio/remotes/../components/src/components/ColorBar/ColorBar.tsx","webpack://@reltio/remotes/../components/src/components/DateIntervalSelector/styles.ts","webpack://@reltio/remotes/../components/src/components/DateIntervalSelector/DateIntervalSelector.tsx","webpack://@reltio/remotes/../components/src/components/DropDownMenuButton/styles.ts","webpack://@reltio/remotes/../components/src/components/DropDownMenuButton/MenuItemRenderer.tsx","webpack://@reltio/remotes/../components/src/components/DropDownMenuButton/DropDownMenuButton.tsx","webpack://@reltio/remotes/../components/src/components/EntityTypeIcon/EntityTypeIcon.tsx","webpack://@reltio/remotes/../components/src/components/ErrorBoundary/ErrorBoundary.tsx","webpack://@reltio/remotes/../components/src/components/FacetViewHeader/styles.ts","webpack://@reltio/remotes/../components/src/components/FacetViewHeader/FacetViewHeader.tsx","webpack://@reltio/remotes/../components/src/components/ReactSelect/CreatableSelect.js","webpack://@reltio/remotes/../components/src/components/ReactSelect/MultiSelect/components/Option.js","webpack://@reltio/remotes/../components/src/components/ReactSelect/MultiSelect/components/index.js","webpack://@reltio/remotes/../components/src/components/ReactSelect/MultiSelect/MultiSelect.js","webpack://@reltio/remotes/../components/src/components/ReactSelect/MultiSelect/index.js","webpack://@reltio/remotes/../components/src/components/ReltioGridLayout/helpers.ts","webpack://@reltio/remotes/../components/src/components/ReltioGridLayout/icons/ResizeIcon.svg.ts","webpack://@reltio/remotes/../components/src/components/ReltioGridLayout/styles.ts","webpack://@reltio/remotes/../components/src/components/ReltioGridLayout/ReltioGridLayout.tsx","webpack://@reltio/remotes/../components/src/components/Spacer/Spacer.js","webpack://@reltio/remotes/../components/src/components/UserSelector/styles.ts","webpack://@reltio/remotes/../components/src/components/UserSelector/UserSelector.tsx","webpack://@reltio/remotes/../components/src/components/activityLog/types/ActivityTypes.ts","webpack://@reltio/remotes/../components/src/components/activityLog/utils/activities.ts","webpack://@reltio/remotes/../components/src/components/editors/CustomDateRangeEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/editors/CustomDateRangeEditor/CustomDateRangeEditor.tsx","webpack://@reltio/remotes/../dashboard/src/components/DashboardLinearLoader/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardLinearLoader/DashboardLinearLoader.tsx","webpack://@reltio/remotes/../dashboard/src/components/DashboardPopupMenu/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardPopupMenu/DashboardPopupMenu.tsx","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemView/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemView/LayoutItemView.tsx","webpack://@reltio/remotes/../dashboard/src/contexts/DashboardViewIdContext/index.ts","webpack://@reltio/remotes/../dashboard/src/hooks/useSavedSearchesRequest.ts","webpack://@reltio/remotes/../dashboard/src/views/tableBased/helpers.ts","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemHeader/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemHeader/LayoutItemHeader.tsx","webpack://@reltio/remotes/../dashboard/src/components/DashboardNoData/icons/noData.svg","webpack://@reltio/remotes/../dashboard/src/components/DashboardNoData/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardNoData/DashboardNoData.tsx","webpack://@reltio/remotes/../dashboard/src/components/DashboardError/icons/error.svg","webpack://@reltio/remotes/../dashboard/src/components/DashboardError/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardError/DashboardError.tsx","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemContent/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/LayoutItemContent/LayoutItemContent.tsx","webpack://@reltio/remotes/../dashboard/src/services/savedSearches.ts","webpack://@reltio/remotes/../dashboard/src/views/tableBased/styles.ts","webpack://@reltio/remotes/../dashboard/src/views/tableBased/FilteredSavedSearchesFacet.tsx","webpack://@reltio/remotes/../dashboard/src/services/filters.ts","webpack://@reltio/remotes/../dashboard/src/services/facets.ts","webpack://@reltio/remotes/../dashboard/src/views/chartBased/DashboardFacet.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useFacetRequest.ts","webpack://@reltio/remotes/../dashboard/src/components/EntityTable/cell-renderers/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/EntityTable/cell-renderers/HeadCellRenderer.tsx","webpack://@reltio/remotes/../dashboard/src/components/EntityTable/cell-renderers/EntityLabelRenderer.tsx","webpack://@reltio/remotes/../dashboard/src/components/EntityTable/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/EntityTable/EntityTable.tsx","webpack://@reltio/remotes/../dashboard/src/views/tableBased/FilteredEntitiesViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useFilteredEntitiesRequest.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardDateRangeSelector/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/DashboardDateRangeSelector/DashboardDateRangeSelector.tsx","webpack://@reltio/remotes/../dashboard/src/types/PeriodStep.ts","webpack://@reltio/remotes/../dashboard/src/services/period.ts","webpack://@reltio/remotes/../dashboard/src/services/stats.ts","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/customized/CustomAxisTick.tsx","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/customized/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/customized/CustomTooltip.tsx","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/customized/CustomLegend.tsx","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/StatsChart.tsx","webpack://@reltio/remotes/../dashboard/src/components/StatsChart/getStatsChartSettings.ts","webpack://@reltio/remotes/../dashboard/src/hooks/useStatsRequest.ts","webpack://@reltio/remotes/../dashboard/src/views/chartBased/ProfileStatsFacet.tsx","webpack://@reltio/remotes/../dashboard/src/services/entityTypes.ts","webpack://@reltio/remotes/../dashboard/src/hooks/useEntityByTypeRequest.ts","webpack://@reltio/remotes/../dashboard/src/views/chartBased/EntitiesByTypeViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/views/custom/styles.ts","webpack://@reltio/remotes/../dashboard/src/views/custom/CustomActionViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/types/WorkflowTasks.ts","webpack://@reltio/remotes/../dashboard/src/services/workflowTasks.ts","webpack://@reltio/remotes/../dashboard/src/components/WorkflowTaskItem/styles.ts","webpack://@reltio/remotes/../dashboard/src/components/WorkflowTaskItem/WorkflowTaskObject.tsx","webpack://@reltio/remotes/../dashboard/src/components/WorkflowTaskItem/WorkflowTaskItem.tsx","webpack://@reltio/remotes/../dashboard/src/components/WorkflowTasksList/WorkflowTasksList.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useWorkflowTasksRequest.ts","webpack://@reltio/remotes/../dashboard/src/views/tableBased/NotificationInboxFacet.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useActivitiesRequest.ts","webpack://@reltio/remotes/../dashboard/src/views/tableBased/ActivitiesViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/views/ViewsFactory.tsx","webpack://@reltio/remotes/../../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\"\n}), 'DragIndicator');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M14.4 6 14 4H5v17h2v-7h5.6l.4 2h7V6z\"\n}), 'Flag');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z\"\n}), 'Replay');\nexports.default = _default;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getListItemIconUtilityClass } from './listItemIconClasses';\nimport ListContext from '../List/ListContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n classes\n } = ownerState;\n const slots = {\n root: ['root', alignItems === 'flex-start' && 'alignItemsFlexStart']\n };\n return composeClasses(slots, getListItemIconUtilityClass, classes);\n};\nconst ListItemIconRoot = styled('div', {\n name: 'MuiListItemIcon',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n minWidth: 56,\n color: (theme.vars || theme).palette.action.active,\n flexShrink: 0,\n display: 'inline-flex'\n}, ownerState.alignItems === 'flex-start' && {\n marginTop: 8\n}));\n\n/**\n * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.\n */\nconst ListItemIcon = /*#__PURE__*/React.forwardRef(function ListItemIcon(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemIcon'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const ownerState = _extends({}, props, {\n alignItems: context.alignItems\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListItemIconRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemIcon.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `Icon`, `SvgIcon`,\n * or a `@mui/icons-material` SVG icon element.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemIcon;","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n dragHandleContainer: {\n position: 'relative',\n width: '100%',\n height: 'inherit'\n },\n dragHandleVisibilityArea: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '12px',\n zIndex: 11,\n visibility: 'hidden',\n '&:hover $dragHandle': {\n visibility: 'visible'\n },\n '.react-draggable &': {\n visibility: 'visible'\n }\n },\n dragHandle: {\n position: 'absolute',\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n top: '-3px',\n zIndex: 11,\n cursor: 'move',\n visibility: 'hidden'\n },\n dragIcon: {\n transform: 'translateX(-50%) rotate(90deg)',\n color: 'rgba(0, 0, 0, 0.3)',\n fontSize: '20px'\n }\n});\n","import React, {ComponentType} from 'react';\nimport classnames from 'classnames';\nimport DragIndicatorIcon from '@mui/icons-material/DragIndicator';\n\nimport {useStyles} from './styles';\n\nconst withDragHandle = <P extends Record<string, unknown>>(Component: ComponentType<P>) => {\n const WithDragHandle = (props: P) => {\n const styles = useStyles();\n return (\n <div className={styles.dragHandleContainer}>\n <div className={styles.dragHandleVisibilityArea}>\n <div className={classnames('viewDraggableHandle', styles.dragHandle)}>\n <DragIndicatorIcon className={styles.dragIcon} />\n </div>\n </div>\n <Component {...props} />\n </div>\n );\n };\n\n WithDragHandle.displayName = 'WithDragHandle';\n return WithDragHandle;\n};\n\nexport default withDragHandle;\n","import {makeStyles} from '@mui/styles';\n\nexport const customStyles = {\n input: (currentStyles) => ({...currentStyles, fontSize: '14px'}),\n menuPortal: (currentStyles) => ({...currentStyles, zIndex: 1300})\n};\n\nexport const useStyles = makeStyles({\n root: {\n flex: 1\n },\n title: {\n paddingBottom: '10px',\n paddingLeft: '5px',\n fontSize: '14px'\n },\n dropDownInput: {\n width: '100%',\n justifyContent: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.03)',\n borderTop: '4px'\n },\n option: {\n fontSize: '14px',\n height: '32px'\n },\n noOptionsMessage: {\n fontSize: '14px'\n }\n});\n","import React, {useCallback, useMemo} from 'react';\nimport i18n from 'ui-i18n';\nimport classnames from 'classnames';\nimport {pipe, defaultTo} from 'ramda';\nimport {AttributeOption} from '../../types';\nimport {MultiValueProps, OptionProps} from 'react-select';\nimport {AttributeType, getAttributeTypeSubAttributes, TEntityType} from '@reltio/mdm-sdk';\nimport Typography from '@mui/material/Typography';\nimport MultiSelect from '../ReactSelect/MultiSelect';\nimport MultiValue from '../ReactSelect/commonComponents/MultiValue';\nimport DropdownIndicatorWithIconButton from '../commonReactSelectComponents/DropdownIndicatorWithIconButton';\nimport AttributeListItem from '../AttributeListItem/AttributeListItem';\nimport {useMdmMetadata} from '../../contexts';\nimport {customStyles, useStyles} from './styles';\n\ntype Props = {\n entityType: TEntityType;\n selectedAttributes: AttributeOption[];\n className?: string;\n onChange?: (attributes: AttributeOption[]) => void;\n title?: string;\n disableUnderline?: boolean;\n menuPlacement?: string;\n};\n\nconst AttributeSelector = ({\n entityType,\n selectedAttributes,\n className,\n onChange,\n title,\n disableUnderline,\n menuPlacement = 'bottom'\n}: Props) => {\n const styles = useStyles();\n const metadata = useMdmMetadata();\n\n const prepareItems = useCallback(\n (data: AttributeType[], level = 0, prevLabel = ''): AttributeOption[] => {\n return data.reduce((acc, item) => {\n if (item.hidden) return acc;\n const chipLabel = `${prevLabel && prevLabel + ' / '}${item.label}`;\n acc.push({\n label: item.label,\n value: item.uri,\n attrType: item,\n chipLabel,\n level\n });\n const subAttributes = getAttributeTypeSubAttributes(metadata, item);\n return acc.concat(subAttributes ? prepareItems(subAttributes, level + 1, chipLabel) : []);\n }, []);\n },\n [metadata]\n );\n\n const options = useMemo(() => prepareItems(entityType?.attributes || []), [entityType, prepareItems]);\n\n const CustomOption = ({isFocused, isSelected, data, label, innerProps}: OptionProps<AttributeOption, true>) => (\n <div {...innerProps}>\n <AttributeListItem\n checked={isSelected}\n level={data.level}\n data={data}\n label={label}\n labelInText={label}\n isFocused={isFocused}\n />\n </div>\n );\n\n const CustomMultiValue = ({data, ...props}: MultiValueProps<AttributeOption>) => (\n <MultiValue {...props}>{data.chipLabel}</MultiValue>\n );\n\n return (\n <div className={classnames(styles.root, className)} data-reltio-id=\"attribute-selector\">\n <Typography className={styles.title} variant={'subtitle1'}>\n {title || i18n.text('Attribute')}\n </Typography>\n <MultiSelect\n value={selectedAttributes}\n options={options}\n TextFieldProps={{\n InputProps: {disableUnderline},\n classes: {root: styles.dropDownInput}\n }}\n components={{\n DropdownIndicator: DropdownIndicatorWithIconButton,\n MultiValue: CustomMultiValue,\n Option: CustomOption\n }}\n onChange={pipe(defaultTo([]), onChange)}\n styles={customStyles}\n classes={styles}\n menuPlacement={menuPlacement}\n menuPortalTarget={document.body}\n menuShouldBlockScroll={true}\n captureMenuScroll={false}\n />\n </div>\n );\n};\n\nexport default AttributeSelector;\n","import {TableContext} from '../contexts/TableContext';\nimport {withContext} from '../../../../HOCs/withContext/withContext';\n\nconst withTableContext = (contextSelector) => (CellRenderer) =>\n withContext(TableContext, contextSelector, CellRenderer);\n\nexport default withTableContext;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n pagination: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n height: '56px',\n flexShrink: 0,\n borderTop: '1px solid rgba(0,0,0,0.12)',\n boxShadow: 'none',\n boxSizing: 'border-box',\n overflowY: 'hidden',\n containerType: 'inline-size',\n '& .MuiInputBase-root': {\n display: 'none',\n '@container (min-width: 420px)': {\n display: 'inline-flex'\n }\n }\n },\n caption: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px',\n display: 'none',\n '@container (min-width: 420px)': {\n display: 'block'\n }\n },\n displayedRows: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px'\n },\n selectRoot: {\n marginLeft: '5px',\n marginRight: '36px'\n },\n select: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px',\n textAlign: 'right'\n },\n actions: {\n marginLeft: '32px!important' //we need it, because of the more specific rule in the mui\n }\n});\n","import React, {useCallback, memo} from 'react';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\nimport {getValue} from '../../../core/utils';\nimport {nthArg, pipe, pathOr, identity} from 'ramda';\nimport TablePagination, {TablePaginationProps} from '@mui/material/TablePagination';\n\nimport {useStyles} from './styles';\n\ntype BasicTablePaginationProps = {\n classes?: TablePaginationProps['classes'];\n basicTableRef?: React.Ref<HTMLElement>;\n count?: number;\n page?: number;\n rowsPerPage?: number;\n labelRowsPerPage?: React.ReactNode;\n rowsPerPageOptions?: TablePaginationProps['rowsPerPageOptions'];\n onChangePage?: (value: number) => void;\n onChangeRowsPerPage?: (value: number) => void;\n};\n\nconst BasicTablePagination = ({\n classes = {},\n count,\n rowsPerPageOptions,\n page,\n onChangePage,\n rowsPerPage,\n onChangeRowsPerPage,\n basicTableRef,\n labelRowsPerPage\n}: BasicTablePaginationProps) => {\n const styles = useStyles();\n\n const labelDisplayedRows = ({from, to, count}) =>\n i18n.text('${fromRow}-${toRow} of ${countRows}', {\n fromRow: i18n.number(from, '0,0'),\n toRow: i18n.number(to, '0,0'),\n countRows: i18n.number(count, '0,0')\n });\n\n const resetScrollbarPosition = useCallback(() => {\n pathOr(identity, ['current', 'resetScrollbarPosition'], basicTableRef)();\n }, [basicTableRef]);\n\n const handleChangePage = useCallback(\n (value: number) => {\n onChangePage(value);\n resetScrollbarPosition();\n },\n [onChangePage, resetScrollbarPosition]\n );\n const handleChangeRowsPerPage = useCallback(\n (value: number) => {\n onChangePage(0);\n onChangeRowsPerPage(value);\n resetScrollbarPosition();\n },\n [onChangePage, onChangeRowsPerPage, resetScrollbarPosition]\n );\n\n return (\n <TablePagination\n classes={{\n ...classes,\n root: classnames(styles.pagination, classes.root),\n select: classnames(styles.select, classes.select),\n selectLabel: classnames(styles.caption, classes.selectLabel),\n displayedRows: classnames(styles.displayedRows, classes.displayedRows),\n input: classnames(styles.selectRoot, classes.selectRoot),\n actions: styles.actions\n }}\n backIconButtonProps={{size: 'large'}}\n nextIconButtonProps={{size: 'large'}}\n component=\"div\"\n labelRowsPerPage={labelRowsPerPage || i18n.text('Rows per page:')}\n labelDisplayedRows={labelDisplayedRows}\n count={count}\n rowsPerPageOptions={rowsPerPageOptions}\n page={page}\n onPageChange={pipe(nthArg(1), handleChangePage)}\n rowsPerPage={rowsPerPage}\n onRowsPerPageChange={pipe(getValue, handleChangeRowsPerPage)}\n />\n );\n};\n\nBasicTablePagination.displayName = 'BasicTablePagination';\n\nexport default memo(BasicTablePagination);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n basicViewPaper: {\n display: 'flex',\n flexDirection: 'column',\n ...theme.basicView\n }\n}));\n","import React, {forwardRef} from 'react';\nimport Paper, {PaperProps} from '@mui/material/Paper';\nimport {useStyles} from './styles';\n\nconst BasicView = forwardRef(\n ({children, className, ...otherProps}: PaperProps, ref: React.RefObject<HTMLDivElement>) => {\n const styles = useStyles();\n return (\n <Paper ref={ref} className={className} classes={{root: styles.basicViewPaper}} {...otherProps}>\n {children}\n </Paper>\n );\n }\n);\n\nBasicView.displayName = 'BasicView';\n\nexport default BasicView;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n toolbar: {\n minHeight: '48px',\n padding: '8px 24px',\n lineHeight: '28px'\n },\n title: {\n fontSize: '18px',\n minWidth: '50px',\n fontWeight: 'normal',\n lineHeight: 'inherit',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n }\n});\n","import React from 'react';\nimport i18n from 'ui-i18n';\nimport Toolbar, {ToolbarProps} from '@mui/material/Toolbar';\nimport Typography from '@mui/material/Typography';\nimport {useStyles} from './styles';\n\ntype Props = ToolbarProps & {\n title?: string;\n classes?: Partial<Record<'root' | 'title', string>>;\n};\n\nconst BasicViewHeader = ({title = '', children = null, classes = {}, ...otherProps}: Props) => {\n const styles = useStyles();\n return (\n <Toolbar className={classes.root} classes={{root: styles.toolbar}} {...otherProps}>\n <Typography className={classes.title} classes={{root: styles.title}} variant=\"h6\">\n {i18n.text(title)}\n </Typography>\n {children}\n </Toolbar>\n );\n};\n\nexport default BasicViewHeader;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n collapseButton: {\n cursor: 'pointer'\n },\n expandLess: {\n transform: 'rotate( -180deg )'\n }\n});\n","import React from 'react';\nimport classnames from 'classnames';\nimport {SmallIconButtonWithTooltip} from '../SmallIconButton';\nimport ExpandMore from '@mui/icons-material/ExpandMore';\nimport {useStyles} from './styles';\n\ntype SmallIconButtonWithTooltipProps = React.ComponentPropsWithoutRef<typeof SmallIconButtonWithTooltip>;\n\ntype Props = Omit<SmallIconButtonWithTooltipProps, 'tooltipTitle'> & {\n isOpen?: boolean;\n tooltipTitle?: string;\n};\n\nconst CollapseButton = ({isOpen = false, tooltipTitle, ...otherProps}: Props) => {\n const styles = useStyles();\n const buttonProps = {\n icon: ExpandMore,\n className: styles.collapseButton,\n iconClassName: classnames({[styles.expandLess]: isOpen})\n };\n const tooltipProps = {\n tooltipTitle: tooltipTitle\n };\n return (\n <SmallIconButtonWithTooltip\n data-reltio-id=\"collapse-button\"\n {...buttonProps}\n {...tooltipProps}\n {...otherProps}\n />\n );\n};\n\nexport default CollapseButton;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n bar: {\n backgroundColor: theme.palette.secondary.main,\n opacity: 0.12,\n position: 'absolute',\n minHeight: '20px',\n minWidth: '5px',\n borderRadius: '2px',\n top: 0,\n left: 0,\n height: '100%'\n }\n}));\n","import React, {useCallback} from 'react';\nimport classnames from 'classnames';\nimport {is} from 'ramda';\nimport {useStyles} from './styles';\n\ntype Props = {\n className?: string;\n width?: number | string;\n maxWidth?: number;\n};\n\nconst widthIsNumber = (width: string | number): width is number => is(Number, width);\n\nconst ColorBar = ({className, width = 0, maxWidth}: Props) => {\n const styles = useStyles();\n\n const getBarColorWidth = useCallback(\n (width: number) => {\n return (maxWidth ? (100 * width) / maxWidth : 0) + '%';\n },\n [maxWidth]\n );\n\n return width ? (\n <div\n className={classnames(styles.bar, className)}\n style={{width: widthIsNumber(width) ? getBarColorWidth(width) : width}}\n />\n ) : null;\n};\n\nexport default ColorBar;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n root: {\n display: 'flex',\n flex: 1\n },\n input: {\n height: '100%',\n paddingLeft: '12px',\n paddingRight: '8px',\n fontSize: '14px'\n },\n inputNumber: {\n minWidth: '60px',\n marginRight: 10,\n height: '100%',\n backgroundColor: 'rgba(0, 0, 0, 0.03)'\n },\n inputUnit: {\n width: '100%'\n }\n});\n","import React from 'react';\nimport {pipe} from 'ramda';\nimport {getIntervalUnitLabel} from '@reltio/mdm-sdk';\nimport TextField from '@mui/material/TextField';\nimport SimpleDropDownSelector from '../SimpleDropDownSelector/SimpleDropDownSelector';\nimport {getValue} from '../../core/utils';\nimport {useStyles} from './styles';\n\nimport {capitalize} from '@mui/material/utils';\n\ntype Props = {\n interval: [number, string];\n onChange: ([number, string]) => void;\n onFocus?: () => void;\n};\n\nconst periods = ['minutes', 'hours', 'days', 'weeks', 'months', 'years'];\n\nconst DateIntervalSelector = ({interval: [value, unit], onChange, onFocus}: Props) => {\n const styles = useStyles();\n const getIntervalFromValue = (newValue: number) => [newValue, unit];\n const getIntervalFromUnit = ({value: newUnit}: {value: string}) => [value, newUnit];\n const onNumberChange = pipe(getValue, parseInt, getIntervalFromValue, onChange);\n const onUnitChange = pipe(getIntervalFromUnit, onChange);\n return (\n <div className={styles.root}>\n <TextField\n variant=\"standard\"\n type=\"number\"\n value={value || ''}\n onChange={onNumberChange}\n inputProps={{min: 1, onFocus: onFocus}}\n InputProps={{classes: {root: styles.input}}}\n className={styles.inputNumber}\n />\n <SimpleDropDownSelector\n label={''}\n placeholder={capitalize(unit)}\n className={styles.inputUnit}\n value={{value: unit, label: capitalize(getIntervalUnitLabel(unit))}}\n options={periods.map((value) => ({\n value,\n label: capitalize(getIntervalUnitLabel(value))\n }))}\n onChange={onUnitChange}\n TextFieldProps={{\n inputProps: {onFocus: onFocus},\n InputProps: {classes: {root: styles.input}}\n }}\n />\n </div>\n );\n};\n\nexport default DateIntervalSelector;\n","import {alpha} from '@mui/material/styles';\nimport {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n buttonRoot: {\n '&$selected': {\n color: theme.palette.action.active,\n backgroundColor: alpha(theme.palette.action.active, 0.12),\n '&:hover': {\n backgroundColor: alpha(theme.palette.action.active, 0.15)\n }\n }\n },\n selected: {},\n paper: {\n minWidth: '112px'\n },\n menuItem: {\n minHeight: '32px'\n },\n menuText: {\n color: theme.palette.text.primary,\n fontSize: '13px',\n lineHeight: '15px',\n letterSpacing: 0\n }\n}));\n","import React, {forwardRef} from 'react';\nimport {identity} from 'ramda';\nimport Checkbox from '@mui/material/Checkbox';\nimport MenuItem from '@mui/material/MenuItem';\nimport Typography from '@mui/material/Typography';\nimport withTooltip from '../../HOCs/withTooltip/withTooltip';\nimport {DropDownMenuItem} from '../../types';\n\nimport {useStyles} from './styles';\n\nconst MenuItemWithTooltip = withTooltip(MenuItem);\n\ntype Props = {\n item: DropDownMenuItem;\n onMenuClose?: (e) => void;\n};\n\nconst MenuItemRenderer = forwardRef(({item, onMenuClose = identity}: Props, ref: React.Ref<HTMLLIElement>) => {\n const styles = useStyles();\n const {disabled, text, tooltip, onClick, id = '', selectable, selected} = item;\n const handleClick = (e) => {\n onMenuClose(e);\n onClick(e);\n };\n\n return (\n <MenuItemWithTooltip\n tooltipTitle={tooltip}\n showForDisabled={true}\n classes={{root: styles.menuItem}}\n onClick={handleClick}\n disabled={disabled}\n ref={ref}\n data-modal\n data-reltio-id={`reltio-search-menu-item${id}`}\n >\n {selectable && <Checkbox checked={selected} color=\"primary\" />}\n <Typography classes={{root: styles.menuText}}>{text}</Typography>\n </MenuItemWithTooltip>\n );\n});\n\nMenuItemRenderer.displayName = 'MenuItemRenderer';\n\nexport default MenuItemRenderer;\n","import React, {useCallback, useRef, useState} from 'react';\nimport classnames from 'classnames';\nimport {identity} from 'ramda';\nimport Button from '@mui/material/Button';\nimport Menu, {MenuProps} from '@mui/material/Menu';\nimport {useDidUpdateEffect} from '../../hooks';\nimport DefaultMenuItemRenderer from './MenuItemRenderer';\nimport {useStyles} from './styles';\nimport {DropDownMenuItem} from '../../types';\n\ntype Props<T> = {\n className?: string;\n buttonComponent?: React.ElementType;\n buttonContent?: React.ReactNode;\n menuItems?: T[];\n buttonProps?: Record<string, unknown>;\n popoverProps?: Omit<MenuProps, 'open'>;\n menuId: string;\n onMenuOpen?: () => void;\n onMenuClose?: () => void;\n MenuItemRenderer?: (props) => JSX.Element;\n};\n\nfunction DropDownMenuButton<T = DropDownMenuItem>({\n className,\n menuId,\n buttonComponent = Button,\n buttonContent,\n menuItems = [],\n buttonProps = {},\n popoverProps = {},\n onMenuOpen = identity,\n onMenuClose = identity,\n MenuItemRenderer = DefaultMenuItemRenderer\n}: Props<T>) {\n const ButtonComponent = buttonComponent;\n const styles = useStyles();\n const buttonRef = useRef();\n const [isOpen, setIsOpen] = useState(false);\n\n useDidUpdateEffect(() => {\n isOpen ? onMenuOpen() : onMenuClose();\n }, [isOpen]);\n\n const handleToggle = useCallback((e) => {\n e?.stopPropagation();\n setIsOpen((open) => !open);\n }, []);\n\n const renderMenuItem = (item, index) => {\n return <MenuItemRenderer item={item} key={index} onMenuClose={handleToggle} />;\n };\n\n return (\n <>\n <ButtonComponent\n data-reltio-id={'drop-down-menu-button'}\n ref={buttonRef}\n className={classnames(\n styles.buttonRoot,\n {\n [styles.selected]: isOpen\n },\n className\n )}\n onClick={handleToggle}\n aria-pressed={isOpen}\n aria-controls={isOpen ? menuId : undefined}\n aria-haspopup=\"true\"\n {...buttonProps}\n >\n {buttonContent}\n </ButtonComponent>\n <Menu\n id={menuId}\n variant=\"menu\"\n open={isOpen}\n autoFocus={false}\n classes={{paper: styles.paper}}\n anchorEl={buttonRef.current}\n onClose={handleToggle}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n elevation={2}\n MenuListProps={{autoFocusItem: isOpen}}\n {...popoverProps}\n >\n {menuItems.map(renderMenuItem)}\n </Menu>\n </>\n );\n}\n\nDropDownMenuButton.displayName = 'DropDownMenuButton';\n\nexport default DropDownMenuButton;\n","import React from 'react';\nimport {TEntityType} from '@reltio/mdm-sdk';\nimport RC_EntityTypeIcon from 'react-components/dist/EntityTypeIcon/EntityTypeIcon';\nimport {useMdmAbsoluteImagePath} from '../../contexts';\n\nconst ensureSlashEnding = (str) => (str.endsWith('/') ? str : str + '/');\n\ntype Props = {\n entityType: TEntityType;\n className?: string;\n classes?: Record<string, unknown>;\n backgroundColor?: string;\n color?: string;\n};\n\nconst EntityTypeIcon = (props: Props) => {\n const absoluteImagePath = useMdmAbsoluteImagePath() || '';\n return <RC_EntityTypeIcon {...props} storagePath={ensureSlashEnding(absoluteImagePath)} />;\n};\n\nexport default EntityTypeIcon;\n","import React from 'react';\n\ntype State = {\n error: Error | null;\n};\n\ntype Props = {\n error: React.ReactNode;\n};\n\nexport default class ErrorBoundary extends React.Component<Props, State> {\n constructor(props) {\n super(props);\n this.state = {\n error: null\n };\n }\n\n componentDidCatch(error) {\n this.setState({\n error: error\n });\n console.error(error);\n }\n\n render() {\n const {children, error} = this.props;\n if (this.state.error) {\n return error;\n }\n return children;\n }\n}\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n padding: '0 16px',\n minHeight: '48px',\n '.react-draggable &': {\n paddingTop: '4px'\n }\n },\n title: {\n fontSize: '16px',\n lineHeight: '19px',\n justifyContent: 'flex-start'\n }\n});\n","import React from 'react';\nimport classnames from 'classnames';\nimport BasicViewHeader from '../BasicViewHeader/BasicViewHeader';\nimport {useStyles} from './styles';\n\ntype Props = {\n className?: string;\n title: string;\n children?: React.ReactNode;\n};\n\nconst FacetViewHeader = ({className, title, children}: Props) => {\n const styles = useStyles();\n return (\n <BasicViewHeader title={title} classes={{root: classnames(styles.container, className), title: styles.title}}>\n {children}\n </BasicViewHeader>\n );\n};\n\nexport default FacetViewHeader;\n","import CreatableSelect from 'react-select/creatable';\nimport withMuiSkin from './withMuiSkin';\n\nexport default withMuiSkin(CreatableSelect);\n","import MenuItem from '@mui/material/MenuItem';\nimport Checkbox from '@mui/material/Checkbox';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport classNames from 'classnames';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\n\nexport default function Option(props) {\n const {\n innerProps,\n innerRef,\n children,\n isFocused,\n isSelected,\n selectProps: {classes},\n label\n } = props;\n\n return (\n <MenuItem\n className={classNames(classes.option, {[classes['option--selected']]: isSelected})}\n ref={innerRef}\n selected={isFocused}\n component=\"div\"\n {...innerProps}\n >\n <Checkbox color=\"primary\" checked={isSelected} />\n <ExpandedValueTooltip value={label}>\n <div className={classes['option--item']}>{children}</div>\n </ExpandedValueTooltip>\n </MenuItem>\n );\n}\n\nOption.propTypes = {\n children: PropTypes.node,\n innerProps: PropTypes.shape({\n id: PropTypes.string.isRequired,\n key: PropTypes.string,\n onClick: PropTypes.func.isRequired,\n onMouseMove: PropTypes.func.isRequired,\n onMouseOver: PropTypes.func.isRequired,\n tabIndex: PropTypes.number.isRequired\n }).isRequired,\n innerRef: PropTypes.oneOfType([\n PropTypes.oneOf([null]),\n PropTypes.func,\n PropTypes.shape({\n current: PropTypes.any.isRequired\n })\n ]),\n isFocused: PropTypes.bool.isRequired,\n isSelected: PropTypes.bool.isRequired,\n label: PropTypes.string,\n selectProps: PropTypes.shape({\n classes: PropTypes.shape({\n option: PropTypes.string\n })\n })\n};\n","import Option from './Option';\n\nconst components = {\n Option\n};\n\nexport default components;\n","import React, {useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {omit} from 'ramda';\nimport CreatableSelect from '../CreatableSelect';\nimport Select from '../Select';\nimport AsyncSelect from '../AsyncSelect';\nimport multiSelectComponents from './components';\nimport {makeStyles} from '@mui/styles';\nimport {mergeClasses} from '../../../core/utils';\n\nconst useStyles = makeStyles((theme) => ({\n label: {\n top: 6,\n left: 16\n },\n placeholder: (props) => ({\n display: !props.placeholder || props.label ? 'none' : undefined\n }),\n 'option--selected': {\n fontWeight: 400\n },\n clearIndicator: {\n padding: theme.spacing(1),\n margin: theme.spacing(0.25, 0.5)\n },\n dropdownIndicator: {\n padding: theme.spacing(1),\n margin: theme.spacing(0.25, 0.5)\n }\n}));\n\nlet id = 0;\nconst getInputId = () => `custom-select-${id++}`;\n\nfunction MultiSelect(props) {\n const {\n label,\n creatable,\n getOptions,\n loadingIndicator,\n components: componentsProp,\n classes: classesProp,\n styles: stylesProp,\n onChange: onChangeProp,\n onInputChange: onInputChangeProp,\n menuPlacement = 'auto',\n ...reactSelectProps\n } = props;\n\n const SelectComponent = creatable ? CreatableSelect : getOptions ? AsyncSelect : Select;\n\n const [inputValue, setInputValue] = useState('');\n const multiSelectClasses = useStyles(omit(['classes'], props));\n const inputId = getInputId();\n\n const components = {\n ...multiSelectComponents,\n ...componentsProp\n };\n\n const classes = mergeClasses(multiSelectClasses, classesProp);\n\n function handleInputChange(value, {action}) {\n onInputChangeProp(value, {action});\n if (action !== 'set-value') {\n setInputValue(value);\n }\n }\n\n function handleChange(value, actionMeta) {\n onChangeProp(value, actionMeta);\n if (actionMeta.action === 'create-option') {\n setInputValue('');\n onInputChangeProp('', {action: 'input-change'});\n }\n }\n\n const styles = {\n indicatorSeparator: (base) => ({\n ...base,\n margin: '10px 0'\n }),\n loadingIndicator: (base) => ({\n ...base,\n display: loadingIndicator ? base.display : 'none'\n }),\n loadingMessage: (base) => ({\n ...base,\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif'\n }),\n ...stylesProp\n };\n\n const labelProps = label\n ? {\n inputId,\n TextFieldProps: {\n label,\n InputLabelProps: {\n htmlFor: inputId,\n shrink: props.value && props.value.length ? true : undefined,\n className: classes.label\n },\n ...props.TextFieldProps\n }\n }\n : {};\n\n return (\n <SelectComponent\n isMulti\n inputId={inputId}\n inputValue={inputValue}\n onChange={handleChange}\n onInputChange={handleInputChange}\n closeMenuOnSelect={false}\n hideSelectedOptions={false}\n classes={classes}\n components={components}\n styles={styles}\n menuPlacement={menuPlacement}\n loadOptions={getOptions}\n {...labelProps}\n {...reactSelectProps}\n />\n );\n}\n\nMultiSelect.defaultProps = {\n creatable: false,\n cacheOptions: true,\n components: {},\n classes: {},\n placeholder: '',\n loadingIndicator: false,\n onInputChange: () => {},\n onChange: () => {}\n};\n\nMultiSelect.propTypes = {\n /**\n * Async creatable multi select with optional placeholder, shrink-label, non-closing menu and options with checkboxes.\n * Based on react-select/creatable and react-select/async.\n * See react-select docs: https://react-select.com\n *\n * Below are listed only props used in the MultiSelect component. Check https://react-select.com/props first.\n * */\n\n /** Ability to create values. React-select/async-creatable is used internally */\n creatable: PropTypes.bool,\n /** True for enabling cache. Recommended. */\n cacheOptions: PropTypes.bool,\n defaultOptions: PropTypes.bool,\n /** Array of selected options. */\n value: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.any\n })\n ),\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.any\n })\n ),\n /** Way to receive updated values */\n onChange: PropTypes.func,\n /** Way to receive updated inputValue */\n onInputChange: PropTypes.func,\n /** Input placeholder. Will not be shown if the label prop is specified */\n placeholder: PropTypes.string,\n /** Floating label from @mui/material/TextField component */\n label: PropTypes.string,\n /** Enable to show default react-select's indicator */\n loadingIndicator: PropTypes.bool,\n /** You could redefine any of these components */\n components: PropTypes.shape({\n ClearIndicator: PropTypes.func,\n Control: PropTypes.func,\n DropdownIndicator: PropTypes.func,\n DownChevron: PropTypes.func,\n CrossIcon: PropTypes.func,\n Group: PropTypes.func,\n GroupHeading: PropTypes.func,\n IndicatorsContainer: PropTypes.func,\n IndicatorSeparator: PropTypes.func,\n Input: PropTypes.func,\n LoadingIndicator: PropTypes.func,\n Menu: PropTypes.func,\n MenuList: PropTypes.func,\n MenuPortal: PropTypes.func,\n LoadingMessage: PropTypes.func,\n NoOptionsMessage: PropTypes.func,\n MultiValue: PropTypes.func,\n MultiValueContainer: PropTypes.func,\n MultiValueLabel: PropTypes.func,\n MultiValueRemove: PropTypes.func,\n Option: PropTypes.func,\n Placeholder: PropTypes.func,\n SelectContainer: PropTypes.func,\n SingleValue: PropTypes.func,\n ValueContainer: PropTypes.func\n }),\n /** Classes are passed to mui skin components. Provided classes will be merged with existing ones. */\n classes: PropTypes.shape({\n control: PropTypes.string,\n valueContainer: PropTypes.string,\n multiValue: PropTypes.string,\n noOptionsMessage: PropTypes.string,\n singleValue: PropTypes.string,\n placeholder: PropTypes.string,\n menu: PropTypes.string,\n clearIndicator: PropTypes.string,\n dropdownIndicator: PropTypes.string,\n option: PropTypes.string,\n 'option--selected': PropTypes.string,\n label: PropTypes.string\n }),\n /**\n * React-select's way to customise style. Could be used to style default react-select components.\n * In other cases better to use classes and components props\n * */\n styles: PropTypes.shape({\n clearIndicator: PropTypes.func,\n container: PropTypes.func,\n control: PropTypes.func,\n dropdownIndicator: PropTypes.func,\n group: PropTypes.func,\n groupHeading: PropTypes.func,\n indicatorsContainer: PropTypes.func,\n indicatorSeparator: PropTypes.func,\n input: PropTypes.func,\n loadingIndicator: PropTypes.func,\n loadingMessage: PropTypes.func,\n menu: PropTypes.func,\n menuList: PropTypes.func,\n menuPortal: PropTypes.func,\n multiValue: PropTypes.func,\n multiValueLabel: PropTypes.func,\n multiValueRemove: PropTypes.func,\n noOptionsMessage: PropTypes.func,\n option: PropTypes.func,\n placeholder: PropTypes.func,\n singleValue: PropTypes.func,\n valueContainer: PropTypes.func\n }),\n /** Props from https://material-ui.com/api/text-field/ */\n TextFieldProps: PropTypes.object /* eslint-disable-line react/forbid-prop-types */,\n getOptions: PropTypes.func,\n menuPlacement: PropTypes.string,\n menuPortalTarget: PropTypes.object,\n menuShouldBlockScroll: PropTypes.bool,\n captureMenuScroll: PropTypes.bool,\n getOptionValue: PropTypes.func,\n isSearchable: PropTypes.bool,\n inputRef: PropTypes.shape({current: PropTypes.object})\n};\n\nexport default MultiSelect;\n","import MultiSelect from './MultiSelect';\n\nexport default MultiSelect;\n","import {curry, defaultTo, mergeAll, pick, pipe, prop, propEq, __} from 'ramda';\nimport {ReltioGridLayoutItem} from '@reltio/mdm-sdk';\nimport {ReactGridLayoutItem, ReltioGridLayoutOptions} from '../../types';\n\nexport const reltioLayoutItemToReactGridLayoutItem = ({\n x,\n y,\n width,\n height,\n id,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n isStatic\n}: ReltioGridLayoutItem): ReactGridLayoutItem => ({\n x,\n y,\n w: width,\n h: height,\n minW: minWidth,\n minH: minHeight,\n maxW: maxWidth,\n maxH: maxHeight,\n i: id,\n static: isStatic\n});\n\nexport const reactGridLayoutItemToReltioLayoutItem = ({\n x,\n y,\n w,\n h,\n maxW,\n minW,\n minH,\n maxH,\n i,\n ...obj\n}: ReactGridLayoutItem): ReltioGridLayoutItem => ({\n x,\n y,\n width: w,\n height: h,\n minWidth: minW,\n minHeight: minH,\n maxWidth: maxW,\n maxHeight: maxH,\n id: i,\n isStatic: obj.static\n});\n\nexport const reltioLayoutToReactGridLayout = (layout: ReltioGridLayoutItem[]): ReactGridLayoutItem[] =>\n (layout || []).map(reltioLayoutItemToReactGridLayoutItem);\n\nexport const reactGridLayoutToReltioLayout = (layout: ReactGridLayoutItem[]): ReltioGridLayoutItem[] =>\n (layout || []).map(reactGridLayoutItemToReltioLayoutItem);\n\nexport const getReltioLayoutItemById = curry((layout: ReltioGridLayoutItem[], id: string) =>\n (layout || []).find(propEq('id', id))\n);\n\nconst updateExtraPropsInLayoutItem = curry(\n (props: string[], from: Record<string, unknown>, to: Record<string, unknown>) => mergeAll([to, pick(props, from)])\n);\n\nexport const copyPropsFromPreviousLayout = curry(\n (\n props: string[],\n oldReltioLayout: ReltioGridLayoutItem[],\n reltioLayout: ReltioGridLayoutItem[]\n ): ReltioGridLayoutItem[] =>\n (reltioLayout || []).map((layoutItem) =>\n pipe(\n prop('id'),\n getReltioLayoutItemById(oldReltioLayout),\n defaultTo({}),\n updateExtraPropsInLayoutItem(props, __, layoutItem)\n )(layoutItem)\n )\n);\n\nexport const calcHeight = (height: number, options: ReltioGridLayoutOptions): number => {\n const {margin, rowHeight} = options;\n\n return Math.ceil((height + margin[1]) / (rowHeight + margin[1]));\n};\n\nexport const alignGroupedItemsHeights = curry(\n (heightsMap: {[id: string]: number}, layout: ReltioGridLayoutItem[]): ReltioGridLayoutItem[] => {\n return layout.map((layoutItem) => {\n const oneRowItemsHeights = layout\n .filter((item) => item.y === layoutItem.y)\n .map((item) => heightsMap[item.id] || (!item.autosizing && item.minHeight) || 0);\n const newHeight = Math.max(...oneRowItemsHeights);\n if (layoutItem.height !== newHeight && newHeight) {\n const minMaxHeights = layoutItem.autosizing\n ? {\n minHeight: newHeight,\n maxHeight: newHeight\n }\n : {};\n return {\n ...layoutItem,\n ...minMaxHeights,\n height: newHeight\n };\n }\n return layoutItem;\n });\n }\n);\n\nexport const calcLayoutItemsHeight = curry(\n (heightsMap: {[id: string]: number}, layout: ReltioGridLayoutItem[]): ReltioGridLayoutItem[] => {\n return layout.map((layoutItem) => {\n const height = heightsMap[layoutItem.id];\n if (height && layoutItem.autosizing) {\n return {\n ...layoutItem,\n minHeight: height,\n maxHeight: height,\n height\n };\n }\n return layoutItem;\n });\n }\n);\n","export const RESIZE_ICON = `<svg width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path stroke=\"#505050\" stroke-opacity=\".54\" d=\"M9.5 0v10M0 9.5h9M7.5 4v4M4 7.5h3\"/>\n</svg>`;\n","import {makeStyles} from '@mui/styles';\nimport {svg2Url} from '@reltio/mdm-sdk';\nimport {RESIZE_ICON} from './icons/ResizeIcon.svg';\n\nexport const useStyles = makeStyles((_) => ({\n gridLayout: {\n position: 'relative',\n width: '100%',\n '& .react-grid-item': {\n '&.react-grid-placeholder': {\n background: 'rgba(0, 0, 0, 0.03)',\n border: '2px dashed rgba(0, 0, 0, 0.3)',\n borderRadius: '3px',\n transitionDuration: '100ms',\n zIndex: 7,\n userSelect: 'none',\n '& .react-resizable-handle': {\n display: 'none'\n }\n },\n '&.static .react-resizable-handle': {\n display: 'none'\n },\n '&.customView .react-resizable-handle': {\n width: '10px',\n height: '10px'\n },\n '&.cssTransforms': {\n transitionProperty: 'transform'\n },\n '&.react-draggable-dragging': {\n transition: 'none',\n zIndex: 8,\n willChange: 'transform',\n '& .react-resizable-handle': {\n backgroundImage: 'none'\n }\n },\n '& .react-resizable-handle': {\n position: 'absolute',\n width: '14px',\n height: '14px',\n bottom: 0,\n right: 0,\n zIndex: 20,\n backgroundImage: `url('${svg2Url(RESIZE_ICON)}')`,\n backgroundRepeat: 'no-repeat',\n backgroundOrigin: 'content-box',\n boxSizing: 'border-box',\n cursor: 'se-resize'\n },\n '&.fullscreen': {\n visibility: 'visible',\n position: 'unset',\n width: '100% !important',\n height: '100% !important',\n transform: 'translate(0) !important'\n }\n }\n },\n\n gridFullscreen: {\n height: '100% !important',\n overflowY: 'hidden',\n '& .react-resizable-handle, & .react-grid-item': {\n visibility: 'hidden'\n }\n },\n isResizing: {\n zIndex: 9,\n willChange: 'width, height',\n pointerEvents: 'none'\n }\n}));\n","import React, {DragEvent, useCallback, useMemo, useRef, useState, memo, ElementType} from 'react';\nimport GridLayout from 'react-grid-layout';\nimport ReactResizeDetector from 'react-resize-detector';\nimport {pipe, ifElse, always} from 'ramda';\nimport classnames from 'classnames';\nimport {ReltioGridLayoutItem} from '@reltio/mdm-sdk';\nimport {ReactGridLayoutItem, ReltioGridLayoutOptions} from '../../types';\nimport {\n alignGroupedItemsHeights,\n calcLayoutItemsHeight,\n reltioLayoutToReactGridLayout,\n reactGridLayoutToReltioLayout,\n reactGridLayoutItemToReltioLayoutItem,\n copyPropsFromPreviousLayout,\n calcHeight,\n getReltioLayoutItemById\n} from './helpers';\nimport {noop} from '../../core';\n\nimport {useStyles} from './styles';\n\ntype Props<ViewConfig = Record<string, unknown>> = {\n layout: ReltioGridLayoutItem[];\n views?: ViewConfig[];\n layoutOptions?: ReltioGridLayoutOptions;\n onLayoutChanged?: (layout: ReltioGridLayoutItem[]) => void;\n onDrop?: (layout: ReltioGridLayoutItem[], layoutItem: ReltioGridLayoutItem, e: DragEvent<HTMLDivElement>) => void;\n onRemove?: (id: string) => void;\n LayoutItem: ElementType;\n draggableHandle?: string;\n isDroppable?: boolean;\n isStatic?: boolean;\n droppingItem?: ReactGridLayoutItem;\n classes?: {\n root?: string;\n item?: string;\n };\n};\n\nconst DEFAULT_LAYOUT_OPTIONS: ReltioGridLayoutOptions = {\n cols: 4,\n rowHeight: 30,\n margin: [15, 15]\n};\n\nconst ReltioGridLayout = ({\n views,\n layout,\n layoutOptions = DEFAULT_LAYOUT_OPTIONS,\n onLayoutChanged = noop,\n draggableHandle,\n LayoutItem,\n onRemove,\n onDrop,\n droppingItem,\n isDroppable,\n isStatic,\n classes\n}: Props) => {\n const ref = useRef();\n const heightsMap = useRef<{[id: string]: number}>({});\n const styles = useStyles();\n const [resizingItemId, setResizingItemId] = useState<string>(null);\n const [fullscreenItemId, setFullscreenItemId] = useState<string>(null);\n const [width, setWidth] = useState(0);\n const {cols, rowHeight, margin} = layoutOptions;\n const processedLayout: ReactGridLayoutItem[] = useMemo(() => reltioLayoutToReactGridLayout(layout), [layout]);\n\n const onReltioLayoutChanged = pipe(\n reactGridLayoutToReltioLayout,\n copyPropsFromPreviousLayout(['autosizing'], layout),\n ifElse(\n always(isStatic),\n alignGroupedItemsHeights(heightsMap.current),\n calcLayoutItemsHeight(heightsMap.current)\n ),\n onLayoutChanged\n );\n const handleDrop = (\n layout: ReactGridLayoutItem[],\n layoutItem: ReactGridLayoutItem,\n e: DragEvent<HTMLDivElement>\n ) => {\n if (onDrop) {\n onDrop(reactGridLayoutToReltioLayout(layout), reactGridLayoutItemToReltioLayoutItem(layoutItem), e);\n }\n };\n const onToggleFullscreen = useCallback((id: string) => setFullscreenItemId((prevId) => (prevId ? null : id)), []);\n const isFullscreenEnabled = fullscreenItemId !== null;\n\n const getAutosizeComponent = (layoutItemId: string) => (\n <ReactResizeDetector\n handleHeight\n onResize={(_, height) => {\n if (height) {\n const newHeight = calcHeight(height, layoutOptions);\n if (newHeight !== heightsMap.current[layoutItemId]) {\n heightsMap.current[layoutItemId] = newHeight;\n onReltioLayoutChanged(processedLayout);\n }\n }\n }}\n />\n );\n\n return (\n <>\n <ReactResizeDetector\n refreshMode=\"debounce\"\n refreshRate={50}\n handleWidth={true}\n onResize={(width: number) => setWidth(width)}\n />\n {!!width && (\n <GridLayout\n innerRef={ref}\n layout={processedLayout}\n cols={cols}\n draggableHandle={draggableHandle}\n autoSize={true}\n rowHeight={rowHeight}\n width={width}\n margin={margin}\n onLayoutChange={isStatic ? undefined : onReltioLayoutChanged}\n isResizable={!isStatic && !isFullscreenEnabled}\n isDraggable={!isStatic && !isFullscreenEnabled}\n className={classnames(classes?.root, styles.gridLayout, {\n [styles.gridFullscreen]: isFullscreenEnabled\n })}\n onDrop={handleDrop}\n droppingItem={droppingItem}\n isDroppable={!isStatic && isDroppable}\n onResizeStart={(_, layoutItem) => setResizingItemId(layoutItem.i)}\n onResizeStop={() => setResizingItemId(null)}\n data-reltio-id=\"reltio-grid-layout\"\n >\n {processedLayout.map((layoutItem) => {\n const isItemFullscreen = fullscreenItemId === layoutItem.i;\n const isResizing = resizingItemId === layoutItem.i;\n const isAutosize = (getReltioLayoutItemById(layout, layoutItem.i) || {}).autosizing;\n const autosizeComponent = isAutosize\n ? {AutosizeComponent: getAutosizeComponent(layoutItem.i)}\n : {};\n return (\n <LayoutItem\n key={layoutItem.i}\n layoutItemConfig={layoutItem}\n views={views}\n onToggleFullscreen={onToggleFullscreen}\n onRemove={onRemove}\n className={classnames(classes?.item, {\n static: isStatic,\n fullscreen: isItemFullscreen,\n [styles.isResizing]: isResizing\n })}\n isFullscreen={isItemFullscreen}\n {...autosizeComponent}\n />\n );\n })}\n </GridLayout>\n )}\n </>\n );\n};\n\nReltioGridLayout.displayName = 'ReltioGridLayout';\n\nexport default memo(ReltioGridLayout);\n","import React from 'react';\n\nconst Spacer = () => <div style={{flex: 1}} />;\n\nexport default Spacer;\n","import {makeStyles} from '@mui/styles';\n\nexport const customStyles = {\n input: (currentStyles) => ({...currentStyles, fontSize: '14px'}),\n loadingMessage: (currentStyles) => ({...currentStyles, fontSize: '14px'}),\n menuPortal: (currentStyles) => ({...currentStyles, zIndex: 1300})\n};\n\nexport const useStyles = makeStyles({\n root: {\n flex: 1\n },\n title: {\n paddingBottom: '10px',\n paddingLeft: '5px',\n fontSize: '14px'\n },\n dropDownInput: {\n width: '100%',\n justifyContent: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.03)',\n borderTop: '4px'\n },\n option: {\n fontSize: '14px',\n height: '32px'\n }\n});\n","import React, {useRef} from 'react';\nimport i18n from 'ui-i18n';\nimport {defaultTo, pipe, pluck} from 'ramda';\nimport classnames from 'classnames';\nimport Typography from '@mui/material/Typography';\nimport MultiSelect from '../ReactSelect/MultiSelect';\nimport DropdownIndicatorWithIconButton from '../commonReactSelectComponents/DropdownIndicatorWithIconButton';\nimport {getAllUsersForTenant, UserInfo, utils} from '@reltio/mdm-sdk';\nimport {useMdmServicesPath, useMdmTenant} from '../../contexts';\nimport {customStyles, useStyles} from './styles';\n\ntype Props = {\n selectedUsers: string[];\n onChange: (activities: string[]) => void;\n className?: string;\n disableUnderline?: boolean;\n};\n\nconst UserSelector = ({selectedUsers, onChange, className, disableUnderline}: Props) => {\n const styles = useStyles();\n\n const tenant = useMdmTenant();\n const servicesPath = useMdmServicesPath();\n\n const valueToOption = (value: string) => ({value, label: value});\n const prepareValues = (values: string[]) => values.map(valueToOption);\n const filterUsers = (inputValue) => (users) =>\n inputValue ? users.filter((username) => utils.strings.search(username, inputValue)) : users;\n\n const cachedRequest = useRef<Promise<UserInfo[]>>();\n const getOptions = (inputValue) => {\n if (!cachedRequest.current) {\n cachedRequest.current = getAllUsersForTenant({tenant, servicesPath});\n }\n return cachedRequest.current.then(pipe(pluck('username'), filterUsers(inputValue), prepareValues));\n };\n\n return (\n <div className={classnames(styles.root, className)} data-reltio-id=\"user-selector\">\n <Typography className={styles.title} variant={'subtitle1'}>\n {i18n.text('User')}\n </Typography>\n <MultiSelect\n value={prepareValues(selectedUsers)}\n onChange={pipe(defaultTo([]), pluck('value'), onChange)}\n defaultOptions={true}\n getOptions={getOptions}\n TextFieldProps={{\n InputProps: {disableUnderline},\n className: styles.dropDownInput\n }}\n components={{\n DropdownIndicator: DropdownIndicatorWithIconButton\n }}\n styles={customStyles}\n classes={styles}\n menuPortalTarget={document.body}\n menuShouldBlockScroll={true}\n captureMenuScroll={false}\n />\n </div>\n );\n};\n\nexport default UserSelector;\n","export enum ActivityTypes {\n MODEL_UPDATED = 'MODEL_UPDATED',\n ENTITY_REMOVED = 'ENTITY_REMOVED',\n ENTITY_CREATED = 'ENTITY_CREATED',\n ENTITY_CHANGED = 'ENTITY_CHANGED',\n ENTITIES_MERGED = 'ENTITIES_MERGED',\n ENTITIES_SPLITTED = 'ENTITIES_SPLITTED',\n ENTITY_LOST_MERGE = 'ENTITY_LOST_MERGE',\n RELATIONSHIP_CREATED = 'RELATIONSHIP_CREATED',\n RELATIONSHIP_REMOVED = 'RELATIONSHIP_REMOVED',\n RELATIONSHIP_CHANGED = 'RELATIONSHIP_CHANGED',\n POTENTIAL_MATCHES_FOUND = 'POTENTIAL_MATCHES_FOUND',\n NOT_MATCHES_SET = 'NOT_MATCHES_SET',\n NOT_MATCHES_RESET = 'NOT_MATCHES_RESET',\n PERIODIC_TASK_SCHEDULED = 'PERIODIC_TASK_SCHEDULED',\n ENTITIES_MERGED_MANUALLY = 'ENTITIES_MERGED_MANUALLY',\n POTENTIAL_MATCHES_REMOVED = 'POTENTIAL_MATCHES_REMOVED',\n ENTITIES_MERGED_ON_THE_FLY = 'ENTITIES_MERGED_ON_THE_FLY',\n USER_LOGIN = 'USER_LOGIN',\n USER_LOGOUT = 'USER_LOGOUT',\n USER_SEARCH = 'USER_SEARCH',\n USER_PROFILE_VIEW = 'USER_PROFILE_VIEW',\n COMMENT_ADDED = 'COMMENT_ADDED',\n COMMENT_UPDATED = 'COMMENT_UPDATED',\n COMMENT_DELETED = 'COMMENT_DELETED',\n ANALYTICS_ATTRIBUTES_CHANGED = 'ANALYTICS_ATTRIBUTES_CHANGED',\n SFDC_CONNECTOR_SYNCHRONIZATION_ISSUE = 'SFDC_CONNECTOR_SYNCHRONIZATION_ISSUE',\n GROUP_CREATED = 'GROUP_CREATED',\n GROUP_REMOVED = 'GROUP_REMOVED',\n GROUP_CHANGED = 'GROUP_CHANGED'\n}\n","import {\n formatDataTypeValue,\n findAttributeTypeByUri,\n Metadata,\n AttributePresentations,\n makeAttrTypeUri,\n getAttrDataTypeDefinition\n} from '@reltio/mdm-sdk';\nimport {filter, groupBy, ifElse, map, path, pipe, propOr, values, isNil, includes, reject} from 'ramda';\nimport i18n from 'ui-i18n';\nimport {ActivityData, ActivityItem, ActivityTypes, DeltaValue} from '../types';\n\nconst getItemDataType = path(['data', 'type']);\n\nexport const getActivityType = (activity: ActivityData) => {\n const {items, label} = activity;\n const [firstItem] = items || [];\n return getItemDataType(firstItem) || label;\n};\n\nexport const isValidActivityType = (type: string): boolean => pipe(values, includes(type))(ActivityTypes);\n\nexport const removeIgnoredItems = (activity: ActivityData): ActivityData => {\n const {items = [], label} = activity;\n const isImplementedItem = (item: ActivityItem): boolean => isValidActivityType(getItemDataType(item) || label);\n const filteredItems = filter(isImplementedItem)(items);\n if (items.length !== filteredItems.length) {\n console.error('Activities not implemented:', reject(isImplementedItem)(items));\n }\n return {\n ...activity,\n items: filteredItems,\n itemsTotal: filteredItems.length\n };\n};\n\nexport const splitActivityByType = (activity: ActivityData) => {\n return pipe(\n propOr([], 'items'),\n groupBy(getItemDataType),\n values,\n ifElse(\n ({length}) => length > 1,\n map((items) => ({\n ...activity,\n items,\n itemsTotal: items.length\n })),\n () => [activity]\n )\n )(activity);\n};\n\nexport const stringifyDeltaValue = (\n deltaValue: DeltaValue['value'],\n attributeTypeUri: string,\n metadata: Metadata,\n attributePresentations: AttributePresentations\n) => {\n const attributeType = findAttributeTypeByUri(metadata, attributeTypeUri);\n const dataTypeDefinition = getAttrDataTypeDefinition(attributeType);\n const formatValue = formatDataTypeValue({attributePresentations, dataTypeDefinition});\n\n if (isNil(deltaValue)) {\n return '';\n }\n\n if (typeof deltaValue === 'string') {\n return attributeType ? formatValue(deltaValue) : deltaValue;\n }\n\n return Object.entries(deltaValue)\n .flatMap(([attributeTypeName, deltaValues]) =>\n deltaValues.map((deltaValue) =>\n stringifyDeltaValue(\n deltaValue.value,\n makeAttrTypeUri(attributeTypeUri, attributeTypeName),\n metadata,\n attributePresentations\n )\n )\n )\n .join(', ');\n};\n\nexport const getActivityLabel = (type: ActivityTypes) => {\n const labels = {\n [ActivityTypes.COMMENT_ADDED]: i18n.text('Comment added'),\n [ActivityTypes.COMMENT_DELETED]: i18n.text('Comment deleted'),\n [ActivityTypes.COMMENT_UPDATED]: i18n.text('Comment updated'),\n [ActivityTypes.ENTITIES_MERGED]: i18n.text('Profile merged'),\n [ActivityTypes.ENTITIES_MERGED_MANUALLY]: i18n.text('Profile merged manually'),\n [ActivityTypes.ENTITIES_MERGED_ON_THE_FLY]: i18n.text('Profile merged on the fly'),\n [ActivityTypes.ENTITIES_SPLITTED]: i18n.text('Profile un-merged'),\n [ActivityTypes.ENTITY_CHANGED]: i18n.text('Profile updated'),\n [ActivityTypes.ENTITY_CREATED]: i18n.text('Profile created'),\n [ActivityTypes.ENTITY_LOST_MERGE]: i18n.text('Profile lost merge'),\n [ActivityTypes.ENTITY_REMOVED]: i18n.text('Profile removed'),\n [ActivityTypes.GROUP_CHANGED]: i18n.text('Group updated'),\n [ActivityTypes.GROUP_CREATED]: i18n.text('Group created'),\n [ActivityTypes.GROUP_REMOVED]: i18n.text('Group removed'),\n [ActivityTypes.MODEL_UPDATED]: i18n.text('Model was updated'),\n [ActivityTypes.NOT_MATCHES_RESET]: i18n.text('Not matches reset'),\n [ActivityTypes.NOT_MATCHES_SET]: i18n.text('Not matches set'),\n [ActivityTypes.PERIODIC_TASK_SCHEDULED]: i18n.text('Periodic task was scheduled'),\n [ActivityTypes.POTENTIAL_MATCHES_FOUND]: i18n.text('Potential matches found'),\n [ActivityTypes.POTENTIAL_MATCHES_REMOVED]: i18n.text('Potential matches removed'),\n [ActivityTypes.RELATIONSHIP_CHANGED]: i18n.text('Relationship updated'),\n [ActivityTypes.RELATIONSHIP_CREATED]: i18n.text('Relationship created'),\n [ActivityTypes.RELATIONSHIP_REMOVED]: i18n.text('Relationship removed'),\n [ActivityTypes.USER_LOGIN]: i18n.text('Logged in'),\n [ActivityTypes.USER_LOGOUT]: i18n.text('Logged out'),\n [ActivityTypes.USER_PROFILE_VIEW]: i18n.text('Profile viewed'),\n [ActivityTypes.USER_SEARCH]: i18n.text('Searched'),\n [ActivityTypes.ANALYTICS_ATTRIBUTES_CHANGED]: i18n.text('Analytics attribute changed'),\n [ActivityTypes.SFDC_CONNECTOR_SYNCHRONIZATION_ISSUE]: i18n.text('SFDC connector synchronization issue')\n };\n return labels[type] || '';\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n root: {\n flex: 1\n },\n dropdownIndicator: {\n transition: 'transform .15s ease'\n },\n inputRoot: {\n fontSize: '14px',\n height: 46\n },\n input: {\n padding: '0 12px 0'\n },\n dateOptionLabel: {\n minWidth: '100px'\n },\n paper: {\n minWidth: '112px'\n }\n});\n","import React, {useCallback, useRef, useState} from 'react';\nimport moment from 'moment';\nimport i18n from 'ui-i18n';\nimport {isNil} from 'ramda';\nimport {DataTypes, formatDataTypeValue} from '@reltio/mdm-sdk';\nimport {noop} from '../../../core';\nimport TextField from '@mui/material/TextField';\nimport Popover from '@mui/material/Popover';\nimport DropdownIndicatorWithIconButton from '../../commonReactSelectComponents/DropdownIndicatorWithIconButton';\nimport DateRangePicker from '../../DateRangePicker/DateRangePicker';\n\nimport {useStyles} from './styles';\n\ntype DateValues = [Date, Date];\ntype Props = {\n values: DateValues;\n onChange: (values: DateValues) => void;\n onFocus?: () => void;\n};\n\nconst localeFormat = moment.localeData().longDateFormat('L');\n\nconst formatValue = (value: Date, placeholder: string) => {\n return isNil(value)\n ? `${placeholder}`\n : `${formatDataTypeValue({dataTypeDefinition: {type: DataTypes.TYPE_ACTIVENESS_DATE}}, value)}`;\n};\n\nconst CustomDateRangeEditor = ({values, onChange, onFocus = noop}: Props) => {\n const placeholder = localeFormat;\n const inputRef = useRef(null);\n const [open, setOpen] = useState(false);\n const styles = useStyles();\n\n const onApply = (values: DateValues) => {\n onChange(values);\n setOpen(false);\n };\n\n const handleToggle = useCallback(() => {\n setOpen((open) => !open);\n onFocus();\n }, [onFocus]);\n\n const onCancel = () => {\n setOpen(false);\n };\n\n return (\n <div className={styles.root}>\n <TextField\n fullWidth\n value={values.map((value) => formatValue(value, placeholder)).join(' \\u2014 ')}\n onClick={handleToggle}\n variant=\"filled\"\n ref={inputRef}\n InputProps={{\n endAdornment: (\n <DropdownIndicatorWithIconButton\n selectProps={{classes: styles, menuIsOpen: open}}\n innerProps={{}}\n />\n ),\n disableUnderline: isNil(values),\n readOnly: true,\n classes: {\n root: styles.inputRoot,\n input: styles.input\n }\n }}\n InputLabelProps={{\n shrink: false\n }}\n placeholder={i18n.text(`${placeholder} \\u2014 ${placeholder}`)}\n />\n <Popover\n open={open}\n anchorEl={inputRef.current}\n onClose={onCancel}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n elevation={2}\n >\n <DateRangePicker values={values} onApply={onApply} type={DataTypes.TYPE_ACTIVENESS_DATE} />\n </Popover>\n </div>\n );\n};\n\nexport default CustomDateRangeEditor;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n loader: {\n width: '100%',\n top: 0,\n left: 0,\n position: 'absolute',\n borderRadius: '2px'\n }\n});\n","import React from 'react';\nimport LinearProgress from '@mui/material/LinearProgress';\nimport {useStyles} from './styles';\n\nconst DashboardLinearLoader = () => {\n const styles = useStyles();\n return <LinearProgress color=\"primary\" className={styles.loader} data-reltio-id=\"dashboard-item-loader\" />;\n};\n\nexport default DashboardLinearLoader;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n menuItemTitle: {\n fontSize: '13px',\n lineHeight: '15px'\n },\n openIcon: {\n padding: '4px',\n borderRadius: '2px',\n marginRight: '-10px'\n }\n}));\n","import React, {useState, ReactNode, MouseEvent} from 'react';\nimport Menu from '@mui/material/Menu';\nimport MenuItem from '@mui/material/MenuItem';\nimport ListItemIcon from '@mui/material/ListItemIcon';\nimport ListItemText from '@mui/material/ListItemText';\nimport IconButton from '@mui/material/IconButton';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\n\nimport {useStyles} from './styles';\n\ntype MenuItem = {\n id: string;\n title: string;\n icon: ReactNode;\n active: boolean;\n action: () => void;\n disabled?: boolean;\n};\n\ntype DashboardPopupMenuProps = {\n items: MenuItem[];\n};\n\nconst DashboardPopupMenu = ({items}: DashboardPopupMenuProps) => {\n const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null);\n const isMenuOpen = Boolean(anchorEl);\n const styles = useStyles();\n\n const handleMenuClick = (e: MouseEvent<HTMLButtonElement>) => setAnchorEl(e.currentTarget);\n\n const handleMenuClose = () => setAnchorEl(null);\n\n const handleItemClick = (action: () => void) => () => {\n handleMenuClose();\n action();\n };\n\n const renderItem = ({id, icon, title, action, disabled = false}: MenuItem) => (\n <MenuItem key={id} onClick={handleItemClick(action)} disabled={disabled}>\n <ListItemIcon>{icon}</ListItemIcon>\n <ListItemText classes={{primary: styles.menuItemTitle}}>{title}</ListItemText>\n </MenuItem>\n );\n\n return (\n <>\n <IconButton\n className={styles.openIcon}\n aria-controls=\"menu\"\n aria-haspopup=\"true\"\n onClick={handleMenuClick}\n size=\"large\"\n >\n <MoreVertIcon />\n </IconButton>\n <Menu\n id=\"facet-menu\"\n anchorEl={anchorEl}\n open={isMenuOpen}\n onClose={handleMenuClose}\n elevation={2}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n >\n {items.filter((item) => item.active).map(renderItem)}\n </Menu>\n </>\n );\n};\n\nexport default DashboardPopupMenu;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n view: {\n flex: 1,\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n boxShadow: 'none'\n }\n}));\n","import React from 'react';\nimport {BasicView} from '@reltio/components';\nimport {DashboardViewIdContext} from '../../contexts/DashboardViewIdContext';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n id: string;\n children: React.ReactNode;\n};\n\nconst LayoutItemView = ({id, children}: Props) => {\n const styles = useStyles();\n\n return (\n <DashboardViewIdContext.Provider value={id}>\n <BasicView className={styles.view} data-reltio-id={`layout-item-${id}`}>\n {children}\n </BasicView>\n </DashboardViewIdContext.Provider>\n );\n};\n\nexport default LayoutItemView;\n","import React from 'react';\n\nexport const DashboardViewIdContext = React.createContext(null);\n\nDashboardViewIdContext.displayName = 'DashboardViewIdContext';\n","import {useCallback, useEffect, useState} from 'react';\nimport {RequestStates} from '@reltio/components';\nimport {assocPath} from 'ramda';\nimport {\n getSavedSearches,\n getTotalsForQuery,\n promiseAllSettled,\n replacePlaceholdersInQuery,\n SavedSearchesOptions,\n SavedSearchesResponse\n} from '@reltio/mdm-sdk';\nimport {SavedSearchData} from '../types/SavedSearchData';\n\ntype Props = {\n options: SavedSearchesOptions;\n offset: number;\n max: number;\n};\n\nexport const useSavedSearchesRequest = ({options, offset, max}: Props) => {\n const [data, setData] = useState<SavedSearchData[]>([]);\n const [total, setTotal] = useState<number>(0);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n setData([]);\n };\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n const onRequestFinished = (data) => {\n setData(data.result || []);\n setTotal(data.total);\n setRequestState(RequestStates.LOADED);\n };\n const {countResults, ...restOptions} = (options || {}) as Required<SavedSearchesOptions>;\n const getData = async () => {\n const {result = [], total}: SavedSearchesResponse = await getSavedSearches({\n offset,\n max,\n ...restOptions\n });\n if (countResults) {\n const totalRequests: Array<Promise<{total: number}>> = result.map((search) =>\n getTotalsForQuery(replacePlaceholdersInQuery(search.query))\n );\n const totalResults = await promiseAllSettled(totalRequests);\n const searchesWithCount: SavedSearchData[] = totalResults.reduce(\n (searchesWithTotal, {status, value, reason}, searchIndex) => {\n switch (status) {\n case 'fulfilled':\n return assocPath([searchIndex, 'count'], value.total, searchesWithTotal);\n case 'rejected':\n console.error(reason);\n break;\n }\n return searchesWithTotal;\n },\n result\n );\n onRequestFinished({result: searchesWithCount, total});\n } else {\n onRequestFinished({result, total});\n }\n };\n getData().catch(onError);\n }, [options, max, offset]);\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, reload: refreshAction, total};\n};\n","import {subtract} from 'ramda';\n\nconst ROWS_PER_PAGE_OPTIONS = [10, 25, 50, 100];\nexport const [DEFAULT_ROWS_PER_PAGE] = ROWS_PER_PAGE_OPTIONS;\nexport const getRowsPerPageOptions = (defaultRowsPerPage: number) =>\n ROWS_PER_PAGE_OPTIONS.filter((option) => option !== defaultRowsPerPage)\n .concat(defaultRowsPerPage)\n .sort(subtract);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n rightMenu: {\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n alignItems: 'center',\n height: '100%',\n gap: '8px',\n marginLeft: 4\n },\n updatedChip: {\n background: '#FF9E1B',\n height: 20,\n fontSize: '10px',\n color: 'white',\n marginLeft: 4\n }\n}));\n","import React, {useContext, useMemo} from 'react';\nimport i18n from 'ui-i18n';\nimport {FacetViewHeader} from '@reltio/components';\nimport Chip from '@mui/material/Chip';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport HighlightOffIcon from '@mui/icons-material/HighlightOff';\nimport ReplayIcon from '@mui/icons-material/Replay';\nimport {DashboardViewIdContext} from '../../contexts/DashboardViewIdContext';\nimport DashboardPopupMenu from '../DashboardPopupMenu/DashboardPopupMenu';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n title: string;\n onToggleFullscreen: (id: string) => void;\n isFullscreen: boolean;\n isUpdated?: boolean;\n onRefresh?: () => void;\n onRemove?: (id: string) => void;\n children?: React.ReactNode;\n};\n\nconst LayoutItemHeader = ({\n title,\n onToggleFullscreen,\n isUpdated = false,\n isFullscreen,\n onRemove,\n onRefresh,\n children\n}: Props) => {\n const id = useContext(DashboardViewIdContext);\n const menuItems = useMemo(\n () => [\n {\n id: 'refresh',\n title: i18n.text('Refresh'),\n icon: <ReplayIcon fontSize=\"small\" />,\n active: !!onRefresh,\n action: () => onRefresh()\n },\n {\n id: 'fullscreen',\n title: i18n.text('Fullscreen'),\n icon: <FullscreenIcon fontSize=\"small\" />,\n active: !isFullscreen,\n action: () => onToggleFullscreen(id)\n },\n {\n id: 'exitFullscreen',\n title: i18n.text('Exit fullscreen'),\n icon: <FullscreenExitIcon fontSize=\"small\" />,\n active: isFullscreen,\n action: () => onToggleFullscreen(id)\n },\n {\n id: 'remove',\n title: i18n.text('Remove'),\n icon: <HighlightOffIcon fontSize=\"small\" />,\n active: !!onRemove,\n action: () => {\n onRemove(id);\n if (isFullscreen) onToggleFullscreen(id);\n }\n }\n ],\n [id, isFullscreen, onRemove, onToggleFullscreen, onRefresh]\n );\n const styles = useStyles();\n\n return (\n <FacetViewHeader title={title}>\n {isUpdated && <Chip label={i18n.text('Updated')} size=\"small\" className={styles.updatedChip} />}\n <div className={styles.rightMenu}>\n {children}\n <DashboardPopupMenu items={menuItems} />\n </div>\n </FacetViewHeader>\n );\n};\n\nexport default LayoutItemHeader;\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => React.createElement(\"svg\", _extends({\n width: \"148\",\n height: \"148\",\n viewBox: \"0 0 148 148\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), React.createElement(\"mask\", {\n id: \"svg2791016623a\",\n style: {\n maskType: \"alpha\"\n },\n maskUnits: \"userSpaceOnUse\",\n x: \"0\",\n y: \"0\",\n width: \"148\",\n height: \"148\"\n}, React.createElement(\"path\", {\n d: \"M74 148c40.869 0 74-33.131 74-74 0-40.87-33.131-74-74-74C33.13 0 0 33.13 0 74c0 40.869 33.13 74 74 74z\",\n fill: \"#fff\"\n})), React.createElement(\"g\", {\n mask: \"url(#svg2791016623a)\"\n}, React.createElement(\"path\", {\n d: \"M74 148c40.869 0 74-33.131 74-74 0-40.87-33.131-74-74-74C33.13 0 0 33.13 0 74c0 40.869 33.13 74 74 74z\",\n fill: \"#0072CE\",\n fillOpacity: \".1\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0 5.203h148V148H0V5.203z\",\n fill: \"url(#nodata__paint0_linear)\"\n}), React.createElement(\"g\", {\n opacity: \".9\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n fill: \"#fff\"\n}, React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M25.186 26.016h131.896V128.04H25.186V26.016z\",\n fillOpacity: \".8\"\n}), React.createElement(\"path\", {\n opacity: \".9\",\n d: \"M16.766 26.021a4.626 4.626 0 014.623-4.63h129.406a4.623 4.623 0 014.623 4.63v88.107a4.625 4.625 0 01-4.623 4.631H21.389a4.623 4.623 0 01-4.623-4.631V26.021z\"\n})), React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M141.553 50.95a2.315 2.315 0 002.311-2.32 2.315 2.315 0 00-2.311-2.318 2.315 2.315 0 00-2.311 2.319 2.315 2.315 0 002.311 2.318zM133.465 50.95a2.315 2.315 0 002.311-2.32 2.315 2.315 0 00-2.311-2.318 2.314 2.314 0 00-2.311 2.319 2.314 2.314 0 002.311 2.318z\",\n fill: \"#6DBCFF\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M33.808 46.313a5.488 5.488 0 015.489 5.488v.035a5.488 5.488 0 01-10.977 0v-.035a5.488 5.488 0 015.488-5.489z\",\n fill: \"#E3EBF4\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M47.102 46.19h37.054a2.029 2.029 0 010 4.057H47.102a2.028 2.028 0 110-4.057z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".43\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M46.523 53.725h67.006a1.45 1.45 0 010 2.898H46.523a1.449 1.449 0 110-2.898z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M45.943 58.941h21.62a.87.87 0 010 1.74h-21.62a.87.87 0 110-1.74z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M71.35 30.664H31.508a3.188 3.188 0 100 6.375H71.35a3.188 3.188 0 000-6.375z\",\n fill: \"#645F6D\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M141.553 72.972a2.315 2.315 0 002.311-2.318 2.315 2.315 0 00-2.311-2.318 2.315 2.315 0 00-2.311 2.318 2.315 2.315 0 002.311 2.319zM133.465 72.972a2.315 2.315 0 002.311-2.318 2.315 2.315 0 00-2.311-2.318 2.314 2.314 0 00-2.311 2.318 2.314 2.314 0 002.311 2.319z\",\n fill: \"#6DBCFF\"\n}), React.createElement(\"path\", {\n d: \"M39.297 73.824a5.488 5.488 0 10-10.977 0v.035a5.488 5.488 0 0010.977 0v-.035z\",\n fill: \"#E3EBF4\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M47.102 68.214h43.894a2.029 2.029 0 010 4.057H47.102a2.029 2.029 0 010-4.057z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".43\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M46.523 75.748h74.516a1.45 1.45 0 010 2.898H46.523a1.449 1.449 0 110-2.898z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M45.943 80.965h60.077a.87.87 0 010 1.739H45.943a.87.87 0 010-1.74z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M141.553 94.996a2.315 2.315 0 002.311-2.318 2.315 2.315 0 00-2.311-2.319 2.315 2.315 0 00-2.311 2.319 2.315 2.315 0 002.311 2.318zM133.465 94.996a2.315 2.315 0 002.311-2.318 2.315 2.315 0 00-2.311-2.319 2.314 2.314 0 00-2.311 2.319 2.314 2.314 0 002.311 2.318z\",\n fill: \"#6DBCFF\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M33.808 90.36a5.488 5.488 0 015.489 5.488v.035a5.488 5.488 0 11-10.977 0v-.035a5.488 5.488 0 015.488-5.489z\",\n fill: \"#E3EBF4\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M47.102 90.237h58.915a2.028 2.028 0 010 4.057H47.102a2.029 2.029 0 010-4.057z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".43\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M46.523 97.772h49.096a1.449 1.449 0 110 2.897H46.524a1.448 1.448 0 110-2.897z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M45.943 102.988h21.62a.87.87 0 010 1.739h-21.62a.87.87 0 110-1.739z\",\n fill: \"#B1AABD\"\n}), React.createElement(\"path\", {\n opacity: \".1\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M102.927 64.75l44.536 77.139-58.989 34.057-44.536-77.14.405-.234c4.06 9.263 12.074 16.712 22.462 19.616 18.103 5.059 36.562-5.599 41.232-23.805 2.679-10.449.235-21.113-5.757-29.26l.647-.374z\",\n fill: \"url(#nodata__paint1_linear)\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M56.352 103.62c10.385 10.611 27.223 10.611 37.609 0 10.385-10.612 10.385-27.816 0-38.427-10.386-10.611-27.224-10.611-37.61 0-10.385 10.611-10.385 27.815 0 38.427z\",\n fill: \"url(#nodata__paint2_linear)\"\n}), React.createElement(\"g\", {\n filter: \"url(#nodata__filter0_d)\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n}, React.createElement(\"path\", {\n d: \"M74.981 49.719c19.06 0 34.512 15.462 34.512 34.536a34.418 34.418 0 01-8.665 22.886l29.603 29.623a51.708 51.708 0 01-5.837 5.43l-29.705-29.725a34.338 34.338 0 01-19.908 6.322c-19.06 0-34.512-15.462-34.512-34.536S55.92 49.719 74.98 49.719zm0 10.265c-13.395 0-24.254 10.866-24.254 24.27 0 13.405 10.859 24.272 24.254 24.272 13.395 0 24.254-10.867 24.254-24.271S88.376 59.984 74.981 59.984z\",\n fill: \"#B5C8C9\"\n}), React.createElement(\"path\", {\n d: \"M52.903 110.801c-7.598-6.335-12.434-15.876-12.434-26.546 0-19.074 15.451-34.536 34.512-34.536 10.663 0 20.197 4.839 26.528 12.442l-5.662 5.667c-4.862-6.175-12.401-10.14-20.866-10.14-14.662 0-26.548 11.895-26.548 26.567 0 8.47 3.962 16.015 10.132 20.88l-5.662 5.666z\",\n fill: \"#fff\",\n fillOpacity: \".4\"\n})), React.createElement(\"g\", {\n style: {\n mixBlendMode: \"soft-light\"\n },\n opacity: \".4\"\n}, React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M56.352 103.62c10.385 10.611 27.223 10.611 37.609 0 10.385-10.612 10.385-27.816 0-38.427-10.386-10.611-27.224-10.611-37.61 0-10.385 10.611-10.385 27.815 0 38.427z\",\n fill: \"#D9F5FF\"\n})), React.createElement(\"g\", {\n style: {\n mixBlendMode: \"overlay\"\n }\n}, React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M71.621 91.769c0-2.272.257-4.065.77-5.38.513-1.314 1.346-2.453 2.497-3.418 1.151-.964 2.026-1.847 2.625-2.648.6-.802.899-1.684.899-2.649 0-2.35-1.012-3.524-3.034-3.524-.933 0-1.688.343-2.263 1.027-.576.685-.88 1.61-.91 2.777h-7.888c.031-3.111 1.011-5.534 2.94-7.27 1.93-1.734 4.636-2.601 8.121-2.601 3.47 0 6.157.801 8.063 2.404 1.905 1.602 2.858 3.881 2.858 6.837 0 1.291-.257 2.466-.77 3.524-.513 1.058-1.338 2.139-2.474 3.243l-2.683 2.497c-.762.732-1.291 1.482-1.587 2.252-.295.77-.459 1.746-.49 2.929h-6.674zm-.957 7.094c0-1.151.416-2.096 1.249-2.835.832-.74 1.87-1.109 3.115-1.109s2.283.37 3.115 1.109c.833.739 1.249 1.684 1.249 2.835s-.416 2.096-1.249 2.835c-.832.739-1.87 1.109-3.115 1.109s-2.283-.37-3.115-1.109c-.833-.739-1.249-1.684-1.249-2.835z\",\n fill: \"#000\",\n fillOpacity: \".87\"\n})), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M71.621 91.769c0-2.272.257-4.065.77-5.38.513-1.314 1.346-2.453 2.497-3.418 1.151-.964 2.026-1.847 2.625-2.648.6-.802.899-1.684.899-2.649 0-2.35-1.012-3.524-3.034-3.524-.933 0-1.688.343-2.263 1.027-.576.685-.88 1.61-.91 2.777h-7.888c.031-3.111 1.011-5.534 2.94-7.27 1.93-1.734 4.636-2.601 8.121-2.601 3.47 0 6.157.801 8.063 2.404 1.905 1.602 2.858 3.881 2.858 6.837 0 1.291-.257 2.466-.77 3.524-.513 1.058-1.338 2.139-2.474 3.243l-2.683 2.497c-.762.732-1.291 1.482-1.587 2.252-.295.77-.459 1.746-.49 2.929h-6.674zm-.957 7.094c0-1.151.416-2.096 1.249-2.835.832-.74 1.87-1.109 3.115-1.109s2.283.37 3.115 1.109c.833.739 1.249 1.684 1.249 2.835s-.416 2.096-1.249 2.835c-.832.739-1.87 1.109-3.115 1.109s-2.283-.37-3.115-1.109c-.833-.739-1.249-1.684-1.249-2.835z\",\n fill: \"#3C74B4\",\n fillOpacity: \".38\"\n})), React.createElement(\"defs\", null, React.createElement(\"linearGradient\", {\n id: \"nodata__paint0_linear\",\n x1: \"74\",\n y1: \"5.203\",\n x2: \"74\",\n y2: \"148\",\n gradientUnits: \"userSpaceOnUse\"\n}, React.createElement(\"stop\", {\n stopColor: \"#FAFAFA\",\n stopOpacity: \"0\"\n}), React.createElement(\"stop\", {\n offset: \"1\",\n stopColor: \"#F4F4F4\"\n})), React.createElement(\"linearGradient\", {\n id: \"nodata__paint1_linear\",\n x1: \"123.612\",\n y1: \"142.028\",\n x2: \"76.729\",\n y2: \"122.717\",\n gradientUnits: \"userSpaceOnUse\"\n}, React.createElement(\"stop\", {\n stopOpacity: \"0\"\n}), React.createElement(\"stop\", {\n offset: \"1\"\n})), React.createElement(\"linearGradient\", {\n id: \"nodata__paint2_linear\",\n x1: \"75.156\",\n y1: \"57.234\",\n x2: \"75.156\",\n y2: \"111.578\",\n gradientUnits: \"userSpaceOnUse\"\n}, React.createElement(\"stop\", {\n stopColor: \"#EEFBFF\"\n}), React.createElement(\"stop\", {\n offset: \"1\",\n stopColor: \"#0072CE\"\n})), React.createElement(\"filter\", {\n id: \"nodata__filter0_d\",\n x: \"36.469\",\n y: \"47.719\",\n width: \"97.962\",\n height: \"100.475\",\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, React.createElement(\"feFlood\", {\n floodOpacity: \"0\",\n result: \"BackgroundImageFix\"\n}), React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n}), React.createElement(\"feOffset\", {\n dy: \"2\"\n}), React.createElement(\"feGaussianBlur\", {\n stdDeviation: \"2\"\n}), React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow\",\n result: \"shape\"\n})))));","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n noDataContainer: {\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n icon: {\n height: '88px',\n width: '88px',\n marginBottom: '20px'\n }\n}));\n","import React from 'react';\nimport i18n from 'ui-i18n';\nimport Typography from '@mui/material/Typography';\nimport NoDataIcon from './icons/noData.svg';\nimport {useStyles} from './styles';\n\nconst DashboardNoData = () => {\n const styles = useStyles();\n return (\n <div className={styles.noDataContainer}>\n <NoDataIcon className={styles.icon} />\n <Typography>{i18n.text('No Data')}</Typography>\n </div>\n );\n};\n\nexport default DashboardNoData;\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => React.createElement(\"svg\", _extends({\n width: \"88\",\n height: \"88\",\n viewBox: \"0 0 88 88\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), React.createElement(\"mask\", {\n id: \"svg3217593551a\",\n style: {\n maskType: \"alpha\"\n },\n maskUnits: \"userSpaceOnUse\",\n x: \"0\",\n y: \"0\",\n width: \"88\",\n height: \"88\"\n}, React.createElement(\"path\", {\n d: \"M44 88c24.3 0 44-19.7 44-44S68.3 0 44 0 0 19.7 0 44s19.7 44 44 44z\",\n fill: \"#fff\"\n})), React.createElement(\"g\", {\n mask: \"url(#svg3217593551a)\"\n}, React.createElement(\"path\", {\n d: \"M44 88c24.3 0 44-19.7 44-44S68.3 0 44 0 0 19.7 0 44s19.7 44 44 44z\",\n fill: \"#CAC4D5\",\n fillOpacity: \".3\"\n}), React.createElement(\"path\", {\n opacity: \".3\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M19.987 6.73l49.449 6.072a.687.687 0 01.596.767l-7.845 63.888a.688.688 0 01-.766.6L7.214 71.4a.688.688 0 01-.599-.763l.408-3.326L19.987 6.73z\",\n fill: \"#fff\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M1.267 25.921l45.86-19.466a.687.687 0 01.9.366l25.15 59.251a.61.61 0 01-.386.84L22.34 82.765a.719.719 0 01-.887-.445l-20.185-56.4z\",\n fill: \"#fff\"\n}), React.createElement(\"path\", {\n d: \"M65.631 9.23H11.017a.688.688 0 00-.687.687v64.37c0 .38.307.687.687.687h54.614c.38 0 .688-.308.688-.687V9.917a.688.688 0 00-.688-.688z\",\n fill: \"#F9F9F9\"\n}), React.createElement(\"path\", {\n opacity: \".1\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.885 34.95l3.105-1.666 7.31-4.025 8.852 3.472 7.89-5.223 8.036-2.628 8.113 5.193 3.352-10.255v16.967H14.935l-.05-1.835z\",\n fill: \"#9C6CF0\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.885 32.331l3.105-3.761 7.31 4.31 8.852 1.656 7.89-2.205 8.036 1.827 8.113-12.643 3.352.742V36.36H14.935l-.05-4.029z\",\n fill: \"#FA82AA\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.885 34.946l3.105.432 7.31 1.01 8.852-5.117 7.89 3.675 8.036 1.839 8.113-1.839 3.352.811v1.028H14.935l-.05-1.839z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n opacity: \".1\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M61.543 35.288l-.05 1.497H14.885v-5.239l3.352-.276 8.114 4.697 8.036-.679 7.889.82 8.852-.616 7.31-1.601 3.105 1.397z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n d: \"M21.036 40.178h-5.09a.636.636 0 000 1.272h5.09a.636.636 0 100-1.272z\",\n fill: \"#ACACAC\"\n}), React.createElement(\"path\", {\n opacity: \".3\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M16.582 55.872c.703 0 1.273.57 1.273 1.273V69.02a1.272 1.272 0 11-2.545 0V57.144c0-.702.57-1.272 1.272-1.272zM25.914 55.872c.702 0 1.272.57 1.272 1.273V69.02a1.272 1.272 0 11-2.545 0V57.144c0-.702.57-1.272 1.273-1.272zM39.91 55.872c.703 0 1.273.57 1.273 1.273V69.02a1.272 1.272 0 11-2.545 0V57.144c0-.702.57-1.272 1.273-1.272zM21.248 55.872c.702 0 1.272.57 1.272 1.273V69.02a1.273 1.273 0 01-2.545 0V57.144c0-.702.57-1.272 1.273-1.272zM35.245 55.872c.703 0 1.273.57 1.273 1.273V69.02a1.272 1.272 0 11-2.545 0V57.144c0-.702.57-1.272 1.272-1.272zM30.58 55.872c.702 0 1.272.57 1.272 1.273V69.02a1.272 1.272 0 11-2.545 0V57.144c0-.702.57-1.272 1.272-1.272zM44.577 55.872c.702 0 1.272.57 1.272 1.273V69.02a1.273 1.273 0 01-2.545 0V57.144c0-.702.57-1.272 1.273-1.272z\",\n fill: \"#BDBDBD\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M16.582 65.628c.703 0 1.273.57 1.273 1.272v2.121a1.272 1.272 0 11-2.545 0v-2.12c0-.703.57-1.273 1.272-1.273zM25.914 62.658c.702 0 1.272.57 1.272 1.273v5.09a1.272 1.272 0 11-2.545 0v-5.09c0-.703.57-1.273 1.273-1.273zM39.91 65.628c.703 0 1.273.57 1.273 1.272v2.121a1.272 1.272 0 11-2.545 0v-2.12c0-.703.57-1.273 1.273-1.273zM21.248 66.477c.702 0 1.272.57 1.272 1.272v1.273a1.273 1.273 0 01-2.545 0v-1.273c0-.703.57-1.272 1.273-1.272z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n d: \"M36.518 65.628a1.272 1.272 0 00-2.545 0v3.393a1.272 1.272 0 102.545 0v-3.393zM31.852 62.234a1.272 1.272 0 10-2.545 0v6.787a1.272 1.272 0 102.545 0v-6.787z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M44.577 60.962c.702 0 1.272.57 1.272 1.272v6.787a1.273 1.273 0 01-2.545 0v-6.787c0-.702.57-1.272 1.273-1.272z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n d: \"M18.915 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#9C6CF0\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M34.185 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n opacity: \".3\",\n d: \"M49.454 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n opacity: \".8\",\n d: \"M26.55 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#FB6597\"\n}), React.createElement(\"path\", {\n d: \"M41.82 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n opacity: \".2\",\n d: \"M57.09 18.546a1.909 1.909 0 100-3.817 1.909 1.909 0 000 3.817z\",\n fill: \"#4DBEE9\"\n}), React.createElement(\"path\", {\n opacity: \".5\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M16.582 19.818h4.666a.424.424 0 110 .849h-4.666a.424.424 0 110-.849zM31.851 19.818h4.666a.424.424 0 010 .849h-4.666a.424.424 0 110-.849zM47.121 19.818h4.666a.424.424 0 010 .849h-4.666a.424.424 0 010-.849zM24.217 19.818h4.665a.424.424 0 010 .849h-4.665a.424.424 0 010-.849zM39.486 19.818h4.666a.424.424 0 110 .849h-4.666a.424.424 0 110-.849zM54.756 19.818h4.666a.424.424 0 110 .849h-4.666a.424.424 0 110-.849z\",\n fill: \"#ACACAC\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.946 43.571h5.09a.636.636 0 110 1.273h-5.09a.636.636 0 010-1.273zM15.946 46.116h5.09a.636.636 0 010 1.273h-5.09a.636.636 0 010-1.273zM15.946 48.661h5.09a.636.636 0 010 1.273h-5.09a.636.636 0 110-1.273zM23.58 43.571h5.09a.636.636 0 110 1.273h-5.09a.636.636 0 010-1.273zM23.58 46.116h5.09a.636.636 0 010 1.273h-5.09a.636.636 0 010-1.273zM23.58 48.661h5.09a.636.636 0 010 1.273h-5.09a.636.636 0 110-1.273zM49.454 43.571h11.028a.636.636 0 010 1.273H49.454a.636.636 0 010-1.273zM49.454 46.116h11.028a.636.636 0 010 1.273H49.454a.636.636 0 010-1.273zM49.454 48.661h11.028a.636.636 0 010 1.273H49.454a.636.636 0 110-1.273zM31.215 43.571h15.27a.636.636 0 110 1.273h-15.27a.636.636 0 010-1.273zM31.215 46.116h15.27a.636.636 0 010 1.273h-15.27a.636.636 0 010-1.273zM31.215 48.661h15.27a.636.636 0 010 1.273h-15.27a.636.636 0 010-1.273zM15.946 51.206h5.09a.636.636 0 110 1.272h-5.09a.636.636 0 110-1.272zM23.58 51.206h5.09a.636.636 0 110 1.272h-5.09a.636.636 0 110-1.272zM49.454 51.206h11.028a.636.636 0 010 1.272H49.454a.636.636 0 110-1.272zM31.215 51.206h15.27a.636.636 0 110 1.272h-15.27a.636.636 0 010-1.272z\",\n fill: \"#E9E9E9\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M49.878 55.872h5.09a.636.636 0 110 1.273h-5.09a.636.636 0 110-1.273z\",\n fill: \"#ACACAC\"\n}), React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M49.878 59.69h11.029a.636.636 0 010 1.272H49.878a.636.636 0 110-1.273zM49.878 62.234h11.029a.636.636 0 010 1.273H49.878a.636.636 0 010-1.273zM49.878 64.78h11.029a.636.636 0 010 1.272H49.878a.636.636 0 010-1.273z\",\n fill: \"#E9E9E9\"\n}), React.createElement(\"path\", {\n d: \"M54.968 67.324h-5.09a.636.636 0 000 1.273h5.09a.636.636 0 000-1.273z\",\n fill: \"#E9E9E9\"\n}), React.createElement(\"g\", {\n filter: \"url(#error__filter0_d)\"\n}, React.createElement(\"path\", {\n d: \"M57.406 74.25c9.493 0 17.188-7.695 17.188-17.188 0-9.492-7.695-17.187-17.188-17.187-9.492 0-17.187 7.695-17.187 17.188 0 9.492 7.695 17.187 17.187 17.187z\",\n fill: \"#000\"\n})), React.createElement(\"path\", {\n d: \"M57.406 74.25c9.493 0 17.188-7.695 17.188-17.188 0-9.492-7.695-17.187-17.188-17.187-9.492 0-17.187 7.695-17.187 17.188 0 9.492 7.695 17.187 17.187 17.187z\",\n fill: \"#F25252\"\n}), React.createElement(\"path\", {\n opacity: \".15\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M57.406 34.719c12.34 0 22.344 10.003 22.344 22.343S69.746 79.406 57.406 79.406c-12.34 0-22.343-10.003-22.343-22.344 0-12.34 10.003-22.343 22.343-22.343zm-.172 2.406c-10.916 0-19.765 8.85-19.765 19.766 0 10.916 8.85 19.765 19.765 19.765C68.151 76.656 77 67.806 77 56.891c0-10.917-8.85-19.766-19.766-19.766z\",\n fill: \"#F25252\"\n}), React.createElement(\"path\", {\n opacity: \".3\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M57.406 38.844c10.062 0 18.219 8.157 18.219 18.218 0 10.062-8.157 18.22-18.219 18.22-10.062 0-18.218-8.158-18.218-18.22 0-10.061 8.156-18.218 18.218-18.218zm0 2.043c-8.933 0-16.175 7.242-16.175 16.175 0 8.934 7.242 16.176 16.175 16.176 8.934 0 16.176-7.242 16.176-16.175 0-8.934-7.242-16.176-16.176-16.176z\",\n fill: \"#F25252\"\n}), React.createElement(\"path\", {\n opacity: \".05\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M57.406 26.469C74.303 26.469 88 40.166 88 57.062c0 16.897-13.697 30.594-30.594 30.594-16.896 0-30.593-13.697-30.593-30.594 0-16.896 13.697-30.593 30.593-30.593zm-.172 3.437c-14.903 0-26.984 12.082-26.984 26.985 0 14.903 12.081 26.984 26.984 26.984 14.903 0 26.985-12.081 26.985-26.984 0-14.903-12.082-26.985-26.985-26.985z\",\n fill: \"#F25252\"\n}), React.createElement(\"path\", {\n d: \"M57.406 71.844c8.164 0 14.782-6.618 14.782-14.781 0-8.164-6.618-14.782-14.782-14.782-8.163 0-14.781 6.618-14.781 14.782 0 8.163 6.618 14.78 14.781 14.78z\",\n fill: \"#FF6A6A\"\n}), React.createElement(\"path\", {\n opacity: \".05\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M58.298 46.448L75.18 63.331l-9.114 12.078h-2.029l-7.582-7.582 1.006-3.178.837-18.2z\",\n fill: \"url(#error__paint0_linear)\"\n}), React.createElement(\"g\", {\n filter: \"url(#error__filter1_d)\"\n}, React.createElement(\"path\", {\n d: \"M57.406 68.063a1.719 1.719 0 100-3.438 1.719 1.719 0 000 3.438z\",\n fill: \"#000\"\n})), React.createElement(\"path\", {\n d: \"M57.406 68.063a1.719 1.719 0 100-3.438 1.719 1.719 0 000 3.438z\",\n fill: \"#fff\"\n}), React.createElement(\"g\", {\n filter: \"url(#error__filter2_d)\"\n}, React.createElement(\"path\", {\n d: \"M57.406 46.063c.95 0 1.719.769 1.719 1.718v12.375a1.719 1.719 0 11-3.438 0V47.781c0-.949.77-1.718 1.72-1.718z\",\n fill: \"#000\"\n})), React.createElement(\"path\", {\n d: \"M57.406 46.063c.95 0 1.719.769 1.719 1.718v12.375a1.719 1.719 0 11-3.438 0V47.781c0-.949.77-1.718 1.72-1.718z\",\n fill: \"#fff\"\n})), React.createElement(\"defs\", null, React.createElement(\"filter\", {\n id: \"error__filter0_d\",\n x: \"36.219\",\n y: \"37.875\",\n width: \"42.375\",\n height: \"42.375\",\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, React.createElement(\"feFlood\", {\n floodOpacity: \"0\",\n result: \"BackgroundImageFix\"\n}), React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n}), React.createElement(\"feOffset\", {\n dy: \"2\"\n}), React.createElement(\"feGaussianBlur\", {\n stdDeviation: \"2\"\n}), React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow\",\n result: \"shape\"\n})), React.createElement(\"filter\", {\n id: \"error__filter1_d\",\n x: \"51.688\",\n y: \"62.625\",\n width: \"11.438\",\n height: \"11.438\",\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, React.createElement(\"feFlood\", {\n floodOpacity: \"0\",\n result: \"BackgroundImageFix\"\n}), React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n}), React.createElement(\"feOffset\", {\n dy: \"2\"\n}), React.createElement(\"feGaussianBlur\", {\n stdDeviation: \"2\"\n}), React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow\",\n result: \"shape\"\n})), React.createElement(\"filter\", {\n id: \"error__filter2_d\",\n x: \"51.688\",\n y: \"44.063\",\n width: \"11.438\",\n height: \"23.813\",\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n}, React.createElement(\"feFlood\", {\n floodOpacity: \"0\",\n result: \"BackgroundImageFix\"\n}), React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n}), React.createElement(\"feOffset\", {\n dy: \"2\"\n}), React.createElement(\"feGaussianBlur\", {\n stdDeviation: \"2\"\n}), React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow\"\n}), React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow\",\n result: \"shape\"\n})), React.createElement(\"linearGradient\", {\n id: \"error__paint0_linear\",\n x1: \"68.438\",\n y1: \"71.571\",\n x2: \"60.119\",\n y2: \"58.801\",\n gradientUnits: \"userSpaceOnUse\"\n}, React.createElement(\"stop\", {\n stopOpacity: \"0\"\n}), React.createElement(\"stop\", {\n offset: \"1\"\n})))));","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n errorContainer: {\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n errorIcon: {\n height: '88px',\n width: '88px',\n marginBottom: '20px',\n paddingTop: '36px'\n },\n refreshButton: {\n color: theme.palette.primary.main,\n marginTop: '10px'\n },\n refreshIcon: {\n width: '24px',\n height: '24px'\n }\n}));\n","import React from 'react';\nimport i18n from 'ui-i18n';\nimport Typography from '@mui/material/Typography';\nimport ReplayIcon from '@mui/icons-material/Replay';\nimport Button from '@mui/material/Button';\nimport ErrorIcon from './icons/error.svg';\nimport {useStyles} from './styles';\n\ntype DashboardErrorProps = {\n onRefresh?: () => void;\n message?: string;\n};\n\nconst DashboardError = ({onRefresh, message}: DashboardErrorProps) => {\n const styles = useStyles();\n return (\n <div className={styles.errorContainer}>\n <ErrorIcon className={styles.errorIcon} />\n <Typography>{message}</Typography>\n {onRefresh && (\n <Button\n className={styles.refreshButton}\n startIcon={<ReplayIcon color=\"primary\" className={styles.refreshIcon} />}\n onClick={onRefresh}\n >\n <Typography variant=\"button\">{i18n.text('Refresh')}</Typography>\n </Button>\n )}\n </div>\n );\n};\n\nexport default DashboardError;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewContent: {\n height: '100%',\n overflow: 'hidden',\n position: 'relative',\n padding: '0 16px 16px'\n },\n toolbarRoot: {\n padding: '16px',\n minHeight: '18px',\n lineHeight: '18px',\n marginBottom: '8px',\n '&:hover .viewDraggableHandle': {\n visibility: 'visible'\n }\n },\n title: {\n fontSize: '16px',\n lineHeight: '19px',\n fontWeight: 'normal',\n color: 'rgba(0, 0, 0, 0.87)',\n letterSpacing: '0.15px'\n },\n dragIcon: {\n position: 'absolute',\n left: '50%',\n top: '-3px',\n transform: 'translateX(-50%) rotate(90deg)',\n color: 'rgba(0, 0, 0, 0.3)',\n cursor: 'move',\n zIndex: 8,\n visibility: 'hidden'\n }\n}));\n","import React from 'react';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\nimport {BasicViewContent, ErrorBoundary, RequestStates} from '@reltio/components';\nimport {DashboardError, DashboardLinearLoader, DashboardNoData} from '../index';\nimport ReactResizeDetector from 'react-resize-detector';\nimport {useStyles} from './styles';\n\ntype ChildrenProps<T> = {data: T[]; width: number; height: number};\n\ntype Props<T> = {\n loadingState: RequestStates;\n children: (props: ChildrenProps<T>) => React.ReactNode;\n onRefresh: () => void;\n data: T[];\n className?: string;\n EmptyPlaceholder?: React.ReactNode;\n};\n\nconst LayoutItemContent = <T extends unknown>({\n loadingState,\n onRefresh,\n children,\n data,\n className,\n EmptyPlaceholder\n}: Props<T>) => {\n const styles = useStyles();\n\n const renderContent = ({width = 0, height = 0}: {width?: number; height?: number}) => {\n switch (loadingState) {\n case RequestStates.LOADED:\n if (!data || data.length === 0) {\n return EmptyPlaceholder || <DashboardNoData />;\n }\n return (\n <ErrorBoundary error={<DashboardError message={i18n.text('Something went wrong')} />}>\n {children({data, width, height})}\n </ErrorBoundary>\n );\n case RequestStates.LOADING:\n return <DashboardLinearLoader />;\n case RequestStates.ERROR:\n return <DashboardError message={i18n.text('Error Loading Data')} onRefresh={onRefresh} />;\n default:\n return <div />;\n }\n };\n\n return (\n <BasicViewContent className={classnames(styles.viewContent, className)} data-reltio-id=\"layout-item-content\">\n <ReactResizeDetector refreshMode=\"debounce\" refreshRate={100} handleWidth handleHeight>\n {renderContent}\n </ReactResizeDetector>\n </BasicViewContent>\n );\n};\n\nexport default LayoutItemContent;\n","import {ChartData} from '@reltio/components';\nimport {SavedSearchData} from '../types/SavedSearchData';\n\nexport const savedSearchDataToChartData = (data: SavedSearchData[]): ChartData[] => {\n return data.map(({uri, name, count}) => {\n return {\n value: count || 0,\n label: name || '',\n group: uri\n };\n });\n};\n\nexport const savedSearchDataToSearchState = ({uiState, uri}: SavedSearchData) => {\n if (uiState.version === '2.0') {\n return {...uiState, currentSavedSearchUri: uri};\n } else {\n return {...uiState.state, curSavedSearchUri: uri};\n }\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n activityLogFilter: {\n padding: '0 8px 0px 16px',\n borderBottom: '1px solid rgba(0,0,0,0.12)'\n },\n categorySelector: {\n whiteSpace: 'nowrap',\n textTransform: 'none',\n fontWeight: 'normal'\n },\n inboxContent: {\n padding: 0,\n borderTop: '1px solid rgba(0,0,0,0.12)'\n },\n content: {\n padding: 0\n }\n}));\n","import React, {memo, useCallback, useMemo, useState} from 'react';\nimport {useDispatch} from 'react-redux';\nimport {find, pipe, propEq} from 'ramda';\nimport i18n from 'ui-i18n';\nimport {BasicTablePagination, TableWithBars, useReloadFacet} from '@reltio/components';\nimport {ui} from '@reltio/mdm-module';\nimport {FilteredSavedSearchesFacetConfig} from '../../types/FilteredSavedSearchesFacetConfig';\nimport {useSavedSearchesRequest} from '../../hooks/useSavedSearchesRequest';\nimport {DEFAULT_ROWS_PER_PAGE, getRowsPerPageOptions} from './helpers';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport {savedSearchDataToChartData, savedSearchDataToSearchState} from '../../services/savedSearches';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n config: FilteredSavedSearchesFacetConfig;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\n\nconst FilteredSavedSearchesFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const {id, title, options, max = DEFAULT_ROWS_PER_PAGE} = config;\n const styles = useStyles();\n\n const [page, setPage] = useState(0);\n const [rowsPerPage, setRowsPerPage] = useState(max);\n const {data, state, reload, total} = useSavedSearchesRequest({\n options,\n max: rowsPerPage,\n offset: rowsPerPage * page\n });\n const chartData = useMemo(() => savedSearchDataToChartData(data), [data]);\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(max), [max]);\n\n const dispatch = useDispatch();\n const onSSClick = useCallback(\n (uri: string) => {\n pipe(find(propEq('uri', uri)), savedSearchDataToSearchState, ui.actions.openSearch, dispatch)(data);\n },\n [dispatch, data]\n );\n\n useReloadFacet({state, reload});\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isFullscreen={isFullscreen}\n isUpdated={isUpdated}\n onRefresh={reload}\n onRemove={onRemove}\n />\n <LayoutItemContent loadingState={state} onRefresh={reload} data={chartData} className={styles.content}>\n {({data, width, height}) => (\n <TableWithBars\n width={width}\n height={height}\n data={data}\n options={{\n headers: [i18n.text('Name')],\n showValues: options?.countResults\n }}\n onItemClick={onSSClick}\n />\n )}\n </LayoutItemContent>\n {!!total && (\n <BasicTablePagination\n page={page}\n count={total}\n rowsPerPage={rowsPerPage}\n onChangePage={setPage}\n onChangeRowsPerPage={setRowsPerPage}\n rowsPerPageOptions={rowsPerPageOptions}\n />\n )}\n </LayoutItemView>\n );\n};\n\nexport default memo(FilteredSavedSearchesFacet);\n","import {\n addGlobalFilterToQuery,\n buildFilterQueryString,\n DashboardConfigFilter,\n FilterOptions,\n findAttributeTypeByUri,\n getSpecialAttrTypeByFieldName,\n isDateType,\n isEntityTypeUri,\n mapFilterValue,\n Metadata,\n parseTimestamp,\n SearchFilter,\n searchUriToAttrUri,\n wrapInArray\n} from '@reltio/mdm-sdk';\nimport {assoc, curry, evolve, includes, map, pipe, prop, when, __} from 'ramda';\n\nexport const configFilterToSearchFilter = when(\n pipe(prop('filter'), includes(__, [FilterOptions.IN_RANGE, FilterOptions.HAS_ALL])),\n evolve({values: wrapInArray})\n);\n\nexport const buildQuery = (\n filters: DashboardConfigFilter[],\n globalFilter?: string,\n searchByOv?: boolean,\n activityFilter?: string\n): string => {\n const query = pipe(\n map(configFilterToSearchFilter),\n buildFilterQueryString(),\n addGlobalFilterToQuery(globalFilter)\n )(filters);\n const result = query ? [`filter=${query}`] : [];\n if (searchByOv) {\n result.push('options=searchByOv');\n }\n if (activityFilter) {\n result.push(`activeness=${activityFilter}`);\n }\n return result.join('&');\n};\n\nexport const createNotEqualFilter = curry((fieldName: string, value: string) => ({\n filter: FilterOptions.NOT_EQUALS,\n values: [value],\n fieldName\n}));\n\nexport const convertSearchFilterToDashboardConfigFilter = (searchFilter: SearchFilter): DashboardConfigFilter => ({\n filter: searchFilter?.filter ?? FilterOptions.EQUALS,\n values: (searchFilter?.values ?? []) as string[],\n fieldName: searchFilter?.fieldName ?? ''\n});\nexport const createEntityTypeFilter = (entityTypeUri: string) => ({\n filter: FilterOptions.EQUALS,\n fieldName: 'type',\n values: [entityTypeUri]\n});\n\nexport const createFacetItemFilter = curry((fieldName: string, group: string) => ({\n filter: FilterOptions.EQUALS,\n values: [group],\n fieldName\n}));\n\nexport const convertFilterToFacetState = curry(\n (metadata: Metadata, entityType: string, filter: DashboardConfigFilter) => {\n const {fieldName} = filter;\n const attrType =\n getSpecialAttrTypeByFieldName(fieldName) ||\n findAttributeTypeByUri(metadata, searchUriToAttrUri(fieldName, entityType));\n\n if (!attrType) {\n return null;\n }\n\n return pipe(\n configFilterToSearchFilter,\n when(() => isEntityTypeUri(attrType.uri), assoc('entityType', entityType)),\n when(() => isDateType(attrType.type), evolve({values: map(mapFilterValue(parseTimestamp))}))\n )(filter);\n }\n);\n\nexport const isSomeEntityTypeFilter = ({filter, fieldName}: DashboardConfigFilter) =>\n filter === FilterOptions.EQUALS && fieldName === 'type';\n\nexport const isEntityTypeFilter = ({filter, fieldName, values}: DashboardConfigFilter, entityTypeUri: string) =>\n filter === FilterOptions.EQUALS && fieldName === 'type' && values?.[0] === entityTypeUri;\n","import {\n AttributeType,\n attributeUriToSearchUri,\n buildLookupRecord,\n DashboardConfigFilter,\n formatDataTypeValue,\n getAttrDataTypeDefinition,\n getAttrTypeLookupCode,\n getEntityUriFromAttributeUri,\n getFacets,\n getRoleLabel,\n getTotals,\n isDateType,\n isEntityTypeUri,\n isLookupAttrType,\n isRoleAttrType,\n Metadata,\n parseTimestamp,\n resolveLookupsList\n} from '@reltio/mdm-sdk';\nimport {\n always,\n ascend,\n concat,\n curry,\n defaultTo,\n descend,\n evolve,\n ifElse,\n map,\n pipe,\n prop,\n propEq,\n reject,\n sortWith,\n when,\n identity\n} from 'ramda';\nimport {\n buildQuery,\n configFilterToSearchFilter,\n convertFilterToFacetState,\n createEntityTypeFilter,\n createFacetItemFilter,\n createNotEqualFilter,\n isEntityTypeFilter,\n isSomeEntityTypeFilter\n} from './filters';\nimport {ChartData} from '@reltio/components';\nimport i18n from 'ui-i18n';\n\ntype FacetsRequest = {\n attribute: string;\n filters: DashboardConfigFilter[];\n globalFilter?: string;\n searchByOv?: boolean;\n activityFilter?: string;\n pageSize?: number;\n orderType?: string;\n};\n\nexport const requestFacets = ({\n attribute,\n filters,\n globalFilter,\n searchByOv,\n activityFilter,\n pageSize,\n orderType\n}: FacetsRequest): Promise<ChartData[]> => {\n const query = buildQuery(filters, globalFilter, searchByOv, activityFilter);\n const body = [\n {\n fieldName: attribute,\n pageNo: 1,\n orderType,\n pageSize\n }\n ];\n return getFacets({query, body}).then((response) => {\n const getFacetData = pipe(\n prop(attribute),\n defaultTo({}),\n Object.entries,\n map(([key, value]) => ({label: key, group: key, value})),\n sortWith([descend(prop('value')), ascend(prop('label'))])\n );\n return getFacetData(response);\n });\n};\n\nexport const resolveLookups = curry((lookupCode: string, data: ChartData[]) => {\n const lookupsToResolve = data.map(({label}) => ({codeValue: label, type: lookupCode}));\n return resolveLookupsList(lookupsToResolve).then((response) => {\n const codes = response.flatMap(buildLookupRecord(lookupCode)) as {lookupCode: string; value: string}[];\n return data.map((item) => {\n const code = codes.find(({lookupCode}) => lookupCode === item.label);\n return code ? {...item, label: code.value} : item;\n });\n });\n});\n\nconst buildFacetOthersFilters = curry((fieldName: string, data: ChartData[]) =>\n data.map(pipe(prop('group'), createNotEqualFilter(fieldName)))\n);\n\nconst OTHER_FACET_GROUP = 'Other';\n\nexport const requestOtherValues = curry(\n ({attribute, filters, globalFilter, searchByOv, activityFilter}: FacetsRequest, data: ChartData[]) => {\n const otherFilters = pipe(\n buildFacetOthersFilters(attribute),\n concat(filters),\n map(configFilterToSearchFilter)\n )(data);\n const searchOptions = searchByOv && 'searchByOv';\n return getTotals(otherFilters, {globalFilter, activityFilter, searchOptions}).then(({total}) => {\n return total > 0\n ? data.concat([{label: i18n.text('Other'), group: OTHER_FACET_GROUP, value: total}])\n : data;\n });\n }\n);\n\nconst resolveRoleLabel = (metadata: Metadata, roleName: string) =>\n getRoleLabel(metadata, 'configuration/roles/' + roleName);\n\nexport const localizeFacetValues = map((facet: ChartData) => ({\n ...facet,\n localizedValue: i18n.number(facet.value)\n}));\n\nexport const resolveFacetLabels = (metadata: Metadata, attrType: AttributeType) =>\n pipe(\n when(() => isLookupAttrType(attrType), resolveLookups(getAttrTypeLookupCode(attrType))),\n when(\n () => isRoleAttrType(attrType),\n map((facet) => ({...facet, label: resolveRoleLabel(metadata, facet.group)}))\n ),\n when(\n () => isDateType(attrType.type),\n map(\n evolve({\n label: pipe(\n parseTimestamp,\n formatDataTypeValue({dataTypeDefinition: getAttrDataTypeDefinition(attrType)})\n )\n })\n )\n )\n );\n\nexport const getFacetFieldName = when(isEntityTypeUri, attributeUriToSearchUri);\nconst getFacetEntityTypeUri = ifElse(isEntityTypeUri, getEntityUriFromAttributeUri, always(undefined));\n\nexport const getFiltersForFacet = (\n attributeUri: string,\n filters: DashboardConfigFilter[] = []\n): DashboardConfigFilter[] => {\n const entityTypeUri = getFacetEntityTypeUri(attributeUri);\n const hasEntityTypeFilter = filters.some((filter) => isEntityTypeFilter(filter, entityTypeUri));\n return entityTypeUri && !hasEntityTypeFilter ? [createEntityTypeFilter(entityTypeUri), ...filters] : filters;\n};\n\nexport const getFiltersForFacetItem = curry((attributeUri: string, data: ChartData[], group: string) => {\n const fieldName = getFacetFieldName(attributeUri);\n return group === OTHER_FACET_GROUP\n ? pipe(reject(propEq('group', OTHER_FACET_GROUP)), buildFacetOthersFilters(fieldName))(data)\n : [createFacetItemFilter(fieldName, group)];\n});\n\nexport const facetFiltersToSearchState = curry(\n (metadata: Metadata, attributeUri: string, filters: DashboardConfigFilter[]) => {\n const entityType = getFacetEntityTypeUri(attributeUri) || filters.find(isSomeEntityTypeFilter)?.values?.[0];\n return {\n facets: filters.map(convertFilterToFacetState(metadata, entityType)).filter(identity)\n };\n }\n);\n","import React, {memo, useContext, useMemo} from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {ChartsFactory, SearchFiltersContext, useReloadFacet} from '@reltio/components';\nimport {useFacetRequest} from '../../hooks/useFacetRequest';\nimport {ChartTypes, DashboardFacetConfig, SearchFilter} from '@reltio/mdm-sdk';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {concat, pipe} from 'ramda';\nimport {facetFiltersToSearchState, getFiltersForFacet, getFiltersForFacetItem} from '../../services/facets';\nimport {convertSearchFilterToDashboardConfigFilter} from '../../services/filters';\n\nconst MIN_CHART_WIDTH = 80;\n\ntype DashboardFacetProps = {\n config: DashboardFacetConfig;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\n\nconst DashboardFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: DashboardFacetProps) => {\n const {id, title, filters, attributeUri, count, orderType, chartType, showOthers, ...options} = config;\n const pageSize = chartType === ChartTypes.MAP ? 100 : 8;\n const {data, state, reload} = useFacetRequest({\n filters,\n attributeUri,\n pageSize: count || pageSize,\n orderType,\n options: {showOthers}\n });\n\n useReloadFacet({state, reload});\n\n const dispatch = useDispatch();\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n\n const searchFilters = useContext<SearchFilter[]>(SearchFiltersContext);\n const allFilters = useMemo(\n () => searchFilters.map(convertSearchFilterToDashboardConfigFilter).concat(filters || []),\n [searchFilters, filters]\n );\n\n const onItemClick = pipe(\n getFiltersForFacetItem(attributeUri, data),\n concat(getFiltersForFacet(attributeUri, allFilters)),\n facetFiltersToSearchState(metadata, attributeUri),\n ui.actions.openSearch,\n dispatch\n );\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRefresh={reload}\n onRemove={onRemove}\n />\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data}>\n {({data, width = 0, height = 0}) => {\n return ChartsFactory.build(chartType, {\n data,\n width: Math.max(width, MIN_CHART_WIDTH),\n height,\n options,\n onItemClick\n });\n }}\n </LayoutItemContent>\n </LayoutItemView>\n );\n};\n\nexport default memo(DashboardFacet);\n","import {useCallback, useEffect, useState, useContext, useMemo} from 'react';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\nimport {\n DashboardConfigFilter,\n findAttributeTypeByUri,\n getSpecialAttrTypeByFieldName,\n SearchFilter,\n GlobalSearchRequestOptions\n} from '@reltio/mdm-sdk';\nimport {always, andThen, otherwise, pipe, when, unless} from 'ramda';\nimport {\n getFacetFieldName,\n getFiltersForFacet,\n requestFacets,\n requestOtherValues,\n resolveFacetLabels,\n localizeFacetValues\n} from '../services/facets';\nimport {ChartData, RequestStates, SearchFiltersContext} from '@reltio/components';\nimport {convertSearchFilterToDashboardConfigFilter} from '../services/filters';\n\ntype Props = {\n filters: DashboardConfigFilter[];\n attributeUri: string;\n pageSize: number;\n orderType?: string;\n options?: {\n showOthers: boolean;\n };\n};\n\nexport const useFacetRequest = ({\n filters: facetFilters,\n attributeUri,\n pageSize,\n orderType = 'reversedCount',\n options\n}: Props) => {\n const [data, setData] = useState<ChartData[]>([]);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const searchFilters = useContext<SearchFilter[]>(SearchFiltersContext);\n const facetAndSpecialFilters = useMemo(\n () => searchFilters.map(convertSearchFilterToDashboardConfigFilter).concat(facetFilters || []),\n [searchFilters, facetFilters]\n );\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n const {globalFilter, activityFilter}: GlobalSearchRequestOptions = useSelector(\n mdmModule.selectors.getGlobalSearchRequestOptions\n );\n const attributePresentations = useSelector(mdmModule.selectors.getAttributePresentations);\n const hasAttrPresentation = !!attributePresentations?.[attributeUri];\n const searchByOv: boolean = useSelector(mdmModule.selectors.getShowSearchByOv);\n const showOthers: boolean = options?.showOthers;\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n setData([]);\n };\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n const filters = getFiltersForFacet(attributeUri, facetAndSpecialFilters);\n const fieldName = getFacetFieldName(attributeUri);\n const attrType = getSpecialAttrTypeByFieldName(fieldName) || findAttributeTypeByUri(metadata, attributeUri);\n const onRequestFinished = (data: ChartData[]) => {\n setRequestState(RequestStates.LOADED);\n setData(data);\n };\n\n if (!attrType) {\n onError('Configuration is incorrect');\n return;\n }\n\n const getData = pipe(\n requestFacets,\n andThen(resolveFacetLabels(metadata, attrType)),\n andThen(unless(always(hasAttrPresentation), localizeFacetValues)),\n andThen(\n when(\n always(showOthers),\n requestOtherValues({attribute: fieldName, filters, globalFilter, searchByOv, activityFilter})\n )\n ),\n andThen(onRequestFinished),\n otherwise(onError)\n );\n\n getData({attribute: fieldName, filters, globalFilter, searchByOv, activityFilter, pageSize, orderType});\n }, [\n setRequestState,\n attributeUri,\n metadata,\n showOthers,\n facetAndSpecialFilters,\n globalFilter,\n searchByOv,\n activityFilter,\n pageSize,\n orderType,\n hasAttrPresentation\n ]);\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, reload: refreshAction};\n};\n","import {makeStyles} from '@mui/styles';\n\nconst textOverflow = {\n content: '\"\"',\n position: 'absolute',\n right: 0,\n top: 0,\n width: '40px',\n height: '100%',\n background: 'linear-gradient(to right, rgba(255, 255, 255, 0.2), #fff 100%)',\n pointerEvents: 'none'\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n '&>div': {\n padding: '0 16px'\n }\n },\n headLabel: {\n color: theme.palette.text.primary,\n fontSize: '12px',\n fontWeight: 500,\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n '&:after': textOverflow\n },\n entityLabel: {\n color: theme.palette.primary.main,\n textDecoration: 'none',\n fontSize: '13px',\n fontWeight: 500,\n lineHeight: '15px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n padding: '0 16px',\n '&:after': textOverflow\n }\n}));\n","import React from 'react';\nimport classnames from 'classnames';\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport {ExpandedValueTooltip} from '@reltio/components';\nimport {useStyles} from './styles';\n\ntype HeadCellRendererProps = {\n className?: string;\n headCellData: {\n label: string;\n };\n};\n\nconst HeadCellRenderer = ({className, headCellData, ...otherProps}: HeadCellRendererProps) => {\n const styles = useStyles();\n\n return (\n <div className={classnames(styles.headCell, className)}>\n <DefaultHeadCellRenderer\n {...otherProps}\n headCellData={{\n ...headCellData,\n label: (\n <ExpandedValueTooltip value={headCellData.label}>\n <div className={styles.headLabel}>{headCellData.label}</div>\n </ExpandedValueTooltip>\n )\n }}\n />\n </div>\n );\n};\n\nexport default HeadCellRenderer;\n","import React from 'react';\nimport {EntityUriLink, ExpandedValueTooltip} from '@reltio/components';\nimport {EntityData} from '../../../types/EntityData';\nimport {getLabel, getEntityUriForLink} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\n\ntype Props = {\n value: string;\n rowValue: EntityData;\n};\n\nconst EntityLabelRenderer = ({value, rowValue: entity}: Props) => {\n const styles = useStyles();\n const label = getLabel(value);\n return (\n <ExpandedValueTooltip value={label}>\n <EntityUriLink value={getEntityUriForLink(entity)} className={styles.entityLabel}>\n {label}\n </EntityUriLink>\n </ExpandedValueTooltip>\n );\n};\n\nexport default EntityLabelRenderer;\n","import {makeStyles} from '@mui/styles';\n\ntype Dimensions = {\n width: number | string;\n height: number | string;\n};\n\nexport const useStyles = makeStyles({\n tableContainer: ({width, height}: Dimensions) => ({\n height: height,\n width: width,\n display: 'flex',\n flexDirection: 'column'\n }),\n cellBorder: {\n borderLeft: 'none',\n borderRight: 'none'\n }\n});\n","import React from 'react';\nimport {BasicTable} from '@reltio/components';\nimport HeadCellRenderer from './cell-renderers/HeadCellRenderer';\nimport EntityLabelRenderer from './cell-renderers/EntityLabelRenderer';\nimport {EntityData} from '../../types/EntityData';\nimport i18n from 'ui-i18n';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n width: number;\n height: number;\n basicTableRef?: React.MutableRefObject<any> | null;\n data: EntityData[];\n};\n\nconst EntityTable = ({height, width, basicTableRef, data}: Props) => {\n const styles = useStyles({width, height});\n const headData = [\n {\n id: 'label',\n label: i18n.text('Entity'),\n resizable: false,\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: EntityLabelRenderer,\n initialWidth: width\n }\n ];\n const tableClasses = {\n cellBorder: styles.cellBorder\n };\n\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={headData}\n rowsData={data}\n headRowHeight={48}\n getRowCellHeight={null}\n classes={tableClasses}\n defaultColumnWidth={100}\n defaultColumnMinWidth={100}\n ref={basicTableRef}\n />\n </div>\n );\n};\n\nexport default EntityTable;\n","import React, {memo, useMemo, useState} from 'react';\nimport {BasicTablePagination, useReloadFacet} from '@reltio/components';\nimport {FilteredEntitiesFacetConfig} from '../../types/FilteredEntitiesFacetConfig';\nimport {useFilteredEntitiesRequest} from '../../hooks/useFilteredEntitiesRequest';\nimport {getRowsPerPageOptions, DEFAULT_ROWS_PER_PAGE} from './helpers';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport EntityTable from '../../components/EntityTable/EntityTable';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n config: FilteredEntitiesFacetConfig;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n onToggleFullscreen: (id: string) => void;\n};\n\nconst FilteredEntitiesViewFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const styles = useStyles();\n const {id, title, filters, max = DEFAULT_ROWS_PER_PAGE} = config;\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(max), [max]);\n const [rowsPerPage, setRowsPerPage] = useState(max);\n const [page, setPage] = useState(0);\n\n const {data, state, reload, total} = useFilteredEntitiesRequest({\n filters,\n max: rowsPerPage,\n offset: rowsPerPage * page\n });\n\n useReloadFacet({state, reload});\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRefresh={reload}\n onRemove={onRemove}\n />\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data} className={styles.content}>\n {({data, width, height}) => <EntityTable height={height} width={width} data={data} />}\n </LayoutItemContent>\n {!!total && (\n <BasicTablePagination\n page={page}\n count={total}\n rowsPerPage={rowsPerPage}\n onChangePage={setPage}\n onChangeRowsPerPage={setRowsPerPage}\n rowsPerPageOptions={rowsPerPageOptions}\n />\n )}\n </LayoutItemView>\n );\n};\n\nexport default memo(FilteredEntitiesViewFacet);\n","import {useCallback, useContext, useEffect, useMemo, useState} from 'react';\nimport {RequestStates, SearchFiltersContext} from '@reltio/components';\nimport {DashboardConfigFilter, getFilteredEntities, getTotals, SearchFilter} from '@reltio/mdm-sdk';\nimport {EntityData} from '../types/EntityData';\nimport {convertSearchFilterToDashboardConfigFilter} from '../services/filters';\n\ntype Props = {\n filters: DashboardConfigFilter[];\n offset: number;\n max: number;\n};\n\nexport const useFilteredEntitiesRequest = ({filters, max, offset}: Props) => {\n const [data, setData] = useState<EntityData[]>([]);\n const [total, setTotal] = useState<number>(0);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n\n const searchFilters = useContext<SearchFilter[]>(SearchFiltersContext);\n const allFilters = useMemo(\n () => searchFilters.map(convertSearchFilterToDashboardConfigFilter).concat(filters || []),\n [searchFilters, filters]\n );\n\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n };\n\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n\n Promise.all([getFilteredEntities(allFilters, {max, offset}), getTotals(allFilters, {max, offset})])\n .then((results) => {\n const [entities, {total}] = results;\n setData(entities || []);\n setTotal(total);\n setRequestState(RequestStates.LOADED);\n })\n .catch(onError);\n }, [allFilters, max, offset]);\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, reload: refreshAction, total};\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n button: {\n whiteSpace: 'nowrap',\n textTransform: 'none',\n fontWeight: 'normal'\n }\n});\n","import React, {forwardRef} from 'react';\nimport {DatePeriod} from '@reltio/mdm-sdk';\nimport Button from '@mui/material/Button';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport {withDateRangeSelector} from '@reltio/components';\n\nimport {useStyles} from './styles';\n\ntype DashboardDateRangeSelectorProps = {\n values?: DatePeriod | string;\n editorLabel?: string;\n editorPlaceholder?: string;\n isPickingDate?: boolean;\n isMenuOpen?: boolean;\n onMenuToggle?: () => void;\n};\n\nconst DashboardDateRangeSelector = forwardRef(\n ({editorLabel, onMenuToggle}: DashboardDateRangeSelectorProps, ref: React.Ref<HTMLButtonElement>) => {\n const styles = useStyles();\n return (\n <Button\n ref={ref}\n onClick={onMenuToggle}\n size=\"small\"\n className={styles.button}\n endIcon={<ArrowDropDownIcon />}\n >\n {editorLabel}\n </Button>\n );\n }\n);\n\nDashboardDateRangeSelector.displayName = 'DashboardDateRangeSelector';\n\nexport default withDateRangeSelector(DashboardDateRangeSelector);\n","export enum PeriodStep {\n HOUR = 'hour',\n DAY = 'day'\n}\n","import moment from 'moment';\nimport {defaultTo, map, pipe} from 'ramda';\nimport {getDateRangeByValue, getDateRangeByDatePeriod, DatePeriod, DateRangeValue} from '@reltio/mdm-sdk';\nimport {PeriodStep} from '../types/PeriodStep';\n\nconst getStepForTimestampInterval = ([startTime, endTime]) => {\n return endTime - startTime > +moment.duration(1, 'day') ? PeriodStep.DAY : PeriodStep.HOUR;\n};\n\nconst getStepForPeriod = pipe(\n (period) => getDateRangeByDatePeriod(period, getDashboardDateRangeByValue),\n getStepForTimestampInterval\n);\n\ntype GetDateRangeByValue = (value: DatePeriod | [number, number]) => [number, number];\nexport const getDashboardDateRangeByValue: GetDateRangeByValue = (value) => {\n const currentDate = moment();\n\n switch (value) {\n case DateRangeValue.LAST_WEEK:\n return [moment(currentDate).subtract(6, 'days').valueOf(), currentDate.valueOf()];\n default:\n return getDateRangeByValue(value);\n }\n};\n\nconst getValuesDateRange = pipe(\n getDashboardDateRangeByValue,\n defaultTo([]),\n map((value) => value && new Date(value))\n);\n\nexport {getStepForPeriod, getValuesDateRange};\n","import {\n append,\n chain,\n curry,\n evolve,\n groupBy,\n last,\n map,\n pipe,\n pluck,\n prepend,\n prop,\n propEq,\n propOr,\n sum,\n toPairs\n} from 'ramda';\nimport moment from 'moment';\nimport i18n from 'ui-i18n';\nimport {getEntitiesStats, getDateRangeByDatePeriod, DatePeriod} from '@reltio/mdm-sdk';\nimport {PeriodStep} from '../types/PeriodStep';\nimport {TimestampedStatsEventData, StatsData, StatsEventData} from '../types/StatsData';\nimport {getDashboardDateRangeByValue} from '../services/period';\nimport {AxisDomain} from 'recharts';\n\nconst StatsEvents = [\n {\n id: 'created',\n types: ['CREATED'],\n get label() {\n return i18n.text('New');\n },\n color: '#4BAFFF'\n },\n {\n id: 'updated',\n types: ['UPDATED'],\n get label() {\n return i18n.text('Updated');\n },\n color: '#0072CE'\n },\n {\n id: 'deleted',\n types: ['DELETED'],\n get label() {\n return i18n.text('Deleted');\n },\n color: '#F085F2'\n },\n {\n id: 'matched',\n types: ['POTENTIAL_MATCHES_FOUND'],\n get label() {\n return i18n.text('Matched');\n },\n color: '#C4CE00'\n },\n {\n id: 'autoMerged',\n types: ['MERGED', 'MERGED_ON_THE_FLY'],\n get label() {\n return i18n.text('Auto-merged');\n },\n color: '#CE5C00'\n },\n {\n id: 'mergedManually',\n types: ['MERGED_MANUALLY'],\n get label() {\n return i18n.text('Manually merged');\n },\n color: '#9E7ED3'\n },\n {\n id: 'unmerged',\n types: ['SPLITTED'],\n get label() {\n return i18n.text('Unmerged');\n },\n color: '#40CFBB'\n },\n {\n id: 'notMatch',\n types: ['NOT_MATCHES_SET'],\n get label() {\n return i18n.text('Not a match');\n },\n color: '#F97061'\n }\n];\n\nconst getStatsEventById = (event: string) => StatsEvents.find(propEq('id', event));\nconst getStatsEventName = pipe(getStatsEventById, propOr('', 'label'));\nconst getStatsEventColor = pipe(getStatsEventById, prop('color'));\n\nconst requestStats = (period: DatePeriod): Promise<StatsData[]> => {\n const [startTime, endTime] = getDateRangeByDatePeriod(period, getDashboardDateRangeByValue);\n const getStats = ({facet, types}) =>\n getEntitiesStats({facet, startTime, endTime, types}).then(({facets = {}, total = 0}) => ({\n total,\n data: facets[facet]\n }));\n\n const getEvents = () => {\n const allTypes = chain(prop('types'), StatsEvents);\n const processStats = pipe(propOr([], 'data'), pluck('term'));\n return getStats({facet: 'type', types: allTypes}).then((stats) => processStats(stats));\n };\n\n const getEventsData = (presentTypes) => {\n const periodFrame = pipe(\n map(\n evolve({\n term: (term) => moment.utc(term).valueOf()\n })\n ),\n prepend({\n term: startTime,\n count: 0\n }),\n append({\n term: endTime,\n count: 0\n })\n );\n const isEventPresent = (types) => types.some((type) => presentTypes.includes(type));\n\n return Promise.all(\n StatsEvents.map(({types, id}) =>\n (isEventPresent(types) ? getStats({facet: 'hour', types}) : Promise.resolve({total: 0, data: []})).then(\n ({total, data}) => ({total, data: periodFrame(data), event: id})\n )\n )\n );\n };\n\n return getEvents().then((events) => (events.length > 0 ? getEventsData(events) : []));\n};\n\nconst groupEventsData = curry((step: PeriodStep, eventData: StatsEventData[]): TimestampedStatsEventData[] => {\n return pipe(\n groupBy(({term}) => moment(term).startOf(step)),\n toPairs,\n map(([date, data]) => ({\n term: moment(date).valueOf(),\n count: sum(pluck('count', data))\n }))\n )(eventData);\n});\n\nconst interpolateEventsData = curry(\n (step: PeriodStep, eventData: TimestampedStatsEventData[]): TimestampedStatsEventData[] => {\n const [head, ...other] = eventData;\n return other.reduce(\n (acc, item) => {\n const lastTerm = last(acc).term;\n let nextTerm = moment(lastTerm).add(1, step).valueOf();\n const interpolatedItems = [];\n while (nextTerm < item.term) {\n interpolatedItems.push({\n term: nextTerm,\n count: 0\n });\n nextTerm = moment(nextTerm).add(1, step).valueOf();\n }\n return acc.concat(interpolatedItems, item);\n },\n [head]\n );\n }\n);\n\nconst calibrateStatsData = curry((step: PeriodStep, statsData: StatsData[]) => {\n return statsData.map(\n evolve({\n data: pipe(groupEventsData(step), interpolateEventsData(step))\n })\n );\n});\n\nconst getChartDomain = (chartData: StatsData[], tickCount: number): [AxisDomain, AxisDomain] => {\n const counts = chain(pipe(prop('data'), pluck('count')))(chartData);\n const min = Math.min(...counts);\n const max = Math.max(...counts);\n const difference = Math.abs(max - min);\n\n return difference < tickCount ? [0, tickCount - 1] : [0, 'auto'];\n};\n\nexport {StatsEvents, requestStats, getStatsEventName, getStatsEventColor, calibrateStatsData, getChartDomain};\n","import React, {SVGProps} from 'react';\nimport {PeriodStep} from '../../../types/PeriodStep';\nimport {always, cond, equals} from 'ramda';\nimport i18n from 'ui-i18n';\n\nconst getStepValueFormat = cond([\n [equals(PeriodStep.HOUR), always('LT')],\n [equals(PeriodStep.DAY), always('MMM D')]\n]);\n\ntype AxisTickProps = SVGProps<SVGElement> & {\n step: PeriodStep;\n payload?: {\n value: string;\n };\n};\n\nconst CustomAxisTick = ({x, y, payload, step}: AxisTickProps) => {\n return (\n <g transform={`translate(${x},${y})`}>\n <text x={0} y={0} dy={16} textAnchor=\"middle\" fill=\"#666\">\n {i18n.date(payload?.value, getStepValueFormat(step))}\n </text>\n </g>\n );\n};\n\nexport default CustomAxisTick;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n tooltipWrapper: {\n borderRadius: '4px',\n background: 'rgba(0, 0, 0, 0.54)',\n padding: '6px 8px 7px 8px',\n color: '#FFFFFF',\n '& p': {\n fontSize: '12px',\n lineHeight: '18px',\n padding: 0,\n margin: 0\n }\n },\n tooltipTitle: {\n fontWeight: 500\n },\n tooltipItemColor: {\n width: 8,\n height: 8,\n marginRight: 10,\n display: 'inline-block'\n },\n legend: {\n display: 'flex',\n flexWrap: 'wrap',\n marginLeft: '20px',\n marginTop: '10px'\n },\n legendItem: {\n display: 'flex',\n alignItems: 'baseline',\n '&:not(:last-child)': {\n marginRight: 10\n },\n width: '140px',\n marginBottom: '5px',\n fontSize: '13px',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n legendItemColor: {\n width: 12,\n height: 12,\n marginRight: 10,\n flexShrink: 0,\n boxSizing: 'border-box'\n },\n legendItemValue: {\n color: 'rgba(0, 0, 0, 0.87)',\n marginLeft: '10px'\n }\n});\n","import React from 'react';\nimport {TooltipProps} from 'recharts';\nimport {PeriodStep} from '../../../types/PeriodStep';\nimport i18n from 'ui-i18n';\nimport {always, cond, equals} from 'ramda';\nimport {getStatsEventName} from '../../../services/stats';\n\nimport {useStyles} from './styles';\n\ntype Props = TooltipProps & {\n step: PeriodStep;\n events: string[];\n};\n\nconst getStepValueFormat = cond([\n [equals(PeriodStep.HOUR), always('LT MMM D')],\n [equals(PeriodStep.DAY), always('ll')]\n]);\n\nconst CustomTooltip = ({active, payload, label, step, events}: Props) => {\n const styles = useStyles();\n return (\n active && (\n <div className={styles.tooltipWrapper}>\n <p className={styles.tooltipTitle}>{i18n.date(label, getStepValueFormat(step))}</p>\n {payload\n .filter(({name}) => events.includes(name))\n .map(({color, name, value}) => {\n return (\n <p key={name}>\n <span style={{background: color}} className={styles.tooltipItemColor} />\n {`${getStatsEventName(name)}: ${value}`}\n </p>\n );\n })}\n </div>\n )\n );\n};\n\nexport default CustomTooltip;\n","import React from 'react';\nimport {LegendProps} from 'recharts';\nimport {getStatsEventName} from '../../../services/stats';\nimport Tooltip from '@mui/material/Tooltip';\nimport i18n from 'ui-i18n';\n\nimport {useStyles} from './styles';\n\ntype Props = LegendProps & {\n selectedItems: string[];\n};\n\nconst CustomLegend = ({payload, selectedItems, onClick}: Props) => {\n const styles = useStyles();\n return (\n <div className={styles.legend}>\n {payload.map(({id, color, value}) => {\n const isSelected = selectedItems.includes(id);\n return (\n <div key={id} className={styles.legendItem}>\n <Tooltip title={isSelected ? i18n.text('Hide') : i18n.text('Show')}>\n <div\n style={isSelected ? {background: color} : {border: `${color} 1px solid`}}\n className={styles.legendItemColor}\n onClick={() => onClick(id)}\n />\n </Tooltip>\n {getStatsEventName(id)}\n <span className={styles.legendItemValue}>{value}</span>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default CustomLegend;\n","import React, {useMemo, useState} from 'react';\nimport {CartesianGrid, Legend, Line, LineChart, Tooltip, XAxis, YAxis} from 'recharts';\nimport {append, ifElse, includes, pluck, without} from 'ramda';\nimport getStatsChartSettings from './getStatsChartSettings';\nimport {PeriodStep} from '../../types/PeriodStep';\nimport {StatsData} from '../../types/StatsData';\nimport {calibrateStatsData, getStatsEventColor, getChartDomain} from '../../services/stats';\nimport CustomAxisTick from './customized/CustomAxisTick';\nimport CustomTooltip from './customized/CustomTooltip';\nimport CustomLegend from './customized/CustomLegend';\n\ntype Props = {\n data: StatsData[];\n width: number;\n height: number;\n step: PeriodStep;\n};\n\nconst StatsChart = ({data, width, height, step}: Props) => {\n const [selectedEvents, setSelectedEvents] = useState<string[]>(pluck('event', data));\n const toggleEvent = (event) => {\n setSelectedEvents(ifElse(includes(event), without([event]), append(event)));\n };\n\n const [tooltipEvent, setTooltipEvent] = useState<string | null>(null);\n\n const tickCount = 8;\n const {cartesianGrid, tooltip, xAxis, yAxis, line, legend} = getStatsChartSettings();\n const chartData = useMemo(() => calibrateStatsData(step, data), [step, data]);\n const domain = useMemo(() => getChartDomain(chartData, tickCount), [chartData]);\n\n return (\n <LineChart width={width} height={height}>\n <CartesianGrid {...cartesianGrid} />\n <XAxis {...xAxis} tick={<CustomAxisTick step={step} />} />\n <YAxis {...yAxis} tickCount={tickCount} domain={domain} />\n {chartData.map(({event, data}) => {\n const isSelected = selectedEvents.includes(event);\n return (\n <Line\n key={event}\n stroke={getStatsEventColor(event)}\n name={event}\n data={data}\n dot={isSelected && {r: 5, strokeWidth: 2}}\n activeDot={\n isSelected && {\n r: 5,\n strokeWidth: 2,\n onMouseEnter: () => setTooltipEvent(event),\n onMouseLeave: () => setTooltipEvent(null)\n }\n }\n strokeOpacity={isSelected ? 1 : 0}\n {...line}\n />\n );\n })}\n <Legend\n content={<CustomLegend selectedItems={selectedEvents} onClick={toggleEvent} />}\n payload={chartData.map(({event, total}) => ({\n id: event,\n type: 'square',\n color: getStatsEventColor(event),\n value: total\n }))}\n {...legend}\n />\n <Tooltip\n {...tooltip}\n content={<CustomTooltip step={step} events={tooltipEvent ? [tooltipEvent] : selectedEvents} />}\n />\n </LineChart>\n );\n};\n\nexport default StatsChart;\n","import {CartesianGridProps, LegendProps, LineProps, TooltipProps, XAxisProps, YAxisProps} from 'recharts';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\n\ntype StatsChartSettings = {\n xAxis: XAxisProps;\n yAxis: YAxisProps;\n cartesianGrid: CartesianGridProps;\n tooltip: TooltipProps;\n line: LineProps;\n legend: LegendProps;\n};\n\nconst getStatsChartSettings = (): StatsChartSettings => {\n return {\n xAxis: {\n type: 'category',\n dataKey: 'term',\n tick: {\n fill: '#000',\n opacity: '0.54'\n },\n angle: 0,\n textAnchor: 'middle',\n stroke: '#666',\n allowDuplicatedCategory: false\n },\n yAxis: {\n dataKey: '',\n type: 'number',\n tick: {\n fill: '#000',\n opacity: '0.54',\n width: undefined\n },\n stroke: '#666',\n tickFormatter: formatNumberAsMetric,\n width: 50\n },\n cartesianGrid: {\n strokeDasharray: '3 3',\n stroke: '#666',\n strokeOpacity: '0.4'\n },\n tooltip: {\n cursor: {\n fill: '#000',\n opacity: '0.1'\n }\n },\n line: {\n type: 'linear',\n dataKey: 'count',\n strokeWidth: 3\n },\n legend: {\n wrapperStyle: {\n display: 'flex',\n overflowY: 'auto',\n maxHeight: '25%'\n }\n }\n };\n};\n\nexport default getStatsChartSettings;\n","import {useCallback, useEffect, useState} from 'react';\nimport {andThen, otherwise, pipe} from 'ramda';\nimport {requestStats} from '../services/stats';\nimport {getStepForPeriod} from '../services/period';\nimport {StatsData} from '../types/StatsData';\nimport {DatePeriod} from '@reltio/mdm-sdk';\nimport {useSafePromise, RequestStates} from '@reltio/components';\n\nexport const useStatsRequest = (period: DatePeriod) => {\n const [data, setData] = useState<StatsData[]>([]);\n const [step, setStep] = useState(getStepForPeriod(period));\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const safePromise = useSafePromise();\n\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n setData([]);\n };\n\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n setStep(getStepForPeriod(period));\n setData([]);\n const onRequestFinished = (data: StatsData[]) => {\n setRequestState(RequestStates.LOADED);\n setData(data);\n };\n\n const getData = pipe(requestStats, safePromise, andThen(onRequestFinished), otherwise(onError));\n getData(period);\n }, [period.toString()]); // eslint-disable-line\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, step, reload: refreshAction};\n};\n","import React, {memo, useState} from 'react';\nimport {DashboardView, DatePeriod, DateRangeValue, getDateRangeOptions} from '@reltio/mdm-sdk';\nimport {useReloadFacet} from '@reltio/components';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport DashboardDateRangeSelector from '../../components/DashboardDateRangeSelector/DashboardDateRangeSelector';\nimport StatsChart from '../../components/StatsChart/StatsChart';\nimport {useStatsRequest} from '../../hooks/useStatsRequest';\nimport {getValuesDateRange} from '../../services/period';\n\nconst MIN_CHART_WIDTH = 80;\n\ntype Props = {\n config: DashboardView;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\n\nconst ProfileStatsFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const {id, title} = config;\n const [period, setPeriod] = useState<DatePeriod>(DateRangeValue.LAST_WEEK);\n const {state, data, step, reload} = useStatsRequest(period);\n useReloadFacet({state, reload});\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRefresh={reload}\n onRemove={onRemove}\n >\n <DashboardDateRangeSelector\n values={period}\n options={getDateRangeOptions()}\n getValuesDateRange={getValuesDateRange}\n onChange={setPeriod}\n MenuProps={{\n MenuListProps: {autoFocusItem: true},\n anchorOrigin: {vertical: 'bottom', horizontal: 'right'},\n transformOrigin: {vertical: 'top', horizontal: 'right'}\n }}\n />\n </LayoutItemHeader>\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data}>\n {({data, width, height}) => (\n <StatsChart data={data} width={Math.max(width, MIN_CHART_WIDTH)} height={height} step={step} />\n )}\n </LayoutItemContent>\n </LayoutItemView>\n );\n};\n\nexport default memo(ProfileStatsFacet);\n","import {\n getEntityType,\n getInheritancePath,\n getLastUriPart,\n isAvailableEntityType,\n Metadata,\n wrapInArrayIfNeeded\n} from '@reltio/mdm-sdk';\nimport {curry, filter, last, map, pipe, prop, either} from 'ramda';\nimport {ChartData} from '@reltio/components';\nimport {createEntityTypeFilter} from './filters';\n\nconst typeNameToUri = (typeName: string): string => `configuration/entityTypes/${typeName}`;\nconst getUriFromTypeFacet = pipe(prop('group'), typeNameToUri);\n\nexport const resolveTypeFacetsLabels = curry((metadata: Metadata, typeFacets: ChartData[]): ChartData[] => {\n return typeFacets.map((facet) => {\n const typeUri = getUriFromTypeFacet(facet);\n return {\n ...facet,\n label: getEntityType(metadata, typeUri).label\n };\n });\n});\n\nexport const getParentEntityTypeFacets = curry((metadata: Metadata, typeFacets: ChartData[]): ChartData[] => {\n const getParentTypeForFacet = pipe(\n getUriFromTypeFacet,\n getInheritancePath(metadata),\n map(getEntityType(metadata)),\n filter(isAvailableEntityType),\n last\n );\n const parentsMap = typeFacets.reduce((acc, facet) => {\n const parentType = getParentTypeForFacet(facet);\n if (parentType) {\n const parentName = getLastUriPart(parentType.uri);\n return {\n ...acc,\n [parentName]: (acc[parentName] || 0) + facet.value\n };\n } else {\n return acc;\n }\n }, {});\n return Object.entries(parentsMap).map(([key, value]) => ({\n group: key,\n label: key,\n value\n })) as ChartData[];\n});\n\nexport const entityTypeNameToFilters = pipe(typeNameToUri, createEntityTypeFilter, wrapInArrayIfNeeded);\n\nconst getEntityTypeName = pipe(prop('uri'), getLastUriPart);\n\nconst findTypeFacetByName = curry((typeFacets: ChartData[], name: string): ChartData => {\n return typeFacets.find((facet) => facet.group === name);\n});\n\nconst createEmptyEntityTypeFacet = (name: string): ChartData => ({label: name, group: name, value: 0});\n\nexport const addEmptyEntityTypesFacets = curry(({entityTypes}: Metadata, typeFacets: ChartData[]): ChartData[] => {\n const getFacet = pipe(getEntityTypeName, either(findTypeFacetByName(typeFacets), createEmptyEntityTypeFacet));\n return entityTypes.filter(isAvailableEntityType).map(getFacet);\n});\n","import {useEffect, useState, useCallback} from 'react';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\nimport {GlobalSearchRequestOptions} from '@reltio/mdm-sdk';\nimport {pipe, andThen, otherwise, when, always, unless} from 'ramda';\nimport {requestFacets, localizeFacetValues} from '../services/facets';\nimport {ChartData, RequestStates} from '@reltio/components';\nimport {addEmptyEntityTypesFacets, getParentEntityTypeFacets, resolveTypeFacetsLabels} from '../services/entityTypes';\n\ntype Props = {\n hideEmpty?: boolean;\n orderType?: string;\n inheritChildren?: boolean;\n};\n\nconst filters = [];\n\nexport const useEntityByTypeRequest = ({orderType, inheritChildren, hideEmpty}: Props) => {\n const [data, setData] = useState<ChartData[]>([]);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const metadata: Record<string, any> = useSelector(mdmModule.selectors.getMetadata);\n const pageSize = metadata.entityTypes.length;\n const {globalFilter, activityFilter}: GlobalSearchRequestOptions = useSelector(\n mdmModule.selectors.getGlobalSearchRequestOptions\n );\n\n const searchByOv: boolean = useSelector(mdmModule.selectors.getShowSearchByOv);\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n setData([]);\n };\n\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n const onRequestFinished = (data: ChartData[]) => {\n setRequestState(RequestStates.LOADED);\n setData(data);\n };\n\n const getData = pipe(\n requestFacets,\n andThen(unless(always(hideEmpty), addEmptyEntityTypesFacets(metadata))),\n andThen(when(always(inheritChildren), getParentEntityTypeFacets(metadata))),\n andThen(resolveTypeFacetsLabels(metadata)),\n andThen(localizeFacetValues),\n andThen(onRequestFinished),\n otherwise(onError)\n );\n\n getData({attribute: 'type', pageSize, filters, globalFilter, searchByOv, activityFilter, orderType});\n }, [hideEmpty, metadata, inheritChildren, pageSize, globalFilter, searchByOv, activityFilter, orderType]);\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, reload: refreshAction};\n};\n","import React, {memo} from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {TreeChart, useReloadFacet} from '@reltio/components';\nimport {useEntityByTypeRequest} from '../../hooks/useEntityByTypeRequest';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport {EntityByTypeViewFacetConfig} from '../../types/EntityByTypeViewFacetConfig';\nimport {entityTypeNameToFilters} from '../../services/entityTypes';\nimport {facetFiltersToSearchState} from '../../services/facets';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {pipe} from 'ramda';\n\ntype Props = {\n config: EntityByTypeViewFacetConfig;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\n\nconst EntitiesByTypeViewFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const {id, title, hideEmpty, orderType, inheritChildren} = config;\n const {data, state, reload} = useEntityByTypeRequest({\n hideEmpty,\n orderType,\n inheritChildren\n });\n\n useReloadFacet({state, reload});\n\n const dispatch = useDispatch();\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n const onTypeClick = pipe(\n entityTypeNameToFilters,\n facetFiltersToSearchState(metadata, 'type'),\n ui.actions.openSearch,\n dispatch\n );\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRefresh={reload}\n onRemove={onRemove}\n />\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data}>\n {({data, width, height}) => {\n return <TreeChart width={width} height={height} data={data} onItemClick={onTypeClick} />;\n }}\n </LayoutItemContent>\n </LayoutItemView>\n );\n};\n\nexport default memo(EntitiesByTypeViewFacet);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewContent: {\n height: '100%',\n overflow: 'hidden',\n position: 'relative',\n padding: '0 16px 16px'\n },\n iframe: {\n borderWidth: 0,\n width: '100%',\n height: '100%'\n }\n}));\n","import React, {memo} from 'react';\nimport {CustomActionViewFacetConfig} from '../../types/CustomActionViewFacetConfig';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport {BasicViewContent} from '@reltio/components';\nimport {useStyles} from './styles';\n\ntype Props = {\n config: CustomActionViewFacetConfig;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\n\nconst CustomActionViewFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const {id, title, url} = config;\n const styles = useStyles();\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRemove={onRemove}\n />\n <BasicViewContent className={styles.viewContent}>\n <iframe src={url} frameBorder=\"0\" className={styles.iframe} />\n </BasicViewContent>\n </LayoutItemView>\n );\n};\n\nexport default memo(CustomActionViewFacet);\n","import {WorkflowTaskData} from '@reltio/mdm-sdk';\n\nexport enum WorkflowTasksCategories {\n MY = 'my',\n TEAM = 'team'\n}\n\ntype WorkflowTaskEntityData = {\n uri: string;\n label: string;\n type: string;\n};\ntype WorkflowTaskRelationData = {\n uri: string;\n type: string;\n startObjectUri: string;\n endObjectUri: string;\n startObjectLabel: string;\n endObjectLabel: string;\n};\n\nexport type WorkflowTaskObjectData = WorkflowTaskEntityData | WorkflowTaskRelationData;\n\nexport type EnrichedWorkflowTaskData = WorkflowTaskData & {\n objects?: WorkflowTaskObjectData[];\n};\n","import {\n always,\n cond,\n converge,\n curry,\n descend,\n equals,\n filter,\n head,\n isNil,\n keys,\n map,\n otherwise,\n path,\n pipe,\n prop,\n propEq,\n propOr,\n reject,\n sort,\n startsWith,\n T,\n when,\n complement,\n isEmpty\n} from 'ramda';\nimport {WorkflowTasksCategories} from '../types/WorkflowTasks';\nimport {\n getDataChangeRequest,\n getEntitiesByUris,\n getGroupTasksForTenant,\n getTasksForTenant,\n isEntityUri,\n WorkflowTaskData\n} from '@reltio/mdm-sdk';\n\nconst getTasksByCategory = cond([\n [equals(WorkflowTasksCategories.MY), always(getTasksForTenant)],\n [equals(WorkflowTasksCategories.TEAM), always(getGroupTasksForTenant)],\n [T, always(() => Promise.resolve({data: []}))]\n]);\n\nconst getFirstObjectUri = pipe(propOr([], 'objectURIs'), head);\nconst isDCRObjectUri = startsWith('changeRequests/');\n\nconst notEmpty = complement(isEmpty);\n\nconst getEntities = pipe(map(getFirstObjectUri), filter(isEntityUri), when(notEmpty, getEntitiesByUris));\n\nconst getChangeRequests = pipe(\n map(getFirstObjectUri),\n filter(isDCRObjectUri),\n map(pipe(getDataChangeRequest, otherwise(always(null)))),\n (requests) => Promise.all(requests)\n);\n\nconst getTaskObjectsData = converge((...requests) => Promise.all(requests), [getEntities, getChangeRequests]);\n\nconst enrichTaskWithEntity = (entities) => (task) => {\n const entity = entities.find(propEq('uri', getFirstObjectUri(task)));\n return entity\n ? {\n ...task,\n objects: [entity]\n }\n : task;\n};\n\nconst extractObjectsFromChangeRequest = ({objectsInfo = {}, changes = {}, uri}) => {\n const getChange = (key) => path([key, 0], changes);\n const getUri = (key) => {\n const {type} = getChange(key);\n if (type == 'CREATE_ENTITY' || type == 'CREATE_RELATIONSHIP') {\n return uri + '/changes/' + key;\n } else {\n return key;\n }\n };\n return pipe(\n keys,\n filter(getChange),\n sort(descend(pipe(getChange, prop('createdTime')))),\n map((key) => ({...objectsInfo[key], uri: getUri(key)}))\n )(objectsInfo);\n};\n\nconst enrichTaskWithDCRObjects = (changeRequests) => (task) => {\n const changeRequest = changeRequests.find(propEq('uri', getFirstObjectUri(task)));\n return changeRequest\n ? {\n ...task,\n objects: extractObjectsFromChangeRequest(changeRequest)\n }\n : task;\n};\n\nconst enrichTasksWithObjectsData = (entities, changeRequests, tasks) => {\n changeRequests = reject(isNil, changeRequests);\n return tasks.map(\n pipe(\n when(pipe(getFirstObjectUri, isEntityUri), enrichTaskWithEntity(entities)),\n when(pipe(getFirstObjectUri, isDCRObjectUri), enrichTaskWithDCRObjects(changeRequests))\n )\n );\n};\n\nexport const requestWorkflowTasks = curry(\n async (tasksCategory, {workflowPath, environment, tenant, assignee, max, offset}) => {\n const getTasks = getTasksByCategory(tasksCategory);\n const {data, total} = await getTasks({workflowPath, environment, tenant, assignee, max, offset});\n const [entities, changeRequests] = await getTaskObjectsData(data);\n return {data: enrichTasksWithObjectsData(entities, changeRequests, data), total};\n }\n);\n\nexport const isOverdueTask = (task: WorkflowTaskData) => task.dueDate && task.dueDate < Date.now();\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n taskItem: {\n flex: 1,\n display: 'flex',\n padding: '15px',\n color: theme.palette.text.primary,\n '&.Low': {\n borderLeft: '#F7F7F7 solid 3px'\n },\n '&.Medium': {\n borderLeft: '#F7DE03 solid 3px'\n },\n '&.High': {\n borderLeft: '#FF9800 solid 3px'\n },\n '&.Urgent': {\n borderLeft: '#F44336 solid 3px'\n }\n },\n taskInfo: {\n flex: 1,\n paddingLeft: '15px',\n overflow: 'hidden',\n overflowWrap: 'anywhere'\n },\n titleContainer: {\n display: 'flex',\n alignItems: 'baseline'\n },\n taskTitle: {\n lineHeight: '18px',\n marginBottom: '6px'\n },\n taskDetail: {\n lineHeight: '15px',\n fontSize: '12px',\n margin: '5px 0'\n },\n taskDetailTitle: {\n color: theme.palette.text.secondary,\n marginRight: '3px'\n },\n taskDueDate: {\n fontSize: '13px',\n lineHeight: '15px',\n marginLeft: 'auto',\n flexShrink: 0\n },\n flag: {\n height: '14px',\n width: '14px',\n stroke: 'rgba(0,0,0,.54)',\n fill: 'none',\n verticalAlign: 'text-top',\n marginRight: '5px'\n },\n overdue: {\n '&$taskDueDate': {\n color: '#f44336'\n },\n '& $flag': {\n stroke: '#f44336',\n fill: '#f44336'\n }\n },\n entityLabel: {\n color: theme.palette.primary.main,\n textDecoration: 'none',\n fontSize: '13px',\n lineHeight: '15px'\n },\n hidden: {\n visibility: 'hidden'\n }\n}));\n","import React from 'react';\nimport {always, cond, equals, propSatisfies, T} from 'ramda';\nimport {EnrichedWorkflowTaskData, WorkflowTaskObjectData} from '../../types/WorkflowTasks';\nimport {EntityUriLink} from '@reltio/components';\nimport {\n getEntityUriForLink,\n getLabel,\n getRelationType,\n isDCRUri,\n Metadata,\n PredefinedWorkflowProcessType\n} from '@reltio/mdm-sdk';\nimport i18n from 'ui-i18n';\nimport {useStyles} from './styles';\n\ntype Props = {\n object: WorkflowTaskObjectData;\n metadata: Metadata;\n processType: EnrichedWorkflowTaskData['processType'];\n};\n\nconst EntityLink = ({uri, label, screen}: {uri: string; label: string; screen?: string}) => {\n const styles = useStyles();\n return (\n <EntityUriLink value={uri} screen={screen} className={styles.entityLabel}>\n {getLabel(label)}\n </EntityUriLink>\n );\n};\n\nconst WorkflowTaskObject = ({object, metadata, processType}: Props) => {\n if ('startObjectUri' in object && 'endObjectUri' in object) {\n const relationType = getRelationType(metadata, object.type);\n return (\n <>\n {relationType.label} {i18n.text('from')}{' '}\n <EntityLink uri={object.startObjectUri} label={object.startObjectLabel} /> {i18n.text('to')}{' '}\n <EntityLink uri={object.endObjectUri} label={object.endObjectLabel} />\n </>\n );\n } else {\n const screen = cond([\n [\n always(equals(processType, PredefinedWorkflowProcessType.potentialMatchReview)),\n always('potentialMatches')\n ],\n [propSatisfies(isDCRUri, 'uri'), always('dcrReview')],\n [T, always('profile')]\n ])(object);\n return <EntityLink uri={getEntityUriForLink(object)} label={object.label} screen={screen} />;\n }\n};\n\nexport default WorkflowTaskObject;\n","import React from 'react';\nimport {useSelector} from 'react-redux';\nimport i18n from 'ui-i18n';\nimport classnames from 'classnames';\nimport {EntityTypeIcon} from '@reltio/components';\nimport mdmModule from '@reltio/mdm-module';\nimport {getEntityType} from '@reltio/mdm-sdk';\nimport FlagIcon from '@mui/icons-material/Flag';\nimport Typography from '@mui/material/Typography';\nimport {EnrichedWorkflowTaskData} from '../../types';\nimport {isOverdueTask} from '../../services/workflowTasks';\nimport WorkflowTaskObject from './WorkflowTaskObject';\nimport {useStyles} from './styles';\n\ntype Props = {\n showAssignee: boolean;\n task: EnrichedWorkflowTaskData;\n};\n\nconst WorkflowTaskItem = ({task, showAssignee}: Props) => {\n const styles = useStyles();\n const objects = task.objects || [];\n const [firstObject] = objects;\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n const entityType = firstObject && getEntityType(metadata, firstObject.type);\n\n return (\n <div className={classnames(styles.taskItem, task.priorityClass)} data-reltio-id=\"workflow-task-item\">\n <EntityTypeIcon entityType={entityType} />\n <div className={styles.taskInfo}>\n <div className={styles.titleContainer}>\n <Typography className={styles.taskTitle} variant={'subtitle1'}>\n {i18n.text(task.processDefinitionDisplayName)}\n </Typography>\n <div\n className={classnames(styles.taskDueDate, {\n [styles.overdue]: isOverdueTask(task),\n [styles.hidden]: !task.dueDate\n })}\n >\n <FlagIcon className={styles.flag} />\n {i18n.date(task.dueDate, 'L')}\n </div>\n </div>\n {objects.map((object) => (\n <p key={object.uri} className={styles.taskDetail}>\n <WorkflowTaskObject object={object} processType={task.processType} metadata={metadata} />\n </p>\n ))}\n <p className={styles.taskDetail}>\n <span className={styles.taskDetailTitle}>{`${i18n.text('Created by')}:`}</span>\n {task.createdBy} {i18n.text('on')} {i18n.date(task.createTime, 'L')}\n </p>\n {showAssignee && task.assignee && (\n <p className={styles.taskDetail}>\n <span className={styles.taskDetailTitle}>{`${i18n.text('Assigned to')}:`}</span>\n {task.assignee}\n </p>\n )}\n <p className={styles.taskDetail}>\n <span className={styles.taskDetailTitle}>{`${i18n.text('Step')}:`}</span>\n {task.displayName}\n </p>\n </div>\n </div>\n );\n};\n\nexport default WorkflowTaskItem;\n","import React, {useCallback} from 'react';\nimport {WorkflowTasksCategories, EnrichedWorkflowTaskData} from '../../types/WorkflowTasks';\nimport {AutoSizeList} from '@reltio/components';\nimport WorkflowTaskItem from '../WorkflowTaskItem/WorkflowTaskItem';\nimport Divider from '@mui/material/Divider';\n\ntype Props = {\n width: number;\n height: number;\n tasksCategory: WorkflowTasksCategories;\n tasks: EnrichedWorkflowTaskData[];\n};\n\nconst WorkflowTasksList = ({width, height, tasksCategory, tasks}: Props) => {\n const renderRow = useCallback(\n ({data, index}: {data: EnrichedWorkflowTaskData[]; index: number}) => {\n const isLastItem = index === data.length - 1;\n return (\n <div>\n <WorkflowTaskItem task={data[index]} showAssignee={tasksCategory !== WorkflowTasksCategories.MY} />\n {!isLastItem && <Divider light variant=\"inset\" />}\n </div>\n );\n },\n [tasksCategory]\n );\n\n return (\n <AutoSizeList width={width} height={height} data={tasks} defaultItemSize={115}>\n {renderRow}\n </AutoSizeList>\n );\n};\n\nexport default WorkflowTasksList;\n","import {useCallback, useEffect, useMemo, useState} from 'react';\nimport {useSelector} from 'react-redux';\nimport {andThen, otherwise, pipe, pick} from 'ramda';\nimport mdmModule from '@reltio/mdm-module';\nimport {useSafePromise, RequestStates} from '@reltio/components';\nimport {EnrichedWorkflowTaskData, WorkflowTasksCategories} from '../types/WorkflowTasks';\n\nimport {requestWorkflowTasks} from '../services/workflowTasks';\n\ntype Options = {\n tasksCategory: WorkflowTasksCategories;\n max?: number;\n offset?: number;\n};\n\nexport const useWorkflowTasksRequest = (options: Options) => {\n const {tasksCategory} = options;\n const requestParams = useMemo(() => pick(['max', 'offset'], options), [options]);\n const [data, setData] = useState<EnrichedWorkflowTaskData[]>([]);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const [total, setTotal] = useState<number>();\n const workflowPath = useSelector(mdmModule.selectors.getWorkflowPath);\n const environment = useSelector(mdmModule.selectors.getWorkflowEnvironmentUrl);\n const tenant = useSelector(mdmModule.selectors.getTenant);\n const userName = useSelector(mdmModule.selectors.getUserName);\n\n const assignee = tasksCategory === WorkflowTasksCategories.MY ? userName : undefined;\n const safePromise = useSafePromise();\n\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n setData([]);\n };\n\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n const onRequestFinished = ({data, total}: {data: EnrichedWorkflowTaskData[]; total?: number}) => {\n setRequestState(RequestStates.LOADED);\n setData(data);\n setTotal(total);\n };\n\n const getData = pipe(\n requestWorkflowTasks(tasksCategory),\n safePromise,\n andThen(onRequestFinished),\n otherwise(onError)\n );\n getData({workflowPath, environment, tenant, assignee, ...requestParams});\n }, [workflowPath, environment, tenant, tasksCategory, requestParams]); // eslint-disable-line\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, reload: refreshAction, total};\n};\n","import React, {memo, useMemo, useState} from 'react';\nimport i18n from 'ui-i18n';\nimport {WorkflowInboxFacetConfig} from '@reltio/mdm-sdk';\nimport {BasicTablePagination, DropDownMenuButton, useReloadFacet} from '@reltio/components';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport WorkflowTasksList from '../../components/WorkflowTasksList/WorkflowTasksList';\nimport {WorkflowTasksCategories} from '../../types/WorkflowTasks';\nimport {useWorkflowTasksRequest} from '../../hooks/useWorkflowTasksRequest';\nimport {DEFAULT_ROWS_PER_PAGE} from './helpers';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n config: WorkflowInboxFacetConfig;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n onToggleFullscreen: (id: string) => void;\n};\n\nconst NotificationInboxFacet = ({config, onToggleFullscreen, isUpdated, isFullscreen, onRemove}: Props) => {\n const {id, title, pageSize = DEFAULT_ROWS_PER_PAGE} = config;\n const styles = useStyles();\n\n const [page, setPage] = useState(0);\n const [rowsPerPage, setRowsPerPage] = useState(pageSize);\n const [tasksCategory, setTasksCategory] = useState<WorkflowTasksCategories>(WorkflowTasksCategories.MY);\n\n const options = useMemo(\n () => ({tasksCategory, max: rowsPerPage, offset: rowsPerPage * page}),\n [rowsPerPage, page, tasksCategory]\n );\n const tasksCategories = useMemo(\n () => ({\n [WorkflowTasksCategories.MY]: i18n.text('My tasks'),\n [WorkflowTasksCategories.TEAM]: i18n.text('Team tasks')\n }),\n []\n );\n const menuItems = useMemo(\n () =>\n Object.keys(tasksCategories).map((category: WorkflowTasksCategories) => ({\n text: tasksCategories[category],\n onClick: () => setTasksCategory(category)\n })),\n [tasksCategories]\n );\n const {state, data, total, reload} = useWorkflowTasksRequest(options);\n\n useReloadFacet({state, reload});\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRemove={onRemove}\n onRefresh={reload}\n >\n <DropDownMenuButton\n buttonProps={{\n className: styles.categorySelector,\n endIcon: <ArrowDropDownIcon />,\n size: 'small'\n }}\n buttonContent={tasksCategories[tasksCategory]}\n menuId=\"tasks-category-menu\"\n menuItems={menuItems}\n />\n </LayoutItemHeader>\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data} className={styles.inboxContent}>\n {({data, width, height}) => (\n <WorkflowTasksList width={width} height={height} tasksCategory={tasksCategory} tasks={data} />\n )}\n </LayoutItemContent>\n {!!total && (\n <BasicTablePagination\n page={page}\n count={total}\n rowsPerPage={rowsPerPage}\n onChangePage={setPage}\n onChangeRowsPerPage={setRowsPerPage}\n />\n )}\n </LayoutItemView>\n );\n};\n\nexport default memo(NotificationInboxFacet);\n","import {useCallback, useEffect, useState} from 'react';\nimport {andThen, otherwise, pipe} from 'ramda';\nimport {ActivitiesFilter, ActivityData, useActivitiesLoader, useSafePromise, RequestStates} from '@reltio/components';\n\ntype Props = {\n filter: ActivitiesFilter;\n max: number;\n offset: number;\n};\n\nexport const useActivitiesRequest = ({filter, max, offset}: Props) => {\n const [data, setData] = useState<ActivityData[]>([]);\n const [total, setTotal] = useState(0);\n const [requestState, setRequestState] = useState<RequestStates>(RequestStates.INIT);\n const safePromise = useSafePromise();\n\n const onError = (error) => {\n console.error(error); // eslint-disable-line\n setRequestState(RequestStates.ERROR);\n };\n const getActivities = useActivitiesLoader({filter, max, offset});\n\n const loadData = useCallback(() => {\n setRequestState(RequestStates.LOADING);\n const onRequestFinished = ({data, total}: {data: ActivityData[]; total: number}) => {\n setData(data);\n setTotal(total);\n setRequestState(RequestStates.LOADED);\n };\n\n const getData = pipe(getActivities, safePromise, andThen(onRequestFinished), otherwise(onError));\n getData();\n }, [getActivities]); // eslint-disable-line\n\n const refreshAction = () => {\n try {\n loadData();\n } catch (e) {\n onError(e);\n }\n };\n\n useEffect(() => {\n refreshAction();\n }, [loadData]);\n\n return {state: requestState, data, total, reload: refreshAction};\n};\n","import React, {memo, useCallback, useMemo, useState} from 'react';\nimport i18n from 'ui-i18n';\nimport {DateRangeTypes} from '@reltio/mdm-sdk';\nimport {\n ActivitiesFilter,\n ActivityLog,\n ActivityLogFilter,\n BasicTablePagination,\n useReloadFacet\n} from '@reltio/components';\nimport LayoutItemView from '../../components/LayoutItemView/LayoutItemView';\nimport LayoutItemHeader from '../../components/LayoutItemHeader/LayoutItemHeader';\nimport LayoutItemContent from '../../components/LayoutItemContent/LayoutItemContent';\nimport {ActivitiesViewFacetConfig} from '../../types/ActivitiesViewFacetConfig';\nimport {DEFAULT_ROWS_PER_PAGE, getRowsPerPageOptions} from './helpers';\nimport {useActivitiesRequest} from '../../hooks/useActivitiesRequest';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n config: ActivitiesViewFacetConfig;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n onToggleFullscreen: (id: string) => void;\n};\n\nconst ActivitiesViewFacet = ({config, isUpdated, isFullscreen, onToggleFullscreen, onRemove}: Props) => {\n const {id, title, exportTypes} = config;\n const styles = useStyles();\n\n const [page, setPage] = useState(0);\n const [rowsPerPage, setRowsPerPage] = useState(DEFAULT_ROWS_PER_PAGE);\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(DEFAULT_ROWS_PER_PAGE), []);\n const [filter, setFilter] = useState<ActivitiesFilter>({\n users: [],\n activities: [],\n dateRange: {\n type: DateRangeTypes.WITHIN,\n period: [3, 'months']\n }\n });\n const {state, data, total, reload} = useActivitiesRequest({filter, max: rowsPerPage, offset: page * rowsPerPage});\n\n const handleFilterChange = useCallback((value: ActivitiesFilter) => {\n setFilter(value);\n setPage(0);\n }, []);\n\n useReloadFacet({state, reload});\n\n return (\n <LayoutItemView id={id}>\n <LayoutItemHeader\n title={title}\n onToggleFullscreen={onToggleFullscreen}\n isUpdated={isUpdated}\n isFullscreen={isFullscreen}\n onRemove={onRemove}\n onRefresh={reload}\n />\n <div className={styles.activityLogFilter}>\n <ActivityLogFilter value={filter} onChange={handleFilterChange} exportTypes={exportTypes} />\n </div>\n <LayoutItemContent loadingState={state} onRefresh={reload} data={data} className={styles.content}>\n {({data, width, height}) => <ActivityLog width={width} height={height} activities={data} />}\n </LayoutItemContent>\n {!!total && (\n <BasicTablePagination\n page={page}\n count={total}\n onChangePage={setPage}\n rowsPerPage={rowsPerPage}\n onChangeRowsPerPage={setRowsPerPage}\n rowsPerPageOptions={rowsPerPageOptions}\n labelRowsPerPage={i18n.text('Events per page:')}\n />\n )}\n </LayoutItemView>\n );\n};\n\nexport default memo(ActivitiesViewFacet);\n","import React, {ComponentType} from 'react';\nimport {withDragHandle} from '@reltio/components';\nimport {ChartTypes, DashboardFacetConfig, DashboardView, DashboardViewTypes} from '@reltio/mdm-sdk';\nimport FilteredSavedSearchesFacet from './tableBased/FilteredSavedSearchesFacet';\nimport DashboardFacet from './chartBased/DashboardFacet';\nimport FilteredEntitiesViewFacet from './tableBased/FilteredEntitiesViewFacet';\nimport ProfileStatsFacet from './chartBased/ProfileStatsFacet';\nimport EntitiesByTypeViewFacet from './chartBased/EntitiesByTypeViewFacet';\nimport CustomActionViewFacet from './custom/CustomActionViewFacet';\nimport NotificationInboxFacet from './tableBased/NotificationInboxFacet';\nimport ActivitiesViewFacet from './tableBased/ActivitiesViewFacet';\nimport {\n ActivitiesViewFacetConfig,\n CustomActionViewFacetConfig,\n EntityByTypeViewFacetConfig,\n FilteredSavedSearchesFacetConfig,\n FilteredEntitiesFacetConfig\n} from '../types';\n\nconst wrapView = <P extends Record<string, unknown>>(component: ComponentType<P>) => withDragHandle(component);\n\nconst WrappedActivitiesViewFacet = wrapView(ActivitiesViewFacet);\nconst WrappedCustomActionViewFacet = wrapView(CustomActionViewFacet);\nconst WrappedDashboardFacet = wrapView(DashboardFacet);\nconst WrappedEntitiesByTypeViewFacet = wrapView(EntitiesByTypeViewFacet);\nconst WrappedFilteredSavedSearchesFacet = wrapView(FilteredSavedSearchesFacet);\nconst WrappedFilteredEntitiesViewFacet = wrapView(FilteredEntitiesViewFacet);\nconst WrappedNotificationInboxFacet = wrapView(NotificationInboxFacet);\nconst WrappedProfileStatsFacet = wrapView(ProfileStatsFacet);\n\ntype Props = {\n config:\n | ActivitiesViewFacetConfig\n | CustomActionViewFacetConfig\n | DashboardFacetConfig\n | EntityByTypeViewFacetConfig\n | FilteredEntitiesFacetConfig\n | FilteredSavedSearchesFacetConfig\n | DashboardView;\n type: string;\n onToggleFullscreen: (id: string) => void;\n isUpdated?: boolean;\n isFullscreen: boolean;\n onRemove?: (id: string) => void;\n};\nclass ViewsFactory {\n static ViewTypes = DashboardViewTypes;\n\n static getComponent = ({config, type, isUpdated, isFullscreen, onToggleFullscreen, onRemove}: Props) => {\n const props = {\n isUpdated,\n isFullscreen,\n onToggleFullscreen,\n onRemove\n };\n switch (type) {\n case ViewsFactory.ViewTypes.ActivitiesViewFacet:\n return <WrappedActivitiesViewFacet config={config} {...props} />;\n case ViewsFactory.ViewTypes.CustomActionViewFacet:\n return <WrappedCustomActionViewFacet config={config as CustomActionViewFacetConfig} {...props} />;\n case ViewsFactory.ViewTypes.DashboardFacet:\n return <WrappedDashboardFacet config={config as DashboardFacetConfig} {...props} />;\n case ViewsFactory.ViewTypes.EntitiesByTypeViewFacet:\n return <WrappedEntitiesByTypeViewFacet config={config as EntityByTypeViewFacetConfig} {...props} />;\n case ViewsFactory.ViewTypes.FilteredSavedSearchesFacet:\n return <WrappedFilteredSavedSearchesFacet config={config} {...props} />;\n case ViewsFactory.ViewTypes.FilteredEntitiesViewFacet:\n return <WrappedFilteredEntitiesViewFacet config={config} {...props} />;\n case ViewsFactory.ViewTypes.NotificationInboxFacet:\n return <WrappedNotificationInboxFacet config={config} {...props} />;\n case ViewsFactory.ViewTypes.ProfileStatsFacet:\n return <WrappedProfileStatsFacet config={config} {...props} />;\n }\n };\n\n static getChartType = (view: DashboardView & {chartType?: string}): string => {\n const typeConverters = {\n [ViewsFactory.ViewTypes.EntitiesByTypeViewFacet]: ChartTypes.TREE,\n [ViewsFactory.ViewTypes.FilteredSavedSearchesFacet]: ChartTypes.TABLE,\n [ViewsFactory.ViewTypes.FilteredEntitiesViewFacet]: ChartTypes.TABLE,\n [ViewsFactory.ViewTypes.ProfileStatsFacet]: ChartTypes.LINE,\n [ViewsFactory.ViewTypes.NotificationInboxFacet]: ChartTypes.TABLE,\n [ViewsFactory.ViewTypes.ActivitiesViewFacet]: ChartTypes.TABLE\n };\n return view.chartType || typeConverters[view.component];\n };\n}\n\nexport default ViewsFactory;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n"],"names":["_interopRequireDefault","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","_excluded","ListItemIconRoot","name","slot","overridesResolver","props","styles","ownerState","root","alignItems","alignItemsFlexStart","theme","minWidth","color","vars","palette","action","active","flexShrink","display","marginTop","inProps","ref","className","other","context","classes","slots","useUtilityClasses","useStyles","makeStyles","dragHandleContainer","position","width","height","dragHandleVisibilityArea","top","left","zIndex","visibility","dragHandle","justifyContent","cursor","dragIcon","transform","fontSize","Component","WithDragHandle","classnames","DragIndicator","displayName","customStyles","input","currentStyles","menuPortal","flex","title","paddingBottom","paddingLeft","dropDownInput","backgroundColor","borderTop","option","noOptionsMessage","entityType","selectedAttributes","onChange","disableUnderline","menuPlacement","metadata","useMdmMetadata","prepareItems","useCallback","data","level","prevLabel","reduce","acc","item","hidden","chipLabel","label","push","value","uri","attrType","subAttributes","getAttributeTypeSubAttributes","concat","options","useMemo","attributes","Typography","variant","i18n","MultiSelect","TextFieldProps","InputProps","components","DropdownIndicator","DropdownIndicatorWithIconButton","MultiValue","Option","isFocused","isSelected","innerProps","AttributeListItem","checked","labelInText","pipe","defaultTo","menuPortalTarget","document","body","menuShouldBlockScroll","captureMenuScroll","contextSelector","CellRenderer","withContext","TableContext","pagination","boxShadow","boxSizing","overflowY","containerType","caption","lineHeight","displayedRows","selectRoot","marginLeft","marginRight","select","textAlign","actions","BasicTablePagination","count","rowsPerPageOptions","page","onChangePage","rowsPerPage","onChangeRowsPerPage","basicTableRef","labelRowsPerPage","resetScrollbarPosition","pathOr","identity","handleChangePage","handleChangeRowsPerPage","TablePagination","selectLabel","backIconButtonProps","size","nextIconButtonProps","component","labelDisplayedRows","from","to","fromRow","toRow","countRows","onPageChange","nthArg","onRowsPerPageChange","getValue","memo","basicViewPaper","flexDirection","basicView","BasicView","forwardRef","children","otherProps","Paper","toolbar","minHeight","padding","fontWeight","whiteSpace","overflow","textOverflow","Toolbar","collapseButton","expandLess","isOpen","tooltipTitle","buttonProps","icon","ExpandMore","iconClassName","tooltipProps","SmallIconButton","bar","secondary","main","opacity","borderRadius","widthIsNumber","is","Number","maxWidth","getBarColorWidth","style","paddingRight","inputNumber","inputUnit","periods","interval","unit","onFocus","onNumberChange","parseInt","newValue","onUnitChange","newUnit","TextField","type","inputProps","min","SimpleDropDownSelector","placeholder","capitalize","getIntervalUnitLabel","map","buttonRoot","alpha","selected","paper","menuItem","menuText","text","primary","letterSpacing","MenuItemWithTooltip","withTooltip","MenuItem","MenuItemRenderer","onMenuClose","disabled","tooltip","onClick","id","selectable","showForDisabled","e","Checkbox","DropDownMenuButton","menuId","buttonComponent","Button","buttonContent","menuItems","popoverProps","onMenuOpen","DefaultMenuItemRenderer","ButtonComponent","buttonRef","useRef","setIsOpen","useState","useDidUpdateEffect","handleToggle","stopPropagation","open","undefined","Menu","autoFocus","anchorEl","current","onClose","anchorOrigin","vertical","horizontal","transformOrigin","elevation","MenuListProps","autoFocusItem","index","key","absoluteImagePath","useMdmAbsoluteImagePath","storagePath","str","endsWith","ErrorBoundary","React","constructor","super","this","state","error","componentDidCatch","setState","console","render","container","paddingTop","BasicViewHeader","withMuiSkin","CreatableSelect","innerRef","selectProps","classNames","ExpandedValueTooltip","propTypes","PropTypes","onMouseMove","onMouseOver","tabIndex","isRequired","clearIndicator","spacing","margin","dropdownIndicator","creatable","getOptions","loadingIndicator","componentsProp","classesProp","stylesProp","onChangeProp","onInputChange","onInputChangeProp","reactSelectProps","SelectComponent","AsyncSelect","Select","inputValue","setInputValue","multiSelectClasses","omit","inputId","multiSelectComponents","mergeClasses","indicatorSeparator","base","loadingMessage","fontFamily","labelProps","InputLabelProps","htmlFor","shrink","length","isMulti","actionMeta","closeMenuOnSelect","hideSelectedOptions","loadOptions","defaultProps","cacheOptions","defaultOptions","ClearIndicator","Control","DownChevron","CrossIcon","Group","GroupHeading","IndicatorsContainer","IndicatorSeparator","Input","LoadingIndicator","MenuList","MenuPortal","LoadingMessage","NoOptionsMessage","MultiValueContainer","MultiValueLabel","MultiValueRemove","Placeholder","SelectContainer","SingleValue","ValueContainer","control","valueContainer","multiValue","singleValue","menu","group","groupHeading","indicatorsContainer","menuList","multiValueLabel","multiValueRemove","getOptionValue","isSearchable","inputRef","reltioLayoutItemToReactGridLayoutItem","x","y","maxHeight","isStatic","w","h","minW","minH","maxW","maxH","i","static","reactGridLayoutItemToReltioLayoutItem","reactGridLayoutToReltioLayout","layout","getReltioLayoutItemById","curry","find","propEq","updateExtraPropsInLayoutItem","mergeAll","pick","copyPropsFromPreviousLayout","oldReltioLayout","reltioLayout","layoutItem","prop","__","alignGroupedItemsHeights","heightsMap","oneRowItemsHeights","filter","autosizing","newHeight","Math","max","minMaxHeights","calcLayoutItemsHeight","_","gridLayout","background","border","transitionDuration","userSelect","transitionProperty","transition","willChange","backgroundImage","bottom","right","svg2Url","backgroundRepeat","backgroundOrigin","gridFullscreen","isResizing","pointerEvents","DEFAULT_LAYOUT_OPTIONS","cols","rowHeight","ReltioGridLayout","views","layoutOptions","onLayoutChanged","noop","draggableHandle","LayoutItem","onRemove","onDrop","droppingItem","isDroppable","resizingItemId","setResizingItemId","fullscreenItemId","setFullscreenItemId","setWidth","processedLayout","reltioLayoutToReactGridLayout","onReltioLayoutChanged","ifElse","always","onToggleFullscreen","prevId","isFullscreenEnabled","refreshMode","refreshRate","handleWidth","onResize","autoSize","onLayoutChange","isResizable","isDraggable","onResizeStart","onResizeStop","isItemFullscreen","autosizeComponent","AutosizeComponent","layoutItemId","handleHeight","ceil","calcHeight","layoutItemConfig","fullscreen","isFullscreen","selectedUsers","tenant","useMdmTenant","servicesPath","useMdmServicesPath","valueToOption","prepareValues","values","cachedRequest","pluck","getAllUsersForTenant","then","users","username","utils","filterUsers","ActivityTypes","getItemDataType","path","getActivityType","activity","items","firstItem","removeIgnoredItems","isImplementedItem","isValidActivityType","includes","filteredItems","reject","itemsTotal","splitActivityByType","propOr","groupBy","stringifyDeltaValue","deltaValue","attributeTypeUri","attributePresentations","attributeType","findAttributeTypeByUri","dataTypeDefinition","getAttrDataTypeDefinition","formatValue","formatDataTypeValue","isNil","Object","entries","flatMap","attributeTypeName","deltaValues","makeAttrTypeUri","join","getActivityLabel","inputRoot","dateOptionLabel","localeFormat","moment","longDateFormat","setOpen","fullWidth","DataTypes","endAdornment","menuIsOpen","readOnly","Popover","DateRangePicker","onApply","loader","LinearProgress","menuItemTitle","openIcon","setAnchorEl","isMenuOpen","Boolean","handleMenuClose","handleItemClick","IconButton","currentTarget","MoreVert","ListItemIcon","ListItemText","view","DashboardViewIdContext","useSavedSearchesRequest","offset","setData","total","setTotal","requestState","setRequestState","RequestStates","onError","loadData","onRequestFinished","result","countResults","restOptions","async","getSavedSearches","totalRequests","search","getTotalsForQuery","replacePlaceholdersInQuery","query","searchesWithCount","promiseAllSettled","searchesWithTotal","searchIndex","status","reason","assocPath","getData","catch","refreshAction","useEffect","reload","ROWS_PER_PAGE_OPTIONS","DEFAULT_ROWS_PER_PAGE","getRowsPerPageOptions","defaultRowsPerPage","sort","subtract","rightMenu","flexGrow","gap","updatedChip","isUpdated","onRefresh","useContext","Replay","Fullscreen","FullscreenExit","HighlightOff","FacetViewHeader","Chip","DashboardPopupMenu","_extends","assign","target","arguments","source","prototype","hasOwnProperty","call","apply","viewBox","fill","xmlns","maskType","maskUnits","mask","fillOpacity","fillRule","clipRule","mixBlendMode","x1","y1","x2","y2","gradientUnits","stopColor","stopOpacity","filterUnits","colorInterpolationFilters","floodOpacity","in","dy","stdDeviation","mode","in2","noDataContainer","marginBottom","errorContainer","errorIcon","refreshButton","refreshIcon","message","startIcon","viewContent","toolbarRoot","loadingState","EmptyPlaceholder","BasicViewContent","DashboardLinearLoader","savedSearchDataToSearchState","uiState","version","currentSavedSearchUri","curSavedSearchUri","activityLogFilter","borderBottom","categorySelector","textTransform","inboxContent","content","config","setPage","setRowsPerPage","chartData","savedSearchDataToChartData","dispatch","useDispatch","onSSClick","ui","useReloadFacet","LayoutItemView","TableWithBars","headers","showValues","onItemClick","configFilterToSearchFilter","when","FilterOptions","evolve","wrapInArray","createNotEqualFilter","fieldName","convertSearchFilterToDashboardConfigFilter","searchFilter","createEntityTypeFilter","entityTypeUri","createFacetItemFilter","convertFilterToFacetState","getSpecialAttrTypeByFieldName","searchUriToAttrUri","isEntityTypeUri","assoc","isDateType","mapFilterValue","parseTimestamp","isSomeEntityTypeFilter","isEntityTypeFilter","requestFacets","attribute","filters","globalFilter","searchByOv","activityFilter","pageSize","orderType","buildFilterQueryString","addGlobalFilterToQuery","buildQuery","pageNo","getFacets","response","sortWith","descend","ascend","getFacetData","resolveLookups","lookupCode","lookupsToResolve","codeValue","resolveLookupsList","codes","buildLookupRecord","code","buildFacetOthersFilters","OTHER_FACET_GROUP","requestOtherValues","otherFilters","searchOptions","getTotals","resolveRoleLabel","roleName","getRoleLabel","localizeFacetValues","facet","localizedValue","getFacetFieldName","attributeUriToSearchUri","getFacetEntityTypeUri","getEntityUriFromAttributeUri","getFiltersForFacet","attributeUri","hasEntityTypeFilter","some","getFiltersForFacetItem","facetFiltersToSearchState","facets","chartType","showOthers","ChartTypes","facetFilters","searchFilters","SearchFiltersContext","facetAndSpecialFilters","useSelector","mdmModule","hasAttrPresentation","andThen","isLookupAttrType","getAttrTypeLookupCode","isRoleAttrType","resolveFacetLabels","unless","otherwise","useFacetRequest","allFilters","ChartsFactory","headCell","headLabel","entityLabel","textDecoration","headCellData","DefaultHeadCellRenderer","rowValue","entity","getLabel","EntityUriLink","getEntityUriForLink","tableContainer","cellBorder","borderLeft","borderRight","headData","resizable","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","EntityLabelRenderer","initialWidth","tableClasses","BasicTable","columnsData","rowsData","headRowHeight","getRowCellHeight","defaultColumnWidth","defaultColumnMinWidth","Promise","all","getFilteredEntities","results","entities","useFilteredEntitiesRequest","button","DashboardDateRangeSelector","editorLabel","onMenuToggle","endIcon","ArrowDropDown","withDateRangeSelector","PeriodStep","getStepForPeriod","period","getDateRangeByDatePeriod","getDashboardDateRangeByValue","startTime","endTime","DAY","HOUR","currentDate","DateRangeValue","valueOf","getDateRangeByValue","getValuesDateRange","Date","StatsEvents","types","getStatsEventById","event","getStatsEventName","getStatsEventColor","requestStats","getStats","getEntitiesStats","allTypes","chain","processStats","stats","getEvents","events","presentTypes","periodFrame","term","prepend","append","isEventPresent","resolve","getEventsData","groupEventsData","step","eventData","startOf","toPairs","date","sum","interpolateEventsData","head","lastTerm","last","nextTerm","add","interpolatedItems","calibrateStatsData","statsData","getStepValueFormat","cond","equals","payload","textAnchor","tooltipWrapper","tooltipItemColor","legend","flexWrap","legendItem","legendItemColor","legendItemValue","selectedItems","Tooltip","selectedEvents","setSelectedEvents","tooltipEvent","setTooltipEvent","cartesianGrid","xAxis","yAxis","line","dataKey","tick","angle","stroke","allowDuplicatedCategory","tickFormatter","formatNumberAsMetric","strokeDasharray","strokeOpacity","strokeWidth","wrapperStyle","domain","tickCount","counts","abs","getChartDomain","dot","r","activeDot","onMouseEnter","onMouseLeave","without","setPeriod","setStep","safePromise","useSafePromise","toString","useStatsRequest","getDateRangeOptions","MenuProps","typeNameToUri","typeName","getUriFromTypeFacet","resolveTypeFacetsLabels","typeFacets","typeUri","getEntityType","getParentEntityTypeFacets","getParentTypeForFacet","getInheritancePath","isAvailableEntityType","parentsMap","parentType","parentName","getLastUriPart","entityTypeNameToFilters","wrapInArrayIfNeeded","getEntityTypeName","findTypeFacetByName","createEmptyEntityTypeFacet","addEmptyEntityTypesFacets","entityTypes","getFacet","either","hideEmpty","inheritChildren","useEntityByTypeRequest","onTypeClick","TreeChart","iframe","borderWidth","url","src","frameBorder","WorkflowTasksCategories","getTasksByCategory","MY","getTasksForTenant","TEAM","getGroupTasksForTenant","T","getFirstObjectUri","isDCRObjectUri","startsWith","notEmpty","complement","isEmpty","getEntities","isEntityUri","getEntitiesByUris","getChangeRequests","getDataChangeRequest","requests","getTaskObjectsData","converge","extractObjectsFromChangeRequest","objectsInfo","changes","getChange","getUri","keys","enrichTasksWithObjectsData","changeRequests","tasks","task","objects","enrichTaskWithEntity","changeRequest","enrichTaskWithDCRObjects","requestWorkflowTasks","tasksCategory","workflowPath","environment","assignee","getTasks","isOverdueTask","dueDate","now","taskItem","taskInfo","overflowWrap","titleContainer","taskTitle","taskDetail","taskDetailTitle","taskDueDate","flag","verticalAlign","overdue","EntityLink","screen","object","processType","relationType","getRelationType","startObjectUri","startObjectLabel","endObjectUri","endObjectLabel","PredefinedWorkflowProcessType","propSatisfies","isDCRUri","showAssignee","firstObject","priorityClass","EntityTypeIcon","processDefinitionDisplayName","Flag","createdBy","createTime","renderRow","isLastItem","Divider","light","AutoSizeList","defaultItemSize","setTasksCategory","tasksCategories","category","requestParams","userName","useWorkflowTasksRequest","exportTypes","setFilter","activities","dateRange","DateRangeTypes","getActivities","useActivitiesLoader","useActivitiesRequest","handleFilterChange","ActivityLogFilter","ActivityLog","wrapView","withDragHandle","WrappedActivitiesViewFacet","ActivitiesViewFacet","WrappedCustomActionViewFacet","CustomActionViewFacet","WrappedDashboardFacet","DashboardFacet","WrappedEntitiesByTypeViewFacet","EntitiesByTypeViewFacet","WrappedFilteredSavedSearchesFacet","FilteredSavedSearchesFacet","WrappedFilteredEntitiesViewFacet","FilteredEntitiesViewFacet","WrappedNotificationInboxFacet","NotificationInboxFacet","WrappedProfileStatsFacet","ProfileStatsFacet","ViewsFactory","ViewTypes","DashboardViewTypes","getComponent","getChartType","typeConverters","componentWillMount","getDerivedStateFromProps","componentWillReceiveProps","nextProps","prevState","bind","componentWillUpdate","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","polyfill","isReactComponent","Error","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","componentName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","__suppressDeprecationWarning"],"sourceRoot":""}