@vonage/vivid 5.14.0 → 5.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/accordion/definition.cjs +0 -5
- package/accordion/definition.js +0 -5
- package/accordion/index.cjs +1 -1
- package/accordion/index.js +3 -14
- package/accordion-item/definition.cjs +1 -1
- package/accordion-item/definition.js +1 -1
- package/alert/definition.cjs +2 -2
- package/alert/definition.js +2 -2
- package/alert/index.cjs +1 -1
- package/alert/index.js +1 -1
- package/audio-player/definition.cjs +2 -6
- package/audio-player/definition.js +2 -6
- package/audio-player/index.cjs +1 -1
- package/audio-player/index.js +2 -8
- package/banner/definition.cjs +1 -1
- package/banner/definition.js +1 -1
- package/breadcrumb/definition.cjs +0 -1
- package/breadcrumb/definition.js +0 -1
- package/breadcrumb/index.cjs +1 -1
- package/breadcrumb/index.js +0 -1
- package/breadcrumb-item/definition.cjs +1 -1
- package/breadcrumb-item/definition.js +1 -1
- package/breadcrumb-item/index.cjs +1 -1
- package/breadcrumb-item/index.js +1 -1
- package/bundled/attribute-binding-behaviour.cjs +1 -1
- package/bundled/attribute-binding-behaviour.js +1 -3
- package/bundled/base-color-picker.cjs +1 -1
- package/bundled/base-color-picker.js +4 -9
- package/bundled/base-progress.cjs +1 -1
- package/bundled/base-progress.js +0 -3
- package/bundled/button.cjs +1 -1
- package/bundled/button.js +1 -10
- package/bundled/calendar-picker.template.cjs +1 -1
- package/bundled/calendar-picker.template.js +90 -42
- package/bundled/children.js +1 -1
- package/bundled/definition.cjs +1 -1
- package/bundled/definition.js +1 -1
- package/bundled/definition10.cjs +1 -1
- package/bundled/definition10.js +0 -10
- package/bundled/definition11.cjs +1 -1
- package/bundled/definition11.js +0 -1
- package/bundled/definition12.cjs +2 -2
- package/bundled/definition12.js +1 -2
- package/bundled/definition13.cjs +1 -1
- package/bundled/definition13.js +1 -1
- package/bundled/definition17.cjs +1 -1
- package/bundled/definition17.js +1 -4
- package/bundled/definition18.cjs +1 -1
- package/bundled/definition18.js +6 -18
- package/bundled/definition19.cjs +2 -2
- package/bundled/definition19.js +8 -24
- package/bundled/definition2.cjs +5 -5
- package/bundled/definition2.js +26 -27
- package/bundled/definition20.cjs +1 -1
- package/bundled/definition20.js +1 -1
- package/bundled/definition22.cjs +5 -5
- package/bundled/definition22.js +2 -3
- package/bundled/definition3.cjs +1 -1
- package/bundled/definition3.js +1 -2
- package/bundled/definition5.cjs +1 -1
- package/bundled/definition5.js +1 -6
- package/bundled/definition6.cjs +1 -1
- package/bundled/definition6.js +1 -2
- package/bundled/definition7.cjs +1 -1
- package/bundled/definition7.js +2 -5
- package/bundled/definition8.cjs +1 -1
- package/bundled/definition8.js +2 -13
- package/bundled/definition9.js +9 -9
- package/bundled/delegates-aria.cjs +1 -1
- package/bundled/delegates-aria.js +1 -3
- package/bundled/floating-ui.dom.cjs +1 -1
- package/bundled/floating-ui.dom.js +491 -487
- package/bundled/form-associated.cjs +1 -1
- package/bundled/form-associated.js +9 -18
- package/bundled/key-codes.cjs +1 -1
- package/bundled/listbox.cjs +1 -1
- package/bundled/listbox.js +10 -27
- package/bundled/localized.cjs +1 -1
- package/bundled/localized.js +49 -48
- package/bundled/mixins.cjs +2 -2
- package/bundled/mixins.js +1 -4
- package/bundled/normalize.js +2 -2
- package/bundled/picker-field.template.cjs +1 -1
- package/bundled/picker-field.template.js +0 -1
- package/bundled/scrollIntoView.cjs +1 -1
- package/bundled/scrollIntoView.js +1 -4
- package/bundled/slider.template.cjs +1 -1
- package/bundled/slider.template.js +1 -1
- package/bundled/slottable-request.js +2 -1
- package/bundled/text-field.cjs +1 -1
- package/bundled/text-field.js +1 -1
- package/bundled/time-selection-picker.template.cjs +2 -2
- package/bundled/time-selection-picker.template.js +3 -6
- package/bundled/vivid-element.cjs +3 -3
- package/bundled/vivid-element.js +302 -293
- package/button/definition.cjs +1 -1
- package/button/definition.js +1 -1
- package/calendar/definition.cjs +0 -2
- package/calendar/definition.js +1 -3
- package/calendar/index.cjs +1 -1
- package/calendar/index.js +6 -8
- package/card/definition.cjs +1 -1
- package/card/definition.js +1 -1
- package/card/index.cjs +1 -1
- package/card/index.js +1 -1
- package/checkbox/definition.cjs +1 -2
- package/checkbox/definition.js +1 -2
- package/color-picker/definition.cjs +1 -6
- package/color-picker/definition.js +1 -6
- package/color-picker/index.cjs +1 -1
- package/color-picker/index.js +2 -7
- package/combobox/definition.cjs +2 -8
- package/combobox/definition.js +2 -8
- package/combobox/index.cjs +1 -1
- package/combobox/index.js +2 -9
- package/contextual-help/definition.cjs +1 -1
- package/contextual-help/definition.js +1 -1
- package/custom-elements.json +636 -1045
- package/data-grid/definition.cjs +72 -85
- package/data-grid/definition.js +75 -88
- package/data-grid/index.cjs +2 -2
- package/data-grid/index.js +7 -39
- package/date-picker/definition.cjs +1 -1
- package/date-picker/definition.js +1 -1
- package/date-range-picker/definition.cjs +1 -3
- package/date-range-picker/definition.js +1 -3
- package/date-range-picker/index.cjs +1 -1
- package/date-range-picker/index.js +1 -5
- package/date-time-picker/definition.cjs +1 -1
- package/date-time-picker/definition.js +1 -1
- package/dial-pad/definition.cjs +2 -11
- package/dial-pad/definition.js +3 -12
- package/dial-pad/index.cjs +1 -1
- package/dial-pad/index.js +14 -38
- package/dialog/definition.cjs +2 -3
- package/dialog/definition.js +2 -3
- package/dialog/index.cjs +1 -1
- package/dialog/index.js +1 -2
- package/empty-state/definition.js +1 -1
- package/fab/definition.cjs +1 -2
- package/fab/definition.js +1 -2
- package/fab/index.cjs +1 -1
- package/fab/index.js +1 -2
- package/file-picker/definition.cjs +2 -5
- package/file-picker/definition.js +3 -6
- package/file-picker/index.cjs +1 -1
- package/file-picker/index.js +1 -4
- package/icon/definition.cjs +7 -5
- package/icon/definition.js +7 -5
- package/index.cjs +95 -94
- package/index.js +18 -18
- package/layout/definition.cjs +1 -1
- package/layout/definition.js +1 -1
- package/layout/index.cjs +1 -1
- package/layout/index.js +1 -1
- package/lib/card/card.d.ts +0 -2
- package/lib/combobox/combobox.d.ts +1 -1
- package/lib/icon/icon.d.ts +0 -1
- package/lib/menu/menu.d.ts +0 -1
- package/lib/menu-item/menu-item.d.ts +0 -1
- package/lib/pagination/pagination.d.ts +0 -3
- package/lib/rich-text-editor/rte/exports.d.ts +1 -0
- package/lib/rich-text-editor/rte/features/keyboard-shortcuts.d.ts +16 -0
- package/lib/rich-text-editor/rte/instance.d.ts +2 -1
- package/lib/select/select.d.ts +2 -2
- package/lib/table/table-head.d.ts +1 -0
- package/lib/tabs/tabs.d.ts +0 -1
- package/lib/text-field/text-field.d.ts +0 -1
- package/locales/de-DE.cjs +95 -95
- package/locales/de-DE.js +95 -95
- package/locales/en-GB.cjs +1 -1
- package/locales/en-GB.js +1 -1
- package/locales/en-US.cjs +95 -95
- package/locales/en-US.js +95 -95
- package/locales/ja-JP.cjs +94 -94
- package/locales/ja-JP.js +94 -94
- package/locales/zh-CN.cjs +94 -94
- package/locales/zh-CN.js +94 -94
- package/menu/definition.cjs +2 -3
- package/menu/definition.js +2 -3
- package/menu-item/definition.cjs +1 -1
- package/menu-item/definition.js +1 -1
- package/nav-disclosure/definition.cjs +1 -1
- package/nav-disclosure/definition.js +1 -1
- package/nav-disclosure/index.cjs +1 -1
- package/nav-disclosure/index.js +1 -1
- package/nav-item/definition.cjs +1 -1
- package/nav-item/definition.js +1 -1
- package/nav-item/index.cjs +1 -1
- package/nav-item/index.js +1 -1
- package/number-field/definition.cjs +2 -2
- package/number-field/definition.js +2 -2
- package/number-field/index.cjs +1 -1
- package/number-field/index.js +1 -1
- package/package.json +19 -17
- package/pagination/definition.cjs +1 -3
- package/pagination/definition.js +3 -5
- package/pagination/index.cjs +3 -3
- package/pagination/index.js +4 -6
- package/popover/definition.cjs +1 -8
- package/popover/definition.js +1 -8
- package/popover/index.cjs +1 -1
- package/popover/index.js +6 -17
- package/popup/definition.cjs +1 -1
- package/popup/definition.js +1 -1
- package/radio/definition.cjs +1 -5
- package/radio/definition.js +1 -5
- package/radio-group/definition.js +2 -2
- package/range-slider/definition.cjs +1 -1
- package/range-slider/definition.js +2 -2
- package/range-slider/index.cjs +1 -1
- package/range-slider/index.js +1 -1
- package/rich-text-editor/definition.cjs +177 -63
- package/rich-text-editor/definition.js +177 -64
- package/rich-text-editor/index.cjs +12 -12
- package/rich-text-editor/index.js +1651 -1586
- package/rich-text-view/definition.js +1 -1
- package/searchable-select/definition.cjs +2 -5
- package/searchable-select/definition.js +2 -5
- package/searchable-select/index.cjs +1 -1
- package/searchable-select/index.js +2 -6
- package/select/definition.cjs +4 -14
- package/select/definition.js +5 -15
- package/selectable-box/definition.cjs +1 -1
- package/selectable-box/definition.js +2 -2
- package/selectable-box/index.cjs +1 -1
- package/selectable-box/index.js +1 -1
- package/side-drawer/definition.cjs +1 -1
- package/side-drawer/definition.js +2 -2
- package/side-drawer/index.cjs +1 -1
- package/side-drawer/index.js +2 -5
- package/simple-color-picker/definition.cjs +18 -9
- package/simple-color-picker/definition.js +19 -10
- package/simple-color-picker/index.cjs +5 -5
- package/simple-color-picker/index.js +23 -23
- package/slider/definition.cjs +1 -6
- package/slider/definition.js +3 -8
- package/split-button/definition.cjs +1 -1
- package/split-button/definition.js +2 -2
- package/split-button/index.cjs +1 -1
- package/split-button/index.js +1 -1
- package/status/definition.cjs +9 -3
- package/status/definition.js +11 -5
- package/status/index.cjs +10 -7
- package/status/index.js +46 -39
- package/styles/core/all.css +6 -5
- package/styles/core/theme.css +6 -5
- package/styles/core/typography.css +1 -2
- package/styles/tokens/theme-dark.css +17 -21
- package/styles/tokens/theme-light.css +17 -21
- package/styles/tokens/vivid-2-compat.css +1 -2
- package/switch/definition.cjs +1 -2
- package/switch/definition.js +2 -3
- package/switch/index.cjs +1 -1
- package/switch/index.js +1 -2
- package/tab/definition.cjs +1 -1
- package/tab/definition.js +2 -2
- package/tab-panel/definition.js +1 -1
- package/table/definition.cjs +17 -11
- package/table/definition.js +19 -13
- package/table/index.cjs +18 -14
- package/table/index.js +55 -48
- package/tabs/definition.cjs +0 -2
- package/tabs/definition.js +2 -4
- package/tabs/index.cjs +1 -1
- package/tabs/index.js +0 -2
- package/tag/definition.cjs +1 -1
- package/tag/definition.js +2 -2
- package/tag/index.cjs +1 -1
- package/tag/index.js +1 -1
- package/tag-group/definition.js +1 -1
- package/text-area/definition.cjs +1 -7
- package/text-area/definition.js +2 -8
- package/text-area/index.cjs +1 -1
- package/text-area/index.js +1 -7
- package/text-field/definition.cjs +0 -10
- package/text-field/definition.js +1 -11
- package/time-picker/definition.cjs +1 -1
- package/time-picker/definition.js +2 -2
- package/toggletip/definition.cjs +0 -2
- package/toggletip/definition.js +1 -3
- package/tooltip/definition.cjs +0 -1
- package/tooltip/definition.js +1 -2
- package/tree-view/definition.cjs +0 -16
- package/tree-view/definition.js +1 -17
- package/tree-view/index.cjs +1 -1
- package/tree-view/index.js +0 -16
- package/unbundled/_commonjsHelpers.cjs +6 -2
- package/unbundled/_commonjsHelpers.js +6 -2
- package/unbundled/anchored.js +1 -1
- package/unbundled/attribute-binding-behaviour.cjs +0 -1
- package/unbundled/attribute-binding-behaviour.js +0 -1
- package/unbundled/base-color-picker.cjs +2 -5
- package/unbundled/base-color-picker.js +2 -5
- package/unbundled/base-progress.cjs +0 -3
- package/unbundled/base-progress.js +0 -3
- package/unbundled/button.cjs +1 -10
- package/unbundled/button.js +1 -10
- package/unbundled/calendar-picker.template.cjs +2 -4
- package/unbundled/calendar-picker.template.js +2 -4
- package/unbundled/data-grid.options.js +1 -1
- package/unbundled/definition.cjs +349 -170
- package/unbundled/definition.js +348 -170
- package/unbundled/definition2.cjs +169 -351
- package/unbundled/definition2.js +169 -350
- package/unbundled/definition3.cjs +1 -2
- package/unbundled/definition3.js +1 -2
- package/unbundled/definition4.cjs +1 -2
- package/unbundled/definition4.js +3 -4
- package/unbundled/definition5.cjs +1 -1
- package/unbundled/definition5.js +2 -2
- package/unbundled/delegates-aria.cjs +1 -1
- package/unbundled/delegates-aria.js +1 -1
- package/unbundled/enums.js +1 -1
- package/unbundled/form-associated.cjs +4 -5
- package/unbundled/form-associated.js +4 -5
- package/unbundled/host-semantics.cjs +1 -0
- package/unbundled/host-semantics.js +2 -1
- package/unbundled/key-codes.js +1 -1
- package/unbundled/listbox.cjs +6 -14
- package/unbundled/listbox.js +6 -14
- package/unbundled/localized.cjs +1 -0
- package/unbundled/localized.js +1 -0
- package/unbundled/mixins.cjs +0 -2
- package/unbundled/mixins.js +2 -4
- package/unbundled/picker-field.template.cjs +1 -2
- package/unbundled/picker-field.template.js +1 -2
- package/unbundled/scrollIntoView.cjs +0 -1
- package/unbundled/scrollIntoView.js +0 -1
- package/unbundled/slider.template.js +1 -1
- package/unbundled/slottable-request.cjs +3 -2
- package/unbundled/slottable-request.js +3 -2
- package/unbundled/text-field.cjs +1 -1
- package/unbundled/text-field.js +1 -1
- package/unbundled/time-selection-picker.template.cjs +1 -4
- package/unbundled/time-selection-picker.template.js +1 -4
- package/unbundled/vivid-element.cjs +2 -1
- package/unbundled/vivid-element.js +2 -1
- package/video-player/definition.cjs +7953 -7720
- package/video-player/definition.js +7955 -7722
- package/video-player/index.cjs +38 -54
- package/video-player/index.js +12785 -12735
- package/visually-hidden/definition.js +1 -1
- package/vivid.api.json +48 -341
package/data-grid/definition.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { VwcIconElement as Icon, iconDefinition } from '../icon/definition.js';
|
|
2
2
|
import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
|
|
3
3
|
import { VwcVisuallyHiddenElement as VisuallyHidden, visuallyHiddenDefinition } from '../visually-hidden/definition.js';
|
|
4
|
-
import { html, attr, observable, RepeatDirective, normalizeBinding, Updates as Updates$1, Observable, nullableNumberConverter, children,
|
|
4
|
+
import { html, attr, observable, RepeatDirective, normalizeBinding, Updates as Updates$1, Observable, nullableNumberConverter, children, elements, slotted, when } from '@microsoft/fast-element';
|
|
5
5
|
import { c as commonjsGlobal } from '../unbundled/_commonjsHelpers.js';
|
|
6
6
|
import { eventFocusIn, eventFocusOut, eventKeyDown, keyEscape, keyFunction2, keyEnter, keyEnd, keyHome, eventFocus, keyPageDown, keyPageUp, keyArrowDown, keyArrowUp, classNames, keySpace } from '@microsoft/fast-web-utilities';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { a as DataGridCellTypes, b as DataGridCellSortStates, c as DataGridRowTypes, G as GenerateHeaderOptions, D as DataGridCellRole } from '../unbundled/data-grid.options.js';
|
|
8
|
+
import { a as keyArrowRight, k as keyArrowLeft } from '../unbundled/key-codes.js';
|
|
9
9
|
import { H as HostSemantics, a as applyHostSemantics } from '../unbundled/host-semantics.js';
|
|
10
10
|
import { L as Localized } from '../unbundled/localized.js';
|
|
11
11
|
|
|
12
12
|
const dataGridStyles = ":host{display:block}:host([generate-header=sticky]){max-block-size:400px}.base{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.base{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.base ::-webkit-scrollbar{width:4px}.base ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.base ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.base{position:relative;overflow:auto;block-size:inherit;inline-size:100%;max-block-size:inherit}";
|
|
13
13
|
|
|
14
|
-
const dataGridRowStyles = ".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}@media
|
|
14
|
+
const dataGridRowStyles = ".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}@media(hover:hover){.base: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.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.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media(hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base{display:grid;width:100%;box-sizing:border-box;color:var(--vvd-color-canvas-text)}: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([selected]):not([row-type*=header])) .base{background-color:var(--_appearance-color-fill)}";
|
|
15
15
|
|
|
16
|
-
const dataGridCellStyles = ":host{block-size:100%;min-inline-size:80px}:host(:focus-visible){outline:none}:host([data-fixed]){position:sticky;z-index:5;background:var(--data-grid-cell-background, var(--vvd-color-surface-2dp))}:host([data-fixed]):before{position:absolute;z-index:1;top:0;right:0;width:1px;block-size:100%;box-shadow:4px 0 4px #0000001a,2px 0 2px #0000000d,1px 0 1px #0000000d;content:\"\";pointer-events:none}.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}@media
|
|
16
|
+
const dataGridCellStyles = ":host{block-size:100%;min-inline-size:80px}:host(:focus-visible){outline:none}:host([data-fixed]){position:sticky;z-index:5;background:var(--data-grid-cell-background, var(--vvd-color-surface-2dp))}:host([data-fixed]):before{position:absolute;z-index:1;top:0;right:0;width:1px;block-size:100%;box-shadow:4px 0 4px #0000001a,2px 0 2px #0000000d,1px 0 1px #0000000d;content:\"\";pointer-events:none}.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}@media(hover:hover){.base: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.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.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media(hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base{display:flex;box-sizing:border-box;align-items:center;border-bottom:1px solid var(--vvd-color-neutral-300);block-size:var(--data-grid-cell-block-size, var(--_data-grid-cell-default-block-size));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)));padding-block:13px 14px;padding-inline:12px}:host(:focus-visible) .base{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--focus-stroke-color, var(--vvd-color-cta-500)),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}:host([cell-type=columnheader]) .base{border-color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base-bold);--_data-grid-cell-default-block-size: calc(1px*(48 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;--_data-grid-cell-default-white-space: nowrap}:host(:not([cell-type=columnheader])) .base{--_data-grid-cell-default-block-size: 100%;--_data-grid-cell-default-white-space: normal}:host(:is([selected]):not([cell-type=columnheader])) .base{background-color:var(--_appearance-color-fill)}.content{display:flex;overflow:hidden;align-items:center}.content[role=button]{cursor:pointer}slot:not([name]){display:block;overflow:hidden;text-overflow:ellipsis;white-space:var(--data-grid-cell-white-space, var(--_data-grid-cell-default-white-space))}:host(:not([cell-type=columnheader][aria-sort])) slot:not([name]){inline-size:100%}.header-icon{flex-shrink:0;margin-inline-start:16px}slot[name=action-items]{display:flex;flex-shrink:0;align-items:center}.base.has-action-items slot[name=action-items]{margin-inline-start:16px}";
|
|
17
17
|
|
|
18
18
|
let kernelMode;
|
|
19
19
|
const kernelAttr = "fast-kernel";
|
|
@@ -75,67 +75,78 @@ const isString = (object) => typeof object === "string";
|
|
|
75
75
|
*/
|
|
76
76
|
const noop = () => void 0;
|
|
77
77
|
|
|
78
|
+
var polyfills = {};
|
|
79
|
+
|
|
78
80
|
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
79
81
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
82
|
+
var hasRequiredPolyfills;
|
|
83
|
+
|
|
84
|
+
function requirePolyfills () {
|
|
85
|
+
if (hasRequiredPolyfills) return polyfills;
|
|
86
|
+
hasRequiredPolyfills = 1;
|
|
87
|
+
(function ensureGlobalThis() {
|
|
88
|
+
if (typeof globalThis !== "undefined") {
|
|
89
|
+
// We're running in a modern environment.
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
// @ts-ignore
|
|
93
|
+
if (typeof commonjsGlobal !== "undefined") {
|
|
94
|
+
// We're running in NodeJS
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
commonjsGlobal.globalThis = commonjsGlobal;
|
|
97
|
+
}
|
|
98
|
+
else if (typeof self !== "undefined") {
|
|
99
|
+
self.globalThis = self;
|
|
100
|
+
}
|
|
101
|
+
else if (typeof window !== "undefined") {
|
|
102
|
+
// We're running in the browser's main thread.
|
|
103
|
+
window.globalThis = window;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
// Hopefully we never get here...
|
|
107
|
+
// Not all environments allow eval and Function. Use only as a last resort:
|
|
108
|
+
// eslint-disable-next-line no-new-func
|
|
109
|
+
const result = new Function("return this")();
|
|
110
|
+
result.globalThis = result;
|
|
111
|
+
}
|
|
112
|
+
})();
|
|
113
|
+
(function requestIdleCallbackPolyfill() {
|
|
114
|
+
if ("requestIdleCallback" in globalThis) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* A polyfill for requestIdleCallback that falls back to setTimeout.
|
|
119
|
+
*
|
|
120
|
+
* @param callback - The function to call when the browser is idle.
|
|
121
|
+
* @param options - Options object that may contain a timeout property.
|
|
122
|
+
* @returns An ID that can be used to cancel the callback.
|
|
123
|
+
* @public
|
|
124
|
+
*/
|
|
125
|
+
globalThis.requestIdleCallback = function requestIdleCallback(callback, options) {
|
|
126
|
+
const start = Date.now();
|
|
127
|
+
return setTimeout(() => {
|
|
128
|
+
callback({
|
|
129
|
+
didTimeout: (options === null || options === void 0 ? void 0 : options.timeout)
|
|
130
|
+
? Date.now() - start >= options.timeout
|
|
131
|
+
: false,
|
|
132
|
+
timeRemaining: () => 0,
|
|
133
|
+
});
|
|
134
|
+
}, 1);
|
|
135
|
+
};
|
|
136
|
+
/**
|
|
137
|
+
* A polyfill for cancelIdleCallback that falls back to clearTimeout.
|
|
138
|
+
*
|
|
139
|
+
* @param id - The ID of the callback to cancel.
|
|
140
|
+
* @public
|
|
141
|
+
*/
|
|
142
|
+
globalThis.cancelIdleCallback = function cancelIdleCallback(id) {
|
|
143
|
+
clearTimeout(id);
|
|
144
|
+
};
|
|
145
|
+
})();
|
|
146
|
+
return polyfills;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
requirePolyfills();
|
|
139
150
|
|
|
140
151
|
// ensure FAST global - duplicated debug.ts
|
|
141
152
|
const propConfig = {
|
|
@@ -1014,7 +1025,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1014
1025
|
case DataGridCellTypes.columnHeader:
|
|
1015
1026
|
if (this.columnDefinition !== null && this.columnDefinition.headerCellInternalFocusQueue !== true && typeof this.columnDefinition.headerCellFocusTargetCallback === "function") {
|
|
1016
1027
|
const focusTarget = this.columnDefinition.headerCellFocusTargetCallback(this);
|
|
1017
|
-
/* v8 ignore else -- @preserve */
|
|
1018
1028
|
if (focusTarget !== null) {
|
|
1019
1029
|
focusTarget.focus();
|
|
1020
1030
|
}
|
|
@@ -1023,7 +1033,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1023
1033
|
default:
|
|
1024
1034
|
if (this.columnDefinition !== null && this.columnDefinition.cellInternalFocusQueue !== true && typeof this.columnDefinition.cellFocusTargetCallback === "function") {
|
|
1025
1035
|
const focusTarget = this.columnDefinition.cellFocusTargetCallback(this);
|
|
1026
|
-
/* v8 ignore else -- @preserve */
|
|
1027
1036
|
if (focusTarget !== null) {
|
|
1028
1037
|
focusTarget.focus();
|
|
1029
1038
|
}
|
|
@@ -1034,7 +1043,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1034
1043
|
}
|
|
1035
1044
|
handleFocusout(_) {
|
|
1036
1045
|
this.shadowRoot.querySelector(".base").classList.remove("active");
|
|
1037
|
-
/* v8 ignore else -- @preserve */
|
|
1038
1046
|
if (this !== document.activeElement && !this.contains(document.activeElement)) {
|
|
1039
1047
|
this.isActiveCell = false;
|
|
1040
1048
|
}
|
|
@@ -1053,7 +1061,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1053
1061
|
case DataGridCellTypes.columnHeader: {
|
|
1054
1062
|
if (this.columnDefinition.headerCellFocusTargetCallback !== void 0) {
|
|
1055
1063
|
const focusTarget = this.columnDefinition.headerCellFocusTargetCallback(this);
|
|
1056
|
-
/* v8 ignore else -- @preserve */
|
|
1057
1064
|
if (focusTarget !== null) {
|
|
1058
1065
|
focusTarget.focus();
|
|
1059
1066
|
}
|
|
@@ -1064,7 +1071,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1064
1071
|
default: {
|
|
1065
1072
|
if (this.columnDefinition.cellFocusTargetCallback !== void 0) {
|
|
1066
1073
|
const focusTarget = this.columnDefinition.cellFocusTargetCallback(this);
|
|
1067
|
-
/* v8 ignore else -- @preserve */
|
|
1068
1074
|
if (focusTarget !== null) {
|
|
1069
1075
|
focusTarget.focus();
|
|
1070
1076
|
}
|
|
@@ -1075,7 +1081,6 @@ class DataGridCell extends Localized(HostSemantics(VividElement)) {
|
|
|
1075
1081
|
}
|
|
1076
1082
|
break;
|
|
1077
1083
|
case keyEscape: {
|
|
1078
|
-
/* v8 ignore else -- @preserve */
|
|
1079
1084
|
if (this.contains(document.activeElement) && document.activeElement !== this) {
|
|
1080
1085
|
this.focus();
|
|
1081
1086
|
e.preventDefault();
|
|
@@ -1268,7 +1273,6 @@ class DataGridRow extends HostSemantics(VividElement) {
|
|
|
1268
1273
|
*/
|
|
1269
1274
|
connectedCallback() {
|
|
1270
1275
|
super.connectedCallback();
|
|
1271
|
-
/* v8 ignore else -- @preserve */
|
|
1272
1276
|
if (this.behaviorOrchestrator === null) {
|
|
1273
1277
|
this.updateItemTemplate();
|
|
1274
1278
|
this.behaviorOrchestrator = ViewBehaviorOrchestrator.create(this);
|
|
@@ -1300,7 +1304,6 @@ class DataGridRow extends HostSemantics(VividElement) {
|
|
|
1300
1304
|
this.removeEventListener(eventKeyDown, this.handleKeydown);
|
|
1301
1305
|
}
|
|
1302
1306
|
handleFocusout(_) {
|
|
1303
|
-
/* v8 ignore else -- @preserve */
|
|
1304
1307
|
if (!this.contains(document.activeElement)) {
|
|
1305
1308
|
this.focusColumnIndex = 0;
|
|
1306
1309
|
}
|
|
@@ -1457,7 +1460,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1457
1460
|
focusTarget.focus();
|
|
1458
1461
|
};
|
|
1459
1462
|
this.onChildListChange = (mutations, _) => {
|
|
1460
|
-
/* v8 ignore else -- @preserve */
|
|
1461
1463
|
if (mutations && mutations.length) {
|
|
1462
1464
|
mutations.forEach((mutation) => {
|
|
1463
1465
|
mutation.addedNodes.forEach((newNode) => {
|
|
@@ -1545,9 +1547,7 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1545
1547
|
};
|
|
1546
1548
|
this.#changeHandler = {
|
|
1547
1549
|
handleChange(dataGrid, propertyName) {
|
|
1548
|
-
/* v8 ignore else -- @preserve */
|
|
1549
1550
|
if (propertyName === "columnDefinitions") {
|
|
1550
|
-
/* v8 ignore else -- @preserve */
|
|
1551
1551
|
if (dataGrid.$fastController.isConnected) {
|
|
1552
1552
|
dataGrid.toggleGeneratedHeader();
|
|
1553
1553
|
}
|
|
@@ -1630,7 +1630,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1630
1630
|
* @internal
|
|
1631
1631
|
*/
|
|
1632
1632
|
gridTemplateColumnsChanged() {
|
|
1633
|
-
/* v8 ignore if -- @preserve */
|
|
1634
1633
|
if (this.$fastController.isConnected) {
|
|
1635
1634
|
this.updateRowIndexes();
|
|
1636
1635
|
if (this.fixedColumns && this.fixedColumns > 0) {
|
|
@@ -1660,7 +1659,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1660
1659
|
this.generatedGridTemplateColumns = _DataGrid.generateTemplateColumns(
|
|
1661
1660
|
this.columnDefinitions
|
|
1662
1661
|
);
|
|
1663
|
-
/* v8 ignore if -- @preserve */
|
|
1664
1662
|
if (this.$fastController.isConnected) {
|
|
1665
1663
|
this.columnDefinitionsStale = true;
|
|
1666
1664
|
this.queueRowIndexUpdate();
|
|
@@ -1670,7 +1668,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1670
1668
|
* @internal
|
|
1671
1669
|
*/
|
|
1672
1670
|
headerCellItemTemplateChanged() {
|
|
1673
|
-
/* v8 ignore if -- @preserve */
|
|
1674
1671
|
if (this.$fastController.isConnected) {
|
|
1675
1672
|
if (this.generatedHeader !== null) {
|
|
1676
1673
|
this.generatedHeader.headerCellItemTemplate = this.headerCellItemTemplate;
|
|
@@ -1697,7 +1694,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1697
1694
|
* @internal
|
|
1698
1695
|
*/
|
|
1699
1696
|
fixedColumnsChanged() {
|
|
1700
|
-
/* v8 ignore if -- @preserve */
|
|
1701
1697
|
if (this.$fastController.isConnected) {
|
|
1702
1698
|
this.applyFixedColumns();
|
|
1703
1699
|
this.setupResizeObserver();
|
|
@@ -1723,11 +1719,9 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1723
1719
|
*/
|
|
1724
1720
|
connectedCallback() {
|
|
1725
1721
|
super.connectedCallback();
|
|
1726
|
-
/* v8 ignore else -- @preserve */
|
|
1727
1722
|
if (this.rowItemTemplate === void 0) {
|
|
1728
1723
|
this.rowItemTemplate = this.defaultRowItemTemplate;
|
|
1729
1724
|
}
|
|
1730
|
-
/* v8 ignore else -- @preserve */
|
|
1731
1725
|
if (this.behaviorOrchestrator === null) {
|
|
1732
1726
|
this.behaviorOrchestrator = ViewBehaviorOrchestrator.create(this);
|
|
1733
1727
|
this.$fastController.addBehavior(this.behaviorOrchestrator);
|
|
@@ -1868,7 +1862,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1868
1862
|
this.focusOnCell(newFocusRowIndex, this.focusColumnIndex, false);
|
|
1869
1863
|
break;
|
|
1870
1864
|
case keyHome: {
|
|
1871
|
-
/* v8 ignore else -- @preserve */
|
|
1872
1865
|
if (e.ctrlKey) {
|
|
1873
1866
|
e.preventDefault();
|
|
1874
1867
|
this.focusOnCell(0, 0, true);
|
|
@@ -1876,7 +1869,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1876
1869
|
break;
|
|
1877
1870
|
}
|
|
1878
1871
|
case keyEnd: {
|
|
1879
|
-
/* v8 ignore else -- @preserve */
|
|
1880
1872
|
if (e.ctrlKey && this.columnDefinitions !== null) {
|
|
1881
1873
|
e.preventDefault();
|
|
1882
1874
|
this.focusOnCell(
|
|
@@ -1915,7 +1907,6 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1915
1907
|
this.generatedHeader.columnDefinitions = this.columnDefinitions;
|
|
1916
1908
|
this.generatedHeader.gridTemplateColumns = this.gridTemplateColumns;
|
|
1917
1909
|
this.generatedHeader.rowType = this.generateHeader === GenerateHeaderOptions.sticky ? DataGridRowTypes.stickyHeader : DataGridRowTypes.header;
|
|
1918
|
-
/* v8 ignore else -- @preserve */
|
|
1919
1910
|
if (this.firstChild !== null) {
|
|
1920
1911
|
this.insertBefore(generatedHeaderElement, this.firstChild);
|
|
1921
1912
|
}
|
|
@@ -1983,10 +1974,8 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
1983
1974
|
'[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]'
|
|
1984
1975
|
);
|
|
1985
1976
|
this.fixedColumnsPositions.forEach((position, index) => {
|
|
1986
|
-
/* v8 ignore else -- @preserve */
|
|
1987
1977
|
if (index < cells.length) {
|
|
1988
1978
|
const gridCell = cells[index];
|
|
1989
|
-
/* v8 ignore else -- @preserve */
|
|
1990
1979
|
if (typeof gridCell.setFixedPosition === "function") {
|
|
1991
1980
|
gridCell.setFixedPosition(`${position}px`);
|
|
1992
1981
|
}
|
|
@@ -2024,10 +2013,8 @@ const _DataGrid = class _DataGrid extends VividElement {
|
|
|
2024
2013
|
'[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]'
|
|
2025
2014
|
);
|
|
2026
2015
|
this.fixedColumnsPositions.forEach((_, index) => {
|
|
2027
|
-
/* v8 ignore else -- @preserve */
|
|
2028
2016
|
if (index < cells.length) {
|
|
2029
2017
|
const gridCell = cells[index];
|
|
2030
|
-
/* v8 ignore else -- @preserve */
|
|
2031
2018
|
if (typeof gridCell.setFixedPosition === "function") {
|
|
2032
2019
|
gridCell.setFixedPosition(void 0);
|
|
2033
2020
|
}
|
package/data-grid/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const S=require("../bundled/definition2.cjs"),n=require("../bundled/vivid-element.cjs"),$=require("../bundled/definition14.cjs"),r=require("../bundled/data-grid.options.cjs"),F=require("../bundled/repeat.cjs"),w=require("../bundled/normalize.cjs"),h=require("../bundled/key-codes.cjs"),D=require("../bundled/host-semantics.cjs"),R=require("../bundled/children.cjs"),C=require("../bundled/slotted.cjs"),O=require("../bundled/localized.cjs"),H=require("../bundled/class-names.cjs"),T=require("../bundled/when.cjs"),I="focus",E="focusin",b="focusout",g="keydown",z=":host{display:block}:host([generate-header=sticky]){max-block-size:400px}.base{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.base{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.base ::-webkit-scrollbar{width:4px}.base ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.base ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.base{position:relative;overflow:auto;block-size:inherit;inline-size:100%;max-block-size:inherit}",A=".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}@media
|
|
1
|
+
"use strict";const S=require("../bundled/definition2.cjs"),n=require("../bundled/vivid-element.cjs"),$=require("../bundled/definition14.cjs"),r=require("../bundled/data-grid.options.cjs"),F=require("../bundled/repeat.cjs"),w=require("../bundled/normalize.cjs"),h=require("../bundled/key-codes.cjs"),D=require("../bundled/host-semantics.cjs"),R=require("../bundled/children.cjs"),C=require("../bundled/slotted.cjs"),O=require("../bundled/localized.cjs"),H=require("../bundled/class-names.cjs"),T=require("../bundled/when.cjs"),I="focus",E="focusin",b="focusout",g="keydown",z=":host{display:block}:host([generate-header=sticky]){max-block-size:400px}.base{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.base{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.base ::-webkit-scrollbar{width:4px}.base ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.base ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.base{position:relative;overflow:auto;block-size:inherit;inline-size:100%;max-block-size:inherit}",A=".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}@media(hover:hover){.base: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.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.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media(hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base{display:grid;width:100%;box-sizing:border-box;color:var(--vvd-color-canvas-text)}: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([selected]):not([row-type*=header])) .base{background-color:var(--_appearance-color-fill)}",q=':host{block-size:100%;min-inline-size:80px}:host(:focus-visible){outline:none}:host([data-fixed]){position:sticky;z-index:5;background:var(--data-grid-cell-background, var(--vvd-color-surface-2dp))}:host([data-fixed]):before{position:absolute;z-index:1;top:0;right:0;width:1px;block-size:100%;box-shadow:4px 0 4px #0000001a,2px 0 2px #0000000d,1px 0 1px #0000000d;content:"";pointer-events:none}.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}@media(hover:hover){.base: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.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.selected:where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}@media(hover:hover){.base.selected:hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}}.base.selected.hover:where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base{display:flex;box-sizing:border-box;align-items:center;border-bottom:1px solid var(--vvd-color-neutral-300);block-size:var(--data-grid-cell-block-size, var(--_data-grid-cell-default-block-size));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)));padding-block:13px 14px;padding-inline:12px}:host(:focus-visible) .base{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--focus-stroke-color, var(--vvd-color-cta-500)),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}:host([cell-type=columnheader]) .base{border-color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base-bold);--_data-grid-cell-default-block-size: calc(1px*(48 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;--_data-grid-cell-default-white-space: nowrap}:host(:not([cell-type=columnheader])) .base{--_data-grid-cell-default-block-size: 100%;--_data-grid-cell-default-white-space: normal}:host(:is([selected]):not([cell-type=columnheader])) .base{background-color:var(--_appearance-color-fill)}.content{display:flex;overflow:hidden;align-items:center}.content[role=button]{cursor:pointer}slot:not([name]){display:block;overflow:hidden;text-overflow:ellipsis;white-space:var(--data-grid-cell-white-space, var(--_data-grid-cell-default-white-space))}:host(:not([cell-type=columnheader][aria-sort])) slot:not([name]){inline-size:100%}.header-icon{flex-shrink:0;margin-inline-start:16px}slot[name=action-items]{display:flex;flex-shrink:0;align-items:center}.base.has-action-items slot[name=action-items]{margin-inline-start:16px}';var L=Object.defineProperty,v=(l,e,t,i)=>{for(var o=void 0,a=l.length-1,s;a>=0;a--)(s=l[a])&&(o=s(e,t,o)||o);return o&&L(e,t,o),o};const P=n.html`
|
|
2
2
|
<template>
|
|
3
3
|
${l=>l.rowData===null||l.columnDefinition===null||l.columnDefinition.columnDataKey===null?null:l.rowData[l.columnDefinition.columnDataKey]}
|
|
4
4
|
</template>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<template>
|
|
7
7
|
${l=>l.columnDefinition.title===void 0?l.columnDefinition.columnDataKey:l.columnDefinition.title}
|
|
8
8
|
</template>
|
|
9
|
-
`;class f extends O.Localized(D.HostSemantics(n.VividElement)){constructor(){super(...arguments),this.cellType=r.DataGridCellTypes.default,this.rowData=null,this.columnDefinition=null,this.isActiveCell=!1,this.customCellView=null,this.updateCellStyle=()=>{this.gridColumn&&!this.gridColumn.includes("undefined")?this.style.gridColumn=this.gridColumn:this.style.removeProperty("grid-column")},this._selectable=!1,this.selected=!1,this.ariaSelected=null,this.ariaSort=null}cellTypeChanged(){this.$fastController.isConnected&&this.updateCellView()}gridColumnChanged(){this.$fastController.isConnected&&this.updateCellStyle()}columnDefinitionChanged(e,t){this.$fastController.isConnected&&this.updateCellView()}updateFixedStyle(){this.fixedPosition!==void 0?(this.setAttribute("data-fixed",""),this.style.left=this.fixedPosition):(this.removeAttribute("data-fixed"),this.style.removeProperty("left"))}setFixedPosition(e){this.fixedPosition=e,this.updateFixedStyle()}connectedCallback(){super.connectedCallback(),this.addEventListener(E,this.handleFocusin),this.addEventListener(b,this.handleFocusout),this.addEventListener(g,this.handleKeydown),this.style.gridColumn=`${this.columnDefinition?.gridColumn===void 0?0:this.columnDefinition.gridColumn}`,this.updateCellView(),this.updateCellStyle(),this.updateFixedStyle()}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener(E,this.handleFocusin),this.removeEventListener(b,this.handleFocusout),this.removeEventListener(g,this.handleKeydown),this.disconnectCellView()}handleFocusin(e){if(this.shadowRoot.querySelector(".base").classList.add("active"),!this.isActiveCell){switch(this.isActiveCell=!0,this.cellType){case r.DataGridCellTypes.columnHeader:if(this.columnDefinition!==null&&this.columnDefinition.headerCellInternalFocusQueue!==!0&&typeof this.columnDefinition.headerCellFocusTargetCallback=="function"){const t=this.columnDefinition.headerCellFocusTargetCallback(this);/* v8 ignore else -- @preserve */t!==null&&t.focus()}break;default:if(this.columnDefinition!==null&&this.columnDefinition.cellInternalFocusQueue!==!0&&typeof this.columnDefinition.cellFocusTargetCallback=="function"){const t=this.columnDefinition.cellFocusTargetCallback(this);/* v8 ignore else -- @preserve */t!==null&&t.focus()}break}this.$emit("cell-focused",this)}}handleFocusout(e){this.shadowRoot.querySelector(".base").classList.remove("active");/* v8 ignore else -- @preserve */this!==document.activeElement&&!this.contains(document.activeElement)&&(this.isActiveCell=!1)}handleKeydown(e){if(!(e.defaultPrevented||this.columnDefinition===null||this.cellType===r.DataGridCellTypes.default&&this.columnDefinition.cellInternalFocusQueue!==!0||this.cellType===r.DataGridCellTypes.columnHeader&&this.columnDefinition.headerCellInternalFocusQueue!==!0))switch(e.key){case h.keyEnter:case h.keyFunction2:if(this.contains(document.activeElement)&&document.activeElement!==this)return;switch(this.cellType){case r.DataGridCellTypes.columnHeader:{if(this.columnDefinition.headerCellFocusTargetCallback!==void 0){const t=this.columnDefinition.headerCellFocusTargetCallback(this);/* v8 ignore else -- @preserve */t!==null&&t.focus(),e.preventDefault()}break}default:{if(this.columnDefinition.cellFocusTargetCallback!==void 0){const t=this.columnDefinition.cellFocusTargetCallback(this);/* v8 ignore else -- @preserve */t!==null&&t.focus(),e.preventDefault()}break}}break;case h.keyEscape:{/* v8 ignore else -- @preserve */this.contains(document.activeElement)&&document.activeElement!==this&&(this.focus(),e.preventDefault());break}}}updateCellView(){if(this.disconnectCellView(),this.columnDefinition!==null){switch(this.cellType){case r.DataGridCellTypes.columnHeader:this.columnDefinition.headerCellTemplate!==void 0?this.customCellView=this.columnDefinition.headerCellTemplate.render(this,this):this.customCellView=M.render(this,this);break;case r.DataGridCellTypes.rowHeader:case r.DataGridCellTypes.default:this.columnDefinition.cellTemplate!==void 0?this.customCellView=this.columnDefinition.cellTemplate.render(this,this):this.customCellView=P.render(this,this);break}this.columnDefinition?.sortable?this.columnDefinition.sortDirection?this.sortDirection=this.columnDefinition.sortDirection:this.sortDirection=r.DataGridCellSortStates.none:this.sortDirection=void 0}}disconnectCellView(){this.customCellView!==null&&(this.customCellView.dispose(),this.customCellView=null)}ariaSelectedChanged(e,t){super.ariaSelectedChanged(e,t),this._selectable=t!==null,this.selected=t==="true"}ariaSortChanged(e,t){if(super.ariaSortChanged(e,t),t===null){this.sortDirection=void 0;return}this.sortDirection=t}#e(){return this.columnDefinition&&this.columnDefinition.columnDataKey?this.columnDefinition.columnDataKey:this.textContent.trim()}_handleInteraction(){const e=this.cellType==="columnheader";return e&&this.sortDirection!==void 0&&this.$emit("sort",{columnDataKey:this.#e(),sortDirection:this.sortDirection}),(e?this.columnDefinition?.headerCellInternalFocusQueue:this.columnDefinition?.cellInternalFocusQueue)||this.$emit("cell-click",{cell:this,row:this.parentElement,isHeaderCell:e,columnDataKey:this.#e()}),!0}}v([n.attr({attribute:"cell-type"})],f.prototype,"cellType");v([n.attr({attribute:"grid-column"})],f.prototype,"gridColumn");v([n.observable],f.prototype,"rowData");v([n.observable],f.prototype,"columnDefinition");v([n.observable],f.prototype,"_selectable");v([n.attr({mode:"boolean"})],f.prototype,"selected");v([n.attr({attribute:"sort-direction"})],f.prototype,"sortDirection");v([n.observable],f.prototype,"_actionItemsSlottedContent");var U=Object.defineProperty,m=(l,e,t,i)=>{for(var o=void 0,a=l.length-1,s;a>=0;a--)(s=l[a])&&(o=s(e,t,o)||o);return o&&U(e,t,o),o};class d extends D.HostSemantics(n.VividElement){constructor(){super(...arguments),this.rowType=r.DataGridRowTypes.default,this.rowData=null,this.columnDefinitions=null,this.behaviorOrchestrator=null,this.focusColumnIndex=0,this.updateRowStyle=()=>{this.style.gridTemplateColumns=this.gridTemplateColumns},this.ariaSelected=null,this._selectable=!1,this.selected=!1}gridTemplateColumnsChanged(){this.$fastController.isConnected&&this.updateRowStyle()}rowTypeChanged(){this.$fastController.isConnected&&this.updateItemTemplate()}cellItemTemplateChanged(){this.updateItemTemplate()}headerCellItemTemplateChanged(){this.updateItemTemplate()}connectedCallback(){super.connectedCallback();/* v8 ignore else -- @preserve */this.behaviorOrchestrator===null&&(this.updateItemTemplate(),this.behaviorOrchestrator=n.ViewBehaviorOrchestrator.create(this),this.$fastController.addBehavior(this.behaviorOrchestrator),this.behaviorOrchestrator.addBehaviorFactory(new F.RepeatDirective(w.normalizeBinding(e=>e.columnDefinitions),w.normalizeBinding(e=>e.activeCellItemTemplate),{positioning:!0}),this.appendChild(document.createComment("")))),this.addEventListener("cell-focused",this.handleCellFocus),this.addEventListener(b,this.handleFocusout),this.addEventListener(g,this.handleKeydown),this.updateRowStyle()}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("cell-focused",this.handleCellFocus),this.removeEventListener(b,this.handleFocusout),this.removeEventListener(g,this.handleKeydown)}handleFocusout(e){/* v8 ignore else -- @preserve */this.contains(document.activeElement)||(this.focusColumnIndex=0)}handleCellFocus(e){this.focusColumnIndex=this.cellElements.indexOf(e.target),this.$emit("row-focused",this)}handleKeydown(e){if(e.defaultPrevented)return;let t=0;switch(e.key){case h.keyArrowLeft:t=Math.max(0,this.focusColumnIndex-1),this.cellElements[t].focus(),e.preventDefault();break;case h.keyArrowRight:t=Math.min(this.cellElements.length-1,this.focusColumnIndex+1),this.cellElements[t].focus(),e.preventDefault();break;case h.keyHome:e.ctrlKey||(this.cellElements[0].focus(),e.preventDefault());break;case h.keyEnd:e.ctrlKey||(this.cellElements[this.cellElements.length-1].focus(),e.preventDefault());break}}updateItemTemplate(){this.activeCellItemTemplate=this.rowType===r.DataGridRowTypes.default&&this.cellItemTemplate!==void 0?this.cellItemTemplate:this.rowType===r.DataGridRowTypes.default&&this.cellItemTemplate===void 0?this.defaultCellItemTemplate:this.headerCellItemTemplate!==void 0?this.headerCellItemTemplate:this.defaultHeaderCellItemTemplate}ariaSelectedChanged(e,t){super.ariaSelectedChanged(e,t),this._selectable=t!==null,this.selected=t==="true"}}m([n.attr({attribute:"grid-template-columns"})],d.prototype,"gridTemplateColumns");m([n.attr({attribute:"row-type"})],d.prototype,"rowType");m([n.observable],d.prototype,"rowData");m([n.observable],d.prototype,"columnDefinitions");m([n.observable],d.prototype,"cellItemTemplate");m([n.observable],d.prototype,"headerCellItemTemplate");m([n.observable],d.prototype,"rowIndex");m([n.observable],d.prototype,"activeCellItemTemplate");m([n.observable],d.prototype,"defaultCellItemTemplate");m([n.observable],d.prototype,"defaultHeaderCellItemTemplate");m([n.observable],d.prototype,"cellElements");m([n.observable],d.prototype,"_selectable");m([n.attr({mode:"boolean"})],d.prototype,"selected");var V=Object.defineProperty,u=(l,e,t,i)=>{for(var o=void 0,a=l.length-1,s;a>=0;a--)(s=l[a])&&(o=s(e,t,o)||o);return o&&V(e,t,o),o};const p={none:"none",singleRow:"single-row",multiRow:"multi-row",singleCell:"single-cell",multiCell:"multi-cell"},c=class _ extends n.VividElement{constructor(){super(),this.noTabbing=!1,this.generateHeader=r.GenerateHeaderOptions.default,this.rowsData=[],this.columnDefinitions=null,this.focusRowIndex=0,this.focusColumnIndex=0,this.fixedColumnsPositions=[],this.behaviorOrchestrator=null,this.generatedHeader=null,this.isUpdatingFocus=!1,this.pendingFocusUpdate=!1,this.rowindexUpdateQueued=!1,this.columnDefinitionsStale=!0,this.generatedGridTemplateColumns="",this.focusOnCell=(e,t,i)=>{if(this.rowElements.length===0){this.focusRowIndex=0,this.focusColumnIndex=0;return}const o=Math.max(0,Math.min(this.rowElements.length-1,e)),s=this.rowElements[o].querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [role="rowheader"], [data-vvd-component="data-grid-cell"]'),y=Math.max(0,Math.min(s.length-1,t)),k=s[y];i&&this.scrollHeight!==this.clientHeight&&(o<this.focusRowIndex&&this.scrollTop>0||o>this.focusRowIndex&&this.scrollTop<this.scrollHeight-this.clientHeight)&&k.scrollIntoView({block:"center",inline:"center"}),k.focus()},this.onChildListChange=(e,t)=>{/* v8 ignore else -- @preserve */e&&e.length&&(e.forEach(i=>{i.addedNodes.forEach(o=>{o.nodeType===1&&(o.getAttribute("role")==="row"||o.getAttribute("row-type")==="default")&&(o.columnDefinitions=this.columnDefinitions)})}),this.queueRowIndexUpdate())},this.queueRowIndexUpdate=()=>{this.rowindexUpdateQueued||(this.rowindexUpdateQueued=!0,n.Updates.enqueue(this.updateRowIndexes))},this.updateRowIndexes=()=>{let e=this.gridTemplateColumns;if(e===void 0){if(this.generatedGridTemplateColumns===""&&this.rowElements.length>0){const t=this.rowElements[0];this.generatedGridTemplateColumns=new Array(t.cellElements.length).fill("1fr").join(" ")}e=this.generatedGridTemplateColumns}this.rowElements.forEach((t,i)=>{const o=t;o.rowIndex=i,o.gridTemplateColumns=e,this.columnDefinitionsStale&&(o.columnDefinitions=this.columnDefinitions)}),this.rowindexUpdateQueued=!1,this.columnDefinitionsStale=!1},this.#l=e=>{(e.key==="Enter"||e.key===" ")&&this.#t(e)},this.#t=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{if(!(e.getAttribute("role")!=="gridcell"||e.getAttribute("cell-type")!=="default")){if(this.selectionMode===p.singleCell||this.selectionMode===p.multiCell){this.#i({target:e,ctrlKey:t,shiftKey:i,metaKey:o});return}(this.selectionMode===p.singleRow||this.selectionMode===p.multiRow)&&this.#n({target:e,ctrlKey:t,shiftKey:i,metaKey:o})}},this.#i=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{const a=e;if(this.selectionMode===p.multiCell&&(t||i||o))a.selected=!this.#r.includes(a);else{const s=a.selected;this._resetSelection(!0),a.selected=!s}},this.#n=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{const a=e.parentNode;if(this.selectionMode===p.multiRow&&(t||i||o))a.selected=!this.#a.includes(a);else{const s=a.selected;this._resetSelection(!0),a.selected=!s}},this.#o={handleChange(e,t){/* v8 ignore else -- @preserve */if(t==="columnDefinitions"){/* v8 ignore else -- @preserve */e.$fastController.isConnected&&e.toggleGeneratedHeader()}}},this._resetSelection=(e=!1)=>{const t=Array.from(this.querySelectorAll('[role="gridcell"], [cell-type="default"]')),i=Array.from(this.querySelectorAll('[role="row"], [row-type="default"]'));if(this.selectionMode===p.singleCell||this.selectionMode===p.multiCell){for(const o of t)o._selectable=!0,o.selected=e?!1:o.selected||!1;for(const o of i)o._selectable=!1,o.selected=!1}if(this.selectionMode===p.none)for(const o of[...t,...i])o._selectable=!1,o.selected=!1;if(this.selectionMode===p.singleRow||this.selectionMode===p.multiRow){for(const o of t)o._selectable=!1,o.selected=!1;for(const o of i)o._selectable=!0,o.selected=e?!1:o.selected||!1}},this.addEventListener("click",this.#t),this.addEventListener("keydown",this.#l)}static generateTemplateColumns(e){let t="";return e.forEach(i=>{t=`${t}${t===""?"":" "}1fr`}),t}noTabbingChanged(){this.$fastController.isConnected&&this.#e()}#e(){this.setAttribute("tabIndex",this.noTabbing||this.contains(document.activeElement)?"-1":"0")}generateHeaderChanged(){this.$fastController.isConnected&&this.toggleGeneratedHeader()}gridTemplateColumnsChanged(){/* v8 ignore if -- @preserve */this.$fastController.isConnected&&(this.updateRowIndexes(),this.fixedColumns&&this.fixedColumns>0&&this.applyFixedColumns())}rowsDataChanged(){this.columnDefinitions===null&&this.rowsData.length>0&&(this.columnDefinitions=_.generateColumns(this.rowsData[0])),this.$fastController.isConnected&&this.toggleGeneratedHeader()}columnDefinitionsChanged(){if(this.columnDefinitions===null){this.generatedGridTemplateColumns="";return}this.generatedGridTemplateColumns=_.generateTemplateColumns(this.columnDefinitions);/* v8 ignore if -- @preserve */this.$fastController.isConnected&&(this.columnDefinitionsStale=!0,this.queueRowIndexUpdate())}headerCellItemTemplateChanged(){/* v8 ignore if -- @preserve */this.$fastController.isConnected&&this.generatedHeader!==null&&(this.generatedHeader.headerCellItemTemplate=this.headerCellItemTemplate)}focusRowIndexChanged(){this.$fastController.isConnected&&this.queueFocusUpdate()}focusColumnIndexChanged(){this.$fastController.isConnected&&this.queueFocusUpdate()}fixedColumnsChanged(){/* v8 ignore if -- @preserve */this.$fastController.isConnected&&(this.applyFixedColumns(),this.setupResizeObserver())}setupResizeObserver(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=void 0),typeof ResizeObserver<"u"&&this.fixedColumns&&this.fixedColumns>0&&(this.resizeObserver=new ResizeObserver(()=>{this.applyFixedColumns()}),this.resizeObserver.observe(this))}connectedCallback(){super.connectedCallback();/* v8 ignore else -- @preserve */this.rowItemTemplate===void 0&&(this.rowItemTemplate=this.defaultRowItemTemplate);/* v8 ignore else -- @preserve */this.behaviorOrchestrator===null&&(this.behaviorOrchestrator=n.ViewBehaviorOrchestrator.create(this),this.$fastController.addBehavior(this.behaviorOrchestrator),this.behaviorOrchestrator.addBehaviorFactory(new F.RepeatDirective(w.normalizeBinding(e=>e.rowsData),w.normalizeBinding(e=>e.rowItemTemplate),{positioning:!0}),this.appendChild(document.createComment("")))),this.toggleGeneratedHeader(),this.addEventListener("row-focused",this.handleRowFocus),this.addEventListener(I,this.handleFocus),this.addEventListener(g,this.handleKeydown),this.addEventListener(b,this.handleFocusOut),this.observer=new MutationObserver(this.onChildListChange),this.observer.observe(this,{childList:!0}),this.setupResizeObserver(),n.Updates.enqueue(this.queueRowIndexUpdate),this.#e(),n.Observable.getNotifier(this).subscribe(this.#o,"columnDefinitions")}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("row-focused",this.handleRowFocus),this.removeEventListener(I,this.handleFocus),this.removeEventListener(g,this.handleKeydown),this.removeEventListener(b,this.handleFocusOut),this.observer.disconnect(),this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=void 0),this.generatedHeader=null,n.Observable.getNotifier(this).unsubscribe(this.#o,"columnDefinitions")}handleRowFocus(e){this.isUpdatingFocus=!0;const t=e.target;this.focusRowIndex=this.rowElements.indexOf(t),this.focusColumnIndex=t.focusColumnIndex,this.setAttribute("tabIndex","-1"),this.isUpdatingFocus=!1}handleFocus(e){this.focusOnCell(this.focusRowIndex,this.focusColumnIndex,!0)}handleFocusOut(e){(e.relatedTarget===null||!this.contains(e.relatedTarget))&&this.setAttribute("tabIndex",this.noTabbing?"-1":"0")}handleKeydown(e){if(e.defaultPrevented)return;let t;const i=this.rowElements.length-1,o=this.offsetHeight+this.scrollTop,a=this.rowElements[i];switch(e.key){case h.keyArrowUp:e.preventDefault(),this.focusOnCell(this.focusRowIndex-1,this.focusColumnIndex,!0);break;case h.keyArrowDown:e.preventDefault(),this.focusOnCell(this.focusRowIndex+1,this.focusColumnIndex,!0);break;case h.keyPageUp:if(e.preventDefault(),this.rowElements.length===0){this.focusOnCell(0,0,!1);break}if(this.focusRowIndex===0){this.focusOnCell(0,this.focusColumnIndex,!1);return}for(t=this.focusRowIndex-1,t;t>=0;t--){const s=this.rowElements[t];if(s.offsetTop<this.scrollTop){this.scrollTop=s.offsetTop+s.clientHeight-this.clientHeight;break}}this.focusOnCell(t,this.focusColumnIndex,!1);break;case h.keyPageDown:if(e.preventDefault(),this.rowElements.length===0){this.focusOnCell(0,0,!1);break}if(this.focusRowIndex>=i||a.offsetTop+a.offsetHeight<=o){this.focusOnCell(i,this.focusColumnIndex,!1);return}for(t=this.focusRowIndex+1,t;t<=i;t++){const s=this.rowElements[t];if(s.offsetTop+s.offsetHeight>o){let y=0;this.generateHeader===r.GenerateHeaderOptions.sticky&&this.generatedHeader!==null&&(y=this.generatedHeader.clientHeight),this.scrollTop=s.offsetTop-y;break}}this.focusOnCell(t,this.focusColumnIndex,!1);break;case h.keyHome:{/* v8 ignore else -- @preserve */e.ctrlKey&&(e.preventDefault(),this.focusOnCell(0,0,!0));break}case h.keyEnd:{/* v8 ignore else -- @preserve */e.ctrlKey&&this.columnDefinitions!==null&&(e.preventDefault(),this.focusOnCell(this.rowElements.length-1,this.columnDefinitions.length-1,!0));break}}}queueFocusUpdate(){this.isUpdatingFocus&&this.contains(document.activeElement)||this.pendingFocusUpdate===!1&&(this.pendingFocusUpdate=!0,n.Updates.enqueue(()=>this.updateFocus()))}updateFocus(){this.pendingFocusUpdate=!1,this.focusOnCell(this.focusRowIndex,this.focusColumnIndex,!0)}toggleGeneratedHeader(){if(this.generatedHeader!==null&&(this.removeChild(this.generatedHeader),this.generatedHeader=null),this.generateHeader!==r.GenerateHeaderOptions.none&&this.columnDefinitions!==null){const e=document.createElement(this.rowElementTag);this.generatedHeader=e,this.generatedHeader.columnDefinitions=this.columnDefinitions,this.generatedHeader.gridTemplateColumns=this.gridTemplateColumns,this.generatedHeader.rowType=this.generateHeader===r.GenerateHeaderOptions.sticky?r.DataGridRowTypes.stickyHeader:r.DataGridRowTypes.header;/* v8 ignore else -- @preserve */this.firstChild!==null&&this.insertBefore(e,this.firstChild);return}}slottedRowElementsChanged(e,t){this._resetSelection()}get#a(){return this.rowElements.filter(e=>e.selected)}get#r(){return this.rowElements.reduce((e,t)=>{const o=Array.from(t.children).filter(a=>a.selected);return e.concat(o)},[])}selectionModeChanged(e){if(e===void 0){n.Updates.enqueue(this._resetSelection);return}this._resetSelection(!0)}#l;#t;#i;#n;#o;static generateColumns(e){return Object.keys(e).map((t,i)=>({columnDataKey:t,gridColumn:`${i}`}))}applyFixedColumns(){if(!this.fixedColumns||this.fixedColumns<=0){this.clearFixedColumns();return}this.calculateFixedColumnPositions(),this.applyFixedColumnStyling()}applyFixedColumnStyling(){this.rowElements.forEach(e=>{const t=e.querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');this.fixedColumnsPositions.forEach((i,o)=>{/* v8 ignore else -- @preserve */if(o<t.length){const a=t[o];/* v8 ignore else -- @preserve */typeof a.setFixedPosition=="function"&&a.setFixedPosition(`${i}px`)}})})}calculateFixedColumnPositions(){if(this.fixedColumnsPositions=[],this.rowElements.length===0)return;const e=this.rowElements[0].querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');let t=0;for(let i=0;i<Math.min(this.fixedColumns,e.length);i++)this.fixedColumnsPositions.push(t),t+=e[i].offsetWidth}clearFixedColumns(){if(this.rowElements.length===0){this.fixedColumnsPositions=[];return}this.rowElements.forEach(e=>{const t=e.querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');this.fixedColumnsPositions.forEach((i,o)=>{/* v8 ignore else -- @preserve */if(o<t.length){const a=t[o];/* v8 ignore else -- @preserve */typeof a.setFixedPosition=="function"&&a.setFixedPosition(void 0)}})}),this.fixedColumnsPositions=[]}};u([n.attr({attribute:"no-tabbing",mode:"boolean"})],c.prototype,"noTabbing");u([n.attr({attribute:"generate-header"})],c.prototype,"generateHeader");u([n.attr({attribute:"grid-template-columns"})],c.prototype,"gridTemplateColumns");u([n.observable],c.prototype,"rowsData");u([n.observable],c.prototype,"columnDefinitions");u([n.observable],c.prototype,"rowItemTemplate");u([n.observable],c.prototype,"cellItemTemplate");u([n.observable],c.prototype,"headerCellItemTemplate");u([n.observable],c.prototype,"focusRowIndex");u([n.observable],c.prototype,"focusColumnIndex");u([n.attr({attribute:"fixed-columns",converter:n.nullableNumberConverter})],c.prototype,"fixedColumns");u([n.observable],c.prototype,"defaultRowItemTemplate");u([n.observable],c.prototype,"rowElementTag");u([n.observable],c.prototype,"rowElements");u([n.observable],c.prototype,"slottedRowElements");u([n.attr({attribute:"selection-mode"})],c.prototype,"selectionMode");let K=c;function B(l){const e=l.tagFor(d);return n.html`
|
|
9
|
+
`;class f extends O.Localized(D.HostSemantics(n.VividElement)){constructor(){super(...arguments),this.cellType=r.DataGridCellTypes.default,this.rowData=null,this.columnDefinition=null,this.isActiveCell=!1,this.customCellView=null,this.updateCellStyle=()=>{this.gridColumn&&!this.gridColumn.includes("undefined")?this.style.gridColumn=this.gridColumn:this.style.removeProperty("grid-column")},this._selectable=!1,this.selected=!1,this.ariaSelected=null,this.ariaSort=null}cellTypeChanged(){this.$fastController.isConnected&&this.updateCellView()}gridColumnChanged(){this.$fastController.isConnected&&this.updateCellStyle()}columnDefinitionChanged(e,t){this.$fastController.isConnected&&this.updateCellView()}updateFixedStyle(){this.fixedPosition!==void 0?(this.setAttribute("data-fixed",""),this.style.left=this.fixedPosition):(this.removeAttribute("data-fixed"),this.style.removeProperty("left"))}setFixedPosition(e){this.fixedPosition=e,this.updateFixedStyle()}connectedCallback(){super.connectedCallback(),this.addEventListener(E,this.handleFocusin),this.addEventListener(b,this.handleFocusout),this.addEventListener(g,this.handleKeydown),this.style.gridColumn=`${this.columnDefinition?.gridColumn===void 0?0:this.columnDefinition.gridColumn}`,this.updateCellView(),this.updateCellStyle(),this.updateFixedStyle()}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener(E,this.handleFocusin),this.removeEventListener(b,this.handleFocusout),this.removeEventListener(g,this.handleKeydown),this.disconnectCellView()}handleFocusin(e){if(this.shadowRoot.querySelector(".base").classList.add("active"),!this.isActiveCell){switch(this.isActiveCell=!0,this.cellType){case r.DataGridCellTypes.columnHeader:if(this.columnDefinition!==null&&this.columnDefinition.headerCellInternalFocusQueue!==!0&&typeof this.columnDefinition.headerCellFocusTargetCallback=="function"){const t=this.columnDefinition.headerCellFocusTargetCallback(this);t!==null&&t.focus()}break;default:if(this.columnDefinition!==null&&this.columnDefinition.cellInternalFocusQueue!==!0&&typeof this.columnDefinition.cellFocusTargetCallback=="function"){const t=this.columnDefinition.cellFocusTargetCallback(this);t!==null&&t.focus()}break}this.$emit("cell-focused",this)}}handleFocusout(e){this.shadowRoot.querySelector(".base").classList.remove("active"),this!==document.activeElement&&!this.contains(document.activeElement)&&(this.isActiveCell=!1)}handleKeydown(e){if(!(e.defaultPrevented||this.columnDefinition===null||this.cellType===r.DataGridCellTypes.default&&this.columnDefinition.cellInternalFocusQueue!==!0||this.cellType===r.DataGridCellTypes.columnHeader&&this.columnDefinition.headerCellInternalFocusQueue!==!0))switch(e.key){case h.keyEnter:case h.keyFunction2:if(this.contains(document.activeElement)&&document.activeElement!==this)return;switch(this.cellType){case r.DataGridCellTypes.columnHeader:{if(this.columnDefinition.headerCellFocusTargetCallback!==void 0){const t=this.columnDefinition.headerCellFocusTargetCallback(this);t!==null&&t.focus(),e.preventDefault()}break}default:{if(this.columnDefinition.cellFocusTargetCallback!==void 0){const t=this.columnDefinition.cellFocusTargetCallback(this);t!==null&&t.focus(),e.preventDefault()}break}}break;case h.keyEscape:{this.contains(document.activeElement)&&document.activeElement!==this&&(this.focus(),e.preventDefault());break}}}updateCellView(){if(this.disconnectCellView(),this.columnDefinition!==null){switch(this.cellType){case r.DataGridCellTypes.columnHeader:this.columnDefinition.headerCellTemplate!==void 0?this.customCellView=this.columnDefinition.headerCellTemplate.render(this,this):this.customCellView=M.render(this,this);break;case r.DataGridCellTypes.rowHeader:case r.DataGridCellTypes.default:this.columnDefinition.cellTemplate!==void 0?this.customCellView=this.columnDefinition.cellTemplate.render(this,this):this.customCellView=P.render(this,this);break}this.columnDefinition?.sortable?this.columnDefinition.sortDirection?this.sortDirection=this.columnDefinition.sortDirection:this.sortDirection=r.DataGridCellSortStates.none:this.sortDirection=void 0}}disconnectCellView(){this.customCellView!==null&&(this.customCellView.dispose(),this.customCellView=null)}ariaSelectedChanged(e,t){super.ariaSelectedChanged(e,t),this._selectable=t!==null,this.selected=t==="true"}ariaSortChanged(e,t){if(super.ariaSortChanged(e,t),t===null){this.sortDirection=void 0;return}this.sortDirection=t}#e(){return this.columnDefinition&&this.columnDefinition.columnDataKey?this.columnDefinition.columnDataKey:this.textContent.trim()}_handleInteraction(){const e=this.cellType==="columnheader";return e&&this.sortDirection!==void 0&&this.$emit("sort",{columnDataKey:this.#e(),sortDirection:this.sortDirection}),(e?this.columnDefinition?.headerCellInternalFocusQueue:this.columnDefinition?.cellInternalFocusQueue)||this.$emit("cell-click",{cell:this,row:this.parentElement,isHeaderCell:e,columnDataKey:this.#e()}),!0}}v([n.attr({attribute:"cell-type"})],f.prototype,"cellType");v([n.attr({attribute:"grid-column"})],f.prototype,"gridColumn");v([n.observable],f.prototype,"rowData");v([n.observable],f.prototype,"columnDefinition");v([n.observable],f.prototype,"_selectable");v([n.attr({mode:"boolean"})],f.prototype,"selected");v([n.attr({attribute:"sort-direction"})],f.prototype,"sortDirection");v([n.observable],f.prototype,"_actionItemsSlottedContent");var U=Object.defineProperty,m=(l,e,t,i)=>{for(var o=void 0,a=l.length-1,s;a>=0;a--)(s=l[a])&&(o=s(e,t,o)||o);return o&&U(e,t,o),o};class d extends D.HostSemantics(n.VividElement){constructor(){super(...arguments),this.rowType=r.DataGridRowTypes.default,this.rowData=null,this.columnDefinitions=null,this.behaviorOrchestrator=null,this.focusColumnIndex=0,this.updateRowStyle=()=>{this.style.gridTemplateColumns=this.gridTemplateColumns},this.ariaSelected=null,this._selectable=!1,this.selected=!1}gridTemplateColumnsChanged(){this.$fastController.isConnected&&this.updateRowStyle()}rowTypeChanged(){this.$fastController.isConnected&&this.updateItemTemplate()}cellItemTemplateChanged(){this.updateItemTemplate()}headerCellItemTemplateChanged(){this.updateItemTemplate()}connectedCallback(){super.connectedCallback(),this.behaviorOrchestrator===null&&(this.updateItemTemplate(),this.behaviorOrchestrator=n.ViewBehaviorOrchestrator.create(this),this.$fastController.addBehavior(this.behaviorOrchestrator),this.behaviorOrchestrator.addBehaviorFactory(new F.RepeatDirective(w.normalizeBinding(e=>e.columnDefinitions),w.normalizeBinding(e=>e.activeCellItemTemplate),{positioning:!0}),this.appendChild(document.createComment("")))),this.addEventListener("cell-focused",this.handleCellFocus),this.addEventListener(b,this.handleFocusout),this.addEventListener(g,this.handleKeydown),this.updateRowStyle()}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("cell-focused",this.handleCellFocus),this.removeEventListener(b,this.handleFocusout),this.removeEventListener(g,this.handleKeydown)}handleFocusout(e){this.contains(document.activeElement)||(this.focusColumnIndex=0)}handleCellFocus(e){this.focusColumnIndex=this.cellElements.indexOf(e.target),this.$emit("row-focused",this)}handleKeydown(e){if(e.defaultPrevented)return;let t=0;switch(e.key){case h.keyArrowLeft:t=Math.max(0,this.focusColumnIndex-1),this.cellElements[t].focus(),e.preventDefault();break;case h.keyArrowRight:t=Math.min(this.cellElements.length-1,this.focusColumnIndex+1),this.cellElements[t].focus(),e.preventDefault();break;case h.keyHome:e.ctrlKey||(this.cellElements[0].focus(),e.preventDefault());break;case h.keyEnd:e.ctrlKey||(this.cellElements[this.cellElements.length-1].focus(),e.preventDefault());break}}updateItemTemplate(){this.activeCellItemTemplate=this.rowType===r.DataGridRowTypes.default&&this.cellItemTemplate!==void 0?this.cellItemTemplate:this.rowType===r.DataGridRowTypes.default&&this.cellItemTemplate===void 0?this.defaultCellItemTemplate:this.headerCellItemTemplate!==void 0?this.headerCellItemTemplate:this.defaultHeaderCellItemTemplate}ariaSelectedChanged(e,t){super.ariaSelectedChanged(e,t),this._selectable=t!==null,this.selected=t==="true"}}m([n.attr({attribute:"grid-template-columns"})],d.prototype,"gridTemplateColumns");m([n.attr({attribute:"row-type"})],d.prototype,"rowType");m([n.observable],d.prototype,"rowData");m([n.observable],d.prototype,"columnDefinitions");m([n.observable],d.prototype,"cellItemTemplate");m([n.observable],d.prototype,"headerCellItemTemplate");m([n.observable],d.prototype,"rowIndex");m([n.observable],d.prototype,"activeCellItemTemplate");m([n.observable],d.prototype,"defaultCellItemTemplate");m([n.observable],d.prototype,"defaultHeaderCellItemTemplate");m([n.observable],d.prototype,"cellElements");m([n.observable],d.prototype,"_selectable");m([n.attr({mode:"boolean"})],d.prototype,"selected");var V=Object.defineProperty,u=(l,e,t,i)=>{for(var o=void 0,a=l.length-1,s;a>=0;a--)(s=l[a])&&(o=s(e,t,o)||o);return o&&V(e,t,o),o};const p={none:"none",singleRow:"single-row",multiRow:"multi-row",singleCell:"single-cell",multiCell:"multi-cell"},c=class _ extends n.VividElement{constructor(){super(),this.noTabbing=!1,this.generateHeader=r.GenerateHeaderOptions.default,this.rowsData=[],this.columnDefinitions=null,this.focusRowIndex=0,this.focusColumnIndex=0,this.fixedColumnsPositions=[],this.behaviorOrchestrator=null,this.generatedHeader=null,this.isUpdatingFocus=!1,this.pendingFocusUpdate=!1,this.rowindexUpdateQueued=!1,this.columnDefinitionsStale=!0,this.generatedGridTemplateColumns="",this.focusOnCell=(e,t,i)=>{if(this.rowElements.length===0){this.focusRowIndex=0,this.focusColumnIndex=0;return}const o=Math.max(0,Math.min(this.rowElements.length-1,e)),s=this.rowElements[o].querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [role="rowheader"], [data-vvd-component="data-grid-cell"]'),y=Math.max(0,Math.min(s.length-1,t)),k=s[y];i&&this.scrollHeight!==this.clientHeight&&(o<this.focusRowIndex&&this.scrollTop>0||o>this.focusRowIndex&&this.scrollTop<this.scrollHeight-this.clientHeight)&&k.scrollIntoView({block:"center",inline:"center"}),k.focus()},this.onChildListChange=(e,t)=>{e&&e.length&&(e.forEach(i=>{i.addedNodes.forEach(o=>{o.nodeType===1&&(o.getAttribute("role")==="row"||o.getAttribute("row-type")==="default")&&(o.columnDefinitions=this.columnDefinitions)})}),this.queueRowIndexUpdate())},this.queueRowIndexUpdate=()=>{this.rowindexUpdateQueued||(this.rowindexUpdateQueued=!0,n.Updates.enqueue(this.updateRowIndexes))},this.updateRowIndexes=()=>{let e=this.gridTemplateColumns;if(e===void 0){if(this.generatedGridTemplateColumns===""&&this.rowElements.length>0){const t=this.rowElements[0];this.generatedGridTemplateColumns=new Array(t.cellElements.length).fill("1fr").join(" ")}e=this.generatedGridTemplateColumns}this.rowElements.forEach((t,i)=>{const o=t;o.rowIndex=i,o.gridTemplateColumns=e,this.columnDefinitionsStale&&(o.columnDefinitions=this.columnDefinitions)}),this.rowindexUpdateQueued=!1,this.columnDefinitionsStale=!1},this.#l=e=>{(e.key==="Enter"||e.key===" ")&&this.#t(e)},this.#t=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{if(!(e.getAttribute("role")!=="gridcell"||e.getAttribute("cell-type")!=="default")){if(this.selectionMode===p.singleCell||this.selectionMode===p.multiCell){this.#i({target:e,ctrlKey:t,shiftKey:i,metaKey:o});return}(this.selectionMode===p.singleRow||this.selectionMode===p.multiRow)&&this.#n({target:e,ctrlKey:t,shiftKey:i,metaKey:o})}},this.#i=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{const a=e;if(this.selectionMode===p.multiCell&&(t||i||o))a.selected=!this.#r.includes(a);else{const s=a.selected;this._resetSelection(!0),a.selected=!s}},this.#n=({target:e,ctrlKey:t,shiftKey:i,metaKey:o})=>{const a=e.parentNode;if(this.selectionMode===p.multiRow&&(t||i||o))a.selected=!this.#a.includes(a);else{const s=a.selected;this._resetSelection(!0),a.selected=!s}},this.#o={handleChange(e,t){t==="columnDefinitions"&&e.$fastController.isConnected&&e.toggleGeneratedHeader()}},this._resetSelection=(e=!1)=>{const t=Array.from(this.querySelectorAll('[role="gridcell"], [cell-type="default"]')),i=Array.from(this.querySelectorAll('[role="row"], [row-type="default"]'));if(this.selectionMode===p.singleCell||this.selectionMode===p.multiCell){for(const o of t)o._selectable=!0,o.selected=e?!1:o.selected||!1;for(const o of i)o._selectable=!1,o.selected=!1}if(this.selectionMode===p.none)for(const o of[...t,...i])o._selectable=!1,o.selected=!1;if(this.selectionMode===p.singleRow||this.selectionMode===p.multiRow){for(const o of t)o._selectable=!1,o.selected=!1;for(const o of i)o._selectable=!0,o.selected=e?!1:o.selected||!1}},this.addEventListener("click",this.#t),this.addEventListener("keydown",this.#l)}static generateTemplateColumns(e){let t="";return e.forEach(i=>{t=`${t}${t===""?"":" "}1fr`}),t}noTabbingChanged(){this.$fastController.isConnected&&this.#e()}#e(){this.setAttribute("tabIndex",this.noTabbing||this.contains(document.activeElement)?"-1":"0")}generateHeaderChanged(){this.$fastController.isConnected&&this.toggleGeneratedHeader()}gridTemplateColumnsChanged(){this.$fastController.isConnected&&(this.updateRowIndexes(),this.fixedColumns&&this.fixedColumns>0&&this.applyFixedColumns())}rowsDataChanged(){this.columnDefinitions===null&&this.rowsData.length>0&&(this.columnDefinitions=_.generateColumns(this.rowsData[0])),this.$fastController.isConnected&&this.toggleGeneratedHeader()}columnDefinitionsChanged(){if(this.columnDefinitions===null){this.generatedGridTemplateColumns="";return}this.generatedGridTemplateColumns=_.generateTemplateColumns(this.columnDefinitions),this.$fastController.isConnected&&(this.columnDefinitionsStale=!0,this.queueRowIndexUpdate())}headerCellItemTemplateChanged(){this.$fastController.isConnected&&this.generatedHeader!==null&&(this.generatedHeader.headerCellItemTemplate=this.headerCellItemTemplate)}focusRowIndexChanged(){this.$fastController.isConnected&&this.queueFocusUpdate()}focusColumnIndexChanged(){this.$fastController.isConnected&&this.queueFocusUpdate()}fixedColumnsChanged(){this.$fastController.isConnected&&(this.applyFixedColumns(),this.setupResizeObserver())}setupResizeObserver(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=void 0),typeof ResizeObserver<"u"&&this.fixedColumns&&this.fixedColumns>0&&(this.resizeObserver=new ResizeObserver(()=>{this.applyFixedColumns()}),this.resizeObserver.observe(this))}connectedCallback(){super.connectedCallback(),this.rowItemTemplate===void 0&&(this.rowItemTemplate=this.defaultRowItemTemplate),this.behaviorOrchestrator===null&&(this.behaviorOrchestrator=n.ViewBehaviorOrchestrator.create(this),this.$fastController.addBehavior(this.behaviorOrchestrator),this.behaviorOrchestrator.addBehaviorFactory(new F.RepeatDirective(w.normalizeBinding(e=>e.rowsData),w.normalizeBinding(e=>e.rowItemTemplate),{positioning:!0}),this.appendChild(document.createComment("")))),this.toggleGeneratedHeader(),this.addEventListener("row-focused",this.handleRowFocus),this.addEventListener(I,this.handleFocus),this.addEventListener(g,this.handleKeydown),this.addEventListener(b,this.handleFocusOut),this.observer=new MutationObserver(this.onChildListChange),this.observer.observe(this,{childList:!0}),this.setupResizeObserver(),n.Updates.enqueue(this.queueRowIndexUpdate),this.#e(),n.Observable.getNotifier(this).subscribe(this.#o,"columnDefinitions")}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("row-focused",this.handleRowFocus),this.removeEventListener(I,this.handleFocus),this.removeEventListener(g,this.handleKeydown),this.removeEventListener(b,this.handleFocusOut),this.observer.disconnect(),this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=void 0),this.generatedHeader=null,n.Observable.getNotifier(this).unsubscribe(this.#o,"columnDefinitions")}handleRowFocus(e){this.isUpdatingFocus=!0;const t=e.target;this.focusRowIndex=this.rowElements.indexOf(t),this.focusColumnIndex=t.focusColumnIndex,this.setAttribute("tabIndex","-1"),this.isUpdatingFocus=!1}handleFocus(e){this.focusOnCell(this.focusRowIndex,this.focusColumnIndex,!0)}handleFocusOut(e){(e.relatedTarget===null||!this.contains(e.relatedTarget))&&this.setAttribute("tabIndex",this.noTabbing?"-1":"0")}handleKeydown(e){if(e.defaultPrevented)return;let t;const i=this.rowElements.length-1,o=this.offsetHeight+this.scrollTop,a=this.rowElements[i];switch(e.key){case h.keyArrowUp:e.preventDefault(),this.focusOnCell(this.focusRowIndex-1,this.focusColumnIndex,!0);break;case h.keyArrowDown:e.preventDefault(),this.focusOnCell(this.focusRowIndex+1,this.focusColumnIndex,!0);break;case h.keyPageUp:if(e.preventDefault(),this.rowElements.length===0){this.focusOnCell(0,0,!1);break}if(this.focusRowIndex===0){this.focusOnCell(0,this.focusColumnIndex,!1);return}for(t=this.focusRowIndex-1,t;t>=0;t--){const s=this.rowElements[t];if(s.offsetTop<this.scrollTop){this.scrollTop=s.offsetTop+s.clientHeight-this.clientHeight;break}}this.focusOnCell(t,this.focusColumnIndex,!1);break;case h.keyPageDown:if(e.preventDefault(),this.rowElements.length===0){this.focusOnCell(0,0,!1);break}if(this.focusRowIndex>=i||a.offsetTop+a.offsetHeight<=o){this.focusOnCell(i,this.focusColumnIndex,!1);return}for(t=this.focusRowIndex+1,t;t<=i;t++){const s=this.rowElements[t];if(s.offsetTop+s.offsetHeight>o){let y=0;this.generateHeader===r.GenerateHeaderOptions.sticky&&this.generatedHeader!==null&&(y=this.generatedHeader.clientHeight),this.scrollTop=s.offsetTop-y;break}}this.focusOnCell(t,this.focusColumnIndex,!1);break;case h.keyHome:{e.ctrlKey&&(e.preventDefault(),this.focusOnCell(0,0,!0));break}case h.keyEnd:{e.ctrlKey&&this.columnDefinitions!==null&&(e.preventDefault(),this.focusOnCell(this.rowElements.length-1,this.columnDefinitions.length-1,!0));break}}}queueFocusUpdate(){this.isUpdatingFocus&&this.contains(document.activeElement)||this.pendingFocusUpdate===!1&&(this.pendingFocusUpdate=!0,n.Updates.enqueue(()=>this.updateFocus()))}updateFocus(){this.pendingFocusUpdate=!1,this.focusOnCell(this.focusRowIndex,this.focusColumnIndex,!0)}toggleGeneratedHeader(){if(this.generatedHeader!==null&&(this.removeChild(this.generatedHeader),this.generatedHeader=null),this.generateHeader!==r.GenerateHeaderOptions.none&&this.columnDefinitions!==null){const e=document.createElement(this.rowElementTag);this.generatedHeader=e,this.generatedHeader.columnDefinitions=this.columnDefinitions,this.generatedHeader.gridTemplateColumns=this.gridTemplateColumns,this.generatedHeader.rowType=this.generateHeader===r.GenerateHeaderOptions.sticky?r.DataGridRowTypes.stickyHeader:r.DataGridRowTypes.header,this.firstChild!==null&&this.insertBefore(e,this.firstChild);return}}slottedRowElementsChanged(e,t){this._resetSelection()}get#a(){return this.rowElements.filter(e=>e.selected)}get#r(){return this.rowElements.reduce((e,t)=>{const o=Array.from(t.children).filter(a=>a.selected);return e.concat(o)},[])}selectionModeChanged(e){if(e===void 0){n.Updates.enqueue(this._resetSelection);return}this._resetSelection(!0)}#l;#t;#i;#n;#o;static generateColumns(e){return Object.keys(e).map((t,i)=>({columnDataKey:t,gridColumn:`${i}`}))}applyFixedColumns(){if(!this.fixedColumns||this.fixedColumns<=0){this.clearFixedColumns();return}this.calculateFixedColumnPositions(),this.applyFixedColumnStyling()}applyFixedColumnStyling(){this.rowElements.forEach(e=>{const t=e.querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');this.fixedColumnsPositions.forEach((i,o)=>{if(o<t.length){const a=t[o];typeof a.setFixedPosition=="function"&&a.setFixedPosition(`${i}px`)}})})}calculateFixedColumnPositions(){if(this.fixedColumnsPositions=[],this.rowElements.length===0)return;const e=this.rowElements[0].querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');let t=0;for(let i=0;i<Math.min(this.fixedColumns,e.length);i++)this.fixedColumnsPositions.push(t),t+=e[i].offsetWidth}clearFixedColumns(){if(this.rowElements.length===0){this.fixedColumnsPositions=[];return}this.rowElements.forEach(e=>{const t=e.querySelectorAll('[role="cell"], [role="gridcell"], [role="columnheader"], [cell-type="default"], [cell-type="columnheader"]');this.fixedColumnsPositions.forEach((i,o)=>{if(o<t.length){const a=t[o];typeof a.setFixedPosition=="function"&&a.setFixedPosition(void 0)}})}),this.fixedColumnsPositions=[]}};u([n.attr({attribute:"no-tabbing",mode:"boolean"})],c.prototype,"noTabbing");u([n.attr({attribute:"generate-header"})],c.prototype,"generateHeader");u([n.attr({attribute:"grid-template-columns"})],c.prototype,"gridTemplateColumns");u([n.observable],c.prototype,"rowsData");u([n.observable],c.prototype,"columnDefinitions");u([n.observable],c.prototype,"rowItemTemplate");u([n.observable],c.prototype,"cellItemTemplate");u([n.observable],c.prototype,"headerCellItemTemplate");u([n.observable],c.prototype,"focusRowIndex");u([n.observable],c.prototype,"focusColumnIndex");u([n.attr({attribute:"fixed-columns",converter:n.nullableNumberConverter})],c.prototype,"fixedColumns");u([n.observable],c.prototype,"defaultRowItemTemplate");u([n.observable],c.prototype,"rowElementTag");u([n.observable],c.prototype,"rowElements");u([n.observable],c.prototype,"slottedRowElements");u([n.attr({attribute:"selection-mode"})],c.prototype,"selectionMode");let K=c;function B(l){const e=l.tagFor(d);return n.html`
|
|
10
10
|
<${e}
|
|
11
11
|
:rowData="${t=>t}"
|
|
12
12
|
:cellItemTemplate="${(t,i)=>i.parent.cellItemTemplate}"
|