{"version":3,"file":"js/vendors-03e96e25.min.js?t=1750156235885","mappings":"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","sources":["webpack://frontend/./node_modules/@vonage/vivid/shared/definition17.js"],"sourcesContent":["import { a as iconRegistries } from './definition27.js';\nimport { F as FoundationElement, _ as __decorate, a as attr, o as observable, D as DOM, h as html, O as Observable, r as registerFactory } from './index.js';\nimport { d as keyEnd, g as keyHome, h as keyArrowRight, i as keyArrowLeft, j as keyPageDown, l as keyPageUp, f as keyArrowDown, e as keyArrowUp, b as keyEscape, m as keyFunction2, k as keyEnter } from './key-codes.js';\nimport { R as RepeatDirective } from './repeat.js';\nimport { s as slotted, e as elements } from './slotted.js';\nimport { c as children } from './children.js';\nimport { I as Icon } from './icon.js';\nimport { b as keyEnter$1, g as keySpace } from './key-codes2.js';\nimport { w as when } from './when.js';\n\n/**\n * This set of exported strings reference https://developer.mozilla.org/en-US/docs/Web/Events\n * and should include all non-deprecated and non-experimental Standard events\n */\nconst eventFocus = \"focus\";\nconst eventFocusIn = \"focusin\";\nconst eventFocusOut = \"focusout\";\nconst eventKeyDown = \"keydown\";\n\n/**\n * Enumerates the data grid auto generated header options\n * default option generates a non-sticky header row\n *\n * @public\n */\nconst GenerateHeaderOptions$1 = {\n    none: \"none\",\n    default: \"default\",\n    sticky: \"sticky\",\n};\n/**\n * Enumerates possible data grid cell types.\n *\n * @public\n */\nconst DataGridCellTypes = {\n    default: \"default\",\n    columnHeader: \"columnheader\",\n    rowHeader: \"rowheader\",\n};\n/**\n * Enumerates possible data grid row types\n *\n * @public\n */\nconst DataGridRowTypes$1 = {\n    default: \"default\",\n    header: \"header\",\n    stickyHeader: \"sticky-header\",\n};\n\n/**\n * A Data Grid Row Custom HTML Element.\n *\n * @fires row-focused - Fires a custom 'row-focused' event when focus is on an element (usually a cell or its contents) in the row\n * @slot - The default slot for custom cell elements\n * @public\n */\nlet DataGridRow$1 = class DataGridRow extends FoundationElement {\n    constructor() {\n        super(...arguments);\n        /**\n         * The type of row\n         *\n         * @public\n         * @remarks\n         * HTML Attribute: row-type\n         */\n        this.rowType = DataGridRowTypes$1.default;\n        /**\n         * The base data for this row\n         *\n         * @public\n         */\n        this.rowData = null;\n        /**\n         * The column definitions of the row\n         *\n         * @public\n         */\n        this.columnDefinitions = null;\n        /**\n         * Whether focus is on/in a cell within this row.\n         *\n         * @internal\n         */\n        this.isActiveRow = false;\n        this.cellsRepeatBehavior = null;\n        this.cellsPlaceholder = null;\n        /**\n         * @internal\n         */\n        this.focusColumnIndex = 0;\n        this.refocusOnLoad = false;\n        this.updateRowStyle = () => {\n            this.style.gridTemplateColumns = this.gridTemplateColumns;\n        };\n    }\n    gridTemplateColumnsChanged() {\n        if (this.$fastController.isConnected) {\n            this.updateRowStyle();\n        }\n    }\n    rowTypeChanged() {\n        if (this.$fastController.isConnected) {\n            this.updateItemTemplate();\n        }\n    }\n    rowDataChanged() {\n        if (this.rowData !== null && this.isActiveRow) {\n            this.refocusOnLoad = true;\n            return;\n        }\n    }\n    cellItemTemplateChanged() {\n        this.updateItemTemplate();\n    }\n    headerCellItemTemplateChanged() {\n        this.updateItemTemplate();\n    }\n    /**\n     * @internal\n     */\n    connectedCallback() {\n        super.connectedCallback();\n        // note that row elements can be reused with a different data object\n        // as the parent grid's repeat behavior reacts to changes in the data set.\n        if (this.cellsRepeatBehavior === null) {\n            this.cellsPlaceholder = document.createComment(\"\");\n            this.appendChild(this.cellsPlaceholder);\n            this.updateItemTemplate();\n            this.cellsRepeatBehavior = new RepeatDirective(x => x.columnDefinitions, x => x.activeCellItemTemplate, { positioning: true }).createBehavior(this.cellsPlaceholder);\n            /* eslint-disable-next-line @typescript-eslint/no-non-null-assertion */\n            this.$fastController.addBehaviors([this.cellsRepeatBehavior]);\n        }\n        this.addEventListener(\"cell-focused\", this.handleCellFocus);\n        this.addEventListener(eventFocusOut, this.handleFocusout);\n        this.addEventListener(eventKeyDown, this.handleKeydown);\n        this.updateRowStyle();\n        if (this.refocusOnLoad) {\n            // if focus was on the row when data changed try to refocus on same cell\n            this.refocusOnLoad = false;\n            if (this.cellElements.length > this.focusColumnIndex) {\n                this.cellElements[this.focusColumnIndex].focus();\n            }\n        }\n    }\n    /**\n     * @internal\n     */\n    disconnectedCallback() {\n        super.disconnectedCallback();\n        this.removeEventListener(\"cell-focused\", this.handleCellFocus);\n        this.removeEventListener(eventFocusOut, this.handleFocusout);\n        this.removeEventListener(eventKeyDown, this.handleKeydown);\n    }\n    handleFocusout(e) {\n        if (!this.contains(e.target)) {\n            this.isActiveRow = false;\n            this.focusColumnIndex = 0;\n        }\n    }\n    handleCellFocus(e) {\n        this.isActiveRow = true;\n        this.focusColumnIndex = this.cellElements.indexOf(e.target);\n        this.$emit(\"row-focused\", this);\n    }\n    handleKeydown(e) {\n        if (e.defaultPrevented) {\n            return;\n        }\n        let newFocusColumnIndex = 0;\n        switch (e.key) {\n            case keyArrowLeft:\n                // focus left one cell\n                newFocusColumnIndex = Math.max(0, this.focusColumnIndex - 1);\n                this.cellElements[newFocusColumnIndex].focus();\n                e.preventDefault();\n                break;\n            case keyArrowRight:\n                // focus right one cell\n                newFocusColumnIndex = Math.min(this.cellElements.length - 1, this.focusColumnIndex + 1);\n                this.cellElements[newFocusColumnIndex].focus();\n                e.preventDefault();\n                break;\n            case keyHome:\n                if (!e.ctrlKey) {\n                    this.cellElements[0].focus();\n                    e.preventDefault();\n                }\n                break;\n            case keyEnd:\n                if (!e.ctrlKey) {\n                    // focus last cell of the row\n                    this.cellElements[this.cellElements.length - 1].focus();\n                    e.preventDefault();\n                }\n                break;\n        }\n    }\n    updateItemTemplate() {\n        this.activeCellItemTemplate =\n            this.rowType === DataGridRowTypes$1.default &&\n                this.cellItemTemplate !== undefined\n                ? this.cellItemTemplate\n                : this.rowType === DataGridRowTypes$1.default &&\n                    this.cellItemTemplate === undefined\n                    ? this.defaultCellItemTemplate\n                    : this.headerCellItemTemplate !== undefined\n                        ? this.headerCellItemTemplate\n                        : this.defaultHeaderCellItemTemplate;\n    }\n};\n__decorate([\n    attr({ attribute: \"grid-template-columns\" })\n], DataGridRow$1.prototype, \"gridTemplateColumns\", void 0);\n__decorate([\n    attr({ attribute: \"row-type\" })\n], DataGridRow$1.prototype, \"rowType\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"rowData\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"columnDefinitions\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"cellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"headerCellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"rowIndex\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"isActiveRow\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"activeCellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"defaultCellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"defaultHeaderCellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGridRow$1.prototype, \"cellElements\", void 0);\n\n/**\n * A Data Grid Custom HTML Element.\n *\n * @slot - The default slot for custom row elements\n * @public\n */\nlet DataGrid$1 = class DataGrid extends FoundationElement {\n    constructor() {\n        super();\n        /**\n         * When true the component will not add itself to the tab queue.\n         * Default is false.\n         *\n         * @public\n         * @remarks\n         * HTML Attribute: no-tabbing\n         */\n        this.noTabbing = false;\n        /**\n         *  Whether the grid should automatically generate a header row and its type\n         *\n         * @public\n         * @remarks\n         * HTML Attribute: generate-header\n         */\n        this.generateHeader = GenerateHeaderOptions$1.default;\n        /**\n         * The data being displayed in the grid\n         *\n         * @public\n         */\n        this.rowsData = [];\n        /**\n         * The column definitions of the grid\n         *\n         * @public\n         */\n        this.columnDefinitions = null;\n        /**\n         * The index of the row that will receive focus the next time the\n         * grid is focused. This value changes as focus moves to different\n         * rows within the grid.  Changing this value when focus is already\n         * within the grid moves focus to the specified row.\n         *\n         * @public\n         */\n        this.focusRowIndex = 0;\n        /**\n         * The index of the column that will receive focus the next time the\n         * grid is focused. This value changes as focus moves to different rows\n         * within the grid.  Changing this value when focus is already within\n         * the grid moves focus to the specified column.\n         *\n         * @public\n         */\n        this.focusColumnIndex = 0;\n        this.rowsPlaceholder = null;\n        this.generatedHeader = null;\n        this.isUpdatingFocus = false;\n        this.pendingFocusUpdate = false;\n        this.rowindexUpdateQueued = false;\n        this.columnDefinitionsStale = true;\n        this.generatedGridTemplateColumns = \"\";\n        this.focusOnCell = (rowIndex, columnIndex, scrollIntoView) => {\n            if (this.rowElements.length === 0) {\n                this.focusRowIndex = 0;\n                this.focusColumnIndex = 0;\n                return;\n            }\n            const focusRowIndex = Math.max(0, Math.min(this.rowElements.length - 1, rowIndex));\n            const focusRow = this.rowElements[focusRowIndex];\n            const cells = focusRow.querySelectorAll('[role=\"cell\"], [role=\"gridcell\"], [role=\"columnheader\"], [role=\"rowheader\"]');\n            const focusColumnIndex = Math.max(0, Math.min(cells.length - 1, columnIndex));\n            const focusTarget = cells[focusColumnIndex];\n            if (scrollIntoView &&\n                this.scrollHeight !== this.clientHeight &&\n                ((focusRowIndex < this.focusRowIndex && this.scrollTop > 0) ||\n                    (focusRowIndex > this.focusRowIndex &&\n                        this.scrollTop < this.scrollHeight - this.clientHeight))) {\n                focusTarget.scrollIntoView({ block: \"center\", inline: \"center\" });\n            }\n            focusTarget.focus();\n        };\n        this.onChildListChange = (mutations, \n        /* eslint-disable-next-line @typescript-eslint/no-unused-vars */\n        observer) => {\n            if (mutations && mutations.length) {\n                mutations.forEach((mutation) => {\n                    mutation.addedNodes.forEach((newNode) => {\n                        if (newNode.nodeType === 1 &&\n                            newNode.getAttribute(\"role\") === \"row\") {\n                            newNode.columnDefinitions = this.columnDefinitions;\n                        }\n                    });\n                });\n                this.queueRowIndexUpdate();\n            }\n        };\n        this.queueRowIndexUpdate = () => {\n            if (!this.rowindexUpdateQueued) {\n                this.rowindexUpdateQueued = true;\n                DOM.queueUpdate(this.updateRowIndexes);\n            }\n        };\n        this.updateRowIndexes = () => {\n            let newGridTemplateColumns = this.gridTemplateColumns;\n            if (newGridTemplateColumns === undefined) {\n                // try to generate columns based on manual rows\n                if (this.generatedGridTemplateColumns === \"\" && this.rowElements.length > 0) {\n                    const firstRow = this.rowElements[0];\n                    this.generatedGridTemplateColumns = new Array(firstRow.cellElements.length)\n                        .fill(\"1fr\")\n                        .join(\" \");\n                }\n                newGridTemplateColumns = this.generatedGridTemplateColumns;\n            }\n            this.rowElements.forEach((element, index) => {\n                const thisRow = element;\n                thisRow.rowIndex = index;\n                thisRow.gridTemplateColumns = newGridTemplateColumns;\n                if (this.columnDefinitionsStale) {\n                    thisRow.columnDefinitions = this.columnDefinitions;\n                }\n            });\n            this.rowindexUpdateQueued = false;\n            this.columnDefinitionsStale = false;\n        };\n    }\n    /**\n     *  generates a gridTemplateColumns based on columndata array\n     */\n    static generateTemplateColumns(columnDefinitions) {\n        let templateColumns = \"\";\n        columnDefinitions.forEach((column) => {\n            templateColumns = `${templateColumns}${templateColumns === \"\" ? \"\" : \" \"}${\"1fr\"}`;\n        });\n        return templateColumns;\n    }\n    noTabbingChanged() {\n        if (this.$fastController.isConnected) {\n            if (this.noTabbing) {\n                this.setAttribute(\"tabIndex\", \"-1\");\n            }\n            else {\n                this.setAttribute(\"tabIndex\", this.contains(document.activeElement) ||\n                    this === document.activeElement\n                    ? \"-1\"\n                    : \"0\");\n            }\n        }\n    }\n    generateHeaderChanged() {\n        if (this.$fastController.isConnected) {\n            this.toggleGeneratedHeader();\n        }\n    }\n    gridTemplateColumnsChanged() {\n        if (this.$fastController.isConnected) {\n            this.updateRowIndexes();\n        }\n    }\n    rowsDataChanged() {\n        if (this.columnDefinitions === null && this.rowsData.length > 0) {\n            this.columnDefinitions = DataGrid.generateColumns(this.rowsData[0]);\n        }\n        if (this.$fastController.isConnected) {\n            this.toggleGeneratedHeader();\n        }\n    }\n    columnDefinitionsChanged() {\n        if (this.columnDefinitions === null) {\n            this.generatedGridTemplateColumns = \"\";\n            return;\n        }\n        this.generatedGridTemplateColumns = DataGrid.generateTemplateColumns(this.columnDefinitions);\n        if (this.$fastController.isConnected) {\n            this.columnDefinitionsStale = true;\n            this.queueRowIndexUpdate();\n        }\n    }\n    headerCellItemTemplateChanged() {\n        if (this.$fastController.isConnected) {\n            if (this.generatedHeader !== null) {\n                this.generatedHeader.headerCellItemTemplate = this.headerCellItemTemplate;\n            }\n        }\n    }\n    focusRowIndexChanged() {\n        if (this.$fastController.isConnected) {\n            this.queueFocusUpdate();\n        }\n    }\n    focusColumnIndexChanged() {\n        if (this.$fastController.isConnected) {\n            this.queueFocusUpdate();\n        }\n    }\n    /**\n     * @internal\n     */\n    connectedCallback() {\n        super.connectedCallback();\n        if (this.rowItemTemplate === undefined) {\n            this.rowItemTemplate = this.defaultRowItemTemplate;\n        }\n        this.rowsPlaceholder = document.createComment(\"\");\n        this.appendChild(this.rowsPlaceholder);\n        this.toggleGeneratedHeader();\n        this.rowsRepeatBehavior = new RepeatDirective(x => x.rowsData, x => x.rowItemTemplate, { positioning: true }).createBehavior(this.rowsPlaceholder);\n        /* eslint-disable-next-line @typescript-eslint/no-non-null-assertion */\n        this.$fastController.addBehaviors([this.rowsRepeatBehavior]);\n        this.addEventListener(\"row-focused\", this.handleRowFocus);\n        this.addEventListener(eventFocus, this.handleFocus);\n        this.addEventListener(eventKeyDown, this.handleKeydown);\n        this.addEventListener(eventFocusOut, this.handleFocusOut);\n        this.observer = new MutationObserver(this.onChildListChange);\n        // only observe if nodes are added or removed\n        this.observer.observe(this, { childList: true });\n        if (this.noTabbing) {\n            this.setAttribute(\"tabindex\", \"-1\");\n        }\n        DOM.queueUpdate(this.queueRowIndexUpdate);\n    }\n    /**\n     * @internal\n     */\n    disconnectedCallback() {\n        super.disconnectedCallback();\n        this.removeEventListener(\"row-focused\", this.handleRowFocus);\n        this.removeEventListener(eventFocus, this.handleFocus);\n        this.removeEventListener(eventKeyDown, this.handleKeydown);\n        this.removeEventListener(eventFocusOut, this.handleFocusOut);\n        // disconnect observer\n        this.observer.disconnect();\n        this.rowsPlaceholder = null;\n        this.generatedHeader = null;\n    }\n    /**\n     * @internal\n     */\n    handleRowFocus(e) {\n        this.isUpdatingFocus = true;\n        const focusRow = e.target;\n        this.focusRowIndex = this.rowElements.indexOf(focusRow);\n        this.focusColumnIndex = focusRow.focusColumnIndex;\n        this.setAttribute(\"tabIndex\", \"-1\");\n        this.isUpdatingFocus = false;\n    }\n    /**\n     * @internal\n     */\n    handleFocus(e) {\n        this.focusOnCell(this.focusRowIndex, this.focusColumnIndex, true);\n    }\n    /**\n     * @internal\n     */\n    handleFocusOut(e) {\n        if (e.relatedTarget === null || !this.contains(e.relatedTarget)) {\n            this.setAttribute(\"tabIndex\", this.noTabbing ? \"-1\" : \"0\");\n        }\n    }\n    /**\n     * @internal\n     */\n    handleKeydown(e) {\n        if (e.defaultPrevented) {\n            return;\n        }\n        let newFocusRowIndex;\n        const maxIndex = this.rowElements.length - 1;\n        const currentGridBottom = this.offsetHeight + this.scrollTop;\n        const lastRow = this.rowElements[maxIndex];\n        switch (e.key) {\n            case keyArrowUp:\n                e.preventDefault();\n                // focus up one row\n                this.focusOnCell(this.focusRowIndex - 1, this.focusColumnIndex, true);\n                break;\n            case keyArrowDown:\n                e.preventDefault();\n                // focus down one row\n                this.focusOnCell(this.focusRowIndex + 1, this.focusColumnIndex, true);\n                break;\n            case keyPageUp:\n                e.preventDefault();\n                if (this.rowElements.length === 0) {\n                    this.focusOnCell(0, 0, false);\n                    break;\n                }\n                if (this.focusRowIndex === 0) {\n                    this.focusOnCell(0, this.focusColumnIndex, false);\n                    return;\n                }\n                newFocusRowIndex = this.focusRowIndex - 1;\n                for (newFocusRowIndex; newFocusRowIndex >= 0; newFocusRowIndex--) {\n                    const thisRow = this.rowElements[newFocusRowIndex];\n                    if (thisRow.offsetTop < this.scrollTop) {\n                        this.scrollTop =\n                            thisRow.offsetTop + thisRow.clientHeight - this.clientHeight;\n                        break;\n                    }\n                }\n                this.focusOnCell(newFocusRowIndex, this.focusColumnIndex, false);\n                break;\n            case keyPageDown:\n                e.preventDefault();\n                if (this.rowElements.length === 0) {\n                    this.focusOnCell(0, 0, false);\n                    break;\n                }\n                // focus down one \"page\"\n                if (this.focusRowIndex >= maxIndex ||\n                    lastRow.offsetTop + lastRow.offsetHeight <= currentGridBottom) {\n                    this.focusOnCell(maxIndex, this.focusColumnIndex, false);\n                    return;\n                }\n                newFocusRowIndex = this.focusRowIndex + 1;\n                for (newFocusRowIndex; newFocusRowIndex <= maxIndex; newFocusRowIndex++) {\n                    const thisRow = this.rowElements[newFocusRowIndex];\n                    if (thisRow.offsetTop + thisRow.offsetHeight > currentGridBottom) {\n                        let stickyHeaderOffset = 0;\n                        if (this.generateHeader === GenerateHeaderOptions$1.sticky &&\n                            this.generatedHeader !== null) {\n                            stickyHeaderOffset = this.generatedHeader.clientHeight;\n                        }\n                        this.scrollTop = thisRow.offsetTop - stickyHeaderOffset;\n                        break;\n                    }\n                }\n                this.focusOnCell(newFocusRowIndex, this.focusColumnIndex, false);\n                break;\n            case keyHome:\n                if (e.ctrlKey) {\n                    e.preventDefault();\n                    // focus first cell of first row\n                    this.focusOnCell(0, 0, true);\n                }\n                break;\n            case keyEnd:\n                if (e.ctrlKey && this.columnDefinitions !== null) {\n                    e.preventDefault();\n                    // focus last cell of last row\n                    this.focusOnCell(this.rowElements.length - 1, this.columnDefinitions.length - 1, true);\n                }\n                break;\n        }\n    }\n    queueFocusUpdate() {\n        if (this.isUpdatingFocus &&\n            (this.contains(document.activeElement) || this === document.activeElement)) {\n            return;\n        }\n        if (this.pendingFocusUpdate === false) {\n            this.pendingFocusUpdate = true;\n            DOM.queueUpdate(() => this.updateFocus());\n        }\n    }\n    updateFocus() {\n        this.pendingFocusUpdate = false;\n        this.focusOnCell(this.focusRowIndex, this.focusColumnIndex, true);\n    }\n    toggleGeneratedHeader() {\n        if (this.generatedHeader !== null) {\n            this.removeChild(this.generatedHeader);\n            this.generatedHeader = null;\n        }\n        if (this.generateHeader !== GenerateHeaderOptions$1.none &&\n            this.rowsData.length > 0) {\n            const generatedHeaderElement = document.createElement(this.rowElementTag);\n            this.generatedHeader = generatedHeaderElement;\n            this.generatedHeader.columnDefinitions = this.columnDefinitions;\n            this.generatedHeader.gridTemplateColumns = this.gridTemplateColumns;\n            this.generatedHeader.rowType =\n                this.generateHeader === GenerateHeaderOptions$1.sticky\n                    ? DataGridRowTypes$1.stickyHeader\n                    : DataGridRowTypes$1.header;\n            if (this.firstChild !== null || this.rowsPlaceholder !== null) {\n                this.insertBefore(generatedHeaderElement, this.firstChild !== null ? this.firstChild : this.rowsPlaceholder);\n            }\n            return;\n        }\n    }\n};\n/**\n *  generates a basic column definition by examining sample row data\n */\nDataGrid$1.generateColumns = (row) => {\n    return Object.getOwnPropertyNames(row).map((property, index) => {\n        return {\n            columnDataKey: property,\n            gridColumn: `${index}`,\n        };\n    });\n};\n__decorate([\n    attr({ attribute: \"no-tabbing\", mode: \"boolean\" })\n], DataGrid$1.prototype, \"noTabbing\", void 0);\n__decorate([\n    attr({ attribute: \"generate-header\" })\n], DataGrid$1.prototype, \"generateHeader\", void 0);\n__decorate([\n    attr({ attribute: \"grid-template-columns\" })\n], DataGrid$1.prototype, \"gridTemplateColumns\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"rowsData\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"columnDefinitions\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"rowItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"cellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"headerCellItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"focusRowIndex\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"focusColumnIndex\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"defaultRowItemTemplate\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"rowElementTag\", void 0);\n__decorate([\n    observable\n], DataGrid$1.prototype, \"rowElements\", void 0);\n\nconst defaultCellContentsTemplate = html `\n    <template>\n        ${x => x.rowData === null ||\n    x.columnDefinition === null ||\n    x.columnDefinition.columnDataKey === null\n    ? null\n    : x.rowData[x.columnDefinition.columnDataKey]}\n    </template>\n`;\nconst defaultHeaderCellContentsTemplate = html `\n    <template>\n        ${x => x.columnDefinition === null\n    ? null\n    : x.columnDefinition.title === undefined\n        ? x.columnDefinition.columnDataKey\n        : x.columnDefinition.title}\n    </template>\n`;\n/**\n * A Data Grid Cell Custom HTML Element.\n *\n * @fires cell-focused - Fires a custom 'cell-focused' event when focus is on the cell or its contents\n * @slot - The default slot for cell contents.  The \"cell contents template\" renders here.\n * @public\n */\nlet DataGridCell$1 = class DataGridCell extends FoundationElement {\n    constructor() {\n        super(...arguments);\n        /**\n         * The type of cell\n         *\n         * @public\n         * @remarks\n         * HTML Attribute: cell-type\n         */\n        this.cellType = DataGridCellTypes.default;\n        /**\n         * The base data for the parent row\n         *\n         * @public\n         */\n        this.rowData = null;\n        /**\n         * The base data for the column\n         *\n         * @public\n         */\n        this.columnDefinition = null;\n        this.isActiveCell = false;\n        this.customCellView = null;\n        this.updateCellStyle = () => {\n            this.style.gridColumn = this.gridColumn;\n        };\n    }\n    cellTypeChanged() {\n        if (this.$fastController.isConnected) {\n            this.updateCellView();\n        }\n    }\n    gridColumnChanged() {\n        if (this.$fastController.isConnected) {\n            this.updateCellStyle();\n        }\n    }\n    columnDefinitionChanged(oldValue, newValue) {\n        if (this.$fastController.isConnected) {\n            this.updateCellView();\n        }\n    }\n    /**\n     * @internal\n     */\n    connectedCallback() {\n        var _a;\n        super.connectedCallback();\n        this.addEventListener(eventFocusIn, this.handleFocusin);\n        this.addEventListener(eventFocusOut, this.handleFocusout);\n        this.addEventListener(eventKeyDown, this.handleKeydown);\n        this.style.gridColumn = `${((_a = this.columnDefinition) === null || _a === void 0 ? void 0 : _a.gridColumn) === undefined\n            ? 0\n            : this.columnDefinition.gridColumn}`;\n        this.updateCellView();\n        this.updateCellStyle();\n    }\n    /**\n     * @internal\n     */\n    disconnectedCallback() {\n        super.disconnectedCallback();\n        this.removeEventListener(eventFocusIn, this.handleFocusin);\n        this.removeEventListener(eventFocusOut, this.handleFocusout);\n        this.removeEventListener(eventKeyDown, this.handleKeydown);\n        this.disconnectCellView();\n    }\n    handleFocusin(e) {\n        if (this.isActiveCell) {\n            return;\n        }\n        this.isActiveCell = true;\n        switch (this.cellType) {\n            case DataGridCellTypes.columnHeader:\n                if (this.columnDefinition !== null &&\n                    this.columnDefinition.headerCellInternalFocusQueue !== true &&\n                    typeof this.columnDefinition.headerCellFocusTargetCallback ===\n                        \"function\") {\n                    // move focus to the focus target\n                    const focusTarget = this.columnDefinition.headerCellFocusTargetCallback(this);\n                    if (focusTarget !== null) {\n                        focusTarget.focus();\n                    }\n                }\n                break;\n            default:\n                if (this.columnDefinition !== null &&\n                    this.columnDefinition.cellInternalFocusQueue !== true &&\n                    typeof this.columnDefinition.cellFocusTargetCallback === \"function\") {\n                    // move focus to the focus target\n                    const focusTarget = this.columnDefinition.cellFocusTargetCallback(this);\n                    if (focusTarget !== null) {\n                        focusTarget.focus();\n                    }\n                }\n                break;\n        }\n        this.$emit(\"cell-focused\", this);\n    }\n    handleFocusout(e) {\n        if (this !== document.activeElement && !this.contains(document.activeElement)) {\n            this.isActiveCell = false;\n        }\n    }\n    handleKeydown(e) {\n        if (e.defaultPrevented ||\n            this.columnDefinition === null ||\n            (this.cellType === DataGridCellTypes.default &&\n                this.columnDefinition.cellInternalFocusQueue !== true) ||\n            (this.cellType === DataGridCellTypes.columnHeader &&\n                this.columnDefinition.headerCellInternalFocusQueue !== true)) {\n            return;\n        }\n        switch (e.key) {\n            case keyEnter:\n            case keyFunction2:\n                if (this.contains(document.activeElement) &&\n                    document.activeElement !== this) {\n                    return;\n                }\n                switch (this.cellType) {\n                    case DataGridCellTypes.columnHeader:\n                        if (this.columnDefinition.headerCellFocusTargetCallback !==\n                            undefined) {\n                            const focusTarget = this.columnDefinition.headerCellFocusTargetCallback(this);\n                            if (focusTarget !== null) {\n                                focusTarget.focus();\n                            }\n                            e.preventDefault();\n                        }\n                        break;\n                    default:\n                        if (this.columnDefinition.cellFocusTargetCallback !== undefined) {\n                            const focusTarget = this.columnDefinition.cellFocusTargetCallback(this);\n                            if (focusTarget !== null) {\n                                focusTarget.focus();\n                            }\n                            e.preventDefault();\n                        }\n                        break;\n                }\n                break;\n            case keyEscape:\n                if (this.contains(document.activeElement) &&\n                    document.activeElement !== this) {\n                    this.focus();\n                    e.preventDefault();\n                }\n                break;\n        }\n    }\n    updateCellView() {\n        this.disconnectCellView();\n        if (this.columnDefinition === null) {\n            return;\n        }\n        switch (this.cellType) {\n            case DataGridCellTypes.columnHeader:\n                if (this.columnDefinition.headerCellTemplate !== undefined) {\n                    this.customCellView = this.columnDefinition.headerCellTemplate.render(this, this);\n                }\n                else {\n                    this.customCellView = defaultHeaderCellContentsTemplate.render(this, this);\n                }\n                break;\n            case undefined:\n            case DataGridCellTypes.rowHeader:\n            case DataGridCellTypes.default:\n                if (this.columnDefinition.cellTemplate !== undefined) {\n                    this.customCellView = this.columnDefinition.cellTemplate.render(this, this);\n                }\n                else {\n                    this.customCellView = defaultCellContentsTemplate.render(this, this);\n                }\n                break;\n        }\n    }\n    disconnectCellView() {\n        if (this.customCellView !== null) {\n            this.customCellView.dispose();\n            this.customCellView = null;\n        }\n    }\n};\n__decorate([\n    attr({ attribute: \"cell-type\" })\n], DataGridCell$1.prototype, \"cellType\", void 0);\n__decorate([\n    attr({ attribute: \"grid-column\" })\n], DataGridCell$1.prototype, \"gridColumn\", void 0);\n__decorate([\n    observable\n], DataGridCell$1.prototype, \"rowData\", void 0);\n__decorate([\n    observable\n], DataGridCell$1.prototype, \"columnDefinition\", void 0);\n\nconst dataGridStyles = \":host{display:block}:host([generate-header=sticky]){max-block-size:400px}.base{position:relative;overflow:auto;block-size:inherit;inline-size:100%;max-block-size:inherit}\";\n\nconst dataGridRowStyles = \".base{display:grid;width:100%;box-sizing:border-box;color:var(--vvd-color-canvas-text)}.base.connotation-cta{--_connotation-color-primary: var(--vvd-data-grid-row-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-data-grid-row-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-data-grid-row-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-firm: var(--vvd-data-grid-row-cta-firm, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-data-grid-row-cta-faint, var(--vvd-color-cta-50));--_connotation-color-soft: var(--vvd-data-grid-row-cta-soft, var(--vvd-color-cta-100));--_connotation-color-pale: var(--vvd-data-grid-row-cta-pale, var(--vvd-color-cta-300));--_connotation-color-dim: var(--vvd-data-grid-row-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-data-grid-row-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-data-grid-row-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-data-grid-row-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-firm: var(--vvd-data-grid-row-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-data-grid-row-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-data-grid-row-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-pale: var(--vvd-data-grid-row-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-dim: var(--vvd-data-grid-row-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}:host([row-type=sticky-header]) .base{position:sticky;z-index:9;top:0;background:var(--data-grid-row-background, var(--vvd-color-canvas))}:host([row-type=hidden-header]) .base{display:none}:host(:is([aria-selected]):not([row-type*=header])) .base{background-color:var(--_appearance-color-fill)}\";\n\nconst dataGridCellStyles = \":host{block-size:100%;min-inline-size:80px}:host(:focus-visible){outline:none}.base{display:flex;box-sizing:border-box;align-items:center;padding:14px 12px;border-bottom:1px solid var(--vvd-color-neutral-300);block-size:var(--data-grid-cell-block-size, calc(1px*(48 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) );color:var(--_appearance-color-text);font:var(--vvd-typography-base);min-block-size:calc(1px*(48 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base.connotation-cta{--_connotation-color-primary: var(--vvd-data-grid-cell-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-data-grid-cell-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-data-grid-cell-cta-primary-increment, var(--vvd-color-cta-600));--_connotation-color-firm: var(--vvd-data-grid-cell-cta-firm, var(--vvd-color-cta-600));--_connotation-color-soft: var(--vvd-data-grid-cell-cta-soft, var(--vvd-color-cta-100));--_connotation-color-faint: var(--vvd-data-grid-cell-cta-faint, var(--vvd-color-cta-50));--_connotation-color-pale: var(--vvd-data-grid-cell-cta-pale, var(--vvd-color-cta-300));--_connotation-color-dim: var(--vvd-data-grid-cell-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-data-grid-cell-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-data-grid-cell-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-data-grid-cell-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-firm: var(--vvd-data-grid-cell-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-soft: var(--vvd-data-grid-cell-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-faint: var(--vvd-data-grid-cell-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-pale: var(--vvd-data-grid-cell-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-dim: var(--vvd-data-grid-cell-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}:host(:focus-visible) .base{--focus-stroke-gap-color: transparent;box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px))}:host([cell-type=columnheader]) .base{border-color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base-bold)}:host(:is([aria-selected]):not([cell-type=columnheader])) .base{background-color:var(--_appearance-color-fill)}slot{display:block;overflow:hidden;inline-size:100%;text-overflow:ellipsis;white-space:var(--data-grid-cell-white-space, nowrap)}.header-icon{margin-inline-start:auto}\";\n\nconst DataGridCellSortStates = {\n  none: \"none\",\n  ascending: \"ascending\",\n  descending: \"descending\",\n  other: \"other\"\n};\nconst GenerateHeaderOptions = {\n  none: \"none\",\n  default: \"default\",\n  sticky: \"sticky\"\n};\nconst DataGridRowTypes = {\n  default: \"default\",\n  header: \"header\",\n  stickyHeader: \"sticky-header\"\n};\nconst DataGridCellRole = {\n  columnheader: \"columnheader\",\n  rowheader: \"rowheader\",\n  default: \"gridcell\"\n};\n\nvar __defProp$2 = Object.defineProperty;\nvar __decorateClass$2 = (decorators, target, key, kind) => {\n  var result = void 0 ;\n  for (var i = decorators.length - 1, decorator; i >= 0; i--)\n    if (decorator = decorators[i])\n      result = (decorator(target, key, result) ) || result;\n  if (result)\n    __defProp$2(target, key, result);\n  return result;\n};\nconst DataGridSelectionMode = {\n  none: \"none\",\n  singleRow: \"single-row\",\n  multiRow: \"multi-row\",\n  singleCell: \"single-cell\",\n  multiCell: \"multi-cell\"\n};\nclass DataGrid extends DataGrid$1 {\n  /**\n   *\n   *\n   * @internal\n   */\n  slottedRowElementsChanged(_oldValue, _newValue) {\n    this.#initSelections();\n  }\n  get #selectedRows() {\n    return this.rowElements.filter(\n      (row) => row.getAttribute(\"aria-selected\") === \"true\"\n    );\n  }\n  get #selectedCells() {\n    return this.rowElements.reduce((acc, row) => {\n      const rowChildren = Array.from(row.children);\n      const selectedCells = rowChildren.filter(\n        (cell) => cell.getAttribute(\"aria-selected\") === \"true\"\n      );\n      return acc.concat(selectedCells);\n    }, []);\n  }\n  selectionModeChanged(oldValue) {\n    if (oldValue === void 0) {\n      DOM.queueUpdate(this.#initSelections);\n      return;\n    }\n    this.#resetSelection();\n  }\n  #handleKeypress = (e) => {\n    if (e.key === \"Enter\" || e.key === \" \") {\n      this.#handleClick(e);\n    }\n  };\n  #handleClick = ({ target, ctrlKey, shiftKey, metaKey }) => {\n    if (target.getAttribute(\"role\") !== \"gridcell\")\n      return;\n    if (this.selectionMode === DataGridSelectionMode.singleCell || this.selectionMode === DataGridSelectionMode.multiCell) {\n      this.#handleCellSelection({ target, ctrlKey, shiftKey, metaKey });\n      return;\n    }\n    if (this.selectionMode === DataGridSelectionMode.singleRow || this.selectionMode === DataGridSelectionMode.multiRow) {\n      this.#handleRowSelection({ target, ctrlKey, shiftKey, metaKey });\n    }\n  };\n  #handleCellSelection = ({\n    target,\n    ctrlKey,\n    shiftKey,\n    metaKey\n  }) => {\n    const cell = target;\n    if (this.selectionMode === DataGridSelectionMode.multiCell && (ctrlKey || shiftKey || metaKey)) {\n      this.#setSelectedState(cell, !this.#selectedCells.includes(cell));\n    } else {\n      const cacheTargetSelection = cell.getAttribute(\"aria-selected\") === \"true\";\n      this.#resetSelection();\n      this.#setSelectedState(cell, !cacheTargetSelection);\n    }\n  };\n  #handleRowSelection = ({\n    target,\n    ctrlKey,\n    shiftKey,\n    metaKey\n  }) => {\n    const row = target.parentNode;\n    if (this.selectionMode === DataGridSelectionMode.multiRow && (ctrlKey || shiftKey || metaKey)) {\n      this.#setSelectedState(row, !this.#selectedRows.includes(row));\n    } else {\n      const cacheTargetSelection = row.getAttribute(\"aria-selected\") === \"true\";\n      this.#resetSelection();\n      this.#setSelectedState(row, !cacheTargetSelection);\n    }\n  };\n  constructor() {\n    super();\n    this.addEventListener(\"click\", this.#handleClick);\n    this.addEventListener(\"keydown\", this.#handleKeypress);\n    const privates = this;\n    privates.toggleGeneratedHeader = () => {\n      if (privates.generatedHeader !== null) {\n        this.removeChild(privates.generatedHeader);\n        privates.generatedHeader = null;\n      }\n      if (this.generateHeader !== GenerateHeaderOptions.none && this.columnDefinitions !== null) {\n        const generatedHeaderElement = document.createElement(\n          this.rowElementTag\n        );\n        privates.generatedHeader = generatedHeaderElement;\n        privates.generatedHeader.columnDefinitions = this.columnDefinitions;\n        privates.generatedHeader.gridTemplateColumns = this.gridTemplateColumns;\n        privates.generatedHeader.rowType = this.generateHeader === GenerateHeaderOptions.sticky ? DataGridRowTypes.stickyHeader : DataGridRowTypes.header;\n        if (this.firstChild !== null || privates.rowsPlaceholder !== null) {\n          this.insertBefore(\n            generatedHeaderElement,\n            this.firstChild !== null ? this.firstChild : privates.rowsPlaceholder\n          );\n        }\n        return;\n      }\n    };\n  }\n  #changeHandler = {\n    handleChange(dataGrid, propertyName) {\n      if (propertyName === \"columnDefinitions\") {\n        if (dataGrid.$fastController.isConnected) {\n          dataGrid.toggleGeneratedHeader();\n        }\n      }\n    }\n  };\n  connectedCallback() {\n    super.connectedCallback();\n    Observable.getNotifier(this).subscribe(\n      this.#changeHandler,\n      \"columnDefinitions\"\n    );\n  }\n  disconnectedCallback() {\n    super.disconnectedCallback();\n    Observable.getNotifier(this).unsubscribe(\n      this.#changeHandler,\n      \"columnDefinitions\"\n    );\n  }\n  #setSelectedState = (cell, selectedState) => {\n    cell.setAttribute(\"aria-selected\", selectedState.toString());\n  };\n  #resetSelection = () => {\n    if (this.selectionMode === DataGridSelectionMode.singleCell || this.selectionMode === DataGridSelectionMode.multiCell) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => this.#setSelectedState(cell, false)\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => row.removeAttribute(\"aria-selected\")\n      );\n    }\n    if (this.selectionMode === DataGridSelectionMode.none) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => cell.removeAttribute(\"aria-selected\")\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => row.removeAttribute(\"aria-selected\")\n      );\n    }\n    if (this.selectionMode === DataGridSelectionMode.singleRow || this.selectionMode === DataGridSelectionMode.multiRow) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => cell.removeAttribute(\"aria-selected\")\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => row.setAttribute(\"aria-selected\", \"false\")\n      );\n    }\n  };\n  #initSelections = () => {\n    if (this.selectionMode === DataGridSelectionMode.singleCell || this.selectionMode === DataGridSelectionMode.multiCell) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => !cell.hasAttribute(\"aria-selected\") && this.#setSelectedState(cell, false)\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => row.removeAttribute(\"aria-selected\")\n      );\n    }\n    if (this.selectionMode === DataGridSelectionMode.none) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => cell.removeAttribute(\"aria-selected\")\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => row.removeAttribute(\"aria-selected\")\n      );\n    }\n    if (this.selectionMode === DataGridSelectionMode.singleRow || this.selectionMode === DataGridSelectionMode.multiRow) {\n      Array.from(this.querySelectorAll('[role=\"gridcell\"]')).forEach(\n        (cell) => cell.removeAttribute(\"aria-selected\")\n      );\n      Array.from(this.querySelectorAll('[role=\"row\"]')).forEach(\n        (row) => !row.hasAttribute(\"aria-selected\") && row.setAttribute(\"aria-selected\", \"false\")\n      );\n    }\n  };\n  static generateColumns(rowData) {\n    return Object.keys(rowData).map((property, index) => {\n      return {\n        columnDataKey: property,\n        gridColumn: `${index}`\n      };\n    });\n  }\n}\n__decorateClass$2([\n  observable\n], DataGrid.prototype, \"slottedRowElements\");\n__decorateClass$2([\n  attr({ attribute: \"selection-mode\" })\n], DataGrid.prototype, \"selectionMode\");\n\nvar __defProp$1 = Object.defineProperty;\nvar __decorateClass$1 = (decorators, target, key, kind) => {\n  var result = void 0 ;\n  for (var i = decorators.length - 1, decorator; i >= 0; i--)\n    if (decorator = decorators[i])\n      result = (decorator(target, key, result) ) || result;\n  if (result)\n    __defProp$1(target, key, result);\n  return result;\n};\nclass DataGridRow extends DataGridRow$1 {\n  constructor() {\n    super(...arguments);\n    this.ariaSelected = null;\n  }\n}\n__decorateClass$1([\n  attr({ attribute: \"aria-selected\" })\n], DataGridRow.prototype, \"ariaSelected\");\n\nfunction createRowItemTemplate(context) {\n  const rowTag = context.tagFor(DataGridRow);\n  return html`\n    <${rowTag}\n        :rowData=\"${(x) => x}\"\n        :cellItemTemplate=\"${(_, c) => c.parent.cellItemTemplate}\"\n        :headerCellItemTemplate=\"${(_, c) => c.parent.headerCellItemTemplate}\"\n    ></${rowTag}>\n`;\n}\nfunction getMultiSelectAriaState(x) {\n  return x.selectionMode === void 0 || x.selectionMode === DataGridSelectionMode.none ? null : x.selectionMode.includes(\"multi\") ? \"true\" : \"false\";\n}\nfunction setHeaderRow(x) {\n  if (x.columnDefinitions === null) {\n    const headerRow = x.querySelector(\n      '[cell-type=\"columnheader\"]'\n    )?.parentElement;\n    if (headerRow) {\n      const rowType = x.generateHeader === GenerateHeaderOptions.sticky ? DataGridRowTypes.stickyHeader : DataGridRowTypes.header;\n      headerRow.setAttribute(\"row-type\", rowType);\n    }\n  }\n}\nfunction handleColumnSort(_, { event }) {\n  event.stopPropagation();\n}\nconst DataGridTemplate = (context) => {\n  const rowItemTemplate = createRowItemTemplate(context);\n  const rowTag = context.tagFor(DataGridRow);\n  return html`\n\t\t<template\n\t\t\taria-multiselectable=\"${getMultiSelectAriaState}\"\n\t\t\trole=\"grid\"\n\t\t\ttabindex=\"0\"\n\t\t\t@sort=\"${handleColumnSort}\"\n\t\t\t:rowElementTag=\"${() => rowTag}\"\n\t\t\t:defaultRowItemTemplate=\"${rowItemTemplate}\"\n\t\t\t${children({\n    property: \"rowElements\",\n    filter: elements(\"[role=row]\")\n  })}\n\t\t>\n\t\t\t<div class=\"base\">\n\t\t\t\t${setHeaderRow}\n\t\t\t\t<slot ${slotted(\"slottedRowElements\")}></slot>\n\t\t\t</div>\n\t\t</template>\n\t`;\n};\n\nvar __defProp = Object.defineProperty;\nvar __decorateClass = (decorators, target, key, kind) => {\n  var result = void 0 ;\n  for (var i = decorators.length - 1, decorator; i >= 0; i--)\n    if (decorator = decorators[i])\n      result = (decorator(target, key, result) ) || result;\n  if (result)\n    __defProp(target, key, result);\n  return result;\n};\nclass DataGridCell extends DataGridCell$1 {\n  constructor() {\n    super();\n    this.ariaSelected = null;\n    this.ariaSort = null;\n    this.updateCellStyle = () => {\n      if (this.gridColumn && !this.gridColumn.includes(\"undefined\")) {\n        this.style.gridColumn = this.gridColumn;\n      } else {\n        this.style.removeProperty(\"grid-column\");\n      }\n    };\n  }\n  ariaSelectedChanged(_, selectedState) {\n    this.shadowRoot.querySelector(\".base\")?.classList.toggle(\n      \"selected\",\n      selectedState === \"true\"\n    );\n  }\n  connectedCallback() {\n    super.connectedCallback();\n    this.ariaSelectedChanged(null, this.ariaSelected);\n  }\n  handleFocusin(e) {\n    super.handleFocusin(e);\n    this.shadowRoot.querySelector(\".base\").classList.add(\"active\");\n  }\n  handleFocusout(e) {\n    super.handleFocusout(e);\n    this.shadowRoot.querySelector(\".base\").classList.remove(\"active\");\n  }\n  #getColumnDataKey() {\n    return this.columnDefinition && this.columnDefinition.columnDataKey ? this.columnDefinition.columnDataKey : this.textContent.trim();\n  }\n  /**\n   * @internal\n   */\n  _handleInteraction() {\n    const isHeaderCell = this.cellType === \"columnheader\";\n    const isSortable = isHeaderCell && this.ariaSort !== null;\n    if (isSortable) {\n      this.$emit(\"sort\", {\n        columnDataKey: this.#getColumnDataKey(),\n        sortDirection: this.ariaSort\n      });\n    }\n    const hasInternalFocusQueue = isHeaderCell ? this.columnDefinition?.headerCellInternalFocusQueue : this.columnDefinition?.cellInternalFocusQueue;\n    if (!hasInternalFocusQueue) {\n      this.$emit(\"cell-click\", {\n        cell: this,\n        row: this.parentElement,\n        isHeaderCell,\n        columnDataKey: this.#getColumnDataKey()\n      });\n    }\n    return true;\n  }\n}\n__decorateClass([\n  attr({ attribute: \"aria-selected\", mode: \"fromView\" })\n], DataGridCell.prototype, \"ariaSelected\");\n__decorateClass([\n  attr({ attribute: \"aria-sort\" })\n], DataGridCell.prototype, \"ariaSort\");\n\nfunction createCellItemTemplate(context) {\n  const cellTag = context.tagFor(DataGridCell);\n  return html`\n    <${cellTag}\n        cell-type=\"${(x) => x.isRowHeader ? \"rowheader\" : void 0}\"\n        grid-column=\"${(_, c) => c.index + 1}\"\n        :rowData=\"${(_, c) => c.parent.rowData}\"\n        :columnDefinition=\"${(x) => x}\"\n\t\t\t\tselected=\"${(_, c) => c.parent.ariaSelected === \"true\" ? true : null}\"\n    ></${cellTag}>\n`;\n}\nfunction createHeaderCellItemTemplate(context) {\n  const cellTag = context.tagFor(DataGridCell);\n  return html`\n    <${cellTag}\n        cell-type=\"columnheader\"\n        grid-column=\"${(_, c) => c.index + 1}\"\n        :columnDefinition=\"${(x) => x}\"\n    ></${cellTag}>\n`;\n}\nconst DataGridRowTemplate = (context) => {\n  const cellItemTemplate = createCellItemTemplate(context);\n  const headerCellItemTemplate = createHeaderCellItemTemplate(context);\n  return html`\n\t\t<template\n\t\t\trole=\"row\"\n\t\t\tclass=\"${(x) => x.rowType !== \"default\" ? x.rowType : \"\"}\"\n\t\t\t:defaultCellItemTemplate=\"${cellItemTemplate}\"\n\t\t\t:defaultHeaderCellItemTemplate=\"${headerCellItemTemplate}\"\n\t\t\t${children({\n    property: \"cellElements\",\n    filter: elements(\n      '[role=\"cell\"],[role=\"gridcell\"],[role=\"columnheader\"],[role=\"rowheader\"]'\n    )\n  })}\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"base ${(x) => x.ariaSelected === \"true\" ? \"selected\" : \"\"}\"\n\t\t\t\tstyle=\"grid-template-columns: ${(x) => x.gridTemplateColumns};\"\n\t\t\t>\n\t\t\t\t<slot ${slotted(\"slottedCellElements\")}></slot>\n\t\t\t</div>\n\t\t</template>\n\t`;\n};\n\nfunction shouldShowSortIcons(x) {\n  if (x.columnDefinition) {\n    x.ariaSort = !x.columnDefinition.sortable ? null : x.columnDefinition.sortDirection ? x.columnDefinition.sortDirection : DataGridCellSortStates.none;\n  }\n  return x.cellType === \"columnheader\" && x.ariaSort !== null && x.ariaSort !== DataGridCellSortStates.other;\n}\nfunction getSortIcon(x) {\n  return x.ariaSort === DataGridCellSortStates.ascending ? \"sort-asc-solid\" : x.ariaSort === DataGridCellSortStates.descending ? \"sort-desc-solid\" : \"sort-solid\";\n}\nfunction renderSortIcons(c) {\n  const iconTag = c.tagFor(Icon);\n  return html`\n\t\t${when(\n    shouldShowSortIcons,\n    html`\n\t\t\t\t<${iconTag} class=\"header-icon\" name=\"${getSortIcon}\"></${iconTag}>\n\t\t\t`\n  )}\n\t`;\n}\nfunction handleKeyDown(x, e) {\n  if (e.key === keyEnter$1 || e.key === keySpace) {\n    x._handleInteraction();\n  }\n  return true;\n}\nfunction DataGridCellTemplate(context) {\n  return html`\n\t\t<template\n\t\t\ttabindex=\"-1\"\n\t\t\trole=\"${(x) => DataGridCellRole[x.cellType] ?? DataGridCellRole.default}\"\n\t\t\t@click=\"${(x) => x._handleInteraction()}\"\n\t\t\t@keydown=\"${(x, c) => handleKeyDown(x, c.event)}\"\n\t\t>\n\t\t\t<div class=\"base\">\n\t\t\t\t<slot></slot>\n\t\t\t\t${(_) => renderSortIcons(context)}\n\t\t\t</div>\n\t\t</template>\n\t`;\n}\n\nconst dataGrid = DataGrid.compose({\n  baseName: \"data-grid\",\n  template: DataGridTemplate,\n  styles: dataGridStyles\n})();\nconst dataGridRow = DataGridRow.compose({\n  baseName: \"data-grid-row\",\n  template: DataGridRowTemplate,\n  styles: dataGridRowStyles\n})();\nconst dataGridCell = DataGridCell.compose({\n  baseName: \"data-grid-cell\",\n  template: DataGridCellTemplate,\n  styles: dataGridCellStyles\n})();\nconst dataGridElements = [\n  dataGridCell,\n  dataGridRow,\n  dataGrid,\n  ...iconRegistries\n];\nconst registerDataGrid = registerFactory(dataGridElements);\n\nexport { dataGridRow as a, dataGridCell as b, dataGridElements as c, dataGrid as d, registerDataGrid as r };\n"],"names":["eventFocus","eventFocusIn","eventFocusOut","eventKeyDown","GenerateHeaderOptions$1","DataGridCellTypes","DataGridRowTypes$1","DataGridRow$1","F","constructor","super","arguments","this","rowType","rowData","columnDefinitions","isActiveRow","cellsRepeatBehavior","cellsPlaceholder","focusColumnIndex","refocusOnLoad","updateRowStyle","style","gridTemplateColumns","gridTemplateColumnsChanged","$fastController","isConnected","rowTypeChanged","updateItemTemplate","rowDataChanged","cellItemTemplateChanged","headerCellItemTemplateChanged","connectedCallback","document","createComment","appendChild","R","x","activeCellItemTemplate","positioning","createBehavior","addBehaviors","addEventListener","handleCellFocus","handleFocusout","handleKeydown","cellElements","length","focus","disconnectedCallback","removeEventListener","e","contains","target","indexOf","$emit","defaultPrevented","newFocusColumnIndex","key","Math","max","preventDefault","min","ctrlKey","undefined","cellItemTemplate","defaultCellItemTemplate","headerCellItemTemplate","defaultHeaderCellItemTemplate","_","a","attribute","prototype","o","DataGrid$1","DataGrid","noTabbing","generateHeader","rowsData","focusRowIndex","rowsPlaceholder","generatedHeader","isUpdatingFocus","pendingFocusUpdate","rowindexUpdateQueued","columnDefinitionsStale","generatedGridTemplateColumns","focusOnCell","rowIndex","columnIndex","scrollIntoView","rowElements","cells","querySelectorAll","focusTarget","scrollHeight","clientHeight","scrollTop","block","inline","onChildListChange","mutations","observer","forEach","mutation","addedNodes","newNode","nodeType","getAttribute","queueRowIndexUpdate","D","queueUpdate","updateRowIndexes","newGridTemplateColumns","firstRow","Array","fill","join","element","index","thisRow","generateTemplateColumns","templateColumns","column","noTabbingChanged","setAttribute","activeElement","generateHeaderChanged","toggleGeneratedHeader","rowsDataChanged","generateColumns","columnDefinitionsChanged","focusRowIndexChanged","queueFocusUpdate","focusColumnIndexChanged","rowItemTemplate","defaultRowItemTemplate","rowsRepeatBehavior","handleRowFocus","handleFocus","handleFocusOut","MutationObserver","observe","childList","disconnect","focusRow","relatedTarget","newFocusRowIndex","maxIndex","currentGridBottom","offsetHeight","lastRow","offsetTop","stickyHeaderOffset","updateFocus","removeChild","generatedHeaderElement","createElement","rowElementTag","firstChild","insertBefore","row","Object","getOwnPropertyNames","map","property","columnDataKey","gridColumn","mode","defaultCellContentsTemplate","h","columnDefinition","defaultHeaderCellContentsTemplate","title","DataGridCell$1","cellType","isActiveCell","customCellView","updateCellStyle","cellTypeChanged","updateCellView","gridColumnChanged","columnDefinitionChanged","oldValue","newValue","_a","handleFocusin","disconnectCellView","headerCellInternalFocusQueue","headerCellFocusTargetCallback","cellInternalFocusQueue","cellFocusTargetCallback","k","headerCellTemplate","render","cellTemplate","dispose","GenerateHeaderOptions","DataGridRowTypes","DataGridCellRole","columnheader","rowheader","default","__defProp$2","defineProperty","__decorateClass$2","decorators","kind","decorator","result","i","DataGridSelectionMode","slottedRowElementsChanged","_oldValue","_newValue","filter","reduce","acc","selectedCells","from","children","cell","concat","selectionModeChanged","shiftKey","metaKey","selectionMode","includes","cacheTargetSelection","parentNode","privates","handleChange","dataGrid","propertyName","O","getNotifier","subscribe","unsubscribe","selectedState","toString","removeAttribute","hasAttribute","keys","__defProp$1","DataGridRow","ariaSelected","getMultiSelectAriaState","setHeaderRow","headerRow","querySelector","parentElement","handleColumnSort","event","stopPropagation","__decorateClass$1","__defProp","__decorateClass","DataGridCell","ariaSort","removeProperty","ariaSelectedChanged","shadowRoot","classList","toggle","add","remove","textContent","trim","_handleInteraction","isHeaderCell","sortDirection","shouldShowSortIcons","sortable","getSortIcon","compose","baseName","template","context","rowTag","tagFor","c","parent","createRowItemTemplate","s","styles","dataGridRow","cellTag","isRowHeader","createCellItemTemplate","createHeaderCellItemTemplate","dataGridElements","handleKeyDown","iconTag","I","w","renderSortIcons","registerDataGrid","r"],"sourceRoot":""}