{"version":3,"file":"./build/dom/index.min.js","mappings":"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","sources":["webpack://wp/webpack/bootstrap","webpack://wp/webpack/runtime/compat get default export","webpack://wp/webpack/runtime/define property getters","webpack://wp/webpack/runtime/hasOwnProperty shorthand","webpack://wp/webpack/runtime/make namespace object","../../packages/dom/src/focusable.js","../../packages/dom/src/tabbable.js","../../packages/dom/src/dom/get-rectangle-from-range.js","../../packages/dom/src/dom/compute-caret-rect.js","../../packages/dom/src/dom/document-has-text-selection.js","../../packages/dom/src/dom/is-html-input-element.js","../../packages/dom/src/dom/is-text-field.js","../../packages/dom/src/dom/document-has-uncollapsed-selection.js","../../packages/dom/src/dom/input-field-has-uncollapsed-selection.js","../../packages/dom/src/dom/document-has-selection.js","../../packages/dom/src/dom/get-computed-style.js","../../packages/dom/src/dom/get-scroll-container.js","../../packages/dom/src/dom/get-offset-parent.js","../../packages/dom/src/dom/is-input-or-text-area.js","../../packages/dom/src/dom/is-entirely-selected.js","../../packages/dom/src/dom/is-form-element.js","../../packages/dom/src/dom/is-rtl.js","../../packages/dom/src/dom/is-selection-forward.js","../../packages/dom/src/dom/hidden-caret-range-from-point.js","../../packages/dom/src/dom/caret-range-from-point.js","../../packages/dom/src/dom/scroll-if-no-range.js","../../packages/dom/src/dom/is-edge.js","../../packages/dom/src/dom/get-range-height.js","../../packages/dom/src/dom/is-horizontal-edge.js","webpack://wp/external window [\"wp\",\"deprecated\"]","../../packages/dom/src/dom/is-number-input.js","../../packages/dom/src/dom/is-vertical-edge.js","../../packages/dom/src/dom/place-caret-at-edge.js","../../packages/dom/src/dom/place-caret-at-horizontal-edge.js","../../packages/dom/src/dom/place-caret-at-vertical-edge.js","../../packages/dom/src/dom/insert-after.js","../../packages/dom/src/dom/remove.js","../../packages/dom/src/dom/replace.js","../../packages/dom/src/dom/unwrap.js","../../packages/dom/src/dom/replace-tag.js","../../packages/dom/src/dom/wrap.js","../../packages/dom/src/dom/safe-html.js","../../packages/dom/src/dom/strip-html.js","../../packages/dom/src/dom/is-empty.js","../../packages/dom/src/phrasing-content.js","../../packages/dom/src/dom/clean-node-list.js","../../packages/dom/src/dom/is-element.js","../../packages/dom/src/dom/remove-invalid-html.js","../../packages/dom/src/data-transfer.js","../../packages/dom/src/index.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * References:\n *\n * Focusable:\n * - https://www.w3.org/TR/html5/editing.html#focus-management\n *\n * Sequential focus navigation:\n * - https://www.w3.org/TR/html5/editing.html#sequential-focus-navigation-and-the-tabindex-attribute\n *\n * Disabled elements:\n * - https://www.w3.org/TR/html5/disabled-elements.html#disabled-elements\n *\n * getClientRects algorithm (requiring layout box):\n * - https://www.w3.org/TR/cssom-view-1/#extension-to-the-element-interface\n *\n * AREA elements associated with an IMG:\n * - https://w3c.github.io/html/editing.html#data-model\n */\n\n/**\n * Returns a CSS selector used to query for focusable elements.\n *\n * @param {boolean} sequential If set, only query elements that are sequentially\n * focusable. Non-interactive elements with a\n * negative `tabindex` are focusable but not\n * sequentially focusable.\n * https://html.spec.whatwg.org/multipage/interaction.html#the-tabindex-attribute\n *\n * @return {string} CSS selector.\n */\nfunction buildSelector( sequential ) {\n\treturn [\n\t\tsequential ? '[tabindex]:not([tabindex^=\"-\"])' : '[tabindex]',\n\t\t'a[href]',\n\t\t'button:not([disabled])',\n\t\t'input:not([type=\"hidden\"]):not([disabled])',\n\t\t'select:not([disabled])',\n\t\t'textarea:not([disabled])',\n\t\t'iframe:not([tabindex^=\"-\"])',\n\t\t'object',\n\t\t'embed',\n\t\t'area[href]',\n\t\t'[contenteditable]:not([contenteditable=false])',\n\t].join( ',' );\n}\n\n/**\n * Returns true if the specified element is visible (i.e. neither display: none\n * nor visibility: hidden).\n *\n * @param {HTMLElement} element DOM element to test.\n *\n * @return {boolean} Whether element is visible.\n */\nfunction isVisible( element ) {\n\treturn (\n\t\telement.offsetWidth > 0 ||\n\t\telement.offsetHeight > 0 ||\n\t\telement.getClientRects().length > 0\n\t);\n}\n\n/**\n * Returns true if the specified area element is a valid focusable element, or\n * false otherwise. Area is only focusable if within a map where a named map\n * referenced by an image somewhere in the document.\n *\n * @param {HTMLAreaElement} element DOM area element to test.\n *\n * @return {boolean} Whether area element is valid for focus.\n */\nfunction isValidFocusableArea( element ) {\n\t/** @type {HTMLMapElement | null} */\n\tconst map = element.closest( 'map[name]' );\n\tif ( ! map ) {\n\t\treturn false;\n\t}\n\n\t/** @type {HTMLImageElement | null} */\n\tconst img = element.ownerDocument.querySelector(\n\t\t'img[usemap=\"#' + map.name + '\"]'\n\t);\n\treturn !! img && isVisible( img );\n}\n\n/**\n * Returns all focusable elements within a given context.\n *\n * @param {Element} context Element in which to search.\n * @param {Object} options\n * @param {boolean} [options.sequential] If set, only return elements that are\n * sequentially focusable.\n * Non-interactive elements with a\n * negative `tabindex` are focusable but\n * not sequentially focusable.\n * https://html.spec.whatwg.org/multipage/interaction.html#the-tabindex-attribute\n *\n * @return {HTMLElement[]} Focusable elements.\n */\nexport function find( context, { sequential = false } = {} ) {\n\t/** @type {NodeListOf} */\n\tconst elements = context.querySelectorAll( buildSelector( sequential ) );\n\n\treturn Array.from( elements ).filter( ( element ) => {\n\t\tif ( ! isVisible( element ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst { nodeName } = element;\n\t\tif ( 'AREA' === nodeName ) {\n\t\t\treturn isValidFocusableArea(\n\t\t\t\t/** @type {HTMLAreaElement} */ ( element )\n\t\t\t);\n\t\t}\n\n\t\treturn true;\n\t} );\n}\n","/**\n * Internal dependencies\n */\nimport { find as findFocusable } from './focusable';\n\n/**\n * Returns the tab index of the given element. In contrast with the tabIndex\n * property, this normalizes the default (0) to avoid browser inconsistencies,\n * operating under the assumption that this function is only ever called with a\n * focusable node.\n *\n * @see https://bugzilla.mozilla.org/show_bug.cgi?id=1190261\n *\n * @param {Element} element Element from which to retrieve.\n *\n * @return {number} Tab index of element (default 0).\n */\nfunction getTabIndex( element ) {\n\tconst tabIndex = element.getAttribute( 'tabindex' );\n\treturn tabIndex === null ? 0 : parseInt( tabIndex, 10 );\n}\n\n/**\n * Returns true if the specified element is tabbable, or false otherwise.\n *\n * @param {Element} element Element to test.\n *\n * @return {boolean} Whether element is tabbable.\n */\nexport function isTabbableIndex( element ) {\n\treturn getTabIndex( element ) !== -1;\n}\n\n/** @typedef {HTMLElement & { type?: string, checked?: boolean, name?: string }} MaybeHTMLInputElement */\n\n/**\n * Returns a stateful reducer function which constructs a filtered array of\n * tabbable elements, where at most one radio input is selected for a given\n * name, giving priority to checked input, falling back to the first\n * encountered.\n *\n * @return {(acc: MaybeHTMLInputElement[], el: MaybeHTMLInputElement) => MaybeHTMLInputElement[]} Radio group collapse reducer.\n */\nfunction createStatefulCollapseRadioGroup() {\n\t/** @type {Record} */\n\tconst CHOSEN_RADIO_BY_NAME = {};\n\n\treturn function collapseRadioGroup(\n\t\t/** @type {MaybeHTMLInputElement[]} */ result,\n\t\t/** @type {MaybeHTMLInputElement} */ element\n\t) {\n\t\tconst { nodeName, type, checked, name } = element;\n\n\t\t// For all non-radio tabbables, construct to array by concatenating.\n\t\tif ( nodeName !== 'INPUT' || type !== 'radio' || ! name ) {\n\t\t\treturn result.concat( element );\n\t\t}\n\n\t\tconst hasChosen = CHOSEN_RADIO_BY_NAME.hasOwnProperty( name );\n\n\t\t// Omit by skipping concatenation if the radio element is not chosen.\n\t\tconst isChosen = checked || ! hasChosen;\n\t\tif ( ! isChosen ) {\n\t\t\treturn result;\n\t\t}\n\n\t\t// At this point, if there had been a chosen element, the current\n\t\t// element is checked and should take priority. Retroactively remove\n\t\t// the element which had previously been considered the chosen one.\n\t\tif ( hasChosen ) {\n\t\t\tconst hadChosenElement = CHOSEN_RADIO_BY_NAME[ name ];\n\t\t\tresult = result.filter( ( e ) => e !== hadChosenElement );\n\t\t}\n\n\t\tCHOSEN_RADIO_BY_NAME[ name ] = element;\n\n\t\treturn result.concat( element );\n\t};\n}\n\n/**\n * An array map callback, returning an object with the element value and its\n * array index location as properties. This is used to emulate a proper stable\n * sort where equal tabIndex should be left in order of their occurrence in the\n * document.\n *\n * @param {HTMLElement} element Element.\n * @param {number} index Array index of element.\n *\n * @return {{ element: HTMLElement, index: number }} Mapped object with element, index.\n */\nfunction mapElementToObjectTabbable( element, index ) {\n\treturn { element, index };\n}\n\n/**\n * An array map callback, returning an element of the given mapped object's\n * element value.\n *\n * @param {{ element: HTMLElement }} object Mapped object with element.\n *\n * @return {HTMLElement} Mapped object element.\n */\nfunction mapObjectTabbableToElement( object ) {\n\treturn object.element;\n}\n\n/**\n * A sort comparator function used in comparing two objects of mapped elements.\n *\n * @see mapElementToObjectTabbable\n *\n * @param {{ element: HTMLElement, index: number }} a First object to compare.\n * @param {{ element: HTMLElement, index: number }} b Second object to compare.\n *\n * @return {number} Comparator result.\n */\nfunction compareObjectTabbables( a, b ) {\n\tconst aTabIndex = getTabIndex( a.element );\n\tconst bTabIndex = getTabIndex( b.element );\n\n\tif ( aTabIndex === bTabIndex ) {\n\t\treturn a.index - b.index;\n\t}\n\n\treturn aTabIndex - bTabIndex;\n}\n\n/**\n * Givin focusable elements, filters out tabbable element.\n *\n * @param {HTMLElement[]} focusables Focusable elements to filter.\n *\n * @return {HTMLElement[]} Tabbable elements.\n */\nfunction filterTabbable( focusables ) {\n\treturn focusables\n\t\t.filter( isTabbableIndex )\n\t\t.map( mapElementToObjectTabbable )\n\t\t.sort( compareObjectTabbables )\n\t\t.map( mapObjectTabbableToElement )\n\t\t.reduce( createStatefulCollapseRadioGroup(), [] );\n}\n\n/**\n * @param {Element} context\n * @return {HTMLElement[]} Tabbable elements within the context.\n */\nexport function find( context ) {\n\treturn filterTabbable( findFocusable( context ) );\n}\n\n/**\n * Given a focusable element, find the preceding tabbable element.\n *\n * @param {Element} element The focusable element before which to look. Defaults\n * to the active element.\n *\n * @return {HTMLElement|undefined} Preceding tabbable element.\n */\nexport function findPrevious( element ) {\n\treturn filterTabbable( findFocusable( element.ownerDocument.body ) )\n\t\t.reverse()\n\t\t.find(\n\t\t\t( focusable ) =>\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\telement.compareDocumentPosition( focusable ) &\n\t\t\t\telement.DOCUMENT_POSITION_PRECEDING\n\t\t);\n}\n\n/**\n * Given a focusable element, find the next tabbable element.\n *\n * @param {Element} element The focusable element after which to look. Defaults\n * to the active element.\n *\n * @return {HTMLElement|undefined} Next tabbable element.\n */\nexport function findNext( element ) {\n\treturn filterTabbable( findFocusable( element.ownerDocument.body ) ).find(\n\t\t( focusable ) =>\n\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\telement.compareDocumentPosition( focusable ) &\n\t\t\telement.DOCUMENT_POSITION_FOLLOWING\n\t);\n}\n","/**\n * Internal dependencies\n */\nimport { assertIsDefined } from '../utils/assert-is-defined';\n\n/**\n * Get the rectangle of a given Range. Returns `null` if no suitable rectangle\n * can be found.\n *\n * @param {Range} range The range.\n *\n * @return {DOMRect?} The rectangle.\n */\nexport default function getRectangleFromRange( range ) {\n\t// For uncollapsed ranges, get the rectangle that bounds the contents of the\n\t// range; this a rectangle enclosing the union of the bounding rectangles\n\t// for all the elements in the range.\n\tif ( ! range.collapsed ) {\n\t\tconst rects = Array.from( range.getClientRects() );\n\n\t\t// If there's just a single rect, return it.\n\t\tif ( rects.length === 1 ) {\n\t\t\treturn rects[ 0 ];\n\t\t}\n\n\t\t// Ignore tiny selection at the edge of a range.\n\t\tconst filteredRects = rects.filter( ( { width } ) => width > 1 );\n\n\t\t// If it's full of tiny selections, return browser default.\n\t\tif ( filteredRects.length === 0 ) {\n\t\t\treturn range.getBoundingClientRect();\n\t\t}\n\n\t\tif ( filteredRects.length === 1 ) {\n\t\t\treturn filteredRects[ 0 ];\n\t\t}\n\n\t\tlet {\n\t\t\ttop: furthestTop,\n\t\t\tbottom: furthestBottom,\n\t\t\tleft: furthestLeft,\n\t\t\tright: furthestRight,\n\t\t} = filteredRects[ 0 ];\n\n\t\tfor ( const { top, bottom, left, right } of filteredRects ) {\n\t\t\tif ( top < furthestTop ) {\n\t\t\t\tfurthestTop = top;\n\t\t\t}\n\t\t\tif ( bottom > furthestBottom ) {\n\t\t\t\tfurthestBottom = bottom;\n\t\t\t}\n\t\t\tif ( left < furthestLeft ) {\n\t\t\t\tfurthestLeft = left;\n\t\t\t}\n\t\t\tif ( right > furthestRight ) {\n\t\t\t\tfurthestRight = right;\n\t\t\t}\n\t\t}\n\n\t\treturn new window.DOMRect(\n\t\t\tfurthestLeft,\n\t\t\tfurthestTop,\n\t\t\tfurthestRight - furthestLeft,\n\t\t\tfurthestBottom - furthestTop\n\t\t);\n\t}\n\n\tconst { startContainer } = range;\n\tconst { ownerDocument } = startContainer;\n\n\t// Correct invalid \"BR\" ranges. The cannot contain any children.\n\tif ( startContainer.nodeName === 'BR' ) {\n\t\tconst { parentNode } = startContainer;\n\t\tassertIsDefined( parentNode, 'parentNode' );\n\t\tconst index = /** @type {Node[]} */ (\n\t\t\tArray.from( parentNode.childNodes )\n\t\t).indexOf( startContainer );\n\n\t\tassertIsDefined( ownerDocument, 'ownerDocument' );\n\t\trange = ownerDocument.createRange();\n\t\trange.setStart( parentNode, index );\n\t\trange.setEnd( parentNode, index );\n\t}\n\n\tconst rects = range.getClientRects();\n\n\t// If we have multiple rectangles for a collapsed range, there's no way to\n\t// know which it is, so don't return anything.\n\tif ( rects.length > 1 ) {\n\t\treturn null;\n\t}\n\n\tlet rect = rects[ 0 ];\n\n\t// If the collapsed range starts (and therefore ends) at an element node,\n\t// `getClientRects` can be empty in some browsers. This can be resolved\n\t// by adding a temporary text node with zero-width space to the range.\n\t//\n\t// See: https://stackoverflow.com/a/6847328/995445\n\tif ( ! rect || rect.height === 0 ) {\n\t\tassertIsDefined( ownerDocument, 'ownerDocument' );\n\t\tconst padNode = ownerDocument.createTextNode( '\\u200b' );\n\t\t// Do not modify the live range.\n\t\trange = range.cloneRange();\n\t\trange.insertNode( padNode );\n\t\trect = range.getClientRects()[ 0 ];\n\t\tassertIsDefined( padNode.parentNode, 'padNode.parentNode' );\n\t\tpadNode.parentNode.removeChild( padNode );\n\t}\n\n\treturn rect;\n}\n","/**\n * Internal dependencies\n */\nimport getRectangleFromRange from './get-rectangle-from-range';\nimport { assertIsDefined } from '../utils/assert-is-defined';\n\n/**\n * Get the rectangle for the selection in a container.\n *\n * @param {Window} win The window of the selection.\n *\n * @return {DOMRect | null} The rectangle.\n */\nexport default function computeCaretRect( win ) {\n\tconst selection = win.getSelection();\n\tassertIsDefined( selection, 'selection' );\n\tconst range = selection.rangeCount ? selection.getRangeAt( 0 ) : null;\n\n\tif ( ! range ) {\n\t\treturn null;\n\t}\n\n\treturn getRectangleFromRange( range );\n}\n","/**\n * Internal dependencies\n */\nimport { assertIsDefined } from '../utils/assert-is-defined';\n\n/**\n * Check whether the current document has selected text. This applies to ranges\n * of text in the document, and not selection inside `` and `