@popsure/dirty-swan 0.59.0-beta-2 → 0.59.0-beta-3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -11579,7 +11579,7 @@ var InnerModal = function (_a) {
11579
11579
  : (_d = classNames === null || classNames === void 0 ? void 0 : classNames.container) === null || _d === void 0 ? void 0 : _d.call(classNames, { isClosing: isClosing }), onClick: handleContainerClick, children: [jsxRuntime.jsxs("div", { className: classNames$1('bg-white d-flex ai-center w100 px24 pt24 pb16', styles$v.header, {
11580
11580
  'jc-between': !!title,
11581
11581
  'jc-end': !title,
11582
- }), children: [title && (jsxRuntime.jsx("div", { className: classNames$1(styles$v.title, titleSize === 'small' ? 'p-h4' : 'p-h2', classNames === null || classNames === void 0 ? void 0 : classNames.title), children: title })), dismissible && (jsxRuntime.jsx(Button, { hideLabel: true, leftIcon: jsxRuntime.jsx(XIcon, { color: "neutral-800", className: classNames === null || classNames === void 0 ? void 0 : classNames.closeButtonIcon }), onClick: handleOnClose, type: "button", variant: "textColor", className: classNames$1(classNames === null || classNames === void 0 ? void 0 : classNames.closeButton, 'p0', styles$v.closeButton), children: "Close modal" }))] }), jsxRuntime.jsx("div", { className: classNames$1('w100', classNames === null || classNames === void 0 ? void 0 : classNames.body, styles$v.body), ref: modalBodyRef, children: children }), footer && (jsxRuntime.jsx("div", { className: classNames$1(classNames === null || classNames === void 0 ? void 0 : classNames.footer, 'w100 bg-white', styles$v.footer), children: jsxRuntime.jsx("div", { className: "p24 pt16", children: footer }) }))] }) }) }) }));
11582
+ }), children: [title && (jsxRuntime.jsx("div", { className: classNames$1(styles$v.title, titleSize === 'small' ? 'p-h4' : 'p-h2', classNames === null || classNames === void 0 ? void 0 : classNames.title), children: title })), dismissible && (jsxRuntime.jsx(Button, { hideLabel: true, leftIcon: jsxRuntime.jsx(XIcon, { color: "neutral-800", className: classNames === null || classNames === void 0 ? void 0 : classNames.closeButtonIcon }), onClick: handleOnClose, type: "button", variant: "textBlack", className: classNames$1(classNames === null || classNames === void 0 ? void 0 : classNames.closeButton, 'p0', styles$v.closeButton), children: "Close modal" }))] }), jsxRuntime.jsx("div", { className: classNames$1('w100', classNames === null || classNames === void 0 ? void 0 : classNames.body, styles$v.body), ref: modalBodyRef, children: children }), footer && (jsxRuntime.jsx("div", { className: classNames$1(classNames === null || classNames === void 0 ? void 0 : classNames.footer, 'w100 bg-white', styles$v.footer), children: jsxRuntime.jsx("div", { className: "p24 pt16", children: footer }) }))] }) }) }) }));
11583
11583
  };
11584
11584
  var GenericModal = function (props) {
11585
11585
  var isOpen = props.isOpen, onClose = props.onClose, _a = props.dismissible, dismissible = _a === void 0 ? true : _a;
@@ -1837,7 +1837,7 @@ var InnerModal = function (_a) {
1837
1837
  : (_d = classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.container) === null || _d === void 0 ? void 0 : _d.call(classNames$1, { isClosing: isClosing }), onClick: handleContainerClick, children: [jsxs("div", { className: classNames('bg-white d-flex ai-center w100 px24 pt24 pb16', styles.header, {
1838
1838
  'jc-between': !!title,
1839
1839
  'jc-end': !title,
1840
- }), children: [title && (jsx("div", { className: classNames(styles.title, titleSize === 'small' ? 'p-h4' : 'p-h2', classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.title), children: title })), dismissible && (jsx(Button, { hideLabel: true, leftIcon: jsx(XIcon, { color: "neutral-800", className: classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.closeButtonIcon }), onClick: handleOnClose, type: "button", variant: "textColor", className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.closeButton, 'p0', styles.closeButton), children: "Close modal" }))] }), jsx("div", { className: classNames('w100', classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.body, styles.body), ref: modalBodyRef, children: children }), footer && (jsx("div", { className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.footer, 'w100 bg-white', styles.footer), children: jsx("div", { className: "p24 pt16", children: footer }) }))] }) }) }) }));
1840
+ }), children: [title && (jsx("div", { className: classNames(styles.title, titleSize === 'small' ? 'p-h4' : 'p-h2', classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.title), children: title })), dismissible && (jsx(Button, { hideLabel: true, leftIcon: jsx(XIcon, { color: "neutral-800", className: classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.closeButtonIcon }), onClick: handleOnClose, type: "button", variant: "textBlack", className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.closeButton, 'p0', styles.closeButton), children: "Close modal" }))] }), jsx("div", { className: classNames('w100', classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.body, styles.body), ref: modalBodyRef, children: children }), footer && (jsx("div", { className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.footer, 'w100 bg-white', styles.footer), children: jsx("div", { className: "p24 pt16", children: footer }) }))] }) }) }) }));
1841
1841
  };
