{"version":3,"file":"b4ee6ad7-939f849603a491a71847.js","mappings":"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","sources":["webpack://@cmsgov/cms-design-system-docs/../design-system/dist/react-components/esm/react-aria/index.js"],"sourcesContent":["import $73SJx$react, { useState, useRef, useEffect, useCallback, useMemo, useContext } from 'react';\nimport $12uGp$clsx from 'clsx';\nimport { LocalizedStringFormatter, LocalizedStringDictionary } from '@internationalized/string';\nimport '@internationalized/date';\nimport '@internationalized/number';\nimport 'react-dom';\n\n// Inlining the following:\n// import { _ as _$1 } from '@swc/helpers/_/_class_private_field_get';\n// import { _ as _$2 } from '@swc/helpers/_/_class_private_field_init';\n// import { _ } from '@swc/helpers/_/_class_private_field_set';\nfunction _check_private_redeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError('Cannot initialize the same private elements twice on an object');\n }\n}\nfunction _$2(obj, privateMap, value) {\n _check_private_redeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}\nfunction _class_extract_field_descriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) throw new TypeError('attempted to ' + action + ' private field on non-instance');\n return privateMap.get(receiver);\n}\nfunction _class_apply_descriptor_get(receiver, descriptor) {\n if (descriptor.get) return descriptor.get.call(receiver);\n return descriptor.value;\n}\nfunction _$1(receiver, privateMap) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, 'get');\n return _class_apply_descriptor_get(receiver, descriptor);\n}\nfunction _class_apply_descriptor_set(receiver, descriptor, value) {\n if (descriptor.set) descriptor.set.call(receiver, value);else {\n if (!descriptor.writable) {\n // This should only throw in strict mode, but class bodies are\n // always strict and private fields can only be used inside\n // class bodies.\n throw new TypeError('attempted to set read only private field');\n }\n descriptor.value = value;\n }\n}\nfunction _(receiver, privateMap, value) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, 'set');\n _class_apply_descriptor_set(receiver, descriptor, value);\n return value;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange) {\n let [stateValue, setStateValue] = useState(value || defaultValue);\n let isControlledRef = useRef(value !== undefined);\n let isControlled = value !== undefined;\n useEffect(() => {\n let wasControlled = isControlledRef.current;\n if (wasControlled !== isControlled) console.warn(`WARN: A component changed from ${wasControlled ? 'controlled' : 'uncontrolled'} to ${isControlled ? 'controlled' : 'uncontrolled'}.`);\n isControlledRef.current = isControlled;\n }, [isControlled]);\n let currentValue = isControlled ? value : stateValue;\n let setValue = useCallback(function (value) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n let onChangeCaller = function (value) {\n if (onChange) {\n for (var _len2 = arguments.length, onChangeArgs = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n onChangeArgs[_key2 - 1] = arguments[_key2];\n }\n if (!Object.is(currentValue, value)) onChange(value, ...onChangeArgs);\n }\n if (!isControlled)\n // If uncontrolled, mutate the currentValue local variable so that\n // calling setState multiple times with the same value only emits onChange once.\n // We do not use a ref for this because we specifically _do_ want the value to\n // reset every render, and assigning to a ref in render breaks aborted suspended renders.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n currentValue = value;\n };\n if (typeof value === 'function') {\n console.warn('We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320');\n // this supports functional updates https://reactjs.org/docs/hooks-reference.html#functional-updates\n // when someone using useControlledState calls setControlledState(myFunc)\n // this will call our useState setState with a function as well which invokes myFunc and calls onChange with the value from myFunc\n // if we're in an uncontrolled state, then we also return the value of myFunc which to setState looks as though it was just called with myFunc from the beginning\n // otherwise we just return the controlled value, which won't cause a rerender because React knows to bail out when the value is the same\n let updateFunction = function (oldValue) {\n for (var _len3 = arguments.length, functionArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n functionArgs[_key3 - 1] = arguments[_key3];\n }\n let interceptedValue = value(isControlled ? currentValue : oldValue, ...functionArgs);\n onChangeCaller(interceptedValue, ...args);\n if (!isControlled) return interceptedValue;\n return oldValue;\n };\n setStateValue(updateFunction);\n } else {\n if (!isControlled) setStateValue(value);\n onChangeCaller(value, ...args);\n }\n }, [isControlled, currentValue, onChange]);\n return [currentValue, setValue];\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $c1d7fb2ec91bae71$var$Item(props) {\n return null;\n}\n$c1d7fb2ec91bae71$var$Item.getCollectionNode = function* getCollectionNode(props, context) {\n let {\n childItems: childItems,\n title: title,\n children: children\n } = props;\n let rendered = props.title || props.children;\n let textValue = props.textValue || (typeof rendered === 'string' ? rendered : '') || props['aria-label'] || '';\n // suppressTextValueWarning is used in components like Tabs, which don't have type to select support.\n if (!textValue && !(context === null || context === void 0 ? void 0 : context.suppressTextValueWarning)) console.warn(' with non-plain text contents is unsupported by type to select for accessibility. Please add a `textValue` prop.');\n yield {\n type: 'item',\n props: props,\n rendered: rendered,\n textValue: textValue,\n 'aria-label': props['aria-label'],\n hasChildNodes: $c1d7fb2ec91bae71$var$hasChildItems(props),\n *childNodes() {\n if (childItems) for (let child of childItems) yield {\n type: 'item',\n value: child\n };else if (title) {\n let items = [];\n $73SJx$react.Children.forEach(children, child => {\n items.push({\n type: 'item',\n element: child\n });\n });\n yield* items;\n }\n }\n };\n};\nfunction $c1d7fb2ec91bae71$var$hasChildItems(props) {\n if (props.hasChildItems != null) return props.hasChildItems;\n if (props.childItems) return true;\n if (props.title && $73SJx$react.Children.count(props.children) > 0) return true;\n return false;\n}\n// We don't want getCollectionNode to show up in the type definition\nlet $c1d7fb2ec91bae71$export$6d08773d2e66f8f2 = $c1d7fb2ec91bae71$var$Item;\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $9fc4852771d079eb$var$Section(props) {\n return null;\n}\n$9fc4852771d079eb$var$Section.getCollectionNode = function* getCollectionNode(props) {\n let {\n children: children,\n title: title,\n items: items\n } = props;\n yield {\n type: 'section',\n props: props,\n hasChildNodes: true,\n rendered: title,\n 'aria-label': props['aria-label'],\n *childNodes() {\n if (typeof children === 'function') {\n if (!items) throw new Error('props.children was a function but props.items is missing');\n for (let item of items) yield {\n type: 'item',\n value: item,\n renderer: children\n };\n } else {\n let items = [];\n $73SJx$react.Children.forEach(children, child => {\n items.push({\n type: 'item',\n element: child\n });\n });\n yield* items;\n }\n }\n };\n};\n// We don't want getCollectionNode to show up in the type definition\nlet $9fc4852771d079eb$export$6e2c8f0811a474ce = $9fc4852771d079eb$var$Section;\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nclass $eb2240fc39a57fa5$export$bf788dd355e3a401 {\n build(props, context) {\n this.context = context;\n return $eb2240fc39a57fa5$var$iterable(() => this.iterateCollection(props));\n }\n *iterateCollection(props) {\n let {\n children: children,\n items: items\n } = props;\n if (typeof children === 'function') {\n if (!items) throw new Error('props.children was a function but props.items is missing');\n for (let item of props.items) yield* this.getFullNode({\n value: item\n }, {\n renderer: children\n });\n } else {\n let items = [];\n $73SJx$react.Children.forEach(children, child => {\n items.push(child);\n });\n let index = 0;\n for (let item of items) {\n let nodes = this.getFullNode({\n element: item,\n index: index\n }, {});\n for (let node of nodes) {\n index++;\n yield node;\n }\n }\n }\n }\n getKey(item, partialNode, state, parentKey) {\n if (item.key != null) return item.key;\n if (partialNode.type === 'cell' && partialNode.key != null) return `${parentKey}${partialNode.key}`;\n let v = partialNode.value;\n if (v != null) {\n var _v_key;\n let key = (_v_key = v.key) !== null && _v_key !== void 0 ? _v_key : v.id;\n if (key == null) throw new Error('No key found for item');\n return key;\n }\n return parentKey ? `${parentKey}.${partialNode.index}` : `$.${partialNode.index}`;\n }\n getChildState(state, partialNode) {\n return {\n renderer: partialNode.renderer || state.renderer\n };\n }\n *getFullNode(partialNode, state, parentKey, parentNode) {\n // If there's a value instead of an element on the node, and a parent renderer function is available,\n // use it to render an element for the value.\n let element = partialNode.element;\n if (!element && partialNode.value && state && state.renderer) {\n let cached = this.cache.get(partialNode.value);\n if (cached && (!cached.shouldInvalidate || !cached.shouldInvalidate(this.context))) {\n cached.index = partialNode.index;\n cached.parentKey = parentNode ? parentNode.key : null;\n yield cached;\n return;\n }\n element = state.renderer(partialNode.value);\n }\n // If there's an element with a getCollectionNode function on its type, then it's a supported component.\n // Call this function to get a partial node, and recursively build a full node from there.\n if ( /*#__PURE__*/$73SJx$react.isValidElement(element)) {\n let type = element.type;\n if (typeof type !== 'function' && typeof type.getCollectionNode !== 'function') {\n let name = typeof element.type === 'function' ? element.type.name : element.type;\n throw new Error(`Unknown element <${name}> in collection.`);\n }\n let childNodes = type.getCollectionNode(element.props, this.context);\n let index = partialNode.index;\n let result = childNodes.next();\n while (!result.done && result.value) {\n let childNode = result.value;\n partialNode.index = index;\n let nodeKey = childNode.key;\n if (!nodeKey) nodeKey = childNode.element ? null : this.getKey(element, partialNode, state, parentKey);\n let nodes = this.getFullNode({\n ...childNode,\n key: nodeKey,\n index: index,\n wrapper: $eb2240fc39a57fa5$var$compose(partialNode.wrapper, childNode.wrapper)\n }, this.getChildState(state, childNode), parentKey ? `${parentKey}${element.key}` : element.key, parentNode);\n let children = [...nodes];\n for (let node of children) {\n // Cache the node based on its value\n node.value = childNode.value || partialNode.value;\n if (node.value) this.cache.set(node.value, node);\n // The partial node may have specified a type for the child in order to specify a constraint.\n // Verify that the full node that was built recursively matches this type.\n if (partialNode.type && node.type !== partialNode.type) throw new Error(`Unsupported type <${$eb2240fc39a57fa5$var$capitalize(node.type)}> in <${$eb2240fc39a57fa5$var$capitalize(parentNode.type)}>. Only <${$eb2240fc39a57fa5$var$capitalize(partialNode.type)}> is supported.`);\n index++;\n yield node;\n }\n result = childNodes.next(children);\n }\n return;\n }\n // Ignore invalid elements\n if (partialNode.key == null) return;\n // Create full node\n let builder = this;\n let node = {\n type: partialNode.type,\n props: partialNode.props,\n key: partialNode.key,\n parentKey: parentNode ? parentNode.key : null,\n value: partialNode.value,\n level: parentNode ? parentNode.level + 1 : 0,\n index: partialNode.index,\n rendered: partialNode.rendered,\n textValue: partialNode.textValue,\n 'aria-label': partialNode['aria-label'],\n wrapper: partialNode.wrapper,\n shouldInvalidate: partialNode.shouldInvalidate,\n hasChildNodes: partialNode.hasChildNodes,\n childNodes: $eb2240fc39a57fa5$var$iterable(function* () {\n if (!partialNode.hasChildNodes) return;\n let index = 0;\n for (let child of partialNode.childNodes()) {\n // Ensure child keys are globally unique by prepending the parent node's key\n if (child.key != null)\n // TODO: Remove this line entirely and enforce that users always provide unique keys.\n // Currently this line will have issues when a parent has a key `a` and a child with key `bc`\n // but another parent has key `ab` and its child has a key `c`. The combined keys would result in both\n // children having a key of `abc`.\n child.key = `${node.key}${child.key}`;\n child.index = index;\n let nodes = builder.getFullNode(child, builder.getChildState(state, child), node.key, node);\n for (let node of nodes) {\n index++;\n yield node;\n }\n }\n })\n };\n yield node;\n }\n constructor() {\n this.cache = new WeakMap();\n }\n}\n// Wraps an iterator function as an iterable object, and caches the results.\nfunction $eb2240fc39a57fa5$var$iterable(iterator) {\n let cache = [];\n let iterable = null;\n return {\n *[Symbol.iterator]() {\n for (let item of cache) yield item;\n if (!iterable) iterable = iterator();\n for (let item of iterable) {\n cache.push(item);\n yield item;\n }\n }\n };\n}\nfunction $eb2240fc39a57fa5$var$compose(outer, inner) {\n if (outer && inner) return element => outer(inner(element));\n if (outer) return outer;\n if (inner) return inner;\n}\nfunction $eb2240fc39a57fa5$var$capitalize(str) {\n return str[0].toUpperCase() + str.slice(1);\n}\nfunction $7613b1592d41b092$export$6cd28814d92fa9c9(props, factory, context) {\n let builder = useMemo(() => new $eb2240fc39a57fa5$export$bf788dd355e3a401(), []);\n let {\n children: children,\n items: items,\n collection: collection\n } = props;\n let result = useMemo(() => {\n if (collection) return collection;\n let nodes = builder.build({\n children: children,\n items: items\n }, context);\n return factory(nodes);\n }, [builder, children, items, collection, context, factory]);\n return result;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $c5a24bc478652b5f$export$1005530eda016c13(node, collection) {\n // New API: call collection.getChildren with the node key.\n if (typeof collection.getChildren === 'function') return collection.getChildren(node.key);\n // Old API: access childNodes directly.\n return node.childNodes;\n}\nfunction $c5a24bc478652b5f$export$fbdeaa6a76694f71(iterable) {\n return $c5a24bc478652b5f$export$5f3398f8733f90e2(iterable, 0);\n}\nfunction $c5a24bc478652b5f$export$5f3398f8733f90e2(iterable, index) {\n if (index < 0) return undefined;\n let i = 0;\n for (let item of iterable) {\n if (i === index) return item;\n i++;\n }\n}\nfunction $c5a24bc478652b5f$export$8c434b3a7a4dad6(collection, a, b) {\n // If the two nodes have the same parent, compare their indices.\n if (a.parentKey === b.parentKey) return a.index - b.index;\n // Otherwise, collect all of the ancestors from each node, and find the first one that doesn't match starting from the root.\n // Include the base nodes in case we are comparing nodes of different levels so that we can compare the higher node to the lower level node's\n // ancestor of the same level\n let aAncestors = [...$c5a24bc478652b5f$var$getAncestors(collection, a), a];\n let bAncestors = [...$c5a24bc478652b5f$var$getAncestors(collection, b), b];\n let firstNonMatchingAncestor = aAncestors.slice(0, bAncestors.length).findIndex((a, i) => a !== bAncestors[i]);\n if (firstNonMatchingAncestor !== -1) {\n // Compare the indices of two children within the common ancestor.\n a = aAncestors[firstNonMatchingAncestor];\n b = bAncestors[firstNonMatchingAncestor];\n return a.index - b.index;\n }\n // If there isn't a non matching ancestor, we might be in a case where one of the nodes is the ancestor of the other.\n if (aAncestors.findIndex(node => node === b) >= 0) return 1;else if (bAncestors.findIndex(node => node === a) >= 0) return -1;\n // 🤷\n return -1;\n}\nfunction $c5a24bc478652b5f$var$getAncestors(collection, node) {\n let parents = [];\n while ((node === null || node === void 0 ? void 0 : node.parentKey) != null) {\n node = collection.getItem(node.parentKey);\n parents.unshift(node);\n }\n return parents;\n}\nconst $453cc9f0df89c0a5$var$cache = new WeakMap();\nfunction $453cc9f0df89c0a5$export$77d5aafae4e095b2(collection) {\n let count = $453cc9f0df89c0a5$var$cache.get(collection);\n if (count != null) return count;\n count = 0;\n let countItems = items => {\n for (let item of items) if (item.type === 'section') countItems($c5a24bc478652b5f$export$1005530eda016c13(item, collection));else count++;\n };\n countItems(collection);\n $453cc9f0df89c0a5$var$cache.set(collection, count);\n return count;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nclass $e40ea825a81a3709$export$52baac22726c72bf extends Set {\n constructor(keys, anchorKey, currentKey) {\n super(keys);\n if (keys instanceof $e40ea825a81a3709$export$52baac22726c72bf) {\n this.anchorKey = anchorKey || keys.anchorKey;\n this.currentKey = currentKey || keys.currentKey;\n } else {\n this.anchorKey = anchorKey;\n this.currentKey = currentKey;\n }\n }\n}\nfunction $7af3f5b51489e0b5$var$equalSets(setA, setB) {\n if (setA.size !== setB.size) return false;\n for (let item of setA) {\n if (!setB.has(item)) return false;\n }\n return true;\n}\nfunction $7af3f5b51489e0b5$export$253fe78d46329472(props) {\n let {\n selectionMode = 'none',\n disallowEmptySelection: disallowEmptySelection,\n allowDuplicateSelectionEvents: allowDuplicateSelectionEvents,\n selectionBehavior: selectionBehaviorProp = 'toggle',\n disabledBehavior = 'all'\n } = props;\n // We want synchronous updates to `isFocused` and `focusedKey` after their setters are called.\n // But we also need to trigger a react re-render. So, we have both a ref (sync) and state (async).\n let isFocusedRef = useRef(false);\n let [, setFocused] = useState(false);\n let focusedKeyRef = useRef(null);\n let childFocusStrategyRef = useRef(null);\n let [, setFocusedKey] = useState(null);\n let selectedKeysProp = useMemo(() => $7af3f5b51489e0b5$var$convertSelection(props.selectedKeys), [props.selectedKeys]);\n let defaultSelectedKeys = useMemo(() => $7af3f5b51489e0b5$var$convertSelection(props.defaultSelectedKeys, new $e40ea825a81a3709$export$52baac22726c72bf()), [props.defaultSelectedKeys]);\n let [selectedKeys, setSelectedKeys] = $458b0a5536c1a7cf$export$40bfa8c7b0832715(selectedKeysProp, defaultSelectedKeys, props.onSelectionChange);\n let disabledKeysProp = useMemo(() => props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [props.disabledKeys]);\n let [selectionBehavior, setSelectionBehavior] = useState(selectionBehaviorProp);\n // If the selectionBehavior prop is set to replace, but the current state is toggle (e.g. due to long press\n // to enter selection mode on touch), and the selection becomes empty, reset the selection behavior.\n if (selectionBehaviorProp === 'replace' && selectionBehavior === 'toggle' && typeof selectedKeys === 'object' && selectedKeys.size === 0) setSelectionBehavior('replace');\n // If the selectionBehavior prop changes, update the state as well.\n let lastSelectionBehavior = useRef(selectionBehaviorProp);\n useEffect(() => {\n if (selectionBehaviorProp !== lastSelectionBehavior.current) {\n setSelectionBehavior(selectionBehaviorProp);\n lastSelectionBehavior.current = selectionBehaviorProp;\n }\n }, [selectionBehaviorProp]);\n return {\n selectionMode: selectionMode,\n disallowEmptySelection: disallowEmptySelection,\n selectionBehavior: selectionBehavior,\n setSelectionBehavior: setSelectionBehavior,\n get isFocused() {\n return isFocusedRef.current;\n },\n setFocused(f) {\n isFocusedRef.current = f;\n setFocused(f);\n },\n get focusedKey() {\n return focusedKeyRef.current;\n },\n get childFocusStrategy() {\n return childFocusStrategyRef.current;\n },\n setFocusedKey(k) {\n let childFocusStrategy = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'first';\n focusedKeyRef.current = k;\n childFocusStrategyRef.current = childFocusStrategy;\n setFocusedKey(k);\n },\n selectedKeys: selectedKeys,\n setSelectedKeys(keys) {\n if (allowDuplicateSelectionEvents || !$7af3f5b51489e0b5$var$equalSets(keys, selectedKeys)) setSelectedKeys(keys);\n },\n disabledKeys: disabledKeysProp,\n disabledBehavior: disabledBehavior\n };\n}\nfunction $7af3f5b51489e0b5$var$convertSelection(selection, defaultValue) {\n if (!selection) return defaultValue;\n return selection === 'all' ? 'all' : new $e40ea825a81a3709$export$52baac22726c72bf(selection);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nclass $d496c0a20b6e58ec$export$6c8a5aaad13c9852 {\n /**\n * The type of selection that is allowed in the collection.\n */\n get selectionMode() {\n return this.state.selectionMode;\n }\n /**\n * Whether the collection allows empty selection.\n */\n get disallowEmptySelection() {\n return this.state.disallowEmptySelection;\n }\n /**\n * The selection behavior for the collection.\n */\n get selectionBehavior() {\n return this.state.selectionBehavior;\n }\n /**\n * Sets the selection behavior for the collection.\n */\n setSelectionBehavior(selectionBehavior) {\n this.state.setSelectionBehavior(selectionBehavior);\n }\n /**\n * Whether the collection is currently focused.\n */\n get isFocused() {\n return this.state.isFocused;\n }\n /**\n * Sets whether the collection is focused.\n */\n setFocused(isFocused) {\n this.state.setFocused(isFocused);\n }\n /**\n * The current focused key in the collection.\n */\n get focusedKey() {\n return this.state.focusedKey;\n }\n /** Whether the first or last child of the focused key should receive focus. */\n get childFocusStrategy() {\n return this.state.childFocusStrategy;\n }\n /**\n * Sets the focused key.\n */\n setFocusedKey(key, childFocusStrategy) {\n if (key == null || this.collection.getItem(key)) this.state.setFocusedKey(key, childFocusStrategy);\n }\n /**\n * The currently selected keys in the collection.\n */\n get selectedKeys() {\n return this.state.selectedKeys === 'all' ? new Set(this.getSelectAllKeys()) : this.state.selectedKeys;\n }\n /**\n * The raw selection value for the collection.\n * Either 'all' for select all, or a set of keys.\n */\n get rawSelection() {\n return this.state.selectedKeys;\n }\n /**\n * Returns whether a key is selected.\n */\n isSelected(key) {\n if (this.state.selectionMode === 'none') return false;\n key = this.getKey(key);\n return this.state.selectedKeys === 'all' ? this.canSelectItem(key) : this.state.selectedKeys.has(key);\n }\n /**\n * Whether the selection is empty.\n */\n get isEmpty() {\n return this.state.selectedKeys !== 'all' && this.state.selectedKeys.size === 0;\n }\n /**\n * Whether all items in the collection are selected.\n */\n get isSelectAll() {\n if (this.isEmpty) return false;\n if (this.state.selectedKeys === 'all') return true;\n if (this._isSelectAll != null) return this._isSelectAll;\n let allKeys = this.getSelectAllKeys();\n let selectedKeys = this.state.selectedKeys;\n this._isSelectAll = allKeys.every(k => selectedKeys.has(k));\n return this._isSelectAll;\n }\n get firstSelectedKey() {\n let first = null;\n for (let key of this.state.selectedKeys) {\n let item = this.collection.getItem(key);\n if (!first || item && $c5a24bc478652b5f$export$8c434b3a7a4dad6(this.collection, item, first) < 0) first = item;\n }\n return first === null || first === void 0 ? void 0 : first.key;\n }\n get lastSelectedKey() {\n let last = null;\n for (let key of this.state.selectedKeys) {\n let item = this.collection.getItem(key);\n if (!last || item && $c5a24bc478652b5f$export$8c434b3a7a4dad6(this.collection, item, last) > 0) last = item;\n }\n return last === null || last === void 0 ? void 0 : last.key;\n }\n get disabledKeys() {\n return this.state.disabledKeys;\n }\n get disabledBehavior() {\n return this.state.disabledBehavior;\n }\n /**\n * Extends the selection to the given key.\n */\n extendSelection(toKey) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single') {\n this.replaceSelection(toKey);\n return;\n }\n toKey = this.getKey(toKey);\n let selection;\n // Only select the one key if coming from a select all.\n if (this.state.selectedKeys === 'all') selection = new $e40ea825a81a3709$export$52baac22726c72bf([toKey], toKey, toKey);else {\n let selectedKeys = this.state.selectedKeys;\n let anchorKey = selectedKeys.anchorKey || toKey;\n selection = new $e40ea825a81a3709$export$52baac22726c72bf(selectedKeys, anchorKey, toKey);\n for (let key of this.getKeyRange(anchorKey, selectedKeys.currentKey || toKey)) selection.delete(key);\n for (let key of this.getKeyRange(toKey, anchorKey)) if (this.canSelectItem(key)) selection.add(key);\n }\n this.state.setSelectedKeys(selection);\n }\n getKeyRange(from, to) {\n let fromItem = this.collection.getItem(from);\n let toItem = this.collection.getItem(to);\n if (fromItem && toItem) {\n if ($c5a24bc478652b5f$export$8c434b3a7a4dad6(this.collection, fromItem, toItem) <= 0) return this.getKeyRangeInternal(from, to);\n return this.getKeyRangeInternal(to, from);\n }\n return [];\n }\n getKeyRangeInternal(from, to) {\n let keys = [];\n let key = from;\n while (key) {\n let item = this.collection.getItem(key);\n if (item && item.type === 'item' || item.type === 'cell' && this.allowsCellSelection) keys.push(key);\n if (key === to) return keys;\n key = this.collection.getKeyAfter(key);\n }\n return [];\n }\n getKey(key) {\n let item = this.collection.getItem(key);\n if (!item)\n // ¯\\_(ツ)_/¯\n return key;\n // If cell selection is allowed, just return the key.\n if (item.type === 'cell' && this.allowsCellSelection) return key;\n // Find a parent item to select\n while (item.type !== 'item' && item.parentKey != null) item = this.collection.getItem(item.parentKey);\n if (!item || item.type !== 'item') return null;\n return item.key;\n }\n /**\n * Toggles whether the given key is selected.\n */\n toggleSelection(key) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single' && !this.isSelected(key)) {\n this.replaceSelection(key);\n return;\n }\n key = this.getKey(key);\n if (key == null) return;\n let keys = new $e40ea825a81a3709$export$52baac22726c72bf(this.state.selectedKeys === 'all' ? this.getSelectAllKeys() : this.state.selectedKeys);\n if (keys.has(key)) keys.delete(key);else if (this.canSelectItem(key)) {\n keys.add(key);\n keys.anchorKey = key;\n keys.currentKey = key;\n }\n if (this.disallowEmptySelection && keys.size === 0) return;\n this.state.setSelectedKeys(keys);\n }\n /**\n * Replaces the selection with only the given key.\n */\n replaceSelection(key) {\n if (this.selectionMode === 'none') return;\n key = this.getKey(key);\n if (key == null) return;\n let selection = this.canSelectItem(key) ? new $e40ea825a81a3709$export$52baac22726c72bf([key], key, key) : new $e40ea825a81a3709$export$52baac22726c72bf();\n this.state.setSelectedKeys(selection);\n }\n /**\n * Replaces the selection with the given keys.\n */\n setSelectedKeys(keys) {\n if (this.selectionMode === 'none') return;\n let selection = new $e40ea825a81a3709$export$52baac22726c72bf();\n for (let key of keys) {\n key = this.getKey(key);\n if (key != null) {\n selection.add(key);\n if (this.selectionMode === 'single') break;\n }\n }\n this.state.setSelectedKeys(selection);\n }\n getSelectAllKeys() {\n let keys = [];\n let addKeys = key => {\n while (key) {\n if (this.canSelectItem(key)) {\n let item = this.collection.getItem(key);\n if (item.type === 'item') keys.push(key);\n // Add child keys. If cell selection is allowed, then include item children too.\n if (item.hasChildNodes && (this.allowsCellSelection || item.type !== 'item')) addKeys($c5a24bc478652b5f$export$fbdeaa6a76694f71($c5a24bc478652b5f$export$1005530eda016c13(item, this.collection)).key);\n }\n key = this.collection.getKeyAfter(key);\n }\n };\n addKeys(this.collection.getFirstKey());\n return keys;\n }\n /**\n * Selects all items in the collection.\n */\n selectAll() {\n if (!this.isSelectAll && this.selectionMode === 'multiple') this.state.setSelectedKeys('all');\n }\n /**\n * Removes all keys from the selection.\n */\n clearSelection() {\n if (!this.disallowEmptySelection && (this.state.selectedKeys === 'all' || this.state.selectedKeys.size > 0)) this.state.setSelectedKeys(new $e40ea825a81a3709$export$52baac22726c72bf());\n }\n /**\n * Toggles between select all and an empty selection.\n */\n toggleSelectAll() {\n if (this.isSelectAll) this.clearSelection();else this.selectAll();\n }\n select(key, e) {\n if (this.selectionMode === 'none') return;\n if (this.selectionMode === 'single') {\n if (this.isSelected(key) && !this.disallowEmptySelection) this.toggleSelection(key);else this.replaceSelection(key);\n } else if (this.selectionBehavior === 'toggle' || e && (e.pointerType === 'touch' || e.pointerType === 'virtual'))\n // if touch or virtual (VO) then we just want to toggle, otherwise it's impossible to multi select because they don't have modifier keys\n this.toggleSelection(key);else this.replaceSelection(key);\n }\n /**\n * Returns whether the current selection is equal to the given selection.\n */\n isSelectionEqual(selection) {\n if (selection === this.state.selectedKeys) return true;\n // Check if the set of keys match.\n let selectedKeys = this.selectedKeys;\n if (selection.size !== selectedKeys.size) return false;\n for (let key of selection) {\n if (!selectedKeys.has(key)) return false;\n }\n for (let key of selectedKeys) {\n if (!selection.has(key)) return false;\n }\n return true;\n }\n canSelectItem(key) {\n if (this.state.selectionMode === 'none' || this.state.disabledKeys.has(key)) return false;\n let item = this.collection.getItem(key);\n if (!item || item.type === 'cell' && !this.allowsCellSelection) return false;\n return true;\n }\n isDisabled(key) {\n return this.state.disabledKeys.has(key) && this.state.disabledBehavior === 'all';\n }\n constructor(collection, state, options) {\n this.collection = collection;\n this.state = state;\n var _options_allowsCellSelection;\n this.allowsCellSelection = (_options_allowsCellSelection = options === null || options === void 0 ? void 0 : options.allowsCellSelection) !== null && _options_allowsCellSelection !== void 0 ? _options_allowsCellSelection : false;\n this._isSelectAll = null;\n }\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nclass $a02d57049d202695$export$d085fb9e920b5ca7 {\n *[Symbol.iterator]() {\n yield* this.iterable;\n }\n get size() {\n return this.keyMap.size;\n }\n getKeys() {\n return this.keyMap.keys();\n }\n getKeyBefore(key) {\n let node = this.keyMap.get(key);\n return node ? node.prevKey : null;\n }\n getKeyAfter(key) {\n let node = this.keyMap.get(key);\n return node ? node.nextKey : null;\n }\n getFirstKey() {\n return this.firstKey;\n }\n getLastKey() {\n return this.lastKey;\n }\n getItem(key) {\n return this.keyMap.get(key);\n }\n at(idx) {\n const keys = [...this.getKeys()];\n return this.getItem(keys[idx]);\n }\n getChildren(key) {\n let node = this.keyMap.get(key);\n return (node === null || node === void 0 ? void 0 : node.childNodes) || [];\n }\n constructor(nodes) {\n this.keyMap = new Map();\n this.iterable = nodes;\n let visit = node => {\n this.keyMap.set(node.key, node);\n if (node.childNodes && node.type === 'section') for (let child of node.childNodes) visit(child);\n };\n for (let node of nodes) visit(node);\n let last;\n let index = 0;\n for (let [key, node] of this.keyMap) {\n if (last) {\n last.nextKey = key;\n node.prevKey = last.key;\n } else {\n this.firstKey = key;\n node.prevKey = undefined;\n }\n if (node.type === 'item') node.index = index++;\n last = node;\n // Set nextKey as undefined since this might be the last node\n // If it isn't the last node, last.nextKey will properly set at start of new loop\n last.nextKey = undefined;\n }\n this.lastKey = last === null || last === void 0 ? void 0 : last.key;\n }\n}\nfunction $e72dd72e1c76a225$export$2f645645f7bca764(props) {\n let {\n filter: filter\n } = props;\n let selectionState = $7af3f5b51489e0b5$export$253fe78d46329472(props);\n let disabledKeys = useMemo(() => props.disabledKeys ? new Set(props.disabledKeys) : new Set(), [props.disabledKeys]);\n let factory = useCallback(nodes => filter ? new $a02d57049d202695$export$d085fb9e920b5ca7(filter(nodes)) : new $a02d57049d202695$export$d085fb9e920b5ca7(nodes), [filter]);\n let context = useMemo(() => ({\n suppressTextValueWarning: props.suppressTextValueWarning\n }), [props.suppressTextValueWarning]);\n let collection = $7613b1592d41b092$export$6cd28814d92fa9c9(props, factory, context);\n let selectionManager = useMemo(() => new $d496c0a20b6e58ec$export$6c8a5aaad13c9852(collection, selectionState), [collection, selectionState]);\n // Reset focused key if that item is deleted from the collection.\n const cachedCollection = useRef(null);\n useEffect(() => {\n if (selectionState.focusedKey != null && !collection.getItem(selectionState.focusedKey)) {\n const startItem = cachedCollection.current.getItem(selectionState.focusedKey);\n const cachedItemNodes = [...cachedCollection.current.getKeys()].map(key => {\n const itemNode = cachedCollection.current.getItem(key);\n return itemNode.type === 'item' ? itemNode : null;\n }).filter(node => node !== null);\n const itemNodes = [...collection.getKeys()].map(key => {\n const itemNode = collection.getItem(key);\n return itemNode.type === 'item' ? itemNode : null;\n }).filter(node => node !== null);\n const diff = cachedItemNodes.length - itemNodes.length;\n let index = Math.min(diff > 1 ? Math.max(startItem.index - diff + 1, 0) : startItem.index, itemNodes.length - 1);\n let newNode;\n while (index >= 0) {\n if (!selectionManager.isDisabled(itemNodes[index].key)) {\n newNode = itemNodes[index];\n break;\n }\n // Find next, not disabled item.\n if (index < itemNodes.length - 1) index++;else {\n if (index > startItem.index) index = startItem.index;\n index--;\n }\n }\n selectionState.setFocusedKey(newNode ? newNode.key : null);\n }\n cachedCollection.current = collection;\n }, [collection, selectionManager, selectionState, selectionState.focusedKey]);\n return {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $a0d645289fe9b86b$export$e7f05e985daf4b5f(props) {\n var _props_defaultSelectedKey;\n let [selectedKey, setSelectedKey] = $458b0a5536c1a7cf$export$40bfa8c7b0832715(props.selectedKey, (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : null, props.onSelectionChange);\n let selectedKeys = useMemo(() => selectedKey != null ? [selectedKey] : [], [selectedKey]);\n let {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager\n } = $e72dd72e1c76a225$export$2f645645f7bca764({\n ...props,\n selectionMode: 'single',\n disallowEmptySelection: true,\n allowDuplicateSelectionEvents: true,\n selectedKeys: selectedKeys,\n onSelectionChange: keys => {\n let key = keys.values().next().value;\n // Always fire onSelectionChange, even if the key is the same\n // as the current key (useControlledState does not).\n if (key === selectedKey && props.onSelectionChange) props.onSelectionChange(key);\n setSelectedKey(key);\n }\n });\n let selectedItem = selectedKey != null ? collection.getItem(selectedKey) : null;\n return {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager,\n selectedKey: selectedKey,\n setSelectedKey: setSelectedKey,\n selectedItem: selectedItem\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $fc909762b330b746$export$61c6a8c84e605fb6(props) {\n let [isOpen, setOpen] = $458b0a5536c1a7cf$export$40bfa8c7b0832715(props.isOpen, props.defaultOpen || false, props.onOpenChange);\n const open = useCallback(() => {\n setOpen(true);\n }, [setOpen]);\n const close = useCallback(() => {\n setOpen(false);\n }, [setOpen]);\n const toggle = useCallback(() => {\n setOpen(!isOpen);\n }, [setOpen, isOpen]);\n return {\n isOpen: isOpen,\n setOpen: setOpen,\n open: open,\n close: close,\n toggle: toggle\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $a28c903ee9ad8dc5$export$79fefeb1c2091ac3(props) {\n let overlayTriggerState = $fc909762b330b746$export$61c6a8c84e605fb6(props);\n let [focusStrategy, setFocusStrategy] = useState(null);\n return {\n focusStrategy: focusStrategy,\n ...overlayTriggerState,\n open() {\n let focusStrategy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n setFocusStrategy(focusStrategy);\n overlayTriggerState.open();\n },\n toggle() {\n let focusStrategy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n setFocusStrategy(focusStrategy);\n overlayTriggerState.toggle();\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $a9e7382a7d111cb5$export$b453a3bfd4a5fa9e(props) {\n var _collection_getItem, _collection_getItem1;\n let {\n defaultFilter: defaultFilter,\n menuTrigger = 'input',\n allowsEmptyCollection = false,\n allowsCustomValue: allowsCustomValue,\n shouldCloseOnBlur = true\n } = props;\n let [showAllItems, setShowAllItems] = useState(false);\n let [isFocused, setFocusedState] = useState(false);\n let onSelectionChange = key => {\n if (props.onSelectionChange) props.onSelectionChange(key);\n // If key is the same, reset the inputValue and close the menu\n // (scenario: user clicks on already selected option)\n if (key === selectedKey) {\n resetInputValue();\n closeMenu();\n }\n };\n var _props_items;\n let {\n collection: collection,\n selectionManager: selectionManager,\n selectedKey: selectedKey,\n setSelectedKey: setSelectedKey,\n selectedItem: selectedItem,\n disabledKeys: disabledKeys\n } = $a0d645289fe9b86b$export$e7f05e985daf4b5f({\n ...props,\n onSelectionChange: onSelectionChange,\n items: (_props_items = props.items) !== null && _props_items !== void 0 ? _props_items : props.defaultItems\n });\n var _props_defaultInputValue, _ref;\n let [inputValue, setInputValue] = $458b0a5536c1a7cf$export$40bfa8c7b0832715(props.inputValue, (_ref = (_props_defaultInputValue = props.defaultInputValue) !== null && _props_defaultInputValue !== void 0 ? _props_defaultInputValue : (_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.textValue) !== null && _ref !== void 0 ? _ref : '', props.onInputChange);\n // Preserve original collection so we can show all items on demand\n let originalCollection = collection;\n let filteredCollection = useMemo(() =>\n // No default filter if items are controlled.\n props.items != null || !defaultFilter ? collection : $a9e7382a7d111cb5$var$filterCollection(collection, inputValue, defaultFilter), [collection, inputValue, defaultFilter, props.items]);\n let [lastCollection, setLastCollection] = useState(filteredCollection);\n // Track what action is attempting to open the menu\n let menuOpenTrigger = useRef('focus');\n let onOpenChange = open => {\n if (props.onOpenChange) props.onOpenChange(open, open ? menuOpenTrigger.current : undefined);\n selectionManager.setFocused(open);\n if (!open) selectionManager.setFocusedKey(null);\n };\n let triggerState = $a28c903ee9ad8dc5$export$79fefeb1c2091ac3({\n ...props,\n onOpenChange: onOpenChange,\n isOpen: undefined,\n defaultOpen: undefined\n });\n let open = (focusStrategy, trigger) => {\n let displayAllItems = trigger === 'manual' || trigger === 'focus' && menuTrigger === 'focus';\n // Prevent open operations from triggering if there is nothing to display\n // Also prevent open operations from triggering if items are uncontrolled but defaultItems is empty, even if displayAllItems is true.\n // This is to prevent comboboxes with empty defaultItems from opening but allow controlled items comboboxes to open even if the inital list is empty (assumption is user will provide swap the empty list with a base list via onOpenChange returning `menuTrigger` manual)\n if (allowsEmptyCollection || filteredCollection.size > 0 || displayAllItems && originalCollection.size > 0 || props.items) {\n if (displayAllItems && !triggerState.isOpen && props.items === undefined)\n // Show all items if menu is manually opened. Only care about this if items are undefined\n setShowAllItems(true);\n menuOpenTrigger.current = trigger;\n triggerState.open(focusStrategy);\n }\n };\n let toggle = (focusStrategy, trigger) => {\n let displayAllItems = trigger === 'manual' || trigger === 'focus' && menuTrigger === 'focus';\n // If the menu is closed and there is nothing to display, early return so toggle isn't called to prevent extraneous onOpenChange\n if (!(allowsEmptyCollection || filteredCollection.size > 0 || displayAllItems && originalCollection.size > 0 || props.items) && !triggerState.isOpen) return;\n if (displayAllItems && !triggerState.isOpen && props.items === undefined)\n // Show all items if menu is toggled open. Only care about this if items are undefined\n setShowAllItems(true);\n // Only update the menuOpenTrigger if menu is currently closed\n if (!triggerState.isOpen) menuOpenTrigger.current = trigger;\n toggleMenu(focusStrategy);\n };\n // If menu is going to close, save the current collection so we can freeze the displayed collection when the\n // user clicks outside the popover to close the menu. Prevents the menu contents from updating as the menu closes.\n let toggleMenu = useCallback(focusStrategy => {\n if (triggerState.isOpen) setLastCollection(filteredCollection);\n triggerState.toggle(focusStrategy);\n }, [triggerState, filteredCollection]);\n let closeMenu = useCallback(() => {\n if (triggerState.isOpen) {\n setLastCollection(filteredCollection);\n triggerState.close();\n }\n }, [triggerState, filteredCollection]);\n let lastValue = useRef(inputValue);\n let resetInputValue = () => {\n var _collection_getItem;\n var _collection_getItem_textValue;\n let itemText = (_collection_getItem_textValue = (_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.textValue) !== null && _collection_getItem_textValue !== void 0 ? _collection_getItem_textValue : '';\n lastValue.current = itemText;\n setInputValue(itemText);\n };\n var _props_selectedKey, _ref1;\n let lastSelectedKey = useRef((_ref1 = (_props_selectedKey = props.selectedKey) !== null && _props_selectedKey !== void 0 ? _props_selectedKey : props.defaultSelectedKey) !== null && _ref1 !== void 0 ? _ref1 : null);\n var _collection_getItem_textValue;\n let lastSelectedKeyText = useRef((_collection_getItem_textValue = (_collection_getItem1 = collection.getItem(selectedKey)) === null || _collection_getItem1 === void 0 ? void 0 : _collection_getItem1.textValue) !== null && _collection_getItem_textValue !== void 0 ? _collection_getItem_textValue : '');\n // intentional omit dependency array, want this to happen on every render\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => {\n var _collection_getItem;\n // Open and close menu automatically when the input value changes if the input is focused,\n // and there are items in the collection or allowEmptyCollection is true.\n if (isFocused && (filteredCollection.size > 0 || allowsEmptyCollection) && !triggerState.isOpen && inputValue !== lastValue.current && menuTrigger !== 'manual') open(null, 'input');\n // Close the menu if the collection is empty. Don't close menu if filtered collection size is 0\n // but we are currently showing all items via button press\n if (!showAllItems && !allowsEmptyCollection && triggerState.isOpen && filteredCollection.size === 0) closeMenu();\n // Close when an item is selected.\n if (selectedKey != null && selectedKey !== lastSelectedKey.current) closeMenu();\n // Clear focused key when input value changes and display filtered collection again.\n if (inputValue !== lastValue.current) {\n selectionManager.setFocusedKey(null);\n setShowAllItems(false);\n // Set selectedKey to null when the user clears the input.\n // If controlled, this is the application developer's responsibility.\n if (inputValue === '' && (props.inputValue === undefined || props.selectedKey === undefined)) setSelectedKey(null);\n }\n // If the selectedKey changed, update the input value.\n // Do nothing if both inputValue and selectedKey are controlled.\n // In this case, it's the user's responsibility to update inputValue in onSelectionChange.\n if (selectedKey !== lastSelectedKey.current && (props.inputValue === undefined || props.selectedKey === undefined)) resetInputValue();else lastValue.current = inputValue;\n var _collection_getItem_textValue;\n // Update the inputValue if the selected item's text changes from its last tracked value.\n // This is to handle cases where a selectedKey is specified but the items aren't available (async loading) or the selected item's text value updates.\n // Only reset if the user isn't currently within the field so we don't erroneously modify user input.\n // If inputValue is controlled, it is the user's responsibility to update the inputValue when items change.\n let selectedItemText = (_collection_getItem_textValue = (_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.textValue) !== null && _collection_getItem_textValue !== void 0 ? _collection_getItem_textValue : '';\n if (!isFocused && selectedKey != null && props.inputValue === undefined && selectedKey === lastSelectedKey.current) {\n if (lastSelectedKeyText.current !== selectedItemText) {\n lastValue.current = selectedItemText;\n setInputValue(selectedItemText);\n }\n }\n lastSelectedKey.current = selectedKey;\n lastSelectedKeyText.current = selectedItemText;\n });\n // Revert input value and close menu\n let revert = () => {\n if (allowsCustomValue && selectedKey == null) commitCustomValue();else commitSelection();\n };\n let commitCustomValue = () => {\n lastSelectedKey.current = null;\n setSelectedKey(null);\n closeMenu();\n };\n let commitSelection = () => {\n // If multiple things are controlled, call onSelectionChange\n if (props.selectedKey !== undefined && props.inputValue !== undefined) {\n var _collection_getItem;\n props.onSelectionChange(selectedKey);\n var _collection_getItem_textValue;\n // Stop menu from reopening from useEffect\n let itemText = (_collection_getItem_textValue = (_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.textValue) !== null && _collection_getItem_textValue !== void 0 ? _collection_getItem_textValue : '';\n lastValue.current = itemText;\n closeMenu();\n } else {\n // If only a single aspect of combobox is controlled, reset input value and close menu for the user\n resetInputValue();\n closeMenu();\n }\n };\n const commitValue = () => {\n if (allowsCustomValue) {\n var _collection_getItem;\n var _collection_getItem_textValue;\n const itemText = (_collection_getItem_textValue = (_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : _collection_getItem.textValue) !== null && _collection_getItem_textValue !== void 0 ? _collection_getItem_textValue : '';\n inputValue === itemText ? commitSelection() : commitCustomValue();\n } // Reset inputValue and close menu\n else commitSelection();\n };\n let commit = () => {\n if (triggerState.isOpen && selectionManager.focusedKey != null) {\n // Reset inputValue and close menu here if the selected key is already the focused key. Otherwise\n // fire onSelectionChange to allow the application to control the closing.\n if (selectedKey === selectionManager.focusedKey) commitSelection();else setSelectedKey(selectionManager.focusedKey);\n } else commitValue();\n };\n let setFocused = isFocused => {\n if (isFocused) {\n if (menuTrigger === 'focus') open(null, 'focus');\n } else if (shouldCloseOnBlur) commitValue();\n setFocusedState(isFocused);\n };\n let displayedCollection = useMemo(() => {\n if (triggerState.isOpen) {\n if (showAllItems) return originalCollection;else return filteredCollection;\n } else return lastCollection;\n }, [triggerState.isOpen, originalCollection, filteredCollection, showAllItems, lastCollection]);\n return {\n ...triggerState,\n toggle: toggle,\n open: open,\n close: commitValue,\n selectionManager: selectionManager,\n selectedKey: selectedKey,\n setSelectedKey: setSelectedKey,\n disabledKeys: disabledKeys,\n isFocused: isFocused,\n setFocused: setFocused,\n selectedItem: selectedItem,\n collection: displayedCollection,\n inputValue: inputValue,\n setInputValue: setInputValue,\n commit: commit,\n revert: revert\n };\n}\nfunction $a9e7382a7d111cb5$var$filterCollection(collection, inputValue, filter) {\n return new $a02d57049d202695$export$d085fb9e920b5ca7($a9e7382a7d111cb5$var$filterNodes(collection, collection, inputValue, filter));\n}\nfunction $a9e7382a7d111cb5$var$filterNodes(collection, nodes, inputValue, filter) {\n let filteredNode = [];\n for (let node of nodes) {\n if (node.type === 'section' && node.hasChildNodes) {\n let filtered = $a9e7382a7d111cb5$var$filterNodes(collection, $c5a24bc478652b5f$export$1005530eda016c13(node, collection), inputValue, filter);\n if ([...filtered].some(node => node.type === 'item')) filteredNode.push({\n ...node,\n childNodes: filtered\n });\n } else if (node.type === 'item' && filter(node.textValue, inputValue)) filteredNode.push({\n ...node\n });else if (node.type !== 'item') filteredNode.push({\n ...node\n });\n }\n return filteredNode;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $2bc3a590c5373a4e$export$5159ec8b34d4ec12(props) {\n let triggerState = $a28c903ee9ad8dc5$export$79fefeb1c2091ac3(props);\n let listState = $a0d645289fe9b86b$export$e7f05e985daf4b5f({\n ...props,\n onSelectionChange: key => {\n if (props.onSelectionChange != null) props.onSelectionChange(key);\n triggerState.close();\n }\n });\n let [isFocused, setFocused] = useState(false);\n return {\n ...listState,\n ...triggerState,\n open() {\n // Don't open if the collection is empty.\n if (listState.collection.size !== 0) triggerState.open();\n },\n toggle(focusStrategy) {\n if (listState.collection.size !== 0) triggerState.toggle(focusStrategy);\n },\n isFocused: isFocused,\n setFocused: setFocused\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $b5e257d569688ac6$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $b5e257d569688ac6$var$SSRContext = /*#__PURE__*/$73SJx$react.createContext($b5e257d569688ac6$var$defaultContext);\nconst $b5e257d569688ac6$var$IsSSRContext = /*#__PURE__*/$73SJx$react.createContext(false);\nlet $b5e257d569688ac6$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nlet $b5e257d569688ac6$var$componentIds = new WeakMap();\nfunction $b5e257d569688ac6$var$useCounter() {\n let isDisabled = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n let ctx = useContext($b5e257d569688ac6$var$SSRContext);\n let ref = useRef(null);\n // eslint-disable-next-line rulesdir/pure-render\n if (ref.current === null && !isDisabled) {\n var _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner;\n // In strict mode, React renders components twice, and the ref will be reset to null on the second render.\n // This means our id counter will be incremented twice instead of once. This is a problem because on the\n // server, components are only rendered once and so ids generated on the server won't match the client.\n // In React 18, useId was introduced to solve this, but it is not available in older versions. So to solve this\n // we need to use some React internals to access the underlying Fiber instance, which is stable between renders.\n // This is exposed as ReactCurrentOwner in development, which is all we need since StrictMode only runs in development.\n // To ensure that we only increment the global counter once, we store the starting id for this component in\n // a weak map associated with the Fiber. On the second render, we reset the global counter to this value.\n // Since React runs the second render immediately after the first, this is safe.\n // @ts-ignore\n let currentOwner = (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = $73SJx$react.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED === void 0 ? void 0 : (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner = _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner === void 0 ? void 0 : _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner.current;\n if (currentOwner) {\n let prevComponentValue = $b5e257d569688ac6$var$componentIds.get(currentOwner);\n if (prevComponentValue == null)\n // On the first render, and first call to useId, store the id and state in our weak map.\n $b5e257d569688ac6$var$componentIds.set(currentOwner, {\n id: ctx.current,\n state: currentOwner.memoizedState\n });else if (currentOwner.memoizedState !== prevComponentValue.state) {\n // On the second render, the memoizedState gets reset by React.\n // Reset the counter, and remove from the weak map so we don't\n // do this for subsequent useId calls.\n ctx.current = prevComponentValue.id;\n $b5e257d569688ac6$var$componentIds.delete(currentOwner);\n }\n }\n // eslint-disable-next-line rulesdir/pure-render\n ref.current = ++ctx.current;\n }\n // eslint-disable-next-line rulesdir/pure-render\n return ref.current;\n}\nfunction $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {\n let ctx = useContext($b5e257d569688ac6$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $b5e257d569688ac6$var$defaultContext && !$b5e257d569688ac6$var$canUseDOM) console.warn('When server rendering, you must wrap your application in an to ensure consistent ids are generated between the client and server.');\n let counter = $b5e257d569688ac6$var$useCounter(!!defaultId);\n let prefix = ctx === $b5e257d569688ac6$var$defaultContext && process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${ctx.prefix}`;\n return defaultId || `${prefix}-${counter}`;\n}\nfunction $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {\n // @ts-ignore\n let id = $73SJx$react.useId();\n let [didSSR] = useState($b5e257d569688ac6$export$535bd6ca7f90a273());\n let prefix = didSSR || process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;\n return defaultId || `${prefix}-${id}`;\n}\nconst $b5e257d569688ac6$export$619500959fc48b26 = typeof $73SJx$react['useId'] === 'function' ? $b5e257d569688ac6$var$useModernSSRSafeId : $b5e257d569688ac6$var$useLegacySSRSafeId;\nfunction $b5e257d569688ac6$var$getSnapshot() {\n return false;\n}\nfunction $b5e257d569688ac6$var$getServerSnapshot() {\n return true;\n}\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction $b5e257d569688ac6$var$subscribe(onStoreChange) {\n // noop\n return () => {};\n}\nfunction $b5e257d569688ac6$export$535bd6ca7f90a273() {\n // In React 18, we can use useSyncExternalStore to detect if we're server rendering or hydrating.\n if (typeof $73SJx$react['useSyncExternalStore'] === 'function') return $73SJx$react['useSyncExternalStore']($b5e257d569688ac6$var$subscribe, $b5e257d569688ac6$var$getSnapshot, $b5e257d569688ac6$var$getServerSnapshot);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useContext($b5e257d569688ac6$var$IsSSRContext);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nconst $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof document !== 'undefined' ? $73SJx$react.useLayoutEffect : () => {};\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $8ae05eaa5c114e9c$export$7f54fc3180508a52(fn) {\n const ref = useRef(null);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n ref.current = fn;\n }, [fn]);\n return useCallback(function () {\n const f = ref.current;\n return f(...arguments);\n }, []);\n}\nfunction $1dbecbe27a04f9af$export$14d238f342723f25(defaultValue) {\n let [value, setValue] = useState(defaultValue);\n let effect = useRef(null);\n // Store the function in a ref so we can always access the current version\n // which has the proper `value` in scope.\n let nextRef = $8ae05eaa5c114e9c$export$7f54fc3180508a52(() => {\n // Run the generator to the next yield.\n let newValue = effect.current.next();\n // If the generator is done, reset the effect.\n if (newValue.done) {\n effect.current = null;\n return;\n }\n // If the value is the same as the current value,\n // then continue to the next yield. Otherwise,\n // set the value in state and wait for the next layout effect.\n if (value === newValue.value) nextRef();else setValue(newValue.value);\n });\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n // If there is an effect currently running, continue to the next yield.\n if (effect.current) nextRef();\n });\n let queue = $8ae05eaa5c114e9c$export$7f54fc3180508a52(fn => {\n effect.current = fn(value);\n nextRef();\n });\n return [value, queue];\n}\nlet $bdb11010cef70236$var$idsUpdaterMap = new Map();\nfunction $bdb11010cef70236$export$f680877a34711e37(defaultId) {\n let [value, setValue] = useState(defaultId);\n let nextId = useRef(null);\n let res = $b5e257d569688ac6$export$619500959fc48b26(value);\n let updateValue = useCallback(val => {\n nextId.current = val;\n }, []);\n $bdb11010cef70236$var$idsUpdaterMap.set(res, updateValue);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n let r = res;\n return () => {\n $bdb11010cef70236$var$idsUpdaterMap.delete(r);\n };\n }, [res]);\n // This cannot cause an infinite loop because the ref is updated first.\n // eslint-disable-next-line\n useEffect(() => {\n let newId = nextId.current;\n if (newId) {\n nextId.current = null;\n setValue(newId);\n }\n });\n return res;\n}\nfunction $bdb11010cef70236$export$cd8c9cb68f842629(idA, idB) {\n if (idA === idB) return idA;\n let setIdA = $bdb11010cef70236$var$idsUpdaterMap.get(idA);\n if (setIdA) {\n setIdA(idB);\n return idB;\n }\n let setIdB = $bdb11010cef70236$var$idsUpdaterMap.get(idB);\n if (setIdB) {\n setIdB(idA);\n return idA;\n }\n return idB;\n}\nfunction $bdb11010cef70236$export$b4cc09c592e8fdb8() {\n let depArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n let id = $bdb11010cef70236$export$f680877a34711e37();\n let [resolvedId, setResolvedId] = $1dbecbe27a04f9af$export$14d238f342723f25(id);\n let updateId = useCallback(() => {\n setResolvedId(function* () {\n yield id;\n yield document.getElementById(id) ? id : undefined;\n });\n }, [id, setResolvedId]);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(updateId, [id, updateId, ...depArray]);\n return resolvedId;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /**\n * Calls all functions in the order they were chained with the same arguments.\n */\nfunction $ff5963eb1fccf552$export$e08e3b67e392101e() {\n for (var _len4 = arguments.length, callbacks = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n callbacks[_key4] = arguments[_key4];\n }\n return function () {\n for (let callback of callbacks) if (typeof callback === 'function') callback(...arguments);\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $3ef42575df84b30b$export$9d1611c77c2fe928() {\n // Start with a base clone of the first argument. This is a lot faster than starting\n // with an empty object and adding properties as we go.\n let result = {\n ...(arguments.length <= 0 ? undefined : arguments[0])\n };\n for (let i = 1; i < arguments.length; i++) {\n let props = i < 0 || arguments.length <= i ? undefined : arguments[i];\n for (let key in props) {\n let a = result[key];\n let b = props[key];\n // Chain events\n if (typeof a === 'function' && typeof b === 'function' &&\n // This is a lot faster than a regex.\n key[0] === 'o' && key[1] === 'n' && key.charCodeAt(2) >= /* 'A' */65 && key.charCodeAt(2) <= /* 'Z' */90) result[key] = $ff5963eb1fccf552$export$e08e3b67e392101e(a, b);else if ((key === 'className' || key === 'UNSAFE_className') && typeof a === 'string' && typeof b === 'string') result[key] = $12uGp$clsx(a, b);else if (key === 'id' && a && b) result.id = $bdb11010cef70236$export$cd8c9cb68f842629(a, b);else result[key] = b !== undefined ? b : a;\n }\n }\n return result;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nconst $65484d02dcb7eb3e$var$DOMPropNames = new Set(['id']);\nconst $65484d02dcb7eb3e$var$labelablePropNames = new Set(['aria-label', 'aria-labelledby', 'aria-describedby', 'aria-details']);\nconst $65484d02dcb7eb3e$var$propRe = /^(data-.*)$/;\nfunction $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props) {\n let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let {\n labelable: labelable,\n propNames: propNames\n } = opts;\n let filteredProps = {};\n for (const prop in props) if (Object.prototype.hasOwnProperty.call(props, prop) && ($65484d02dcb7eb3e$var$DOMPropNames.has(prop) || labelable && $65484d02dcb7eb3e$var$labelablePropNames.has(prop) || (propNames === null || propNames === void 0 ? void 0 : propNames.has(prop)) || $65484d02dcb7eb3e$var$propRe.test(prop))) filteredProps[prop] = props[prop];\n return filteredProps;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $7215afc6de606d6b$export$de79e2c695e052f3(element) {\n if ($7215afc6de606d6b$var$supportsPreventScroll()) element.focus({\n preventScroll: true\n });else {\n let scrollableElements = $7215afc6de606d6b$var$getScrollableElements(element);\n element.focus();\n $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements);\n }\n}\nlet $7215afc6de606d6b$var$supportsPreventScrollCached = null;\nfunction $7215afc6de606d6b$var$supportsPreventScroll() {\n if ($7215afc6de606d6b$var$supportsPreventScrollCached == null) {\n $7215afc6de606d6b$var$supportsPreventScrollCached = false;\n try {\n var focusElem = document.createElement('div');\n focusElem.focus({\n get preventScroll() {\n $7215afc6de606d6b$var$supportsPreventScrollCached = true;\n return true;\n }\n });\n } catch (e) {\n // Ignore\n }\n }\n return $7215afc6de606d6b$var$supportsPreventScrollCached;\n}\nfunction $7215afc6de606d6b$var$getScrollableElements(element) {\n var parent = element.parentNode;\n var scrollableElements = [];\n var rootScrollingElement = document.scrollingElement || document.documentElement;\n while (parent instanceof HTMLElement && parent !== rootScrollingElement) {\n if (parent.offsetHeight < parent.scrollHeight || parent.offsetWidth < parent.scrollWidth) scrollableElements.push({\n element: parent,\n scrollTop: parent.scrollTop,\n scrollLeft: parent.scrollLeft\n });\n parent = parent.parentNode;\n }\n if (rootScrollingElement instanceof HTMLElement) scrollableElements.push({\n element: rootScrollingElement,\n scrollTop: rootScrollingElement.scrollTop,\n scrollLeft: rootScrollingElement.scrollLeft\n });\n return scrollableElements;\n}\nfunction $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements) {\n for (let {\n element: element,\n scrollTop: scrollTop,\n scrollLeft: scrollLeft\n } of scrollableElements) {\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We store a global list of elements that are currently transitioning,\n// mapped to a set of CSS properties that are transitioning for that element.\n// This is necessary rather than a simple count of transitions because of browser\n// bugs, e.g. Chrome sometimes fires both transitionend and transitioncancel rather\n// than one or the other. So we need to track what's actually transitioning so that\n// we can ignore these duplicate events.\nlet $bbed8b41f857bcc0$var$transitionsByElement = new Map();\n// A list of callbacks to call once there are no transitioning elements.\nlet $bbed8b41f857bcc0$var$transitionCallbacks = new Set();\nfunction $bbed8b41f857bcc0$var$setupGlobalEvents() {\n if (typeof window === 'undefined') return;\n let onTransitionStart = e => {\n // Add the transitioning property to the list for this element.\n let transitions = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!transitions) {\n transitions = new Set();\n $bbed8b41f857bcc0$var$transitionsByElement.set(e.target, transitions);\n // The transitioncancel event must be registered on the element itself, rather than as a global\n // event. This enables us to handle when the node is deleted from the document while it is transitioning.\n // In that case, the cancel event would have nowhere to bubble to so we need to handle it directly.\n e.target.addEventListener('transitioncancel', onTransitionEnd);\n }\n transitions.add(e.propertyName);\n };\n let onTransitionEnd = e => {\n // Remove property from list of transitioning properties.\n let properties = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!properties) return;\n properties.delete(e.propertyName);\n // If empty, remove transitioncancel event, and remove the element from the list of transitioning elements.\n if (properties.size === 0) {\n e.target.removeEventListener('transitioncancel', onTransitionEnd);\n $bbed8b41f857bcc0$var$transitionsByElement.delete(e.target);\n }\n // If no transitioning elements, call all of the queued callbacks.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) {\n for (let cb of $bbed8b41f857bcc0$var$transitionCallbacks) cb();\n $bbed8b41f857bcc0$var$transitionCallbacks.clear();\n }\n };\n document.body.addEventListener('transitionrun', onTransitionStart);\n document.body.addEventListener('transitionend', onTransitionEnd);\n}\nif (typeof document !== 'undefined') {\n if (document.readyState !== 'loading') $bbed8b41f857bcc0$var$setupGlobalEvents();else document.addEventListener('DOMContentLoaded', $bbed8b41f857bcc0$var$setupGlobalEvents);\n}\nfunction $bbed8b41f857bcc0$export$24490316f764c430(fn) {\n // Wait one frame to see if an animation starts, e.g. a transition on mount.\n requestAnimationFrame(() => {\n // If no transitions are running, call the function immediately.\n // Otherwise, add it to a list of callbacks to run at the end of the animation.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) fn();else $bbed8b41f857bcc0$var$transitionCallbacks.add(fn);\n });\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $03deb23ff14920c4$export$4eaf04e54aa8eed6() {\n let globalListeners = useRef(new Map());\n let addGlobalListener = useCallback((eventTarget, type, listener, options) => {\n // Make sure we remove the listener after it is called with the `once` option.\n let fn = (options === null || options === void 0 ? void 0 : options.once) ? function () {\n globalListeners.current.delete(listener);\n listener(...arguments);\n } : listener;\n globalListeners.current.set(listener, {\n type: type,\n eventTarget: eventTarget,\n fn: fn,\n options: options\n });\n eventTarget.addEventListener(type, listener, options);\n }, []);\n let removeGlobalListener = useCallback((eventTarget, type, listener, options) => {\n var _globalListeners_current_get;\n let fn = ((_globalListeners_current_get = globalListeners.current.get(listener)) === null || _globalListeners_current_get === void 0 ? void 0 : _globalListeners_current_get.fn) || listener;\n eventTarget.removeEventListener(type, fn, options);\n globalListeners.current.delete(listener);\n }, []);\n let removeAllGlobalListeners = useCallback(() => {\n globalListeners.current.forEach((value, key) => {\n removeGlobalListener(value.eventTarget, value.type, key, value.options);\n });\n }, [removeGlobalListener]);\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return removeAllGlobalListeners;\n }, [removeAllGlobalListeners]);\n return {\n addGlobalListener: addGlobalListener,\n removeGlobalListener: removeGlobalListener,\n removeAllGlobalListeners: removeAllGlobalListeners\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $313b98861ee5dd6c$export$d6875122194c7b44(props, defaultLabel) {\n let {\n id: id,\n 'aria-label': label,\n 'aria-labelledby': labelledBy\n } = props;\n // If there is both an aria-label and aria-labelledby,\n // combine them by pointing to the element itself.\n id = $bdb11010cef70236$export$f680877a34711e37(id);\n if (labelledBy && label) {\n let ids = new Set([id, ...labelledBy.trim().split(/\\s+/)]);\n labelledBy = [...ids].join(' ');\n } else if (labelledBy) labelledBy = labelledBy.trim().split(/\\s+/).join(' ');\n // If no labels are provided, use the default\n if (!label && !labelledBy && defaultLabel) label = defaultLabel;\n return {\n id: id,\n 'aria-label': label,\n 'aria-labelledby': labelledBy\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref) {\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n if (context && context.ref && ref) {\n context.ref.current = ref.current;\n return () => {\n context.ref.current = null;\n };\n }\n }, [context, ref]);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $62d8ded9296f3872$export$cfa2225e87938781(node) {\n if ($62d8ded9296f3872$export$2bb74740c4e19def(node)) node = node.parentElement;\n while (node && !$62d8ded9296f3872$export$2bb74740c4e19def(node)) node = node.parentElement;\n return node || document.scrollingElement || document.documentElement;\n}\nfunction $62d8ded9296f3872$export$2bb74740c4e19def(node) {\n let style = window.getComputedStyle(node);\n return /(auto|scroll)/.test(style.overflow + style.overflowX + style.overflowY);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nlet $ef06256079686ba0$var$descriptionId = 0;\nconst $ef06256079686ba0$var$descriptionNodes = new Map();\nfunction $ef06256079686ba0$export$f8aeda7b10753fa1(description) {\n let [id, setId] = useState(undefined);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n if (!description) return;\n let desc = $ef06256079686ba0$var$descriptionNodes.get(description);\n if (!desc) {\n let id = `react-aria-description-${$ef06256079686ba0$var$descriptionId++}`;\n setId(id);\n let node = document.createElement('div');\n node.id = id;\n node.style.display = 'none';\n node.textContent = description;\n document.body.appendChild(node);\n desc = {\n refCount: 0,\n element: node\n };\n $ef06256079686ba0$var$descriptionNodes.set(description, desc);\n } else setId(desc.element.id);\n desc.refCount++;\n return () => {\n if (--desc.refCount === 0) {\n desc.element.remove();\n $ef06256079686ba0$var$descriptionNodes.delete(description);\n }\n };\n }, [description]);\n return {\n 'aria-describedby': description ? id : undefined\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $c87311424ea30a05$var$testUserAgent(re) {\n var _window_navigator_userAgentData;\n if (typeof window === 'undefined' || window.navigator == null) return false;\n return ((_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.brands.some(brand => re.test(brand.brand))) || re.test(window.navigator.userAgent);\n}\nfunction $c87311424ea30a05$var$testPlatform(re) {\n var _window_navigator_userAgentData;\n return typeof window !== 'undefined' && window.navigator != null ? re.test(((_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.platform) || window.navigator.platform) : false;\n}\nfunction $c87311424ea30a05$export$9ac100e40613ea10() {\n return $c87311424ea30a05$var$testPlatform(/^Mac/i);\n}\nfunction $c87311424ea30a05$export$186c6964ca17d99() {\n return $c87311424ea30a05$var$testPlatform(/^iPhone/i);\n}\nfunction $c87311424ea30a05$export$7bef049ce92e4224() {\n return $c87311424ea30a05$var$testPlatform(/^iPad/i) ||\n // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.\n $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1;\n}\nfunction $c87311424ea30a05$export$fedb369cb70207f1() {\n return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224();\n}\nfunction $c87311424ea30a05$export$e1865c3bedcd822b() {\n return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1();\n}\nfunction $c87311424ea30a05$export$78551043582a6a98() {\n return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e();\n}\nfunction $c87311424ea30a05$export$6446a186d09e379e() {\n return $c87311424ea30a05$var$testUserAgent(/Chrome/i);\n}\nfunction $c87311424ea30a05$export$a11b0059900ceec8() {\n return $c87311424ea30a05$var$testUserAgent(/Android/i);\n}\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $e9faafb641e167db$export$90fc3a17d93f704c(ref, event, handler, options) {\n let handleEvent = $8ae05eaa5c114e9c$export$7f54fc3180508a52(handler);\n let isDisabled = handler == null;\n useEffect(() => {\n if (isDisabled) return;\n let element = ref.current;\n element.addEventListener(event, handleEvent, options);\n return () => {\n element.removeEventListener(event, handleEvent, options);\n };\n }, [ref, event, options, isDisabled, handleEvent]);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollView, element) {\n let offsetX = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'left');\n let offsetY = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'top');\n let width = element.offsetWidth;\n let height = element.offsetHeight;\n let x = scrollView.scrollLeft;\n let y = scrollView.scrollTop;\n // Account for top/left border offsetting the scroll top/Left\n let {\n borderTopWidth: borderTopWidth,\n borderLeftWidth: borderLeftWidth\n } = getComputedStyle(scrollView);\n let borderAdjustedX = scrollView.scrollLeft + parseInt(borderLeftWidth, 10);\n let borderAdjustedY = scrollView.scrollTop + parseInt(borderTopWidth, 10);\n // Ignore end/bottom border via clientHeight/Width instead of offsetHeight/Width\n let maxX = borderAdjustedX + scrollView.clientWidth;\n let maxY = borderAdjustedY + scrollView.clientHeight;\n if (offsetX <= x) x = offsetX - parseInt(borderLeftWidth, 10);else if (offsetX + width > maxX) x += offsetX + width - maxX;\n if (offsetY <= borderAdjustedY) y = offsetY - parseInt(borderTopWidth, 10);else if (offsetY + height > maxY) y += offsetY + height - maxY;\n scrollView.scrollLeft = x;\n scrollView.scrollTop = y;\n}\n/**\n * Computes the offset left or top from child to ancestor by accumulating\n * offsetLeft or offsetTop through intervening offsetParents.\n */\nfunction $2f04cbc44ee30ce0$var$relativeOffset(ancestor, child, axis) {\n const prop = axis === 'left' ? 'offsetLeft' : 'offsetTop';\n let sum = 0;\n while (child.offsetParent) {\n sum += child[prop];\n if (child.offsetParent === ancestor) break;else if (child.offsetParent.contains(ancestor)) {\n // If the ancestor is not `position:relative`, then we stop at\n // _its_ offset parent, and we subtract off _its_ offset, so that\n // we end up with the proper offset from child to ancestor.\n sum -= ancestor[prop];\n break;\n }\n child = child.offsetParent;\n }\n return sum;\n}\nfunction $2f04cbc44ee30ce0$export$c826860796309d1b(targetElement, opts) {\n if (document.contains(targetElement)) {\n let root = document.scrollingElement || document.documentElement;\n let isScrollPrevented = window.getComputedStyle(root).overflow === 'hidden';\n // If scrolling is not currently prevented then we aren’t in a overlay nor is a overlay open, just use element.scrollIntoView to bring the element into view\n if (!isScrollPrevented) {\n var\n // use scrollIntoView({block: 'nearest'}) instead of .focus to check if the element is fully in view or not since .focus()\n // won't cause a scroll if the element is already focused and doesn't behave consistently when an element is partially out of view horizontally vs vertically\n _targetElement_scrollIntoView;\n let {\n left: originalLeft,\n top: originalTop\n } = targetElement.getBoundingClientRect();\n targetElement === null || targetElement === void 0 ? void 0 : (_targetElement_scrollIntoView = targetElement.scrollIntoView) === null || _targetElement_scrollIntoView === void 0 ? void 0 : _targetElement_scrollIntoView.call(targetElement, {\n block: 'nearest'\n });\n let {\n left: newLeft,\n top: newTop\n } = targetElement.getBoundingClientRect();\n // Account for sub pixel differences from rounding\n if (Math.abs(originalLeft - newLeft) > 1 || Math.abs(originalTop - newTop) > 1) {\n var _opts_containingElement, _opts_containingElement_scrollIntoView, _targetElement_scrollIntoView1;\n opts === null || opts === void 0 ? void 0 : (_opts_containingElement = opts.containingElement) === null || _opts_containingElement === void 0 ? void 0 : (_opts_containingElement_scrollIntoView = _opts_containingElement.scrollIntoView) === null || _opts_containingElement_scrollIntoView === void 0 ? void 0 : _opts_containingElement_scrollIntoView.call(_opts_containingElement, {\n block: 'center',\n inline: 'center'\n });\n (_targetElement_scrollIntoView1 = targetElement.scrollIntoView) === null || _targetElement_scrollIntoView1 === void 0 ? void 0 : _targetElement_scrollIntoView1.call(targetElement, {\n block: 'nearest'\n });\n }\n } else {\n let scrollParent = $62d8ded9296f3872$export$cfa2225e87938781(targetElement);\n // If scrolling is prevented, we don't want to scroll the body since it might move the overlay partially offscreen and the user can't scroll it back into view.\n while (targetElement && scrollParent && targetElement !== root && scrollParent !== root) {\n $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollParent, targetElement);\n targetElement = scrollParent;\n scrollParent = $62d8ded9296f3872$export$cfa2225e87938781(targetElement);\n }\n }\n }\n}\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $6a7db85432448f7f$export$60278871457622de(event) {\n // JAWS/NVDA with Firefox.\n if (event.mozInputSource === 0 && event.isTrusted) return true;\n // Android TalkBack's detail value varies depending on the event listener providing the event so we have specific logic here instead\n // If pointerType is defined, event is from a click listener. For events from mousedown listener, detail === 0 is a sufficient check\n // to detect TalkBack virtual clicks.\n if ($c87311424ea30a05$export$a11b0059900ceec8() && event.pointerType) return event.type === 'click' && event.buttons === 1;\n return event.detail === 0 && !event.pointerType;\n}\nfunction $6a7db85432448f7f$export$29bf1b5f2c56cf63(event) {\n // If the pointer size is zero, then we assume it's from a screen reader.\n // Android TalkBack double tap will sometimes return a event with width and height of 1\n // and pointerType === 'mouse' so we need to check for a specific combination of event attributes.\n // Cannot use \"event.pressure === 0\" as the sole check due to Safari pointer events always returning pressure === 0\n // instead of .5, see https://bugs.webkit.org/show_bug.cgi?id=206216. event.pointerType === 'mouse' is to distingush\n // Talkback double tap from Windows Firefox touch screen press\n return !$c87311424ea30a05$export$a11b0059900ceec8() && event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse';\n}\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $99facab73266f662$export$5add1d006293d136(ref, initialValue, onReset) {\n let resetValue = useRef(initialValue);\n let handleReset = $8ae05eaa5c114e9c$export$7f54fc3180508a52(() => {\n if (onReset) onReset(resetValue.current);\n });\n useEffect(() => {\n var _ref_current;\n let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;\n form === null || form === void 0 ? void 0 : form.addEventListener('reset', handleReset);\n return () => {\n form === null || form === void 0 ? void 0 : form.removeEventListener('reset', handleReset);\n };\n }, [ref, handleReset]);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n// Note that state only matters here for iOS. Non-iOS gets user-select: none applied to the target element\n// rather than at the document level so we just need to apply/remove user-select: none for each pressed element individually\nlet $14c0b72509d70225$var$state = 'default';\nlet $14c0b72509d70225$var$savedUserSelect = '';\nlet $14c0b72509d70225$var$modifiedElementMap = new WeakMap();\nfunction $14c0b72509d70225$export$16a4697467175487(target) {\n if ($c87311424ea30a05$export$fedb369cb70207f1()) {\n if ($14c0b72509d70225$var$state === 'default') {\n $14c0b72509d70225$var$savedUserSelect = document.documentElement.style.webkitUserSelect;\n document.documentElement.style.webkitUserSelect = 'none';\n }\n $14c0b72509d70225$var$state = 'disabled';\n } else if (target instanceof HTMLElement || target instanceof SVGElement) {\n // If not iOS, store the target's original user-select and change to user-select: none\n // Ignore state since it doesn't apply for non iOS\n $14c0b72509d70225$var$modifiedElementMap.set(target, target.style.userSelect);\n target.style.userSelect = 'none';\n }\n}\nfunction $14c0b72509d70225$export$b0d6fa1ab32e3295(target) {\n if ($c87311424ea30a05$export$fedb369cb70207f1()) {\n // If the state is already default, there's nothing to do.\n // If it is restoring, then there's no need to queue a second restore.\n if ($14c0b72509d70225$var$state !== 'disabled') return;\n $14c0b72509d70225$var$state = 'restoring';\n // There appears to be a delay on iOS where selection still might occur\n // after pointer up, so wait a bit before removing user-select.\n setTimeout(() => {\n // Wait for any CSS transitions to complete so we don't recompute style\n // for the whole page in the middle of the animation and cause jank.\n $bbed8b41f857bcc0$export$24490316f764c430(() => {\n // Avoid race conditions\n if ($14c0b72509d70225$var$state === 'restoring') {\n if (document.documentElement.style.webkitUserSelect === 'none') document.documentElement.style.webkitUserSelect = $14c0b72509d70225$var$savedUserSelect || '';\n $14c0b72509d70225$var$savedUserSelect = '';\n $14c0b72509d70225$var$state = 'default';\n }\n });\n }, 300);\n } else if (target instanceof HTMLElement || target instanceof SVGElement) {\n // If not iOS, restore the target's original user-select if any\n // Ignore state since it doesn't apply for non iOS\n if (target && $14c0b72509d70225$var$modifiedElementMap.has(target)) {\n let targetOldUserSelect = $14c0b72509d70225$var$modifiedElementMap.get(target);\n if (target.style.userSelect === 'none') target.style.userSelect = targetOldUserSelect;\n if (target.getAttribute('style') === '') target.removeAttribute('style');\n $14c0b72509d70225$var$modifiedElementMap.delete(target);\n }\n }\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nconst $ae1eeba8b9eafd08$export$5165eccb35aaadb5 = /*#__PURE__*/$73SJx$react.createContext(null);\n$ae1eeba8b9eafd08$export$5165eccb35aaadb5.displayName = 'PressResponderContext';\nfunction $f6c31cce2adf654f$var$usePressResponderContext(props) {\n // Consume context from and merge with props.\n let context = useContext($ae1eeba8b9eafd08$export$5165eccb35aaadb5);\n if (context) {\n let {\n register: register,\n ...contextProps\n } = context;\n props = $3ef42575df84b30b$export$9d1611c77c2fe928(contextProps, props);\n register();\n }\n $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, props.ref);\n return props;\n}\nvar $f6c31cce2adf654f$var$_shouldStopPropagation = /*#__PURE__*/new WeakMap();\nclass $f6c31cce2adf654f$var$PressEvent {\n continuePropagation() {\n _(this, $f6c31cce2adf654f$var$_shouldStopPropagation, false);\n }\n get shouldStopPropagation() {\n return _$1(this, $f6c31cce2adf654f$var$_shouldStopPropagation);\n }\n constructor(type, pointerType, originalEvent) {\n _$2(this, $f6c31cce2adf654f$var$_shouldStopPropagation, {\n writable: true,\n value: void 0\n });\n _(this, $f6c31cce2adf654f$var$_shouldStopPropagation, true);\n this.type = type;\n this.pointerType = pointerType;\n this.target = originalEvent.currentTarget;\n this.shiftKey = originalEvent.shiftKey;\n this.metaKey = originalEvent.metaKey;\n this.ctrlKey = originalEvent.ctrlKey;\n this.altKey = originalEvent.altKey;\n }\n}\nfunction $f6c31cce2adf654f$export$45712eceda6fad21(props) {\n let {\n onPress: onPress,\n onPressChange: onPressChange,\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n onPressUp: onPressUp,\n isDisabled: isDisabled,\n isPressed: isPressedProp,\n preventFocusOnPress: preventFocusOnPress,\n shouldCancelOnPointerExit: shouldCancelOnPointerExit,\n allowTextSelectionOnPress: allowTextSelectionOnPress,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n ref: _,\n ...domProps\n } = $f6c31cce2adf654f$var$usePressResponderContext(props);\n let [isPressed, setPressed] = useState(false);\n let ref = useRef({\n isPressed: false,\n ignoreEmulatedMouseEvents: false,\n ignoreClickAfterPress: false,\n didFirePressStart: false,\n activePointerId: null,\n target: null,\n isOverTarget: false,\n pointerType: null\n });\n let {\n addGlobalListener: addGlobalListener,\n removeAllGlobalListeners: removeAllGlobalListeners\n } = $03deb23ff14920c4$export$4eaf04e54aa8eed6();\n let triggerPressStart = $8ae05eaa5c114e9c$export$7f54fc3180508a52((originalEvent, pointerType) => {\n let state = ref.current;\n if (isDisabled || state.didFirePressStart) return;\n let shouldStopPropagation = true;\n if (onPressStart) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressstart', pointerType, originalEvent);\n onPressStart(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(true);\n state.didFirePressStart = true;\n setPressed(true);\n return shouldStopPropagation;\n });\n let triggerPressEnd = $8ae05eaa5c114e9c$export$7f54fc3180508a52(function (originalEvent, pointerType) {\n let wasPressed = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n let state = ref.current;\n if (!state.didFirePressStart) return;\n state.ignoreClickAfterPress = true;\n state.didFirePressStart = false;\n let shouldStopPropagation = true;\n if (onPressEnd) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressend', pointerType, originalEvent);\n onPressEnd(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(false);\n setPressed(false);\n if (onPress && wasPressed && !isDisabled) {\n let event = new $f6c31cce2adf654f$var$PressEvent('press', pointerType, originalEvent);\n onPress(event);\n shouldStopPropagation && (shouldStopPropagation = event.shouldStopPropagation);\n }\n return shouldStopPropagation;\n });\n let triggerPressUp = $8ae05eaa5c114e9c$export$7f54fc3180508a52((originalEvent, pointerType) => {\n if (isDisabled) return;\n if (onPressUp) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressup', pointerType, originalEvent);\n onPressUp(event);\n return event.shouldStopPropagation;\n }\n return true;\n });\n let cancel = $8ae05eaa5c114e9c$export$7f54fc3180508a52(e => {\n let state = ref.current;\n if (state.isPressed) {\n if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n }\n });\n let cancelOnPointerExit = $8ae05eaa5c114e9c$export$7f54fc3180508a52(e => {\n if (shouldCancelOnPointerExit) cancel(e);\n });\n let pressProps = useMemo(() => {\n let state = ref.current;\n let pressProps = {\n onKeyDown(e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && e.currentTarget.contains(e.target)) {\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(e.target, e.key)) e.preventDefault();\n // If the event is repeating, it may have started on a different element\n // after which focus moved to the current element. Ignore these events and\n // only handle the first key down event.\n let shouldStopPropagation = true;\n if (!state.isPressed && !e.repeat) {\n state.target = e.currentTarget;\n state.isPressed = true;\n shouldStopPropagation = triggerPressStart(e, 'keyboard');\n // Focus may move before the key up event, so register the event on the document\n // instead of the same element where the key down event occurred.\n addGlobalListener(document, 'keyup', onKeyUp, false);\n }\n if (shouldStopPropagation) e.stopPropagation();\n } else if (e.key === 'Enter' && $f6c31cce2adf654f$var$isHTMLAnchorLink(e.currentTarget))\n // If the target is a link, we won't have handled this above because we want the default\n // browser behavior to open the link when pressing Enter. But we still need to prevent\n // default so that elements above do not also handle it (e.g. table row).\n e.stopPropagation();\n },\n onKeyUp(e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && !e.repeat && e.currentTarget.contains(e.target)) triggerPressUp($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard');\n },\n onClick(e) {\n if (e && !e.currentTarget.contains(e.target)) return;\n if (e && e.button === 0) {\n let shouldStopPropagation = true;\n if (isDisabled) e.preventDefault();\n // If triggered from a screen reader or by using element.click(),\n // trigger as if it were a keyboard click.\n if (!state.ignoreClickAfterPress && !state.ignoreEmulatedMouseEvents && (state.pointerType === 'virtual' || $6a7db85432448f7f$export$60278871457622de(e.nativeEvent))) {\n // Ensure the element receives focus (VoiceOver on iOS does not do this)\n if (!isDisabled && !preventFocusOnPress) $7215afc6de606d6b$export$de79e2c695e052f3(e.currentTarget);\n let stopPressStart = triggerPressStart(e, 'virtual');\n let stopPressUp = triggerPressUp(e, 'virtual');\n let stopPressEnd = triggerPressEnd(e, 'virtual');\n shouldStopPropagation = stopPressStart && stopPressUp && stopPressEnd;\n }\n state.ignoreEmulatedMouseEvents = false;\n state.ignoreClickAfterPress = false;\n if (shouldStopPropagation) e.stopPropagation();\n }\n }\n };\n let onKeyUp = e => {\n if (state.isPressed && $f6c31cce2adf654f$var$isValidKeyboardEvent(e, state.target)) {\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(e.target, e.key)) e.preventDefault();\n state.isPressed = false;\n let target = e.target;\n let shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard', state.target.contains(target));\n removeAllGlobalListeners();\n if (shouldStopPropagation) e.stopPropagation();\n // If the target is a link, trigger the click method to open the URL,\n // but defer triggering pressEnd until onClick event handler.\n if (state.target instanceof HTMLElement && state.target.contains(target) && ($f6c31cce2adf654f$var$isHTMLAnchorLink(state.target) || state.target.getAttribute('role') === 'link')) state.target.click();\n }\n };\n if (typeof PointerEvent !== 'undefined') {\n pressProps.onPointerDown = e => {\n // Only handle left clicks, and ignore events that bubbled through portals.\n if (e.button !== 0 || !e.currentTarget.contains(e.target)) return;\n // iOS safari fires pointer events from VoiceOver with incorrect coordinates/target.\n // Ignore and let the onClick handler take care of it instead.\n // https://bugs.webkit.org/show_bug.cgi?id=222627\n // https://bugs.webkit.org/show_bug.cgi?id=223202\n if ($6a7db85432448f7f$export$29bf1b5f2c56cf63(e.nativeEvent)) {\n state.pointerType = 'virtual';\n return;\n }\n // Due to browser inconsistencies, especially on mobile browsers, we prevent\n // default on pointer down and handle focusing the pressable element ourselves.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n state.pointerType = e.pointerType;\n let shouldStopPropagation = true;\n if (!state.isPressed) {\n state.isPressed = true;\n state.isOverTarget = true;\n state.activePointerId = e.pointerId;\n state.target = e.currentTarget;\n if (!isDisabled && !preventFocusOnPress) $7215afc6de606d6b$export$de79e2c695e052f3(e.currentTarget);\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$16a4697467175487(state.target);\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n addGlobalListener(document, 'pointermove', onPointerMove, false);\n addGlobalListener(document, 'pointerup', onPointerUp, false);\n addGlobalListener(document, 'pointercancel', onPointerCancel, false);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseDown = e => {\n if (!e.currentTarget.contains(e.target)) return;\n if (e.button === 0) {\n // Chrome and Firefox on touch Windows devices require mouse down events\n // to be canceled in addition to pointer events, or an extra asynchronous\n // focus event will be fired.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n e.stopPropagation();\n }\n };\n pressProps.onPointerUp = e => {\n // iOS fires pointerup with zero width and height, so check the pointerType recorded during pointerdown.\n if (!e.currentTarget.contains(e.target) || state.pointerType === 'virtual') return;\n // Only handle left clicks\n // Safari on iOS sometimes fires pointerup events, even\n // when the touch isn't over the target, so double check.\n if (e.button === 0 && $f6c31cce2adf654f$var$isOverTarget(e, e.currentTarget)) triggerPressUp(e, state.pointerType || e.pointerType);\n };\n // Safari on iOS < 13.2 does not implement pointerenter/pointerleave events correctly.\n // Use pointer move events instead to implement our own hit testing.\n // See https://bugs.webkit.org/show_bug.cgi?id=199803\n let onPointerMove = e => {\n if (e.pointerId !== state.activePointerId) return;\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) {\n if (!state.isOverTarget) {\n state.isOverTarget = true;\n triggerPressStart($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n }\n } else if (state.isOverTarget) {\n state.isOverTarget = false;\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n cancelOnPointerExit(e);\n }\n };\n let onPointerUp = e => {\n if (e.pointerId === state.activePointerId && state.isPressed && e.button === 0) {\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);else if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n }\n };\n let onPointerCancel = e => {\n cancel(e);\n };\n pressProps.onDragStart = e => {\n if (!e.currentTarget.contains(e.target)) return;\n // Safari does not call onPointerCancel when a drag starts, whereas Chrome and Firefox do.\n cancel(e);\n };\n } else {\n pressProps.onMouseDown = e => {\n // Only handle left clicks\n if (e.button !== 0 || !e.currentTarget.contains(e.target)) return;\n // Due to browser inconsistencies, especially on mobile browsers, we prevent\n // default on mouse down and handle focusing the pressable element ourselves.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n if (state.ignoreEmulatedMouseEvents) {\n e.stopPropagation();\n return;\n }\n state.isPressed = true;\n state.isOverTarget = true;\n state.target = e.currentTarget;\n state.pointerType = $6a7db85432448f7f$export$60278871457622de(e.nativeEvent) ? 'virtual' : 'mouse';\n if (!isDisabled && !preventFocusOnPress) $7215afc6de606d6b$export$de79e2c695e052f3(e.currentTarget);\n let shouldStopPropagation = triggerPressStart(e, state.pointerType);\n if (shouldStopPropagation) e.stopPropagation();\n addGlobalListener(document, 'mouseup', onMouseUp, false);\n };\n pressProps.onMouseEnter = e => {\n if (!e.currentTarget.contains(e.target)) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseLeave = e => {\n if (!e.currentTarget.contains(e.target)) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd(e, state.pointerType, false);\n cancelOnPointerExit(e);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseUp = e => {\n if (!e.currentTarget.contains(e.target)) return;\n if (!state.ignoreEmulatedMouseEvents && e.button === 0) triggerPressUp(e, state.pointerType);\n };\n let onMouseUp = e => {\n // Only handle left clicks\n if (e.button !== 0) return;\n state.isPressed = false;\n removeAllGlobalListeners();\n if (state.ignoreEmulatedMouseEvents) {\n state.ignoreEmulatedMouseEvents = false;\n return;\n }\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);else if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isOverTarget = false;\n };\n pressProps.onTouchStart = e => {\n if (!e.currentTarget.contains(e.target)) return;\n let touch = $f6c31cce2adf654f$var$getTouchFromEvent(e.nativeEvent);\n if (!touch) return;\n state.activePointerId = touch.identifier;\n state.ignoreEmulatedMouseEvents = true;\n state.isOverTarget = true;\n state.isPressed = true;\n state.target = e.currentTarget;\n state.pointerType = 'touch';\n // Due to browser inconsistencies, especially on mobile browsers, we prevent default\n // on the emulated mouse event and handle focusing the pressable element ourselves.\n if (!isDisabled && !preventFocusOnPress) $7215afc6de606d6b$export$de79e2c695e052f3(e.currentTarget);\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$16a4697467175487(state.target);\n let shouldStopPropagation = triggerPressStart(e, state.pointerType);\n if (shouldStopPropagation) e.stopPropagation();\n addGlobalListener(window, 'scroll', onScroll, true);\n };\n pressProps.onTouchMove = e => {\n if (!e.currentTarget.contains(e.target)) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n if (!state.isOverTarget) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n }\n } else if (state.isOverTarget) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd(e, state.pointerType, false);\n cancelOnPointerExit(e);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onTouchEnd = e => {\n if (!e.currentTarget.contains(e.target)) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n triggerPressUp(e, state.pointerType);\n shouldStopPropagation = triggerPressEnd(e, state.pointerType);\n } else if (state.isOverTarget) shouldStopPropagation = triggerPressEnd(e, state.pointerType, false);\n if (shouldStopPropagation) e.stopPropagation();\n state.isPressed = false;\n state.activePointerId = null;\n state.isOverTarget = false;\n state.ignoreEmulatedMouseEvents = true;\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n removeAllGlobalListeners();\n };\n pressProps.onTouchCancel = e => {\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (state.isPressed) cancel(e);\n };\n let onScroll = e => {\n if (state.isPressed && e.target.contains(state.target)) cancel({\n currentTarget: state.target,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false,\n altKey: false\n });\n };\n pressProps.onDragStart = e => {\n if (!e.currentTarget.contains(e.target)) return;\n cancel(e);\n };\n }\n return pressProps;\n }, [addGlobalListener, isDisabled, preventFocusOnPress, removeAllGlobalListeners, allowTextSelectionOnPress, cancel, cancelOnPointerExit, triggerPressEnd, triggerPressStart, triggerPressUp]);\n // Remove user-select: none in case component unmounts immediately after pressStart\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return () => {\n if (!allowTextSelectionOnPress)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n $14c0b72509d70225$export$b0d6fa1ab32e3295(ref.current.target);\n };\n }, [allowTextSelectionOnPress]);\n return {\n isPressed: isPressedProp || isPressed,\n pressProps: $3ef42575df84b30b$export$9d1611c77c2fe928(domProps, pressProps)\n };\n}\nfunction $f6c31cce2adf654f$var$isHTMLAnchorLink(target) {\n return target.tagName === 'A' && target.hasAttribute('href');\n}\nfunction $f6c31cce2adf654f$var$isValidKeyboardEvent(event, currentTarget) {\n const {\n key: key,\n code: code\n } = event;\n const element = currentTarget;\n const role = element.getAttribute('role');\n // Accessibility for keyboards. Space and Enter only.\n // \"Spacebar\" is for IE 11\n return (key === 'Enter' || key === ' ' || key === 'Spacebar' || code === 'Space') && !(element instanceof HTMLInputElement && !$f6c31cce2adf654f$var$isValidInputKey(element, key) || element instanceof HTMLTextAreaElement || element.isContentEditable) && (\n // A link with a valid href should be handled natively,\n // unless it also has role='button' and was triggered using Space.\n !$f6c31cce2adf654f$var$isHTMLAnchorLink(element) || role === 'button' && key !== 'Enter') &&\n // An element with role='link' should only trigger with Enter key\n !(role === 'link' && key !== 'Enter');\n}\nfunction $f6c31cce2adf654f$var$getTouchFromEvent(event) {\n const {\n targetTouches: targetTouches\n } = event;\n if (targetTouches.length > 0) return targetTouches[0];\n return null;\n}\nfunction $f6c31cce2adf654f$var$getTouchById(event, pointerId) {\n const changedTouches = event.changedTouches;\n for (let i = 0; i < changedTouches.length; i++) {\n const touch = changedTouches[i];\n if (touch.identifier === pointerId) return touch;\n }\n return null;\n}\nfunction $f6c31cce2adf654f$var$createEvent(target, e) {\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey\n };\n}\nfunction $f6c31cce2adf654f$var$getPointClientRect(point) {\n let offsetX = point.width / 2 || point.radiusX || 0;\n let offsetY = point.height / 2 || point.radiusY || 0;\n return {\n top: point.clientY - offsetY,\n right: point.clientX + offsetX,\n bottom: point.clientY + offsetY,\n left: point.clientX - offsetX\n };\n}\nfunction $f6c31cce2adf654f$var$areRectanglesOverlapping(a, b) {\n // check if they cannot overlap on x axis\n if (a.left > b.right || b.left > a.right) return false;\n // check if they cannot overlap on y axis\n if (a.top > b.bottom || b.top > a.bottom) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$isOverTarget(point, target) {\n let rect = target.getBoundingClientRect();\n let pointRect = $f6c31cce2adf654f$var$getPointClientRect(point);\n return $f6c31cce2adf654f$var$areRectanglesOverlapping(rect, pointRect);\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefault(target) {\n // We cannot prevent default if the target is a draggable element.\n return !(target instanceof HTMLElement) || !target.draggable;\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(target, key) {\n if (target instanceof HTMLInputElement) return !$f6c31cce2adf654f$var$isValidInputKey(target, key);\n if (target instanceof HTMLButtonElement) return target.type !== 'submit' && target.type !== 'reset';\n return true;\n}\nconst $f6c31cce2adf654f$var$nonTextInputTypes = new Set(['checkbox', 'radio', 'range', 'color', 'file', 'image', 'button', 'submit', 'reset']);\nfunction $f6c31cce2adf654f$var$isValidInputKey(target, key) {\n // Only space should toggle checkboxes and radios, not enter.\n return target.type === 'checkbox' || target.type === 'radio' ? key === ' ' : $f6c31cce2adf654f$var$nonTextInputTypes.has(target.type);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nclass $8a9cb279dc87e130$export$905e7fc544a71f36 {\n isDefaultPrevented() {\n return this.nativeEvent.defaultPrevented;\n }\n preventDefault() {\n this.defaultPrevented = true;\n this.nativeEvent.preventDefault();\n }\n stopPropagation() {\n this.nativeEvent.stopPropagation();\n this.isPropagationStopped = () => true;\n }\n isPropagationStopped() {\n return false;\n }\n persist() {}\n constructor(type, nativeEvent) {\n this.nativeEvent = nativeEvent;\n this.target = nativeEvent.target;\n this.currentTarget = nativeEvent.currentTarget;\n this.relatedTarget = nativeEvent.relatedTarget;\n this.bubbles = nativeEvent.bubbles;\n this.cancelable = nativeEvent.cancelable;\n this.defaultPrevented = nativeEvent.defaultPrevented;\n this.eventPhase = nativeEvent.eventPhase;\n this.isTrusted = nativeEvent.isTrusted;\n this.timeStamp = nativeEvent.timeStamp;\n this.type = type;\n }\n}\nfunction $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {\n let stateRef = useRef({\n isFocused: false,\n observer: null\n });\n // Clean up MutationObserver on unmount. See below.\n // eslint-disable-next-line arrow-body-style\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {\n const state = stateRef.current;\n return () => {\n if (state.observer) {\n state.observer.disconnect();\n state.observer = null;\n }\n };\n }, []);\n let dispatchBlur = $8ae05eaa5c114e9c$export$7f54fc3180508a52(e => {\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n });\n // This function is called during a React onFocus event.\n return useCallback(e => {\n // React does not fire onBlur when an element is disabled. https://github.com/facebook/react/issues/9142\n // Most browsers fire a native focusout event in this case, except for Firefox. In that case, we use a\n // MutationObserver to watch for the disabled attribute, and dispatch these events ourselves.\n // For browsers that do, focusout fires before the MutationObserver, so onBlur should not fire twice.\n if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {\n stateRef.current.isFocused = true;\n let target = e.target;\n let onBlurHandler = e => {\n stateRef.current.isFocused = false;\n if (target.disabled)\n // For backward compatibility, dispatch a (fake) React synthetic event.\n dispatchBlur(new $8a9cb279dc87e130$export$905e7fc544a71f36('blur', e));\n // We no longer need the MutationObserver once the target is blurred.\n if (stateRef.current.observer) {\n stateRef.current.observer.disconnect();\n stateRef.current.observer = null;\n }\n };\n target.addEventListener('focusout', onBlurHandler, {\n once: true\n });\n stateRef.current.observer = new MutationObserver(() => {\n if (stateRef.current.isFocused && target.disabled) {\n stateRef.current.observer.disconnect();\n let relatedTargetEl = target === document.activeElement ? null : document.activeElement;\n target.dispatchEvent(new FocusEvent('blur', {\n relatedTarget: relatedTargetEl\n }));\n target.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true,\n relatedTarget: relatedTargetEl\n }));\n }\n });\n stateRef.current.observer.observe(target, {\n attributes: true,\n attributeFilter: ['disabled']\n });\n }\n }, [dispatchBlur]);\n}\nfunction $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {\n let {\n isDisabled: isDisabled,\n onFocus: onFocusProp,\n onBlur: onBlurProp,\n onFocusChange: onFocusChange\n } = props;\n const onBlur = useCallback(e => {\n if (e.target === e.currentTarget) {\n if (onBlurProp) onBlurProp(e);\n if (onFocusChange) onFocusChange(false);\n return true;\n }\n }, [onBlurProp, onFocusChange]);\n const onSyntheticFocus = $8a9cb279dc87e130$export$715c682d09d639cc(onBlur);\n const onFocus = useCallback(e => {\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n if (e.target === e.currentTarget && document.activeElement === e.target) {\n if (onFocusProp) onFocusProp(e);\n if (onFocusChange) onFocusChange(true);\n onSyntheticFocus(e);\n }\n }, [onFocusChange, onFocusProp, onSyntheticFocus]);\n return {\n focusProps: {\n onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : undefined,\n onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : undefined\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\nlet $507fabe10e71c6fb$var$currentModality = null;\nlet $507fabe10e71c6fb$var$changeHandlers = new Set();\nlet $507fabe10e71c6fb$var$hasSetupGlobalListeners = false;\nlet $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\nlet $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\nfunction $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {\n for (let handler of $507fabe10e71c6fb$var$changeHandlers) handler(modality, e);\n}\n/**\n * Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.\n */\nfunction $507fabe10e71c6fb$var$isValidKey(e) {\n // Control and Shift keys trigger when navigating back to the tab with keyboard.\n return !(e.metaKey || !$c87311424ea30a05$export$9ac100e40613ea10() && e.altKey || e.ctrlKey || e.key === 'Control' || e.key === 'Shift' || e.key === 'Meta');\n}\nfunction $507fabe10e71c6fb$var$handleKeyboardEvent(e) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n if ($507fabe10e71c6fb$var$isValidKey(e)) {\n $507fabe10e71c6fb$var$currentModality = 'keyboard';\n $507fabe10e71c6fb$var$triggerChangeHandlers('keyboard', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handlePointerEvent(e) {\n $507fabe10e71c6fb$var$currentModality = 'pointer';\n if (e.type === 'mousedown' || e.type === 'pointerdown') {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$triggerChangeHandlers('pointer', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handleClickEvent(e) {\n if ($6a7db85432448f7f$export$60278871457622de(e)) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n }\n}\nfunction $507fabe10e71c6fb$var$handleFocusEvent(e) {\n // Firefox fires two extra focus events when the user first clicks into an iframe:\n // first on the window, then on the document. We ignore these events so they don't\n // cause keyboard focus rings to appear.\n if (e.target === window || e.target === document) return;\n // If a focus event occurs without a preceding keyboard or pointer event, switch to virtual modality.\n // This occurs, for example, when navigating a form with the next/previous buttons on iOS.\n if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n $507fabe10e71c6fb$var$triggerChangeHandlers('virtual', e);\n }\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n}\nfunction $507fabe10e71c6fb$var$handleWindowBlur() {\n // When the window is blurred, reset state. This is necessary when tabbing out of the window,\n // for example, since a subsequent focus event won't be fired.\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;\n}\n/**\n * Setup global event listeners to control when keyboard focus style should be visible.\n */\nfunction $507fabe10e71c6fb$var$setupGlobalFocusEvents() {\n if (typeof window === 'undefined' || $507fabe10e71c6fb$var$hasSetupGlobalListeners) return;\n // Programmatic focus() calls shouldn't affect the current input modality.\n // However, we need to detect other cases when a focus event occurs without\n // a preceding user event (e.g. screen reader focus). Overriding the focus\n // method on HTMLElement.prototype is a bit hacky, but works.\n let focus = HTMLElement.prototype.focus;\n HTMLElement.prototype.focus = function () {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n focus.apply(this, arguments);\n };\n document.addEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n document.addEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n document.addEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n // Register focus events on the window so they are sure to happen\n // before React's event listeners (registered on the document).\n window.addEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n window.addEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n document.addEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else {\n document.addEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n $507fabe10e71c6fb$var$hasSetupGlobalListeners = true;\n}\nif (typeof document !== 'undefined') {\n if (document.readyState !== 'loading') $507fabe10e71c6fb$var$setupGlobalFocusEvents();else document.addEventListener('DOMContentLoaded', $507fabe10e71c6fb$var$setupGlobalFocusEvents);\n}\nfunction $507fabe10e71c6fb$export$b9b3dfddab17db27() {\n return $507fabe10e71c6fb$var$currentModality !== 'pointer';\n}\nfunction $507fabe10e71c6fb$export$630ff653c5ada6a9() {\n return $507fabe10e71c6fb$var$currentModality;\n}\nfunction $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {\n $507fabe10e71c6fb$var$currentModality = modality;\n $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);\n}\nfunction $507fabe10e71c6fb$export$98e20ec92f614cfe() {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n let [modality, setModality] = useState($507fabe10e71c6fb$var$currentModality);\n useEffect(() => {\n let handler = () => {\n setModality($507fabe10e71c6fb$var$currentModality);\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return () => {\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, []);\n return $b5e257d569688ac6$export$535bd6ca7f90a273() ? null : modality;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\nfunction $9ab94262bd0047c7$export$420e68273165f4ec(props) {\n let {\n isDisabled: isDisabled,\n onBlurWithin: onBlurWithin,\n onFocusWithin: onFocusWithin,\n onFocusWithinChange: onFocusWithinChange\n } = props;\n let state = useRef({\n isFocusWithin: false\n });\n let onBlur = useCallback(e => {\n // We don't want to trigger onBlurWithin and then immediately onFocusWithin again\n // when moving focus inside the element. Only trigger if the currentTarget doesn't\n // include the relatedTarget (where focus is moving).\n if (state.current.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {\n state.current.isFocusWithin = false;\n if (onBlurWithin) onBlurWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(false);\n }\n }, [onBlurWithin, onFocusWithinChange, state]);\n let onSyntheticFocus = $8a9cb279dc87e130$export$715c682d09d639cc(onBlur);\n let onFocus = useCallback(e => {\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n if (!state.current.isFocusWithin && document.activeElement === e.target) {\n if (onFocusWithin) onFocusWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(true);\n state.current.isFocusWithin = true;\n onSyntheticFocus(e);\n }\n }, [onFocusWithin, onFocusWithinChange, onSyntheticFocus]);\n if (isDisabled) return {\n focusWithinProps: {\n onFocus: null,\n onBlur: null\n }\n };\n return {\n focusWithinProps: {\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n// iOS fires onPointerEnter twice: once with pointerType=\"touch\" and again with pointerType=\"mouse\".\n// We want to ignore these emulated events so they do not trigger hover behavior.\n// See https://bugs.webkit.org/show_bug.cgi?id=214609.\nlet $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\nlet $6179b936705e76d3$var$hoverCount = 0;\nfunction $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;\n // Clear globalIgnoreEmulatedMouseEvents after a short timeout. iOS fires onPointerEnter\n // with pointerType=\"mouse\" immediately after onPointerUp and before onFocus. On other\n // devices that don't have this quirk, we don't want to ignore a mouse hover sometime in\n // the distant future because a user previously touched the element.\n setTimeout(() => {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\n }, 50);\n}\nfunction $6179b936705e76d3$var$handleGlobalPointerEvent(e) {\n if (e.pointerType === 'touch') $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();\n}\nfunction $6179b936705e76d3$var$setupGlobalTouchEvents() {\n if (typeof document === 'undefined') return;\n if (typeof PointerEvent !== 'undefined') document.addEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);else document.addEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n $6179b936705e76d3$var$hoverCount++;\n return () => {\n $6179b936705e76d3$var$hoverCount--;\n if ($6179b936705e76d3$var$hoverCount > 0) return;\n if (typeof PointerEvent !== 'undefined') document.removeEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);else document.removeEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n };\n}\nfunction $6179b936705e76d3$export$ae780daf29e6d456(props) {\n let {\n onHoverStart: onHoverStart,\n onHoverChange: onHoverChange,\n onHoverEnd: onHoverEnd,\n isDisabled: isDisabled\n } = props;\n let [isHovered, setHovered] = useState(false);\n let state = useRef({\n isHovered: false,\n ignoreEmulatedMouseEvents: false,\n pointerType: '',\n target: null\n }).current;\n useEffect($6179b936705e76d3$var$setupGlobalTouchEvents, []);\n let {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n } = useMemo(() => {\n let triggerHoverStart = (event, pointerType) => {\n state.pointerType = pointerType;\n if (isDisabled || pointerType === 'touch' || state.isHovered || !event.currentTarget.contains(event.target)) return;\n state.isHovered = true;\n let target = event.currentTarget;\n state.target = target;\n if (onHoverStart) onHoverStart({\n type: 'hoverstart',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(true);\n setHovered(true);\n };\n let triggerHoverEnd = (event, pointerType) => {\n state.pointerType = '';\n state.target = null;\n if (pointerType === 'touch' || !state.isHovered) return;\n state.isHovered = false;\n let target = event.currentTarget;\n if (onHoverEnd) onHoverEnd({\n type: 'hoverend',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(false);\n setHovered(false);\n };\n let hoverProps = {};\n if (typeof PointerEvent !== 'undefined') {\n hoverProps.onPointerEnter = e => {\n if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === 'mouse') return;\n triggerHoverStart(e, e.pointerType);\n };\n hoverProps.onPointerLeave = e => {\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, e.pointerType);\n };\n } else {\n hoverProps.onTouchStart = () => {\n state.ignoreEmulatedMouseEvents = true;\n };\n hoverProps.onMouseEnter = e => {\n if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, 'mouse');\n state.ignoreEmulatedMouseEvents = false;\n };\n hoverProps.onMouseLeave = e => {\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, 'mouse');\n };\n }\n return {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n };\n }, [onHoverStart, onHoverChange, onHoverEnd, isDisabled, state]);\n useEffect(() => {\n // Call the triggerHoverEnd as soon as isDisabled changes to true\n // Safe to call triggerHoverEnd, it will early return if we aren't currently hovering\n if (isDisabled) triggerHoverEnd({\n currentTarget: state.target\n }, state.pointerType);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isDisabled]);\n return {\n hoverProps: hoverProps,\n isHovered: isHovered\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $93925083ecbb358c$export$48d1ea6320830260(handler) {\n if (!handler) return;\n let shouldStopPropagation = true;\n return e => {\n // Mutates the original event object to support Preact because we aren't dealing\n // with synthetic events. The event object that Preact passes to this function\n // does not have very many of its \"own\" properties; rather, it inherits most of\n // its properties from KeyboardEvents, which means using the spread operator will\n // not transfer the properties to our new `event` object. If we were to either\n // try to copying the properties from the original event's prototype or using\n // that original event as the prototype of this new object, we would actually get\n // an illegal-invokation error as soon as we started using it.\n let event = Object.assign(e, {\n stopPropagation() {\n // console.error(\n // 'stopPropagation is now the default behavior for events in React Spectrum. You can use continuePropagation() to revert this behavior.'\n // );\n },\n continuePropagation() {\n shouldStopPropagation = false;\n }\n });\n handler(event);\n if (shouldStopPropagation) e.stopPropagation();\n };\n}\nfunction $46d819fcbaf35654$export$8f71654801c2f7cd(props) {\n return {\n keyboardProps: props.isDisabled ? {} : {\n onKeyDown: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyDown),\n onKeyUp: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyUp)\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nconst $8a26561d2877236e$var$DEFAULT_THRESHOLD = 500;\nfunction $8a26561d2877236e$export$c24ed0104d07eab9(props) {\n let {\n isDisabled: isDisabled,\n onLongPressStart: onLongPressStart,\n onLongPressEnd: onLongPressEnd,\n onLongPress: onLongPress,\n threshold = $8a26561d2877236e$var$DEFAULT_THRESHOLD,\n accessibilityDescription: accessibilityDescription\n } = props;\n const timeRef = useRef(null);\n let {\n addGlobalListener: addGlobalListener,\n removeGlobalListener: removeGlobalListener\n } = $03deb23ff14920c4$export$4eaf04e54aa8eed6();\n let {\n pressProps: pressProps\n } = $f6c31cce2adf654f$export$45712eceda6fad21({\n isDisabled: isDisabled,\n onPressStart(e) {\n e.continuePropagation();\n if (e.pointerType === 'mouse' || e.pointerType === 'touch') {\n if (onLongPressStart) onLongPressStart({\n ...e,\n type: 'longpressstart'\n });\n timeRef.current = setTimeout(() => {\n // Prevent other usePress handlers from also handling this event.\n e.target.dispatchEvent(new PointerEvent('pointercancel', {\n bubbles: true\n }));\n if (onLongPress) onLongPress({\n ...e,\n type: 'longpress'\n });\n timeRef.current = null;\n }, threshold);\n // Prevent context menu, which may be opened on long press on touch devices\n if (e.pointerType === 'touch') {\n let onContextMenu = e => {\n e.preventDefault();\n };\n addGlobalListener(e.target, 'contextmenu', onContextMenu, {\n once: true\n });\n addGlobalListener(window, 'pointerup', () => {\n // If no contextmenu event is fired quickly after pointerup, remove the handler\n // so future context menu events outside a long press are not prevented.\n setTimeout(() => {\n removeGlobalListener(e.target, 'contextmenu', onContextMenu);\n }, 30);\n }, {\n once: true\n });\n }\n }\n },\n onPressEnd(e) {\n if (timeRef.current) clearTimeout(timeRef.current);\n if (onLongPressEnd && (e.pointerType === 'mouse' || e.pointerType === 'touch')) onLongPressEnd({\n ...e,\n type: 'longpressend'\n });\n }\n });\n let descriptionProps = $ef06256079686ba0$export$f8aeda7b10753fa1(onLongPress && !isDisabled ? accessibilityDescription : null);\n return {\n longPressProps: $3ef42575df84b30b$export$9d1611c77c2fe928(pressProps, descriptionProps)\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the 'License');\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $6a99195332edec8b$export$80f3e147d781571c(element) {\n // If the user is interacting with a virtual cursor, e.g. screen reader, then\n // wait until after any animated transitions that are currently occurring on\n // the page before shifting focus. This avoids issues with VoiceOver on iOS\n // causing the page to scroll when moving focus if the element is transitioning\n // from off the screen.\n if ($507fabe10e71c6fb$export$630ff653c5ada6a9() === 'virtual') {\n let lastFocusedElement = document.activeElement;\n $bbed8b41f857bcc0$export$24490316f764c430(() => {\n // If focus did not move and the element is still in the document, focus it.\n if (document.activeElement === lastFocusedElement && document.contains(element)) $7215afc6de606d6b$export$de79e2c695e052f3(element);\n });\n } else $7215afc6de606d6b$export$de79e2c695e052f3(element);\n}\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $645f2e67b85a24c9$var$isStyleVisible(element) {\n if (!(element instanceof HTMLElement) && !(element instanceof SVGElement)) return false;\n let {\n display: display,\n visibility: visibility\n } = element.style;\n let isVisible = display !== 'none' && visibility !== 'hidden' && visibility !== 'collapse';\n if (isVisible) {\n const {\n getComputedStyle: getComputedStyle\n } = element.ownerDocument.defaultView;\n let {\n display: computedDisplay,\n visibility: computedVisibility\n } = getComputedStyle(element);\n isVisible = computedDisplay !== 'none' && computedVisibility !== 'hidden' && computedVisibility !== 'collapse';\n }\n return isVisible;\n}\nfunction $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) {\n return !element.hasAttribute('hidden') && (element.nodeName === 'DETAILS' && childElement && childElement.nodeName !== 'SUMMARY' ? element.hasAttribute('open') : true);\n}\nfunction $645f2e67b85a24c9$export$e989c0fffaa6b27a(element, childElement) {\n return element.nodeName !== '#comment' && $645f2e67b85a24c9$var$isStyleVisible(element) && $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) && (!element.parentElement || $645f2e67b85a24c9$export$e989c0fffaa6b27a(element.parentElement, element));\n}\nconst $9bf71ea28793e738$var$focusableElements = ['input:not([disabled]):not([type=hidden])', 'select:not([disabled])', 'textarea:not([disabled])', 'button:not([disabled])', 'a[href]', 'area[href]', 'summary', 'iframe', 'object', 'embed', 'audio[controls]', 'video[controls]', '[contenteditable]'];\nconst $9bf71ea28793e738$var$FOCUSABLE_ELEMENT_SELECTOR = $9bf71ea28793e738$var$focusableElements.join(':not([hidden]),') + ',[tabindex]:not([disabled]):not([hidden])';\n$9bf71ea28793e738$var$focusableElements.push('[tabindex]:not([tabindex=\"-1\"]):not([disabled])');\nconst $9bf71ea28793e738$var$TABBABLE_ELEMENT_SELECTOR = $9bf71ea28793e738$var$focusableElements.join(':not([hidden]):not([tabindex=\"-1\"]),');\nfunction $9bf71ea28793e738$var$isElementInScope(element, scope) {\n return scope.some(node => node.contains(element));\n}\nfunction $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, opts, scope) {\n let selector = (opts === null || opts === void 0 ? void 0 : opts.tabbable) ? $9bf71ea28793e738$var$TABBABLE_ELEMENT_SELECTOR : $9bf71ea28793e738$var$FOCUSABLE_ELEMENT_SELECTOR;\n let walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, {\n acceptNode(node) {\n var _opts_from;\n // Skip nodes inside the starting node.\n if (opts === null || opts === void 0 ? void 0 : (_opts_from = opts.from) === null || _opts_from === void 0 ? void 0 : _opts_from.contains(node)) return NodeFilter.FILTER_REJECT;\n if (node.matches(selector) && $645f2e67b85a24c9$export$e989c0fffaa6b27a(node) && (!scope || $9bf71ea28793e738$var$isElementInScope(node, scope)) && (!(opts === null || opts === void 0 ? void 0 : opts.accept) || opts.accept(node))) return NodeFilter.FILTER_ACCEPT;\n return NodeFilter.FILTER_SKIP;\n }\n });\n if (opts === null || opts === void 0 ? void 0 : opts.from) walker.currentNode = opts.from;\n return walker;\n}\nclass $9bf71ea28793e738$var$Tree {\n get size() {\n return this.fastMap.size;\n }\n getTreeNode(data) {\n return this.fastMap.get(data);\n }\n addTreeNode(scopeRef, parent, nodeToRestore) {\n let parentNode = this.fastMap.get(parent !== null && parent !== void 0 ? parent : null);\n let node = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: scopeRef\n });\n parentNode.addChild(node);\n node.parent = parentNode;\n this.fastMap.set(scopeRef, node);\n if (nodeToRestore) node.nodeToRestore = nodeToRestore;\n }\n addNode(node) {\n this.fastMap.set(node.scopeRef, node);\n }\n removeTreeNode(scopeRef) {\n // never remove the root\n if (scopeRef === null) return;\n let node = this.fastMap.get(scopeRef);\n let parentNode = node.parent;\n // when we remove a scope, check if any sibling scopes are trying to restore focus to something inside the scope we're removing\n // if we are, then replace the siblings restore with the restore from the scope we're removing\n for (let current of this.traverse()) if (current !== node && node.nodeToRestore && current.nodeToRestore && node.scopeRef.current && $9bf71ea28793e738$var$isElementInScope(current.nodeToRestore, node.scopeRef.current)) current.nodeToRestore = node.nodeToRestore;\n let children = node.children;\n parentNode.removeChild(node);\n if (children.size > 0) children.forEach(child => parentNode.addChild(child));\n this.fastMap.delete(node.scopeRef);\n }\n // Pre Order Depth First\n traverse() {\n var _this = this;\n let node = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.root;\n return function* () {\n if (node.scopeRef != null) yield node;\n if (node.children.size > 0) for (let child of node.children) yield* _this.traverse(child);\n }();\n }\n clone() {\n let newTree = new $9bf71ea28793e738$var$Tree();\n for (let node of this.traverse()) newTree.addTreeNode(node.scopeRef, node.parent.scopeRef, node.nodeToRestore);\n return newTree;\n }\n constructor() {\n this.fastMap = new Map();\n this.root = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: null\n });\n this.fastMap.set(null, this.root);\n }\n}\nclass $9bf71ea28793e738$var$TreeNode {\n addChild(node) {\n this.children.add(node);\n node.parent = this;\n }\n removeChild(node) {\n this.children.delete(node);\n node.parent = undefined;\n }\n constructor(props) {\n this.children = new Set();\n this.contain = false;\n this.scopeRef = props.scopeRef;\n }\n}\nnew $9bf71ea28793e738$var$Tree();\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nlet $e6afbd83fe6ebbd2$var$FocusableContext = /*#__PURE__*/$73SJx$react.createContext(null);\nfunction $e6afbd83fe6ebbd2$var$useFocusableContext(ref) {\n let context = useContext($e6afbd83fe6ebbd2$var$FocusableContext) || {};\n $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref);\n // eslint-disable-next-line\n let {\n ref: _,\n ...otherProps\n } = context;\n return otherProps;\n}\nfunction $e6afbd83fe6ebbd2$export$4c014de7c8940b4c(props, domRef) {\n let {\n focusProps: focusProps\n } = $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props);\n let {\n keyboardProps: keyboardProps\n } = $46d819fcbaf35654$export$8f71654801c2f7cd(props);\n let interactions = $3ef42575df84b30b$export$9d1611c77c2fe928(focusProps, keyboardProps);\n let domProps = $e6afbd83fe6ebbd2$var$useFocusableContext(domRef);\n let interactionProps = props.isDisabled ? {} : domProps;\n let autoFocusRef = useRef(props.autoFocus);\n useEffect(() => {\n if (autoFocusRef.current && domRef.current) $6a99195332edec8b$export$80f3e147d781571c(domRef.current);\n autoFocusRef.current = false;\n }, [domRef]);\n return {\n focusableProps: $3ef42575df84b30b$export$9d1611c77c2fe928({\n ...interactions,\n tabIndex: props.excludeFromTabOrder && !props.isDisabled ? -1 : undefined\n }, interactionProps)\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // https://en.wikipedia.org/wiki/Right-to-left\nconst $148a7a147e38ea7f$var$RTL_SCRIPTS = new Set(['Arab', 'Syrc', 'Samr', 'Mand', 'Thaa', 'Mend', 'Nkoo', 'Adlm', 'Rohg', 'Hebr']);\nconst $148a7a147e38ea7f$var$RTL_LANGS = new Set(['ae', 'ar', 'arc', 'bcc', 'bqi', 'ckb', 'dv', 'fa', 'glk', 'he', 'ku', 'mzn', 'nqo', 'pnb', 'ps', 'sd', 'ug', 'ur', 'yi']);\nfunction $148a7a147e38ea7f$export$702d680b21cbd764(locale) {\n // If the Intl.Locale API is available, use it to get the script for the locale.\n // This is more accurate than guessing by language, since languages can be written in multiple scripts.\n // @ts-ignore\n if (Intl.Locale) {\n // @ts-ignore\n let script = new Intl.Locale(locale).maximize().script;\n return $148a7a147e38ea7f$var$RTL_SCRIPTS.has(script);\n }\n // If not, just guess by the language (first part of the locale)\n let lang = locale.split('-')[0];\n return $148a7a147e38ea7f$var$RTL_LANGS.has(lang);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {\n // @ts-ignore\n let locale = typeof navigator !== 'undefined' && (navigator.language || navigator.userLanguage) || 'en-US';\n try {\n // @ts-ignore\n Intl.DateTimeFormat.supportedLocalesOf([locale]);\n } catch (_err) {\n locale = 'en-US';\n }\n return {\n locale: locale,\n direction: $148a7a147e38ea7f$export$702d680b21cbd764(locale) ? 'rtl' : 'ltr'\n };\n}\nlet $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\nlet $1e5a04cdaf7d1af8$var$listeners = new Set();\nfunction $1e5a04cdaf7d1af8$var$updateLocale() {\n $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\n for (let listener of $1e5a04cdaf7d1af8$var$listeners) listener($1e5a04cdaf7d1af8$var$currentLocale);\n}\nfunction $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a() {\n let isSSR = $b5e257d569688ac6$export$535bd6ca7f90a273();\n let [defaultLocale, setDefaultLocale] = useState($1e5a04cdaf7d1af8$var$currentLocale);\n useEffect(() => {\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.addEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n $1e5a04cdaf7d1af8$var$listeners.add(setDefaultLocale);\n return () => {\n $1e5a04cdaf7d1af8$var$listeners.delete(setDefaultLocale);\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.removeEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n };\n }, []);\n // We cannot determine the browser's language on the server, so default to\n // en-US. This will be updated after hydration on the client to the correct value.\n if (isSSR) return {\n locale: 'en-US',\n direction: 'ltr'\n };\n return defaultLocale;\n}\nconst $18f2051aff69b9bf$var$I18nContext = /*#__PURE__*/$73SJx$react.createContext(null);\nfunction $18f2051aff69b9bf$export$43bb16f9c6d9e3f7() {\n let defaultLocale = $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a();\n let context = useContext($18f2051aff69b9bf$var$I18nContext);\n return context || defaultLocale;\n}\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nconst $fca6afa0e843324b$var$cache = new WeakMap();\nfunction $fca6afa0e843324b$var$getCachedDictionary(strings) {\n let dictionary = $fca6afa0e843324b$var$cache.get(strings);\n if (!dictionary) {\n dictionary = new LocalizedStringDictionary(strings);\n $fca6afa0e843324b$var$cache.set(strings, dictionary);\n }\n return dictionary;\n}\nfunction $fca6afa0e843324b$export$f12b703ca79dfbb1(strings) {\n let {\n locale: locale\n } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7();\n let dictionary = useMemo(() => $fca6afa0e843324b$var$getCachedDictionary(strings), [strings]);\n return useMemo(() => new LocalizedStringFormatter(locale, dictionary), [locale, dictionary]);\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nlet $325a3faab7a68acd$var$cache = new Map();\nfunction $325a3faab7a68acd$export$a16aca283550c30d(options) {\n let {\n locale: locale\n } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7();\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : '');\n if ($325a3faab7a68acd$var$cache.has(cacheKey)) return $325a3faab7a68acd$var$cache.get(cacheKey);\n let formatter = new Intl.Collator(locale, options);\n $325a3faab7a68acd$var$cache.set(cacheKey, formatter);\n return formatter;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {\n let {\n elementType = 'button',\n isDisabled: isDisabled,\n onPress: onPress,\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n onPressChange: onPressChange,\n // @ts-ignore - undocumented\n preventFocusOnPress: preventFocusOnPress,\n // @ts-ignore - undocumented\n allowFocusWhenDisabled: allowFocusWhenDisabled,\n // @ts-ignore\n onClick: deprecatedOnClick,\n href: href,\n target: target,\n rel: rel,\n type = 'button'\n } = props;\n let additionalProps;\n if (elementType === 'button') additionalProps = {\n type: type,\n disabled: isDisabled\n };else additionalProps = {\n role: 'button',\n tabIndex: isDisabled ? undefined : 0,\n href: elementType === 'a' && isDisabled ? undefined : href,\n target: elementType === 'a' ? target : undefined,\n type: elementType === 'input' ? type : undefined,\n disabled: elementType === 'input' ? isDisabled : undefined,\n 'aria-disabled': !isDisabled || elementType === 'input' ? undefined : isDisabled,\n rel: elementType === 'a' ? rel : undefined\n };\n let {\n pressProps: pressProps,\n isPressed: isPressed\n } = $f6c31cce2adf654f$export$45712eceda6fad21({\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n onPressChange: onPressChange,\n onPress: onPress,\n isDisabled: isDisabled,\n preventFocusOnPress: preventFocusOnPress,\n ref: ref\n });\n let {\n focusableProps: focusableProps\n } = $e6afbd83fe6ebbd2$export$4c014de7c8940b4c(props, ref);\n if (allowFocusWhenDisabled) focusableProps.tabIndex = isDisabled ? -1 : focusableProps.tabIndex;\n let buttonProps = $3ef42575df84b30b$export$9d1611c77c2fe928(focusableProps, pressProps, $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, {\n labelable: true\n }));\n return {\n isPressed: isPressed,\n buttonProps: $3ef42575df84b30b$export$9d1611c77c2fe928(additionalProps, buttonProps, {\n 'aria-haspopup': props['aria-haspopup'],\n 'aria-expanded': props['aria-expanded'],\n 'aria-controls': props['aria-controls'],\n 'aria-pressed': props['aria-pressed'],\n onClick: e => {\n if (deprecatedOnClick) {\n deprecatedOnClick(e);\n console.warn('onClick is deprecated, please use onPress');\n }\n }\n })\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /* Inspired by https://github.com/AlmeroSteyn/react-aria-live */\nconst $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY = 7000;\nlet $319e236875307eab$var$liveAnnouncer = null;\nfunction $319e236875307eab$export$a9b970dcc4ae71a9(message) {\n let assertiveness = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'assertive';\n let timeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY;\n if (!$319e236875307eab$var$liveAnnouncer) $319e236875307eab$var$liveAnnouncer = new $319e236875307eab$var$LiveAnnouncer();\n $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n}\n// LiveAnnouncer is implemented using vanilla DOM, not React. That's because as of React 18\n// ReactDOM.render is deprecated, and the replacement, ReactDOM.createRoot is moved into a\n// subpath import `react-dom/client`. That makes it hard for us to support multiple React versions.\n// As a global API, we can't use portals without introducing a breaking API change. LiveAnnouncer\n// is simple enough to implement without React, so that's what we do here.\n// See this discussion for more details: https://github.com/reactwg/react-18/discussions/125#discussioncomment-2382638\nclass $319e236875307eab$var$LiveAnnouncer {\n createLog(ariaLive) {\n let node = document.createElement('div');\n node.setAttribute('role', 'log');\n node.setAttribute('aria-live', ariaLive);\n node.setAttribute('aria-relevant', 'additions');\n return node;\n }\n destroy() {\n if (!this.node) return;\n document.body.removeChild(this.node);\n this.node = null;\n }\n announce(message) {\n let assertiveness = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'assertive';\n let timeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY;\n if (!this.node) return;\n let node = document.createElement('div');\n node.textContent = message;\n if (assertiveness === 'assertive') this.assertiveLog.appendChild(node);else this.politeLog.appendChild(node);\n if (message !== '') setTimeout(() => {\n node.remove();\n }, timeout);\n }\n clear(assertiveness) {\n if (!this.node) return;\n if (!assertiveness || assertiveness === 'assertive') this.assertiveLog.innerHTML = '';\n if (!assertiveness || assertiveness === 'polite') this.politeLog.innerHTML = '';\n }\n constructor() {\n this.node = document.createElement('div');\n this.node.dataset.liveAnnouncer = 'true';\n // copied from VisuallyHidden\n Object.assign(this.node.style, {\n border: 0,\n clip: 'rect(0 0 0 0)',\n clipPath: 'inset(50%)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n width: '1px',\n whiteSpace: 'nowrap'\n });\n this.assertiveLog = this.createLog('assertive');\n this.node.appendChild(this.assertiveLog);\n this.politeLog = this.createLog('polite');\n this.node.appendChild(this.politeLog);\n document.body.prepend(this.node);\n }\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $d191a55c9702f145$export$8467354a121f1b9f(props) {\n let {\n id: id,\n label: label,\n 'aria-labelledby': ariaLabelledby,\n 'aria-label': ariaLabel,\n labelElementType = 'label'\n } = props;\n id = $bdb11010cef70236$export$f680877a34711e37(id);\n let labelId = $bdb11010cef70236$export$f680877a34711e37();\n let labelProps = {};\n if (label) {\n ariaLabelledby = ariaLabelledby ? `${labelId} ${ariaLabelledby}` : labelId;\n labelProps = {\n id: labelId,\n htmlFor: labelElementType === 'label' ? id : undefined\n };\n } else if (!ariaLabelledby && !ariaLabel) console.warn('If you do not provide a visible label, you must specify an aria-label or aria-labelledby attribute for accessibility');\n let fieldProps = $313b98861ee5dd6c$export$d6875122194c7b44({\n id: id,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps\n };\n}\nfunction $2baaea4c71418dea$export$294aa081a6c6f55d(props) {\n let {\n description: description,\n errorMessage: errorMessage,\n isInvalid: isInvalid,\n validationState: validationState\n } = props;\n let {\n labelProps: labelProps,\n fieldProps: fieldProps\n } = $d191a55c9702f145$export$8467354a121f1b9f(props);\n let descriptionId = $bdb11010cef70236$export$b4cc09c592e8fdb8([Boolean(description), Boolean(errorMessage), isInvalid, validationState]);\n let errorMessageId = $bdb11010cef70236$export$b4cc09c592e8fdb8([Boolean(description), Boolean(errorMessage), isInvalid, validationState]);\n fieldProps = $3ef42575df84b30b$export$9d1611c77c2fe928(fieldProps, {\n 'aria-describedby': [descriptionId,\n // Use aria-describedby for error message because aria-errormessage is unsupported using VoiceOver or NVDA. See https://github.com/adobe/react-spectrum/issues/1346#issuecomment-740136268\n errorMessageId, props['aria-describedby']].filter(Boolean).join(' ') || undefined\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps,\n descriptionProps: {\n id: descriptionId\n },\n errorMessageProps: {\n id: errorMessageId\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nconst $5c3e21d68f1c4674$var$styles = {\n border: 0,\n clip: 'rect(0 0 0 0)',\n clipPath: 'inset(50%)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n width: '1px',\n whiteSpace: 'nowrap'\n};\nfunction $5c3e21d68f1c4674$export$a966af930f325cab() {\n let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let {\n style: style,\n isFocusable: isFocusable\n } = props;\n let [isFocused, setFocused] = useState(false);\n let {\n focusWithinProps: focusWithinProps\n } = $9ab94262bd0047c7$export$420e68273165f4ec({\n isDisabled: !isFocusable,\n onFocusWithinChange: val => setFocused(val)\n });\n // If focused, don't hide the element.\n let combinedStyles = useMemo(() => {\n if (isFocused) return style;else if (style) return {\n ...$5c3e21d68f1c4674$var$styles,\n ...style\n };else return $5c3e21d68f1c4674$var$styles;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isFocused]);\n return {\n visuallyHiddenProps: {\n ...focusWithinProps,\n style: combinedStyles\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nconst $dd149f63282afbbf$export$f6211563215e3b37 = new WeakMap();\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $628037886ba31236$export$f9d5c8beee7d008d(props, state, ref) {\n let {\n type: type\n } = props;\n let {\n isOpen: isOpen\n } = state;\n // Backward compatibility. Share state close function with useOverlayPosition so it can close on scroll\n // without forcing users to pass onClose.\n useEffect(() => {\n if (ref && ref.current) $dd149f63282afbbf$export$f6211563215e3b37.set(ref.current, state.close);\n });\n // Aria 1.1 supports multiple values for aria-haspopup other than just menus.\n // https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup\n // However, we only add it for menus for now because screen readers often\n // announce it as a menu even for other values.\n let ariaHasPopup = undefined;\n if (type === 'menu') ariaHasPopup = true;else if (type === 'listbox') ariaHasPopup = 'listbox';\n let overlayId = $bdb11010cef70236$export$f680877a34711e37();\n return {\n triggerProps: {\n 'aria-haspopup': ariaHasPopup,\n 'aria-expanded': isOpen,\n 'aria-controls': isOpen ? overlayId : null,\n onPress: state.toggle\n },\n overlayProps: {\n id: overlayId\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Keeps a ref count of all hidden elements. Added to when hiding an element, and\n// subtracted from when showing it again. When it reaches zero, aria-hidden is removed.\nlet $5e3802645cc19319$var$refCountMap = new WeakMap();\nlet $5e3802645cc19319$var$observerStack = [];\nfunction $5e3802645cc19319$export$1c3ebcada18427bf(targets) {\n let root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document.body;\n let visibleNodes = new Set(targets.filter(target => target));\n let hiddenNodes = new Set();\n let walk = root => {\n // Keep live announcer and top layer elements (e.g. toasts) visible.\n for (let element of root.querySelectorAll('[data-live-announcer], [data-react-aria-top-layer]')) visibleNodes.add(element);\n let acceptNode = node => {\n // Skip this node and its children if it is one of the target nodes, or a live announcer.\n // Also skip children of already hidden nodes, as aria-hidden is recursive. An exception is\n // made for elements with role=\"row\" since VoiceOver on iOS has issues hiding elements with role=\"row\".\n // For that case we want to hide the cells inside as well (https://bugs.webkit.org/show_bug.cgi?id=222623).\n if (visibleNodes.has(node) || hiddenNodes.has(node.parentElement) && node.parentElement.getAttribute('role') !== 'row') return NodeFilter.FILTER_REJECT;\n // Skip this node but continue to children if one of the targets is inside the node.\n for (let target of visibleNodes) {\n if (node.contains(target)) return NodeFilter.FILTER_SKIP;\n }\n return NodeFilter.FILTER_ACCEPT;\n };\n let walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, {\n acceptNode: acceptNode\n });\n // TreeWalker does not include the root.\n let acceptRoot = acceptNode(root);\n if (acceptRoot === NodeFilter.FILTER_ACCEPT) hide(root);\n if (acceptRoot !== NodeFilter.FILTER_REJECT) {\n let node = walker.nextNode();\n while (node != null) {\n hide(node);\n node = walker.nextNode();\n }\n }\n };\n let hide = node => {\n var _refCountMap_get;\n let refCount = (_refCountMap_get = $5e3802645cc19319$var$refCountMap.get(node)) !== null && _refCountMap_get !== void 0 ? _refCountMap_get : 0;\n // If already aria-hidden, and the ref count is zero, then this element\n // was already hidden and there's nothing for us to do.\n if (node.getAttribute('aria-hidden') === 'true' && refCount === 0) return;\n if (refCount === 0) node.setAttribute('aria-hidden', 'true');\n hiddenNodes.add(node);\n $5e3802645cc19319$var$refCountMap.set(node, refCount + 1);\n };\n // If there is already a MutationObserver listening from a previous call,\n // disconnect it so the new on takes over.\n if ($5e3802645cc19319$var$observerStack.length) $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1].disconnect();\n walk(root);\n let observer = new MutationObserver(changes => {\n for (let change of changes) {\n if (change.type !== 'childList' || change.addedNodes.length === 0) continue;\n // If the parent element of the added nodes is not within one of the targets,\n // and not already inside a hidden node, hide all of the new children.\n if (![...visibleNodes, ...hiddenNodes].some(node => node.contains(change.target))) {\n for (let node of change.removedNodes) if (node instanceof Element) {\n visibleNodes.delete(node);\n hiddenNodes.delete(node);\n }\n for (let node of change.addedNodes) {\n if ((node instanceof HTMLElement || node instanceof SVGElement) && (node.dataset.liveAnnouncer === 'true' || node.dataset.reactAriaTopLayer === 'true')) visibleNodes.add(node);else if (node instanceof Element) walk(node);\n }\n }\n }\n });\n observer.observe(root, {\n childList: true,\n subtree: true\n });\n let observerWrapper = {\n observe() {\n observer.observe(root, {\n childList: true,\n subtree: true\n });\n },\n disconnect() {\n observer.disconnect();\n }\n };\n $5e3802645cc19319$var$observerStack.push(observerWrapper);\n return () => {\n observer.disconnect();\n for (let node of hiddenNodes) {\n let count = $5e3802645cc19319$var$refCountMap.get(node);\n if (count === 1) {\n node.removeAttribute('aria-hidden');\n $5e3802645cc19319$var$refCountMap.delete(node);\n } else $5e3802645cc19319$var$refCountMap.set(node, count - 1);\n }\n // Remove this observer from the stack, and start the previous one.\n if (observerWrapper === $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1]) {\n $5e3802645cc19319$var$observerStack.pop();\n if ($5e3802645cc19319$var$observerStack.length) $5e3802645cc19319$var$observerStack[$5e3802645cc19319$var$observerStack.length - 1].observe();\n } else $5e3802645cc19319$var$observerStack.splice($5e3802645cc19319$var$observerStack.indexOf(observerWrapper), 1);\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nfunction $feb5ffebff200149$export$d3e3bd3e26688c04(e) {\n // Ctrl + Arrow Up/Arrow Down has a system wide meaning on macOS, so use Alt instead.\n // On Windows and Ubuntu, Alt + Space has a system wide meaning.\n return $c87311424ea30a05$export$e1865c3bedcd822b() ? e.altKey : e.ctrlKey;\n}\nfunction $feb5ffebff200149$export$16792effe837dba3(e) {\n if ($c87311424ea30a05$export$9ac100e40613ea10()) return e.metaKey;\n return e.ctrlKey;\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/**\n * Controls how long to wait before clearing the typeahead buffer.\n */\nconst $fb3050f43d946246$var$TYPEAHEAD_DEBOUNCE_WAIT_MS = 1000; // 1 second\nfunction $fb3050f43d946246$export$e32c88dfddc6e1d8(options) {\n let {\n keyboardDelegate: keyboardDelegate,\n selectionManager: selectionManager,\n onTypeSelect: onTypeSelect\n } = options;\n let state = useRef({\n search: '',\n timeout: null\n }).current;\n let onKeyDown = e => {\n let character = $fb3050f43d946246$var$getStringForKey(e.key);\n if (!character || e.ctrlKey || e.metaKey || !e.currentTarget.contains(e.target)) return;\n // Do not propagate the Spacebar event if it's meant to be part of the search.\n // When we time out, the search term becomes empty, hence the check on length.\n // Trimming is to account for the case of pressing the Spacebar more than once,\n // which should cycle through the selection/deselection of the focused item.\n if (character === ' ' && state.search.trim().length > 0) {\n e.preventDefault();\n if (!('continuePropagation' in e)) e.stopPropagation();\n }\n state.search += character;\n // Use the delegate to find a key to focus.\n // Prioritize items after the currently focused item, falling back to searching the whole list.\n let key = keyboardDelegate.getKeyForSearch(state.search, selectionManager.focusedKey);\n // If no key found, search from the top.\n if (key == null) key = keyboardDelegate.getKeyForSearch(state.search);\n if (key != null) {\n selectionManager.setFocusedKey(key);\n if (onTypeSelect) onTypeSelect(key);\n }\n clearTimeout(state.timeout);\n state.timeout = setTimeout(() => {\n state.search = '';\n }, $fb3050f43d946246$var$TYPEAHEAD_DEBOUNCE_WAIT_MS);\n };\n return {\n typeSelectProps: {\n // Using a capturing listener to catch the keydown event before\n // other hooks in order to handle the Spacebar event.\n onKeyDownCapture: keyboardDelegate.getKeyForSearch ? onKeyDown : null\n }\n };\n}\nfunction $fb3050f43d946246$var$getStringForKey(key) {\n // If the key is of length 1, it is an ASCII value.\n // Otherwise, if there are no ASCII characters in the key name,\n // it is a Unicode character.\n // See https://www.w3.org/TR/uievents-key/\n if (key.length === 1 || !/^[A-Z]/i.test(key)) return key;\n return '';\n}\nfunction $ae20dd8cbca75726$export$d6daf82dcd84e87c(options) {\n let {\n selectionManager: manager,\n keyboardDelegate: delegate,\n ref: ref,\n autoFocus = false,\n shouldFocusWrap = false,\n disallowEmptySelection = false,\n disallowSelectAll = false,\n selectOnFocus = manager.selectionBehavior === 'replace',\n disallowTypeAhead = false,\n shouldUseVirtualFocus: shouldUseVirtualFocus,\n allowsTabNavigation = false,\n isVirtualized: isVirtualized,\n // If no scrollRef is provided, assume the collection ref is the scrollable region\n scrollRef = ref\n } = options;\n let {\n direction: direction\n } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7();\n let onKeyDown = e => {\n // Prevent option + tab from doing anything since it doesn't move focus to the cells, only buttons/checkboxes\n if (e.altKey && e.key === 'Tab') e.preventDefault();\n // Keyboard events bubble through portals. Don't handle keyboard events\n // for elements outside the collection (e.g. menus).\n if (!ref.current.contains(e.target)) return;\n const navigateToKey = (key, childFocus) => {\n if (key != null) {\n manager.setFocusedKey(key, childFocus);\n if (e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(key);else if (selectOnFocus && !$feb5ffebff200149$export$d3e3bd3e26688c04(e)) manager.replaceSelection(key);\n }\n };\n switch (e.key) {\n case 'ArrowDown':\n if (delegate.getKeyBelow) {\n var _delegate_getFirstKey, _delegate_getFirstKey1;\n e.preventDefault();\n let nextKey = manager.focusedKey != null ? delegate.getKeyBelow(manager.focusedKey) : (_delegate_getFirstKey = delegate.getFirstKey) === null || _delegate_getFirstKey === void 0 ? void 0 : _delegate_getFirstKey.call(delegate);\n if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getFirstKey1 = delegate.getFirstKey) === null || _delegate_getFirstKey1 === void 0 ? void 0 : _delegate_getFirstKey1.call(delegate, manager.focusedKey);\n navigateToKey(nextKey);\n }\n break;\n case 'ArrowUp':\n if (delegate.getKeyAbove) {\n var _delegate_getLastKey, _delegate_getLastKey1;\n e.preventDefault();\n let nextKey = manager.focusedKey != null ? delegate.getKeyAbove(manager.focusedKey) : (_delegate_getLastKey = delegate.getLastKey) === null || _delegate_getLastKey === void 0 ? void 0 : _delegate_getLastKey.call(delegate);\n if (nextKey == null && shouldFocusWrap) nextKey = (_delegate_getLastKey1 = delegate.getLastKey) === null || _delegate_getLastKey1 === void 0 ? void 0 : _delegate_getLastKey1.call(delegate, manager.focusedKey);\n navigateToKey(nextKey);\n }\n break;\n case 'ArrowLeft':\n if (delegate.getKeyLeftOf) {\n var _delegate_getFirstKey2, _delegate_getLastKey2;\n e.preventDefault();\n let nextKey = delegate.getKeyLeftOf(manager.focusedKey);\n if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getFirstKey2 = delegate.getFirstKey) === null || _delegate_getFirstKey2 === void 0 ? void 0 : _delegate_getFirstKey2.call(delegate, manager.focusedKey) : (_delegate_getLastKey2 = delegate.getLastKey) === null || _delegate_getLastKey2 === void 0 ? void 0 : _delegate_getLastKey2.call(delegate, manager.focusedKey);\n navigateToKey(nextKey, direction === 'rtl' ? 'first' : 'last');\n }\n break;\n case 'ArrowRight':\n if (delegate.getKeyRightOf) {\n var _delegate_getLastKey3, _delegate_getFirstKey3;\n e.preventDefault();\n let nextKey = delegate.getKeyRightOf(manager.focusedKey);\n if (nextKey == null && shouldFocusWrap) nextKey = direction === 'rtl' ? (_delegate_getLastKey3 = delegate.getLastKey) === null || _delegate_getLastKey3 === void 0 ? void 0 : _delegate_getLastKey3.call(delegate, manager.focusedKey) : (_delegate_getFirstKey3 = delegate.getFirstKey) === null || _delegate_getFirstKey3 === void 0 ? void 0 : _delegate_getFirstKey3.call(delegate, manager.focusedKey);\n navigateToKey(nextKey, direction === 'rtl' ? 'last' : 'first');\n }\n break;\n case 'Home':\n if (delegate.getFirstKey) {\n e.preventDefault();\n let firstKey = delegate.getFirstKey(manager.focusedKey, $feb5ffebff200149$export$16792effe837dba3(e));\n manager.setFocusedKey(firstKey);\n if ($feb5ffebff200149$export$16792effe837dba3(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(firstKey);else if (selectOnFocus) manager.replaceSelection(firstKey);\n }\n break;\n case 'End':\n if (delegate.getLastKey) {\n e.preventDefault();\n let lastKey = delegate.getLastKey(manager.focusedKey, $feb5ffebff200149$export$16792effe837dba3(e));\n manager.setFocusedKey(lastKey);\n if ($feb5ffebff200149$export$16792effe837dba3(e) && e.shiftKey && manager.selectionMode === 'multiple') manager.extendSelection(lastKey);else if (selectOnFocus) manager.replaceSelection(lastKey);\n }\n break;\n case 'PageDown':\n if (delegate.getKeyPageBelow) {\n e.preventDefault();\n let nextKey = delegate.getKeyPageBelow(manager.focusedKey);\n navigateToKey(nextKey);\n }\n break;\n case 'PageUp':\n if (delegate.getKeyPageAbove) {\n e.preventDefault();\n let nextKey = delegate.getKeyPageAbove(manager.focusedKey);\n navigateToKey(nextKey);\n }\n break;\n case 'a':\n if ($feb5ffebff200149$export$16792effe837dba3(e) && manager.selectionMode === 'multiple' && disallowSelectAll !== true) {\n e.preventDefault();\n manager.selectAll();\n }\n break;\n case 'Escape':\n e.preventDefault();\n if (!disallowEmptySelection) manager.clearSelection();\n break;\n case 'Tab':\n if (!allowsTabNavigation) {\n // There may be elements that are \"tabbable\" inside a collection (e.g. in a grid cell).\n // However, collections should be treated as a single tab stop, with arrow key navigation internally.\n // We don't control the rendering of these, so we can't override the tabIndex to prevent tabbing.\n // Instead, we handle the Tab key, and move focus manually to the first/last tabbable element\n // in the collection, so that the browser default behavior will apply starting from that element\n // rather than the currently focused one.\n if (e.shiftKey) ref.current.focus();else {\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(ref.current, {\n tabbable: true\n });\n let next;\n let last;\n do {\n last = walker.lastChild();\n if (last) next = last;\n } while (last);\n if (next && !next.contains(document.activeElement)) $7215afc6de606d6b$export$de79e2c695e052f3(next);\n }\n break;\n }\n }\n };\n // Store the scroll position so we can restore it later.\n let scrollPos = useRef({\n top: 0,\n left: 0\n });\n $e9faafb641e167db$export$90fc3a17d93f704c(scrollRef, 'scroll', isVirtualized ? null : () => {\n scrollPos.current = {\n top: scrollRef.current.scrollTop,\n left: scrollRef.current.scrollLeft\n };\n });\n let onFocus = e => {\n if (manager.isFocused) {\n // If a focus event bubbled through a portal, reset focus state.\n if (!e.currentTarget.contains(e.target)) manager.setFocused(false);\n return;\n }\n // Focus events can bubble through portals. Ignore these events.\n if (!e.currentTarget.contains(e.target)) return;\n manager.setFocused(true);\n if (manager.focusedKey == null) {\n let navigateToFirstKey = key => {\n if (key != null) {\n manager.setFocusedKey(key);\n if (selectOnFocus) manager.replaceSelection(key);\n }\n };\n // If the user hasn't yet interacted with the collection, there will be no focusedKey set.\n // Attempt to detect whether the user is tabbing forward or backward into the collection\n // and either focus the first or last item accordingly.\n let relatedTarget = e.relatedTarget;\n var _manager_lastSelectedKey, _manager_firstSelectedKey;\n if (relatedTarget && e.currentTarget.compareDocumentPosition(relatedTarget) & Node.DOCUMENT_POSITION_FOLLOWING) navigateToFirstKey((_manager_lastSelectedKey = manager.lastSelectedKey) !== null && _manager_lastSelectedKey !== void 0 ? _manager_lastSelectedKey : delegate.getLastKey());else navigateToFirstKey((_manager_firstSelectedKey = manager.firstSelectedKey) !== null && _manager_firstSelectedKey !== void 0 ? _manager_firstSelectedKey : delegate.getFirstKey());\n } else if (!isVirtualized) {\n // Restore the scroll position to what it was before.\n scrollRef.current.scrollTop = scrollPos.current.top;\n scrollRef.current.scrollLeft = scrollPos.current.left;\n }\n if (!isVirtualized && manager.focusedKey != null) {\n // Refocus and scroll the focused item into view if it exists within the scrollable region.\n let element = scrollRef.current.querySelector(`[data-key=\"${manager.focusedKey}\"]`);\n if (element) {\n // This prevents a flash of focus on the first/last element in the collection, or the collection itself.\n if (!element.contains(document.activeElement)) $7215afc6de606d6b$export$de79e2c695e052f3(element);\n let modality = $507fabe10e71c6fb$export$630ff653c5ada6a9();\n if (modality === 'keyboard') $2f04cbc44ee30ce0$export$c826860796309d1b(element, {\n containingElement: ref.current\n });\n }\n }\n };\n let onBlur = e => {\n // Don't set blurred and then focused again if moving focus within the collection.\n if (!e.currentTarget.contains(e.relatedTarget)) manager.setFocused(false);\n };\n const autoFocusRef = useRef(autoFocus);\n useEffect(() => {\n if (autoFocusRef.current) {\n let focusedKey = null;\n // Check focus strategy to determine which item to focus\n if (autoFocus === 'first') focusedKey = delegate.getFirstKey();\n if (autoFocus === 'last') focusedKey = delegate.getLastKey();\n // If there are any selected keys, make the first one the new focus target\n let selectedKeys = manager.selectedKeys;\n if (selectedKeys.size) focusedKey = selectedKeys.values().next().value;\n manager.setFocused(true);\n manager.setFocusedKey(focusedKey);\n // If no default focus key is selected, focus the collection itself.\n if (focusedKey == null && !shouldUseVirtualFocus) $6a99195332edec8b$export$80f3e147d781571c(ref.current);\n }\n autoFocusRef.current = false;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n // If not virtualized, scroll the focused element into view when the focusedKey changes.\n // When virtualized, Virtualizer handles this internally.\n let lastFocusedKey = useRef(manager.focusedKey);\n useEffect(() => {\n let modality = $507fabe10e71c6fb$export$630ff653c5ada6a9();\n if (manager.isFocused && manager.focusedKey != null && (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current)) {\n let element = scrollRef.current.querySelector(`[data-key=\"${manager.focusedKey}\"]`);\n if (element && modality === 'keyboard') {\n if (!isVirtualized) $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollRef.current, element);\n $2f04cbc44ee30ce0$export$c826860796309d1b(element, {\n containingElement: ref.current\n });\n }\n }\n // If the focused key becomes null (e.g. the last item is deleted), focus the whole collection.\n if (manager.isFocused && manager.focusedKey == null && lastFocusedKey.current != null) $6a99195332edec8b$export$80f3e147d781571c(ref.current);\n lastFocusedKey.current = manager.focusedKey;\n }, [isVirtualized, scrollRef, manager.focusedKey, manager.isFocused, ref]);\n let handlers = {\n onKeyDown: onKeyDown,\n onFocus: onFocus,\n onBlur: onBlur,\n onMouseDown(e) {\n // Ignore events that bubbled through portals.\n if (scrollRef.current === e.target)\n // Prevent focus going to the collection when clicking on the scrollbar.\n e.preventDefault();\n }\n };\n let {\n typeSelectProps: typeSelectProps\n } = $fb3050f43d946246$export$e32c88dfddc6e1d8({\n keyboardDelegate: delegate,\n selectionManager: manager\n });\n if (!disallowTypeAhead) handlers = $3ef42575df84b30b$export$9d1611c77c2fe928(typeSelectProps, handlers);\n // If nothing is focused within the collection, make the collection itself tabbable.\n // This will be marshalled to either the first or last item depending on where focus came from.\n // If using virtual focus, don't set a tabIndex at all so that VoiceOver on iOS 14 doesn't try\n // to move real DOM focus to the element anyway.\n let tabIndex;\n if (!shouldUseVirtualFocus) tabIndex = manager.focusedKey == null ? 0 : -1;\n return {\n collectionProps: {\n ...handlers,\n tabIndex: tabIndex\n }\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nfunction $880e95eb8b93ba9a$export$ecf600387e221c37(options) {\n let {\n selectionManager: manager,\n key: key,\n ref: ref,\n shouldSelectOnPressUp: shouldSelectOnPressUp,\n shouldUseVirtualFocus: shouldUseVirtualFocus,\n focus: focus,\n isDisabled: isDisabled,\n onAction: onAction,\n allowsDifferentPressOrigin: allowsDifferentPressOrigin\n } = options;\n let onSelect = e => {\n if (e.pointerType === 'keyboard' && $feb5ffebff200149$export$d3e3bd3e26688c04(e)) manager.toggleSelection(key);else {\n if (manager.selectionMode === 'none') return;\n if (manager.selectionMode === 'single') {\n if (manager.isSelected(key) && !manager.disallowEmptySelection) manager.toggleSelection(key);else manager.replaceSelection(key);\n } else if (e && e.shiftKey) manager.extendSelection(key);else if (manager.selectionBehavior === 'toggle' || e && ($feb5ffebff200149$export$16792effe837dba3(e) || e.pointerType === 'touch' || e.pointerType === 'virtual'))\n // if touch or virtual (VO) then we just want to toggle, otherwise it's impossible to multi select because they don't have modifier keys\n manager.toggleSelection(key);else manager.replaceSelection(key);\n }\n };\n // Focus the associated DOM node when this item becomes the focusedKey\n useEffect(() => {\n let isFocused = key === manager.focusedKey;\n if (isFocused && manager.isFocused && !shouldUseVirtualFocus) {\n if (focus) focus();else if (document.activeElement !== ref.current) $6a99195332edec8b$export$80f3e147d781571c(ref.current);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ref, key, manager.focusedKey, manager.childFocusStrategy, manager.isFocused, shouldUseVirtualFocus]);\n isDisabled = isDisabled || manager.isDisabled(key);\n // Set tabIndex to 0 if the element is focused, or -1 otherwise so that only the last focused\n // item is tabbable. If using virtual focus, don't set a tabIndex at all so that VoiceOver\n // on iOS 14 doesn't try to move real DOM focus to the item anyway.\n let itemProps = {};\n if (!shouldUseVirtualFocus && !isDisabled) itemProps = {\n tabIndex: key === manager.focusedKey ? 0 : -1,\n onFocus(e) {\n if (e.target === ref.current) manager.setFocusedKey(key);\n }\n };else if (isDisabled) itemProps.onMouseDown = e => {\n // Prevent focus going to the body when clicking on a disabled item.\n e.preventDefault();\n };\n // With checkbox selection, onAction (i.e. navigation) becomes primary, and occurs on a single click of the row.\n // Clicking the checkbox enters selection mode, after which clicking anywhere on any row toggles selection for that row.\n // With highlight selection, onAction is secondary, and occurs on double click. Single click selects the row.\n // With touch, onAction occurs on single tap, and long press enters selection mode.\n let allowsSelection = !isDisabled && manager.canSelectItem(key);\n let allowsActions = onAction && !isDisabled;\n let hasPrimaryAction = allowsActions && (manager.selectionBehavior === 'replace' ? !allowsSelection : manager.isEmpty);\n let hasSecondaryAction = allowsActions && allowsSelection && manager.selectionBehavior === 'replace';\n let hasAction = hasPrimaryAction || hasSecondaryAction;\n let modality = useRef(null);\n let longPressEnabled = hasAction && allowsSelection;\n let longPressEnabledOnPressStart = useRef(false);\n let hadPrimaryActionOnPressStart = useRef(false);\n // By default, selection occurs on pointer down. This can be strange if selecting an\n // item causes the UI to disappear immediately (e.g. menus).\n // If shouldSelectOnPressUp is true, we use onPressUp instead of onPressStart.\n // onPress requires a pointer down event on the same element as pointer up. For menus,\n // we want to be able to have the pointer down on the trigger that opens the menu and\n // the pointer up on the menu item rather than requiring a separate press.\n // For keyboard events, selection still occurs on key down.\n let itemPressProps = {};\n if (shouldSelectOnPressUp) {\n itemPressProps.onPressStart = e => {\n modality.current = e.pointerType;\n longPressEnabledOnPressStart.current = longPressEnabled;\n if (e.pointerType === 'keyboard' && (!hasAction || $880e95eb8b93ba9a$var$isSelectionKey())) onSelect(e);\n };\n // If allowsDifferentPressOrigin, make selection happen on pressUp (e.g. open menu on press down, selection on menu item happens on press up.)\n // Otherwise, have selection happen onPress (prevents listview row selection when clicking on interactable elements in the row)\n if (!allowsDifferentPressOrigin) itemPressProps.onPress = e => {\n if (hasPrimaryAction || hasSecondaryAction && e.pointerType !== 'mouse') {\n if (e.pointerType === 'keyboard' && !$880e95eb8b93ba9a$var$isActionKey()) return;\n onAction();\n } else if (e.pointerType !== 'keyboard') onSelect(e);\n };else {\n itemPressProps.onPressUp = e => {\n if (e.pointerType !== 'keyboard') onSelect(e);\n };\n itemPressProps.onPress = hasPrimaryAction ? () => onAction() : null;\n }\n } else {\n itemPressProps.onPressStart = e => {\n modality.current = e.pointerType;\n longPressEnabledOnPressStart.current = longPressEnabled;\n hadPrimaryActionOnPressStart.current = hasPrimaryAction;\n // Select on mouse down unless there is a primary action which will occur on mouse up.\n // For keyboard, select on key down. If there is an action, the Space key selects on key down,\n // and the Enter key performs onAction on key up.\n if (e.pointerType === 'mouse' && !hasPrimaryAction || e.pointerType === 'keyboard' && (!onAction || $880e95eb8b93ba9a$var$isSelectionKey())) onSelect(e);\n };\n itemPressProps.onPress = e => {\n // Selection occurs on touch up. Primary actions always occur on pointer up.\n // Both primary and secondary actions occur on Enter key up. The only exception\n // is secondary actions, which occur on double click with a mouse.\n if (e.pointerType === 'touch' || e.pointerType === 'pen' || e.pointerType === 'virtual' || e.pointerType === 'keyboard' && hasAction && $880e95eb8b93ba9a$var$isActionKey() || e.pointerType === 'mouse' && hadPrimaryActionOnPressStart.current) {\n if (hasAction) onAction();else onSelect(e);\n }\n };\n }\n itemProps['data-key'] = key;\n itemPressProps.preventFocusOnPress = shouldUseVirtualFocus;\n let {\n pressProps: pressProps,\n isPressed: isPressed\n } = $f6c31cce2adf654f$export$45712eceda6fad21(itemPressProps);\n // Double clicking with a mouse with selectionBehavior = 'replace' performs an action.\n let onDoubleClick = hasSecondaryAction ? e => {\n if (modality.current === 'mouse') {\n e.stopPropagation();\n e.preventDefault();\n onAction();\n }\n } : undefined;\n // Long pressing an item with touch when selectionBehavior = 'replace' switches the selection behavior\n // to 'toggle'. This changes the single tap behavior from performing an action (i.e. navigating) to\n // selecting, and may toggle the appearance of a UI affordance like checkboxes on each item.\n let {\n longPressProps: longPressProps\n } = $8a26561d2877236e$export$c24ed0104d07eab9({\n isDisabled: !longPressEnabled,\n onLongPress(e) {\n if (e.pointerType === 'touch') {\n onSelect(e);\n manager.setSelectionBehavior('toggle');\n }\n }\n });\n // Prevent native drag and drop on long press if we also select on long press.\n // Once the user is in selection mode, they can long press again to drag.\n // Use a capturing listener to ensure this runs before useDrag, regardless of\n // the order the props get merged.\n let onDragStartCapture = e => {\n if (modality.current === 'touch' && longPressEnabledOnPressStart.current) e.preventDefault();\n };\n return {\n itemProps: $3ef42575df84b30b$export$9d1611c77c2fe928(itemProps, allowsSelection || hasPrimaryAction ? pressProps : {}, longPressEnabled ? longPressProps : {}, {\n onDoubleClick: onDoubleClick,\n onDragStartCapture: onDragStartCapture\n }),\n isPressed: isPressed,\n isSelected: manager.isSelected(key),\n isFocused: manager.isFocused && manager.focusedKey === key,\n isDisabled: isDisabled,\n allowsSelection: allowsSelection,\n hasAction: hasAction\n };\n}\nfunction $880e95eb8b93ba9a$var$isActionKey() {\n let event = window.event;\n return (event === null || event === void 0 ? void 0 : event.key) === 'Enter';\n}\nfunction $880e95eb8b93ba9a$var$isSelectionKey() {\n let event = window.event;\n return (event === null || event === void 0 ? void 0 : event.key) === ' ' || (event === null || event === void 0 ? void 0 : event.code) === 'Space';\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nclass $2a25aae57d74318e$export$a05409b8bb224a5a {\n getNextKey(key) {\n key = this.collection.getKeyAfter(key);\n while (key != null) {\n let item = this.collection.getItem(key);\n if (item.type === 'item' && !this.disabledKeys.has(key)) return key;\n key = this.collection.getKeyAfter(key);\n }\n return null;\n }\n getPreviousKey(key) {\n key = this.collection.getKeyBefore(key);\n while (key != null) {\n let item = this.collection.getItem(key);\n if (item.type === 'item' && !this.disabledKeys.has(key)) return key;\n key = this.collection.getKeyBefore(key);\n }\n return null;\n }\n findKey(key, nextKey, shouldSkip) {\n let item = this.getItem(key);\n if (!item) return null;\n // Find the item above or below in the same column.\n let prevRect = item.getBoundingClientRect();\n do {\n key = nextKey(key);\n item = this.getItem(key);\n } while (item && shouldSkip(prevRect, item.getBoundingClientRect()));\n return key;\n }\n isSameRow(prevRect, itemRect) {\n return prevRect.top === itemRect.top || prevRect.left !== itemRect.left;\n }\n isSameColumn(prevRect, itemRect) {\n return prevRect.left === itemRect.left || prevRect.top !== itemRect.top;\n }\n getKeyBelow(key) {\n if (this.layout === 'grid' && this.orientation === 'vertical') return this.findKey(key, key => this.getNextKey(key), this.isSameRow);else return this.getNextKey(key);\n }\n getKeyAbove(key) {\n if (this.layout === 'grid' && this.orientation === 'vertical') return this.findKey(key, key => this.getPreviousKey(key), this.isSameRow);else return this.getPreviousKey(key);\n }\n getNextColumn(key, right) {\n return right ? this.getPreviousKey(key) : this.getNextKey(key);\n }\n getKeyRightOf(key) {\n if (this.layout === 'grid') {\n if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'rtl');else return this.findKey(key, key => this.getNextColumn(key, this.direction === 'rtl'), this.isSameColumn);\n } else if (this.orientation === 'horizontal') return this.getNextColumn(key, this.direction === 'rtl');\n return null;\n }\n getKeyLeftOf(key) {\n if (this.layout === 'grid') {\n if (this.orientation === 'vertical') return this.getNextColumn(key, this.direction === 'ltr');else return this.findKey(key, key => this.getNextColumn(key, this.direction === 'ltr'), this.isSameColumn);\n } else if (this.orientation === 'horizontal') return this.getNextColumn(key, this.direction === 'ltr');\n return null;\n }\n getFirstKey() {\n let key = this.collection.getFirstKey();\n while (key != null) {\n let item = this.collection.getItem(key);\n if (item.type === 'item' && !this.disabledKeys.has(key)) return key;\n key = this.collection.getKeyAfter(key);\n }\n return null;\n }\n getLastKey() {\n let key = this.collection.getLastKey();\n while (key != null) {\n let item = this.collection.getItem(key);\n if (item.type === 'item' && !this.disabledKeys.has(key)) return key;\n key = this.collection.getKeyBefore(key);\n }\n return null;\n }\n getItem(key) {\n return this.ref.current.querySelector(`[data-key=\"${key}\"]`);\n }\n getKeyPageAbove(key) {\n let menu = this.ref.current;\n let item = this.getItem(key);\n if (!item) return null;\n if (!$62d8ded9296f3872$export$2bb74740c4e19def(menu)) return this.getFirstKey();\n let containerRect = menu.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n if (this.orientation === 'horizontal') {\n let containerX = containerRect.x - menu.scrollLeft;\n let pageX = Math.max(0, itemRect.x - containerX + itemRect.width - containerRect.width);\n while (item && itemRect.x - containerX > pageX) {\n key = this.getKeyAbove(key);\n item = key == null ? null : this.getItem(key);\n itemRect = item === null || item === void 0 ? void 0 : item.getBoundingClientRect();\n }\n } else {\n let containerY = containerRect.y - menu.scrollTop;\n let pageY = Math.max(0, itemRect.y - containerY + itemRect.height - containerRect.height);\n while (item && itemRect.y - containerY > pageY) {\n key = this.getKeyAbove(key);\n item = key == null ? null : this.getItem(key);\n itemRect = item === null || item === void 0 ? void 0 : item.getBoundingClientRect();\n }\n }\n return key !== null && key !== void 0 ? key : this.getFirstKey();\n }\n getKeyPageBelow(key) {\n let menu = this.ref.current;\n let item = this.getItem(key);\n if (!item) return null;\n if (!$62d8ded9296f3872$export$2bb74740c4e19def(menu)) return this.getLastKey();\n let containerRect = menu.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n if (this.orientation === 'horizontal') {\n let containerX = containerRect.x - menu.scrollLeft;\n let pageX = Math.min(menu.scrollWidth, itemRect.x - containerX - itemRect.width + containerRect.width);\n while (item && itemRect.x - containerX < pageX) {\n key = this.getKeyBelow(key);\n item = key == null ? null : this.getItem(key);\n itemRect = item === null || item === void 0 ? void 0 : item.getBoundingClientRect();\n }\n } else {\n let containerY = containerRect.y - menu.scrollTop;\n let pageY = Math.min(menu.scrollHeight, itemRect.y - containerY - itemRect.height + containerRect.height);\n while (item && itemRect.y - containerY < pageY) {\n key = this.getKeyBelow(key);\n item = key == null ? null : this.getItem(key);\n itemRect = item === null || item === void 0 ? void 0 : item.getBoundingClientRect();\n }\n }\n return key !== null && key !== void 0 ? key : this.getLastKey();\n }\n getKeyForSearch(search, fromKey) {\n if (!this.collator) return null;\n let collection = this.collection;\n let key = fromKey || this.getFirstKey();\n while (key != null) {\n let item = collection.getItem(key);\n let substring = item.textValue.slice(0, search.length);\n if (item.textValue && this.collator.compare(substring, search) === 0) return key;\n key = this.getKeyBelow(key);\n }\n return null;\n }\n constructor() {\n if (arguments.length === 1) {\n let opts = arguments.length <= 0 ? undefined : arguments[0];\n this.collection = opts.collection;\n this.ref = opts.ref;\n this.disabledKeys = opts.disabledKeys || new Set();\n this.orientation = opts.orientation;\n this.direction = opts.direction;\n this.layout = opts.layout || 'stack';\n } else {\n this.collection = arguments.length <= 0 ? undefined : arguments[0];\n this.disabledKeys = arguments.length <= 1 ? undefined : arguments[1];\n this.ref = arguments.length <= 2 ? undefined : arguments[2];\n this.collator = arguments.length <= 3 ? undefined : arguments[3];\n this.layout = 'stack';\n this.orientation = 'vertical';\n }\n // If this is a vertical stack, remove the left/right methods completely\n // so they aren't called by useDroppableCollection.\n if (this.layout === 'stack' && this.orientation === 'vertical') {\n this.getKeyLeftOf = undefined;\n this.getKeyRightOf = undefined;\n }\n }\n}\nfunction $982254629710d113$export$b95089534ab7c1fd(props) {\n let {\n selectionManager: selectionManager,\n collection: collection,\n disabledKeys: disabledKeys,\n ref: ref,\n keyboardDelegate: keyboardDelegate,\n autoFocus: autoFocus,\n shouldFocusWrap: shouldFocusWrap,\n isVirtualized: isVirtualized,\n disallowEmptySelection: disallowEmptySelection,\n selectOnFocus = selectionManager.selectionBehavior === 'replace',\n disallowTypeAhead: disallowTypeAhead,\n shouldUseVirtualFocus: shouldUseVirtualFocus,\n allowsTabNavigation: allowsTabNavigation\n } = props;\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = $325a3faab7a68acd$export$a16aca283550c30d({\n usage: 'search',\n sensitivity: 'base'\n });\n let disabledBehavior = selectionManager.disabledBehavior;\n let delegate = useMemo(() => keyboardDelegate || new $2a25aae57d74318e$export$a05409b8bb224a5a(collection, disabledBehavior === 'selection' ? new Set() : disabledKeys, ref, collator), [keyboardDelegate, collection, disabledKeys, ref, collator, disabledBehavior]);\n let {\n collectionProps: collectionProps\n } = $ae20dd8cbca75726$export$d6daf82dcd84e87c({\n ref: ref,\n selectionManager: selectionManager,\n keyboardDelegate: delegate,\n autoFocus: autoFocus,\n shouldFocusWrap: shouldFocusWrap,\n disallowEmptySelection: disallowEmptySelection,\n selectOnFocus: selectOnFocus,\n disallowTypeAhead: disallowTypeAhead,\n shouldUseVirtualFocus: shouldUseVirtualFocus,\n allowsTabNavigation: allowsTabNavigation,\n isVirtualized: isVirtualized,\n scrollRef: ref\n });\n return {\n listProps: collectionProps\n };\n}\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nconst $b1f0cad8af73213b$export$3585ede4d035bf14 = new WeakMap();\nfunction $b1f0cad8af73213b$var$normalizeKey(key) {\n if (typeof key === 'string') return key.replace(/\\s*/g, '');\n return '' + key;\n}\nfunction $b1f0cad8af73213b$export$9145995848b05025(state, itemKey) {\n let data = $b1f0cad8af73213b$export$3585ede4d035bf14.get(state);\n if (!data) throw new Error('Unknown list');\n return `${data.id}-option-${$b1f0cad8af73213b$var$normalizeKey(itemKey)}`;\n}\nfunction $c132121280ec012d$export$50eacbbf140a3141(props, state, ref) {\n let domProps = $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, {\n labelable: true\n });\n let {\n listProps: listProps\n } = $982254629710d113$export$b95089534ab7c1fd({\n ...props,\n ref: ref,\n selectionManager: state.selectionManager,\n collection: state.collection,\n disabledKeys: state.disabledKeys\n });\n let {\n focusWithinProps: focusWithinProps\n } = $9ab94262bd0047c7$export$420e68273165f4ec({\n onFocusWithin: props.onFocus,\n onBlurWithin: props.onBlur,\n onFocusWithinChange: props.onFocusChange\n });\n // Share list id and some props with child options.\n let id = $bdb11010cef70236$export$f680877a34711e37(props.id);\n $b1f0cad8af73213b$export$3585ede4d035bf14.set(state, {\n id: id,\n shouldUseVirtualFocus: props.shouldUseVirtualFocus,\n shouldSelectOnPressUp: props.shouldSelectOnPressUp,\n shouldFocusOnHover: props.shouldFocusOnHover,\n isVirtualized: props.isVirtualized,\n onAction: props.onAction\n });\n let {\n labelProps: labelProps,\n fieldProps: fieldProps\n } = $d191a55c9702f145$export$8467354a121f1b9f({\n ...props,\n id: id,\n // listbox is not an HTML input element so it\n // shouldn't be labeled by a