kr-elements 0.0.1-alpha.29 → 0.0.1-alpha.30
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 +53 -25
- package/dist/cjs/combobox/HTML.combobox.element.js +7 -0
- package/dist/cjs/combobox/HTML.combobox.option.element.js +0 -1
- package/dist/cjs/index.js +64 -0
- package/dist/esm/combobox/Combobox.markup.js +53 -25
- package/dist/esm/combobox/HTML.combobox.element.js +7 -0
- package/dist/esm/combobox/HTML.combobox.option.element.js +0 -1
- package/dist/esm/index.js +64 -0
- package/dist/types/combobox/Combobox.markup.d.ts +4 -0
- package/dist/types/combobox/Combobox.markup.d.ts.map +1 -1
- package/dist/types/combobox/HTML.combobox.element.d.ts.map +1 -1
- package/dist/types/combobox/HTML.combobox.option.element.d.ts.map +1 -1
- package/dist/types/index.d.ts +55 -16
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -3,6 +3,7 @@ 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' };
|
|
6
7
|
#shadowRoot;
|
|
7
8
|
#internals;
|
|
8
9
|
tagsContainer = null;
|
|
@@ -12,6 +13,7 @@ class ComboboxMarkup {
|
|
|
12
13
|
placeholder = null;
|
|
13
14
|
searchInput = null;
|
|
14
15
|
tagTemplate = null;
|
|
16
|
+
options;
|
|
15
17
|
connected = false;
|
|
16
18
|
constructor(shadowRoot, internals) {
|
|
17
19
|
this.#shadowRoot = shadowRoot;
|
|
@@ -38,23 +40,24 @@ class ComboboxMarkup {
|
|
|
38
40
|
this.tagTemplate = doc.querySelector('box-tag');
|
|
39
41
|
this.connected = true;
|
|
40
42
|
}
|
|
43
|
+
invalidateOptionsCache() {
|
|
44
|
+
this.options = this.optionsContainer.querySelectorAll('box-option');
|
|
45
|
+
}
|
|
46
|
+
#timer = undefined;
|
|
41
47
|
sort(query) {
|
|
42
|
-
|
|
43
|
-
this
|
|
44
|
-
.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
option.style.order = "initial";
|
|
56
|
-
}
|
|
57
|
-
});
|
|
48
|
+
clearTimeout(this.#timer);
|
|
49
|
+
this.#timer = setTimeout(() => {
|
|
50
|
+
const regex = new RegExp(query.trim(), 'i');
|
|
51
|
+
this.options.forEach(option => {
|
|
52
|
+
if (!regex.test(option.textContent)) {
|
|
53
|
+
option.style.display = "none";
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
option.style.display = "flex";
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
this.dropdown.scrollTo(ComboboxMarkup.scrollToTopOptions);
|
|
60
|
+
}, 200);
|
|
58
61
|
}
|
|
59
62
|
disconnect() {
|
|
60
63
|
this.#shadowRoot.host.removeEventListener('focus', this.showDropdown);
|
|
@@ -95,23 +98,31 @@ class ComboboxMarkup {
|
|
|
95
98
|
// @ts-ignore
|
|
96
99
|
this.dropdown.showPopover();
|
|
97
100
|
this.#internals.ariaExpanded = "true";
|
|
101
|
+
if (this.tagsContainer?.children.length === 0) {
|
|
102
|
+
this.searchInput?.focus();
|
|
103
|
+
}
|
|
104
|
+
this.placeholder.innerText = '';
|
|
98
105
|
}
|
|
99
106
|
catch {
|
|
100
107
|
this.#internals.ariaExpanded = "false";
|
|
101
108
|
}
|
|
102
109
|
};
|
|
103
|
-
|
|
104
|
-
if (event.composedPath().includes(this.#shadowRoot.host))
|
|
105
|
-
return;
|
|
110
|
+
closeDropdown() {
|
|
106
111
|
try {
|
|
107
112
|
// @ts-ignore
|
|
108
113
|
this.dropdown.hidePopover();
|
|
109
114
|
this.dropdown.style.display = 'none';
|
|
110
115
|
this.#internals.ariaExpanded = "false";
|
|
116
|
+
this.placeholder.innerText = this.#shadowRoot.host.getAttribute('placeholder');
|
|
111
117
|
}
|
|
112
|
-
catch {
|
|
118
|
+
catch (e) {
|
|
113
119
|
this.#internals.ariaExpanded = "true";
|
|
114
120
|
}
|
|
121
|
+
}
|
|
122
|
+
hideDropdown = (event) => {
|
|
123
|
+
if (event.composedPath().includes(this.#shadowRoot.host))
|
|
124
|
+
return;
|
|
125
|
+
this.closeDropdown();
|
|
115
126
|
};
|
|
116
127
|
createAndAppendTag(option) {
|
|
117
128
|
const value = option.value;
|
|
@@ -128,6 +139,10 @@ class ComboboxMarkup {
|
|
|
128
139
|
if (relatedPart) {
|
|
129
140
|
const newNode = relatedPart.cloneNode(true);
|
|
130
141
|
newNode.part.add(...tokens);
|
|
142
|
+
const exportedParts = option.getAttribute('exportparts');
|
|
143
|
+
if (exportedParts) {
|
|
144
|
+
tag.part.add(exportedParts);
|
|
145
|
+
}
|
|
131
146
|
tag.replaceChild(newNode, node);
|
|
132
147
|
break;
|
|
133
148
|
}
|
|
@@ -197,14 +212,21 @@ class ComboboxMarkup {
|
|
|
197
212
|
border-radius: inherit;
|
|
198
213
|
}
|
|
199
214
|
|
|
200
|
-
|
|
215
|
+
box-option {
|
|
201
216
|
display: flex;
|
|
202
217
|
border-radius: inherit;
|
|
203
218
|
content-visibility: auto;
|
|
219
|
+
cursor: pointer;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
box-option:hover {
|
|
223
|
+
background-color: color-mix(in srgb, Highlight, transparent 70%);
|
|
204
224
|
}
|
|
205
225
|
|
|
206
|
-
|
|
226
|
+
box-option[selected] {
|
|
207
227
|
background-color: Highlight;
|
|
228
|
+
cursor: not-allowed;
|
|
229
|
+
pointer-events: none;
|
|
208
230
|
}
|
|
209
231
|
|
|
210
232
|
[part="search-input"] {
|
|
@@ -215,6 +237,7 @@ class ComboboxMarkup {
|
|
|
215
237
|
border-radius: inherit;
|
|
216
238
|
border-style: inherit;
|
|
217
239
|
border-width: inherit;
|
|
240
|
+
border-color: inherit;
|
|
218
241
|
padding: inherit;
|
|
219
242
|
}
|
|
220
243
|
|
|
@@ -226,6 +249,9 @@ class ComboboxMarkup {
|
|
|
226
249
|
#placeholder {
|
|
227
250
|
text-align: left;
|
|
228
251
|
overflow: hidden;
|
|
252
|
+
padding-inline-start: 2px;
|
|
253
|
+
font-size: smaller;
|
|
254
|
+
color: dimgrey;
|
|
229
255
|
}
|
|
230
256
|
|
|
231
257
|
#tags:not(:empty) + #placeholder {
|
|
@@ -245,10 +271,9 @@ class ComboboxMarkup {
|
|
|
245
271
|
border-radius: inherit;
|
|
246
272
|
}
|
|
247
273
|
|
|
248
|
-
[part
|
|
274
|
+
[part*="box-tag"] {
|
|
249
275
|
width: 100%;
|
|
250
276
|
justify-self: start;
|
|
251
|
-
font-size: inherit;
|
|
252
277
|
box-sizing: border-box;
|
|
253
278
|
display: flex;
|
|
254
279
|
align-items: center;
|
|
@@ -257,9 +282,11 @@ class ComboboxMarkup {
|
|
|
257
282
|
padding-inline-end: .2rem;
|
|
258
283
|
background-color: transparent;
|
|
259
284
|
gap: 5px;
|
|
285
|
+
font-size: medium;
|
|
286
|
+
text-transform: uppercase;
|
|
260
287
|
}
|
|
261
288
|
|
|
262
|
-
:host([multiple]) [part
|
|
289
|
+
:host([multiple]) [part*="box-tag"] {
|
|
263
290
|
background-color: Highlight;
|
|
264
291
|
width: fit-content;
|
|
265
292
|
max-width: 100%;
|
|
@@ -314,6 +341,7 @@ class ComboboxMarkup {
|
|
|
314
341
|
[part*="clear-all-button"]:hover,
|
|
315
342
|
[part*="tag-clear-button"]:hover {
|
|
316
343
|
color: ActiveText;
|
|
344
|
+
cursor: pointer;
|
|
317
345
|
}
|
|
318
346
|
|
|
319
347
|
[part*="clear-all-button"]:hover {
|
|
@@ -222,6 +222,7 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
222
222
|
}
|
|
223
223
|
});
|
|
224
224
|
});
|
|
225
|
+
this.#markup.invalidateOptionsCache();
|
|
225
226
|
this.#setValidityAndFormValue();
|
|
226
227
|
};
|
|
227
228
|
#selectOption(option) {
|
|
@@ -232,6 +233,9 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
232
233
|
option.toggleAttribute('selected', true);
|
|
233
234
|
const control = this.#markup.createAndAppendTag(option);
|
|
234
235
|
control.addEventListener('click', this.#onClickTagClearButton);
|
|
236
|
+
if (!this.multiple) {
|
|
237
|
+
this.#markup.closeDropdown();
|
|
238
|
+
}
|
|
235
239
|
}
|
|
236
240
|
#onSelectOption = (event) => {
|
|
237
241
|
let option;
|
|
@@ -253,6 +257,9 @@ class HTMLComboboxElement extends HTMLElement {
|
|
|
253
257
|
this.#values.clear();
|
|
254
258
|
this.#markup.tagsContainer.replaceChildren();
|
|
255
259
|
}
|
|
260
|
+
if (!this.multiple) {
|
|
261
|
+
event.stopPropagation();
|
|
262
|
+
}
|
|
256
263
|
this.#selectOption(option);
|
|
257
264
|
this.#setValidityAndFormValue();
|
|
258
265
|
this.dispatchEvent(new Event('change'));
|
|
@@ -17,7 +17,6 @@ class HTMLComboboxOptionElement extends HTMLElement {
|
|
|
17
17
|
const text = this.textContent.trim();
|
|
18
18
|
const hasText = text.length > 0;
|
|
19
19
|
if (!value && !label) {
|
|
20
|
-
console.log('!value && !label');
|
|
21
20
|
if (hasNoMarkup && hasText) {
|
|
22
21
|
this.value = text;
|
|
23
22
|
this.label = text;
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/// <reference types="solid-js" />
|
|
3
3
|
/// <reference types="preact" />
|
|
4
|
+
/// <reference types="react" />
|
|
5
|
+
/// <reference types="vue" />
|
|
4
6
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
7
|
if (k2 === undefined) k2 = k;
|
|
6
8
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -17,3 +19,65 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
17
19
|
};
|
|
18
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
21
|
__exportStar(require("./combobox/index.js"), exports);
|
|
22
|
+
// declare global {
|
|
23
|
+
// namespace React {
|
|
24
|
+
// namespace JSX {
|
|
25
|
+
// interface IntrinsicElements {
|
|
26
|
+
// 'combo-box': React.DetailedHTMLProps<Omit<React.HTMLAttributes<HTMLComboboxElement>, 'defaultValue'>,
|
|
27
|
+
// HTMLComboboxElement
|
|
28
|
+
// > & ComboboxJsxAttributes;
|
|
29
|
+
//
|
|
30
|
+
// 'box-option': React.DetailedHTMLProps<
|
|
31
|
+
// React.HTMLAttributes<HTMLComboboxOptionElement>,
|
|
32
|
+
// HTMLComboboxOptionElement>
|
|
33
|
+
// & ComboboxOptionJsxAttributes;
|
|
34
|
+
//
|
|
35
|
+
// 'box-tag': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxTagElement>, HTMLComboboxTagElement>;
|
|
36
|
+
// }
|
|
37
|
+
// }
|
|
38
|
+
// }
|
|
39
|
+
//
|
|
40
|
+
//
|
|
41
|
+
// namespace preact {
|
|
42
|
+
// namespace JSX {
|
|
43
|
+
// interface IntrinsicElements {
|
|
44
|
+
// 'combo-box': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes;
|
|
45
|
+
// 'box-option': preact.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes;
|
|
46
|
+
// 'box-tag': preact.HTMLAttributes<HTMLComboboxTagElement>;
|
|
47
|
+
// }
|
|
48
|
+
// }
|
|
49
|
+
// }
|
|
50
|
+
//
|
|
51
|
+
// }
|
|
52
|
+
//
|
|
53
|
+
// declare module 'preact' {
|
|
54
|
+
// namespace JSX {
|
|
55
|
+
// interface IntrinsicElements {
|
|
56
|
+
// 'combo-box': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes;
|
|
57
|
+
// 'box-option': preact.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes;
|
|
58
|
+
// 'box-tag': preact.HTMLAttributes<HTMLComboboxTagElement>;
|
|
59
|
+
// }
|
|
60
|
+
// }
|
|
61
|
+
// }
|
|
62
|
+
//
|
|
63
|
+
// // Solid
|
|
64
|
+
// declare module 'solid-js' {
|
|
65
|
+
// namespace JSX {
|
|
66
|
+
// interface IntrinsicElements {
|
|
67
|
+
// 'combo-box': HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes
|
|
68
|
+
// 'box-option': HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes
|
|
69
|
+
// 'box-tag': HTMLAttributes<HTMLElement>
|
|
70
|
+
// }
|
|
71
|
+
// }
|
|
72
|
+
// }
|
|
73
|
+
//
|
|
74
|
+
//
|
|
75
|
+
// declare global {
|
|
76
|
+
// namespace JSX {
|
|
77
|
+
// interface IntrinsicElements {
|
|
78
|
+
// 'combo-box': ComboboxJsxAttributes;
|
|
79
|
+
// 'box-option': ComboboxOptionJsxAttributes;
|
|
80
|
+
// 'box-tag': HTMLElement;
|
|
81
|
+
// }
|
|
82
|
+
// }
|
|
83
|
+
// }
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { HTMLComboboxTagElement } from './HTML.combobox.tag.element.js';
|
|
2
2
|
export class ComboboxMarkup {
|
|
3
|
+
static scrollToTopOptions = { top: 0, behavior: 'smooth' };
|
|
3
4
|
#shadowRoot;
|
|
4
5
|
#internals;
|
|
5
6
|
tagsContainer = null;
|
|
@@ -9,6 +10,7 @@ export class ComboboxMarkup {
|
|
|
9
10
|
placeholder = null;
|
|
10
11
|
searchInput = null;
|
|
11
12
|
tagTemplate = null;
|
|
13
|
+
options;
|
|
12
14
|
connected = false;
|
|
13
15
|
constructor(shadowRoot, internals) {
|
|
14
16
|
this.#shadowRoot = shadowRoot;
|
|
@@ -35,23 +37,24 @@ export class ComboboxMarkup {
|
|
|
35
37
|
this.tagTemplate = doc.querySelector('box-tag');
|
|
36
38
|
this.connected = true;
|
|
37
39
|
}
|
|
40
|
+
invalidateOptionsCache() {
|
|
41
|
+
this.options = this.optionsContainer.querySelectorAll('box-option');
|
|
42
|
+
}
|
|
43
|
+
#timer = undefined;
|
|
38
44
|
sort(query) {
|
|
39
|
-
|
|
40
|
-
this
|
|
41
|
-
.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
option.style.order = "initial";
|
|
53
|
-
}
|
|
54
|
-
});
|
|
45
|
+
clearTimeout(this.#timer);
|
|
46
|
+
this.#timer = setTimeout(() => {
|
|
47
|
+
const regex = new RegExp(query.trim(), 'i');
|
|
48
|
+
this.options.forEach(option => {
|
|
49
|
+
if (!regex.test(option.textContent)) {
|
|
50
|
+
option.style.display = "none";
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
option.style.display = "flex";
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
this.dropdown.scrollTo(ComboboxMarkup.scrollToTopOptions);
|
|
57
|
+
}, 200);
|
|
55
58
|
}
|
|
56
59
|
disconnect() {
|
|
57
60
|
this.#shadowRoot.host.removeEventListener('focus', this.showDropdown);
|
|
@@ -92,23 +95,31 @@ export class ComboboxMarkup {
|
|
|
92
95
|
// @ts-ignore
|
|
93
96
|
this.dropdown.showPopover();
|
|
94
97
|
this.#internals.ariaExpanded = "true";
|
|
98
|
+
if (this.tagsContainer?.children.length === 0) {
|
|
99
|
+
this.searchInput?.focus();
|
|
100
|
+
}
|
|
101
|
+
this.placeholder.innerText = '';
|
|
95
102
|
}
|
|
96
103
|
catch {
|
|
97
104
|
this.#internals.ariaExpanded = "false";
|
|
98
105
|
}
|
|
99
106
|
};
|
|
100
|
-
|
|
101
|
-
if (event.composedPath().includes(this.#shadowRoot.host))
|
|
102
|
-
return;
|
|
107
|
+
closeDropdown() {
|
|
103
108
|
try {
|
|
104
109
|
// @ts-ignore
|
|
105
110
|
this.dropdown.hidePopover();
|
|
106
111
|
this.dropdown.style.display = 'none';
|
|
107
112
|
this.#internals.ariaExpanded = "false";
|
|
113
|
+
this.placeholder.innerText = this.#shadowRoot.host.getAttribute('placeholder');
|
|
108
114
|
}
|
|
109
|
-
catch {
|
|
115
|
+
catch (e) {
|
|
110
116
|
this.#internals.ariaExpanded = "true";
|
|
111
117
|
}
|
|
118
|
+
}
|
|
119
|
+
hideDropdown = (event) => {
|
|
120
|
+
if (event.composedPath().includes(this.#shadowRoot.host))
|
|
121
|
+
return;
|
|
122
|
+
this.closeDropdown();
|
|
112
123
|
};
|
|
113
124
|
createAndAppendTag(option) {
|
|
114
125
|
const value = option.value;
|
|
@@ -125,6 +136,10 @@ export class ComboboxMarkup {
|
|
|
125
136
|
if (relatedPart) {
|
|
126
137
|
const newNode = relatedPart.cloneNode(true);
|
|
127
138
|
newNode.part.add(...tokens);
|
|
139
|
+
const exportedParts = option.getAttribute('exportparts');
|
|
140
|
+
if (exportedParts) {
|
|
141
|
+
tag.part.add(exportedParts);
|
|
142
|
+
}
|
|
128
143
|
tag.replaceChild(newNode, node);
|
|
129
144
|
break;
|
|
130
145
|
}
|
|
@@ -194,14 +209,21 @@ export class ComboboxMarkup {
|
|
|
194
209
|
border-radius: inherit;
|
|
195
210
|
}
|
|
196
211
|
|
|
197
|
-
|
|
212
|
+
box-option {
|
|
198
213
|
display: flex;
|
|
199
214
|
border-radius: inherit;
|
|
200
215
|
content-visibility: auto;
|
|
216
|
+
cursor: pointer;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
box-option:hover {
|
|
220
|
+
background-color: color-mix(in srgb, Highlight, transparent 70%);
|
|
201
221
|
}
|
|
202
222
|
|
|
203
|
-
|
|
223
|
+
box-option[selected] {
|
|
204
224
|
background-color: Highlight;
|
|
225
|
+
cursor: not-allowed;
|
|
226
|
+
pointer-events: none;
|
|
205
227
|
}
|
|
206
228
|
|
|
207
229
|
[part="search-input"] {
|
|
@@ -212,6 +234,7 @@ export class ComboboxMarkup {
|
|
|
212
234
|
border-radius: inherit;
|
|
213
235
|
border-style: inherit;
|
|
214
236
|
border-width: inherit;
|
|
237
|
+
border-color: inherit;
|
|
215
238
|
padding: inherit;
|
|
216
239
|
}
|
|
217
240
|
|
|
@@ -223,6 +246,9 @@ export class ComboboxMarkup {
|
|
|
223
246
|
#placeholder {
|
|
224
247
|
text-align: left;
|
|
225
248
|
overflow: hidden;
|
|
249
|
+
padding-inline-start: 2px;
|
|
250
|
+
font-size: smaller;
|
|
251
|
+
color: dimgrey;
|
|
226
252
|
}
|
|
227
253
|
|
|
228
254
|
#tags:not(:empty) + #placeholder {
|
|
@@ -242,10 +268,9 @@ export class ComboboxMarkup {
|
|
|
242
268
|
border-radius: inherit;
|
|
243
269
|
}
|
|
244
270
|
|
|
245
|
-
[part
|
|
271
|
+
[part*="box-tag"] {
|
|
246
272
|
width: 100%;
|
|
247
273
|
justify-self: start;
|
|
248
|
-
font-size: inherit;
|
|
249
274
|
box-sizing: border-box;
|
|
250
275
|
display: flex;
|
|
251
276
|
align-items: center;
|
|
@@ -254,9 +279,11 @@ export class ComboboxMarkup {
|
|
|
254
279
|
padding-inline-end: .2rem;
|
|
255
280
|
background-color: transparent;
|
|
256
281
|
gap: 5px;
|
|
282
|
+
font-size: medium;
|
|
283
|
+
text-transform: uppercase;
|
|
257
284
|
}
|
|
258
285
|
|
|
259
|
-
:host([multiple]) [part
|
|
286
|
+
:host([multiple]) [part*="box-tag"] {
|
|
260
287
|
background-color: Highlight;
|
|
261
288
|
width: fit-content;
|
|
262
289
|
max-width: 100%;
|
|
@@ -311,6 +338,7 @@ export class ComboboxMarkup {
|
|
|
311
338
|
[part*="clear-all-button"]:hover,
|
|
312
339
|
[part*="tag-clear-button"]:hover {
|
|
313
340
|
color: ActiveText;
|
|
341
|
+
cursor: pointer;
|
|
314
342
|
}
|
|
315
343
|
|
|
316
344
|
[part*="clear-all-button"]:hover {
|
|
@@ -218,6 +218,7 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
218
218
|
}
|
|
219
219
|
});
|
|
220
220
|
});
|
|
221
|
+
this.#markup.invalidateOptionsCache();
|
|
221
222
|
this.#setValidityAndFormValue();
|
|
222
223
|
};
|
|
223
224
|
#selectOption(option) {
|
|
@@ -228,6 +229,9 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
228
229
|
option.toggleAttribute('selected', true);
|
|
229
230
|
const control = this.#markup.createAndAppendTag(option);
|
|
230
231
|
control.addEventListener('click', this.#onClickTagClearButton);
|
|
232
|
+
if (!this.multiple) {
|
|
233
|
+
this.#markup.closeDropdown();
|
|
234
|
+
}
|
|
231
235
|
}
|
|
232
236
|
#onSelectOption = (event) => {
|
|
233
237
|
let option;
|
|
@@ -249,6 +253,9 @@ export class HTMLComboboxElement extends HTMLElement {
|
|
|
249
253
|
this.#values.clear();
|
|
250
254
|
this.#markup.tagsContainer.replaceChildren();
|
|
251
255
|
}
|
|
256
|
+
if (!this.multiple) {
|
|
257
|
+
event.stopPropagation();
|
|
258
|
+
}
|
|
252
259
|
this.#selectOption(option);
|
|
253
260
|
this.#setValidityAndFormValue();
|
|
254
261
|
this.dispatchEvent(new Event('change'));
|
|
@@ -13,7 +13,6 @@ export class HTMLComboboxOptionElement extends HTMLElement {
|
|
|
13
13
|
const text = this.textContent.trim();
|
|
14
14
|
const hasText = text.length > 0;
|
|
15
15
|
if (!value && !label) {
|
|
16
|
-
console.log('!value && !label');
|
|
17
16
|
if (hasNoMarkup && hasText) {
|
|
18
17
|
this.value = text;
|
|
19
18
|
this.label = text;
|
package/dist/esm/index.js
CHANGED
|
@@ -1,3 +1,67 @@
|
|
|
1
1
|
/// <reference types="solid-js" />
|
|
2
2
|
/// <reference types="preact" />
|
|
3
|
+
/// <reference types="react" />
|
|
4
|
+
/// <reference types="vue" />
|
|
3
5
|
export * from './combobox/index.js';
|
|
6
|
+
// declare global {
|
|
7
|
+
// namespace React {
|
|
8
|
+
// namespace JSX {
|
|
9
|
+
// interface IntrinsicElements {
|
|
10
|
+
// 'combo-box': React.DetailedHTMLProps<Omit<React.HTMLAttributes<HTMLComboboxElement>, 'defaultValue'>,
|
|
11
|
+
// HTMLComboboxElement
|
|
12
|
+
// > & ComboboxJsxAttributes;
|
|
13
|
+
//
|
|
14
|
+
// 'box-option': React.DetailedHTMLProps<
|
|
15
|
+
// React.HTMLAttributes<HTMLComboboxOptionElement>,
|
|
16
|
+
// HTMLComboboxOptionElement>
|
|
17
|
+
// & ComboboxOptionJsxAttributes;
|
|
18
|
+
//
|
|
19
|
+
// 'box-tag': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxTagElement>, HTMLComboboxTagElement>;
|
|
20
|
+
// }
|
|
21
|
+
// }
|
|
22
|
+
// }
|
|
23
|
+
//
|
|
24
|
+
//
|
|
25
|
+
// namespace preact {
|
|
26
|
+
// namespace JSX {
|
|
27
|
+
// interface IntrinsicElements {
|
|
28
|
+
// 'combo-box': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes;
|
|
29
|
+
// 'box-option': preact.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes;
|
|
30
|
+
// 'box-tag': preact.HTMLAttributes<HTMLComboboxTagElement>;
|
|
31
|
+
// }
|
|
32
|
+
// }
|
|
33
|
+
// }
|
|
34
|
+
//
|
|
35
|
+
// }
|
|
36
|
+
//
|
|
37
|
+
// declare module 'preact' {
|
|
38
|
+
// namespace JSX {
|
|
39
|
+
// interface IntrinsicElements {
|
|
40
|
+
// 'combo-box': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes;
|
|
41
|
+
// 'box-option': preact.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes;
|
|
42
|
+
// 'box-tag': preact.HTMLAttributes<HTMLComboboxTagElement>;
|
|
43
|
+
// }
|
|
44
|
+
// }
|
|
45
|
+
// }
|
|
46
|
+
//
|
|
47
|
+
// // Solid
|
|
48
|
+
// declare module 'solid-js' {
|
|
49
|
+
// namespace JSX {
|
|
50
|
+
// interface IntrinsicElements {
|
|
51
|
+
// 'combo-box': HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes
|
|
52
|
+
// 'box-option': HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes
|
|
53
|
+
// 'box-tag': HTMLAttributes<HTMLElement>
|
|
54
|
+
// }
|
|
55
|
+
// }
|
|
56
|
+
// }
|
|
57
|
+
//
|
|
58
|
+
//
|
|
59
|
+
// declare global {
|
|
60
|
+
// namespace JSX {
|
|
61
|
+
// interface IntrinsicElements {
|
|
62
|
+
// 'combo-box': ComboboxJsxAttributes;
|
|
63
|
+
// 'box-option': ComboboxOptionJsxAttributes;
|
|
64
|
+
// 'box-tag': HTMLElement;
|
|
65
|
+
// }
|
|
66
|
+
// }
|
|
67
|
+
// }
|
|
@@ -2,6 +2,7 @@ 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;
|
|
5
6
|
tagsContainer: HTMLDivElement | null;
|
|
6
7
|
optionsContainer: HTMLDivElement | null;
|
|
7
8
|
clearAllButton: HTMLButtonElement | null;
|
|
@@ -9,14 +10,17 @@ export declare class ComboboxMarkup {
|
|
|
9
10
|
placeholder: HTMLDivElement | null;
|
|
10
11
|
searchInput: HTMLInputElement | null;
|
|
11
12
|
tagTemplate: HTMLComboboxTagElement | null;
|
|
13
|
+
options: NodeListOf<HTMLComboboxOptionElement> | null;
|
|
12
14
|
connected: boolean;
|
|
13
15
|
constructor(shadowRoot: ShadowRoot, internals: ElementInternals);
|
|
14
16
|
connect(): void;
|
|
17
|
+
invalidateOptionsCache(): void;
|
|
15
18
|
sort(query: string): void;
|
|
16
19
|
disconnect(): void;
|
|
17
20
|
onPageScroll: () => void;
|
|
18
21
|
setDropdownPosition(rect: DOMRect): void;
|
|
19
22
|
showDropdown: () => void;
|
|
23
|
+
closeDropdown(): void;
|
|
20
24
|
hideDropdown: (event: Event) => void;
|
|
21
25
|
createAndAppendTag(option: HTMLComboboxOptionElement): HTMLButtonElement;
|
|
22
26
|
getTagByValue(value: string): HTMLComboboxTagElement;
|
|
@@ -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;;IACzB,MAAM,CAAC,kBAAkB,EAAE,eAAe,CAAkC;IAG5E,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,WAkMlB;CACF"}
|
|
@@ -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,gBAAgB,cAAgD;IACvE,MAAM,CAAC,iBAAiB,cAA4F;IACpH,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,EAMtB;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;IAED,IAAI,WAAW,WAEd;IACD,IAAI,WAAW,CAAC,KAAK,QAAA,EAMpB;IAID,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAYrC,eAAe,CAAC,IAAI,EAAE,MAAM;IAW5B,cAAc;IAId,aAAa;IAIb,iBAAiB,CAAC,OAAO,EAAE,MAAM;
|
|
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,gBAAgB,cAAgD;IACvE,MAAM,CAAC,iBAAiB,cAA4F;IACpH,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,EAMtB;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;IAED,IAAI,WAAW,WAEd;IACD,IAAI,WAAW,CAAC,KAAK,QAAA,EAMpB;IAID,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAYrC,eAAe,CAAC,IAAI,EAAE,MAAM;IAW5B,cAAc;IAId,aAAa;IAIb,iBAAiB,CAAC,OAAO,EAAE,MAAM;IA+HjC,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE;IAIzC,MAAM,CAAC,8BAA8B;CAoBtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HTML.combobox.option.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.option.element.ts"],"names":[],"mappings":"AAEA,qBAAa,yBAA0B,SAAQ,WAAW;;IACxD,MAAM,CAAC,iBAAiB,cAAyB;IACjD,MAAM,CAAC,gBAAgB,cAA+B;IAEtD,iBAAiB;
|
|
1
|
+
{"version":3,"file":"HTML.combobox.option.element.d.ts","sourceRoot":"","sources":["../../../src/combobox/HTML.combobox.option.element.ts"],"names":[],"mappings":"AAEA,qBAAa,yBAA0B,SAAQ,WAAW;;IACxD,MAAM,CAAC,iBAAiB,cAAyB;IACjD,MAAM,CAAC,gBAAgB,cAA+B;IAEtD,iBAAiB;IA0CjB,IAAI,KAAK,WAER;IACD,IAAI,KAAK,CAAC,KAAK,QAAA,EAEd;IAED,IAAI,KAAK,WAER;IACD,IAAI,KAAK,CAAC,KAAK,QAAA,EAEd;IAED,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,CAAC,KAAK,SAAA,EAEjB;IAcD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAYxC,eAAe,CAAC,IAAI,EAAE,MAAM;CAU7B"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -126,49 +126,88 @@ interface ComboboxOptionJsxAttributes {
|
|
|
126
126
|
selected?: boolean;
|
|
127
127
|
}
|
|
128
128
|
declare global {
|
|
129
|
+
namespace JSX {
|
|
130
|
+
interface IntrinsicElements {
|
|
131
|
+
'combo-box': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes, HTMLComboboxElement>;
|
|
132
|
+
'box-option': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes, HTMLComboboxOptionElement>;
|
|
133
|
+
'box-tag': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxTagElement>, HTMLComboboxTagElement>;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
129
136
|
namespace React {
|
|
130
137
|
namespace JSX {
|
|
131
138
|
interface IntrinsicElements {
|
|
132
|
-
'combo-box': React.DetailedHTMLProps<
|
|
133
|
-
'box-option': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxOptionElement
|
|
139
|
+
'combo-box': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes, HTMLComboboxElement>;
|
|
140
|
+
'box-option': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes, HTMLComboboxOptionElement>;
|
|
134
141
|
'box-tag': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxTagElement>, HTMLComboboxTagElement>;
|
|
135
142
|
}
|
|
136
143
|
}
|
|
137
144
|
}
|
|
138
|
-
namespace
|
|
145
|
+
namespace Solid {
|
|
146
|
+
namespace JSX {
|
|
147
|
+
interface IntrinsicElements {
|
|
148
|
+
'combo-box': any;
|
|
149
|
+
'box-option': any;
|
|
150
|
+
'box-tag': any;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
namespace Vue {
|
|
139
155
|
namespace JSX {
|
|
140
156
|
interface IntrinsicElements {
|
|
141
|
-
'combo-box':
|
|
142
|
-
'box-option':
|
|
143
|
-
'box-tag':
|
|
157
|
+
'combo-box': any;
|
|
158
|
+
'box-option': any;
|
|
159
|
+
'box-tag': any;
|
|
144
160
|
}
|
|
145
161
|
}
|
|
146
162
|
}
|
|
163
|
+
namespace JSXInternal {
|
|
164
|
+
interface IntrinsicElements {
|
|
165
|
+
'combo-box': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes;
|
|
166
|
+
'box-option': preact.HTMLAttributes<HTMLComboboxElement> & ComboboxOptionJsxAttributes;
|
|
167
|
+
'box-tag': preact.HTMLAttributes<HTMLComboboxTagElement> & {};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
declare module 'react' {
|
|
172
|
+
namespace JSX {
|
|
173
|
+
interface IntrinsicElements {
|
|
174
|
+
'combo-box': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxElement> & ComboboxJsxAttributes, HTMLComboboxElement>;
|
|
175
|
+
'box-option': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxOptionElement> & ComboboxOptionJsxAttributes, HTMLComboboxOptionElement>;
|
|
176
|
+
'box-tag': React.DetailedHTMLProps<React.HTMLAttributes<HTMLComboboxTagElement>, HTMLComboboxTagElement>;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
147
179
|
}
|
|
148
180
|
declare module 'preact' {
|
|
149
181
|
namespace JSX {
|
|
150
182
|
interface IntrinsicElements {
|
|
151
|
-
'combo-box':
|
|
152
|
-
'box-option':
|
|
153
|
-
'box-tag':
|
|
183
|
+
'combo-box': any;
|
|
184
|
+
'box-option': any;
|
|
185
|
+
'box-tag': any;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
namespace JSXInternal {
|
|
189
|
+
interface IntrinsicElements {
|
|
190
|
+
'combo-box': any;
|
|
191
|
+
'box-option': any;
|
|
192
|
+
'box-tag': any;
|
|
154
193
|
}
|
|
155
194
|
}
|
|
156
195
|
}
|
|
157
196
|
declare module 'solid-js' {
|
|
158
197
|
namespace JSX {
|
|
159
198
|
interface IntrinsicElements {
|
|
160
|
-
'combo-box':
|
|
161
|
-
'box-option':
|
|
162
|
-
'box-tag':
|
|
199
|
+
'combo-box': any;
|
|
200
|
+
'box-option': any;
|
|
201
|
+
'box-tag': any;
|
|
163
202
|
}
|
|
164
203
|
}
|
|
165
204
|
}
|
|
166
|
-
declare
|
|
205
|
+
declare module 'vue' {
|
|
167
206
|
namespace JSX {
|
|
168
207
|
interface IntrinsicElements {
|
|
169
|
-
'combo-box':
|
|
170
|
-
'box-option':
|
|
171
|
-
'box-tag':
|
|
208
|
+
'combo-box': any;
|
|
209
|
+
'box-option': any;
|
|
210
|
+
'box-tag': any;
|
|
172
211
|
}
|
|
173
212
|
}
|
|
174
213
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,qBAAqB,CAAC;AAEpC,UAAU,sBAAuB,SAAQ,WAAW;CAAG;AAEvD,UAAU,yBAA0B,SAAQ,iBAAiB;IAC3D,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,mBAAoB,SAAQ,iBAAiB;IACrD,+CAA+C;IAC/C,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,QAAQ,EAAE,OAAO,CAAC;IAElB;;mGAE+F;IAC/F,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;SAKK;IACL,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;;SAOK;IACL,SAAS,EAAE,OAAO,CAAC;IAEnB;;;;;;SAMK;IACL,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;SAKK;IACL,UAAU,EAAE,OAAO,CAAC;IAEpB,eAAe,EAAE,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IAI7D,gBAAgB,CAAC,CAAC,SAAS,MAAM,mBAAmB,EAClD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,GAAG,EACxE,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,GAC1C,IAAI,CAAC;IAGR,gBAAgB,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC/C,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,GAAG,EACrE,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,GAC1C,IAAI,CAAC;IAGR,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,EAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,GAC1C,IAAI,CAAC;IAGR,mBAAmB,CAAC,CAAC,SAAS,MAAM,mBAAmB,EACrD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,GAAG,EACxE,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,GACvC,IAAI,CAAC;IAER,mBAAmB,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAClD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,GAAG,EACrE,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,GACvC,IAAI,CAAC;IAER,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,EAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,GACvC,IAAI,CAAC;CACT;AAED,UAAU,aAAc,SAAQ,KAAK;IACnC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;CAC7C;AAED,UAAU,kBAAmB,SAAQ,UAAU;IAC7C,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;CAC7C;AAED,UAAU,kBAAmB,SAAQ,UAAU;IAC7C,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;CACtC;AAED,UAAU,gBAAiB,SAAQ,mBAAmB;IACpD,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,kBAAkB,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,aAAa,CAAC;IAEzB,iBAAiB,EAAE,aAAa,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;CAC9B;AAQD,UAAU,qBAAqB;IAC7B;;;;;SAKK;IACL,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;0IAIsI;IACtI,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;gKAE4J;IAC5J,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;4GAIwG;IACxG,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;+IAI2I;IAC3I,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;sGAIkG;IAClG,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;sGAIkG;IAClG,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,2BAA2B;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAGD,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;YAC7H,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,GAAG,2BAA2B,EAAE,yBAAyB,CAAC,CAAC;YAChJ,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC,CAAC;SAC1G;KACF;IAGD,UAAU,KAAK,CAAC;QACd,UAAU,GAAG,CAAC;YACZ,UAAU,iBAAiB;gBACzB,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;gBAC7H,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,GAAG,2BAA2B,EAAE,yBAAyB,CAAC,CAAC;gBAChJ,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC,CAAC;aAC1G;SACF;KACF;IAID,UAAU,KAAK,CAAC;QACd,UAAU,GAAG,CAAC;YACZ,UAAU,iBAAiB;gBACzB,WAAW,EAAE,GAAG,CAAC;gBACjB,YAAY,EAAE,GAAG,CAAC;gBAClB,SAAS,EAAE,GAAG,CAAC;aAChB;SACF;KACF;IAGD,UAAU,GAAG,CAAC;QACZ,UAAU,GAAG,CAAC;YACZ,UAAU,iBAAiB;gBACzB,WAAW,EAAE,GAAG,CAAC;gBACjB,YAAY,EAAE,GAAG,CAAC;gBAClB,SAAS,EAAE,GAAG,CAAC;aAChB;SACF;KACF;IAID,UAAU,WAAW,CAAC;QACpB,UAAU,iBAAiB;YACzB,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,CAAA;YAC/E,YAAY,EAAG,MAAM,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,2BAA2B,CAAA;YACvF,SAAS,EAAG,MAAM,CAAC,cAAc,CAAC,sBAAsB,CAAC,GAAG,EAAE,CAAA;SAC/D;KACF;CAGF;AAGD,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;YAC7H,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,GAAG,2BAA2B,EAAE,yBAAyB,CAAC,CAAC;YAChJ,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC,CAAC;SAC1G;KACF;CACF;AAED,OAAO,QAAQ,QAAQ,CAAC;IACtB,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,WAAW,EAAE,GAAG,CAAC;YACjB,YAAY,EAAE,GAAG,CAAC;YAClB,SAAS,EAAE,GAAG,CAAC;SAChB;KACF;IACD,UAAU,WAAW,CAAC;QACpB,UAAU,iBAAiB;YACzB,WAAW,EAAE,GAAG,CAAC;YACjB,YAAY,EAAE,GAAG,CAAC;YAClB,SAAS,EAAE,GAAG,CAAC;SAChB;KACF;CACF;AAED,OAAO,QAAQ,UAAU,CAAC;IACxB,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,WAAW,EAAE,GAAG,CAAC;YACjB,YAAY,EAAE,GAAG,CAAC;YAClB,SAAS,EAAE,GAAG,CAAC;SAChB;KACF;CACF;AAED,OAAO,QAAQ,KAAK,CAAC;IACnB,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,WAAW,EAAE,GAAG,CAAC;YACjB,YAAY,EAAE,GAAG,CAAC;YAClB,SAAS,EAAE,GAAG,CAAC;SAChB;KACF;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kr-elements",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.30",
|
|
4
4
|
"description": "Custom elements",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"solid-js": "^1.9.11",
|
|
32
32
|
"tsx": "^4.19.2",
|
|
33
33
|
"typescript": "5.9.3",
|
|
34
|
+
"vue": "^3.5.28",
|
|
34
35
|
"xml-splitter": "1.2.1"
|
|
35
36
|
},
|
|
36
37
|
"sideEffect": false,
|