1842
1842
  var GenericModal = function (props) {
1843
1843
  var isOpen = props.isOpen, onClose = props.onClose, _a = props.dismissible, dismissible = _a === void 0 ? true : _a;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/hooks/useOnClose.ts","../../../../../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../../../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../../node_modules/focus-lock/dist/es2015/constants.js","../../../../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../../../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../../../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../../../../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../../../../../node_modules/use-sidecar/dist/es2015/medium.js","../../../../../node_modules/react-focus-lock/dist/es2015/medium.js","../../../../../node_modules/react-focus-lock/dist/es2015/scope.js","../../../../../node_modules/react-focus-lock/dist/es2015/Lock.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/typeof.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../../../node_modules/react-clientside-effect/lib/index.es.js","../../../../../node_modules/focus-lock/dist/es2015/utils/array.js","../../../../../node_modules/focus-lock/dist/es2015/utils/is.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../../../../../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../../../../../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../../../../../node_modules/focus-lock/dist/es2015/utils/safe.js","../../../../../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../../../../../node_modules/focus-lock/dist/es2015/focusInside.js","../../../../../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../../../../../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../../../../../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../../../../../node_modules/focus-lock/dist/es2015/solver.js","../../../../../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../../../../../node_modules/focus-lock/dist/es2015/utils/parenting.js","../../../../../node_modules/focus-lock/dist/es2015/focusSolver.js","../../../../../node_modules/focus-lock/dist/es2015/focusables.js","../../../../../node_modules/focus-lock/dist/es2015/commands.js","../../../../../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../../../../../node_modules/focus-lock/dist/es2015/return-focus.js","../../../../../node_modules/focus-lock/dist/es2015/sibling.js","../../../../../node_modules/react-focus-lock/dist/es2015/util.js","../../../../../node_modules/react-focus-lock/dist/es2015/Trap.js","../../../../../node_modules/react-focus-lock/dist/es2015/Combination.js","../../../../../../src/lib/components/modal/genericModal/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\n\nexport interface OnCloseReturn {\n isClosing: boolean;\n isVisible: boolean;\n handleOnCloseAnimationEnded: () => void;\n handleContainerClick: (\n event: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => void;\n handleOnClose: () => void;\n handleOnOverlayClick: () => void;\n}\n\nconst useOnClose = (\n onClose: () => void,\n isOpen: boolean,\n dismissable: boolean\n): OnCloseReturn => {\n const [isVisible, setIsVisible] = useState(false);\n const [isClosing, setIsClosing] = useState(false);\n\n const handleOnClose = useCallback(() => {\n setIsClosing(true);\n }, []);\n\n const handleOnCloseAnimationEnded = useCallback(() => {\n if (isVisible && isClosing) {\n onClose();\n setIsVisible(false);\n setIsClosing(false);\n }\n }, [isClosing, isVisible, onClose]);\n\n const handleOnOverlayClick = useCallback(() => {\n if (!dismissable) {\n return;\n }\n\n handleOnClose();\n }, [dismissable, handleOnClose]);\n\n const handleEscKey = useCallback(\n (e: KeyboardEvent) => {\n if (e.code !== 'Escape' || !dismissable || !isOpen) {\n return null;\n }\n\n handleOnClose();\n },\n [isOpen, dismissable, handleOnClose]\n );\n\n useEffect(() => {\n window.addEventListener('keydown', handleEscKey);\n\n return () => {\n window.removeEventListener('keydown', handleEscKey);\n };\n }, [handleEscKey]);\n\n useEffect(() => {\n if (isOpen) {\n setIsVisible(true);\n }\n\n if (!isOpen && isVisible) {\n handleOnClose();\n }\n\n document.body.style.overflow = isOpen ? 'hidden' : 'auto';\n\n return () => {\n document.body.style.overflow = 'auto';\n };\n }, [handleOnClose, isOpen, isVisible]);\n\n const handleContainerClick = (\n e: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n e.stopPropagation();\n };\n\n return {\n isClosing,\n isVisible,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick,\n };\n};\n\nexport default useOnClose;\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","/**\n * defines a focus group\n */\nexport var FOCUS_GROUP = 'data-focus-lock';\n/**\n * disables element discovery inside a group marked by key\n */\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\n/**\n * allows uncontrolled focus within the marked area, effectively disabling focus lock for it's content\n */\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\n/**\n * instructs autofocus engine to pick default autofocus inside a given node\n * can be set on the element or container\n */\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n/**\n * instructs autofocus to ignore elements within a given node\n * can be set on the element or container\n */\nexport var FOCUS_NO_AUTOFOCUS = 'data-no-autofocus';\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","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","import * as React from 'react';\nimport { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar currentValues = new WeakMap();\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 <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n var callbackRef = useCallbackRef(defaultValue || null, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n // handle refs changes - added or removed\n useIsomorphicLayoutEffect(function () {\n var oldValue = currentValues.get(callbackRef);\n if (oldValue) {\n var prevRefs_1 = new Set(oldValue);\n var nextRefs_1 = new Set(refs);\n var current_1 = callbackRef.current;\n prevRefs_1.forEach(function (ref) {\n if (!nextRefs_1.has(ref)) {\n assignRef(ref, null);\n }\n });\n nextRefs_1.forEach(function (ref) {\n if (!prevRefs_1.has(ref)) {\n assignRef(ref, current_1);\n }\n });\n }\n currentValues.set(callbackRef, refs);\n }, [refs]);\n return callbackRef;\n}\n","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};\nvar InFocusGuard = function InFocusGuard(_ref) {\n var _ref$children = _ref.children,\n children = _ref$children === void 0 ? null : _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};\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nexport default InFocusGuard;","import { __assign } 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}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","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 ssr: typeof document !== 'undefined'\n});","import { createContext } from 'react';\nexport var focusScope = /*#__PURE__*/createContext(undefined);","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';\nimport { focusScope } from './scope';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var _React$useState2 = React.useState({}),\n update = _React$useState2[1];\n var children = props.children,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$noFocusGuards = props.noFocusGuards,\n noFocusGuards = _props$noFocusGuards === void 0 ? false : _props$noFocusGuards,\n _props$persistentFocu = props.persistentFocus,\n persistentFocus = _props$persistentFocu === void 0 ? false : _props$persistentFocu,\n _props$crossFrame = props.crossFrame,\n crossFrame = _props$crossFrame === void 0 ? true : _props$crossFrame,\n _props$autoFocus = props.autoFocus,\n autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n hasPositiveIndices = props.hasPositiveIndices,\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 _props$returnFocus = props.returnFocus,\n shouldReturnFocus = _props$returnFocus === void 0 ? false : _props$returnFocus,\n focusOptions = props.focusOptions,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n var _React$useState3 = React.useState({}),\n id = _React$useState3[0];\n var onActivation = React.useCallback(function (_ref) {\n var captureFocusRestore = _ref.captureFocusRestore;\n if (!originalFocusedElement.current) {\n var _document;\n var activeElement = (_document = document) == null ? void 0 : _document.activeElement;\n originalFocusedElement.current = activeElement;\n if (activeElement !== document.body) {\n originalFocusedElement.current = captureFocusRestore(activeElement);\n }\n }\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n isActive.current = true;\n update();\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n update();\n }, [onDeactivationCallback]);\n var returnFocus = React.useCallback(function (allowDefer) {\n var focusRestore = originalFocusedElement.current;\n if (focusRestore) {\n var returnFocusTo = (typeof focusRestore === 'function' ? focusRestore() : focusRestore) || document.body;\n var howToReturnFocus = typeof shouldReturnFocus === 'function' ? shouldReturnFocus(returnFocusTo) : shouldReturnFocus;\n if (howToReturnFocus) {\n var returnFocusOptions = typeof howToReturnFocus === 'object' ? howToReturnFocus : undefined;\n originalFocusedElement.current = null;\n if (allowDefer) {\n Promise.resolve().then(function () {\n return returnFocusTo.focus(returnFocusOptions);\n });\n } else {\n returnFocusTo.focus(returnFocusOptions);\n }\n }\n }\n }, [shouldReturnFocus]);\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium;\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n React.useEffect(function () {\n if (!observed.current && typeof Container !== 'string') {\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n var focusScopeValue = React.useMemo(function () {\n return {\n observed: observed,\n shards: shards,\n enabled: !disabled,\n active: isActive.current\n };\n }, [disabled, isActive.current, shards, realObserved]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [\n /*#__PURE__*/\n React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), hasPositiveIndices ? /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) : null], !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 focusOptions: focusOptions,\n noFocusGuards: noFocusGuards\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), /*#__PURE__*/React.createElement(focusScope.Provider, {\n value: focusScopeValue\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, func]),\n focusOptions: object,\n noFocusGuards: bool,\n hasPositiveIndices: 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} : {};\nexport default FocusLock;","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","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","/*\nIE11 support\n */\nexport 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]); };\nexport var getFirst = function (a) { return (Array.isArray(a) ? a[0] : a); };\n","import { FOCUS_NO_AUTOFOCUS } from '../constants';\nvar isElementHidden = function (node) {\n // we can measure only \"elements\"\n // consider others as \"visible\"\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar getParentNode = function (node) {\n // DOCUMENT_FRAGMENT_NODE can also point on ShadowRoot. In this case .host will point on the next node\n return node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node.parentNode.host\n : node.parentNode;\n};\nvar isTopNode = function (node) {\n // @ts-ignore\n return node === document || (node && node.nodeType === Node.DOCUMENT_NODE);\n};\nvar isInert = function (node) { return node.hasAttribute('inert'); };\n/**\n * @see https://github.com/testing-library/jest-dom/blob/main/src/to-be-visible.js\n */\nvar isVisibleUncached = function (node, checkParent) {\n return !node || isTopNode(node) || (!isElementHidden(node) && !isInert(node) && checkParent(getParentNode(node)));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nvar isAutoFocusAllowedUncached = function (node, checkParent) {\n return node && !isTopNode(node) ? (isAutoFocusAllowed(node) ? checkParent(getParentNode(node)) : false) : true;\n};\nexport var isAutoFocusAllowedCached = function (cache, node) {\n var cached = cache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isAutoFocusAllowedUncached(node, isAutoFocusAllowedCached.bind(undefined, cache));\n cache.set(node, result);\n return result;\n};\nexport var getDataset = function (node) {\n // @ts-ignore\n return node.dataset;\n};\nexport var isHTMLButtonElement = function (node) { return node.tagName === 'BUTTON'; };\nexport var isHTMLInputElement = function (node) { return node.tagName === 'INPUT'; };\nexport var isRadioElement = function (node) {\n return isHTMLInputElement(node) && node.type === 'radio';\n};\nexport var notHiddenInput = function (node) {\n return !((isHTMLInputElement(node) || isHTMLButtonElement(node)) && (node.type === 'hidden' || node.disabled));\n};\nexport var isAutoFocusAllowed = function (node) {\n var attribute = node.getAttribute(FOCUS_NO_AUTOFOCUS);\n return ![true, 'true', ''].includes(attribute);\n};\nexport var isGuard = function (node) { var _a; return Boolean(node && ((_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.focusGuard)); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var aTab = Math.max(0, a.tabIndex);\n var bTab = Math.max(0, b.tabIndex);\n var tabDiff = aTab - bTab;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!aTab) {\n return 1;\n }\n if (!bTab) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nvar getTabIndex = function (node) {\n if (node.tabIndex < 0) {\n // all \"focusable\" elements are already preselected\n // but some might have implicit negative tabIndex\n // return 0 for <audio without tabIndex attribute - it is \"tabbable\"\n if (!node.hasAttribute('tabindex')) {\n return 0;\n }\n }\n return node.tabIndex;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) {\n var tabIndex = getTabIndex(node);\n return {\n node: node,\n index: index,\n tabIndex: keepGuards && tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : tabIndex,\n };\n })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","/**\n * list of the object to be considered as focusable\n */\nexport var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n // elements with explicit roles will also use explicit tabindex\n // '[role=\"button\"]',\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 { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = \"\".concat(queryTabbables, \", [data-focus-guard]\");\nvar getFocusablesWithShadowDom = function (parent, withGuards) {\n return toArray((parent.shadowRoot || parent).children).reduce(function (acc, child) {\n return acc.concat(child.matches(withGuards ? queryGuardTabbables : queryTabbables) ? [child] : [], getFocusablesWithShadowDom(child));\n }, []);\n};\nvar getFocusablesWithIFrame = function (parent, withGuards) {\n var _a;\n // contentDocument of iframe will be null if current origin cannot access it\n if (parent instanceof HTMLIFrameElement && ((_a = parent.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n return getFocusables([parent.contentDocument.body], withGuards);\n }\n return [parent];\n};\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n var _a;\n var focusableWithShadowDom = getFocusablesWithShadowDom(parent, withGuards);\n var focusableWithIframes = (_a = []).concat.apply(_a, focusableWithShadowDom.map(function (node) { return getFocusablesWithIFrame(node, withGuards); }));\n return acc.concat(\n // add all tabbables inside and within shadow DOMs in DOM order\n focusableWithIframes, \n // add if node is tabbable itself\n parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\n/**\n * return a list of focusable nodes within an area marked as \"auto-focusable\"\n * @param parent\n */\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\".concat(FOCUS_AUTO, \"]\"));\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","import { toArray } from './array';\nimport { isAutoFocusAllowedCached, isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\n/**\n * given list of focusable elements keeps the ones user can interact with\n * @param nodes\n * @param visibilityCache\n */\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var filterAutoFocusable = function (nodes, cache) {\n if (cache === void 0) { cache = new Map(); }\n return toArray(nodes).filter(function (node) { return isAutoFocusAllowedCached(cache, node); });\n};\n/**\n * !__WARNING__! Low level API.\n * @returns all tabbable nodes\n *\n * @see {@link getFocusableNodes} to get any focusable element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\n/**\n * !__WARNING__! Low level API.\n *\n * @returns anything \"focusable\", not only tabbable. The difference is in `tabIndex=-1`\n * (without guards, as long as they are not expected to be ever focused)\n *\n * @see {@link getTabbableNodes} to get only tabble nodes element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getFocusableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\n/**\n * return list of nodes which are expected to be auto-focused\n * @param topNode\n * @param visibilityCache\n */\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n/*\n * Determines if element is contained in scope, including nested shadow DOMs\n */\nexport var contains = function (scope, element) {\n if (scope.shadowRoot) {\n return contains(scope.shadowRoot, element);\n }\n else {\n if (Object.getPrototypeOf(scope).contains !== undefined &&\n Object.getPrototypeOf(scope).contains.call(scope, element)) {\n return true;\n }\n return toArray(scope.children).some(function (child) {\n var _a;\n if (child instanceof HTMLIFrameElement) {\n var iframeBody = (_a = child.contentDocument) === null || _a === void 0 ? void 0 : _a.body;\n if (iframeBody) {\n return contains(iframeBody, element);\n }\n return false;\n }\n return contains(child, element);\n });\n }\n};\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n/**\n * in case of multiple nodes nested inside each other\n * keeps only top ones\n * this is O(nlogn)\n * @param nodes\n * @returns {*}\n */\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 /* eslint-disable no-bitwise */\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 /* eslint-enable */\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\n/**\n * finds top most parent for a node\n * @param node\n * @returns {*}\n */\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n/**\n * returns all \"focus containers\" inside a given node\n * @param node - node or nodes to look inside\n * @returns Element[]\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(\"[\".concat(FOCUS_GROUP, \"=\\\"\").concat(group, \"\\\"]:not([\").concat(FOCUS_DISABLED, \"=\\\"disabled\\\"])\"))))\n : [currentNode]));\n return acc;\n }, []);\n};\n","export var safeProbe = function (cb) {\n try {\n return cb();\n }\n catch (e) {\n return undefined;\n }\n};\n","/**\n * returns active element from document or from nested shadowdoms\n */\nimport { safeProbe } from './safe';\n/**\n * returns current active element. If the active element is a \"container\" itself(shadowRoot or iframe) returns active element inside it\n * @param [inDocument]\n */\nexport var getActiveElement = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n if (!inDocument || !inDocument.activeElement) {\n return undefined;\n }\n var activeElement = inDocument.activeElement;\n return (activeElement.shadowRoot\n ? getActiveElement(activeElement.shadowRoot)\n : activeElement instanceof HTMLIFrameElement && safeProbe(function () { return activeElement.contentWindow.document; })\n ? getActiveElement(activeElement.contentWindow.document)\n : activeElement);\n};\n","import { contains } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getFirst, toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\nvar focusInFrame = function (frame, activeElement) { return frame === activeElement; };\nvar focusInsideIframe = function (topNode, activeElement) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node, activeElement); }));\n};\n/**\n * @returns {Boolean} true, if the current focus is inside given node or nodes.\n * Supports nodes hidden inside shadowDom\n */\nexport var focusInside = function (topNode, activeElement) {\n // const activeElement = document && getActiveElement();\n if (activeElement === void 0) { activeElement = getActiveElement(getFirst(topNode).ownerDocument); }\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).some(function (node) {\n return contains(node, activeElement) || focusInsideIframe(node, activeElement);\n });\n};\n","import { FOCUS_ALLOW } from './constants';\nimport { contains } from './utils/DOMutils';\nimport { toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\n/**\n * checks if focus is hidden FROM the focus-lock\n * ie contained inside a node focus-lock shall ignore\n *\n * This is a utility function coupled with {@link FOCUS_ALLOW} constant\n *\n * @returns {boolean} focus is currently is in \"allow\" area\n */\nexport var focusIsHidden = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n var activeElement = getActiveElement(inDocument);\n if (!activeElement) {\n return false;\n }\n // this does not support setting FOCUS_ALLOW within shadow dom\n return toArray(inDocument.querySelectorAll(\"[\".concat(FOCUS_ALLOW, \"]\"))).some(function (node) { return contains(node, activeElement); });\n};\n","import { isRadioElement } from './is';\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadioElement)\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 (isRadioElement(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\n/**\n * giving a set of radio inputs keeps only selected (tabbable) ones\n * @param nodes\n */\nexport var correctNodes = function (nodes) {\n // IE11 has no Set(array) constructor\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n // using filter to support IE11\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, node) {\n return nodes.indexOf(correctNode(node, nodes));\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\n/**\n * Main solver for the \"find next focus\" question\n * @param innerNodes - used to control \"return focus\"\n * @param innerTabbables - used to control \"autofocus\"\n * @param outerNodes\n * @param activeElement\n * @param lastNode\n * @returns {number|string|undefined|*}\n */\nexport var newFocus = function (innerNodes, innerTabbables, 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 // focus is inside\n if (activeElement && innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = activeElement !== undefined ? outerNodes.indexOf(activeElement) : -1;\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n // no active focus (or focus is on the body)\n if (activeIndex === -1) {\n // known fallback\n if (lastNodeInside !== -1) {\n return lastNodeInside;\n }\n return NEW_FOCUS;\n }\n // new focus, nothing to calculate\n if (lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndex = activeElement !== undefined ? correctedNodes.indexOf(activeElement) : -1;\n var correctedIndexDiff = correctedIndex - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // no tabbable elements, autofocus is not possible\n if (innerTabbables.length === 0) {\n // an edge case with no tabbable elements\n // return the last focusable one\n // with some probability this will prevent focus from cycling across the lock, but there is no tabbale elements to cycle to\n return lastNodeInside;\n }\n var returnFirstNode = pickFocusable(innerNodes, innerTabbables[0]);\n var returnLastNode = pickFocusable(innerNodes, innerTabbables[innerTabbables.length - 1]);\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n","import { filterAutoFocusable } from './DOMutils';\nimport { pickFirstFocus } from './firstFocus';\nimport { getDataset } from './is';\nvar findAutoFocused = function (autoFocusables) {\n return function (node) {\n var _a;\n var autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;\n return (\n // @ts-expect-error\n node.autofocus ||\n //\n (autofocus !== undefined && autofocus !== 'false') ||\n //\n autoFocusables.indexOf(node) >= 0);\n };\n};\nexport var pickAutofocus = function (nodesIndexes, orderedNodes, groups) {\n var nodes = nodesIndexes.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));\n if (autoFocusable && autoFocusable.length) {\n return pickFirstFocus(autoFocusable);\n }\n return pickFirstFocus(filterAutoFocusable(orderedNodes));\n};\n","import { parentAutofocusables } from './DOMutils';\nimport { contains } from './DOMutils';\nimport { asArray } from './array';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode.host || node.parentNode, parents);\n }\n return parents;\n};\n/**\n * finds a parent for both nodeA and nodeB\n * @param nodeA\n * @param nodeB\n * @returns {boolean|*}\n */\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n // tslint:disable-next-line:prefer-for-of\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 || contains(common, topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n // TODO: add assert here?\n return topCommon;\n};\n/**\n * return list of nodes which are expected to be autofocused inside a given top nodes\n * @param entries\n * @param visibilityCache\n */\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getFocusableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { asArray, getFirst } from './utils/array';\nimport { pickAutofocus } from './utils/auto-focus';\nimport { getActiveElement } from './utils/getActiveElement';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n // remap to dstNodes\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\n/**\n * contains the main logic of the `focus-lock` package.\n *\n * ! you probably dont need this function !\n *\n * given top node(s) and the last active element returns the element to be focused next\n * @returns element which should be focused to move focus inside\n * @param topNode\n * @param lastNode\n */\nexport var focusSolver = function (topNode, lastNode) {\n var activeElement = getActiveElement(asArray(topNode).length > 0 ? document : getFirst(topNode).ownerDocument);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getFocusableNodes(entries, visibilityCache);\n var innerElements = anyFocusable.filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n return undefined;\n }\n var outerNodes = getFocusableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n // collect inner focusable and separately tabbables\n var innerFocusables = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var innerTabbable = orderedInnerElements.filter(function (_a) {\n var tabIndex = _a.tabIndex;\n return tabIndex >= 0;\n }).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerFocusables, innerTabbable, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var focusNode = \n // first try only tabbable, and the fallback to all focusable, as long as at least one element should be picked for focus\n pickAutofocus(anyFocusable, innerTabbable, allParentAutofocusables(entries, visibilityCache)) ||\n pickAutofocus(anyFocusable, innerFocusables, allParentAutofocusables(entries, visibilityCache));\n if (focusNode) {\n return { node: focusNode };\n }\n else {\n console.warn('focus-lock: cannot find any node to move focus into');\n return undefined;\n }\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nimport { orderByTabIndex } from './utils/tabOrder';\nimport { getFocusables } from './utils/tabUtils';\n/**\n * traverses all related nodes (including groups) returning a list of all nodes(outer and internal) with meta information\n * This is low-level API!\n * @returns list of focusable elements inside a given top(!) node.\n * @see {@link getFocusableNodes} providing a simpler API\n */\nexport var expandFocusableNodes = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var outerNodes = orderByTabIndex(getFocusables([commonParent], true), true, true);\n var innerElements = getFocusables(entries, false);\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","export var focusOn = function (target, focusOptions) {\n if (!target) {\n // not clear how, but is possible https://github.com/theKashey/focus-lock/issues/53\n return;\n }\n if ('focus' in target) {\n target.focus(focusOptions);\n }\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\n","import { focusOn } from './commands';\nimport { focusSolver } from './focusSolver';\nvar guardCount = 0;\nvar lockDisabled = false;\n/**\n * The main functionality of the focus-lock package\n *\n * Contains focus at a given node.\n * The last focused element will help to determine which element(first or last) should be focused.\n * The found element will be focused.\n *\n * This is one time action (move), not a persistent focus-lock\n *\n * HTML markers (see {@link import('./constants').FOCUS_AUTO} constants) can control autofocus\n * @see {@link focusSolver} for the same functionality without autofocus\n */\nexport var moveFocusInside = function (topNode, lastNode, options) {\n if (options === void 0) { options = {}; }\n var focusable = focusSolver(topNode, lastNode);\n // global local side effect to countain recursive lock activation and resolve focus-fighting\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n /** +FOCUS-FIGHTING prevention **/\n if (guardCount > 2) {\n // we have recursive entered back the lock activation\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, options.focusOptions);\n guardCount--;\n }\n};\n","import { getTabbableNodes } from './utils/DOMutils';\nfunction weakRef(value) {\n if (!value)\n return null;\n // #68 Safari 14.1 dont have it yet\n // FIXME: remove in 2025\n if (typeof WeakRef === 'undefined') {\n return function () { return value || null; };\n }\n var w = value ? new WeakRef(value) : null;\n return function () { return (w === null || w === void 0 ? void 0 : w.deref()) || null; };\n}\nexport var recordElementLocation = function (element) {\n if (!element) {\n return null;\n }\n var stack = [];\n var currentElement = element;\n while (currentElement && currentElement !== document.body) {\n stack.push({\n current: weakRef(currentElement),\n parent: weakRef(currentElement.parentElement),\n left: weakRef(currentElement.previousElementSibling),\n right: weakRef(currentElement.nextElementSibling),\n });\n currentElement = currentElement.parentElement;\n }\n return {\n element: weakRef(element),\n stack: stack,\n ownerDocument: element.ownerDocument,\n };\n};\nvar restoreFocusTo = function (location) {\n var _a, _b, _c, _d, _e;\n if (!location) {\n return undefined;\n }\n var stack = location.stack, ownerDocument = location.ownerDocument;\n var visibilityCache = new Map();\n for (var _i = 0, stack_1 = stack; _i < stack_1.length; _i++) {\n var line = stack_1[_i];\n var parent_1 = (_a = line.parent) === null || _a === void 0 ? void 0 : _a.call(line);\n // is it still here?\n if (parent_1 && ownerDocument.contains(parent_1)) {\n var left = (_b = line.left) === null || _b === void 0 ? void 0 : _b.call(line);\n var savedCurrent = line.current();\n var current = parent_1.contains(savedCurrent) ? savedCurrent : undefined;\n var right = (_c = line.right) === null || _c === void 0 ? void 0 : _c.call(line);\n var focusables = getTabbableNodes([parent_1], visibilityCache);\n var aim = \n // that is element itself\n (_e = (_d = current !== null && current !== void 0 ? current : \n // or something in it's place\n left === null || left === void 0 ? void 0 : left.nextElementSibling) !== null && _d !== void 0 ? _d : \n // or somebody to the right, still close enough\n right) !== null && _e !== void 0 ? _e : \n // or somebody to the left, something?\n left;\n while (aim) {\n for (var _f = 0, focusables_1 = focusables; _f < focusables_1.length; _f++) {\n var focusable = focusables_1[_f];\n if (aim === null || aim === void 0 ? void 0 : aim.contains(focusable.node)) {\n return focusable.node;\n }\n }\n aim = aim.nextElementSibling;\n }\n if (focusables.length) {\n // if parent contains a focusable - move there\n return focusables[0].node;\n }\n }\n }\n // nothing matched\n return undefined;\n};\n/**\n * Captures the current focused element to restore focus as close as possible in the future\n * Handles situations where the focused element is removed from the DOM or no longer focusable\n * moving focus to the closest focusable element\n * @param targetElement - element where focus should be restored\n * @returns a function returning a new element to focus\n */\nexport var captureFocusRestore = function (targetElement) {\n var location = recordElementLocation(targetElement);\n return function () {\n return restoreFocusTo(location);\n };\n};\n","import { focusOn } from './commands';\nimport { getTabbableNodes, contains, getFocusableNodes } from './utils/DOMutils';\nimport { asArray } from './utils/array';\n/**\n * for a given `element` in a given `scope` returns focusable siblings\n * @param element - base element\n * @param scope - common parent. Can be document, but better to narrow it down for performance reasons\n * @returns {prev,next} - references to a focusable element before and after\n * @returns undefined - if operation is not applicable\n */\nexport var getRelativeFocusable = function (element, scope, useTabbables) {\n if (!element || !scope) {\n console.error('no element or scope given');\n return {};\n }\n var shards = asArray(scope);\n if (shards.every(function (shard) { return !contains(shard, element); })) {\n console.error('Active element is not contained in the scope');\n return {};\n }\n var focusables = useTabbables\n ? getTabbableNodes(shards, new Map())\n : getFocusableNodes(shards, new Map());\n var current = focusables.findIndex(function (_a) {\n var node = _a.node;\n return node === element;\n });\n if (current === -1) {\n // an edge case, when anchor element is not found\n return undefined;\n }\n return {\n prev: focusables[current - 1],\n next: focusables[current + 1],\n first: focusables[0],\n last: focusables[focusables.length - 1],\n };\n};\nvar getBoundary = function (shards, useTabbables) {\n var set = useTabbables\n ? getTabbableNodes(asArray(shards), new Map())\n : getFocusableNodes(asArray(shards), new Map());\n return {\n first: set[0],\n last: set[set.length - 1],\n };\n};\nvar defaultOptions = function (options) {\n return Object.assign({\n scope: document.body,\n cycle: true,\n onlyTabbable: true,\n }, options);\n};\nvar moveFocus = function (fromElement, options, cb) {\n if (options === void 0) { options = {}; }\n var newOptions = defaultOptions(options);\n var solution = getRelativeFocusable(fromElement, newOptions.scope, newOptions.onlyTabbable);\n if (!solution) {\n return;\n }\n var target = cb(solution, newOptions.cycle);\n if (target) {\n focusOn(target.node, newOptions.focusOptions);\n }\n};\n/**\n * focuses next element in the tab-order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusNextElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var next = _a.next, first = _a.first;\n return next || (cycle && first);\n });\n};\n/**\n * focuses prev element in the tab order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusPrevElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var prev = _a.prev, last = _a.last;\n return prev || (cycle && last);\n });\n};\nvar pickBoundary = function (scope, options, what) {\n var _a;\n var boundary = getBoundary(scope, (_a = options.onlyTabbable) !== null && _a !== void 0 ? _a : true);\n var node = boundary[what];\n if (node) {\n focusOn(node.node, options.focusOptions);\n }\n};\n/**\n * focuses first element in the tab-order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusFirstElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'first');\n};\n/**\n * focuses last element in the tab order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusLastElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'last');\n};\n","export function deferAction(action) {\n setTimeout(action, 1);\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};\nexport var extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport { moveFocusInside, focusInside, focusIsHidden, expandFocusableNodes, getFocusableNodes, focusNextElement, focusPrevElement, focusFirstElement, focusLastElement, captureFocusRestore } from 'focus-lock';\nimport { deferAction, extractRef } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar tryRestoreFocus = function tryRestoreFocus() {\n return null;\n};\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\nvar windowFocused = false;\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n do {\n var item = allNodes[i];\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n return;\n }\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n return Boolean(focusWasOutsideWindow);\n }\n return focusWasOutsideWindow === 'meanwhile';\n};\nvar checkInHost = function checkInHost(check, el, boundary) {\n return el && (el.host === check && (!el.activeElement || boundary.contains(el.activeElement)) || el.parentNode && checkInHost(check, el.parentNode, boundary));\n};\nvar withinHost = function withinHost(activeElement, workingArea) {\n return workingArea.some(function (area) {\n return checkInHost(activeElement, area, area);\n });\n};\nvar getNodeFocusables = function getNodeFocusables(nodes) {\n return getFocusableNodes(nodes, new Map());\n};\nvar isNotFocusable = function isNotFocusable(node) {\n return !getNodeFocusables([node.parentNode]).some(function (el) {\n return el.node === node;\n });\n};\nvar activateTrap = function activateTrap() {\n var result = false;\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 focusOptions = _lastActiveTrap.focusOptions,\n noFocusGuards = _lastActiveTrap.noFocusGuards;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n if (focusOnBody() && lastActiveFocus) {\n if (!document.body.contains(lastActiveFocus) || isNotFocusable(lastActiveFocus)) {\n lastActiveFocus = null;\n var newTarget = tryRestoreFocus();\n if (newTarget) {\n newTarget.focus();\n }\n }\n }\n var activeElement = document && document.activeElement;\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n var shouldForceRestoreFocus = function shouldForceRestoreFocus() {\n if (!focusWasOutside(crossFrame) || !noFocusGuards || !lastActiveFocus || windowFocused) {\n return false;\n }\n var nodes = getNodeFocusables(workingArea);\n var lastIndex = nodes.findIndex(function (_ref) {\n var node = _ref.node;\n return node === lastActiveFocus;\n });\n return lastIndex === 0 || lastIndex === nodes.length - 1;\n };\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || shouldForceRestoreFocus() || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || activeElement && withinHost(activeElement, workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n if (activeElement.blur) {\n activeElement.blur();\n }\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus, {\n focusOptions: focusOptions\n });\n lastPortaledElement = {};\n }\n }\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n tryRestoreFocus = captureFocusRestore(lastActiveFocus);\n }\n }\n if (document && activeElement !== document.activeElement && document.querySelector('[data-focus-auto-guard]')) {\n var newActiveElement = document && document.activeElement;\n var allNodes = expandFocusableNodes(workingArea);\n var focusedIndex = allNodes.map(function (_ref2) {\n var node = _ref2.node;\n return node;\n }).indexOf(newActiveElement);\n if (focusedIndex > -1) {\n allNodes.filter(function (_ref3) {\n var guard = _ref3.guard,\n node = _ref3.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref4) {\n var node = _ref4.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 return result;\n};\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n event.stopPropagation();\n event.preventDefault();\n }\n};\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\nvar onFocus = function onFocus(event) {\n var source = event.target;\n var currentNode = event.currentTarget;\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\nvar FocusTrap = function FocusTrap(_ref5) {\n var children = _ref5.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\nvar onWindowFocus = function onWindowFocus() {\n windowFocused = true;\n};\nvar onWindowBlur = function onWindowBlur() {\n windowFocused = false;\n focusWasOutsideWindow = 'just';\n deferAction(function () {\n focusWasOutsideWindow = 'meanwhile';\n });\n};\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('focus', onWindowFocus);\n window.addEventListener('blur', onWindowBlur);\n};\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('focus', onWindowFocus);\n window.removeEventListener('blur', onWindowBlur);\n};\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref6) {\n var disabled = _ref6.disabled;\n return !disabled;\n });\n}\nvar focusLockAPI = {\n moveFocusInside: moveFocusInside,\n focusInside: focusInside,\n focusNextElement: focusNextElement,\n focusPrevElement: focusPrevElement,\n focusFirstElement: focusFirstElement,\n focusLastElement: focusLastElement,\n captureFocusRestore: captureFocusRestore\n};\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation();\n if (!traps.filter(function (_ref7) {\n var id = _ref7.id;\n return id === lastTrap.id;\n }).length) {\n lastTrap.returnFocus(!trap);\n }\n }\n if (trap) {\n lastActiveFocus = null;\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation(focusLockAPI);\n }\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n}\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb(focusLockAPI);\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","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';\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});\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","import { Props } from '..';\nimport useOnClose, { OnCloseReturn } from '../hooks/useOnClose';\n\nimport styles from './style.module.scss';\nimport classNamesUtil from 'classnames';\nimport { Button } from '../../button';\nimport { XIcon } from '../../icon';\nimport { useRef, useEffect } from 'react';\nimport FocusLock from 'react-focus-lock';\n\nexport interface GenericModalClassNames {\n wrapper?: string | (({ isClosing }: { isClosing: boolean }) => string);\n container?: string | (({ isClosing }: { isClosing: boolean }) => string);\n overlay?: string;\n header?: string;\n closeButton?: string;\n closeButtonIcon?: string;\n title?: string;\n body?: string;\n footer?: string;\n}\ninterface GenericModalProps extends Props {\n classNames?: GenericModalClassNames;\n titleSize?: 'small' | 'default';\n}\n\nconst InnerModal = ({\n title,\n children,\n classNames,\n dismissible = true,\n footer,\n titleSize = 'default',\n isClosing,\n onModalScroll,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick,\n}: GenericModalProps & OnCloseReturn) => {\n const modalBodyRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!modalBodyRef.current || !onModalScroll) {\n return;\n }\n const handleOnScroll = () => {\n if (modalBodyRef.current) {\n onModalScroll(modalBodyRef.current.scrollTop, modalBodyRef.current);\n }\n };\n\n modalBodyRef.current.addEventListener('scroll', handleOnScroll);\n\n return () => {\n modalBodyRef.current?.removeEventListener('scroll', handleOnScroll);\n };\n }, []);\n\n return (\n <div\n className={classNamesUtil(classNames?.overlay, styles.overlay, {\n [styles.overlayClose]: isClosing,\n })}\n onAnimationEnd={handleOnCloseAnimationEnded}\n onClick={handleOnOverlayClick}\n >\n <div\n className={\n typeof classNames?.wrapper === 'string'\n ? classNames?.wrapper\n : classNames?.wrapper?.({ isClosing })\n }\n >\n <FocusLock returnFocus className=\"m-auto\">\n <div\n aria-modal=\"true\"\n role=\"dialog\"\n className={\n typeof classNames?.container === 'string'\n ? classNames?.container\n : classNames?.container?.({ isClosing })\n }\n onClick={handleContainerClick}\n >\n <div\n className={classNamesUtil(\n 'bg-white d-flex ai-center w100 px24 pt24 pb16',\n styles.header,\n {\n 'jc-between': !!title,\n 'jc-end': !title,\n }\n )}\n >\n {title && (\n <div\n className={classNamesUtil(\n styles.title,\n titleSize === 'small' ? 'p-h4' : 'p-h2',\n classNames?.title,\n )}\n >\n {title}\n </div>\n )}\n\n {dismissible && (\n <Button\n hideLabel\n leftIcon={\n <XIcon\n color=\"neutral-800\"\n className={classNames?.closeButtonIcon}\n />\n }\n onClick={handleOnClose}\n type=\"button\"\n variant=\"textColor\"\n className={classNamesUtil(\n classNames?.closeButton,\n 'p0',\n styles.closeButton\n )}\n >\n Close modal\n </Button>\n )}\n </div>\n\n <div\n className={classNamesUtil('w100', classNames?.body, styles.body)}\n ref={modalBodyRef}\n >\n {children}\n </div>\n\n {footer && (\n <div\n className={classNamesUtil(\n classNames?.footer,\n 'w100 bg-white',\n styles.footer\n )}\n >\n <div className=\"p24 pt16\">{footer}</div>\n </div>\n )}\n </div>\n </FocusLock>\n </div>\n </div>\n );\n};\n\nexport const GenericModal = (props: GenericModalProps) => {\n const { isOpen, onClose, dismissible = true } = props;\n const { isVisible, ...rest } = useOnClose(onClose, isOpen, dismissible);\n\n if (!isVisible) {\n return null;\n }\n\n return <InnerModal {...props} isVisible={isVisible} {...rest} />;\n};\n"],"names":["constants.FOCUS_DISABLED","constants.FOCUS_GROUP","node","bool","oneOfType","object","func","string","arrayOf","any","setPrototypeOf","React","FocusLockUI","classNames","_jsx","classNamesUtil","FocusLock","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/hooks/useOnClose.ts","../../../../../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../../../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../../node_modules/focus-lock/dist/es2015/constants.js","../../../../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../../../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../../../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../../../../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../../../../../node_modules/use-sidecar/dist/es2015/medium.js","../../../../../node_modules/react-focus-lock/dist/es2015/medium.js","../../../../../node_modules/react-focus-lock/dist/es2015/scope.js","../../../../../node_modules/react-focus-lock/dist/es2015/Lock.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/typeof.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../../../../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../../../node_modules/react-clientside-effect/lib/index.es.js","../../../../../node_modules/focus-lock/dist/es2015/utils/array.js","../../../../../node_modules/focus-lock/dist/es2015/utils/is.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../../../../../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../../../../../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../../../../../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../../../../../node_modules/focus-lock/dist/es2015/utils/safe.js","../../../../../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../../../../../node_modules/focus-lock/dist/es2015/focusInside.js","../../../../../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../../../../../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../../../../../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../../../../../node_modules/focus-lock/dist/es2015/solver.js","../../../../../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../../../../../node_modules/focus-lock/dist/es2015/utils/parenting.js","../../../../../node_modules/focus-lock/dist/es2015/focusSolver.js","../../../../../node_modules/focus-lock/dist/es2015/focusables.js","../../../../../node_modules/focus-lock/dist/es2015/commands.js","../../../../../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../../../../../node_modules/focus-lock/dist/es2015/return-focus.js","../../../../../node_modules/focus-lock/dist/es2015/sibling.js","../../../../../node_modules/react-focus-lock/dist/es2015/util.js","../../../../../node_modules/react-focus-lock/dist/es2015/Trap.js","../../../../../node_modules/react-focus-lock/dist/es2015/Combination.js","../../../../../../src/lib/components/modal/genericModal/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\n\nexport interface OnCloseReturn {\n isClosing: boolean;\n isVisible: boolean;\n handleOnCloseAnimationEnded: () => void;\n handleContainerClick: (\n event: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => void;\n handleOnClose: () => void;\n handleOnOverlayClick: () => void;\n}\n\nconst useOnClose = (\n onClose: () => void,\n isOpen: boolean,\n dismissable: boolean\n): OnCloseReturn => {\n const [isVisible, setIsVisible] = useState(false);\n const [isClosing, setIsClosing] = useState(false);\n\n const handleOnClose = useCallback(() => {\n setIsClosing(true);\n }, []);\n\n const handleOnCloseAnimationEnded = useCallback(() => {\n if (isVisible && isClosing) {\n onClose();\n setIsVisible(false);\n setIsClosing(false);\n }\n }, [isClosing, isVisible, onClose]);\n\n const handleOnOverlayClick = useCallback(() => {\n if (!dismissable) {\n return;\n }\n\n handleOnClose();\n }, [dismissable, handleOnClose]);\n\n const handleEscKey = useCallback(\n (e: KeyboardEvent) => {\n if (e.code !== 'Escape' || !dismissable || !isOpen) {\n return null;\n }\n\n handleOnClose();\n },\n [isOpen, dismissable, handleOnClose]\n );\n\n useEffect(() => {\n window.addEventListener('keydown', handleEscKey);\n\n return () => {\n window.removeEventListener('keydown', handleEscKey);\n };\n }, [handleEscKey]);\n\n useEffect(() => {\n if (isOpen) {\n setIsVisible(true);\n }\n\n if (!isOpen && isVisible) {\n handleOnClose();\n }\n\n document.body.style.overflow = isOpen ? 'hidden' : 'auto';\n\n return () => {\n document.body.style.overflow = 'auto';\n };\n }, [handleOnClose, isOpen, isVisible]);\n\n const handleContainerClick = (\n e: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n e.stopPropagation();\n };\n\n return {\n isClosing,\n isVisible,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick,\n };\n};\n\nexport default useOnClose;\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","/**\n * defines a focus group\n */\nexport var FOCUS_GROUP = 'data-focus-lock';\n/**\n * disables element discovery inside a group marked by key\n */\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\n/**\n * allows uncontrolled focus within the marked area, effectively disabling focus lock for it's content\n */\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\n/**\n * instructs autofocus engine to pick default autofocus inside a given node\n * can be set on the element or container\n */\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n/**\n * instructs autofocus to ignore elements within a given node\n * can be set on the element or container\n */\nexport var FOCUS_NO_AUTOFOCUS = 'data-no-autofocus';\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","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","import * as React from 'react';\nimport { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar currentValues = new WeakMap();\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 <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n var callbackRef = useCallbackRef(defaultValue || null, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n // handle refs changes - added or removed\n useIsomorphicLayoutEffect(function () {\n var oldValue = currentValues.get(callbackRef);\n if (oldValue) {\n var prevRefs_1 = new Set(oldValue);\n var nextRefs_1 = new Set(refs);\n var current_1 = callbackRef.current;\n prevRefs_1.forEach(function (ref) {\n if (!nextRefs_1.has(ref)) {\n assignRef(ref, null);\n }\n });\n nextRefs_1.forEach(function (ref) {\n if (!prevRefs_1.has(ref)) {\n assignRef(ref, current_1);\n }\n });\n }\n currentValues.set(callbackRef, refs);\n }, [refs]);\n return callbackRef;\n}\n","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};\nvar InFocusGuard = function InFocusGuard(_ref) {\n var _ref$children = _ref.children,\n children = _ref$children === void 0 ? null : _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};\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nexport default InFocusGuard;","import { __assign } 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}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","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 ssr: typeof document !== 'undefined'\n});","import { createContext } from 'react';\nexport var focusScope = /*#__PURE__*/createContext(undefined);","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';\nimport { focusScope } from './scope';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var _React$useState2 = React.useState({}),\n update = _React$useState2[1];\n var children = props.children,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$noFocusGuards = props.noFocusGuards,\n noFocusGuards = _props$noFocusGuards === void 0 ? false : _props$noFocusGuards,\n _props$persistentFocu = props.persistentFocus,\n persistentFocus = _props$persistentFocu === void 0 ? false : _props$persistentFocu,\n _props$crossFrame = props.crossFrame,\n crossFrame = _props$crossFrame === void 0 ? true : _props$crossFrame,\n _props$autoFocus = props.autoFocus,\n autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n hasPositiveIndices = props.hasPositiveIndices,\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 _props$returnFocus = props.returnFocus,\n shouldReturnFocus = _props$returnFocus === void 0 ? false : _props$returnFocus,\n focusOptions = props.focusOptions,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n var _React$useState3 = React.useState({}),\n id = _React$useState3[0];\n var onActivation = React.useCallback(function (_ref) {\n var captureFocusRestore = _ref.captureFocusRestore;\n if (!originalFocusedElement.current) {\n var _document;\n var activeElement = (_document = document) == null ? void 0 : _document.activeElement;\n originalFocusedElement.current = activeElement;\n if (activeElement !== document.body) {\n originalFocusedElement.current = captureFocusRestore(activeElement);\n }\n }\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n isActive.current = true;\n update();\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n update();\n }, [onDeactivationCallback]);\n var returnFocus = React.useCallback(function (allowDefer) {\n var focusRestore = originalFocusedElement.current;\n if (focusRestore) {\n var returnFocusTo = (typeof focusRestore === 'function' ? focusRestore() : focusRestore) || document.body;\n var howToReturnFocus = typeof shouldReturnFocus === 'function' ? shouldReturnFocus(returnFocusTo) : shouldReturnFocus;\n if (howToReturnFocus) {\n var returnFocusOptions = typeof howToReturnFocus === 'object' ? howToReturnFocus : undefined;\n originalFocusedElement.current = null;\n if (allowDefer) {\n Promise.resolve().then(function () {\n return returnFocusTo.focus(returnFocusOptions);\n });\n } else {\n returnFocusTo.focus(returnFocusOptions);\n }\n }\n }\n }, [shouldReturnFocus]);\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium;\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n React.useEffect(function () {\n if (!observed.current && typeof Container !== 'string') {\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n var focusScopeValue = React.useMemo(function () {\n return {\n observed: observed,\n shards: shards,\n enabled: !disabled,\n active: isActive.current\n };\n }, [disabled, isActive.current, shards, realObserved]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [\n /*#__PURE__*/\n React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), hasPositiveIndices ? /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) : null], !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 focusOptions: focusOptions,\n noFocusGuards: noFocusGuards\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), /*#__PURE__*/React.createElement(focusScope.Provider, {\n value: focusScopeValue\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, func]),\n focusOptions: object,\n noFocusGuards: bool,\n hasPositiveIndices: 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} : {};\nexport default FocusLock;","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","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","/*\nIE11 support\n */\nexport 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]); };\nexport var getFirst = function (a) { return (Array.isArray(a) ? a[0] : a); };\n","import { FOCUS_NO_AUTOFOCUS } from '../constants';\nvar isElementHidden = function (node) {\n // we can measure only \"elements\"\n // consider others as \"visible\"\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar getParentNode = function (node) {\n // DOCUMENT_FRAGMENT_NODE can also point on ShadowRoot. In this case .host will point on the next node\n return node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node.parentNode.host\n : node.parentNode;\n};\nvar isTopNode = function (node) {\n // @ts-ignore\n return node === document || (node && node.nodeType === Node.DOCUMENT_NODE);\n};\nvar isInert = function (node) { return node.hasAttribute('inert'); };\n/**\n * @see https://github.com/testing-library/jest-dom/blob/main/src/to-be-visible.js\n */\nvar isVisibleUncached = function (node, checkParent) {\n return !node || isTopNode(node) || (!isElementHidden(node) && !isInert(node) && checkParent(getParentNode(node)));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nvar isAutoFocusAllowedUncached = function (node, checkParent) {\n return node && !isTopNode(node) ? (isAutoFocusAllowed(node) ? checkParent(getParentNode(node)) : false) : true;\n};\nexport var isAutoFocusAllowedCached = function (cache, node) {\n var cached = cache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isAutoFocusAllowedUncached(node, isAutoFocusAllowedCached.bind(undefined, cache));\n cache.set(node, result);\n return result;\n};\nexport var getDataset = function (node) {\n // @ts-ignore\n return node.dataset;\n};\nexport var isHTMLButtonElement = function (node) { return node.tagName === 'BUTTON'; };\nexport var isHTMLInputElement = function (node) { return node.tagName === 'INPUT'; };\nexport var isRadioElement = function (node) {\n return isHTMLInputElement(node) && node.type === 'radio';\n};\nexport var notHiddenInput = function (node) {\n return !((isHTMLInputElement(node) || isHTMLButtonElement(node)) && (node.type === 'hidden' || node.disabled));\n};\nexport var isAutoFocusAllowed = function (node) {\n var attribute = node.getAttribute(FOCUS_NO_AUTOFOCUS);\n return ![true, 'true', ''].includes(attribute);\n};\nexport var isGuard = function (node) { var _a; return Boolean(node && ((_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.focusGuard)); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var aTab = Math.max(0, a.tabIndex);\n var bTab = Math.max(0, b.tabIndex);\n var tabDiff = aTab - bTab;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!aTab) {\n return 1;\n }\n if (!bTab) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nvar getTabIndex = function (node) {\n if (node.tabIndex < 0) {\n // all \"focusable\" elements are already preselected\n // but some might have implicit negative tabIndex\n // return 0 for <audio without tabIndex attribute - it is \"tabbable\"\n if (!node.hasAttribute('tabindex')) {\n return 0;\n }\n }\n return node.tabIndex;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) {\n var tabIndex = getTabIndex(node);\n return {\n node: node,\n index: index,\n tabIndex: keepGuards && tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : tabIndex,\n };\n })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","/**\n * list of the object to be considered as focusable\n */\nexport var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n // elements with explicit roles will also use explicit tabindex\n // '[role=\"button\"]',\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 { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = \"\".concat(queryTabbables, \", [data-focus-guard]\");\nvar getFocusablesWithShadowDom = function (parent, withGuards) {\n return toArray((parent.shadowRoot || parent).children).reduce(function (acc, child) {\n return acc.concat(child.matches(withGuards ? queryGuardTabbables : queryTabbables) ? [child] : [], getFocusablesWithShadowDom(child));\n }, []);\n};\nvar getFocusablesWithIFrame = function (parent, withGuards) {\n var _a;\n // contentDocument of iframe will be null if current origin cannot access it\n if (parent instanceof HTMLIFrameElement && ((_a = parent.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n return getFocusables([parent.contentDocument.body], withGuards);\n }\n return [parent];\n};\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n var _a;\n var focusableWithShadowDom = getFocusablesWithShadowDom(parent, withGuards);\n var focusableWithIframes = (_a = []).concat.apply(_a, focusableWithShadowDom.map(function (node) { return getFocusablesWithIFrame(node, withGuards); }));\n return acc.concat(\n // add all tabbables inside and within shadow DOMs in DOM order\n focusableWithIframes, \n // add if node is tabbable itself\n parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\n/**\n * return a list of focusable nodes within an area marked as \"auto-focusable\"\n * @param parent\n */\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\".concat(FOCUS_AUTO, \"]\"));\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","import { toArray } from './array';\nimport { isAutoFocusAllowedCached, isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\n/**\n * given list of focusable elements keeps the ones user can interact with\n * @param nodes\n * @param visibilityCache\n */\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var filterAutoFocusable = function (nodes, cache) {\n if (cache === void 0) { cache = new Map(); }\n return toArray(nodes).filter(function (node) { return isAutoFocusAllowedCached(cache, node); });\n};\n/**\n * !__WARNING__! Low level API.\n * @returns all tabbable nodes\n *\n * @see {@link getFocusableNodes} to get any focusable element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\n/**\n * !__WARNING__! Low level API.\n *\n * @returns anything \"focusable\", not only tabbable. The difference is in `tabIndex=-1`\n * (without guards, as long as they are not expected to be ever focused)\n *\n * @see {@link getTabbableNodes} to get only tabble nodes element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getFocusableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\n/**\n * return list of nodes which are expected to be auto-focused\n * @param topNode\n * @param visibilityCache\n */\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n/*\n * Determines if element is contained in scope, including nested shadow DOMs\n */\nexport var contains = function (scope, element) {\n if (scope.shadowRoot) {\n return contains(scope.shadowRoot, element);\n }\n else {\n if (Object.getPrototypeOf(scope).contains !== undefined &&\n Object.getPrototypeOf(scope).contains.call(scope, element)) {\n return true;\n }\n return toArray(scope.children).some(function (child) {\n var _a;\n if (child instanceof HTMLIFrameElement) {\n var iframeBody = (_a = child.contentDocument) === null || _a === void 0 ? void 0 : _a.body;\n if (iframeBody) {\n return contains(iframeBody, element);\n }\n return false;\n }\n return contains(child, element);\n });\n }\n};\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n/**\n * in case of multiple nodes nested inside each other\n * keeps only top ones\n * this is O(nlogn)\n * @param nodes\n * @returns {*}\n */\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 /* eslint-disable no-bitwise */\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 /* eslint-enable */\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\n/**\n * finds top most parent for a node\n * @param node\n * @returns {*}\n */\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n/**\n * returns all \"focus containers\" inside a given node\n * @param node - node or nodes to look inside\n * @returns Element[]\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(\"[\".concat(FOCUS_GROUP, \"=\\\"\").concat(group, \"\\\"]:not([\").concat(FOCUS_DISABLED, \"=\\\"disabled\\\"])\"))))\n : [currentNode]));\n return acc;\n }, []);\n};\n","export var safeProbe = function (cb) {\n try {\n return cb();\n }\n catch (e) {\n return undefined;\n }\n};\n","/**\n * returns active element from document or from nested shadowdoms\n */\nimport { safeProbe } from './safe';\n/**\n * returns current active element. If the active element is a \"container\" itself(shadowRoot or iframe) returns active element inside it\n * @param [inDocument]\n */\nexport var getActiveElement = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n if (!inDocument || !inDocument.activeElement) {\n return undefined;\n }\n var activeElement = inDocument.activeElement;\n return (activeElement.shadowRoot\n ? getActiveElement(activeElement.shadowRoot)\n : activeElement instanceof HTMLIFrameElement && safeProbe(function () { return activeElement.contentWindow.document; })\n ? getActiveElement(activeElement.contentWindow.document)\n : activeElement);\n};\n","import { contains } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getFirst, toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\nvar focusInFrame = function (frame, activeElement) { return frame === activeElement; };\nvar focusInsideIframe = function (topNode, activeElement) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node, activeElement); }));\n};\n/**\n * @returns {Boolean} true, if the current focus is inside given node or nodes.\n * Supports nodes hidden inside shadowDom\n */\nexport var focusInside = function (topNode, activeElement) {\n // const activeElement = document && getActiveElement();\n if (activeElement === void 0) { activeElement = getActiveElement(getFirst(topNode).ownerDocument); }\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).some(function (node) {\n return contains(node, activeElement) || focusInsideIframe(node, activeElement);\n });\n};\n","import { FOCUS_ALLOW } from './constants';\nimport { contains } from './utils/DOMutils';\nimport { toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\n/**\n * checks if focus is hidden FROM the focus-lock\n * ie contained inside a node focus-lock shall ignore\n *\n * This is a utility function coupled with {@link FOCUS_ALLOW} constant\n *\n * @returns {boolean} focus is currently is in \"allow\" area\n */\nexport var focusIsHidden = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n var activeElement = getActiveElement(inDocument);\n if (!activeElement) {\n return false;\n }\n // this does not support setting FOCUS_ALLOW within shadow dom\n return toArray(inDocument.querySelectorAll(\"[\".concat(FOCUS_ALLOW, \"]\"))).some(function (node) { return contains(node, activeElement); });\n};\n","import { isRadioElement } from './is';\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadioElement)\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 (isRadioElement(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\n/**\n * giving a set of radio inputs keeps only selected (tabbable) ones\n * @param nodes\n */\nexport var correctNodes = function (nodes) {\n // IE11 has no Set(array) constructor\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n // using filter to support IE11\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, node) {\n return nodes.indexOf(correctNode(node, nodes));\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\n/**\n * Main solver for the \"find next focus\" question\n * @param innerNodes - used to control \"return focus\"\n * @param innerTabbables - used to control \"autofocus\"\n * @param outerNodes\n * @param activeElement\n * @param lastNode\n * @returns {number|string|undefined|*}\n */\nexport var newFocus = function (innerNodes, innerTabbables, 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 // focus is inside\n if (activeElement && innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = activeElement !== undefined ? outerNodes.indexOf(activeElement) : -1;\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n // no active focus (or focus is on the body)\n if (activeIndex === -1) {\n // known fallback\n if (lastNodeInside !== -1) {\n return lastNodeInside;\n }\n return NEW_FOCUS;\n }\n // new focus, nothing to calculate\n if (lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndex = activeElement !== undefined ? correctedNodes.indexOf(activeElement) : -1;\n var correctedIndexDiff = correctedIndex - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // no tabbable elements, autofocus is not possible\n if (innerTabbables.length === 0) {\n // an edge case with no tabbable elements\n // return the last focusable one\n // with some probability this will prevent focus from cycling across the lock, but there is no tabbale elements to cycle to\n return lastNodeInside;\n }\n var returnFirstNode = pickFocusable(innerNodes, innerTabbables[0]);\n var returnLastNode = pickFocusable(innerNodes, innerTabbables[innerTabbables.length - 1]);\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n","import { filterAutoFocusable } from './DOMutils';\nimport { pickFirstFocus } from './firstFocus';\nimport { getDataset } from './is';\nvar findAutoFocused = function (autoFocusables) {\n return function (node) {\n var _a;\n var autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;\n return (\n // @ts-expect-error\n node.autofocus ||\n //\n (autofocus !== undefined && autofocus !== 'false') ||\n //\n autoFocusables.indexOf(node) >= 0);\n };\n};\nexport var pickAutofocus = function (nodesIndexes, orderedNodes, groups) {\n var nodes = nodesIndexes.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));\n if (autoFocusable && autoFocusable.length) {\n return pickFirstFocus(autoFocusable);\n }\n return pickFirstFocus(filterAutoFocusable(orderedNodes));\n};\n","import { parentAutofocusables } from './DOMutils';\nimport { contains } from './DOMutils';\nimport { asArray } from './array';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode.host || node.parentNode, parents);\n }\n return parents;\n};\n/**\n * finds a parent for both nodeA and nodeB\n * @param nodeA\n * @param nodeB\n * @returns {boolean|*}\n */\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n // tslint:disable-next-line:prefer-for-of\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 || contains(common, topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n // TODO: add assert here?\n return topCommon;\n};\n/**\n * return list of nodes which are expected to be autofocused inside a given top nodes\n * @param entries\n * @param visibilityCache\n */\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getFocusableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { asArray, getFirst } from './utils/array';\nimport { pickAutofocus } from './utils/auto-focus';\nimport { getActiveElement } from './utils/getActiveElement';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n // remap to dstNodes\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\n/**\n * contains the main logic of the `focus-lock` package.\n *\n * ! you probably dont need this function !\n *\n * given top node(s) and the last active element returns the element to be focused next\n * @returns element which should be focused to move focus inside\n * @param topNode\n * @param lastNode\n */\nexport var focusSolver = function (topNode, lastNode) {\n var activeElement = getActiveElement(asArray(topNode).length > 0 ? document : getFirst(topNode).ownerDocument);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getFocusableNodes(entries, visibilityCache);\n var innerElements = anyFocusable.filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n return undefined;\n }\n var outerNodes = getFocusableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n // collect inner focusable and separately tabbables\n var innerFocusables = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var innerTabbable = orderedInnerElements.filter(function (_a) {\n var tabIndex = _a.tabIndex;\n return tabIndex >= 0;\n }).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerFocusables, innerTabbable, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var focusNode = \n // first try only tabbable, and the fallback to all focusable, as long as at least one element should be picked for focus\n pickAutofocus(anyFocusable, innerTabbable, allParentAutofocusables(entries, visibilityCache)) ||\n pickAutofocus(anyFocusable, innerFocusables, allParentAutofocusables(entries, visibilityCache));\n if (focusNode) {\n return { node: focusNode };\n }\n else {\n console.warn('focus-lock: cannot find any node to move focus into');\n return undefined;\n }\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nimport { orderByTabIndex } from './utils/tabOrder';\nimport { getFocusables } from './utils/tabUtils';\n/**\n * traverses all related nodes (including groups) returning a list of all nodes(outer and internal) with meta information\n * This is low-level API!\n * @returns list of focusable elements inside a given top(!) node.\n * @see {@link getFocusableNodes} providing a simpler API\n */\nexport var expandFocusableNodes = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var outerNodes = orderByTabIndex(getFocusables([commonParent], true), true, true);\n var innerElements = getFocusables(entries, false);\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","export var focusOn = function (target, focusOptions) {\n if (!target) {\n // not clear how, but is possible https://github.com/theKashey/focus-lock/issues/53\n return;\n }\n if ('focus' in target) {\n target.focus(focusOptions);\n }\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\n","import { focusOn } from './commands';\nimport { focusSolver } from './focusSolver';\nvar guardCount = 0;\nvar lockDisabled = false;\n/**\n * The main functionality of the focus-lock package\n *\n * Contains focus at a given node.\n * The last focused element will help to determine which element(first or last) should be focused.\n * The found element will be focused.\n *\n * This is one time action (move), not a persistent focus-lock\n *\n * HTML markers (see {@link import('./constants').FOCUS_AUTO} constants) can control autofocus\n * @see {@link focusSolver} for the same functionality without autofocus\n */\nexport var moveFocusInside = function (topNode, lastNode, options) {\n if (options === void 0) { options = {}; }\n var focusable = focusSolver(topNode, lastNode);\n // global local side effect to countain recursive lock activation and resolve focus-fighting\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n /** +FOCUS-FIGHTING prevention **/\n if (guardCount > 2) {\n // we have recursive entered back the lock activation\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, options.focusOptions);\n guardCount--;\n }\n};\n","import { getTabbableNodes } from './utils/DOMutils';\nfunction weakRef(value) {\n if (!value)\n return null;\n // #68 Safari 14.1 dont have it yet\n // FIXME: remove in 2025\n if (typeof WeakRef === 'undefined') {\n return function () { return value || null; };\n }\n var w = value ? new WeakRef(value) : null;\n return function () { return (w === null || w === void 0 ? void 0 : w.deref()) || null; };\n}\nexport var recordElementLocation = function (element) {\n if (!element) {\n return null;\n }\n var stack = [];\n var currentElement = element;\n while (currentElement && currentElement !== document.body) {\n stack.push({\n current: weakRef(currentElement),\n parent: weakRef(currentElement.parentElement),\n left: weakRef(currentElement.previousElementSibling),\n right: weakRef(currentElement.nextElementSibling),\n });\n currentElement = currentElement.parentElement;\n }\n return {\n element: weakRef(element),\n stack: stack,\n ownerDocument: element.ownerDocument,\n };\n};\nvar restoreFocusTo = function (location) {\n var _a, _b, _c, _d, _e;\n if (!location) {\n return undefined;\n }\n var stack = location.stack, ownerDocument = location.ownerDocument;\n var visibilityCache = new Map();\n for (var _i = 0, stack_1 = stack; _i < stack_1.length; _i++) {\n var line = stack_1[_i];\n var parent_1 = (_a = line.parent) === null || _a === void 0 ? void 0 : _a.call(line);\n // is it still here?\n if (parent_1 && ownerDocument.contains(parent_1)) {\n var left = (_b = line.left) === null || _b === void 0 ? void 0 : _b.call(line);\n var savedCurrent = line.current();\n var current = parent_1.contains(savedCurrent) ? savedCurrent : undefined;\n var right = (_c = line.right) === null || _c === void 0 ? void 0 : _c.call(line);\n var focusables = getTabbableNodes([parent_1], visibilityCache);\n var aim = \n // that is element itself\n (_e = (_d = current !== null && current !== void 0 ? current : \n // or something in it's place\n left === null || left === void 0 ? void 0 : left.nextElementSibling) !== null && _d !== void 0 ? _d : \n // or somebody to the right, still close enough\n right) !== null && _e !== void 0 ? _e : \n // or somebody to the left, something?\n left;\n while (aim) {\n for (var _f = 0, focusables_1 = focusables; _f < focusables_1.length; _f++) {\n var focusable = focusables_1[_f];\n if (aim === null || aim === void 0 ? void 0 : aim.contains(focusable.node)) {\n return focusable.node;\n }\n }\n aim = aim.nextElementSibling;\n }\n if (focusables.length) {\n // if parent contains a focusable - move there\n return focusables[0].node;\n }\n }\n }\n // nothing matched\n return undefined;\n};\n/**\n * Captures the current focused element to restore focus as close as possible in the future\n * Handles situations where the focused element is removed from the DOM or no longer focusable\n * moving focus to the closest focusable element\n * @param targetElement - element where focus should be restored\n * @returns a function returning a new element to focus\n */\nexport var captureFocusRestore = function (targetElement) {\n var location = recordElementLocation(targetElement);\n return function () {\n return restoreFocusTo(location);\n };\n};\n","import { focusOn } from './commands';\nimport { getTabbableNodes, contains, getFocusableNodes } from './utils/DOMutils';\nimport { asArray } from './utils/array';\n/**\n * for a given `element` in a given `scope` returns focusable siblings\n * @param element - base element\n * @param scope - common parent. Can be document, but better to narrow it down for performance reasons\n * @returns {prev,next} - references to a focusable element before and after\n * @returns undefined - if operation is not applicable\n */\nexport var getRelativeFocusable = function (element, scope, useTabbables) {\n if (!element || !scope) {\n console.error('no element or scope given');\n return {};\n }\n var shards = asArray(scope);\n if (shards.every(function (shard) { return !contains(shard, element); })) {\n console.error('Active element is not contained in the scope');\n return {};\n }\n var focusables = useTabbables\n ? getTabbableNodes(shards, new Map())\n : getFocusableNodes(shards, new Map());\n var current = focusables.findIndex(function (_a) {\n var node = _a.node;\n return node === element;\n });\n if (current === -1) {\n // an edge case, when anchor element is not found\n return undefined;\n }\n return {\n prev: focusables[current - 1],\n next: focusables[current + 1],\n first: focusables[0],\n last: focusables[focusables.length - 1],\n };\n};\nvar getBoundary = function (shards, useTabbables) {\n var set = useTabbables\n ? getTabbableNodes(asArray(shards), new Map())\n : getFocusableNodes(asArray(shards), new Map());\n return {\n first: set[0],\n last: set[set.length - 1],\n };\n};\nvar defaultOptions = function (options) {\n return Object.assign({\n scope: document.body,\n cycle: true,\n onlyTabbable: true,\n }, options);\n};\nvar moveFocus = function (fromElement, options, cb) {\n if (options === void 0) { options = {}; }\n var newOptions = defaultOptions(options);\n var solution = getRelativeFocusable(fromElement, newOptions.scope, newOptions.onlyTabbable);\n if (!solution) {\n return;\n }\n var target = cb(solution, newOptions.cycle);\n if (target) {\n focusOn(target.node, newOptions.focusOptions);\n }\n};\n/**\n * focuses next element in the tab-order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusNextElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var next = _a.next, first = _a.first;\n return next || (cycle && first);\n });\n};\n/**\n * focuses prev element in the tab order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusPrevElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var prev = _a.prev, last = _a.last;\n return prev || (cycle && last);\n });\n};\nvar pickBoundary = function (scope, options, what) {\n var _a;\n var boundary = getBoundary(scope, (_a = options.onlyTabbable) !== null && _a !== void 0 ? _a : true);\n var node = boundary[what];\n if (node) {\n focusOn(node.node, options.focusOptions);\n }\n};\n/**\n * focuses first element in the tab-order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusFirstElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'first');\n};\n/**\n * focuses last element in the tab order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusLastElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'last');\n};\n","export function deferAction(action) {\n setTimeout(action, 1);\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};\nexport var extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport { moveFocusInside, focusInside, focusIsHidden, expandFocusableNodes, getFocusableNodes, focusNextElement, focusPrevElement, focusFirstElement, focusLastElement, captureFocusRestore } from 'focus-lock';\nimport { deferAction, extractRef } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar tryRestoreFocus = function tryRestoreFocus() {\n return null;\n};\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\nvar windowFocused = false;\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n do {\n var item = allNodes[i];\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n return;\n }\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n return Boolean(focusWasOutsideWindow);\n }\n return focusWasOutsideWindow === 'meanwhile';\n};\nvar checkInHost = function checkInHost(check, el, boundary) {\n return el && (el.host === check && (!el.activeElement || boundary.contains(el.activeElement)) || el.parentNode && checkInHost(check, el.parentNode, boundary));\n};\nvar withinHost = function withinHost(activeElement, workingArea) {\n return workingArea.some(function (area) {\n return checkInHost(activeElement, area, area);\n });\n};\nvar getNodeFocusables = function getNodeFocusables(nodes) {\n return getFocusableNodes(nodes, new Map());\n};\nvar isNotFocusable = function isNotFocusable(node) {\n return !getNodeFocusables([node.parentNode]).some(function (el) {\n return el.node === node;\n });\n};\nvar activateTrap = function activateTrap() {\n var result = false;\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 focusOptions = _lastActiveTrap.focusOptions,\n noFocusGuards = _lastActiveTrap.noFocusGuards;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n if (focusOnBody() && lastActiveFocus) {\n if (!document.body.contains(lastActiveFocus) || isNotFocusable(lastActiveFocus)) {\n lastActiveFocus = null;\n var newTarget = tryRestoreFocus();\n if (newTarget) {\n newTarget.focus();\n }\n }\n }\n var activeElement = document && document.activeElement;\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n var shouldForceRestoreFocus = function shouldForceRestoreFocus() {\n if (!focusWasOutside(crossFrame) || !noFocusGuards || !lastActiveFocus || windowFocused) {\n return false;\n }\n var nodes = getNodeFocusables(workingArea);\n var lastIndex = nodes.findIndex(function (_ref) {\n var node = _ref.node;\n return node === lastActiveFocus;\n });\n return lastIndex === 0 || lastIndex === nodes.length - 1;\n };\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || shouldForceRestoreFocus() || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || activeElement && withinHost(activeElement, workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n if (activeElement.blur) {\n activeElement.blur();\n }\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus, {\n focusOptions: focusOptions\n });\n lastPortaledElement = {};\n }\n }\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n tryRestoreFocus = captureFocusRestore(lastActiveFocus);\n }\n }\n if (document && activeElement !== document.activeElement && document.querySelector('[data-focus-auto-guard]')) {\n var newActiveElement = document && document.activeElement;\n var allNodes = expandFocusableNodes(workingArea);\n var focusedIndex = allNodes.map(function (_ref2) {\n var node = _ref2.node;\n return node;\n }).indexOf(newActiveElement);\n if (focusedIndex > -1) {\n allNodes.filter(function (_ref3) {\n var guard = _ref3.guard,\n node = _ref3.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref4) {\n var node = _ref4.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 return result;\n};\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n event.stopPropagation();\n event.preventDefault();\n }\n};\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\nvar onFocus = function onFocus(event) {\n var source = event.target;\n var currentNode = event.currentTarget;\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\nvar FocusTrap = function FocusTrap(_ref5) {\n var children = _ref5.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\nvar onWindowFocus = function onWindowFocus() {\n windowFocused = true;\n};\nvar onWindowBlur = function onWindowBlur() {\n windowFocused = false;\n focusWasOutsideWindow = 'just';\n deferAction(function () {\n focusWasOutsideWindow = 'meanwhile';\n });\n};\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('focus', onWindowFocus);\n window.addEventListener('blur', onWindowBlur);\n};\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('focus', onWindowFocus);\n window.removeEventListener('blur', onWindowBlur);\n};\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref6) {\n var disabled = _ref6.disabled;\n return !disabled;\n });\n}\nvar focusLockAPI = {\n moveFocusInside: moveFocusInside,\n focusInside: focusInside,\n focusNextElement: focusNextElement,\n focusPrevElement: focusPrevElement,\n focusFirstElement: focusFirstElement,\n focusLastElement: focusLastElement,\n captureFocusRestore: captureFocusRestore\n};\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation();\n if (!traps.filter(function (_ref7) {\n var id = _ref7.id;\n return id === lastTrap.id;\n }).length) {\n lastTrap.returnFocus(!trap);\n }\n }\n if (trap) {\n lastActiveFocus = null;\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation(focusLockAPI);\n }\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n}\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb(focusLockAPI);\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","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';\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});\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","import { Props } from '..';\nimport useOnClose, { OnCloseReturn } from '../hooks/useOnClose';\n\nimport styles from './style.module.scss';\nimport classNamesUtil from 'classnames';\nimport { Button } from '../../button';\nimport { XIcon } from '../../icon';\nimport { useRef, useEffect } from 'react';\nimport FocusLock from 'react-focus-lock';\n\nexport interface GenericModalClassNames {\n wrapper?: string | (({ isClosing }: { isClosing: boolean }) => string);\n container?: string | (({ isClosing }: { isClosing: boolean }) => string);\n overlay?: string;\n header?: string;\n closeButton?: string;\n closeButtonIcon?: string;\n title?: string;\n body?: string;\n footer?: string;\n}\ninterface GenericModalProps extends Props {\n classNames?: GenericModalClassNames;\n titleSize?: 'small' | 'default';\n}\n\nconst InnerModal = ({\n title,\n children,\n classNames,\n dismissible = true,\n footer,\n titleSize = 'default',\n isClosing,\n onModalScroll,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick,\n}: GenericModalProps & OnCloseReturn) => {\n const modalBodyRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!modalBodyRef.current || !onModalScroll) {\n return;\n }\n const handleOnScroll = () => {\n if (modalBodyRef.current) {\n onModalScroll(modalBodyRef.current.scrollTop, modalBodyRef.current);\n }\n };\n\n modalBodyRef.current.addEventListener('scroll', handleOnScroll);\n\n return () => {\n modalBodyRef.current?.removeEventListener('scroll', handleOnScroll);\n };\n }, []);\n\n return (\n <div\n className={classNamesUtil(classNames?.overlay, styles.overlay, {\n [styles.overlayClose]: isClosing,\n })}\n onAnimationEnd={handleOnCloseAnimationEnded}\n onClick={handleOnOverlayClick}\n >\n <div\n className={\n typeof classNames?.wrapper === 'string'\n ? classNames?.wrapper\n : classNames?.wrapper?.({ isClosing })\n }\n >\n <FocusLock returnFocus className=\"m-auto\">\n <div\n aria-modal=\"true\"\n role=\"dialog\"\n className={\n typeof classNames?.container === 'string'\n ? classNames?.container\n : classNames?.container?.({ isClosing })\n }\n onClick={handleContainerClick}\n >\n <div\n className={classNamesUtil(\n 'bg-white d-flex ai-center w100 px24 pt24 pb16',\n styles.header,\n {\n 'jc-between': !!title,\n 'jc-end': !title,\n }\n )}\n >\n {title && (\n <div\n className={classNamesUtil(\n styles.title,\n titleSize === 'small' ? 'p-h4' : 'p-h2',\n classNames?.title,\n )}\n >\n {title}\n </div>\n )}\n\n {dismissible && (\n <Button\n hideLabel\n leftIcon={\n <XIcon\n color=\"neutral-800\"\n className={classNames?.closeButtonIcon}\n />\n }\n onClick={handleOnClose}\n type=\"button\"\n variant=\"textBlack\"\n className={classNamesUtil(\n classNames?.closeButton,\n 'p0',\n styles.closeButton\n )}\n >\n Close modal\n </Button>\n )}\n </div>\n\n <div\n className={classNamesUtil('w100', classNames?.body, styles.body)}\n ref={modalBodyRef}\n >\n {children}\n </div>\n\n {footer && (\n <div\n className={classNamesUtil(\n classNames?.footer,\n 'w100 bg-white',\n styles.footer\n )}\n >\n <div className=\"p24 pt16\">{footer}</div>\n </div>\n )}\n </div>\n </FocusLock>\n </div>\n </div>\n );\n};\n\nexport const GenericModal = (props: GenericModalProps) => {\n const { isOpen, onClose, dismissible = true } = props;\n const { isVisible, ...rest } = useOnClose(onClose, isOpen, dismissible);\n\n if (!isVisible) {\n return null;\n }\n\n return <InnerModal {...props} isVisible={isVisible} {...rest} />;\n};\n"],"names":["constants.FOCUS_DISABLED","constants.FOCUS_GROUP","node","bool","oneOfType","object","func","string","arrayOf","any","setPrototypeOf","React","FocusLockUI","classNames","_jsx","classNamesUtil","FocusLock","_jsxs"],"mappings":"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"}
@@ -100,7 +100,7 @@ var BottomOrRegularModalStory = function (_a) {
100
100
  onClose();
101
101
  setDisplay(false);
102
102
  };
103
- return (jsxs(Fragment, { children: [jsx(Button, { className: "wmn2", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomOrRegularModal, { dismissible: dismissible, className: className, classNames: classNames, title: title, isOpen: display, size: size, onModalScroll: onModalScroll, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx("button", { className: "p-btn--primary mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
103
+ return (jsxs(Fragment, { children: [jsx(Button, { className: "wmn2", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomOrRegularModal, { dismissible: dismissible, className: className, classNames: classNames, title: title, isOpen: display, size: size, onModalScroll: onModalScroll, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx(Button, { className: "mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
104
104
  };
105
105
  BottomOrRegularModalStory.storyName = 'BottomOrRegularModal';
106
106
  var RegularModalStory = function (_a) {
@@ -110,7 +110,7 @@ var RegularModalStory = function (_a) {
110
110
  onClose();
111
111
  setDisplay(false);
112
112
  };
113
- return (jsxs(Fragment, { children: ["Regular modals are primary meant to be used on Desktop or Tablet environment. The modal will appear in the middle of the screen and the user will be able to dismiss them using the top left \"X\" icon. If you want to use it for Mobile only, you should check BottomModal instead. Want to use either Regular Modal or Bottom Modal based on the screen width? You can use Bottom or Regular modal.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(RegularModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx("button", { className: "p-btn--primary mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
113
+ return (jsxs(Fragment, { children: ["Regular modals are primary meant to be used on Desktop or Tablet environment. The modal will appear in the middle of the screen and the user will be able to dismiss them using the top left \"X\" icon. If you want to use it for Mobile only, you should check BottomModal instead. Want to use either Regular Modal or Bottom Modal based on the screen width? You can use Bottom or Regular modal.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(RegularModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx(Button, { className: "mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
114
114
  };
115
115
  RegularModalStory.storyName = 'RegularModal';
116
116
  var BottomModalStory = function (_a) {
@@ -120,7 +120,7 @@ var BottomModalStory = function (_a) {
120
120
  onClose();
121
121
  setDisplay(false);
122
122
  };
123
- return (jsxs(Fragment, { children: ["Bottom modals are primary meant to be used on Mobile environment. The modal will appear from the bottom of the screen and the user will be able to dismiss them using the top left \"X\" icon. If you want to use it for Desktop only, you should check Regular modal instead. Want to use either Regular Modal or Bottom Modal based on the screen width? You can use Bottom or Regular modal.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx("button", { className: "p-btn--primary mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
123
+ return (jsxs(Fragment, { children: ["Bottom modals are primary meant to be used on Mobile environment. The modal will appear from the bottom of the screen and the user will be able to dismiss them using the top left \"X\" icon. If you want to use it for Desktop only, you should check Regular modal instead. Want to use either Regular Modal or Bottom Modal based on the screen width? You can use Bottom or Regular modal.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx(Button, { className: "mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
124
124
  };
125
125
  BottomModalStory.storyName = 'BottomModal';
126
126
  var FullScreenModalStory = function (_a) {
@@ -130,7 +130,7 @@ var FullScreenModalStory = function (_a) {
130
130
  onClose();
131
131
  setDisplay(false);
132
132
  };
133
- return (jsxs(Fragment, { children: ["Full screen modals are primary meant to be used as blocker screens. The modal will cover the entire screen and the user will be able to dismiss them using the top left \"X\" icon.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(FullScreenModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx("button", { className: "p-btn--primary mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
133
+ return (jsxs(Fragment, { children: ["Full screen modals are primary meant to be used as blocker screens. The modal will cover the entire screen and the user will be able to dismiss them using the top left \"X\" icon.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(FullScreenModal, { title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx(Button, { className: "mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
134
134
  };
135
135
  FullScreenModalStory.storyName = 'FullScreenModal';
136
136
  var NonDismissibleModal = function (_a) {
@@ -140,7 +140,7 @@ var NonDismissibleModal = function (_a) {
140
140
  onClose();
141
141
  setDisplay(false);
142
142
  };
143
- return (jsxs(Fragment, { children: ["Setting the dismissible prop to false will hide the close button and prevent the user from closing it using the escape key or clicking outside. This prop can be useful if we want the user to explicitly interact with the modal options.", jsx("strong", { children: "Warning:" }), " a modal with the dismissible prop can only be closed by changing the isOpen prop to false.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomOrRegularModal, { dismissible: false, title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx("button", { className: "p-btn--primary mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
143
+ return (jsxs(Fragment, { children: ["Setting the dismissible prop to false will hide the close button and prevent the user from closing it using the escape key or clicking outside. This prop can be useful if we want the user to explicitly interact with the modal options.", jsx("strong", { children: "Warning:" }), " a modal with the dismissible prop can only be closed by changing the isOpen prop to false.", jsx(Button, { className: "wmn2 mt24", onClick: function () { return setDisplay(true); }, children: "Click to open modal" }), jsx(BottomOrRegularModal, { dismissible: false, title: title, isOpen: display, onClose: handleOnClose, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: [jsx("div", { children: children }), jsx(Button, { className: "mt24 wmn3", onClick: function () { return setDisplay(false); }, children: "Continue" })] }) })] }));
144
144
  };
145
145
  var ModalWithFooter = function (_a) {
146
146
  var children = _a.children, isOpen = _a.isOpen, onClose = _a.onClose, title = _a.title;
@@ -1 +1 @@
1
- {"version":3,"file":"index.stories.js","sources":["../../../../../src/lib/components/modal/index.stories.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { BottomModal, BottomOrRegularModal, Props, RegularModal } from '.';\nimport { Button } from '../button';\nimport { FullScreenModal } from './fullScreenModal';\n\nconst story = {\n title: 'JSX/Modals',\n component: BottomOrRegularModal,\n argTypes: {\n title: {\n description: 'The title that needs to be displayed on the modal',\n },\n isOpen: {\n description:\n 'When set to `true`, the modal is displayed. When set to `false` the modal gets removed',\n },\n dismissible: {\n description: 'The content that gets displayed on the modal',\n },\n className: {\n description: 'Any additional className',\n },\n classNames: {\n description:\n 'Class names for the Modal component and its children elements',\n },\n size: {\n description: 'The size of the modal, either large or default.',\n control: 'radio',\n options: {\n default: 'default',\n large: 'large',\n },\n },\n children: {\n description: 'The content that gets displayed on the modal',\n type: 'text',\n table: {\n type: {\n summary: 'ReactNode',\n },\n },\n },\n onClose: {\n description: 'Callback when the user close the modal',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n onModalScroll: {\n description: 'Callback when the user scroll the modal',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n },\n args: {\n title: 'Modal title',\n isOpen: false,\n dismissible: true,\n className: '',\n classNames: {\n wrapper: '',\n container: '',\n overlay: '',\n header: '',\n closeButton: '',\n closeButtonIcon: '',\n title: '',\n body: '',\n footer: '',\n },\n children: 'Modal content to be displayed',\n size: 'default',\n },\n parameters: {\n componentSubtitle:\n 'Bottom or Regular modal will automatically choose what’s best to display based on the users screen width.',\n docs: {\n description: {\n component:\n 'Modals are dialog overlays that prevent the user from interacting with the rest of the website until an action is taken or the dialog is dismissed. Modals are purposefully disruptive and should be used thoughtfully and sparingly.',\n },\n },\n },\n};\n\nexport const BottomOrRegularModalStory = ({\n children,\n className,\n classNames,\n dismissible,\n isOpen,\n onClose,\n onModalScroll,\n size,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n dismissible={dismissible}\n className={className}\n classNames={classNames}\n title={title}\n isOpen={display}\n size={size}\n onModalScroll={onModalScroll}\n onClose={handleOnClose}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <button\n className=\"p-btn--primary mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </button>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nBottomOrRegularModalStory.storyName = 'BottomOrRegularModal';\n\nexport const RegularModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Regular modals are primary meant to be used on Desktop or Tablet\n environment. The modal will appear in the middle of the screen and the\n user will be able to dismiss them using the top left \"X\" icon. If you want\n to use it for Mobile only, you should check BottomModal instead. Want to\n use either Regular Modal or Bottom Modal based on the screen width? You\n can use Bottom or Regular modal.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <RegularModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <button\n className=\"p-btn--primary mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </button>\n </div>\n </RegularModal>\n </>\n );\n};\n\nRegularModalStory.storyName = 'RegularModal';\n\nexport const BottomModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Bottom modals are primary meant to be used on Mobile environment. The\n modal will appear from the bottom of the screen and the user will be able\n to dismiss them using the top left \"X\" icon. If you want to use it for\n Desktop only, you should check Regular modal instead. Want to use either\n Regular Modal or Bottom Modal based on the screen width? You can use\n Bottom or Regular modal.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <BottomModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <button\n className=\"p-btn--primary mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </button>\n </div>\n </BottomModal>\n </>\n );\n};\n\nBottomModalStory.storyName = 'BottomModal';\n\nexport const FullScreenModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Full screen modals are primary meant to be used as blocker screens. The\n modal will cover the entire screen and the user will be able to dismiss\n them using the top left \"X\" icon.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <FullScreenModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n\n <button\n className=\"p-btn--primary mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </button>\n </div>\n </FullScreenModal>\n </>\n );\n};\n\nFullScreenModalStory.storyName = 'FullScreenModal';\n\nexport const NonDismissibleModal = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Setting the dismissible prop to false will hide the close button and\n prevent the user from closing it using the escape key or clicking outside.\n This prop can be useful if we want the user to explicitly interact with\n the modal options.\n <strong>Warning:</strong> a modal with the dismissible prop can only be\n closed by changing the isOpen prop to false.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <BottomOrRegularModal\n dismissible={false}\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <button\n className=\"p-btn--primary mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </button>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport const ModalWithFooter = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n footer={\n <div className=\"d-flex fd-row gap8\">\n <Button\n variant=\"textBlack\"\n className=\"w100\"\n onClick={handleOnClose}\n >\n Skip\n </Button>\n <Button className=\"w100\" onClick={handleOnClose}>\n Continue\n </Button>\n </div>\n }\n >\n <div className=\"p24\">\n <div>{children}</div>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport const ModalWithFooterAndScroll = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n footer={\n <div className=\"d-flex fd-row gap8\">\n <Button\n variant=\"textBlack\"\n className=\"w100\"\n onClick={handleOnClose}\n >\n Skip\n </Button>\n <Button className=\"w100\" onClick={handleOnClose}>\n Continue\n </Button>\n </div>\n }\n >\n <div className=\"p24\">\n <div>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n <div style={{ height: '840px' }} />\n {children}\n </div>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport default story;\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.stories.js","sources":["../../../../../src/lib/components/modal/index.stories.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { BottomModal, BottomOrRegularModal, Props, RegularModal } from '.';\nimport { Button } from '../button';\nimport { FullScreenModal } from './fullScreenModal';\n\nconst story = {\n title: 'JSX/Modals',\n component: BottomOrRegularModal,\n argTypes: {\n title: {\n description: 'The title that needs to be displayed on the modal',\n },\n isOpen: {\n description:\n 'When set to `true`, the modal is displayed. When set to `false` the modal gets removed',\n },\n dismissible: {\n description: 'The content that gets displayed on the modal',\n },\n className: {\n description: 'Any additional className',\n },\n classNames: {\n description:\n 'Class names for the Modal component and its children elements',\n },\n size: {\n description: 'The size of the modal, either large or default.',\n control: 'radio',\n options: {\n default: 'default',\n large: 'large',\n },\n },\n children: {\n description: 'The content that gets displayed on the modal',\n type: 'text',\n table: {\n type: {\n summary: 'ReactNode',\n },\n },\n },\n onClose: {\n description: 'Callback when the user close the modal',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n onModalScroll: {\n description: 'Callback when the user scroll the modal',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n },\n args: {\n title: 'Modal title',\n isOpen: false,\n dismissible: true,\n className: '',\n classNames: {\n wrapper: '',\n container: '',\n overlay: '',\n header: '',\n closeButton: '',\n closeButtonIcon: '',\n title: '',\n body: '',\n footer: '',\n },\n children: 'Modal content to be displayed',\n size: 'default',\n },\n parameters: {\n componentSubtitle:\n 'Bottom or Regular modal will automatically choose what’s best to display based on the users screen width.',\n docs: {\n description: {\n component:\n 'Modals are dialog overlays that prevent the user from interacting with the rest of the website until an action is taken or the dialog is dismissed. Modals are purposefully disruptive and should be used thoughtfully and sparingly.',\n },\n },\n },\n};\n\nexport const BottomOrRegularModalStory = ({\n children,\n className,\n classNames,\n dismissible,\n isOpen,\n onClose,\n onModalScroll,\n size,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n dismissible={dismissible}\n className={className}\n classNames={classNames}\n title={title}\n isOpen={display}\n size={size}\n onModalScroll={onModalScroll}\n onClose={handleOnClose}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </Button>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nBottomOrRegularModalStory.storyName = 'BottomOrRegularModal';\n\nexport const RegularModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Regular modals are primary meant to be used on Desktop or Tablet\n environment. The modal will appear in the middle of the screen and the\n user will be able to dismiss them using the top left \"X\" icon. If you want\n to use it for Mobile only, you should check BottomModal instead. Want to\n use either Regular Modal or Bottom Modal based on the screen width? You\n can use Bottom or Regular modal.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <RegularModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </Button>\n </div>\n </RegularModal>\n </>\n );\n};\n\nRegularModalStory.storyName = 'RegularModal';\n\nexport const BottomModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Bottom modals are primary meant to be used on Mobile environment. The\n modal will appear from the bottom of the screen and the user will be able\n to dismiss them using the top left \"X\" icon. If you want to use it for\n Desktop only, you should check Regular modal instead. Want to use either\n Regular Modal or Bottom Modal based on the screen width? You can use\n Bottom or Regular modal.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <BottomModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </Button>\n </div>\n </BottomModal>\n </>\n );\n};\n\nBottomModalStory.storyName = 'BottomModal';\n\nexport const FullScreenModalStory = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Full screen modals are primary meant to be used as blocker screens. The\n modal will cover the entire screen and the user will be able to dismiss\n them using the top left \"X\" icon.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <FullScreenModal title={title} isOpen={display} onClose={handleOnClose}>\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </Button>\n </div>\n </FullScreenModal>\n </>\n );\n};\n\nFullScreenModalStory.storyName = 'FullScreenModal';\n\nexport const NonDismissibleModal = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n Setting the dismissible prop to false will hide the close button and\n prevent the user from closing it using the escape key or clicking outside.\n This prop can be useful if we want the user to explicitly interact with\n the modal options.\n <strong>Warning:</strong> a modal with the dismissible prop can only be\n closed by changing the isOpen prop to false.\n <Button\n className=\"wmn2 mt24\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n <BottomOrRegularModal\n dismissible={false}\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n <div>{children}</div>\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setDisplay(false)}\n >\n Continue\n </Button>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport const ModalWithFooter = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n footer={\n <div className=\"d-flex fd-row gap8\">\n <Button\n variant=\"textBlack\"\n className=\"w100\"\n onClick={handleOnClose}\n >\n Skip\n </Button>\n <Button className=\"w100\" onClick={handleOnClose}>\n Continue\n </Button>\n </div>\n }\n >\n <div className=\"p24\">\n <div>{children}</div>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport const ModalWithFooterAndScroll = ({\n children,\n isOpen,\n onClose,\n title,\n}: Props) => {\n const [display, setDisplay] = useState(isOpen);\n const handleOnClose = () => {\n onClose();\n setDisplay(false);\n };\n\n return (\n <>\n <Button\n className=\"wmn2\"\n onClick={() => setDisplay(true)}\n >\n Click to open modal\n </Button>\n\n <BottomOrRegularModal\n title={title}\n isOpen={display}\n onClose={handleOnClose}\n footer={\n <div className=\"d-flex fd-row gap8\">\n <Button\n variant=\"textBlack\"\n className=\"w100\"\n onClick={handleOnClose}\n >\n Skip\n </Button>\n <Button className=\"w100\" onClick={handleOnClose}>\n Continue\n </Button>\n </div>\n }\n >\n <div className=\"p24\">\n <div>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n <div style={{ height: '840px' }} />\n {children}\n </div>\n </div>\n </BottomOrRegularModal>\n </>\n );\n};\n\nexport default story;\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
package/dist/index.css CHANGED
@@ -2392,10 +2392,10 @@ body {
2392
2392
  border: 1px solid transparent;
2393
2393
  }
2394
2394
  .p-btn--text-black:hover {
2395
- background-color: rgba(38, 38, 46, 0.04);
2395
+ border-color: #d2d2d9;
2396
2396
  }
2397
2397
  .p-btn--text-black:focus {
2398
- background-color: rgba(38, 38, 46, 0.08);
2398
+ border-color: #b8b8c0;
2399
2399
  }
2400
2400
  .p-btn--text-black:focus-visible {
2401
2401
  background-color: transparent;
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["lib/scss/private/_reset.scss","lib/scss/private/base/_display.scss","lib/scss/public/grid.scss","lib/scss/private/base/_grid.scss","lib/scss/private/base/flex/_flex.scss","lib/scss/private/base/_spacing.scss","lib/scss/private/base/_width_and_height.scss","lib/scss/private/base/_colors.scss","lib/scss/public/font-weight.scss","lib/scss/public/font/default.scss","lib/scss/private/base/_typography.scss","lib/scss/public/colors/default.scss","lib/scss/private/base/_cursors.scss","lib/scss/private/base/_border_radius.scss","lib/scss/private/components/_buttons.scss","lib/scss/utils/_index.scss","lib/scss/private/components/_input.scss","lib/scss/private/components/_notices.scss","lib/scss/private/components/_badge.scss","lib/scss/private/components/_spinner.scss","lib/scss/public/shadows.scss","lib/scss/private/components/_cards.scss","lib/scss/private/borders/default.scss","lib/scss/third-party/_google_places.scss","lib/scss/index.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAqFE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAWE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAIA;EAEE;EACA;;;AAKF;EAEE;EACA;;;AAIJ;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AACA;EACE;;;ACxJF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AC5BA;ECHF;IAEI;;;ADOF;ECTF;IAMI;;;ADSF;ECfF;IAUI;IACA;;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;ACpBF;AA0BE;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AA0Bb;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAuBhB;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AC1DA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAMF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAMF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAcA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAEF;EACE;EACA;;;AAIA;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;ACrFF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAIJ;EACE;;;AAGF;EACE;;;AAIA;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;ACnBF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AAKF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;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","file":"index.css"}
1
+ {"version":3,"sourceRoot":"","sources":["lib/scss/private/_reset.scss","lib/scss/private/base/_display.scss","lib/scss/public/grid.scss","lib/scss/private/base/_grid.scss","lib/scss/private/base/flex/_flex.scss","lib/scss/private/base/_spacing.scss","lib/scss/private/base/_width_and_height.scss","lib/scss/private/base/_colors.scss","lib/scss/public/font-weight.scss","lib/scss/public/font/default.scss","lib/scss/private/base/_typography.scss","lib/scss/public/colors/default.scss","lib/scss/private/base/_cursors.scss","lib/scss/private/base/_border_radius.scss","lib/scss/private/components/_buttons.scss","lib/scss/utils/_index.scss","lib/scss/private/components/_input.scss","lib/scss/private/components/_notices.scss","lib/scss/private/components/_badge.scss","lib/scss/private/components/_spinner.scss","lib/scss/public/shadows.scss","lib/scss/private/components/_cards.scss","lib/scss/private/borders/default.scss","lib/scss/third-party/_google_places.scss","lib/scss/index.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAqFE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAWE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAIA;EAEE;EACA;;;AAKF;EAEE;EACA;;;AAIJ;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AACA;EACE;;;ACxJF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AC5BA;ECHF;IAEI;;;ADOF;ECTF;IAMI;;;ADSF;ECfF;IAUI;IACA;;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;ACpBF;AA0BE;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AAmBb;EACE,aApBW;;;AA0Bb;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAkBd;EACE,iBAnBY;;;AAuBhB;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AC1DA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAMF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAMF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAPF;EACE;EACA;;;AAGF;EACE;EACA;;;AAcA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAXA;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AALF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAEF;EACE;EACA;;;AAIA;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AATF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;ACrFF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAPF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAIJ;EACE;;;AAGF;EACE;;;AAIA;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;ACnBF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AAKF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;AADF;EACE;;;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","file":"index.css"}
@@ -283,11 +283,11 @@
283
283
  border: 1px solid transparent;
284
284
 
285
285
  &:hover {
286
- background-color: rgba($color: $ds-neutral-900, $alpha: 0.04)
286
+ border-color: $ds-neutral-400;
287
287
  }
288
288
 
289
289
  &:focus {
290
- background-color: rgba($color: $ds-neutral-900, $alpha: 0.08)
290
+ border-color: $ds-neutral-500;
291
291
  }
292
292
 
293
293
  &:focus-visible {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@popsure/dirty-swan",
3
- "version": "0.59.0-beta-2",
3
+ "version": "0.59.0-beta-3",
4
4
  "author": "Vincent Audoire <vincent@getpopsure.com>",
5
5
  "license": "MIT",
6
6
  "private": false,
@@ -116,7 +116,7 @@ const InnerModal = ({
116
116
  }
117
117
  onClick={handleOnClose}
118
118
  type="button"
119
- variant="textColor"
119
+ variant="textBlack"
120
120
  className={classNamesUtil(
121
121
  classNames?.closeButton,
122
122
  'p0',
@@ -125,12 +125,12 @@ export const BottomOrRegularModalStory = ({
125
125
  >
126
126
  <div style={{ padding: '0 24px 24px 24px' }}>
127
127
  <div>{children}</div>
128
- <button
129
- className="p-btn--primary mt24 wmn3"
128
+ <Button
129
+ className="mt24 wmn3"
130
130
  onClick={() => setDisplay(false)}
131
131
  >
132
132
  Continue
133
- </button>
133
+ </Button>
134
134
  </div>
135
135
  </BottomOrRegularModal>
136
136
  </>
@@ -168,12 +168,12 @@ export const RegularModalStory = ({
168
168
  <RegularModal title={title} isOpen={display} onClose={handleOnClose}>
169
169
  <div style={{ padding: '0 24px 24px 24px' }}>
170
170
  <div>{children}</div>
171
- <button
172
- className="p-btn--primary mt24 wmn3"
171
+ <Button
172
+ className="mt24 wmn3"
173
173
  onClick={() => setDisplay(false)}
174
174
  >
175
175
  Continue
176
- </button>
176
+ </Button>
177
177
  </div>
178
178
  </RegularModal>
179
179
  </>
@@ -211,12 +211,12 @@ export const BottomModalStory = ({
211
211
  <BottomModal title={title} isOpen={display} onClose={handleOnClose}>
212
212
  <div style={{ padding: '0 24px 24px 24px' }}>
213
213
  <div>{children}</div>
214
- <button
215
- className="p-btn--primary mt24 wmn3"
214
+ <Button
215
+ className="mt24 wmn3"
216
216
  onClick={() => setDisplay(false)}
217
217
  >
218
218
  Continue
219
- </button>
219
+ </Button>
220
220
  </div>
221
221
  </BottomModal>
222
222
  </>
@@ -252,12 +252,12 @@ export const FullScreenModalStory = ({
252
252
  <div style={{ padding: '0 24px 24px 24px' }}>
253
253
  <div>{children}</div>
254
254
 
255
- <button
256
- className="p-btn--primary mt24 wmn3"
255
+ <Button
256
+ className="mt24 wmn3"
257
257
  onClick={() => setDisplay(false)}
258
258
  >
259
259
  Continue
260
- </button>
260
+ </Button>
261
261
  </div>
262
262
  </FullScreenModal>
263
263
  </>
@@ -300,12 +300,12 @@ export const NonDismissibleModal = ({
300
300
  >
301
301
  <div style={{ padding: '0 24px 24px 24px' }}>
302
302
  <div>{children}</div>
303
- <button
304
- className="p-btn--primary mt24 wmn3"
303
+ <Button
304
+ className="mt24 wmn3"
305
305
  onClick={() => setDisplay(false)}
306
306
  >
307
307
  Continue
308
- </button>
308
+ </Button>
309
309
  </div>
310
310
  </BottomOrRegularModal>
311
311
  </>
@@ -283,11 +283,11 @@
283
283
  border: 1px solid transparent;
284
284
 
285
285
  &:hover {
286
- background-color: rgba($color: $ds-neutral-900, $alpha: 0.04)
286
+ border-color: $ds-neutral-400;
287
287
  }
288
288
 
289
289
  &:focus {
290
- background-color: rgba($color: $ds-neutral-900, $alpha: 0.08)
290
+ border-color: $ds-neutral-500;
291
291
  }
292
292
 
293
293
  &:focus-visible {