{"version":3,"file":"js/1633-ff39322e9c066ab96623.js","mappings":"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","sources":["webpack://AYTM/./app/_stock/webpack/lib/common/components/ManagedRenderComponent.jsx","webpack://AYTM/./app/_stock/webpack/lib/common/exception-reporter.js","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/popup.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/portal.jsx"],"sourcesContent":["import exceptionReporter from '@aytm/lib/common/exception-reporter'\nimport React, { Component } from 'react'\nimport PropTypes from 'prop-types'\n\n/*\n * compare values\n */\nexport function arrayValuesEqual(next, prev) {\n if (next != prev && Array.isArray(next) && Array.isArray(prev)) {\n if (next.length != prev.length) {\n return false\n } else {\n for (const [i, element] of prev.entries()) {\n if (element != next[i]) return false\n }\n return true\n }\n } else {\n return next == prev\n }\n}\n\nexport function objectValuesEqual(next, prev) {\n if (next != prev && null != next && 'object' == typeof next && null != prev && 'object' == typeof prev) {\n const nextKeys = Object.keys(next)\n const prevKeys = Object.keys(prev)\n if (nextKeys.length == prevKeys.length) {\n for (const nextKey of nextKeys) {\n if (next[nextKey] != prev[nextKey]) {\n return false\n }\n }\n return true\n } else {\n return false\n }\n } else {\n return next == prev\n }\n}\n\n/*\n * ManagedRenderComponent\n */\n\nexport function compareAllProps(nextProps = {}, prevProps = {}) {\n const propTypes = this.constructor.propTypes || {}\n const propTypeKeys = Object.keys(propTypes)\n\n for (const propTypeKey of propTypeKeys) {\n if (!arrayValuesEqual(nextProps[propTypeKey], prevProps[propTypeKey])) {\n return true\n }\n }\n return false\n}\n\nexport function comparePureProps(nextProps = {}, prevProps = {}) {\n const nextPropsKeys = Object.keys(nextProps)\n const prevPropsKeys = Object.keys(prevProps)\n if (nextPropsKeys.length != prevPropsKeys.length) {\n return true\n } else {\n for (const nextPropsKey of nextPropsKeys) {\n if (nextProps[nextPropsKey] != prevProps[nextPropsKey]) {\n return true\n }\n }\n return false\n }\n}\n\nexport function comparePureData(nextProps = {}, prevProps = {}) {\n const nextPropsKeys = Object.keys(nextProps)\n const prevPropsKeys = Object.keys(prevProps)\n for (const nextPropsKey of nextPropsKeys) {\n if ('function' == typeof nextProps[nextPropsKey] && 'function' == typeof prevProps[nextPropsKey]) {\n continue\n }\n if (nextProps[nextPropsKey] != prevProps[nextPropsKey]) {\n return true\n }\n }\n for (const prevPropsKey of prevPropsKeys) {\n if ('function' == typeof nextProps[prevPropsKey] && 'function' == typeof prevProps[prevPropsKey]) {\n continue\n }\n if (nextProps[prevPropsKey] != prevProps[prevPropsKey]) {\n return true\n }\n }\n return false\n}\n\nexport default class ManagedRenderComponent extends Component {\n static propTypes = {\n saveRef: PropTypes.func\n }\n shouldComponentUpdate(nextProps, nextState) {\n if (null == this.shouldComponentUpdateOnProps) {\n const updateOnProps = this.constructor.updateOnProps || 'pure'\n this.shouldComponentUpdateOnProps =\n 'all' == updateOnProps\n ? compareAllProps.bind(this)\n : 'pure' == updateOnProps\n ? comparePureProps.bind(this)\n : 'pure data' == updateOnProps\n ? comparePureData.bind(this)\n : Array.isArray(updateOnProps)\n ? function (nextProps = {}, prevProps = {}) {\n for (const updateOnProp of updateOnProps) {\n if (!arrayValuesEqual(nextProps[updateOnProp], prevProps[updateOnProp])) {\n return true\n }\n }\n return false\n }\n : 'function' == typeof updateOnProps\n ? updateOnProps\n : true === updateOnProps\n ? function () {\n return true\n }\n : false === updateOnProps\n ? function () {\n return false\n }\n : function () {\n return true\n }\n }\n\n if (null == this.shouldComponentUpdateOnState) {\n this.shouldComponentUpdateOnState = function (nextState, prevState) {\n const nextStateKeys = null == nextState ? [] : Object.keys(nextState)\n const prevStateKeys = null == prevState ? [] : Object.keys(prevState)\n if (nextStateKeys.length != prevStateKeys.length) {\n return true\n } else if (0 == nextStateKeys.length) {\n return false\n } else {\n for (const nextStateKey of nextStateKeys) {\n if (nextState[nextStateKey] != prevState[nextStateKey]) {\n return true\n }\n }\n return false\n }\n }\n }\n\n return (\n this.shouldComponentUpdateOnState(nextState, this.state) ||\n this.shouldComponentUpdateOnProps(nextProps, this.props)\n )\n }\n\n UNSAFE_componentWillMount() {\n this.mounted = true\n }\n\n componentWillUnmount() {\n this.mounted = false\n }\n\n saveRef(name, { unwrap = false } = {}) {\n return (\n this[`saveRef${name}`] ||\n (this[`saveRef${name}`] = function (_element) {\n let element = _element\n if (unwrap) {\n while (element && element.refWrappedComponent) {\n element = element.refWrappedComponent\n }\n }\n this[`ref${name}`] = element\n if ('function' == typeof this.props.saveRef) {\n this.props.saveRef(name, element)\n }\n }.bind(this))\n )\n }\n // eslint-disable-next-line no-dupe-class-members\n saveRef = this.saveRef.bind(this)\n\n setState(...args) {\n if (this.mounted) {\n super.setState.apply(this, args)\n }\n }\n // eslint-disable-next-line no-dupe-class-members\n setState = this.setState.bind(this)\n\n componentDidCatch(error, info) {\n exceptionReporter(error, 'common', info)\n this.renderBeforeError = this.render\n this.render =\n 'function' == typeof this.renderError\n ? this.renderError\n : function () {\n return
ERR
\n }\n this.forceUpdate()\n }\n}\n","const state = {\n enable: true\n}\n\nexport default function exceptionReporter(error, ...details) {\n if (state.enable) {\n window.console && window.console.error && window.console.error(error, ...details)\n if (window.Sentry && window.Sentry.withScope) {\n window.Sentry.withScope(function (scope) {\n scope.setExtra('details', details)\n window.Sentry.captureException(error)\n })\n }\n }\n}\n\nexceptionReporter.sendTaggedMessage = function (tag, message, ...details) {\n if (state.enable) {\n window.console && window.console.info && window.console.info(message, ...details)\n if (window.Sentry && window.Sentry.withScope) {\n window.Sentry.withScope(function (scope) {\n scope.setLevel('info')\n scope.setExtra('details', details)\n if (tag) scope.setTag('subsystem', tag)\n window.Sentry.captureMessage(message)\n })\n }\n }\n}\n\nexport function enableExceptionReporter(enabled = true) {\n state.enable = enabled\n}\n","// lib\nimport { Set } from 'immutable'\nimport PropTypes from 'prop-types'\nimport classNames from 'classnames'\nimport React, { Component } from 'react'\nimport autobind from 'autobind-decorator'\nimport { elementDimensions, DOMElementRect, DOMchildOf, stopEvent } from '@aytm/lib/common/func'\n\n// components\nimport ManagedRenderComponent from '@aytm/lib/common/components/ManagedRenderComponent'\nimport Portal from '@aytm/lib/rfd-ui/components/basic/portal'\n\n// styles\nimport '@aytm/lib/rfd-ui/styles/basic/popup.scss'\n\n// constants\nconst Z_INDEX_POPUP_PORTAL = 9020\n\n// TRIGGERS:\n// - click\n// - hover\nexport const DEFAULT_TRIGGER = 'click'\n\n// DIRECTIONS:\n// - right\n// - left\n// - top\n// - bottom\n// - topright\n// - topleft\n// - bottomright\n// - bottomleft\n// - righttop\n// - rightbottom\n// - lefttop\n// - leftbottom\n// - rightdown\n// - rightup\n// - leftdown\n// - leftup\nexport const DEFAULT_DIRECTION = 'rightdown'\n\nexport const ARROW_CLASS_BY_DIRECTION = {\n right: 'rfd-ui-popup-arrow-left',\n left: 'rfd-ui-popup-arrow-right',\n top: 'rfd-ui-popup-arrow-bottom',\n bottom: 'rfd-ui-popup-arrow-top',\n topright: 'rfd-ui-popup-arrow-bottomright',\n topleft: 'rfd-ui-popup-arrow-bottomleft',\n bottomright: 'rfd-ui-popup-arrow-topright',\n bottomleft: 'rfd-ui-popup-arrow-topleft',\n righttop: 'rfd-ui-popup-arrow-lefttop',\n rightbottom: 'rfd-ui-popup-arrow-leftbottom',\n lefttop: 'rfd-ui-popup-arrow-righttop',\n leftbottom: 'rfd-ui-popup-arrow-rightbottom',\n rightdown: 'rfd-ui-popup-arrow-left',\n rightup: 'rfd-ui-popup-arrow-left',\n leftdown: 'rfd-ui-popup-arrow-right',\n leftup: 'rfd-ui-popup-arrow-right'\n}\n\nexport const BORDER_BY_DIRECTION = {\n right: 'right',\n left: 'left',\n top: 'top',\n bottom: 'bottom',\n topright: 'top',\n topleft: 'top',\n bottomright: 'bottom',\n bottomleft: 'bottom',\n righttop: 'right',\n rightbottom: 'right',\n lefttop: 'left',\n leftbottom: 'left',\n rightdown: 'right',\n rightup: 'right',\n leftdown: 'left',\n leftup: 'left'\n}\n\nexport const HEADER_POSITION_BY_DIRECTION = {\n right: 'top',\n left: 'top',\n top: 'bottom',\n bottom: 'top',\n topright: 'bottom',\n topleft: 'bottom',\n bottomright: 'top',\n bottomleft: 'top',\n righttop: 'top',\n rightbottom: 'bottom',\n lefttop: 'top',\n leftbottom: 'bottom',\n rightdown: 'top',\n rightup: 'bottom',\n leftdown: 'top',\n leftup: 'bottom'\n}\n\nconst popups = {\n opened: Set()\n}\n\n/*\n * \n */\n\nexport default class Popup extends ManagedRenderComponent {\n static propTypes = {\n show: PropTypes.bool,\n trigger: PropTypes.string,\n direction: PropTypes.string,\n portal: PropTypes.bool,\n hideOnLeave: PropTypes.bool,\n leaveTimeout: PropTypes.number,\n hideOtherPopupsOnShow: PropTypes.bool,\n dontHideOnOtherPopupShown: PropTypes.bool,\n renderRef: PropTypes.any,\n className: PropTypes.string,\n targetClassName: PropTypes.string,\n accentColor: PropTypes.string,\n\n onShow: PropTypes.func,\n onHide: PropTypes.func,\n\n targetStyle: PropTypes.object,\n\n width: PropTypes.string,\n arrowOffset: PropTypes.number,\n popupOffset: PropTypes.number,\n content: PropTypes.func,\n ContentComponent: PropTypes.func,\n contentStyle: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n contentTheme: PropTypes.string,\n\n header: PropTypes.func,\n headerPosition: PropTypes.string,\n HeaderComponent: PropTypes.func,\n headerStyle: PropTypes.object,\n headerTheme: PropTypes.string,\n headerCloseButton: PropTypes.bool\n }\n static updateOnProps(nextProps, prevProps) {\n return (\n nextProps.renderRef != prevProps.renderRef ||\n nextProps.show != prevProps.show ||\n nextProps.trigger != prevProps.trigger ||\n nextProps.portal != prevProps.portal ||\n nextProps.direction != prevProps.direction ||\n nextProps.width != prevProps.width ||\n nextProps.hideOnLeave != prevProps.hideOnLeave ||\n nextProps.leaveTimeout != prevProps.leaveTimeout ||\n nextProps.hideOtherPopupsOnShow != prevProps.hideOtherPopupsOnShow ||\n nextProps.dontHideOnOtherPopupShown != prevProps.dontHideOnOtherPopupShown ||\n nextProps.targetStyle != prevProps.targetStyle ||\n nextProps.arrowOffset != prevProps.arrowOffset ||\n nextProps.popupOffset != prevProps.popupOffset ||\n nextProps.ContentComponent != prevProps.ContentComponent ||\n nextProps.contentStyle != prevProps.contentStyle ||\n nextProps.contentTheme != prevProps.contentTheme ||\n nextProps.headerPosition != prevProps.headerPosition ||\n nextProps.HeaderComponent != prevProps.HeaderComponent ||\n nextProps.headerStyle != prevProps.headerStyle ||\n nextProps.headerTheme != prevProps.headerTheme ||\n nextProps.headerCloseButton != prevProps.headerCloseButton ||\n nextProps.content != prevProps.content ||\n nextProps.className != prevProps.className ||\n nextProps.targetClassName != prevProps.targetClassName\n )\n }\n\n static contextTypes = {\n popupTrigger: PropTypes.instanceOf(ManagedRenderComponent)\n }\n\n static childContextTypes = {\n popup: PropTypes.instanceOf(ManagedRenderComponent).isRequired,\n popupDirection: PropTypes.string.isRequired\n }\n getChildContext() {\n return {\n popup: this,\n popupDirection: this.props.direction || DEFAULT_DIRECTION\n }\n }\n\n constructor(props) {\n super(props)\n this.state = {\n show: Boolean(props.show),\n portalTargetRect: null\n }\n this.hideOnGlobalClick = null\n this.hideOnLeave = false\n this.hideOnLeaveTimer = null\n this.enteredPopup = false\n this.frozen = false\n\n if (props.show) {\n if (props.hideOtherPopupsOnShow) popups.opened.forEach(popup => (this != popup ? popup.hide() : null))\n if (!props.dontHideOnOtherPopupShown) popups.opened = popups.opened.add(this)\n }\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { show, portal } = this.props\n if (show != prevProps.show) {\n this.setState({ show: Boolean(show) })\n }\n if (portal && this.state.show) {\n this.updatePortalTargetRect()\n }\n if (this.state.show != prevState.show || portal != prevProps.portal) {\n this.watchPortalTargetRect(this.state.show)\n }\n if (this.state.show != prevState.show) {\n const { onShow, onHide } = this.props\n if (this.state.show && 'function' == typeof onShow) {\n onShow()\n } else if (!this.state.show && 'function' == typeof onHide) {\n onHide()\n }\n }\n if (this.state.arrowOffset != prevState.arrowOffset || this.state.popupOffset != prevProps.popupOffset) {\n portal && this.updatePortalTargetRect()\n }\n }\n\n componentDidMount() {\n if (super.componentDidMount) {\n super.componentDidMount()\n }\n const { portal } = this.props\n const { show } = this.state\n const { popupTrigger } = this.context\n this.enteredPopup = false\n if (popupTrigger) popupTrigger.registerPopup(this)\n if (show && portal) {\n this.updatePortalTargetRect()\n this.watchPortalTargetRect(true)\n }\n }\n\n componentWillUnmount() {\n if (super.componentWillUnmount) {\n super.componentWillUnmount()\n }\n this.watchPortalTargetRect(false)\n this.hide()\n }\n\n @autobind\n show(callback) {\n if (this.frozen) return\n const { hideOtherPopupsOnShow = false, dontHideOnOtherPopupShown = false } = this.props\n if (hideOtherPopupsOnShow) popups.opened.forEach(popup => (this != popup ? popup.hide() : null))\n if (!dontHideOnOtherPopupShown) popups.opened = popups.opened.add(this)\n this.setState({ show: true }, callback)\n }\n\n @autobind\n hide(callback) {\n if (this.frozen) return\n popups.opened = popups.opened.remove(this)\n this.enteredPopup = false\n this.setState({ show: false, portalTargetRect: null }, callback)\n if (this.hideOnGlobalClick) {\n document.removeEventListener('click', this.hideOnGlobalClick, true)\n this.hideOnGlobalClick = null\n }\n this.hideOnLeave = false\n if (this.hideOnLeaveTimer) clearTimeout(this.hideOnLeaveTimer)\n }\n\n @autobind\n freeze() {\n this.frozen = true\n }\n\n @autobind\n unfreeze() {\n this.frozen = false\n }\n\n @autobind\n onClickTrigger(event, triggeredBy = this) {\n const popupElement = this.refPopup && this.refPopup.refPopup ? this.refPopup.refPopup : null\n if (popupElement && DOMchildOf(event.target, popupElement)) {\n return false\n }\n const { show } = this.state\n if (show) this.hide()\n else {\n this.show(() => {\n document.addEventListener(\n 'click',\n (this.hideOnGlobalClick = event => {\n const triggerElement = triggeredBy.refPopupTrigger || triggeredBy.refPopupTarget\n const popupElement = this.refPopup && this.refPopup.refPopup ? this.refPopup.refPopup : null\n if (\n (!triggerElement || !DOMchildOf(event.target, triggerElement)) &&\n (!popupElement || !DOMchildOf(event.target, popupElement))\n ) {\n this.onClickTrigger(event, triggeredBy)\n }\n }),\n true\n )\n })\n }\n return true\n }\n\n @autobind\n onClickTarget(event) {\n this.onClickTrigger(event, this)\n }\n\n @autobind\n onEnterTrigger(/*e, triggeredBy = this*/) {\n if (this.hideOnLeaveTimer) clearTimeout(this.hideOnLeaveTimer)\n this.hideOnLeave = null == this.props.hideOnLeave ? true : this.props.hideOnLeave\n this.show()\n }\n\n @autobind\n onEnterTarget(event) {\n this.onEnterTrigger(event, this)\n }\n\n @autobind\n onLeaveTrigger(/*e, triggeredBy = this*/) {\n const { hideOnLeave, leaveTimeout } = this.props\n if (this.hideOnLeave && false !== hideOnLeave) {\n if (this.hideOnLeaveTimer) clearTimeout(this.hideOnLeaveTimer)\n this.hideOnLeaveTimer = setTimeout(() => {\n this.hideOnLeaveTimer = null\n if (!this.enteredPopup) {\n this.hide()\n }\n }, leaveTimeout || 200)\n }\n }\n\n @autobind\n onLeaveTarget(event) {\n this.onLeaveTrigger(event, this)\n }\n\n @autobind\n onEnterPopup() {\n this.enteredPopup = true\n }\n\n @autobind\n onLeavePopup(event) {\n this.enteredPopup = false\n this.onLeaveTrigger(event, this.refPopup)\n }\n\n @autobind\n getDimensions({ fast = false } = {}) {\n return this.refPopupTarget\n ? elementDimensions(this.refPopupTarget, fast)\n : { width: null, widthUnits: '', height: null, heightUnits: '' }\n }\n\n @autobind\n renderContentInline(content) {\n return content\n }\n\n @autobind\n updatePortalTargetRect(callback) {\n if (this.refPopupTarget) {\n const { portalTargetRect: curPortalTargetRect } = this.state\n const portalTargetRect = DOMElementRect(this.refPopupTarget)\n if (\n null == curPortalTargetRect ||\n curPortalTargetRect.top != portalTargetRect.top ||\n curPortalTargetRect.bottom != portalTargetRect.bottom ||\n curPortalTargetRect.left != portalTargetRect.left ||\n curPortalTargetRect.right != portalTargetRect.right ||\n curPortalTargetRect.width != portalTargetRect.width ||\n curPortalTargetRect.height != portalTargetRect.height\n ) {\n this.setState({ portalTargetRect }, callback)\n } else {\n if ('function' == typeof callback) {\n callback()\n }\n }\n } else {\n this.setState({ portalTargetRect: null }, callback)\n }\n }\n\n @autobind\n onWindowResize() {\n this.updatePortalTargetRect()\n }\n\n @autobind\n watchPortalTargetRect(watch = true) {\n if (watch && !this.portalTargetRectWatcherAdded) {\n window.addEventListener('resize', this.onWindowResize)\n this.portalTargetRectWatcherAdded = true\n } else if (this.portalTargetRectWatcherAdded) {\n window.removeEventListener('resize', this.onWindowResize)\n this.portalTargetRectWatcherAdded = false\n }\n }\n\n @autobind\n renderContentInPortal(content) {\n const { direction = DEFAULT_DIRECTION } = this.props\n const { portalTargetRect } = this.state\n\n if (null == portalTargetRect) {\n return null\n }\n\n const borderByDirection = BORDER_BY_DIRECTION[direction]\n\n return (\n \n \n {content}\n \n \n )\n }\n\n render() {\n const {\n trigger,\n direction = DEFAULT_DIRECTION,\n portal = false,\n\n targetStyle,\n\n width: contentWidth,\n arrowOffset = 0,\n popupOffset = 0,\n content,\n ContentComponent = PopupContent,\n accentColor,\n contentStyle,\n contentTheme,\n className,\n targetClassName,\n\n header,\n headerPosition,\n HeaderComponent,\n headerStyle,\n headerTheme,\n headerCloseButton,\n\n renderRef,\n children\n } = this.props\n const { show } = this.state\n return (\n \n \n {children}\n \n {show && 'function' == typeof content\n ? (portal ? this.renderContentInPortal : this.renderContentInline)(\n \n )\n : null}\n \n )\n }\n}\n\n/*\n * \n */\n\nexport class PopupContent extends ManagedRenderComponent {\n static propTypes = {\n direction: PropTypes.string,\n\n width: PropTypes.string,\n arrowOffset: PropTypes.number,\n popupOffset: PropTypes.number,\n content: PropTypes.func.isRequired,\n contentStyle: PropTypes.object,\n contentTheme: PropTypes.string,\n\n className: PropTypes.string,\n\n header: PropTypes.func,\n headerPosition: PropTypes.string,\n HeaderComponent: PropTypes.func,\n headerStyle: PropTypes.object,\n headerTheme: PropTypes.string,\n headerCloseButton: PropTypes.bool,\n\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n hidePopup: PropTypes.func,\n\n renderRef: PropTypes.any\n }\n static updateOnProps(nextProps, prevProps) {\n return (\n nextProps.renderRef != prevProps.renderRef ||\n nextProps.direction != prevProps.direction ||\n nextProps.width != prevProps.width ||\n nextProps.arrowOffset != prevProps.arrowOffset ||\n nextProps.popupOffset != prevProps.popupOffset ||\n nextProps.className != prevProps.className ||\n nextProps.contentStyle != prevProps.contentStyle ||\n nextProps.contentTheme != prevProps.contentTheme ||\n nextProps.headerPosition != prevProps.headerPosition ||\n nextProps.HeaderComponent != prevProps.HeaderComponent ||\n nextProps.headerStyle != prevProps.headerStyle ||\n nextProps.headerTheme != prevProps.headerTheme ||\n nextProps.headerCloseButton != prevProps.headerCloseButton\n )\n }\n\n static childContextTypes = {\n popupContent: PropTypes.instanceOf(ManagedRenderComponent).isRequired\n }\n getChildContext() {\n return {\n popupContent: this\n }\n }\n\n static repositionStyles = {\n right: d => {\n return {\n popup: {\n top: '50%',\n right: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.popup.height / 2 + d.arrow.offset}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.popup.height / 2 - d.arrow.height / 2 + d.arrow.offset}${d.popup.heightUnits}`,\n left: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n righttop: d => {\n return {\n popup: {\n top: `${d.popup.offset}${d.popup.heightUnits}`,\n right: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: 0\n },\n arrow: {\n top: `${d.arrow.offset}${d.arrow.heightUnits}`,\n left: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n rightbottom: d => {\n return {\n popup: {\n bottom: `${d.popup.offset}${d.popup.heightUnits}`,\n right: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: 0\n },\n arrow: {\n bottom: `${d.arrow.offset}${d.arrow.heightUnits}`,\n left: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n left: d => {\n return {\n popup: {\n top: '50%',\n left: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.popup.height / 2 + d.arrow.offset}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.popup.height / 2 - d.arrow.height / 2 + d.arrow.offset}${d.popup.heightUnits}`,\n right: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n lefttop: d => {\n return {\n popup: {\n top: `${d.popup.offset}${d.popup.heightUnits}`,\n left: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: 0\n },\n arrow: {\n top: `${d.arrow.offset}${d.arrow.heightUnits}`,\n right: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n leftbottom: d => {\n return {\n popup: {\n bottom: `${d.popup.offset}${d.popup.heightUnits}`,\n left: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: 0\n },\n arrow: {\n bottom: `${d.arrow.offset}${d.arrow.heightUnits}`,\n right: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n top: d => {\n return {\n popup: {\n left: '50%',\n margin: `0 0 0 -${d.popup.width / 2 + d.arrow.offset}${d.popup.widthUnits}`,\n top: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`\n },\n arrow: {\n left: `${d.popup.width / 2 - d.arrow.width / 2 + d.arrow.offset}${d.popup.widthUnits}`,\n bottom: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n topright: d => {\n return {\n popup: {\n right: `${d.popup.offset}${d.popup.widthUnits}`,\n top: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`,\n margin: 0\n },\n arrow: {\n right: `${d.arrow.offset}${d.arrow.widthUnits}`,\n bottom: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n topleft: d => {\n return {\n popup: {\n left: `${d.popup.offset}${d.popup.widthUnits}`,\n top: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`,\n margin: 0\n },\n arrow: {\n left: `${d.arrow.offset}${d.arrow.widthUnits}`,\n bottom: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n bottom: d => {\n return {\n popup: {\n left: '50%',\n margin: `0 0 0 -${d.popup.width / 2 + d.arrow.offset}${d.popup.widthUnits}`,\n bottom: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`\n },\n arrow: {\n left: `${d.popup.width / 2 - d.arrow.width / 2 + d.arrow.offset}${d.popup.widthUnits}`,\n top: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n bottomright: d => {\n return {\n popup: {\n right: `${d.popup.offset}${d.popup.widthUnits}`,\n bottom: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`,\n margin: 0\n },\n arrow: {\n right: `${d.arrow.offset}${d.arrow.widthUnits}`,\n top: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n bottomleft: d => {\n return {\n popup: {\n left: `${d.popup.offset}${d.popup.widthUnits}`,\n bottom: `-${d.popup.height + d.arrow.height}${d.popup.heightUnits}`,\n margin: 0\n },\n arrow: {\n left: `${d.arrow.offset}${d.arrow.widthUnits}`,\n top: `-${d.arrow.height}${d.arrow.heightUnits}`\n }\n }\n },\n rightdown: d => {\n return {\n popup: {\n top: '50%',\n right: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.arrow.height / 2}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.arrow.offset}${d.arrow.heightUnits}`,\n left: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n rightup: d => {\n return {\n popup: {\n top: '50%',\n right: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.popup.height - d.arrow.height / 2}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.popup.height - d.arrow.height - d.arrow.offset}${d.arrow.heightUnits}`,\n left: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n leftdown: d => {\n return {\n popup: {\n top: '50%',\n left: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.arrow.height / 2}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.arrow.offset}${d.arrow.heightUnits}`,\n right: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n },\n leftup: d => {\n return {\n popup: {\n top: '50%',\n left: `-${d.popup.width + d.arrow.width}${d.popup.widthUnits}`,\n margin: `-${d.popup.height - d.arrow.height / 2}${d.popup.heightUnits} 0 0 0`\n },\n arrow: {\n top: `${d.popup.height - d.arrow.height - d.arrow.offset}${d.arrow.heightUnits}`,\n right: `-${d.arrow.width}${d.arrow.widthUnits}`\n }\n }\n }\n }\n\n constructor(props) {\n super(props)\n this.state = {\n positioned: false,\n popupPosition: null,\n arrowPosition: null\n }\n }\n\n @autobind\n getDimensions({ popup = true, arrow = true, fast = false } = {}) {\n const positions = {}\n\n if (popup && this.refPopup) {\n const { popupOffset = 0 } = this.props\n positions.popup = elementDimensions(this.refPopup, fast)\n positions.popup.offset = popupOffset\n }\n\n if (arrow && this.refPopupArrow) {\n const { arrowOffset = 0 } = this.props\n positions.arrow = elementDimensions(this.refPopupArrow, fast)\n positions.arrow.offset = arrowOffset\n }\n\n return positions\n }\n\n @autobind\n reposition({ direction = this.props.direction } = {}) {\n this.setState({ positioned: false }, () => {\n if (this.refPopup && this.refPopupArrow) {\n const positions =\n (PopupContent.repositionStyles[direction] || PopupContent.repositionStyles[DEFAULT_DIRECTION])(\n this.getDimensions()\n ) || {}\n\n const newState = {\n positioned: true,\n popupPosition: positions.popup,\n arrowPosition: positions.arrow\n }\n this.setState(newState)\n }\n })\n }\n\n @autobind\n saveRefPopup(element) {\n if (this.refPopup != element) {\n if (this.resizeObserver) {\n if (this.refPopup) {\n this.resizeObserver.unobserve(this.refPopup)\n }\n if (element) {\n this.resizeObserver.observe(element)\n }\n }\n this.refPopup = element\n }\n }\n\n componentDidMount() {\n this.reposition()\n if ('function' == typeof ResizeObserver) {\n this.resizeObserver = new ResizeObserver(() => {\n this.reposition()\n })\n if (this.refPopup) {\n this.resizeObserver.observe(this.refPopup)\n }\n }\n }\n\n componentWillUnmount() {\n super.componentWillUnmount()\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps /*, nextContext*/) {\n if (\n this.props.direction != nextProps.direction ||\n this.props.width != nextProps.width ||\n this.props.contentStyle != nextProps.contentStyle ||\n this.props.contentTheme != nextProps.contentTheme ||\n this.props.headerPosition != nextProps.headerPosition ||\n this.props.HeaderComponent != nextProps.HeaderComponent ||\n this.props.headerStyle != nextProps.headerStyle ||\n this.props.headerTheme != nextProps.headerTheme ||\n this.props.arrowOffset != nextProps.arrowOffset ||\n this.props.popupOffset != nextProps.popupOffset\n ) {\n this.reposition({ direction: nextProps.direction })\n }\n }\n\n @autobind\n renderHeader() {\n const {\n header,\n headerPosition,\n HeaderComponent = PopupContentHeader,\n headerStyle,\n headerTheme,\n headerCloseButton,\n renderRef\n } = this.props\n return 'function' == typeof header ? (\n \n ) : null\n }\n\n render() {\n const {\n direction,\n width: contentWidth,\n className,\n content,\n contentStyle,\n contentTheme,\n accentColor,\n header,\n onMouseEnter,\n onMouseLeave,\n hidePopup\n } = this.props\n\n const headerPosition =\n 'top' == this.props.headerPosition || 'bottom' == this.props.headerPosition\n ? this.props.headerPosition\n : HEADER_POSITION_BY_DIRECTION[direction] || HEADER_POSITION_BY_DIRECTION[DEFAULT_DIRECTION]\n const { positioned, popupPosition, arrowPosition } = this.state\n return (\n \n \n {'bottom' != headerPosition && this.renderHeader()}\n \n {'function' == typeof content ? content({ hidePopup }) : null}\n \n {'bottom' == headerPosition && this.renderHeader()}\n \n )\n }\n}\n\n/*\n * \n */\n\nexport class PopupContentHeader extends ManagedRenderComponent {\n static propTypes = {\n header: PropTypes.func,\n headerPosition: PropTypes.string,\n HeaderComponent: PropTypes.func,\n headerStyle: PropTypes.object,\n headerTheme: PropTypes.string,\n headerCloseButton: PropTypes.bool,\n renderRef: PropTypes.any\n }\n static updateOnProps(nextProps, prevProps) {\n return (\n nextProps.renderRef != prevProps.renderRef ||\n nextProps.headerPosition != prevProps.headerPosition ||\n nextProps.HeaderComponent != prevProps.HeaderComponent ||\n nextProps.headerStyle != prevProps.headerStyle ||\n nextProps.headerTheme != prevProps.headerTheme ||\n nextProps.headerCloseButton != prevProps.headerCloseButton\n )\n }\n\n render() {\n const { header, headerStyle, headerTheme, headerCloseButton = false } = this.props\n return (\n \n {headerCloseButton && (\n \n \n \n )}\n {header()}\n \n )\n }\n}\n\n/*\n * \n */\n\nexport class PopupCloseButton extends ManagedRenderComponent {\n static propTypes = {\n className: PropTypes.string,\n style: PropTypes.object,\n onClose: PropTypes.func\n }\n static updateOnProps(nextProps, prevProps) {\n return nextProps.className != prevProps.className || nextProps.style != prevProps.style\n }\n\n static contextTypes = {\n popup: PropTypes.instanceOf(ManagedRenderComponent)\n }\n\n @autobind\n closePopup(event) {\n const { popup } = this.context\n const { onClose } = this.props\n if (popup) {\n popup.hide()\n }\n if (onClose) {\n onClose()\n }\n stopEvent(event)\n }\n\n render() {\n const { className, style, children } = this.props\n return (\n
\n {children}\n
\n )\n }\n}\n\n/*\n * \n */\n\nexport class PopupTrigger extends ManagedRenderComponent {\n static propTypes = {\n trigger: PropTypes.string,\n className: PropTypes.string,\n style: PropTypes.object,\n renderRef: PropTypes.any\n }\n static updateOnProps(/*nextProps, prevProps*/) {\n return true\n }\n\n static contextTypes = {\n popup: PropTypes.instanceOf(ManagedRenderComponent)\n }\n\n static childContextTypes = {\n popupTrigger: PropTypes.instanceOf(ManagedRenderComponent).isRequired\n }\n getChildContext() {\n return {\n popupTrigger: this\n }\n }\n\n constructor(props) {\n super(props)\n this.popup = null\n }\n\n @autobind\n registerPopup(popup) {\n this.popup = popup\n }\n\n @autobind\n onClickTrigger(event) {\n const popup = this.context.popup || this.popup\n if (popup) popup.onClickTrigger(event, this)\n }\n\n @autobind\n onEnterTrigger(event) {\n const popup = this.context.popup || this.popup\n if (popup) popup.onEnterTrigger(event, this)\n }\n\n @autobind\n onLeaveTrigger(event) {\n const popup = this.context.popup || this.popup\n if (popup) popup.onLeaveTrigger(event, this)\n }\n\n render() {\n const { trigger = DEFAULT_TRIGGER, className, style, children } = this.props\n return (\n \n {children}\n \n )\n }\n}\n\n/*\n * \n */\n\nexport class PopupContentImage extends Component {\n static contextTypes = {\n popupContent: PropTypes.instanceOf(PopupContent)\n }\n\n @autobind\n onImageLoad() {\n const { popupContent } = this.context\n if (popupContent) {\n setTimeout(() => {\n popupContent.reposition()\n }, 0)\n setTimeout(() => {\n // control shot!\n popupContent.reposition()\n }, 100)\n }\n }\n\n render() {\n return \"\"\n }\n}\n","import PropTypes from 'prop-types'\nimport ReactDOM from 'react-dom'\n\nimport ManagedRenderComponent from '@aytm/lib/common/components/ManagedRenderComponent'\n\nexport default class Portal extends ManagedRenderComponent {\n static propTypes = {\n firstChild: PropTypes.bool,\n nodeStyle: PropTypes.object,\n nodeID: PropTypes.string\n }\n\n static updateOnProps = true\n\n constructor(props) {\n super(props)\n this.portalElement = document.createElement('div')\n if (props.nodeStyle) {\n for (const styleKey in props.nodeStyle) {\n this.portalElement.style[styleKey] = props.nodeStyle[styleKey]\n }\n }\n if (props.nodeID) {\n this.portalElement.id = props.nodeID\n }\n }\n\n componentDidMount() {\n if (super.componentDidMount) {\n super.componentDidMount()\n }\n const { firstChild = false } = this.props\n if (firstChild) {\n document.body.insertBefore(this.portalElement, document.body.firstChild)\n } else {\n document.body.appendChild(this.portalElement)\n }\n }\n\n componentWillUnmount() {\n if (super.componentWillUnmount) {\n super.componentWillUnmount()\n }\n if (this.portalElement.parentNode == document.body) {\n document.body.removeChild(this.portalElement)\n }\n }\n\n render() {\n return ReactDOM.createPortal(this.props.children, this.portalElement)\n }\n}\n"],"names":["arrayValuesEqual","next","prev","Array","isArray","length","_step","_iterator","_createForOfIteratorHelper","entries","s","n","done","_ref2","_slicedToArray","value","i","err","e","f","objectValuesEqual","nextKeys","Object","keys","prevKeys","_step2","_iterator2","nextKey","compareAllProps","nextProps","arguments","undefined","prevProps","propTypes","this","constructor","_i","_propTypeKeys","propTypeKey","comparePureProps","nextPropsKeys","prevPropsKeys","_step3","_iterator3","nextPropsKey","comparePureData","_i2","_nextPropsKeys","_i3","_prevPropsKeys","prevPropsKey","ManagedRenderComponent","_Component","_this","_classCallCheck","_len","args","_key","_callSuper","concat","saveRef","bind","setState","_inherits","key","nextState","shouldComponentUpdateOnProps","updateOnProps","_step4","_iterator4","updateOnProp","shouldComponentUpdateOnState","prevState","nextStateKeys","prevStateKeys","_step5","_iterator5","nextStateKey","state","props","mounted","name","_ref3$unwrap","unwrap","_element","element","refWrappedComponent","_len2","_key2","_get","_getPrototypeOf","prototype","apply","error","info","exceptionReporter","renderBeforeError","render","renderError","React","style","background","fontSize","lineHeight","color","forceUpdate","Component","enable","details","_window$console","window","console","Sentry","withScope","scope","setExtra","captureException","sendTaggedMessage","tag","message","_window$console2","setLevel","setTag","captureMessage","DEFAULT_DIRECTION","ARROW_CLASS_BY_DIRECTION","right","left","top","bottom","topright","topleft","bottomright","bottomleft","righttop","rightbottom","lefttop","leftbottom","rightdown","rightup","leftdown","leftup","BORDER_BY_DIRECTION","HEADER_POSITION_BY_DIRECTION","popups","opened","Set","Popup","_Popup","_ManagedRenderCompone5","_this5","show","Boolean","portalTargetRect","hideOnGlobalClick","hideOnLeave","hideOnLeaveTimer","enteredPopup","frozen","hideOtherPopupsOnShow","forEach","popup","hide","dontHideOnOtherPopupShown","add","_createClass","popupDirection","direction","_this$props6","portal","updatePortalTargetRect","watchPortalTargetRect","_this$props7","onShow","onHide","arrowOffset","popupOffset","call","popupTrigger","context","registerPopup","callback","_this6","_this$props8","_this$props8$hideOthe","_this$props8$dontHide","remove","document","removeEventListener","clearTimeout","event","_this7","triggeredBy","popupElement","refPopup","DOMchildOf","target","addEventListener","triggerElement","refPopupTrigger","refPopupTarget","onClickTrigger","onEnterTrigger","_this8","_this$props9","leaveTimeout","setTimeout","onLeaveTrigger","_ref3$fast","fast","elementDimensions","width","widthUnits","height","heightUnits","content","curPortalTargetRect","DOMElementRect","portalTargetRectWatcherAdded","onWindowResize","_this$props$direction","borderByDirection","Portal","nodeStyle","position","zIndex","overflow","_this$props10","trigger","_this$props10$directi","_this$props10$portal","targetStyle","contentWidth","_this$props10$arrowOf","_this$props10$popupOf","_this$props10$Content","ContentComponent","PopupContent","accentColor","contentStyle","contentTheme","className","targetClassName","header","headerPosition","HeaderComponent","headerStyle","headerTheme","headerCloseButton","renderRef","children","ref","onClick","onClickTarget","onMouseEnter","onEnterTarget","onMouseLeave","onLeaveTarget","renderContentInPortal","renderContentInline","onEnterPopup","onLeavePopup","hidePopup","PropTypes","contextTypes","childContextTypes","isRequired","_applyDecoratedDescriptor","_class5","autobind","getOwnPropertyDescriptor","_PopupContent","_ManagedRenderCompone","positioned","popupPosition","arrowPosition","popupContent","_ref","_ref$popup","_ref$arrow","arrow","_ref$fast","positions","_this$props$popupOffs","offset","refPopupArrow","_this$props$arrowOffs","_this2","_ref2$direction","repositionStyles","getDimensions","newState","resizeObserver","unobserve","observe","_this3","reposition","ResizeObserver","disconnect","_this$props","_this$props$HeaderCom","PopupContentHeader","_this$props2","_this$state","classNames","saveRefPopup","assign","borderLeftColor","renderHeader","_defineProperty","d","margin","_class","_ManagedRenderCompone2","_this$props3","_this$props3$headerCl","PopupCloseButton","_PopupCloseButton","_ManagedRenderCompone3","onClose","stopEvent","_this$props4","closePopup","_class2","PopupTrigger","_PopupTrigger","_ManagedRenderCompone4","_this4","_this$props5","_this$props5$trigger","_class3","PopupContentImage","_PopupContentImage","_extends","alt","onLoad","onImageLoad","onError","_class4","portalElement","createElement","styleKey","nodeID","id","_this$props$firstChil","firstChild","body","insertBefore","appendChild","parentNode","removeChild","ReactDOM"],"sourceRoot":""}