@tylertech/forge 3.0.0-next.22 → 3.0.0-next.23
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/dist/esm/autocomplete/index.js +1 -1
- package/dist/esm/bottom-sheet/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chunks/{chunk.5ADUSMC7.js → chunk.2W23MOPP.js} +2 -2
- package/dist/esm/chunks/{chunk.XATVDHDW.js → chunk.32APLNN2.js} +2 -2
- package/dist/esm/chunks/{chunk.ISLJNJEE.js → chunk.3II7OT2I.js} +2 -2
- package/dist/esm/chunks/{chunk.ISLJNJEE.js.map → chunk.3II7OT2I.js.map} +1 -1
- package/dist/esm/chunks/{chunk.24SQJBSQ.js → chunk.5QIWLZG3.js} +2 -2
- package/dist/esm/chunks/{chunk.6E5WHIPF.js → chunk.7RLY2O3H.js} +2 -2
- package/dist/esm/chunks/{chunk.6E5WHIPF.js.map → chunk.7RLY2O3H.js.map} +2 -2
- package/dist/esm/chunks/{chunk.Q7TBWGKN.js → chunk.AIJK3CTV.js} +2 -2
- package/dist/esm/chunks/{chunk.3IUQ4C47.js → chunk.CLYGTLXN.js} +2 -2
- package/dist/esm/chunks/chunk.GRYO5XP2.js +7 -0
- package/dist/esm/chunks/{chunk.PFIIBXTS.js.map → chunk.GRYO5XP2.js.map} +2 -2
- package/dist/esm/chunks/{chunk.LSMHIVX2.js → chunk.HD2SLIL2.js} +2 -2
- package/dist/esm/chunks/{chunk.EUJBIOGT.js → chunk.KCCW4AMU.js} +2 -2
- package/dist/esm/chunks/{chunk.JE5LSPXG.js → chunk.LY2Z2Z7S.js} +2 -2
- package/dist/esm/chunks/{chunk.RFT3BAJ2.js → chunk.MFS7AVW6.js} +2 -2
- package/dist/esm/chunks/{chunk.5A665C5E.js → chunk.OJ7JO4O6.js} +2 -2
- package/dist/esm/chunks/{chunk.DZJ6HBAG.js → chunk.OQHDHS2C.js} +2 -2
- package/dist/esm/chunks/{chunk.E2BE52ME.js → chunk.OREDK5MJ.js} +2 -2
- package/dist/esm/chunks/{chunk.RONMNRSH.js → chunk.SZOZIJZI.js} +2 -2
- package/dist/esm/chunks/{chunk.KTPEFU7V.js → chunk.TSSZQPLE.js} +2 -2
- package/dist/esm/chunks/chunk.V6KUOCAR.js +7 -0
- package/dist/esm/chunks/chunk.V6KUOCAR.js.map +7 -0
- package/dist/esm/chunks/{chunk.XTJGWT5F.js → chunk.VJZ7VDG5.js} +2 -2
- package/dist/esm/chunks/{chunk.EHVCEEV2.js → chunk.VL5RWSAV.js} +2 -2
- package/dist/esm/chunks/{chunk.W6FT6MKN.js → chunk.X77NKT6Z.js} +2 -2
- package/dist/esm/chunks/{chunk.A2NB7CIK.js → chunk.XZ23XHFE.js} +2 -2
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/field/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/label/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/radio/radio/index.js +1 -1
- package/dist/esm/radio/radio-group/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/esm/checkbox/checkbox.js +1 -1
- package/esm/radio/radio/radio.js +1 -1
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/switch/switch.js +1 -1
- package/package.json +1 -1
- package/styles/core/styles/tokens/checkbox/_tokens.scss +1 -1
- package/styles/core/styles/tokens/radio/_tokens.scss +1 -1
- package/styles/core/styles/tokens/switch/_tokens.scss +1 -1
- package/dist/esm/chunks/chunk.LGSCBWNR.js +0 -7
- package/dist/esm/chunks/chunk.LGSCBWNR.js.map +0 -7
- package/dist/esm/chunks/chunk.PFIIBXTS.js +0 -7
- /package/dist/esm/chunks/{chunk.5ADUSMC7.js.map → chunk.2W23MOPP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XATVDHDW.js.map → chunk.32APLNN2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.24SQJBSQ.js.map → chunk.5QIWLZG3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Q7TBWGKN.js.map → chunk.AIJK3CTV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.3IUQ4C47.js.map → chunk.CLYGTLXN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LSMHIVX2.js.map → chunk.HD2SLIL2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EUJBIOGT.js.map → chunk.KCCW4AMU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JE5LSPXG.js.map → chunk.LY2Z2Z7S.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RFT3BAJ2.js.map → chunk.MFS7AVW6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5A665C5E.js.map → chunk.OJ7JO4O6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DZJ6HBAG.js.map → chunk.OQHDHS2C.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.E2BE52ME.js.map → chunk.OREDK5MJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RONMNRSH.js.map → chunk.SZOZIJZI.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KTPEFU7V.js.map → chunk.TSSZQPLE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XTJGWT5F.js.map → chunk.VJZ7VDG5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EHVCEEV2.js.map → chunk.VL5RWSAV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W6FT6MKN.js.map → chunk.X77NKT6Z.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A2NB7CIK.js.map → chunk.XZ23XHFE.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/checkbox/checkbox-constants.ts", "../../src/checkbox/checkbox-adapter.ts", "../../src/checkbox/checkbox-foundation.ts", "../../src/checkbox/checkbox.ts", "../../src/checkbox/checkbox-component-delegate.ts", "../../src/checkbox/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}checkbox`;\n\nconst observedAttributes = {\n CHECKED: 'checked',\n DEFAULT_CHECKED: 'default-checked',\n INDETERMINATE: 'indeterminate',\n VALUE: 'value',\n DENSE: 'dense',\n DISABLED: 'disabled',\n REQUIRED: 'required',\n READONLY: 'readonly',\n LABEL_POSITION: 'label-position',\n TABINDEX: 'tabindex'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst selectors = {\n ROOT: '.forge-checkbox',\n LABEL: '#label',\n STATE_LAYER: 'forge-state-layer'\n};\n\nexport const CHECKBOX_CONSTANTS = {\n elementName,\n selectors,\n observedAttributes,\n attributes\n};\n\nexport type CheckboxState = 'checked' | 'unchecked' | 'checked-indeterminate' | 'unchecked-indeterminate';\nexport type CheckboxLabelPosition = 'start' | 'end';\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { isFocusable, setDefaultAria, setValidity } from '../constants';\nimport { BaseAdapter, IBaseAdapter } from '../core';\nimport { StateLayerComponent } from '../state-layer';\nimport { ICheckboxComponent } from './checkbox';\nimport { CheckboxLabelPosition, CheckboxState, CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport interface ICheckboxAdapter extends IBaseAdapter {\n setChecked(value: boolean): void;\n setDisabled(value: boolean): void;\n setRequired(value: boolean): void;\n setReadonly(value: boolean): void;\n setLabelPosition(value: CheckboxLabelPosition): void;\n syncValue(value: string | null, state: CheckboxState): void;\n}\n\nexport class CheckboxAdapter extends BaseAdapter<ICheckboxComponent> implements ICheckboxAdapter {\n private readonly _rootElement: HTMLElement;\n private readonly _labelElement: HTMLElement;\n private readonly _stateLayerElement: StateLayerComponent;\n\n constructor(component: ICheckboxComponent) {\n super(component);\n \n this._rootElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.ROOT);\n this._labelElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.LABEL);\n this._stateLayerElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.STATE_LAYER) as StateLayerComponent;\n }\n\n public setChecked(value: boolean): void {\n this._component[setValidity]();\n this._component[setDefaultAria]({ ariaChecked: value ? 'true' : 'false'});\n }\n\n public setDisabled(value: boolean): void {\n this._component[isFocusable] = !value;\n this._component[setDefaultAria]({ ariaDisabled: value ? 'true' : 'false'});\n this._stateLayerElement.disabled = value;\n }\n\n public setRequired(value: boolean): void {\n this._component[setValidity]();\n this._component[setDefaultAria]({ ariaRequired: value ? 'true' : 'false' });\n }\n\n public setReadonly(value: boolean): void {\n this._component[setDefaultAria]({ ariaReadOnly: value ? 'true' : 'false'});\n this._stateLayerElement.disabled = value;\n }\n\n public setLabelPosition(value: CheckboxLabelPosition): void {\n this._labelElement.remove();\n\n if (value === 'start') {\n this._rootElement.prepend(this._labelElement);\n } else {\n this._rootElement.append(this._labelElement);\n }\n }\n\n public syncValue(value: string | null, state: CheckboxState): void {\n const data = value ? new FormData() : null;\n if (data && value) {\n data.append(this._component.name, value);\n }\n this._component.setFormValue(data, state);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICheckboxAdapter } from './checkbox-adapter';\nimport { CHECKBOX_CONSTANTS, CheckboxLabelPosition, CheckboxState } from './checkbox-constants';\n\nexport interface ICheckboxFoundation extends ICustomElementFoundation {\n checked: boolean;\n defaultChecked: boolean;\n indeterminate: boolean;\n value: string;\n dense: boolean;\n disabled: boolean;\n required: boolean;\n readonly: boolean;\n labelPosition: CheckboxLabelPosition;\n}\n\nexport class CheckboxFoundation implements ICheckboxFoundation {\n // State\n private _checked = false;\n private _defaultChecked = false;\n private _indeterminate = false;\n private _value = 'on';\n private _dense = false;\n private _disabled = false;\n private _required = false;\n private _readonly = false;\n private _labelPosition: CheckboxLabelPosition = 'end';\n\n private get _submittedValue(): string | null {\n return this._checked ? this._value : null;\n }\n private get _formState(): CheckboxState {\n return this._checked\n ? this._indeterminate\n ? 'checked-indeterminate'\n : 'checked'\n : this._indeterminate\n ? 'unchecked-indeterminate'\n : 'unchecked';\n }\n\n // Listeners\n private readonly _clickListener: EventListener = (evt: Event) => this._handleChange();\n private readonly _keydownListener: EventListener = (evt: KeyboardEvent) => this._handleKeydown(evt);\n private readonly _keyupListener: EventListener = (evt: KeyboardEvent) => this._handleKeyup(evt);\n\n constructor(private _adapter: ICheckboxAdapter) {}\n\n public initialize(): void {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n this._adapter.addHostListener('keyup', this._keyupListener);\n this._adapter.syncValue(this._submittedValue, this._formState);\n };\n\n private _handleKeydown(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n evt.preventDefault();\n }\n }\n\n private _handleKeyup(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n this._handleChange();\n }\n }\n\n private _handleChange(): void {\n if (this._readonly) {\n return;\n }\n \n const oldValue = this._checked;\n const newValue = !this._checked;\n // Call the public setter to ensure all the update logic is run\n this.checked = newValue;\n\n const event = new Event('change', { cancelable: true });\n this._adapter.redispatchEvent(event);\n if (event.defaultPrevented) {\n this.checked = oldValue;\n return;\n }\n\n // Toggle inderminate off after a user action\n this._indeterminate = false;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.INDETERMINATE, this._indeterminate);\n }\n\n public get checked(): boolean {\n return this._checked;\n }\n public set checked(value: boolean) {\n if (this._checked !== value) {\n this._checked = value;\n this._adapter.setChecked(this._checked);\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.CHECKED, this._checked);\n }\n }\n\n public get defaultChecked(): boolean {\n return this._defaultChecked;\n }\n public set defaultChecked(value: boolean) {\n if (this._defaultChecked !== value) {\n this._defaultChecked = value;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DEFAULT_CHECKED, this._defaultChecked);\n }\n }\n\n public get indeterminate(): boolean {\n return this._indeterminate;\n }\n public set indeterminate(value: boolean) {\n if (this._indeterminate !== value) {\n this._indeterminate = value;\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.INDETERMINATE, this._indeterminate);\n }\n }\n\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.setHostAttribute(CHECKBOX_CONSTANTS.attributes.VALUE, this._value);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this.disabled);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get required(): boolean {\n return this._required;\n }\n public set required(value: boolean) {\n if (this._required !== value) {\n this._required = value;\n this._adapter.setRequired(this._required);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.REQUIRED, this._required);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n if (this._readonly !== value) {\n this._readonly = value;\n this._adapter.setReadonly(this._readonly);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n\n public get labelPosition(): CheckboxLabelPosition {\n return this._labelPosition;\n }\n public set labelPosition(value: CheckboxLabelPosition) {\n if (this.labelPosition !== value) {\n this._labelPosition = value;\n this._adapter.setLabelPosition(this._labelPosition);\n this._adapter.setHostAttribute(CHECKBOX_CONSTANTS.attributes.LABEL_POSITION, this._labelPosition);\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty, isDefined, isString } from '@tylertech/forge-core';\nimport { getFormState, getFormValue, getValidationMessage, inputType, internals, setDefaultAria, setValidity } from '../constants';\nimport { BaseComponent, FormValue } from '../core';\nimport { IWithFocusable, WithFocusable } from '../core/mixins/focus/with-focusable';\nimport { IWithFormAssociation, WithFormAssociation } from '../core/mixins/form/with-form-associated';\nimport { IWithDefaultAria, WithDefaultAria } from '../core/mixins/internals/with-default-aria';\nimport { IWithElementInternals, WithElementInternals } from '../core/mixins/internals/with-element-internals';\nimport { IWithLabelAwareness, WithLabelAwareness } from '../core/mixins/label/with-label-aware';\nimport { FocusIndicatorComponent } from '../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../state-layer/state-layer';\nimport { CheckboxAdapter } from './checkbox-adapter';\nimport { CheckboxLabelPosition, CheckboxState, CHECKBOX_CONSTANTS } from './checkbox-constants';\nimport { CheckboxFoundation } from './checkbox-foundation';\n\nconst template = '<template><div class=\\\"forge-checkbox\\\" part=\\\"root\\\"><div id=\\\"container\\\" class=\\\"container\\\"><div class=\\\"background\\\" part=\\\"background\\\"><svg class=\\\"icon icon--checked\\\" aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"checkmark\\\"><path d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"></path></svg> <svg class=\\\"icon icon--indeterminate\\\" aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"mixedmark\\\"><line x1=\\\"2\\\" y1=\\\"12\\\" x2=\\\"22\\\" y2=\\\"12\\\"></line></svg><forge-focus-indicator target=\\\":host\\\" part=\\\"focus-indicator\\\"></forge-focus-indicator></div><forge-state-layer target=\\\":host\\\" exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div><div id=\\\"label\\\" class=\\\"label\\\" part=\\\"label\\\"><slot></slot></div></div></template>';\nconst styles = ':host{display:inline-block;outline:0;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-checkbox{--_checkbox-primary-color:var(--forge-checkbox-primary-color, var(--forge-theme-tertiary, #3d5afe));--_checkbox-size:var(--forge-checkbox-size, 16px);--_checkbox-border-width:var(--forge-checkbox-border-width, var(--forge-border-medium, 2px));--_checkbox-icon-color:var(--forge-checkbox-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_checkbox-state-layer-size:var(--forge-checkbox-state-layer-size, 40px);--_checkbox-state-layer-dense-size:var(--forge-checkbox-state-layer-dense-size, 24px);--_checkbox-background:var(--forge-checkbox-background, var(--forge-theme-surface, #ffffff));--_checkbox-width:var(--forge-checkbox-width, var(--_checkbox-size));--_checkbox-height:var(--forge-checkbox-height, var(--_checkbox-size));--_checkbox-unchecked-border-width:var(--forge-checkbox-unchecked-border-width, var(--_checkbox-border-width));--_checkbox-unchecked-border-color:var(--forge-checkbox-unchecked-border-color, var(--forge-theme-surface-container-high, #9e9e9e));--_checkbox-shape:var(--forge-checkbox-shape, var(--forge-shape-small, 2px));--_checkbox-elevation:var(--forge-checkbox-elevation, 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12));--_checkbox-checked-background:var(--forge-checkbox-checked-background, var(--_checkbox-primary-color));--_checkbox-checked-border-width:var(--forge-checkbox-checked-border-width, var(--_checkbox-border-width));--_checkbox-checked-border-color:var(--forge-checkbox-checked-border-color, var(--_checkbox-checked-background));--_checkbox-icon-checked-color:var(--forge-checkbox-icon-checked-color, var(--_checkbox-icon-color));--_checkbox-icon-indeterminate-color:var(--forge-checkbox-icon-indeterminate-color, var(--_checkbox-icon-color));--_checkbox-icon-stroke-width:var(--forge-checkbox-icon-stroke-width, 4px);--_checkbox-gap:var(--forge-checkbox-gap, 0);--_checkbox-justify:var(--forge-checkbox-justify, space-between);--_checkbox-direction:var(--forge-checkbox-direction, initial);--_checkbox-state-layer-width:var(--forge-checkbox-state-layer-width, var(--_checkbox-state-layer-size));--_checkbox-state-layer-height:var(--forge-checkbox-state-layer-height, var(--_checkbox-state-layer-size));--_checkbox-state-layer-checked-color:var(--forge-checkbox-state-layer-checked-color, var(--_checkbox-primary-color));--_checkbox-state-layer-unchecked-color:var(--forge-checkbox-state-layer-unchecked-color, var(--_checkbox-color));--_checkbox-state-layer-shape:var(--forge-checkbox-state-layer-shape, var(--forge-shape-full, 9999px));--_checkbox-dense-gap:var(--forge-checkbox-dense-gap, 8px);--_checkbox-state-layer-dense-width:var(--forge-checkbox-state-layer-dense-width, var(--_checkbox-state-layer-dense-size));--_checkbox-state-layer-dense-height:var(--forge-checkbox-state-layer-dense-height, var(--_checkbox-state-layer-dense-size));--_checkbox-disabled-opacity:var(--forge-checkbox-disabled-opacity, 0.38);--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, var(--forge-animation-duration-short2, 100ms));--_checkbox-background-animation-timing:var(--forge-checkbox-background-animation-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_checkbox-icon-animation-timing:var(--forge-checkbox-icon-animation-timing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)))}.forge-checkbox{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_checkbox-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_checkbox-justify);justify-content:var(--_checkbox-justify);gap:var(--_checkbox-gap);display:-webkit-box;display:flex}.forge-checkbox .container{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;border-radius:var(--_checkbox-state-layer-shape);inline-size:var(--_checkbox-state-layer-width);block-size:var(--_checkbox-state-layer-height);cursor:pointer}.forge-checkbox .background{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;-webkit-transition-property:background,border-width,border-color;transition-property:background,border-width,border-color;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-background-animation-timing);transition-timing-function:var(--_checkbox-background-animation-timing);-webkit-box-shadow:var(--_checkbox-elevation);box-shadow:var(--_checkbox-elevation);border-style:solid;border-width:var(--_checkbox-unchecked-border-width);border-color:var(--_checkbox-unchecked-border-color);border-radius:var(--_checkbox-shape);-webkit-box-sizing:border-box;box-sizing:border-box;block-size:var(--_checkbox-height);inline-size:var(--_checkbox-width);background:var(--_checkbox-background)}.forge-checkbox .icon{position:absolute;-webkit-transition-property:stroke-dashoffset;transition-property:stroke-dashoffset;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-icon-animation-timing);transition-timing-function:var(--_checkbox-icon-animation-timing);fill:none;stroke-width:var(--_checkbox-icon-stroke-width)}.forge-checkbox .icon--checked{stroke:var(--_checkbox-icon-checked-color);stroke-dasharray:30;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}.forge-checkbox .icon--indeterminate{stroke:var(--_checkbox-icon-indeterminate-color);stroke-dasharray:20;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}.forge-checkbox .label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit);cursor:default}:host([checked]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background:var(--_checkbox-checked-background)}:host([checked]) .icon--checked{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([checked]) .icon--checked:dir(rtl){stroke-dashoffset:60}:host([checked]) .icon--indeterminate{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}:host([checked]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([indeterminate]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background:var(--_checkbox-checked-background)}:host([indeterminate]) .icon--checked{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}:host([indeterminate]) .icon--indeterminate{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([indeterminate]) .icon--indeterminate:dir(rtl){stroke-dashoffset:40}:host([indeterminate]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([dense]) .forge-checkbox{--_checkbox-gap:var(--_checkbox-dense-gap)}:host([dense]) .forge-checkbox .container{inline-size:var(--_checkbox-state-layer-dense-width);block-size:var(--_checkbox-state-layer-dense-height)}:host([disabled]) .forge-checkbox{opacity:var(--_checkbox-disabled-opacity)}:host([disabled]) .forge-checkbox .container{cursor:not-allowed}:host([readonly]) .forge-checkbox .container{cursor:not-allowed}@media (prefers-reduced-motion){.forge-checkbox{--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, 0s)}}forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-unchecked-color)}forge-focus-indicator{--forge-focus-indicator-shape:0px;--forge-focus-indicator-outward-offset:8px}';\n\nexport interface ICheckboxComponent extends IWithFormAssociation, IWithFocusable, IWithLabelAwareness, IWithElementInternals, IWithDefaultAria {\n value: string;\n checked: boolean;\n defaultChecked: boolean;\n indeterminate: boolean;\n required: boolean;\n dense: boolean;\n labelPosition: CheckboxLabelPosition;\n toggle(force?: boolean): void;\n setFormValue(value: FormValue | null, state?: FormValue | null | undefined): void;\n [setValidity](): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-checkbox': ICheckboxComponent;\n }\n}\n\nconst BaseCheckboxClass = WithFormAssociation(WithLabelAwareness(WithFocusable(WithDefaultAria(WithElementInternals(BaseComponent)))));\n\n/**\n * @tag forge-checkbox\n * \n * @summary Checkboxes select single values for submission in a form.\n * \n * @description\n * Use checkboxes to:\n * - Select one or multiple items from a list.\n * - Present a list containing sub-selections.\n * - Turn an option on or off in desktop environment.\n * \n * @property {boolean} checked - Whether the checkbox is checked.\n * @property {boolean} defaultChecked - Whether the checkbox is checked by default.\n * @property {boolean} indeterminate - Toggles the indeterminate state. This does not affect whether the checkbox is checked or its form submission.\n * @property {string} value - The value of the checkbox when checked.\n * @property {boolean} disabled - Controls if the checkbix is disabled.\n * @property {boolean} required = Controls if the checkbox is required.\n * @property {boolean} readonly = Controls if the checkbox is readonly.\n * @property {boolean} dense - The density state.\n * @property {SwitchLabelPosition} labelPosition - Whether the label appears before or after the checkbox.\n * \n * @attribute {string} checked - Controls whether the checkbox is checked.\n * @attribute {string} defaultChecked - Controls whether the checkbox is checked by default.\n * @attribute {string} indeterminate - Controls the indeterminate state.\n * @attribute {string} value - The value of the checkbox when checked.\n * @attribute {string} disabled - Controls if the switch is disabled.\n * @attribute {string} required - Controls if the switch is required.\n * @attribute {string} readonly - Controls if the switch is readonly.\n * @attribute {string} dense - Sets the density state.\n * @attribute {string} label-position - Sets whether the label appears before or after the switch.\n * \n * @method {(force?: boolean) => void} toggle - Toggles whether the checkbox is is checked or forces a checked state.\n * \n * @event {Event} change - Dispatches when the checkbox is checked or unchecked.\n * \n * @cssproperty --forge-theme-tertiary - The primary color of the checkbox.\n * @cssproperty --forge-theme-on-tertiary - The color of the checkmark and indeterminate mark.\n * @cssproperty --forge-checkbox-primary-color - The primary color of the checkbox.\n * @cssproperty --forge-checkbox-size - The inline and block size of the checkbox.\n * @cssproperty --forge-checkbox-border-width - The width of the checkbox border.\n * @cssproperty --forge-checkbox-state-layer-size - The inline and block size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-dense-size - The inline and block size of the state layer when dense.\n * @cssproperty --forge-checkbox-background - The color of the checkbox background when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-width - The inline size of the checkbox.\n * @cssproperty --forge-checkbox-height - The block size of the checkbox.\n * @cssproperty --forge-checkbox-unchecked-border-width - The width of the checkbox border when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-unchecked-border-color - The color of the checkbox border when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-shape - The shape of the checkbox.\n * @cssproperty --forge-checkbox-elevation - The shadow of the checkbox.\n * @cssproperty --forge-checkbox-gap - The space between the checkbox and label.\n * @cssproperty --forge-checkbox-justify - How the checkbox and label are distributed along their main axis.\n * @cssproperty --forge-checkbox-direction - Whether the checkbox and label are arranged along the inline or block axis.\n * @cssproperty --forge-checkbox-checked-background - The color of the checkbox background when checked or indeterminate.\n * @cssproperty --forge-checkbox-checked-border-width - The width of the checkbox border when checked or indeterminate.\n * @cssproperty --forge-checkbox-checked-border-color - The color of the checkbox border when checked or indeterminate.\n * @cssproperty --forge-checkbox-icon-color - The color of the checkmark and indeterminate mark.\n * @cssproperty --forge-checkbox-icon-checked-color - The color of the checkmark mark.\n * @cssproperty --forge-checkbox-icon-indeterminate-color - The color of the indeterminate mark.\n * @cssproperty --forge-checkbox-icon-stroke-width - The stroke width of the checkmark and indeterminate marks.\n * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-height - The block size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-checked-color - The color of the state layer when checked.\n * @cssproperty --forge-checkbox-state-layer-unchecked-color - The color of the state layer when unchecked.\n * @cssproperty --forge-checkbox-state-layer-shape - The shape of the state layer.\n * @cssproperty --forge-checkbox-state-layer-dense-width - The inline size of the state layer when dense.\n * @cssproperty --forge-checkbox-state-layer-dense-height - The block size of the state layer when dense.\n * @cssproperty --forge-checkbox-disabled-opacity - The opacity when disabled.\n * @cssproperty --forge-checkbox-animation-duration - The duration of animations.\n * @cssproperty --forge-checkbox-background-animation-timing - The timing function of the background animations.\n * @cssproperty --forge-checkbox-icon-animation-timing - The timing function of the checked and indeterminate icons animations.\n * \n * @csspart root - Styles the root element.\n * @csspart background - Styles the checkbox background element.\n * @csspart checkmark - Styles the checkmark element.\n * @csspart mixedmark - Styles the indeterminate mark element.\n * @csspart label - Styles the label element.\n * @csspart state-layer - Styles the state layer element.\n * @csspart focus-indicator - Styles the focus indicator element.\n */\n@CustomElement({\n name: CHECKBOX_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class CheckboxComponent extends BaseCheckboxClass implements ICheckboxComponent {\n public static get observedAttributes(): string[] {\n return Object.values(CHECKBOX_CONSTANTS.observedAttributes);\n }\n\n private readonly _foundation: CheckboxFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this[inputType] = 'checkbox';\n this._foundation = new CheckboxFoundation(new CheckboxAdapter(this));\n }\n\n public connectedCallback(): void {\n super.connectedCallback();\n this[setDefaultAria]({\n role: 'checkbox',\n ariaChecked: this.checked ? 'true' : 'false',\n ariaDisabled: this.disabled ? 'true' : 'false',\n ariaRequired: this.required ? 'true' : 'false'\n });\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CHECKBOX_CONSTANTS.observedAttributes.CHECKED:\n this.checked = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DEFAULT_CHECKED:\n this.defaultChecked = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.INDETERMINATE:\n this.indeterminate = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.VALUE:\n this.value = newValue;\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.REQUIRED:\n this.required = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.LABEL_POSITION:\n this.labelPosition = newValue as CheckboxLabelPosition;\n break;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n public override [getFormValue](): FormValue | null {\n return this.checked ? this.value : null;\n }\n\n public override [getFormState](): CheckboxState {\n if (this.checked) {\n return this.indeterminate ? 'checked-indeterminate' : 'checked';\n }\n return this.indeterminate ? 'unchecked-indeterminate' : 'unchecked';\n }\n\n public [setValidity](): void {\n this[internals].setValidity({ valueMissing: this.required && !this.checked }, this[getValidationMessage]({\n checked: this.checked,\n required: this.required\n }));\n }\n\n public formResetCallback(): void {\n this.checked = this.defaultChecked;\n }\n\n public formStateRestoreCallback(state: CheckboxState): void {\n this.checked = state === 'checked' || state === 'checked-indeterminate';\n this.indeterminate = state === 'unchecked-indeterminate' || state === 'checked-indeterminate';\n }\n\n public labelClickedCallback(): void {\n this.click();\n // TODO: use `{ focusVisble: false }` when supported.\n this.focus();\n }\n\n public labelChangedCallback(value: string | null): void {\n this[setDefaultAria]({ ariaLabel: value });\n }\n\n public setFormValue(value: FormValue | null, state?: FormValue | null | undefined): void {\n this[internals].setFormValue(value, state);\n\n if (state) {\n const stateValue = isString(state) ? state : state[this.name];\n this.checked = stateValue === 'checked' || stateValue === 'checked-indeterminate';\n this.indeterminate = stateValue === 'unchecked-indeterminate' || stateValue === 'checked-indeterminate';\n return;\n }\n \n if (isString(value)) {\n this.checked = !!value;\n } else if (value?.[this.name]) {\n this.checked = !!value[this.name];\n } else {\n this.checked = false;\n }\n }\n\n @FoundationProperty()\n public declare checked: boolean;\n\n @FoundationProperty()\n public declare defaultChecked: boolean;\n\n @FoundationProperty()\n public declare indeterminate: boolean;\n\n @FoundationProperty()\n public declare value: string;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare required: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n\n @FoundationProperty()\n public declare labelPosition: CheckboxLabelPosition;\n \n /**\n * Toggles the checkbox checked or unchecked.\n * @param force Whether to set the checkbox checked or unchecked.\n */\n public toggle(force?: boolean): void {\n if (isDefined(force)) {\n this._foundation.checked = force as boolean;\n } else {\n this._foundation.checked = !this._foundation.checked;\n }\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS, CheckboxLabelPosition } from './checkbox-constants';\n\nexport type CheckboxComponentDelegateProps = Partial<ICheckboxComponent>;\nexport interface ICheckboxComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n id?: string;\n label?: string;\n}\nexport interface ICheckboxComponentDelegateConfig extends IBaseComponentDelegateConfig<ICheckboxComponent, ICheckboxComponentDelegateOptions> {}\n\nexport class CheckboxComponentDelegate extends FormFieldComponentDelegate<ICheckboxComponent, ICheckboxComponentDelegateOptions> {\n constructor(config?: ICheckboxComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): string {\n return this._element.value;\n }\n public set value(value: string) {\n this._element.value = value;\n }\n\n public get checked(): boolean {\n return this._element.checked;\n }\n public set checked(value: boolean) {\n this._element.checked = value;\n }\n\n public get defaultChecked(): boolean {\n return this._element.defaultChecked;\n }\n public set defaultChecked(value: boolean) {\n this._element.defaultChecked = value;\n }\n\n public get disabled(): boolean {\n return this._element.disabled;\n }\n public set disabled(value: boolean) {\n this._element.disabled = value;\n }\n\n public get indeterminate(): boolean {\n return this._element.indeterminate;\n }\n public set indeterminate(value: boolean) {\n this._element.indeterminate = value;\n }\n\n public get dense(): boolean {\n return this._element.dense;\n }\n public set dense(value: boolean) {\n this._element.dense = value;\n }\n\n public get required(): boolean {\n return this._element.required;\n }\n public set required(value: boolean) {\n this._element.required = value;\n }\n\n public get readonly(): boolean {\n return this._element.readonly;\n }\n public set readonly(value: boolean) {\n this._element.readonly = value;\n }\n\n public get name(): string {\n return this._element.name;\n }\n public set name(value: string) {\n this._element.name = value;\n }\n\n public get labelPosition(): CheckboxLabelPosition {\n return this._element.labelPosition;\n }\n public set labelPosition(value: CheckboxLabelPosition) {\n this._element.labelPosition = value;\n }\n\n public onChange(listener: (value: boolean) => void): void {\n this._element.addEventListener('change', evt => listener((evt.target as ICheckboxComponent).checked));\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._element.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._element.addEventListener('blur', evt => listener(evt));\n }\n\n public setLabel(text: string | null): void {\n this._element.innerText = text ?? '';\n }\n\n public toggle(force?: boolean): void {\n this._element.toggle(force);\n }\n\n protected _build(): ICheckboxComponent {\n return document.createElement(CHECKBOX_CONSTANTS.elementName);\n }\n\n protected override _configure(): void {\n if (this._config.options?.id) {\n this._element.id = this._config.options.id;\n }\n if (this._config.options?.label) {\n this._element.innerText = this._config.options.label;\n }\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CheckboxComponent } from './checkbox';\n\nexport * from './checkbox-adapter';\nexport * from './checkbox-constants';\nexport * from './checkbox-foundation';\nexport * from './checkbox';\nexport * from './checkbox-component-delegate';\n\nexport function defineCheckboxComponent(): void {\n defineCustomElement(CheckboxComponent);\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}checkbox`;\n\nconst observedAttributes = {\n CHECKED: 'checked',\n DEFAULT_CHECKED: 'default-checked',\n INDETERMINATE: 'indeterminate',\n VALUE: 'value',\n DENSE: 'dense',\n DISABLED: 'disabled',\n REQUIRED: 'required',\n READONLY: 'readonly',\n LABEL_POSITION: 'label-position',\n TABINDEX: 'tabindex'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst selectors = {\n ROOT: '.forge-checkbox',\n LABEL: '#label',\n STATE_LAYER: 'forge-state-layer'\n};\n\nexport const CHECKBOX_CONSTANTS = {\n elementName,\n selectors,\n observedAttributes,\n attributes\n};\n\nexport type CheckboxState = 'checked' | 'unchecked' | 'checked-indeterminate' | 'unchecked-indeterminate';\nexport type CheckboxLabelPosition = 'start' | 'end';\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { isFocusable, setDefaultAria, setValidity } from '../constants';\nimport { BaseAdapter, IBaseAdapter } from '../core';\nimport { StateLayerComponent } from '../state-layer';\nimport { ICheckboxComponent } from './checkbox';\nimport { CheckboxLabelPosition, CheckboxState, CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport interface ICheckboxAdapter extends IBaseAdapter {\n setChecked(value: boolean): void;\n setDisabled(value: boolean): void;\n setRequired(value: boolean): void;\n setReadonly(value: boolean): void;\n setLabelPosition(value: CheckboxLabelPosition): void;\n syncValue(value: string | null, state: CheckboxState): void;\n}\n\nexport class CheckboxAdapter extends BaseAdapter<ICheckboxComponent> implements ICheckboxAdapter {\n private readonly _rootElement: HTMLElement;\n private readonly _labelElement: HTMLElement;\n private readonly _stateLayerElement: StateLayerComponent;\n\n constructor(component: ICheckboxComponent) {\n super(component);\n \n this._rootElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.ROOT);\n this._labelElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.LABEL);\n this._stateLayerElement = getShadowElement(component, CHECKBOX_CONSTANTS.selectors.STATE_LAYER) as StateLayerComponent;\n }\n\n public setChecked(value: boolean): void {\n this._component[setValidity]();\n this._component[setDefaultAria]({ ariaChecked: value ? 'true' : 'false'});\n }\n\n public setDisabled(value: boolean): void {\n this._component[isFocusable] = !value;\n this._component[setDefaultAria]({ ariaDisabled: value ? 'true' : 'false'});\n this._stateLayerElement.disabled = value;\n }\n\n public setRequired(value: boolean): void {\n this._component[setValidity]();\n this._component[setDefaultAria]({ ariaRequired: value ? 'true' : 'false' });\n }\n\n public setReadonly(value: boolean): void {\n this._component[setDefaultAria]({ ariaReadOnly: value ? 'true' : 'false'});\n this._stateLayerElement.disabled = value;\n }\n\n public setLabelPosition(value: CheckboxLabelPosition): void {\n this._labelElement.remove();\n\n if (value === 'start') {\n this._rootElement.prepend(this._labelElement);\n } else {\n this._rootElement.append(this._labelElement);\n }\n }\n\n public syncValue(value: string | null, state: CheckboxState): void {\n const data = value ? new FormData() : null;\n if (data && value) {\n data.append(this._component.name, value);\n }\n this._component.setFormValue(data, state);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICheckboxAdapter } from './checkbox-adapter';\nimport { CHECKBOX_CONSTANTS, CheckboxLabelPosition, CheckboxState } from './checkbox-constants';\n\nexport interface ICheckboxFoundation extends ICustomElementFoundation {\n checked: boolean;\n defaultChecked: boolean;\n indeterminate: boolean;\n value: string;\n dense: boolean;\n disabled: boolean;\n required: boolean;\n readonly: boolean;\n labelPosition: CheckboxLabelPosition;\n}\n\nexport class CheckboxFoundation implements ICheckboxFoundation {\n // State\n private _checked = false;\n private _defaultChecked = false;\n private _indeterminate = false;\n private _value = 'on';\n private _dense = false;\n private _disabled = false;\n private _required = false;\n private _readonly = false;\n private _labelPosition: CheckboxLabelPosition = 'end';\n\n private get _submittedValue(): string | null {\n return this._checked ? this._value : null;\n }\n private get _formState(): CheckboxState {\n return this._checked\n ? this._indeterminate\n ? 'checked-indeterminate'\n : 'checked'\n : this._indeterminate\n ? 'unchecked-indeterminate'\n : 'unchecked';\n }\n\n // Listeners\n private readonly _clickListener: EventListener = (evt: Event) => this._handleChange();\n private readonly _keydownListener: EventListener = (evt: KeyboardEvent) => this._handleKeydown(evt);\n private readonly _keyupListener: EventListener = (evt: KeyboardEvent) => this._handleKeyup(evt);\n\n constructor(private _adapter: ICheckboxAdapter) {}\n\n public initialize(): void {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n this._adapter.addHostListener('keyup', this._keyupListener);\n this._adapter.syncValue(this._submittedValue, this._formState);\n };\n\n private _handleKeydown(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n evt.preventDefault();\n }\n }\n\n private _handleKeyup(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n this._handleChange();\n }\n }\n\n private _handleChange(): void {\n if (this._readonly) {\n return;\n }\n \n const oldValue = this._checked;\n const newValue = !this._checked;\n // Call the public setter to ensure all the update logic is run\n this.checked = newValue;\n\n const event = new Event('change', { cancelable: true });\n this._adapter.redispatchEvent(event);\n if (event.defaultPrevented) {\n this.checked = oldValue;\n return;\n }\n\n // Toggle inderminate off after a user action\n this._indeterminate = false;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.INDETERMINATE, this._indeterminate);\n }\n\n public get checked(): boolean {\n return this._checked;\n }\n public set checked(value: boolean) {\n if (this._checked !== value) {\n this._checked = value;\n this._adapter.setChecked(this._checked);\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.CHECKED, this._checked);\n }\n }\n\n public get defaultChecked(): boolean {\n return this._defaultChecked;\n }\n public set defaultChecked(value: boolean) {\n if (this._defaultChecked !== value) {\n this._defaultChecked = value;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DEFAULT_CHECKED, this._defaultChecked);\n }\n }\n\n public get indeterminate(): boolean {\n return this._indeterminate;\n }\n public set indeterminate(value: boolean) {\n if (this._indeterminate !== value) {\n this._indeterminate = value;\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.INDETERMINATE, this._indeterminate);\n }\n }\n\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n this._adapter.syncValue(this._submittedValue, this._formState);\n this._adapter.setHostAttribute(CHECKBOX_CONSTANTS.attributes.VALUE, this._value);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this.disabled);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get required(): boolean {\n return this._required;\n }\n public set required(value: boolean) {\n if (this._required !== value) {\n this._required = value;\n this._adapter.setRequired(this._required);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.REQUIRED, this._required);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n if (this._readonly !== value) {\n this._readonly = value;\n this._adapter.setReadonly(this._readonly);\n this._adapter.toggleHostAttribute(CHECKBOX_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n\n public get labelPosition(): CheckboxLabelPosition {\n return this._labelPosition;\n }\n public set labelPosition(value: CheckboxLabelPosition) {\n if (this.labelPosition !== value) {\n this._labelPosition = value;\n this._adapter.setLabelPosition(this._labelPosition);\n this._adapter.setHostAttribute(CHECKBOX_CONSTANTS.attributes.LABEL_POSITION, this._labelPosition);\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty, isDefined, isString } from '@tylertech/forge-core';\nimport { getFormState, getFormValue, getValidationMessage, inputType, internals, setDefaultAria, setValidity } from '../constants';\nimport { BaseComponent, FormValue } from '../core';\nimport { IWithFocusable, WithFocusable } from '../core/mixins/focus/with-focusable';\nimport { IWithFormAssociation, WithFormAssociation } from '../core/mixins/form/with-form-associated';\nimport { IWithDefaultAria, WithDefaultAria } from '../core/mixins/internals/with-default-aria';\nimport { IWithElementInternals, WithElementInternals } from '../core/mixins/internals/with-element-internals';\nimport { IWithLabelAwareness, WithLabelAwareness } from '../core/mixins/label/with-label-aware';\nimport { FocusIndicatorComponent } from '../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../state-layer/state-layer';\nimport { CheckboxAdapter } from './checkbox-adapter';\nimport { CheckboxLabelPosition, CheckboxState, CHECKBOX_CONSTANTS } from './checkbox-constants';\nimport { CheckboxFoundation } from './checkbox-foundation';\n\nconst template = '<template><div class=\\\"forge-checkbox\\\" part=\\\"root\\\"><div id=\\\"container\\\" class=\\\"container\\\"><div class=\\\"background\\\" part=\\\"background\\\"><svg class=\\\"icon icon--checked\\\" aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"checkmark\\\"><path d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"></path></svg> <svg class=\\\"icon icon--indeterminate\\\" aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"mixedmark\\\"><line x1=\\\"2\\\" y1=\\\"12\\\" x2=\\\"22\\\" y2=\\\"12\\\"></line></svg><forge-focus-indicator target=\\\":host\\\" part=\\\"focus-indicator\\\"></forge-focus-indicator></div><forge-state-layer target=\\\":host\\\" exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div><div id=\\\"label\\\" class=\\\"label\\\" part=\\\"label\\\"><slot></slot></div></div></template>';\nconst styles = ':host{display:inline-block;outline:0;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-checkbox{--_checkbox-primary-color:var(--forge-checkbox-primary-color, var(--forge-theme-tertiary, #3d5afe));--_checkbox-size:var(--forge-checkbox-size, 16px);--_checkbox-border-width:var(--forge-checkbox-border-width, var(--forge-border-medium, 2px));--_checkbox-icon-color:var(--forge-checkbox-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_checkbox-state-layer-size:var(--forge-checkbox-state-layer-size, 40px);--_checkbox-state-layer-dense-size:var(--forge-checkbox-state-layer-dense-size, 24px);--_checkbox-background:var(--forge-checkbox-background, var(--forge-theme-surface, #ffffff));--_checkbox-width:var(--forge-checkbox-width, var(--_checkbox-size));--_checkbox-height:var(--forge-checkbox-height, var(--_checkbox-size));--_checkbox-unchecked-border-width:var(--forge-checkbox-unchecked-border-width, var(--_checkbox-border-width));--_checkbox-unchecked-border-color:var(--forge-checkbox-unchecked-border-color, var(--forge-theme-surface-container-high, #9e9e9e));--_checkbox-shape:var(--forge-checkbox-shape, var(--forge-shape-small, 2px));--_checkbox-elevation:var(--forge-checkbox-elevation, 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12));--_checkbox-checked-background:var(--forge-checkbox-checked-background, var(--_checkbox-primary-color));--_checkbox-checked-border-width:var(--forge-checkbox-checked-border-width, var(--_checkbox-border-width));--_checkbox-checked-border-color:var(--forge-checkbox-checked-border-color, var(--_checkbox-checked-background));--_checkbox-icon-checked-color:var(--forge-checkbox-icon-checked-color, var(--_checkbox-icon-color));--_checkbox-icon-indeterminate-color:var(--forge-checkbox-icon-indeterminate-color, var(--_checkbox-icon-color));--_checkbox-icon-stroke-width:var(--forge-checkbox-icon-stroke-width, 4px);--_checkbox-gap:var(--forge-checkbox-gap, 0);--_checkbox-justify:var(--forge-checkbox-justify, start);--_checkbox-direction:var(--forge-checkbox-direction, initial);--_checkbox-state-layer-width:var(--forge-checkbox-state-layer-width, var(--_checkbox-state-layer-size));--_checkbox-state-layer-height:var(--forge-checkbox-state-layer-height, var(--_checkbox-state-layer-size));--_checkbox-state-layer-checked-color:var(--forge-checkbox-state-layer-checked-color, var(--_checkbox-primary-color));--_checkbox-state-layer-unchecked-color:var(--forge-checkbox-state-layer-unchecked-color, var(--_checkbox-color));--_checkbox-state-layer-shape:var(--forge-checkbox-state-layer-shape, var(--forge-shape-full, 9999px));--_checkbox-dense-gap:var(--forge-checkbox-dense-gap, 8px);--_checkbox-state-layer-dense-width:var(--forge-checkbox-state-layer-dense-width, var(--_checkbox-state-layer-dense-size));--_checkbox-state-layer-dense-height:var(--forge-checkbox-state-layer-dense-height, var(--_checkbox-state-layer-dense-size));--_checkbox-disabled-opacity:var(--forge-checkbox-disabled-opacity, 0.38);--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, var(--forge-animation-duration-short2, 100ms));--_checkbox-background-animation-timing:var(--forge-checkbox-background-animation-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_checkbox-icon-animation-timing:var(--forge-checkbox-icon-animation-timing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)))}.forge-checkbox{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_checkbox-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_checkbox-justify);justify-content:var(--_checkbox-justify);gap:var(--_checkbox-gap);display:-webkit-box;display:flex}.forge-checkbox .container{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;border-radius:var(--_checkbox-state-layer-shape);inline-size:var(--_checkbox-state-layer-width);block-size:var(--_checkbox-state-layer-height);cursor:pointer}.forge-checkbox .background{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;-webkit-transition-property:background,border-width,border-color;transition-property:background,border-width,border-color;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-background-animation-timing);transition-timing-function:var(--_checkbox-background-animation-timing);-webkit-box-shadow:var(--_checkbox-elevation);box-shadow:var(--_checkbox-elevation);border-style:solid;border-width:var(--_checkbox-unchecked-border-width);border-color:var(--_checkbox-unchecked-border-color);border-radius:var(--_checkbox-shape);-webkit-box-sizing:border-box;box-sizing:border-box;block-size:var(--_checkbox-height);inline-size:var(--_checkbox-width);background:var(--_checkbox-background)}.forge-checkbox .icon{position:absolute;-webkit-transition-property:stroke-dashoffset;transition-property:stroke-dashoffset;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-icon-animation-timing);transition-timing-function:var(--_checkbox-icon-animation-timing);fill:none;stroke-width:var(--_checkbox-icon-stroke-width)}.forge-checkbox .icon--checked{stroke:var(--_checkbox-icon-checked-color);stroke-dasharray:30;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}.forge-checkbox .icon--indeterminate{stroke:var(--_checkbox-icon-indeterminate-color);stroke-dasharray:20;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}.forge-checkbox .label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit);cursor:default}:host([checked]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background:var(--_checkbox-checked-background)}:host([checked]) .icon--checked{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([checked]) .icon--checked:dir(rtl){stroke-dashoffset:60}:host([checked]) .icon--indeterminate{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}:host([checked]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([indeterminate]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background:var(--_checkbox-checked-background)}:host([indeterminate]) .icon--checked{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}:host([indeterminate]) .icon--indeterminate{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([indeterminate]) .icon--indeterminate:dir(rtl){stroke-dashoffset:40}:host([indeterminate]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([dense]) .forge-checkbox{--_checkbox-gap:var(--_checkbox-dense-gap)}:host([dense]) .forge-checkbox .container{inline-size:var(--_checkbox-state-layer-dense-width);block-size:var(--_checkbox-state-layer-dense-height)}:host([disabled]) .forge-checkbox{opacity:var(--_checkbox-disabled-opacity)}:host([disabled]) .forge-checkbox .container{cursor:not-allowed}:host([readonly]) .forge-checkbox .container{cursor:not-allowed}@media (prefers-reduced-motion){.forge-checkbox{--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, 0s)}}forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-unchecked-color)}forge-focus-indicator{--forge-focus-indicator-shape:0px;--forge-focus-indicator-outward-offset:8px}';\n\nexport interface ICheckboxComponent extends IWithFormAssociation, IWithFocusable, IWithLabelAwareness, IWithElementInternals, IWithDefaultAria {\n value: string;\n checked: boolean;\n defaultChecked: boolean;\n indeterminate: boolean;\n required: boolean;\n dense: boolean;\n labelPosition: CheckboxLabelPosition;\n toggle(force?: boolean): void;\n setFormValue(value: FormValue | null, state?: FormValue | null | undefined): void;\n [setValidity](): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-checkbox': ICheckboxComponent;\n }\n}\n\nconst BaseCheckboxClass = WithFormAssociation(WithLabelAwareness(WithFocusable(WithDefaultAria(WithElementInternals(BaseComponent)))));\n\n/**\n * @tag forge-checkbox\n * \n * @summary Checkboxes select single values for submission in a form.\n * \n * @description\n * Use checkboxes to:\n * - Select one or multiple items from a list.\n * - Present a list containing sub-selections.\n * - Turn an option on or off in desktop environment.\n * \n * @property {boolean} checked - Whether the checkbox is checked.\n * @property {boolean} defaultChecked - Whether the checkbox is checked by default.\n * @property {boolean} indeterminate - Toggles the indeterminate state. This does not affect whether the checkbox is checked or its form submission.\n * @property {string} value - The value of the checkbox when checked.\n * @property {boolean} disabled - Controls if the checkbix is disabled.\n * @property {boolean} required = Controls if the checkbox is required.\n * @property {boolean} readonly = Controls if the checkbox is readonly.\n * @property {boolean} dense - The density state.\n * @property {SwitchLabelPosition} labelPosition - Whether the label appears before or after the checkbox.\n * \n * @attribute {string} checked - Controls whether the checkbox is checked.\n * @attribute {string} defaultChecked - Controls whether the checkbox is checked by default.\n * @attribute {string} indeterminate - Controls the indeterminate state.\n * @attribute {string} value - The value of the checkbox when checked.\n * @attribute {string} disabled - Controls if the switch is disabled.\n * @attribute {string} required - Controls if the switch is required.\n * @attribute {string} readonly - Controls if the switch is readonly.\n * @attribute {string} dense - Sets the density state.\n * @attribute {string} label-position - Sets whether the label appears before or after the switch.\n * \n * @method {(force?: boolean) => void} toggle - Toggles whether the checkbox is is checked or forces a checked state.\n * \n * @event {Event} change - Dispatches when the checkbox is checked or unchecked.\n * \n * @cssproperty --forge-theme-tertiary - The primary color of the checkbox.\n * @cssproperty --forge-theme-on-tertiary - The color of the checkmark and indeterminate mark.\n * @cssproperty --forge-checkbox-primary-color - The primary color of the checkbox.\n * @cssproperty --forge-checkbox-size - The inline and block size of the checkbox.\n * @cssproperty --forge-checkbox-border-width - The width of the checkbox border.\n * @cssproperty --forge-checkbox-state-layer-size - The inline and block size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-dense-size - The inline and block size of the state layer when dense.\n * @cssproperty --forge-checkbox-background - The color of the checkbox background when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-width - The inline size of the checkbox.\n * @cssproperty --forge-checkbox-height - The block size of the checkbox.\n * @cssproperty --forge-checkbox-unchecked-border-width - The width of the checkbox border when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-unchecked-border-color - The color of the checkbox border when unchecked and not indeterminate.\n * @cssproperty --forge-checkbox-shape - The shape of the checkbox.\n * @cssproperty --forge-checkbox-elevation - The shadow of the checkbox.\n * @cssproperty --forge-checkbox-gap - The space between the checkbox and label.\n * @cssproperty --forge-checkbox-justify - How the checkbox and label are distributed along their main axis.\n * @cssproperty --forge-checkbox-direction - Whether the checkbox and label are arranged along the inline or block axis.\n * @cssproperty --forge-checkbox-checked-background - The color of the checkbox background when checked or indeterminate.\n * @cssproperty --forge-checkbox-checked-border-width - The width of the checkbox border when checked or indeterminate.\n * @cssproperty --forge-checkbox-checked-border-color - The color of the checkbox border when checked or indeterminate.\n * @cssproperty --forge-checkbox-icon-color - The color of the checkmark and indeterminate mark.\n * @cssproperty --forge-checkbox-icon-checked-color - The color of the checkmark mark.\n * @cssproperty --forge-checkbox-icon-indeterminate-color - The color of the indeterminate mark.\n * @cssproperty --forge-checkbox-icon-stroke-width - The stroke width of the checkmark and indeterminate marks.\n * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-height - The block size of the state layer.\n * @cssproperty --forge-checkbox-state-layer-checked-color - The color of the state layer when checked.\n * @cssproperty --forge-checkbox-state-layer-unchecked-color - The color of the state layer when unchecked.\n * @cssproperty --forge-checkbox-state-layer-shape - The shape of the state layer.\n * @cssproperty --forge-checkbox-state-layer-dense-width - The inline size of the state layer when dense.\n * @cssproperty --forge-checkbox-state-layer-dense-height - The block size of the state layer when dense.\n * @cssproperty --forge-checkbox-disabled-opacity - The opacity when disabled.\n * @cssproperty --forge-checkbox-animation-duration - The duration of animations.\n * @cssproperty --forge-checkbox-background-animation-timing - The timing function of the background animations.\n * @cssproperty --forge-checkbox-icon-animation-timing - The timing function of the checked and indeterminate icons animations.\n * \n * @csspart root - Styles the root element.\n * @csspart background - Styles the checkbox background element.\n * @csspart checkmark - Styles the checkmark element.\n * @csspart mixedmark - Styles the indeterminate mark element.\n * @csspart label - Styles the label element.\n * @csspart state-layer - Styles the state layer element.\n * @csspart focus-indicator - Styles the focus indicator element.\n */\n@CustomElement({\n name: CHECKBOX_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class CheckboxComponent extends BaseCheckboxClass implements ICheckboxComponent {\n public static get observedAttributes(): string[] {\n return Object.values(CHECKBOX_CONSTANTS.observedAttributes);\n }\n\n private readonly _foundation: CheckboxFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this[inputType] = 'checkbox';\n this._foundation = new CheckboxFoundation(new CheckboxAdapter(this));\n }\n\n public connectedCallback(): void {\n super.connectedCallback();\n this[setDefaultAria]({\n role: 'checkbox',\n ariaChecked: this.checked ? 'true' : 'false',\n ariaDisabled: this.disabled ? 'true' : 'false',\n ariaRequired: this.required ? 'true' : 'false'\n });\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CHECKBOX_CONSTANTS.observedAttributes.CHECKED:\n this.checked = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DEFAULT_CHECKED:\n this.defaultChecked = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.INDETERMINATE:\n this.indeterminate = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.VALUE:\n this.value = newValue;\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.REQUIRED:\n this.required = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n break;\n case CHECKBOX_CONSTANTS.observedAttributes.LABEL_POSITION:\n this.labelPosition = newValue as CheckboxLabelPosition;\n break;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n public override [getFormValue](): FormValue | null {\n return this.checked ? this.value : null;\n }\n\n public override [getFormState](): CheckboxState {\n if (this.checked) {\n return this.indeterminate ? 'checked-indeterminate' : 'checked';\n }\n return this.indeterminate ? 'unchecked-indeterminate' : 'unchecked';\n }\n\n public [setValidity](): void {\n this[internals].setValidity({ valueMissing: this.required && !this.checked }, this[getValidationMessage]({\n checked: this.checked,\n required: this.required\n }));\n }\n\n public formResetCallback(): void {\n this.checked = this.defaultChecked;\n }\n\n public formStateRestoreCallback(state: CheckboxState): void {\n this.checked = state === 'checked' || state === 'checked-indeterminate';\n this.indeterminate = state === 'unchecked-indeterminate' || state === 'checked-indeterminate';\n }\n\n public labelClickedCallback(): void {\n this.click();\n // TODO: use `{ focusVisble: false }` when supported.\n this.focus();\n }\n\n public labelChangedCallback(value: string | null): void {\n this[setDefaultAria]({ ariaLabel: value });\n }\n\n public setFormValue(value: FormValue | null, state?: FormValue | null | undefined): void {\n this[internals].setFormValue(value, state);\n\n if (state) {\n const stateValue = isString(state) ? state : state[this.name];\n this.checked = stateValue === 'checked' || stateValue === 'checked-indeterminate';\n this.indeterminate = stateValue === 'unchecked-indeterminate' || stateValue === 'checked-indeterminate';\n return;\n }\n \n if (isString(value)) {\n this.checked = !!value;\n } else if (value?.[this.name]) {\n this.checked = !!value[this.name];\n } else {\n this.checked = false;\n }\n }\n\n @FoundationProperty()\n public declare checked: boolean;\n\n @FoundationProperty()\n public declare defaultChecked: boolean;\n\n @FoundationProperty()\n public declare indeterminate: boolean;\n\n @FoundationProperty()\n public declare value: string;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare required: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n\n @FoundationProperty()\n public declare labelPosition: CheckboxLabelPosition;\n \n /**\n * Toggles the checkbox checked or unchecked.\n * @param force Whether to set the checkbox checked or unchecked.\n */\n public toggle(force?: boolean): void {\n if (isDefined(force)) {\n this._foundation.checked = force as boolean;\n } else {\n this._foundation.checked = !this._foundation.checked;\n }\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS, CheckboxLabelPosition } from './checkbox-constants';\n\nexport type CheckboxComponentDelegateProps = Partial<ICheckboxComponent>;\nexport interface ICheckboxComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n id?: string;\n label?: string;\n}\nexport interface ICheckboxComponentDelegateConfig extends IBaseComponentDelegateConfig<ICheckboxComponent, ICheckboxComponentDelegateOptions> {}\n\nexport class CheckboxComponentDelegate extends FormFieldComponentDelegate<ICheckboxComponent, ICheckboxComponentDelegateOptions> {\n constructor(config?: ICheckboxComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): string {\n return this._element.value;\n }\n public set value(value: string) {\n this._element.value = value;\n }\n\n public get checked(): boolean {\n return this._element.checked;\n }\n public set checked(value: boolean) {\n this._element.checked = value;\n }\n\n public get defaultChecked(): boolean {\n return this._element.defaultChecked;\n }\n public set defaultChecked(value: boolean) {\n this._element.defaultChecked = value;\n }\n\n public get disabled(): boolean {\n return this._element.disabled;\n }\n public set disabled(value: boolean) {\n this._element.disabled = value;\n }\n\n public get indeterminate(): boolean {\n return this._element.indeterminate;\n }\n public set indeterminate(value: boolean) {\n this._element.indeterminate = value;\n }\n\n public get dense(): boolean {\n return this._element.dense;\n }\n public set dense(value: boolean) {\n this._element.dense = value;\n }\n\n public get required(): boolean {\n return this._element.required;\n }\n public set required(value: boolean) {\n this._element.required = value;\n }\n\n public get readonly(): boolean {\n return this._element.readonly;\n }\n public set readonly(value: boolean) {\n this._element.readonly = value;\n }\n\n public get name(): string {\n return this._element.name;\n }\n public set name(value: string) {\n this._element.name = value;\n }\n\n public get labelPosition(): CheckboxLabelPosition {\n return this._element.labelPosition;\n }\n public set labelPosition(value: CheckboxLabelPosition) {\n this._element.labelPosition = value;\n }\n\n public onChange(listener: (value: boolean) => void): void {\n this._element.addEventListener('change', evt => listener((evt.target as ICheckboxComponent).checked));\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._element.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._element.addEventListener('blur', evt => listener(evt));\n }\n\n public setLabel(text: string | null): void {\n this._element.innerText = text ?? '';\n }\n\n public toggle(force?: boolean): void {\n this._element.toggle(force);\n }\n\n protected _build(): ICheckboxComponent {\n return document.createElement(CHECKBOX_CONSTANTS.elementName);\n }\n\n protected override _configure(): void {\n if (this._config.options?.id) {\n this._element.id = this._config.options.id;\n }\n if (this._config.options?.label) {\n this._element.innerText = this._config.options.label;\n }\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CheckboxComponent } from './checkbox';\n\nexport * from './checkbox-adapter';\nexport * from './checkbox-constants';\nexport * from './checkbox-foundation';\nexport * from './checkbox';\nexport * from './checkbox-component-delegate';\n\nexport function defineCheckboxComponent(): void {\n defineCustomElement(CheckboxComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "selectors", "CHECKBOX_CONSTANTS", "CheckboxAdapter", "BaseAdapter", "component", "getShadowElement", "CHECKBOX_CONSTANTS", "value", "setValidity", "setDefaultAria", "isFocusable", "state", "data", "CheckboxFoundation", "_adapter", "evt", "oldValue", "newValue", "event", "CHECKBOX_CONSTANTS", "value", "template", "styles", "BaseCheckboxClass", "WithFormAssociation", "WithLabelAwareness", "WithFocusable", "WithDefaultAria", "WithElementInternals", "BaseComponent", "CheckboxComponent", "attachShadowTemplate", "inputType", "CheckboxFoundation", "CheckboxAdapter", "CHECKBOX_CONSTANTS", "setDefaultAria", "name", "oldValue", "newValue", "coerceBoolean", "getFormValue", "getFormState", "setValidity", "internals", "getValidationMessage", "state", "value", "stateValue", "isString", "force", "isDefined", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent", "CheckboxComponentDelegate", "FormFieldComponentDelegate", "config", "value", "listener", "evt", "text", "force", "CHECKBOX_CONSTANTS", "_a", "_b", "defineCheckboxComponent", "defineCustomElement", "CheckboxComponent"]
|
|
7
7
|
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as M,d as ae}from"./chunk.IQYOLMPG.js";import{a as $,b as x,c as v,d as U}from"./chunk.UV3WIHCM.js";import{a as ne,d as re}from"./chunk.PFIIBXTS.js";import{a as R}from"./chunk.LEVFMI2Q.js";import{b as te}from"./chunk.RLQB7224.js";import{a as ie,d as se,l as oe}from"./chunk.T7NWP7DB.js";import{a as X}from"./chunk.SQ3AZAHF.js";import{a as le}from"./chunk.HSADKCGS.js";import{a as T}from"./chunk.NVUMRW44.js";import{a as Q}from"./chunk.OLFOVKQG.js";import{a as j,b as ee}from"./chunk.VRSPT7WX.js";import{a as q,k as J}from"./chunk.LNTTU2GL.js";import{c as g,d as F,e as p,f as D,h as W,i as K,q as Z}from"./chunk.L4QSPQDE.js";import{b as f,c as Y,d as y,h as H,j as w,k as L,l as G,o as V}from"./chunk.J2M2MXP2.js";import{a as h,d as _}from"./chunk.M3QDAYD2.js";var I=class{constructor(e){this._key=e,this._items=[]}getItems(){return[...this._items]}count(){return this._items.length}setKey(e){this._key=e}add(e){return e instanceof Array||(e=[e]),e.forEach(t=>{this.exists(t)||this._items.push(t)}),this}remove(e){e instanceof Array||(e=[e]);for(let t=e.length-1;t>=0;t--)this.exists(e[t])&&this._items.splice(this._items.indexOf(this._getItem(e[t])),1);return this}clear(){return this._items=[],this}exists(e){return this._getItem(e)!==null}_getItem(e){return this._key?x(this._items,v(this._key,e))||null:this._items.find(t=>t===e)||null}};var S=`${ee}table`,ce={TABLE:"forge-table",TABLE_DENSE:"forge-table--dense",TABLE_ROOMY:"forge-table--roomy",TABLE_RESIZABLE:"forge-table--resizable",TABLE_RESIZING:"forge-table--resizing",TABLE_RESIZE_HANDLE:"forge-table__resize-handle",TABLE_NO_WRAP_CONTENT:"forge-table--no-wrap-content",TABLE_LAYOUT_FIXED:"forge-table--layout-fixed",TABLE_FILTER_VISIBLE:"forge-table--filter-visible",TABLE_FIXED:"forge-table--fixed",TABLE_HEAD:"forge-table-head",TABLE_HEAD_ROW:"forge-table-head__row",TABLE_HEAD_ROW_FILTER:"forge-table-head__row__filter",TABLE_HEAD_CELL:"forge-table-head__cell",TABLE_HEAD_CELL_CONTAINER:"forge-table-head__cell-container",TABLE_HEAD_CELL_SORTABLE:"forge-table-head__cell--sortable",TABLE_HEAD_CELL_SORT_ICON:"forge-table-head__cell-sort-icon",TABLE_HEAD_CELL_TEXT:"forge-table-head__cell-text",TABLE_HEAD_CELL_SORT_ICON_ACTIVE:"forge-table-head__cell-sort-icon--active",TABLE_HEAD_CELL_SORTED_ASCENDING:"forge-table-head__cell--sorted-ascending",TABLE_HEAD_CELL_SORTED_DESCENDING:"forge-table-head__cell--sorted-descending",TABLE_HEAD_CELL_SORT_ORDER:"forge-table-head__cell__sort-order",TABLE_HEAD_CELL_SORT_ORDER_HIDDEN:"forge-table-head__cell__sort-order--hidden",TABLE_BODY:"forge-table-body",TABLE_BODY_ROW:"forge-table-body__row",TABLE_BODY_ROW_SELECTED:"forge-table-body__row--selected",TABLE_BODY_ROW_CLICKABLE:"forge-table-body__row--clickable",TABLE_BODY_CELL:"forge-table-body__cell",TABLE_ROW:"forge-table-row",TABLE_ROW_EXPANDED:"forge-table-row--expanded",TABLE_ROW_EXPANDABLE_CONTENT:"forge-table-row__expandable-content",TABLE_ROW_EXPANDABLE_CONTENT_CELL:"forge-table-row__expandable-content-cell",TABLE_CELL:"forge-table-cell",TABLE_CELL_SELECT:"forge-table-cell__select",TABLE_CELL_SELECT_CHECKBOX:"forge-table-cell__select-checkbox",TABLE_CELL_SELECT_CHECKBOX_CONTAINER:"forge-table-cell__select-checkbox-container",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT:"forge-table-cell__select-checkbox-container--align-right",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT:"forge-table-cell__select-checkbox-container--align-left",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER:"forge-table-cell__select-checkbox-container--align-center",TABLE_CELL_CONTAINER:"forge-table-cell__container",TABLE_CELL_CONTAINER_TEXT:"forge-table-cell__container-text",TABLE_CELL_CENTER:"forge-table-cell--center",TABLE_CELL_RIGHT:"forge-table-cell--right",TABLE_CELL_RESIZABLE:"forge-table-cell--resizing"},be={TABLE:".forge-table",CHECKBOX_INPUT:"forge-checkbox > input[type=checkbox]:not([forge-ignore])",SELECT_ALL_TEMPLATE_CHECKBOX_INPUT:"input[type=checkbox]:not([forge-ignore])",ROW_SELECTED:`.${ce.TABLE_BODY_ROW_SELECTED}`},Ee={SELECT:"select",MULTISELECT:"multiselect",SELECT_KEY:"select-key",DENSE:"dense",ROOMY:"roomy",FILTER:"filter",FIXED_HEADERS:"fixed-headers",LAYOUT_TYPE:"layout-type",WRAP_CONTENT:"wrap-content",RESIZABLE:"resizable",MIN_RESIZE_WIDTH:"min-resize-width",ALLOW_ROW_CLICK:"allow-row-click",MULTI_COLUMN_SORT:"multi-column-sort",SELECT_CHECKBOX_ALIGNMENT:"select-checkbox-alignment",TOOLTIP_SELECT:"tooltip-select",TOOLTIP_SELECT_ALL:"tooltip-select-all",CHECKBOX_TYPE:"forge-checkbox-type",CUSTOM_CELL_TEMPLATE:"data-cell-template",CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION:"data-cell-template-stop-propagation"},_e={ROW_CLICK:`${S}-row-click`,SELECT:`${S}-select`,SELECT_DOUBLE:`${S}-select-double`,SELECT_ALL:`${S}-select-all`,SORT:`${S}-sort`,FILTER:`${S}-filter`,INITIALIZED:`${S}-initialized`,COLUMN_RESIZE:`${S}-column-resize`},Te={SELECT_ALL:"select-all",SELECT_ROW:"select-row",DEFAULT_LAYOUT_TYPE:"auto"},pe={SORT_DOWN:"arrow_downward"},Ce={DEFAULT_FILTER_DEBOUNCE_TIME:750,MIN_RESIZE_WIDTH:100,RESIZE_HOVER_DURATION:150},s={elementName:S,classes:ce,selectors:be,attributes:Ee,events:_e,strings:Te,icons:pe,numbers:Ce};var B=(l=>(l.Left="left",l.Right="right",l.Center="center",l))(B||{}),O=(l=>(l.Ascending="ASC",l.Descending="DESC",l.Unset="UNSET",l))(O||{}),he=(o=>(o.InputText="text",o.InputNumber="number",o.Select="select",o.SelectMultiple="select-multiple",o.Date="date",o.DateRange="date-range",o))(he||{});function de(n){return n&&typeof n=="object"&&"content"in n}var b=class n{static createTable(e){n._resetTable(e.tableElement);let t=n._createTableHead(e),l=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(l,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(l)),e.fixedHeaders&&n.setFixedHeaders(e),e.resizable&&n.setResizable(e),e.dense&&n.setDenseState(e.tableElement,e.dense),e.wrapContent&&n.setWrapContentState(e.tableElement,e.wrapContent),e.selectListener&&n._addSelectColumn(t,l,e.selectListener,e.selectAllListener,e.selectAllTemplate,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),(e.resizable||e.columnConfigurations.some(i=>!!i.sortable))&&(n._attachHeadRowMouseDownListener(t,e.headRowMouseDownListener),n._isMac()&&n._attachHeadRowContextMenuListener(t,e.headRowContextMenuListener)),n.setLayoutType(e),n._setTableHead(e.tableElement,t),e.filter&&n.setFilterRow(e),n._setTableBody(e.tableElement,l)}static _setTableHead(e,t){e.tHead?F(t,e.tHead):e.appendChild(t)}static _setTableBody(e,t){e.tBodies.length?F(t,e.tBodies[0]):e.appendChild(t)}static recreateTableBody(e){let t=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(t,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(t)),e.selectListener&&(n._createBodySelectColumn(t,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),n._attachRowSelectListeners(t,e.selectListener)),n._setTableBody(e.tableElement,t)}static _resetTable(e){g(e)}static _createMultisortTooltip(){let e=document.createElement("forge-tooltip");return e.textContent="Ctrl + click to sort multiple columns",e.placement="bottom",e.delay=0,e}static _createTableHead(e){let t=document.createElement("thead"),l=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW],l);let i=!1;for(let a=0;a<e.columnConfigurations.length;a++){let o=e.columnConfigurations[a],r=document.createElement("th");r.scope="col",p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],r);let c;if(o.sortable?(c=document.createElement("button"),c.type="button",c.addEventListener("keydown",e.sortableHeadCellKeydownListener)):c=document.createElement("div"),c.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),e.multiColumnSort){let d=n._createMultisortTooltip();c.appendChild(d)}if(o.align&&n._setCellAlignmentClass(c,o.align),f(o.width)){let d=K(o.width);d&&(r.style.width=d)}if(e.resizable&&o.resizable!==!1){let d=document.createElement("div");d.classList.add(s.classes.TABLE_RESIZE_HANDLE),r.appendChild(d)}f(o.headerCellStyle)&&w(o.headerCellStyle)&&(Object.assign(r.style,o.headerCellStyle),Object.assign(c.style,o.headerCellStyle));let m=document.createElement("span");if(m.classList.add(s.classes.TABLE_HEAD_CELL_TEXT),m.textContent=o.header&&typeof o.header=="string"?o.header.trim():"",o.sortable){r.classList.add(s.classes.TABLE_HEAD_CELL_SORTABLE);let d=document.createElement("span");p([s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,s.classes.TABLE_HEAD_CELL_SORT_ORDER],d);let u=document.createElement(ie.elementName);u.name=s.icons.SORT_DOWN,p([s.classes.TABLE_HEAD_CELL_SORT_ICON],u),e.multiColumnSort?typeof o.initialSort=="object"&&o.initialSort.sortOrder&&(d.textContent=o.initialSort.sortOrder.toString(),e.columnConfigurations.filter(C=>typeof C.initialSort=="object").length>1&&D(s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,d),r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,o.initialSort.direction)):e.sortedColumn===a&&!i&&!e.multiColumnSort&&(r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,e.sortDirection),i=!0),c.appendChild(u),c.appendChild(d)}typeof o.headerTemplate=="function"?Promise.resolve(o.headerTemplate(a,c,o)).then(d=>{if(d){let u=document.createElement("div");p(s.classes.TABLE_CELL_CONTAINER,u),typeof d=="string"?u.innerHTML=d:n._prepend(d,u),u.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),n._prepend(u,c)}}):n._prepend(m,c),r.appendChild(c),l.appendChild(r)}return t}static setSortDirection(e,t,l){let i=n._getHeaderCellByIndex(e,t);e.querySelectorAll("th[aria-sort]").forEach(a=>a.removeAttribute("aria-sort")),n._setColumnSortDirection(i,l)}static _setColumnSortDirection(e,t){e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),!t||t==="DESC"?(e.setAttribute("aria-sort","descending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)):(e.setAttribute("aria-sort","ascending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING))}static _createTableBody(e){let t=document.createElement("tbody");return n._getOrderedRowData(e.columnConfigurations,e.data).forEach((i,a)=>{let o=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW],o),n._populateRowCells(e,o,i,a),typeof e.rowCreatedCallback=="function"&&e.rowCreatedCallback(o,a,h({},e.data[a].data))}),t}static _populateRowCells(e,t,l,i){for(let a=0;a<l.length;a++){let o=e.columnConfigurations[a],r=t.insertCell();if(p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL],r),f(o.width)){let m=K(o.width);m&&(r.style.width=m)}let c=document.createElement("div");if(c.classList.add(s.classes.TABLE_CELL_CONTAINER),f(o.cellStyle)&&w(o.cellStyle)&&(Object.assign(r.style,o.cellStyle),Object.assign(c.style,o.cellStyle)),o.template&&typeof o.template=="function"){let m=e.data[i]?e.data[i].data:void 0;Promise.resolve(o.template(i,c,m,a)).then(d=>{let u=de(d)?d:{content:d,stopClickPropagation:o.stopCellTemplateClickPropagation};u.content&&(typeof u.content=="string"?c.innerHTML=u.content:c.appendChild(u.content),c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),u.stopClickPropagation&&c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION,""))})}else if(o.property){let m=document.createElement("span");m.classList.add(s.classes.TABLE_CELL_CONTAINER_TEXT),c.appendChild(m),o.transform&&typeof o.transform=="function"?Promise.resolve(o.transform(l[a])).then(d=>m.textContent=d):l[a]==null?m.textContent="":m.textContent=l[a].toString()}if(o.align&&n._setCellAlignmentClass(c,o.align),r.appendChild(c),f(o.columnSpan)){if(o.columnSpan==="all"){r.colSpan=l.length-a;break}else if(typeof o.columnSpan=="number"&&o.columnSpan>0){let m=o.columnSpan;o.columnSpan>l.length-a&&(m=l.length),r.colSpan=m,a=a+(m-1)}}typeof e.cellCreatedCallback=="function"&&e.cellCreatedCallback(r,i,a)}}static _setCellAlignmentClass(e,t){switch(t){case"center":e.classList.add(s.classes.TABLE_CELL_CENTER);break;case"right":e.classList.add(s.classes.TABLE_CELL_RIGHT);break}}static _getNonExpandedRows(e){return Array.from(e).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _getExpandedRows(e){return Array.from(e).filter(t=>t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _createColumnDataMap(e,t){return e.map(l=>({config:l,data:t.map(i=>{if(l.property){let a=$(i.data,l.property);return f(a)?a:null}return null})}))}static _getOrderedRowData(e,t){let l=n._createColumnDataMap(e,t),i=[];for(let a of l)for(let o=0;o<a.data.length;o++)i[o]||(i[o]=[]),i[o].push(a.data[o]);return i}static _attachRowClickListeners(e,t,l){n._getNonExpandedRows(e.rows).forEach(a=>{a.addEventListener("click",t),l&&a.addEventListener("dblclick",l)})}static _addRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.add(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _removeRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.remove(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _attachRowSelectListeners(e,t){n._getNonExpandedRows(e.rows).forEach(i=>n._attachRowSelectListener(i,t))}static _attachRowSelectListener(e,t){let l=n._getCheckboxElement(e);l==null||l.addEventListener("click",t)}static _detachRowSelectListeners(e,t){Array.from(e.rows).forEach(l=>{let i=n._getCheckboxElement(l);i==null||i.removeEventListener("click",t)})}static _detachRowClickListeners(e,t,l){Array.from(e.rows).forEach(i=>{i.removeEventListener("click",t),i.removeEventListener("dblclick",l)})}static _attachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._getCheckboxElement(l);if(!i)throw new Error("Checkbox element not found.");i.addEventListener("change",t)}static _tryAttachSelectAllTemplateListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.addEventListener("change",t)}static _detachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.removeEventListener("change",t)}static _attachHeadRowMouseDownListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("mousedown",t)}static _attachHeadRowContextMenuListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("contextmenu",t)}static _createSelectColumn(e,t,l,i,a,o,r,c,m){e&&n._createHeadSelectColumn(e,l,i,a,o,m),t&&n._createBodySelectColumn(t,o,r,c,m)}static _createHeadSelectColumn(e,t,l,i,a,o){var r;if(Array.from(e.rows).forEach(c=>{let m=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],m),c.insertBefore(m,c.cells.item(0))}),t){let c=(r=e.rows.item(e.rows.length-1))==null?void 0:r.cells.item(0);c.classList.add(s.classes.TABLE_CELL_SELECT),typeof l=="function"?n._renderSelectAllTemplate(l,e).then(()=>{typeof i=="function"&&i()}):c==null||c.appendChild(n._createCheckboxElement(!0,a,null,null,null,o))}}static _createBodySelectColumn(e,t,l,i,a){if(n._getNonExpandedRows(e.rows).forEach((r,c)=>n._addRowSelectColumn(r,t,c,l[c],i,a)),e.rows.length){let r=e.rows.item(0);r&&n._updateExpandedRowColspan(e.rows,r.cells.length)}}static _addRowSelectColumn(e,t,l,i,a,o){let r=e.insertCell(0);p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL,s.classes.TABLE_CELL_SELECT],r),r.appendChild(n._createCheckboxElement(!1,t,l,i,a,o))}static _destroySelectColumn(e,t){let l=n._getNonExpandedRows(t.rows);if(Array.from(e.rows).forEach(i=>i.removeChild(i.cells.item(0))),Array.from(l).forEach(i=>i.removeChild(i.cells.item(0))),t.rows.length){let i=t.rows.item(0);i&&n._updateExpandedRowColspan(t.rows,i.cells.length)}}static _hasSelectColumn(e,t){return[...Array.from(e.rows),...Array.from(t.rows)].some(i=>i.cells.item(0).classList.contains(s.classes.TABLE_CELL_SELECT))}static _createCheckboxElement(e,t,l,i,a,o){let r=document.createElement("div");if(r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER),t)switch(t){case"center":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER);break;case"left":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT);break;case"right":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT);break}let c=document.createElement(ne.elementName),m=document.createElement("input");m.type="checkbox";let d=a||"";i&&typeof a=="function"&&(d=a.call(null,l,i.data));let u=document.createElement("forge-tooltip");return u.position="left",e?u.textContent=o||"":u.textContent=d,m.setAttribute("aria-label","Select row"),c.appendChild(m),r.appendChild(u),r.appendChild(c),r}static _getCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT):null}static _tryGetSelectAllCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT)||t.querySelector(s.selectors.SELECT_ALL_TEMPLATE_CHECKBOX_INPUT):null}static _setSelectedCheckboxState(e,t){e&&(e.checked=t)}static _setIndeterminateCheckboxState(e,t){e&&(e.indeterminate=t)}static _setRowSelectedState(e,t){t?e.classList.contains(s.classes.TABLE_BODY_ROW_SELECTED)||e.classList.add(s.classes.TABLE_BODY_ROW_SELECTED):e.classList.remove(s.classes.TABLE_BODY_ROW_SELECTED)}static _updateExpandedRowColspan(e,t){n._getExpandedRows(e).forEach(i=>{let a=i.cells.item(0);a&&(a.colSpan=t)})}static updateSelectedState(e,t){n._setRowSelectedState(e,t);let l=n._getCheckboxElement(e);l&&n._setSelectedCheckboxState(l,t)}static getRowByIndex(e,t){return n._getNonExpandedRows(e.tBodies[0].rows)[t]}static updateSelectAllState(e,t,l){if(!e.tHead)return;let i=e.tHead.rows[e.tHead.rows.length-1],a=n._tryGetSelectAllCheckboxElement(i);a&&(n._setSelectedCheckboxState(a,t),n._setIndeterminateCheckboxState(a,!!l))}static setSelectedRows(e,t,l,i,a=!1){if(!e.tBodies.length)return;a||n.clearSelectedRows(e);let o=e.tBodies[0].rows,r=0;i.length&&Array.from(o).forEach((c,m)=>{let d=l[m];if(x(i,v(t,d))){n._setRowSelectedState(c,!0);let C=n._getCheckboxElement(c);C&&n._setSelectedCheckboxState(C,!0),r++}}),n.updateSelectAllState(e,r>0&&o.length===r)}static clearSelectedRows(e){if(!e.tBodies.length)return;n._getNonExpandedRows(e.tBodies[0].rows).forEach(l=>{n._setRowSelectedState(l,!1);let i=n._getCheckboxElement(l);i&&n._setSelectedCheckboxState(i,!1)})}static setSortedColumn(e,t,l){let i=n._getHeaderCellByIndex(e,t);n._getSortIconElementFromHeaderCell(i).classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(i,l)}static setMultiSortColumnSortNumber(e,t,l,i){let r=n._getHeaderCellByIndex(e,l).querySelector(`.${s.classes.TABLE_HEAD_CELL_CONTAINER}`).querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ORDER}`);r&&(Z(r,typeof i!="number"||!t,s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN),i&&(r.textContent=i.toString()))}static removeColumnSort(e,t){let l=n._getHeaderCellByIndex(e,t);l.removeAttribute("aria-sort"),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING);let i=n._getSortIconElementFromHeaderCell(l);i&&i.classList.contains(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)&&i.classList.remove(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)}static _getHeaderCellByIndex(e,t){if(!e.tHead)throw new Error("Table head element cannot be null.");return e.tHead.rows.item(0).cells.item(t)}static _getSortIconElementFromHeaderCell(e){return e.querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ICON}`)}static setSelectColumnVisibility(e,t,l,i,a,o,r,c,m){let d=e.tHead,u=e.tBodies[0];!d||!u||(t?n._addSelectColumn(d,u,l,i,a,o,r,c,m):n._hasSelectColumn(d,u)&&(l&&n._detachRowSelectListeners(u,l),i&&n._detachSelectAllListener(d,i),n._destroySelectColumn(d,u)))}static _addSelectColumn(e,t,l,i,a,o,r,c,m){n._createSelectColumn(e,t,!!i,a,()=>{i&&n._tryAttachSelectAllTemplateListener(e,i)},o,r,c,m),l&&n._attachRowSelectListeners(t,l),i&&!a&&n._tryAttachSelectAllTemplateListener(e,i)}static setDenseState(e,t){e.classList.contains(s.classes.TABLE_DENSE)&&e.classList.remove(s.classes.TABLE_DENSE),t&&e.classList.add(s.classes.TABLE_DENSE)}static setRoomyState(e,t){e.classList.contains(s.classes.TABLE_ROOMY)&&e.classList.remove(s.classes.TABLE_ROOMY),t&&e.classList.add(s.classes.TABLE_ROOMY)}static setResizable(e){let t=e.tableElement.tHead;e.resizable?(e.tableElement.classList.add(s.classes.TABLE_RESIZABLE),n._addResizeHandles(t,e)):(e.tableElement.classList.remove(s.classes.TABLE_RESIZABLE),n._removeResizeHandles(t,e))}static _addResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=i.indexOf(a);if(t.columnConfigurations[o].resizable!==!1){let c=document.createElement("div");c.classList.add(s.classes.TABLE_RESIZE_HANDLE),a.appendChild(c)}}}}static _removeResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=document.querySelector(`.${s.classes.TABLE_RESIZE_HANDLE}`);o&&a.removeChild(o)}}}static setWrapContentState(e,t){t?e.classList.remove(s.classes.TABLE_NO_WRAP_CONTENT):e.classList.add(s.classes.TABLE_NO_WRAP_CONTENT)}static setSelectAllVisibility(e,t,l,i,a,o){let r=e.tHead;if(!r)return;!t&&l&&n._detachSelectAllListener(r,l);let m=r.rows[r.rows.length-1].cells.item(0);t?m.childElementCount||(m.classList.add(s.classes.TABLE_CELL_SELECT),i?n._renderSelectAllTemplate(i,r).then(()=>{l&&n._tryAttachSelectAllTemplateListener(r,l)}):m.appendChild(n._createCheckboxElement(!0,a||null,null,null,null,o)),l&&!i&&n._attachSelectAllListener(r,l)):(l&&n._detachSelectAllListener(r,l),g(m))}static setFilterRow(e){if(!e.tableElement.tHead)return;let t=n._getFilterRowElement(e.tableElement.tHead),l;if(e.filter?e.tableElement.classList.add(s.classes.TABLE_FILTER_VISIBLE):e.tableElement.classList.remove(s.classes.TABLE_FILTER_VISIBLE),e.filter&&!t){if(e.columnConfigurations.every(a=>!a.filter))return;e.selectListener&&e.selectAllListener&&(l=e.tableElement.tHead.rows[e.tableElement.tHead.rows.length-1].cells.item(0));let i=n._createFilterRowElement(e);i&&l&&Array.from(l.children).forEach(a=>{var o;(o=i.cells.item(0))==null||o.appendChild(a)})}else if(!e.filter&&t){if(e.selectListener&&e.selectAllListener){l=t.cells.item(0);let i=Array.from(e.tableElement.tHead.rows).indexOf(t)-1,a=e.tableElement.tHead.rows.item(i);a&&Array.from(l.children).forEach(o=>{var r;(r=a.cells.item(0))==null||r.appendChild(o)})}W(t)}}static _createFilterRowElement(e){if(!e.tableElement.tHead)throw new Error("Table head element cannot be null.");let t=e.tableElement.tHead.insertRow();if(p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW_FILTER],t),e.selectListener){let l=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],l),t.insertBefore(l,t.cells[0]),l.classList.add(s.classes.TABLE_CELL_SELECT)}return e.columnConfigurations.forEach((l,i)=>{let a=document.createElement("th");if(p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],a),l.filter&&f(l.filterDelegate)){let o=document.createElement("div");o.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),l.align&&n._setCellAlignmentClass(o,l.align);let r=n._createFilterElement(l,i,e.filterListener);o.appendChild(r),a.appendChild(o)}t.appendChild(a)}),t}static _createFilterElement(e,t,l){let i;if(H(e.filterDelegate))i=e.filterDelegate();else if(e.filterDelegate instanceof X||e.filterDelegate instanceof le)i=e.filterDelegate;else throw new Error("Invalid filter delegate.");if(l&&i instanceof X&&H(i.onChange))if(!f(e.filterDebounceTime)||y(e.filterDebounceTime)){let a=f(e.filterDebounceTime)?e.filterDebounceTime:s.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;i.onChange(V(o=>l(o,t),a))}else i.onChange(a=>l(a,t));return i.element}static _getFilterRowElement(e){if(e)return Array.from(e.rows).find(t=>t.classList.contains(s.classes.TABLE_HEAD_ROW_FILTER))}static async expandRow(e,t,l){let i=e.tableElement.tBodies[0],o=n._getNonExpandedRows(i.rows)[t];o.classList.add(s.classes.TABLE_ROW_EXPANDED);let r=Array.from(i.rows).indexOf(o),c=i.insertRow(r+1);p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW,s.classes.TABLE_ROW_EXPANDABLE_CONTENT],c);let m=c.insertCell();m.setAttribute("colspan",o.cells.length.toString()),m.classList.add(s.classes.TABLE_ROW_EXPANDABLE_CONTENT_CELL);let d=document.createElement("div"),u=document.createElement(M.elementName);u.appendChild(d),m.appendChild(u);let C=l;if(H(l)){let me=e.data[t]?e.data[t].data:void 0,ue=l(t,d,me);try{let A=await Promise.resolve(ue);C=de(A)?A.content:A}catch(A){console.error("Failed to load row template "+A.message),C=""}}C&&n._setRowTemplate(d,C),window.requestAnimationFrame(()=>u.open=!0)}static _setRowTemplate(e,t){Y(t)?e.innerHTML=t:e.appendChild(t)}static collapseRow(e,t){if(!e.tableElement||!e.tableElement.tBodies.length||!e.tableElement.tBodies[0].rows.length)return Promise.resolve();let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t],o=Array.from(l.rows).indexOf(a);if(a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)){let r=l.rows[o+1],c=r.querySelector(M.elementName);if(c&&c.open){let m=new Promise(d=>{c.addEventListener(M.events.ANIMATION_COMPLETE,()=>{a.classList.remove(s.classes.TABLE_ROW_EXPANDED),W(r),d()},{once:!0})});return c.open=!1,m}}return Promise.resolve()}static isRowExpanded(e,t){let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t];return a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)}static setFixedHeaders(e){e.fixedHeaders?e.tableElement.classList.add(s.classes.TABLE_FIXED):e.tableElement.classList.remove(s.classes.TABLE_FIXED)}static setLayoutType(e){e.layoutType==="fixed"?e.tableElement.classList.add(s.classes.TABLE_LAYOUT_FIXED):e.tableElement.classList.remove(s.classes.TABLE_LAYOUT_FIXED)}static normalizeColumnWidths(e){let t=e.tableElement;if(t.tHead&&t.tHead.rows.length){let l=Array.from(t.tHead.rows[0].cells);for(let i of l){let a=getComputedStyle(i).width;i.style.width&&i.style.width!==a&&(i.style.width=a)}}}static setColumnResizeIndicatorVisibility(e,t,l){let i=e.tableElement;if(i.tHead&&i.tHead.rows.length){let a=Array.from(i.tHead.rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}if(i.tBodies.length){let a=Array.from(i.tBodies[0].rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}}static setRowClickListeners(e,t,l,i){let a=e.tBodies[0];a&&(t?n._attachRowClickListeners(a,l,i):n._detachRowClickListeners(a,l,i))}static setRowClickAttributes(e,t){let l=e.tBodies[0];l&&(t?n._addRowClickAttributes(l):n._removeRowClickAttributes(l))}static getOwnerDocument(e){return e.ownerDocument||document}static _prepend(e,t){let l=t.childNodes.item(0);l?t.insertBefore(e,l):t.appendChild(e)}static _isMac(){return!!(navigator&&navigator.platform&&navigator.platform.substr(0,3)==="Mac")}static _renderSelectAllTemplate(e,t){return Promise.resolve(e()).then(l=>{let i=t.rows.item(t.rows.length-1);if(!i)return;let a=i.cells.item(0);l&&a&&(typeof l=="string"?a.innerHTML=l:l instanceof HTMLElement&&a.appendChild(l),a.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""))})}};var k=class extends Q{constructor(t){super(t)}initialize(){this._tableElement||(this._tableElement=document.createElement("table"),this._tableElement.classList.add(s.classes.TABLE),this._component.children.length&&g(this._component),this._component.appendChild(this._tableElement))}getTableElement(){return this._tableElement||this.initialize(),this._tableElement}createTable(t){return b.createTable(t)}recreateTableBody(t){b.recreateTableBody(t)}setSelectedRows(t,l,i,a,o=!1){b.setSelectedRows(t,l,i,a,o)}clearSelectedRows(t){b.clearSelectedRows(t)}updateSelectedState(t,l){b.updateSelectedState(t,l)}updateSelectAllState(t,l,i){b.updateSelectAllState(t,l,i)}setSortedColumn(t,l,i){b.setSortedColumn(t,l,i)}removeColumnSort(t,l){b.removeColumnSort(t,l)}setSortDirection(t,l,i){b.setSortDirection(t,l,i)}setSelectColumnVisibility(t,l,i,a,o,r,c,m,d){b.setSelectColumnVisibility(t,l,i,a||null,o||null,r||null,c||[],m||null,d||null)}setDense(t,l){b.setDenseState(t,l)}setRoomy(t,l){b.setRoomyState(t,l)}setResizable(t){b.setResizable(t)}setSelectAllVisibility(t,l,i,a,o,r=null){b.setSelectAllVisibility(t,l,i,a,o||null,r||null)}setFilterRow(t){b.setFilterRow(t)}expandRow(t,l,i){return b.expandRow(t,l,i)}collapseRow(t,l){return b.collapseRow(t,l)}isRowExpanded(t,l){return b.isRowExpanded(t,l)}setFixedHeaders(t){b.setFixedHeaders(t)}setTableLayoutType(t){b.setLayoutType(t)}setWrapContentState(t){b.setWrapContentState(t.tableElement,t.wrapContent)}addDocumentListener(t,l){b.getOwnerDocument(this._component).addEventListener(t,l)}removeDocumentListener(t,l){b.getOwnerDocument(this._component).removeEventListener(t,l)}normalizeColumnWidths(t){b.normalizeColumnWidths(t)}setResizeColumnVisibility(t,l,i){b.setColumnResizeIndicatorVisibility(t,l,i)}addTableClass(t){p(t,this._tableElement)}removeTableClass(t){D(t,this._tableElement)}setRowClickListeners(t,l,i,a){b.setRowClickListeners(t,l,i,a)}setRowClickAttributes(t,l){b.setRowClickAttributes(t,l)}};var N=class{constructor(){this._sortedColumns=[]}get sortedColumns(){return[...this._sortedColumns.map(e=>h({},e))]}addSortColumn(e){this._sortedColumns.push(h({},e)),this._updateSortNumbers()}updateSortColumn(e){let t=this._sortedColumns.find(l=>l.columnIndex===e.columnIndex);if(t)switch(t.direction){case"ASC":this.removeSortColumn(e);break;case"DESC":t.direction="ASC";break;case"UNSET":t.direction="DESC";break}}setSortColumns(e){this._sortedColumns=[...e.map(t=>h({},t))]}removeSortColumn(e){typeof e=="number"?this._sortedColumns.splice(e,1):this._sortedColumns.splice(this._sortedColumns.indexOf(e),1),this._updateSortNumbers()}isSortColumn(e){return typeof e=="number"?this._sortedColumns.some(t=>t.columnIndex===e):this._sortedColumns.includes(e)}clearMultiSort(){this._sortedColumns=[]}getSortColumn(e){return this._sortedColumns.find(t=>t.columnIndex===e)}_updateSortNumbers(){this._sortedColumns.every(e=>typeof e.sortOrder=="number")&&this._sortedColumns.sort((e,t)=>e.sortOrder-t.sortOrder),this._sortedColumns.forEach((e,t)=>e.sortOrder=t+1)}};var P=class{constructor(e,t=!1){this.data=e;this.selected=t}};var z=class{constructor(e){this._adapter=e;this._tableRows=[];this._data=[];this._columnConfigurations=[];this._select=!1;this._multiselect=!0;this._dense=!1;this._roomy=!1;this._filter=!1;this._fixedHeaders=!1;this._layoutType=s.strings.DEFAULT_LAYOUT_TYPE;this._wrapContent=!0;this._resizable=!1;this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH;this._multiColumnSort=!1;this._selectCheckboxAlignment="center";this._isAllSelected=!1;this._sortedColumnIndex=-1;this._rendered=!1;this._allowRowClick=!1;this._multiSortManager=new N;this._rowClickListener=t=>this._onRowClick(t),this._rowDoubleClickListener=t=>this._onRowDoubleClick(t),this._selectRowListener=t=>this._onRowSelected(t),this._selectAllListener=t=>this._onSelectAll(t),this._sortableHeadCellKeydownListener=t=>this._onSortableHeadCellKeydown(t),this._headRowMouseDownListener=t=>this._onHeadRowMouseDown(t),this._headRowContextMenuListener=t=>this._onHeadRowContextMenu(t),this._documentMouseMoveListener=t=>this._onMouseMove(t),this._documentMouseUpListener=t=>this._onMouseUp(t),this._filterListener=(t,l)=>this._onFilter(t,l),this._selectionManager=new I(this._selectKey),this._hiddenColumnManager=new I}initialize(){this.connect(),this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString()),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()),this._adapter.emitHostEvent(s.events.INITIALIZED,void 0,!1)}connect(){this._adapter.initialize()}disconnect(){this._resizeDescriptor=void 0,this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener)}set data(e){Array.isArray(e)&&e.length>0?w(e[0])?this._data=e.map(t=>h({},t)):this._data=[...e]:this._data=[],this._tableRows=this._data.map(t=>new P(t,this._selectionManager.exists(t))),this._renderBody()}get data(){return this._data.map(e=>h({},e))}set columnConfigurations(e){this._columnConfigurations=e.map(t=>h({},t)),this._hiddenColumnManager.clear(),this._columnConfigurations.forEach(t=>{t.hidden&&this._hiddenColumnManager.add(t)}),this._refreshTableSort(),this.render()}get columnConfigurations(){return this._columnConfigurations.map(e=>h({},e))}get _visibleColumnConfigurations(){return this._columnConfigurations.filter(e=>!this._hiddenColumnManager.exists(e))}get _tableConfiguration(){return{tableElement:this._adapter.getTableElement(),columnConfigurations:this._visibleColumnConfigurations,data:this._tableRows,clickListener:this._allowRowClick?this._rowClickListener:null,doubleClickListener:this._allowRowClick?this._rowDoubleClickListener:null,selectListener:this._select?this._selectRowListener:null,selectAllListener:this._multiselect?this._selectAllListener:null,sortableHeadCellKeydownListener:this._sortableHeadCellKeydownListener,headRowMouseDownListener:this._headRowMouseDownListener,headRowContextMenuListener:this._headRowContextMenuListener,filterListener:this._filter?this._filterListener:null,sortDirection:this._sortDirection,sortedColumn:this._sortedColumnIndex,multiColumnSort:this._multiColumnSort,filter:this._filter,wrapContent:this._wrapContent,fixedHeaders:this._fixedHeaders,layoutType:this._layoutType,dense:this._dense,resizable:this._resizable,rowCreatedCallback:this._rowCreatedCallback,cellCreatedCallback:this._cellCreatedCallback,selectAllTemplate:this._selectAllTemplate,selectCheckboxAlignment:this._selectCheckboxAlignment,tooltipSelect:this._tooltipSelect,tooltipSelectAll:this._tooltipSelectAll}}set select(e){this._select!==e&&(this._select=e,this._adapter.setSelectColumnVisibility(this._adapter.getTableElement(),this._select,this._selectRowListener,this._multiselect?this._selectAllListener:void 0,this._multiselect?this._selectAllTemplate:null,this._selectCheckboxAlignment,this._tableRows,this._tooltipSelect,this._tooltipSelectAll),this._updateSelections(!0),this._select?this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()):this._adapter.removeHostAttribute(s.attributes.SELECT))}get select(){return this._select}set multiselect(e){this._multiselect!==e&&(this._multiselect=e,this._select&&(this._adapter.setSelectAllVisibility(this._adapter.getTableElement(),this._multiselect,this._multiselect?this._selectAllListener:null,this._multiselect?this.selectAllTemplate:null,this._selectCheckboxAlignment,this._tooltipSelectAll),this._updateSelections(!0)),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()))}get multiselect(){return this._multiselect}get selectKey(){return Array.isArray(this._selectKey)?[...this._selectKey]:this._selectKey}set selectKey(e){this._originalSelectKey!==e&&(Array.isArray(e)?(this._originalSelectKey=[...e],this._selectKey=[...e]):(this._originalSelectKey=e,this._selectKey=[e]),this._selectionManager.setKey(this._selectKey),this._updateSelections(!1))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.setDense(this._adapter.getTableElement(),this._dense),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()))}get roomy(){return this._roomy}set roomy(e){e!==this._roomy&&(this._roomy=e,this._applyRoomy())}set filter(e){this._filter!==e&&(this._filter=e,this._adapter.setFilterRow(this._tableConfiguration),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()))}get filter(){return this._filter}set fixedHeaders(e){this._fixedHeaders!==e&&(this._fixedHeaders=e,this._adapter.setFixedHeaders(this._tableConfiguration))}get fixedHeaders(){return this._fixedHeaders}get layoutType(){return this._layoutType}set layoutType(e){this._layoutType!==e&&(this._layoutType=e,this._adapter.setTableLayoutType(this._tableConfiguration))}get wrapContent(){return this._wrapContent}set wrapContent(e){this._wrapContent!==e&&(this._wrapContent=e,this._adapter.setWrapContentState(this._tableConfiguration))}get resizable(){return this._resizable}set resizable(e){this._resizable!==e&&(this._resizable=e,this._adapter.setResizable(this._tableConfiguration))}get minResizeWidth(){return this._minResizeWidth}set minResizeWidth(e){this._minResizeWidth!==e&&(this._minResizeWidth=e,y(this._minResizeWidth)?this._minResizeWidth<0&&(this._minResizeWidth=0):this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH)}get allowRowClick(){return this._allowRowClick}set allowRowClick(e){this._allowRowClick!==e&&(this._allowRowClick=e,this._rendered&&(this._adapter.setRowClickListeners(this._adapter.getTableElement(),this._allowRowClick,this._rowClickListener,this._rowDoubleClickListener),this._adapter.setRowClickAttributes(this._adapter.getTableElement(),this._allowRowClick)))}get multiColumnSort(){return this._multiColumnSort}set multiColumnSort(e){e!==this._multiColumnSort&&(this._multiColumnSort=e,this._refreshTableSort(),this.render())}get selectCheckboxAlignment(){return this._selectCheckboxAlignment}set selectCheckboxAlignment(e){e!==this._selectCheckboxAlignment&&(this._selectCheckboxAlignment=e,this._adapter.setHostAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT,e),this.render())}get tooltipSelect(){return this._tooltipSelect}set tooltipSelect(e){e!==this._tooltipSelect&&(this._tooltipSelect=e,typeof e=="string"&&this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT,e),this.render())}get tooltipSelectAll(){return this._tooltipSelectAll}set tooltipSelectAll(e){e!==this._tooltipSelectAll&&(this._tooltipSelectAll=e,this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT_ALL,e),this.render())}get selectAllTemplate(){return this._selectAllTemplate}set selectAllTemplate(e){e!==this._selectAllTemplate&&(this._selectAllTemplate=e,this.render())}get rowCreated(){return this._rowCreatedCallback}set rowCreated(e){this._rowCreatedCallback=e}get cellCreated(){return this._cellCreatedCallback}set cellCreated(e){this._cellCreatedCallback=e}isRowSelected(e){let t=v(Array.isArray(this._selectKey)?this._selectKey:[this._selectKey],e);return this.selectKey?!!this._selectionManager.getItems().find(l=>U(l,t)):this._selectionManager.exists(e)}getSelectedRows(){return this._selectionManager.getItems()}selectRows(e,t){if(!this._selectKey)throw new Error("You must set a selectKey to select rows.");(!this._multiselect||t)&&this.clearSelections(),e&&e.length&&(this._selectionManager.add(e),this._updateSelections(!t))}deselectRows(e){e&&e.length&&(this._selectionManager.remove(e),this._updateSelections(!1))}clearSelections(){let e=this._adapter.getTableElement();this._selectionManager.clear(),this._tableRows.forEach(t=>t.selected=!1),this._isAllSelected=!1,this._adapter.clearSelectedRows(e),this._select&&this._multiselect&&this._adapter.updateSelectAllState(e,!1)}hideColumn(e){let t=this._columnConfigurations[e];this._sortedColumnIndex===e&&(this._sortedColumnIndex=-1),this._hiddenColumnManager.exists(t)||(this._hiddenColumnManager.add(t),this.render())}showColumn(e){let t=this._columnConfigurations[e];this._hiddenColumnManager.exists(t)&&(this._hiddenColumnManager.remove(t),this.render())}isColumnHidden(e){let t=this._columnConfigurations[e];return!!t&&this._hiddenColumnManager.exists(t)}render(){this._adapter.createTable(this._tableConfiguration),this._renderSelections(),this._rendered=!0}_renderBody(){this._rendered&&(this._adapter.recreateTableBody(this._tableConfiguration),this._renderSelections())}_renderSelections(){this.select&&(this._isAllSelected=this._getSelectAllState(),this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)));let e=this._selectionManager.getItems();e.length&&this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,e,!1)}expandRow(e,t){if(!this._rendered)throw new Error("Cannot expand a row before the table has rendered.");if(e<0||e>this._tableRows.length)throw new Error(`Invalid row index: ${e}.`);return this._adapter.expandRow(this._tableConfiguration,e,t)}collapseRow(e){return!this._rendered||e<0||e>this._tableRows.length?Promise.resolve():this._adapter.collapseRow(this._tableConfiguration,e)}isRowExpanded(e){return this._adapter.isRowExpanded(this._tableConfiguration,e)}selectRowsByIndex(e,t){let l=e.map(i=>this._data[i]).filter(i=>!!i);this.selectRows(l,!t)}deselectRowsByIndex(e){let t=e.map(l=>this._data[l]).filter(l=>!!l);this.deselectRows(t)}_getSelectAllState(){return this._tableRows.length>0&&this._tableRows.every(e=>e.selected)}_updateSelections(e){this._tableRows.forEach(l=>l.selected=this._selectionManager.exists(l.data));let t=this._getSelectAllState();this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,this._selectionManager.getItems(),e),(t!==this._isAllSelected||this._isIndeterminate(t))&&(this._isAllSelected=t,this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)))}_onRowClick(e){if(e.stopImmediatePropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let i=R(e).filter(m=>m.nodeType===1).find(m=>m.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE));if(i&&i.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION))return;let{index:o,data:r}=this._getSelectedRowFromEvent(e),c={index:o,data:r};this._adapter.emitHostEvent(s.events.ROW_CLICK,c,!0,!1)}_onRowDoubleClick(e){if(e.stopPropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let t=this._getSelectedRowFromEvent(e),l={index:t.index,data:t.data};this._adapter.emitHostEvent(s.events.SELECT_DOUBLE,l,!0,!1)}_onRowSelected(e){let t=this._getSelectedRowFromEvent(e);this._multiselect||this._tableRows.filter(r=>r.selected).forEach(r=>{U(r.data,v(this._selectKey,t.data))||this.deselectRows([r.data])});let l=!this._selectionManager.exists(t.data);this._adapter.updateSelectedState(t.rowElement,l),l?this._selectionManager.add(t.data):this._selectionManager.remove(t.data),this._tableRows[t.index].selected=l;let i=[t.index],a=!1;if(this._multiselect){if(e.shiftKey&&this._previouslyClickedRow&&(i=this._shiftSelectRows(t),i.includes(this._previouslyClickedRow.index))){let r=i.indexOf(this._previouslyClickedRow.index);i.splice(r,1)}a=this._getSelectAllState(),this._adapter.updateSelectAllState(this._adapter.getTableElement(),a,this._isIndeterminate(a))}for(let o of i){let r=this._tableRows[o].data,m={selected:this._selectionManager.exists(r),index:o,data:r};this._adapter.emitHostEvent(s.events.SELECT,m,!0,!1)}if(this._isAllSelected!==a){this._isAllSelected=a;let o={status:this._isAllSelected,count:this._tableRows.filter(r=>r.selected).length,data:[...this._data],targetType:"row"};this._adapter.emitHostEvent(s.events.SELECT_ALL,o,!0,!1)}this._previouslyClickedRow=h({},t)}_getSelectedRowFromEvent(e){let l=R(e).find(r=>r.tagName==="TR"),i=l.parentElement,a=this._getNonExpandedRows(i).findIndex(r=>r===l),o=this._tableRows[a].data;return{rowElement:l,index:a,data:o}}_getNonExpandedRows(e){return Array.from(e.rows).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}_onSelectAll(e){e.stopPropagation(),this._isAllSelected=!this._isAllSelected;let t=this._adapter.getTableElement();this._adapter.updateSelectAllState(t,this._isAllSelected),this._tableRows.forEach((i,a)=>{i.selected=this._isAllSelected,this._isAllSelected?this._selectionManager.add(i.data):this._selectionManager.remove(i.data);let o=b.getRowByIndex(t,a);o&&this._adapter.updateSelectedState(o,this._isAllSelected)});let l={status:this._isAllSelected,count:this._tableRows.filter(i=>i.selected).length,data:[...this._data],targetType:"select-all"};this._adapter.emitHostEvent(s.events.SELECT_ALL,l,!0,!1)}_onHeadRowContextMenu(e){e.ctrlKey&&e.preventDefault()}_onHeadRowMouseDown(e){if(e.button!==0)return;let t=R(e),l=e.target,i=t.find(r=>r.tagName==="TR"),a=t.find(r=>r.tagName==="TH"),o=Array.from(i.cells).findIndex(r=>r===a);this._headCellMouseDownIndex=o,l!==a&&l.classList.contains(s.classes.TABLE_RESIZE_HANDLE)&&(this._resizeDescriptor={element:a,startWidth:a.offsetWidth,startX:e.pageX,width:a.offsetWidth,index:this._select?o-1:o},this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.setResizeColumnVisibility(this._tableConfiguration,o,!0)),this._adapter.addDocumentListener("mouseup",this._documentMouseUpListener)}_onMouseMove(e){if(this._resizeDescriptor){let t=this._resizeDescriptor.startWidth+(e.pageX-this._resizeDescriptor.startX);t<this._minResizeWidth&&(t=this._minResizeWidth),this._resizeDescriptor.width=t,this._resizeDescriptor.element.style.width=`${t}px`,this._adapter.addTableClass(s.classes.TABLE_RESIZING)}}_onMouseUp(e){if(this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener),this._adapter.removeTableClass(s.classes.TABLE_RESIZING),this._headCellMouseDownIndex!==void 0){if(this._resizeDescriptor){this._adapter.normalizeColumnWidths(this._tableConfiguration),this._adapter.setResizeColumnVisibility(this._tableConfiguration,this._headCellMouseDownIndex,!1);let t={index:this._resizeDescriptor.index,width:this._resizeDescriptor.width};this._adapter.emitHostEvent(s.events.COLUMN_RESIZE,t),this._resizeDescriptor=void 0}else this._tableConfiguration.tableElement.tHead.contains(e.target)&&(this._multiColumnSort?this._onMultiSort(this._headCellMouseDownIndex,e.ctrlKey):this._onSort(this._headCellMouseDownIndex));this._headCellMouseDownIndex=void 0}}_onSortableHeadCellKeydown(e){if(e.key===" "||e.key==="Enter"){let t=R(e),l=t.find(o=>o.tagName==="TR"),i=t.find(o=>o.tagName==="TH"),a=Array.from(l.cells).findIndex(o=>o===i);this._onSort(a)}}_onSort(e){let t=this._select?e-1:e,l=t>=0?this._visibleColumnConfigurations[t]:null;if(!l||!l.sortable)return;let i="ASC",a=t===this._sortedColumnIndex,o=this._sortDirection==="ASC"||this._sortDirection===void 0,r=a&&this._sortDirection==="DESC";a&&o&&(i="DESC"),r&&!l.preventUnsort&&(i="UNSET");let c={direction:i,columnIndex:t};if(this._adapter.emitHostEvent(s.events.SORT,c,!0,!0)){if(a&&this._sortDirection==="DESC"&&!l.preventUnsort){this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=-1;return}this._sortDirection=i,t===this._sortedColumnIndex?this._adapter.setSortDirection(this._adapter.getTableElement(),e,this._sortDirection):(this._sortedColumnIndex>=0&&this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=t,this._adapter.setSortedColumn(this._adapter.getTableElement(),e,this._sortDirection))}}_onMultiSort(e,t){let l=this._select?e-1:e,i=l>=0?this._visibleColumnConfigurations[l]:null;if(!i||!i.sortable)return;let a=this._multiSortManager.sortedColumns,o=this._multiSortManager.getSortColumn(l);o?this._multiSortManager.updateSortColumn(o):t?this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}):(this._multiSortManager.clearMultiSort(),this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}));let r=this._multiSortManager.sortedColumns.map(d=>h({},d));if(!this._adapter.emitHostEvent(s.events.SORT,r,!0,!0)){this._multiSortManager.setSortColumns(a);return}let m=this._multiSortManager.sortedColumns.length>1;for(let d=0;d<this._visibleColumnConfigurations.length;d++){let u=this._select?d+1:d;if(!this._multiSortManager.isSortColumn(d))this._adapter.removeColumnSort(this._adapter.getTableElement(),u),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,null);else{let C=this._multiSortManager.getSortColumn(d);C&&(this._adapter.setSortedColumn(this._adapter.getTableElement(),u,C.direction),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,C.sortOrder||null))}}}_onFilter(e,t){let l={value:e,columnIndex:t};this._adapter.emitHostEvent(s.events.FILTER,l,!0,!1)}_shiftSelectRows(e){let t=[];if(this._previouslyClickedRow){let l=this._previouslyClickedRow.index,i=e.index,a=i>=l?l:i,o=i>=l?i:l;o+=o>a?1:0,a+=a>o?1:0;let r=d=>this.selectRows(d,!1),c=this._tableRows.find(d=>d.selected&&d.data===e.data),m=this._tableRows.find(d=>{var u;return d.data===((u=this._previouslyClickedRow)==null?void 0:u.data)&&!d.selected});(!c||m)&&(r=d=>this.deselectRows(d));for(let d=a;d<o;d++)t.push(d);r(this.data.filter((d,u)=>t.includes(u)))}return t}_isIndeterminate(e){return!e&&this.getSelectedRows().length>0&&this._data.length!==this.getSelectedRows().length}_applyRoomy(){this._adapter.setRoomy(this._adapter.getTableElement(),this._roomy),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString())}_refreshTableSort(){if(this._sortedColumnIndex=this._visibleColumnConfigurations.findIndex(e=>e.initialSort),this._sortDirection=this._sortedColumnIndex>=0?this._visibleColumnConfigurations[this._sortedColumnIndex].sortDirection:void 0,this._multiColumnSort){let e=[];this._visibleColumnConfigurations.forEach((t,l)=>{typeof t.initialSort=="object"&&e.push({columnIndex:l,direction:t.initialSort.direction,sortOrder:t.initialSort.sortOrder,propertyName:t.property})}),this._multiSortManager.setSortColumns(e)}}};var E=class extends J{constructor(){super();se.define(te),this._foundation=new z(new k(this))}static get observedAttributes(){return[s.attributes.SELECT,s.attributes.MULTISELECT,s.attributes.SELECT_KEY,s.attributes.DENSE,s.attributes.ROOMY,s.attributes.FILTER,s.attributes.FIXED_HEADERS,s.attributes.LAYOUT_TYPE,s.attributes.WRAP_CONTENT,s.attributes.RESIZABLE,s.attributes.MIN_RESIZE_WIDTH,s.attributes.ALLOW_ROW_CLICK,s.attributes.MULTI_COLUMN_SORT,s.attributes.SELECT_CHECKBOX_ALIGNMENT,s.attributes.TOOLTIP_SELECT,s.attributes.TOOLTIP_SELECT_ALL]}initializedCallback(){this._foundation.initialize()}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,l,i){switch(t){case s.attributes.SELECT:this.select=L(i);break;case s.attributes.MULTISELECT:this.multiselect=L(i);break;case s.attributes.SELECT_KEY:this.selectKey=i;break;case s.attributes.DENSE:this.dense=L(i);break;case s.attributes.ROOMY:this.roomy=L(i);break;case s.attributes.FILTER:this.filter=L(i);break;case s.attributes.FIXED_HEADERS:this.fixedHeaders=L(i);break;case s.attributes.LAYOUT_TYPE:this.layoutType=i;break;case s.attributes.WRAP_CONTENT:this.wrapContent=L(i);break;case s.attributes.RESIZABLE:this.resizable=L(i);break;case s.attributes.MIN_RESIZE_WIDTH:this.minResizeWidth=G(i);break;case s.attributes.ALLOW_ROW_CLICK:this.allowRowClick=L(i);break;case s.attributes.MULTI_COLUMN_SORT:this.multiColumnSort=L(i);break;case s.attributes.SELECT_CHECKBOX_ALIGNMENT:this.selectCheckboxAlignment=this.getAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT)||"center";break;case s.attributes.TOOLTIP_SELECT:this.tooltipSelect=i;break;case s.attributes.TOOLTIP_SELECT_ALL:this.tooltipSelectAll=i;break}}hideColumn(t){this._foundation.hideColumn(t)}showColumn(t){this._foundation.showColumn(t)}isColumnHidden(t){return this._foundation.isColumnHidden(t)}getSelectedRows(){return this._foundation.getSelectedRows()}selectRow(t){this._foundation.selectRows([t],!1)}selectRows(t,l=!1){this._foundation.selectRows(t,!l)}deselectRow(t){this._foundation.deselectRows([t])}deselectRows(t){this._foundation.deselectRows(t)}clearSelections(){this._foundation.clearSelections()}render(){this._foundation.render()}expandRow(t,l){return this._foundation.expandRow(t,l)}collapseRow(t){return this._foundation.collapseRow(t)}isRowExpanded(t){return this._foundation.isRowExpanded(t)}selectRowsByIndex(t,l){typeof t=="number"?this._foundation.selectRowsByIndex([t],l):Array.isArray(t)&&this._foundation.selectRowsByIndex(t,l)}deselectRowsByIndex(t){typeof t=="number"?this._foundation.deselectRowsByIndex([t]):Array.isArray(t)&&this._foundation.deselectRowsByIndex(t)}isRowSelected(t){return this._foundation.isRowSelected(t)}};_([T()],E.prototype,"data",2),_([T()],E.prototype,"columnConfigurations",2),_([T()],E.prototype,"select",2),_([T()],E.prototype,"multiselect",2),_([T()],E.prototype,"selectKey",2),_([T()],E.prototype,"tooltipSelect",2),_([T()],E.prototype,"tooltipSelectAll",2),_([T()],E.prototype,"dense",2),_([T()],E.prototype,"roomy",2),_([T()],E.prototype,"filter",2),_([T()],E.prototype,"fixedHeaders",2),_([T()],E.prototype,"layoutType",2),_([T()],E.prototype,"wrapContent",2),_([T()],E.prototype,"resizable",2),_([T()],E.prototype,"minResizeWidth",2),_([T()],E.prototype,"allowRowClick",2),_([T()],E.prototype,"multiColumnSort",2),_([T()],E.prototype,"rowCreated",2),_([T()],E.prototype,"cellCreated",2),_([T()],E.prototype,"selectAllTemplate",2),_([T()],E.prototype,"selectCheckboxAlignment",2),E=_([j({name:s.elementName,dependencies:[ae,oe,re]})],E);function El(){q(E)}export{s as a,B as b,O as c,he as d,k as e,P as f,z as g,E as h,El as i};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as M,d as ae}from"./chunk.IQYOLMPG.js";import{a as $,b as x,c as v,d as U}from"./chunk.UV3WIHCM.js";import{a as ne,d as re}from"./chunk.GRYO5XP2.js";import{a as R}from"./chunk.LEVFMI2Q.js";import{b as te}from"./chunk.RLQB7224.js";import{a as ie,d as se,l as oe}from"./chunk.T7NWP7DB.js";import{a as X}from"./chunk.SQ3AZAHF.js";import{a as le}from"./chunk.HSADKCGS.js";import{a as T}from"./chunk.NVUMRW44.js";import{a as Q}from"./chunk.OLFOVKQG.js";import{a as j,b as ee}from"./chunk.VRSPT7WX.js";import{a as q,k as J}from"./chunk.LNTTU2GL.js";import{c as g,d as F,e as p,f as D,h as W,i as K,q as Z}from"./chunk.L4QSPQDE.js";import{b as f,c as Y,d as y,h as H,j as w,k as L,l as G,o as V}from"./chunk.J2M2MXP2.js";import{a as h,d as _}from"./chunk.M3QDAYD2.js";var I=class{constructor(e){this._key=e,this._items=[]}getItems(){return[...this._items]}count(){return this._items.length}setKey(e){this._key=e}add(e){return e instanceof Array||(e=[e]),e.forEach(t=>{this.exists(t)||this._items.push(t)}),this}remove(e){e instanceof Array||(e=[e]);for(let t=e.length-1;t>=0;t--)this.exists(e[t])&&this._items.splice(this._items.indexOf(this._getItem(e[t])),1);return this}clear(){return this._items=[],this}exists(e){return this._getItem(e)!==null}_getItem(e){return this._key?x(this._items,v(this._key,e))||null:this._items.find(t=>t===e)||null}};var S=`${ee}table`,ce={TABLE:"forge-table",TABLE_DENSE:"forge-table--dense",TABLE_ROOMY:"forge-table--roomy",TABLE_RESIZABLE:"forge-table--resizable",TABLE_RESIZING:"forge-table--resizing",TABLE_RESIZE_HANDLE:"forge-table__resize-handle",TABLE_NO_WRAP_CONTENT:"forge-table--no-wrap-content",TABLE_LAYOUT_FIXED:"forge-table--layout-fixed",TABLE_FILTER_VISIBLE:"forge-table--filter-visible",TABLE_FIXED:"forge-table--fixed",TABLE_HEAD:"forge-table-head",TABLE_HEAD_ROW:"forge-table-head__row",TABLE_HEAD_ROW_FILTER:"forge-table-head__row__filter",TABLE_HEAD_CELL:"forge-table-head__cell",TABLE_HEAD_CELL_CONTAINER:"forge-table-head__cell-container",TABLE_HEAD_CELL_SORTABLE:"forge-table-head__cell--sortable",TABLE_HEAD_CELL_SORT_ICON:"forge-table-head__cell-sort-icon",TABLE_HEAD_CELL_TEXT:"forge-table-head__cell-text",TABLE_HEAD_CELL_SORT_ICON_ACTIVE:"forge-table-head__cell-sort-icon--active",TABLE_HEAD_CELL_SORTED_ASCENDING:"forge-table-head__cell--sorted-ascending",TABLE_HEAD_CELL_SORTED_DESCENDING:"forge-table-head__cell--sorted-descending",TABLE_HEAD_CELL_SORT_ORDER:"forge-table-head__cell__sort-order",TABLE_HEAD_CELL_SORT_ORDER_HIDDEN:"forge-table-head__cell__sort-order--hidden",TABLE_BODY:"forge-table-body",TABLE_BODY_ROW:"forge-table-body__row",TABLE_BODY_ROW_SELECTED:"forge-table-body__row--selected",TABLE_BODY_ROW_CLICKABLE:"forge-table-body__row--clickable",TABLE_BODY_CELL:"forge-table-body__cell",TABLE_ROW:"forge-table-row",TABLE_ROW_EXPANDED:"forge-table-row--expanded",TABLE_ROW_EXPANDABLE_CONTENT:"forge-table-row__expandable-content",TABLE_ROW_EXPANDABLE_CONTENT_CELL:"forge-table-row__expandable-content-cell",TABLE_CELL:"forge-table-cell",TABLE_CELL_SELECT:"forge-table-cell__select",TABLE_CELL_SELECT_CHECKBOX:"forge-table-cell__select-checkbox",TABLE_CELL_SELECT_CHECKBOX_CONTAINER:"forge-table-cell__select-checkbox-container",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT:"forge-table-cell__select-checkbox-container--align-right",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT:"forge-table-cell__select-checkbox-container--align-left",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER:"forge-table-cell__select-checkbox-container--align-center",TABLE_CELL_CONTAINER:"forge-table-cell__container",TABLE_CELL_CONTAINER_TEXT:"forge-table-cell__container-text",TABLE_CELL_CENTER:"forge-table-cell--center",TABLE_CELL_RIGHT:"forge-table-cell--right",TABLE_CELL_RESIZABLE:"forge-table-cell--resizing"},be={TABLE:".forge-table",CHECKBOX_INPUT:"forge-checkbox > input[type=checkbox]:not([forge-ignore])",SELECT_ALL_TEMPLATE_CHECKBOX_INPUT:"input[type=checkbox]:not([forge-ignore])",ROW_SELECTED:`.${ce.TABLE_BODY_ROW_SELECTED}`},Ee={SELECT:"select",MULTISELECT:"multiselect",SELECT_KEY:"select-key",DENSE:"dense",ROOMY:"roomy",FILTER:"filter",FIXED_HEADERS:"fixed-headers",LAYOUT_TYPE:"layout-type",WRAP_CONTENT:"wrap-content",RESIZABLE:"resizable",MIN_RESIZE_WIDTH:"min-resize-width",ALLOW_ROW_CLICK:"allow-row-click",MULTI_COLUMN_SORT:"multi-column-sort",SELECT_CHECKBOX_ALIGNMENT:"select-checkbox-alignment",TOOLTIP_SELECT:"tooltip-select",TOOLTIP_SELECT_ALL:"tooltip-select-all",CHECKBOX_TYPE:"forge-checkbox-type",CUSTOM_CELL_TEMPLATE:"data-cell-template",CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION:"data-cell-template-stop-propagation"},_e={ROW_CLICK:`${S}-row-click`,SELECT:`${S}-select`,SELECT_DOUBLE:`${S}-select-double`,SELECT_ALL:`${S}-select-all`,SORT:`${S}-sort`,FILTER:`${S}-filter`,INITIALIZED:`${S}-initialized`,COLUMN_RESIZE:`${S}-column-resize`},Te={SELECT_ALL:"select-all",SELECT_ROW:"select-row",DEFAULT_LAYOUT_TYPE:"auto"},pe={SORT_DOWN:"arrow_downward"},Ce={DEFAULT_FILTER_DEBOUNCE_TIME:750,MIN_RESIZE_WIDTH:100,RESIZE_HOVER_DURATION:150},s={elementName:S,classes:ce,selectors:be,attributes:Ee,events:_e,strings:Te,icons:pe,numbers:Ce};var B=(l=>(l.Left="left",l.Right="right",l.Center="center",l))(B||{}),O=(l=>(l.Ascending="ASC",l.Descending="DESC",l.Unset="UNSET",l))(O||{}),he=(o=>(o.InputText="text",o.InputNumber="number",o.Select="select",o.SelectMultiple="select-multiple",o.Date="date",o.DateRange="date-range",o))(he||{});function de(n){return n&&typeof n=="object"&&"content"in n}var b=class n{static createTable(e){n._resetTable(e.tableElement);let t=n._createTableHead(e),l=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(l,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(l)),e.fixedHeaders&&n.setFixedHeaders(e),e.resizable&&n.setResizable(e),e.dense&&n.setDenseState(e.tableElement,e.dense),e.wrapContent&&n.setWrapContentState(e.tableElement,e.wrapContent),e.selectListener&&n._addSelectColumn(t,l,e.selectListener,e.selectAllListener,e.selectAllTemplate,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),(e.resizable||e.columnConfigurations.some(i=>!!i.sortable))&&(n._attachHeadRowMouseDownListener(t,e.headRowMouseDownListener),n._isMac()&&n._attachHeadRowContextMenuListener(t,e.headRowContextMenuListener)),n.setLayoutType(e),n._setTableHead(e.tableElement,t),e.filter&&n.setFilterRow(e),n._setTableBody(e.tableElement,l)}static _setTableHead(e,t){e.tHead?F(t,e.tHead):e.appendChild(t)}static _setTableBody(e,t){e.tBodies.length?F(t,e.tBodies[0]):e.appendChild(t)}static recreateTableBody(e){let t=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(t,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(t)),e.selectListener&&(n._createBodySelectColumn(t,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),n._attachRowSelectListeners(t,e.selectListener)),n._setTableBody(e.tableElement,t)}static _resetTable(e){g(e)}static _createMultisortTooltip(){let e=document.createElement("forge-tooltip");return e.textContent="Ctrl + click to sort multiple columns",e.placement="bottom",e.delay=0,e}static _createTableHead(e){let t=document.createElement("thead"),l=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW],l);let i=!1;for(let a=0;a<e.columnConfigurations.length;a++){let o=e.columnConfigurations[a],r=document.createElement("th");r.scope="col",p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],r);let c;if(o.sortable?(c=document.createElement("button"),c.type="button",c.addEventListener("keydown",e.sortableHeadCellKeydownListener)):c=document.createElement("div"),c.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),e.multiColumnSort){let d=n._createMultisortTooltip();c.appendChild(d)}if(o.align&&n._setCellAlignmentClass(c,o.align),f(o.width)){let d=K(o.width);d&&(r.style.width=d)}if(e.resizable&&o.resizable!==!1){let d=document.createElement("div");d.classList.add(s.classes.TABLE_RESIZE_HANDLE),r.appendChild(d)}f(o.headerCellStyle)&&w(o.headerCellStyle)&&(Object.assign(r.style,o.headerCellStyle),Object.assign(c.style,o.headerCellStyle));let m=document.createElement("span");if(m.classList.add(s.classes.TABLE_HEAD_CELL_TEXT),m.textContent=o.header&&typeof o.header=="string"?o.header.trim():"",o.sortable){r.classList.add(s.classes.TABLE_HEAD_CELL_SORTABLE);let d=document.createElement("span");p([s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,s.classes.TABLE_HEAD_CELL_SORT_ORDER],d);let u=document.createElement(ie.elementName);u.name=s.icons.SORT_DOWN,p([s.classes.TABLE_HEAD_CELL_SORT_ICON],u),e.multiColumnSort?typeof o.initialSort=="object"&&o.initialSort.sortOrder&&(d.textContent=o.initialSort.sortOrder.toString(),e.columnConfigurations.filter(C=>typeof C.initialSort=="object").length>1&&D(s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,d),r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,o.initialSort.direction)):e.sortedColumn===a&&!i&&!e.multiColumnSort&&(r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,e.sortDirection),i=!0),c.appendChild(u),c.appendChild(d)}typeof o.headerTemplate=="function"?Promise.resolve(o.headerTemplate(a,c,o)).then(d=>{if(d){let u=document.createElement("div");p(s.classes.TABLE_CELL_CONTAINER,u),typeof d=="string"?u.innerHTML=d:n._prepend(d,u),u.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),n._prepend(u,c)}}):n._prepend(m,c),r.appendChild(c),l.appendChild(r)}return t}static setSortDirection(e,t,l){let i=n._getHeaderCellByIndex(e,t);e.querySelectorAll("th[aria-sort]").forEach(a=>a.removeAttribute("aria-sort")),n._setColumnSortDirection(i,l)}static _setColumnSortDirection(e,t){e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),!t||t==="DESC"?(e.setAttribute("aria-sort","descending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)):(e.setAttribute("aria-sort","ascending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING))}static _createTableBody(e){let t=document.createElement("tbody");return n._getOrderedRowData(e.columnConfigurations,e.data).forEach((i,a)=>{let o=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW],o),n._populateRowCells(e,o,i,a),typeof e.rowCreatedCallback=="function"&&e.rowCreatedCallback(o,a,h({},e.data[a].data))}),t}static _populateRowCells(e,t,l,i){for(let a=0;a<l.length;a++){let o=e.columnConfigurations[a],r=t.insertCell();if(p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL],r),f(o.width)){let m=K(o.width);m&&(r.style.width=m)}let c=document.createElement("div");if(c.classList.add(s.classes.TABLE_CELL_CONTAINER),f(o.cellStyle)&&w(o.cellStyle)&&(Object.assign(r.style,o.cellStyle),Object.assign(c.style,o.cellStyle)),o.template&&typeof o.template=="function"){let m=e.data[i]?e.data[i].data:void 0;Promise.resolve(o.template(i,c,m,a)).then(d=>{let u=de(d)?d:{content:d,stopClickPropagation:o.stopCellTemplateClickPropagation};u.content&&(typeof u.content=="string"?c.innerHTML=u.content:c.appendChild(u.content),c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),u.stopClickPropagation&&c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION,""))})}else if(o.property){let m=document.createElement("span");m.classList.add(s.classes.TABLE_CELL_CONTAINER_TEXT),c.appendChild(m),o.transform&&typeof o.transform=="function"?Promise.resolve(o.transform(l[a])).then(d=>m.textContent=d):l[a]==null?m.textContent="":m.textContent=l[a].toString()}if(o.align&&n._setCellAlignmentClass(c,o.align),r.appendChild(c),f(o.columnSpan)){if(o.columnSpan==="all"){r.colSpan=l.length-a;break}else if(typeof o.columnSpan=="number"&&o.columnSpan>0){let m=o.columnSpan;o.columnSpan>l.length-a&&(m=l.length),r.colSpan=m,a=a+(m-1)}}typeof e.cellCreatedCallback=="function"&&e.cellCreatedCallback(r,i,a)}}static _setCellAlignmentClass(e,t){switch(t){case"center":e.classList.add(s.classes.TABLE_CELL_CENTER);break;case"right":e.classList.add(s.classes.TABLE_CELL_RIGHT);break}}static _getNonExpandedRows(e){return Array.from(e).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _getExpandedRows(e){return Array.from(e).filter(t=>t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _createColumnDataMap(e,t){return e.map(l=>({config:l,data:t.map(i=>{if(l.property){let a=$(i.data,l.property);return f(a)?a:null}return null})}))}static _getOrderedRowData(e,t){let l=n._createColumnDataMap(e,t),i=[];for(let a of l)for(let o=0;o<a.data.length;o++)i[o]||(i[o]=[]),i[o].push(a.data[o]);return i}static _attachRowClickListeners(e,t,l){n._getNonExpandedRows(e.rows).forEach(a=>{a.addEventListener("click",t),l&&a.addEventListener("dblclick",l)})}static _addRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.add(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _removeRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.remove(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _attachRowSelectListeners(e,t){n._getNonExpandedRows(e.rows).forEach(i=>n._attachRowSelectListener(i,t))}static _attachRowSelectListener(e,t){let l=n._getCheckboxElement(e);l==null||l.addEventListener("click",t)}static _detachRowSelectListeners(e,t){Array.from(e.rows).forEach(l=>{let i=n._getCheckboxElement(l);i==null||i.removeEventListener("click",t)})}static _detachRowClickListeners(e,t,l){Array.from(e.rows).forEach(i=>{i.removeEventListener("click",t),i.removeEventListener("dblclick",l)})}static _attachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._getCheckboxElement(l);if(!i)throw new Error("Checkbox element not found.");i.addEventListener("change",t)}static _tryAttachSelectAllTemplateListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.addEventListener("change",t)}static _detachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.removeEventListener("change",t)}static _attachHeadRowMouseDownListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("mousedown",t)}static _attachHeadRowContextMenuListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("contextmenu",t)}static _createSelectColumn(e,t,l,i,a,o,r,c,m){e&&n._createHeadSelectColumn(e,l,i,a,o,m),t&&n._createBodySelectColumn(t,o,r,c,m)}static _createHeadSelectColumn(e,t,l,i,a,o){var r;if(Array.from(e.rows).forEach(c=>{let m=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],m),c.insertBefore(m,c.cells.item(0))}),t){let c=(r=e.rows.item(e.rows.length-1))==null?void 0:r.cells.item(0);c.classList.add(s.classes.TABLE_CELL_SELECT),typeof l=="function"?n._renderSelectAllTemplate(l,e).then(()=>{typeof i=="function"&&i()}):c==null||c.appendChild(n._createCheckboxElement(!0,a,null,null,null,o))}}static _createBodySelectColumn(e,t,l,i,a){if(n._getNonExpandedRows(e.rows).forEach((r,c)=>n._addRowSelectColumn(r,t,c,l[c],i,a)),e.rows.length){let r=e.rows.item(0);r&&n._updateExpandedRowColspan(e.rows,r.cells.length)}}static _addRowSelectColumn(e,t,l,i,a,o){let r=e.insertCell(0);p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL,s.classes.TABLE_CELL_SELECT],r),r.appendChild(n._createCheckboxElement(!1,t,l,i,a,o))}static _destroySelectColumn(e,t){let l=n._getNonExpandedRows(t.rows);if(Array.from(e.rows).forEach(i=>i.removeChild(i.cells.item(0))),Array.from(l).forEach(i=>i.removeChild(i.cells.item(0))),t.rows.length){let i=t.rows.item(0);i&&n._updateExpandedRowColspan(t.rows,i.cells.length)}}static _hasSelectColumn(e,t){return[...Array.from(e.rows),...Array.from(t.rows)].some(i=>i.cells.item(0).classList.contains(s.classes.TABLE_CELL_SELECT))}static _createCheckboxElement(e,t,l,i,a,o){let r=document.createElement("div");if(r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER),t)switch(t){case"center":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER);break;case"left":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT);break;case"right":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT);break}let c=document.createElement(ne.elementName),m=document.createElement("input");m.type="checkbox";let d=a||"";i&&typeof a=="function"&&(d=a.call(null,l,i.data));let u=document.createElement("forge-tooltip");return u.position="left",e?u.textContent=o||"":u.textContent=d,m.setAttribute("aria-label","Select row"),c.appendChild(m),r.appendChild(u),r.appendChild(c),r}static _getCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT):null}static _tryGetSelectAllCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT)||t.querySelector(s.selectors.SELECT_ALL_TEMPLATE_CHECKBOX_INPUT):null}static _setSelectedCheckboxState(e,t){e&&(e.checked=t)}static _setIndeterminateCheckboxState(e,t){e&&(e.indeterminate=t)}static _setRowSelectedState(e,t){t?e.classList.contains(s.classes.TABLE_BODY_ROW_SELECTED)||e.classList.add(s.classes.TABLE_BODY_ROW_SELECTED):e.classList.remove(s.classes.TABLE_BODY_ROW_SELECTED)}static _updateExpandedRowColspan(e,t){n._getExpandedRows(e).forEach(i=>{let a=i.cells.item(0);a&&(a.colSpan=t)})}static updateSelectedState(e,t){n._setRowSelectedState(e,t);let l=n._getCheckboxElement(e);l&&n._setSelectedCheckboxState(l,t)}static getRowByIndex(e,t){return n._getNonExpandedRows(e.tBodies[0].rows)[t]}static updateSelectAllState(e,t,l){if(!e.tHead)return;let i=e.tHead.rows[e.tHead.rows.length-1],a=n._tryGetSelectAllCheckboxElement(i);a&&(n._setSelectedCheckboxState(a,t),n._setIndeterminateCheckboxState(a,!!l))}static setSelectedRows(e,t,l,i,a=!1){if(!e.tBodies.length)return;a||n.clearSelectedRows(e);let o=e.tBodies[0].rows,r=0;i.length&&Array.from(o).forEach((c,m)=>{let d=l[m];if(x(i,v(t,d))){n._setRowSelectedState(c,!0);let C=n._getCheckboxElement(c);C&&n._setSelectedCheckboxState(C,!0),r++}}),n.updateSelectAllState(e,r>0&&o.length===r)}static clearSelectedRows(e){if(!e.tBodies.length)return;n._getNonExpandedRows(e.tBodies[0].rows).forEach(l=>{n._setRowSelectedState(l,!1);let i=n._getCheckboxElement(l);i&&n._setSelectedCheckboxState(i,!1)})}static setSortedColumn(e,t,l){let i=n._getHeaderCellByIndex(e,t);n._getSortIconElementFromHeaderCell(i).classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(i,l)}static setMultiSortColumnSortNumber(e,t,l,i){let r=n._getHeaderCellByIndex(e,l).querySelector(`.${s.classes.TABLE_HEAD_CELL_CONTAINER}`).querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ORDER}`);r&&(Z(r,typeof i!="number"||!t,s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN),i&&(r.textContent=i.toString()))}static removeColumnSort(e,t){let l=n._getHeaderCellByIndex(e,t);l.removeAttribute("aria-sort"),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING);let i=n._getSortIconElementFromHeaderCell(l);i&&i.classList.contains(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)&&i.classList.remove(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)}static _getHeaderCellByIndex(e,t){if(!e.tHead)throw new Error("Table head element cannot be null.");return e.tHead.rows.item(0).cells.item(t)}static _getSortIconElementFromHeaderCell(e){return e.querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ICON}`)}static setSelectColumnVisibility(e,t,l,i,a,o,r,c,m){let d=e.tHead,u=e.tBodies[0];!d||!u||(t?n._addSelectColumn(d,u,l,i,a,o,r,c,m):n._hasSelectColumn(d,u)&&(l&&n._detachRowSelectListeners(u,l),i&&n._detachSelectAllListener(d,i),n._destroySelectColumn(d,u)))}static _addSelectColumn(e,t,l,i,a,o,r,c,m){n._createSelectColumn(e,t,!!i,a,()=>{i&&n._tryAttachSelectAllTemplateListener(e,i)},o,r,c,m),l&&n._attachRowSelectListeners(t,l),i&&!a&&n._tryAttachSelectAllTemplateListener(e,i)}static setDenseState(e,t){e.classList.contains(s.classes.TABLE_DENSE)&&e.classList.remove(s.classes.TABLE_DENSE),t&&e.classList.add(s.classes.TABLE_DENSE)}static setRoomyState(e,t){e.classList.contains(s.classes.TABLE_ROOMY)&&e.classList.remove(s.classes.TABLE_ROOMY),t&&e.classList.add(s.classes.TABLE_ROOMY)}static setResizable(e){let t=e.tableElement.tHead;e.resizable?(e.tableElement.classList.add(s.classes.TABLE_RESIZABLE),n._addResizeHandles(t,e)):(e.tableElement.classList.remove(s.classes.TABLE_RESIZABLE),n._removeResizeHandles(t,e))}static _addResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=i.indexOf(a);if(t.columnConfigurations[o].resizable!==!1){let c=document.createElement("div");c.classList.add(s.classes.TABLE_RESIZE_HANDLE),a.appendChild(c)}}}}static _removeResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=document.querySelector(`.${s.classes.TABLE_RESIZE_HANDLE}`);o&&a.removeChild(o)}}}static setWrapContentState(e,t){t?e.classList.remove(s.classes.TABLE_NO_WRAP_CONTENT):e.classList.add(s.classes.TABLE_NO_WRAP_CONTENT)}static setSelectAllVisibility(e,t,l,i,a,o){let r=e.tHead;if(!r)return;!t&&l&&n._detachSelectAllListener(r,l);let m=r.rows[r.rows.length-1].cells.item(0);t?m.childElementCount||(m.classList.add(s.classes.TABLE_CELL_SELECT),i?n._renderSelectAllTemplate(i,r).then(()=>{l&&n._tryAttachSelectAllTemplateListener(r,l)}):m.appendChild(n._createCheckboxElement(!0,a||null,null,null,null,o)),l&&!i&&n._attachSelectAllListener(r,l)):(l&&n._detachSelectAllListener(r,l),g(m))}static setFilterRow(e){if(!e.tableElement.tHead)return;let t=n._getFilterRowElement(e.tableElement.tHead),l;if(e.filter?e.tableElement.classList.add(s.classes.TABLE_FILTER_VISIBLE):e.tableElement.classList.remove(s.classes.TABLE_FILTER_VISIBLE),e.filter&&!t){if(e.columnConfigurations.every(a=>!a.filter))return;e.selectListener&&e.selectAllListener&&(l=e.tableElement.tHead.rows[e.tableElement.tHead.rows.length-1].cells.item(0));let i=n._createFilterRowElement(e);i&&l&&Array.from(l.children).forEach(a=>{var o;(o=i.cells.item(0))==null||o.appendChild(a)})}else if(!e.filter&&t){if(e.selectListener&&e.selectAllListener){l=t.cells.item(0);let i=Array.from(e.tableElement.tHead.rows).indexOf(t)-1,a=e.tableElement.tHead.rows.item(i);a&&Array.from(l.children).forEach(o=>{var r;(r=a.cells.item(0))==null||r.appendChild(o)})}W(t)}}static _createFilterRowElement(e){if(!e.tableElement.tHead)throw new Error("Table head element cannot be null.");let t=e.tableElement.tHead.insertRow();if(p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW_FILTER],t),e.selectListener){let l=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],l),t.insertBefore(l,t.cells[0]),l.classList.add(s.classes.TABLE_CELL_SELECT)}return e.columnConfigurations.forEach((l,i)=>{let a=document.createElement("th");if(p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],a),l.filter&&f(l.filterDelegate)){let o=document.createElement("div");o.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),l.align&&n._setCellAlignmentClass(o,l.align);let r=n._createFilterElement(l,i,e.filterListener);o.appendChild(r),a.appendChild(o)}t.appendChild(a)}),t}static _createFilterElement(e,t,l){let i;if(H(e.filterDelegate))i=e.filterDelegate();else if(e.filterDelegate instanceof X||e.filterDelegate instanceof le)i=e.filterDelegate;else throw new Error("Invalid filter delegate.");if(l&&i instanceof X&&H(i.onChange))if(!f(e.filterDebounceTime)||y(e.filterDebounceTime)){let a=f(e.filterDebounceTime)?e.filterDebounceTime:s.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;i.onChange(V(o=>l(o,t),a))}else i.onChange(a=>l(a,t));return i.element}static _getFilterRowElement(e){if(e)return Array.from(e.rows).find(t=>t.classList.contains(s.classes.TABLE_HEAD_ROW_FILTER))}static async expandRow(e,t,l){let i=e.tableElement.tBodies[0],o=n._getNonExpandedRows(i.rows)[t];o.classList.add(s.classes.TABLE_ROW_EXPANDED);let r=Array.from(i.rows).indexOf(o),c=i.insertRow(r+1);p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW,s.classes.TABLE_ROW_EXPANDABLE_CONTENT],c);let m=c.insertCell();m.setAttribute("colspan",o.cells.length.toString()),m.classList.add(s.classes.TABLE_ROW_EXPANDABLE_CONTENT_CELL);let d=document.createElement("div"),u=document.createElement(M.elementName);u.appendChild(d),m.appendChild(u);let C=l;if(H(l)){let me=e.data[t]?e.data[t].data:void 0,ue=l(t,d,me);try{let A=await Promise.resolve(ue);C=de(A)?A.content:A}catch(A){console.error("Failed to load row template "+A.message),C=""}}C&&n._setRowTemplate(d,C),window.requestAnimationFrame(()=>u.open=!0)}static _setRowTemplate(e,t){Y(t)?e.innerHTML=t:e.appendChild(t)}static collapseRow(e,t){if(!e.tableElement||!e.tableElement.tBodies.length||!e.tableElement.tBodies[0].rows.length)return Promise.resolve();let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t],o=Array.from(l.rows).indexOf(a);if(a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)){let r=l.rows[o+1],c=r.querySelector(M.elementName);if(c&&c.open){let m=new Promise(d=>{c.addEventListener(M.events.ANIMATION_COMPLETE,()=>{a.classList.remove(s.classes.TABLE_ROW_EXPANDED),W(r),d()},{once:!0})});return c.open=!1,m}}return Promise.resolve()}static isRowExpanded(e,t){let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t];return a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)}static setFixedHeaders(e){e.fixedHeaders?e.tableElement.classList.add(s.classes.TABLE_FIXED):e.tableElement.classList.remove(s.classes.TABLE_FIXED)}static setLayoutType(e){e.layoutType==="fixed"?e.tableElement.classList.add(s.classes.TABLE_LAYOUT_FIXED):e.tableElement.classList.remove(s.classes.TABLE_LAYOUT_FIXED)}static normalizeColumnWidths(e){let t=e.tableElement;if(t.tHead&&t.tHead.rows.length){let l=Array.from(t.tHead.rows[0].cells);for(let i of l){let a=getComputedStyle(i).width;i.style.width&&i.style.width!==a&&(i.style.width=a)}}}static setColumnResizeIndicatorVisibility(e,t,l){let i=e.tableElement;if(i.tHead&&i.tHead.rows.length){let a=Array.from(i.tHead.rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}if(i.tBodies.length){let a=Array.from(i.tBodies[0].rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}}static setRowClickListeners(e,t,l,i){let a=e.tBodies[0];a&&(t?n._attachRowClickListeners(a,l,i):n._detachRowClickListeners(a,l,i))}static setRowClickAttributes(e,t){let l=e.tBodies[0];l&&(t?n._addRowClickAttributes(l):n._removeRowClickAttributes(l))}static getOwnerDocument(e){return e.ownerDocument||document}static _prepend(e,t){let l=t.childNodes.item(0);l?t.insertBefore(e,l):t.appendChild(e)}static _isMac(){return!!(navigator&&navigator.platform&&navigator.platform.substr(0,3)==="Mac")}static _renderSelectAllTemplate(e,t){return Promise.resolve(e()).then(l=>{let i=t.rows.item(t.rows.length-1);if(!i)return;let a=i.cells.item(0);l&&a&&(typeof l=="string"?a.innerHTML=l:l instanceof HTMLElement&&a.appendChild(l),a.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""))})}};var k=class extends Q{constructor(t){super(t)}initialize(){this._tableElement||(this._tableElement=document.createElement("table"),this._tableElement.classList.add(s.classes.TABLE),this._component.children.length&&g(this._component),this._component.appendChild(this._tableElement))}getTableElement(){return this._tableElement||this.initialize(),this._tableElement}createTable(t){return b.createTable(t)}recreateTableBody(t){b.recreateTableBody(t)}setSelectedRows(t,l,i,a,o=!1){b.setSelectedRows(t,l,i,a,o)}clearSelectedRows(t){b.clearSelectedRows(t)}updateSelectedState(t,l){b.updateSelectedState(t,l)}updateSelectAllState(t,l,i){b.updateSelectAllState(t,l,i)}setSortedColumn(t,l,i){b.setSortedColumn(t,l,i)}removeColumnSort(t,l){b.removeColumnSort(t,l)}setSortDirection(t,l,i){b.setSortDirection(t,l,i)}setSelectColumnVisibility(t,l,i,a,o,r,c,m,d){b.setSelectColumnVisibility(t,l,i,a||null,o||null,r||null,c||[],m||null,d||null)}setDense(t,l){b.setDenseState(t,l)}setRoomy(t,l){b.setRoomyState(t,l)}setResizable(t){b.setResizable(t)}setSelectAllVisibility(t,l,i,a,o,r=null){b.setSelectAllVisibility(t,l,i,a,o||null,r||null)}setFilterRow(t){b.setFilterRow(t)}expandRow(t,l,i){return b.expandRow(t,l,i)}collapseRow(t,l){return b.collapseRow(t,l)}isRowExpanded(t,l){return b.isRowExpanded(t,l)}setFixedHeaders(t){b.setFixedHeaders(t)}setTableLayoutType(t){b.setLayoutType(t)}setWrapContentState(t){b.setWrapContentState(t.tableElement,t.wrapContent)}addDocumentListener(t,l){b.getOwnerDocument(this._component).addEventListener(t,l)}removeDocumentListener(t,l){b.getOwnerDocument(this._component).removeEventListener(t,l)}normalizeColumnWidths(t){b.normalizeColumnWidths(t)}setResizeColumnVisibility(t,l,i){b.setColumnResizeIndicatorVisibility(t,l,i)}addTableClass(t){p(t,this._tableElement)}removeTableClass(t){D(t,this._tableElement)}setRowClickListeners(t,l,i,a){b.setRowClickListeners(t,l,i,a)}setRowClickAttributes(t,l){b.setRowClickAttributes(t,l)}};var N=class{constructor(){this._sortedColumns=[]}get sortedColumns(){return[...this._sortedColumns.map(e=>h({},e))]}addSortColumn(e){this._sortedColumns.push(h({},e)),this._updateSortNumbers()}updateSortColumn(e){let t=this._sortedColumns.find(l=>l.columnIndex===e.columnIndex);if(t)switch(t.direction){case"ASC":this.removeSortColumn(e);break;case"DESC":t.direction="ASC";break;case"UNSET":t.direction="DESC";break}}setSortColumns(e){this._sortedColumns=[...e.map(t=>h({},t))]}removeSortColumn(e){typeof e=="number"?this._sortedColumns.splice(e,1):this._sortedColumns.splice(this._sortedColumns.indexOf(e),1),this._updateSortNumbers()}isSortColumn(e){return typeof e=="number"?this._sortedColumns.some(t=>t.columnIndex===e):this._sortedColumns.includes(e)}clearMultiSort(){this._sortedColumns=[]}getSortColumn(e){return this._sortedColumns.find(t=>t.columnIndex===e)}_updateSortNumbers(){this._sortedColumns.every(e=>typeof e.sortOrder=="number")&&this._sortedColumns.sort((e,t)=>e.sortOrder-t.sortOrder),this._sortedColumns.forEach((e,t)=>e.sortOrder=t+1)}};var P=class{constructor(e,t=!1){this.data=e;this.selected=t}};var z=class{constructor(e){this._adapter=e;this._tableRows=[];this._data=[];this._columnConfigurations=[];this._select=!1;this._multiselect=!0;this._dense=!1;this._roomy=!1;this._filter=!1;this._fixedHeaders=!1;this._layoutType=s.strings.DEFAULT_LAYOUT_TYPE;this._wrapContent=!0;this._resizable=!1;this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH;this._multiColumnSort=!1;this._selectCheckboxAlignment="center";this._isAllSelected=!1;this._sortedColumnIndex=-1;this._rendered=!1;this._allowRowClick=!1;this._multiSortManager=new N;this._rowClickListener=t=>this._onRowClick(t),this._rowDoubleClickListener=t=>this._onRowDoubleClick(t),this._selectRowListener=t=>this._onRowSelected(t),this._selectAllListener=t=>this._onSelectAll(t),this._sortableHeadCellKeydownListener=t=>this._onSortableHeadCellKeydown(t),this._headRowMouseDownListener=t=>this._onHeadRowMouseDown(t),this._headRowContextMenuListener=t=>this._onHeadRowContextMenu(t),this._documentMouseMoveListener=t=>this._onMouseMove(t),this._documentMouseUpListener=t=>this._onMouseUp(t),this._filterListener=(t,l)=>this._onFilter(t,l),this._selectionManager=new I(this._selectKey),this._hiddenColumnManager=new I}initialize(){this.connect(),this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString()),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()),this._adapter.emitHostEvent(s.events.INITIALIZED,void 0,!1)}connect(){this._adapter.initialize()}disconnect(){this._resizeDescriptor=void 0,this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener)}set data(e){Array.isArray(e)&&e.length>0?w(e[0])?this._data=e.map(t=>h({},t)):this._data=[...e]:this._data=[],this._tableRows=this._data.map(t=>new P(t,this._selectionManager.exists(t))),this._renderBody()}get data(){return this._data.map(e=>h({},e))}set columnConfigurations(e){this._columnConfigurations=e.map(t=>h({},t)),this._hiddenColumnManager.clear(),this._columnConfigurations.forEach(t=>{t.hidden&&this._hiddenColumnManager.add(t)}),this._refreshTableSort(),this.render()}get columnConfigurations(){return this._columnConfigurations.map(e=>h({},e))}get _visibleColumnConfigurations(){return this._columnConfigurations.filter(e=>!this._hiddenColumnManager.exists(e))}get _tableConfiguration(){return{tableElement:this._adapter.getTableElement(),columnConfigurations:this._visibleColumnConfigurations,data:this._tableRows,clickListener:this._allowRowClick?this._rowClickListener:null,doubleClickListener:this._allowRowClick?this._rowDoubleClickListener:null,selectListener:this._select?this._selectRowListener:null,selectAllListener:this._multiselect?this._selectAllListener:null,sortableHeadCellKeydownListener:this._sortableHeadCellKeydownListener,headRowMouseDownListener:this._headRowMouseDownListener,headRowContextMenuListener:this._headRowContextMenuListener,filterListener:this._filter?this._filterListener:null,sortDirection:this._sortDirection,sortedColumn:this._sortedColumnIndex,multiColumnSort:this._multiColumnSort,filter:this._filter,wrapContent:this._wrapContent,fixedHeaders:this._fixedHeaders,layoutType:this._layoutType,dense:this._dense,resizable:this._resizable,rowCreatedCallback:this._rowCreatedCallback,cellCreatedCallback:this._cellCreatedCallback,selectAllTemplate:this._selectAllTemplate,selectCheckboxAlignment:this._selectCheckboxAlignment,tooltipSelect:this._tooltipSelect,tooltipSelectAll:this._tooltipSelectAll}}set select(e){this._select!==e&&(this._select=e,this._adapter.setSelectColumnVisibility(this._adapter.getTableElement(),this._select,this._selectRowListener,this._multiselect?this._selectAllListener:void 0,this._multiselect?this._selectAllTemplate:null,this._selectCheckboxAlignment,this._tableRows,this._tooltipSelect,this._tooltipSelectAll),this._updateSelections(!0),this._select?this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()):this._adapter.removeHostAttribute(s.attributes.SELECT))}get select(){return this._select}set multiselect(e){this._multiselect!==e&&(this._multiselect=e,this._select&&(this._adapter.setSelectAllVisibility(this._adapter.getTableElement(),this._multiselect,this._multiselect?this._selectAllListener:null,this._multiselect?this.selectAllTemplate:null,this._selectCheckboxAlignment,this._tooltipSelectAll),this._updateSelections(!0)),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()))}get multiselect(){return this._multiselect}get selectKey(){return Array.isArray(this._selectKey)?[...this._selectKey]:this._selectKey}set selectKey(e){this._originalSelectKey!==e&&(Array.isArray(e)?(this._originalSelectKey=[...e],this._selectKey=[...e]):(this._originalSelectKey=e,this._selectKey=[e]),this._selectionManager.setKey(this._selectKey),this._updateSelections(!1))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.setDense(this._adapter.getTableElement(),this._dense),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()))}get roomy(){return this._roomy}set roomy(e){e!==this._roomy&&(this._roomy=e,this._applyRoomy())}set filter(e){this._filter!==e&&(this._filter=e,this._adapter.setFilterRow(this._tableConfiguration),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()))}get filter(){return this._filter}set fixedHeaders(e){this._fixedHeaders!==e&&(this._fixedHeaders=e,this._adapter.setFixedHeaders(this._tableConfiguration))}get fixedHeaders(){return this._fixedHeaders}get layoutType(){return this._layoutType}set layoutType(e){this._layoutType!==e&&(this._layoutType=e,this._adapter.setTableLayoutType(this._tableConfiguration))}get wrapContent(){return this._wrapContent}set wrapContent(e){this._wrapContent!==e&&(this._wrapContent=e,this._adapter.setWrapContentState(this._tableConfiguration))}get resizable(){return this._resizable}set resizable(e){this._resizable!==e&&(this._resizable=e,this._adapter.setResizable(this._tableConfiguration))}get minResizeWidth(){return this._minResizeWidth}set minResizeWidth(e){this._minResizeWidth!==e&&(this._minResizeWidth=e,y(this._minResizeWidth)?this._minResizeWidth<0&&(this._minResizeWidth=0):this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH)}get allowRowClick(){return this._allowRowClick}set allowRowClick(e){this._allowRowClick!==e&&(this._allowRowClick=e,this._rendered&&(this._adapter.setRowClickListeners(this._adapter.getTableElement(),this._allowRowClick,this._rowClickListener,this._rowDoubleClickListener),this._adapter.setRowClickAttributes(this._adapter.getTableElement(),this._allowRowClick)))}get multiColumnSort(){return this._multiColumnSort}set multiColumnSort(e){e!==this._multiColumnSort&&(this._multiColumnSort=e,this._refreshTableSort(),this.render())}get selectCheckboxAlignment(){return this._selectCheckboxAlignment}set selectCheckboxAlignment(e){e!==this._selectCheckboxAlignment&&(this._selectCheckboxAlignment=e,this._adapter.setHostAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT,e),this.render())}get tooltipSelect(){return this._tooltipSelect}set tooltipSelect(e){e!==this._tooltipSelect&&(this._tooltipSelect=e,typeof e=="string"&&this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT,e),this.render())}get tooltipSelectAll(){return this._tooltipSelectAll}set tooltipSelectAll(e){e!==this._tooltipSelectAll&&(this._tooltipSelectAll=e,this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT_ALL,e),this.render())}get selectAllTemplate(){return this._selectAllTemplate}set selectAllTemplate(e){e!==this._selectAllTemplate&&(this._selectAllTemplate=e,this.render())}get rowCreated(){return this._rowCreatedCallback}set rowCreated(e){this._rowCreatedCallback=e}get cellCreated(){return this._cellCreatedCallback}set cellCreated(e){this._cellCreatedCallback=e}isRowSelected(e){let t=v(Array.isArray(this._selectKey)?this._selectKey:[this._selectKey],e);return this.selectKey?!!this._selectionManager.getItems().find(l=>U(l,t)):this._selectionManager.exists(e)}getSelectedRows(){return this._selectionManager.getItems()}selectRows(e,t){if(!this._selectKey)throw new Error("You must set a selectKey to select rows.");(!this._multiselect||t)&&this.clearSelections(),e&&e.length&&(this._selectionManager.add(e),this._updateSelections(!t))}deselectRows(e){e&&e.length&&(this._selectionManager.remove(e),this._updateSelections(!1))}clearSelections(){let e=this._adapter.getTableElement();this._selectionManager.clear(),this._tableRows.forEach(t=>t.selected=!1),this._isAllSelected=!1,this._adapter.clearSelectedRows(e),this._select&&this._multiselect&&this._adapter.updateSelectAllState(e,!1)}hideColumn(e){let t=this._columnConfigurations[e];this._sortedColumnIndex===e&&(this._sortedColumnIndex=-1),this._hiddenColumnManager.exists(t)||(this._hiddenColumnManager.add(t),this.render())}showColumn(e){let t=this._columnConfigurations[e];this._hiddenColumnManager.exists(t)&&(this._hiddenColumnManager.remove(t),this.render())}isColumnHidden(e){let t=this._columnConfigurations[e];return!!t&&this._hiddenColumnManager.exists(t)}render(){this._adapter.createTable(this._tableConfiguration),this._renderSelections(),this._rendered=!0}_renderBody(){this._rendered&&(this._adapter.recreateTableBody(this._tableConfiguration),this._renderSelections())}_renderSelections(){this.select&&(this._isAllSelected=this._getSelectAllState(),this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)));let e=this._selectionManager.getItems();e.length&&this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,e,!1)}expandRow(e,t){if(!this._rendered)throw new Error("Cannot expand a row before the table has rendered.");if(e<0||e>this._tableRows.length)throw new Error(`Invalid row index: ${e}.`);return this._adapter.expandRow(this._tableConfiguration,e,t)}collapseRow(e){return!this._rendered||e<0||e>this._tableRows.length?Promise.resolve():this._adapter.collapseRow(this._tableConfiguration,e)}isRowExpanded(e){return this._adapter.isRowExpanded(this._tableConfiguration,e)}selectRowsByIndex(e,t){let l=e.map(i=>this._data[i]).filter(i=>!!i);this.selectRows(l,!t)}deselectRowsByIndex(e){let t=e.map(l=>this._data[l]).filter(l=>!!l);this.deselectRows(t)}_getSelectAllState(){return this._tableRows.length>0&&this._tableRows.every(e=>e.selected)}_updateSelections(e){this._tableRows.forEach(l=>l.selected=this._selectionManager.exists(l.data));let t=this._getSelectAllState();this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,this._selectionManager.getItems(),e),(t!==this._isAllSelected||this._isIndeterminate(t))&&(this._isAllSelected=t,this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)))}_onRowClick(e){if(e.stopImmediatePropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let i=R(e).filter(m=>m.nodeType===1).find(m=>m.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE));if(i&&i.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION))return;let{index:o,data:r}=this._getSelectedRowFromEvent(e),c={index:o,data:r};this._adapter.emitHostEvent(s.events.ROW_CLICK,c,!0,!1)}_onRowDoubleClick(e){if(e.stopPropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let t=this._getSelectedRowFromEvent(e),l={index:t.index,data:t.data};this._adapter.emitHostEvent(s.events.SELECT_DOUBLE,l,!0,!1)}_onRowSelected(e){let t=this._getSelectedRowFromEvent(e);this._multiselect||this._tableRows.filter(r=>r.selected).forEach(r=>{U(r.data,v(this._selectKey,t.data))||this.deselectRows([r.data])});let l=!this._selectionManager.exists(t.data);this._adapter.updateSelectedState(t.rowElement,l),l?this._selectionManager.add(t.data):this._selectionManager.remove(t.data),this._tableRows[t.index].selected=l;let i=[t.index],a=!1;if(this._multiselect){if(e.shiftKey&&this._previouslyClickedRow&&(i=this._shiftSelectRows(t),i.includes(this._previouslyClickedRow.index))){let r=i.indexOf(this._previouslyClickedRow.index);i.splice(r,1)}a=this._getSelectAllState(),this._adapter.updateSelectAllState(this._adapter.getTableElement(),a,this._isIndeterminate(a))}for(let o of i){let r=this._tableRows[o].data,m={selected:this._selectionManager.exists(r),index:o,data:r};this._adapter.emitHostEvent(s.events.SELECT,m,!0,!1)}if(this._isAllSelected!==a){this._isAllSelected=a;let o={status:this._isAllSelected,count:this._tableRows.filter(r=>r.selected).length,data:[...this._data],targetType:"row"};this._adapter.emitHostEvent(s.events.SELECT_ALL,o,!0,!1)}this._previouslyClickedRow=h({},t)}_getSelectedRowFromEvent(e){let l=R(e).find(r=>r.tagName==="TR"),i=l.parentElement,a=this._getNonExpandedRows(i).findIndex(r=>r===l),o=this._tableRows[a].data;return{rowElement:l,index:a,data:o}}_getNonExpandedRows(e){return Array.from(e.rows).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}_onSelectAll(e){e.stopPropagation(),this._isAllSelected=!this._isAllSelected;let t=this._adapter.getTableElement();this._adapter.updateSelectAllState(t,this._isAllSelected),this._tableRows.forEach((i,a)=>{i.selected=this._isAllSelected,this._isAllSelected?this._selectionManager.add(i.data):this._selectionManager.remove(i.data);let o=b.getRowByIndex(t,a);o&&this._adapter.updateSelectedState(o,this._isAllSelected)});let l={status:this._isAllSelected,count:this._tableRows.filter(i=>i.selected).length,data:[...this._data],targetType:"select-all"};this._adapter.emitHostEvent(s.events.SELECT_ALL,l,!0,!1)}_onHeadRowContextMenu(e){e.ctrlKey&&e.preventDefault()}_onHeadRowMouseDown(e){if(e.button!==0)return;let t=R(e),l=e.target,i=t.find(r=>r.tagName==="TR"),a=t.find(r=>r.tagName==="TH"),o=Array.from(i.cells).findIndex(r=>r===a);this._headCellMouseDownIndex=o,l!==a&&l.classList.contains(s.classes.TABLE_RESIZE_HANDLE)&&(this._resizeDescriptor={element:a,startWidth:a.offsetWidth,startX:e.pageX,width:a.offsetWidth,index:this._select?o-1:o},this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.setResizeColumnVisibility(this._tableConfiguration,o,!0)),this._adapter.addDocumentListener("mouseup",this._documentMouseUpListener)}_onMouseMove(e){if(this._resizeDescriptor){let t=this._resizeDescriptor.startWidth+(e.pageX-this._resizeDescriptor.startX);t<this._minResizeWidth&&(t=this._minResizeWidth),this._resizeDescriptor.width=t,this._resizeDescriptor.element.style.width=`${t}px`,this._adapter.addTableClass(s.classes.TABLE_RESIZING)}}_onMouseUp(e){if(this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener),this._adapter.removeTableClass(s.classes.TABLE_RESIZING),this._headCellMouseDownIndex!==void 0){if(this._resizeDescriptor){this._adapter.normalizeColumnWidths(this._tableConfiguration),this._adapter.setResizeColumnVisibility(this._tableConfiguration,this._headCellMouseDownIndex,!1);let t={index:this._resizeDescriptor.index,width:this._resizeDescriptor.width};this._adapter.emitHostEvent(s.events.COLUMN_RESIZE,t),this._resizeDescriptor=void 0}else this._tableConfiguration.tableElement.tHead.contains(e.target)&&(this._multiColumnSort?this._onMultiSort(this._headCellMouseDownIndex,e.ctrlKey):this._onSort(this._headCellMouseDownIndex));this._headCellMouseDownIndex=void 0}}_onSortableHeadCellKeydown(e){if(e.key===" "||e.key==="Enter"){let t=R(e),l=t.find(o=>o.tagName==="TR"),i=t.find(o=>o.tagName==="TH"),a=Array.from(l.cells).findIndex(o=>o===i);this._onSort(a)}}_onSort(e){let t=this._select?e-1:e,l=t>=0?this._visibleColumnConfigurations[t]:null;if(!l||!l.sortable)return;let i="ASC",a=t===this._sortedColumnIndex,o=this._sortDirection==="ASC"||this._sortDirection===void 0,r=a&&this._sortDirection==="DESC";a&&o&&(i="DESC"),r&&!l.preventUnsort&&(i="UNSET");let c={direction:i,columnIndex:t};if(this._adapter.emitHostEvent(s.events.SORT,c,!0,!0)){if(a&&this._sortDirection==="DESC"&&!l.preventUnsort){this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=-1;return}this._sortDirection=i,t===this._sortedColumnIndex?this._adapter.setSortDirection(this._adapter.getTableElement(),e,this._sortDirection):(this._sortedColumnIndex>=0&&this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=t,this._adapter.setSortedColumn(this._adapter.getTableElement(),e,this._sortDirection))}}_onMultiSort(e,t){let l=this._select?e-1:e,i=l>=0?this._visibleColumnConfigurations[l]:null;if(!i||!i.sortable)return;let a=this._multiSortManager.sortedColumns,o=this._multiSortManager.getSortColumn(l);o?this._multiSortManager.updateSortColumn(o):t?this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}):(this._multiSortManager.clearMultiSort(),this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}));let r=this._multiSortManager.sortedColumns.map(d=>h({},d));if(!this._adapter.emitHostEvent(s.events.SORT,r,!0,!0)){this._multiSortManager.setSortColumns(a);return}let m=this._multiSortManager.sortedColumns.length>1;for(let d=0;d<this._visibleColumnConfigurations.length;d++){let u=this._select?d+1:d;if(!this._multiSortManager.isSortColumn(d))this._adapter.removeColumnSort(this._adapter.getTableElement(),u),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,null);else{let C=this._multiSortManager.getSortColumn(d);C&&(this._adapter.setSortedColumn(this._adapter.getTableElement(),u,C.direction),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,C.sortOrder||null))}}}_onFilter(e,t){let l={value:e,columnIndex:t};this._adapter.emitHostEvent(s.events.FILTER,l,!0,!1)}_shiftSelectRows(e){let t=[];if(this._previouslyClickedRow){let l=this._previouslyClickedRow.index,i=e.index,a=i>=l?l:i,o=i>=l?i:l;o+=o>a?1:0,a+=a>o?1:0;let r=d=>this.selectRows(d,!1),c=this._tableRows.find(d=>d.selected&&d.data===e.data),m=this._tableRows.find(d=>{var u;return d.data===((u=this._previouslyClickedRow)==null?void 0:u.data)&&!d.selected});(!c||m)&&(r=d=>this.deselectRows(d));for(let d=a;d<o;d++)t.push(d);r(this.data.filter((d,u)=>t.includes(u)))}return t}_isIndeterminate(e){return!e&&this.getSelectedRows().length>0&&this._data.length!==this.getSelectedRows().length}_applyRoomy(){this._adapter.setRoomy(this._adapter.getTableElement(),this._roomy),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString())}_refreshTableSort(){if(this._sortedColumnIndex=this._visibleColumnConfigurations.findIndex(e=>e.initialSort),this._sortDirection=this._sortedColumnIndex>=0?this._visibleColumnConfigurations[this._sortedColumnIndex].sortDirection:void 0,this._multiColumnSort){let e=[];this._visibleColumnConfigurations.forEach((t,l)=>{typeof t.initialSort=="object"&&e.push({columnIndex:l,direction:t.initialSort.direction,sortOrder:t.initialSort.sortOrder,propertyName:t.property})}),this._multiSortManager.setSortColumns(e)}}};var E=class extends J{constructor(){super();se.define(te),this._foundation=new z(new k(this))}static get observedAttributes(){return[s.attributes.SELECT,s.attributes.MULTISELECT,s.attributes.SELECT_KEY,s.attributes.DENSE,s.attributes.ROOMY,s.attributes.FILTER,s.attributes.FIXED_HEADERS,s.attributes.LAYOUT_TYPE,s.attributes.WRAP_CONTENT,s.attributes.RESIZABLE,s.attributes.MIN_RESIZE_WIDTH,s.attributes.ALLOW_ROW_CLICK,s.attributes.MULTI_COLUMN_SORT,s.attributes.SELECT_CHECKBOX_ALIGNMENT,s.attributes.TOOLTIP_SELECT,s.attributes.TOOLTIP_SELECT_ALL]}initializedCallback(){this._foundation.initialize()}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,l,i){switch(t){case s.attributes.SELECT:this.select=L(i);break;case s.attributes.MULTISELECT:this.multiselect=L(i);break;case s.attributes.SELECT_KEY:this.selectKey=i;break;case s.attributes.DENSE:this.dense=L(i);break;case s.attributes.ROOMY:this.roomy=L(i);break;case s.attributes.FILTER:this.filter=L(i);break;case s.attributes.FIXED_HEADERS:this.fixedHeaders=L(i);break;case s.attributes.LAYOUT_TYPE:this.layoutType=i;break;case s.attributes.WRAP_CONTENT:this.wrapContent=L(i);break;case s.attributes.RESIZABLE:this.resizable=L(i);break;case s.attributes.MIN_RESIZE_WIDTH:this.minResizeWidth=G(i);break;case s.attributes.ALLOW_ROW_CLICK:this.allowRowClick=L(i);break;case s.attributes.MULTI_COLUMN_SORT:this.multiColumnSort=L(i);break;case s.attributes.SELECT_CHECKBOX_ALIGNMENT:this.selectCheckboxAlignment=this.getAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT)||"center";break;case s.attributes.TOOLTIP_SELECT:this.tooltipSelect=i;break;case s.attributes.TOOLTIP_SELECT_ALL:this.tooltipSelectAll=i;break}}hideColumn(t){this._foundation.hideColumn(t)}showColumn(t){this._foundation.showColumn(t)}isColumnHidden(t){return this._foundation.isColumnHidden(t)}getSelectedRows(){return this._foundation.getSelectedRows()}selectRow(t){this._foundation.selectRows([t],!1)}selectRows(t,l=!1){this._foundation.selectRows(t,!l)}deselectRow(t){this._foundation.deselectRows([t])}deselectRows(t){this._foundation.deselectRows(t)}clearSelections(){this._foundation.clearSelections()}render(){this._foundation.render()}expandRow(t,l){return this._foundation.expandRow(t,l)}collapseRow(t){return this._foundation.collapseRow(t)}isRowExpanded(t){return this._foundation.isRowExpanded(t)}selectRowsByIndex(t,l){typeof t=="number"?this._foundation.selectRowsByIndex([t],l):Array.isArray(t)&&this._foundation.selectRowsByIndex(t,l)}deselectRowsByIndex(t){typeof t=="number"?this._foundation.deselectRowsByIndex([t]):Array.isArray(t)&&this._foundation.deselectRowsByIndex(t)}isRowSelected(t){return this._foundation.isRowSelected(t)}};_([T()],E.prototype,"data",2),_([T()],E.prototype,"columnConfigurations",2),_([T()],E.prototype,"select",2),_([T()],E.prototype,"multiselect",2),_([T()],E.prototype,"selectKey",2),_([T()],E.prototype,"tooltipSelect",2),_([T()],E.prototype,"tooltipSelectAll",2),_([T()],E.prototype,"dense",2),_([T()],E.prototype,"roomy",2),_([T()],E.prototype,"filter",2),_([T()],E.prototype,"fixedHeaders",2),_([T()],E.prototype,"layoutType",2),_([T()],E.prototype,"wrapContent",2),_([T()],E.prototype,"resizable",2),_([T()],E.prototype,"minResizeWidth",2),_([T()],E.prototype,"allowRowClick",2),_([T()],E.prototype,"multiColumnSort",2),_([T()],E.prototype,"rowCreated",2),_([T()],E.prototype,"cellCreated",2),_([T()],E.prototype,"selectAllTemplate",2),_([T()],E.prototype,"selectCheckboxAlignment",2),E=_([j({name:s.elementName,dependencies:[ae,oe,re]})],E);function El(){q(E)}export{s as a,B as b,O as c,he as d,k as e,P as f,z as g,E as h,El as i};
|
|
7
|
+
//# sourceMappingURL=chunk.HD2SLIL2.js.map
|