@kyndryl-design-system/shidoka-applications 2.68.1 → 2.68.2
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/common/scss/form-input.scss +1 -1
- package/components/reusable/checkbox/checkboxGroup.js +1 -1
- package/components/reusable/colorInput/colorInput.js +1 -1
- package/components/reusable/datePicker/datepicker.js +2 -2
- package/components/reusable/datePicker/index.js +1 -1
- package/components/reusable/daterangepicker/daterangepicker.js +2 -2
- package/components/reusable/daterangepicker/index.js +1 -1
- package/components/reusable/dropdown/dropdown.d.ts.map +1 -1
- package/components/reusable/dropdown/dropdown.js +18 -14
- package/components/reusable/dropdown/dropdown.js.map +1 -1
- package/components/reusable/multiInputField/multiInputField.js +1 -1
- package/components/reusable/numberInput/numberInput.js +1 -1
- package/components/reusable/progressBar/progressBar.js +1 -1
- package/components/reusable/radioButton/radioButtonGroup.js +1 -1
- package/components/reusable/sliderInput/sliderInput.js +1 -1
- package/components/reusable/textArea/textArea.js +1 -1
- package/components/reusable/textInput/textInput.js +18 -6
- package/components/reusable/textInput/textInput.js.map +1 -1
- package/components/reusable/timepicker/index.js +1 -1
- package/components/reusable/timepicker/timepicker.js +2 -2
- package/components/reusable/toggleButton/toggleButton.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/{shidoka-flatpickr-theme-DOQOMmsp.js → shidoka-flatpickr-theme-D_ZtzGGD.js} +2 -2
- package/{shidoka-flatpickr-theme-DOQOMmsp.js.map → shidoka-flatpickr-theme-D_ZtzGGD.js.map} +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as n,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as p,o as u}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as f}from"../../../common/mixins/form-input.js";import{getPlaceholder as g,injectFlatpickrStyles as k,updateEnableTime as v,clearFlatpickrInput as b,emitValue as y,initializeSingleAnchorFlatpickr as x,getModalContainer as w,setCalendarAttributes as _,hideEmptyYear as D,getFlatpickrOptions as I,preventFlatpickrOpen as z,handleInputClick as F,handleInputFocus as S,loadLocale as E}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as M}from"../../../shidoka-flatpickr-theme-
|
|
1
|
+
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as n,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as p,o as u}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as f}from"../../../common/mixins/form-input.js";import{getPlaceholder as g,injectFlatpickrStyles as k,updateEnableTime as v,clearFlatpickrInput as b,emitValue as y,initializeSingleAnchorFlatpickr as x,getModalContainer as w,setCalendarAttributes as _,hideEmptyYear as D,getFlatpickrOptions as I,preventFlatpickrOpen as z,handleInputClick as F,handleInputFocus as S,loadLocale as E}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as M}from"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import{c as T,O as $,P as C}from"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";var A=r`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -380,7 +380,7 @@ textarea:not([disabled])[invalid] {
|
|
|
380
380
|
cursor: pointer;
|
|
381
381
|
}
|
|
382
382
|
.clear-button.dropdown-clear {
|
|
383
|
-
right:
|
|
383
|
+
right: 48px;
|
|
384
384
|
width: 24px;
|
|
385
385
|
}
|
|
386
386
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{DatePicker}from"./datepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../shidoka-flatpickr-theme-
|
|
1
|
+
export{DatePicker}from"./datepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as n,a as r,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as u,o as p}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as g}from"../../../common/mixins/form-input.js";import{DateRangeEditableMode as f,getPlaceholder as v,injectFlatpickrStyles as k,updateEnableTime as b,clearFlatpickrInput as y,emitValue as x,initializeSingleAnchorFlatpickr as w,getModalContainer as D,setCalendarAttributes as _,hideEmptyYear as I,getFlatpickrOptions as E,applyDateRangeEditingRestrictions as F,preventFlatpickrOpen as S,handleInputClick as z,handleInputFocus as M,loadLocale as T}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as A}from"../../../shidoka-flatpickr-theme-
|
|
1
|
+
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as n,a as r,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as u,o as p}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as g}from"../../../common/mixins/form-input.js";import{DateRangeEditableMode as f,getPlaceholder as v,injectFlatpickrStyles as k,updateEnableTime as b,clearFlatpickrInput as y,emitValue as x,initializeSingleAnchorFlatpickr as w,getModalContainer as D,setCalendarAttributes as _,hideEmptyYear as I,getFlatpickrOptions as E,applyDateRangeEditingRestrictions as F,preventFlatpickrOpen as S,handleInputClick as z,handleInputFocus as M,loadLocale as T}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as A}from"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import{c as $,O,P as C}from"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";var R=n`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -380,7 +380,7 @@ textarea:not([disabled])[invalid] {
|
|
|
380
380
|
cursor: pointer;
|
|
381
381
|
}
|
|
382
382
|
.clear-button.dropdown-clear {
|
|
383
|
-
right:
|
|
383
|
+
right: 48px;
|
|
384
384
|
width: 24px;
|
|
385
385
|
}
|
|
386
386
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{DateRangePicker}from"./daterangepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../shidoka-flatpickr-theme-
|
|
1
|
+
export{DateRangePicker}from"./daterangepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -380,7 +380,7 @@ textarea:not([disabled])[invalid] {
|
|
|
380
380
|
cursor: pointer;
|
|
381
381
|
}
|
|
382
382
|
.clear-button.dropdown-clear {
|
|
383
|
-
right:
|
|
383
|
+
right: 48px;
|
|
384
384
|
width: 24px;
|
|
385
385
|
}
|
|
386
386
|
|
|
@@ -649,16 +649,17 @@ slot[name=icon]::slotted(*) {
|
|
|
649
649
|
}
|
|
650
650
|
|
|
651
651
|
.arrow-icon {
|
|
652
|
-
position: absolute;
|
|
653
|
-
top: 50%;
|
|
654
|
-
right: 16px;
|
|
655
|
-
transform: translateY(-45%);
|
|
656
652
|
display: inline-flex;
|
|
657
653
|
align-items: center;
|
|
658
654
|
justify-content: center;
|
|
655
|
+
position: absolute;
|
|
656
|
+
top: 50%;
|
|
657
|
+
right: 16px;
|
|
658
|
+
transform: translateY(-50%);
|
|
659
|
+
transition: transform 150ms ease-out;
|
|
659
660
|
}
|
|
660
661
|
.open .arrow-icon {
|
|
661
|
-
transform: translateY(-
|
|
662
|
+
transform: translateY(-50%) rotate(-180deg);
|
|
662
663
|
}
|
|
663
664
|
|
|
664
665
|
.options {
|
|
@@ -870,13 +871,16 @@ kyn-tag-group {
|
|
|
870
871
|
class="label-text ${this.hideLabel||this.inline?"sr-only":""}"
|
|
871
872
|
for=${this.name}
|
|
872
873
|
>
|
|
873
|
-
${this.required?o
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
874
|
+
${this.required?o`
|
|
875
|
+
<abbr
|
|
876
|
+
class="required"
|
|
877
|
+
title=${this._textStrings.requiredText}
|
|
878
|
+
role="img"
|
|
879
|
+
aria-label=${(null===(e=this._textStrings)||void 0===e?void 0:e.requiredText)||"Required"}
|
|
880
|
+
>
|
|
881
|
+
*
|
|
882
|
+
</abbr>
|
|
883
|
+
`:null}
|
|
880
884
|
${this.label}
|
|
881
885
|
<slot name="tooltip"></slot>
|
|
882
886
|
</label>
|
|
@@ -1019,7 +1023,7 @@ kyn-tag-group {
|
|
|
1019
1023
|
</div>
|
|
1020
1024
|
</div>
|
|
1021
1025
|
</div>
|
|
1022
|
-
${this.hasSearch
|
|
1026
|
+
${this.hasSearch?o`
|
|
1023
1027
|
<kyn-button
|
|
1024
1028
|
?disabled=${this.disabled||this.readonly}
|
|
1025
1029
|
class="clear-button dropdown-clear"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown.js","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, PropertyValues, html, unsafeCSS } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport DropdownScss from './dropdown.scss?inline';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { deepmerge } from 'deepmerge-ts';\nimport { nothing } from 'lit';\n\nimport './dropdownOption';\nimport './enhancedDropdownOption';\nimport '../tag';\nimport '../button';\n\nimport { DropdownOption } from './dropdownOption';\nimport { EnhancedDropdownOption } from './enhancedDropdownOption';\n\nimport downIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nconst _defaultTextStrings = {\n title: 'Dropdown',\n selectedOptions: 'List of selected options',\n requiredText: 'Required',\n errorText: 'Error',\n clearAll: 'Clear all',\n clear: 'Clear',\n addItem: 'Add item...',\n add: 'Add',\n};\n\nconst KEY = {\n Enter: 'Enter',\n Escape: 'Escape',\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n} as const;\n\n/**\n * Dropdown, single select.\n * @fires on-change - Captures the dropdown change event and emits the selected value and original event details. `detail:{ value: string/array }`\n * @fires on-search - Capture the search input event and emits the search text.`detail:{ searchText: string }`\n * @fires on-clear-all - Captures the the multi-select clear all button click event and emits the value. `detail:{ value: array }`\n * @fires on-add-option - Captures the add button click and emits the newly added option. `detail:{ value: string }`\n * @slot unnamed - Slot for dropdown options.\n * @slot tooltip - Slot for tooltip.\n * @slot anchor - Slot for custom dropdown anchor element. If not provided, defaults to standard input-style anchor.\n * @attr {string/array} [value=''/[]] - The selected value(s) of the input. For single select, it is a string. For multi-select, it is an array of strings.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n */\n@customElement('kyn-dropdown')\nexport class Dropdown extends FormMixin(LitElement) {\n static override styles = unsafeCSS(DropdownScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Dropdown size/height. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Dropdown kind. */\n @property({ type: String, attribute: 'kind' })\n accessor kind: 'ai' | 'default' = 'default';\n\n /** Dropdown inline style type. */\n @property({ type: Boolean })\n accessor inline = false;\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Dropdown placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Listbox/drawer open state. */\n @property({ type: Boolean, reflect: true })\n accessor open = false;\n\n /** Makes the dropdown searchable. */\n @property({ type: Boolean })\n accessor searchable = false;\n\n /** Makes the dropdown enhanced. */\n @property({ type: Boolean })\n accessor enhanced = false;\n\n /** Dropdown read-only state (focusable but not interactive). */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Searchable variant filters results. */\n @property({ type: Boolean })\n accessor filterSearch = false;\n\n /** Enabled multi-select functionality. */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Makes the dropdown required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Dropdown disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Hide the tags below multi-select. */\n @property({ type: Boolean })\n accessor hideTags = false;\n\n /** Adds a \"Select all\" option to the top of a multi-select dropdown. */\n @property({ type: Boolean })\n accessor selectAll = false;\n\n /** \"Select all\" text customization. */\n @property({ type: String })\n accessor selectAllText = 'Select all';\n\n /** Menu CSS min-width value. */\n @property({ type: String })\n accessor menuMinWidth = '120px';\n\n /** Controls direction that dropdown opens. */\n @property({ type: String })\n accessor openDirection: 'auto' | 'up' | 'down' = 'auto';\n\n /** Is \"Select All\" box checked.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllChecked = false;\n\n /** Is \"Select All\" indeterminate.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllIndeterminate = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Enables the \"Add New Option\" feature. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * New dropdown option value.\n * @ignore\n */\n @state()\n accessor newOptionValue = '';\n\n /**\n * Selected option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text = '';\n\n /**\n * Search input value.\n */\n @property({ type: String })\n accessor searchText = '';\n\n /**\n * Assistive text for screen readers.\n * @ignore\n */\n @state()\n accessor assistiveText = 'Dropdown menu options.';\n\n /**\n * Queries any slotted options, default or enhanced.\n * @ignore\n */\n protected get options(): Array<DropdownOption | EnhancedDropdownOption> {\n return Array.from(\n this.querySelectorAll<DropdownOption | EnhancedDropdownOption>(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n }\n\n /**\n * Queries any slotted selected options.\n * @ignore\n */\n protected get selectedOptions(): Array<\n DropdownOption | EnhancedDropdownOption\n > {\n return this.options.filter(\n (opt): opt is DropdownOption | EnhancedDropdownOption =>\n opt.hasAttribute('selected')\n );\n }\n\n /**\n * Queries the .search DOM element.\n * @ignore\n */\n @query('.search')\n accessor searchEl!: HTMLInputElement;\n\n /**\n * Queries the .select DOM element.\n * @ignore\n */\n @query('.select')\n accessor buttonEl!: HTMLElement;\n\n /**\n * Queries the .options DOM element.\n * @ignore\n */\n @query('.options')\n accessor listboxEl!: HTMLElement;\n\n /**\n * Queries the .clear-multiple DOM element.\n * @ignore\n */\n @query('.clear-multiple')\n accessor clearMultipleEl!: HTMLElement;\n\n /**\n * Queries the .add-option-input DOM element.\n * @ignore\n */\n @query('.add-option-input')\n accessor addOptionInputEl!: HTMLInputElement;\n\n /**\n * Open drawer upwards.\n * @ignore\n */\n @state()\n accessor _openUpwards = false;\n\n /**\n * Tags value/text reference.\n * @ignore\n */\n @state()\n accessor _tags: Array<object> = [];\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n searchTextEntered: any = false;\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n prevSearchKeydownIndex = -1;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onChildClick = (e: Event) => this._handleClick(e as any);\n private _onChildRemove = (_e: Event) => this._handleRemoveOption();\n private _onChildBlur = (e: Event) => this._handleBlur(e as any);\n\n override render() {\n const mainDropdownClasses = {\n dropdown: true,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(mainDropdownClasses)}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?open=${this.open}\n ?inline=${this.inline}\n ?searchable=${this.searchable}\n >\n <label\n id=\"label-${this.name}\"\n class=\"label-text ${this.hideLabel || this.inline ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=${classMap({\n wrapper: true,\n open: this.open,\n })}\n >\n <div\n class=\"custom\"\n @click=${(e: MouseEvent) => this.handleAnchorClick(e)}\n @keydown=${(e: KeyboardEvent) => this.handleAnchorKeydown(e)}\n >\n <slot name=\"anchor\">\n <div\n class=\"${classMap({\n select: true,\n 'is-readonly': !this.disabled && this.readonly,\n multiple: this.multiple,\n 'input-custom': true,\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n inline: this.inline,\n })}\"\n aria-labelledby=\"label-${this.name}\"\n aria-expanded=${this.open}\n aria-controls=\"options\"\n role=\"combobox\"\n id=${this.name}\n name=${this.name}\n title=${this._textStrings.title}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?invalid=${this._isInvalid}\n tabindex=${this.disabled ? '' : this.searchable ? '-1' : '0'}\n @mousedown=${(e: MouseEvent) => {\n if (!this.searchable && !this.readonly) e.preventDefault();\n }}\n aria-readonly=${this.readonly}\n @blur=${(e: any) => e.stopPropagation()}\n >\n ${this.multiple && this.value.length\n ? html`\n <button\n class=${classMap({\n 'clear-multiple': true,\n })}\n aria-label=\"${this.value\n .length} items selected. Clear selections\"\n ?disabled=${this.disabled || this.readonly}\n title=${this._textStrings.clear}\n @click=${(e: Event) => this.handleClearMultiple(e)}\n >\n ${this.value.length}\n <span style=\"display:flex;\" class=\"clear-multiple-icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </button>\n `\n : null}\n ${this.searchable\n ? html`\n <input\n class=\"search\"\n type=\"text\"\n placeholder=${this.placeholder}\n value=${this.searchText}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n aria-disabled=${this.disabled}\n @keydown=${(e: any) => this.handleSearchKeydown(e)}\n @input=${(e: any) => this.handleSearchInput(e)}\n @blur=${(e: any) => e.stopPropagation()}\n @click=${(e: any) => this.handleSearchClick(e)}\n />\n `\n : html`\n <span\n class=\"${classMap({\n 'placeholder-text': this.text === '',\n })}\"\n >\n ${this.multiple\n ? this.placeholder\n : this.value === ''\n ? this.placeholder\n : this.text}\n </span>\n `}\n <span class=\"arrow-icon\">${unsafeSVG(downIcon)}</span>\n </div>\n </slot>\n\n <div\n id=\"options\"\n class=${classMap({\n options: true,\n open: this.open,\n upwards: this._openUpwards,\n })}\n style=\"min-width: ${this.menuMinWidth};\"\n aria-hidden=${!this.open}\n @keydown=${this.handleListKeydown}\n @blur=${this.handleListBlur}\n @focus=${this._handleListFocus}\n >\n ${this.allowAddOption\n ? html`\n <div class=\"add-option\">\n <input\n class=\"add-option-input\"\n type=\"text\"\n placeholder=${this._textStrings.addItem}\n .value=${this.newOptionValue}\n aria-label=\"Add new option\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n @input=${this._handleInputNewOption}\n @keydown=${this._onAddOptionInputKeydown}\n @focus=${this._onAddOptionInputFocus}\n />\n <kyn-button\n type=\"button\"\n size=\"small\"\n kind=\"secondary\"\n ?disabled=${this.disabled}\n @on-click=${this._handleAddOption}\n >\n ${this._textStrings.add}\n </kyn-button>\n </div>\n `\n : null}\n\n <div\n role=\"listbox\"\n aria-labelledby=\"label-${this.name}\"\n class=${classMap({\n 'dropdown-listbox': true,\n 'ai-connected': this.kind === 'ai',\n })}\n >\n ${this.multiple && this.selectAll\n ? html`\n ${this.enhanced\n ? html`\n <kyn-enhanced-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-enhanced-dropdown-option>\n `\n : html`\n <kyn-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-dropdown-option>\n `}\n `\n : null}\n\n <slot\n id=\"children\"\n @slotchange=${() => this.handleSlotChange()}\n ></slot>\n </div>\n </div>\n </div>\n ${this.hasSearch && this.open\n ? html`\n <kyn-button\n ?disabled=${this.disabled || this.readonly}\n class=\"clear-button dropdown-clear\"\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${(e: Event) => this.handleClear(e)}\n >\n <span style=\"display:flex;\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n ${this.renderHelperContent()}\n </div>\n `;\n }\n\n private _onAddOptionInputKeydown(e: KeyboardEvent) {\n if (this.readonly) return;\n\n e.stopPropagation();\n switch (e.key) {\n case KEY.Enter:\n this._handleAddOption();\n break;\n case KEY.Escape:\n this.newOptionValue = '';\n this.open = false;\n this.buttonEl.focus();\n break;\n case KEY.ArrowDown:\n this.handleKeyboard(e, 40, 'addOption');\n break;\n case KEY.ArrowUp:\n this.handleKeyboard(e, 38, 'addOption');\n break;\n }\n }\n\n private _onAddOptionInputFocus() {\n this.assistiveText = 'Add new option input';\n }\n\n private canOpen(): boolean {\n return !this.disabled && !this.readonly;\n }\n\n private handleAnchorClick(e: MouseEvent) {\n if (!this.canOpen()) return;\n\n const path = (e.composedPath?.() || []) as Array<EventTarget>;\n const isInOptions =\n path.some((t) => (t as HTMLElement)?.classList?.contains('options')) ||\n (e.target as HTMLElement)?.closest?.(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option, .add-option'\n );\n\n if (isInOptions) return;\n\n this.handleClick();\n }\n\n private handleAnchorKeydown(e: KeyboardEvent) {\n if (!this.canOpen()) {\n const openKeys = [' ', 'Enter', 'ArrowDown', 'ArrowUp'];\n if (openKeys.includes(e.key)) e.preventDefault();\n return;\n }\n\n this.handleButtonKeydown(\n e as unknown as KeyboardEvent & { keyCode: number }\n );\n }\n\n private _handleAddOption() {\n if (this.readonly) return;\n\n const v = this.newOptionValue.trim();\n if (!v) return;\n this.dispatchEvent(\n new CustomEvent('on-add-option', { detail: { value: v } })\n );\n this.newOptionValue = '';\n }\n\n private renderHelperContent() {\n return html`\n ${\n this.multiple && !this.hideTags && this._tags.length\n ? html`\n <kyn-tag-group\n ?filter=${this.disabled || this.readonly ? false : true}\n role=\"list\"\n aria-label=${this._textStrings.selectedOptions}\n data-readonly=${this.readonly ? '' : nothing}\n >\n ${this._tags.map((tag: any) => {\n return html`\n <kyn-tag\n role=\"listitem\"\n tagColor=${this.kind === 'ai' ? 'ai' : 'default'}\n label=${tag.text}\n ?disabled=${this.disabled ||\n tag.disabled ||\n this.readonly}\n @on-close=${() => this.handleTagClear(tag)}\n ></kyn-tag>\n `;\n })}\n </kyn-tag-group>\n `\n : null\n }\n ${\n this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null\n }\n ${\n this._isInvalid\n ? html`\n <div class=\"error\">\n <span\n class=\"error-icon\"\n role=\"img\"\n title=${this._textStrings.errorText}\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null\n }\n\n <div\n class=\"assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\"\n >\n ${this.assistiveText}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // set a default placeholder if none provided\n if (this.placeholder === '') {\n if (this.searchable) {\n this.placeholder = 'Search';\n } else {\n if (this.multiple) {\n this.placeholder = 'Select items';\n } else {\n this.placeholder = 'Select an option';\n }\n }\n }\n }\n\n private handleSlotChange() {\n this.updateChildOptions();\n this._updateOptions();\n this._updateSelectedText();\n }\n\n private updateChildOptions() {\n const slot = this.shadowRoot?.querySelector('#children') as HTMLSlotElement;\n const options = slot.assignedElements({ flatten: true }) as HTMLElement[];\n\n options.forEach((option) => {\n const tag = option.tagName;\n if (\n tag === 'KYN-DROPDOWN-OPTION' ||\n tag === 'KYN-ENHANCED-DROPDOWN-OPTION'\n ) {\n (option as any).allowAddOption = this.allowAddOption;\n (option as any).multiple = this.multiple;\n (option as any).readonly = this.readonly;\n }\n });\n }\n\n private handleClick() {\n if (!this.canOpen()) return;\n\n this.open = !this.open;\n if (this.searchable) this.searchEl.focus();\n else this.buttonEl.focus();\n }\n\n private handleButtonKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n this.handleKeyboard(e, e.keyCode, 'button');\n }\n\n private handleListKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n e.preventDefault();\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n\n const TAB_KEY_CODE = 9;\n\n if (e.keyCode !== TAB_KEY_CODE) {\n e.preventDefault();\n }\n\n this.handleKeyboard(e, e.keyCode, 'list');\n }\n\n private _handleListFocus() {\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n\n const firstEnabled = visibleOptions.find((o: any) => !o.disabled) as any;\n if (!firstEnabled) return;\n\n visibleOptions.forEach((o: any) => (o.highlighted = false));\n\n if (!('tabIndex' in firstEnabled) || firstEnabled.tabIndex < 0) {\n firstEnabled.tabIndex = 0;\n }\n firstEnabled.focus();\n firstEnabled.scrollIntoView({ block: 'nearest' });\n this.assistiveText = firstEnabled.text || 'Option';\n }\n\n private handleListBlur(e: FocusEvent): void {\n if (this.multiple) {\n return;\n }\n\n this.options.forEach((o) => (o.highlighted = false));\n const target = e.relatedTarget as HTMLElement | null;\n\n if (\n target &&\n (target.closest('kyn-dropdown-option') ||\n target.closest('kyn-enhanced-dropdown-option') ||\n target.classList.contains('search') ||\n target.closest('.add-option'))\n ) {\n return;\n }\n\n this.open = false;\n this.assistiveText = 'Dropdown menu options.';\n }\n\n private handleKeyboard(e: any, keyCode: number, target: string) {\n const SPACEBAR_KEY_CODE = [0, 32];\n const ENTER_KEY_CODE = 13;\n const DOWN_ARROW_KEY_CODE = 40;\n const UP_ARROW_KEY_CODE = 38;\n const ESCAPE_KEY_CODE = 27;\n\n // get highlighted element + index and selected element\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n // visibleOptions.forEach((e) => (e.tabIndex = 0));\n\n const highlightedEl = visibleOptions.find(\n (option: any) => option.highlighted\n );\n const selectedEl = visibleOptions.find((option: any) => option.selected);\n let highlightedIndex = highlightedEl\n ? visibleOptions.indexOf(highlightedEl)\n : selectedEl\n ? visibleOptions.indexOf(selectedEl)\n : 0;\n\n if (SPACEBAR_KEY_CODE.includes(keyCode)) {\n e.preventDefault();\n }\n\n if (this.readonly) {\n if (keyCode === DOWN_ARROW_KEY_CODE || keyCode === UP_ARROW_KEY_CODE) {\n e.preventDefault();\n let nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (highlightedIndex + 1) % visibleOptions.length\n : (highlightedIndex - 1 + visibleOptions.length) %\n visibleOptions.length;\n\n let guard = 0;\n while (\n visibleOptions[nextIndex]?.disabled &&\n guard++ < visibleOptions.length\n ) {\n nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (nextIndex + 1) % visibleOptions.length\n : (nextIndex - 1 + visibleOptions.length) % visibleOptions.length;\n }\n\n if (visibleOptions[nextIndex]) {\n visibleOptions[highlightedIndex] &&\n (visibleOptions[highlightedIndex].highlighted = false);\n visibleOptions[nextIndex].focus();\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView?.({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text || 'Option';\n }\n return;\n }\n\n if (SPACEBAR_KEY_CODE.includes(keyCode) || keyCode === ENTER_KEY_CODE) {\n e.preventDefault();\n return;\n }\n\n if (keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n (this.searchable ? this.searchEl : this.buttonEl)?.focus();\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n\n return;\n }\n\n const isListboxElOpened = this.open;\n // open the listbox\n if (target === 'button' || target === 'addOption') {\n let openDropdown =\n SPACEBAR_KEY_CODE.includes(keyCode) ||\n keyCode === ENTER_KEY_CODE ||\n keyCode == DOWN_ARROW_KEY_CODE ||\n keyCode == UP_ARROW_KEY_CODE;\n\n if (e.target === this.clearMultipleEl && keyCode === ENTER_KEY_CODE) {\n openDropdown = false;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n highlightedIndex = 0;\n if (keyCode !== ENTER_KEY_CODE) return;\n }\n\n if (openDropdown) {\n this.open = true;\n\n if (\n this.allowAddOption &&\n target === 'button' &&\n keyCode === ENTER_KEY_CODE\n ) {\n setTimeout(() => {\n this.addOptionInputEl?.focus();\n }, 100);\n } else {\n // scroll to highlighted option\n if (!this.multiple && this.value !== '') {\n visibleOptions[highlightedIndex].scrollIntoView({\n block: 'nearest',\n });\n }\n }\n }\n }\n switch (keyCode) {\n case 0:\n case 32:\n case ENTER_KEY_CODE: {\n // select highlighted option\n visibleOptions[highlightedIndex].highlighted = true;\n if (isListboxElOpened) {\n if (this.multiple) {\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n this._handleClick({\n detail: {\n value: visibleOptions[highlightedIndex].value,\n selected: visibleOptions[highlightedIndex].selected,\n },\n });\n } else {\n visibleOptions.forEach((e) => (e.selected = false));\n visibleOptions[highlightedIndex].selected = true;\n this.updateValue(visibleOptions[highlightedIndex].value, true);\n this.emitValue();\n\n this.open = false;\n this.assistiveText = `Selected ${visibleOptions[highlightedIndex].value}`;\n }\n }\n return;\n }\n case DOWN_ARROW_KEY_CODE: {\n let nextIndex =\n !highlightedEl && !selectedEl\n ? 0\n : highlightedIndex === visibleOptions.length - 1\n ? 0\n : highlightedIndex + 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === visibleOptions.length - 1 ? 0 : nextIndex + 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case UP_ARROW_KEY_CODE: {\n // go to previous option\n let nextIndex =\n highlightedIndex === 0\n ? visibleOptions.length - 1\n : highlightedIndex - 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === 0 ? visibleOptions.length - 1 : nextIndex - 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case ESCAPE_KEY_CODE: {\n this.open = false;\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n default: {\n return;\n }\n }\n }\n\n private handleClearMultiple(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // clear values\n if (this.multiple) {\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n } else {\n this.value = '';\n }\n\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n\n const event = new CustomEvent('on-clear-all', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private handleTagClear(tag: any) {\n if (this.readonly) return;\n // remove value\n this.updateValue(tag.value, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n\n private handleClear(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // reset search input text\n this.text = '';\n this.searchText = '';\n this.searchEl.value = '';\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // reveal all options\n this.options.map((option: any) => {\n option.style.display = 'block';\n });\n }\n\n // clear selection for single select\n if (!this.multiple) {\n this.value = '';\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n }\n\n private handleSearchClick(e: MouseEvent) {\n if (this.readonly) return;\n e.stopPropagation();\n this.open = true;\n if ((this.searchText ?? '').trim() === '') this.searchText = '';\n }\n\n private handleSearchKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl.focus();\n }\n e.stopPropagation();\n e.preventDefault();\n return;\n }\n\n e.stopPropagation();\n\n const ENTER_KEY_CODE = 13;\n const ESCAPE_KEY_CODE = 27;\n const option = this.options.find((option) => option.highlighted);\n const highlightedIndex = this.options.findIndex(\n (option) => option.highlighted\n );\n this.searchTextEntered = false;\n // select option\n if (e.keyCode === ENTER_KEY_CODE) {\n this.searchTextEntered = true;\n if (option) {\n if (this.prevSearchKeydownIndex !== highlightedIndex) {\n if (this.multiple) {\n option.selected = !option.selected;\n } else {\n this.options.forEach((e) => (e.selected = false));\n option.selected = true;\n this.open = false;\n }\n this.updateValue(option.value, option.selected);\n }\n\n if (option.selected) {\n this.assistiveText = `Selected ${option.innerHTML}`;\n this.prevSearchKeydownIndex = highlightedIndex;\n } else {\n this.assistiveText = `Deselected ${option.innerHTML}`;\n }\n } else {\n this.assistiveText = 'No item matched.';\n }\n }\n\n // close listbox\n if (e.keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n this.buttonEl.focus();\n }\n }\n\n private handleSearchInput(e: any) {\n if (this.readonly) return;\n\n const value = e.target.value;\n this.searchText = value;\n this.open = true;\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // hide items that don't match\n this.options.map((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n if (searchText.toLowerCase().includes(value.toLowerCase())) {\n option.style.display = 'block';\n } else {\n option.style.display = 'none';\n }\n });\n } else {\n // find matches\n const options = this.options.filter((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n return searchText.toLowerCase().startsWith(value.toLowerCase());\n });\n\n // reset options highlighted state\n this.options.forEach((option) => (option.highlighted = false));\n\n // option highlight and scroll\n if (value !== '' && options.length) {\n options[0].highlighted = true;\n options[0].scrollIntoView({ block: 'nearest' });\n if (this.searchTextEntered) this.assistiveText = 'Option Matched';\n }\n }\n }\n\n private _updateSelectedOptions() {\n // set selected state for each option\n this.options.forEach((option: any) => {\n if (this.multiple) {\n option.selected = this.value.includes(option.value);\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleClick(e: any) {\n if (this.readonly) return;\n\n if (e.detail.value === 'selectAll') {\n this.selectAllChecked = e.detail.selected;\n\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n if (e.detail.selected) {\n this.value = this.options\n .filter(\n (option) => !option.disabled || (option.disabled && option.selected)\n )\n .map((option) => option.value);\n this.assistiveText = 'Selected all items.';\n } else {\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n this.assistiveText = 'Deselected all items.';\n }\n\n this._validate(true, false);\n } else {\n this.updateValue(e.detail.value, e.detail.selected);\n this.assistiveText = e.detail.selected\n ? `Selected ${e.detail.value}`\n : `Deselected ${e.detail.value}`;\n }\n\n this._updateSelectedOptions();\n\n if (!this.multiple) {\n this.open = false;\n }\n\n // emit selected value\n this.emitValue();\n }\n\n private _handleBlur(e: any) {\n const relatedTarget = e.detail.origEvent.relatedTarget;\n\n if (\n !relatedTarget ||\n (relatedTarget?.localName !== 'kyn-dropdown-option' &&\n relatedTarget?.localName !== 'kyn-enhanced-dropdown-option' &&\n relatedTarget.localName !== 'kyn-dropdown')\n ) {\n this.open = false;\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this._onConnected();\n\n document.addEventListener('click', this._onDocumentClick);\n\n this.addEventListener('on-click', this._onChildClick);\n this.addEventListener('on-remove-option', this._onChildRemove);\n this.addEventListener('on-blur', this._onChildBlur);\n }\n\n override disconnectedCallback() {\n this._onDisconnected();\n\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-click', this._onChildClick);\n this.removeEventListener('on-remove-option', this._onChildRemove);\n this.removeEventListener('on-blur', this._onChildBlur);\n\n super.disconnectedCallback();\n }\n\n private updateValue(value: string, selected = false) {\n if (this.readonly) return;\n\n // set value\n if (this.multiple) {\n const values =\n this.value === '' ? [] : JSON.parse(JSON.stringify(this.value));\n\n // update array\n if (selected) {\n values.push(value);\n } else {\n const index = values.indexOf(value);\n values.splice(index, 1);\n }\n\n this.value = values;\n } else {\n this.value = value;\n }\n\n this._validate(true, false);\n\n // reset focus\n if (!this.multiple) {\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n }\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // set validity flags\n const Validity = {\n customError: this.invalidText !== '',\n valueMissing:\n this.required &&\n !this.readonly &&\n (!this.value ||\n (this.multiple && !this.value.length) ||\n (!this.multiple && this.value === '')),\n };\n\n // set validationMessage\n const InternalMsg =\n this.required && !this.value.length ? 'Please fill out this field.' : '';\n const ValidationMessage =\n this.invalidText !== '' ? this.invalidText : InternalMsg;\n\n const validationAnchor = this.buttonEl || this.listboxEl;\n\n if (validationAnchor) {\n this._internals.setValidity(\n Validity,\n ValidationMessage,\n validationAnchor\n );\n } else {\n this._internals.setValidity(Validity, ValidationMessage);\n }\n\n if (interacted) {\n this._internalValidationMsg = InternalMsg;\n }\n\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n private emitValue() {\n const event = new CustomEvent('on-change', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private _emitSearch() {\n const event = new CustomEvent('on-search', {\n detail: {\n searchText: this.searchText,\n },\n });\n this.dispatchEvent(event);\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n override updated(changedProps: PropertyValues) {\n super.updated(changedProps);\n\n if (changedProps.has('readonly')) {\n this.clearMultipleEl?.classList.toggle('is-readonly', this.readonly);\n this.clearMultipleEl?.toggleAttribute('data-readonly', this.readonly);\n }\n\n if (changedProps.has('kind')) {\n this.dispatchEvent(\n new CustomEvent('kind-changed', {\n detail: this.kind,\n bubbles: true,\n composed: true,\n })\n );\n\n this.classList.toggle('ai-connected', this.kind === 'ai');\n }\n\n const root = this.shadowRoot;\n if (!root) return;\n\n if (changedProps.has('open')) {\n const slot = root.querySelector<HTMLSlotElement>('slot[name=\"anchor\"]');\n const assigned = slot?.assignedElements({ flatten: true }) as\n | HTMLElement[]\n | undefined;\n const btn = assigned?.find(\n (el) => !el.querySelector('.clear-multiple-icon')\n );\n const icon = btn?.querySelector<HTMLElement>('span[slot=\"icon\"]');\n if (icon) {\n icon.style.transition = 'transform 0.2s ease-in-out';\n icon.style.transform = this.open ? 'rotate(180deg)' : 'rotate(0deg)';\n }\n }\n\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n this._updateOptions();\n\n const childrenSlot: any =\n root.querySelector<HTMLSlotElement>('slot#children');\n const options = childrenSlot\n .assignedElements()\n .filter((o: any): o is HTMLElement => !o.disabled);\n const selected = options.filter((o: any) => o.selected);\n\n this.selectAllChecked = selected.length === options.length;\n this.selectAllIndeterminate =\n selected.length > 0 && selected.length < options.length;\n\n this._updateTags();\n this._updateSelectedText();\n }\n\n if (changedProps.has('open') || changedProps.has('openDirection')) {\n if (this.open) {\n this.options.forEach((o) => (o.highlighted = false));\n\n if (!this.searchable && this.listboxEl) {\n this.listboxEl.focus({ preventScroll: true });\n this.assistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n }\n }\n\n if (this.openDirection === 'up') {\n this._openUpwards = true;\n } else if (this.openDirection === 'down') {\n this._openUpwards = false;\n } else if (this.open) {\n const rect = this.buttonEl.getBoundingClientRect();\n this._openUpwards = rect.top > window.innerHeight * 0.6;\n }\n\n if (this.open && !this.multiple) {\n const firstSelected = this.options.find((o) => o.selected);\n firstSelected?.scrollIntoView({ block: 'nearest' });\n }\n }\n\n if (changedProps.has('multiple')) {\n this.options.forEach((opt) => (opt.multiple = this.multiple));\n }\n\n if (changedProps.has('searchText') && this.searchEl) {\n this.searchEl.value = this.searchText;\n }\n\n if (\n changedProps.has('multiple') ||\n changedProps.has('allowAddOption') ||\n changedProps.has('readonly')\n ) {\n this.updateChildOptions();\n }\n\n if (changedProps.has('open') && this.open && !this.searchable) {\n this.listboxEl?.focus({ preventScroll: true });\n }\n }\n\n private get hasSearch(): boolean {\n return (this.searchText ?? '').trim().length > 0;\n }\n\n // add selected options to Tags array\n private _updateTags() {\n if (this.multiple) {\n const Options: any = Array.from(\n this.querySelectorAll(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n const Tags: Array<object> = [];\n\n if (Options) {\n Options.forEach((option: any) => {\n if (option.selected) {\n let text = option.textContent;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n text = titleSlot.textContent.trim();\n } else {\n text = option.displayText || option.value;\n }\n } else {\n text = option.textContent.trim();\n }\n\n Tags.push({\n value: option.value,\n text: text,\n disabled: option.disabled,\n });\n }\n });\n\n this._tags = Tags;\n }\n }\n }\n\n private _updateOptions() {\n const Options: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n Options.forEach((option: any) => {\n // set option multiple state\n option.multiple = this.multiple;\n\n if (this.multiple) {\n const Selected = this.value.includes(option.value);\n // set option selected state\n option.selected = Selected;\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleInputNewOption(e: Event) {\n const target = e.target as HTMLInputElement;\n this.newOptionValue = target.value;\n }\n\n private _handleRemoveOption() {\n this.assistiveText = 'MY option removed ';\n setTimeout(() => {\n this.open = false;\n this.buttonEl.focus();\n }, 100);\n }\n\n private _updateSelectedText() {\n // update selected option text\n const AllOptions: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n if (!this.multiple) {\n if (AllOptions.length && this.value !== '') {\n const option = AllOptions.find(\n (option: any) => option.value === this.value\n );\n if (option) {\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n this.text = titleSlot.textContent.trim();\n } else {\n this.text = option.displayText || this.value;\n }\n } else {\n this.text = option.textContent.trim();\n }\n } else {\n this.text = '';\n console.warn(`No dropdown option found with value: ${this.value}`);\n }\n }\n\n if (this.searchable && this.text) {\n this.searchText = this.text === this.placeholder ? '' : this.text;\n this.searchEl.value = this.searchText;\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-dropdown': Dropdown;\n }\n}\n"],"names":["_defaultTextStrings","title","selectedOptions","requiredText","errorText","clearAll","clear","addItem","add","KEY","Dropdown","customElement","FormMixin","LitElement","_classThis","_classSuper","_Dropdown_label_accessor_storage","set","this","__runInitializers","_label_initializers","_Dropdown_size_accessor_storage","_label_extraInitializers","_size_initializers","_Dropdown_kind_accessor_storage","_size_extraInitializers","_kind_initializers","_Dropdown_inline_accessor_storage","_kind_extraInitializers","_inline_initializers","_Dropdown_caption_accessor_storage","_inline_extraInitializers","_caption_initializers","_Dropdown_placeholder_accessor_storage","_caption_extraInitializers","_placeholder_initializers","_Dropdown_open_accessor_storage","_placeholder_extraInitializers","_open_initializers","_Dropdown_searchable_accessor_storage","_open_extraInitializers","_searchable_initializers","_Dropdown_enhanced_accessor_storage","_searchable_extraInitializers","_enhanced_initializers","_Dropdown_readonly_accessor_storage","_enhanced_extraInitializers","_readonly_initializers","_Dropdown_filterSearch_accessor_storage","_readonly_extraInitializers","_filterSearch_initializers","_Dropdown_multiple_accessor_storage","_filterSearch_extraInitializers","_multiple_initializers","_Dropdown_required_accessor_storage","_multiple_extraInitializers","_required_initializers","_Dropdown_hideLabel_accessor_storage","_required_extraInitializers","_hideLabel_initializers","_Dropdown_disabled_accessor_storage","_hideLabel_extraInitializers","_disabled_initializers","_Dropdown_hideTags_accessor_storage","_disabled_extraInitializers","_hideTags_initializers","_Dropdown_selectAll_accessor_storage","_hideTags_extraInitializers","_selectAll_initializers","_Dropdown_selectAllText_accessor_storage","_selectAll_extraInitializers","_selectAllText_initializers","_Dropdown_menuMinWidth_accessor_storage","_selectAllText_extraInitializers","_menuMinWidth_initializers","_Dropdown_openDirection_accessor_storage","_menuMinWidth_extraInitializers","_openDirection_initializers","_Dropdown_selectAllChecked_accessor_storage","_openDirection_extraInitializers","_selectAllChecked_initializers","_Dropdown_selectAllIndeterminate_accessor_storage","_selectAllChecked_extraInitializers","_selectAllIndeterminate_initializers","_Dropdown_textStrings_accessor_storage","_selectAllIndeterminate_extraInitializers","_textStrings_initializers","_Dropdown_allowAddOption_accessor_storage","_textStrings_extraInitializers","_allowAddOption_initializers","_Dropdown__textStrings_accessor_storage","_allowAddOption_extraInitializers","__textStrings_initializers","_Dropdown_newOptionValue_accessor_storage","__textStrings_extraInitializers","_newOptionValue_initializers","_Dropdown_text_accessor_storage","_newOptionValue_extraInitializers","_text_initializers","_Dropdown_searchText_accessor_storage","_text_extraInitializers","_searchText_initializers","_Dropdown_assistiveText_accessor_storage","_searchText_extraInitializers","_assistiveText_initializers","_Dropdown_searchEl_accessor_storage","_assistiveText_extraInitializers","_searchEl_initializers","_Dropdown_buttonEl_accessor_storage","_searchEl_extraInitializers","_buttonEl_initializers","_Dropdown_listboxEl_accessor_storage","_buttonEl_extraInitializers","_listboxEl_initializers","_Dropdown_clearMultipleEl_accessor_storage","_listboxEl_extraInitializers","_clearMultipleEl_initializers","_Dropdown_addOptionInputEl_accessor_storage","_clearMultipleEl_extraInitializers","_addOptionInputEl_initializers","_Dropdown__openUpwards_accessor_storage","_addOptionInputEl_extraInitializers","__openUpwards_initializers","_Dropdown__tags_accessor_storage","__openUpwards_extraInitializers","__tags_initializers","searchTextEntered","__tags_extraInitializers","prevSearchKeydownIndex","_onDocumentClick","e","_handleClickOut","_onChildClick","_handleClick","_onChildRemove","_e","_handleRemoveOption","_onChildBlur","_handleBlur","label","__classPrivateFieldGet","value","__classPrivateFieldSet","size","kind","inline","caption","placeholder","open","searchable","enhanced","readonly","filterSearch","multiple","required","hideLabel","disabled","hideTags","selectAll","selectAllText","menuMinWidth","openDirection","selectAllChecked","selectAllIndeterminate","textStrings","allowAddOption","_textStrings","newOptionValue","text","searchText","assistiveText","options","Array","from","querySelectorAll","filter","opt","hasAttribute","searchEl","buttonEl","listboxEl","clearMultipleEl","addOptionInputEl","_openUpwards","_tags","render","mainDropdownClasses","dropdown","html","classMap","name","_a","wrapper","handleAnchorClick","handleAnchorKeydown","select","_isInvalid","preventDefault","stopPropagation","length","handleClearMultiple","unsafeSVG","clearIcon","handleSearchKeydown","handleSearchInput","handleSearchClick","downIcon","upwards","handleListKeydown","handleListBlur","_handleListFocus","_handleInputNewOption","_onAddOptionInputKeydown","_onAddOptionInputFocus","_handleAddOption","handleSlotChange","hasSearch","handleClear","renderHelperContent","key","focus","handleKeyboard","canOpen","isInOptions","composedPath","call","some","t","classList","contains","_c","_b","target","closest","handleClick","handleButtonKeydown","includes","v","trim","dispatchEvent","CustomEvent","detail","nothing","map","tag","handleTagClear","errorIcon","invalidText","_internalValidationMsg","firstUpdated","updateChildOptions","_updateOptions","_updateSelectedText","shadowRoot","querySelector","assignedElements","flatten","forEach","option","tagName","keyCode","visibleOptions","style","display","firstEnabled","find","o","highlighted","tabIndex","scrollIntoView","block","relatedTarget","SPACEBAR_KEY_CODE","ENTER_KEY_CODE","highlightedEl","selectedEl","selected","highlightedIndex","indexOf","nextIndex","guard","_d","_f","isListboxElOpened","openDropdown","setTimeout","updateValue","emitValue","DisabledSelectedOptions","_validate","_updateSelectedOptions","event","_emitSearch","findIndex","innerHTML","titleSlot","textContent","displayText","toLowerCase","startsWith","origEvent","localName","connectedCallback","super","_onConnected","document","addEventListener","disconnectedCallback","_onDisconnected","removeEventListener","values","JSON","parse","stringify","push","index","splice","interacted","report","Validity","customError","valueMissing","InternalMsg","ValidationMessage","validationAnchor","_internals","setValidity","reportValidity","willUpdate","changedProps","has","deepmerge","updated","toggle","toggleAttribute","bubbles","composed","root","slot","assigned","btn","el","icon","transition","transform","_onUpdated","_updateTags","preventScroll","rect","getBoundingClientRect","top","window","innerHeight","firstSelected","Options","Tags","Selected","AllOptions","console","warn","_label_decorators","property","type","String","_size_decorators","attribute","_inline_decorators","Boolean","_caption_decorators","_placeholder_decorators","reflect","_searchable_decorators","_enhanced_decorators","_filterSearch_decorators","_multiple_decorators","_required_decorators","_hideLabel_decorators","_disabled_decorators","_hideTags_decorators","_selectAll_decorators","_selectAllText_decorators","_menuMinWidth_decorators","_openDirection_decorators","_selectAllChecked_decorators","_selectAllIndeterminate_decorators","_textStrings_decorators","Object","_allowAddOption_decorators","__textStrings_decorators","state","_newOptionValue_decorators","_text_decorators","_searchText_decorators","_assistiveText_decorators","query","__openUpwards_decorators","__tags_decorators","__esDecorate","static","private","access","obj","get","metadata","_metadata","_kind_decorators","_open_decorators","_readonly_decorators","_searchEl_decorators","_buttonEl_decorators","_listboxEl_decorators","_clearMultipleEl_decorators","_addOptionInputEl_decorators","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","DropdownScss"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dropdown.js","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, PropertyValues, html, unsafeCSS } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport DropdownScss from './dropdown.scss?inline';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { deepmerge } from 'deepmerge-ts';\nimport { nothing } from 'lit';\n\nimport './dropdownOption';\nimport './enhancedDropdownOption';\nimport '../tag';\nimport '../button';\n\nimport { DropdownOption } from './dropdownOption';\nimport { EnhancedDropdownOption } from './enhancedDropdownOption';\n\nimport downIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nconst _defaultTextStrings = {\n title: 'Dropdown',\n selectedOptions: 'List of selected options',\n requiredText: 'Required',\n errorText: 'Error',\n clearAll: 'Clear all',\n clear: 'Clear',\n addItem: 'Add item...',\n add: 'Add',\n};\n\nconst KEY = {\n Enter: 'Enter',\n Escape: 'Escape',\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n} as const;\n\n/**\n * Dropdown, single select.\n * @fires on-change - Captures the dropdown change event and emits the selected value and original event details. `detail:{ value: string/array }`\n * @fires on-search - Capture the search input event and emits the search text.`detail:{ searchText: string }`\n * @fires on-clear-all - Captures the the multi-select clear all button click event and emits the value. `detail:{ value: array }`\n * @fires on-add-option - Captures the add button click and emits the newly added option. `detail:{ value: string }`\n * @slot unnamed - Slot for dropdown options.\n * @slot tooltip - Slot for tooltip.\n * @slot anchor - Slot for custom dropdown anchor element. If not provided, defaults to standard input-style anchor.\n * @attr {string/array} [value=''/[]] - The selected value(s) of the input. For single select, it is a string. For multi-select, it is an array of strings.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n */\n@customElement('kyn-dropdown')\nexport class Dropdown extends FormMixin(LitElement) {\n static override styles = unsafeCSS(DropdownScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Dropdown size/height. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Dropdown kind. */\n @property({ type: String, attribute: 'kind' })\n accessor kind: 'ai' | 'default' = 'default';\n\n /** Dropdown inline style type. */\n @property({ type: Boolean })\n accessor inline = false;\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Dropdown placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Listbox/drawer open state. */\n @property({ type: Boolean, reflect: true })\n accessor open = false;\n\n /** Makes the dropdown searchable. */\n @property({ type: Boolean })\n accessor searchable = false;\n\n /** Makes the dropdown enhanced. */\n @property({ type: Boolean })\n accessor enhanced = false;\n\n /** Dropdown read-only state (focusable but not interactive). */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Searchable variant filters results. */\n @property({ type: Boolean })\n accessor filterSearch = false;\n\n /** Enabled multi-select functionality. */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Makes the dropdown required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Dropdown disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Hide the tags below multi-select. */\n @property({ type: Boolean })\n accessor hideTags = false;\n\n /** Adds a \"Select all\" option to the top of a multi-select dropdown. */\n @property({ type: Boolean })\n accessor selectAll = false;\n\n /** \"Select all\" text customization. */\n @property({ type: String })\n accessor selectAllText = 'Select all';\n\n /** Menu CSS min-width value. */\n @property({ type: String })\n accessor menuMinWidth = '120px';\n\n /** Controls direction that dropdown opens. */\n @property({ type: String })\n accessor openDirection: 'auto' | 'up' | 'down' = 'auto';\n\n /** Is \"Select All\" box checked.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllChecked = false;\n\n /** Is \"Select All\" indeterminate.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllIndeterminate = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Enables the \"Add New Option\" feature. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * New dropdown option value.\n * @ignore\n */\n @state()\n accessor newOptionValue = '';\n\n /**\n * Selected option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text = '';\n\n /**\n * Search input value.\n */\n @property({ type: String })\n accessor searchText = '';\n\n /**\n * Assistive text for screen readers.\n * @ignore\n */\n @state()\n accessor assistiveText = 'Dropdown menu options.';\n\n /**\n * Queries any slotted options, default or enhanced.\n * @ignore\n */\n protected get options(): Array<DropdownOption | EnhancedDropdownOption> {\n return Array.from(\n this.querySelectorAll<DropdownOption | EnhancedDropdownOption>(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n }\n\n /**\n * Queries any slotted selected options.\n * @ignore\n */\n protected get selectedOptions(): Array<\n DropdownOption | EnhancedDropdownOption\n > {\n return this.options.filter(\n (opt): opt is DropdownOption | EnhancedDropdownOption =>\n opt.hasAttribute('selected')\n );\n }\n\n /**\n * Queries the .search DOM element.\n * @ignore\n */\n @query('.search')\n accessor searchEl!: HTMLInputElement;\n\n /**\n * Queries the .select DOM element.\n * @ignore\n */\n @query('.select')\n accessor buttonEl!: HTMLElement;\n\n /**\n * Queries the .options DOM element.\n * @ignore\n */\n @query('.options')\n accessor listboxEl!: HTMLElement;\n\n /**\n * Queries the .clear-multiple DOM element.\n * @ignore\n */\n @query('.clear-multiple')\n accessor clearMultipleEl!: HTMLElement;\n\n /**\n * Queries the .add-option-input DOM element.\n * @ignore\n */\n @query('.add-option-input')\n accessor addOptionInputEl!: HTMLInputElement;\n\n /**\n * Open drawer upwards.\n * @ignore\n */\n @state()\n accessor _openUpwards = false;\n\n /**\n * Tags value/text reference.\n * @ignore\n */\n @state()\n accessor _tags: Array<object> = [];\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n searchTextEntered: any = false;\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n prevSearchKeydownIndex = -1;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onChildClick = (e: Event) => this._handleClick(e as any);\n private _onChildRemove = (_e: Event) => this._handleRemoveOption();\n private _onChildBlur = (e: Event) => this._handleBlur(e as any);\n\n override render() {\n const mainDropdownClasses = {\n dropdown: true,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(mainDropdownClasses)}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?open=${this.open}\n ?inline=${this.inline}\n ?searchable=${this.searchable}\n >\n <label\n id=\"label-${this.name}\"\n class=\"label-text ${this.hideLabel || this.inline ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`\n <abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >\n *\n </abbr>\n `\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=${classMap({\n wrapper: true,\n open: this.open,\n })}\n >\n <div\n class=\"custom\"\n @click=${(e: MouseEvent) => this.handleAnchorClick(e)}\n @keydown=${(e: KeyboardEvent) => this.handleAnchorKeydown(e)}\n >\n <slot name=\"anchor\">\n <div\n class=\"${classMap({\n select: true,\n 'is-readonly': !this.disabled && this.readonly,\n multiple: this.multiple,\n 'input-custom': true,\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n inline: this.inline,\n })}\"\n aria-labelledby=\"label-${this.name}\"\n aria-expanded=${this.open}\n aria-controls=\"options\"\n role=\"combobox\"\n id=${this.name}\n name=${this.name}\n title=${this._textStrings.title}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?invalid=${this._isInvalid}\n tabindex=${this.disabled ? '' : this.searchable ? '-1' : '0'}\n @mousedown=${(e: MouseEvent) => {\n if (!this.searchable && !this.readonly) e.preventDefault();\n }}\n aria-readonly=${this.readonly}\n @blur=${(e: any) => e.stopPropagation()}\n >\n ${this.multiple && this.value.length\n ? html`\n <button\n class=${classMap({\n 'clear-multiple': true,\n })}\n aria-label=\"${this.value\n .length} items selected. Clear selections\"\n ?disabled=${this.disabled || this.readonly}\n title=${this._textStrings.clear}\n @click=${(e: Event) => this.handleClearMultiple(e)}\n >\n ${this.value.length}\n <span style=\"display:flex;\" class=\"clear-multiple-icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </button>\n `\n : null}\n ${this.searchable\n ? html`\n <input\n class=\"search\"\n type=\"text\"\n placeholder=${this.placeholder}\n value=${this.searchText}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n aria-disabled=${this.disabled}\n @keydown=${(e: any) => this.handleSearchKeydown(e)}\n @input=${(e: any) => this.handleSearchInput(e)}\n @blur=${(e: any) => e.stopPropagation()}\n @click=${(e: any) => this.handleSearchClick(e)}\n />\n `\n : html`\n <span\n class=\"${classMap({\n 'placeholder-text': this.text === '',\n })}\"\n >\n ${this.multiple\n ? this.placeholder\n : this.value === ''\n ? this.placeholder\n : this.text}\n </span>\n `}\n <span class=\"arrow-icon\">${unsafeSVG(downIcon)}</span>\n </div>\n </slot>\n\n <div\n id=\"options\"\n class=${classMap({\n options: true,\n open: this.open,\n upwards: this._openUpwards,\n })}\n style=\"min-width: ${this.menuMinWidth};\"\n aria-hidden=${!this.open}\n @keydown=${this.handleListKeydown}\n @blur=${this.handleListBlur}\n @focus=${this._handleListFocus}\n >\n ${this.allowAddOption\n ? html`\n <div class=\"add-option\">\n <input\n class=\"add-option-input\"\n type=\"text\"\n placeholder=${this._textStrings.addItem}\n .value=${this.newOptionValue}\n aria-label=\"Add new option\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n @input=${this._handleInputNewOption}\n @keydown=${this._onAddOptionInputKeydown}\n @focus=${this._onAddOptionInputFocus}\n />\n <kyn-button\n type=\"button\"\n size=\"small\"\n kind=\"secondary\"\n ?disabled=${this.disabled}\n @on-click=${this._handleAddOption}\n >\n ${this._textStrings.add}\n </kyn-button>\n </div>\n `\n : null}\n\n <div\n role=\"listbox\"\n aria-labelledby=\"label-${this.name}\"\n class=${classMap({\n 'dropdown-listbox': true,\n 'ai-connected': this.kind === 'ai',\n })}\n >\n ${this.multiple && this.selectAll\n ? html`\n ${this.enhanced\n ? html`\n <kyn-enhanced-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-enhanced-dropdown-option>\n `\n : html`\n <kyn-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-dropdown-option>\n `}\n `\n : null}\n\n <slot\n id=\"children\"\n @slotchange=${() => this.handleSlotChange()}\n ></slot>\n </div>\n </div>\n </div>\n ${this.hasSearch\n ? html`\n <kyn-button\n ?disabled=${this.disabled || this.readonly}\n class=\"clear-button dropdown-clear\"\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${(e: Event) => this.handleClear(e)}\n >\n <span style=\"display:flex;\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n ${this.renderHelperContent()}\n </div>\n `;\n }\n\n private _onAddOptionInputKeydown(e: KeyboardEvent) {\n if (this.readonly) return;\n\n e.stopPropagation();\n switch (e.key) {\n case KEY.Enter:\n this._handleAddOption();\n break;\n case KEY.Escape:\n this.newOptionValue = '';\n this.open = false;\n this.buttonEl.focus();\n break;\n case KEY.ArrowDown:\n this.handleKeyboard(e, 40, 'addOption');\n break;\n case KEY.ArrowUp:\n this.handleKeyboard(e, 38, 'addOption');\n break;\n }\n }\n\n private _onAddOptionInputFocus() {\n this.assistiveText = 'Add new option input';\n }\n\n private canOpen(): boolean {\n return !this.disabled && !this.readonly;\n }\n\n private handleAnchorClick(e: MouseEvent) {\n if (!this.canOpen()) return;\n\n const path = (e.composedPath?.() || []) as Array<EventTarget>;\n const isInOptions =\n path.some((t) => (t as HTMLElement)?.classList?.contains('options')) ||\n (e.target as HTMLElement)?.closest?.(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option, .add-option'\n );\n\n if (isInOptions) return;\n\n this.handleClick();\n }\n\n private handleAnchorKeydown(e: KeyboardEvent) {\n if (!this.canOpen()) {\n const openKeys = [' ', 'Enter', 'ArrowDown', 'ArrowUp'];\n if (openKeys.includes(e.key)) e.preventDefault();\n return;\n }\n\n this.handleButtonKeydown(\n e as unknown as KeyboardEvent & { keyCode: number }\n );\n }\n\n private _handleAddOption() {\n if (this.readonly) return;\n\n const v = this.newOptionValue.trim();\n if (!v) return;\n this.dispatchEvent(\n new CustomEvent('on-add-option', { detail: { value: v } })\n );\n this.newOptionValue = '';\n }\n\n private renderHelperContent() {\n return html`\n ${\n this.multiple && !this.hideTags && this._tags.length\n ? html`\n <kyn-tag-group\n ?filter=${this.disabled || this.readonly ? false : true}\n role=\"list\"\n aria-label=${this._textStrings.selectedOptions}\n data-readonly=${this.readonly ? '' : nothing}\n >\n ${this._tags.map((tag: any) => {\n return html`\n <kyn-tag\n role=\"listitem\"\n tagColor=${this.kind === 'ai' ? 'ai' : 'default'}\n label=${tag.text}\n ?disabled=${this.disabled ||\n tag.disabled ||\n this.readonly}\n @on-close=${() => this.handleTagClear(tag)}\n ></kyn-tag>\n `;\n })}\n </kyn-tag-group>\n `\n : null\n }\n ${\n this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null\n }\n ${\n this._isInvalid\n ? html`\n <div class=\"error\">\n <span\n class=\"error-icon\"\n role=\"img\"\n title=${this._textStrings.errorText}\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null\n }\n\n <div\n class=\"assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\"\n >\n ${this.assistiveText}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // set a default placeholder if none provided\n if (this.placeholder === '') {\n if (this.searchable) {\n this.placeholder = 'Search';\n } else {\n if (this.multiple) {\n this.placeholder = 'Select items';\n } else {\n this.placeholder = 'Select an option';\n }\n }\n }\n }\n\n private handleSlotChange() {\n this.updateChildOptions();\n this._updateOptions();\n this._updateSelectedText();\n }\n\n private updateChildOptions() {\n const slot = this.shadowRoot?.querySelector('#children') as HTMLSlotElement;\n const options = slot.assignedElements({ flatten: true }) as HTMLElement[];\n\n options.forEach((option) => {\n const tag = option.tagName;\n if (\n tag === 'KYN-DROPDOWN-OPTION' ||\n tag === 'KYN-ENHANCED-DROPDOWN-OPTION'\n ) {\n (option as any).allowAddOption = this.allowAddOption;\n (option as any).multiple = this.multiple;\n (option as any).readonly = this.readonly;\n }\n });\n }\n\n private handleClick() {\n if (!this.canOpen()) return;\n\n this.open = !this.open;\n if (this.searchable) this.searchEl.focus();\n else this.buttonEl.focus();\n }\n\n private handleButtonKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n this.handleKeyboard(e, e.keyCode, 'button');\n }\n\n private handleListKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n e.preventDefault();\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n\n const TAB_KEY_CODE = 9;\n\n if (e.keyCode !== TAB_KEY_CODE) {\n e.preventDefault();\n }\n\n this.handleKeyboard(e, e.keyCode, 'list');\n }\n\n private _handleListFocus() {\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n\n const firstEnabled = visibleOptions.find((o: any) => !o.disabled) as any;\n if (!firstEnabled) return;\n\n visibleOptions.forEach((o: any) => (o.highlighted = false));\n\n if (!('tabIndex' in firstEnabled) || firstEnabled.tabIndex < 0) {\n firstEnabled.tabIndex = 0;\n }\n firstEnabled.focus();\n firstEnabled.scrollIntoView({ block: 'nearest' });\n this.assistiveText = firstEnabled.text || 'Option';\n }\n\n private handleListBlur(e: FocusEvent): void {\n if (this.multiple) {\n return;\n }\n\n this.options.forEach((o) => (o.highlighted = false));\n const target = e.relatedTarget as HTMLElement | null;\n\n if (\n target &&\n (target.closest('kyn-dropdown-option') ||\n target.closest('kyn-enhanced-dropdown-option') ||\n target.classList.contains('search') ||\n target.closest('.add-option'))\n ) {\n return;\n }\n\n this.open = false;\n this.assistiveText = 'Dropdown menu options.';\n }\n\n private handleKeyboard(e: any, keyCode: number, target: string) {\n const SPACEBAR_KEY_CODE = [0, 32];\n const ENTER_KEY_CODE = 13;\n const DOWN_ARROW_KEY_CODE = 40;\n const UP_ARROW_KEY_CODE = 38;\n const ESCAPE_KEY_CODE = 27;\n\n // get highlighted element + index and selected element\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n // visibleOptions.forEach((e) => (e.tabIndex = 0));\n\n const highlightedEl = visibleOptions.find(\n (option: any) => option.highlighted\n );\n const selectedEl = visibleOptions.find((option: any) => option.selected);\n let highlightedIndex = highlightedEl\n ? visibleOptions.indexOf(highlightedEl)\n : selectedEl\n ? visibleOptions.indexOf(selectedEl)\n : 0;\n\n if (SPACEBAR_KEY_CODE.includes(keyCode)) {\n e.preventDefault();\n }\n\n if (this.readonly) {\n if (keyCode === DOWN_ARROW_KEY_CODE || keyCode === UP_ARROW_KEY_CODE) {\n e.preventDefault();\n let nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (highlightedIndex + 1) % visibleOptions.length\n : (highlightedIndex - 1 + visibleOptions.length) %\n visibleOptions.length;\n\n let guard = 0;\n while (\n visibleOptions[nextIndex]?.disabled &&\n guard++ < visibleOptions.length\n ) {\n nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (nextIndex + 1) % visibleOptions.length\n : (nextIndex - 1 + visibleOptions.length) % visibleOptions.length;\n }\n\n if (visibleOptions[nextIndex]) {\n visibleOptions[highlightedIndex] &&\n (visibleOptions[highlightedIndex].highlighted = false);\n visibleOptions[nextIndex].focus();\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView?.({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text || 'Option';\n }\n return;\n }\n\n if (SPACEBAR_KEY_CODE.includes(keyCode) || keyCode === ENTER_KEY_CODE) {\n e.preventDefault();\n return;\n }\n\n if (keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n (this.searchable ? this.searchEl : this.buttonEl)?.focus();\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n\n return;\n }\n\n const isListboxElOpened = this.open;\n // open the listbox\n if (target === 'button' || target === 'addOption') {\n let openDropdown =\n SPACEBAR_KEY_CODE.includes(keyCode) ||\n keyCode === ENTER_KEY_CODE ||\n keyCode == DOWN_ARROW_KEY_CODE ||\n keyCode == UP_ARROW_KEY_CODE;\n\n if (e.target === this.clearMultipleEl && keyCode === ENTER_KEY_CODE) {\n openDropdown = false;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n highlightedIndex = 0;\n if (keyCode !== ENTER_KEY_CODE) return;\n }\n\n if (openDropdown) {\n this.open = true;\n\n if (\n this.allowAddOption &&\n target === 'button' &&\n keyCode === ENTER_KEY_CODE\n ) {\n setTimeout(() => {\n this.addOptionInputEl?.focus();\n }, 100);\n } else {\n // scroll to highlighted option\n if (!this.multiple && this.value !== '') {\n visibleOptions[highlightedIndex].scrollIntoView({\n block: 'nearest',\n });\n }\n }\n }\n }\n switch (keyCode) {\n case 0:\n case 32:\n case ENTER_KEY_CODE: {\n // select highlighted option\n visibleOptions[highlightedIndex].highlighted = true;\n if (isListboxElOpened) {\n if (this.multiple) {\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n this._handleClick({\n detail: {\n value: visibleOptions[highlightedIndex].value,\n selected: visibleOptions[highlightedIndex].selected,\n },\n });\n } else {\n visibleOptions.forEach((e) => (e.selected = false));\n visibleOptions[highlightedIndex].selected = true;\n this.updateValue(visibleOptions[highlightedIndex].value, true);\n this.emitValue();\n\n this.open = false;\n this.assistiveText = `Selected ${visibleOptions[highlightedIndex].value}`;\n }\n }\n return;\n }\n case DOWN_ARROW_KEY_CODE: {\n let nextIndex =\n !highlightedEl && !selectedEl\n ? 0\n : highlightedIndex === visibleOptions.length - 1\n ? 0\n : highlightedIndex + 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === visibleOptions.length - 1 ? 0 : nextIndex + 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case UP_ARROW_KEY_CODE: {\n // go to previous option\n let nextIndex =\n highlightedIndex === 0\n ? visibleOptions.length - 1\n : highlightedIndex - 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === 0 ? visibleOptions.length - 1 : nextIndex - 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case ESCAPE_KEY_CODE: {\n this.open = false;\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n default: {\n return;\n }\n }\n }\n\n private handleClearMultiple(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // clear values\n if (this.multiple) {\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n } else {\n this.value = '';\n }\n\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n\n const event = new CustomEvent('on-clear-all', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private handleTagClear(tag: any) {\n if (this.readonly) return;\n // remove value\n this.updateValue(tag.value, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n\n private handleClear(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // reset search input text\n this.text = '';\n this.searchText = '';\n this.searchEl.value = '';\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // reveal all options\n this.options.map((option: any) => {\n option.style.display = 'block';\n });\n }\n\n // clear selection for single select\n if (!this.multiple) {\n this.value = '';\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n }\n\n private handleSearchClick(e: MouseEvent) {\n if (this.readonly) return;\n e.stopPropagation();\n this.open = true;\n if ((this.searchText ?? '').trim() === '') this.searchText = '';\n }\n\n private handleSearchKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl.focus();\n }\n e.stopPropagation();\n e.preventDefault();\n return;\n }\n\n e.stopPropagation();\n\n const ENTER_KEY_CODE = 13;\n const ESCAPE_KEY_CODE = 27;\n const option = this.options.find((option) => option.highlighted);\n const highlightedIndex = this.options.findIndex(\n (option) => option.highlighted\n );\n this.searchTextEntered = false;\n // select option\n if (e.keyCode === ENTER_KEY_CODE) {\n this.searchTextEntered = true;\n if (option) {\n if (this.prevSearchKeydownIndex !== highlightedIndex) {\n if (this.multiple) {\n option.selected = !option.selected;\n } else {\n this.options.forEach((e) => (e.selected = false));\n option.selected = true;\n this.open = false;\n }\n this.updateValue(option.value, option.selected);\n }\n\n if (option.selected) {\n this.assistiveText = `Selected ${option.innerHTML}`;\n this.prevSearchKeydownIndex = highlightedIndex;\n } else {\n this.assistiveText = `Deselected ${option.innerHTML}`;\n }\n } else {\n this.assistiveText = 'No item matched.';\n }\n }\n\n // close listbox\n if (e.keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n this.buttonEl.focus();\n }\n }\n\n private handleSearchInput(e: any) {\n if (this.readonly) return;\n\n const value = e.target.value;\n this.searchText = value;\n this.open = true;\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // hide items that don't match\n this.options.map((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n if (searchText.toLowerCase().includes(value.toLowerCase())) {\n option.style.display = 'block';\n } else {\n option.style.display = 'none';\n }\n });\n } else {\n // find matches\n const options = this.options.filter((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n return searchText.toLowerCase().startsWith(value.toLowerCase());\n });\n\n // reset options highlighted state\n this.options.forEach((option) => (option.highlighted = false));\n\n // option highlight and scroll\n if (value !== '' && options.length) {\n options[0].highlighted = true;\n options[0].scrollIntoView({ block: 'nearest' });\n if (this.searchTextEntered) this.assistiveText = 'Option Matched';\n }\n }\n }\n\n private _updateSelectedOptions() {\n // set selected state for each option\n this.options.forEach((option: any) => {\n if (this.multiple) {\n option.selected = this.value.includes(option.value);\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleClick(e: any) {\n if (this.readonly) return;\n\n if (e.detail.value === 'selectAll') {\n this.selectAllChecked = e.detail.selected;\n\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n if (e.detail.selected) {\n this.value = this.options\n .filter(\n (option) => !option.disabled || (option.disabled && option.selected)\n )\n .map((option) => option.value);\n this.assistiveText = 'Selected all items.';\n } else {\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n this.assistiveText = 'Deselected all items.';\n }\n\n this._validate(true, false);\n } else {\n this.updateValue(e.detail.value, e.detail.selected);\n this.assistiveText = e.detail.selected\n ? `Selected ${e.detail.value}`\n : `Deselected ${e.detail.value}`;\n }\n\n this._updateSelectedOptions();\n\n if (!this.multiple) {\n this.open = false;\n }\n\n // emit selected value\n this.emitValue();\n }\n\n private _handleBlur(e: any) {\n const relatedTarget = e.detail.origEvent.relatedTarget;\n\n if (\n !relatedTarget ||\n (relatedTarget?.localName !== 'kyn-dropdown-option' &&\n relatedTarget?.localName !== 'kyn-enhanced-dropdown-option' &&\n relatedTarget.localName !== 'kyn-dropdown')\n ) {\n this.open = false;\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this._onConnected();\n\n document.addEventListener('click', this._onDocumentClick);\n\n this.addEventListener('on-click', this._onChildClick);\n this.addEventListener('on-remove-option', this._onChildRemove);\n this.addEventListener('on-blur', this._onChildBlur);\n }\n\n override disconnectedCallback() {\n this._onDisconnected();\n\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-click', this._onChildClick);\n this.removeEventListener('on-remove-option', this._onChildRemove);\n this.removeEventListener('on-blur', this._onChildBlur);\n\n super.disconnectedCallback();\n }\n\n private updateValue(value: string, selected = false) {\n if (this.readonly) return;\n\n // set value\n if (this.multiple) {\n const values =\n this.value === '' ? [] : JSON.parse(JSON.stringify(this.value));\n\n // update array\n if (selected) {\n values.push(value);\n } else {\n const index = values.indexOf(value);\n values.splice(index, 1);\n }\n\n this.value = values;\n } else {\n this.value = value;\n }\n\n this._validate(true, false);\n\n // reset focus\n if (!this.multiple) {\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n }\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // set validity flags\n const Validity = {\n customError: this.invalidText !== '',\n valueMissing:\n this.required &&\n !this.readonly &&\n (!this.value ||\n (this.multiple && !this.value.length) ||\n (!this.multiple && this.value === '')),\n };\n\n // set validationMessage\n const InternalMsg =\n this.required && !this.value.length ? 'Please fill out this field.' : '';\n const ValidationMessage =\n this.invalidText !== '' ? this.invalidText : InternalMsg;\n\n const validationAnchor = this.buttonEl || this.listboxEl;\n\n if (validationAnchor) {\n this._internals.setValidity(\n Validity,\n ValidationMessage,\n validationAnchor\n );\n } else {\n this._internals.setValidity(Validity, ValidationMessage);\n }\n\n if (interacted) {\n this._internalValidationMsg = InternalMsg;\n }\n\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n private emitValue() {\n const event = new CustomEvent('on-change', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private _emitSearch() {\n const event = new CustomEvent('on-search', {\n detail: {\n searchText: this.searchText,\n },\n });\n this.dispatchEvent(event);\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n override updated(changedProps: PropertyValues) {\n super.updated(changedProps);\n\n if (changedProps.has('readonly')) {\n this.clearMultipleEl?.classList.toggle('is-readonly', this.readonly);\n this.clearMultipleEl?.toggleAttribute('data-readonly', this.readonly);\n }\n\n if (changedProps.has('kind')) {\n this.dispatchEvent(\n new CustomEvent('kind-changed', {\n detail: this.kind,\n bubbles: true,\n composed: true,\n })\n );\n\n this.classList.toggle('ai-connected', this.kind === 'ai');\n }\n\n const root = this.shadowRoot;\n if (!root) return;\n\n if (changedProps.has('open')) {\n const slot = root.querySelector<HTMLSlotElement>('slot[name=\"anchor\"]');\n const assigned = slot?.assignedElements({ flatten: true }) as\n | HTMLElement[]\n | undefined;\n const btn = assigned?.find(\n (el) => !el.querySelector('.clear-multiple-icon')\n );\n const icon = btn?.querySelector<HTMLElement>('span[slot=\"icon\"]');\n if (icon) {\n icon.style.transition = 'transform 0.2s ease-in-out';\n icon.style.transform = this.open ? 'rotate(180deg)' : 'rotate(0deg)';\n }\n }\n\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n this._updateOptions();\n\n const childrenSlot: any =\n root.querySelector<HTMLSlotElement>('slot#children');\n const options = childrenSlot\n .assignedElements()\n .filter((o: any): o is HTMLElement => !o.disabled);\n const selected = options.filter((o: any) => o.selected);\n\n this.selectAllChecked = selected.length === options.length;\n this.selectAllIndeterminate =\n selected.length > 0 && selected.length < options.length;\n\n this._updateTags();\n this._updateSelectedText();\n }\n\n if (changedProps.has('open') || changedProps.has('openDirection')) {\n if (this.open) {\n this.options.forEach((o) => (o.highlighted = false));\n\n if (!this.searchable && this.listboxEl) {\n this.listboxEl.focus({ preventScroll: true });\n this.assistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n }\n }\n\n if (this.openDirection === 'up') {\n this._openUpwards = true;\n } else if (this.openDirection === 'down') {\n this._openUpwards = false;\n } else if (this.open) {\n const rect = this.buttonEl.getBoundingClientRect();\n this._openUpwards = rect.top > window.innerHeight * 0.6;\n }\n\n if (this.open && !this.multiple) {\n const firstSelected = this.options.find((o) => o.selected);\n firstSelected?.scrollIntoView({ block: 'nearest' });\n }\n }\n\n if (changedProps.has('multiple')) {\n this.options.forEach((opt) => (opt.multiple = this.multiple));\n }\n\n if (changedProps.has('searchText') && this.searchEl) {\n this.searchEl.value = this.searchText;\n }\n\n if (\n changedProps.has('multiple') ||\n changedProps.has('allowAddOption') ||\n changedProps.has('readonly')\n ) {\n this.updateChildOptions();\n }\n\n if (changedProps.has('open') && this.open && !this.searchable) {\n this.listboxEl?.focus({ preventScroll: true });\n }\n }\n\n private get hasSearch(): boolean {\n return (this.searchText ?? '').trim().length > 0;\n }\n\n // add selected options to Tags array\n private _updateTags() {\n if (this.multiple) {\n const Options: any = Array.from(\n this.querySelectorAll(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n const Tags: Array<object> = [];\n\n if (Options) {\n Options.forEach((option: any) => {\n if (option.selected) {\n let text = option.textContent;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n text = titleSlot.textContent.trim();\n } else {\n text = option.displayText || option.value;\n }\n } else {\n text = option.textContent.trim();\n }\n\n Tags.push({\n value: option.value,\n text: text,\n disabled: option.disabled,\n });\n }\n });\n\n this._tags = Tags;\n }\n }\n }\n\n private _updateOptions() {\n const Options: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n Options.forEach((option: any) => {\n // set option multiple state\n option.multiple = this.multiple;\n\n if (this.multiple) {\n const Selected = this.value.includes(option.value);\n // set option selected state\n option.selected = Selected;\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleInputNewOption(e: Event) {\n const target = e.target as HTMLInputElement;\n this.newOptionValue = target.value;\n }\n\n private _handleRemoveOption() {\n this.assistiveText = 'MY option removed ';\n setTimeout(() => {\n this.open = false;\n this.buttonEl.focus();\n }, 100);\n }\n\n private _updateSelectedText() {\n // update selected option text\n const AllOptions: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n if (!this.multiple) {\n if (AllOptions.length && this.value !== '') {\n const option = AllOptions.find(\n (option: any) => option.value === this.value\n );\n if (option) {\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n this.text = titleSlot.textContent.trim();\n } else {\n this.text = option.displayText || this.value;\n }\n } else {\n this.text = option.textContent.trim();\n }\n } else {\n this.text = '';\n console.warn(`No dropdown option found with value: ${this.value}`);\n }\n }\n\n if (this.searchable && this.text) {\n this.searchText = this.text === this.placeholder ? '' : this.text;\n this.searchEl.value = this.searchText;\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-dropdown': Dropdown;\n }\n}\n"],"names":["_defaultTextStrings","title","selectedOptions","requiredText","errorText","clearAll","clear","addItem","add","KEY","Dropdown","customElement","FormMixin","LitElement","_classThis","_classSuper","_Dropdown_label_accessor_storage","set","this","__runInitializers","_label_initializers","_Dropdown_size_accessor_storage","_label_extraInitializers","_size_initializers","_Dropdown_kind_accessor_storage","_size_extraInitializers","_kind_initializers","_Dropdown_inline_accessor_storage","_kind_extraInitializers","_inline_initializers","_Dropdown_caption_accessor_storage","_inline_extraInitializers","_caption_initializers","_Dropdown_placeholder_accessor_storage","_caption_extraInitializers","_placeholder_initializers","_Dropdown_open_accessor_storage","_placeholder_extraInitializers","_open_initializers","_Dropdown_searchable_accessor_storage","_open_extraInitializers","_searchable_initializers","_Dropdown_enhanced_accessor_storage","_searchable_extraInitializers","_enhanced_initializers","_Dropdown_readonly_accessor_storage","_enhanced_extraInitializers","_readonly_initializers","_Dropdown_filterSearch_accessor_storage","_readonly_extraInitializers","_filterSearch_initializers","_Dropdown_multiple_accessor_storage","_filterSearch_extraInitializers","_multiple_initializers","_Dropdown_required_accessor_storage","_multiple_extraInitializers","_required_initializers","_Dropdown_hideLabel_accessor_storage","_required_extraInitializers","_hideLabel_initializers","_Dropdown_disabled_accessor_storage","_hideLabel_extraInitializers","_disabled_initializers","_Dropdown_hideTags_accessor_storage","_disabled_extraInitializers","_hideTags_initializers","_Dropdown_selectAll_accessor_storage","_hideTags_extraInitializers","_selectAll_initializers","_Dropdown_selectAllText_accessor_storage","_selectAll_extraInitializers","_selectAllText_initializers","_Dropdown_menuMinWidth_accessor_storage","_selectAllText_extraInitializers","_menuMinWidth_initializers","_Dropdown_openDirection_accessor_storage","_menuMinWidth_extraInitializers","_openDirection_initializers","_Dropdown_selectAllChecked_accessor_storage","_openDirection_extraInitializers","_selectAllChecked_initializers","_Dropdown_selectAllIndeterminate_accessor_storage","_selectAllChecked_extraInitializers","_selectAllIndeterminate_initializers","_Dropdown_textStrings_accessor_storage","_selectAllIndeterminate_extraInitializers","_textStrings_initializers","_Dropdown_allowAddOption_accessor_storage","_textStrings_extraInitializers","_allowAddOption_initializers","_Dropdown__textStrings_accessor_storage","_allowAddOption_extraInitializers","__textStrings_initializers","_Dropdown_newOptionValue_accessor_storage","__textStrings_extraInitializers","_newOptionValue_initializers","_Dropdown_text_accessor_storage","_newOptionValue_extraInitializers","_text_initializers","_Dropdown_searchText_accessor_storage","_text_extraInitializers","_searchText_initializers","_Dropdown_assistiveText_accessor_storage","_searchText_extraInitializers","_assistiveText_initializers","_Dropdown_searchEl_accessor_storage","_assistiveText_extraInitializers","_searchEl_initializers","_Dropdown_buttonEl_accessor_storage","_searchEl_extraInitializers","_buttonEl_initializers","_Dropdown_listboxEl_accessor_storage","_buttonEl_extraInitializers","_listboxEl_initializers","_Dropdown_clearMultipleEl_accessor_storage","_listboxEl_extraInitializers","_clearMultipleEl_initializers","_Dropdown_addOptionInputEl_accessor_storage","_clearMultipleEl_extraInitializers","_addOptionInputEl_initializers","_Dropdown__openUpwards_accessor_storage","_addOptionInputEl_extraInitializers","__openUpwards_initializers","_Dropdown__tags_accessor_storage","__openUpwards_extraInitializers","__tags_initializers","searchTextEntered","__tags_extraInitializers","prevSearchKeydownIndex","_onDocumentClick","e","_handleClickOut","_onChildClick","_handleClick","_onChildRemove","_e","_handleRemoveOption","_onChildBlur","_handleBlur","label","__classPrivateFieldGet","value","__classPrivateFieldSet","size","kind","inline","caption","placeholder","open","searchable","enhanced","readonly","filterSearch","multiple","required","hideLabel","disabled","hideTags","selectAll","selectAllText","menuMinWidth","openDirection","selectAllChecked","selectAllIndeterminate","textStrings","allowAddOption","_textStrings","newOptionValue","text","searchText","assistiveText","options","Array","from","querySelectorAll","filter","opt","hasAttribute","searchEl","buttonEl","listboxEl","clearMultipleEl","addOptionInputEl","_openUpwards","_tags","render","mainDropdownClasses","dropdown","html","classMap","name","_a","wrapper","handleAnchorClick","handleAnchorKeydown","select","_isInvalid","preventDefault","stopPropagation","length","handleClearMultiple","unsafeSVG","clearIcon","handleSearchKeydown","handleSearchInput","handleSearchClick","downIcon","upwards","handleListKeydown","handleListBlur","_handleListFocus","_handleInputNewOption","_onAddOptionInputKeydown","_onAddOptionInputFocus","_handleAddOption","handleSlotChange","hasSearch","handleClear","renderHelperContent","key","focus","handleKeyboard","canOpen","isInOptions","composedPath","call","some","t","classList","contains","_c","_b","target","closest","handleClick","handleButtonKeydown","includes","v","trim","dispatchEvent","CustomEvent","detail","nothing","map","tag","handleTagClear","errorIcon","invalidText","_internalValidationMsg","firstUpdated","updateChildOptions","_updateOptions","_updateSelectedText","shadowRoot","querySelector","assignedElements","flatten","forEach","option","tagName","keyCode","visibleOptions","style","display","firstEnabled","find","o","highlighted","tabIndex","scrollIntoView","block","relatedTarget","SPACEBAR_KEY_CODE","ENTER_KEY_CODE","highlightedEl","selectedEl","selected","highlightedIndex","indexOf","nextIndex","guard","_d","_f","isListboxElOpened","openDropdown","setTimeout","updateValue","emitValue","DisabledSelectedOptions","_validate","_updateSelectedOptions","event","_emitSearch","findIndex","innerHTML","titleSlot","textContent","displayText","toLowerCase","startsWith","origEvent","localName","connectedCallback","super","_onConnected","document","addEventListener","disconnectedCallback","_onDisconnected","removeEventListener","values","JSON","parse","stringify","push","index","splice","interacted","report","Validity","customError","valueMissing","InternalMsg","ValidationMessage","validationAnchor","_internals","setValidity","reportValidity","willUpdate","changedProps","has","deepmerge","updated","toggle","toggleAttribute","bubbles","composed","root","slot","assigned","btn","el","icon","transition","transform","_onUpdated","_updateTags","preventScroll","rect","getBoundingClientRect","top","window","innerHeight","firstSelected","Options","Tags","Selected","AllOptions","console","warn","_label_decorators","property","type","String","_size_decorators","attribute","_inline_decorators","Boolean","_caption_decorators","_placeholder_decorators","reflect","_searchable_decorators","_enhanced_decorators","_filterSearch_decorators","_multiple_decorators","_required_decorators","_hideLabel_decorators","_disabled_decorators","_hideTags_decorators","_selectAll_decorators","_selectAllText_decorators","_menuMinWidth_decorators","_openDirection_decorators","_selectAllChecked_decorators","_selectAllIndeterminate_decorators","_textStrings_decorators","Object","_allowAddOption_decorators","__textStrings_decorators","state","_newOptionValue_decorators","_text_decorators","_searchText_decorators","_assistiveText_decorators","query","__openUpwards_decorators","__tags_decorators","__esDecorate","static","private","access","obj","get","metadata","_metadata","_kind_decorators","_open_decorators","_readonly_decorators","_searchEl_decorators","_buttonEl_decorators","_listboxEl_decorators","_clearMultipleEl_decorators","_addOptionInputEl_decorators","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","DropdownScss"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqBA,MAAMA,EAAsB,CAC1BC,MAAO,WACPC,gBAAiB,2BACjBC,aAAc,WACdC,UAAW,QACXC,SAAU,YACVC,MAAO,QACPC,QAAS,cACTC,IAAK,OAGDC,EACG,QADHA,EAEI,SAFJA,EAGO,YAHPA,EAIK,cAiBEC,EAAQ,oNADpBC,EAAc,0BACeC,EAAUC,0bAAlBC,GAAA,cAAQC,qCAKnBC,EAAAC,IAAAC,KAAAC,EAAAD,KAAAE,GAAQ,KAIRC,EAAAJ,IAAAC,MAAAC,EAAAD,KAAAI,IAAAH,EAAAD,KAAAK,GAAO,QAIPC,EAAAP,IAAAC,MAAAC,EAAAD,KAAAO,IAAAN,EAAAD,KAAAQ,GAAyB,aAIzBC,EAAAV,IAAAC,MAAAC,EAAAD,KAAAU,IAAAT,EAAAD,KAAAW,IAAS,KAITC,EAAAb,IAAAC,MAAAC,EAAAD,KAAAa,IAAAZ,EAAAD,KAAAc,GAAU,MAIVC,EAAAhB,IAAAC,MAAAC,EAAAD,KAAAgB,IAAAf,EAAAD,KAAAiB,GAAc,MAIdC,EAAAnB,IAAAC,MAAAC,EAAAD,KAAAmB,IAAAlB,EAAAD,KAAAoB,IAAO,KAIPC,EAAAtB,IAAAC,MAAAC,EAAAD,KAAAsB,IAAArB,EAAAD,KAAAuB,IAAa,KAIbC,EAAAzB,IAAAC,MAAAC,EAAAD,KAAAyB,IAAAxB,EAAAD,KAAA0B,IAAW,KAIXC,EAAA5B,IAAAC,MAAAC,EAAAD,KAAA4B,IAAA3B,EAAAD,KAAA6B,IAAW,KAIXC,EAAA/B,IAAAC,MAAAC,EAAAD,KAAA+B,IAAA9B,EAAAD,KAAAgC,IAAe,KAIfC,EAAAlC,IAAAC,MAAAC,EAAAD,KAAAkC,IAAAjC,EAAAD,KAAAmC,IAAW,KAIXC,EAAArC,IAAAC,MAAAC,EAAAD,KAAAqC,IAAApC,EAAAD,KAAAsC,IAAW,KAIXC,EAAAxC,IAAAC,MAAAC,EAAAD,KAAAwC,IAAAvC,EAAAD,KAAAyC,IAAY,KAIZC,EAAA3C,IAAAC,MAAAC,EAAAD,KAAA2C,IAAA1C,EAAAD,KAAA4C,IAAW,KAIXC,EAAA9C,IAAAC,MAAAC,EAAAD,KAAA8C,IAAA7C,EAAAD,KAAA+C,IAAW,KAIXC,EAAAjD,IAAAC,MAAAC,EAAAD,KAAAiD,IAAAhD,EAAAD,KAAAkD,IAAY,KAIZC,EAAApD,IAAAC,MAAAC,EAAAD,KAAAoD,IAAAnD,EAAAD,KAAAqD,GAAgB,gBAIhBC,EAAAvD,IAAAC,MAAAC,EAAAD,KAAAuD,IAAAtD,EAAAD,KAAAwD,GAAe,WAIfC,EAAA1D,IAAAC,MAAAC,EAAAD,KAAA0D,IAAAzD,EAAAD,KAAA2D,GAAwC,UAMxCC,EAAA7D,IAAAC,MAAAC,EAAAD,KAAA6D,IAAA5D,EAAAD,KAAA8D,IAAmB,KAMnBC,EAAAhE,IAAAC,MAAAC,EAAAD,KAAAgE,IAAA/D,EAAAD,KAAAiE,IAAyB,KAIzBC,EAAAnE,IAAAC,MAAAC,EAAAD,KAAAmE,IAAAlE,EAAAD,KAAAoE,GAActF,KAIduF,EAAAtE,IAAAC,MAAAC,EAAAD,KAAAsE,IAAArE,EAAAD,KAAAuE,IAAiB,KAMjBC,EAAAzE,IAAAC,MAAAC,EAAAD,KAAAyE,IAAAxE,EAAAD,KAAA0E,GAAe5F,KAOf6F,EAAA5E,IAAAC,MAAAC,EAAAD,KAAA4E,IAAA3E,EAAAD,KAAA6E,GAAiB,MAOjBC,EAAA/E,IAAAC,MAAAC,EAAAD,KAAA+E,IAAA9E,EAAAD,KAAAgF,GAAO,MAMPC,EAAAlF,IAAAC,MAAAC,EAAAD,KAAAkF,IAAAjF,EAAAD,KAAAmF,GAAa,MAObC,GAAArF,IAAAC,MAAAC,EAAAD,KAAAqF,IAAApF,EAAAD,KAAAsF,GAAgB,4BAgChBC,GAAAxF,IAAAC,MAAAC,EAAAD,KAAAwF,IAAAvF,EAAAD,KAAAyF,QAAA,KAOAC,GAAA3F,IAAAC,MAAAC,EAAAD,KAAA2F,IAAA1F,EAAAD,KAAA4F,QAAA,KAOAC,GAAA9F,IAAAC,MAAAC,EAAAD,KAAA8F,IAAA7F,EAAAD,KAAA+F,QAAA,KAOAC,GAAAjG,IAAAC,MAAAC,EAAAD,KAAAiG,IAAAhG,EAAAD,KAAAkG,QAAA,KAOAC,GAAApG,IAAAC,MAAAC,EAAAD,KAAAoG,IAAAnG,EAAAD,KAAAqG,QAAA,KAOAC,GAAAvG,IAAAC,MAAAC,EAAAD,KAAAuG,IAAAtG,EAAAD,KAAAwG,IAAe,KAOfC,GAAA1G,IAAAC,MAAAC,EAAAD,KAAA0G,IAAAzG,EAAAD,KAAA2G,GAAuB,MAKhC3G,KAAA4G,mBAAiB3G,EAAAD,KAAA6G,KAAQ,GAKzB7G,KAAA8G,wBAAyB,EAEjB9G,KAAA+G,iBAAoBC,GAAahH,KAAKiH,gBAAgBD,GACtDhH,KAAAkH,cAAiBF,GAAahH,KAAKmH,aAAaH,GAChDhH,KAAAoH,eAAkBC,GAAcrH,KAAKsH,sBACrCtH,KAAAuH,aAAgBP,GAAahH,KAAKwH,YAAYR,GA1NtD,SAASS,GAAK,OAAAC,EAAA1H,KAAAF,EAAA,IAAA,CAAd,SAAS2H,CAAKE,GAAAC,EAAA5H,KAAAF,EAAA6H,EAAA,IAAA,CAId,QAASE,GAAI,OAAAH,EAAA1H,KAAAG,EAAA,IAAA,CAAb,QAAS0H,CAAIF,GAAAC,EAAA5H,KAAAG,EAAAwH,EAAA,IAAA,CAIb,QAASG,GAAI,OAAAJ,EAAA1H,KAAAM,EAAA,IAAA,CAAb,QAASwH,CAAIH,GAAAC,EAAA5H,KAAAM,EAAAqH,EAAA,IAAA,CAIb,UAASI,GAAM,OAAAL,EAAA1H,KAAAS,EAAA,IAAA,CAAf,UAASsH,CAAMJ,GAAAC,EAAA5H,KAAAS,EAAAkH,EAAA,IAAA,CAIf,WAASK,GAAO,OAAAN,EAAA1H,KAAAY,EAAA,IAAA,CAAhB,WAASoH,CAAOL,GAAAC,EAAA5H,KAAAY,EAAA+G,EAAA,IAAA,CAIhB,eAASM,GAAW,OAAAP,EAAA1H,KAAAe,EAAA,IAAA,CAApB,eAASkH,CAAWN,GAAAC,EAAA5H,KAAAe,EAAA4G,EAAA,IAAA,CAIpB,QAASO,GAAI,OAAAR,EAAA1H,KAAAkB,EAAA,IAAA,CAAb,QAASgH,CAAIP,GAAAC,EAAA5H,KAAAkB,EAAAyG,EAAA,IAAA,CAIb,cAASQ,GAAU,OAAAT,EAAA1H,KAAAqB,EAAA,IAAA,CAAnB,cAAS8G,CAAUR,GAAAC,EAAA5H,KAAAqB,EAAAsG,EAAA,IAAA,CAInB,YAASS,GAAQ,OAAAV,EAAA1H,KAAAwB,EAAA,IAAA,CAAjB,YAAS4G,CAAQT,GAAAC,EAAA5H,KAAAwB,EAAAmG,EAAA,IAAA,CAIjB,YAASU,GAAQ,OAAAX,EAAA1H,KAAA2B,EAAA,IAAA,CAAjB,YAAS0G,CAAQV,GAAAC,EAAA5H,KAAA2B,EAAAgG,EAAA,IAAA,CAIjB,gBAASW,GAAY,OAAAZ,EAAA1H,KAAA8B,EAAA,IAAA,CAArB,gBAASwG,CAAYX,GAAAC,EAAA5H,KAAA8B,EAAA6F,EAAA,IAAA,CAIrB,YAASY,GAAQ,OAAAb,EAAA1H,KAAAiC,EAAA,IAAA,CAAjB,YAASsG,CAAQZ,GAAAC,EAAA5H,KAAAiC,EAAA0F,EAAA,IAAA,CAIjB,YAASa,GAAQ,OAAAd,EAAA1H,KAAAoC,EAAA,IAAA,CAAjB,YAASoG,CAAQb,GAAAC,EAAA5H,KAAAoC,EAAAuF,EAAA,IAAA,CAIjB,aAASc,GAAS,OAAAf,EAAA1H,KAAAuC,EAAA,IAAA,CAAlB,aAASkG,CAASd,GAAAC,EAAA5H,KAAAuC,EAAAoF,EAAA,IAAA,CAIlB,YAASe,GAAQ,OAAAhB,EAAA1H,KAAA0C,EAAA,IAAA,CAAjB,YAASgG,CAAQf,GAAAC,EAAA5H,KAAA0C,EAAAiF,EAAA,IAAA,CAIjB,YAASgB,GAAQ,OAAAjB,EAAA1H,KAAA6C,EAAA,IAAA,CAAjB,YAAS8F,CAAQhB,GAAAC,EAAA5H,KAAA6C,EAAA8E,EAAA,IAAA,CAIjB,aAASiB,GAAS,OAAAlB,EAAA1H,KAAAgD,EAAA,IAAA,CAAlB,aAAS4F,CAASjB,GAAAC,EAAA5H,KAAAgD,EAAA2E,EAAA,IAAA,CAIlB,iBAASkB,GAAa,OAAAnB,EAAA1H,KAAAmD,EAAA,IAAA,CAAtB,iBAAS0F,CAAalB,GAAAC,EAAA5H,KAAAmD,EAAAwE,EAAA,IAAA,CAItB,gBAASmB,GAAY,OAAApB,EAAA1H,KAAAsD,EAAA,IAAA,CAArB,gBAASwF,CAAYnB,GAAAC,EAAA5H,KAAAsD,EAAAqE,EAAA,IAAA,CAIrB,iBAASoB,GAAa,OAAArB,EAAA1H,KAAAyD,EAAA,IAAA,CAAtB,iBAASsF,CAAapB,GAAAC,EAAA5H,KAAAyD,EAAAkE,EAAA,IAAA,CAMtB,oBAASqB,GAAgB,OAAAtB,EAAA1H,KAAA4D,EAAA,IAAA,CAAzB,oBAASoF,CAAgBrB,GAAAC,EAAA5H,KAAA4D,EAAA+D,EAAA,IAAA,CAMzB,0BAASsB,GAAsB,OAAAvB,EAAA1H,KAAA+D,EAAA,IAAA,CAA/B,0BAASkF,CAAsBtB,GAAAC,EAAA5H,KAAA+D,EAAA4D,EAAA,IAAA,CAI/B,eAASuB,GAAW,OAAAxB,EAAA1H,KAAAkE,EAAA,IAAA,CAApB,eAASgF,CAAWvB,GAAAC,EAAA5H,KAAAkE,EAAAyD,EAAA,IAAA,CAIpB,kBAASwB,GAAc,OAAAzB,EAAA1H,KAAAqE,EAAA,IAAA,CAAvB,kBAAS8E,CAAcxB,GAAAC,EAAA5H,KAAAqE,EAAAsD,EAAA,IAAA,CAMvB,gBAASyB,GAAY,OAAA1B,EAAA1H,KAAAwE,EAAA,IAAA,CAArB,gBAAS4E,CAAYzB,GAAAC,EAAA5H,KAAAwE,EAAAmD,EAAA,IAAA,CAOrB,kBAAS0B,GAAc,OAAA3B,EAAA1H,KAAA2E,EAAA,IAAA,CAAvB,kBAAS0E,CAAc1B,GAAAC,EAAA5H,KAAA2E,EAAAgD,EAAA,IAAA,CAOvB,QAAS2B,GAAI,OAAA5B,EAAA1H,KAAA8E,EAAA,IAAA,CAAb,QAASwE,CAAI3B,GAAAC,EAAA5H,KAAA8E,EAAA6C,EAAA,IAAA,CAMb,cAAS4B,GAAU,OAAA7B,EAAA1H,KAAAiF,EAAA,IAAA,CAAnB,cAASsE,CAAU5B,GAAAC,EAAA5H,KAAAiF,EAAA0C,EAAA,IAAA,CAOnB,iBAAS6B,GAAa,OAAA9B,EAAA1H,KAAAoF,GAAA,IAAA,CAAtB,iBAASoE,CAAa7B,GAAAC,EAAA5H,KAAAoF,GAAAuC,EAAA,IAAA,CAMtB,WAAc8B,GACZ,OAAOC,MAAMC,KACX3J,KAAK4J,iBACH,sDASN,mBAAc5K,GAGZ,OAAOgB,KAAKyJ,QAAQI,QACjBC,GACCA,EAAIC,aAAa,cASvB,YAASC,GAAQ,OAAAtC,EAAA1H,KAAAuF,GAAA,IAAA,CAAjB,YAASyE,CAAQrC,GAAAC,EAAA5H,KAAAuF,GAAAoC,EAAA,IAAA,CAOjB,YAASsC,GAAQ,OAAAvC,EAAA1H,KAAA0F,GAAA,IAAA,CAAjB,YAASuE,CAAQtC,GAAAC,EAAA5H,KAAA0F,GAAAiC,EAAA,IAAA,CAOjB,aAASuC,GAAS,OAAAxC,EAAA1H,KAAA6F,GAAA,IAAA,CAAlB,aAASqE,CAASvC,GAAAC,EAAA5H,KAAA6F,GAAA8B,EAAA,IAAA,CAOlB,mBAASwC,GAAe,OAAAzC,EAAA1H,KAAAgG,GAAA,IAAA,CAAxB,mBAASmE,CAAexC,GAAAC,EAAA5H,KAAAgG,GAAA2B,EAAA,IAAA,CAOxB,oBAASyC,GAAgB,OAAA1C,EAAA1H,KAAAmG,GAAA,IAAA,CAAzB,oBAASiE,CAAgBzC,GAAAC,EAAA5H,KAAAmG,GAAAwB,EAAA,IAAA,CAOzB,gBAAS0C,GAAY,OAAA3C,EAAA1H,KAAAsG,GAAA,IAAA,CAArB,gBAAS+D,CAAY1C,GAAAC,EAAA5H,KAAAsG,GAAAqB,EAAA,IAAA,CAOrB,SAAS2C,GAAK,OAAA5C,EAAA1H,KAAAyG,GAAA,IAAA,CAAd,SAAS6D,CAAK3C,GAAAC,EAAA5H,KAAAyG,GAAAkB,EAAA,IAAA,CAiBL,MAAA4C,SACP,MAAMC,EAAsB,CAC1BC,UAAU,EACV,eAA8B,OAAdzK,KAAK8H,MAGvB,OAAO4C,CAAI;;gBAECC,EAASH;oBACLxK,KAAK0I;qBACJ1I,KAAK0I,UAAY1I,KAAKqI;gBAC3BrI,KAAKkI;kBACHlI,KAAK+H;sBACD/H,KAAKmI;;;sBAGLnI,KAAK4K;8BACG5K,KAAKyI,WAAazI,KAAK+H,OAAS,UAAY;gBAC1D/H,KAAK4K;;YAET5K,KAAKwI,SACHkC,CAAI;;;0BAGQ1K,KAAKoJ,aAAanK;;gCAEI,UAAjBe,KAAKoJ,oBAAY,IAAAyB,OAAA,EAAAA,EAAE5L,eAAgB;;;;gBAKpD;YACFe,KAAKyH;;;;;kBAKCkD,EAAS,CACfG,SAAS,EACT5C,KAAMlI,KAAKkI;;;;qBAKDlB,GAAkBhH,KAAK+K,kBAAkB/D;uBACvCA,GAAqBhH,KAAKgL,oBAAoBhE;;;;yBAI7C2D,EAAS,CAChBM,QAAQ,EACR,eAAgBjL,KAAK0I,UAAY1I,KAAKqI,SACtCE,SAAUvI,KAAKuI,SACf,gBAAgB,EAChB,WAA0B,OAAdvI,KAAK6H,KACjB,WAA0B,OAAd7H,KAAK6H,KACjBE,OAAQ/H,KAAK+H;yCAEU/H,KAAK4K;gCACd5K,KAAKkI;;;qBAGhBlI,KAAK4K;uBACH5K,KAAK4K;wBACJ5K,KAAKoJ,aAAarK;4BACdiB,KAAKwI;4BACLxI,KAAK0I;2BACN1I,KAAKkL;2BACLlL,KAAK0I,SAAW,GAAK1I,KAAKmI,WAAa,KAAO;6BAC3CnB,IACPhH,KAAKmI,YAAenI,KAAKqI,UAAUrB,EAAEmE,gBAAgB;gCAE5CnL,KAAKqI;wBACZrB,GAAWA,EAAEoE;;kBAEpBpL,KAAKuI,UAAYvI,KAAK2H,MAAM0D,OAC1BX,CAAI;;gCAEQC,EAAS,CACf,kBAAkB;sCAEN3K,KAAK2H,MAChB0D;oCACSrL,KAAK0I,UAAY1I,KAAKqI;gCAC1BrI,KAAKoJ,aAAahK;iCAChB4H,GAAahH,KAAKsL,oBAAoBtE;;0BAE9ChH,KAAK2H,MAAM0D;;4BAETE,EAAUC;;;sBAIlB;kBACFxL,KAAKmI,WACHuC,CAAI;;;;sCAIc1K,KAAKiI;gCACXjI,KAAKuJ;oCACDvJ,KAAK0I;qCACJ1I,KAAK0I,UAAY1I,KAAKqI;wCACnBrI,KAAK0I;mCACT1B,GAAWhH,KAAKyL,oBAAoBzE;iCACtCA,GAAWhH,KAAK0L,kBAAkB1E;gCACnCA,GAAWA,EAAEoE;iCACZpE,GAAWhH,KAAK2L,kBAAkB3E;;sBAGhD0D,CAAI;;iCAESC,EAAS,CAChB,mBAAkC,KAAd3K,KAAKsJ;;0BAGzBtJ,KAAKuI,UAEY,KAAfvI,KAAK2H,MADL3H,KAAKiI,YAGLjI,KAAKsJ;;;2CAGUiC,EAAUK;;;;;;sBAM/BjB,EAAS,CACflB,SAAS,EACTvB,KAAMlI,KAAKkI,KACX2D,QAAS7L,KAAKqK;kCAEIrK,KAAK8I;6BACV9I,KAAKkI;yBACTlI,KAAK8L;sBACR9L,KAAK+L;uBACJ/L,KAAKgM;;gBAEZhM,KAAKmJ,eACHuB,CAAI;;;;;sCAKgB1K,KAAKoJ,aAAa/J;iCACvBW,KAAKqJ;;oCAEFrJ,KAAK0I;qCACJ1I,KAAK0I,UAAY1I,KAAKqI;iCAC1BrI,KAAKiM;mCACHjM,KAAKkM;iCACPlM,KAAKmM;;;;;;oCAMFnM,KAAK0I;oCACL1I,KAAKoM;;0BAEfpM,KAAKoJ,aAAa9J;;;oBAI1B;;;;yCAIuBU,KAAK4K;wBACtBD,EAAS,CACf,oBAAoB,EACpB,eAA8B,OAAd3K,KAAK8H;;kBAGrB9H,KAAKuI,UAAYvI,KAAK4I,UACpB8B,CAAI;wBACA1K,KAAKoI,SACHsC,CAAI;;;;;0CAKY1K,KAAKgJ;+CACAhJ,KAAKiJ;0CACVjJ,KAAK0I;;gCAEf1I,KAAK6I;;4BAGX6B,CAAI;;;;;0CAKY1K,KAAKgJ;+CACAhJ,KAAKiJ;0CACVjJ,KAAK0I;;gCAEf1I,KAAK6I;;;sBAIjB;;;;gCAIY,IAAM7I,KAAKqM;;;;;YAK/BrM,KAAKsM,UACH5B,CAAI;;8BAEY1K,KAAK0I,UAAY1I,KAAKqI;;yBAEb,OAAdrI,KAAK8H,KAAgB,WAAa;;gCAE3B9H,KAAKoJ,aAAajK;2BACtB6H,GAAahH,KAAKuM,YAAYvF;;gDAEVuE,EAAUC;;gBAG5C;;UAEJxL,KAAKwM;;MAKL,wBAAAN,CAAyBlF,GAC/B,IAAIhH,KAAKqI,SAGT,OADArB,EAAEoE,kBACMpE,EAAEyF,KACR,KAAKlN,EACHS,KAAKoM,mBACL,MACF,KAAK7M,EACHS,KAAKqJ,eAAiB,GACtBrJ,KAAKkI,MAAO,EACZlI,KAAKiK,SAASyC,QACd,MACF,KAAKnN,EACHS,KAAK2M,eAAe3F,EAAG,GAAI,aAC3B,MACF,KAAKzH,EACHS,KAAK2M,eAAe3F,EAAG,GAAI,cAKzB,sBAAAmF,GACNnM,KAAKwJ,cAAgB,uBAGf,OAAAoD,GACN,OAAQ5M,KAAK0I,WAAa1I,KAAKqI,SAGzB,iBAAA0C,CAAkB/D,aACxB,IAAKhH,KAAK4M,UAAW,OAErB,MACMC,IADsB,QAAdhC,EAAA7D,EAAE8F,oBAAY,IAAAjC,OAAA,EAAAA,EAAAkC,KAAA/F,KAAQ,IAE7BgG,MAAMC,IAAK,IAAApC,EAAC,OAA6B,QAA7BA,EAACoC,aAAC,EAADA,EAAmBC,iBAAS,IAAArC,OAAA,EAAAA,EAAEsC,SAAS,UAAU,MACjC,QAAlCC,EAAyB,QAAzBC,EAACrG,EAAEsG,cAAsB,IAAAD,OAAA,EAAAA,EAAEE,eAAO,IAAAH,OAAA,EAAAA,EAAAL,KAAAM,EAChC,mEAGAR,GAEJ7M,KAAKwN,cAGC,mBAAAxC,CAAoBhE,GAC1B,GAAKhH,KAAK4M,UAMV5M,KAAKyN,oBACHzG,OAPF,CACmB,CAAC,IAAK,QAAS,YAAa,WAChC0G,SAAS1G,EAAEyF,MAAMzF,EAAEmE,kBAS5B,gBAAAiB,GACN,GAAIpM,KAAKqI,SAAU,OAEnB,MAAMsF,EAAI3N,KAAKqJ,eAAeuE,OACzBD,IACL3N,KAAK6N,cACH,IAAIC,YAAY,gBAAiB,CAAEC,OAAQ,CAAEpG,MAAOgG,MAEtD3N,KAAKqJ,eAAiB,IAGhB,mBAAAmD,GACN,OAAO9B,CAAI;UAEL1K,KAAKuI,WAAavI,KAAK2I,UAAY3I,KAAKsK,MAAMe,OAC1CX,CAAI;;6BAEU1K,KAAK0I,WAAY1I,KAAKqI;;+BAEnBrI,KAAKoJ,aAAapK;kCACfgB,KAAKqI,SAAW,GAAK2F;;oBAEnChO,KAAKsK,MAAM2D,KAAKC,GACTxD,CAAI;;;mCAGkB,OAAd1K,KAAK8H,KAAgB,KAAO;gCAC/BoG,EAAI5E;oCACAtJ,KAAK0I,UACjBwF,EAAIxF,UACJ1I,KAAKqI;oCACO,IAAMrI,KAAKmO,eAAeD;;;;gBAMhD;UAGa,KAAjBlO,KAAKgI,QACD0C,CAAI;qDACmC1K,KAAK0I;oBACtC1I,KAAKgI;;gBAGX;UAGJhI,KAAKkL,WACDR,CAAI;;;;;4BAKU1K,KAAKoJ,aAAalK;iCACbc,KAAKoJ,aAAalK;uBAC5BqM,EAAU6C;;oBAEbpO,KAAKqO,aAAerO,KAAKsO;;gBAG/B;;;;;;;;YASFtO,KAAKwJ;;;MAMN,YAAA+E,GAEkB,KAArBvO,KAAKiI,cACHjI,KAAKmI,WACPnI,KAAKiI,YAAc,SAEfjI,KAAKuI,SACPvI,KAAKiI,YAAc,eAEnBjI,KAAKiI,YAAc,oBAMnB,gBAAAoE,GACNrM,KAAKwO,qBACLxO,KAAKyO,iBACLzO,KAAK0O,sBAGC,kBAAAF,UACsB,QAAf3D,EAAA7K,KAAK2O,kBAAU,IAAA9D,OAAA,EAAAA,EAAE+D,cAAc,cACvBC,iBAAiB,CAAEC,SAAS,IAEzCC,SAASC,IACf,MAAMd,EAAMc,EAAOC,QAET,wBAARf,GACQ,iCAARA,IAECc,EAAe7F,eAAiBnJ,KAAKmJ,eACrC6F,EAAezG,SAAWvI,KAAKuI,SAC/ByG,EAAe3G,SAAWrI,KAAKqI,aAK9B,WAAAmF,GACDxN,KAAK4M,YAEV5M,KAAKkI,MAAQlI,KAAKkI,KACdlI,KAAKmI,WAAYnI,KAAKgK,SAAS0C,QAC9B1M,KAAKiK,SAASyC,SAGb,mBAAAe,CAAoBzG,SACtBhH,KAAKqI,SACO,WAAVrB,EAAEyF,MACJzM,KAAKkI,MAAO,EACC,QAAb2C,EAAA7K,KAAKiK,gBAAQ,IAAAY,GAAAA,EAAE6B,SAInB1M,KAAK2M,eAAe3F,EAAGA,EAAEkI,QAAS,UAG5B,iBAAApD,CAAkB9E,SACxB,GAAIhH,KAAKqI,SAMP,YALc,WAAVrB,EAAEyF,MACJzF,EAAEmE,iBACFnL,KAAKkI,MAAO,EACC,QAAb2C,EAAA7K,KAAKiK,gBAAQ,IAAAY,GAAAA,EAAE6B,UAKE,IAEjB1F,EAAEkI,SACJlI,EAAEmE,iBAGJnL,KAAK2M,eAAe3F,EAAGA,EAAEkI,QAAS,QAG5B,gBAAAlD,SACN,MAMMmD,EAAiB,IANEzF,MAAMC,MACd,QAAfkB,EAAA7K,KAAK2O,kBAAU,IAAA9D,OAAA,EAAAA,EAAEjB,iBAAiB,iBAAkB,OAE9B5J,KAAKyJ,QAAQI,QAClCmF,GAAyC,SAAzBA,EAAOI,MAAMC,WAI1BC,EAAeH,EAAeI,MAAMC,IAAYA,EAAE9G,WACnD4G,IAELH,EAAeJ,SAASS,GAAYA,EAAEC,aAAc,OAE9C,aAAcH,IAAiBA,EAAaI,SAAW,KAC3DJ,EAAaI,SAAW,GAE1BJ,EAAa5C,QACb4C,EAAaK,eAAe,CAAEC,MAAO,YACrC5P,KAAKwJ,cAAgB8F,EAAahG,MAAQ,UAGpC,cAAAyC,CAAe/E,GACrB,GAAIhH,KAAKuI,SACP,OAGFvI,KAAKyJ,QAAQsF,SAASS,GAAOA,EAAEC,aAAc,IAC7C,MAAMnC,EAAStG,EAAE6I,cAGfvC,IACCA,EAAOC,QAAQ,wBACdD,EAAOC,QAAQ,iCACfD,EAAOJ,UAAUC,SAAS,WAC1BG,EAAOC,QAAQ,kBAKnBvN,KAAKkI,MAAO,EACZlI,KAAKwJ,cAAgB,0BAGf,cAAAmD,CAAe3F,EAAQkI,EAAiB5B,iBAC9C,MAAMwC,EAAoB,CAAC,EAAG,IACxBC,EAAiB,GAYjBZ,EAAiB,IANEzF,MAAMC,MACd,QAAfkB,EAAA7K,KAAK2O,kBAAU,IAAA9D,OAAA,EAAAA,EAAEjB,iBAAiB,iBAAkB,OAE9B5J,KAAKyJ,QAAQI,QAClCmF,GAAyC,SAAzBA,EAAOI,MAAMC,WAK1BW,EAAgBb,EAAeI,MAClCP,GAAgBA,EAAOS,cAEpBQ,EAAad,EAAeI,MAAMP,GAAgBA,EAAOkB,WAC/D,IAAIC,EAAmBH,EACnBb,EAAeiB,QAAQJ,GACvBC,EACAd,EAAeiB,QAAQH,GACvB,EAMJ,GAJIH,EAAkBpC,SAASwB,IAC7BlI,EAAEmE,iBAGAnL,KAAKqI,SAAU,CACjB,GA7B0B,KA6BtB6G,GA5BoB,KA4BeA,EAA+B,CACpElI,EAAEmE,iBACF,IAAIkF,EA/BoB,KAgCtBnB,GACKiB,EAAmB,GAAKhB,EAAe9D,QACvC8E,EAAmB,EAAIhB,EAAe9D,QACvC8D,EAAe9D,OAEjBiF,EAAQ,EACZ,cACEjD,EAAA8B,EAAekB,yBAAY3H,WAC3B4H,IAAUnB,EAAe9D,QAEzBgF,EA1CsB,KA2CpBnB,GACKmB,EAAY,GAAKlB,EAAe9D,QAChCgF,EAAY,EAAIlB,EAAe9D,QAAU8D,EAAe9D,OAWjE,YARI8D,EAAekB,KACjBlB,EAAegB,KACZhB,EAAegB,GAAkBV,aAAc,GAClDN,EAAekB,GAAW3D,QAC1ByC,EAAekB,GAAWZ,aAAc,EACA,QAAxCc,GAAAnD,EAAA+B,EAAekB,IAAWV,sBAAc,IAAAY,GAAAA,EAAAxD,KAAAK,EAAG,CAAEwC,MAAO,YACpD5P,KAAKwJ,cAAgB2F,EAAekB,GAAW/G,MAAQ,WAK3D,OAAIwG,EAAkBpC,SAASwB,IAAYA,IAAYa,OACrD/I,EAAEmE,iBA1DkB,KA8DlB+D,GACFlP,KAAKkI,MAAO,EACqC,QAAjDsI,EAACxQ,KAAKmI,WAAanI,KAAKgK,SAAWhK,KAAKiK,gBAAS,IAAAuG,GAAAA,EAAE9D,aACnD1M,KAAKwJ,cAAgB,gCAIvB,EAGF,MAAMiH,EAAoBzQ,KAAKkI,KAE/B,GAAe,WAAXoF,GAAkC,cAAXA,EAAwB,CACjD,IAAIoD,EACFZ,EAAkBpC,SAASwB,IAC3BA,IAAYa,GA/EY,IAgFxBb,GA/EsB,IAgFtBA,EAEF,GAAIlI,EAAEsG,SAAWtN,KAAKmK,iBAAmB+E,IAAYa,IACnDW,GAAe,EACfvB,EAAegB,GAAkBV,aAAc,EAC/CN,EAAegB,GAAkBD,UAC9Bf,EAAegB,GAAkBD,SACpCC,EAAmB,EACfjB,IAAYa,GAAgB,OAG9BW,IACF1Q,KAAKkI,MAAO,EAGVlI,KAAKmJ,gBACM,WAAXmE,GACA4B,IAAYa,EAEZY,YAAW,WACY,QAArB9F,EAAA7K,KAAKoK,wBAAgB,IAAAS,GAAAA,EAAE6B,OAAO,GAC7B,KAGE1M,KAAKuI,UAA2B,KAAfvI,KAAK2H,OACzBwH,EAAegB,GAAkBR,eAAe,CAC9CC,MAAO,aAMjB,OAAQV,GACN,KAAK,EACL,KAAK,GACL,KAAKa,EAuBH,OArBAZ,EAAegB,GAAkBV,aAAc,OAC3CgB,IACEzQ,KAAKuI,UACP4G,EAAegB,GAAkBD,UAC9Bf,EAAegB,GAAkBD,SACpClQ,KAAKmH,aAAa,CAChB4G,OAAQ,CACNpG,MAAOwH,EAAegB,GAAkBxI,MACxCuI,SAAUf,EAAegB,GAAkBD,cAI/Cf,EAAeJ,SAAS/H,GAAOA,EAAEkJ,UAAW,IAC5Cf,EAAegB,GAAkBD,UAAW,EAC5ClQ,KAAK4Q,YAAYzB,EAAegB,GAAkBxI,OAAO,GACzD3H,KAAK6Q,YAEL7Q,KAAKkI,MAAO,EACZlI,KAAKwJ,cAAgB,YAAY2F,EAAegB,GAAkBxI,WAKxE,KA7I0B,GA6IA,CACxB,IAAI0I,EACDL,GAAkBC,EAEfE,IAAqBhB,EAAe9D,OAAS,EAC7C,EACA8E,EAAmB,EAHnB,EAkBN,OAZIhB,EAAekB,GAAW3H,WAC5B2H,EACEA,IAAclB,EAAe9D,OAAS,EAAI,EAAIgF,EAAY,GAG9DlB,EAAekB,GAAW3D,QAC1ByC,EAAegB,GAAkBT,UAAW,EAC5CP,EAAekB,GAAWX,SAAW,EACrCP,EAAegB,GAAkBV,aAAc,EAC/CN,EAAekB,GAAWZ,aAAc,EACxCN,EAAekB,GAAWV,eAAe,CAAEC,MAAO,iBAClD5P,KAAKwJ,cAAgB2F,EAAekB,GAAW/G,MAGjD,KAnKwB,GAmKA,CAEtB,IAAI+G,EACmB,IAArBF,EACIhB,EAAe9D,OAAS,EACxB8E,EAAmB,EAezB,OAZIhB,EAAekB,GAAW3H,WAC5B2H,EACgB,IAAdA,EAAkBlB,EAAe9D,OAAS,EAAIgF,EAAY,GAG9DlB,EAAekB,GAAW3D,QAC1ByC,EAAegB,GAAkBT,UAAW,EAC5CP,EAAekB,GAAWX,SAAW,EACrCP,EAAegB,GAAkBV,aAAc,EAC/CN,EAAekB,GAAWZ,aAAc,EACxCN,EAAekB,GAAWV,eAAe,CAAEC,MAAO,iBAClD5P,KAAKwJ,cAAgB2F,EAAekB,GAAW/G,MAGjD,KAxLsB,GAgMpB,OAPAtJ,KAAKkI,MAAO,EACRlI,KAAKmI,WACPnI,KAAKgK,SAAS0C,QAEd1M,KAAKiK,SAASyC,aAEhB1M,KAAKwJ,cAAgB,0BAGvB,QACE,QAKE,mBAAA8B,CAAoBtE,SAC1B,GAAIhH,KAAKqI,SAAU,OAKnB,GAHArB,EAAEoE,kBAGEpL,KAAKuI,SAAU,CACjB,MAEMuI,GAF2B,QAAfjG,EAAA7K,KAAK2O,kBAAU,IAAA9D,OAAA,EAAAA,EAAE+D,cAAc,kBAChBC,mBACmBhF,QACjDmF,GAAgBA,EAAOkB,UAAYlB,EAAOtG,WAC3CuF,KAAKe,GAAgBA,EAAOrH,QAE9B3H,KAAK2H,MAAQmJ,EAAwBzF,OACjCyF,EACA,QAEJ9Q,KAAK2H,MAAQ,GAGf3H,KAAK+Q,WAAU,GAAM,GACrB/Q,KAAKgR,yBACLhR,KAAK6Q,YAEL,MAAMI,EAAQ,IAAInD,YAAY,eAAgB,CAC5CC,OAAQ,CACNpG,MAAO3H,KAAK2H,SAGhB3H,KAAK6N,cAAcoD,GAGb,cAAA9C,CAAeD,GACjBlO,KAAKqI,WAETrI,KAAK4Q,YAAY1C,EAAIvG,OAAO,GAC5B3H,KAAKgR,yBACLhR,KAAK6Q,aAGC,WAAAtE,CAAYvF,GACdhH,KAAKqI,WAETrB,EAAEoE,kBAGFpL,KAAKsJ,KAAO,GACZtJ,KAAKuJ,WAAa,GAClBvJ,KAAKgK,SAASrC,MAAQ,GAEtB3H,KAAKkR,cAEDlR,KAAKsI,cAEPtI,KAAKyJ,QAAQwE,KAAKe,IAChBA,EAAOI,MAAMC,QAAU,OAAO,IAK7BrP,KAAKuI,WACRvI,KAAK2H,MAAQ,GACb3H,KAAK+Q,WAAU,GAAM,GACrB/Q,KAAKgR,yBACLhR,KAAK6Q,cAID,iBAAAlF,CAAkB3E,SACpBhH,KAAKqI,WACTrB,EAAEoE,kBACFpL,KAAKkI,MAAO,EAC2B,MAAnB,QAAf2C,EAAA7K,KAAKuJ,kBAAU,IAAAsB,EAAAA,EAAI,IAAI+C,SAAe5N,KAAKuJ,WAAa,KAGvD,mBAAAkC,CAAoBzE,GAC1B,GAAIhH,KAAKqI,SAOP,MANc,WAAVrB,EAAEyF,MACJzM,KAAKkI,MAAO,EACZlI,KAAKiK,SAASyC,SAEhB1F,EAAEoE,uBACFpE,EAAEmE,iBAIJnE,EAAEoE,kBAEF,MAEM4D,EAAShP,KAAKyJ,QAAQ8F,MAAMP,GAAWA,EAAOS,cAC9CU,EAAmBnQ,KAAKyJ,QAAQ0H,WACnCnC,GAAWA,EAAOS,cAErBzP,KAAK4G,mBAAoB,EANF,KAQnBI,EAAEkI,UACJlP,KAAK4G,mBAAoB,EACrBoI,GACEhP,KAAK8G,yBAA2BqJ,IAC9BnQ,KAAKuI,SACPyG,EAAOkB,UAAYlB,EAAOkB,UAE1BlQ,KAAKyJ,QAAQsF,SAAS/H,GAAOA,EAAEkJ,UAAW,IAC1ClB,EAAOkB,UAAW,EAClBlQ,KAAKkI,MAAO,GAEdlI,KAAK4Q,YAAY5B,EAAOrH,MAAOqH,EAAOkB,WAGpClB,EAAOkB,UACTlQ,KAAKwJ,cAAgB,YAAYwF,EAAOoC,YACxCpR,KAAK8G,uBAAyBqJ,GAE9BnQ,KAAKwJ,cAAgB,cAAcwF,EAAOoC,aAG5CpR,KAAKwJ,cAAgB,oBA5BD,KAiCpBxC,EAAEkI,UACJlP,KAAKkI,MAAO,EACZlI,KAAKiK,SAASyC,SAIV,iBAAAhB,CAAkB1E,GACxB,GAAIhH,KAAKqI,SAAU,OAEnB,MAAMV,EAAQX,EAAEsG,OAAO3F,MAMvB,GALA3H,KAAKuJ,WAAa5B,EAClB3H,KAAKkI,MAAO,EAEZlI,KAAKkR,cAEDlR,KAAKsI,aAEPtI,KAAKyJ,QAAQwE,KAAKe,IAChB,IAAIzF,EAAayF,EAAO1F,KAExB,GAAuB,iCAAnB0F,EAAOC,QAA4C,CACrD,MAAMoC,EAAYrC,EAAOJ,cAAc,kBAErCrF,EADE8H,GAAaA,EAAUC,YAAY1D,OACxByD,EAAUC,YAAY1D,OAEtBoB,EAAOuC,aAAevC,EAAOrH,MAI1C4B,EAAWiI,cAAc9D,SAAS/F,EAAM6J,eAC1CxC,EAAOI,MAAMC,QAAU,QAEvBL,EAAOI,MAAMC,QAAU,cAGtB,CAEL,MAAM5F,EAAUzJ,KAAKyJ,QAAQI,QAAQmF,IACnC,IAAIzF,EAAayF,EAAO1F,KAExB,GAAuB,iCAAnB0F,EAAOC,QAA4C,CACrD,MAAMoC,EAAYrC,EAAOJ,cAAc,kBAErCrF,EADE8H,GAAaA,EAAUC,YAAY1D,OACxByD,EAAUC,YAAY1D,OAEtBoB,EAAOuC,aAAevC,EAAOrH,MAI9C,OAAO4B,EAAWiI,cAAcC,WAAW9J,EAAM6J,cAAc,IAIjExR,KAAKyJ,QAAQsF,SAASC,GAAYA,EAAOS,aAAc,IAGzC,KAAV9H,GAAgB8B,EAAQ4B,SAC1B5B,EAAQ,GAAGgG,aAAc,EACzBhG,EAAQ,GAAGkG,eAAe,CAAEC,MAAO,YAC/B5P,KAAK4G,oBAAmB5G,KAAKwJ,cAAgB,oBAK/C,sBAAAwH,GAENhR,KAAKyJ,QAAQsF,SAASC,IAChBhP,KAAKuI,SACPyG,EAAOkB,SAAWlQ,KAAK2H,MAAM+F,SAASsB,EAAOrH,OAE7CqH,EAAOkB,SAAWlQ,KAAK2H,QAAUqH,EAAOrH,SAKtC,YAAAR,CAAaH,SACnB,IAAIhH,KAAKqI,SAAT,CAEA,GAAuB,cAAnBrB,EAAE+G,OAAOpG,MAAuB,CAClC3H,KAAKgJ,iBAAmBhC,EAAE+G,OAAOmC,SAEjC,MAEMY,GAF2B,QAAfjG,EAAA7K,KAAK2O,kBAAU,IAAA9D,OAAA,EAAAA,EAAE+D,cAAc,kBAChBC,mBACmBhF,QACjDmF,GAAgBA,EAAOkB,UAAYlB,EAAOtG,WAC3CuF,KAAKe,GAAgBA,EAAOrH,QAE1BX,EAAE+G,OAAOmC,UACXlQ,KAAK2H,MAAQ3H,KAAKyJ,QACfI,QACEmF,IAAYA,EAAOtG,UAAasG,EAAOtG,UAAYsG,EAAOkB,WAE5DjC,KAAKe,GAAWA,EAAOrH,QAC1B3H,KAAKwJ,cAAgB,wBAErBxJ,KAAK2H,MAAQmJ,EAAwBzF,OACjCyF,EACA,GACJ9Q,KAAKwJ,cAAgB,yBAGvBxJ,KAAK+Q,WAAU,GAAM,QAErB/Q,KAAK4Q,YAAY5J,EAAE+G,OAAOpG,MAAOX,EAAE+G,OAAOmC,UAC1ClQ,KAAKwJ,cAAgBxC,EAAE+G,OAAOmC,SAC1B,YAAYlJ,EAAE+G,OAAOpG,QACrB,cAAcX,EAAE+G,OAAOpG,QAG7B3H,KAAKgR,yBAEAhR,KAAKuI,WACRvI,KAAKkI,MAAO,GAIdlI,KAAK6Q,WAxCc,EA2Cb,WAAArJ,CAAYR,GAClB,MAAM6I,EAAgB7I,EAAE+G,OAAO2D,UAAU7B,gBAGtCA,GAC6B,yBAA7BA,eAAAA,EAAe8B,YACe,kCAA7B9B,aAAa,EAAbA,EAAe8B,YACa,iBAA5B9B,EAAc8B,aAEhB3R,KAAKkI,MAAO,GAIR,eAAAjB,CAAgBD,GACjBA,EAAE8F,eAAeY,SAAS1N,QAC7BA,KAAKkI,MAAO,GAIP,iBAAA0J,GACPC,MAAMD,oBACN5R,KAAK8R,eAELC,SAASC,iBAAiB,QAAShS,KAAK+G,kBAExC/G,KAAKgS,iBAAiB,WAAYhS,KAAKkH,eACvClH,KAAKgS,iBAAiB,mBAAoBhS,KAAKoH,gBAC/CpH,KAAKgS,iBAAiB,UAAWhS,KAAKuH,cAG/B,oBAAA0K,GACPjS,KAAKkS,kBAELH,SAASI,oBAAoB,QAASnS,KAAK+G,kBAC3C/G,KAAKmS,oBAAoB,WAAYnS,KAAKkH,eAC1ClH,KAAKmS,oBAAoB,mBAAoBnS,KAAKoH,gBAClDpH,KAAKmS,oBAAoB,UAAWnS,KAAKuH,cAEzCsK,MAAMI,uBAGA,WAAArB,CAAYjJ,EAAeuI,GAAW,GAC5C,IAAIlQ,KAAKqI,SAAT,CAGA,GAAIrI,KAAKuI,SAAU,CACjB,MAAM6J,EACW,KAAfpS,KAAK2H,MAAe,GAAK0K,KAAKC,MAAMD,KAAKE,UAAUvS,KAAK2H,QAG1D,GAAIuI,EACFkC,EAAOI,KAAK7K,OACP,CACL,MAAM8K,EAAQL,EAAOhC,QAAQzI,GAC7ByK,EAAOM,OAAOD,EAAO,GAGvBzS,KAAK2H,MAAQyK,OAEbpS,KAAK2H,MAAQA,EAGf3H,KAAK+Q,WAAU,GAAM,GAGhB/Q,KAAKuI,WACJvI,KAAKmI,WACPnI,KAAKgK,SAAS0C,QAEd1M,KAAKiK,SAASyC,QA3BC,EAgCb,SAAAqE,CAAU4B,EAAqBC,GAErC,MAAMC,EAAW,CACfC,YAAkC,KAArB9S,KAAKqO,YAClB0E,aACE/S,KAAKwI,WACJxI,KAAKqI,YACJrI,KAAK2H,OACJ3H,KAAKuI,WAAavI,KAAK2H,MAAM0D,SAC5BrL,KAAKuI,UAA2B,KAAfvI,KAAK2H,QAIxBqL,EACJhT,KAAKwI,WAAaxI,KAAK2H,MAAM0D,OAAS,8BAAgC,GAClE4H,EACiB,KAArBjT,KAAKqO,YAAqBrO,KAAKqO,YAAc2E,EAEzCE,EAAmBlT,KAAKiK,UAAYjK,KAAKkK,UAE3CgJ,EACFlT,KAAKmT,WAAWC,YACdP,EACAI,EACAC,GAGFlT,KAAKmT,WAAWC,YAAYP,EAAUI,GAGpCN,IACF3S,KAAKsO,uBAAyB0E,GAG5BJ,GACF5S,KAAKmT,WAAWE,iBAIZ,SAAAxC,GACN,MAAMI,EAAQ,IAAInD,YAAY,YAAa,CACzCC,OAAQ,CACNpG,MAAO3H,KAAK2H,SAGhB3H,KAAK6N,cAAcoD,GAGb,WAAAC,GACN,MAAMD,EAAQ,IAAInD,YAAY,YAAa,CACzCC,OAAQ,CACNxE,WAAYvJ,KAAKuJ,cAGrBvJ,KAAK6N,cAAcoD,GAGZ,UAAAqC,CAAWC,GACdA,EAAaC,IAAI,iBACnBxT,KAAKoJ,aAAeqK,EAAU3U,EAAqBkB,KAAKkJ,cAInD,OAAAwK,CAAQH,aACf1B,MAAM6B,QAAQH,GAEVA,EAAaC,IAAI,cACC,QAApB3I,EAAA7K,KAAKmK,uBAAe,IAAAU,GAAAA,EAAEqC,UAAUyG,OAAO,cAAe3T,KAAKqI,UACvC,QAApBgF,EAAArN,KAAKmK,uBAAe,IAAAkD,GAAAA,EAAEuG,gBAAgB,gBAAiB5T,KAAKqI,WAG1DkL,EAAaC,IAAI,UACnBxT,KAAK6N,cACH,IAAIC,YAAY,eAAgB,CAC9BC,OAAQ/N,KAAK8H,KACb+L,SAAS,EACTC,UAAU,KAId9T,KAAKkN,UAAUyG,OAAO,eAA8B,OAAd3T,KAAK8H,OAG7C,MAAMiM,EAAO/T,KAAK2O,WAClB,GAAKoF,EAAL,CAEA,GAAIR,EAAaC,IAAI,QAAS,CAC5B,MAAMQ,EAAOD,EAAKnF,cAA+B,uBAC3CqF,EAAWD,eAAAA,EAAMnF,iBAAiB,CAAEC,SAAS,IAG7CoF,EAAMD,aAAQ,EAARA,EAAU1E,MACnB4E,IAAQA,EAAGvF,cAAc,0BAEtBwF,EAAOF,aAAG,EAAHA,EAAKtF,cAA2B,qBACzCwF,IACFA,EAAKhF,MAAMiF,WAAa,6BACxBD,EAAKhF,MAAMkF,UAAYtU,KAAKkI,KAAO,iBAAmB,gBAM1D,GAFAlI,KAAKuU,WAAWhB,GAEZA,EAAaC,IAAI,SAAU,CAC7BxT,KAAKyO,iBAEL,MAEMhF,EADJsK,EAAKnF,cAA+B,iBAEnCC,mBACAhF,QAAQ2F,IAA8BA,EAAE9G,WACrCwH,EAAWzG,EAAQI,QAAQ2F,GAAWA,EAAEU,WAE9ClQ,KAAKgJ,iBAAmBkH,EAAS7E,SAAW5B,EAAQ4B,OACpDrL,KAAKiJ,uBACHiH,EAAS7E,OAAS,GAAK6E,EAAS7E,OAAS5B,EAAQ4B,OAEnDrL,KAAKwU,cACLxU,KAAK0O,sBAGP,GAAI6E,EAAaC,IAAI,SAAWD,EAAaC,IAAI,iBAAkB,CAWjE,GAVIxT,KAAKkI,OACPlI,KAAKyJ,QAAQsF,SAASS,GAAOA,EAAEC,aAAc,KAExCzP,KAAKmI,YAAcnI,KAAKkK,YAC3BlK,KAAKkK,UAAUwC,MAAM,CAAE+H,eAAe,IACtCzU,KAAKwJ,cACH,6DAIqB,OAAvBxJ,KAAK+I,cACP/I,KAAKqK,cAAe,OACf,GAA2B,SAAvBrK,KAAK+I,cACd/I,KAAKqK,cAAe,OACf,GAAIrK,KAAKkI,KAAM,CACpB,MAAMwM,EAAO1U,KAAKiK,SAAS0K,wBAC3B3U,KAAKqK,aAAeqK,EAAKE,IAA2B,GAArBC,OAAOC,YAGxC,GAAI9U,KAAKkI,OAASlI,KAAKuI,SAAU,CAC/B,MAAMwM,EAAgB/U,KAAKyJ,QAAQ8F,MAAMC,GAAMA,EAAEU,WACjD6E,SAAAA,EAAepF,eAAe,CAAEC,MAAO,aAIvC2D,EAAaC,IAAI,aACnBxT,KAAKyJ,QAAQsF,SAASjF,GAASA,EAAIvB,SAAWvI,KAAKuI,WAGjDgL,EAAaC,IAAI,eAAiBxT,KAAKgK,WACzChK,KAAKgK,SAASrC,MAAQ3H,KAAKuJ,aAI3BgK,EAAaC,IAAI,aACjBD,EAAaC,IAAI,mBACjBD,EAAaC,IAAI,cAEjBxT,KAAKwO,qBAGH+E,EAAaC,IAAI,SAAWxT,KAAKkI,OAASlI,KAAKmI,aACnC,QAAdiF,EAAApN,KAAKkK,iBAAS,IAAAkD,GAAAA,EAAEV,MAAM,CAAE+H,eAAe,IAhF9B,EAoFb,aAAYnI,SACV,OAAuB,QAAfzB,EAAA7K,KAAKuJ,kBAAU,IAAAsB,EAAAA,EAAI,IAAI+C,OAAOvC,OAAS,EAIzC,WAAAmJ,GACN,GAAIxU,KAAKuI,SAAU,CACjB,MAAMyM,EAAetL,MAAMC,KACzB3J,KAAK4J,iBACH,sDAGEqL,EAAsB,GAExBD,IACFA,EAAQjG,SAASC,IACf,GAAIA,EAAOkB,SAAU,CACnB,IAAI5G,EAAO0F,EAAOsC,YAElB,GAAuB,iCAAnBtC,EAAOC,QAA4C,CACrD,MAAMoC,EAAYrC,EAAOJ,cAAc,kBAErCtF,EADE+H,GAAaA,EAAUC,YAAY1D,OAC9ByD,EAAUC,YAAY1D,OAEtBoB,EAAOuC,aAAevC,EAAOrH,WAGtC2B,EAAO0F,EAAOsC,YAAY1D,OAG5BqH,EAAKzC,KAAK,CACR7K,MAAOqH,EAAOrH,MACd2B,KAAMA,EACNZ,SAAUsG,EAAOtG,eAKvB1I,KAAKsK,MAAQ2K,IAKX,cAAAxG,GACe/E,MAAMC,KACzB3J,KAAK4J,iBAAiB,sDAGhBmF,SAASC,IAIf,GAFAA,EAAOzG,SAAWvI,KAAKuI,SAEnBvI,KAAKuI,SAAU,CACjB,MAAM2M,EAAWlV,KAAK2H,MAAM+F,SAASsB,EAAOrH,OAE5CqH,EAAOkB,SAAWgF,OAElBlG,EAAOkB,SAAWlQ,KAAK2H,QAAUqH,EAAOrH,SAKtC,qBAAAsE,CAAsBjF,GAC5B,MAAMsG,EAAStG,EAAEsG,OACjBtN,KAAKqJ,eAAiBiE,EAAO3F,MAGvB,mBAAAL,GACNtH,KAAKwJ,cAAgB,qBACrBmH,YAAW,KACT3Q,KAAKkI,MAAO,EACZlI,KAAKiK,SAASyC,OAAO,GACpB,KAGG,mBAAAgC,GAEN,MAAMyG,EAAkBzL,MAAMC,KAC5B3J,KAAK4J,iBAAiB,sDAGxB,IAAK5J,KAAKuI,SAAU,CAClB,GAAI4M,EAAW9J,QAAyB,KAAfrL,KAAK2H,MAAc,CAC1C,MAAMqH,EAASmG,EAAW5F,MACvBP,GAAgBA,EAAOrH,QAAU3H,KAAK2H,QAEzC,GAAIqH,EACF,GAAuB,iCAAnBA,EAAOC,QAA4C,CACrD,MAAMoC,EAAYrC,EAAOJ,cAAc,kBACnCyC,GAAaA,EAAUC,YAAY1D,OACrC5N,KAAKsJ,KAAO+H,EAAUC,YAAY1D,OAElC5N,KAAKsJ,KAAO0F,EAAOuC,aAAevR,KAAK2H,WAGzC3H,KAAKsJ,KAAO0F,EAAOsC,YAAY1D,YAGjC5N,KAAKsJ,KAAO,GACZ8L,QAAQC,KAAK,wCAAwCrV,KAAK2H,SAI1D3H,KAAKmI,YAAcnI,KAAKsJ,OAC1BtJ,KAAKuJ,WAAavJ,KAAKsJ,OAAStJ,KAAKiI,YAAc,GAAKjI,KAAKsJ,KAC7DtJ,KAAKgK,SAASrC,MAAQ3H,KAAKuJ,uqBA79ChC+L,GAAA,CAAAC,EAAS,CAAEC,KAAMC,UAIjBC,GAAA,CAAAH,EAAS,CAAEC,KAAMC,cAIjBF,EAAS,CAAEC,KAAMC,OAAQE,UAAW,UAIpCC,GAAA,CAAAL,EAAS,CAAEC,KAAMK,WAIjBC,GAAA,CAAAP,EAAS,CAAEC,KAAMC,UAIjBM,GAAA,CAAAR,EAAS,CAAEC,KAAMC,cAIjBF,EAAS,CAAEC,KAAMK,QAASG,SAAS,KAInCC,GAAA,CAAAV,EAAS,CAAEC,KAAMK,WAIjBK,GAAA,CAAAX,EAAS,CAAEC,KAAMK,eAIjBN,EAAS,CAAEC,KAAMK,QAASG,SAAS,KAInCG,GAAA,CAAAZ,EAAS,CAAEC,KAAMK,WAIjBO,GAAA,CAAAb,EAAS,CAAEC,KAAMK,WAIjBQ,GAAA,CAAAd,EAAS,CAAEC,KAAMK,WAIjBS,GAAA,CAAAf,EAAS,CAAEC,KAAMK,WAIjBU,GAAA,CAAAhB,EAAS,CAAEC,KAAMK,WAIjBW,GAAA,CAAAjB,EAAS,CAAEC,KAAMK,WAIjBY,GAAA,CAAAlB,EAAS,CAAEC,KAAMK,WAIjBa,GAAA,CAAAnB,EAAS,CAAEC,KAAMC,UAIjBkB,GAAA,CAAApB,EAAS,CAAEC,KAAMC,UAIjBmB,GAAA,CAAArB,EAAS,CAAEC,KAAMC,UAMjBoB,GAAA,CAAAtB,EAAS,CAAEC,KAAMK,WAMjBiB,GAAA,CAAAvB,EAAS,CAAEC,KAAMK,WAIjBkB,GAAA,CAAAxB,EAAS,CAAEC,KAAMwB,UAIjBC,GAAA,CAAA1B,EAAS,CAAEC,KAAMK,WAMjBqB,GAAA,CAAAC,KAOAC,GAAA,CAAAD,KAOAE,GAAA,CAAAF,KAMAG,GAAA,CAAA/B,EAAS,CAAEC,KAAMC,UAOjB8B,GAAA,CAAAJ,SAgCAK,EAAM,gBAONA,EAAM,gBAONA,EAAM,iBAONA,EAAM,wBAONA,EAAM,sBAONC,GAAA,CAAAN,KAOAO,GAAA,CAAAP,KA1MDQ,EAAA/X,GAAA,KAAA0V,GAAA,CAAAxN,KAAA,WAAA8C,KAAA,QAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,UAAAA,EAAAC,IAAAD,GAAAA,EAAStQ,MAAK1H,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAALtQ,MAAKE,CAAA,GAAAsQ,SAAAC,GAAAhY,GAAAE,IAIduX,EAAA/X,GAAA,KAAA8V,GAAA,CAAA5N,KAAA,WAAA8C,KAAA,OAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAASlQ,KAAI9H,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAJlQ,KAAIF,CAAA,GAAAsQ,SAAAC,GAAA7X,GAAAE,IAIboX,EAAA/X,GAAA,KAAAuY,GAAA,CAAArQ,KAAA,WAAA8C,KAAA,OAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAASjQ,KAAI/H,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAJjQ,KAAIH,CAAA,GAAAsQ,SAAAC,GAAA1X,GAAAE,IAIbiX,EAAA/X,GAAA,KAAAgW,GAAA,CAAA9N,KAAA,WAAA8C,KAAA,SAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,WAAAA,EAAAC,IAAAD,GAAAA,EAAShQ,OAAMhI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAANhQ,OAAMJ,CAAA,GAAAsQ,SAAAC,GAAAvX,GAAAE,IAIf8W,EAAA/X,GAAA,KAAAkW,GAAA,CAAAhO,KAAA,WAAA8C,KAAA,UAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,YAAAA,EAAAC,IAAAD,GAAAA,EAAS/P,QAAOjI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAP/P,QAAOL,CAAA,GAAAsQ,SAAAC,GAAApX,GAAAE,IAIhB2W,EAAA/X,GAAA,KAAAmW,GAAA,CAAAjO,KAAA,WAAA8C,KAAA,cAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAAS9P,YAAWlI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAX9P,YAAWN,CAAA,GAAAsQ,SAAAC,GAAAjX,GAAAE,IAIpBwW,EAAA/X,GAAA,KAAAwY,GAAA,CAAAtQ,KAAA,WAAA8C,KAAA,OAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAAS7P,KAAInI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAJ7P,KAAIP,CAAA,GAAAsQ,SAAAC,GAAA9W,GAAAE,IAIbqW,EAAA/X,GAAA,KAAAqW,GAAA,CAAAnO,KAAA,WAAA8C,KAAA,aAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,eAAAA,EAAAC,IAAAD,GAAAA,EAAS5P,WAAUpI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAV5P,WAAUR,CAAA,GAAAsQ,SAAAC,GAAA3W,GAAAE,IAInBkW,EAAA/X,GAAA,KAAAsW,GAAA,CAAApO,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAAS3P,SAAQrI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAR3P,SAAQT,CAAA,GAAAsQ,SAAAC,GAAAxW,GAAAE,IAIjB+V,EAAA/X,GAAA,KAAAyY,GAAA,CAAAvQ,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAAS1P,SAAQtI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAR1P,SAAQV,CAAA,GAAAsQ,SAAAC,GAAArW,GAAAE,IAIjB4V,EAAA/X,GAAA,KAAAuW,GAAA,CAAArO,KAAA,WAAA8C,KAAA,eAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,iBAAAA,EAAAC,IAAAD,GAAAA,EAASzP,aAAYvI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAZzP,aAAYX,CAAA,GAAAsQ,SAAAC,GAAAlW,GAAAE,IAIrByV,EAAA/X,GAAA,KAAAwW,GAAA,CAAAtO,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASxP,SAAQxI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAARxP,SAAQZ,CAAA,GAAAsQ,SAAAC,GAAA/V,GAAAE,IAIjBsV,EAAA/X,GAAA,KAAAyW,GAAA,CAAAvO,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASvP,SAAQzI,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAARvP,SAAQb,CAAA,GAAAsQ,SAAAC,GAAA5V,GAAAE,IAIjBmV,EAAA/X,GAAA,KAAA0W,GAAA,CAAAxO,KAAA,WAAA8C,KAAA,YAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,cAAAA,EAAAC,IAAAD,GAAAA,EAAStP,UAAS1I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAATtP,UAASd,CAAA,GAAAsQ,SAAAC,GAAAzV,GAAAE,IAIlBgV,EAAA/X,GAAA,KAAA2W,GAAA,CAAAzO,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASrP,SAAQ3I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAARrP,SAAQf,CAAA,GAAAsQ,SAAAC,GAAAtV,GAAAE,IAIjB6U,EAAA/X,GAAA,KAAA4W,GAAA,CAAA1O,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASpP,SAAQ5I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAARpP,SAAQhB,CAAA,GAAAsQ,SAAAC,GAAAnV,GAAAE,IAIjB0U,EAAA/X,GAAA,KAAA6W,GAAA,CAAA3O,KAAA,WAAA8C,KAAA,YAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,cAAAA,EAAAC,IAAAD,GAAAA,EAASnP,UAAS7I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAATnP,UAASjB,CAAA,GAAAsQ,SAAAC,GAAAhV,GAAAE,IAIlBuU,EAAA/X,GAAA,KAAA8W,GAAA,CAAA5O,KAAA,WAAA8C,KAAA,gBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,kBAAAA,EAAAC,IAAAD,GAAAA,EAASlP,cAAa9I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAblP,cAAalB,CAAA,GAAAsQ,SAAAC,GAAA7U,GAAAE,IAItBoU,EAAA/X,GAAA,KAAA+W,GAAA,CAAA7O,KAAA,WAAA8C,KAAA,eAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,iBAAAA,EAAAC,IAAAD,GAAAA,EAASjP,aAAY/I,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAZjP,aAAYnB,CAAA,GAAAsQ,SAAAC,GAAA1U,GAAAE,IAIrBiU,EAAA/X,GAAA,KAAAgX,GAAA,CAAA9O,KAAA,WAAA8C,KAAA,gBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,kBAAAA,EAAAC,IAAAD,GAAAA,EAAShP,cAAahJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAbhP,cAAapB,CAAA,GAAAsQ,SAAAC,GAAAvU,GAAAE,IAMtB8T,EAAA/X,GAAA,KAAAiX,GAAA,CAAA/O,KAAA,WAAA8C,KAAA,mBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,qBAAAA,EAAAC,IAAAD,GAAAA,EAAS/O,iBAAgBjJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAhB/O,iBAAgBrB,CAAA,GAAAsQ,SAAAC,GAAApU,GAAAE,IAMzB2T,EAAA/X,GAAA,KAAAkX,GAAA,CAAAhP,KAAA,WAAA8C,KAAA,yBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,2BAAAA,EAAAC,IAAAD,GAAAA,EAAS9O,uBAAsBlJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAtB9O,uBAAsBtB,CAAA,GAAAsQ,SAAAC,GAAAjU,GAAAE,IAI/BwT,EAAA/X,GAAA,KAAAmX,GAAA,CAAAjP,KAAA,WAAA8C,KAAA,cAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAAS7O,YAAWnJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAX7O,YAAWvB,CAAA,GAAAsQ,SAAAC,GAAA9T,GAAAE,IAIpBqT,EAAA/X,GAAA,KAAAqX,GAAA,CAAAnP,KAAA,WAAA8C,KAAA,iBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,mBAAAA,EAAAC,IAAAD,GAAAA,EAAS5O,eAAcpJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAd5O,eAAcxB,CAAA,GAAAsQ,SAAAC,GAAA3T,GAAAE,IAMvBkT,EAAA/X,GAAA,KAAAsX,GAAA,CAAApP,KAAA,WAAA8C,KAAA,eAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,iBAAAA,EAAAC,IAAAD,GAAAA,EAAS3O,aAAYrJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAZ3O,aAAYzB,CAAA,GAAAsQ,SAAAC,GAAAxT,GAAAE,IAOrB+S,EAAA/X,GAAA,KAAAwX,GAAA,CAAAtP,KAAA,WAAA8C,KAAA,iBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,mBAAAA,EAAAC,IAAAD,GAAAA,EAAS1O,eAActJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAd1O,eAAc1B,CAAA,GAAAsQ,SAAAC,GAAArT,GAAAE,IAOvB4S,EAAA/X,GAAA,KAAAyX,GAAA,CAAAvP,KAAA,WAAA8C,KAAA,OAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAASzO,KAAIvJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAJzO,KAAI3B,CAAA,GAAAsQ,SAAAC,GAAAlT,GAAAE,IAMbyS,EAAA/X,GAAA,KAAA0X,GAAA,CAAAxP,KAAA,WAAA8C,KAAA,aAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,eAAAA,EAAAC,IAAAD,GAAAA,EAASxO,WAAUxJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAVxO,WAAU5B,CAAA,GAAAsQ,SAAAC,GAAA/S,GAAAE,IAOnBsS,EAAA/X,GAAA,KAAA2X,GAAA,CAAAzP,KAAA,WAAA8C,KAAA,gBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,kBAAAA,EAAAC,IAAAD,GAAAA,EAASvO,cAAazJ,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAbvO,cAAa7B,CAAA,GAAAsQ,SAAAC,GAAA5S,GAAAE,IAgCtBmS,EAAA/X,GAAA,KAAA0Y,GAAA,CAAAxQ,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAAS/N,SAAQjK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAR/N,SAAQrC,CAAA,GAAAsQ,SAAAC,GAAAzS,GAAAE,IAOjBgS,EAAA/X,GAAA,KAAA2Y,GAAA,CAAAzQ,KAAA,WAAA8C,KAAA,WAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAAS9N,SAAQlK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAR9N,SAAQtC,CAAA,GAAAsQ,SAAAC,GAAAtS,GAAAE,IAOjB6R,EAAA/X,GAAA,KAAA4Y,GAAA,CAAA1Q,KAAA,WAAA8C,KAAA,YAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,cAAAA,EAAAC,IAAAD,GAAAA,EAAS7N,UAASnK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAT7N,UAASvC,CAAA,GAAAsQ,SAAAC,GAAAnS,GAAAE,IAOlB0R,EAAA/X,GAAA,KAAA6Y,GAAA,CAAA3Q,KAAA,WAAA8C,KAAA,kBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,oBAAAA,EAAAC,IAAAD,GAAAA,EAAS5N,gBAAepK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAf5N,gBAAexC,CAAA,GAAAsQ,SAAAC,GAAAhS,GAAAE,IAOxBuR,EAAA/X,GAAA,KAAA8Y,GAAA,CAAA5Q,KAAA,WAAA8C,KAAA,mBAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,qBAAAA,EAAAC,IAAAD,GAAAA,EAAS3N,iBAAgBrK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAhB3N,iBAAgBzC,CAAA,GAAAsQ,SAAAC,GAAA7R,GAAAE,IAOzBoR,EAAA/X,GAAA,KAAA6X,GAAA,CAAA3P,KAAA,WAAA8C,KAAA,eAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,iBAAAA,EAAAC,IAAAD,GAAAA,EAAS1N,aAAYtK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAAZ1N,aAAY1C,CAAA,GAAAsQ,SAAAC,GAAA1R,GAAAE,IAOrBiR,EAAA/X,GAAA,KAAA8X,GAAA,CAAA5P,KAAA,WAAA8C,KAAA,QAAAgN,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAtE,IAAAuE,GAAA,UAAAA,EAAAC,IAAAD,GAAAA,EAASzN,MAAKvK,IAAA,CAAAgY,EAAApQ,KAAAoQ,EAALzN,MAAK3C,CAAA,GAAAsQ,SAAAC,GAAAvR,GAAAE,IAhNhB8Q,EAAA,KAAAgB,GAAA,CAAAhR,MAAA/H,IAAAgZ,GAAA,CAAA9Q,KAAA,QAAA8C,KAAAhL,GAAAgL,KAAAqN,SAAAC,GAAA,KAAAW,qHACkBjZ,GAAAkZ,OAASC,EAAUC,GADxB/Y,EAAAL,GAAAiZ,QAAQ"}
|
|
@@ -380,7 +380,7 @@ textarea:not([disabled])[invalid] {
|
|
|
380
380
|
cursor: pointer;
|
|
381
381
|
}
|
|
382
382
|
.clear-button.dropdown-clear {
|
|
383
|
-
right:
|
|
383
|
+
right: 48px;
|
|
384
384
|
width: 24px;
|
|
385
385
|
}
|
|
386
386
|
|
|
@@ -539,12 +539,27 @@ textarea:not([disabled])[invalid] {
|
|
|
539
539
|
right: 45px;
|
|
540
540
|
}
|
|
541
541
|
.input-wrapper.icon--right input {
|
|
542
|
-
padding-right:
|
|
542
|
+
padding-right: 48px;
|
|
543
543
|
}
|
|
544
544
|
.input-wrapper.icon--left input {
|
|
545
545
|
padding-left: 48px;
|
|
546
546
|
}
|
|
547
547
|
|
|
548
|
+
:host([type=search]) input,
|
|
549
|
+
:host([type=password]) input {
|
|
550
|
+
padding-right: 48px;
|
|
551
|
+
}
|
|
552
|
+
:host([type=search]) .icon--right input,
|
|
553
|
+
:host([type=password]) .icon--right input {
|
|
554
|
+
padding-right: 72px;
|
|
555
|
+
}
|
|
556
|
+
:host([type=search]) .icon--right .clear-button,
|
|
557
|
+
:host([type=search]) .icon--right .visibility-toggle,
|
|
558
|
+
:host([type=password]) .icon--right .clear-button,
|
|
559
|
+
:host([type=password]) .icon--right .visibility-toggle {
|
|
560
|
+
right: 42px;
|
|
561
|
+
}
|
|
562
|
+
|
|
548
563
|
slot[name=icon]::slotted(*) {
|
|
549
564
|
display: block;
|
|
550
565
|
}
|
|
@@ -561,7 +576,7 @@ input {
|
|
|
561
576
|
border-style: solid;
|
|
562
577
|
border-radius: 4px;
|
|
563
578
|
height: 48px;
|
|
564
|
-
padding: 0
|
|
579
|
+
padding: 0 16px 0 16px;
|
|
565
580
|
}
|
|
566
581
|
input.size--sm {
|
|
567
582
|
height: 32px;
|
|
@@ -598,9 +613,6 @@ input[type=password]::-ms-clear {
|
|
|
598
613
|
right: 8px;
|
|
599
614
|
transform: translateY(-50%);
|
|
600
615
|
}
|
|
601
|
-
.clear-button.with-visibility-toggle {
|
|
602
|
-
right: 45px;
|
|
603
|
-
}
|
|
604
616
|
|
|
605
617
|
.visibility-toggle {
|
|
606
618
|
position: absolute;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textInput.js","sources":["../../../../src/components/reusable/textInput/textInput.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n query,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { deepmerge } from 'deepmerge-ts';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport '../../reusable/button';\n\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport lockIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/no-overview.svg';\nimport unlockIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/overview.svg';\n\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport TextInputScss from './textInput.scss?inline';\n\nconst _defaultTextStrings = {\n requiredText: 'Required',\n clearAll: 'Clear all',\n errorText: 'Error',\n showPassword: 'Show password',\n hidePassword: 'Hide password',\n};\n\n/**\n * Text input.\n * @fires on-input - Captures the input event and emits the selected value and original event details.`detail:{ origEvent: InputEvent, value: string }`\n * @prop {string} pattern - RegEx pattern to validate.\n * @prop {number} minLength - Minimum number of characters.\n * @prop {number} maxLength - Maximum number of characters.\n * @slot icon - Slot for contextual icon.\n * @slot tooltip - Slot for tooltip.\n * @attr {string} [value=''] - The value of the input.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n *\n */\n@customElement('kyn-text-input')\nexport class TextInput extends FormMixin(LitElement) {\n static override styles = unsafeCSS(TextInputScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Input type, limited to options that are \"text like\". */\n @property({ type: String })\n accessor type: 'text' | 'password' | 'email' | 'search' | 'tel' | 'url' =\n 'text';\n\n /** Input size. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Input placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Makes the input required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Input disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Input readonly state. */\n @property({ type: Boolean })\n accessor readonly = false;\n\n /** RegEx pattern to validate. */\n @property({ type: String })\n accessor pattern!: string;\n\n /** Maximum number of characters. */\n @property({ type: Number })\n accessor maxLength!: number;\n\n /** Minimum number of characters. */\n @property({ type: Number })\n accessor minLength!: number;\n\n /** Place icon on the right. */\n @property({ type: Boolean })\n accessor iconRight = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Customizable text strings. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Control for native browser autocomplete. Use `on`, `off`, or a space-separated `token-list` describing autocomplete behavior.*/\n @property({ type: String })\n accessor autoComplete: string = 'off';\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * Queries the <input> DOM element.\n * @ignore\n */\n @query('input')\n accessor _inputEl!: HTMLInputElement;\n\n /**\n * Evaluates if an icon is slotted.\n * @ignore\n */\n @state()\n accessor iconSlotted = false;\n\n /** Internal state for password visibility\n * @internal\n */\n @state()\n private accessor passwordVisible = false;\n\n /**\n * Queries any slotted icons.\n * @ignore\n */\n @queryAssignedElements({ slot: 'icon' })\n accessor iconSlot!: Array<HTMLElement>;\n\n override render() {\n return html`\n <div\n class=\"text-input\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n >\n <label\n class=\"label-text ${this.hideLabel ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=\"${classMap({\n 'input-wrapper': true,\n 'icon--left': this.iconSlotted && !this.iconRight,\n 'icon--right': this.iconSlotted && this.iconRight,\n })}\"\n >\n <span class=\"context-icon\">\n <slot name=\"icon\"></slot>\n </span>\n\n <input\n class=\"${classMap({\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n 'is-readonly': this.readonly,\n })}\"\n type=${this.type === 'password' && this.passwordVisible\n ? 'text'\n : this.type}\n id=${this.name}\n name=${this.name}\n value=${this.value}\n placeholder=${this.placeholder}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?invalid=${this._isInvalid}\n aria-invalid=${this._isInvalid}\n aria-describedby=${this._isInvalid ? 'error' : ''}\n pattern=${ifDefined(this.pattern)}\n minlength=${ifDefined(this.minLength)}\n maxlength=${ifDefined(this.maxLength)}\n @input=${(e: any) => this._handleInput(e)}\n .autocomplete=${this.autoComplete}\n />\n ${this.type === 'password' && !this.readonly\n ? html`\n <kyn-button\n ?disabled=${this.disabled}\n class=\"visibility-toggle\"\n kind=\"ghost\"\n size=\"small\"\n description=${this.passwordVisible\n ? this._textStrings.hidePassword\n : this._textStrings.showPassword}\n @click=${this.disabled\n ? null\n : this._togglePasswordVisibility}\n >\n <span style=\"display:flex;\" slot=\"icon\">\n ${this.passwordVisible\n ? html`${unsafeSVG(unlockIcon)}`\n : html`${unsafeSVG(lockIcon)}`}\n </span>\n </kyn-button>\n `\n : null}\n ${this.type === 'search' && this.value !== '' && !this.readonly\n ? html`\n <kyn-button\n ?disabled=${this.disabled}\n class=\"clear-button\"\n kind=\"ghost\"\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${() => this._handleClear()}\n >\n <span style=\"display:flex;\" slot=\"icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </kyn-button>\n `\n : null}\n </div>\n\n <div class=\"caption-error-count\">\n <div>\n ${this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null}\n ${this._isInvalid\n ? html`\n <div id=\"error\" class=\"error\">\n <span\n role=\"img\"\n class=\"error-icon\"\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null}\n </div>\n ${this.maxLength\n ? html`\n <div class=\"count\">${this.value.length}/${this.maxLength}</div>\n `\n : null}\n </div>\n </div>\n `;\n }\n\n private _handleInput(e: any) {\n if (this.readonly) return;\n this.value = e.target.value;\n\n this._validate(true, false);\n this._emitValue(e);\n }\n\n private _handleClear() {\n if (this.readonly) return;\n this.value = '';\n this._inputEl.value = '';\n\n this._validate(true, false);\n this._emitValue();\n }\n\n private _emitValue(e?: any) {\n const Detail: any = {\n value: this.value,\n };\n if (e) {\n Detail.origEvent = e;\n }\n\n const event = new CustomEvent('on-input', {\n detail: Detail,\n });\n this.dispatchEvent(event);\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // get validity state from inputEl, combine customError flag if invalidText is provided\n const Validity =\n this.invalidText !== ''\n ? { ...this._inputEl.validity, customError: true }\n : this._inputEl.validity;\n // set validationMessage to invalidText if present, otherwise use inputEl validationMessage\n const ValidationMessage =\n this.invalidText !== ''\n ? this.invalidText\n : this._inputEl.validationMessage;\n\n // set validity on custom element, anchor to inputEl\n this._internals.setValidity(Validity, ValidationMessage, this._inputEl);\n\n // set internal validation message if value was changed by user input\n if (interacted) {\n this._internalValidationMsg = this._inputEl.validationMessage;\n }\n\n // focus the form field to show validity\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n override updated(changedProps: any) {\n // preserve FormMixin updated function\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n // set value on input element\n this._inputEl.value = this.value;\n }\n }\n\n override firstUpdated() {\n this.determineIfSlotted();\n }\n\n private determineIfSlotted() {\n this.iconSlotted = this.iconSlot.length ? true : false;\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n private _togglePasswordVisibility(e: MouseEvent) {\n e.stopPropagation();\n this.passwordVisible = !this.passwordVisible;\n }\n\n // Added for search input to set value from suggestion panel on select and notify\n setValueAndNotify(val: string) {\n const oldValue = this.value;\n this.value = val;\n this._inputEl.value = val;\n this.requestUpdate('value', oldValue);\n\n this._validate(true, false);\n this._emitValue();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-text-input': TextInput;\n }\n}\n"],"names":["_defaultTextStrings","requiredText","clearAll","errorText","showPassword","hidePassword","TextInput","customElement","FormMixin","LitElement","_classThis","_classSuper","label","__classPrivateFieldGet","this","_TextInput_label_accessor_storage","value","__classPrivateFieldSet","type","_TextInput_type_accessor_storage","size","_TextInput_size_accessor_storage","caption","_TextInput_caption_accessor_storage","placeholder","_TextInput_placeholder_accessor_storage","required","_TextInput_required_accessor_storage","disabled","_TextInput_disabled_accessor_storage","readonly","_TextInput_readonly_accessor_storage","pattern","_TextInput_pattern_accessor_storage","maxLength","_TextInput_maxLength_accessor_storage","minLength","_TextInput_minLength_accessor_storage","iconRight","_TextInput_iconRight_accessor_storage","hideLabel","_TextInput_hideLabel_accessor_storage","textStrings","_TextInput_textStrings_accessor_storage","autoComplete","_TextInput_autoComplete_accessor_storage","_textStrings","_TextInput__textStrings_accessor_storage","_inputEl","_TextInput__inputEl_accessor_storage","iconSlotted","_TextInput_iconSlotted_accessor_storage","passwordVisible","_TextInput_passwordVisible_accessor_storage","iconSlot","_TextInput_iconSlot_accessor_storage","render","html","name","_a","classMap","_isInvalid","ifDefined","e","_handleInput","_togglePasswordVisibility","unsafeSVG","unlockIcon","lockIcon","_handleClear","clearIcon","errorIcon","invalidText","_internalValidationMsg","length","target","_validate","_emitValue","Detail","origEvent","event","CustomEvent","detail","dispatchEvent","interacted","report","Validity","validity","customError","ValidationMessage","validationMessage","_internals","setValidity","reportValidity","updated","changedProps","_onUpdated","has","firstUpdated","determineIfSlotted","willUpdate","deepmerge","stopPropagation","setValueAndNotify","val","oldValue","requestUpdate","set","__runInitializers","_label_initializers","_label_extraInitializers","_type_initializers","_type_extraInitializers","_size_initializers","_size_extraInitializers","_caption_initializers","_caption_extraInitializers","_placeholder_initializers","_placeholder_extraInitializers","_required_initializers","_required_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_pattern_initializers","_pattern_extraInitializers","_maxLength_initializers","_maxLength_extraInitializers","_minLength_initializers","_minLength_extraInitializers","_iconRight_initializers","_iconRight_extraInitializers","_hideLabel_initializers","_hideLabel_extraInitializers","_textStrings_initializers","_textStrings_extraInitializers","_autoComplete_initializers","_autoComplete_extraInitializers","__textStrings_initializers","__textStrings_extraInitializers","__inputEl_initializers","__inputEl_extraInitializers","_iconSlotted_initializers","_iconSlotted_extraInitializers","_passwordVisible_initializers","_passwordVisible_extraInitializers","_iconSlot_initializers","_label_decorators","property","String","_type_decorators","_size_decorators","_caption_decorators","_placeholder_decorators","_required_decorators","Boolean","_disabled_decorators","_readonly_decorators","_pattern_decorators","_maxLength_decorators","Number","_minLength_decorators","_iconRight_decorators","_hideLabel_decorators","_textStrings_decorators","Object","_autoComplete_decorators","__textStrings_decorators","state","query","_iconSlotted_decorators","_passwordVisible_decorators","_iconSlot_decorators","queryAssignedElements","slot","__esDecorate","kind","static","private","access","obj","get","metadata","_metadata","__inputEl_decorators","_iconSlot_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","TextInputScss"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"textInput.js","sources":["../../../../src/components/reusable/textInput/textInput.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n query,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { deepmerge } from 'deepmerge-ts';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport '../../reusable/button';\n\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport lockIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/no-overview.svg';\nimport unlockIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/overview.svg';\n\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport TextInputScss from './textInput.scss?inline';\n\nconst _defaultTextStrings = {\n requiredText: 'Required',\n clearAll: 'Clear all',\n errorText: 'Error',\n showPassword: 'Show password',\n hidePassword: 'Hide password',\n};\n\n/**\n * Text input.\n * @fires on-input - Captures the input event and emits the selected value and original event details.`detail:{ origEvent: InputEvent, value: string }`\n * @prop {string} pattern - RegEx pattern to validate.\n * @prop {number} minLength - Minimum number of characters.\n * @prop {number} maxLength - Maximum number of characters.\n * @slot icon - Slot for contextual icon.\n * @slot tooltip - Slot for tooltip.\n * @attr {string} [value=''] - The value of the input.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n *\n */\n@customElement('kyn-text-input')\nexport class TextInput extends FormMixin(LitElement) {\n static override styles = unsafeCSS(TextInputScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Input type, limited to options that are \"text like\". */\n @property({ type: String })\n accessor type: 'text' | 'password' | 'email' | 'search' | 'tel' | 'url' =\n 'text';\n\n /** Input size. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Input placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Makes the input required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Input disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Input readonly state. */\n @property({ type: Boolean })\n accessor readonly = false;\n\n /** RegEx pattern to validate. */\n @property({ type: String })\n accessor pattern!: string;\n\n /** Maximum number of characters. */\n @property({ type: Number })\n accessor maxLength!: number;\n\n /** Minimum number of characters. */\n @property({ type: Number })\n accessor minLength!: number;\n\n /** Place icon on the right. */\n @property({ type: Boolean })\n accessor iconRight = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Customizable text strings. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Control for native browser autocomplete. Use `on`, `off`, or a space-separated `token-list` describing autocomplete behavior.*/\n @property({ type: String })\n accessor autoComplete: string = 'off';\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * Queries the <input> DOM element.\n * @ignore\n */\n @query('input')\n accessor _inputEl!: HTMLInputElement;\n\n /**\n * Evaluates if an icon is slotted.\n * @ignore\n */\n @state()\n accessor iconSlotted = false;\n\n /** Internal state for password visibility\n * @internal\n */\n @state()\n private accessor passwordVisible = false;\n\n /**\n * Queries any slotted icons.\n * @ignore\n */\n @queryAssignedElements({ slot: 'icon' })\n accessor iconSlot!: Array<HTMLElement>;\n\n override render() {\n return html`\n <div\n class=\"text-input\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n >\n <label\n class=\"label-text ${this.hideLabel ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=\"${classMap({\n 'input-wrapper': true,\n 'icon--left': this.iconSlotted && !this.iconRight,\n 'icon--right': this.iconSlotted && this.iconRight,\n })}\"\n >\n <span class=\"context-icon\">\n <slot name=\"icon\"></slot>\n </span>\n\n <input\n class=\"${classMap({\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n 'is-readonly': this.readonly,\n })}\"\n type=${this.type === 'password' && this.passwordVisible\n ? 'text'\n : this.type}\n id=${this.name}\n name=${this.name}\n value=${this.value}\n placeholder=${this.placeholder}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?invalid=${this._isInvalid}\n aria-invalid=${this._isInvalid}\n aria-describedby=${this._isInvalid ? 'error' : ''}\n pattern=${ifDefined(this.pattern)}\n minlength=${ifDefined(this.minLength)}\n maxlength=${ifDefined(this.maxLength)}\n @input=${(e: any) => this._handleInput(e)}\n .autocomplete=${this.autoComplete}\n />\n ${this.type === 'password' && !this.readonly\n ? html`\n <kyn-button\n ?disabled=${this.disabled}\n class=\"visibility-toggle\"\n kind=\"ghost\"\n size=\"small\"\n description=${this.passwordVisible\n ? this._textStrings.hidePassword\n : this._textStrings.showPassword}\n @click=${this.disabled\n ? null\n : this._togglePasswordVisibility}\n >\n <span style=\"display:flex;\" slot=\"icon\">\n ${this.passwordVisible\n ? html`${unsafeSVG(unlockIcon)}`\n : html`${unsafeSVG(lockIcon)}`}\n </span>\n </kyn-button>\n `\n : null}\n ${this.type === 'search' && this.value !== '' && !this.readonly\n ? html`\n <kyn-button\n ?disabled=${this.disabled}\n class=\"clear-button\"\n kind=\"ghost\"\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${() => this._handleClear()}\n >\n <span style=\"display:flex;\" slot=\"icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </kyn-button>\n `\n : null}\n </div>\n\n <div class=\"caption-error-count\">\n <div>\n ${this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null}\n ${this._isInvalid\n ? html`\n <div id=\"error\" class=\"error\">\n <span\n role=\"img\"\n class=\"error-icon\"\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null}\n </div>\n ${this.maxLength\n ? html`\n <div class=\"count\">${this.value.length}/${this.maxLength}</div>\n `\n : null}\n </div>\n </div>\n `;\n }\n\n private _handleInput(e: any) {\n if (this.readonly) return;\n this.value = e.target.value;\n\n this._validate(true, false);\n this._emitValue(e);\n }\n\n private _handleClear() {\n if (this.readonly) return;\n this.value = '';\n this._inputEl.value = '';\n\n this._validate(true, false);\n this._emitValue();\n }\n\n private _emitValue(e?: any) {\n const Detail: any = {\n value: this.value,\n };\n if (e) {\n Detail.origEvent = e;\n }\n\n const event = new CustomEvent('on-input', {\n detail: Detail,\n });\n this.dispatchEvent(event);\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // get validity state from inputEl, combine customError flag if invalidText is provided\n const Validity =\n this.invalidText !== ''\n ? { ...this._inputEl.validity, customError: true }\n : this._inputEl.validity;\n // set validationMessage to invalidText if present, otherwise use inputEl validationMessage\n const ValidationMessage =\n this.invalidText !== ''\n ? this.invalidText\n : this._inputEl.validationMessage;\n\n // set validity on custom element, anchor to inputEl\n this._internals.setValidity(Validity, ValidationMessage, this._inputEl);\n\n // set internal validation message if value was changed by user input\n if (interacted) {\n this._internalValidationMsg = this._inputEl.validationMessage;\n }\n\n // focus the form field to show validity\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n override updated(changedProps: any) {\n // preserve FormMixin updated function\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n // set value on input element\n this._inputEl.value = this.value;\n }\n }\n\n override firstUpdated() {\n this.determineIfSlotted();\n }\n\n private determineIfSlotted() {\n this.iconSlotted = this.iconSlot.length ? true : false;\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n private _togglePasswordVisibility(e: MouseEvent) {\n e.stopPropagation();\n this.passwordVisible = !this.passwordVisible;\n }\n\n // Added for search input to set value from suggestion panel on select and notify\n setValueAndNotify(val: string) {\n const oldValue = this.value;\n this.value = val;\n this._inputEl.value = val;\n this.requestUpdate('value', oldValue);\n\n this._validate(true, false);\n this._emitValue();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-text-input': TextInput;\n }\n}\n"],"names":["_defaultTextStrings","requiredText","clearAll","errorText","showPassword","hidePassword","TextInput","customElement","FormMixin","LitElement","_classThis","_classSuper","label","__classPrivateFieldGet","this","_TextInput_label_accessor_storage","value","__classPrivateFieldSet","type","_TextInput_type_accessor_storage","size","_TextInput_size_accessor_storage","caption","_TextInput_caption_accessor_storage","placeholder","_TextInput_placeholder_accessor_storage","required","_TextInput_required_accessor_storage","disabled","_TextInput_disabled_accessor_storage","readonly","_TextInput_readonly_accessor_storage","pattern","_TextInput_pattern_accessor_storage","maxLength","_TextInput_maxLength_accessor_storage","minLength","_TextInput_minLength_accessor_storage","iconRight","_TextInput_iconRight_accessor_storage","hideLabel","_TextInput_hideLabel_accessor_storage","textStrings","_TextInput_textStrings_accessor_storage","autoComplete","_TextInput_autoComplete_accessor_storage","_textStrings","_TextInput__textStrings_accessor_storage","_inputEl","_TextInput__inputEl_accessor_storage","iconSlotted","_TextInput_iconSlotted_accessor_storage","passwordVisible","_TextInput_passwordVisible_accessor_storage","iconSlot","_TextInput_iconSlot_accessor_storage","render","html","name","_a","classMap","_isInvalid","ifDefined","e","_handleInput","_togglePasswordVisibility","unsafeSVG","unlockIcon","lockIcon","_handleClear","clearIcon","errorIcon","invalidText","_internalValidationMsg","length","target","_validate","_emitValue","Detail","origEvent","event","CustomEvent","detail","dispatchEvent","interacted","report","Validity","validity","customError","ValidationMessage","validationMessage","_internals","setValidity","reportValidity","updated","changedProps","_onUpdated","has","firstUpdated","determineIfSlotted","willUpdate","deepmerge","stopPropagation","setValueAndNotify","val","oldValue","requestUpdate","set","__runInitializers","_label_initializers","_label_extraInitializers","_type_initializers","_type_extraInitializers","_size_initializers","_size_extraInitializers","_caption_initializers","_caption_extraInitializers","_placeholder_initializers","_placeholder_extraInitializers","_required_initializers","_required_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_pattern_initializers","_pattern_extraInitializers","_maxLength_initializers","_maxLength_extraInitializers","_minLength_initializers","_minLength_extraInitializers","_iconRight_initializers","_iconRight_extraInitializers","_hideLabel_initializers","_hideLabel_extraInitializers","_textStrings_initializers","_textStrings_extraInitializers","_autoComplete_initializers","_autoComplete_extraInitializers","__textStrings_initializers","__textStrings_extraInitializers","__inputEl_initializers","__inputEl_extraInitializers","_iconSlotted_initializers","_iconSlotted_extraInitializers","_passwordVisible_initializers","_passwordVisible_extraInitializers","_iconSlot_initializers","_label_decorators","property","String","_type_decorators","_size_decorators","_caption_decorators","_placeholder_decorators","_required_decorators","Boolean","_disabled_decorators","_readonly_decorators","_pattern_decorators","_maxLength_decorators","Number","_minLength_decorators","_iconRight_decorators","_hideLabel_decorators","_textStrings_decorators","Object","_autoComplete_decorators","__textStrings_decorators","state","query","_iconSlotted_decorators","_passwordVisible_decorators","_iconSlot_decorators","queryAssignedElements","slot","__esDecorate","kind","static","private","access","obj","get","metadata","_metadata","__inputEl_decorators","_iconSlot_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","TextInputScss"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{TimePicker}from"./timepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../../../shidoka-flatpickr-theme-
|
|
1
|
+
export{TimePicker}from"./timepicker.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../common/mixins/form-input.js";import"../button/button.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../common/helpers/flatpickr.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";import"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as n,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as u,o as p}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as k}from"../../../common/mixins/form-input.js";import"../button/button.js";import{injectFlatpickrStyles as f,clearFlatpickrInput as g,emitValue as v,initializeSingleAnchorFlatpickr as b,getModalContainer as y,setCalendarAttributes as x,hideEmptyYear as w,getFlatpickrOptions as _,preventFlatpickrOpen as z,handleInputClick as T,handleInputFocus as S,loadLocale as M}from"../../../common/helpers/flatpickr.js";import{c as I}from"../../../shidoka-flatpickr-theme-
|
|
1
|
+
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as n,t as l,r as o,n as d,e as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{e as h,x as u,o as p}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as m}from"../../../vendor/lit-element-DxLLCKb1.js";import{FormMixin as k}from"../../../common/mixins/form-input.js";import"../button/button.js";import{injectFlatpickrStyles as f,clearFlatpickrInput as g,emitValue as v,initializeSingleAnchorFlatpickr as b,getModalContainer as y,setCalendarAttributes as x,hideEmptyYear as w,getFlatpickrOptions as _,preventFlatpickrOpen as z,handleInputClick as T,handleInputFocus as S,loadLocale as M}from"../../../common/helpers/flatpickr.js";import{c as I}from"../../../shidoka-flatpickr-theme-D_ZtzGGD.js";import{c as C,a2 as F,P as E}from"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";import"../../../vendor/flatpickr-D1_FkiHZ.js";import"../../../common/flatpickrLangs.js";import"../../../common/helpers/flatpickrOverlayPosition.js";var $=r`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -380,7 +380,7 @@ textarea:not([disabled])[invalid] {
|
|
|
380
380
|
cursor: pointer;
|
|
381
381
|
}
|
|
382
382
|
.clear-button.dropdown-clear {
|
|
383
|
-
right:
|
|
383
|
+
right: 48px;
|
|
384
384
|
width: 24px;
|
|
385
385
|
}
|
|
386
386
|
|
package/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{Header}from"./components/global/header/header.js";export{HeaderNav}from"./components/global/header/headerNav.js";export{HeaderLink}from"./components/global/header/headerLink.js";export{HeaderCategory}from"./components/global/header/headerCategory.js";export{HeaderDivider}from"./components/global/header/headerDivider.js";export{HeaderFlyouts}from"./components/global/header/headerFlyouts.js";export{HeaderFlyout}from"./components/global/header/headerFlyout.js";export{HeaderUserProfile}from"./components/global/header/headerUserProfile.js";export{HeaderPanelLink}from"./components/global/header/headerPanelLink.js";export{HeaderNotificationPanel}from"./components/global/header/headerNotificationPanel.js";export{LocalNav}from"./components/global/localNav/localNav.js";export{LocalNavLink}from"./components/global/localNav/localNavLink.js";export{LocalNavDivider}from"./components/global/localNav/localNavDivider.js";export{Footer}from"./components/global/footer/footer.js";export{UiShell}from"./components/global/uiShell/uiShell.js";export{RadioButton}from"./components/reusable/radioButton/radioButton.js";export{RadioButtonGroup}from"./components/reusable/radioButton/radioButtonGroup.js";export{Checkbox}from"./components/reusable/checkbox/checkbox.js";export{CheckboxGroup}from"./components/reusable/checkbox/checkboxGroup.js";export{CheckboxSubgroup}from"./components/reusable/checkbox/checkboxSubgroup.js";export{TextInput}from"./components/reusable/textInput/textInput.js";export{TextArea}from"./components/reusable/textArea/textArea.js";export{Avatar}from"./components/reusable/avatar/avatar.js";export{ToggleButton}from"./components/reusable/toggleButton/toggleButton.js";export{Dropdown}from"./components/reusable/dropdown/dropdown.js";export{DropdownOption}from"./components/reusable/dropdown/dropdownOption.js";export{DropdownCategory}from"./components/reusable/dropdown/dropdownCategory.js";import"./components/reusable/dropdown/enhancedDropdownOption.js";export{DatePicker}from"./components/reusable/datePicker/datepicker.js";export{DateRangePicker}from"./components/reusable/daterangepicker/daterangepicker.js";export{TimePicker}from"./components/reusable/timepicker/timepicker.js";export{ProgressBar}from"./components/reusable/progressBar/progressBar.js";export{BlockCodeView}from"./components/reusable/blockCodeView/blockCodeView.js";export{InlineCodeView}from"./components/reusable/inlineCodeView/inlineCodeView.js";export{Breadcrumbs}from"./components/reusable/breadcrumbs/breadcrumbs.js";export{T as Table}from"./table-HAX1Y1Hk.js";export{TableCell}from"./components/reusable/table/table-cell.js";export{TableRow}from"./components/reusable/table/table-row.js";export{TableBody}from"./components/reusable/table/table-body.js";export{TableHead}from"./components/reusable/table/table-head.js";export{TableHeader}from"./components/reusable/table/table-header.js";export{TableFoot}from"./components/reusable/table/table-foot.js";export{TableFooter}from"./components/reusable/table/table-footer.js";export{TableLegend}from"./components/reusable/table/table-legend.js";export{TableLegendItem}from"./components/reusable/table/table-legend-item.js";export{TableToolbar}from"./components/reusable/table/table-toolbar.js";export{TableContainer}from"./components/reusable/table/table-container.js";export{TableHeaderRow}from"./components/reusable/table/table-header-row.js";export{TableExpandedRow}from"./components/reusable/table/table-expanded-row.js";import"./components/reusable/table/table.skeleton.js";export{Pagination}from"./components/reusable/pagination/Pagination.js";import"./components/reusable/pagination/pagination-items-range.js";import"./components/reusable/pagination/pagination-page-size-dropdown.js";import"./components/reusable/pagination/pagination-navigation-buttons.js";import"./components/reusable/pagination/pagination.skeleton.js";export{OverflowMenu}from"./components/reusable/overflowMenu/overflowMenu.js";export{OverflowMenuItem}from"./components/reusable/overflowMenu/overflowMenuItem.js";export{Tabs}from"./components/reusable/tabs/tabs.js";export{Tab}from"./components/reusable/tabs/tab.js";export{TabPanel}from"./components/reusable/tabs/tabPanel.js";export{Modal}from"./components/reusable/modal/modal.js";export{Tooltip}from"./components/reusable/tooltip/tooltip.js";export{Tag}from"./components/reusable/tag/tag.js";export{TagGroup}from"./components/reusable/tag/tagGroup.js";import"./components/reusable/tag/tag.skeleton.js";export{GlobalFilter}from"./components/reusable/globalFilter/globalFilter.js";export{SideDrawer}from"./components/reusable/sideDrawer/sideDrawer.js";export{PageTitle}from"./components/reusable/pagetitle/pageTitle.js";export{Notification}from"./components/reusable/notification/notification.js";export{NotificationContainer}from"./components/reusable/notification/notificationContainer.js";export{Widget}from"./components/reusable/widget/widget.js";export{WidgetDragHandle}from"./components/reusable/widget/widgetDragHandle.js";export{WidgetGridstack}from"./components/reusable/widget/widgetGridstack.js";export{Search}from"./components/reusable/search/search.js";export{Loader}from"./components/reusable/loaders/loader.js";export{LoaderInline}from"./components/reusable/loaders/inline.js";export{Skeleton}from"./components/reusable/loaders/skeleton.js";export{NumberInput}from"./components/reusable/numberInput/numberInput.js";export{SliderInput}from"./components/reusable/sliderInput/sliderInput.js";export{Popover}from"./components/reusable/popover/popover.js";export{createOptionsArray,debounce,stringToReactHtml}from"./common/helpers/helpers.js";export{Config,WidgetConstraints,WidgetSizes}from"./common/helpers/gridstack.js";export{SwiperConfig}from"./common/helpers/swiper.js";export{Stepper}from"./components/reusable/stepper/stepper.js";export{StepperItem}from"./components/reusable/stepper/stepperItem.js";export{StepperItemChild}from"./components/reusable/stepper/stepperItemChild.js";export{Button}from"./components/reusable/button/button.js";export{Link}from"./components/reusable/link/link.js";export{Accordion}from"./components/reusable/accordion/accordion.js";export{AccordionItem}from"./components/reusable/accordion/accordionItem.js";export{Card}from"./components/reusable/card/card.js";import"./components/reusable/card/vitalCard.skeleton.js";import"./components/reusable/card/informationalCard.skeleton.js";export{SplitButton}from"./components/reusable/splitButton/splitButton.js";export{SplitButtonOption}from"./components/reusable/splitButton/splitButtonOption.js";export{FloatingContainer}from"./components/reusable/floatingContainer/floatingContainer.js";export{AISourcesFeedback}from"./components/ai/sourcesFeedback/aiSourcesFeedback.js";export{InlineConfirm}from"./components/reusable/inlineConfirm/inlineConfirm.js";export{ColorInput}from"./components/reusable/colorInput/colorInput.js";export{MetaData}from"./components/reusable/metaData/metaData.js";export{Divider}from"./components/reusable/divider/divider.js";import"./vendor/tslib-Ac8XvvSX.js";import"./vendor/@lit/reactive-element-f91Vet7N.js";import"./vendor/lit-html-fDTfWwFR.js";import"./vendor/lit-element-DxLLCKb1.js";import"./vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"./vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"./vendor/deepmerge-ts-OFb5ej8y.js";import"./common/mixins/form-input.js";import"./common/helpers/flatpickr.js";import"./vendor/flatpickr-D1_FkiHZ.js";import"./common/flatpickrLangs.js";import"./common/helpers/flatpickrOverlayPosition.js";import"./shidoka-flatpickr-theme-
|
|
1
|
+
export{Header}from"./components/global/header/header.js";export{HeaderNav}from"./components/global/header/headerNav.js";export{HeaderLink}from"./components/global/header/headerLink.js";export{HeaderCategory}from"./components/global/header/headerCategory.js";export{HeaderDivider}from"./components/global/header/headerDivider.js";export{HeaderFlyouts}from"./components/global/header/headerFlyouts.js";export{HeaderFlyout}from"./components/global/header/headerFlyout.js";export{HeaderUserProfile}from"./components/global/header/headerUserProfile.js";export{HeaderPanelLink}from"./components/global/header/headerPanelLink.js";export{HeaderNotificationPanel}from"./components/global/header/headerNotificationPanel.js";export{LocalNav}from"./components/global/localNav/localNav.js";export{LocalNavLink}from"./components/global/localNav/localNavLink.js";export{LocalNavDivider}from"./components/global/localNav/localNavDivider.js";export{Footer}from"./components/global/footer/footer.js";export{UiShell}from"./components/global/uiShell/uiShell.js";export{RadioButton}from"./components/reusable/radioButton/radioButton.js";export{RadioButtonGroup}from"./components/reusable/radioButton/radioButtonGroup.js";export{Checkbox}from"./components/reusable/checkbox/checkbox.js";export{CheckboxGroup}from"./components/reusable/checkbox/checkboxGroup.js";export{CheckboxSubgroup}from"./components/reusable/checkbox/checkboxSubgroup.js";export{TextInput}from"./components/reusable/textInput/textInput.js";export{TextArea}from"./components/reusable/textArea/textArea.js";export{Avatar}from"./components/reusable/avatar/avatar.js";export{ToggleButton}from"./components/reusable/toggleButton/toggleButton.js";export{Dropdown}from"./components/reusable/dropdown/dropdown.js";export{DropdownOption}from"./components/reusable/dropdown/dropdownOption.js";export{DropdownCategory}from"./components/reusable/dropdown/dropdownCategory.js";import"./components/reusable/dropdown/enhancedDropdownOption.js";export{DatePicker}from"./components/reusable/datePicker/datepicker.js";export{DateRangePicker}from"./components/reusable/daterangepicker/daterangepicker.js";export{TimePicker}from"./components/reusable/timepicker/timepicker.js";export{ProgressBar}from"./components/reusable/progressBar/progressBar.js";export{BlockCodeView}from"./components/reusable/blockCodeView/blockCodeView.js";export{InlineCodeView}from"./components/reusable/inlineCodeView/inlineCodeView.js";export{Breadcrumbs}from"./components/reusable/breadcrumbs/breadcrumbs.js";export{T as Table}from"./table-HAX1Y1Hk.js";export{TableCell}from"./components/reusable/table/table-cell.js";export{TableRow}from"./components/reusable/table/table-row.js";export{TableBody}from"./components/reusable/table/table-body.js";export{TableHead}from"./components/reusable/table/table-head.js";export{TableHeader}from"./components/reusable/table/table-header.js";export{TableFoot}from"./components/reusable/table/table-foot.js";export{TableFooter}from"./components/reusable/table/table-footer.js";export{TableLegend}from"./components/reusable/table/table-legend.js";export{TableLegendItem}from"./components/reusable/table/table-legend-item.js";export{TableToolbar}from"./components/reusable/table/table-toolbar.js";export{TableContainer}from"./components/reusable/table/table-container.js";export{TableHeaderRow}from"./components/reusable/table/table-header-row.js";export{TableExpandedRow}from"./components/reusable/table/table-expanded-row.js";import"./components/reusable/table/table.skeleton.js";export{Pagination}from"./components/reusable/pagination/Pagination.js";import"./components/reusable/pagination/pagination-items-range.js";import"./components/reusable/pagination/pagination-page-size-dropdown.js";import"./components/reusable/pagination/pagination-navigation-buttons.js";import"./components/reusable/pagination/pagination.skeleton.js";export{OverflowMenu}from"./components/reusable/overflowMenu/overflowMenu.js";export{OverflowMenuItem}from"./components/reusable/overflowMenu/overflowMenuItem.js";export{Tabs}from"./components/reusable/tabs/tabs.js";export{Tab}from"./components/reusable/tabs/tab.js";export{TabPanel}from"./components/reusable/tabs/tabPanel.js";export{Modal}from"./components/reusable/modal/modal.js";export{Tooltip}from"./components/reusable/tooltip/tooltip.js";export{Tag}from"./components/reusable/tag/tag.js";export{TagGroup}from"./components/reusable/tag/tagGroup.js";import"./components/reusable/tag/tag.skeleton.js";export{GlobalFilter}from"./components/reusable/globalFilter/globalFilter.js";export{SideDrawer}from"./components/reusable/sideDrawer/sideDrawer.js";export{PageTitle}from"./components/reusable/pagetitle/pageTitle.js";export{Notification}from"./components/reusable/notification/notification.js";export{NotificationContainer}from"./components/reusable/notification/notificationContainer.js";export{Widget}from"./components/reusable/widget/widget.js";export{WidgetDragHandle}from"./components/reusable/widget/widgetDragHandle.js";export{WidgetGridstack}from"./components/reusable/widget/widgetGridstack.js";export{Search}from"./components/reusable/search/search.js";export{Loader}from"./components/reusable/loaders/loader.js";export{LoaderInline}from"./components/reusable/loaders/inline.js";export{Skeleton}from"./components/reusable/loaders/skeleton.js";export{NumberInput}from"./components/reusable/numberInput/numberInput.js";export{SliderInput}from"./components/reusable/sliderInput/sliderInput.js";export{Popover}from"./components/reusable/popover/popover.js";export{createOptionsArray,debounce,stringToReactHtml}from"./common/helpers/helpers.js";export{Config,WidgetConstraints,WidgetSizes}from"./common/helpers/gridstack.js";export{SwiperConfig}from"./common/helpers/swiper.js";export{Stepper}from"./components/reusable/stepper/stepper.js";export{StepperItem}from"./components/reusable/stepper/stepperItem.js";export{StepperItemChild}from"./components/reusable/stepper/stepperItemChild.js";export{Button}from"./components/reusable/button/button.js";export{Link}from"./components/reusable/link/link.js";export{Accordion}from"./components/reusable/accordion/accordion.js";export{AccordionItem}from"./components/reusable/accordion/accordionItem.js";export{Card}from"./components/reusable/card/card.js";import"./components/reusable/card/vitalCard.skeleton.js";import"./components/reusable/card/informationalCard.skeleton.js";export{SplitButton}from"./components/reusable/splitButton/splitButton.js";export{SplitButtonOption}from"./components/reusable/splitButton/splitButtonOption.js";export{FloatingContainer}from"./components/reusable/floatingContainer/floatingContainer.js";export{AISourcesFeedback}from"./components/ai/sourcesFeedback/aiSourcesFeedback.js";export{InlineConfirm}from"./components/reusable/inlineConfirm/inlineConfirm.js";export{ColorInput}from"./components/reusable/colorInput/colorInput.js";export{MetaData}from"./components/reusable/metaData/metaData.js";export{Divider}from"./components/reusable/divider/divider.js";import"./vendor/tslib-Ac8XvvSX.js";import"./vendor/@lit/reactive-element-f91Vet7N.js";import"./vendor/lit-html-fDTfWwFR.js";import"./vendor/lit-element-DxLLCKb1.js";import"./vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"./vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"./vendor/deepmerge-ts-OFb5ej8y.js";import"./common/mixins/form-input.js";import"./common/helpers/flatpickr.js";import"./vendor/flatpickr-D1_FkiHZ.js";import"./common/flatpickrLangs.js";import"./common/helpers/flatpickrOverlayPosition.js";import"./shidoka-flatpickr-theme-D_ZtzGGD.js";import"./vendor/prismjs-1mvJofm2.js";import"./vendor/@lit/context-nxMZ2CIX.js";import"./components/reusable/table/table-context.js";import"./components/reusable/table/defs.js";import"./pagination-Cd-D1Aov.js";import"./tag-DT_gMEAT.js";import"./components/reusable/badge/badge.js";import"./vendor/query-selector-shadow-dom-D9NRI6Ow.js";import"./vendor/gridstack-D_3XX7W5.js";import"./vendor/lottie-web-t-JWAnz9.js";import"./inline-CS33Oojd.js";import"./vendor/@floating-ui/dom-DatHEGLh.js";import"./vendor/@floating-ui/core-Psgh4TGO.js";import"./vendor/@floating-ui/utils-CqAU-KUi.js";import"./common/helpers/popoverHelper.js";import"./components/reusable/button/defs.js";import"./components/reusable/link/defs.js";import"./cardSample-Co5dXCZy.js";import"./components/reusable/splitButton/defs.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -371,7 +371,7 @@ textarea:not([disabled])[invalid] {
|
|
|
371
371
|
cursor: pointer;
|
|
372
372
|
}
|
|
373
373
|
.clear-button.dropdown-clear {
|
|
374
|
-
right:
|
|
374
|
+
right: 48px;
|
|
375
375
|
width: 24px;
|
|
376
376
|
}
|
|
377
377
|
|
|
@@ -1614,4 +1614,4 @@ span.flatpickr-weekday {
|
|
|
1614
1614
|
background-color: var(--kd-color-border-variants-light);
|
|
1615
1615
|
}
|
|
1616
1616
|
}`;export{e as c};
|
|
1617
|
-
//# sourceMappingURL=shidoka-flatpickr-theme-
|
|
1617
|
+
//# sourceMappingURL=shidoka-flatpickr-theme-D_ZtzGGD.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shidoka-flatpickr-theme-
|
|
1
|
+
{"version":3,"file":"shidoka-flatpickr-theme-D_ZtzGGD.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|