{"version":3,"file":"js/vendors-9ca10f7e.min.js?t=1743075070513","mappings":"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","sources":["webpack://frontend/./node_modules/@vonage/vivid/shared/definition60.js","webpack://frontend/./node_modules/@vonage/vivid/shared/definition5.js","webpack://frontend/./node_modules/@vonage/vivid/shared/definition62.js"],"sourcesContent":["import { F as FoundationElement, D as DOM, _ as __decorate, a as attr, o as observable, h as html, r as registerFactory } from './index.js';\nimport { T as TreeItem$1, i as isTreeItemElement } from './tree-item.js';\nimport { i as isHTMLElement, g as getDisplayedNodes } from './dom.js';\nimport { k as keyEnter, e as keyArrowUp, f as keyArrowDown, h as keyArrowRight, i as keyArrowLeft, d as keyEnd, g as keyHome } from './key-codes.js';\nimport { r as ref } from './ref.js';\nimport { s as slotted } from './slotted.js';\nimport { c as classNames } from './class-names.js';\n\n/**\n * A Tree view Custom HTML Element.\n * Implements the {@link https://w3c.github.io/aria-practices/#TreeView | ARIA TreeView }.\n *\n * @slot - The default slot for tree items\n *\n * @public\n */\nlet TreeView$1 = class TreeView extends FoundationElement {\n constructor() {\n super(...arguments);\n /**\n * The tree item that is designated to be in the tab queue.\n *\n * @internal\n */\n this.currentFocused = null;\n /**\n * Handle focus events\n *\n * @internal\n */\n this.handleFocus = (e) => {\n if (this.slottedTreeItems.length < 1) {\n // no child items, nothing to do\n return;\n }\n if (e.target === this) {\n if (this.currentFocused === null) {\n this.currentFocused = this.getValidFocusableItem();\n }\n if (this.currentFocused !== null) {\n TreeItem$1.focusItem(this.currentFocused);\n }\n return;\n }\n if (this.contains(e.target)) {\n this.setAttribute(\"tabindex\", \"-1\");\n this.currentFocused = e.target;\n }\n };\n /**\n * Handle blur events\n *\n * @internal\n */\n this.handleBlur = (e) => {\n if (e.target instanceof HTMLElement &&\n (e.relatedTarget === null || !this.contains(e.relatedTarget))) {\n this.setAttribute(\"tabindex\", \"0\");\n }\n };\n /**\n * KeyDown handler\n *\n * @internal\n */\n this.handleKeyDown = (e) => {\n if (e.defaultPrevented) {\n return;\n }\n if (this.slottedTreeItems.length < 1) {\n return true;\n }\n const treeItems = this.getVisibleNodes();\n switch (e.key) {\n case keyHome:\n if (treeItems.length) {\n TreeItem$1.focusItem(treeItems[0]);\n }\n return;\n case keyEnd:\n if (treeItems.length) {\n TreeItem$1.focusItem(treeItems[treeItems.length - 1]);\n }\n return;\n case keyArrowLeft:\n if (e.target && this.isFocusableElement(e.target)) {\n const item = e.target;\n if (item instanceof TreeItem$1 &&\n item.childItemLength() > 0 &&\n item.expanded) {\n item.expanded = false;\n }\n else if (item instanceof TreeItem$1 &&\n item.parentElement instanceof TreeItem$1) {\n TreeItem$1.focusItem(item.parentElement);\n }\n }\n return false;\n case keyArrowRight:\n if (e.target && this.isFocusableElement(e.target)) {\n const item = e.target;\n if (item instanceof TreeItem$1 &&\n item.childItemLength() > 0 &&\n !item.expanded) {\n item.expanded = true;\n }\n else if (item instanceof TreeItem$1 && item.childItemLength() > 0) {\n this.focusNextNode(1, e.target);\n }\n }\n return;\n case keyArrowDown:\n if (e.target && this.isFocusableElement(e.target)) {\n this.focusNextNode(1, e.target);\n }\n return;\n case keyArrowUp:\n if (e.target && this.isFocusableElement(e.target)) {\n this.focusNextNode(-1, e.target);\n }\n return;\n case keyEnter:\n // In single-select trees where selection does not follow focus (see note below),\n // the default action is typically to select the focused node.\n this.handleClick(e);\n return;\n }\n // don't prevent default if we took no action\n return true;\n };\n /**\n * Handles the selected-changed events bubbling up\n * from child tree items\n *\n * @internal\n */\n this.handleSelectedChange = (e) => {\n if (e.defaultPrevented) {\n return;\n }\n if (!(e.target instanceof Element) || !isTreeItemElement(e.target)) {\n return true;\n }\n const item = e.target;\n if (item.selected) {\n if (this.currentSelected && this.currentSelected !== item) {\n this.currentSelected.selected = false;\n }\n // new selected item\n this.currentSelected = item;\n }\n else if (!item.selected && this.currentSelected === item) {\n // selected item deselected\n this.currentSelected = null;\n }\n return;\n };\n /**\n * Updates the tree view when slottedTreeItems changes\n */\n this.setItems = () => {\n // force single selection\n // defaults to first one found\n const selectedItem = this.treeView.querySelector(\"[aria-selected='true']\");\n this.currentSelected = selectedItem;\n // invalidate the current focused item if it is no longer valid\n if (this.currentFocused === null || !this.contains(this.currentFocused)) {\n this.currentFocused = this.getValidFocusableItem();\n }\n // toggle properties on child elements\n this.nested = this.checkForNestedItems();\n const treeItems = this.getVisibleNodes();\n treeItems.forEach(node => {\n if (isTreeItemElement(node)) {\n node.nested = this.nested;\n }\n });\n };\n /**\n * check if the item is focusable\n */\n this.isFocusableElement = (el) => {\n return isTreeItemElement(el);\n };\n this.isSelectedElement = (el) => {\n return el.selected;\n };\n }\n slottedTreeItemsChanged() {\n if (this.$fastController.isConnected) {\n // update for slotted children change\n this.setItems();\n }\n }\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute(\"tabindex\", \"0\");\n DOM.queueUpdate(() => {\n this.setItems();\n });\n }\n /**\n * Handles click events bubbling up\n *\n * @internal\n */\n handleClick(e) {\n if (e.defaultPrevented) {\n // handled, do nothing\n return;\n }\n if (!(e.target instanceof Element) || !isTreeItemElement(e.target)) {\n // not a tree item, ignore\n return true;\n }\n const item = e.target;\n if (!item.disabled) {\n item.selected = !item.selected;\n }\n return;\n }\n /**\n * Move focus to a tree item based on its offset from the provided item\n */\n focusNextNode(delta, item) {\n const visibleNodes = this.getVisibleNodes();\n if (!visibleNodes) {\n return;\n }\n const focusItem = visibleNodes[visibleNodes.indexOf(item) + delta];\n if (isHTMLElement(focusItem)) {\n TreeItem$1.focusItem(focusItem);\n }\n }\n /**\n * checks if there are any nested tree items\n */\n getValidFocusableItem() {\n const treeItems = this.getVisibleNodes();\n // default to selected element if there is one\n let focusIndex = treeItems.findIndex(this.isSelectedElement);\n if (focusIndex === -1) {\n // otherwise first focusable tree item\n focusIndex = treeItems.findIndex(this.isFocusableElement);\n }\n if (focusIndex !== -1) {\n return treeItems[focusIndex];\n }\n return null;\n }\n /**\n * checks if there are any nested tree items\n */\n checkForNestedItems() {\n return this.slottedTreeItems.some((node) => {\n return isTreeItemElement(node) && node.querySelector(\"[role='treeitem']\");\n });\n }\n getVisibleNodes() {\n return getDisplayedNodes(this, \"[role='treeitem']\") || [];\n }\n};\n__decorate([\n attr({ attribute: \"render-collapsed-nodes\" })\n], TreeView$1.prototype, \"renderCollapsedNodes\", void 0);\n__decorate([\n observable\n], TreeView$1.prototype, \"currentSelected\", void 0);\n__decorate([\n observable\n], TreeView$1.prototype, \"slottedTreeItems\", void 0);\n\nconst styles = \".control{position:relative;display:flex;flex-direction:column;gap:4px}\";\n\nclass TreeView extends TreeView$1 {\n}\n\nconst getClasses = (_) => classNames(\"control\");\nconst TreeViewTemplate = () => {\n return html` x.handleKeyDown(c.event)}\"\n\t\t@focusin=\"${(x, c) => x.handleFocus(c.event)}\"\n\t\t@focusout=\"${(x, c) => x.handleBlur(c.event)}\"\n\t\t@click=\"${(x, c) => x.handleClick(c.event)}\"\n\t\t@selected-change=\"${(x, c) => x.handleSelectedChange(c.event)}\"\n\t>\n\t\t