@tylertech/forge 2.11.0 → 2.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +220 -4
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/help-button/index.js +1 -1
- package/dist/esm/app-bar/index.js +1 -1
- package/dist/esm/app-bar/menu-button/index.js +1 -1
- package/dist/esm/app-bar/notification-button/index.js +1 -1
- package/dist/esm/app-bar/profile-button/index.js +1 -1
- package/dist/esm/app-bar/search/index.js +1 -1
- package/dist/esm/autocomplete/index.js +1 -1
- package/dist/esm/banner/index.js +1 -1
- package/dist/esm/bottom-sheet/index.js +1 -1
- package/dist/esm/busy-indicator/index.js +1 -1
- package/dist/esm/button/index.js +1 -1
- package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
- package/dist/esm/calendar/calendar-menu/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chips/chip/index.js +1 -1
- package/dist/esm/chips/chip-set/index.js +1 -1
- package/dist/esm/chips/index.js +1 -1
- package/dist/esm/chunks/{chunk.I33ZJKOX.js → chunk.2SAHWDGJ.js} +2 -2
- package/dist/esm/chunks/{chunk.I33ZJKOX.js.map → chunk.2SAHWDGJ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.5SRA2RH3.js → chunk.3LZEQWAL.js} +2 -2
- package/dist/esm/chunks/{chunk.5SRA2RH3.js.map → chunk.3LZEQWAL.js.map} +0 -0
- package/dist/esm/chunks/chunk.3UMBCR4P.js +7 -0
- package/dist/esm/chunks/chunk.3UMBCR4P.js.map +7 -0
- package/dist/esm/chunks/{chunk.DGQAYNAF.js → chunk.4KBQ5AJJ.js} +2 -2
- package/dist/esm/chunks/{chunk.DGQAYNAF.js.map → chunk.4KBQ5AJJ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.NJHQA266.js → chunk.4T5TGQFG.js} +2 -2
- package/dist/esm/chunks/{chunk.NJHQA266.js.map → chunk.4T5TGQFG.js.map} +0 -0
- package/dist/esm/chunks/{chunk.EM3OQRZP.js → chunk.5D6UB4DL.js} +2 -2
- package/dist/esm/chunks/{chunk.EM3OQRZP.js.map → chunk.5D6UB4DL.js.map} +0 -0
- package/dist/esm/chunks/{chunk.55JE4FLS.js → chunk.5PQTSZ7G.js} +2 -2
- package/dist/esm/chunks/{chunk.55JE4FLS.js.map → chunk.5PQTSZ7G.js.map} +0 -0
- package/dist/esm/chunks/{chunk.KLHXGSZU.js → chunk.7O7V3N4A.js} +2 -2
- package/dist/esm/chunks/{chunk.KLHXGSZU.js.map → chunk.7O7V3N4A.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WAEWHBHE.js → chunk.APGFXXJ7.js} +2 -2
- package/dist/esm/chunks/{chunk.WAEWHBHE.js.map → chunk.APGFXXJ7.js.map} +0 -0
- package/dist/esm/chunks/{chunk.5GFDXNIU.js → chunk.BFNAQQCU.js} +2 -2
- package/dist/esm/chunks/{chunk.5GFDXNIU.js.map → chunk.BFNAQQCU.js.map} +0 -0
- package/dist/esm/chunks/{chunk.G5BCWBD5.js → chunk.BOENNFXE.js} +2 -2
- package/dist/esm/chunks/{chunk.G5BCWBD5.js.map → chunk.BOENNFXE.js.map} +0 -0
- package/dist/esm/chunks/{chunk.24BSMZM3.js → chunk.CYJBOJMX.js} +2 -2
- package/dist/esm/chunks/{chunk.24BSMZM3.js.map → chunk.CYJBOJMX.js.map} +0 -0
- package/dist/esm/chunks/{chunk.XURVHDKR.js → chunk.F3W3XMGT.js} +2 -2
- package/dist/esm/chunks/{chunk.XURVHDKR.js.map → chunk.F3W3XMGT.js.map} +0 -0
- package/dist/esm/chunks/{chunk.RS5NH2NG.js → chunk.FPV4XEUK.js} +2 -2
- package/dist/esm/chunks/{chunk.RS5NH2NG.js.map → chunk.FPV4XEUK.js.map} +0 -0
- package/dist/esm/chunks/{chunk.VEVOKTUX.js → chunk.G5Q2CUUE.js} +2 -2
- package/dist/esm/chunks/{chunk.VEVOKTUX.js.map → chunk.G5Q2CUUE.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WZRXUTYC.js → chunk.G77PXLAU.js} +2 -2
- package/dist/esm/chunks/{chunk.WZRXUTYC.js.map → chunk.G77PXLAU.js.map} +0 -0
- package/dist/esm/chunks/{chunk.2A3CKLXJ.js → chunk.I2YRKTG7.js} +2 -2
- package/dist/esm/chunks/{chunk.2A3CKLXJ.js.map → chunk.I2YRKTG7.js.map} +0 -0
- package/dist/esm/chunks/{chunk.AFZB3MG5.js → chunk.IFZXG3LI.js} +2 -2
- package/dist/esm/chunks/{chunk.AFZB3MG5.js.map → chunk.IFZXG3LI.js.map} +0 -0
- package/dist/esm/chunks/{chunk.23VA56ZY.js → chunk.J3NHIF6W.js} +2 -2
- package/dist/esm/chunks/{chunk.23VA56ZY.js.map → chunk.J3NHIF6W.js.map} +0 -0
- package/dist/esm/chunks/{chunk.5HUDHTAK.js → chunk.JB2N65SR.js} +2 -2
- package/dist/esm/chunks/{chunk.5HUDHTAK.js.map → chunk.JB2N65SR.js.map} +0 -0
- package/dist/esm/chunks/{chunk.OHCHNL3V.js → chunk.JNOCXQVB.js} +2 -2
- package/dist/esm/chunks/{chunk.OHCHNL3V.js.map → chunk.JNOCXQVB.js.map} +2 -2
- package/dist/esm/chunks/{chunk.77WNSJ3T.js → chunk.K32ME33N.js} +2 -2
- package/dist/esm/chunks/{chunk.77WNSJ3T.js.map → chunk.K32ME33N.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WGE5R5JK.js → chunk.KGW63HJX.js} +2 -2
- package/dist/esm/chunks/{chunk.WGE5R5JK.js.map → chunk.KGW63HJX.js.map} +0 -0
- package/dist/esm/chunks/chunk.KYCC3C3M.js +7 -0
- package/dist/esm/chunks/{chunk.AABG6MSC.js.map → chunk.KYCC3C3M.js.map} +2 -2
- package/dist/esm/chunks/{chunk.NEGJYSPB.js → chunk.LLHA3SQR.js} +2 -2
- package/dist/esm/chunks/{chunk.NEGJYSPB.js.map → chunk.LLHA3SQR.js.map} +0 -0
- package/dist/esm/chunks/chunk.MUY647D6.js +7 -0
- package/dist/esm/chunks/chunk.MUY647D6.js.map +7 -0
- package/dist/esm/chunks/chunk.NTFA7FCB.js +7 -0
- package/dist/esm/chunks/chunk.NTFA7FCB.js.map +7 -0
- package/dist/esm/chunks/{chunk.JXQZMASB.js → chunk.OAKTW64X.js} +2 -2
- package/dist/esm/chunks/{chunk.JXQZMASB.js.map → chunk.OAKTW64X.js.map} +0 -0
- package/dist/esm/chunks/{chunk.CSOY4C7A.js → chunk.OG2BI3UW.js} +2 -2
- package/dist/esm/chunks/{chunk.CSOY4C7A.js.map → chunk.OG2BI3UW.js.map} +2 -2
- package/dist/esm/chunks/{chunk.AHOQXJRN.js → chunk.P6B3UWJ5.js} +2 -2
- package/dist/esm/chunks/{chunk.AHOQXJRN.js.map → chunk.P6B3UWJ5.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ESW45SN4.js → chunk.PFD2SVJ4.js} +2 -2
- package/dist/esm/chunks/{chunk.ESW45SN4.js.map → chunk.PFD2SVJ4.js.map} +0 -0
- package/dist/esm/chunks/{chunk.W7UTHKBF.js → chunk.Q6L7T6OJ.js} +2 -2
- package/dist/esm/chunks/{chunk.W7UTHKBF.js.map → chunk.Q6L7T6OJ.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WKKNDQYZ.js → chunk.RKKJB3EE.js} +2 -2
- package/dist/esm/chunks/{chunk.WKKNDQYZ.js.map → chunk.RKKJB3EE.js.map} +0 -0
- package/dist/esm/chunks/chunk.SALQP6J3.js +7 -0
- package/dist/esm/chunks/{chunk.JB6U32SJ.js.map → chunk.SALQP6J3.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DJSOBAWA.js → chunk.SJSLC6XF.js} +2 -2
- package/dist/esm/chunks/{chunk.DJSOBAWA.js.map → chunk.SJSLC6XF.js.map} +0 -0
- package/dist/esm/chunks/chunk.SZL74RTY.js +7 -0
- package/dist/esm/chunks/{chunk.SFFYXKJW.js.map → chunk.SZL74RTY.js.map} +2 -2
- package/dist/esm/chunks/chunk.TCCPCDJK.js +7 -0
- package/dist/esm/chunks/chunk.TCCPCDJK.js.map +7 -0
- package/dist/esm/chunks/{chunk.WMO47F6Z.js → chunk.TLHI6K2R.js} +2 -2
- package/dist/esm/chunks/{chunk.WMO47F6Z.js.map → chunk.TLHI6K2R.js.map} +0 -0
- package/dist/esm/chunks/{chunk.6BKOGBE6.js → chunk.TR64DV3G.js} +2 -2
- package/dist/esm/chunks/{chunk.6BKOGBE6.js.map → chunk.TR64DV3G.js.map} +0 -0
- package/dist/esm/chunks/{chunk.MTMZFAWU.js → chunk.V7P3QPNM.js} +2 -2
- package/dist/esm/chunks/{chunk.MTMZFAWU.js.map → chunk.V7P3QPNM.js.map} +0 -0
- package/dist/esm/chunks/{chunk.DFUNN5IP.js → chunk.VH3PVW2V.js} +2 -2
- package/dist/esm/chunks/{chunk.DFUNN5IP.js.map → chunk.VH3PVW2V.js.map} +0 -0
- package/dist/esm/chunks/chunk.WDIL7ZO7.js +12 -0
- package/dist/esm/chunks/{chunk.52JUDHTJ.js.map → chunk.WDIL7ZO7.js.map} +0 -0
- package/dist/esm/chunks/{chunk.YFIDBZ7V.js → chunk.WUIIZZQD.js} +2 -2
- package/dist/esm/chunks/{chunk.YFIDBZ7V.js.map → chunk.WUIIZZQD.js.map} +0 -0
- package/dist/esm/chunks/{chunk.SNGELGOD.js → chunk.WV45FGTW.js} +2 -2
- package/dist/esm/chunks/{chunk.SNGELGOD.js.map → chunk.WV45FGTW.js.map} +0 -0
- package/dist/esm/chunks/{chunk.RZL6S3K3.js → chunk.Y6MPWPZU.js} +2 -2
- package/dist/esm/chunks/{chunk.RZL6S3K3.js.map → chunk.Y6MPWPZU.js.map} +0 -0
- package/dist/esm/chunks/{chunk.7TQYFMM4.js → chunk.YAJT3P6V.js} +2 -2
- package/dist/esm/chunks/{chunk.7TQYFMM4.js.map → chunk.YAJT3P6V.js.map} +0 -0
- package/dist/esm/chunks/{chunk.57XBS3DF.js → chunk.YSE5EMB3.js} +2 -2
- package/dist/esm/chunks/{chunk.57XBS3DF.js.map → chunk.YSE5EMB3.js.map} +0 -0
- package/dist/esm/chunks/{chunk.KZHMDZVS.js → chunk.YWKKZLZ2.js} +2 -2
- package/dist/esm/chunks/{chunk.KZHMDZVS.js.map → chunk.YWKKZLZ2.js.map} +0 -0
- package/dist/esm/chunks/{chunk.7WWP6WI6.js → chunk.Z5P6EA5L.js} +2 -2
- package/dist/esm/chunks/{chunk.7WWP6WI6.js.map → chunk.Z5P6EA5L.js.map} +0 -0
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/dialog/index.js +1 -1
- package/dist/esm/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/slider/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/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/esm/autocomplete/autocomplete-adapter.d.ts +2 -0
- package/esm/autocomplete/autocomplete-adapter.js +10 -0
- package/esm/autocomplete/autocomplete-foundation.d.ts +1 -0
- package/esm/autocomplete/autocomplete-foundation.js +9 -0
- package/esm/core/utils/utils.d.ts +6 -0
- package/esm/core/utils/utils.js +10 -0
- package/esm/expansion-panel/expansion-panel-foundation.js +2 -2
- package/esm/menu/menu-foundation.d.ts +1 -0
- package/esm/menu/menu-foundation.js +6 -3
- package/esm/popup/popup-adapter.js +5 -0
- package/esm/select/core/base-select-adapter.d.ts +2 -0
- package/esm/select/core/base-select-adapter.js +17 -7
- package/esm/select/core/base-select-foundation.d.ts +1 -0
- package/esm/select/core/base-select-foundation.js +7 -0
- package/esm/split-view/split-view/split-view-adapter.d.ts +4 -0
- package/esm/split-view/split-view/split-view-adapter.js +7 -1
- package/esm/split-view/split-view/split-view-foundation.d.ts +4 -0
- package/esm/split-view/split-view/split-view-foundation.js +12 -0
- package/esm/split-view/split-view/split-view.d.ts +5 -0
- package/esm/split-view/split-view/split-view.js +5 -0
- package/esm/split-view/split-view-panel/split-view-panel-foundation.js +2 -2
- package/esm/split-view/split-view-panel/split-view-panel.d.ts +5 -0
- package/esm/split-view/split-view-panel/split-view-panel.js +6 -1
- package/esm/toolbar/toolbar.js +1 -1
- package/package.json +1 -1
- package/styles/toolbar/_mixins.scss +2 -2
- package/styles/toolbar/toolbar.scss +6 -0
- package/dist/esm/chunks/chunk.52JUDHTJ.js +0 -12
- package/dist/esm/chunks/chunk.AABG6MSC.js +0 -7
- package/dist/esm/chunks/chunk.DRFU6POI.js +0 -7
- package/dist/esm/chunks/chunk.DRFU6POI.js.map +0 -7
- package/dist/esm/chunks/chunk.HMZ24WLE.js +0 -7
- package/dist/esm/chunks/chunk.HMZ24WLE.js.map +0 -7
- package/dist/esm/chunks/chunk.JB6U32SJ.js +0 -7
- package/dist/esm/chunks/chunk.OWTGOW7S.js +0 -7
- package/dist/esm/chunks/chunk.OWTGOW7S.js.map +0 -7
- package/dist/esm/chunks/chunk.SFFYXKJW.js +0 -7
- package/dist/esm/chunks/chunk.WSGJIPQJ.js +0 -7
- package/dist/esm/chunks/chunk.WSGJIPQJ.js.map +0 -7
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/select/core/base-select-constants.ts", "../../src/select/core/select-utils.ts", "../../src/select/core/base-select-foundation.ts", "../../src/select/core/base-select.ts", "../../src/select/core/base-select-adapter.ts"],
|
|
4
|
+
"sourcesContent": ["import { IListDropdownOption, IListDropdownOptionGroup } from '../../list-dropdown/list-dropdown-constants';\n\nexport type SelectOptionBuilder = (option: ISelectOption, parentElement: HTMLElement) => HTMLElement;\nexport type SelectSelectedTextBuilder = (selectedOptions: IListDropdownOption[]) => string;\nexport type SelectOptionListenerDestructor = () => void;\nexport type SelectBeforeValueChangeCallback<T> = (value: T | T[]) => boolean | Promise<boolean>;\n\nexport interface ISelectOption extends IListDropdownOption {}\nexport interface ISelectOptionGroup extends IListDropdownOptionGroup {}\n\nconst observedAttributes = {\n VALUE: 'value',\n MULTIPLE: 'multiple',\n OBSERVE_SCROLL: 'observe-scroll',\n OBSERVE_SCROLL_THRESHOLD: 'observe-scroll-threshold',\n POPUP_CLASSES: 'popup-classes',\n OPTION_LIMIT: 'option-limit',\n SYNC_POPUP_WIDTH: 'sync-popup-width'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst events = {\n CHANGE: 'change'\n};\n\nexport const BASE_SELECT_CONSTANTS = {\n attributes,\n events\n};\n", "import { isDefined, isObject } from '@tylertech/forge-core';\nimport { ISelectOption, ISelectOptionGroup } from './base-select-constants';\n\nexport enum SelectOptionType { Option, Group }\n\n/**\n * Determines if the provided options are of the specified type.\n * @param options The options either grouped or individual.\n * @param type The type of option to detect.\n */\nexport function isSelectOptionType(options: ISelectOption[] | ISelectOptionGroup[], type: SelectOptionType): boolean {\n const isOptionGroups = options.some((o: ISelectOption | ISelectOptionGroup) => isOptionGroupObject(o));\n const isOptionTypes = options.some((o: ISelectOption | ISelectOptionGroup) => isOptionObject(o));\n return (isOptionGroups && type === SelectOptionType.Group) || (isOptionTypes && type === SelectOptionType.Option);\n}\n\nexport function isOptionGroupObject(o: ISelectOption | ISelectOptionGroup): o is ISelectOptionGroup {\n return isDefined(o) && isObject(o) && o.hasOwnProperty('options') && o.hasOwnProperty('text');\n}\n\nexport function isOptionObject(o: ISelectOption | ISelectOptionGroup): o is ISelectOption {\n return isDefined(o) && isObject(o) && o.hasOwnProperty('label') && o.hasOwnProperty('value');\n}\n", "import { isDefined, isDeepEqual, randomChars } from '@tylertech/forge-core';\nimport { OptionListenerDestructor } from '../select/select-adapter';\nimport { ISelectOption, ISelectOptionGroup, SelectSelectedTextBuilder, SelectOptionBuilder, BASE_SELECT_CONSTANTS, SelectBeforeValueChangeCallback } from './base-select-constants';\nimport { isSelectOptionType, SelectOptionType } from './select-utils';\nimport { IListDropdownConfig, ListDropdownHeaderBuilder, ListDropdownFooterBuilder } from '../../list-dropdown/list-dropdown-constants';\nimport { IBaseSelectAdapter } from './base-select-adapter';\nimport { IListDropdownAwareFoundation, ListDropdownAwareFoundation } from '../../list-dropdown/list-dropdown-aware-foundation';\n\nexport interface IBaseSelectFoundation extends IListDropdownAwareFoundation {\n value: any;\n selectedIndex: number | number[];\n options: ISelectOption[] | ISelectOptionGroup[];\n multiple: boolean;\n open: boolean;\n popupElement: HTMLElement | undefined;\n optionBuilder: SelectOptionBuilder;\n selectedTextBuilder: SelectSelectedTextBuilder;\n observeScroll: boolean;\n observeScrollThreshold: number;\n syncPopupWidth: boolean;\n beforeValueChange: SelectBeforeValueChangeCallback<any>;\n appendOptions(options: ISelectOption[] | ISelectOptionGroup[]): void;\n selectAll(): void;\n deselectAll(): void;\n initialize(): void;\n initializeTarget(): void;\n disconnect(): void;\n}\n\nexport abstract class BaseSelectFoundation<T extends IBaseSelectAdapter> extends ListDropdownAwareFoundation implements IBaseSelectFoundation {\n protected _options: ISelectOption[] | ISelectOptionGroup[] = [];\n protected _value: any = [];\n protected _multiple = false;\n protected _open = false;\n protected _optionBuilder: SelectOptionBuilder;\n protected _selectedTextBuilder: SelectSelectedTextBuilder;\n protected _selectedValues: string[] = [];\n protected _selectedLabels: string[] = [];\n protected _selectedIndexes: number[] = [];\n protected _filterTimeout: number | undefined;\n protected _filterString = '';\n protected _identifier: string;\n protected _targetWidthCallback: () => number;\n protected _beforeValueChange: SelectBeforeValueChangeCallback<unknown>;\n private _focusListener: (evt: Event) => void;\n private _blurListener: (evt: FocusEvent) => void;\n private _clickListener: (evt: MouseEvent) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _optionsChangedListener: (options: ISelectOption[] | ISelectOptionGroup[]) => void;\n private _optionListenerDestructor: OptionListenerDestructor;\n private _activeChangeListener: (id: string) => void;\n private _dropdownScrollEndListener: () => void;\n private _valueChanging: Promise<boolean> | undefined;\n private _dismissListener: () => void;\n\n constructor(protected _adapter: T) {\n super();\n this._focusListener = evt => this._onFocus(evt);\n this._blurListener = evt => this._onBlur(evt);\n this._clickListener = evt => this._onClick(evt);\n this._keydownListener = evt => this._onKeydown(evt);\n this._optionsChangedListener = options => this._onOptionsChanged(options);\n this._activeChangeListener = id => this._onActiveOptionChanged(id);\n this._dropdownScrollEndListener = () => this._onDropdownScrollEnd();\n this._dismissListener = () => this._onDismiss();\n this._identifier = randomChars();\n }\n\n protected abstract _onDropdownScrollEnd(): void;\n protected _onFocus(evt: Event): void {}\n\n public initialize(): void {\n this._optionListenerDestructor = this._adapter.setOptionsListener(this._optionsChangedListener);\n this._initializeValue();\n }\n\n public initializeTarget(): void {\n this._adapter.initializeAccessibility();\n this._adapter.setMultiple(this._multiple);\n this._adapter.addClickListener(this._clickListener);\n this._adapter.addTargetListener('blur', this._blurListener);\n this._adapter.addTargetListener('focus', this._focusListener);\n this._adapter.addTargetListener('keydown', this._keydownListener);\n }\n\n public disconnect(): void {\n this._adapter.removeClickListener(this._clickListener);\n this._adapter.removeTargetListener('blur', this._blurListener);\n this._adapter.removeTargetListener('focus', this._focusListener);\n this._adapter.removeTargetListener('keydown', this._keydownListener);\n\n if (this._open) {\n this._closeDropdown();\n }\n\n if (this._optionListenerDestructor) {\n this._optionListenerDestructor();\n }\n }\n\n public appendOptions(options: ISelectOption[] | ISelectOptionGroup[]): void {\n this._adapter.setOptions(options, false);\n if (this._open) {\n this._adapter.appendDropdownOptions(options);\n }\n }\n\n public selectAll(): void {\n if (this._multiple) {\n this.value = this._flatOptions.map(o => o.value);\n }\n }\n\n public deselectAll(): void {\n if (this._multiple) {\n this.value = [];\n }\n }\n\n protected get _flatOptions(): ISelectOption[] {\n if (isSelectOptionType(this._options, SelectOptionType.Group)) {\n return [].concat.apply([], (this._options as ISelectOptionGroup[]).map(g => g.options)) as ISelectOption[];\n }\n return this._options as ISelectOption[];\n }\n\n private get _nonDividerOptions(): ISelectOption[] {\n return this._flatOptions.filter(o => !o.divider);\n }\n\n protected _initializeValue(): void {\n const options = (this._options.length && this._options) || this._adapter.getOptions();\n if (isDefined(this._value) && options.length) {\n this._applyValue(this._value);\n }\n }\n\n protected _onClick(evt: MouseEvent): void {\n if (evt.button !== 0) {\n return;\n }\n if (!this._open) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n\n protected _onBlur(evt: FocusEvent): void {\n // If the blur event was triggered by an element within the popup then ignore it\n if (this._adapter.isFocusWithinPopup(evt.relatedTarget as HTMLElement)) {\n return;\n }\n\n if (this._open) {\n this._closeDropdown();\n }\n }\n\n\n protected _openDropdown(): void {\n this._options = this._adapter.getOptions();\n\n if (!this._flatOptions.length) {\n return;\n }\n\n this._open = true;\n const config: IListDropdownConfig = {\n options: this._options,\n multiple: this._multiple,\n selectedValues: [...this._selectedValues],\n id: this._identifier,\n optionBuilder: this._optionBuilder,\n syncWidth: this._syncPopupWidth,\n observeScroll: this._observeScroll,\n observeScrollThreshold: this._observeScrollThreshold,\n scrollEndListener: this._dropdownScrollEndListener,\n activeChangeCallback: this._activeChangeListener,\n targetWidthCallback: this._targetWidthCallback,\n popupClasses: this._popupClasses,\n optionLimit: this._optionLimit,\n headerBuilder: this._popupHeaderBuilder,\n footerBuilder: this._popupFooterBuilder,\n closeCallback: () => this._closeDropdown(),\n selectCallback: (value: any) => {\n const flatOptions = this._flatOptions;\n const option = flatOptions.find(o => o.value === value);\n if (option) {\n const index = flatOptions.indexOf(option);\n this._onSelect(option, index, true);\n }\n }\n };\n this._adapter.open(config);\n this._adapter.setDismissListener(this._dismissListener);\n }\n\n /**\n * Closes the dropdown.\n */\n protected _closeDropdown(): void {\n this._open = false;\n this._adapter.close();\n }\n\n /**\n * Handles selecting an item in the dropdown.\n * @param {ISelectOption} option The selected option.\n * @param {number} optionIndex The index of the selected option.\n */\n protected async _onSelect(option: ISelectOption, optionIndex: number, closeDropdown = true): Promise<boolean> {\n return new Promise(async resolve => {\n if (this._valueChanging) {\n return Promise.resolve(false);\n }\n\n const value = option ? option.value : '';\n const label = option ? option.label : '';\n\n // Store the current selections in case we need to rollback (if the event was cancelled)\n const prevSelectedValues = [...this._selectedValues];\n const prevSelectedLabels = [...this._selectedLabels];\n const prevSelectedIndexes = [...this._selectedIndexes];\n\n if (this._multiple) {\n if (this._selectedValues.includes(value)) {\n const index = this._selectedValues.indexOf(value);\n this._selectedValues.splice(index, 1);\n this._selectedLabels.splice(index, 1);\n this._selectedIndexes.splice(index, 1);\n } else {\n this._selectedValues.push(value);\n this._selectedLabels.push(label);\n this._selectedIndexes.push(optionIndex);\n }\n } else {\n if (isDefined(value)) {\n this._selectedValues[0] = value;\n this._selectedLabels[0] = label;\n this._selectedIndexes[0] = optionIndex;\n } else {\n this._selectedValues = [];\n this._selectedLabels = [];\n this._selectedIndexes = [];\n }\n }\n\n const rollbackValue = (): void => {\n this._selectedValues = [...prevSelectedValues];\n this._selectedLabels = [...prevSelectedLabels];\n this._selectedIndexes = [...prevSelectedIndexes];\n };\n\n const applyValue = (): void => {\n // Always keep the internal value in sync in case the component needs to reinitialize with the existing value later on\n this._value = [...this._selectedValues];\n\n // If we're in multiselect mode, we need to toggle the selected option\n if (this._multiple) {\n const isSelected = this._selectedIndexes.includes(optionIndex);\n this._adapter.toggleOptionMultiple(optionIndex, isSelected);\n }\n\n this._applySelection();\n };\n\n const data = this.multiple ? [...this._selectedValues] : this._selectedValues[0];\n\n // We close the dropdown immediately if in single selection mode\n if (this._open && closeDropdown && !this._multiple) {\n this._closeDropdown();\n }\n\n // First we check to see if there is an before change callback and execute that\n if (typeof this._beforeValueChange === 'function') {\n this._valueChanging = Promise.resolve(this._beforeValueChange.call(null, data));\n const shouldContinue = await this._valueChanging;\n this._valueChanging = undefined;\n if (!shouldContinue) {\n rollbackValue();\n this._tryUpdateDropdownPosition();\n return resolve(false);\n }\n }\n\n // Now we can emit the change event AFTER the before change callback has been executed and returned true\n const cancelled = !this._adapter.emitHostEvent(BASE_SELECT_CONSTANTS.events.CHANGE, data, true, true);\n if (!cancelled) {\n applyValue();\n } else {\n rollbackValue();\n }\n\n this._tryUpdateDropdownPosition();\n resolve(!cancelled);\n });\n }\n\n private _selectActiveOption(): void {\n const activeOptionIndex = this._adapter.getActiveOptionIndex();\n if (activeOptionIndex >= 0 && this._nonDividerOptions[activeOptionIndex]) {\n this._onSelect(this._nonDividerOptions[activeOptionIndex], activeOptionIndex);\n }\n }\n\n protected _tryUpdateDropdownPosition(): void {\n if (this._open) {\n this._adapter.queueDropdownPositionUpdate();\n }\n }\n\n protected _reset(): void {\n this._selectedValues = [];\n this._selectedLabels = [];\n this._selectedIndexes = [];\n }\n\n protected _applyValue(value: string | string[]): void {\n this._selectedValues = [];\n this._selectedLabels = [];\n\n this._options = this._adapter.getOptions();\n\n if (!Array.isArray(value)) {\n value = [value];\n }\n\n this._value = [];\n\n // Ensure that the values passed are actually existing options\n for (const val of value) {\n if (!this._value.includes(val)) {\n this._value.push(val);\n }\n const option = this._flatOptions.find(o => isDeepEqual(o.value, val));\n if (option) {\n this._selectedValues.push(option.value);\n this._selectedLabels.push(option.label);\n }\n }\n\n // Update the selected indexes based on the values that are now selected\n this._selectedIndexes = this._selectedValues.map(val => this._flatOptions.findIndex(o => o.value === val));\n\n // Update the selected options in the dropdown\n this._adapter.patchSelectedValues(this._selectedValues);\n }\n \n /**\n * Handles the user dismissing the dropdown.\n */\n protected _onDismiss(): void {\n this._closeDropdown();\n }\n\n /** Creates the selected text value from the selected label values. */\n protected _getSelectedText(): string {\n if (typeof this._selectedTextBuilder === 'function') {\n const selectedOptions = this._flatOptions.filter(o => this._selectedValues.includes(o.value));\n return this._selectedTextBuilder(selectedOptions);\n }\n\n if (this._multiple) {\n if (this._selectedLabels.length) {\n return `${this._selectedLabels.length} ${this._selectedLabels.length === 1 ? 'option' : 'options'} selected`;\n } else {\n return '';\n }\n }\n \n return this._selectedLabels\n .filter(v => v && v.length)\n .join(' ')\n .trim();\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n const isEscapeKey = evt.key === 'Escape' || evt.keyCode === 27;\n const isEnter = evt.key === 'Enter' || evt.keyCode === 13;\n const isSpace = evt.key === 'Space' || evt.keyCode === 32;\n const isArrowDown = evt.key === 'ArrowDown' || evt.keyCode === 40;\n const isArrowUp = evt.key === 'ArrowUp' || evt.keyCode === 38;\n const isFilterableCharacter = evt.keyCode >= 48 && evt.keyCode <= 90;\n const isHomeKey = evt.key === 'Home' || evt.keyCode === 36;\n const isEndKey = evt.key === 'End' || evt.keyCode === 35;\n const isTabKey = evt.key === 'Tab';\n\n // We automatically select the active option if the dropdown is open and in single selection mode\n if (isTabKey && this._open && !this._multiple) {\n this._selectActiveOption();\n return;\n }\n\n // If an active filter was started, clear it now\n if (!isFilterableCharacter && this._filterTimeout) {\n window.clearTimeout(this._filterTimeout);\n this._filterString = '';\n this._filterTimeout = undefined;\n }\n\n if (isEscapeKey) {\n evt.preventDefault();\n if (this._open) {\n this._closeDropdown();\n return;\n }\n }\n\n if (isSpace) {\n evt.preventDefault();\n\n if (!this._open) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n } else if (isEnter) {\n if (this._open) {\n evt.stopPropagation();\n evt.preventDefault();\n this._options = this._adapter.getOptions();\n this._selectActiveOption();\n }\n } else if (isArrowUp || isArrowDown) {\n evt.preventDefault();\n\n if (this._multiple && !this._open) {\n this._openDropdown();\n this._adapter.activateFirstOption();\n return;\n }\n\n if (this._flatOptions.length === 0) {\n return;\n }\n\n let optionIndex = 0;\n if (this._open) {\n optionIndex = this._adapter.getActiveOptionIndex();\n if (optionIndex === -1) {\n optionIndex = this._getFirstSelectedOptionIndex();\n }\n } else {\n optionIndex = this._getFirstSelectedOptionIndex();\n }\n\n if (isArrowUp) {\n optionIndex = this._getPreviousHighlightableOptionIndex(optionIndex, this._nonDividerOptions);\n } else {\n optionIndex = this._getNextHighlightableOptionIndex(optionIndex, this._nonDividerOptions);\n }\n\n // If the dropdown is open then we just move the active index, otherwise we change the selection (to mimic the native <select>)\n if (this._open) {\n this._adapter.highlightActiveOption(optionIndex);\n } else {\n this._onSelect(this._nonDividerOptions[optionIndex], optionIndex);\n }\n } else if (isHomeKey) {\n if (this._open) {\n evt.preventDefault();\n this._adapter.highlightActiveOption(this._nonDividerOptions.findIndex(o => !o.disabled));\n }\n } else if (isEndKey) {\n if (this._open) {\n evt.preventDefault();\n const options = this._nonDividerOptions;\n for (let i = options.length - 1; i >= 0; i--) {\n if (!options[i].disabled) {\n this._adapter.highlightActiveOption(i);\n break;\n }\n }\n }\n } else if (isFilterableCharacter) {\n this._filter(evt.key);\n }\n }\n\n private _getFirstSelectedOptionIndex(): number {\n return this._nonDividerOptions.findIndex(option => this._selectedValues.includes(option.value));\n }\n\n private _getPreviousHighlightableOptionIndex(startIndex: number, options: ISelectOption[]): number {\n let index = startIndex;\n if (index <= 0) {\n index = options.length - 1;\n } else {\n index--;\n }\n if (options[index].disabled) {\n return this._getPreviousHighlightableOptionIndex(index, options);\n }\n return index;\n }\n\n private _getNextHighlightableOptionIndex(startIndex: number, options: ISelectOption[]): number {\n let index = startIndex;\n if (index === options.length - 1) {\n index = 0;\n } else {\n index++;\n }\n if (options[index].disabled) {\n return this._getNextHighlightableOptionIndex(index, options);\n }\n return index;\n }\n\n private _filter(key: string): void {\n // This allows for typing numbers and/or characters while the select is focused to auto-select the closest match\n if (this._filterTimeout) {\n window.clearTimeout(this._filterTimeout);\n this._filterTimeout = undefined;\n }\n this._filterString += key;\n this._filterTimeout = window.setTimeout(() => {\n this._filterString = '';\n this._filterTimeout = undefined;\n }, 300);\n this._options = this._adapter.getOptions();\n // TODO(kieran.nichols): Enhance this to cycle through closest matches (see the native select)\n const matchedOption = this._flatOptions.find(option => !option.disabled && option.label.toLowerCase().startsWith(this._filterString));\n if (matchedOption) {\n const optionIndex = this._flatOptions.indexOf(matchedOption);\n if (this._open) {\n this._adapter.highlightActiveOption(optionIndex);\n } else if (!this._multiple) {\n this._onSelect(matchedOption, optionIndex, false);\n }\n }\n }\n\n private _onOptionsChanged(options: ISelectOption[] | ISelectOptionGroup[]): void {\n this._options = options;\n this._applyValue(this._value);\n }\n\n private _onActiveOptionChanged(id: string): void {\n this._adapter.updateActiveDescendant(id);\n }\n\n /** Gets/sets the value of the component. */\n public get value(): any {\n return this._multiple ? [...this._selectedValues] : this._selectedValues[0];\n }\n public set value(value: any) {\n let _value: string | string[];\n \n if (Array.isArray(value)) {\n _value = [ ...value ];\n } else {\n _value = value;\n }\n\n this._applyValue(_value);\n }\n\n /** Gets/sets the selected index(s). */\n public get selectedIndex(): number | number[] {\n return this._multiple ? [ ...this._selectedIndexes ] : this._selectedIndexes[0];\n }\n public set selectedIndex(indexes: number | number[]) {\n this._options = this._adapter.getOptions();\n\n let indicies: number [];\n if (Array.isArray(indexes)) {\n indicies = [ ...indexes ];\n } else {\n indicies = [indexes];\n }\n\n indicies.sort();\n\n if (this.multiple) {\n this.value = indicies\n .map(index => this._flatOptions[index])\n .filter(o => o)\n .map(o => o.value);\n } else {\n const option = this._flatOptions[indicies[indicies.length - 1]];\n if (!option) {\n return;\n }\n this.value = option.value;\n }\n }\n\n /** Gets/sets the available options. */\n public get options(): ISelectOption[] | ISelectOptionGroup[] {\n return this._adapter.getOptions();\n }\n public set options(value: ISelectOption[] | ISelectOptionGroup[]) {\n let _value: ISelectOption[] | ISelectOptionGroup[];\n if (isSelectOptionType(value, SelectOptionType.Group)) {\n _value = (value as ISelectOptionGroup[]).map(v => ({ ...v }));\n } else {\n _value = (value as ISelectOption[]).map(v => ({ ...v }));\n }\n\n this._options = _value;\n this._adapter.setOptions(_value); // Must set options before intializing value\n this._initializeValue();\n\n if (this._open) {\n this._adapter.setDropdownOptions(_value);\n }\n }\n\n /** Gets/sets the multiple select state. */\n public get multiple(): boolean {\n return this._multiple;\n }\n public set multiple(value: boolean) {\n if (this._multiple !== value) {\n this._multiple = value;\n this._reset();\n if (this._open) {\n this._closeDropdown();\n }\n this._adapter.setMultiple(this._multiple);\n }\n }\n\n /** Gets/sets the open state of the dropdown. */\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n if (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n /** Gets/sets the builder callback to use when building options. */\n public get optionBuilder(): SelectOptionBuilder {\n return this._optionBuilder;\n }\n public set optionBuilder(value: SelectOptionBuilder) {\n this._optionBuilder = value;\n }\n\n /** Sets the selected text builder callback that will be executed when getting the selected text to display in the field. */\n public get selectedTextBuilder(): SelectSelectedTextBuilder {\n return this._selectedTextBuilder;\n }\n public set selectedTextBuilder(fn: SelectSelectedTextBuilder) {\n this._selectedTextBuilder = fn;\n }\n\n public get observeScroll(): boolean {\n return this._observeScroll;\n }\n public set observeScroll(value: boolean) {\n this._observeScroll = value;\n }\n\n public get observeScrollThreshold(): number {\n return this._observeScrollThreshold;\n }\n public set observeScrollThreshold(value: number) {\n this._observeScrollThreshold = value;\n }\n\n public get syncPopupWidth(): boolean {\n return this._syncPopupWidth;\n }\n public set syncPopupWidth(value: boolean) {\n this._syncPopupWidth = value;\n }\n\n\n public get optionLimit(): number {\n return this._optionLimit;\n }\n public set optionLimit(value: number) {\n this._optionLimit = value;\n }\n \n public get popupClasses(): string | string[] {\n return this._popupClasses;\n }\n public set popupClasses(value: string | string[]) {\n this._popupClasses = value;\n }\n\n public get popupHeaderBuilder(): ListDropdownHeaderBuilder {\n return this._popupHeaderBuilder;\n }\n public set popupHeaderBuilder(value: ListDropdownHeaderBuilder) {\n this._popupHeaderBuilder = value;\n }\n\n public get popupFooterBuilder(): ListDropdownFooterBuilder {\n return this._popupFooterBuilder;\n }\n public set popupFooterBuilder(value: ListDropdownFooterBuilder) {\n this._popupFooterBuilder = value;\n }\n\n /** Gets the currently active popup element when the dropdown is open. */\n public get popupElement(): HTMLElement | undefined {\n return this._adapter.popupElement;\n }\n\n /** Sets the callback to be executed when the user selects a value. */\n public get beforeValueChange(): SelectBeforeValueChangeCallback<any> {\n return this._beforeValueChange;\n }\n public set beforeValueChange(value: SelectBeforeValueChangeCallback<any>) {\n this._beforeValueChange = value;\n }\n}\n", "import { coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport {\n SelectOptionBuilder,\n SelectSelectedTextBuilder,\n ISelectOption,\n ISelectOptionGroup,\n SelectBeforeValueChangeCallback,\n BASE_SELECT_CONSTANTS\n} from './base-select-constants';\nimport { IBaseSelectFoundation } from './base-select-foundation';\nimport { IListDropdownAware, ListDropdownAware } from '../../list-dropdown/list-dropdown-aware';\nimport { IPopupComponent } from '../../popup';\n\n\nexport interface IBaseSelectComponent extends IListDropdownAware {\n value: any;\n selectedIndex: number | number[];\n options: ISelectOption[] | ISelectOptionGroup[];\n multiple: boolean;\n open: boolean;\n optionBuilder: SelectOptionBuilder;\n selectedTextBuilder: SelectSelectedTextBuilder;\n popupElement: IPopupComponent | undefined;\n beforeValueChange: SelectBeforeValueChangeCallback<any>;\n appendOptions(options: ISelectOption[] | ISelectOption[]): void;\n selectAll(): void;\n deselectAll(): void;\n}\n\nexport abstract class BaseSelectComponent<T extends IBaseSelectFoundation> extends ListDropdownAware implements IBaseSelectComponent {\n protected _foundation: T;\n\n constructor() {\n super();\n }\n\n /** Gets/sets the value. */\n @FoundationProperty()\n public value: any;\n \n /** Gets/sets the selected index. */\n @FoundationProperty()\n public selectedIndex: number | number[];\n \n /** Gets/sets the available options. */\n @FoundationProperty()\n public options: ISelectOption[] | ISelectOptionGroup[];\n\n /** Gets/sets the multiple select state. */\n @FoundationProperty()\n public multiple: boolean;\n \n /** Gets the open state of the dropdown. */\n @FoundationProperty()\n public open: boolean;\n \n /** Sets the option builder callback that will be executed when building the option list in the dropdown. */\n @FoundationProperty()\n public optionBuilder: SelectOptionBuilder;\n \n /** Sets the selected text builder callback that will be executed when getting the selected text to display in the field. */\n @FoundationProperty()\n public selectedTextBuilder: SelectSelectedTextBuilder;\n\n /** Sets the callback to be executed when the user selects a value. */\n @FoundationProperty()\n public beforeValueChange: SelectBeforeValueChangeCallback<any>;\n\n /** Gets the popup element (when the dropdown is open). */\n @FoundationProperty({ set: false })\n public popupElement: IPopupComponent | undefined;\n \n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n switch (name) {\n case BASE_SELECT_CONSTANTS.attributes.MULTIPLE:\n this.multiple = coerceBoolean(newValue);\n break;\n case BASE_SELECT_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n }\n }\n\n public appendOptions(options: ISelectOption[] | ISelectOptionGroup[]): void {\n this._foundation.appendOptions(options);\n }\n\n public selectAll(): void {\n this._foundation.selectAll();\n }\n \n public deselectAll(): void {\n this._foundation.deselectAll();\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n}\n", "import { isDefined, removeElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IBaseSelectComponent } from './base-select';\nimport { ListDropdown, IListDropdown } from '../../list-dropdown';\nimport { IListDropdownConfig, ListDropdownIconType } from '../../list-dropdown/list-dropdown-constants';\nimport { IOptionComponent, OPTION_CONSTANTS } from '../option';\nimport { IOptionGroupComponent, OPTION_GROUP_CONSTANTS } from '../option-group';\nimport { ISelectOption, ISelectOptionGroup, SelectOptionListenerDestructor } from './base-select-constants';\nimport { isOptionGroupObject } from './select-utils';\nimport { IPopupComponent, POPUP_CONSTANTS } from '../../popup';\nimport { assignMatchingProperties } from '../../core/utils/utils';\n\nexport interface IBaseSelectAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n addClickListener(listener: (evt: Event) => void): void;\n removeClickListener(listener: (evt: Event) => void): void;\n addTargetListener(type: string, listener: (evt: Event) => void): void;\n removeTargetListener(type: string, listener: (evt: Event) => void): void;\n getOptions(): ISelectOption[] | ISelectOptionGroup[];\n setOptions(options: ISelectOption[] | ISelectOptionGroup[], clear?: boolean): void;\n open(config: IListDropdownConfig): void;\n close(): void;\n setDismissListener(listener: () => void): void;\n scrollSelectedOptionIntoView(): void;\n activateSelectedOption(): void;\n activateFirstOption(): void;\n getActiveOptionIndex(): number;\n highlightActiveOption(index: number): void;\n toggleOptionMultiple(index: number, isSelected: boolean): void;\n patchSelectedValues(selectedValues: string[]): void;\n updateActiveDescendant(id: string): void;\n setOptionsListener(listener: (options: ISelectOption[] | ISelectOptionGroup[]) => void): SelectOptionListenerDestructor;\n setDropdownOptions(options: ISelectOption[] | ISelectOptionGroup[]): void;\n appendDropdownOptions(options: ISelectOption[] | ISelectOptionGroup[]): void;\n setMultiple(multiple: boolean): void;\n isFocusWithinPopup(target: HTMLElement): boolean;\n queueDropdownPositionUpdate(): void;\n popupElement: HTMLElement | undefined;\n}\n\nexport abstract class BaseSelectAdapter extends BaseAdapter<IBaseSelectComponent> implements IBaseSelectAdapter {\n private _listDropdown?: IListDropdown;\n protected _targetElement: HTMLElement;\n\n constructor(component: IBaseSelectComponent) {\n super(component);\n }\n\n public abstract initializeAccessibility(): void;\n public abstract updateActiveDescendant(id: string): void;\n public abstract addClickListener(listener: (evt: Event) => void): void;\n public abstract removeClickListener(listener: (evt: Event) => void): void;\n public abstract addTargetListener(type: string, listener: (evt: Event) => void): void;\n public abstract removeTargetListener(type: string, listener: (evt: Event) => void): void;\n public abstract setMultiple(multiple: boolean): void;\n\n public get popupElement(): HTMLElement | undefined {\n return this._listDropdown?.dropdownElement;\n }\n\n public getOptions(): ISelectOption[] | ISelectOptionGroup[] {\n const optionGroupElements = Array.from(this._component.querySelectorAll(OPTION_GROUP_CONSTANTS.elementName)) as IOptionGroupComponent[];\n if (optionGroupElements.length) {\n return optionGroupElements.map(optionGroupElement => {\n const optionElements = Array.from(optionGroupElement.querySelectorAll(OPTION_CONSTANTS.elementName)) as IOptionComponent[];\n const options = this._createOptionsFromElements(optionElements);\n return { text: optionGroupElement.label, options } as ISelectOptionGroup;\n });\n } else {\n const optionElements = Array.from(this._component.querySelectorAll(OPTION_CONSTANTS.elementName)) as IOptionComponent[];\n return this._createOptionsFromElements(optionElements);\n }\n }\n\n private _createOptionsFromElements(optionElements: IOptionComponent[]): ISelectOption[] {\n return optionElements.map(o => {\n let optionClass = o.hasAttribute(OPTION_CONSTANTS.attributes.OPTION_CLASS) ? o.getAttribute(OPTION_CONSTANTS.attributes.OPTION_CLASS) as string : o.optionClass;\n if (typeof optionClass === 'string') {\n optionClass = optionClass.split(' ');\n }\n\n return {\n // eslint-disable-next-line @typescript-eslint/no-extra-parens\n label: o.hasAttribute(OPTION_CONSTANTS.attributes.LABEL) ? o.getAttribute(OPTION_CONSTANTS.attributes.LABEL) as string : (isDefined(o.label) ? o.label : o.innerText),\n value: o.hasAttribute(OPTION_CONSTANTS.attributes.VALUE) ? o.getAttribute(OPTION_CONSTANTS.attributes.VALUE) : o.value,\n disabled: o.hasAttribute(OPTION_CONSTANTS.attributes.DISABLED),\n divider: o.hasAttribute(OPTION_CONSTANTS.attributes.DIVIDER),\n optionClass,\n leadingIcon: o.hasAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON) ? o.getAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON) as string : o.leadingIcon,\n leadingIconClass: o.hasAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS) ? o.getAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS) as string : o.leadingIconClass,\n leadingIconType: o.hasAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE) ? o.getAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE) as ListDropdownIconType : o.leadingIconType,\n trailingIcon: o.hasAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON) ? o.getAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON) as string : o.trailingIcon,\n trailingIconClass: o.hasAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS) ? o.getAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS) as string : o.trailingIconClass,\n trailingIconType: o.hasAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE) ? o.getAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE) as ListDropdownIconType : o.trailingIconType,\n leadingBuilder: o.leadingBuilder,\n trailingBuilder: o.trailingBuilder\n };\n });\n }\n\n public open(config: IListDropdownConfig): void {\n this._listDropdown = new ListDropdown(this._targetElement, config);\n this._listDropdown.open();\n }\n\n public close(): void {\n if (this._listDropdown) {\n this._listDropdown.close();\n this._listDropdown.destroy();\n this._listDropdown = undefined;\n }\n }\n\n public setDismissListener(listener: () => void): void {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return;\n }\n const dropdownElement = this._listDropdown.dropdownElement as IPopupComponent;\n if (dropdownElement.targetElement) {\n dropdownElement.targetElement.addEventListener(POPUP_CONSTANTS.events.BLUR, listener);\n }\n }\n\n public toggleOptionMultiple(index: number, isSelected: boolean): void {\n this._listDropdown?.toggleOptionMultiple(index, isSelected);\n }\n\n public getActiveOptionIndex(): number {\n return this._listDropdown?.getActiveOptionIndex() ?? -1;\n }\n\n public activateSelectedOption(): void {\n this._listDropdown?.activateSelectedOption();\n }\n\n public activateFirstOption(): void {\n this._listDropdown?.activateFirstOption();\n }\n\n public highlightActiveOption(index: number): void {\n this._listDropdown?.activateOption(index);\n }\n\n public patchSelectedValues(selectedValues: string[]): void {\n this._listDropdown?.setSelectedValues(selectedValues);\n }\n\n public setOptionsListener(listener: (options: ISelectOption[] | ISelectOptionGroup[]) => void): SelectOptionListenerDestructor {\n const observer = new MutationObserver(() => listener(this.getOptions()));\n observer.observe(this._component, { childList: true, subtree: true });\n return () => observer.disconnect();\n }\n\n public setOptions(options: ISelectOption[] | ISelectOptionGroup[], clear = true): void {\n if (clear) {\n this._clearOptions();\n }\n\n for (const opt of options) {\n if (isOptionGroupObject(opt)) {\n const optionGroupElement = this._createOptionGroupElement(opt);\n for (const option of opt.options) {\n const optionElement = this._createOptionElement(option);\n optionGroupElement.appendChild(optionElement);\n }\n this._component.appendChild(optionGroupElement);\n } else {\n const optionElement = this._createOptionElement(opt);\n this._component.appendChild(optionElement);\n }\n }\n }\n\n public appendDropdownOptions(options: ISelectOption[] | ISelectOptionGroup[]): void {\n this._listDropdown?.appendOptions(options);\n }\n\n public setDropdownOptions(options: ISelectOption[] | ISelectOptionGroup[]): void {\n this._listDropdown?.setOptions(options);\n }\n\n public scrollSelectedOptionIntoView(): void {\n this._listDropdown?.scrollSelectedOptionIntoView();\n }\n\n public isFocusWithinPopup(target: HTMLElement): boolean {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return false;\n }\n return this._listDropdown.dropdownElement.contains(target);\n }\n\n public queueDropdownPositionUpdate(): void {\n if (!this.popupElement) {\n return;\n }\n // We need to wait for the next animation frame to ensure that the layout has been updated\n window.requestAnimationFrame(() => {\n const dropdownEl = this.popupElement as IPopupComponent | undefined;\n dropdownEl?.position();\n });\n }\n\n private _clearOptions(): void {\n // First we remove all option group elements\n const existingOptionGroupElements = Array.from(this._component.querySelectorAll(OPTION_GROUP_CONSTANTS.elementName));\n existingOptionGroupElements.forEach((optGroup: IOptionGroupComponent) => removeElement(optGroup));\n\n // Then find all top-level option elements that aren't inside of a group, and ensure that those are removed as well\n const existingOptionElements = Array.from(this._component.querySelectorAll(OPTION_CONSTANTS.elementName));\n existingOptionElements.forEach((o: HTMLElement) => removeElement(o));\n }\n\n private _createOptionGroupElement(group: ISelectOptionGroup): HTMLElement {\n const optionGroupElement = document.createElement('forge-option-group');\n assignMatchingProperties(group, optionGroupElement);\n optionGroupElement.label = group.text ?? '';\n return optionGroupElement;\n }\n\n private _createOptionElement(option: ISelectOption): HTMLElement {\n const optionElement = document.createElement('forge-option');\n assignMatchingProperties(option, optionElement);\n optionElement.textContent = option.label;\n return optionElement;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a,d as D}from"./chunk.DJSOBAWA.js";import{a as I}from"./chunk.EC6JSIQW.js";import{a as C}from"./chunk.D4SNVKDA.js";import{a as N}from"./chunk.A23NSEWA.js";import{a as d}from"./chunk.B3IJU6XJ.js";import{a as R,b as O}from"./chunk.BSZ2LBJX.js";import{a as x}from"./chunk.3E5QKMHL.js";import{a as y,e as T,g as E}from"./chunk.HN4PXH3D.js";import{l as f,s as A,t as b}from"./chunk.R4NDFXVA.js";import{b as v,d as m,k as _}from"./chunk.G76HB2FK.js";import{a as g,f as p}from"./chunk.MCIQXNKY.js";var F=`${O}stepper`,M={STEPPER:"forge-stepper",LINEAR:"forge-stepper--linear",ALTERNATIVE:"forge-stepper--alternative",CLUSTERED:"forge-stepper--clustered",FIXED:"forge-stepper--fixed",ALIGN_LEFT:"forge-stepper--align-left",ALIGN_CENTER:"forge-stepper--align-center",ALIGN_RIGHT:"forge-stepper--align-right",VERTICAL:"forge-stepper--vertical",FOCUSED:"forge-stepper--focused"},Y={STEPPER:`.${M.STEPPER}`},K={SELECTED_INDEX:"selected-index",LINEAR:"linear",ALTERNATIVE:"alternative",LAYOUT_MODE:"layout-mode",LAYOUT_ALIGN:"layout-align",DISABLED:"disabled",VERTICAL:"vertical"},n={ARROW_LEFT_KEY:"ArrowLeft",ARROW_RIGHT_KEY:"ArrowRight",ARROW_UP_KEY:"ArrowUp",ARROW_DOWN_KEY:"ArrowDown",END_KEY:"End",ENTER_KEY:"Enter",HOME_KEY:"Home",SPACE_KEY:"Space",TAB_KEY:"Tab"},c={ARROW_LEFT_KEYCODE:37,ARROW_RIGHT_KEYCODE:39,END_KEYCODE:35,HOME_KEYCODE:36,ENTER_KEYCODE:13,SPACE_KEYCODE:32},k=[n.ARROW_LEFT_KEY,n.ARROW_RIGHT_KEY,n.ARROW_DOWN_KEY,n.ARROW_UP_KEY,n.END_KEY,n.HOME_KEY,n.ENTER_KEY,n.SPACE_KEY,n.TAB_KEY],P={[c.ARROW_LEFT_KEYCODE]:n.ARROW_LEFT_KEY,[c.ARROW_RIGHT_KEYCODE]:n.ARROW_RIGHT_KEY,[c.END_KEYCODE]:n.END_KEY,[c.HOME_KEYCODE]:n.HOME_KEY,[c.ENTER_KEYCODE]:n.ENTER_KEY,[c.SPACE_KEYCODE]:n.SPACE_KEY},i={elementName:F,classes:M,selectors:Y,attributes:K,numbers:c,strings:n,ACCEPTABLE_KEYS:k,KEYCODE_MAP:P};var l=class{static createStepElement(t,e,s){let o=document.createElement(a.elementName);return o.index=e,o.completed=t.completed||!1,o.editable=t.editable||!1,o.selected=s.selectedIndex===e,o.alternative=s.alternative,o.error=t.error||!1,o.disabled=t.disabled||!1,o.vertical=t.vertical||!1,o.ignoreUserExpansion=t.ignoreUserExpansion||!1,o.expanded=t.expanded||!1,s.linear&&e>s.selectedIndex&&(o.tabIndex=-1),o.textContent=t.label,t.optionalLabel&&o.appendChild(this.createStepOptionalLabel(t.optionalLabel)),o}static createStepOptionalLabel(t){let e=document.createElement("span");return e.slot="optional",e.textContent=t||"",e}static setLinearState(t,e){let s=t.classList.contains(i.classes.LINEAR);s&&!e&&(t.classList.remove(i.classes.LINEAR),s=!1),!s&&e&&t.classList.add(i.classes.LINEAR)}static setAlternativeState(t,e){let s=t.classList.contains(i.classes.ALTERNATIVE);s&&!e&&(t.classList.remove(i.classes.ALTERNATIVE),s=!1),!s&&e&&t.classList.add(i.classes.ALTERNATIVE)}static setLayoutMode(t,e){switch(e){case"clustered":t.classList.contains(i.classes.FIXED)&&t.classList.remove(i.classes.FIXED),t.classList.add(i.classes.CLUSTERED);break;case"fixed":t.classList.contains(i.classes.CLUSTERED)&&t.classList.remove(i.classes.CLUSTERED),t.classList.add(i.classes.FIXED);break}}static setLayoutAlign(t,e){switch(t.classList.contains(i.classes.ALIGN_LEFT)&&t.classList.remove(i.classes.ALIGN_LEFT),t.classList.contains(i.classes.ALIGN_CENTER)&&t.classList.remove(i.classes.ALIGN_CENTER),t.classList.contains(i.classes.ALIGN_RIGHT)&&t.classList.remove(i.classes.ALIGN_RIGHT),e){case"left":t.classList.add(i.classes.ALIGN_LEFT);break;case"center":t.classList.add(i.classes.ALIGN_CENTER);break;case"right":t.classList.add(i.classes.ALIGN_RIGHT);break}}static createSteps(t){let e=[];return t.steps.forEach((s,o)=>{let u=l.createStepElement(s,o,t);e.push(u)}),e[0].setAttribute(a.attributes.FIRST,""),e[e.length-1].setAttribute(a.attributes.LAST,""),e}};var S=class extends N{constructor(e){super(e);this._rootElement=E(e,i.selectors.STEPPER),this._slotElement=this._rootElement.querySelector("slot")}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","tablist")}patchSafari(){this._applyToSteps(e=>e.setAttribute("safari",""))}addSlotChangeListener(e){this._slotElement.addEventListener("slotchange",e)}removeSlotChangeListener(e){this._slotElement.addEventListener("slotchange",e)}getLastStep(){let e=this._getSteps();return e.item(e.length-1)}setSelected(e){this._getSteps().forEach(s=>{s===e?s.selected=!0:s.selected=!1})}assignIndices(){this._getSteps().forEach((s,o)=>{s.index=o})}assignFirstLastStep(){let e=this._getSteps();e&&e.length>1&&(e[0].setAttribute("first",""),e[e.length-1].setAttribute("last",""))}setLayoutAlign(e){l.setLayoutAlign(this._rootElement,e)}setLayoutMode(e){l.setLayoutMode(this._rootElement,e),this._applyToSteps(s=>s.setAttribute(a.attributes.CLUSTERED,""))}setAlternativeState(e){l.setAlternativeState(this._rootElement,e),this._applyToSteps(s=>s.alternative=e)}setVertical(e){b(this._rootElement,e,i.classes.VERTICAL),this._applyToSteps(s=>s.vertical=e)}setLinearState(e){l.setLinearState(this._rootElement,e)}removeRootListener(e,s){this._rootElement.removeEventListener("click",s)}addRootListener(e,s){this._rootElement.addEventListener(e,s)}setSelectedByIndex(e){this._applyToSteps(s=>{s.selected&&s.index!==e&&(s.selected=!1),s.index===e&&(s.selected=!0)})}applyConfiguredSteps(e){this._component.querySelectorAll(a.elementName).forEach(s=>{this._component.removeChild(s)}),e.forEach(s=>this._component.appendChild(s))}tryGetFocusedStep(){let e,s=A();return this._applyToSteps(o=>{s===E(o,a.selectors.STEP)&&(e=o)}),e}getFocusedOrSelectedStep(){let e=this.tryGetFocusedStep();return e||(e=this._getSteps()[0],e.focus()),e}getStep(e){let s=0,o=this._getSteps();return e<0?o.item(o.length-1):(o.length>e&&(s=e),o.item(s))}toggleDisabled(e){this._applyToSteps(s=>s.disabled=e)}toggleRootClass(e,s){b(this._rootElement,s,e)}isStepperFocused(){return this._rootElement.classList.contains(i.classes.FOCUSED)}setStepsListener(e,s){this._applyToSteps(o=>o.addEventListener(e,s))}removeStepsListener(e,s){this._applyToSteps(o=>o.removeEventListener(e,s))}_applyToSteps(e){this._getSteps().forEach(e)}_getSteps(){return this._component.querySelectorAll(a.elementName)}};var h=class{constructor(t){this._adapter=t;this._steps=[];this._selectedIndex=0;this._linear=!1;this._alternative=!1;this._layoutMode="fixed";this._layoutAlign="center";this._initialize=!1;this._clickListener=e=>this._handleClick(e),this._keyListener=e=>this._onKeydown(e),this._stepFocusListener=()=>this._onStepFocus(),this._stepBlurListener=()=>this._onStepBlur(),this._stepExpandedContentFocusInListener=e=>this._onStepExpandedContentFocusIn(e),this._stepExpandedContentFocusOutListener=e=>this._onStepExpandedContentFocusOut(e),this._slotChangeListener=e=>this._onSlotChange(e)}initialize(){this._adapter.initializeAccessibility(),this._adapter.assignIndices(),this._adapter.setLinearState(this._linear),this._adapter.setAlternativeState(this._alternative),this._adapter.setLayoutAlign(this._layoutAlign),this._adapter.setLayoutMode(this._layoutMode),this._adapter.addRootListener("click",this._clickListener),this._adapter.addHostListener("keydown",this._keyListener),this._adapter.assignFirstLastStep(),this._adapter.addRootListener(a.events.EXPANDED_CONTENT_FOCUSIN,this._stepExpandedContentFocusInListener),this._adapter.addRootListener(a.events.EXPANDED_CONTENT_FOCUSOUT,this._stepExpandedContentFocusOutListener),this._applySelectedIndex(),this._patchBrowser(),this._adapter.setStepsListener("blur",this._stepBlurListener),this._adapter.setStepsListener("focus",this._stepFocusListener),this._initialize||this._adapter.addSlotChangeListener(this._slotChangeListener),this._initialize=!0}disconnect(){this._adapter.removeRootListener("click",this._clickListener),this._adapter.removeHostListener("keydown",this._keyListener),this._adapter.removeSlotChangeListener(this._slotChangeListener),this._adapter.removeStepsListener("blur",this._stepBlurListener),this._adapter.removeStepsListener("focus",this._stepFocusListener)}get steps(){return JSON.parse(JSON.stringify(this._steps))}set steps(t){if(Array.isArray(t)&&t.length>0)this._steps=[...t.map(e=>g({},e))];else{this._steps=[];return}this._renderConfiguration()}get selectedIndex(){return this._selectedIndex}set selectedIndex(t){if(!v(t))t=0;else if(!m(t)){let e=Number(t);t=isNaN(e)?0:e}this._selectedIndex!==t&&(this._selectedIndex=t,this._adapter.setHostAttribute(i.attributes.SELECTED_INDEX,this._selectedIndex.toString()),this._applySelectedIndex())}get linear(){return this._linear}set linear(t){t=Boolean(t),this._linear!==t&&(this._linear=t,this._adapter.setLinearState(this._linear),this._adapter.setHostAttribute(i.attributes.LINEAR,this._linear.toString()))}get alternative(){return this._alternative}set alternative(t){t=Boolean(t),this._alternative!==t&&(this._alternative=t,this._adapter.setAlternativeState(this._alternative),this._adapter.setHostAttribute(i.attributes.ALTERNATIVE,this._alternative.toString()))}get layoutMode(){return this._layoutMode}set layoutMode(t){!/^(fixed|clustered)$/.test(t)||this._layoutMode!==t&&(this._layoutMode=t,this._adapter.setHostAttribute(i.attributes.LAYOUT_MODE,this._layoutMode),this._adapter.setLayoutMode(this._layoutMode))}get layoutAlign(){return this._layoutAlign}set layoutAlign(t){!/^(left|center|right)$/.test(t)||this._layoutAlign!==t&&(this._layoutAlign=t,this._adapter.setLayoutAlign(this._layoutAlign),this._adapter.setHostAttribute(i.attributes.LAYOUT_ALIGN,this._layoutAlign))}get disabled(){return this._disabled}set disabled(t){t!==this._disabled&&(this._disabled=t,this._applyDisabled())}get vertical(){return this._vertical}set vertical(t){t!==this._vertical&&(this._vertical=t,this._applyVertical(),this._adapter.toggleHostAttribute(i.attributes.VERTICAL,this._vertical))}_applyVertical(){this._adapter.setVertical(this._vertical)}_applyDisabled(){this._disabled?this._adapter.setHostAttribute(i.attributes.DISABLED,"disabled"):this._adapter.removeHostAttribute(i.attributes.DISABLED),this._adapter.toggleDisabled(this._disabled)}_applySelectedIndex(){this._adapter.setSelectedByIndex(this._selectedIndex)}_handleClick(t){if(t.preventDefault(),this._linear)return;let e=I(t),s=e.find(u=>u.classList&&u.classList.contains(a.classes.STEP)),o=e.find(u=>u.localName===a.elementName);s&&o&&!o.selected&&!o.disabled&&this._adapter.emitHostEvent(a.events.SELECT,o.index,!0,!0)&&(this._adapter.setSelected(o),this.selectedIndex=o.index)}_renderConfiguration(){let t=l.createSteps({steps:this._steps,selectedIndex:this._selectedIndex,alternative:this._alternative,layoutAlign:this._layoutAlign,layoutMode:this._layoutMode,linear:this._linear});this.disconnect(),this._adapter.applyConfiguredSteps(t),this.initialize()}_onKeydown(t){if(this._linear)return;let e=this._getKeyFromEvent(t);if(!this._adapter.isStepperFocused()||!e)return;[a.strings.HOME_KEY,a.strings.END_KEY,a.strings.ARROW_DOWN_KEY,i.strings.ARROW_UP_KEY].includes(e)&&t.preventDefault();let s=this._vertical?this._determineVerticalMoveTarget(e):this._determineMoveTarget(e);s&&this._moveFocusTo(s)}_moveFocusTo(t){E(t,a.selectors.STEP).focus()}_getKeyFromEvent(t){return i.ACCEPTABLE_KEYS.includes(t.key)?t.key:i.KEYCODE_MAP[t.keyCode]}_determineMoveTarget(t){let e=this._adapter.getFocusedOrSelectedStep();if(e)switch(t){case i.strings.ARROW_RIGHT_KEY:return this._adapter.getStep(e.index+1);case i.strings.ARROW_LEFT_KEY:return this._adapter.getStep(e.index-1);case i.strings.HOME_KEY:return this._adapter.getStep(0);case i.strings.END_KEY:return this._adapter.getLastStep()}return e}_determineVerticalMoveTarget(t){let e=this._adapter.getFocusedOrSelectedStep();if(e)switch(t){case i.strings.ARROW_DOWN_KEY:return this._adapter.getStep(e.index+1);case i.strings.ARROW_UP_KEY:return this._adapter.getStep(e.index-1);case i.strings.HOME_KEY:return this._adapter.getStep(0);case i.strings.END_KEY:return this._adapter.getLastStep()}return e}_onSlotChange(t){this.disconnect(),this.initialize()}_onStepExpandedContentFocusIn(t){let e=this._adapter.getStep(t.detail.index+1);e&&e.setStepTabIndex(0),t.detail.setStepTabIndex(0)}_onStepExpandedContentFocusOut(t){let e=t.target,s=this._adapter.getStep(e.index+1);s&&s.setStepTabIndex(-1),e.setStepTabIndex(-1)}_onStepFocus(){this._adapter.toggleRootClass(i.classes.FOCUSED,!0)}_onStepBlur(){this._adapter.toggleRootClass(i.classes.FOCUSED,!1)}_patchBrowser(){new C().SAFARI()&&this._adapter.patchSafari()}};var H='<template><div class="forge-stepper" part="root"><slot></slot></div></template>',w=".forge-stepper{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;white-space:nowrap;overflow:hidden}.forge-stepper:not(.forge-stepper--vertical) ::slotted(*){display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;min-width:112px}.forge-stepper--fixed ::slotted(*){-webkit-box-flex:1;flex:1}.forge-stepper--alternative{-webkit-box-align:start;align-items:flex-start}.forge-stepper--alternative ::slotted(*){min-width:160px}.forge-stepper--align-left{-webkit-box-pack:start;justify-content:flex-start}.forge-stepper--align-center{-webkit-box-pack:center;justify-content:center}.forge-stepper--align-right{-webkit-box-pack:end;justify-content:flex-end}:host{display:block}:host([hidden]){display:none}:host([vertical]) .forge-stepper{display:unset;-webkit-box-align:unset;align-items:unset;white-space:unset;overflow:unset}",r=class extends x{constructor(){super();T(this,H,w),this._foundation=new h(new S(this))}static get observedAttributes(){return[i.attributes.SELECTED_INDEX,i.attributes.LINEAR,i.attributes.ALTERNATIVE,i.attributes.LAYOUT_MODE,i.attributes.LAYOUT_ALIGN,i.attributes.DISABLED,i.attributes.VERTICAL]}async connectedCallback(){await f(this),this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,s,o){switch(e){case i.attributes.SELECTED_INDEX:this.selectedIndex=Number(o)||0;break;case i.attributes.LINEAR:this.linear=_(o);break;case i.attributes.ALTERNATIVE:this.alternative=_(o);break;case i.attributes.LAYOUT_MODE:this.layoutMode=o;break;case i.attributes.LAYOUT_ALIGN:this.layoutAlign=o;break;case i.attributes.DISABLED:this.disabled=_(o);break;case i.attributes.VERTICAL:this.vertical=_(o);break}}};p([d()],r.prototype,"steps",2),p([d()],r.prototype,"selectedIndex",2),p([d()],r.prototype,"linear",2),p([d()],r.prototype,"alternative",2),p([d()],r.prototype,"layoutMode",2),p([d()],r.prototype,"layoutAlign",2),p([d()],r.prototype,"disabled",2),p([d()],r.prototype,"vertical",2),r=p([R({name:i.elementName,dependencies:[D]})],r);function Ce(){y(r)}export{i as a,S as b,h as c,r as d,Ce as e};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a,d as D}from"./chunk.SJSLC6XF.js";import{a as I}from"./chunk.EC6JSIQW.js";import{a as C}from"./chunk.D4SNVKDA.js";import{a as N}from"./chunk.A23NSEWA.js";import{a as d}from"./chunk.B3IJU6XJ.js";import{a as R,b as O}from"./chunk.BSZ2LBJX.js";import{a as x}from"./chunk.3E5QKMHL.js";import{a as y,e as T,g as E}from"./chunk.HN4PXH3D.js";import{l as f,s as A,t as b}from"./chunk.R4NDFXVA.js";import{b as v,d as m,k as _}from"./chunk.G76HB2FK.js";import{a as g,f as p}from"./chunk.MCIQXNKY.js";var F=`${O}stepper`,M={STEPPER:"forge-stepper",LINEAR:"forge-stepper--linear",ALTERNATIVE:"forge-stepper--alternative",CLUSTERED:"forge-stepper--clustered",FIXED:"forge-stepper--fixed",ALIGN_LEFT:"forge-stepper--align-left",ALIGN_CENTER:"forge-stepper--align-center",ALIGN_RIGHT:"forge-stepper--align-right",VERTICAL:"forge-stepper--vertical",FOCUSED:"forge-stepper--focused"},Y={STEPPER:`.${M.STEPPER}`},K={SELECTED_INDEX:"selected-index",LINEAR:"linear",ALTERNATIVE:"alternative",LAYOUT_MODE:"layout-mode",LAYOUT_ALIGN:"layout-align",DISABLED:"disabled",VERTICAL:"vertical"},n={ARROW_LEFT_KEY:"ArrowLeft",ARROW_RIGHT_KEY:"ArrowRight",ARROW_UP_KEY:"ArrowUp",ARROW_DOWN_KEY:"ArrowDown",END_KEY:"End",ENTER_KEY:"Enter",HOME_KEY:"Home",SPACE_KEY:"Space",TAB_KEY:"Tab"},c={ARROW_LEFT_KEYCODE:37,ARROW_RIGHT_KEYCODE:39,END_KEYCODE:35,HOME_KEYCODE:36,ENTER_KEYCODE:13,SPACE_KEYCODE:32},k=[n.ARROW_LEFT_KEY,n.ARROW_RIGHT_KEY,n.ARROW_DOWN_KEY,n.ARROW_UP_KEY,n.END_KEY,n.HOME_KEY,n.ENTER_KEY,n.SPACE_KEY,n.TAB_KEY],P={[c.ARROW_LEFT_KEYCODE]:n.ARROW_LEFT_KEY,[c.ARROW_RIGHT_KEYCODE]:n.ARROW_RIGHT_KEY,[c.END_KEYCODE]:n.END_KEY,[c.HOME_KEYCODE]:n.HOME_KEY,[c.ENTER_KEYCODE]:n.ENTER_KEY,[c.SPACE_KEYCODE]:n.SPACE_KEY},i={elementName:F,classes:M,selectors:Y,attributes:K,numbers:c,strings:n,ACCEPTABLE_KEYS:k,KEYCODE_MAP:P};var l=class{static createStepElement(t,e,s){let o=document.createElement(a.elementName);return o.index=e,o.completed=t.completed||!1,o.editable=t.editable||!1,o.selected=s.selectedIndex===e,o.alternative=s.alternative,o.error=t.error||!1,o.disabled=t.disabled||!1,o.vertical=t.vertical||!1,o.ignoreUserExpansion=t.ignoreUserExpansion||!1,o.expanded=t.expanded||!1,s.linear&&e>s.selectedIndex&&(o.tabIndex=-1),o.textContent=t.label,t.optionalLabel&&o.appendChild(this.createStepOptionalLabel(t.optionalLabel)),o}static createStepOptionalLabel(t){let e=document.createElement("span");return e.slot="optional",e.textContent=t||"",e}static setLinearState(t,e){let s=t.classList.contains(i.classes.LINEAR);s&&!e&&(t.classList.remove(i.classes.LINEAR),s=!1),!s&&e&&t.classList.add(i.classes.LINEAR)}static setAlternativeState(t,e){let s=t.classList.contains(i.classes.ALTERNATIVE);s&&!e&&(t.classList.remove(i.classes.ALTERNATIVE),s=!1),!s&&e&&t.classList.add(i.classes.ALTERNATIVE)}static setLayoutMode(t,e){switch(e){case"clustered":t.classList.contains(i.classes.FIXED)&&t.classList.remove(i.classes.FIXED),t.classList.add(i.classes.CLUSTERED);break;case"fixed":t.classList.contains(i.classes.CLUSTERED)&&t.classList.remove(i.classes.CLUSTERED),t.classList.add(i.classes.FIXED);break}}static setLayoutAlign(t,e){switch(t.classList.contains(i.classes.ALIGN_LEFT)&&t.classList.remove(i.classes.ALIGN_LEFT),t.classList.contains(i.classes.ALIGN_CENTER)&&t.classList.remove(i.classes.ALIGN_CENTER),t.classList.contains(i.classes.ALIGN_RIGHT)&&t.classList.remove(i.classes.ALIGN_RIGHT),e){case"left":t.classList.add(i.classes.ALIGN_LEFT);break;case"center":t.classList.add(i.classes.ALIGN_CENTER);break;case"right":t.classList.add(i.classes.ALIGN_RIGHT);break}}static createSteps(t){let e=[];return t.steps.forEach((s,o)=>{let u=l.createStepElement(s,o,t);e.push(u)}),e[0].setAttribute(a.attributes.FIRST,""),e[e.length-1].setAttribute(a.attributes.LAST,""),e}};var S=class extends N{constructor(e){super(e);this._rootElement=E(e,i.selectors.STEPPER),this._slotElement=this._rootElement.querySelector("slot")}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","tablist")}patchSafari(){this._applyToSteps(e=>e.setAttribute("safari",""))}addSlotChangeListener(e){this._slotElement.addEventListener("slotchange",e)}removeSlotChangeListener(e){this._slotElement.addEventListener("slotchange",e)}getLastStep(){let e=this._getSteps();return e.item(e.length-1)}setSelected(e){this._getSteps().forEach(s=>{s===e?s.selected=!0:s.selected=!1})}assignIndices(){this._getSteps().forEach((s,o)=>{s.index=o})}assignFirstLastStep(){let e=this._getSteps();e&&e.length>1&&(e[0].setAttribute("first",""),e[e.length-1].setAttribute("last",""))}setLayoutAlign(e){l.setLayoutAlign(this._rootElement,e)}setLayoutMode(e){l.setLayoutMode(this._rootElement,e),this._applyToSteps(s=>s.setAttribute(a.attributes.CLUSTERED,""))}setAlternativeState(e){l.setAlternativeState(this._rootElement,e),this._applyToSteps(s=>s.alternative=e)}setVertical(e){b(this._rootElement,e,i.classes.VERTICAL),this._applyToSteps(s=>s.vertical=e)}setLinearState(e){l.setLinearState(this._rootElement,e)}removeRootListener(e,s){this._rootElement.removeEventListener("click",s)}addRootListener(e,s){this._rootElement.addEventListener(e,s)}setSelectedByIndex(e){this._applyToSteps(s=>{s.selected&&s.index!==e&&(s.selected=!1),s.index===e&&(s.selected=!0)})}applyConfiguredSteps(e){this._component.querySelectorAll(a.elementName).forEach(s=>{this._component.removeChild(s)}),e.forEach(s=>this._component.appendChild(s))}tryGetFocusedStep(){let e,s=A();return this._applyToSteps(o=>{s===E(o,a.selectors.STEP)&&(e=o)}),e}getFocusedOrSelectedStep(){let e=this.tryGetFocusedStep();return e||(e=this._getSteps()[0],e.focus()),e}getStep(e){let s=0,o=this._getSteps();return e<0?o.item(o.length-1):(o.length>e&&(s=e),o.item(s))}toggleDisabled(e){this._applyToSteps(s=>s.disabled=e)}toggleRootClass(e,s){b(this._rootElement,s,e)}isStepperFocused(){return this._rootElement.classList.contains(i.classes.FOCUSED)}setStepsListener(e,s){this._applyToSteps(o=>o.addEventListener(e,s))}removeStepsListener(e,s){this._applyToSteps(o=>o.removeEventListener(e,s))}_applyToSteps(e){this._getSteps().forEach(e)}_getSteps(){return this._component.querySelectorAll(a.elementName)}};var h=class{constructor(t){this._adapter=t;this._steps=[];this._selectedIndex=0;this._linear=!1;this._alternative=!1;this._layoutMode="fixed";this._layoutAlign="center";this._initialize=!1;this._clickListener=e=>this._handleClick(e),this._keyListener=e=>this._onKeydown(e),this._stepFocusListener=()=>this._onStepFocus(),this._stepBlurListener=()=>this._onStepBlur(),this._stepExpandedContentFocusInListener=e=>this._onStepExpandedContentFocusIn(e),this._stepExpandedContentFocusOutListener=e=>this._onStepExpandedContentFocusOut(e),this._slotChangeListener=e=>this._onSlotChange(e)}initialize(){this._adapter.initializeAccessibility(),this._adapter.assignIndices(),this._adapter.setLinearState(this._linear),this._adapter.setAlternativeState(this._alternative),this._adapter.setLayoutAlign(this._layoutAlign),this._adapter.setLayoutMode(this._layoutMode),this._adapter.addRootListener("click",this._clickListener),this._adapter.addHostListener("keydown",this._keyListener),this._adapter.assignFirstLastStep(),this._adapter.addRootListener(a.events.EXPANDED_CONTENT_FOCUSIN,this._stepExpandedContentFocusInListener),this._adapter.addRootListener(a.events.EXPANDED_CONTENT_FOCUSOUT,this._stepExpandedContentFocusOutListener),this._applySelectedIndex(),this._patchBrowser(),this._adapter.setStepsListener("blur",this._stepBlurListener),this._adapter.setStepsListener("focus",this._stepFocusListener),this._initialize||this._adapter.addSlotChangeListener(this._slotChangeListener),this._initialize=!0}disconnect(){this._adapter.removeRootListener("click",this._clickListener),this._adapter.removeHostListener("keydown",this._keyListener),this._adapter.removeSlotChangeListener(this._slotChangeListener),this._adapter.removeStepsListener("blur",this._stepBlurListener),this._adapter.removeStepsListener("focus",this._stepFocusListener)}get steps(){return JSON.parse(JSON.stringify(this._steps))}set steps(t){if(Array.isArray(t)&&t.length>0)this._steps=[...t.map(e=>g({},e))];else{this._steps=[];return}this._renderConfiguration()}get selectedIndex(){return this._selectedIndex}set selectedIndex(t){if(!v(t))t=0;else if(!m(t)){let e=Number(t);t=isNaN(e)?0:e}this._selectedIndex!==t&&(this._selectedIndex=t,this._adapter.setHostAttribute(i.attributes.SELECTED_INDEX,this._selectedIndex.toString()),this._applySelectedIndex())}get linear(){return this._linear}set linear(t){t=Boolean(t),this._linear!==t&&(this._linear=t,this._adapter.setLinearState(this._linear),this._adapter.setHostAttribute(i.attributes.LINEAR,this._linear.toString()))}get alternative(){return this._alternative}set alternative(t){t=Boolean(t),this._alternative!==t&&(this._alternative=t,this._adapter.setAlternativeState(this._alternative),this._adapter.setHostAttribute(i.attributes.ALTERNATIVE,this._alternative.toString()))}get layoutMode(){return this._layoutMode}set layoutMode(t){!/^(fixed|clustered)$/.test(t)||this._layoutMode!==t&&(this._layoutMode=t,this._adapter.setHostAttribute(i.attributes.LAYOUT_MODE,this._layoutMode),this._adapter.setLayoutMode(this._layoutMode))}get layoutAlign(){return this._layoutAlign}set layoutAlign(t){!/^(left|center|right)$/.test(t)||this._layoutAlign!==t&&(this._layoutAlign=t,this._adapter.setLayoutAlign(this._layoutAlign),this._adapter.setHostAttribute(i.attributes.LAYOUT_ALIGN,this._layoutAlign))}get disabled(){return this._disabled}set disabled(t){t!==this._disabled&&(this._disabled=t,this._applyDisabled())}get vertical(){return this._vertical}set vertical(t){t!==this._vertical&&(this._vertical=t,this._applyVertical(),this._adapter.toggleHostAttribute(i.attributes.VERTICAL,this._vertical))}_applyVertical(){this._adapter.setVertical(this._vertical)}_applyDisabled(){this._disabled?this._adapter.setHostAttribute(i.attributes.DISABLED,"disabled"):this._adapter.removeHostAttribute(i.attributes.DISABLED),this._adapter.toggleDisabled(this._disabled)}_applySelectedIndex(){this._adapter.setSelectedByIndex(this._selectedIndex)}_handleClick(t){if(t.preventDefault(),this._linear)return;let e=I(t),s=e.find(u=>u.classList&&u.classList.contains(a.classes.STEP)),o=e.find(u=>u.localName===a.elementName);s&&o&&!o.selected&&!o.disabled&&this._adapter.emitHostEvent(a.events.SELECT,o.index,!0,!0)&&(this._adapter.setSelected(o),this.selectedIndex=o.index)}_renderConfiguration(){let t=l.createSteps({steps:this._steps,selectedIndex:this._selectedIndex,alternative:this._alternative,layoutAlign:this._layoutAlign,layoutMode:this._layoutMode,linear:this._linear});this.disconnect(),this._adapter.applyConfiguredSteps(t),this.initialize()}_onKeydown(t){if(this._linear)return;let e=this._getKeyFromEvent(t);if(!this._adapter.isStepperFocused()||!e)return;[a.strings.HOME_KEY,a.strings.END_KEY,a.strings.ARROW_DOWN_KEY,i.strings.ARROW_UP_KEY].includes(e)&&t.preventDefault();let s=this._vertical?this._determineVerticalMoveTarget(e):this._determineMoveTarget(e);s&&this._moveFocusTo(s)}_moveFocusTo(t){E(t,a.selectors.STEP).focus()}_getKeyFromEvent(t){return i.ACCEPTABLE_KEYS.includes(t.key)?t.key:i.KEYCODE_MAP[t.keyCode]}_determineMoveTarget(t){let e=this._adapter.getFocusedOrSelectedStep();if(e)switch(t){case i.strings.ARROW_RIGHT_KEY:return this._adapter.getStep(e.index+1);case i.strings.ARROW_LEFT_KEY:return this._adapter.getStep(e.index-1);case i.strings.HOME_KEY:return this._adapter.getStep(0);case i.strings.END_KEY:return this._adapter.getLastStep()}return e}_determineVerticalMoveTarget(t){let e=this._adapter.getFocusedOrSelectedStep();if(e)switch(t){case i.strings.ARROW_DOWN_KEY:return this._adapter.getStep(e.index+1);case i.strings.ARROW_UP_KEY:return this._adapter.getStep(e.index-1);case i.strings.HOME_KEY:return this._adapter.getStep(0);case i.strings.END_KEY:return this._adapter.getLastStep()}return e}_onSlotChange(t){this.disconnect(),this.initialize()}_onStepExpandedContentFocusIn(t){let e=this._adapter.getStep(t.detail.index+1);e&&e.setStepTabIndex(0),t.detail.setStepTabIndex(0)}_onStepExpandedContentFocusOut(t){let e=t.target,s=this._adapter.getStep(e.index+1);s&&s.setStepTabIndex(-1),e.setStepTabIndex(-1)}_onStepFocus(){this._adapter.toggleRootClass(i.classes.FOCUSED,!0)}_onStepBlur(){this._adapter.toggleRootClass(i.classes.FOCUSED,!1)}_patchBrowser(){new C().SAFARI()&&this._adapter.patchSafari()}};var H='<template><div class="forge-stepper" part="root"><slot></slot></div></template>',w=".forge-stepper{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;white-space:nowrap;overflow:hidden}.forge-stepper:not(.forge-stepper--vertical) ::slotted(*){display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;min-width:112px}.forge-stepper--fixed ::slotted(*){-webkit-box-flex:1;flex:1}.forge-stepper--alternative{-webkit-box-align:start;align-items:flex-start}.forge-stepper--alternative ::slotted(*){min-width:160px}.forge-stepper--align-left{-webkit-box-pack:start;justify-content:flex-start}.forge-stepper--align-center{-webkit-box-pack:center;justify-content:center}.forge-stepper--align-right{-webkit-box-pack:end;justify-content:flex-end}:host{display:block}:host([hidden]){display:none}:host([vertical]) .forge-stepper{display:unset;-webkit-box-align:unset;align-items:unset;white-space:unset;overflow:unset}",r=class extends x{constructor(){super();T(this,H,w),this._foundation=new h(new S(this))}static get observedAttributes(){return[i.attributes.SELECTED_INDEX,i.attributes.LINEAR,i.attributes.ALTERNATIVE,i.attributes.LAYOUT_MODE,i.attributes.LAYOUT_ALIGN,i.attributes.DISABLED,i.attributes.VERTICAL]}async connectedCallback(){await f(this),this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,s,o){switch(e){case i.attributes.SELECTED_INDEX:this.selectedIndex=Number(o)||0;break;case i.attributes.LINEAR:this.linear=_(o);break;case i.attributes.ALTERNATIVE:this.alternative=_(o);break;case i.attributes.LAYOUT_MODE:this.layoutMode=o;break;case i.attributes.LAYOUT_ALIGN:this.layoutAlign=o;break;case i.attributes.DISABLED:this.disabled=_(o);break;case i.attributes.VERTICAL:this.vertical=_(o);break}}};p([d()],r.prototype,"steps",2),p([d()],r.prototype,"selectedIndex",2),p([d()],r.prototype,"linear",2),p([d()],r.prototype,"alternative",2),p([d()],r.prototype,"layoutMode",2),p([d()],r.prototype,"layoutAlign",2),p([d()],r.prototype,"disabled",2),p([d()],r.prototype,"vertical",2),r=p([R({name:i.elementName,dependencies:[D]})],r);function Ce(){y(r)}export{i as a,S as b,h as c,r as d,Ce as e};
|
|
7
|
+
//# sourceMappingURL=chunk.TLHI6K2R.js.map
|
|
File without changes
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as $,b as H,c as v,d as X}from"./chunk.AWCBH5KW.js";import{c as ae,f as re}from"./chunk.7NXPOEXV.js";import{a as x,d as se}from"./chunk.CSOY4C7A.js";import{a as D}from"./chunk.EC6JSIQW.js";import{b as ee}from"./chunk.LZMYHIO2.js";import{a as ne}from"./chunk.VLTJFKGZ.js";import{a as le,d as ie,l as oe}from"./chunk.7TQYFMM4.js";import{a as te}from"./chunk.24D46RLZ.js";import{a as Q}from"./chunk.A23NSEWA.js";import{a as b}from"./chunk.B3IJU6XJ.js";import{a as j,b as U}from"./chunk.BSZ2LBJX.js";import{a as J}from"./chunk.3E5QKMHL.js";import{a as q}from"./chunk.HN4PXH3D.js";import{d as g,e as F,f as p,g as y,i as W,j as K,t as V}from"./chunk.R4NDFXVA.js";import{b as L,c as Y,d as I,h as z,j as R,k as h,l as G,o as Z}from"./chunk.G76HB2FK.js";import{a as C,f as _}from"./chunk.MCIQXNKY.js";var w=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?H(this._items,v(this._key,e))||null:this._items.find(t=>t===e)||null}};var S=`${U}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"},Ee={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}`},_e={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"},be={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`},pe={SELECT_ALL:"select-all",SELECT_ROW:"select-row",DEFAULT_LAYOUT_TYPE:"auto"},Te={SORT_DOWN:"arrow_downward"},Ce={DEFAULT_FILTER_DEBOUNCE_TIME:750,MIN_RESIZE_WIDTH:100,RESIZE_HOVER_DURATION:150},o={elementName:S,classes:ce,selectors:Ee,attributes:_e,events:be,strings:pe,icons:Te,numbers:Ce};var M=(l=>(l.Left="left",l.Right="right",l.Center="center",l))(M||{}),B=(l=>(l.Ascending="ASC",l.Descending="DESC",l.Unset="UNSET",l))(B||{}),he=(a=>(a.InputText="text",a.InputNumber="number",a.Select="select",a.SelectMultiple="select-multiple",a.Date="date",a.DateRange="date-range",a))(he||{});function de(f){return f&&typeof f=="object"&&"content"in f}var n=class{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),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(ne.elementName);return e.textContent="Ctrl + click to sort multiple columns",e.position="bottom",e.delay=0,e}static _createTableHead(e){let t=document.createElement("thead"),l=t.insertRow();p([o.classes.TABLE_ROW,o.classes.TABLE_HEAD_ROW],l);let i=!1;for(let s=0;s<e.columnConfigurations.length;s++){let a=e.columnConfigurations[s],r=document.createElement("th");r.scope="col",p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],r);let c=document.createElement("div");if(c.classList.add(o.classes.TABLE_HEAD_CELL_CONTAINER),e.multiColumnSort){let d=n._createMultisortTooltip();c.appendChild(d)}if(a.align&&n._setCellAlignmentClass(c,a.align),L(a.width)){let d=K(a.width);d&&(r.style.width=d)}if(e.resizable&&a.resizable!==!1){let d=document.createElement("div");d.classList.add(o.classes.TABLE_RESIZE_HANDLE),r.appendChild(d)}L(a.headerCellStyle)&&R(a.headerCellStyle)&&(Object.assign(r.style,a.headerCellStyle),Object.assign(c.style,a.headerCellStyle));let m=document.createElement("span");if(m.classList.add(o.classes.TABLE_HEAD_CELL_TEXT),m.textContent=a.header&&typeof a.header=="string"?a.header.trim():"",a.sortable){r.classList.add(o.classes.TABLE_HEAD_CELL_SORTABLE);let d=document.createElement("span");p([o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,o.classes.TABLE_HEAD_CELL_SORT_ORDER],d);let u=document.createElement(le.elementName);u.name=o.icons.SORT_DOWN,p([o.classes.TABLE_HEAD_CELL_SORT_ICON],u),e.multiColumnSort?typeof a.initialSort=="object"&&a.initialSort.sortOrder&&(d.textContent=a.initialSort.sortOrder.toString(),e.columnConfigurations.filter(T=>typeof T.initialSort=="object").length>1&&y(o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,d),r.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,a.initialSort.direction)):e.sortedColumn===s&&!i&&!e.multiColumnSort&&(r.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,e.sortDirection),i=!0),c.appendChild(u),c.appendChild(d)}typeof a.headerTemplate=="function"?Promise.resolve(a.headerTemplate(s,c,a)).then(d=>{if(d){let u=document.createElement("div");p(o.classes.TABLE_CELL_CONTAINER,u),typeof d=="string"?u.innerHTML=d:n._prepend(d,u),u.setAttribute(o.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);n._setColumnSortDirection(i,l)}static _setColumnSortDirection(e,t){e.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&e.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),e.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&e.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),!t||t==="DESC"?e.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING):e.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)}static _createTableBody(e){let t=document.createElement("tbody");return n._getOrderedRowData(e.columnConfigurations,e.data).forEach((i,s)=>{let a=t.insertRow();p([o.classes.TABLE_ROW,o.classes.TABLE_BODY_ROW],a),n._populateRowCells(e,a,i,s),typeof e.rowCreatedCallback=="function"&&e.rowCreatedCallback(a,s,C({},e.data[s].data))}),t}static _populateRowCells(e,t,l,i){for(let s=0;s<l.length;s++){let a=e.columnConfigurations[s],r=t.insertCell();if(p([o.classes.TABLE_CELL,o.classes.TABLE_BODY_CELL],r),L(a.width)){let m=K(a.width);m&&(r.style.width=m)}let c=document.createElement("div");if(c.classList.add(o.classes.TABLE_CELL_CONTAINER),L(a.cellStyle)&&R(a.cellStyle)&&(Object.assign(r.style,a.cellStyle),Object.assign(c.style,a.cellStyle)),a.template&&typeof a.template=="function"){let m=e.data[i]?e.data[i].data:void 0;Promise.resolve(a.template(i,c,m)).then(d=>{let u=de(d)?d:{content:d,stopClickPropagation:a.stopCellTemplateClickPropagation};!u.content||(typeof u.content=="string"?c.innerHTML=u.content:c.appendChild(u.content),c.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE,""),u.stopClickPropagation&&c.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION,""))})}else if(a.property){let m=document.createElement("span");m.classList.add(o.classes.TABLE_CELL_CONTAINER_TEXT),c.appendChild(m),a.transform&&typeof a.transform=="function"?Promise.resolve(a.transform(l[s])).then(d=>m.textContent=d):l[s]==null?m.textContent="":m.textContent=l[s].toString()}if(a.align&&n._setCellAlignmentClass(c,a.align),r.appendChild(c),L(a.columnSpan)){if(a.columnSpan==="all"){r.colSpan=l.length-s;break}else if(typeof a.columnSpan=="number"&&a.columnSpan>0){let m=a.columnSpan;a.columnSpan>l.length-s&&(m=l.length),r.colSpan=m,s=s+(m-1)}}typeof e.cellCreatedCallback=="function"&&e.cellCreatedCallback(r,i,s)}}static _setCellAlignmentClass(e,t){switch(t){case"center":e.classList.add(o.classes.TABLE_CELL_CENTER);break;case"right":e.classList.add(o.classes.TABLE_CELL_RIGHT);break}}static _getNonExpandedRows(e){return Array.from(e).filter(t=>!t.classList.contains(o.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _getExpandedRows(e){return Array.from(e).filter(t=>t.classList.contains(o.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _createColumnDataMap(e,t){return e.map(l=>({config:l,data:t.map(i=>{if(l.property){let s=$(i.data,l.property);return L(s)?s:null}return null})}))}static _getOrderedRowData(e,t){let l=n._createColumnDataMap(e,t),i=[];for(let s of l)for(let a=0;a<s.data.length;a++)i[a]||(i[a]=[]),i[a].push(s.data[a]);return i}static _attachRowClickListeners(e,t,l){n._getNonExpandedRows(e.rows).forEach(s=>{s.addEventListener("click",t),l&&s.addEventListener("dblclick",l)})}static _addRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.add(o.classes.TABLE_BODY_ROW_CLICKABLE)})}static _removeRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.remove(o.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,s,a,r,c,m){e&&n._createHeadSelectColumn(e,l,i,s,a,m),t&&n._createBodySelectColumn(t,a,r,c,m)}static _createHeadSelectColumn(e,t,l,i,s,a){var r;if(Array.from(e.rows).forEach(c=>{let m=document.createElement("th");p([o.classes.TABLE_CELL,o.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(o.classes.TABLE_CELL_SELECT),typeof l=="function"?n._renderSelectAllTemplate(l,e).then(()=>{typeof i=="function"&&i()}):c==null||c.appendChild(n._createCheckboxElement(!0,s,null,null,null,a))}}static _createBodySelectColumn(e,t,l,i,s){if(n._getNonExpandedRows(e.rows).forEach((r,c)=>n._addRowSelectColumn(r,t,c,l[c],i,s)),e.rows.length){let r=e.rows.item(0);r&&n._updateExpandedRowColspan(e.rows,r.cells.length)}}static _addRowSelectColumn(e,t,l,i,s,a){let r=e.insertCell(0);p([o.classes.TABLE_CELL,o.classes.TABLE_BODY_CELL,o.classes.TABLE_CELL_SELECT],r),r.appendChild(n._createCheckboxElement(!1,t,l,i,s,a))}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(o.classes.TABLE_CELL_SELECT))}static _createCheckboxElement(e,t,l,i,s,a){let r=document.createElement("div");if(r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER),t)switch(t){case"center":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER);break;case"left":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT);break;case"right":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT);break}let c=document.createElement(ae.elementName),m=document.createElement("input");m.type="checkbox";let d=s||"";i&&typeof s=="function"&&(d=s.call(null,l,i.data));let u=document.createElement("forge-tooltip");return u.position="left",e?u.textContent=a||"":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(`.${o.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(o.selectors.CHECKBOX_INPUT):null}static _tryGetSelectAllCheckboxElement(e){let t=e.querySelector(`.${o.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(o.selectors.CHECKBOX_INPUT)||t.querySelector(o.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(o.classes.TABLE_BODY_ROW_SELECTED)||e.classList.add(o.classes.TABLE_BODY_ROW_SELECTED):e.classList.remove(o.classes.TABLE_BODY_ROW_SELECTED)}static _updateExpandedRowColspan(e,t){n._getExpandedRows(e).forEach(i=>{let s=i.cells.item(0);s&&(s.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],s=n._tryGetSelectAllCheckboxElement(i);s&&(n._setSelectedCheckboxState(s,t),n._setIndeterminateCheckboxState(s,!!l))}static setSelectedRows(e,t,l,i,s=!1){if(!e.tBodies.length)return;s||n.clearSelectedRows(e);let a=e.tBodies[0].rows,r=0;i.length&&Array.from(a).forEach((c,m)=>{let d=l[m];if(H(i,v(t,d))){n._setRowSelectedState(c,!0);let T=n._getCheckboxElement(c);T&&n._setSelectedCheckboxState(T,!0),r++}}),n.updateSelectAllState(e,r>0&&a.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(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(i,l)}static setMultiSortColumnSortNumber(e,t,l,i){let r=n._getHeaderCellByIndex(e,l).querySelector(`.${o.classes.TABLE_HEAD_CELL_CONTAINER}`).querySelector(`.${o.classes.TABLE_HEAD_CELL_SORT_ORDER}`);r&&(V(r,typeof i!="number"||!t,o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN),i&&(r.textContent=i.toString()))}static removeColumnSort(e,t){let l=n._getHeaderCellByIndex(e,t);l.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&l.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),l.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&l.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING);let i=n._getSortIconElementFromHeaderCell(l);i&&i.classList.contains(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)&&i.classList.remove(o.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(`.${o.classes.TABLE_HEAD_CELL_SORT_ICON}`)}static setSelectColumnVisibility(e,t,l,i,s,a,r,c,m){let d=e.tHead,u=e.tBodies[0];!d||!u||(t?n._addSelectColumn(d,u,l,i,s,a,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,s,a,r,c,m){n._createSelectColumn(e,t,!!i,s,()=>{i&&n._tryAttachSelectAllTemplateListener(e,i)},a,r,c,m),l&&n._attachRowSelectListeners(t,l),i&&!s&&n._tryAttachSelectAllTemplateListener(e,i)}static setDenseState(e,t){e.classList.contains(o.classes.TABLE_DENSE)&&e.classList.remove(o.classes.TABLE_DENSE),t&&e.classList.add(o.classes.TABLE_DENSE)}static setRoomyState(e,t){e.classList.contains(o.classes.TABLE_ROOMY)&&e.classList.remove(o.classes.TABLE_ROOMY),t&&e.classList.add(o.classes.TABLE_ROOMY)}static setResizable(e){let t=e.tableElement.tHead;e.resizable?(e.tableElement.classList.add(o.classes.TABLE_RESIZABLE),n._addResizeHandles(t,e)):(e.tableElement.classList.remove(o.classes.TABLE_RESIZABLE),n._removeResizeHandles(t))}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 s of i){let a=i.indexOf(s);if(t.columnConfigurations[a].resizable!==!1){let c=document.createElement("div");c.classList.add(o.classes.TABLE_RESIZE_HANDLE),s.appendChild(c)}}}}static _removeResizeHandles(e){if(!e)return;let t=e.rows.item(0);if(t){let l=Array.from(t.cells);for(let i of l){let s=document.querySelector(`.${o.classes.TABLE_RESIZE_HANDLE}`);s&&i.removeChild(s)}}}static setWrapContentState(e,t){t?e.classList.remove(o.classes.TABLE_NO_WRAP_CONTENT):e.classList.add(o.classes.TABLE_NO_WRAP_CONTENT)}static setSelectAllVisibility(e,t,l,i,s,a){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(o.classes.TABLE_CELL_SELECT),i?n._renderSelectAllTemplate(i,r).then(()=>{l&&n._tryAttachSelectAllTemplateListener(r,l)}):m.appendChild(n._createCheckboxElement(!0,s||null,null,null,null,a)),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(o.classes.TABLE_FILTER_VISIBLE):e.tableElement.classList.remove(o.classes.TABLE_FILTER_VISIBLE),e.filter&&!t){if(e.columnConfigurations.every(s=>!s.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(s=>{var a;(a=i.cells.item(0))==null||a.appendChild(s)})}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,s=e.tableElement.tHead.rows.item(i);s&&Array.from(l.children).forEach(a=>{var r;(r=s.cells.item(0))==null||r.appendChild(a)})}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([o.classes.TABLE_ROW,o.classes.TABLE_HEAD_ROW_FILTER],t),e.selectListener){let l=document.createElement("th");p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],l),t.insertBefore(l,t.cells[0]),l.classList.add(o.classes.TABLE_CELL_SELECT)}return e.columnConfigurations.forEach((l,i)=>{let s=document.createElement("th");if(p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],s),l.filter&&L(l.filterDelegate)){let a=document.createElement("div");a.classList.add(o.classes.TABLE_HEAD_CELL_CONTAINER),l.align&&n._setCellAlignmentClass(a,l.align);let r=n._createFilterElement(l,i,e.filterListener);a.appendChild(r),s.appendChild(a)}t.appendChild(s)}),t}static _createFilterElement(e,t,l){let i;if(z(e.filterDelegate))i=e.filterDelegate();else if(e.filterDelegate instanceof te)i=e.filterDelegate;else throw new Error("Invalid filter delegate.");if(l)if(!L(e.filterDebounceTime)||I(e.filterDebounceTime)){let s=L(e.filterDebounceTime)?e.filterDebounceTime:o.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;i.onChange(Z(a=>l(a,t),s))}else i.onChange(s=>l(s,t));return i.element}static _getFilterRowElement(e){if(!!e)return Array.from(e.rows).find(t=>t.classList.contains(o.classes.TABLE_HEAD_ROW_FILTER))}static async expandRow(e,t,l){let i=e.tableElement.tBodies[0],a=n._getNonExpandedRows(i.rows)[t];a.classList.add(o.classes.TABLE_ROW_EXPANDED);let r=Array.from(i.rows).indexOf(a),c=i.insertRow(r+1);p([o.classes.TABLE_ROW,o.classes.TABLE_BODY_ROW,o.classes.TABLE_ROW_EXPANDABLE_CONTENT],c);let m=c.insertCell();m.setAttribute("colspan",a.cells.length.toString()),m.classList.add(o.classes.TABLE_ROW_EXPANDABLE_CONTENT_CELL);let d=document.createElement("div"),u=document.createElement(x.elementName);u.appendChild(d),m.appendChild(u);let T=l;if(z(l)){let me=e.data[t]?e.data[t].data:void 0,ue=l(t,d,me);try{let A=await Promise.resolve(ue);T=de(A)?A.content:A}catch(A){console.error("Failed to load row template "+A.message),T=""}}T&&n._setRowTemplate(d,T),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],s=n._getNonExpandedRows(l.rows)[t],a=Array.from(l.rows).indexOf(s);if(s&&s.classList.contains(o.classes.TABLE_ROW_EXPANDED)){let r=l.rows[a+1],c=r.querySelector(x.elementName);if(c&&c.open)return c.open=!1,new Promise(m=>{setTimeout(()=>{s.classList.remove(o.classes.TABLE_ROW_EXPANDED),W(r),m()},x.numbers.COLLAPSE_ANIMATION_DURATION)})}return Promise.resolve()}static isRowExpanded(e,t){let l=e.tableElement.tBodies[0],s=n._getNonExpandedRows(l.rows)[t];return s&&s.classList.contains(o.classes.TABLE_ROW_EXPANDED)}static setFixedHeaders(e){e.fixedHeaders?e.tableElement.classList.add(o.classes.TABLE_FIXED):e.tableElement.classList.remove(o.classes.TABLE_FIXED)}static setLayoutType(e){e.layoutType==="fixed"?e.tableElement.classList.add(o.classes.TABLE_LAYOUT_FIXED):e.tableElement.classList.remove(o.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 s=getComputedStyle(i).width;i.style.width&&i.style.width!==s&&(i.style.width=s)}}}static setColumnResizeIndicatorVisibility(e,t,l){let i=e.tableElement;if(i.tHead&&i.tHead.rows.length){let s=Array.from(i.tHead.rows);for(let a of s){let r=a.cells[t];r&&(l?r.classList.add(o.classes.TABLE_CELL_RESIZABLE):r.classList.remove(o.classes.TABLE_CELL_RESIZABLE))}}if(i.tBodies.length){let s=Array.from(i.tBodies[0].rows);for(let a of s){let r=a.cells[t];r&&(l?r.classList.add(o.classes.TABLE_CELL_RESIZABLE):r.classList.remove(o.classes.TABLE_CELL_RESIZABLE))}}}static setRowClickListeners(e,t,l,i){let s=e.tBodies[0];!s||(t?n._attachRowClickListeners(s,l,i):n._detachRowClickListeners(s,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 s=i.cells.item(0);l&&s&&(typeof l=="string"?s.innerHTML=l:l instanceof HTMLElement&&s.appendChild(l),s.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE,""))})}};var O=class extends Q{constructor(t){super(t)}initialize(){this._tableElement||(this._tableElement=document.createElement("table"),this._tableElement.classList.add(o.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 n.createTable(t)}recreateTableBody(t){n.recreateTableBody(t)}setSelectedRows(t,l,i,s,a=!1){n.setSelectedRows(t,l,i,s,a)}clearSelectedRows(t){n.clearSelectedRows(t)}updateSelectedState(t,l){n.updateSelectedState(t,l)}updateSelectAllState(t,l,i){n.updateSelectAllState(t,l,i)}setSortedColumn(t,l,i){n.setSortedColumn(t,l,i)}removeColumnSort(t,l){n.removeColumnSort(t,l)}setSortDirection(t,l,i){n.setSortDirection(t,l,i)}setSelectColumnVisibility(t,l,i,s,a,r,c,m,d){n.setSelectColumnVisibility(t,l,i,s||null,a||null,r||null,c||[],m||null,d||null)}setDense(t,l){n.setDenseState(t,l)}setRoomy(t,l){n.setRoomyState(t,l)}setResizable(t){n.setResizable(t)}setSelectAllVisibility(t,l,i,s,a,r=null){n.setSelectAllVisibility(t,l,i,s,a||null,r||null)}setFilterRow(t){n.setFilterRow(t)}expandRow(t,l,i){return n.expandRow(t,l,i)}collapseRow(t,l){return n.collapseRow(t,l)}isRowExpanded(t,l){return n.isRowExpanded(t,l)}setFixedHeaders(t){n.setFixedHeaders(t)}setTableLayoutType(t){n.setLayoutType(t)}setWrapContentState(t){n.setWrapContentState(t.tableElement,t.wrapContent)}addDocumentListener(t,l){n.getOwnerDocument(this._component).addEventListener(t,l)}removeDocumentListener(t,l){n.getOwnerDocument(this._component).removeEventListener(t,l)}normalizeColumnWidths(t){n.normalizeColumnWidths(t)}setResizeColumnVisibility(t,l,i){n.setColumnResizeIndicatorVisibility(t,l,i)}addTableClass(t){p(t,this._tableElement)}removeTableClass(t){y(t,this._tableElement)}setRowClickListeners(t,l,i,s){n.setRowClickListeners(t,l,i,s)}setRowClickAttributes(t,l){n.setRowClickAttributes(t,l)}};var N=class{constructor(){this._sortedColumns=[]}get sortedColumns(){return[...this._sortedColumns.map(e=>C({},e))]}addSortColumn(e){this._sortedColumns.push(C({},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=>C({},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 k=class{constructor(e,t=!1){this.data=e;this.selected=t}};var P=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=o.strings.DEFAULT_LAYOUT_TYPE;this._wrapContent=!0;this._resizable=!1;this._minResizeWidth=o.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._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 w(this._selectKey),this._hiddenColumnManager=new w}initialize(){this.connect(),this._adapter.setHostAttribute(o.attributes.SELECT,this._select.toString()),this._adapter.setHostAttribute(o.attributes.MULTISELECT,this._multiselect.toString()),this._adapter.setHostAttribute(o.attributes.DENSE,this._dense.toString()),this._adapter.setHostAttribute(o.attributes.ROOMY,this._roomy.toString()),this._adapter.setHostAttribute(o.attributes.FILTER,this._filter.toString()),this._adapter.emitHostEvent(o.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?R(e[0])?this._data=e.map(t=>C({},t)):this._data=[...e]:this._data=[],this._tableRows=this._data.map(t=>new k(t,this._selectionManager.exists(t))),this._renderBody()}get data(){return JSON.parse(JSON.stringify(this._data))}set columnConfigurations(e){this._columnConfigurations=e.map(t=>C({},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=>C({},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,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(o.attributes.SELECT,this._select.toString()):this._adapter.removeHostAttribute(o.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(o.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(o.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(o.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,I(this._minResizeWidth)?this._minResizeWidth<0&&(this._minResizeWidth=0):this._minResizeWidth=o.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(o.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(o.attributes.TOOLTIP_SELECT,e),this.render())}get tooltipSelectAll(){return this._tooltipSelectAll}set tooltipSelectAll(e){e!==this._tooltipSelectAll&&(this._tooltipSelectAll=e,this._adapter.setHostAttribute(o.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=>X(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())}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=D(e).filter(m=>m.nodeType===1).find(m=>m.hasAttribute(o.attributes.CUSTOM_CELL_TEMPLATE));if(i&&i.hasAttribute(o.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION))return;let{index:a,data:r}=this._getSelectedRowFromEvent(e),c={index:a,data:r};this._adapter.emitHostEvent(o.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(o.events.SELECT_DOUBLE,l,!0,!1)}_onRowSelected(e){let t=this._getSelectedRowFromEvent(e);this._multiselect||this._tableRows.filter(r=>r.selected).forEach(r=>{X(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],s=!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)}s=this._getSelectAllState(),this._adapter.updateSelectAllState(this._adapter.getTableElement(),s,this._isIndeterminate(s))}for(let a of i){let r=this._tableRows[a].data,m={selected:this._selectionManager.exists(r),index:a,data:r};this._adapter.emitHostEvent(o.events.SELECT,m,!0,!1)}if(this._isAllSelected!==s){this._isAllSelected=s;let a={status:this._isAllSelected,count:this._tableRows.filter(r=>r.selected).length,data:[...this._data],targetType:"row"};this._adapter.emitHostEvent(o.events.SELECT_ALL,a,!0,!1)}this._previouslyClickedRow=C({},t)}_getSelectedRowFromEvent(e){let l=D(e).find(r=>r.tagName==="TR"),i=l.parentElement,s=this._getNonExpandedRows(i).findIndex(r=>r===l),a=this._tableRows[s].data;return{rowElement:l,index:s,data:a}}_getNonExpandedRows(e){return Array.from(e.rows).filter(t=>!t.classList.contains(o.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,s)=>{i.selected=this._isAllSelected,this._isAllSelected?this._selectionManager.add(i.data):this._selectionManager.remove(i.data);let a=n.getRowByIndex(t,s);a&&this._adapter.updateSelectedState(a,this._isAllSelected)});let l={status:this._isAllSelected,count:this._tableRows.filter(i=>i.selected).length,data:[...this._data],targetType:"select-all"};this._adapter.emitHostEvent(o.events.SELECT_ALL,l,!0,!1)}_onHeadRowContextMenu(e){e.preventDefault()}_onHeadRowMouseDown(e){if(e.button!==0)return;let t=D(e),l=e.target,i=t.find(r=>r.tagName==="TR"),s=t.find(r=>r.tagName==="TH"),a=Array.from(i.cells).findIndex(r=>r===s);this._headCellMouseDownIndex=a,l!==s&&l.classList.contains(o.classes.TABLE_RESIZE_HANDLE)&&(this._resizeDescriptor={element:s,startWidth:s.offsetWidth,startX:e.pageX,width:s.offsetWidth,index:this._select?a-1:a},this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.setResizeColumnVisibility(this._tableConfiguration,a,!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(o.classes.TABLE_RESIZING)}}_onMouseUp(e){if(this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener),this._adapter.removeTableClass(o.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(o.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}}_onSort(e){let t=this._select?e-1:e,l=t>=0?this._visibleColumnConfigurations[t]:null;if(!l||!l.sortable)return;let i="ASC",s=t===this._sortedColumnIndex,a=this._sortDirection==="ASC"||this._sortDirection===void 0,r=s&&this._sortDirection==="DESC";s&&a&&(i="DESC"),r&&!l.preventUnsort&&(i="UNSET");let c={direction:i,columnIndex:t};if(!!this._adapter.emitHostEvent(o.events.SORT,c,!0,!0)){if(s&&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 s=this._multiSortManager.sortedColumns,a=this._multiSortManager.getSortColumn(l);a?this._multiSortManager.updateSortColumn(a):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=>C({},d));if(!this._adapter.emitHostEvent(o.events.SORT,r,!0,!0)){this._multiSortManager.setSortColumns(s);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),n.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,null);else{let T=this._multiSortManager.getSortColumn(d);T&&(this._adapter.setSortedColumn(this._adapter.getTableElement(),u,T.direction),n.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,T.sortOrder||null))}}}_onFilter(e,t){let l={value:e,columnIndex:t};this._adapter.emitHostEvent(o.events.FILTER,l,!0,!1)}_shiftSelectRows(e){let t=[];if(this._previouslyClickedRow){let l=this._previouslyClickedRow.index,i=e.index,s=i>=l?l:i,a=i>=l?i:l;a+=a>s?1:0,s+=s>a?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=s;d<a;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(o.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();ie.define(ee),this._foundation=new P(new O(this))}static get observedAttributes(){return[o.attributes.SELECT,o.attributes.MULTISELECT,o.attributes.SELECT_KEY,o.attributes.DENSE,o.attributes.ROOMY,o.attributes.FILTER,o.attributes.FIXED_HEADERS,o.attributes.LAYOUT_TYPE,o.attributes.WRAP_CONTENT,o.attributes.RESIZABLE,o.attributes.MIN_RESIZE_WIDTH,o.attributes.ALLOW_ROW_CLICK,o.attributes.MULTI_COLUMN_SORT,o.attributes.SELECT_CHECKBOX_ALIGNMENT,o.attributes.TOOLTIP_SELECT,o.attributes.TOOLTIP_SELECT_ALL]}initializedCallback(){this._foundation.initialize()}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,l,i){switch(t){case o.attributes.SELECT:this.select=h(i);break;case o.attributes.MULTISELECT:this.multiselect=h(i);break;case o.attributes.SELECT_KEY:this.selectKey=i;break;case o.attributes.DENSE:this.dense=h(i);break;case o.attributes.ROOMY:this.roomy=h(i);break;case o.attributes.FILTER:this.filter=h(i);break;case o.attributes.FIXED_HEADERS:this.fixedHeaders=h(i);break;case o.attributes.LAYOUT_TYPE:this.layoutType=i;break;case o.attributes.WRAP_CONTENT:this.wrapContent=h(i);break;case o.attributes.RESIZABLE:this.resizable=h(i);break;case o.attributes.MIN_RESIZE_WIDTH:this.minResizeWidth=G(i);break;case o.attributes.ALLOW_ROW_CLICK:this.allowRowClick=h(i);break;case o.attributes.MULTI_COLUMN_SORT:this.multiColumnSort=h(i);break;case o.attributes.SELECT_CHECKBOX_ALIGNMENT:this.selectCheckboxAlignment=this.getAttribute(o.attributes.SELECT_CHECKBOX_ALIGNMENT)||"center";break;case o.attributes.TOOLTIP_SELECT:this.tooltipSelect=i;break;case o.attributes.TOOLTIP_SELECT_ALL:this.tooltipSelectAll=i;break}}hideColumn(t){this._foundation.hideColumn(t)}showColumn(t){this._foundation.showColumn(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)}};_([b()],E.prototype,"data",2),_([b()],E.prototype,"columnConfigurations",2),_([b()],E.prototype,"select",2),_([b()],E.prototype,"multiselect",2),_([b()],E.prototype,"selectKey",2),_([b()],E.prototype,"tooltipSelect",2),_([b()],E.prototype,"tooltipSelectAll",2),_([b()],E.prototype,"dense",2),_([b()],E.prototype,"roomy",2),_([b()],E.prototype,"filter",2),_([b()],E.prototype,"fixedHeaders",2),_([b()],E.prototype,"layoutType",2),_([b()],E.prototype,"wrapContent",2),_([b()],E.prototype,"resizable",2),_([b()],E.prototype,"minResizeWidth",2),_([b()],E.prototype,"allowRowClick",2),_([b()],E.prototype,"multiColumnSort",2),_([b()],E.prototype,"rowCreated",2),_([b()],E.prototype,"cellCreated",2),_([b()],E.prototype,"selectAllTemplate",2),_([b()],E.prototype,"selectCheckboxAlignment",2),E=_([j({name:o.elementName,dependencies:[se,oe,re]})],E);function rl(){q(E)}export{o as a,M as b,B as c,he as d,O as e,k as f,P as g,E as h,rl as i};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as $,b as H,c as v,d as X}from"./chunk.AWCBH5KW.js";import{c as ae,f as re}from"./chunk.7NXPOEXV.js";import{a as x,d as se}from"./chunk.OG2BI3UW.js";import{a as D}from"./chunk.EC6JSIQW.js";import{b as ee}from"./chunk.LZMYHIO2.js";import{a as ne}from"./chunk.VLTJFKGZ.js";import{a as le,d as ie,l as oe}from"./chunk.YAJT3P6V.js";import{a as te}from"./chunk.24D46RLZ.js";import{a as Q}from"./chunk.A23NSEWA.js";import{a as b}from"./chunk.B3IJU6XJ.js";import{a as j,b as U}from"./chunk.BSZ2LBJX.js";import{a as J}from"./chunk.3E5QKMHL.js";import{a as q}from"./chunk.HN4PXH3D.js";import{d as g,e as F,f as p,g as y,i as W,j as K,t as V}from"./chunk.R4NDFXVA.js";import{b as L,c as Y,d as I,h as z,j as R,k as h,l as G,o as Z}from"./chunk.G76HB2FK.js";import{a as C,f as _}from"./chunk.MCIQXNKY.js";var w=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?H(this._items,v(this._key,e))||null:this._items.find(t=>t===e)||null}};var S=`${U}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"},Ee={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}`},_e={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"},be={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`},pe={SELECT_ALL:"select-all",SELECT_ROW:"select-row",DEFAULT_LAYOUT_TYPE:"auto"},Te={SORT_DOWN:"arrow_downward"},Ce={DEFAULT_FILTER_DEBOUNCE_TIME:750,MIN_RESIZE_WIDTH:100,RESIZE_HOVER_DURATION:150},o={elementName:S,classes:ce,selectors:Ee,attributes:_e,events:be,strings:pe,icons:Te,numbers:Ce};var M=(l=>(l.Left="left",l.Right="right",l.Center="center",l))(M||{}),B=(l=>(l.Ascending="ASC",l.Descending="DESC",l.Unset="UNSET",l))(B||{}),he=(a=>(a.InputText="text",a.InputNumber="number",a.Select="select",a.SelectMultiple="select-multiple",a.Date="date",a.DateRange="date-range",a))(he||{});function de(f){return f&&typeof f=="object"&&"content"in f}var n=class{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),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(ne.elementName);return e.textContent="Ctrl + click to sort multiple columns",e.position="bottom",e.delay=0,e}static _createTableHead(e){let t=document.createElement("thead"),l=t.insertRow();p([o.classes.TABLE_ROW,o.classes.TABLE_HEAD_ROW],l);let i=!1;for(let s=0;s<e.columnConfigurations.length;s++){let a=e.columnConfigurations[s],r=document.createElement("th");r.scope="col",p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],r);let c=document.createElement("div");if(c.classList.add(o.classes.TABLE_HEAD_CELL_CONTAINER),e.multiColumnSort){let d=n._createMultisortTooltip();c.appendChild(d)}if(a.align&&n._setCellAlignmentClass(c,a.align),L(a.width)){let d=K(a.width);d&&(r.style.width=d)}if(e.resizable&&a.resizable!==!1){let d=document.createElement("div");d.classList.add(o.classes.TABLE_RESIZE_HANDLE),r.appendChild(d)}L(a.headerCellStyle)&&R(a.headerCellStyle)&&(Object.assign(r.style,a.headerCellStyle),Object.assign(c.style,a.headerCellStyle));let m=document.createElement("span");if(m.classList.add(o.classes.TABLE_HEAD_CELL_TEXT),m.textContent=a.header&&typeof a.header=="string"?a.header.trim():"",a.sortable){r.classList.add(o.classes.TABLE_HEAD_CELL_SORTABLE);let d=document.createElement("span");p([o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,o.classes.TABLE_HEAD_CELL_SORT_ORDER],d);let u=document.createElement(le.elementName);u.name=o.icons.SORT_DOWN,p([o.classes.TABLE_HEAD_CELL_SORT_ICON],u),e.multiColumnSort?typeof a.initialSort=="object"&&a.initialSort.sortOrder&&(d.textContent=a.initialSort.sortOrder.toString(),e.columnConfigurations.filter(T=>typeof T.initialSort=="object").length>1&&y(o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,d),r.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,a.initialSort.direction)):e.sortedColumn===s&&!i&&!e.multiColumnSort&&(r.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,e.sortDirection),i=!0),c.appendChild(u),c.appendChild(d)}typeof a.headerTemplate=="function"?Promise.resolve(a.headerTemplate(s,c,a)).then(d=>{if(d){let u=document.createElement("div");p(o.classes.TABLE_CELL_CONTAINER,u),typeof d=="string"?u.innerHTML=d:n._prepend(d,u),u.setAttribute(o.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);n._setColumnSortDirection(i,l)}static _setColumnSortDirection(e,t){e.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&e.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),e.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&e.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),!t||t==="DESC"?e.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING):e.classList.add(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)}static _createTableBody(e){let t=document.createElement("tbody");return n._getOrderedRowData(e.columnConfigurations,e.data).forEach((i,s)=>{let a=t.insertRow();p([o.classes.TABLE_ROW,o.classes.TABLE_BODY_ROW],a),n._populateRowCells(e,a,i,s),typeof e.rowCreatedCallback=="function"&&e.rowCreatedCallback(a,s,C({},e.data[s].data))}),t}static _populateRowCells(e,t,l,i){for(let s=0;s<l.length;s++){let a=e.columnConfigurations[s],r=t.insertCell();if(p([o.classes.TABLE_CELL,o.classes.TABLE_BODY_CELL],r),L(a.width)){let m=K(a.width);m&&(r.style.width=m)}let c=document.createElement("div");if(c.classList.add(o.classes.TABLE_CELL_CONTAINER),L(a.cellStyle)&&R(a.cellStyle)&&(Object.assign(r.style,a.cellStyle),Object.assign(c.style,a.cellStyle)),a.template&&typeof a.template=="function"){let m=e.data[i]?e.data[i].data:void 0;Promise.resolve(a.template(i,c,m)).then(d=>{let u=de(d)?d:{content:d,stopClickPropagation:a.stopCellTemplateClickPropagation};!u.content||(typeof u.content=="string"?c.innerHTML=u.content:c.appendChild(u.content),c.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE,""),u.stopClickPropagation&&c.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION,""))})}else if(a.property){let m=document.createElement("span");m.classList.add(o.classes.TABLE_CELL_CONTAINER_TEXT),c.appendChild(m),a.transform&&typeof a.transform=="function"?Promise.resolve(a.transform(l[s])).then(d=>m.textContent=d):l[s]==null?m.textContent="":m.textContent=l[s].toString()}if(a.align&&n._setCellAlignmentClass(c,a.align),r.appendChild(c),L(a.columnSpan)){if(a.columnSpan==="all"){r.colSpan=l.length-s;break}else if(typeof a.columnSpan=="number"&&a.columnSpan>0){let m=a.columnSpan;a.columnSpan>l.length-s&&(m=l.length),r.colSpan=m,s=s+(m-1)}}typeof e.cellCreatedCallback=="function"&&e.cellCreatedCallback(r,i,s)}}static _setCellAlignmentClass(e,t){switch(t){case"center":e.classList.add(o.classes.TABLE_CELL_CENTER);break;case"right":e.classList.add(o.classes.TABLE_CELL_RIGHT);break}}static _getNonExpandedRows(e){return Array.from(e).filter(t=>!t.classList.contains(o.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _getExpandedRows(e){return Array.from(e).filter(t=>t.classList.contains(o.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _createColumnDataMap(e,t){return e.map(l=>({config:l,data:t.map(i=>{if(l.property){let s=$(i.data,l.property);return L(s)?s:null}return null})}))}static _getOrderedRowData(e,t){let l=n._createColumnDataMap(e,t),i=[];for(let s of l)for(let a=0;a<s.data.length;a++)i[a]||(i[a]=[]),i[a].push(s.data[a]);return i}static _attachRowClickListeners(e,t,l){n._getNonExpandedRows(e.rows).forEach(s=>{s.addEventListener("click",t),l&&s.addEventListener("dblclick",l)})}static _addRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.add(o.classes.TABLE_BODY_ROW_CLICKABLE)})}static _removeRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.remove(o.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,s,a,r,c,m){e&&n._createHeadSelectColumn(e,l,i,s,a,m),t&&n._createBodySelectColumn(t,a,r,c,m)}static _createHeadSelectColumn(e,t,l,i,s,a){var r;if(Array.from(e.rows).forEach(c=>{let m=document.createElement("th");p([o.classes.TABLE_CELL,o.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(o.classes.TABLE_CELL_SELECT),typeof l=="function"?n._renderSelectAllTemplate(l,e).then(()=>{typeof i=="function"&&i()}):c==null||c.appendChild(n._createCheckboxElement(!0,s,null,null,null,a))}}static _createBodySelectColumn(e,t,l,i,s){if(n._getNonExpandedRows(e.rows).forEach((r,c)=>n._addRowSelectColumn(r,t,c,l[c],i,s)),e.rows.length){let r=e.rows.item(0);r&&n._updateExpandedRowColspan(e.rows,r.cells.length)}}static _addRowSelectColumn(e,t,l,i,s,a){let r=e.insertCell(0);p([o.classes.TABLE_CELL,o.classes.TABLE_BODY_CELL,o.classes.TABLE_CELL_SELECT],r),r.appendChild(n._createCheckboxElement(!1,t,l,i,s,a))}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(o.classes.TABLE_CELL_SELECT))}static _createCheckboxElement(e,t,l,i,s,a){let r=document.createElement("div");if(r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER),t)switch(t){case"center":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER);break;case"left":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT);break;case"right":r.classList.add(o.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT);break}let c=document.createElement(ae.elementName),m=document.createElement("input");m.type="checkbox";let d=s||"";i&&typeof s=="function"&&(d=s.call(null,l,i.data));let u=document.createElement("forge-tooltip");return u.position="left",e?u.textContent=a||"":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(`.${o.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(o.selectors.CHECKBOX_INPUT):null}static _tryGetSelectAllCheckboxElement(e){let t=e.querySelector(`.${o.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(o.selectors.CHECKBOX_INPUT)||t.querySelector(o.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(o.classes.TABLE_BODY_ROW_SELECTED)||e.classList.add(o.classes.TABLE_BODY_ROW_SELECTED):e.classList.remove(o.classes.TABLE_BODY_ROW_SELECTED)}static _updateExpandedRowColspan(e,t){n._getExpandedRows(e).forEach(i=>{let s=i.cells.item(0);s&&(s.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],s=n._tryGetSelectAllCheckboxElement(i);s&&(n._setSelectedCheckboxState(s,t),n._setIndeterminateCheckboxState(s,!!l))}static setSelectedRows(e,t,l,i,s=!1){if(!e.tBodies.length)return;s||n.clearSelectedRows(e);let a=e.tBodies[0].rows,r=0;i.length&&Array.from(a).forEach((c,m)=>{let d=l[m];if(H(i,v(t,d))){n._setRowSelectedState(c,!0);let T=n._getCheckboxElement(c);T&&n._setSelectedCheckboxState(T,!0),r++}}),n.updateSelectAllState(e,r>0&&a.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(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(i,l)}static setMultiSortColumnSortNumber(e,t,l,i){let r=n._getHeaderCellByIndex(e,l).querySelector(`.${o.classes.TABLE_HEAD_CELL_CONTAINER}`).querySelector(`.${o.classes.TABLE_HEAD_CELL_SORT_ORDER}`);r&&(V(r,typeof i!="number"||!t,o.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN),i&&(r.textContent=i.toString()))}static removeColumnSort(e,t){let l=n._getHeaderCellByIndex(e,t);l.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&l.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),l.classList.contains(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&l.classList.remove(o.classes.TABLE_HEAD_CELL_SORTED_DESCENDING);let i=n._getSortIconElementFromHeaderCell(l);i&&i.classList.contains(o.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)&&i.classList.remove(o.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(`.${o.classes.TABLE_HEAD_CELL_SORT_ICON}`)}static setSelectColumnVisibility(e,t,l,i,s,a,r,c,m){let d=e.tHead,u=e.tBodies[0];!d||!u||(t?n._addSelectColumn(d,u,l,i,s,a,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,s,a,r,c,m){n._createSelectColumn(e,t,!!i,s,()=>{i&&n._tryAttachSelectAllTemplateListener(e,i)},a,r,c,m),l&&n._attachRowSelectListeners(t,l),i&&!s&&n._tryAttachSelectAllTemplateListener(e,i)}static setDenseState(e,t){e.classList.contains(o.classes.TABLE_DENSE)&&e.classList.remove(o.classes.TABLE_DENSE),t&&e.classList.add(o.classes.TABLE_DENSE)}static setRoomyState(e,t){e.classList.contains(o.classes.TABLE_ROOMY)&&e.classList.remove(o.classes.TABLE_ROOMY),t&&e.classList.add(o.classes.TABLE_ROOMY)}static setResizable(e){let t=e.tableElement.tHead;e.resizable?(e.tableElement.classList.add(o.classes.TABLE_RESIZABLE),n._addResizeHandles(t,e)):(e.tableElement.classList.remove(o.classes.TABLE_RESIZABLE),n._removeResizeHandles(t))}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 s of i){let a=i.indexOf(s);if(t.columnConfigurations[a].resizable!==!1){let c=document.createElement("div");c.classList.add(o.classes.TABLE_RESIZE_HANDLE),s.appendChild(c)}}}}static _removeResizeHandles(e){if(!e)return;let t=e.rows.item(0);if(t){let l=Array.from(t.cells);for(let i of l){let s=document.querySelector(`.${o.classes.TABLE_RESIZE_HANDLE}`);s&&i.removeChild(s)}}}static setWrapContentState(e,t){t?e.classList.remove(o.classes.TABLE_NO_WRAP_CONTENT):e.classList.add(o.classes.TABLE_NO_WRAP_CONTENT)}static setSelectAllVisibility(e,t,l,i,s,a){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(o.classes.TABLE_CELL_SELECT),i?n._renderSelectAllTemplate(i,r).then(()=>{l&&n._tryAttachSelectAllTemplateListener(r,l)}):m.appendChild(n._createCheckboxElement(!0,s||null,null,null,null,a)),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(o.classes.TABLE_FILTER_VISIBLE):e.tableElement.classList.remove(o.classes.TABLE_FILTER_VISIBLE),e.filter&&!t){if(e.columnConfigurations.every(s=>!s.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(s=>{var a;(a=i.cells.item(0))==null||a.appendChild(s)})}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,s=e.tableElement.tHead.rows.item(i);s&&Array.from(l.children).forEach(a=>{var r;(r=s.cells.item(0))==null||r.appendChild(a)})}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([o.classes.TABLE_ROW,o.classes.TABLE_HEAD_ROW_FILTER],t),e.selectListener){let l=document.createElement("th");p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],l),t.insertBefore(l,t.cells[0]),l.classList.add(o.classes.TABLE_CELL_SELECT)}return e.columnConfigurations.forEach((l,i)=>{let s=document.createElement("th");if(p([o.classes.TABLE_CELL,o.classes.TABLE_HEAD_CELL],s),l.filter&&L(l.filterDelegate)){let a=document.createElement("div");a.classList.add(o.classes.TABLE_HEAD_CELL_CONTAINER),l.align&&n._setCellAlignmentClass(a,l.align);let r=n._createFilterElement(l,i,e.filterListener);a.appendChild(r),s.appendChild(a)}t.appendChild(s)}),t}static _createFilterElement(e,t,l){let i;if(z(e.filterDelegate))i=e.filterDelegate();else if(e.filterDelegate instanceof te)i=e.filterDelegate;else throw new Error("Invalid filter delegate.");if(l)if(!L(e.filterDebounceTime)||I(e.filterDebounceTime)){let s=L(e.filterDebounceTime)?e.filterDebounceTime:o.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;i.onChange(Z(a=>l(a,t),s))}else i.onChange(s=>l(s,t));return i.element}static _getFilterRowElement(e){if(!!e)return Array.from(e.rows).find(t=>t.classList.contains(o.classes.TABLE_HEAD_ROW_FILTER))}static async expandRow(e,t,l){let i=e.tableElement.tBodies[0],a=n._getNonExpandedRows(i.rows)[t];a.classList.add(o.classes.TABLE_ROW_EXPANDED);let r=Array.from(i.rows).indexOf(a),c=i.insertRow(r+1);p([o.classes.TABLE_ROW,o.classes.TABLE_BODY_ROW,o.classes.TABLE_ROW_EXPANDABLE_CONTENT],c);let m=c.insertCell();m.setAttribute("colspan",a.cells.length.toString()),m.classList.add(o.classes.TABLE_ROW_EXPANDABLE_CONTENT_CELL);let d=document.createElement("div"),u=document.createElement(x.elementName);u.appendChild(d),m.appendChild(u);let T=l;if(z(l)){let me=e.data[t]?e.data[t].data:void 0,ue=l(t,d,me);try{let A=await Promise.resolve(ue);T=de(A)?A.content:A}catch(A){console.error("Failed to load row template "+A.message),T=""}}T&&n._setRowTemplate(d,T),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],s=n._getNonExpandedRows(l.rows)[t],a=Array.from(l.rows).indexOf(s);if(s&&s.classList.contains(o.classes.TABLE_ROW_EXPANDED)){let r=l.rows[a+1],c=r.querySelector(x.elementName);if(c&&c.open)return c.open=!1,new Promise(m=>{setTimeout(()=>{s.classList.remove(o.classes.TABLE_ROW_EXPANDED),W(r),m()},x.numbers.COLLAPSE_ANIMATION_DURATION)})}return Promise.resolve()}static isRowExpanded(e,t){let l=e.tableElement.tBodies[0],s=n._getNonExpandedRows(l.rows)[t];return s&&s.classList.contains(o.classes.TABLE_ROW_EXPANDED)}static setFixedHeaders(e){e.fixedHeaders?e.tableElement.classList.add(o.classes.TABLE_FIXED):e.tableElement.classList.remove(o.classes.TABLE_FIXED)}static setLayoutType(e){e.layoutType==="fixed"?e.tableElement.classList.add(o.classes.TABLE_LAYOUT_FIXED):e.tableElement.classList.remove(o.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 s=getComputedStyle(i).width;i.style.width&&i.style.width!==s&&(i.style.width=s)}}}static setColumnResizeIndicatorVisibility(e,t,l){let i=e.tableElement;if(i.tHead&&i.tHead.rows.length){let s=Array.from(i.tHead.rows);for(let a of s){let r=a.cells[t];r&&(l?r.classList.add(o.classes.TABLE_CELL_RESIZABLE):r.classList.remove(o.classes.TABLE_CELL_RESIZABLE))}}if(i.tBodies.length){let s=Array.from(i.tBodies[0].rows);for(let a of s){let r=a.cells[t];r&&(l?r.classList.add(o.classes.TABLE_CELL_RESIZABLE):r.classList.remove(o.classes.TABLE_CELL_RESIZABLE))}}}static setRowClickListeners(e,t,l,i){let s=e.tBodies[0];!s||(t?n._attachRowClickListeners(s,l,i):n._detachRowClickListeners(s,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 s=i.cells.item(0);l&&s&&(typeof l=="string"?s.innerHTML=l:l instanceof HTMLElement&&s.appendChild(l),s.setAttribute(o.attributes.CUSTOM_CELL_TEMPLATE,""))})}};var O=class extends Q{constructor(t){super(t)}initialize(){this._tableElement||(this._tableElement=document.createElement("table"),this._tableElement.classList.add(o.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 n.createTable(t)}recreateTableBody(t){n.recreateTableBody(t)}setSelectedRows(t,l,i,s,a=!1){n.setSelectedRows(t,l,i,s,a)}clearSelectedRows(t){n.clearSelectedRows(t)}updateSelectedState(t,l){n.updateSelectedState(t,l)}updateSelectAllState(t,l,i){n.updateSelectAllState(t,l,i)}setSortedColumn(t,l,i){n.setSortedColumn(t,l,i)}removeColumnSort(t,l){n.removeColumnSort(t,l)}setSortDirection(t,l,i){n.setSortDirection(t,l,i)}setSelectColumnVisibility(t,l,i,s,a,r,c,m,d){n.setSelectColumnVisibility(t,l,i,s||null,a||null,r||null,c||[],m||null,d||null)}setDense(t,l){n.setDenseState(t,l)}setRoomy(t,l){n.setRoomyState(t,l)}setResizable(t){n.setResizable(t)}setSelectAllVisibility(t,l,i,s,a,r=null){n.setSelectAllVisibility(t,l,i,s,a||null,r||null)}setFilterRow(t){n.setFilterRow(t)}expandRow(t,l,i){return n.expandRow(t,l,i)}collapseRow(t,l){return n.collapseRow(t,l)}isRowExpanded(t,l){return n.isRowExpanded(t,l)}setFixedHeaders(t){n.setFixedHeaders(t)}setTableLayoutType(t){n.setLayoutType(t)}setWrapContentState(t){n.setWrapContentState(t.tableElement,t.wrapContent)}addDocumentListener(t,l){n.getOwnerDocument(this._component).addEventListener(t,l)}removeDocumentListener(t,l){n.getOwnerDocument(this._component).removeEventListener(t,l)}normalizeColumnWidths(t){n.normalizeColumnWidths(t)}setResizeColumnVisibility(t,l,i){n.setColumnResizeIndicatorVisibility(t,l,i)}addTableClass(t){p(t,this._tableElement)}removeTableClass(t){y(t,this._tableElement)}setRowClickListeners(t,l,i,s){n.setRowClickListeners(t,l,i,s)}setRowClickAttributes(t,l){n.setRowClickAttributes(t,l)}};var N=class{constructor(){this._sortedColumns=[]}get sortedColumns(){return[...this._sortedColumns.map(e=>C({},e))]}addSortColumn(e){this._sortedColumns.push(C({},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=>C({},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 k=class{constructor(e,t=!1){this.data=e;this.selected=t}};var P=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=o.strings.DEFAULT_LAYOUT_TYPE;this._wrapContent=!0;this._resizable=!1;this._minResizeWidth=o.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._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 w(this._selectKey),this._hiddenColumnManager=new w}initialize(){this.connect(),this._adapter.setHostAttribute(o.attributes.SELECT,this._select.toString()),this._adapter.setHostAttribute(o.attributes.MULTISELECT,this._multiselect.toString()),this._adapter.setHostAttribute(o.attributes.DENSE,this._dense.toString()),this._adapter.setHostAttribute(o.attributes.ROOMY,this._roomy.toString()),this._adapter.setHostAttribute(o.attributes.FILTER,this._filter.toString()),this._adapter.emitHostEvent(o.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?R(e[0])?this._data=e.map(t=>C({},t)):this._data=[...e]:this._data=[],this._tableRows=this._data.map(t=>new k(t,this._selectionManager.exists(t))),this._renderBody()}get data(){return JSON.parse(JSON.stringify(this._data))}set columnConfigurations(e){this._columnConfigurations=e.map(t=>C({},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=>C({},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,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(o.attributes.SELECT,this._select.toString()):this._adapter.removeHostAttribute(o.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(o.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(o.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(o.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,I(this._minResizeWidth)?this._minResizeWidth<0&&(this._minResizeWidth=0):this._minResizeWidth=o.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(o.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(o.attributes.TOOLTIP_SELECT,e),this.render())}get tooltipSelectAll(){return this._tooltipSelectAll}set tooltipSelectAll(e){e!==this._tooltipSelectAll&&(this._tooltipSelectAll=e,this._adapter.setHostAttribute(o.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=>X(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())}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=D(e).filter(m=>m.nodeType===1).find(m=>m.hasAttribute(o.attributes.CUSTOM_CELL_TEMPLATE));if(i&&i.hasAttribute(o.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION))return;let{index:a,data:r}=this._getSelectedRowFromEvent(e),c={index:a,data:r};this._adapter.emitHostEvent(o.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(o.events.SELECT_DOUBLE,l,!0,!1)}_onRowSelected(e){let t=this._getSelectedRowFromEvent(e);this._multiselect||this._tableRows.filter(r=>r.selected).forEach(r=>{X(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],s=!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)}s=this._getSelectAllState(),this._adapter.updateSelectAllState(this._adapter.getTableElement(),s,this._isIndeterminate(s))}for(let a of i){let r=this._tableRows[a].data,m={selected:this._selectionManager.exists(r),index:a,data:r};this._adapter.emitHostEvent(o.events.SELECT,m,!0,!1)}if(this._isAllSelected!==s){this._isAllSelected=s;let a={status:this._isAllSelected,count:this._tableRows.filter(r=>r.selected).length,data:[...this._data],targetType:"row"};this._adapter.emitHostEvent(o.events.SELECT_ALL,a,!0,!1)}this._previouslyClickedRow=C({},t)}_getSelectedRowFromEvent(e){let l=D(e).find(r=>r.tagName==="TR"),i=l.parentElement,s=this._getNonExpandedRows(i).findIndex(r=>r===l),a=this._tableRows[s].data;return{rowElement:l,index:s,data:a}}_getNonExpandedRows(e){return Array.from(e.rows).filter(t=>!t.classList.contains(o.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,s)=>{i.selected=this._isAllSelected,this._isAllSelected?this._selectionManager.add(i.data):this._selectionManager.remove(i.data);let a=n.getRowByIndex(t,s);a&&this._adapter.updateSelectedState(a,this._isAllSelected)});let l={status:this._isAllSelected,count:this._tableRows.filter(i=>i.selected).length,data:[...this._data],targetType:"select-all"};this._adapter.emitHostEvent(o.events.SELECT_ALL,l,!0,!1)}_onHeadRowContextMenu(e){e.preventDefault()}_onHeadRowMouseDown(e){if(e.button!==0)return;let t=D(e),l=e.target,i=t.find(r=>r.tagName==="TR"),s=t.find(r=>r.tagName==="TH"),a=Array.from(i.cells).findIndex(r=>r===s);this._headCellMouseDownIndex=a,l!==s&&l.classList.contains(o.classes.TABLE_RESIZE_HANDLE)&&(this._resizeDescriptor={element:s,startWidth:s.offsetWidth,startX:e.pageX,width:s.offsetWidth,index:this._select?a-1:a},this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.setResizeColumnVisibility(this._tableConfiguration,a,!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(o.classes.TABLE_RESIZING)}}_onMouseUp(e){if(this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener),this._adapter.removeTableClass(o.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(o.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}}_onSort(e){let t=this._select?e-1:e,l=t>=0?this._visibleColumnConfigurations[t]:null;if(!l||!l.sortable)return;let i="ASC",s=t===this._sortedColumnIndex,a=this._sortDirection==="ASC"||this._sortDirection===void 0,r=s&&this._sortDirection==="DESC";s&&a&&(i="DESC"),r&&!l.preventUnsort&&(i="UNSET");let c={direction:i,columnIndex:t};if(!!this._adapter.emitHostEvent(o.events.SORT,c,!0,!0)){if(s&&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 s=this._multiSortManager.sortedColumns,a=this._multiSortManager.getSortColumn(l);a?this._multiSortManager.updateSortColumn(a):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=>C({},d));if(!this._adapter.emitHostEvent(o.events.SORT,r,!0,!0)){this._multiSortManager.setSortColumns(s);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),n.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,null);else{let T=this._multiSortManager.getSortColumn(d);T&&(this._adapter.setSortedColumn(this._adapter.getTableElement(),u,T.direction),n.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,T.sortOrder||null))}}}_onFilter(e,t){let l={value:e,columnIndex:t};this._adapter.emitHostEvent(o.events.FILTER,l,!0,!1)}_shiftSelectRows(e){let t=[];if(this._previouslyClickedRow){let l=this._previouslyClickedRow.index,i=e.index,s=i>=l?l:i,a=i>=l?i:l;a+=a>s?1:0,s+=s>a?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=s;d<a;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(o.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();ie.define(ee),this._foundation=new P(new O(this))}static get observedAttributes(){return[o.attributes.SELECT,o.attributes.MULTISELECT,o.attributes.SELECT_KEY,o.attributes.DENSE,o.attributes.ROOMY,o.attributes.FILTER,o.attributes.FIXED_HEADERS,o.attributes.LAYOUT_TYPE,o.attributes.WRAP_CONTENT,o.attributes.RESIZABLE,o.attributes.MIN_RESIZE_WIDTH,o.attributes.ALLOW_ROW_CLICK,o.attributes.MULTI_COLUMN_SORT,o.attributes.SELECT_CHECKBOX_ALIGNMENT,o.attributes.TOOLTIP_SELECT,o.attributes.TOOLTIP_SELECT_ALL]}initializedCallback(){this._foundation.initialize()}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,l,i){switch(t){case o.attributes.SELECT:this.select=h(i);break;case o.attributes.MULTISELECT:this.multiselect=h(i);break;case o.attributes.SELECT_KEY:this.selectKey=i;break;case o.attributes.DENSE:this.dense=h(i);break;case o.attributes.ROOMY:this.roomy=h(i);break;case o.attributes.FILTER:this.filter=h(i);break;case o.attributes.FIXED_HEADERS:this.fixedHeaders=h(i);break;case o.attributes.LAYOUT_TYPE:this.layoutType=i;break;case o.attributes.WRAP_CONTENT:this.wrapContent=h(i);break;case o.attributes.RESIZABLE:this.resizable=h(i);break;case o.attributes.MIN_RESIZE_WIDTH:this.minResizeWidth=G(i);break;case o.attributes.ALLOW_ROW_CLICK:this.allowRowClick=h(i);break;case o.attributes.MULTI_COLUMN_SORT:this.multiColumnSort=h(i);break;case o.attributes.SELECT_CHECKBOX_ALIGNMENT:this.selectCheckboxAlignment=this.getAttribute(o.attributes.SELECT_CHECKBOX_ALIGNMENT)||"center";break;case o.attributes.TOOLTIP_SELECT:this.tooltipSelect=i;break;case o.attributes.TOOLTIP_SELECT_ALL:this.tooltipSelectAll=i;break}}hideColumn(t){this._foundation.hideColumn(t)}showColumn(t){this._foundation.showColumn(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)}};_([b()],E.prototype,"data",2),_([b()],E.prototype,"columnConfigurations",2),_([b()],E.prototype,"select",2),_([b()],E.prototype,"multiselect",2),_([b()],E.prototype,"selectKey",2),_([b()],E.prototype,"tooltipSelect",2),_([b()],E.prototype,"tooltipSelectAll",2),_([b()],E.prototype,"dense",2),_([b()],E.prototype,"roomy",2),_([b()],E.prototype,"filter",2),_([b()],E.prototype,"fixedHeaders",2),_([b()],E.prototype,"layoutType",2),_([b()],E.prototype,"wrapContent",2),_([b()],E.prototype,"resizable",2),_([b()],E.prototype,"minResizeWidth",2),_([b()],E.prototype,"allowRowClick",2),_([b()],E.prototype,"multiColumnSort",2),_([b()],E.prototype,"rowCreated",2),_([b()],E.prototype,"cellCreated",2),_([b()],E.prototype,"selectAllTemplate",2),_([b()],E.prototype,"selectCheckboxAlignment",2),E=_([j({name:o.elementName,dependencies:[se,oe,re]})],E);function rl(){q(E)}export{o as a,M as b,B as c,he as d,O as e,k as f,P as g,E as h,rl as i};
|
|
7
|
+
//# sourceMappingURL=chunk.TR64DV3G.js.map
|
|
File without changes
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{b as x,c as C}from"./chunk.JXQZMASB.js";import{a as y}from"./chunk.MIYZJUXH.js";import{a as E}from"./chunk.A23NSEWA.js";import{a as l}from"./chunk.B3IJU6XJ.js";import{a as b,b as L}from"./chunk.BSZ2LBJX.js";import{a as _}from"./chunk.3E5QKMHL.js";import{a as v,e as f,g as c}from"./chunk.HN4PXH3D.js";import{k as p,l as u}from"./chunk.G76HB2FK.js";import{f as s}from"./chunk.MCIQXNKY.js";var D=`${L}file-picker`,I={ACCEPT:"accept",MAX_SIZE:"max-size",CAPTURE:"capture",MULTIPLE:"multiple",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},T={HIGHLIGHT:"highlight",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},S={CONTAINER:"container",BUTTON:"button",INPUT:"input"},A={CONTAINER:"#container",BUTTON:"#button",INPUT:"#input",BUTTON_SLOT:"#button-slot"},P={FILES_CHANGED:`${D}-change`},i={elementName:D,attributes:I,classes:T,ids:S,selectors:A,events:P};var d=class extends E{constructor(e){super(e);this._container=c(e,i.selectors.CONTAINER),this._buttonSlot=c(e,i.selectors.BUTTON_SLOT),this._input=c(e,i.selectors.INPUT),this._inputEventListener=()=>{this._input.value="",this._input.click()},this._container.addEventListener("click",this._inputEventListener)}registerButtonSlotListener(e){this._buttonSlot.addEventListener("slotchange",e)}registerInputChangeListener(e){this._input.addEventListener("change",e)}registerDragEnterListener(e){this._container.addEventListener("dragenter",e)}registerDragLeaveListener(e){this._container.addEventListener("dragleave",e)}registerDragOverListener(e){this._container.addEventListener("dragover",e)}registerDropListener(e){this._container.addEventListener("drop",e)}removeDragEnterListener(e){this._container.removeEventListener("dragenter",e)}removeDragLeaveListener(e){this._container.removeEventListener("dragleave",e)}removeDragOverListener(e){this._container.removeEventListener("dragover",e)}removeDropListener(e){this._container.removeEventListener("drop",e)}initializeButton(){let e=this._component.querySelector("button");this._button=e||void 0}setHighlightState(e){this._container.classList.contains(i.classes.HIGHLIGHT)!==e&&this._container.classList.toggle(i.classes.HIGHLIGHT)}setAccept(e){e?this._input.setAttribute("accept",e):this._input.removeAttribute("accept")}setCapture(e){e?this._input.setAttribute("capture",e):this._input.removeAttribute("capture")}setMultiple(e){e?this._input.setAttribute("multiple",""):this._input.removeAttribute("multiple")}setDisabled(e){e?(this._container.removeEventListener("click",this._inputEventListener),this._button.setAttribute("disabled",""),this._container.setAttribute("disabled","")):(this._container.addEventListener("click",this._inputEventListener),this._button.removeAttribute("disabled"),this._container.removeAttribute("disabled"))}setCompact(e){this._container.classList.contains(i.classes.COMPACT)!==e&&this._container.classList.toggle(i.classes.COMPACT)}setBorderless(e){this._container.classList.contains(i.classes.BORDERLESS)!==e&&this._container.classList.toggle(i.classes.BORDERLESS)}};var h=class{constructor(t){this._adapter=t;this._accept=null;this._maxSize=null;this._capture=null;this._multiple=!1;this._disabled=!1;this._compact=!1;this._borderless=!1;this._buttonSlotListener=e=>this._onButtonSlotChanged(e),this._inputChangeListener=e=>this._onInputChange(e),this._dragEnterListener=e=>this._onDragEnter(e),this._dragLeaveListener=e=>this._onDragLeave(e),this._dragOverListener=e=>this._onDragOver(e),this._dropListener=e=>this._onDrop(e),this._adapter.registerButtonSlotListener(this._buttonSlotListener),this._adapter.registerInputChangeListener(this._inputChangeListener),this._compact||this._registerDragListeners()}initialize(){this._adapter.initializeButton()}_onButtonSlotChanged(t){this._adapter.initializeButton()}_onInputChange(t){let e=t.target.files;e&&this._handleFiles(e)}_onDragEnter(t){this._handleDragEvent(t,!0)}_onDragLeave(t){this._handleDragEvent(t,!1)}_onDragOver(t){this._handleDragEvent(t,!0)}_onDrop(t){if(this._handleDragEvent(t,!1),!this._disabled){let e=t.dataTransfer;if(e){let a=e.files;this._handleFiles(a)}}}_registerDragListeners(){this._adapter.registerDragEnterListener(this._dragEnterListener),this._adapter.registerDragLeaveListener(this._dragLeaveListener),this._adapter.registerDragOverListener(this._dragOverListener),this._adapter.registerDropListener(this._dropListener)}_removeDragListeners(){this._adapter.removeDragEnterListener(this._dragEnterListener),this._adapter.removeDragLeaveListener(this._dragLeaveListener),this._adapter.removeDragOverListener(this._dragOverListener),this._adapter.removeDropListener(this._dropListener)}_handleFiles(t){let e={};if(t){let a=this._sortFiles(t),o=a.legalFiles||null;!this._multiple&&o&&o.length>1&&(o=o.splice(1)),e=a}this._adapter.emitHostEvent(i.events.FILES_CHANGED,e)}_sortFiles(t){let e=[],a=[];if(!this._accept&&!this.maxSize)return e=Array.from(t),{legalFiles:e,illegalFiles:a};let o=this._accept?this._accept.split(",").map(r=>r.trim().toLowerCase()):[""];for(let r=0;r<t.length;r++)!o.some(m=>t[r].type.toLowerCase().match(m)||t[r].name.toLowerCase().match("\\"+m))||this._maxSize&&t[r].size>this._maxSize?a.push(t[r]):e.push(t[r]);return{legalFiles:e,illegalFiles:a}}_handleDragEvent(t,e){this._disabled||(t.preventDefault(),t.stopPropagation(),this._adapter.setHighlightState(e))}get accept(){return this._accept}set accept(t){this._accept!==t&&(this._accept=t,this._adapter.setAccept(t),t?this._adapter.setHostAttribute(i.attributes.ACCEPT,t):this._adapter.removeHostAttribute(i.attributes.ACCEPT))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize!==t&&(this._maxSize=t,t?this._adapter.setHostAttribute(i.attributes.MAX_SIZE,t.toString()):this._adapter.removeHostAttribute(i.attributes.MAX_SIZE))}get capture(){return this._capture}set capture(t){this._capture!==t&&(this._capture=t,this._adapter.setCapture(t),t?this._adapter.setHostAttribute(i.attributes.CAPTURE,t):this._adapter.removeHostAttribute(i.attributes.CAPTURE))}get multiple(){return this._multiple}set multiple(t){this._multiple!==t&&(this._multiple=t,this._adapter.setMultiple(t),t?this._adapter.setHostAttribute(i.attributes.MULTIPLE):this._adapter.removeHostAttribute(i.attributes.MULTIPLE))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.setDisabled(t),t?this._adapter.setHostAttribute(i.attributes.DISABLED):this._adapter.removeHostAttribute(i.attributes.DISABLED))}get compact(){return this._compact}set compact(t){this._compact!==t&&(this._compact=t,this._adapter.setCompact(t),t?(this._adapter.setHostAttribute(i.attributes.COMPACT),this._removeDragListeners()):(this._adapter.removeHostAttribute(i.attributes.COMPACT),this._registerDragListeners()))}get borderless(){return this._borderless}set borderless(t){this._borderless!==t&&(this._borderless=t,this._adapter.setBorderless(t),t?this._adapter.setHostAttribute(i.attributes.BORDERLESS):this._adapter.removeHostAttribute(i.attributes.BORDERLESS))}};var F='<template><form class="forge-file-picker" id="container" part="form"><div class="forge-file-picker__primary" id="primary" part="primary"><slot name="primary"></slot></div><slot id="button-slot"></slot><div class="forge-file-picker__secondary" id="secondary" part="secondary"><slot name="secondary"></slot></div><input type="file" class="forge-file-picker__input" id="input" part="input"></form><div class="forge-file-picker__helper-text" part="helper-text-container"><slot name="helper-text"></slot></div></template>',O='.forge-file-picker{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;background-color:rgba(189,189,189,.12);border:1px dashed #e0e0e0;display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:16px;padding:16px;text-align:center;cursor:pointer}.forge-file-picker__primary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-subtitle1-font-size, 1rem);line-height:1.75rem;line-height:var(--mdc-typography-subtitle1-line-height, 1.75rem);font-weight:400;font-weight:var(--mdc-typography-subtitle1-font-weight,400);letter-spacing:.009375em;letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, .009375em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle1-text-transform,inherit);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;font-size:var(--forge-typography-subtitle2-secondary-font-size, .875rem);line-height:1.375rem;line-height:var(--forge-typography-subtitle2-secondary-line-height, 1.375rem);font-weight:400;font-weight:var(--forge-typography-subtitle2-secondary-font-weight,400);letter-spacing:.0087500001em;letter-spacing:var(--forge-typography-subtitle2-secondary-letter-spacing, .0087500001em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-subtitle2-secondary-text-transform,inherit);color:var(--mdc-theme-text-secondary-on-background);color:var(--forge-typography-subtitle2-secondary-color,var(--mdc-theme-text-secondary-on-background));color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__input{display:none}.forge-file-picker__helper-text ::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);display:block;height:auto;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:12px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);text-align:start}.forge-file-picker__helper-text ::slotted([slot=helper-text])::before{display:inline-block;width:0;height:16px;content:"";vertical-align:0}.forge-file-picker[disabled]{background-color:#fafafa;background-color:var(--mdc-theme-background,#fafafa);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);opacity:.38;cursor:unset}.forge-file-picker.compact{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:transparent;border:none;padding:0}.forge-file-picker.compact .forge-file-picker__primary,.forge-file-picker.compact .forge-file-picker__secondary{display:none}.forge-file-picker.compact .forge-file-picker__button>button{width:auto;width:var(--forge-file-picker-width,auto);background-color:transparent}.forge-file-picker:not(.compact).highlight{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5);background-color:rgba(63,81,181,.12);border-width:1px;border-style:solid}.forge-file-picker.borderless{--forge-file-picker-width:100%;border:none}.forge-file-picker.borderless:not(.compact).highlight{border:none}.forge-file-picker.borderless+.forge-file-picker__helper-text{display:none}:host{width:auto;width:var(--forge-file-picker-width,auto);height:auto;height:var(--forge-file-picker-height,auto);display:inline-block}:host([hidden]){display:none}',n=class extends _{constructor(){super();f(this,F,O),this._foundation=new h(new d(this))}static get observedAttributes(){return[i.attributes.ACCEPT,i.attributes.MAX_SIZE,i.attributes.CAPTURE,i.attributes.MULTIPLE,i.attributes.DISABLED,i.attributes.COMPACT,i.attributes.BORDERLESS]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,a,o){switch(e){case i.attributes.ACCEPT:this.accept=o;break;case i.attributes.MAX_SIZE:this.maxSize=u(o);break;case i.attributes.CAPTURE:this.capture=o;break;case i.attributes.MULTIPLE:this.multiple=p(o);break;case i.attributes.DISABLED:this.disabled=p(o);break;case i.attributes.COMPACT:this.compact=p(o);break;case i.attributes.BORDERLESS:this.borderless=p(o);break}}};s([l()],n.prototype,"accept",2),s([l()],n.prototype,"maxSize",2),s([l()],n.prototype,"capture",2),s([l()],n.prototype,"multiple",2),s([l()],n.prototype,"disabled",2),s([l()],n.prototype,"compact",2),s([l()],n.prototype,"borderless",2),n=s([b({name:i.elementName,dependencies:[x]})],n);var k=class extends y{constructor(t){super(t)}_build(){return document.createElement(i.elementName)}_configure(){var t,e,a,o;if((t=this._config.options)!=null&&t.primaryText){let r=document.createElement("span");r.slot="primary",r.textContent=this._config.options.primaryText,this._element.appendChild(r)}if((e=this._config.options)!=null&&e.secondaryText){let r=document.createElement("span");r.slot="secondary",r.textContent=this._config.options.secondaryText,this._element.appendChild(r)}if((a=this._config.options)!=null&&a.buttonText&&new C({options:{parent:this._element,text:this._config.options.buttonText},props:{type:"outlined"}}),(o=this._config.options)!=null&&o.helperText){let r=document.createElement("span");r.slot="helper-text",r.textContent=this._config.options.helperText,this._element.appendChild(r)}}onChange(t){this._element.addEventListener(i.events.FILES_CHANGED,e=>t(e.detail))}};function pe(){v(n)}export{i as a,d as b,h as c,n as d,k as e,pe as f};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{b as x,c as C}from"./chunk.OAKTW64X.js";import{a as y}from"./chunk.MIYZJUXH.js";import{a as E}from"./chunk.A23NSEWA.js";import{a as l}from"./chunk.B3IJU6XJ.js";import{a as b,b as L}from"./chunk.BSZ2LBJX.js";import{a as _}from"./chunk.3E5QKMHL.js";import{a as v,e as f,g as c}from"./chunk.HN4PXH3D.js";import{k as p,l as u}from"./chunk.G76HB2FK.js";import{f as s}from"./chunk.MCIQXNKY.js";var D=`${L}file-picker`,I={ACCEPT:"accept",MAX_SIZE:"max-size",CAPTURE:"capture",MULTIPLE:"multiple",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},T={HIGHLIGHT:"highlight",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},S={CONTAINER:"container",BUTTON:"button",INPUT:"input"},A={CONTAINER:"#container",BUTTON:"#button",INPUT:"#input",BUTTON_SLOT:"#button-slot"},P={FILES_CHANGED:`${D}-change`},i={elementName:D,attributes:I,classes:T,ids:S,selectors:A,events:P};var d=class extends E{constructor(e){super(e);this._container=c(e,i.selectors.CONTAINER),this._buttonSlot=c(e,i.selectors.BUTTON_SLOT),this._input=c(e,i.selectors.INPUT),this._inputEventListener=()=>{this._input.value="",this._input.click()},this._container.addEventListener("click",this._inputEventListener)}registerButtonSlotListener(e){this._buttonSlot.addEventListener("slotchange",e)}registerInputChangeListener(e){this._input.addEventListener("change",e)}registerDragEnterListener(e){this._container.addEventListener("dragenter",e)}registerDragLeaveListener(e){this._container.addEventListener("dragleave",e)}registerDragOverListener(e){this._container.addEventListener("dragover",e)}registerDropListener(e){this._container.addEventListener("drop",e)}removeDragEnterListener(e){this._container.removeEventListener("dragenter",e)}removeDragLeaveListener(e){this._container.removeEventListener("dragleave",e)}removeDragOverListener(e){this._container.removeEventListener("dragover",e)}removeDropListener(e){this._container.removeEventListener("drop",e)}initializeButton(){let e=this._component.querySelector("button");this._button=e||void 0}setHighlightState(e){this._container.classList.contains(i.classes.HIGHLIGHT)!==e&&this._container.classList.toggle(i.classes.HIGHLIGHT)}setAccept(e){e?this._input.setAttribute("accept",e):this._input.removeAttribute("accept")}setCapture(e){e?this._input.setAttribute("capture",e):this._input.removeAttribute("capture")}setMultiple(e){e?this._input.setAttribute("multiple",""):this._input.removeAttribute("multiple")}setDisabled(e){e?(this._container.removeEventListener("click",this._inputEventListener),this._button.setAttribute("disabled",""),this._container.setAttribute("disabled","")):(this._container.addEventListener("click",this._inputEventListener),this._button.removeAttribute("disabled"),this._container.removeAttribute("disabled"))}setCompact(e){this._container.classList.contains(i.classes.COMPACT)!==e&&this._container.classList.toggle(i.classes.COMPACT)}setBorderless(e){this._container.classList.contains(i.classes.BORDERLESS)!==e&&this._container.classList.toggle(i.classes.BORDERLESS)}};var h=class{constructor(t){this._adapter=t;this._accept=null;this._maxSize=null;this._capture=null;this._multiple=!1;this._disabled=!1;this._compact=!1;this._borderless=!1;this._buttonSlotListener=e=>this._onButtonSlotChanged(e),this._inputChangeListener=e=>this._onInputChange(e),this._dragEnterListener=e=>this._onDragEnter(e),this._dragLeaveListener=e=>this._onDragLeave(e),this._dragOverListener=e=>this._onDragOver(e),this._dropListener=e=>this._onDrop(e),this._adapter.registerButtonSlotListener(this._buttonSlotListener),this._adapter.registerInputChangeListener(this._inputChangeListener),this._compact||this._registerDragListeners()}initialize(){this._adapter.initializeButton()}_onButtonSlotChanged(t){this._adapter.initializeButton()}_onInputChange(t){let e=t.target.files;e&&this._handleFiles(e)}_onDragEnter(t){this._handleDragEvent(t,!0)}_onDragLeave(t){this._handleDragEvent(t,!1)}_onDragOver(t){this._handleDragEvent(t,!0)}_onDrop(t){if(this._handleDragEvent(t,!1),!this._disabled){let e=t.dataTransfer;if(e){let a=e.files;this._handleFiles(a)}}}_registerDragListeners(){this._adapter.registerDragEnterListener(this._dragEnterListener),this._adapter.registerDragLeaveListener(this._dragLeaveListener),this._adapter.registerDragOverListener(this._dragOverListener),this._adapter.registerDropListener(this._dropListener)}_removeDragListeners(){this._adapter.removeDragEnterListener(this._dragEnterListener),this._adapter.removeDragLeaveListener(this._dragLeaveListener),this._adapter.removeDragOverListener(this._dragOverListener),this._adapter.removeDropListener(this._dropListener)}_handleFiles(t){let e={};if(t){let a=this._sortFiles(t),o=a.legalFiles||null;!this._multiple&&o&&o.length>1&&(o=o.splice(1)),e=a}this._adapter.emitHostEvent(i.events.FILES_CHANGED,e)}_sortFiles(t){let e=[],a=[];if(!this._accept&&!this.maxSize)return e=Array.from(t),{legalFiles:e,illegalFiles:a};let o=this._accept?this._accept.split(",").map(r=>r.trim().toLowerCase()):[""];for(let r=0;r<t.length;r++)!o.some(m=>t[r].type.toLowerCase().match(m)||t[r].name.toLowerCase().match("\\"+m))||this._maxSize&&t[r].size>this._maxSize?a.push(t[r]):e.push(t[r]);return{legalFiles:e,illegalFiles:a}}_handleDragEvent(t,e){this._disabled||(t.preventDefault(),t.stopPropagation(),this._adapter.setHighlightState(e))}get accept(){return this._accept}set accept(t){this._accept!==t&&(this._accept=t,this._adapter.setAccept(t),t?this._adapter.setHostAttribute(i.attributes.ACCEPT,t):this._adapter.removeHostAttribute(i.attributes.ACCEPT))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize!==t&&(this._maxSize=t,t?this._adapter.setHostAttribute(i.attributes.MAX_SIZE,t.toString()):this._adapter.removeHostAttribute(i.attributes.MAX_SIZE))}get capture(){return this._capture}set capture(t){this._capture!==t&&(this._capture=t,this._adapter.setCapture(t),t?this._adapter.setHostAttribute(i.attributes.CAPTURE,t):this._adapter.removeHostAttribute(i.attributes.CAPTURE))}get multiple(){return this._multiple}set multiple(t){this._multiple!==t&&(this._multiple=t,this._adapter.setMultiple(t),t?this._adapter.setHostAttribute(i.attributes.MULTIPLE):this._adapter.removeHostAttribute(i.attributes.MULTIPLE))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.setDisabled(t),t?this._adapter.setHostAttribute(i.attributes.DISABLED):this._adapter.removeHostAttribute(i.attributes.DISABLED))}get compact(){return this._compact}set compact(t){this._compact!==t&&(this._compact=t,this._adapter.setCompact(t),t?(this._adapter.setHostAttribute(i.attributes.COMPACT),this._removeDragListeners()):(this._adapter.removeHostAttribute(i.attributes.COMPACT),this._registerDragListeners()))}get borderless(){return this._borderless}set borderless(t){this._borderless!==t&&(this._borderless=t,this._adapter.setBorderless(t),t?this._adapter.setHostAttribute(i.attributes.BORDERLESS):this._adapter.removeHostAttribute(i.attributes.BORDERLESS))}};var F='<template><form class="forge-file-picker" id="container" part="form"><div class="forge-file-picker__primary" id="primary" part="primary"><slot name="primary"></slot></div><slot id="button-slot"></slot><div class="forge-file-picker__secondary" id="secondary" part="secondary"><slot name="secondary"></slot></div><input type="file" class="forge-file-picker__input" id="input" part="input"></form><div class="forge-file-picker__helper-text" part="helper-text-container"><slot name="helper-text"></slot></div></template>',O='.forge-file-picker{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;background-color:rgba(189,189,189,.12);border:1px dashed #e0e0e0;display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:16px;padding:16px;text-align:center;cursor:pointer}.forge-file-picker__primary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-subtitle1-font-size, 1rem);line-height:1.75rem;line-height:var(--mdc-typography-subtitle1-line-height, 1.75rem);font-weight:400;font-weight:var(--mdc-typography-subtitle1-font-weight,400);letter-spacing:.009375em;letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, .009375em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle1-text-transform,inherit);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;font-size:var(--forge-typography-subtitle2-secondary-font-size, .875rem);line-height:1.375rem;line-height:var(--forge-typography-subtitle2-secondary-line-height, 1.375rem);font-weight:400;font-weight:var(--forge-typography-subtitle2-secondary-font-weight,400);letter-spacing:.0087500001em;letter-spacing:var(--forge-typography-subtitle2-secondary-letter-spacing, .0087500001em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-subtitle2-secondary-text-transform,inherit);color:var(--mdc-theme-text-secondary-on-background);color:var(--forge-typography-subtitle2-secondary-color,var(--mdc-theme-text-secondary-on-background));color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__input{display:none}.forge-file-picker__helper-text ::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);display:block;height:auto;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:12px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);text-align:start}.forge-file-picker__helper-text ::slotted([slot=helper-text])::before{display:inline-block;width:0;height:16px;content:"";vertical-align:0}.forge-file-picker[disabled]{background-color:#fafafa;background-color:var(--mdc-theme-background,#fafafa);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);opacity:.38;cursor:unset}.forge-file-picker.compact{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:transparent;border:none;padding:0}.forge-file-picker.compact .forge-file-picker__primary,.forge-file-picker.compact .forge-file-picker__secondary{display:none}.forge-file-picker.compact .forge-file-picker__button>button{width:auto;width:var(--forge-file-picker-width,auto);background-color:transparent}.forge-file-picker:not(.compact).highlight{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5);background-color:rgba(63,81,181,.12);border-width:1px;border-style:solid}.forge-file-picker.borderless{--forge-file-picker-width:100%;border:none}.forge-file-picker.borderless:not(.compact).highlight{border:none}.forge-file-picker.borderless+.forge-file-picker__helper-text{display:none}:host{width:auto;width:var(--forge-file-picker-width,auto);height:auto;height:var(--forge-file-picker-height,auto);display:inline-block}:host([hidden]){display:none}',n=class extends _{constructor(){super();f(this,F,O),this._foundation=new h(new d(this))}static get observedAttributes(){return[i.attributes.ACCEPT,i.attributes.MAX_SIZE,i.attributes.CAPTURE,i.attributes.MULTIPLE,i.attributes.DISABLED,i.attributes.COMPACT,i.attributes.BORDERLESS]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,a,o){switch(e){case i.attributes.ACCEPT:this.accept=o;break;case i.attributes.MAX_SIZE:this.maxSize=u(o);break;case i.attributes.CAPTURE:this.capture=o;break;case i.attributes.MULTIPLE:this.multiple=p(o);break;case i.attributes.DISABLED:this.disabled=p(o);break;case i.attributes.COMPACT:this.compact=p(o);break;case i.attributes.BORDERLESS:this.borderless=p(o);break}}};s([l()],n.prototype,"accept",2),s([l()],n.prototype,"maxSize",2),s([l()],n.prototype,"capture",2),s([l()],n.prototype,"multiple",2),s([l()],n.prototype,"disabled",2),s([l()],n.prototype,"compact",2),s([l()],n.prototype,"borderless",2),n=s([b({name:i.elementName,dependencies:[x]})],n);var k=class extends y{constructor(t){super(t)}_build(){return document.createElement(i.elementName)}_configure(){var t,e,a,o;if((t=this._config.options)!=null&&t.primaryText){let r=document.createElement("span");r.slot="primary",r.textContent=this._config.options.primaryText,this._element.appendChild(r)}if((e=this._config.options)!=null&&e.secondaryText){let r=document.createElement("span");r.slot="secondary",r.textContent=this._config.options.secondaryText,this._element.appendChild(r)}if((a=this._config.options)!=null&&a.buttonText&&new C({options:{parent:this._element,text:this._config.options.buttonText},props:{type:"outlined"}}),(o=this._config.options)!=null&&o.helperText){let r=document.createElement("span");r.slot="helper-text",r.textContent=this._config.options.helperText,this._element.appendChild(r)}}onChange(t){this._element.addEventListener(i.events.FILES_CHANGED,e=>t(e.detail))}};function pe(){v(n)}export{i as a,d as b,h as c,n as d,k as e,pe as f};
|
|
7
|
+
//# sourceMappingURL=chunk.V7P3QPNM.js.map
|
|
File without changes
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2022 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as o}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as o}from"./chunk.CYJBOJMX.js";import{a as n}from"./chunk.24D46RLZ.js";var l=class extends n{constructor(e){super(e)}_build(){return document.createElement(o.elementName)}_configure(){var e;typeof((e=this._config.options)==null?void 0:e.helperText)=="string"&&this.setHelperText(this._config.options.helperText)}get value(){return this._element.value}set value(e){this._element.value=e}get disabled(){return this._element.disabled}set disabled(e){this._element.disabled=e}get invalid(){return this._element.invalid||!1}set invalid(e){this._element.invalid=e}onChange(e){this._element.addEventListener("change",t=>e(t.detail))}onFocus(e){this._element.addEventListener("focus",t=>e(t))}onBlur(e){this._element.addEventListener("blur",t=>e(t))}setHelperText(e){e?(this._helperTextElement||(this._helperTextElement=document.createElement("span"),this._helperTextElement.slot="helper-text",this._element.appendChild(this._helperTextElement)),this._helperTextElement.textContent=e):this._helperTextElement&&this._helperTextElement.isConnected&&(this._element.removeChild(this._helperTextElement),this._helperTextElement=void 0)}};export{l as a};
|
|
7
|
+
//# sourceMappingURL=chunk.VH3PVW2V.js.map
|