kr-elements 0.0.1-alpha.30 → 0.0.1-alpha.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/combobox/Combobox.markup.js +4 -3
- package/dist/cjs/combobox/HTML.combobox.element.js +30 -35
- package/dist/esm/combobox/Combobox.markup.js +4 -3
- package/dist/esm/combobox/HTML.combobox.element.js +30 -35
- package/dist/types/combobox/Combobox.markup.d.ts +0 -1
- package/dist/types/combobox/Combobox.markup.d.ts.map +1 -1
- package/dist/types/combobox/HTML.combobox.element.d.ts +3 -4
- package/dist/types/combobox/HTML.combobox.element.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ComboboxMarkup = void 0;
|
|
4
4
|
const HTML_combobox_tag_element_js_1 = require("./HTML.combobox.tag.element.js");
|
|
5
5
|
class ComboboxMarkup {
|
|
6
|
-
static scrollToTopOptions = { top: 0, behavior: 'smooth' };
|
|
7
6
|
#shadowRoot;
|
|
8
7
|
#internals;
|
|
9
8
|
tagsContainer = null;
|
|
@@ -48,7 +47,7 @@ class ComboboxMarkup {
|
|
|
48
47
|
clearTimeout(this.#timer);
|
|
49
48
|
this.#timer = setTimeout(() => {
|
|
50
49
|
const regex = new RegExp(query.trim(), 'i');
|
|
51
|
-
this.options.forEach(option => {
|
|
50
|
+
this.options.forEach((option) => {
|
|
52
51
|
if (!regex.test(option.textContent)) {
|
|
53
52
|
option.style.display = "none";
|
|
54
53
|
}
|
|
@@ -56,7 +55,7 @@ class ComboboxMarkup {
|
|
|
56
55
|
option.style.display = "flex";
|
|
57
56
|
}
|
|
58
57
|
});
|
|
59
|
-
this.dropdown.scrollTo(
|
|
58
|
+
this.dropdown.scrollTo({ top: 0, behavior: 'smooth' });
|
|
60
59
|
}, 200);
|
|
61
60
|
}
|
|
62
61
|
disconnect() {
|
|
@@ -217,6 +216,8 @@ class ComboboxMarkup {
|
|
|
217
216
|
border-radius: inherit;
|
|
218
217
|
content-visibility: auto;
|
|
219
218
|
cursor: pointer;
|
|
219
|
+
padding-inline: 2px;
|
|
220
|
+
padding-block: 1px;
|
|
220
221
|
}
|
|
221
222
|
|
|
222
223
|
box-option:hover {
|
|
@@ -6,8 +6,7 @@ const Combobox_markup_js_1 = require("./Combobox.markup.js");
|
|
|
6
6
|
const HTML_combobox_option_element_js_1 = require("./HTML.combobox.option.element.js");
|
|
7
7
|
const Boolean_attribute_value_normalizer_js_1 = require("./Boolean.attribute.value.normalizer.js");
|
|
8
8
|
class HTMLComboboxElement extends HTMLElement {
|
|
9
|
-
static
|
|
10
|
-
static booleanAttributes = new Set(['required', 'disabled', 'clearable', 'multiple', 'filterable', 'searchable']);
|
|
9
|
+
static OWN_IDL = new Set(['required', 'disabled', 'clearable', 'multiple', 'filterable', 'searchable', 'value', 'placeholder', 'query']);
|
|
11
10
|
static observerOptions = { childList: true, attributes: false, subtree: false };
|
|
12
11
|
static styleSheet = [new CSSStyleSheet];
|
|
13
12
|
static formAssociated = true;
|
|
@@ -106,11 +105,27 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
106
105
|
set query(value) {
|
|
107
106
|
if (value === this.query)
|
|
108
107
|
return;
|
|
108
|
+
if (value == null)
|
|
109
|
+
value = '';
|
|
110
|
+
value = String(value);
|
|
109
111
|
super.setAttribute('query', value);
|
|
110
112
|
if (this.#markup.connected) {
|
|
111
113
|
this.#markup.searchInput.value = value;
|
|
112
114
|
}
|
|
113
115
|
}
|
|
116
|
+
get placeholder() {
|
|
117
|
+
return this.getAttribute('placeholder');
|
|
118
|
+
}
|
|
119
|
+
set placeholder(value) {
|
|
120
|
+
if (value == null)
|
|
121
|
+
value = '';
|
|
122
|
+
value = String(value);
|
|
123
|
+
super.setAttribute('placeholder', value);
|
|
124
|
+
if (this.#markup.connected) {
|
|
125
|
+
this.#markup.placeholder.innerText = value;
|
|
126
|
+
this.#markup.searchInput.placeholder = value;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
114
129
|
get clearable() {
|
|
115
130
|
return this.hasAttribute('clearable');
|
|
116
131
|
}
|
|
@@ -149,37 +164,22 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
149
164
|
this.internals.ariaRequired = String(value);
|
|
150
165
|
super.toggleAttribute('required', (0, Boolean_attribute_value_normalizer_js_1.toBoolean)(value));
|
|
151
166
|
}
|
|
152
|
-
get placeholder() {
|
|
153
|
-
return this.getAttribute('placeholder');
|
|
154
|
-
}
|
|
155
|
-
set placeholder(value) {
|
|
156
|
-
super.setAttribute('placeholder', value);
|
|
157
|
-
if (this.#markup.connected) {
|
|
158
|
-
this.#markup.placeholder.innerText = value;
|
|
159
|
-
this.#markup.searchInput.placeholder = value;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
167
|
// Instance methods
|
|
163
168
|
setAttribute(name, value) {
|
|
164
|
-
if (_a.
|
|
165
|
-
Reflect.set(this, name, (0, Boolean_attribute_value_normalizer_js_1.toBoolean)(value));
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
if (_a.stringAttributes.has(name)) {
|
|
169
|
+
if (_a.OWN_IDL.has(name)) {
|
|
169
170
|
Reflect.set(this, name, value);
|
|
170
|
-
return;
|
|
171
171
|
}
|
|
172
|
-
|
|
172
|
+
else {
|
|
173
|
+
super.setAttribute(name, value);
|
|
174
|
+
}
|
|
173
175
|
}
|
|
174
176
|
removeAttribute(name) {
|
|
175
|
-
if (_a.
|
|
177
|
+
if (_a.OWN_IDL.has(name)) {
|
|
176
178
|
Reflect.set(this, name, false);
|
|
177
|
-
return;
|
|
178
179
|
}
|
|
179
|
-
|
|
180
|
-
|
|
180
|
+
else {
|
|
181
|
+
super.removeAttribute(name);
|
|
181
182
|
}
|
|
182
|
-
super.removeAttribute(name);
|
|
183
183
|
}
|
|
184
184
|
reportValidity() {
|
|
185
185
|
this.internals.reportValidity();
|
|
@@ -197,7 +197,7 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
197
197
|
}
|
|
198
198
|
// Internal
|
|
199
199
|
#onInput = (event) => {
|
|
200
|
-
if (this.filterable) {
|
|
200
|
+
if (!this.searchable && this.filterable) {
|
|
201
201
|
if (event.target && event.target instanceof HTMLInputElement) {
|
|
202
202
|
this.#markup.sort(event.target.value);
|
|
203
203
|
}
|
|
@@ -300,14 +300,8 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
300
300
|
}
|
|
301
301
|
}
|
|
302
302
|
#initialAttributesSynchronization() {
|
|
303
|
-
for (const key of _a.
|
|
304
|
-
|
|
305
|
-
Reflect.set(this, key, value);
|
|
306
|
-
}
|
|
307
|
-
for (const key of _a.stringAttributes) {
|
|
308
|
-
if (this.hasAttribute(key)) {
|
|
309
|
-
Reflect.set(this, key, this.getAttribute(key));
|
|
310
|
-
}
|
|
303
|
+
for (const key of _a.OWN_IDL) {
|
|
304
|
+
Reflect.set(this, key, this.getAttribute(key));
|
|
311
305
|
}
|
|
312
306
|
}
|
|
313
307
|
static staticLoadCssByUrls(urls) {
|
|
@@ -336,8 +330,9 @@ exports.HTMLComboboxElement = HTMLComboboxElement;
|
|
|
336
330
|
_a = HTMLComboboxElement;
|
|
337
331
|
document.addEventListener('keypress', (event) => {
|
|
338
332
|
if (document.activeElement instanceof HTMLComboboxElement) {
|
|
339
|
-
|
|
340
|
-
|
|
333
|
+
const maybeHost = document.activeElement.shadowRoot.activeElement;
|
|
334
|
+
if (maybeHost instanceof HTML_combobox_option_element_js_1.HTMLComboboxOptionElement) {
|
|
335
|
+
maybeHost.click();
|
|
341
336
|
}
|
|
342
337
|
}
|
|
343
338
|
});
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { HTMLComboboxTagElement } from './HTML.combobox.tag.element.js';
|
|
2
2
|
export class ComboboxMarkup {
|
|
3
|
-
static scrollToTopOptions = { top: 0, behavior: 'smooth' };
|
|
4
3
|
#shadowRoot;
|
|
5
4
|
#internals;
|
|
6
5
|
tagsContainer = null;
|
|
@@ -45,7 +44,7 @@ export class ComboboxMarkup {
|
|
|
45
44
|
clearTimeout(this.#timer);
|
|
46
45
|
this.#timer = setTimeout(() => {
|
|
47
46
|
const regex = new RegExp(query.trim(), 'i');
|
|
48
|
-
this.options.forEach(option => {
|
|
47
|
+
this.options.forEach((option) => {
|
|
49
48
|
if (!regex.test(option.textContent)) {
|
|
50
49
|
option.style.display = "none";
|
|
51
50
|
}
|
|
@@ -53,7 +52,7 @@ export class ComboboxMarkup {
|
|
|
53
52
|
option.style.display = "flex";
|
|
54
53
|
}
|
|
55
54
|
});
|
|
56
|
-
this.dropdown.scrollTo(
|
|
55
|
+
this.dropdown.scrollTo({ top: 0, behavior: 'smooth' });
|
|
57
56
|
}, 200);
|
|
58
57
|
}
|
|
59
58
|
disconnect() {
|
|
@@ -214,6 +213,8 @@ export class ComboboxMarkup {
|
|
|
214
213
|
border-radius: inherit;
|
|
215
214
|
content-visibility: auto;
|
|
216
215
|
cursor: pointer;
|
|
216
|
+
padding-inline: 2px;
|
|
217
|
+
padding-block: 1px;
|
|
217
218
|
}
|
|
218
219
|
|
|
219
220
|
box-option:hover {
|
|
@@ -2,8 +2,7 @@ import { ComboboxMarkup } from './Combobox.markup.js';
|
|
|
2
2
|
import { HTMLComboboxOptionElement } from './HTML.combobox.option.element.js';
|
|
3
3
|
import { toBoolean } from './Boolean.attribute.value.normalizer.js';
|
|
4
4
|
export class HTMLComboboxElement extends HTMLElement {
|
|
5
|
-
static
|
|
6
|
-
static booleanAttributes = new Set(['required', 'disabled', 'clearable', 'multiple', 'filterable', 'searchable']);
|
|
5
|
+
static OWN_IDL = new Set(['required', 'disabled', 'clearable', 'multiple', 'filterable', 'searchable', 'value', 'placeholder', 'query']);
|
|
7
6
|
static observerOptions = { childList: true, attributes: false, subtree: false };
|
|
8
7
|
static styleSheet = [new CSSStyleSheet];
|
|
9
8
|
static formAssociated = true;
|
|
@@ -102,11 +101,27 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
102
101
|
set query(value) {
|
|
103
102
|
if (value === this.query)
|
|
104
103
|
return;
|
|
104
|
+
if (value == null)
|
|
105
|
+
value = '';
|
|
106
|
+
value = String(value);
|
|
105
107
|
super.setAttribute('query', value);
|
|
106
108
|
if (this.#markup.connected) {
|
|
107
109
|
this.#markup.searchInput.value = value;
|
|
108
110
|
}
|
|
109
111
|
}
|
|
112
|
+
get placeholder() {
|
|
113
|
+
return this.getAttribute('placeholder');
|
|
114
|
+
}
|
|
115
|
+
set placeholder(value) {
|
|
116
|
+
if (value == null)
|
|
117
|
+
value = '';
|
|
118
|
+
value = String(value);
|
|
119
|
+
super.setAttribute('placeholder', value);
|
|
120
|
+
if (this.#markup.connected) {
|
|
121
|
+
this.#markup.placeholder.innerText = value;
|
|
122
|
+
this.#markup.searchInput.placeholder = value;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
110
125
|
get clearable() {
|
|
111
126
|
return this.hasAttribute('clearable');
|
|
112
127
|
}
|
|
@@ -145,37 +160,22 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
145
160
|
this.internals.ariaRequired = String(value);
|
|
146
161
|
super.toggleAttribute('required', toBoolean(value));
|
|
147
162
|
}
|
|
148
|
-
get placeholder() {
|
|
149
|
-
return this.getAttribute('placeholder');
|
|
150
|
-
}
|
|
151
|
-
set placeholder(value) {
|
|
152
|
-
super.setAttribute('placeholder', value);
|
|
153
|
-
if (this.#markup.connected) {
|
|
154
|
-
this.#markup.placeholder.innerText = value;
|
|
155
|
-
this.#markup.searchInput.placeholder = value;
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
163
|
// Instance methods
|
|
159
164
|
setAttribute(name, value) {
|
|
160
|
-
if (HTMLComboboxElement.
|
|
161
|
-
Reflect.set(this, name, toBoolean(value));
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
if (HTMLComboboxElement.stringAttributes.has(name)) {
|
|
165
|
+
if (HTMLComboboxElement.OWN_IDL.has(name)) {
|
|
165
166
|
Reflect.set(this, name, value);
|
|
166
|
-
return;
|
|
167
167
|
}
|
|
168
|
-
|
|
168
|
+
else {
|
|
169
|
+
super.setAttribute(name, value);
|
|
170
|
+
}
|
|
169
171
|
}
|
|
170
172
|
removeAttribute(name) {
|
|
171
|
-
if (HTMLComboboxElement.
|
|
173
|
+
if (HTMLComboboxElement.OWN_IDL.has(name)) {
|
|
172
174
|
Reflect.set(this, name, false);
|
|
173
|
-
return;
|
|
174
175
|
}
|
|
175
|
-
|
|
176
|
-
|
|
176
|
+
else {
|
|
177
|
+
super.removeAttribute(name);
|
|
177
178
|
}
|
|
178
|
-
super.removeAttribute(name);
|
|
179
179
|
}
|
|
180
180
|
reportValidity() {
|
|
181
181
|
this.internals.reportValidity();
|
|
@@ -193,7 +193,7 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
193
193
|
}
|
|
194
194
|
// Internal
|
|
195
195
|
#onInput = (event) => {
|
|
196
|
-
if (this.filterable) {
|
|
196
|
+
if (!this.searchable && this.filterable) {
|
|
197
197
|
if (event.target && event.target instanceof HTMLInputElement) {
|
|
198
198
|
this.#markup.sort(event.target.value);
|
|
199
199
|
}
|
|
@@ -296,14 +296,8 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
#initialAttributesSynchronization() {
|
|
299
|
-
for (const key of HTMLComboboxElement.
|
|
300
|
-
|
|
301
|
-
Reflect.set(this, key, value);
|
|
302
|
-
}
|
|
303
|
-
for (const key of HTMLComboboxElement.stringAttributes) {
|
|
304
|
-
if (this.hasAttribute(key)) {
|
|
305
|
-
Reflect.set(this, key, this.getAttribute(key));
|
|
306
|
-
}
|
|
299
|
+
for (const key of HTMLComboboxElement.OWN_IDL) {
|
|
300
|
+
Reflect.set(this, key, this.getAttribute(key));
|
|
307
301
|
}
|
|
308
302
|
}
|
|
309
303
|
static staticLoadCssByUrls(urls) {
|
|
@@ -330,8 +324,9 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
330
324
|
}
|
|
331
325
|
document.addEventListener('keypress', (event) => {
|
|
332
326
|
if (document.activeElement instanceof HTMLComboboxElement) {
|
|
333
|
-
|
|
334
|
-
|
|
327
|
+
const maybeHost = document.activeElement.shadowRoot.activeElement;
|
|
328
|
+
if (maybeHost instanceof HTMLComboboxOptionElement) {
|
|
329
|
+
maybeHost.click();
|
|
335
330
|
}
|
|
336
331
|
}
|
|
337
332
|
});
|
|
@@ -2,7 +2,6 @@ import { HTMLComboboxTagElement } from './HTML.combobox.tag.element.js';
|
|
|
2
2
|
import { HTMLComboboxOptionElement } from './HTML.combobox.option.element.js';
|
|
3
3
|
export declare class ComboboxMarkup {
|
|
4
4
|
#private;
|
|
5
|
-
static scrollToTopOptions: ScrollToOptions;
|
|
6
5
|
tagsContainer: HTMLDivElement | null;
|
|
7
6
|
optionsContainer: HTMLDivElement | null;
|
|
8
7
|
clearAllButton: HTMLButtonElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.markup.d.ts","sourceRoot":"","sources":["../../../src/combobox/Combobox.markup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,qBAAa,cAAc;;
|
|
1
|
+
{"version":3,"file":"Combobox.markup.d.ts","sourceRoot":"","sources":["../../../src/combobox/Combobox.markup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,qBAAa,cAAc;;IAGzB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC5C,gBAAgB,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC/C,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAChD,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAQ;IACvC,WAAW,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC1C,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAC5C,WAAW,EAAE,sBAAsB,GAAG,IAAI,CAAQ;IAClD,OAAO,EAAE,UAAU,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC;IACtD,SAAS,UAAS;gBAEN,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB;IAU/D,OAAO;IAiBP,sBAAsB;IAMtB,IAAI,CAAC,KAAK,EAAE,MAAM;IAelB,UAAU;IASV,YAAY,aAIX;IAED,mBAAmB,CAAC,IAAI,EAAE,OAAO;IAmBjC,YAAY,aAcX;IAED,aAAa;IAYb,YAAY,GAAI,OAAO,KAAK,UAG3B;IAED,kBAAkB,CAAC,MAAM,EAAE,yBAAyB;IA2CpD,aAAa,CAAC,KAAK,EAAE,MAAM;IAI3B,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAI9B,IAAI,eAAe,0CAGlB;IAED,MAAM,KAAK,QAAQ,WAoMlB;CACF"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { HTMLComboboxOptionElement } from './HTML.combobox.option.element.js';
|
|
2
2
|
export declare class HTMLComboboxElement extends HTMLElement {
|
|
3
3
|
#private;
|
|
4
|
-
static
|
|
5
|
-
static booleanAttributes: Set<string>;
|
|
4
|
+
static OWN_IDL: Set<string>;
|
|
6
5
|
static observerOptions: {
|
|
7
6
|
childList: boolean;
|
|
8
7
|
attributes: boolean;
|
|
@@ -25,6 +24,8 @@ export declare class HTMLComboboxElement extends HTMLElement {
|
|
|
25
24
|
set value(value: string);
|
|
26
25
|
get query(): string;
|
|
27
26
|
set query(value: string);
|
|
27
|
+
get placeholder(): string;
|
|
28
|
+
set placeholder(value: string);
|
|
28
29
|
get clearable(): boolean;
|
|
29
30
|
set clearable(value: boolean);
|
|
30
31
|
get multiple(): boolean;
|
|
@@ -37,8 +38,6 @@ export declare class HTMLComboboxElement extends HTMLElement {
|
|
|
37
38
|
set disabled(value: boolean);
|
|
38
39
|
get required(): boolean;
|
|
39
40
|
set required(value: boolean);
|
|
40
|
-
get placeholder(): string;
|
|
41
|
-
set placeholder(value: string);
|
|
42
41
|
setAttribute(name: string, value: any): void;
|
|
43
42
|
removeAttribute(name: string): void;
|
|
44
43
|
reportValidity(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HTML.combobox.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.element.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAG9E,qBAAa,mBAAoB,SAAQ,WAAW;;IAClD,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"HTML.combobox.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.element.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAG9E,qBAAa,mBAAoB,SAAQ,WAAW;;IAClD,MAAM,CAAC,OAAO,cAA0H;IACxI,MAAM,CAAC,eAAe;;;;MAA0D;IAChF,MAAM,CAAC,UAAU,kBAAuB;IACxC,MAAM,CAAC,cAAc,UAAQ;IAE7B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,UAAU,EAAE,UAAU,CAAC;;IAkBvB,iBAAiB;IASjB,oBAAoB;IAKpB,iBAAiB;IAQjB,oBAAoB,CAAC,UAAU,EAAE,OAAO;IAMxC,IAAI,YAAY,aAEf;IACD,IAAI,eAAe,0CAElB;IACD,IAAI,QAAQ,kBAEX;IACD,IAAI,YAAY,YAEf;IAGD,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAgCtB;IAED,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAQtB;IAED,IAAI,WAAW,WAEd;IACD,IAAI,WAAW,CAAC,KAAK,QAAA,EAQpB;IAED,IAAI,SAAS,YAEZ;IACD,IAAI,SAAS,CAAC,KAAK,SAAA,EAElB;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAEjB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAED,IAAI,UAAU,YAEb;IACD,IAAI,UAAU,CAAC,KAAK,SAAA,EAEnB;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAGjB;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAGjB;IAGD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQrC,eAAe,CAAC,IAAI,EAAE,MAAM;IAQ5B,cAAc;IAId,aAAa;IAIb,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAwHjC,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE;IAIzC,MAAM,CAAC,8BAA8B;CAoBtC"}
|