@reltio/remotes 1.4.1276 → 1.4.1277
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/2890.js +1 -1
- package/2890.js.map +1 -1
- package/8337.js +1 -1
- package/8337.js.map +1 -1
- package/9584.js +1 -1
- package/9584.js.map +1 -1
- package/package.json +1 -1
package/8337.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"8337.js","mappings":"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","sources":["webpack://@reltio/remotes/../../node_modules/@material-ui/core/esm/Drawer/Drawer.js","webpack://@reltio/remotes/../../node_modules/@material-ui/core/esm/Slide/Slide.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/AddCircle.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/Info.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/esm/ArrowDropDown.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/esm/utils/createSvgIcon.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/ConnectionEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/ConnectionEditor/ConnectionEditor.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/EmptySearchResult/NoData.tsx","webpack://@reltio/remotes/../components/src/components/EntityUriLink/EntityUriLink.tsx","webpack://@reltio/remotes/../components/src/components/HierarchicalAttributeTooltip/styles.ts","webpack://@reltio/remotes/../components/src/components/HierarchicalAttributeTooltip/HierarchicalAttributeTooltip.tsx","webpack://@reltio/remotes/../components/src/components/LoadingSpinner/SpinnerSmall.gif.tsx","webpack://@reltio/remotes/../components/src/components/LoadingSpinner/LoadingSpinner.tsx","webpack://@reltio/remotes/../components/src/components/ReactSelect/AsyncSelect.js","webpack://@reltio/remotes/../components/src/components/RelationTypesSelector/RelationTypesSelector.tsx","webpack://@reltio/remotes/../components/src/components/RequiredMark/styles.js","webpack://@reltio/remotes/../components/src/components/RequiredMark/RequiredMark.tsx","webpack://@reltio/remotes/../components/src/components/ScrollableTabs/styles.ts","webpack://@reltio/remotes/../components/src/components/ScrollableTabs/ScrollableTabs.tsx","webpack://@reltio/remotes/../components/src/components/SearchInput/WhiteSearchInput.tsx","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/styles.js","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.js","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/ViewMoreToggle/styles.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/ViewMoreToggle.js","webpack://@reltio/remotes/../components/src/components/activityLog/hooks/useProfileActivitiesLoader.ts","webpack://@reltio/remotes/../components/src/contexts/ViewIdContext/index.js","webpack://@reltio/remotes/../components/src/hooks/useEditableConnection.ts","webpack://@reltio/remotes/../components/src/hooks/useRunOnceAfterValueInitialization.js","webpack://@reltio/remotes/../components/src/hooks/useSavedState.ts","webpack://@reltio/remotes/../components/src/icons/NestedAttribute.tsx","webpack://@reltio/remotes/../components/src/components/ClickAwayProvider/ClickAwayProvider.tsx","webpack://@reltio/remotes/../components/src/components/FlipCard/styles.ts","webpack://@reltio/remotes/../components/src/components/FlipCard/FlipCard.tsx","webpack://@reltio/remotes/../components/src/components/SelectionPopup/SelectionPopupPopper/SelectionPopupPopper.tsx","webpack://@reltio/remotes/../components/src/hooks/useWhyDidYouUpdate.js","webpack://@reltio/remotes/../components/src/hooks/useCustomScripts.ts"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport Modal from '../Modal';\nimport Backdrop from '../Backdrop';\nimport withStyles from '../styles/withStyles';\nimport Slide from '../Slide';\nimport Paper from '../Paper';\nimport capitalize from '../utils/capitalize';\nimport { duration } from '../styles/transitions';\nimport useTheme from '../styles/useTheme';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {},\n\n /* Styles applied to the root element if `variant=\"permanent or persistent\"`. */\n docked: {\n flex: '0 0 auto'\n },\n\n /* Styles applied to the `Paper` component. */\n paper: {\n overflowY: 'auto',\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n flex: '1 0 auto',\n zIndex: theme.zIndex.drawer,\n WebkitOverflowScrolling: 'touch',\n // Add iOS momentum scrolling.\n // temporary style\n position: 'fixed',\n top: 0,\n // We disable the focus ring for mouse, touch and keyboard users.\n // At some point, it would be better to keep it for keyboard users.\n // :focus-ring CSS pseudo-class will help.\n outline: 0\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"left\"`. */\n paperAnchorLeft: {\n left: 0,\n right: 'auto'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"right\"`. */\n paperAnchorRight: {\n left: 'auto',\n right: 0\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"top\"`. */\n paperAnchorTop: {\n top: 0,\n left: 0,\n bottom: 'auto',\n right: 0,\n height: 'auto',\n maxHeight: '100%'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"bottom\"`. */\n paperAnchorBottom: {\n top: 'auto',\n left: 0,\n bottom: 0,\n right: 0,\n height: 'auto',\n maxHeight: '100%'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"left\"` and `variant` is not \"temporary\". */\n paperAnchorDockedLeft: {\n borderRight: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"top\"` and `variant` is not \"temporary\". */\n paperAnchorDockedTop: {\n borderBottom: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"right\"` and `variant` is not \"temporary\". */\n paperAnchorDockedRight: {\n borderLeft: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"bottom\"` and `variant` is not \"temporary\". */\n paperAnchorDockedBottom: {\n borderTop: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Modal` component. */\n modal: {}\n };\n};\nvar oppositeDirection = {\n left: 'right',\n right: 'left',\n top: 'down',\n bottom: 'up'\n};\nexport function isHorizontal(anchor) {\n return ['left', 'right'].indexOf(anchor) !== -1;\n}\nexport function getAnchor(theme, anchor) {\n return theme.direction === 'rtl' && isHorizontal(anchor) ? oppositeDirection[anchor] : anchor;\n}\nvar defaultTransitionDuration = {\n enter: duration.enteringScreen,\n exit: duration.leavingScreen\n};\n/**\n * The props of the [Modal](/api/modal/) component are available\n * when `variant=\"temporary\"` is set.\n */\n\nvar Drawer = /*#__PURE__*/React.forwardRef(function Drawer(props, ref) {\n var _props$anchor = props.anchor,\n anchorProp = _props$anchor === void 0 ? 'left' : _props$anchor,\n BackdropProps = props.BackdropProps,\n children = props.children,\n classes = props.classes,\n className = props.className,\n _props$elevation = props.elevation,\n elevation = _props$elevation === void 0 ? 16 : _props$elevation,\n _props$ModalProps = props.ModalProps;\n _props$ModalProps = _props$ModalProps === void 0 ? {} : _props$ModalProps;\n\n var BackdropPropsProp = _props$ModalProps.BackdropProps,\n ModalProps = _objectWithoutProperties(_props$ModalProps, [\"BackdropProps\"]),\n onClose = props.onClose,\n _props$open = props.open,\n open = _props$open === void 0 ? false : _props$open,\n _props$PaperProps = props.PaperProps,\n PaperProps = _props$PaperProps === void 0 ? {} : _props$PaperProps,\n SlideProps = props.SlideProps,\n _props$TransitionComp = props.TransitionComponent,\n TransitionComponent = _props$TransitionComp === void 0 ? Slide : _props$TransitionComp,\n _props$transitionDura = props.transitionDuration,\n transitionDuration = _props$transitionDura === void 0 ? defaultTransitionDuration : _props$transitionDura,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'temporary' : _props$variant,\n other = _objectWithoutProperties(props, [\"anchor\", \"BackdropProps\", \"children\", \"classes\", \"className\", \"elevation\", \"ModalProps\", \"onClose\", \"open\", \"PaperProps\", \"SlideProps\", \"TransitionComponent\", \"transitionDuration\", \"variant\"]);\n\n var theme = useTheme(); // Let's assume that the Drawer will always be rendered on user space.\n // We use this state is order to skip the appear transition during the\n // initial mount of the component.\n\n var mounted = React.useRef(false);\n React.useEffect(function () {\n mounted.current = true;\n }, []);\n var anchor = getAnchor(theme, anchorProp);\n var drawer = /*#__PURE__*/React.createElement(Paper, _extends({\n elevation: variant === 'temporary' ? elevation : 0,\n square: true\n }, PaperProps, {\n className: clsx(classes.paper, classes[\"paperAnchor\".concat(capitalize(anchor))], PaperProps.className, variant !== 'temporary' && classes[\"paperAnchorDocked\".concat(capitalize(anchor))])\n }), children);\n\n if (variant === 'permanent') {\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, classes.docked, className),\n ref: ref\n }, other), drawer);\n }\n\n var slidingDrawer = /*#__PURE__*/React.createElement(TransitionComponent, _extends({\n in: open,\n direction: oppositeDirection[anchor],\n timeout: transitionDuration,\n appear: mounted.current\n }, SlideProps), drawer);\n\n if (variant === 'persistent') {\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, classes.docked, className),\n ref: ref\n }, other), slidingDrawer);\n } // variant === temporary\n\n\n return /*#__PURE__*/React.createElement(Modal, _extends({\n BackdropProps: _extends({}, BackdropProps, BackdropPropsProp, {\n transitionDuration: transitionDuration\n }),\n BackdropComponent: Backdrop,\n className: clsx(classes.root, classes.modal, className),\n open: open,\n onClose: onClose,\n ref: ref\n }, other, ModalProps), slidingDrawer);\n});\nprocess.env.NODE_ENV !== \"production\" ? Drawer.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 /**\n * Side from which the drawer will appear.\n */\n anchor: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),\n\n /**\n * @ignore\n */\n BackdropProps: PropTypes.object,\n\n /**\n * The contents of the drawer.\n */\n children: PropTypes.node,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The elevation of the drawer.\n */\n elevation: PropTypes.number,\n\n /**\n * Props applied to the [`Modal`](/api/modal/) element.\n */\n ModalProps: PropTypes.object,\n\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n */\n onClose: PropTypes.func,\n\n /**\n * If `true`, the drawer is open.\n */\n open: PropTypes.bool,\n\n /**\n * Props applied to the [`Paper`](/api/paper/) element.\n */\n PaperProps: PropTypes.object,\n\n /**\n * Props applied to the [`Slide`](/api/slide/) element.\n */\n SlideProps: PropTypes.object,\n\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['permanent', 'persistent', 'temporary'])\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiDrawer',\n flip: false\n})(Drawer);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport debounce from '../utils/debounce';\nimport { Transition } from 'react-transition-group';\nimport { elementAcceptingRef } from '@material-ui/utils';\nimport useForkRef from '../utils/useForkRef';\nimport useTheme from '../styles/useTheme';\nimport { duration } from '../styles/transitions';\nimport { reflow, getTransitionProps } from '../transitions/utils'; // Translate the node so he can't be seen on the screen.\n// Later, we gonna translate back the node to his original location\n// with `none`.`\n\nfunction getTranslateValue(direction, node) {\n var rect = node.getBoundingClientRect();\n var transform;\n\n if (node.fakeTransform) {\n transform = node.fakeTransform;\n } else {\n var computedStyle = window.getComputedStyle(node);\n transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');\n }\n\n var offsetX = 0;\n var offsetY = 0;\n\n if (transform && transform !== 'none' && typeof transform === 'string') {\n var transformValues = transform.split('(')[1].split(')')[0].split(',');\n offsetX = parseInt(transformValues[4], 10);\n offsetY = parseInt(transformValues[5], 10);\n }\n\n if (direction === 'left') {\n return \"translateX(\".concat(window.innerWidth, \"px) translateX(\").concat(offsetX - rect.left, \"px)\");\n }\n\n if (direction === 'right') {\n return \"translateX(-\".concat(rect.left + rect.width - offsetX, \"px)\");\n }\n\n if (direction === 'up') {\n return \"translateY(\".concat(window.innerHeight, \"px) translateY(\").concat(offsetY - rect.top, \"px)\");\n } // direction === 'down'\n\n\n return \"translateY(-\".concat(rect.top + rect.height - offsetY, \"px)\");\n}\n\nexport function setTranslateValue(direction, node) {\n var transform = getTranslateValue(direction, node);\n\n if (transform) {\n node.style.webkitTransform = transform;\n node.style.transform = transform;\n }\n}\nvar defaultTimeout = {\n enter: duration.enteringScreen,\n exit: duration.leavingScreen\n};\n/**\n * The Slide transition is used by the [Drawer](/components/drawers/) component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\n\nvar Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {\n var children = props.children,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'down' : _props$direction,\n inProp = props.in,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onEntering = props.onEntering,\n onExit = props.onExit,\n onExited = props.onExited,\n onExiting = props.onExiting,\n style = props.style,\n _props$timeout = props.timeout,\n timeout = _props$timeout === void 0 ? defaultTimeout : _props$timeout,\n _props$TransitionComp = props.TransitionComponent,\n TransitionComponent = _props$TransitionComp === void 0 ? Transition : _props$TransitionComp,\n other = _objectWithoutProperties(props, [\"children\", \"direction\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"]);\n\n var theme = useTheme();\n var childrenRef = React.useRef(null);\n /**\n * used in cloneElement(children, { ref: handleRef })\n */\n\n var handleOwnRef = React.useCallback(function (instance) {\n // #StrictMode ready\n childrenRef.current = ReactDOM.findDOMNode(instance);\n }, []);\n var handleRefIntermediary = useForkRef(children.ref, handleOwnRef);\n var handleRef = useForkRef(handleRefIntermediary, ref);\n\n var normalizedTransitionCallback = function normalizedTransitionCallback(callback) {\n return function (isAppearing) {\n if (callback) {\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (isAppearing === undefined) {\n callback(childrenRef.current);\n } else {\n callback(childrenRef.current, isAppearing);\n }\n }\n };\n };\n\n var handleEnter = normalizedTransitionCallback(function (node, isAppearing) {\n setTranslateValue(direction, node);\n reflow(node);\n\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n var handleEntering = normalizedTransitionCallback(function (node, isAppearing) {\n var transitionProps = getTransitionProps({\n timeout: timeout,\n style: style\n }, {\n mode: 'enter'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.easeOut\n }));\n node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.easeOut\n }));\n node.style.webkitTransform = 'none';\n node.style.transform = 'none';\n\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n var handleEntered = normalizedTransitionCallback(onEntered);\n var handleExiting = normalizedTransitionCallback(onExiting);\n var handleExit = normalizedTransitionCallback(function (node) {\n var transitionProps = getTransitionProps({\n timeout: timeout,\n style: style\n }, {\n mode: 'exit'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.sharp\n }));\n node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.sharp\n }));\n setTranslateValue(direction, node);\n\n if (onExit) {\n onExit(node);\n }\n });\n var handleExited = normalizedTransitionCallback(function (node) {\n // No need for transitions when the component is hidden\n node.style.webkitTransition = '';\n node.style.transition = '';\n\n if (onExited) {\n onExited(node);\n }\n });\n var updatePosition = React.useCallback(function () {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current);\n }\n }, [direction]);\n React.useEffect(function () {\n // Skip configuration where the position is screen size invariant.\n if (inProp || direction === 'down' || direction === 'right') {\n return undefined;\n }\n\n var handleResize = debounce(function () {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current);\n }\n });\n window.addEventListener('resize', handleResize);\n return function () {\n handleResize.clear();\n window.removeEventListener('resize', handleResize);\n };\n }, [direction, inProp]);\n React.useEffect(function () {\n if (!inProp) {\n // We need to update the position of the drawer when the direction change and\n // when it's hidden.\n updatePosition();\n }\n }, [inProp, updatePosition]);\n return /*#__PURE__*/React.createElement(TransitionComponent, _extends({\n nodeRef: childrenRef,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n appear: true,\n in: inProp,\n timeout: timeout\n }, other), function (state, childProps) {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n ref: handleRef,\n style: _extends({\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, style, children.props.style)\n }, childProps));\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Slide.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 /**\n * A single child content element.\n */\n children: elementAcceptingRef,\n\n /**\n * Direction the child node will enter from.\n */\n direction: PropTypes.oneOf(['down', 'left', 'right', 'up']),\n\n /**\n * If `true`, show the component; triggers the enter or exit animation.\n */\n in: PropTypes.bool,\n\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n\n /**\n * @ignore\n */\n style: PropTypes.object,\n\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n */\n timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nexport default Slide;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z\"\n}), 'AddCircle');\n\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\"\n}), 'Info');\n\nexports.default = _default;","import React from 'react';\nimport createSvgIcon from './utils/createSvgIcon';\nexport default createSvgIcon(React.createElement(\"path\", {\n d: \"M7 10l5 5 5-5z\"\n}), 'ArrowDropDown');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport SvgIcon from '@material-ui/core/SvgIcon';\nexport default function createSvgIcon(path, displayName) {\n var Component = React.memo(React.forwardRef(function (props, ref) {\n return React.createElement(SvgIcon, _extends({\n ref: ref\n }, props), path);\n }));\n\n if (process.env.NODE_ENV !== 'production') {\n Component.displayName = \"\".concat(displayName, \"Icon\");\n }\n\n Component.muiName = SvgIcon.muiName;\n return Component;\n}","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 '@material-ui/core/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 ListItem, {ListItemProps} from '@material-ui/core/ListItem';\nimport {ListItemText as ListItemText} from '@material-ui/core';\nimport {Checkbox as Checkbox} from '@material-ui/core';\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?: ListItemProps['style'];\n LogoIcon?: React.ElementType;\n className?: string;\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}: 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 // TODO: ListItem needs to be split to ListItem and ListItemButton after material ui releases stable version(https://github.com/mui-org/material-ui/pull/26446). The \"button\" prop will be deprecated.\n return (\n <ExpandedValueTooltip value={labelInText || label} className={styles.itemTooltip} placement=\"bottom-end\">\n <ListItem\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 button={isButton as any}\n classes={{\n focusVisible: styles.listItemFocus,\n selected: styles.listItemFocus\n }}\n selected={isFocused}\n tabIndex={-1}\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 </ListItem>\n </ExpandedValueTooltip>\n );\n};\n\nexport default memo(AttributeListItem);\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n item: {\n marginBottom: '16px'\n },\n dense: {\n marginBottom: 0\n }\n});\n","import {useStyles} from './styles';\nimport {useDidUpdateEffect} from '../../hooks';\n\nimport React, {useCallback, useEffect, useMemo} from 'react';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\n\nimport {\n AttributeItem,\n Directions,\n EditingConnection,\n Entity,\n getActivenessAttributes,\n getSuitableEntityTypeUrisForRelationTypes,\n getDefaultRelationTypeObject,\n getLabel,\n getRelationAttributesList,\n getRelationType,\n isAvailableRelationBetweenEntities,\n ModeTypes,\n TRelationType\n} from '@reltio/mdm-sdk';\nimport AttributesList from '../attributes/editMode/AttributesList';\n\nimport classnames from 'classnames';\nimport {uniq} from 'ramda';\nimport ConnectionRelationTypeSelector from '../ConnectionRelationTypeSelector/ConnectionRelationTypeSelector';\nimport ErrorWrapper from '../ErrorWrapper/ErrorWrapper';\nimport EntitySelector from '../attributes/editMode/EntitySelector/EntitySelector';\n\ntype Props = {\n connection: EditingConnection;\n showEmptyEditors?: boolean;\n onChangeAttribute: (attribute: AttributeItem) => void;\n onAddAttributes: (attributes: AttributeItem[]) => void;\n onRemoveAttribute: (attributes: AttributeItem) => void;\n onChangeRelationType?: (value: {type: string; direction: string}) => void;\n onChangeEntity?: (entity: Entity) => void;\n relatedEntity?: Entity;\n inRelationTypes?: TRelationType[];\n outRelationTypes?: TRelationType[];\n entityErrorMessage?: string;\n};\n\nexport const ConnectionEditor = ({\n connection,\n relatedEntity,\n inRelationTypes = [],\n outRelationTypes = [],\n showEmptyEditors,\n entityErrorMessage,\n onChangeAttribute,\n onRemoveAttribute,\n onAddAttributes,\n onChangeRelationType,\n onChangeEntity\n}: Props) => {\n const styles = useStyles();\n const {relation, entity} = connection;\n const {attributes, uri: relationUri, type: relationTypeUri = '', direction} = relation || {};\n const isRelationTypeSelected = Boolean(relationTypeUri);\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n\n const attributeListEntity = useMemo(\n () =>\n relation && {\n attributes,\n ...getActivenessAttributes(relation)\n },\n [relation, attributes]\n );\n\n const relationAttrTypes = useMemo(() => getRelationAttributesList(metadata, relationTypeUri), [\n relationTypeUri,\n metadata\n ]);\n\n const availableEntityTypeUris = useMemo(() => {\n return isRelationTypeSelected\n ? getSuitableEntityTypeUrisForRelationTypes(direction === Directions.OUT, metadata, [\n getRelationType(metadata, relationTypeUri)\n ])\n : uniq(\n getSuitableEntityTypeUrisForRelationTypes(true, metadata, outRelationTypes).concat(\n getSuitableEntityTypeUrisForRelationTypes(false, metadata, inRelationTypes)\n )\n );\n }, [isRelationTypeSelected, relationTypeUri, metadata, inRelationTypes, outRelationTypes]);\n\n const globalSearchRequestOptions = useSelector((state) =>\n mdmModule.selectors.getGlobalSearchRequestOptions(state, ['ovOnly'])\n );\n\n const selectorCompatibleRelation = useMemo(\n () =>\n relation && {\n relationType: relation.type,\n direction: relation.direction\n },\n [relation]\n );\n\n const selectorCompatibleEntity = useMemo(\n () =>\n entity && {\n entityUri: entity.uri,\n entityType: entity.type,\n entityLabel: getLabel(entity.label)\n },\n [entity]\n );\n\n const availableInRelationTypes = useMemo(\n () =>\n entity && entity.uri\n ? inRelationTypes.filter(isAvailableRelationBetweenEntities(false, entity, relatedEntity, metadata))\n : inRelationTypes,\n [entity, inRelationTypes, relatedEntity, metadata]\n );\n\n const availableOutRelationTypes = useMemo(\n () =>\n entity && entity.uri\n ? outRelationTypes.filter(isAvailableRelationBetweenEntities(true, entity, relatedEntity, metadata))\n : outRelationTypes,\n [entity, outRelationTypes, relatedEntity, metadata]\n );\n\n useEffect(() => {\n // autoselecting relation type on mount\n const {type, direction} = getDefaultRelationTypeObject(inRelationTypes, outRelationTypes) || {};\n\n if (!relationTypeUri && type && onChangeRelationType) {\n onChangeRelationType({type: type.uri, direction});\n }\n }, [relationTypeUri, inRelationTypes, outRelationTypes, onChangeRelationType]);\n\n useDidUpdateEffect(() => {\n // autoselecting relation type on entity change\n const {type, direction} =\n getDefaultRelationTypeObject(availableInRelationTypes, availableOutRelationTypes) || {};\n\n if (!relationTypeUri && type) {\n onChangeRelationType({type: type.uri, direction});\n }\n }, [relationTypeUri, entity, availableInRelationTypes, availableOutRelationTypes, onChangeEntity]);\n\n const handleChangeRelationType = useCallback(\n ({type, direction}: {type: TRelationType; direction: string}) => {\n onChangeRelationType({type: type.uri, direction});\n },\n [onChangeRelationType]\n );\n\n return (\n <>\n {onChangeRelationType && (\n <ConnectionRelationTypeSelector\n className={styles.item}\n relation={selectorCompatibleRelation}\n metadata={metadata}\n inRelationTypes={inRelationTypes}\n outRelationTypes={outRelationTypes}\n onChange={handleChangeRelationType}\n />\n )}\n {onChangeEntity && (\n <ErrorWrapper errorMessage={entityErrorMessage} className={styles.item}>\n <EntitySelector\n key={relationTypeUri}\n className={classnames({[styles.dense]: entityErrorMessage})}\n entity={selectorCompatibleEntity || {}}\n entityTypesUris={availableEntityTypeUris}\n max={20}\n globalSearchRequestOptions={globalSearchRequestOptions}\n mode={ModeTypes.EDITING}\n onChange={onChangeEntity}\n onCreate={undefined}\n metadata={metadata}\n attributeTypesSelectionStrategy={undefined}\n />\n </ErrorWrapper>\n )}\n {relationTypeUri && (\n <AttributesList\n attrTypes={relationAttrTypes}\n entity={attributeListEntity}\n showEmptyEditors={showEmptyEditors}\n mode={ModeTypes.EDITING}\n parentUri={relationUri}\n onAddAttributes={onAddAttributes}\n onChangeAttribute={onChangeAttribute}\n onDeleteAttribute={onRemoveAttribute}\n />\n )}\n </>\n );\n};\n","import {makeStyles} from '@material-ui/core/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: '21px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {prop} from 'ramda';\nimport AddIcon from '@material-ui/icons/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 as Typography} from '@material-ui/core';\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 '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n control: {\n height: 'auto'\n },\n dropdownIndicator: {\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 lineHeight: '16px',\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 margin: 'dense',\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 i18n from 'ui-i18n';\nimport NoMessageComponent from './NoMessageComponent';\n\ntype Props = Omit<React.ComponentPropsWithoutRef<typeof NoMessageComponent>, 'message'>;\n\nexport const NoData = (props: Props) => {\n return <NoMessageComponent message={i18n.text('No data available')} {...props} />;\n};\n\nexport default NoData;\n","import React, {forwardRef, useCallback, useContext} from 'react';\nimport {useSelector, useDispatch} from 'react-redux';\nimport {ViewIdContext} from '../../contexts';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {getEntityLink} from '@reltio/mdm-sdk';\n\ntype Props = {\n className?: string;\n value: string;\n children: React.ReactNode;\n};\n\nconst EntityUriLink = forwardRef(({value, children, className}: Props, ref: React.Ref<HTMLAnchorElement>) => {\n const dispatch = useDispatch();\n const viewId = useContext(ViewIdContext);\n const uiPath = useSelector(mdmModule.selectors.getUIPath);\n const generateEntityUrl = (uri: string) => getEntityLink({uiPath, uri});\n const onClick = useCallback(() => {\n dispatch(ui.actions.openEntity({uri: value, viewId}));\n }, [viewId, value, dispatch]);\n return (\n <a\n ref={ref}\n href={generateEntityUrl(value)}\n onClick={(e) => {\n onClick();\n e.stopPropagation();\n e.preventDefault();\n }}\n className={className}\n >\n {children}\n </a>\n );\n});\n\nEntityUriLink.displayName = 'EntityUriLink';\n\nexport default EntityUriLink;\n","import {makeStyles} from '@material-ui/core/styles';\nimport {range} from 'ramda';\nimport {Theme} from '@material-ui/core';\n\nconst nthLiStyles = range(2, 10).reduce(\n (acc, i) => ({\n ...acc,\n [`&:nth-child(${i})`]: {\n paddingLeft: `calc(1em * (${i} - 2))`,\n '&::before': {\n content: '\"└\"',\n display: 'inline-block',\n fontSize: '1em',\n marginRight: '5px',\n color: 'rgba(255, 255, 255, 0.28)'\n }\n }\n }),\n {}\n);\n\nexport const useStyles = makeStyles((theme: Theme & {tooltip: Record<string, string | number>}) => ({\n tooltip: theme.tooltip,\n tooltipContent: {\n minWidth: '165px',\n padding: '4px 2px 2px',\n '& p': {\n fontSize: '11px',\n lineHeight: '13px',\n fontWeight: 500,\n margin: 0,\n color: 'white'\n },\n '& ul': {\n listStyleType: 'none',\n padding: 0,\n margin: 0,\n '& li': {\n fontSize: '10px',\n lineHeight: '11px',\n fontWeight: 500,\n color: 'rgba(255, 255, 255, 0.7)',\n marginTop: '4px',\n ...nthLiStyles,\n '&:last-child': {\n color: 'white'\n }\n },\n '& li + li': {\n marginTop: '2px'\n }\n }\n }\n}));\n","import React from 'react';\nimport {last} from 'ramda';\nimport Tooltip, {TooltipProps} from '@material-ui/core/Tooltip';\n\nimport {useStyles} from './styles';\n\ntype Props = Omit<TooltipProps, 'title'> & {\n pathToTitle?: string[];\n title?: string;\n};\n\nconst HierarchicalAttributeTooltip = ({pathToTitle, children, ...tooltipProps}: Props) => {\n const styles = useStyles();\n const tooltipContent: React.ReactElement | string = pathToTitle?.length ? (\n <div className={styles.tooltipContent}>\n <p>{last(pathToTitle)}</p>\n {pathToTitle.length > 2 && (\n <ul>\n {pathToTitle.map((label) => (\n <li key={label}>{label}</li>\n ))}\n </ul>\n )}\n </div>\n ) : (\n ''\n );\n\n return (\n <Tooltip title={tooltipContent} disableFocusListener classes={{tooltip: styles.tooltip}} {...tooltipProps}>\n {children}\n </Tooltip>\n );\n};\n\nexport default HierarchicalAttributeTooltip;\n","export const SpinnerSmall =\n 'R0lGODlhFQALAKIAAP///8Hf75vL5Van0wB4v////wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAFACwAAAIAFQAHAAADLFi6zPSQFEGpGhgXkrEUQShc1bB1wxcGYzGUZ6eKJGVy8lS1aJxJjaAiAkkAACH5BAkKAAUALAAAAwAUAAUAAAMiWLFbJRC6QakCODjBxIzDlW3dB4UBBmhPWQygwrCR9FZDAgAh+QQJCgAFACwIAAMADAAFAAADFBiqVfIvgBmaWHeC6rCklrdw0JMAACH5BAkKAAUALAAAAgAUAAcAAAMkSLpU/vCRQWmLLmg967hYAIxBV4GRSJoWlo1A6X1usXGMUkcJACH5BAkKAAUALAAAAgAOAAcAAAMdWLpF/qSMORudcYg97M2b0BHXAHIelV0pxizQkwAAOw==';\n","import React from 'react';\nimport {gif2Url} from '@reltio/mdm-sdk';\nimport {SpinnerSmall} from './SpinnerSmall.gif';\n\ntype Props = {\n className?: string;\n};\n\nexport const LoadingSpinner = ({className}: Props) => {\n return <img className={className} alt=\"loading\" src={gif2Url(SpinnerSmall)} />;\n};\n\nexport default LoadingSpinner;\n","import AsyncSelect from 'react-select/async';\nimport withMuiSkin from './withMuiSkin';\n\nexport default withMuiSkin(AsyncSelect);\n","import React, {useMemo, memo} from 'react';\nimport i18n from 'ui-i18n';\nimport {isAvailableRelationType, TRelationType} from '@reltio/mdm-sdk';\nimport {MetadataTypesSelector} from '../MetadataTypesSelector/MetadataTypesSelector';\n\ntype MetadataTypesSelectorProps = React.ComponentProps<typeof MetadataTypesSelector>;\n\ntype Props = {\n relationTypes: TRelationType[];\n selectedRelationTypes: string[];\n enableEmptyValueUnderline?: boolean;\n onChange: (values: string[]) => void;\n single?: boolean;\n placeholder?: string;\n classes?: MetadataTypesSelectorProps['classes'];\n ListLabelProps?: MetadataTypesSelectorProps['ListLabelProps'];\n disabled?: boolean;\n};\n\nexport const RelationTypesSelector = memo(\n ({\n relationTypes,\n selectedRelationTypes,\n single,\n placeholder,\n enableEmptyValueUnderline,\n onChange,\n classes = {},\n ListLabelProps = {},\n disabled = false\n }: Props) => {\n const items = useMemo(() => relationTypes.filter(isAvailableRelationType), [relationTypes]);\n\n return (\n <MetadataTypesSelector\n items={items}\n selectedItemsUris={selectedRelationTypes}\n single={single}\n placeholder={placeholder}\n enableEmptyValueUnderline={enableEmptyValueUnderline}\n onChange={onChange}\n classes={classes}\n ListLabelProps={ListLabelProps}\n disabled={disabled}\n label={i18n.text('Relation type')}\n dataReltioId=\"relation-type-selector\"\n selectionPopupTitle={i18n.text('Select relation types')}\n />\n );\n }\n);\n\nRelationTypesSelector.displayName = 'RelationTypesSelector';\n","import {makeStyles} from '@material-ui/core/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 '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n tabsRoot: {\n width: '100%'\n },\n tabsScrollButton: {\n flex: '0 0 24px'\n },\n tabRoot: {\n fontSize: '0.875rem',\n padding: '7px 18px 5px',\n '@media (min-width: 960px)': {\n minWidth: 'inherit'\n }\n },\n labelWrapper: {\n whiteSpace: 'nowrap',\n letterSpacing: 'normal',\n display: 'flex',\n flexDirection: 'row',\n width: '100%'\n },\n label: {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n fontWeight: 500\n }\n});\n","import React from 'react';\nimport Tabs, {TabsProps} from '@material-ui/core/Tabs';\nimport Tab, {TabProps} from '@material-ui/core/Tab';\nimport ExpandedValueTooltip from '../ExpandedValueTooltip/ExpandedValueTooltip';\n\nimport {useStyles} from './styles';\n\nexport type Tab = {\n label: string;\n value: string;\n additionalLabel?: React.ReactNode;\n dataReltioId?: string;\n};\n\ntype Props = Omit<TabsProps, 'onChange' | 'value' | 'scrollButtons'> & {\n value: string;\n tabs: Tab[];\n onChange: (value: string) => void;\n tabClasses?: TabProps['classes'];\n scrollButtons?: TabsProps['scrollButtons'];\n};\n\nconst ScrollableTabs = ({value, tabs = [], onChange, tabClasses, ...otherProps}: Props) => {\n const styles = useStyles();\n\n const renderLabel = (label: string, additionalLabel: React.ReactNode) => (\n <span className={styles.labelWrapper}>\n <ExpandedValueTooltip value={label}>\n <span className={styles.label}>{label}</span>\n </ExpandedValueTooltip>\n {additionalLabel}\n </span>\n );\n\n const handleChange = (event: React.ChangeEvent, value: string) => onChange(value);\n\n return (\n <Tabs\n value={value}\n onChange={handleChange}\n classes={{\n root: styles.tabsRoot,\n scrollButtons: styles.tabsScrollButton\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n variant=\"scrollable\"\n scrollButtons=\"on\"\n {...otherProps}\n >\n {tabs.map(({label, value, additionalLabel, dataReltioId}) => (\n <Tab\n classes={\n tabClasses || {\n root: styles.tabRoot\n }\n }\n key={value}\n value={value}\n label={renderLabel(label, additionalLabel)}\n data-reltio-id={dataReltioId}\n />\n ))}\n </Tabs>\n );\n};\n\nexport default ScrollableTabs;\n","import React from 'react';\nimport SearchInput, {SearchInputProps} from './SearchInput';\nimport {useStyles} from './styles';\n\nconst WhiteSearchInput = ({classes, ...otherProps}: SearchInputProps) => {\n const styles = useStyles({});\n return (\n <SearchInput\n classes={{\n ...classes,\n focused: styles.white\n }}\n {...otherProps}\n />\n );\n};\n\nexport default WhiteSearchInput;\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n onlyValue: {\n color: 'rgba(0,0,0,.6)',\n fontSize: '13px',\n fontWeight: 'normal',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden'\n },\n select: {\n fontSize: '13px',\n color: 'rgba(0,0,0,.6)',\n paddingLeft: '15px',\n '&&': {\n paddingRight: '35px'\n }\n },\n selectMenu: {\n '& li': {\n fontSize: '13px',\n height: '32px'\n }\n },\n textField: {\n maxWidth: '100%'\n }\n});\n","import React, {useEffect} from 'react';\nimport PropTypes from 'prop-types';\n\nimport {Typography as Typography} from '@material-ui/core';\nimport {useStyles} from './styles';\nimport DropDownEditor from '../editors/DropDownEditor/DropDownEditor';\n\nconst SelectorWithOnlyOptionAutoSelect = ({value, onChange, options, classes = {}, emptyLabel}) => {\n const styles = useStyles();\n\n const [firstOption, ...moreOptions] = options;\n const hasOnlyOneOptionToSelect = moreOptions.length === 0;\n\n useEffect(() => {\n if (hasOnlyOneOptionToSelect && value !== firstOption.value) {\n onChange(firstOption.value);\n }\n }, [firstOption.value]); // eslint-disable-line\n\n const displayEmpty = !!emptyLabel;\n\n return (\n <div className={classes.root}>\n {hasOnlyOneOptionToSelect ? (\n <Typography className={classes.onlyValue || styles.onlyValue} variant={'h6'}>\n {firstOption.label}\n </Typography>\n ) : (\n <DropDownEditor\n displayEmpty={displayEmpty}\n disableUnderline={true}\n classes={{\n select: classes.select || styles.select\n }}\n TextFieldProps={{\n classes: {\n root: classes.textField || styles.textField\n }\n }}\n MenuProps={{\n classes: {\n list: classes.selectMenu || styles.selectMenu\n }\n }}\n value={value || ''}\n entries={displayEmpty ? [{value: '', label: emptyLabel}, ...options] : options}\n onChange={(value) => onChange(value || null)}\n />\n )}\n </div>\n );\n};\n\nSelectorWithOnlyOptionAutoSelect.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n classes: PropTypes.shape({\n root: PropTypes.string,\n onlyValue: PropTypes.string,\n select: PropTypes.string,\n selectMenu: PropTypes.string,\n textField: PropTypes.string\n }),\n emptyLabel: PropTypes.string\n};\n\nexport default SelectorWithOnlyOptionAutoSelect;\n","import {makeStyles} from '@material-ui/core/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 as Typography} from '@material-ui/core';\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 as Typography} from '@material-ui/core';\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 {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewMoreLessLink: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer'\n },\n\n arrow: {\n marginRight: '8px',\n marginLeft: '-2px',\n transform: 'rotate(0deg)',\n transition: 'transform 0.35s ease'\n },\n\n rotated: {\n transform: 'rotate(-180deg)'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {Link as Link} from '@material-ui/core';\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\nimport {useStyles} from './styles';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\n\nconst ViewMoreToggle = ({active, onClick, className}) => {\n const styles = useStyles();\n return (\n <Link className={classnames(styles.viewMoreLessLink, className)} onClick={onClick} underline=\"none\">\n <ArrowDropDownIcon className={classnames(styles.arrow, {[styles.rotated]: active})} />\n {active ? i18n.text('View less') : i18n.text('View more')}\n </Link>\n );\n};\n\nViewMoreToggle.propTypes = {\n active: PropTypes.bool,\n onClick: PropTypes.func,\n className: PropTypes.string\n};\n\nexport default ViewMoreToggle;\n","import {useCallback} from 'react';\nimport {ActivitiesFilter} from '../types';\nimport {getProfileActivities, getProfileActivitiesTotal} from '@reltio/mdm-sdk';\nimport {buildActivitiesFilterString} from '../utils/filters';\n\ntype Props = {\n filter: ActivitiesFilter;\n max: number;\n offset: number;\n entityUri: string;\n};\n\nexport const useProfileActivitiesLoader = ({filter, max, offset, entityUri}: Props) => {\n return useCallback(async () => {\n const filterString = buildActivitiesFilterString(filter);\n const data = await getProfileActivities({filter: filterString, max, offset, entityUri});\n const {total} = await getProfileActivitiesTotal({filter: filterString, entityUri});\n return {data, total};\n }, [filter, max, offset, entityUri]);\n};\n","import React from 'react';\n\nexport const ViewIdContext = React.createContext(null);\n\nViewIdContext.displayName = 'ViewIdContext';\n","import {useCallback} from 'react';\n\nimport {\n Relation,\n EditingConnection,\n isAvailableRelationBetweenEntities,\n Directions,\n getRelationType,\n removeEntityAttribute,\n addEntityAttributes,\n changeEntityAttribute,\n AttributeItem,\n Entity\n} from '@reltio/mdm-sdk';\n\nimport {pipe} from 'ramda';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\n\ntype EditRelationActions = {\n onChangeAttribute: (attribute: AttributeItem) => void;\n onAddAttributes: (attributes: AttributeItem[]) => void;\n onRemoveAttribute: (attributes: AttributeItem) => void;\n onChangeEntity: (entity: Entity) => void;\n onChangeRelationType: (value: {type: string; direction: string}) => void;\n};\n\ntype Props = {\n connection: EditingConnection;\n onConnectionChange: (connection: EditingConnection) => void;\n relatedEntity?: Entity;\n};\n\nexport const useEditableConnection = ({connection, onConnectionChange, relatedEntity}: Props): EditRelationActions => {\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n\n const onRelationChange = useCallback((relation: Relation) => onConnectionChange({...connection, relation}), [\n connection,\n onConnectionChange\n ]);\n\n const handleAddAttributes = useCallback(pipe(addEntityAttributes(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleChangeAttribute = useCallback(pipe(changeEntityAttribute(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleRemoveAttribute = useCallback(pipe(removeEntityAttribute(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleChangeRelationType = useCallback(\n ({type, direction}) => {\n const newConnection: EditingConnection = {\n entity:\n connection.entity &&\n isAvailableRelationBetweenEntities(\n direction === Directions.OUT,\n connection.entity,\n relatedEntity,\n metadata,\n getRelationType(metadata, type)\n )\n ? connection.entity\n : null,\n relation: {\n ...connection.relation,\n attributes: {},\n type,\n direction\n }\n };\n\n onConnectionChange(newConnection);\n },\n [connection, onConnectionChange, relatedEntity, metadata]\n );\n\n const handleChangeEntity = useCallback((entity) => onConnectionChange({...connection, entity}), [\n connection,\n onConnectionChange\n ]);\n\n return {\n onAddAttributes: handleAddAttributes,\n onChangeAttribute: handleChangeAttribute,\n onRemoveAttribute: handleRemoveAttribute,\n onChangeEntity: handleChangeEntity,\n onChangeRelationType: handleChangeRelationType\n };\n};\n","import {useEffect, useRef} from 'react';\n\nexport const useRunOnceAfterValueInitialization = (cb, value) => {\n const isValueInited = useRef(false);\n useEffect(() => {\n if (value && !isValueInited.current) {\n isValueInited.current = true;\n cb();\n }\n }, [cb, value]);\n};\n","import {useEffect, useState} from 'react';\n\nexport const useSavedState = <T>(getSavedState: () => Promise<T>) => {\n const [isLoaded, setIsLoaded] = useState(false);\n const [savedState, setSavedState] = useState<T | Record<string, never>>({});\n\n useEffect(() => {\n getSavedState()\n .then((savedState) => {\n setSavedState(savedState || {});\n })\n .then((_) => setIsLoaded(true))\n .catch((_) => setIsLoaded(true));\n }, []); // eslint-disable-line\n\n return {isLoaded, savedState};\n};\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 React from 'react';\nimport ClickAwayListener, {ClickAwayListenerProps} from '@material-ui/core/ClickAwayListener';\n\ntype Props = ClickAwayListenerProps;\n\nconst ClickAwayProvider = (props: Props) => {\n return <ClickAwayListener mouseEvent=\"onMouseDown\" {...props} />;\n};\n\nexport default ClickAwayProvider;\n","import {makeStyles} from '@material-ui/core/styles';\nimport {StylesProps} from './types';\n\nconst frontRotateY = (isFlipped: boolean) => `rotateY(${isFlipped ? 180 : 0}deg)`;\nconst frontRotateX = (isFlipped: boolean) => `rotateX(${isFlipped ? 180 : 0}deg)`;\nconst backRotateY = (isFlipped: boolean) => `rotateY(${isFlipped ? 0 : -180}deg)`;\nconst backRotateX = (isFlipped: boolean) => `rotateX(${isFlipped ? 0 : -180}deg)`;\n\nexport const useStyles = makeStyles({\n back: ({isFlipped, direction}: StylesProps) => ({\n WebkitBackfaceVisibility: 'hidden',\n backfaceVisibility: 'hidden',\n height: '100%',\n left: '0',\n position: isFlipped ? 'relative' : 'absolute',\n top: '0',\n transform: direction === 'horizontal' ? backRotateY(isFlipped) : backRotateX(isFlipped),\n transformStyle: 'preserve-3d',\n transition: '0.7s',\n width: '100%',\n display: 'flex'\n }),\n container: ({cardZIndex}: StylesProps) => ({\n perspective: '1000px',\n zIndex: cardZIndex\n }),\n flipper: {\n height: '100%',\n position: 'relative',\n width: '100%'\n },\n front: ({isFlipped, direction}: StylesProps) => ({\n WebkitBackfaceVisibility: 'hidden',\n backfaceVisibility: 'hidden',\n height: '100%',\n left: '0',\n position: isFlipped ? 'absolute' : 'relative',\n top: '0',\n transform: direction === 'horizontal' ? frontRotateY(isFlipped) : frontRotateX(isFlipped),\n transformStyle: 'preserve-3d',\n transition: '0.7s',\n width: '100%',\n zIndex: 2,\n display: 'flex'\n })\n});\n","import {useStyles} from './styles';\nimport React, {useState, useEffect, forwardRef} from 'react';\nimport classnames from 'classnames';\nimport {ComponentProps} from './types';\n\nconst FlipCard = forwardRef(\n (\n {cardZIndex = 'auto', direction = 'vertical', isCardFlipped = false, children, className}: ComponentProps,\n ref: React.RefObject<HTMLDivElement>\n ) => {\n const [isFlipped, setFlipped] = useState(isCardFlipped);\n const styles = useStyles({cardZIndex, direction, isFlipped});\n useEffect(() => {\n if (isCardFlipped !== isFlipped) {\n setFlipped(isCardFlipped);\n }\n }, [isCardFlipped, isFlipped]);\n\n return (\n <div className={classnames(styles.flipper, className)} ref={ref}>\n <div data-id=\"front\" className={styles.front}>\n {children[0]}\n </div>\n <div data-id=\"back\" className={styles.back}>\n {children[1]}\n </div>\n </div>\n );\n }\n);\n\nexport default FlipCard;\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport useCommonStyles from '../styles.js';\nimport Popper from '../../Popper/Popper';\nimport {Grow as Grow} from '@material-ui/core';\nimport Paper, {PaperProps} from '@material-ui/core/Paper';\n\ntype Props = {\n open: boolean;\n anchorEl: HTMLElement;\n className?: string;\n onClose: () => void;\n containerWidth: number;\n containerHeight: number;\n paperProps: Omit<PaperProps, 'evelation'>;\n listContent?: React.ReactNode;\n externalInputField?: React.ReactNode;\n classes?: {\n root?: string;\n };\n};\n\nconst SelectionPopupPopper = ({\n open,\n anchorEl,\n className,\n onClose,\n containerWidth,\n containerHeight,\n paperProps,\n listContent,\n externalInputField,\n classes = {}\n}: Props) => {\n const commonStyles = useCommonStyles({\n containerWidth,\n containerHeight\n });\n\n return (\n <div className={classes.root}>\n {externalInputField}\n <Popper open={open} onClose={onClose} anchorEl={anchorEl} placement=\"bottom-start\" transition>\n {({TransitionProps}) => (\n <Grow {...TransitionProps}>\n <Paper elevation={2} {...paperProps}>\n <div\n className={classnames(commonStyles.container, className)}\n style={{width: containerWidth}}\n >\n <div className={commonStyles.list}>{listContent}</div>\n </div>\n </Paper>\n </Grow>\n )}\n </Popper>\n </div>\n );\n};\n\nexport default SelectionPopupPopper;\n","import {useEffect, useRef} from 'react';\n\nexport const useWhyDidYouUpdate = (name, props) => {\n // Get a mutable ref object where we can store props ...\n // ... for comparison next time this hook runs.\n const previousProps = useRef();\n\n useEffect(() => {\n if (previousProps.current) {\n // Get all keys from previous and current props\n const allKeys = Object.keys({...previousProps.current, ...props});\n // Use this object to keep track of changed props\n const changesObj = {};\n // Iterate through keys\n allKeys.forEach((key) => {\n // If previous is different from current\n if (previousProps.current[key] !== props[key]) {\n // Add to changesObj\n changesObj[key] = {\n from: previousProps.current[key],\n to: props[key]\n };\n }\n });\n\n // If changesObj not empty then output to console\n if (Object.keys(changesObj).length) {\n console.log('[why-did-you-update]', name, changesObj); //eslint-disable-line no-console\n }\n }\n\n // Finally update previousProps with current props for next hook call\n previousProps.current = props;\n });\n};\n","import {useContext, useEffect, useRef} from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {\n CustomAction,\n CustomActionTaskParams,\n CustomScript,\n CustomScriptPlatform,\n CustomScriptExtension,\n Entity,\n initializeWebWorker,\n isEmptyValue,\n ProcessParams\n} from '@reltio/mdm-sdk';\nimport nanoid from 'nanoid';\nimport {find, map, omit, pick, pipe, prop} from 'ramda';\nimport {useWorkflowCheckPermission} from '../components/workflow';\nimport {InterceptHandlersContext, SandboxAPIContext, SnackbarContext} from '../contexts';\nimport {getWorkerURL, processRequest, Request} from './useAPI';\n\nconst isURLtoProcess = (processApi: string[], url: string) =>\n (processApi || []).some((request) => {\n const regExp = new RegExp(`^${request}$`);\n return request.replace(/\\/*$/, '') === url || (request && regExp.test(url));\n });\n\nconst getCustomViewConfig = (config: CustomScript) => {\n const {processApiResponse, processApiRequest, permissions, files, ...otherProps} = config;\n return {\n action: {processApiResponse, processApiRequest, permissions, files},\n ...otherProps\n };\n};\n\nexport const useCustomScripts = (config: CustomScript[]) => {\n const customScripts = config.reduce((acc, customScript) => {\n if (customScript.platform !== CustomScriptPlatform.CLASSIC) {\n return [...acc, {...customScript, actionId: nanoid()}];\n }\n return acc;\n }, []);\n\n const showSnackbarMessage = useContext(SnackbarContext);\n const {\n addInternalRequestInterceptor,\n addInternalResponseInterceptor,\n removeInternalRequestInterceptor,\n removeInternalResponseInterceptor\n } = useContext(InterceptHandlersContext);\n const qxApi = useContext(SandboxAPIContext);\n\n const dispatch = useDispatch();\n const metadata = useSelector(mdmModule.selectors.getMetadata) || {};\n const entity = useSelector(mdmModule.selectors.getEntity) || ({} as Entity);\n const uiPath = useSelector(mdmModule.selectors.getUIPath);\n const servicesPath = useSelector(mdmModule.selectors.getServicesPath);\n const reltioPath = useSelector(mdmModule.selectors.getReltioPath);\n const tenant: string = useSelector(mdmModule.selectors.getTenant);\n const workerUrl = getWorkerURL(uiPath, tenant);\n const apiPath: string = useSelector(mdmModule.selectors.getApiPath);\n const workflowPath = useSelector(mdmModule.selectors.getWorkflowPath);\n const user = useSelector(mdmModule.selectors.getUser);\n const entityUri = useSelector(mdmModule.selectors.getEntityUri);\n const environment = useSelector(mdmModule.selectors.getWorkflowEnvironmentUrl);\n const workflowCheckPermission = useWorkflowCheckPermission();\n const {type: typeSearch, data: search} = useSelector(mdmModule.selectors.getSearchProviderData) || {};\n const openSearch = (search) => dispatch(ui.actions.openSearch(search));\n\n const requestListeners = useRef({});\n const responseListeners = useRef({});\n const workers = useRef<Record<string, Worker>>({});\n\n const process = ({task, worker, config}: ProcessParams) => {\n if (task) {\n switch (task.action) {\n case CustomAction.LOG: {\n console.log(task.params); //eslint-disable-line no-console\n break;\n }\n case CustomAction.MESSAGE: {\n showSnackbarMessage(task.params as string);\n break;\n }\n case CustomAction.REQUEST: {\n if ((task.params as CustomActionTaskParams)?.headers?.origin !== 'ui') {\n processRequest({\n name: (task.params as CustomActionTaskParams).name,\n paramObject: task as Request,\n permissions: config.action.permissions,\n worker,\n metadata,\n config,\n user,\n apiPath,\n servicesPath,\n tenant,\n workflowPath,\n entity,\n entityUri,\n environment,\n query: typeSearch === 'search' ? search?.query : null,\n openSearch,\n workflowCheckPermission,\n ...qxApi\n });\n } else {\n const {headers, id, url: fakeURL, method, data} = task.params as CustomActionTaskParams;\n const url = fakeURL.replace(reltioPath, apiPath);\n if (requestListeners.current[headers.requestId]) {\n requestListeners.current[headers.requestId].next(url, {\n body: data,\n id,\n task,\n headers,\n method\n });\n requestListeners.current = omit([headers.requestId], requestListeners.current);\n }\n }\n break;\n }\n case CustomAction.RETURN_PROCESSED_API_RESPONSE:\n case CustomAction.RETURN_PROCESSED_API_REQUEST: {\n const {id, data} = task.params as CustomActionTaskParams;\n if (responseListeners.current[id]) {\n responseListeners.current[id].next(data);\n responseListeners.current = omit([id], responseListeners.current);\n }\n break;\n }\n }\n }\n };\n\n useEffect(() => {\n workers.current = customScripts.reduce((acc, customScript) => {\n const customViewConfig = getCustomViewConfig(customScript) as CustomScriptExtension;\n return {\n ...acc,\n [customScript.actionId]: initializeWebWorker(workerUrl, process, customViewConfig)\n };\n }, workers.current);\n return () => {\n Object.keys(workers.current).forEach((actionId) => {\n workers.current[actionId].terminate();\n });\n };\n }, [config]);\n\n const customScriptRequestInterceptor = ({\n options = {},\n url,\n next\n }: {\n next: (url: string, options: RequestInit) => void;\n abort: (error: Error) => void;\n url: string;\n options: RequestInit;\n }) => {\n const fakeURL =\n url.startsWith('/') && !url.startsWith(apiPath)\n ? `${reltioPath}/api/${tenant}${url}`\n : `${reltioPath}${url.replace(apiPath, '')}`;\n\n const actionId = pipe(\n map(pick(['actionId', 'processApiRequest'])),\n find(({processApiRequest}) => isURLtoProcess(processApiRequest, fakeURL)),\n prop('actionId')\n )(customScripts);\n if (actionId) {\n const requestId = nanoid();\n requestListeners.current = {\n ...requestListeners.current,\n [requestId]: {options, next, id: requestId}\n };\n workers.current[actionId].postMessage({\n action: 'apiRequest',\n id: requestId,\n url: fakeURL,\n method: options.method,\n headers: {...options.headers, origin: 'ui', requestId, actionId},\n data: options.body\n });\n } else {\n next(url, options);\n }\n };\n\n const customScriptResponseInterceptor = ({url, response, next, options, abort}) => {\n if (options?.headers?.origin === 'ui') {\n response\n .json()\n .then((data) => {\n responseListeners.current = {\n ...responseListeners.current,\n [options.headers.requestId]: {next}\n };\n workers.current[options.headers?.actionId].postMessage({\n action: 'response',\n result: {data},\n id: options?.id,\n name: options?.task?.params?.name\n });\n })\n .catch((error) => {\n abort(error);\n });\n } else {\n const fakeURL = `${reltioPath}${url.replace(apiPath, '')}`;\n const actionId = pipe(\n map(pick(['actionId', 'processApiResponse'])),\n find(({processApiResponse}) => isURLtoProcess(processApiResponse, fakeURL)),\n prop('actionId')\n )(customScripts);\n if (actionId) {\n const responseId = nanoid();\n response\n .json()\n .then((data) => {\n responseListeners.current = {\n ...responseListeners.current,\n [responseId]: {next}\n };\n workers.current[actionId].postMessage({\n action: 'apiResponse',\n id: responseId,\n url: fakeURL,\n method: options.method,\n data\n });\n })\n .catch((error) => {\n abort(error);\n });\n } else {\n next(response);\n }\n }\n };\n\n useEffect(() => {\n if (!isEmptyValue(customScripts)) {\n addInternalRequestInterceptor(customScriptRequestInterceptor);\n addInternalResponseInterceptor(customScriptResponseInterceptor);\n return () => {\n removeInternalRequestInterceptor(customScriptRequestInterceptor);\n removeInternalResponseInterceptor(customScriptResponseInterceptor);\n };\n }\n }, [config]);\n};\n"],"names":["oppositeDirection","left","right","top","bottom","isHorizontal","anchor","indexOf","getAnchor","theme","direction","defaultTransitionDuration","enter","exit","Drawer","props","ref","_props$anchor","anchorProp","BackdropProps","children","classes","className","_props$elevation","elevation","_props$ModalProps","ModalProps","BackdropPropsProp","onClose","_props$open","open","_props$PaperProps","PaperProps","SlideProps","_props$TransitionComp","TransitionComponent","_props$transitionDura","transitionDuration","_props$variant","variant","other","mounted","current","drawer","square","paper","concat","root","docked","slidingDrawer","in","timeout","appear","BackdropComponent","modal","flex","overflowY","display","flexDirection","height","zIndex","WebkitOverflowScrolling","position","outline","paperAnchorLeft","paperAnchorRight","paperAnchorTop","maxHeight","paperAnchorBottom","paperAnchorDockedLeft","borderRight","palette","divider","paperAnchorDockedTop","borderBottom","paperAnchorDockedRight","borderLeft","paperAnchorDockedBottom","borderTop","name","flip","setTranslateValue","node","transform","rect","getBoundingClientRect","fakeTransform","computedStyle","window","getComputedStyle","getPropertyValue","offsetX","offsetY","transformValues","split","parseInt","innerWidth","width","innerHeight","getTranslateValue","style","webkitTransform","defaultTimeout","_props$direction","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$timeout","childrenRef","handleOwnRef","instance","handleRefIntermediary","handleRef","normalizedTransitionCallback","callback","isAppearing","undefined","handleEnter","handleEntering","transitionProps","mode","webkitTransition","transitions","create","easing","easeOut","transition","handleEntered","handleExiting","handleExit","sharp","handleExited","updatePosition","handleResize","addEventListener","clear","removeEventListener","nodeRef","state","childProps","visibility","_interopRequireDefault","exports","_react","_default","default","createElement","d","path","Component","SvgIcon","muiName","viewBox","xmlns","fill","stroke","strokeWidth","fillRule","x","y","rx","useStyles","makeStyles","container","paddingLeft","listItem","paddingTop","paddingBottom","background","listItemFocus","icon","opacity","flexShrink","marginRight","marginLeft","recommendedIcon","logoIcon","itemAfter","pointerEvents","itemText","padding","margin","fontSize","letterSpacing","whiteSpace","checkbox","checked","marginWrapper","alignItems","defaultCursor","cursor","itemTooltip","marginText","itemTextWrapper","attrType","styles","Icon","type","DataTypes","NestedAttrIcon","ReferenceAttrIcon","SimpleAttrIcon","getIconForAttrType","RecommendedIconWithTooltip","withTooltip","cx","cy","r","memo","groupId","data","isFocused","isRequired","label","labelInText","level","onClick","noop","hideCheckBox","hideIcon","notSelectable","disableHorizontalScrollbar","subItemMargin","LogoIcon","isButton","isNested","showLogoIcon","ExpandedValueTooltip","value","placement","ListItem","classnames","dense","button","focusVisible","selected","tabIndex","Checkbox","disableRipple","disabled","Marginator","tooltipTitle","i18n","showForDisabled","renderIcon","ListItemText","primary","RequiredMark","item","marginBottom","ConnectionEditor","connection","relatedEntity","inRelationTypes","outRelationTypes","showEmptyEditors","entityErrorMessage","onChangeAttribute","onRemoveAttribute","onAddAttributes","onChangeRelationType","onChangeEntity","relation","entity","attributes","uri","relationUri","relationTypeUri","isRelationTypeSelected","Boolean","metadata","useSelector","mdmModule","attributeListEntity","useMemo","getActivenessAttributes","relationAttrTypes","getRelationAttributesList","availableEntityTypeUris","getSuitableEntityTypeUrisForRelationTypes","Directions","getRelationType","uniq","globalSearchRequestOptions","selectorCompatibleRelation","relationType","selectorCompatibleEntity","entityUri","entityType","entityLabel","getLabel","availableInRelationTypes","filter","isAvailableRelationBetweenEntities","availableOutRelationTypes","useEffect","getDefaultRelationTypeObject","useDidUpdateEffect","handleChangeRelationType","useCallback","ConnectionRelationTypeSelector","onChange","ErrorWrapper","errorMessage","EntitySelector","key","entityTypesUris","max","ModeTypes","onCreate","attributeTypesSelectionStrategy","AttributesList","attrTypes","parentUri","onDeleteAttribute","useMenuStyles","addLabel","fontWeight","color","main","textOverflow","overflow","backgroundColor","addIcon","useSingleValueStyles","singleValue","lineHeight","marginTop","Menu","selectProps","createLabel","inputValue","components","MenuWithPopper","prop","Add","propTypes","PropTypes","SingleValue","menuIsOpen","innerProps","Typography","control","dropdownIndicator","valueContainer","formControl","filledInputRoot","filledInputUnderline","inputLabel","customStyles","menu","baseStyles","borderRadius","boxShadow","menuList","group","input","option","overloadMenuListStyle","withoutLabelInputStyle","DropDownSelector","getOptions","options","identity","onClear","textFieldInputRef","TextFieldProps","otherProps","underlineStyle","useInputStyles","setOpen","useState","inputRef","useRef","SelectComponent","AsyncSelect","Select","showIndicatorSeparator","IndicatorSeparator","EmptyStub","ClearIndicator","handleCreate","overloadStylesIfGroup","overloadStylesIfNoLabel","isEmpty","mergedStyles","mergedClasses","placeholder","defaultOptions","defaultTo","loadOptions","cacheOptions","DropdownIndicator","LoadingIndicator","menuPlacement","inputProps","InputProps","underline","isEmptyValue","focused","InputLabelProps","shrink","onMenuOpen","onMenuClose","DropDownSelectorType","NoData","message","EntityUriLink","forwardRef","dispatch","useDispatch","viewId","useContext","ViewIdContext","uiPath","ui","href","getEntityLink","e","stopPropagation","preventDefault","displayName","nthLiStyles","range","reduce","acc","i","content","tooltip","tooltipContent","minWidth","listStyleType","pathToTitle","tooltipProps","length","last","map","Tooltip","title","disableFocusListener","alt","src","gif2Url","withMuiSkin","RelationTypesSelector","relationTypes","selectedRelationTypes","single","enableEmptyValueUnderline","ListLabelProps","items","isAvailableRelationType","selectedItemsUris","dataReltioId","selectionPopupTitle","mark","tabsRoot","tabsScrollButton","tabRoot","labelWrapper","tabs","tabClasses","renderLabel","additionalLabel","Tabs","event","scrollButtons","indicatorColor","textColor","Tab","white","onlyValue","select","paddingRight","selectMenu","textField","maxWidth","SelectorWithOnlyOptionAutoSelect","emptyLabel","firstOption","moreOptions","hasOnlyOneOptionToSelect","displayEmpty","DropDownEditor","disableUnderline","MenuProps","list","entries","DropDownValue","DropDownPlaceholder","Placeholder","viewMoreLessLink","arrow","rotated","ViewMoreToggle","active","Link","ArrowDropDown","useProfileActivitiesLoader","offset","async","filterString","buildActivitiesFilterString","getProfileActivities","total","getProfileActivitiesTotal","React","useEditableConnection","onConnectionChange","onRelationChange","handleAddAttributes","pipe","addEntityAttributes","handleChangeAttribute","changeEntityAttribute","handleRemoveAttribute","removeEntityAttribute","newConnection","useRunOnceAfterValueInitialization","cb","isValueInited","useSavedState","getSavedState","isLoaded","setIsLoaded","savedState","setSavedState","then","_","catch","ClickAwayListener","mouseEvent","frontRotateY","isFlipped","frontRotateX","backRotateY","backRotateX","back","WebkitBackfaceVisibility","backfaceVisibility","transformStyle","cardZIndex","perspective","flipper","front","FlipCard","isCardFlipped","setFlipped","anchorEl","containerWidth","containerHeight","paperProps","listContent","externalInputField","commonStyles","useCommonStyles","Popper","TransitionProps","Grow","Paper","useWhyDidYouUpdate","previousProps","allKeys","Object","keys","changesObj","forEach","from","to","console","log","isURLtoProcess","processApi","url","some","request","regExp","RegExp","replace","test","useCustomScripts","config","customScripts","customScript","platform","CustomScriptPlatform","actionId","nanoid","showSnackbarMessage","SnackbarContext","addInternalRequestInterceptor","addInternalResponseInterceptor","removeInternalRequestInterceptor","removeInternalResponseInterceptor","InterceptHandlersContext","qxApi","SandboxAPIContext","servicesPath","reltioPath","tenant","workerUrl","getWorkerURL","apiPath","workflowPath","user","environment","workflowCheckPermission","useWorkflowCheckPermission","typeSearch","search","openSearch","requestListeners","responseListeners","workers","process","task","worker","action","CustomAction","params","headers","origin","processRequest","paramObject","permissions","query","id","fakeURL","method","requestId","next","body","omit","customViewConfig","processApiResponse","processApiRequest","files","getCustomViewConfig","initializeWebWorker","terminate","customScriptRequestInterceptor","startsWith","pick","find","postMessage","customScriptResponseInterceptor","response","abort","json","result","error","responseId"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"8337.js","mappings":"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","sources":["webpack://@reltio/remotes/../../node_modules/@material-ui/core/esm/Drawer/Drawer.js","webpack://@reltio/remotes/../../node_modules/@material-ui/core/esm/Slide/Slide.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/AddCircle.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/Info.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/esm/ArrowDropDown.js","webpack://@reltio/remotes/../../node_modules/@material-ui/icons/esm/utils/createSvgIcon.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/ConnectionEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/ConnectionEditor/ConnectionEditor.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/EmptySearchResult/NoData.tsx","webpack://@reltio/remotes/../components/src/components/EntityUriLink/EntityUriLink.tsx","webpack://@reltio/remotes/../components/src/components/HierarchicalAttributeTooltip/styles.ts","webpack://@reltio/remotes/../components/src/components/HierarchicalAttributeTooltip/HierarchicalAttributeTooltip.tsx","webpack://@reltio/remotes/../components/src/components/LoadingSpinner/SpinnerSmall.gif.tsx","webpack://@reltio/remotes/../components/src/components/LoadingSpinner/LoadingSpinner.tsx","webpack://@reltio/remotes/../components/src/components/ReactSelect/AsyncSelect.js","webpack://@reltio/remotes/../components/src/components/RelationTypesSelector/RelationTypesSelector.tsx","webpack://@reltio/remotes/../components/src/components/RequiredMark/styles.js","webpack://@reltio/remotes/../components/src/components/RequiredMark/RequiredMark.tsx","webpack://@reltio/remotes/../components/src/components/ScrollableTabs/styles.ts","webpack://@reltio/remotes/../components/src/components/ScrollableTabs/ScrollableTabs.tsx","webpack://@reltio/remotes/../components/src/components/SearchInput/WhiteSearchInput.tsx","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/styles.js","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.js","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/ViewMoreToggle/styles.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/ViewMoreToggle.js","webpack://@reltio/remotes/../components/src/components/activityLog/hooks/useProfileActivitiesLoader.ts","webpack://@reltio/remotes/../components/src/contexts/ViewIdContext/index.js","webpack://@reltio/remotes/../components/src/hooks/useEditableConnection.ts","webpack://@reltio/remotes/../components/src/hooks/useRunOnceAfterValueInitialization.js","webpack://@reltio/remotes/../components/src/hooks/useSavedState.ts","webpack://@reltio/remotes/../components/src/icons/NestedAttribute.tsx","webpack://@reltio/remotes/../components/src/components/ClickAwayProvider/ClickAwayProvider.tsx","webpack://@reltio/remotes/../components/src/components/FlipCard/styles.ts","webpack://@reltio/remotes/../components/src/components/FlipCard/FlipCard.tsx","webpack://@reltio/remotes/../components/src/components/SelectionPopup/SelectionPopupPopper/SelectionPopupPopper.tsx","webpack://@reltio/remotes/../components/src/hooks/useWhyDidYouUpdate.js","webpack://@reltio/remotes/../components/src/hooks/useCustomScripts.ts"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport Modal from '../Modal';\nimport Backdrop from '../Backdrop';\nimport withStyles from '../styles/withStyles';\nimport Slide from '../Slide';\nimport Paper from '../Paper';\nimport capitalize from '../utils/capitalize';\nimport { duration } from '../styles/transitions';\nimport useTheme from '../styles/useTheme';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {},\n\n /* Styles applied to the root element if `variant=\"permanent or persistent\"`. */\n docked: {\n flex: '0 0 auto'\n },\n\n /* Styles applied to the `Paper` component. */\n paper: {\n overflowY: 'auto',\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n flex: '1 0 auto',\n zIndex: theme.zIndex.drawer,\n WebkitOverflowScrolling: 'touch',\n // Add iOS momentum scrolling.\n // temporary style\n position: 'fixed',\n top: 0,\n // We disable the focus ring for mouse, touch and keyboard users.\n // At some point, it would be better to keep it for keyboard users.\n // :focus-ring CSS pseudo-class will help.\n outline: 0\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"left\"`. */\n paperAnchorLeft: {\n left: 0,\n right: 'auto'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"right\"`. */\n paperAnchorRight: {\n left: 'auto',\n right: 0\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"top\"`. */\n paperAnchorTop: {\n top: 0,\n left: 0,\n bottom: 'auto',\n right: 0,\n height: 'auto',\n maxHeight: '100%'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"bottom\"`. */\n paperAnchorBottom: {\n top: 'auto',\n left: 0,\n bottom: 0,\n right: 0,\n height: 'auto',\n maxHeight: '100%'\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"left\"` and `variant` is not \"temporary\". */\n paperAnchorDockedLeft: {\n borderRight: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"top\"` and `variant` is not \"temporary\". */\n paperAnchorDockedTop: {\n borderBottom: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"right\"` and `variant` is not \"temporary\". */\n paperAnchorDockedRight: {\n borderLeft: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Paper` component if `anchor=\"bottom\"` and `variant` is not \"temporary\". */\n paperAnchorDockedBottom: {\n borderTop: \"1px solid \".concat(theme.palette.divider)\n },\n\n /* Styles applied to the `Modal` component. */\n modal: {}\n };\n};\nvar oppositeDirection = {\n left: 'right',\n right: 'left',\n top: 'down',\n bottom: 'up'\n};\nexport function isHorizontal(anchor) {\n return ['left', 'right'].indexOf(anchor) !== -1;\n}\nexport function getAnchor(theme, anchor) {\n return theme.direction === 'rtl' && isHorizontal(anchor) ? oppositeDirection[anchor] : anchor;\n}\nvar defaultTransitionDuration = {\n enter: duration.enteringScreen,\n exit: duration.leavingScreen\n};\n/**\n * The props of the [Modal](/api/modal/) component are available\n * when `variant=\"temporary\"` is set.\n */\n\nvar Drawer = /*#__PURE__*/React.forwardRef(function Drawer(props, ref) {\n var _props$anchor = props.anchor,\n anchorProp = _props$anchor === void 0 ? 'left' : _props$anchor,\n BackdropProps = props.BackdropProps,\n children = props.children,\n classes = props.classes,\n className = props.className,\n _props$elevation = props.elevation,\n elevation = _props$elevation === void 0 ? 16 : _props$elevation,\n _props$ModalProps = props.ModalProps;\n _props$ModalProps = _props$ModalProps === void 0 ? {} : _props$ModalProps;\n\n var BackdropPropsProp = _props$ModalProps.BackdropProps,\n ModalProps = _objectWithoutProperties(_props$ModalProps, [\"BackdropProps\"]),\n onClose = props.onClose,\n _props$open = props.open,\n open = _props$open === void 0 ? false : _props$open,\n _props$PaperProps = props.PaperProps,\n PaperProps = _props$PaperProps === void 0 ? {} : _props$PaperProps,\n SlideProps = props.SlideProps,\n _props$TransitionComp = props.TransitionComponent,\n TransitionComponent = _props$TransitionComp === void 0 ? Slide : _props$TransitionComp,\n _props$transitionDura = props.transitionDuration,\n transitionDuration = _props$transitionDura === void 0 ? defaultTransitionDuration : _props$transitionDura,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'temporary' : _props$variant,\n other = _objectWithoutProperties(props, [\"anchor\", \"BackdropProps\", \"children\", \"classes\", \"className\", \"elevation\", \"ModalProps\", \"onClose\", \"open\", \"PaperProps\", \"SlideProps\", \"TransitionComponent\", \"transitionDuration\", \"variant\"]);\n\n var theme = useTheme(); // Let's assume that the Drawer will always be rendered on user space.\n // We use this state is order to skip the appear transition during the\n // initial mount of the component.\n\n var mounted = React.useRef(false);\n React.useEffect(function () {\n mounted.current = true;\n }, []);\n var anchor = getAnchor(theme, anchorProp);\n var drawer = /*#__PURE__*/React.createElement(Paper, _extends({\n elevation: variant === 'temporary' ? elevation : 0,\n square: true\n }, PaperProps, {\n className: clsx(classes.paper, classes[\"paperAnchor\".concat(capitalize(anchor))], PaperProps.className, variant !== 'temporary' && classes[\"paperAnchorDocked\".concat(capitalize(anchor))])\n }), children);\n\n if (variant === 'permanent') {\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, classes.docked, className),\n ref: ref\n }, other), drawer);\n }\n\n var slidingDrawer = /*#__PURE__*/React.createElement(TransitionComponent, _extends({\n in: open,\n direction: oppositeDirection[anchor],\n timeout: transitionDuration,\n appear: mounted.current\n }, SlideProps), drawer);\n\n if (variant === 'persistent') {\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, classes.docked, className),\n ref: ref\n }, other), slidingDrawer);\n } // variant === temporary\n\n\n return /*#__PURE__*/React.createElement(Modal, _extends({\n BackdropProps: _extends({}, BackdropProps, BackdropPropsProp, {\n transitionDuration: transitionDuration\n }),\n BackdropComponent: Backdrop,\n className: clsx(classes.root, classes.modal, className),\n open: open,\n onClose: onClose,\n ref: ref\n }, other, ModalProps), slidingDrawer);\n});\nprocess.env.NODE_ENV !== \"production\" ? Drawer.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 /**\n * Side from which the drawer will appear.\n */\n anchor: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),\n\n /**\n * @ignore\n */\n BackdropProps: PropTypes.object,\n\n /**\n * The contents of the drawer.\n */\n children: PropTypes.node,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The elevation of the drawer.\n */\n elevation: PropTypes.number,\n\n /**\n * Props applied to the [`Modal`](/api/modal/) element.\n */\n ModalProps: PropTypes.object,\n\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n */\n onClose: PropTypes.func,\n\n /**\n * If `true`, the drawer is open.\n */\n open: PropTypes.bool,\n\n /**\n * Props applied to the [`Paper`](/api/paper/) element.\n */\n PaperProps: PropTypes.object,\n\n /**\n * Props applied to the [`Slide`](/api/slide/) element.\n */\n SlideProps: PropTypes.object,\n\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['permanent', 'persistent', 'temporary'])\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiDrawer',\n flip: false\n})(Drawer);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport debounce from '../utils/debounce';\nimport { Transition } from 'react-transition-group';\nimport { elementAcceptingRef } from '@material-ui/utils';\nimport useForkRef from '../utils/useForkRef';\nimport useTheme from '../styles/useTheme';\nimport { duration } from '../styles/transitions';\nimport { reflow, getTransitionProps } from '../transitions/utils'; // Translate the node so he can't be seen on the screen.\n// Later, we gonna translate back the node to his original location\n// with `none`.`\n\nfunction getTranslateValue(direction, node) {\n var rect = node.getBoundingClientRect();\n var transform;\n\n if (node.fakeTransform) {\n transform = node.fakeTransform;\n } else {\n var computedStyle = window.getComputedStyle(node);\n transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');\n }\n\n var offsetX = 0;\n var offsetY = 0;\n\n if (transform && transform !== 'none' && typeof transform === 'string') {\n var transformValues = transform.split('(')[1].split(')')[0].split(',');\n offsetX = parseInt(transformValues[4], 10);\n offsetY = parseInt(transformValues[5], 10);\n }\n\n if (direction === 'left') {\n return \"translateX(\".concat(window.innerWidth, \"px) translateX(\").concat(offsetX - rect.left, \"px)\");\n }\n\n if (direction === 'right') {\n return \"translateX(-\".concat(rect.left + rect.width - offsetX, \"px)\");\n }\n\n if (direction === 'up') {\n return \"translateY(\".concat(window.innerHeight, \"px) translateY(\").concat(offsetY - rect.top, \"px)\");\n } // direction === 'down'\n\n\n return \"translateY(-\".concat(rect.top + rect.height - offsetY, \"px)\");\n}\n\nexport function setTranslateValue(direction, node) {\n var transform = getTranslateValue(direction, node);\n\n if (transform) {\n node.style.webkitTransform = transform;\n node.style.transform = transform;\n }\n}\nvar defaultTimeout = {\n enter: duration.enteringScreen,\n exit: duration.leavingScreen\n};\n/**\n * The Slide transition is used by the [Drawer](/components/drawers/) component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\n\nvar Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {\n var children = props.children,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'down' : _props$direction,\n inProp = props.in,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onEntering = props.onEntering,\n onExit = props.onExit,\n onExited = props.onExited,\n onExiting = props.onExiting,\n style = props.style,\n _props$timeout = props.timeout,\n timeout = _props$timeout === void 0 ? defaultTimeout : _props$timeout,\n _props$TransitionComp = props.TransitionComponent,\n TransitionComponent = _props$TransitionComp === void 0 ? Transition : _props$TransitionComp,\n other = _objectWithoutProperties(props, [\"children\", \"direction\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"]);\n\n var theme = useTheme();\n var childrenRef = React.useRef(null);\n /**\n * used in cloneElement(children, { ref: handleRef })\n */\n\n var handleOwnRef = React.useCallback(function (instance) {\n // #StrictMode ready\n childrenRef.current = ReactDOM.findDOMNode(instance);\n }, []);\n var handleRefIntermediary = useForkRef(children.ref, handleOwnRef);\n var handleRef = useForkRef(handleRefIntermediary, ref);\n\n var normalizedTransitionCallback = function normalizedTransitionCallback(callback) {\n return function (isAppearing) {\n if (callback) {\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (isAppearing === undefined) {\n callback(childrenRef.current);\n } else {\n callback(childrenRef.current, isAppearing);\n }\n }\n };\n };\n\n var handleEnter = normalizedTransitionCallback(function (node, isAppearing) {\n setTranslateValue(direction, node);\n reflow(node);\n\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n var handleEntering = normalizedTransitionCallback(function (node, isAppearing) {\n var transitionProps = getTransitionProps({\n timeout: timeout,\n style: style\n }, {\n mode: 'enter'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.easeOut\n }));\n node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.easeOut\n }));\n node.style.webkitTransform = 'none';\n node.style.transform = 'none';\n\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n var handleEntered = normalizedTransitionCallback(onEntered);\n var handleExiting = normalizedTransitionCallback(onExiting);\n var handleExit = normalizedTransitionCallback(function (node) {\n var transitionProps = getTransitionProps({\n timeout: timeout,\n style: style\n }, {\n mode: 'exit'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.sharp\n }));\n node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps, {\n easing: theme.transitions.easing.sharp\n }));\n setTranslateValue(direction, node);\n\n if (onExit) {\n onExit(node);\n }\n });\n var handleExited = normalizedTransitionCallback(function (node) {\n // No need for transitions when the component is hidden\n node.style.webkitTransition = '';\n node.style.transition = '';\n\n if (onExited) {\n onExited(node);\n }\n });\n var updatePosition = React.useCallback(function () {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current);\n }\n }, [direction]);\n React.useEffect(function () {\n // Skip configuration where the position is screen size invariant.\n if (inProp || direction === 'down' || direction === 'right') {\n return undefined;\n }\n\n var handleResize = debounce(function () {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current);\n }\n });\n window.addEventListener('resize', handleResize);\n return function () {\n handleResize.clear();\n window.removeEventListener('resize', handleResize);\n };\n }, [direction, inProp]);\n React.useEffect(function () {\n if (!inProp) {\n // We need to update the position of the drawer when the direction change and\n // when it's hidden.\n updatePosition();\n }\n }, [inProp, updatePosition]);\n return /*#__PURE__*/React.createElement(TransitionComponent, _extends({\n nodeRef: childrenRef,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n appear: true,\n in: inProp,\n timeout: timeout\n }, other), function (state, childProps) {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n ref: handleRef,\n style: _extends({\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, style, children.props.style)\n }, childProps));\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Slide.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 /**\n * A single child content element.\n */\n children: elementAcceptingRef,\n\n /**\n * Direction the child node will enter from.\n */\n direction: PropTypes.oneOf(['down', 'left', 'right', 'up']),\n\n /**\n * If `true`, show the component; triggers the enter or exit animation.\n */\n in: PropTypes.bool,\n\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n\n /**\n * @ignore\n */\n style: PropTypes.object,\n\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n */\n timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nexport default Slide;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z\"\n}), 'AddCircle');\n\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\"\n}), 'Info');\n\nexports.default = _default;","import React from 'react';\nimport createSvgIcon from './utils/createSvgIcon';\nexport default createSvgIcon(React.createElement(\"path\", {\n d: \"M7 10l5 5 5-5z\"\n}), 'ArrowDropDown');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport SvgIcon from '@material-ui/core/SvgIcon';\nexport default function createSvgIcon(path, displayName) {\n var Component = React.memo(React.forwardRef(function (props, ref) {\n return React.createElement(SvgIcon, _extends({\n ref: ref\n }, props), path);\n }));\n\n if (process.env.NODE_ENV !== 'production') {\n Component.displayName = \"\".concat(displayName, \"Icon\");\n }\n\n Component.muiName = SvgIcon.muiName;\n return Component;\n}","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 '@material-ui/core/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 ListItem, {ListItemProps} from '@material-ui/core/ListItem';\nimport {ListItemText as ListItemText} from '@material-ui/core';\nimport {Checkbox as Checkbox} from '@material-ui/core';\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?: ListItemProps['style'];\n LogoIcon?: React.ElementType;\n className?: string;\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}: 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 // TODO: ListItem needs to be split to ListItem and ListItemButton after material ui releases stable version(https://github.com/mui-org/material-ui/pull/26446). The \"button\" prop will be deprecated.\n return (\n <ExpandedValueTooltip value={labelInText || label} className={styles.itemTooltip} placement=\"bottom-end\">\n <ListItem\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 button={isButton as any}\n classes={{\n focusVisible: styles.listItemFocus,\n selected: styles.listItemFocus\n }}\n selected={isFocused}\n tabIndex={-1}\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 </ListItem>\n </ExpandedValueTooltip>\n );\n};\n\nexport default memo(AttributeListItem);\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n item: {\n marginBottom: '16px'\n },\n dense: {\n marginBottom: 0\n }\n});\n","import {useStyles} from './styles';\nimport {useDidUpdateEffect} from '../../hooks';\n\nimport React, {useCallback, useEffect, useMemo} from 'react';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\n\nimport {\n AttributeItem,\n Directions,\n EditingConnection,\n Entity,\n getActivenessAttributes,\n getSuitableEntityTypeUrisForRelationTypes,\n getDefaultRelationTypeObject,\n getLabel,\n getRelationAttributesList,\n getRelationType,\n isAvailableRelationBetweenEntities,\n ModeTypes,\n TRelationType\n} from '@reltio/mdm-sdk';\nimport AttributesList from '../attributes/editMode/AttributesList';\n\nimport classnames from 'classnames';\nimport {uniq} from 'ramda';\nimport ConnectionRelationTypeSelector from '../ConnectionRelationTypeSelector/ConnectionRelationTypeSelector';\nimport ErrorWrapper from '../ErrorWrapper/ErrorWrapper';\nimport EntitySelector from '../attributes/editMode/EntitySelector/EntitySelector';\n\ntype Props = {\n connection: EditingConnection;\n showEmptyEditors?: boolean;\n onChangeAttribute: (attribute: AttributeItem) => void;\n onAddAttributes: (attributes: AttributeItem[]) => void;\n onRemoveAttribute: (attributes: AttributeItem) => void;\n onChangeRelationType?: (value: {type: string; direction: string}) => void;\n onChangeEntity?: (entity: Entity) => void;\n relatedEntity?: Entity;\n inRelationTypes?: TRelationType[];\n outRelationTypes?: TRelationType[];\n entityErrorMessage?: string;\n};\n\nexport const ConnectionEditor = ({\n connection,\n relatedEntity,\n inRelationTypes = [],\n outRelationTypes = [],\n showEmptyEditors,\n entityErrorMessage,\n onChangeAttribute,\n onRemoveAttribute,\n onAddAttributes,\n onChangeRelationType,\n onChangeEntity\n}: Props) => {\n const styles = useStyles();\n const {relation, entity} = connection;\n const {attributes, uri: relationUri, type: relationTypeUri = '', direction} = relation || {};\n const isRelationTypeSelected = Boolean(relationTypeUri);\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n\n const attributeListEntity = useMemo(\n () =>\n relation && {\n attributes,\n ...getActivenessAttributes(relation)\n },\n [relation, attributes]\n );\n\n const relationAttrTypes = useMemo(() => getRelationAttributesList(metadata, relationTypeUri), [\n relationTypeUri,\n metadata\n ]);\n\n const availableEntityTypeUris = useMemo(() => {\n return isRelationTypeSelected\n ? getSuitableEntityTypeUrisForRelationTypes(direction === Directions.OUT, metadata, [\n getRelationType(metadata, relationTypeUri)\n ])\n : uniq(\n getSuitableEntityTypeUrisForRelationTypes(true, metadata, outRelationTypes).concat(\n getSuitableEntityTypeUrisForRelationTypes(false, metadata, inRelationTypes)\n )\n );\n }, [isRelationTypeSelected, relationTypeUri, metadata, inRelationTypes, outRelationTypes]);\n\n const globalSearchRequestOptions = useSelector((state) =>\n mdmModule.selectors.getGlobalSearchRequestOptions(state, ['ovOnly'])\n );\n\n const selectorCompatibleRelation = useMemo(\n () =>\n relation && {\n relationType: relation.type,\n direction: relation.direction\n },\n [relation]\n );\n\n const selectorCompatibleEntity = useMemo(\n () =>\n entity && {\n entityUri: entity.uri,\n entityType: entity.type,\n entityLabel: getLabel(entity.label)\n },\n [entity]\n );\n\n const availableInRelationTypes = useMemo(\n () =>\n entity && entity.uri\n ? inRelationTypes.filter(isAvailableRelationBetweenEntities(false, entity, relatedEntity, metadata))\n : inRelationTypes,\n [entity, inRelationTypes, relatedEntity, metadata]\n );\n\n const availableOutRelationTypes = useMemo(\n () =>\n entity && entity.uri\n ? outRelationTypes.filter(isAvailableRelationBetweenEntities(true, entity, relatedEntity, metadata))\n : outRelationTypes,\n [entity, outRelationTypes, relatedEntity, metadata]\n );\n\n useEffect(() => {\n // autoselecting relation type on mount\n const {type, direction} = getDefaultRelationTypeObject(inRelationTypes, outRelationTypes) || {};\n\n if (!relationTypeUri && type && onChangeRelationType) {\n onChangeRelationType({type: type.uri, direction});\n }\n }, [relationTypeUri, inRelationTypes, outRelationTypes, onChangeRelationType]);\n\n useDidUpdateEffect(() => {\n // autoselecting relation type on entity change\n const {type, direction} =\n getDefaultRelationTypeObject(availableInRelationTypes, availableOutRelationTypes) || {};\n\n if (!relationTypeUri && type) {\n onChangeRelationType({type: type.uri, direction});\n }\n }, [relationTypeUri, entity, availableInRelationTypes, availableOutRelationTypes, onChangeEntity]);\n\n const handleChangeRelationType = useCallback(\n ({type, direction}: {type: TRelationType; direction: string}) => {\n onChangeRelationType({type: type.uri, direction});\n },\n [onChangeRelationType]\n );\n\n return (\n <>\n {onChangeRelationType && (\n <ConnectionRelationTypeSelector\n className={styles.item}\n relation={selectorCompatibleRelation}\n metadata={metadata}\n inRelationTypes={inRelationTypes}\n outRelationTypes={outRelationTypes}\n onChange={handleChangeRelationType}\n />\n )}\n {onChangeEntity && (\n <ErrorWrapper errorMessage={entityErrorMessage} className={styles.item}>\n <EntitySelector\n key={relationTypeUri}\n className={classnames({[styles.dense]: entityErrorMessage})}\n entity={selectorCompatibleEntity || {}}\n entityTypesUris={availableEntityTypeUris}\n max={20}\n globalSearchRequestOptions={globalSearchRequestOptions}\n mode={ModeTypes.EDITING}\n onChange={onChangeEntity}\n onCreate={undefined}\n metadata={metadata}\n attributeTypesSelectionStrategy={undefined}\n />\n </ErrorWrapper>\n )}\n {relationTypeUri && (\n <AttributesList\n attrTypes={relationAttrTypes}\n entity={attributeListEntity}\n showEmptyEditors={showEmptyEditors}\n mode={ModeTypes.EDITING}\n parentUri={relationUri}\n onAddAttributes={onAddAttributes}\n onChangeAttribute={onChangeAttribute}\n onDeleteAttribute={onRemoveAttribute}\n />\n )}\n </>\n );\n};\n","import {makeStyles} from '@material-ui/core/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: '21px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {prop} from 'ramda';\nimport AddIcon from '@material-ui/icons/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 as Typography} from '@material-ui/core';\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 '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n control: {\n height: 'auto'\n },\n dropdownIndicator: {\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 lineHeight: '16px',\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 margin: 'dense',\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 i18n from 'ui-i18n';\nimport NoMessageComponent from './NoMessageComponent';\n\ntype Props = Omit<React.ComponentPropsWithoutRef<typeof NoMessageComponent>, 'message'>;\n\nexport const NoData = (props: Props) => {\n return <NoMessageComponent message={i18n.text('No data available')} {...props} />;\n};\n\nexport default NoData;\n","import React, {forwardRef, useCallback, useContext} from 'react';\nimport {useSelector, useDispatch} from 'react-redux';\nimport {ViewIdContext} from '../../contexts';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {getEntityLink} from '@reltio/mdm-sdk';\n\ntype Props = {\n className?: string;\n value: string;\n children: React.ReactNode;\n};\n\nconst EntityUriLink = forwardRef(({value, children, className}: Props, ref: React.Ref<HTMLAnchorElement>) => {\n const dispatch = useDispatch();\n const viewId = useContext(ViewIdContext);\n const uiPath = useSelector(mdmModule.selectors.getUIPath);\n const generateEntityUrl = (uri: string) => getEntityLink({uiPath, uri});\n const onClick = useCallback(() => {\n dispatch(ui.actions.openEntity({uri: value, viewId}));\n }, [viewId, value, dispatch]);\n return (\n <a\n ref={ref}\n href={generateEntityUrl(value)}\n onClick={(e) => {\n onClick();\n e.stopPropagation();\n e.preventDefault();\n }}\n className={className}\n >\n {children}\n </a>\n );\n});\n\nEntityUriLink.displayName = 'EntityUriLink';\n\nexport default EntityUriLink;\n","import {makeStyles} from '@material-ui/core/styles';\nimport {range} from 'ramda';\nimport {Theme} from '@material-ui/core';\n\nconst nthLiStyles = range(2, 10).reduce(\n (acc, i) => ({\n ...acc,\n [`&:nth-child(${i})`]: {\n paddingLeft: `calc(1em * (${i} - 2))`,\n '&::before': {\n content: '\"└\"',\n display: 'inline-block',\n fontSize: '1em',\n marginRight: '5px',\n color: 'rgba(255, 255, 255, 0.28)'\n }\n }\n }),\n {}\n);\n\nexport const useStyles = makeStyles((theme: Theme & {tooltip: Record<string, string | number>}) => ({\n tooltip: theme.tooltip,\n tooltipContent: {\n minWidth: '165px',\n padding: '4px 2px 2px',\n '& p': {\n fontSize: '11px',\n lineHeight: '13px',\n fontWeight: 500,\n margin: 0,\n color: 'white'\n },\n '& ul': {\n listStyleType: 'none',\n padding: 0,\n margin: 0,\n '& li': {\n fontSize: '10px',\n lineHeight: '11px',\n fontWeight: 500,\n color: 'rgba(255, 255, 255, 0.7)',\n marginTop: '4px',\n ...nthLiStyles,\n '&:last-child': {\n color: 'white'\n }\n },\n '& li + li': {\n marginTop: '2px'\n }\n }\n }\n}));\n","import React from 'react';\nimport {last} from 'ramda';\nimport Tooltip, {TooltipProps} from '@material-ui/core/Tooltip';\n\nimport {useStyles} from './styles';\n\ntype Props = Omit<TooltipProps, 'title'> & {\n pathToTitle?: string[];\n title?: string;\n};\n\nconst HierarchicalAttributeTooltip = ({pathToTitle, children, ...tooltipProps}: Props) => {\n const styles = useStyles();\n const tooltipContent: React.ReactElement | string = pathToTitle?.length ? (\n <div className={styles.tooltipContent}>\n <p>{last(pathToTitle)}</p>\n {pathToTitle.length > 2 && (\n <ul>\n {pathToTitle.map((label) => (\n <li key={label}>{label}</li>\n ))}\n </ul>\n )}\n </div>\n ) : (\n ''\n );\n\n return (\n <Tooltip title={tooltipContent} disableFocusListener classes={{tooltip: styles.tooltip}} {...tooltipProps}>\n {children}\n </Tooltip>\n );\n};\n\nexport default HierarchicalAttributeTooltip;\n","export const SpinnerSmall =\n 'R0lGODlhFQALAKIAAP///8Hf75vL5Van0wB4v////wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAFACwAAAIAFQAHAAADLFi6zPSQFEGpGhgXkrEUQShc1bB1wxcGYzGUZ6eKJGVy8lS1aJxJjaAiAkkAACH5BAkKAAUALAAAAwAUAAUAAAMiWLFbJRC6QakCODjBxIzDlW3dB4UBBmhPWQygwrCR9FZDAgAh+QQJCgAFACwIAAMADAAFAAADFBiqVfIvgBmaWHeC6rCklrdw0JMAACH5BAkKAAUALAAAAgAUAAcAAAMkSLpU/vCRQWmLLmg967hYAIxBV4GRSJoWlo1A6X1usXGMUkcJACH5BAkKAAUALAAAAgAOAAcAAAMdWLpF/qSMORudcYg97M2b0BHXAHIelV0pxizQkwAAOw==';\n","import React from 'react';\nimport {gif2Url} from '@reltio/mdm-sdk';\nimport {SpinnerSmall} from './SpinnerSmall.gif';\n\ntype Props = {\n className?: string;\n};\n\nexport const LoadingSpinner = ({className}: Props) => {\n return <img className={className} alt=\"loading\" src={gif2Url(SpinnerSmall)} />;\n};\n\nexport default LoadingSpinner;\n","import AsyncSelect from 'react-select/async';\nimport withMuiSkin from './withMuiSkin';\n\nexport default withMuiSkin(AsyncSelect);\n","import React, {useMemo, memo} from 'react';\nimport i18n from 'ui-i18n';\nimport {isAvailableRelationType, TRelationType} from '@reltio/mdm-sdk';\nimport {MetadataTypesSelector} from '../MetadataTypesSelector/MetadataTypesSelector';\n\ntype MetadataTypesSelectorProps = React.ComponentProps<typeof MetadataTypesSelector>;\n\ntype Props = {\n relationTypes: TRelationType[];\n selectedRelationTypes: string[];\n enableEmptyValueUnderline?: boolean;\n onChange: (values: string[]) => void;\n single?: boolean;\n placeholder?: string;\n classes?: MetadataTypesSelectorProps['classes'];\n ListLabelProps?: MetadataTypesSelectorProps['ListLabelProps'];\n disabled?: boolean;\n};\n\nexport const RelationTypesSelector = memo(\n ({\n relationTypes,\n selectedRelationTypes,\n single,\n placeholder,\n enableEmptyValueUnderline,\n onChange,\n classes = {},\n ListLabelProps = {},\n disabled = false\n }: Props) => {\n const items = useMemo(() => relationTypes.filter(isAvailableRelationType), [relationTypes]);\n\n return (\n <MetadataTypesSelector\n items={items}\n selectedItemsUris={selectedRelationTypes}\n single={single}\n placeholder={placeholder}\n enableEmptyValueUnderline={enableEmptyValueUnderline}\n onChange={onChange}\n classes={classes}\n ListLabelProps={ListLabelProps}\n disabled={disabled}\n label={i18n.text('Relation type')}\n dataReltioId=\"relation-type-selector\"\n selectionPopupTitle={i18n.text('Select relation types')}\n />\n );\n }\n);\n\nRelationTypesSelector.displayName = 'RelationTypesSelector';\n","import {makeStyles} from '@material-ui/core/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 '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n tabsRoot: {\n width: '100%'\n },\n tabsScrollButton: {\n flex: '0 0 24px'\n },\n tabRoot: {\n fontSize: '0.875rem',\n padding: '7px 18px 5px',\n '@media (min-width: 960px)': {\n minWidth: 'inherit'\n }\n },\n labelWrapper: {\n whiteSpace: 'nowrap',\n letterSpacing: 'normal',\n display: 'flex',\n flexDirection: 'row',\n width: '100%'\n },\n label: {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n fontWeight: 500\n }\n});\n","import React from 'react';\nimport Tabs, {TabsProps} from '@material-ui/core/Tabs';\nimport Tab, {TabProps} from '@material-ui/core/Tab';\nimport ExpandedValueTooltip from '../ExpandedValueTooltip/ExpandedValueTooltip';\n\nimport {useStyles} from './styles';\n\nexport type Tab = {\n label: string;\n value: string;\n additionalLabel?: React.ReactNode;\n dataReltioId?: string;\n};\n\ntype Props = Omit<TabsProps, 'onChange' | 'value' | 'scrollButtons'> & {\n value: string;\n tabs: Tab[];\n onChange: (value: string) => void;\n tabClasses?: TabProps['classes'];\n scrollButtons?: TabsProps['scrollButtons'];\n};\n\nconst ScrollableTabs = ({value, tabs = [], onChange, tabClasses, ...otherProps}: Props) => {\n const styles = useStyles();\n\n const renderLabel = (label: string, additionalLabel: React.ReactNode) => (\n <span className={styles.labelWrapper}>\n <ExpandedValueTooltip value={label}>\n <span className={styles.label}>{label}</span>\n </ExpandedValueTooltip>\n {additionalLabel}\n </span>\n );\n\n const handleChange = (event: React.ChangeEvent, value: string) => onChange(value);\n\n return (\n <Tabs\n value={value}\n onChange={handleChange}\n classes={{\n root: styles.tabsRoot,\n scrollButtons: styles.tabsScrollButton\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n variant=\"scrollable\"\n scrollButtons=\"on\"\n {...otherProps}\n >\n {tabs.map(({label, value, additionalLabel, dataReltioId}) => (\n <Tab\n classes={\n tabClasses || {\n root: styles.tabRoot\n }\n }\n key={value}\n value={value}\n label={renderLabel(label, additionalLabel)}\n data-reltio-id={dataReltioId}\n />\n ))}\n </Tabs>\n );\n};\n\nexport default ScrollableTabs;\n","import React from 'react';\nimport SearchInput, {SearchInputProps} from './SearchInput';\nimport {useStyles} from './styles';\n\nconst WhiteSearchInput = ({classes, ...otherProps}: SearchInputProps) => {\n const styles = useStyles({});\n return (\n <SearchInput\n classes={{\n ...classes,\n focused: styles.white\n }}\n {...otherProps}\n />\n );\n};\n\nexport default WhiteSearchInput;\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n onlyValue: {\n color: 'rgba(0,0,0,.6)',\n fontSize: '13px',\n fontWeight: 'normal',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden'\n },\n select: {\n fontSize: '13px',\n color: 'rgba(0,0,0,.6)',\n paddingLeft: '15px',\n '&&': {\n paddingRight: '35px'\n }\n },\n selectMenu: {\n '& li': {\n fontSize: '13px',\n height: '32px'\n }\n },\n textField: {\n maxWidth: '100%'\n }\n});\n","import React, {useEffect} from 'react';\nimport PropTypes from 'prop-types';\n\nimport {Typography as Typography} from '@material-ui/core';\nimport {useStyles} from './styles';\nimport DropDownEditor from '../editors/DropDownEditor/DropDownEditor';\n\nconst SelectorWithOnlyOptionAutoSelect = ({value, onChange, options, classes = {}, emptyLabel}) => {\n const styles = useStyles();\n\n const [firstOption, ...moreOptions] = options;\n const hasOnlyOneOptionToSelect = moreOptions.length === 0;\n\n useEffect(() => {\n if (hasOnlyOneOptionToSelect && value !== firstOption.value) {\n onChange(firstOption.value);\n }\n }, [firstOption.value]); // eslint-disable-line\n\n const displayEmpty = !!emptyLabel;\n\n return (\n <div className={classes.root}>\n {hasOnlyOneOptionToSelect ? (\n <Typography className={classes.onlyValue || styles.onlyValue} variant={'h6'}>\n {firstOption.label}\n </Typography>\n ) : (\n <DropDownEditor\n displayEmpty={displayEmpty}\n disableUnderline={true}\n classes={{\n select: classes.select || styles.select\n }}\n TextFieldProps={{\n classes: {\n root: classes.textField || styles.textField\n }\n }}\n MenuProps={{\n classes: {\n list: classes.selectMenu || styles.selectMenu\n }\n }}\n value={value || ''}\n entries={displayEmpty ? [{value: '', label: emptyLabel}, ...options] : options}\n onChange={(value) => onChange(value || null)}\n />\n )}\n </div>\n );\n};\n\nSelectorWithOnlyOptionAutoSelect.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n classes: PropTypes.shape({\n root: PropTypes.string,\n onlyValue: PropTypes.string,\n select: PropTypes.string,\n selectMenu: PropTypes.string,\n textField: PropTypes.string\n }),\n emptyLabel: PropTypes.string\n};\n\nexport default SelectorWithOnlyOptionAutoSelect;\n","import {makeStyles} from '@material-ui/core/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 as Typography} from '@material-ui/core';\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 as Typography} from '@material-ui/core';\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 {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewMoreLessLink: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer'\n },\n\n arrow: {\n marginRight: '8px',\n marginLeft: '-2px',\n transform: 'rotate(0deg)',\n transition: 'transform 0.35s ease'\n },\n\n rotated: {\n transform: 'rotate(-180deg)'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {Link as Link} from '@material-ui/core';\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\nimport {useStyles} from './styles';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\n\nconst ViewMoreToggle = ({active, onClick, className}) => {\n const styles = useStyles();\n return (\n <Link className={classnames(styles.viewMoreLessLink, className)} onClick={onClick} underline=\"none\">\n <ArrowDropDownIcon className={classnames(styles.arrow, {[styles.rotated]: active})} />\n {active ? i18n.text('View less') : i18n.text('View more')}\n </Link>\n );\n};\n\nViewMoreToggle.propTypes = {\n active: PropTypes.bool,\n onClick: PropTypes.func,\n className: PropTypes.string\n};\n\nexport default ViewMoreToggle;\n","import {useCallback} from 'react';\nimport {ActivitiesFilter} from '../types';\nimport {getProfileActivities, getProfileActivitiesTotal} from '@reltio/mdm-sdk';\nimport {buildActivitiesFilterString} from '../utils/filters';\n\ntype Props = {\n filter: ActivitiesFilter;\n max: number;\n offset: number;\n entityUri: string;\n};\n\nexport const useProfileActivitiesLoader = ({filter, max, offset, entityUri}: Props) => {\n return useCallback(async () => {\n const filterString = buildActivitiesFilterString(filter);\n const data = await getProfileActivities({filter: filterString, max, offset, entityUri});\n const {total} = await getProfileActivitiesTotal({filter: filterString, entityUri});\n return {data, total};\n }, [filter, max, offset, entityUri]);\n};\n","import React from 'react';\n\nexport const ViewIdContext = React.createContext(null);\n\nViewIdContext.displayName = 'ViewIdContext';\n","import {useCallback} from 'react';\n\nimport {\n Relation,\n EditingConnection,\n isAvailableRelationBetweenEntities,\n Directions,\n getRelationType,\n removeEntityAttribute,\n addEntityAttributes,\n changeEntityAttribute,\n AttributeItem,\n Entity\n} from '@reltio/mdm-sdk';\n\nimport {pipe} from 'ramda';\nimport {useSelector} from 'react-redux';\nimport mdmModule from '@reltio/mdm-module';\n\ntype EditRelationActions = {\n onChangeAttribute: (attribute: AttributeItem) => void;\n onAddAttributes: (attributes: AttributeItem[]) => void;\n onRemoveAttribute: (attributes: AttributeItem) => void;\n onChangeEntity: (entity: Entity) => void;\n onChangeRelationType: (value: {type: string; direction: string}) => void;\n};\n\ntype Props = {\n connection: EditingConnection;\n onConnectionChange: (connection: EditingConnection) => void;\n relatedEntity?: Entity;\n};\n\nexport const useEditableConnection = ({connection, onConnectionChange, relatedEntity}: Props): EditRelationActions => {\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n\n const onRelationChange = useCallback((relation: Relation) => onConnectionChange({...connection, relation}), [\n connection,\n onConnectionChange\n ]);\n\n const handleAddAttributes = useCallback(pipe(addEntityAttributes(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleChangeAttribute = useCallback(pipe(changeEntityAttribute(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleRemoveAttribute = useCallback(pipe(removeEntityAttribute(connection.relation), onRelationChange), [\n connection.relation,\n onRelationChange\n ]);\n\n const handleChangeRelationType = useCallback(\n ({type, direction}) => {\n const newConnection: EditingConnection = {\n entity:\n connection.entity &&\n isAvailableRelationBetweenEntities(\n direction === Directions.OUT,\n connection.entity,\n relatedEntity,\n metadata,\n getRelationType(metadata, type)\n )\n ? connection.entity\n : null,\n relation: {\n ...connection.relation,\n attributes: {},\n type,\n direction\n }\n };\n\n onConnectionChange(newConnection);\n },\n [connection, onConnectionChange, relatedEntity, metadata]\n );\n\n const handleChangeEntity = useCallback((entity) => onConnectionChange({...connection, entity}), [\n connection,\n onConnectionChange\n ]);\n\n return {\n onAddAttributes: handleAddAttributes,\n onChangeAttribute: handleChangeAttribute,\n onRemoveAttribute: handleRemoveAttribute,\n onChangeEntity: handleChangeEntity,\n onChangeRelationType: handleChangeRelationType\n };\n};\n","import {useEffect, useRef} from 'react';\n\nexport const useRunOnceAfterValueInitialization = (cb, value) => {\n const isValueInited = useRef(false);\n useEffect(() => {\n if (value && !isValueInited.current) {\n isValueInited.current = true;\n cb();\n }\n }, [cb, value]);\n};\n","import {useEffect, useState} from 'react';\n\nexport const useSavedState = <T>(getSavedState: () => Promise<T>) => {\n const [isLoaded, setIsLoaded] = useState(false);\n const [savedState, setSavedState] = useState<T | Record<string, never>>({});\n\n useEffect(() => {\n getSavedState()\n .then((savedState) => {\n setSavedState(savedState || {});\n })\n .then((_) => setIsLoaded(true))\n .catch((_) => setIsLoaded(true));\n }, []); // eslint-disable-line\n\n return {isLoaded, savedState};\n};\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 React from 'react';\nimport ClickAwayListener, {ClickAwayListenerProps} from '@material-ui/core/ClickAwayListener';\n\ntype Props = ClickAwayListenerProps;\n\nconst ClickAwayProvider = (props: Props) => {\n return <ClickAwayListener mouseEvent=\"onMouseDown\" {...props} />;\n};\n\nexport default ClickAwayProvider;\n","import {makeStyles} from '@material-ui/core/styles';\nimport {StylesProps} from './types';\n\nconst frontRotateY = (isFlipped: boolean) => `rotateY(${isFlipped ? 180 : 0}deg)`;\nconst frontRotateX = (isFlipped: boolean) => `rotateX(${isFlipped ? 180 : 0}deg)`;\nconst backRotateY = (isFlipped: boolean) => `rotateY(${isFlipped ? 0 : -180}deg)`;\nconst backRotateX = (isFlipped: boolean) => `rotateX(${isFlipped ? 0 : -180}deg)`;\n\nexport const useStyles = makeStyles({\n back: ({isFlipped, direction}: StylesProps) => ({\n WebkitBackfaceVisibility: 'hidden',\n backfaceVisibility: 'hidden',\n height: '100%',\n left: '0',\n position: isFlipped ? 'relative' : 'absolute',\n top: '0',\n transform: direction === 'horizontal' ? backRotateY(isFlipped) : backRotateX(isFlipped),\n transformStyle: 'preserve-3d',\n transition: '0.7s',\n width: '100%',\n display: 'flex'\n }),\n container: ({cardZIndex}: StylesProps) => ({\n perspective: '1000px',\n zIndex: cardZIndex\n }),\n flipper: {\n height: '100%',\n position: 'relative',\n width: '100%'\n },\n front: ({isFlipped, direction}: StylesProps) => ({\n WebkitBackfaceVisibility: 'hidden',\n backfaceVisibility: 'hidden',\n height: '100%',\n left: '0',\n position: isFlipped ? 'absolute' : 'relative',\n top: '0',\n transform: direction === 'horizontal' ? frontRotateY(isFlipped) : frontRotateX(isFlipped),\n transformStyle: 'preserve-3d',\n transition: '0.7s',\n width: '100%',\n zIndex: 2,\n display: 'flex'\n })\n});\n","import {useStyles} from './styles';\nimport React, {useState, useEffect, forwardRef} from 'react';\nimport classnames from 'classnames';\nimport {ComponentProps} from './types';\n\nconst FlipCard = forwardRef(\n (\n {cardZIndex = 'auto', direction = 'vertical', isCardFlipped = false, children, className}: ComponentProps,\n ref: React.RefObject<HTMLDivElement>\n ) => {\n const [isFlipped, setFlipped] = useState(isCardFlipped);\n const styles = useStyles({cardZIndex, direction, isFlipped});\n useEffect(() => {\n if (isCardFlipped !== isFlipped) {\n setFlipped(isCardFlipped);\n }\n }, [isCardFlipped, isFlipped]);\n\n return (\n <div className={classnames(styles.flipper, className)} ref={ref}>\n <div data-id=\"front\" className={styles.front}>\n {children[0]}\n </div>\n <div data-id=\"back\" className={styles.back}>\n {children[1]}\n </div>\n </div>\n );\n }\n);\n\nexport default FlipCard;\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport useCommonStyles from '../styles.js';\nimport Popper from '../../Popper/Popper';\nimport {Grow as Grow} from '@material-ui/core';\nimport Paper, {PaperProps} from '@material-ui/core/Paper';\n\ntype Props = {\n open: boolean;\n anchorEl: HTMLElement;\n className?: string;\n onClose: () => void;\n containerWidth: number;\n containerHeight: number;\n paperProps: Omit<PaperProps, 'evelation'>;\n listContent?: React.ReactNode;\n externalInputField?: React.ReactNode;\n classes?: {\n root?: string;\n };\n};\n\nconst SelectionPopupPopper = ({\n open,\n anchorEl,\n className,\n onClose,\n containerWidth,\n containerHeight,\n paperProps,\n listContent,\n externalInputField,\n classes = {}\n}: Props) => {\n const commonStyles = useCommonStyles({\n containerWidth,\n containerHeight\n });\n\n return (\n <div className={classes.root}>\n {externalInputField}\n <Popper open={open} onClose={onClose} anchorEl={anchorEl} placement=\"bottom-start\" transition>\n {({TransitionProps}) => (\n <Grow {...TransitionProps}>\n <Paper elevation={2} {...paperProps}>\n <div\n className={classnames(commonStyles.container, className)}\n style={{width: containerWidth}}\n >\n <div className={commonStyles.list}>{listContent}</div>\n </div>\n </Paper>\n </Grow>\n )}\n </Popper>\n </div>\n );\n};\n\nexport default SelectionPopupPopper;\n","import {useEffect, useRef} from 'react';\n\nexport const useWhyDidYouUpdate = (name, props) => {\n // Get a mutable ref object where we can store props ...\n // ... for comparison next time this hook runs.\n const previousProps = useRef();\n\n useEffect(() => {\n if (previousProps.current) {\n // Get all keys from previous and current props\n const allKeys = Object.keys({...previousProps.current, ...props});\n // Use this object to keep track of changed props\n const changesObj = {};\n // Iterate through keys\n allKeys.forEach((key) => {\n // If previous is different from current\n if (previousProps.current[key] !== props[key]) {\n // Add to changesObj\n changesObj[key] = {\n from: previousProps.current[key],\n to: props[key]\n };\n }\n });\n\n // If changesObj not empty then output to console\n if (Object.keys(changesObj).length) {\n console.log('[why-did-you-update]', name, changesObj); //eslint-disable-line no-console\n }\n }\n\n // Finally update previousProps with current props for next hook call\n previousProps.current = props;\n });\n};\n","import {useContext, useEffect, useRef} from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\nimport mdmModule, {ui} from '@reltio/mdm-module';\nimport {\n CustomAction,\n CustomActionTaskParams,\n CustomScript,\n CustomScriptPlatform,\n CustomScriptExtension,\n Entity,\n initializeWebWorker,\n isEmptyValue,\n ProcessParams\n} from '@reltio/mdm-sdk';\nimport nanoid from 'nanoid';\nimport {find, map, omit, pick, pipe, prop} from 'ramda';\nimport {useWorkflowCheckPermission} from '../components/workflow';\nimport {InterceptHandlersContext, SandboxAPIContext, SnackbarContext} from '../contexts';\nimport {getWorkerURL, processRequest, Request} from './useAPI';\n\nconst isURLtoProcess = (processApi: string[], url: string) =>\n (processApi || []).some((request) => {\n const regExp = new RegExp(`^${request}$`);\n return request.replace(/\\/*$/, '') === url || (request && regExp.test(url));\n });\n\nconst getCustomViewConfig = (config: CustomScript) => {\n const {processApiResponse, processApiRequest, permissions, files, ...otherProps} = config;\n return {\n action: {processApiResponse, processApiRequest, permissions, files},\n ...otherProps\n };\n};\n\nexport const useCustomScripts = (config: CustomScript[]) => {\n const customScripts = config.reduce((acc, customScript) => {\n if (customScript.platform !== CustomScriptPlatform.CLASSIC) {\n return [...acc, {...customScript, actionId: nanoid()}];\n }\n return acc;\n }, []);\n\n const showSnackbarMessage = useContext(SnackbarContext);\n const {\n addInternalRequestInterceptor,\n addInternalResponseInterceptor,\n removeInternalRequestInterceptor,\n removeInternalResponseInterceptor\n } = useContext(InterceptHandlersContext);\n const qxApi = useContext(SandboxAPIContext);\n\n const dispatch = useDispatch();\n const metadata = useSelector(mdmModule.selectors.getMetadata) || {};\n const entity = useSelector(mdmModule.selectors.getEntity) || ({} as Entity);\n const uiPath = useSelector(mdmModule.selectors.getUIPath);\n const servicesPath = useSelector(mdmModule.selectors.getServicesPath);\n const reltioPath = useSelector(mdmModule.selectors.getReltioPath);\n const tenant: string = useSelector(mdmModule.selectors.getTenant);\n const workerUrl = getWorkerURL(uiPath, tenant);\n const apiPath: string = useSelector(mdmModule.selectors.getApiPath);\n const workflowPath = useSelector(mdmModule.selectors.getWorkflowPath);\n const user = useSelector(mdmModule.selectors.getUser);\n const entityUri = useSelector(mdmModule.selectors.getEntityUri);\n const environment = useSelector(mdmModule.selectors.getWorkflowEnvironmentUrl);\n const workflowCheckPermission = useWorkflowCheckPermission();\n const {type: typeSearch, data: search} = useSelector(mdmModule.selectors.getSearchProviderData) || {};\n const openSearch = (search) => dispatch(ui.actions.openSearch(search));\n\n const requestListeners = useRef({});\n const responseListeners = useRef({});\n const workers = useRef<Record<string, Worker>>({});\n\n const process = ({task, worker, config}: ProcessParams) => {\n if (task) {\n switch (task.action) {\n case CustomAction.LOG: {\n console.log(task.params); //eslint-disable-line no-console\n break;\n }\n case CustomAction.MESSAGE: {\n showSnackbarMessage(task.params as string);\n break;\n }\n case CustomAction.REQUEST: {\n if ((task.params as CustomActionTaskParams)?.headers?.origin !== 'ui') {\n processRequest({\n name: (task.params as CustomActionTaskParams).name,\n paramObject: task as Request,\n permissions: config.action.permissions,\n worker,\n metadata,\n config,\n user,\n apiPath,\n servicesPath,\n tenant,\n workflowPath,\n entity,\n entityUri,\n environment,\n query: typeSearch === 'search' ? search?.query : null,\n openSearch,\n workflowCheckPermission,\n ...qxApi\n });\n } else {\n const {headers, id, url: fakeURL, method, data} = task.params as CustomActionTaskParams;\n const url = fakeURL.replace(reltioPath, apiPath);\n if (requestListeners.current[headers.requestId]) {\n requestListeners.current[headers.requestId].next(url, {\n body: data,\n id,\n task,\n headers,\n method\n });\n requestListeners.current = omit([headers.requestId], requestListeners.current);\n }\n }\n break;\n }\n case CustomAction.RETURN_PROCESSED_API_RESPONSE:\n case CustomAction.RETURN_PROCESSED_API_REQUEST: {\n const {id, data} = task.params as CustomActionTaskParams;\n if (responseListeners.current[id]) {\n responseListeners.current[id].next(data);\n responseListeners.current = omit([id], responseListeners.current);\n }\n break;\n }\n }\n }\n };\n\n useEffect(() => {\n workers.current = customScripts.reduce((acc, customScript) => {\n const customViewConfig = getCustomViewConfig(customScript) as CustomScriptExtension;\n return {\n ...acc,\n [customScript.actionId]: initializeWebWorker(workerUrl, process, customViewConfig)\n };\n }, workers.current);\n return () => {\n Object.keys(workers.current).forEach((actionId) => {\n workers.current[actionId].terminate();\n });\n };\n }, [config]);\n\n const customScriptRequestInterceptor = ({\n options = {},\n url,\n next\n }: {\n next: (url: string, options: RequestInit) => void;\n abort: (error: Error) => void;\n url: string;\n options: RequestInit;\n }) => {\n const fakeURL =\n url.startsWith('/') && !url.startsWith(apiPath)\n ? `${reltioPath}/api/${tenant}${url}`\n : `${reltioPath}${url.replace(apiPath, '')}`;\n\n const actionId = pipe(\n map(pick(['actionId', 'processApiRequest'])),\n find(({processApiRequest}) => isURLtoProcess(processApiRequest, fakeURL)),\n prop('actionId')\n )(customScripts);\n if (actionId) {\n const requestId = nanoid();\n requestListeners.current = {\n ...requestListeners.current,\n [requestId]: {options, next, id: requestId}\n };\n workers.current[actionId].postMessage({\n action: 'apiRequest',\n id: requestId,\n url: fakeURL,\n method: options.method,\n headers: {...options.headers, origin: 'ui', requestId, actionId},\n data: options.body\n });\n } else {\n next(url, options);\n }\n };\n\n const customScriptResponseInterceptor = ({url, response, next, options, abort}) => {\n if (options?.headers?.origin === 'ui') {\n response\n .json()\n .then((data) => {\n responseListeners.current = {\n ...responseListeners.current,\n [options.headers.requestId]: {next}\n };\n workers.current[options.headers?.actionId].postMessage({\n action: 'response',\n result: {data},\n id: options?.id,\n name: options?.task?.params?.name\n });\n })\n .catch((error) => {\n abort(error);\n });\n } else {\n const fakeURL = `${reltioPath}${url.replace(apiPath, '')}`;\n const actionId = pipe(\n map(pick(['actionId', 'processApiResponse'])),\n find(({processApiResponse}) => isURLtoProcess(processApiResponse, fakeURL)),\n prop('actionId')\n )(customScripts);\n if (actionId) {\n const responseId = nanoid();\n response\n .json()\n .then((data) => {\n responseListeners.current = {\n ...responseListeners.current,\n [responseId]: {next}\n };\n workers.current[actionId].postMessage({\n action: 'apiResponse',\n id: responseId,\n url: fakeURL,\n method: options.method,\n data\n });\n })\n .catch((error) => {\n abort(error);\n });\n } else {\n next(response);\n }\n }\n };\n\n useEffect(() => {\n if (!isEmptyValue(customScripts)) {\n addInternalRequestInterceptor(customScriptRequestInterceptor);\n addInternalResponseInterceptor(customScriptResponseInterceptor);\n return () => {\n removeInternalRequestInterceptor(customScriptRequestInterceptor);\n removeInternalResponseInterceptor(customScriptResponseInterceptor);\n };\n }\n }, [config]);\n};\n"],"names":["oppositeDirection","left","right","top","bottom","isHorizontal","anchor","indexOf","getAnchor","theme","direction","defaultTransitionDuration","enter","exit","Drawer","props","ref","_props$anchor","anchorProp","BackdropProps","children","classes","className","_props$elevation","elevation","_props$ModalProps","ModalProps","BackdropPropsProp","onClose","_props$open","open","_props$PaperProps","PaperProps","SlideProps","_props$TransitionComp","TransitionComponent","_props$transitionDura","transitionDuration","_props$variant","variant","other","mounted","current","drawer","square","paper","concat","root","docked","slidingDrawer","in","timeout","appear","BackdropComponent","modal","flex","overflowY","display","flexDirection","height","zIndex","WebkitOverflowScrolling","position","outline","paperAnchorLeft","paperAnchorRight","paperAnchorTop","maxHeight","paperAnchorBottom","paperAnchorDockedLeft","borderRight","palette","divider","paperAnchorDockedTop","borderBottom","paperAnchorDockedRight","borderLeft","paperAnchorDockedBottom","borderTop","name","flip","setTranslateValue","node","transform","rect","getBoundingClientRect","fakeTransform","computedStyle","window","getComputedStyle","getPropertyValue","offsetX","offsetY","transformValues","split","parseInt","innerWidth","width","innerHeight","getTranslateValue","style","webkitTransform","defaultTimeout","_props$direction","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$timeout","childrenRef","handleOwnRef","instance","handleRefIntermediary","handleRef","normalizedTransitionCallback","callback","isAppearing","undefined","handleEnter","handleEntering","transitionProps","mode","webkitTransition","transitions","create","easing","easeOut","transition","handleEntered","handleExiting","handleExit","sharp","handleExited","updatePosition","handleResize","addEventListener","clear","removeEventListener","nodeRef","state","childProps","visibility","_interopRequireDefault","exports","_react","_default","default","createElement","d","path","Component","SvgIcon","muiName","viewBox","xmlns","fill","stroke","strokeWidth","fillRule","x","y","rx","useStyles","makeStyles","container","paddingLeft","listItem","paddingTop","paddingBottom","background","listItemFocus","icon","opacity","flexShrink","marginRight","marginLeft","recommendedIcon","logoIcon","itemAfter","pointerEvents","itemText","padding","margin","fontSize","letterSpacing","whiteSpace","checkbox","checked","marginWrapper","alignItems","defaultCursor","cursor","itemTooltip","marginText","itemTextWrapper","attrType","styles","Icon","type","DataTypes","NestedAttrIcon","ReferenceAttrIcon","SimpleAttrIcon","getIconForAttrType","RecommendedIconWithTooltip","withTooltip","cx","cy","r","memo","groupId","data","isFocused","isRequired","label","labelInText","level","onClick","noop","hideCheckBox","hideIcon","notSelectable","disableHorizontalScrollbar","subItemMargin","LogoIcon","isButton","isNested","showLogoIcon","ExpandedValueTooltip","value","placement","ListItem","classnames","dense","button","focusVisible","selected","tabIndex","Checkbox","disableRipple","disabled","Marginator","tooltipTitle","i18n","showForDisabled","renderIcon","ListItemText","primary","RequiredMark","item","marginBottom","ConnectionEditor","connection","relatedEntity","inRelationTypes","outRelationTypes","showEmptyEditors","entityErrorMessage","onChangeAttribute","onRemoveAttribute","onAddAttributes","onChangeRelationType","onChangeEntity","relation","entity","attributes","uri","relationUri","relationTypeUri","isRelationTypeSelected","Boolean","metadata","useSelector","mdmModule","attributeListEntity","useMemo","getActivenessAttributes","relationAttrTypes","getRelationAttributesList","availableEntityTypeUris","getSuitableEntityTypeUrisForRelationTypes","Directions","getRelationType","uniq","globalSearchRequestOptions","selectorCompatibleRelation","relationType","selectorCompatibleEntity","entityUri","entityType","entityLabel","getLabel","availableInRelationTypes","filter","isAvailableRelationBetweenEntities","availableOutRelationTypes","useEffect","getDefaultRelationTypeObject","useDidUpdateEffect","handleChangeRelationType","useCallback","ConnectionRelationTypeSelector","onChange","ErrorWrapper","errorMessage","EntitySelector","key","entityTypesUris","max","ModeTypes","onCreate","attributeTypesSelectionStrategy","AttributesList","attrTypes","parentUri","onDeleteAttribute","useMenuStyles","addLabel","fontWeight","color","main","textOverflow","overflow","backgroundColor","addIcon","useSingleValueStyles","singleValue","lineHeight","marginTop","Menu","selectProps","createLabel","inputValue","components","MenuWithPopper","prop","Add","propTypes","PropTypes","SingleValue","menuIsOpen","innerProps","Typography","control","dropdownIndicator","valueContainer","formControl","filledInputRoot","filledInputUnderline","inputLabel","customStyles","menu","baseStyles","borderRadius","boxShadow","menuList","group","input","option","overloadMenuListStyle","withoutLabelInputStyle","DropDownSelector","getOptions","options","identity","onClear","textFieldInputRef","TextFieldProps","otherProps","underlineStyle","useInputStyles","setOpen","useState","inputRef","useRef","SelectComponent","AsyncSelect","Select","showIndicatorSeparator","IndicatorSeparator","EmptyStub","ClearIndicator","handleCreate","overloadStylesIfGroup","overloadStylesIfNoLabel","isEmpty","mergedStyles","mergedClasses","placeholder","defaultOptions","defaultTo","loadOptions","cacheOptions","DropdownIndicator","LoadingIndicator","menuPlacement","inputProps","InputProps","underline","isEmptyValue","focused","InputLabelProps","shrink","onMenuOpen","onMenuClose","DropDownSelectorType","NoData","message","EntityUriLink","forwardRef","dispatch","useDispatch","viewId","useContext","ViewIdContext","uiPath","ui","href","getEntityLink","e","stopPropagation","preventDefault","displayName","nthLiStyles","range","reduce","acc","i","content","tooltip","tooltipContent","minWidth","listStyleType","pathToTitle","tooltipProps","length","last","map","Tooltip","title","disableFocusListener","alt","src","gif2Url","withMuiSkin","RelationTypesSelector","relationTypes","selectedRelationTypes","single","enableEmptyValueUnderline","ListLabelProps","items","isAvailableRelationType","selectedItemsUris","dataReltioId","selectionPopupTitle","mark","tabsRoot","tabsScrollButton","tabRoot","labelWrapper","tabs","tabClasses","renderLabel","additionalLabel","Tabs","event","scrollButtons","indicatorColor","textColor","Tab","white","onlyValue","select","paddingRight","selectMenu","textField","maxWidth","SelectorWithOnlyOptionAutoSelect","emptyLabel","firstOption","moreOptions","hasOnlyOneOptionToSelect","displayEmpty","DropDownEditor","disableUnderline","MenuProps","list","entries","DropDownValue","DropDownPlaceholder","Placeholder","viewMoreLessLink","arrow","rotated","ViewMoreToggle","active","Link","ArrowDropDown","useProfileActivitiesLoader","offset","async","filterString","buildActivitiesFilterString","getProfileActivities","total","getProfileActivitiesTotal","React","useEditableConnection","onConnectionChange","onRelationChange","handleAddAttributes","pipe","addEntityAttributes","handleChangeAttribute","changeEntityAttribute","handleRemoveAttribute","removeEntityAttribute","newConnection","useRunOnceAfterValueInitialization","cb","isValueInited","useSavedState","getSavedState","isLoaded","setIsLoaded","savedState","setSavedState","then","_","catch","ClickAwayListener","mouseEvent","frontRotateY","isFlipped","frontRotateX","backRotateY","backRotateX","back","WebkitBackfaceVisibility","backfaceVisibility","transformStyle","cardZIndex","perspective","flipper","front","FlipCard","isCardFlipped","setFlipped","anchorEl","containerWidth","containerHeight","paperProps","listContent","externalInputField","commonStyles","useCommonStyles","Popper","TransitionProps","Grow","Paper","useWhyDidYouUpdate","previousProps","allKeys","Object","keys","changesObj","forEach","from","to","console","log","isURLtoProcess","processApi","url","some","request","regExp","RegExp","replace","test","useCustomScripts","config","customScripts","customScript","platform","CustomScriptPlatform","actionId","nanoid","showSnackbarMessage","SnackbarContext","addInternalRequestInterceptor","addInternalResponseInterceptor","removeInternalRequestInterceptor","removeInternalResponseInterceptor","InterceptHandlersContext","qxApi","SandboxAPIContext","servicesPath","reltioPath","tenant","workerUrl","getWorkerURL","apiPath","workflowPath","user","environment","workflowCheckPermission","useWorkflowCheckPermission","typeSearch","search","openSearch","requestListeners","responseListeners","workers","process","task","worker","action","CustomAction","params","headers","origin","processRequest","paramObject","permissions","query","id","fakeURL","method","requestId","next","body","omit","customViewConfig","processApiResponse","processApiRequest","files","getCustomViewConfig","initializeWebWorker","terminate","customScriptRequestInterceptor","startsWith","pick","find","postMessage","customScriptResponseInterceptor","response","abort","json","result","error","responseId"],"sourceRoot":""}
|