{"version":3,"sources":["webpack:///./node_modules/react-focus-lock/dist/es2015/FocusGuard.js","webpack:///./node_modules/react-focus-lock/dist/es2015/medium.js","webpack:///./node_modules/react-focus-lock/dist/es2015/Lock.js","webpack:///./node_modules/focus-lock/dist/es2015/constants.js","webpack:///./node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack:///./node_modules/react-clientside-effect/lib/index.es.js","webpack:///./node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/array.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/all-affected.js","webpack:///./node_modules/focus-lock/dist/es2015/focusInside.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/correctFocus.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/firstFocus.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/is.js","webpack:///./node_modules/focus-lock/dist/es2015/solver.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/tabOrder.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/tabUtils.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/tabbables.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/DOMutils.js","webpack:///./node_modules/focus-lock/dist/es2015/utils/parenting.js","webpack:///./node_modules/focus-lock/dist/es2015/focusMerge.js","webpack:///./node_modules/focus-lock/dist/es2015/setFocus.js","webpack:///./node_modules/focus-lock/dist/es2015/index.js","webpack:///./node_modules/react-focus-lock/dist/es2015/util.js","webpack:///./node_modules/react-focus-lock/dist/es2015/Trap.js","webpack:///./node_modules/focus-lock/dist/es2015/focusIsHidden.js","webpack:///./node_modules/focus-lock/dist/es2015/focusables.js","webpack:///./node_modules/react-focus-lock/dist/es2015/Combination.js","webpack:///./node_modules/react-focus-lock/dist/es2015/index.js","webpack:///./node_modules/use-sidecar/dist/es2015/medium.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/medium.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/UI.js","webpack:///./node_modules/react-remove-scroll-bar/dist/es2015/constants.js","webpack:///./node_modules/use-sidecar/dist/es2015/exports.js","webpack:///./node_modules/get-nonce/dist/es2015/index.js","webpack:///./node_modules/react-style-singleton/dist/es2015/singleton.js","webpack:///./node_modules/react-style-singleton/dist/es2015/component.js","webpack:///./node_modules/react-style-singleton/dist/es2015/hook.js","webpack:///./node_modules/react-remove-scroll-bar/dist/es2015/utils.js","webpack:///./node_modules/react-remove-scroll-bar/dist/es2015/component.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/handleScroll.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/SideEffect.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/sidecar.js","webpack:///./node_modules/react-remove-scroll/dist/es2015/Combination.js","webpack:///./node_modules/use-callback-ref/dist/es2015/useMergeRef.js","webpack:///./node_modules/use-callback-ref/dist/es2015/useRef.js","webpack:///./node_modules/use-callback-ref/dist/es2015/assignRef.js","webpack:///./node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack:///./node_modules/warning/warning.js","webpack:///./node_modules/tslib/tslib.es6.js"],"names":["hiddenGuard","width","height","padding","overflow","position","top","left","_ref","children","key","style","propTypes","defaultProps","mediumFocus","target","currentTarget","mediumBlur","mediumEffect","mediumSidecar","async","emptyArray","FocusLock","props","parentRef","_extends2","_React$useState","realObserved","setObserved","observed","isActive","originalFocusedElement","disabled","noFocusGuards","persistentFocus","crossFrame","autoFocus","group","allowTextSelection","className","whiteList","_props$shards","shards","_props$as","as","Container","_props$lockProps","lockProps","containerProps","SideCar","sideCar","shouldReturnFocus","returnFocus","onActivationCallback","onActivation","onDeactivationCallback","onDeactivation","id","current","document","activeElement","allowDefer","Boolean","focus","focusOptions","undefined","Promise","resolve","then","onFocus","event","useMedium","onBlur","setObserveNode","newObserved","hasLeadingGuards","hasTailingGuards","mergedRef","useMergeRef","tabIndex","ref","_setPrototypeOf","o","p","Object","setPrototypeOf","__proto__","reducePropsToState","handleStateChangeOnClient","WrappedComponent","state","mountedInstances","emitChange","map","instance","obj","value","SideEffect","_PureComponent","subClass","superClass","apply","this","arguments","prototype","create","constructor","peek","_proto","componentDidMount","push","componentDidUpdate","componentWillUnmount","index","indexOf","splice","render","createElement","displayName","name","getDisplayName","defineProperty","enumerable","configurable","writable","toArray","a","ret","Array","length","i","asArray","isArray","getTopParent","node","parentNode","getAllAffectedNodes","filter","reduce","acc","currentNode","getAttribute","nodes","contained","Set","l","j","compareDocumentPosition","Node","DOCUMENT_POSITION_CONTAINED_BY","add","DOCUMENT_POSITION_CONTAINS","_","has","filterNested","querySelectorAll","focusInsideIframe","topNode","some","focusInside","dataset","focusGuard","result","contains","isRadio","tagName","type","correctNode","el","checked","findSelectedRadio","pickFirstFocus","pickFocusable","isVisible","nodeType","DOCUMENT_NODE","computedStyle","window","getComputedStyle","getPropertyValue","DOCUMENT_FRAGMENT_NODE","host","isGuard","isNotAGuard","isDefined","x","newFocus","innerNodes","outerNodes","lastNode","cnt","firstFocus","lastFocus","isOnGuard","resultSet","activeIndex","lastIndex","lastNodeInside","indexDiff","firstNodeIndex","lastNodeIndex","correctedNodes","forEach","correctedIndexDiff","returnFirstNode","returnLastNode","Math","abs","tabSort","b","tabDiff","orderByTabIndex","filterNegative","keepGuards","data","sort","queryTabbables","join","queryGuardTabbables","getFocusables","parents","withGuards","parent","concat","filterFocusable","notHiddenInput","getTabbableNodes","topNodes","getAllTabbableNodes","parentAutofocusables","parentFocus","getParents","getCommonParent","nodeA","nodeB","parentsA","parentsB","currentParent","getTopCommonParent","baseActiveElement","leftEntry","rightEntries","activeElements","leftEntries","topCommon","entry","subEntry","common","getFocusMerge","entries","commonParent","anyFocusable","innerElements","_a","srcNodes","dstNodes","remap","autoFocusables","orderedInnerElements","Map","entity","set","get","newId","autoFocusable","allParentAutofocusables","autofocus","guardCount","lockDisabled","focusable","console","error","setTimeout","contentWindow","deferAction","action","setImmediate","body","lastActiveTrap","lastActiveFocus","lastPortaledElement","focusWasOutsideWindow","defaultWhitelist","autoGuard","startIndex","end","step","allNodes","lastGuard","item","guard","focusAutoGuard","lockItem","extractRef","element","_lastActiveTrap","workingNode","portaledElement","workingArea","focusWhitelisted","blur","newActiveElement","focusedIndex","_ref2","_ref3","removeAttribute","onTrap","stopPropagation","preventDefault","source","observerNode","onWindowBlur","assignSyncMedium","assignMedium","cb","moveFocusInside","propsList","_ref5","traps","trap","slice","addEventListener","lastTrap","sameTrap","_ref6","removeEventListener","FocusLockCombination","ItoI","innerCreateMedium","defaults","middleware","buffer","assigned","read","Error","cbs","pendingQueue","executeQueue","cycle","createMedium","createSidecarMedium","options","medium","ssr","effectCar","nothing","RemoveScroll","onScrollCapture","onWheelCapture","onTouchMoveCapture","callbacks","setCallbacks","forwardProps","removeScrollBar","enabled","noIsolation","inert","allowPinchZoom","_b","rest","containerRef","lockRef","only","classNames","fullWidth","zeroRight","currentNonce","Target","isSideCarExport","makeStyleTag","tag","nonce","setAttribute","stylesheetSingleton","counter","stylesheet","css","styleSheet","cssText","appendChild","createTextNode","head","getElementsByTagName","insertStyleTag","remove","removeChild","styleSingleton","sheet","useStyle","styles","zeroGap","right","gap","parse","parseInt","getGapWidth","gapMode","offsets","cs","getOffset","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","max","getStyles","allowRelative","important","RemoveScrollBar","setGap","noRelative","noImportant","locationCouldBeScrolled","axis","elementCouldBeScrolled","getScrollVariables","overflowY","overflowX","elementCouldBeVScrolled","elementCouldBeHScrolled","scrollTop","scrollHeight","clientHeight","scrollLeft","scrollWidth","getHScrollVariables","passiveSupported","err","nonPassive","passive","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","generateStyle","idCounter","lockStack","exported","shouldPreventQueue","touchStartRef","activeAxis","Style","lastProps","classList","allow_1","shouldCancelEvent","touches","currentAxis","touch","touchStart","moveDirection","canBeScrolledInMainDirection","cancelingAxis","endTarget","sourceDelta","noOverscroll","delta","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","elementScroll","handleScroll","shouldPrevent","_event","sourceEvent","e","y","should","shardNodes","shouldCancel","scrollTouchStart","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","useMergeRefs","refs","defaultValue","initialValue","callback","newValue","assignRef","facade","last","_extends","assign","hasOwnProperty","call","_objectWithoutPropertiesLoose","excluded","sourceKeys","keys","warning","module","exports","__assign","t","s","n","__rest","getOwnPropertySymbols"],"mappings":"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","file":"8.55e69ad1.js","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nInFocusGuard.defaultProps = {\n children: null\n};\nexport default InFocusGuard;","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport * as constants from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var children = props.children,\n disabled = props.disabled,\n noFocusGuards = props.noFocusGuards,\n persistentFocus = props.persistentFocus,\n crossFrame = props.crossFrame,\n autoFocus = props.autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n shouldReturnFocus = props.returnFocus,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n\n var _React$useState2 = React.useState({}),\n id = _React$useState2[0]; // SIDE EFFECT CALLBACKS\n\n\n var onActivation = React.useCallback(function () {\n originalFocusedElement.current = originalFocusedElement.current || document && document.activeElement;\n\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n\n isActive.current = true;\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n }, [onDeactivationCallback]);\n var returnFocus = React.useCallback(function (allowDefer) {\n var current = originalFocusedElement.current;\n\n if (Boolean(shouldReturnFocus) && current && current.focus) {\n var focusOptions = typeof shouldReturnFocus === 'object' ? shouldReturnFocus : undefined;\n originalFocusedElement.current = null;\n\n if (allowDefer) {\n // React might return focus after update\n // it's safer to defer the action\n Promise.resolve().then(function () {\n return current.focus(focusOptions);\n });\n } else {\n current.focus(focusOptions);\n }\n }\n }, [shouldReturnFocus]); // MEDIUM CALLBACKS\n\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium; // REF PROPAGATION\n // not using real refs due to race conditions\n\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n\n React.useEffect(function () {\n if (!observed.current) {\n // eslint-disable-next-line no-console\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [/*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }),\n /*#__PURE__*/\n // nearest focus guard\n React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) // first tabbed element guard\n ], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), children), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object]),\n noFocusGuards: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nFocusLock.defaultProps = {\n children: undefined,\n disabled: false,\n returnFocus: false,\n noFocusGuards: false,\n autoFocus: true,\n persistentFocus: false,\n crossFrame: true,\n allowTextSelection: undefined,\n group: undefined,\n className: undefined,\n whiteList: undefined,\n shards: undefined,\n as: 'div',\n lockProps: {},\n onActivation: undefined,\n onDeactivation: undefined\n};\nexport default FocusLock;","export var FOCUS_GROUP = 'data-focus-lock';\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\" + FOCUS_GROUP + \"=\\\"\" + group + \"\\\"]:not([\" + FOCUS_DISABLED + \"=\\\"disabled\\\"])\")))\n : [currentNode]));\n return acc;\n }, []);\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { toArray } from './utils/array';\nvar focusInFrame = function (frame) { return frame === document.activeElement; };\nvar focusInsideIframe = function (topNode) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node); }));\n};\nexport var focusInside = function (topNode) {\n var activeElement = document && document.activeElement;\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).reduce(function (result, node) { return result || node.contains(activeElement) || focusInsideIframe(node); }, false);\n};\n","var isRadio = function (node) { return node.tagName === 'INPUT' && node.type === 'radio'; };\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadio)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadio(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\nexport var correctNodes = function (nodes) {\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, index) {\n if (nodes.length > 1) {\n return nodes.indexOf(correctNode(nodes[index], nodes));\n }\n return index;\n};\n","var isElementHidden = function (computedStyle) {\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nexport var isVisible = function (node) {\n return !node ||\n node === document ||\n (node && node.nodeType === Node.DOCUMENT_NODE) ||\n (!isElementHidden(window.getComputedStyle(node, null)) &&\n isVisible(node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? node.parentNode.host\n : node.parentNode));\n};\nexport var notHiddenInput = function (node) {\n return !((node.tagName === 'INPUT' || node.tagName === 'BUTTON') && (node.type === 'hidden' || node.disabled));\n};\nexport var isGuard = function (node) { return Boolean(node && node.dataset && node.dataset.focusGuard); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\nexport var newFocus = function (innerNodes, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n if (innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = outerNodes.indexOf(activeElement);\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndexDiff = correctedNodes.indexOf(activeElement) - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n if (activeIndex === -1 || lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n return undefined;\n};\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!a.tabIndex) {\n return 1;\n }\n if (!b.tabIndex) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) { return ({\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : node.tabIndex,\n }); })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = queryTabbables + \", [data-focus-guard]\";\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n return acc.concat(toArray(parent.querySelectorAll(withGuards ? queryGuardTabbables : queryTabbables)), parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\" + FOCUS_AUTO + \"]\");\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","export var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { toArray } from './array';\nimport { isVisible, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\nexport var filterFocusable = function (nodes) {\n return toArray(nodes)\n .filter(function (node) { return isVisible(node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var getTabbableNodes = function (topNodes, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards)), true, withGuards);\n};\nexport var getAllTabbableNodes = function (topNodes) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes)), false);\n};\nexport var parentAutofocusables = function (topNode) {\n return filterFocusable(getParentAutofocusables(topNode));\n};\n","import { asArray } from './array';\nimport { parentAutofocusables } from './DOMutils';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode, parents);\n }\n return parents;\n};\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || common.contains(topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n return topCommon;\n};\nexport var allParentAutofocusables = function (entries) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getAllTabbableNodes, getTabbableNodes } from './utils/DOMutils';\nimport { pickFirstFocus } from './utils/firstFocus';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar findAutoFocused = function (autoFocusables) { return function (node) {\n return node.autofocus || (node.dataset && !!node.dataset.autofocus) || autoFocusables.indexOf(node) >= 0;\n}; };\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\nexport var getFocusMerge = function (topNode, lastNode) {\n var activeElement = (document && document.activeElement);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var anyFocusable = getAllTabbableNodes(entries);\n var innerElements = getTabbableNodes(entries).filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n innerElements = anyFocusable;\n if (!innerElements[0]) {\n return undefined;\n }\n }\n var outerNodes = getAllTabbableNodes([commonParent]).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var autoFocusable = anyFocusable\n .map(function (_a) {\n var node = _a.node;\n return node;\n })\n .filter(findAutoFocused(allParentAutofocusables(entries)));\n return {\n node: autoFocusable && autoFocusable.length ? pickFirstFocus(autoFocusable) : pickFirstFocus(innerNodes),\n };\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getFocusMerge } from './focusMerge';\nexport var focusOn = function (target) {\n target.focus();\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\nvar guardCount = 0;\nvar lockDisabled = false;\nexport var setFocus = function (topNode, lastNode) {\n var focusable = getFocusMerge(topNode, lastNode);\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n if (guardCount > 2) {\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node);\n guardCount--;\n }\n};\n","import * as constants from './constants';\nimport { getFocusabledIn } from './focusables';\nimport { focusInside } from './focusInside';\nimport { focusIsHidden } from './focusIsHidden';\nimport { getFocusMerge as focusMerge } from './focusMerge';\nimport { setFocus } from './setFocus';\nimport { focusNextElement, focusPrevElement } from './sibling';\nimport tabHook from './tabHook';\nimport { getAllAffectedNodes } from './utils/all-affected';\nexport { tabHook, focusInside, focusIsHidden, focusMerge, getFocusabledIn, constants, getAllAffectedNodes, focusNextElement, focusPrevElement, };\nexport default setFocus;\n","export function deferAction(action) {\n // Hidding setImmediate from Webpack to avoid inserting polyfill\n var _window = window,\n setImmediate = _window.setImmediate;\n\n if (typeof setImmediate !== 'undefined') {\n setImmediate(action);\n } else {\n setTimeout(action, 1);\n }\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport moveFocusInside, { focusInside, focusIsHidden, getFocusabledIn } from 'focus-lock';\nimport { deferAction } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n // we will tab to the next element\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n // with cross frame return true for any value\n return Boolean(focusWasOutsideWindow);\n } // in other case return only of focus went a while aho\n\n\n return focusWasOutsideWindow === 'meanwhile';\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutside(crossFrame) || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n // Check if blur() exists, which is missing on certain elements on IE\n if (activeElement.blur) {\n activeElement.blur();\n }\n\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus);\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = getFocusabledIn(workingArea);\n var focusedIndex = allNodes.map(function (_ref) {\n var node = _ref.node;\n return node;\n }).indexOf(newActiveElement);\n\n if (focusedIndex > -1) {\n // remove old focus\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n // prevent scroll jump\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\n\nvar onFocus = function onFocus(event) {\n // detect portal\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = 'just'; // using setTimeout to set this variable after React/sidecar reaction\n\n setTimeout(function () {\n focusWasOutsideWindow = 'meanwhile';\n }, 0);\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap, true);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap, true);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n });\n}\n\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation(); // return focus only of last trap was removed\n\n if (!traps.filter(function (_ref6) {\n var id = _ref6.id;\n return id === lastTrap.id;\n }).length) {\n // allow defer is no other trap is awaiting restore\n lastTrap.returnFocus(!trap);\n }\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n} // bind medium\n\n\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb({\n moveFocusInside: moveFocusInside,\n focusInside: focusInside\n });\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import { FOCUS_ALLOW } from './constants';\nimport { toArray } from './utils/array';\nexport var focusIsHidden = function () {\n return document &&\n toArray(document.querySelectorAll(\"[\" + FOCUS_ALLOW + \"]\")).some(function (node) { return node.contains(document.activeElement); });\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { getTabbableNodes } from './utils/DOMutils';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nexport var getFocusabledIn = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var outerNodes = getTabbableNodes([commonParent], true);\n var innerElements = getTabbableNodes(entries)\n .filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n })\n .map(function (_a) {\n var node = _a.node;\n return node;\n });\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\n/* that would be a BREAKING CHANGE!\n// delaying sidecar execution till the first usage\nconst RequireSideCar = (props) => {\n // eslint-disable-next-line global-require\n const SideCar = require('./Trap').default;\n return ;\n};\n*/\n\nvar FocusLockCombination = /*#__PURE__*/React.forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\n\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\n\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","import FocusLock from './Combination';\nexport * from './UI';\nexport default FocusLock;","import * as tslib_1 from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = tslib_1.__assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { effectCar } from './medium';\nimport { useMergeRefs } from 'use-callback-ref';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, rest = tslib_1.__rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([\n ref,\n parentRef\n ]);\n var containerProps = tslib_1.__assign({}, rest, callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref })),\n forwardProps ? (React.cloneElement(React.Children.only(children), tslib_1.__assign({}, containerProps, { ref: containerRef }))) : (React.createElement(Container, tslib_1.__assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName\n};\nexport { RemoveScroll };\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = tslib_1.__rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, tslib_1.__assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { getNonce } from \"get-nonce\";\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n if (tag.styleSheet) {\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if (stylesheet = makeStyleTag()) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n }\n };\n};\n","import { styleHookSingleton } from \"./hook\";\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles;\n useStyle(styles);\n return null;\n };\n return Sheet;\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from \"./singleton\";\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, []);\n };\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [\n parse(left),\n parse(top),\n parse(right),\n ];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { getGapWidth } from './utils';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from \"./constants\";\nvar Style = styleSingleton();\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\" + noScrollbarsClassName + \" {\\n overflow: hidden \" + important + \";\\n padding-right: \" + gap + \"px \" + important + \";\\n }\\n body {\\n overflow: hidden \" + important + \";\\n \" + [\n allowRelative && \"position: relative \" + important + \";\",\n gapMode === 'margin' && \"\\n padding-left: \" + left + \"px;\\n padding-top: \" + top + \"px;\\n padding-right: \" + right + \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \" + gap + \"px \" + important + \";\\n \",\n gapMode === 'padding' && \"padding-right: \" + gap + \"px \" + important + \";\",\n ].filter(Boolean).join('') + \"\\n }\\n \\n .\" + zeroRightClassName + \" {\\n right: \" + gap + \"px \" + important + \";\\n }\\n \\n .\" + fullWidthClassName + \" {\\n margin-right: \" + gap + \"px \" + important + \";\\n }\\n \\n .\" + zeroRightClassName + \" .\" + zeroRightClassName + \" {\\n right: 0 \" + important + \";\\n }\\n \\n .\" + fullWidthClassName + \" .\" + fullWidthClassName + \" {\\n margin-right: 0 \" + important + \";\\n }\\n \\n body {\\n \" + removedBarSizeVariable + \": \" + gap + \"px;\\n }\\n\";\n};\nexport var RemoveScrollBar = function (props) {\n var _a = React.useState(getGapWidth(props.gapMode)), gap = _a[0], setGap = _a[1];\n React.useEffect(function () {\n setGap(getGapWidth(props.gapMode));\n }, [props.gapMode]);\n var noRelative = props.noRelative, noImportant = props.noImportant, _b = props.gapMode, gapMode = _b === void 0 ? 'margin' : _b;\n return React.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? \"!important\" : '') });\n};\n","var elementCouldBeVScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowY !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable\n );\n};\nvar elementCouldBeHScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowX !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable\n );\n};\nexport var locationCouldBeScrolled = function (axis, node) {\n var current = node;\n do {\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), s = _a[1], d = _a[2];\n if (s > d) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== document.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [scrollTop, scrollHeight, clientHeight];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [scrollLeft, scrollWidth, clientWidth];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var delta = sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n target = target.parentNode;\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n if (isDeltaPositive &&\n ((noOverscroll && availableScroll === 0) ||\n (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && availableScrollTop === 0) ||\n (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","var passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n return true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\nexport var nonPassive = passiveSupported ? { passive: false } : false;\n","import * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nimport { nonPassive } from './aggresiveCapture';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event\n ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY]\n : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) {\n return x[0] === y[0] && x[1] === y[1];\n};\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\" + id + \" {pointer-events: none;}\\n .allow-interactivity-\" + id + \" {pointer-events: all;}\\n\"; };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(function () { return styleSingleton(); })[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\" + id);\n var allow_1 = [\n props.lockRef.current\n ].concat((props.shards || []).map(extractRef)).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\" + id); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\" + id);\n allow_1.forEach(function (el) {\n return el.classList.remove(\"allow-interactivity-\" + id);\n });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if ('touches' in event && event.touches.length === 2) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current &&\n 'changedTouches' in event &&\n (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) {\n return e.name === event.type &&\n e.target === event.target &&\n deltaCompare(e.delta, delta);\n })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n event.preventDefault();\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0\n ? shouldCancelEvent(event, shardNodes[0])\n : !lastProps.current.noIsolation;\n if (shouldStop) {\n event.preventDefault();\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { gapMode: \"margin\" }) : null));\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, tslib_1.__assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","import { useCallbackRef } from './useRef';\nimport { assignRef } from './assignRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return
...
\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n }\n }\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n"],"sourceRoot":""}