@reltio/remotes 1.4.1721 → 1.4.1722
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.
- package/1088.js +1 -1
- package/1148.js +1 -1
- package/1215.js +1 -1
- package/1334.js +1 -1
- package/1425.js +1 -1
- package/1550.js +1 -1
- package/1664.js +1 -1
- package/1707.js +1 -1
- package/1840.js +1 -1
- package/2066.js +1 -1
- package/2345.js +1 -1
- package/2400.js +1 -1
- package/2617.js +1 -1
- package/2825.js +3 -0
- package/2825.js.map +1 -0
- package/2857.js +1 -1
- package/3004.js +1 -1
- package/3042.js +1 -1
- package/3096.js +1 -1
- package/3104.js +2 -0
- package/3104.js.map +1 -0
- package/3144.js +1 -1
- package/3191.js +1 -1
- package/3348.js +1 -1
- package/3381.js +1 -1
- package/3383.js +1 -1
- package/3463.js +1 -1
- package/3469.js +1 -1
- package/3538.js +1 -1
- package/3639.js +1 -1
- package/393.js +1 -1
- package/393.js.map +1 -1
- package/4038.js +1 -1
- package/415.js +1 -1
- package/4212.js +1 -1
- package/{3209.css → 4265.css} +1 -1
- package/{3209.css.map → 4265.css.map} +1 -1
- package/4265.js +2 -0
- package/4265.js.map +1 -0
- package/{829.css → 4390.css} +1 -1
- package/4390.css.map +1 -0
- package/4390.js +2 -0
- package/4390.js.map +1 -0
- package/4444.js +1 -1
- package/4481.js +1 -1
- package/4780.js +2 -0
- package/4780.js.map +1 -0
- package/4787.js +1 -1
- package/4838.js +1 -1
- package/4969.js +1 -1
- package/50.js +1 -1
- package/5039.js +1 -1
- package/5177.js +1 -1
- package/5201.js +1 -1
- package/5292.js +1 -1
- package/5368.js +2 -0
- package/{4143.js.map → 5368.js.map} +1 -1
- package/5383.js +1 -1
- package/5738.js +1 -1
- package/5738.js.map +1 -1
- package/5769.js +1 -1
- package/6012.js +76 -0
- package/{2966.js.LICENSE.txt → 6012.js.LICENSE.txt} +0 -10
- package/6012.js.map +1 -0
- package/6287.js +1 -1
- package/6422.js +1 -1
- package/6506.js +1 -1
- package/6578.js +1 -1
- package/6578.js.map +1 -1
- package/658.js +1 -1
- package/6799.js +1 -1
- package/6807.js +2 -0
- package/6807.js.map +1 -0
- package/6844.js +1 -1
- package/6903.js +1 -1
- package/7074.js +1 -1
- package/7119.js +1 -1
- package/7237.js +1 -1
- package/7340.js +1 -1
- package/735.js +1 -1
- package/7401.js +2 -0
- package/7401.js.map +1 -0
- package/7407.js +1 -1
- package/7422.js +1 -1
- package/7468.js +1 -1
- package/7626.js +1 -1
- package/7719.js +1 -1
- package/7744.js +1 -1
- package/7744.js.map +1 -1
- package/7896.js +1 -1
- package/820.js +1 -1
- package/8207.js +1 -1
- package/8216.js +1 -1
- package/8741.js +1 -1
- package/8786.js +1 -1
- package/9016.js +1 -1
- package/9032.js +1 -1
- package/9050.js +1 -1
- package/913.js +56 -0
- package/913.js.LICENSE.txt +9 -0
- package/913.js.map +1 -0
- package/9283.js +1 -1
- package/9328.js +1 -1
- package/9387.js +1 -1
- package/9719.js +1 -1
- package/main.js +1 -1
- package/main.js.map +1 -1
- package/package.json +1 -1
- package/remoteEntry.js +1 -1
- package/remoteEntry.js.map +1 -1
- package/2383.js +0 -3
- package/2383.js.map +0 -1
- package/2966.js +0 -129
- package/2966.js.map +0 -1
- package/3209.js +0 -2
- package/3209.js.map +0 -1
- package/3785.js +0 -2
- package/3785.js.map +0 -1
- package/4143.js +0 -2
- package/829.css.map +0 -1
- package/829.js +0 -2
- package/829.js.map +0 -1
- package/9109.js +0 -2
- package/9109.js.map +0 -1
- /package/{2383.js.LICENSE.txt → 2825.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"4143.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/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/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/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/Spacer/Spacer.js","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/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/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/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/useFacetRequest.ts","webpack://@reltio/remotes/../dashboard/src/hooks/useFilteredEntitiesRequest.ts","webpack://@reltio/remotes/../dashboard/src/services/facets.ts","webpack://@reltio/remotes/../dashboard/src/services/filters.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/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/views/chartBased/DashboardFacet.tsx","webpack://@reltio/remotes/../dashboard/src/views/tableBased/FilteredEntitiesViewFacet.tsx","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/views/ViewsFactory.tsx","webpack://@reltio/remotes/../dashboard/src/views/tableBased/ActivitiesViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useActivitiesRequest.ts","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 {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({\n toolbar: {\n minHeight: '48px',\n padding: '8px 24px',\n lineHeight: '28px'\n },\n title: {\n fontSize: '18px',\n minWidth: '20px',\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 {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\nconst Spacer = () => <div style={{flex: 1}} />;\n\nexport default Spacer;\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\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","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 {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, 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.warn(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 {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.warn(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)])\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 {\n ActivityFilter,\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?: ActivityFilter;\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 {\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 {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.warn(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.warn(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","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} = config;\n const styles = useStyles();\n\n const max = config.max || DEFAULT_ROWS_PER_PAGE;\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 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 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} = config;\n const max = config.max || DEFAULT_ROWS_PER_PAGE;\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 {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 {\n getEntitiesStats,\n getDateRangeByDatePeriod,\n DatePeriod,\n StatsEventData,\n TimestampedStatsEventData\n} from '@reltio/mdm-sdk';\nimport {PeriodStep} from '../types/PeriodStep';\nimport {StatsData} from '../types/StatsData';\nimport {getDashboardDateRangeByValue} from '../services/period';\nimport {YAxisProps} 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): YAxisProps['domain'] => {\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 i18n from 'ui-i18n';\nimport {always, cond, equals} from 'ramda';\nimport {TooltipProps} from 'recharts';\nimport {PeriodStep} from '../../../types/PeriodStep';\nimport {getStatsEventName} from '../../../services/stats';\n\nimport {useStyles} from './styles';\n\ntype Props = TooltipProps<number, string> & {\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 i18n from 'ui-i18n';\nimport {LegendProps} from 'recharts';\nimport Tooltip from '@mui/material/Tooltip';\nimport {getStatsEventName} from '../../../services/stats';\n\nimport {useStyles} from './styles';\n\ntype Props = Omit<LegendProps, 'onClick'> & {\n onClick: (event: string) => void;\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 {append, ifElse, includes, pluck, without} from 'ramda';\nimport {CartesianGrid, Legend, Line, LineChart, Tooltip, XAxis, YAxis} from 'recharts';\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: string) => {\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: Omit<CartesianGridProps, 'ref'>;\n tooltip: TooltipProps<number, string>;\n line: Omit<LineProps, 'ref'>;\n legend: Omit<LegendProps, 'ref'>;\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: (value) => formatNumberAsMetric(value),\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.warn(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.warn(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.warn(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, useCallback, 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\nconst tasksCategories = {\n [WorkflowTasksCategories.MY]: i18n.text('My tasks'),\n [WorkflowTasksCategories.TEAM]: i18n.text('Team tasks')\n};\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\n const handleUpdateTaskCategory = useCallback((category: WorkflowTasksCategories) => {\n setPage(0);\n setTasksCategory(category);\n }, []);\n\n const menuItems = useMemo(\n () =>\n Object.keys(tasksCategories).map((category: WorkflowTasksCategories) => ({\n text: tasksCategories[category],\n onClick: () => handleUpdateTaskCategory(category)\n })),\n [handleUpdateTaskCategory]\n );\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 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","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 {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.warn(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","/**\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","contextSelector","CellRenderer","withContext","TableContext","useStyles","makeStyles","pagination","justifyContent","height","borderTop","boxShadow","boxSizing","overflowY","containerType","caption","fontSize","lineHeight","displayedRows","selectRoot","marginLeft","marginRight","select","textAlign","actions","BasicTablePagination","count","rowsPerPageOptions","page","onChangePage","rowsPerPage","onChangeRowsPerPage","basicTableRef","labelRowsPerPage","resetScrollbarPosition","useCallback","pathOr","identity","handleChangePage","value","handleChangeRowsPerPage","TablePagination","classnames","selectLabel","input","backIconButtonProps","size","nextIconButtonProps","component","i18n","labelDisplayedRows","from","to","fromRow","toRow","countRows","onPageChange","pipe","nthArg","onRowsPerPageChange","getValue","displayName","memo","toolbar","minHeight","padding","title","fontWeight","whiteSpace","overflow","textOverflow","children","otherProps","Toolbar","Typography","variant","collapseButton","cursor","expandLess","transform","isOpen","tooltipTitle","buttonProps","icon","ExpandMore","iconClassName","tooltipProps","SmallIconButton","bar","backgroundColor","secondary","main","opacity","position","borderRadius","top","left","widthIsNumber","width","is","Number","maxWidth","getBarColorWidth","style","buttonRoot","alpha","selected","paper","menuItem","menuText","text","primary","letterSpacing","MenuItemWithTooltip","withTooltip","MenuItem","MenuItemRenderer","forwardRef","item","onMenuClose","disabled","tooltip","onClick","id","selectable","showForDisabled","e","Checkbox","checked","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","map","index","key","absoluteImagePath","useMdmAbsoluteImagePath","storagePath","str","endsWith","flex","loader","LinearProgress","menuItemTitle","openIcon","items","setAnchorEl","isMenuOpen","Boolean","handleMenuClose","handleItemClick","IconButton","currentTarget","MoreVert","filter","ListItemIcon","ListItemText","content","right","background","pointerEvents","headCell","headLabel","entityLabel","textDecoration","headCellData","DefaultHeadCellRenderer","label","ExpandedValueTooltip","rowValue","entity","getLabel","EntityUriLink","getEntityUriForLink","tableContainer","flexDirection","cellBorder","borderLeft","borderRight","data","headData","resizable","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","EntityLabelRenderer","initialWidth","tableClasses","BasicTable","columnsData","rowsData","headRowHeight","getRowCellHeight","defaultColumnWidth","defaultColumnMinWidth","_extends","Object","assign","target","i","arguments","length","source","prototype","hasOwnProperty","call","apply","this","React","viewBox","fill","xmlns","maskType","maskUnits","x","y","mask","fillOpacity","fillRule","clipRule","mixBlendMode","x1","y1","x2","y2","gradientUnits","stopColor","stopOpacity","offset","filterUnits","colorInterpolationFilters","floodOpacity","result","in","type","values","dy","stdDeviation","mode","in2","noDataContainer","marginBottom","errorContainer","errorIcon","paddingTop","refreshButton","refreshIcon","onRefresh","message","startIcon","Replay","viewContent","toolbarRoot","visibility","dragIcon","zIndex","loadingState","EmptyPlaceholder","BasicViewContent","refreshMode","refreshRate","handleWidth","handleHeight","RequestStates","ErrorBoundary","error","DashboardLinearLoader","view","DashboardViewIdContext","BasicView","useFacetRequest","filters","facetFilters","attributeUri","pageSize","orderType","options","setData","requestState","setRequestState","searchFilters","useContext","SearchFiltersContext","facetAndSpecialFilters","useMemo","convertSearchFilterToDashboardConfigFilter","concat","metadata","useSelector","mdmModule","globalFilter","activityFilter","attributePresentations","hasAttrPresentation","searchByOv","showOthers","onError","console","warn","loadData","getFiltersForFacet","fieldName","getFacetFieldName","attrType","getSpecialAttrTypeByFieldName","findAttributeTypeByUri","getData","requestFacets","andThen","resolveFacetLabels","unless","always","localizeFacetValues","when","requestOtherValues","attribute","otherwise","refreshAction","useEffect","state","reload","useFilteredEntitiesRequest","max","total","setTotal","allFilters","Promise","all","getFilteredEntities","getTotals","then","results","entities","catch","query","buildQuery","body","pageNo","getFacets","response","prop","defaultTo","entries","group","sortWith","descend","ascend","getFacetData","resolveLookups","curry","lookupCode","lookupsToResolve","codeValue","resolveLookupsList","codes","flatMap","buildLookupRecord","code","find","buildFacetOthersFilters","createNotEqualFilter","OTHER_FACET_GROUP","otherFilters","configFilterToSearchFilter","searchOptions","resolveRoleLabel","roleName","getRoleLabel","facet","localizedValue","isLookupAttrType","getAttrTypeLookupCode","isRoleAttrType","isDateType","evolve","parseTimestamp","formatDataTypeValue","dataTypeDefinition","getAttrDataTypeDefinition","isEntityTypeUri","attributeUriToSearchUri","getFacetEntityTypeUri","ifElse","getEntityUriFromAttributeUri","entityTypeUri","hasEntityTypeFilter","some","isEntityTypeFilter","createEntityTypeFilter","getFiltersForFacetItem","reject","propEq","createFacetItemFilter","facetFiltersToSearchState","entityType","isSomeEntityTypeFilter","facets","convertFilterToFacetState","includes","__","FilterOptions","wrapInArray","buildFilterQueryString","addGlobalFilterToQuery","push","join","searchFilter","searchUriToAttrUri","uri","assoc","mapFilterValue","useSavedSearchesRequest","onRequestFinished","countResults","restOptions","async","getSavedSearches","totalRequests","search","getTotalsForQuery","replacePlaceholdersInQuery","searchesWithCount","promiseAllSettled","reduce","searchesWithTotal","searchIndex","status","reason","assocPath","ROWS_PER_PAGE_OPTIONS","DEFAULT_ROWS_PER_PAGE","getRowsPerPageOptions","defaultRowsPerPage","option","sort","subtract","rightMenu","flexGrow","gap","updatedChip","onToggleFullscreen","isUpdated","isFullscreen","onRemove","Fullscreen","FullscreenExit","HighlightOff","FacetViewHeader","Chip","DashboardPopupMenu","savedSearchDataToSearchState","uiState","version","currentSavedSearchUri","curSavedSearchUri","activityLogFilter","borderBottom","categorySelector","textTransform","inboxContent","config","setPage","setRowsPerPage","chartData","savedSearchDataToChartData","dispatch","useDispatch","onSSClick","ui","useReloadFacet","LayoutItemView","LayoutItemContent","TableWithBars","headers","showValues","onItemClick","chartType","ChartTypes","ChartsFactory","Math","EntityTable","button","DashboardDateRangeSelector","editorLabel","onMenuToggle","endIcon","ArrowDropDown","withDateRangeSelector","PeriodStep","getStepForPeriod","period","getDateRangeByDatePeriod","getDashboardDateRangeByValue","startTime","endTime","moment","DAY","HOUR","currentDate","DateRangeValue","valueOf","getDateRangeByValue","getValuesDateRange","Date","StatsEvents","types","getStatsEventById","event","getStatsEventName","propOr","getStatsEventColor","requestStats","getStats","getEntitiesStats","allTypes","chain","processStats","pluck","stats","getEvents","events","presentTypes","periodFrame","term","prepend","append","isEventPresent","resolve","getEventsData","groupEventsData","step","eventData","groupBy","startOf","toPairs","date","sum","interpolateEventsData","head","acc","lastTerm","last","nextTerm","add","interpolatedItems","calibrateStatsData","statsData","getStepValueFormat","cond","equals","payload","textAnchor","tooltipWrapper","margin","tooltipItemColor","legend","flexWrap","legendItem","legendItemColor","legendItemValue","selectedItems","isSelected","border","selectedEvents","setSelectedEvents","tooltipEvent","setTooltipEvent","cartesianGrid","xAxis","yAxis","line","dataKey","tick","angle","stroke","allowDuplicatedCategory","tickFormatter","formatNumberAsMetric","strokeDasharray","strokeOpacity","strokeWidth","wrapperStyle","maxHeight","domain","tickCount","counts","min","abs","getChartDomain","LineChart","CartesianGrid","XAxis","YAxis","Line","dot","r","activeDot","onMouseEnter","onMouseLeave","Legend","without","Tooltip","setPeriod","setStep","safePromise","useSafePromise","toString","useStatsRequest","getDateRangeOptions","onChange","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","path","getUri","keys","enrichTasksWithObjectsData","changeRequests","tasks","isNil","task","objects","enrichTaskWithEntity","changeRequest","enrichTaskWithDCRObjects","requestWorkflowTasks","tasksCategory","workflowPath","environment","tenant","assignee","getTasks","isOverdueTask","dueDate","now","taskItem","taskInfo","paddingLeft","overflowWrap","titleContainer","taskTitle","taskDetail","taskDetailTitle","taskDueDate","flag","verticalAlign","overdue","hidden","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","tasksCategories","setTasksCategory","handleUpdateTaskCategory","category","requestParams","pick","userName","useWorkflowTasksRequest","wrapView","withDragHandle","WrappedActivitiesViewFacet","exportTypes","setFilter","users","activities","dateRange","DateRangeTypes","getActivities","useActivitiesLoader","useActivitiesRequest","handleFilterChange","ActivityLogFilter","ActivityLog","WrappedCustomActionViewFacet","CustomActionViewFacet","WrappedDashboardFacet","DashboardFacet","WrappedEntitiesByTypeViewFacet","EntitiesByTypeViewFacet","WrappedFilteredSavedSearchesFacet","FilteredSavedSearchesFacet","WrappedFilteredEntitiesViewFacet","FilteredEntitiesViewFacet","WrappedNotificationInboxFacet","NotificationInboxFacet","WrappedProfileStatsFacet","ProfileStatsFacet","ViewsFactory","ViewTypes","DashboardViewTypes","getComponent","ActivitiesViewFacet","getChartType","typeConverters","componentWillMount","constructor","getDerivedStateFromProps","setState","componentWillReceiveProps","nextProps","prevState","bind","componentWillUpdate","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","polyfill","Component","isReactComponent","Error","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","componentName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","__suppressDeprecationWarning"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"5368.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/icons/ReferenceAttribute.tsx","webpack://@reltio/remotes/../components/src/icons/SimpleAttribute.tsx","webpack://@reltio/remotes/../components/src/components/AttributeListItem/styles.ts","webpack://@reltio/remotes/../components/src/components/AttributeListItem/AttrTypeIcon.tsx","webpack://@reltio/remotes/../components/src/icons/Recommended.tsx","webpack://@reltio/remotes/../components/src/components/AttributeListItem/AttributeListItem.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/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/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/DropDownSelector/components/styles.js","webpack://@reltio/remotes/../components/src/components/DropDownSelector/components/Menu.js","webpack://@reltio/remotes/../components/src/components/DropDownSelector/components/SingleValue.js","webpack://@reltio/remotes/../components/src/components/DropDownSelector/styles.js","webpack://@reltio/remotes/../components/src/components/DropDownSelector/DropDownSelector.js","webpack://@reltio/remotes/../components/src/components/EntityTypeIcon/EntityTypeIcon.tsx","webpack://@reltio/remotes/../components/src/components/EntityUriLink/EntityUriLink.tsx","webpack://@reltio/remotes/../components/src/components/ReactSelect/AsyncSelect.js","webpack://@reltio/remotes/../components/src/components/RequiredMark/styles.js","webpack://@reltio/remotes/../components/src/components/RequiredMark/RequiredMark.tsx","webpack://@reltio/remotes/../components/src/components/SimpleDropDownSelector/styles.js","webpack://@reltio/remotes/../components/src/components/SimpleDropDownSelector/DropDownValue.js","webpack://@reltio/remotes/../components/src/components/SimpleDropDownSelector/DropDownPlaceholder.js","webpack://@reltio/remotes/../components/src/components/SimpleDropDownSelector/SimpleDropDownSelector.js","webpack://@reltio/remotes/../components/src/components/Spacer/Spacer.js","webpack://@reltio/remotes/../components/src/contexts/UrlGeneratorsContext/index.ts","webpack://@reltio/remotes/../components/src/contexts/ViewIdContext/index.ts","webpack://@reltio/remotes/../components/src/icons/NestedAttribute.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/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/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/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/useFacetRequest.ts","webpack://@reltio/remotes/../dashboard/src/hooks/useFilteredEntitiesRequest.ts","webpack://@reltio/remotes/../dashboard/src/services/facets.ts","webpack://@reltio/remotes/../dashboard/src/services/filters.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/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/views/chartBased/DashboardFacet.tsx","webpack://@reltio/remotes/../dashboard/src/views/tableBased/FilteredEntitiesViewFacet.tsx","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/views/ViewsFactory.tsx","webpack://@reltio/remotes/../dashboard/src/views/tableBased/ActivitiesViewFacet.tsx","webpack://@reltio/remotes/../dashboard/src/hooks/useActivitiesRequest.ts","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 React from 'react';\n\nconst SvgReferenceAttribute: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={24} height={24} viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M10 18h3v-1a1 1 0 011-1h4a1 1 0 011 1v4a1 1 0 01-1 1h-4a1 1 0 01-1-1v-1H8V8H6a1 1 0 01-1-1V3a1 1 0 011-1h6a1 1 0 011 1v4a1 1 0 01-1 1h-2v3h3v-1a1 1 0 011-1h4a1 1 0 011 1v4a1 1 0 01-1 1h-4a1 1 0 01-1-1v-1h-3v5z\"\n fill=\"#000\"\n stroke=\"none\"\n strokeWidth={1}\n fillRule=\"evenodd\"\n />\n </svg>\n );\n};\n\nexport default SvgReferenceAttribute;\n","import React from 'react';\n\nconst SvgSimpleAttribute: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={24} height={24} viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <rect\n fill=\"#000\"\n x={9}\n y={9}\n width={6}\n height={6}\n rx={1}\n stroke=\"none\"\n strokeWidth={1}\n fillRule=\"evenodd\"\n />\n </svg>\n );\n};\n\nexport default SvgSimpleAttribute;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n '& > $marginWrapper:first-child': {\n paddingLeft: '4px'\n }\n },\n listItem: {\n paddingLeft: '1px',\n paddingTop: '2px',\n paddingBottom: '2px',\n transition: 'none',\n '&:hover': {\n '& $itemAfter': {\n background: 'linear-gradient(to right, rgba(235, 235, 235, 0.2), rgba(235, 235, 235, 1) 100%)'\n }\n },\n '&$listItemFocus': {\n '& $itemAfter': {\n background: 'linear-gradient(to right, rgba(219, 219, 219, 0.2), rgba(219, 219, 219, 1) 100%)'\n }\n },\n '&:focus': {\n outline: 'none'\n }\n },\n listItemFocus: {},\n icon: {\n opacity: 0.29,\n width: '16px',\n height: '16px',\n flexShrink: 0,\n marginRight: '6px',\n marginLeft: '8px'\n },\n recommendedIcon: {\n width: '18px',\n height: '18px',\n marginRight: '5px',\n marginLeft: '7px',\n flexShrink: 0\n },\n logoIcon: {\n width: '18px',\n height: '18px',\n flexShrink: 0,\n marginRight: '4px'\n },\n itemAfter: {\n position: 'absolute',\n right: 0,\n top: 0,\n width: '40px',\n height: '100%',\n pointerEvents: 'none',\n background: 'linear-gradient(to right, rgba(255, 255, 255, 0.2), #fff 100%)'\n },\n itemText: {\n padding: '0',\n margin: 0,\n '& span': {\n fontSize: '0.8125rem',\n letterSpacing: 'normal',\n whiteSpace: 'nowrap'\n }\n },\n checkbox: {\n opacity: 0.34,\n padding: 0,\n marginLeft: '14px',\n '&$checked': {\n opacity: 1,\n background: 'none'\n }\n },\n checked: {},\n marginWrapper: {\n display: 'flex',\n alignItems: 'center'\n },\n defaultCursor: {\n cursor: 'default'\n },\n itemTooltip: {\n margin: '4px 0'\n },\n marginText: {\n marginLeft: '21px'\n },\n itemTextWrapper: {\n display: 'flex',\n alignItems: 'center'\n }\n});\n","import React from 'react';\n\nimport {DataTypes, AttributeType} from '@reltio/mdm-sdk';\nimport NestedAttrIcon from '../../icons/NestedAttribute';\nimport ReferenceAttrIcon from '../../icons/ReferenceAttribute';\nimport SimpleAttrIcon from '../../icons/SimpleAttribute';\nimport {useStyles} from './styles';\n\nconst getIconForAttrType = (attrType: AttributeType) => {\n switch (attrType.type) {\n case DataTypes.TYPE_IMAGE:\n case DataTypes.TYPE_NESTED:\n return NestedAttrIcon;\n case DataTypes.TYPE_REFERENCE:\n return ReferenceAttrIcon;\n default:\n return SimpleAttrIcon;\n }\n};\n\ntype Props = {\n attrType?: AttributeType;\n};\n\nconst AttrTypeIcon = ({attrType = {} as AttributeType}: Props) => {\n const styles = useStyles();\n const Icon = getIconForAttrType(attrType);\n return <Icon className={styles.icon} />;\n};\n\nexport default AttrTypeIcon;\n","import React from 'react';\n\nconst SvgRecommended: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={13} height={18} viewBox=\"0 0 13 18\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <g transform=\"translate(-3 -1)\" stroke=\"none\" strokeWidth={1} fill=\"none\" fillRule=\"evenodd\">\n <path fill=\"#FF4081\" d=\"M5.833 10h3.75v6.667l-3.75 1.666z\" />\n <path fill=\"#CE0C4E\" d=\"M13.333 10v8.333l-3.75-1.666V10z\" />\n <circle fill=\"#FFC058\" cx={9.583} cy={7.917} r={6.25} />\n <circle fill=\"#FFCD7B\" cx={9.583} cy={7.917} r={5.417} />\n <path fill=\"#FFFBB5\" d=\"M8.333 11.667L5 8.462l.933-.898 2.4 2.308L13.4 5l.933.897z\" />\n </g>\n </svg>\n );\n};\n\nexport default SvgRecommended;\n","import React, {memo} from 'react';\n\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\nimport {AttributeType} from '@reltio/mdm-sdk';\nimport ListItemText from '@mui/material/ListItemText';\nimport Checkbox from '@mui/material/Checkbox';\nimport MenuItem, {MenuItemProps} from '@mui/material/MenuItem';\nimport ExpandedValueTooltip from '../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {isNested} from '@reltio/mdm-sdk';\nimport withTooltip from '../../HOCs/withTooltip/withTooltip';\nimport RequiredMark from '../RequiredMark/RequiredMark';\nimport {noop} from '../../core';\nimport AttrTypeIcon from './AttrTypeIcon';\nimport Marginator from '../Marginator/Marginator';\nimport RecommendedIcon from '../../icons/Recommended';\nimport {useStyles} from './styles';\n\nexport const RecommendedIconWithTooltip = withTooltip(RecommendedIcon);\n\ntype Data = {\n attrType?: AttributeType;\n};\ntype Props = {\n data: Data;\n checked: boolean;\n label: React.ReactNode;\n labelInText?: string;\n level?: number;\n isFocused?: boolean;\n isRequired?: boolean;\n hideIcon?: boolean;\n hideCheckBox?: boolean;\n notSelectable?: boolean;\n disableHorizontalScrollbar?: boolean;\n onClick?: (data: Data, checked: boolean, groupId: string) => void;\n subItemMargin?: number;\n groupId?: string;\n style?: MenuItemProps['style'];\n LogoIcon?: React.ElementType;\n className?: string;\n disableNonSelectable?: boolean;\n disableGutters?: boolean;\n};\n\nconst AttributeListItem = ({\n groupId,\n data,\n checked = false,\n isFocused = false,\n isRequired = false,\n label,\n labelInText,\n level,\n onClick = noop,\n hideCheckBox = false,\n hideIcon = false,\n notSelectable = false,\n disableHorizontalScrollbar = false,\n style = {},\n subItemMargin = 20,\n LogoIcon,\n className,\n disableNonSelectable,\n disableGutters\n}: Props) => {\n const styles = useStyles();\n const {attrType} = data || {};\n\n const isButton = (!hideCheckBox || !isNested(attrType)) && !notSelectable;\n const handleItemClick = () => onClick(data, !checked, groupId);\n const showLogoIcon = !!LogoIcon;\n\n const renderIcon = (attrType: AttributeType): JSX.Element =>\n groupId === 'recommended' ? (\n <RecommendedIconWithTooltip\n className={styles.recommendedIcon}\n tooltipTitle={i18n.text('Recommended')}\n showForDisabled={true}\n />\n ) : (\n <AttrTypeIcon attrType={attrType} />\n );\n\n return (\n <ExpandedValueTooltip value={labelInText || label} className={styles.itemTooltip} placement=\"bottom-end\">\n <MenuItem\n className={classnames(\n styles.container,\n styles.listItem,\n {[styles.defaultCursor]: !isButton},\n className\n )}\n onClick={isButton ? handleItemClick : undefined}\n style={style}\n dense\n disabled={disableNonSelectable && notSelectable}\n classes={{\n focusVisible: styles.listItemFocus,\n selected: styles.listItemFocus\n }}\n selected={isFocused}\n tabIndex={-1}\n disableGutters={disableGutters}\n >\n {!hideCheckBox && (\n <Checkbox\n checked={checked}\n disableRipple\n disabled={!isButton}\n className={classnames(styles.checkbox, {[styles.checked]: checked})}\n tabIndex={-1}\n />\n )}\n <Marginator margin={subItemMargin} level={level} className={styles.marginWrapper}>\n <>\n {!hideIcon && renderIcon(attrType)}\n <div className={classnames(styles.itemTextWrapper, {[styles.marginText]: hideIcon})}>\n {showLogoIcon && <LogoIcon className={styles.logoIcon} />}\n <ListItemText\n primary={\n <>\n {label}\n {isRequired && <RequiredMark />}\n </>\n }\n className={styles.itemText}\n />\n </div>\n </>\n </Marginator>\n {isButton && disableHorizontalScrollbar && <div className={styles.itemAfter} />}\n </MenuItem>\n </ExpandedValueTooltip>\n );\n};\n\nexport default memo(AttributeListItem);\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({\n toolbar: {\n minHeight: '48px',\n padding: '8px 24px',\n lineHeight: '28px'\n },\n title: {\n fontSize: '18px',\n minWidth: '20px',\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 {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 {makeStyles} from '@mui/styles';\n\nexport const useMenuStyles = makeStyles((theme) => ({\n addLabel: {\n display: 'flex',\n padding: '0 7px',\n height: '35px',\n alignItems: 'center',\n fontSize: '13px',\n fontWeight: '500',\n color: theme.palette.primary.main,\n cursor: 'pointer',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n borderTop: 'solid 1px rgba(0, 0, 0, 0.14)',\n backgroundColor: 'rgba(0, 0, 0, 0.03)'\n },\n addIcon: {\n height: '18px',\n width: '18px',\n padding: '0 9px'\n }\n}));\n\nexport const useSingleValueStyles = makeStyles({\n singleValue: {\n fontSize: '14px',\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n marginTop: '17px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {prop} from 'ramda';\nimport AddIcon from '@mui/icons-material/Add';\nimport {useMenuStyles} from './styles';\nimport MenuWithPopper from '../../commonReactSelectComponents/MenuWithPopper';\n\nconst Menu = (props) => {\n const {\n selectProps: {onCreate, createLabel, inputValue, components},\n children\n } = props;\n\n const styles = useMenuStyles();\n return (\n <MenuWithPopper {...props}>\n {children}\n {createLabel && !prop('Group', components) && (\n <span className={styles.addLabel} onClick={() => onCreate(inputValue)}>\n <AddIcon className={styles.addIcon} />\n {createLabel}\n </span>\n )}\n </MenuWithPopper>\n );\n};\n\nMenu.propTypes = {\n children: PropTypes.element.isRequired,\n selectProps: PropTypes.object.isRequired\n};\n\nexport default Menu;\n","import Typography from '@mui/material/Typography';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport {useSingleValueStyles} from './styles';\n\nexport default function SingleValue(props) {\n const {\n selectProps: {menuIsOpen},\n innerProps,\n children\n } = props;\n const styles = useSingleValueStyles();\n\n return (\n !menuIsOpen && (\n <Typography className={styles.singleValue} {...innerProps}>\n {children}\n </Typography>\n )\n );\n}\n\nSingleValue.propTypes = {\n children: PropTypes.node,\n innerProps: PropTypes.object\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n control: {\n height: 'auto'\n },\n dropdownIndicator: {\n boxSizing: 'content-box',\n transition: 'transform .15s ease',\n padding: (props) => `${(props.height - 24) / 2}px 12px`,\n cursor: 'pointer',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n valueContainer: {\n marginLeft: '16px',\n width: 0\n },\n formControl: {\n margin: 0\n },\n filledInputRoot: {\n backgroundColor: 'rgba(0, 0, 0, 0.03)',\n '&:hover': {\n backgroundColor: 'rgba(0, 0, 0, 0.03)'\n },\n '&.focused': {\n backgroundColor: 'rgba(0, 0, 0, 0.03)'\n }\n },\n filledInputUnderline: {\n '&:before': {\n display: 'none'\n }\n },\n inputLabel: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '14px',\n paddingLeft: '4px',\n '&.shrink': {\n paddingLeft: '4px'\n }\n }\n});\n\nexport const customStyles = {\n menu: (baseStyles) => ({\n ...baseStyles,\n borderRadius: '0 0 4px 4px',\n backgroundColor: '#FFFFFFFF',\n boxShadow: '0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2)',\n margin: 0\n }),\n menuList: (baseStyles) => ({\n ...baseStyles,\n maxHeight: '208px',\n padding: '8px 0'\n }),\n group: (baseStyles) => ({\n ...baseStyles,\n padding: '0 0 8px 0'\n }),\n input: (baseStyles) => ({\n ...baseStyles,\n height: '16px',\n color: 'rgba(0, 0, 0, 0.87)',\n fontSize: '14px',\n lineHeight: '16px',\n margin: '16px 0 0',\n padding: 0\n }),\n option: (baseStyles) => ({\n ...baseStyles,\n fontSize: '13px',\n lineHeight: '15px',\n height: '32px'\n })\n};\n\nexport const overloadMenuListStyle = {\n menuList: (baseStyles) => ({\n ...baseStyles,\n padding: 0\n })\n};\n\nexport const withoutLabelInputStyle = {\n input: (baseStyles) => ({\n ...baseStyles,\n height: '16px',\n color: 'rgba(0, 0, 0, 0.87)',\n fontSize: '14px',\n lineHeight: '16px',\n margin: 0,\n padding: 0\n })\n};\n","import React, {useRef, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {defaultTo, identity, isEmpty, path, prop} from 'ramda';\nimport DropdownIndicator from '../commonReactSelectComponents/DropdownIndicator';\nimport Menu from './components/Menu';\nimport AsyncSelect from '../ReactSelect/AsyncSelect';\nimport Select from '../ReactSelect/Select';\nimport {EmptyStub} from '../../core';\nimport {isEmptyValue} from '@reltio/mdm-sdk';\nimport {useInputStyles} from '../editors/constants';\nimport SingleValue from './components/SingleValue';\nimport {useStyles, customStyles, overloadMenuListStyle, withoutLabelInputStyle} from './styles';\n\nconst DropDownSelector = ({\n value,\n label,\n createLabel,\n getOptions,\n options,\n height = 46,\n onChange = identity,\n onCreate,\n onClear = identity,\n components,\n textFieldInputRef,\n TextFieldProps,\n classes,\n ...otherProps\n}) => {\n const styles = useStyles({height});\n const underlineStyle = useInputStyles();\n const [open, setOpen] = useState(false);\n const inputRef = useRef(null);\n\n const SelectComponent = getOptions ? AsyncSelect : Select;\n\n const showIndicatorSeparator = prop('ClearIndicator', components)\n ? {}\n : {IndicatorSeparator: EmptyStub, ClearIndicator: EmptyStub};\n\n const handleCreate = onCreate\n ? (value, group) => {\n onCreate(value, group);\n setOpen(false);\n }\n : undefined;\n\n const overloadStylesIfGroup = prop('Group', components) ? overloadMenuListStyle : {};\n const overloadStylesIfNoLabel = isEmpty(label) ? withoutLabelInputStyle : {};\n\n const mergedStyles = {...customStyles, ...overloadStylesIfGroup, ...overloadStylesIfNoLabel};\n const mergedClasses = {...styles, ...classes};\n\n return (\n <SelectComponent\n placeholder=\"\"\n defaultOptions={true}\n {...otherProps}\n value={defaultTo(null, value)}\n loadOptions={getOptions}\n options={options}\n cacheOptions={true}\n onChange={onChange}\n onCreate={handleCreate}\n onClear={onClear}\n createLabel={createLabel}\n classes={mergedClasses}\n styles={mergedStyles}\n components={{\n DropdownIndicator,\n LoadingIndicator: EmptyStub,\n SingleValue,\n Menu,\n ...showIndicatorSeparator,\n ...components\n }}\n menuPlacement=\"auto\"\n TextFieldProps={{\n ...TextFieldProps,\n label,\n variant: 'filled',\n size: 'small',\n classes: {\n ...prop('classes', TextFieldProps),\n root: classnames(styles.formControl, path(['classes', 'root'], TextFieldProps))\n },\n inputProps: {\n ...prop('inputProps', TextFieldProps)\n },\n InputProps: {\n ...prop('InputProps', TextFieldProps),\n classes: {\n ...path(['InputProps', 'classes'], TextFieldProps),\n root: classnames(\n styles.filledInputRoot,\n path(['InputProps', 'classes', 'root'], TextFieldProps)\n ),\n underline: classnames(\n {[underlineStyle.filledInputUnderline]: isEmptyValue(value)},\n path(['InputProps', 'classes', 'underline'], TextFieldProps)\n ),\n focused: classnames('focused', path(['InputProps', 'classes', 'focused'], TextFieldProps))\n }\n },\n InputLabelProps: {\n ...prop('InputLabelProps', TextFieldProps),\n classes: {\n ...path(['InputLabelProps', 'classes'], TextFieldProps),\n root: classnames(\n styles.inputLabel,\n path(['InputLabelProps', 'classes', 'root'], TextFieldProps)\n ),\n shrink: classnames('shrink', path(['InputLabelProps', 'classes', 'shrink'], TextFieldProps))\n },\n shrink: !isEmptyValue(value) ? true : undefined\n },\n ref: textFieldInputRef || inputRef\n }}\n inputRef={textFieldInputRef || inputRef}\n menuIsOpen={open}\n onMenuOpen={() => setOpen(true)}\n onMenuClose={() => setOpen(false)}\n />\n );\n};\n\nexport const DropDownSelectorType = {\n value: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n label: PropTypes.string.isRequired,\n getOptions: PropTypes.func,\n options: PropTypes.array,\n onChange: PropTypes.func,\n onCreate: PropTypes.func,\n onClear: PropTypes.func,\n createLabel: PropTypes.string,\n components: PropTypes.object,\n textFieldInputRef: PropTypes.object,\n TextFieldProps: PropTypes.object,\n height: PropTypes.number,\n classes: PropTypes.object\n};\n\nDropDownSelector.propTypes = DropDownSelectorType;\n\nexport default DropDownSelector;\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, {forwardRef, useCallback, useContext} from 'react';\nimport {ViewIdContext, UrlGeneratorsContext, useMdmUiPath, useMdmAction} from '../../contexts';\n\ntype Props = Omit<React.HTMLProps<HTMLAnchorElement>, 'href' | 'onClick' | 'target'> & {\n value: string;\n screen?: string;\n shouldOpenInNewTab?: boolean;\n};\n\nconst EntityUriLink = forwardRef(\n (\n {value, children, screen, className, shouldOpenInNewTab = false, ...otherProps}: Props,\n ref: React.Ref<HTMLAnchorElement>\n ) => {\n const viewId = useContext(ViewIdContext);\n const {generateEntityUrl} = useContext(UrlGeneratorsContext);\n\n const openEntity = useMdmAction('openEntity');\n const uiPath = useMdmUiPath();\n\n const generateEntityUrlByUri = (uri: string) => generateEntityUrl({uiPath, uri, screen});\n\n const handleClick = useCallback(\n (e: React.MouseEvent<HTMLAnchorElement>) => {\n openEntity({uri: value, viewId, screen});\n e.stopPropagation();\n e.preventDefault();\n },\n [openEntity, screen, value, viewId]\n );\n\n return (\n <a\n ref={ref}\n href={generateEntityUrlByUri(value)}\n onClick={shouldOpenInNewTab ? undefined : handleClick}\n target={shouldOpenInNewTab ? '_blank' : '_self'}\n className={className}\n {...otherProps}\n >\n {children}\n </a>\n );\n }\n);\n\nEntityUriLink.displayName = 'EntityUriLink';\n\nexport default EntityUriLink;\n","import AsyncSelect from 'react-select/async';\nimport withMuiSkin from './withMuiSkin';\n\nexport default withMuiSkin(AsyncSelect);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n mark: {\n color: 'red'\n }\n});\n","import React from 'react';\nimport {useStyles} from './styles';\n\nconst RequiredMark = () => {\n const styles = useStyles();\n\n return <span className={styles.mark}>*</span>;\n};\n\nexport default RequiredMark;\n","import {makeStyles} from '@mui/styles';\n\nconst styles = makeStyles({\n value: {\n color: 'rgba(0, 0, 0, 0.87)'\n },\n placeholder: {\n color: 'rgba(0, 0, 0, 0.38)',\n fontSize: '14px !important'\n }\n});\n\nexport default styles;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Typography from '@mui/material/Typography';\n\nimport useStyles from './styles';\n\nconst DropDownValue = ({selectProps: {menuIsOpen}, data: {label}}) => {\n const styles = useStyles();\n return (\n !menuIsOpen && (\n <Typography variant=\"body2\" classes={{root: styles.value}}>\n {label}\n </Typography>\n )\n );\n};\n\nDropDownValue.propTypes = {\n selectProps: PropTypes.shape({\n menuIsOpen: PropTypes.bool\n }),\n data: PropTypes.shape({\n label: PropTypes.string\n })\n};\n\nexport default DropDownValue;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Typography from '@mui/material/Typography';\n\nimport useStyles from './styles';\n\nconst DropDownPlaceholder = (props) => {\n const styles = useStyles();\n const {innerProps = {}, children} = props;\n\n return (\n <Typography className={styles.placeholder} {...innerProps}>\n {children}\n </Typography>\n );\n};\n\nDropDownPlaceholder.propTypes = {\n children: PropTypes.node,\n innerProps: PropTypes.object,\n selectProps: PropTypes.object.isRequired\n};\n\nexport default DropDownPlaceholder;\n","import React, {memo} from 'react';\n\nimport DropDownSelector from '../DropDownSelector/DropDownSelector';\nimport DropDownValue from './DropDownValue';\nimport DropDownPlaceholder from './DropDownPlaceholder';\n\nconst components = {\n SingleValue: DropDownValue,\n Placeholder: DropDownPlaceholder\n};\n\nconst SimpleDropDownSelector = ({...otherProps}) => <DropDownSelector components={components} {...otherProps} />;\n\nexport default memo(SimpleDropDownSelector);\n","import React from 'react';\n\nconst Spacer = () => <div style={{flex: 1}} />;\n\nexport default Spacer;\n","import React from 'react';\nimport {generateEntityUrlForOldMode, generatePivotingUrlForOldMode, generateTagUrlForOldMode} from '@reltio/mdm-sdk';\n\ntype GenerateEntityUrl = (params: {uiPath: string; uri: string; screen?: string}) => string;\ntype GeneratePivotingUrl = (params: {uiPath: string; uri: string; value: string}) => string;\ntype GenerateTagUrl = (params: {uiPath: string; tag: string; entityUri: string}) => string;\n\ntype UrlGenerators = {\n generateEntityUrl?: GenerateEntityUrl;\n generatePivotingUrl?: GeneratePivotingUrl;\n generateTagUrl?: GenerateTagUrl;\n};\n\nexport const UrlGeneratorsContext = React.createContext<UrlGenerators>({\n generateEntityUrl: generateEntityUrlForOldMode,\n generatePivotingUrl: generatePivotingUrlForOldMode,\n generateTagUrl: generateTagUrlForOldMode\n});\n\nUrlGeneratorsContext.displayName = 'UrlGeneratorsContext';\n","import React from 'react';\n\nexport const ViewIdContext = React.createContext<string>(null);\n\nViewIdContext.displayName = 'ViewIdContext';\n","import React from 'react';\n\nconst SvgNestedAttribute: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={24} height={24} viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M14 11v-1a1 1 0 011-1h4a1 1 0 011 1v4a1 1 0 01-1 1h-4a1 1 0 01-1-1v-1h-3v1a1 1 0 01-1 1H6a1 1 0 01-1-1v-4a1 1 0 011-1h4a1 1 0 011 1v1h3z\"\n fill=\"#000\"\n stroke=\"none\"\n strokeWidth={1}\n fillRule=\"evenodd\"\n />\n </svg>\n );\n};\n\nexport default SvgNestedAttribute;\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\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","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 {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, 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.warn(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 {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.warn(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)])\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 {\n ActivityFilter,\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?: ActivityFilter;\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 {\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 {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.warn(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.warn(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","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} = config;\n const styles = useStyles();\n\n const max = config.max || DEFAULT_ROWS_PER_PAGE;\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 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 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} = config;\n const max = config.max || DEFAULT_ROWS_PER_PAGE;\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 {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 {\n getEntitiesStats,\n getDateRangeByDatePeriod,\n DatePeriod,\n StatsEventData,\n TimestampedStatsEventData\n} from '@reltio/mdm-sdk';\nimport {PeriodStep} from '../types/PeriodStep';\nimport {StatsData} from '../types/StatsData';\nimport {getDashboardDateRangeByValue} from '../services/period';\nimport {YAxisProps} 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): YAxisProps['domain'] => {\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 i18n from 'ui-i18n';\nimport {always, cond, equals} from 'ramda';\nimport {TooltipProps} from 'recharts';\nimport {PeriodStep} from '../../../types/PeriodStep';\nimport {getStatsEventName} from '../../../services/stats';\n\nimport {useStyles} from './styles';\n\ntype Props = TooltipProps<number, string> & {\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 i18n from 'ui-i18n';\nimport {LegendProps} from 'recharts';\nimport Tooltip from '@mui/material/Tooltip';\nimport {getStatsEventName} from '../../../services/stats';\n\nimport {useStyles} from './styles';\n\ntype Props = Omit<LegendProps, 'onClick'> & {\n onClick: (event: string) => void;\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 {append, ifElse, includes, pluck, without} from 'ramda';\nimport {CartesianGrid, Legend, Line, LineChart, Tooltip, XAxis, YAxis} from 'recharts';\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: string) => {\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: Omit<CartesianGridProps, 'ref'>;\n tooltip: TooltipProps<number, string>;\n line: Omit<LineProps, 'ref'>;\n legend: Omit<LegendProps, 'ref'>;\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: (value) => formatNumberAsMetric(value),\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.warn(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.warn(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.warn(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, useCallback, 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\nconst tasksCategories = {\n [WorkflowTasksCategories.MY]: i18n.text('My tasks'),\n [WorkflowTasksCategories.TEAM]: i18n.text('Team tasks')\n};\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\n const handleUpdateTaskCategory = useCallback((category: WorkflowTasksCategories) => {\n setPage(0);\n setTasksCategory(category);\n }, []);\n\n const menuItems = useMemo(\n () =>\n Object.keys(tasksCategories).map((category: WorkflowTasksCategories) => ({\n text: tasksCategories[category],\n onClick: () => handleUpdateTaskCategory(category)\n })),\n [handleUpdateTaskCategory]\n );\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 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","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 {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.warn(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","/**\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","width","height","viewBox","xmlns","fill","stroke","strokeWidth","fillRule","x","y","rx","useStyles","makeStyles","container","paddingLeft","listItem","paddingTop","paddingBottom","transition","background","outline","listItemFocus","icon","opacity","marginRight","marginLeft","recommendedIcon","logoIcon","itemAfter","position","right","top","pointerEvents","itemText","padding","margin","fontSize","letterSpacing","whiteSpace","checkbox","checked","marginWrapper","defaultCursor","cursor","itemTooltip","marginText","itemTextWrapper","attrType","Icon","type","DataTypes","NestedAttrIcon","ReferenceAttrIcon","SimpleAttrIcon","getIconForAttrType","RecommendedIconWithTooltip","withTooltip","transform","cx","cy","r","memo","groupId","data","isFocused","isRequired","label","labelInText","level","onClick","noop","hideCheckBox","hideIcon","notSelectable","disableHorizontalScrollbar","style","subItemMargin","LogoIcon","disableNonSelectable","disableGutters","isButton","isNested","showLogoIcon","ExpandedValueTooltip","value","placement","MenuItem","classnames","undefined","dense","disabled","focusVisible","selected","tabIndex","Checkbox","disableRipple","Marginator","tooltipTitle","i18n","showForDisabled","renderIcon","ListItemText","primary","RequiredMark","contextSelector","CellRenderer","withContext","TableContext","pagination","justifyContent","borderTop","boxShadow","boxSizing","overflowY","containerType","caption","lineHeight","displayedRows","selectRoot","select","textAlign","actions","BasicTablePagination","count","rowsPerPageOptions","page","onChangePage","rowsPerPage","onChangeRowsPerPage","basicTableRef","labelRowsPerPage","resetScrollbarPosition","useCallback","pathOr","identity","handleChangePage","handleChangeRowsPerPage","TablePagination","selectLabel","input","backIconButtonProps","size","nextIconButtonProps","component","labelDisplayedRows","from","to","fromRow","toRow","countRows","onPageChange","pipe","nthArg","onRowsPerPageChange","getValue","displayName","toolbar","minHeight","title","fontWeight","overflow","textOverflow","children","otherProps","Toolbar","Typography","variant","collapseButton","expandLess","isOpen","buttonProps","ExpandMore","iconClassName","tooltipProps","SmallIconButton","bar","backgroundColor","secondary","main","borderRadius","left","widthIsNumber","is","Number","maxWidth","getBarColorWidth","buttonRoot","alpha","paper","menuItem","menuText","text","MenuItemWithTooltip","MenuItemRenderer","forwardRef","item","onMenuClose","tooltip","id","selectable","e","DropDownMenuButton","menuId","buttonComponent","Button","buttonContent","menuItems","popoverProps","onMenuOpen","DefaultMenuItemRenderer","ButtonComponent","buttonRef","useRef","setIsOpen","useState","useDidUpdateEffect","handleToggle","stopPropagation","open","Menu","autoFocus","anchorEl","current","onClose","anchorOrigin","vertical","horizontal","transformOrigin","elevation","MenuListProps","autoFocusItem","map","index","key","useMenuStyles","addLabel","addIcon","useSingleValueStyles","singleValue","selectProps","onCreate","createLabel","inputValue","components","MenuWithPopper","prop","Add","propTypes","PropTypes","SingleValue","menuIsOpen","innerProps","control","dropdownIndicator","valueContainer","formControl","filledInputRoot","filledInputUnderline","inputLabel","customStyles","menu","baseStyles","menuList","maxHeight","group","option","overloadMenuListStyle","withoutLabelInputStyle","DropDownSelector","getOptions","options","onChange","onClear","textFieldInputRef","TextFieldProps","underlineStyle","useInputStyles","setOpen","inputRef","SelectComponent","AsyncSelect","Select","showIndicatorSeparator","IndicatorSeparator","EmptyStub","ClearIndicator","handleCreate","overloadStylesIfGroup","overloadStylesIfNoLabel","isEmpty","mergedStyles","mergedClasses","placeholder","defaultOptions","defaultTo","loadOptions","cacheOptions","DropdownIndicator","LoadingIndicator","menuPlacement","path","inputProps","InputProps","underline","isEmptyValue","focused","InputLabelProps","shrink","DropDownSelectorType","absoluteImagePath","useMdmAbsoluteImagePath","storagePath","str","endsWith","EntityUriLink","screen","shouldOpenInNewTab","viewId","useContext","ViewIdContext","generateEntityUrl","UrlGeneratorsContext","openEntity","useMdmAction","uiPath","useMdmUiPath","handleClick","uri","preventDefault","href","target","withMuiSkin","mark","DropDownValue","DropDownPlaceholder","Placeholder","flex","React","generateEntityUrlForOldMode","generatePivotingUrl","generatePivotingUrlForOldMode","generateTagUrl","generateTagUrlForOldMode","loader","LinearProgress","menuItemTitle","openIcon","items","setAnchorEl","isMenuOpen","Boolean","handleMenuClose","handleItemClick","IconButton","currentTarget","MoreVert","filter","ListItemIcon","content","headCell","headLabel","entityLabel","textDecoration","headCellData","DefaultHeadCellRenderer","rowValue","entity","getLabel","getEntityUriForLink","tableContainer","flexDirection","cellBorder","borderLeft","borderRight","headData","resizable","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","EntityLabelRenderer","initialWidth","tableClasses","BasicTable","columnsData","rowsData","headRowHeight","getRowCellHeight","defaultColumnWidth","defaultColumnMinWidth","_extends","Object","assign","i","arguments","length","source","prototype","hasOwnProperty","call","apply","this","maskType","maskUnits","mask","fillOpacity","clipRule","mixBlendMode","x1","y1","x2","y2","gradientUnits","stopColor","stopOpacity","offset","filterUnits","colorInterpolationFilters","floodOpacity","result","in","values","dy","stdDeviation","mode","in2","noDataContainer","marginBottom","errorContainer","errorIcon","refreshButton","refreshIcon","onRefresh","message","startIcon","Replay","viewContent","toolbarRoot","visibility","dragIcon","zIndex","loadingState","EmptyPlaceholder","BasicViewContent","refreshMode","refreshRate","handleWidth","handleHeight","RequestStates","ErrorBoundary","error","DashboardLinearLoader","view","DashboardViewIdContext","BasicView","useFacetRequest","filters","facetFilters","attributeUri","pageSize","orderType","setData","requestState","setRequestState","searchFilters","SearchFiltersContext","facetAndSpecialFilters","useMemo","convertSearchFilterToDashboardConfigFilter","concat","metadata","useSelector","mdmModule","globalFilter","activityFilter","attributePresentations","hasAttrPresentation","searchByOv","showOthers","onError","console","warn","loadData","getFiltersForFacet","fieldName","getFacetFieldName","getSpecialAttrTypeByFieldName","findAttributeTypeByUri","getData","requestFacets","andThen","resolveFacetLabels","unless","always","localizeFacetValues","when","requestOtherValues","attribute","otherwise","refreshAction","useEffect","state","reload","useFilteredEntitiesRequest","max","total","setTotal","allFilters","Promise","all","getFilteredEntities","getTotals","then","results","entities","catch","query","buildQuery","body","pageNo","getFacets","response","entries","sortWith","descend","ascend","getFacetData","resolveLookups","curry","lookupCode","lookupsToResolve","codeValue","resolveLookupsList","codes","flatMap","buildLookupRecord","code","find","buildFacetOthersFilters","createNotEqualFilter","OTHER_FACET_GROUP","otherFilters","configFilterToSearchFilter","searchOptions","resolveRoleLabel","roleName","getRoleLabel","facet","localizedValue","isLookupAttrType","getAttrTypeLookupCode","isRoleAttrType","isDateType","evolve","parseTimestamp","formatDataTypeValue","dataTypeDefinition","getAttrDataTypeDefinition","isEntityTypeUri","attributeUriToSearchUri","getFacetEntityTypeUri","ifElse","getEntityUriFromAttributeUri","entityTypeUri","hasEntityTypeFilter","some","isEntityTypeFilter","createEntityTypeFilter","getFiltersForFacetItem","reject","propEq","createFacetItemFilter","facetFiltersToSearchState","entityType","isSomeEntityTypeFilter","facets","convertFilterToFacetState","includes","__","FilterOptions","wrapInArray","buildFilterQueryString","addGlobalFilterToQuery","push","join","searchFilter","searchUriToAttrUri","assoc","mapFilterValue","useSavedSearchesRequest","onRequestFinished","countResults","restOptions","async","getSavedSearches","totalRequests","search","getTotalsForQuery","replacePlaceholdersInQuery","searchesWithCount","promiseAllSettled","reduce","searchesWithTotal","searchIndex","status","reason","assocPath","ROWS_PER_PAGE_OPTIONS","DEFAULT_ROWS_PER_PAGE","getRowsPerPageOptions","defaultRowsPerPage","sort","subtract","rightMenu","flexGrow","gap","updatedChip","onToggleFullscreen","isUpdated","isFullscreen","onRemove","Fullscreen","FullscreenExit","HighlightOff","FacetViewHeader","Chip","DashboardPopupMenu","savedSearchDataToSearchState","uiState","version","currentSavedSearchUri","curSavedSearchUri","activityLogFilter","borderBottom","categorySelector","textTransform","inboxContent","config","setPage","setRowsPerPage","chartData","savedSearchDataToChartData","dispatch","useDispatch","onSSClick","ui","useReloadFacet","LayoutItemView","LayoutItemContent","TableWithBars","headers","showValues","onItemClick","chartType","ChartTypes","ChartsFactory","Math","EntityTable","button","DashboardDateRangeSelector","editorLabel","onMenuToggle","endIcon","ArrowDropDown","withDateRangeSelector","PeriodStep","getStepForPeriod","period","getDateRangeByDatePeriod","getDashboardDateRangeByValue","startTime","endTime","moment","DAY","HOUR","currentDate","DateRangeValue","valueOf","getDateRangeByValue","getValuesDateRange","Date","StatsEvents","types","getStatsEventById","event","getStatsEventName","propOr","getStatsEventColor","requestStats","getStats","getEntitiesStats","allTypes","chain","processStats","pluck","stats","getEvents","events","presentTypes","periodFrame","term","prepend","append","isEventPresent","resolve","getEventsData","groupEventsData","step","eventData","groupBy","startOf","toPairs","date","sum","interpolateEventsData","head","acc","lastTerm","last","nextTerm","add","interpolatedItems","calibrateStatsData","statsData","getStepValueFormat","cond","equals","payload","textAnchor","tooltipWrapper","tooltipItemColor","legend","flexWrap","legendItem","legendItemColor","legendItemValue","selectedItems","isSelected","border","selectedEvents","setSelectedEvents","tooltipEvent","setTooltipEvent","cartesianGrid","xAxis","yAxis","line","dataKey","tick","angle","allowDuplicatedCategory","tickFormatter","formatNumberAsMetric","strokeDasharray","strokeOpacity","wrapperStyle","domain","tickCount","counts","min","abs","getChartDomain","LineChart","CartesianGrid","XAxis","YAxis","Line","dot","activeDot","onMouseEnter","onMouseLeave","Legend","without","Tooltip","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","getEntities","isEntityUri","getEntitiesByUris","getChangeRequests","getDataChangeRequest","requests","getTaskObjectsData","converge","extractObjectsFromChangeRequest","objectsInfo","changes","getChange","getUri","keys","enrichTasksWithObjectsData","changeRequests","tasks","isNil","task","objects","enrichTaskWithEntity","changeRequest","enrichTaskWithDCRObjects","requestWorkflowTasks","tasksCategory","workflowPath","environment","tenant","assignee","getTasks","isOverdueTask","dueDate","now","taskItem","taskInfo","overflowWrap","titleContainer","taskTitle","taskDetail","taskDetailTitle","taskDueDate","flag","verticalAlign","overdue","hidden","EntityLink","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","tasksCategories","setTasksCategory","handleUpdateTaskCategory","category","requestParams","pick","userName","useWorkflowTasksRequest","wrapView","withDragHandle","WrappedActivitiesViewFacet","exportTypes","setFilter","users","activities","dateRange","DateRangeTypes","getActivities","useActivitiesLoader","useActivitiesRequest","handleFilterChange","ActivityLogFilter","ActivityLog","WrappedCustomActionViewFacet","CustomActionViewFacet","WrappedDashboardFacet","DashboardFacet","WrappedEntitiesByTypeViewFacet","EntitiesByTypeViewFacet","WrappedFilteredSavedSearchesFacet","FilteredSavedSearchesFacet","WrappedFilteredEntitiesViewFacet","FilteredEntitiesViewFacet","WrappedNotificationInboxFacet","NotificationInboxFacet","WrappedProfileStatsFacet","ProfileStatsFacet","ViewsFactory","ViewTypes","DashboardViewTypes","getComponent","ActivitiesViewFacet","getChartType","typeConverters","componentWillMount","constructor","getDerivedStateFromProps","setState","componentWillReceiveProps","nextProps","prevState","bind","componentWillUpdate","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","polyfill","Component","isReactComponent","Error","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","componentName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","__suppressDeprecationWarning"],"sourceRoot":""}
|