@lukso/web-components 1.72.0 → 1.74.0
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/components/index.cjs +3 -3
- package/dist/components/index.js +3 -3
- package/dist/components/lukso-button/index.cjs +1 -1
- package/dist/components/lukso-button/index.d.ts +2 -2
- package/dist/components/lukso-button/index.d.ts.map +1 -1
- package/dist/components/lukso-button/index.js +1 -1
- package/dist/components/lukso-card/index.cjs +3 -3
- package/dist/components/lukso-card/index.js +3 -3
- package/dist/components/lukso-checkbox/index.cjs +1 -1
- package/dist/components/lukso-checkbox/index.js +1 -1
- package/dist/components/lukso-footer/index.cjs +1 -1
- package/dist/components/lukso-footer/index.js +1 -1
- package/dist/components/lukso-icon/icons/database.d.ts +3 -0
- package/dist/components/lukso-icon/icons/database.d.ts.map +1 -0
- package/dist/components/lukso-icon/icons/empty-outline.d.ts +3 -0
- package/dist/components/lukso-icon/icons/empty-outline.d.ts.map +1 -0
- package/dist/components/lukso-icon/index.cjs +61 -3
- package/dist/components/lukso-icon/index.d.ts.map +1 -1
- package/dist/components/lukso-icon/index.js +61 -3
- package/dist/components/lukso-image/index.cjs +2 -2
- package/dist/components/lukso-image/index.js +2 -2
- package/dist/components/lukso-input/index.cjs +170 -43
- package/dist/components/lukso-input/index.d.ts +11 -6
- package/dist/components/lukso-input/index.d.ts.map +1 -1
- package/dist/components/lukso-input/index.js +170 -43
- package/dist/components/lukso-input/lukso-input.stories.d.ts +5 -1
- package/dist/components/lukso-input/lukso-input.stories.d.ts.map +1 -1
- package/dist/components/lukso-modal/index.cjs +1 -1
- package/dist/components/lukso-modal/index.js +1 -1
- package/dist/components/lukso-navbar/index.cjs +3 -3
- package/dist/components/lukso-navbar/index.js +3 -3
- package/dist/components/lukso-profile/index.cjs +2 -2
- package/dist/components/lukso-profile/index.js +2 -2
- package/dist/components/lukso-progress/index.cjs +2 -2
- package/dist/components/lukso-progress/index.js +2 -2
- package/dist/components/lukso-sanitize/index.cjs +1 -1
- package/dist/components/lukso-sanitize/index.js +1 -1
- package/dist/components/lukso-search/index.cjs +105 -139
- package/dist/components/lukso-search/index.d.ts +6 -12
- package/dist/components/lukso-search/index.d.ts.map +1 -1
- package/dist/components/lukso-search/index.js +101 -135
- package/dist/components/lukso-search/lukso-search.stories.d.ts +2 -0
- package/dist/components/lukso-search/lukso-search.stories.d.ts.map +1 -1
- package/dist/components/lukso-select/index.cjs +234 -45
- package/dist/components/lukso-select/index.d.ts +18 -5
- package/dist/components/lukso-select/index.d.ts.map +1 -1
- package/dist/components/lukso-select/index.js +234 -45
- package/dist/components/lukso-select/lukso-select.stories.d.ts +12 -0
- package/dist/components/lukso-select/lukso-select.stories.d.ts.map +1 -1
- package/dist/components/lukso-share/index.cjs +1 -1
- package/dist/components/lukso-share/index.js +1 -1
- package/dist/components/lukso-switch/index.cjs +2 -2
- package/dist/components/lukso-switch/index.js +2 -2
- package/dist/components/lukso-tag/index.cjs +2 -2
- package/dist/components/lukso-tag/index.js +2 -2
- package/dist/components/lukso-terms/index.cjs +2 -2
- package/dist/components/lukso-terms/index.js +2 -2
- package/dist/components/lukso-test/index.cjs +1 -1
- package/dist/components/lukso-test/index.js +1 -1
- package/dist/components/lukso-tooltip/index.cjs +2 -2
- package/dist/components/lukso-tooltip/index.js +2 -2
- package/dist/components/lukso-username/index.cjs +2 -2
- package/dist/components/lukso-username/index.js +2 -2
- package/dist/components/lukso-wizard/index.cjs +1 -1
- package/dist/components/lukso-wizard/index.js +1 -1
- package/dist/index-09db75ee.js +39 -0
- package/dist/index-9b930f6a.cjs +46 -0
- package/dist/{index-59f199b0.cjs → index-a1e4b7d4.cjs} +1 -1
- package/dist/{index-8c727f4c.js → index-dfdfb6fe.js} +1 -1
- package/dist/index.cjs +3 -3
- package/dist/index.js +3 -3
- package/dist/shared/tailwind-element/index.cjs +1 -1
- package/dist/shared/tailwind-element/index.js +1 -1
- package/dist/shared/types.d.ts +1 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/{style-map-c66282ea.js → style-map-3669b30c.js} +1 -1
- package/dist/{style-map-6337084a.cjs → style-map-ebf3a8d2.cjs} +1 -1
- package/dist/styles/main.css +3 -0
- package/dist/styles/main.css.map +1 -1
- package/package.json +3 -2
- package/tools/sass/typography.scss +4 -0
- package/tools/styles/main.css +3 -0
- package/dist/index-25503efb.cjs +0 -46
- package/dist/index-bf6e0a1d.js +0 -39
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { T as TailwindStyledElement, x, A } from '../../index-
|
|
1
|
+
import { T as TailwindStyledElement, x, A } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { t } from '../../state-b9ca4e74.js';
|
|
4
4
|
import { c as ce } from '../../index-ca8e900d.js';
|
|
@@ -6,11 +6,73 @@ import '../lukso-icon/index.js';
|
|
|
6
6
|
import '../lukso-profile/index.js';
|
|
7
7
|
import '../lukso-username/index.js';
|
|
8
8
|
import '../../bundle-mjs-fbc6e2a8.js';
|
|
9
|
-
import '../../style-map-
|
|
9
|
+
import '../../style-map-3669b30c.js';
|
|
10
10
|
import '../../directive-2bb7789e.js';
|
|
11
11
|
import '../lukso-image/index.js';
|
|
12
12
|
import '../../index-5e194caf.js';
|
|
13
|
-
import '../../index-
|
|
13
|
+
import '../../index-dfdfb6fe.js';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Convert array of 16 byte values to UUID string format of the form:
|
|
17
|
+
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
18
|
+
*/
|
|
19
|
+
var byteToHex = [];
|
|
20
|
+
for (var i = 0; i < 256; ++i) {
|
|
21
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
|
22
|
+
}
|
|
23
|
+
function unsafeStringify(arr, offset = 0) {
|
|
24
|
+
// Note: Be careful editing this code! It's been tuned for performance
|
|
25
|
+
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
26
|
+
//
|
|
27
|
+
// Note to future-self: No, you can't remove the `toLowerCase()` call.
|
|
28
|
+
// REF: https://github.com/uuidjs/uuid/pull/677#issuecomment-1757351351
|
|
29
|
+
return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
33
|
+
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
34
|
+
// generators (like Math.random()).
|
|
35
|
+
|
|
36
|
+
var getRandomValues;
|
|
37
|
+
var rnds8 = new Uint8Array(16);
|
|
38
|
+
function rng() {
|
|
39
|
+
// lazy load so that environments that need to polyfill have a chance to do so
|
|
40
|
+
if (!getRandomValues) {
|
|
41
|
+
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
|
|
42
|
+
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);
|
|
43
|
+
if (!getRandomValues) {
|
|
44
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return getRandomValues(rnds8);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
var randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
|
|
51
|
+
const native = {
|
|
52
|
+
randomUUID
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
function v4(options, buf, offset) {
|
|
56
|
+
if (native.randomUUID && !buf && !options) {
|
|
57
|
+
return native.randomUUID();
|
|
58
|
+
}
|
|
59
|
+
options = options || {};
|
|
60
|
+
var rnds = options.random || (options.rng || rng)();
|
|
61
|
+
|
|
62
|
+
// Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
63
|
+
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
64
|
+
rnds[8] = rnds[8] & 0x3f | 0x80;
|
|
65
|
+
|
|
66
|
+
// Copy bytes to buffer, if provided
|
|
67
|
+
if (buf) {
|
|
68
|
+
offset = offset || 0;
|
|
69
|
+
for (var i = 0; i < 16; ++i) {
|
|
70
|
+
buf[offset + i] = rnds[i];
|
|
71
|
+
}
|
|
72
|
+
return buf;
|
|
73
|
+
}
|
|
74
|
+
return unsafeStringify(rnds);
|
|
75
|
+
}
|
|
14
76
|
|
|
15
77
|
const style = ":host {\n\n display: inline-flex\n}\n\n:host([is-full-width]) {\n\n display: flex;\n\n width: 100%\n}";
|
|
16
78
|
|
|
@@ -27,7 +89,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
27
89
|
};
|
|
28
90
|
let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
29
91
|
constructor() {
|
|
30
|
-
super(
|
|
92
|
+
super();
|
|
31
93
|
this.value = "";
|
|
32
94
|
this.placeholder = "";
|
|
33
95
|
this.label = "";
|
|
@@ -43,61 +105,119 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
43
105
|
this.isOpen = false;
|
|
44
106
|
this.openTop = false;
|
|
45
107
|
this.isLargeIcon = false;
|
|
108
|
+
this.isRight = false;
|
|
109
|
+
this.size = "medium";
|
|
110
|
+
this.showSelectionCounter = false;
|
|
46
111
|
this.optionsParsed = [];
|
|
47
112
|
this.valueParsed = void 0;
|
|
48
113
|
this.inputStyles = ce({
|
|
49
|
-
base: `bg-neutral-100
|
|
50
|
-
border border-solid
|
|
51
|
-
outline-none transition transition-all duration-150 appearance-none
|
|
114
|
+
base: `bg-neutral-100
|
|
115
|
+
border border-solid placeholder:text-neutral-70 select-none whitespace-nowrap
|
|
116
|
+
outline-none transition transition-all duration-150 appearance-none
|
|
52
117
|
text-neutral-20 cursor-pointer border-neutral-90 group-hover:border-neutral-35
|
|
53
118
|
flex items-center`,
|
|
54
119
|
variants: {
|
|
55
120
|
isFullWidth: {
|
|
56
|
-
true:
|
|
121
|
+
true: "w-full"
|
|
57
122
|
},
|
|
58
123
|
isDisabled: {
|
|
59
|
-
true:
|
|
124
|
+
true: "cursor-not-allowed text-neutral-60 group-hover:border-neutral-90"
|
|
60
125
|
},
|
|
61
126
|
hasError: {
|
|
62
|
-
true:
|
|
127
|
+
true: "border-red-85 group-hover:border-red-65"
|
|
63
128
|
},
|
|
64
129
|
borderless: {
|
|
65
|
-
true:
|
|
130
|
+
true: "border-0"
|
|
131
|
+
},
|
|
132
|
+
size: {
|
|
133
|
+
small: "h-[28px] px-3 py-2 pr-8 paragraph-inter-12-regular rounded-8",
|
|
134
|
+
medium: "h-[48px] px-4 py-3 pr-11 paragraph-inter-14-regular rounded-12"
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
this.counterStyles = ce({
|
|
139
|
+
base: "border border-neutral-20",
|
|
140
|
+
variants: {
|
|
141
|
+
isDisabled: {
|
|
142
|
+
true: "opacity-60 cursor-not-allowed"
|
|
143
|
+
},
|
|
144
|
+
size: {
|
|
145
|
+
small: "paragraph-inter-10-semi-bold rounded-4 py-[1px] px-[5px] ml-1.5",
|
|
146
|
+
medium: "paragraph-inter-14-semi-bold rounded-8 py-[2px] px-[10px] ml-3"
|
|
66
147
|
}
|
|
67
148
|
}
|
|
68
149
|
});
|
|
69
150
|
this.dropdownWrapperStyles = ce({
|
|
70
|
-
base: `bg-neutral-100 border w-
|
|
71
|
-
flex absolute flex-col gap-1 overflow-y-auto max-h-64
|
|
151
|
+
base: `bg-neutral-100 border w-auto border-neutral-90 shadow-1xl z-50
|
|
152
|
+
flex absolute flex-col gap-1 overflow-y-auto max-h-64 `,
|
|
72
153
|
variants: {
|
|
73
154
|
openTop: {
|
|
74
|
-
true:
|
|
155
|
+
true: "bottom-[48px] mb-2 mt-0"
|
|
156
|
+
},
|
|
157
|
+
size: {
|
|
158
|
+
small: "rounded-8 p-2 mt-1 max-w-[200px] min-w-[120px]",
|
|
159
|
+
medium: "rounded-12 p-3 mt-2 max-w-[300px] min-w-[200px]"
|
|
160
|
+
},
|
|
161
|
+
isRight: {
|
|
162
|
+
true: "right-0"
|
|
75
163
|
}
|
|
76
164
|
}
|
|
77
165
|
});
|
|
78
166
|
this.optionsStyles = ce({
|
|
79
|
-
base: `
|
|
80
|
-
whitespace-nowrap hover:bg-neutral-98 flex items-center`,
|
|
167
|
+
base: `text-neutral-20 cursor-pointer
|
|
168
|
+
whitespace-nowrap hover:bg-neutral-98 flex items-center truncate`,
|
|
81
169
|
variants: {
|
|
82
170
|
isSelected: {
|
|
83
|
-
true:
|
|
171
|
+
true: "bg-neutral-95 hover:bg-neutral-95"
|
|
84
172
|
},
|
|
85
173
|
isActive: {
|
|
86
|
-
true:
|
|
174
|
+
true: "bg-neutral-98"
|
|
175
|
+
},
|
|
176
|
+
isGroup: {
|
|
177
|
+
true: ""
|
|
178
|
+
},
|
|
179
|
+
size: {
|
|
180
|
+
small: "paragraph-inter-12-regular rounded-4 py-1 px-2 min-h-[28px]",
|
|
181
|
+
medium: "paragraph-inter-14-regular rounded-8 p-2 min-h-[38px]"
|
|
182
|
+
},
|
|
183
|
+
isDisabled: {
|
|
184
|
+
true: "opacity-60 cursor-not-allowed"
|
|
185
|
+
},
|
|
186
|
+
isReadonly: {
|
|
187
|
+
true: "cursor-not-allowed"
|
|
87
188
|
}
|
|
88
|
-
}
|
|
189
|
+
},
|
|
190
|
+
compoundVariants: [
|
|
191
|
+
{
|
|
192
|
+
isGroup: true,
|
|
193
|
+
size: "small",
|
|
194
|
+
class: "pl-3"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
isGroup: true,
|
|
198
|
+
size: "medium",
|
|
199
|
+
class: "pl-4"
|
|
200
|
+
}
|
|
201
|
+
]
|
|
89
202
|
});
|
|
90
203
|
this.iconStyles = ce({
|
|
91
|
-
base:
|
|
204
|
+
base: "absolute right-0 transition cursor-pointer",
|
|
92
205
|
variants: {
|
|
93
206
|
isDisabled: {
|
|
94
|
-
true:
|
|
207
|
+
true: "opacity-60 cursor-not-allowed"
|
|
95
208
|
},
|
|
96
209
|
isOpen: {
|
|
97
|
-
true:
|
|
210
|
+
true: "rotate-180"
|
|
211
|
+
},
|
|
212
|
+
size: {
|
|
213
|
+
small: "mr-2",
|
|
214
|
+
medium: "mr-3"
|
|
98
215
|
}
|
|
99
216
|
}
|
|
100
217
|
});
|
|
218
|
+
if (!this.id) {
|
|
219
|
+
this.id = v4();
|
|
220
|
+
}
|
|
101
221
|
}
|
|
102
222
|
connectedCallback() {
|
|
103
223
|
super.connectedCallback();
|
|
@@ -134,7 +254,8 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
134
254
|
}
|
|
135
255
|
if (changedProperties.has("value") && !!this.value) {
|
|
136
256
|
try {
|
|
137
|
-
|
|
257
|
+
const value = JSON.parse(this.value);
|
|
258
|
+
this.valueParsed = Array.isArray(value) ? value : [value];
|
|
138
259
|
} catch (error) {
|
|
139
260
|
console.warn("Could not parse value", error);
|
|
140
261
|
}
|
|
@@ -145,7 +266,8 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
145
266
|
isFullWidth: this.isFullWidth,
|
|
146
267
|
isDisabled: this.isDisabled,
|
|
147
268
|
hasError: !!this.error,
|
|
148
|
-
borderless: this.borderless
|
|
269
|
+
borderless: this.borderless,
|
|
270
|
+
size: this.size
|
|
149
271
|
});
|
|
150
272
|
return x`
|
|
151
273
|
<div
|
|
@@ -155,10 +277,19 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
155
277
|
@blur=${this.handleBlur}
|
|
156
278
|
@click=${this.handleClick}
|
|
157
279
|
>
|
|
158
|
-
${this.
|
|
280
|
+
${this.placeholder ? this.placeholder : A}
|
|
281
|
+
${!this.placeholder && this.valueParsed?.length ? this.selectedValueTemplate() : A}
|
|
282
|
+
${this.showSelectionCounter && this.valueParsed?.length ? this.selectedOptionsCounterTemplate() : A}
|
|
159
283
|
</div>
|
|
160
284
|
`;
|
|
161
285
|
}
|
|
286
|
+
selectedOptionsCounterTemplate() {
|
|
287
|
+
const counterStyles = this.counterStyles({
|
|
288
|
+
isDisabled: this.isDisabled,
|
|
289
|
+
size: this.size
|
|
290
|
+
});
|
|
291
|
+
return x`<div class=${counterStyles}>${this.valueParsed?.length}</div>`;
|
|
292
|
+
}
|
|
162
293
|
labelTemplate() {
|
|
163
294
|
return x`
|
|
164
295
|
<div class="heading-inter-14-bold text-neutral-20 pb-2 block">
|
|
@@ -182,7 +313,9 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
182
313
|
const optionTemplates = [];
|
|
183
314
|
for (const option of Object.entries(this.optionsParsed)) {
|
|
184
315
|
const index = Number(option[0]);
|
|
185
|
-
if ("
|
|
316
|
+
if ("values" in option[1]) {
|
|
317
|
+
optionTemplates.push(this.optionGroupedStringTemplate(option[1], index));
|
|
318
|
+
} else if ("value" in option[1]) {
|
|
186
319
|
optionTemplates.push(this.optionStringTemplate(option[1], index));
|
|
187
320
|
} else if ("address" in option[1]) {
|
|
188
321
|
optionTemplates.push(this.optionProfileTemplate(option[1], index));
|
|
@@ -194,14 +327,33 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
194
327
|
}
|
|
195
328
|
dropdownWrapperTemplate(innerTemplate) {
|
|
196
329
|
const dropdownWrapperStyles = this.dropdownWrapperStyles({
|
|
197
|
-
openTop: this.openTop
|
|
330
|
+
openTop: this.openTop,
|
|
331
|
+
size: this.size,
|
|
332
|
+
isRight: this.isRight
|
|
198
333
|
});
|
|
199
334
|
return x`<div class="${dropdownWrapperStyles}">${innerTemplate}</div>`;
|
|
200
335
|
}
|
|
336
|
+
optionGroupedStringTemplate(option, index) {
|
|
337
|
+
return x`<div
|
|
338
|
+
class="paragraph-inter-10-bold-uppercase text-neutral-20 p-1"
|
|
339
|
+
>
|
|
340
|
+
${option.group}
|
|
341
|
+
</div>
|
|
342
|
+
${option.values.map((value, valueIndex) => {
|
|
343
|
+
return this.optionStringTemplate(
|
|
344
|
+
{ id: `${option.id}-${valueIndex}`, group: option.group, value },
|
|
345
|
+
index
|
|
346
|
+
);
|
|
347
|
+
})}`;
|
|
348
|
+
}
|
|
201
349
|
optionStringTemplate(option, index) {
|
|
202
350
|
const optionsStyles = this.optionsStyles({
|
|
203
|
-
isSelected: this.valueParsed?.id === option.id,
|
|
204
|
-
isActive: this.selected === index + 1 && this.valueParsed?.id
|
|
351
|
+
isSelected: !!this.valueParsed?.find((value) => value.id === option.id),
|
|
352
|
+
isActive: this.selected === index + 1 && !this.valueParsed?.find((value) => value.id === option.id),
|
|
353
|
+
size: this.size,
|
|
354
|
+
isGroup: !!option.group,
|
|
355
|
+
isDisabled: this.isDisabled,
|
|
356
|
+
isReadonly: this.isReadonly
|
|
205
357
|
});
|
|
206
358
|
return x`<div
|
|
207
359
|
data-id="${option.id}"
|
|
@@ -214,8 +366,11 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
214
366
|
}
|
|
215
367
|
optionProfileTemplate(option, index) {
|
|
216
368
|
const optionsStyles = this.optionsStyles({
|
|
217
|
-
isSelected: this.valueParsed?.id === option.id,
|
|
218
|
-
isActive: this.selected === index + 1 && this.valueParsed?.id
|
|
369
|
+
isSelected: !!this.valueParsed?.find((value) => value.id === option.id),
|
|
370
|
+
isActive: this.selected === index + 1 && !this.valueParsed?.find((value) => value.id === option.id),
|
|
371
|
+
size: this.size,
|
|
372
|
+
isDisabled: this.isDisabled,
|
|
373
|
+
isReadonly: this.isReadonly
|
|
219
374
|
});
|
|
220
375
|
return x`<div
|
|
221
376
|
data-id="${option.id}"
|
|
@@ -243,27 +398,51 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
243
398
|
name-color="neutral-20"
|
|
244
399
|
max-width="150"
|
|
245
400
|
slice-by="4"
|
|
246
|
-
size
|
|
401
|
+
size=${this.size}
|
|
247
402
|
></lukso-username>`;
|
|
248
403
|
}
|
|
249
|
-
|
|
250
|
-
const
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
404
|
+
selectedValueTemplate() {
|
|
405
|
+
const firstOption = this.optionsParsed[0];
|
|
406
|
+
if ("value" in firstOption) {
|
|
407
|
+
const foundValues = this.optionsParsed.filter(
|
|
408
|
+
(option) => !!this.valueParsed?.find((value) => value.id === option.id)
|
|
409
|
+
);
|
|
410
|
+
return foundValues.map((value) => this.optionStringValue(value)).join(", ");
|
|
411
|
+
}
|
|
412
|
+
if ("values" in firstOption) {
|
|
413
|
+
const foundValues = [];
|
|
414
|
+
for (const option of this.optionsParsed) {
|
|
415
|
+
for (const [index, value] of option.values.entries()) {
|
|
416
|
+
for (const parsedValue of this.valueParsed) {
|
|
417
|
+
if (parsedValue.id === `${option.id}-${index}`) {
|
|
418
|
+
foundValues.push({
|
|
419
|
+
id: `${option.id}-${index}`,
|
|
420
|
+
value
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
}
|
|
260
425
|
}
|
|
426
|
+
return foundValues.map((value) => this.optionStringValue(value)).join(", ");
|
|
261
427
|
}
|
|
428
|
+
if ("address" in firstOption) {
|
|
429
|
+
const foundValues = this.optionsParsed.filter(
|
|
430
|
+
(option) => !!this.valueParsed?.find((value) => value.id === option.id)
|
|
431
|
+
);
|
|
432
|
+
const optionProfileValues = [];
|
|
433
|
+
for (const value of foundValues) {
|
|
434
|
+
optionProfileValues.push(
|
|
435
|
+
this.optionProfileValue(value)
|
|
436
|
+
);
|
|
437
|
+
}
|
|
438
|
+
return optionProfileValues;
|
|
439
|
+
}
|
|
440
|
+
console.error("Unknown value type", this.valueParsed);
|
|
262
441
|
return "";
|
|
263
442
|
}
|
|
264
443
|
handleOutsideDropdownClick(event) {
|
|
265
444
|
const element = event.target;
|
|
266
|
-
if (element.tagName === "LUKSO-SELECT") {
|
|
445
|
+
if (element.tagName === "LUKSO-SELECT" && this.id === element.id) {
|
|
267
446
|
return;
|
|
268
447
|
}
|
|
269
448
|
this.isOpen = false;
|
|
@@ -328,7 +507,8 @@ let LuksoSelect = class extends TailwindStyledElement(style) {
|
|
|
328
507
|
render() {
|
|
329
508
|
const iconStyles = this.iconStyles({
|
|
330
509
|
isDisabled: this.isDisabled,
|
|
331
|
-
isOpen: this.isOpen
|
|
510
|
+
isOpen: this.isOpen,
|
|
511
|
+
size: this.size
|
|
332
512
|
});
|
|
333
513
|
return x`
|
|
334
514
|
<div class="relative w-[inherit]">
|
|
@@ -396,6 +576,15 @@ __decorateClass([
|
|
|
396
576
|
__decorateClass([
|
|
397
577
|
n({ type: Boolean, attribute: "is-large-icon" })
|
|
398
578
|
], LuksoSelect.prototype, "isLargeIcon", 2);
|
|
579
|
+
__decorateClass([
|
|
580
|
+
n({ type: Boolean, attribute: "is-right" })
|
|
581
|
+
], LuksoSelect.prototype, "isRight", 2);
|
|
582
|
+
__decorateClass([
|
|
583
|
+
n({ type: String })
|
|
584
|
+
], LuksoSelect.prototype, "size", 2);
|
|
585
|
+
__decorateClass([
|
|
586
|
+
n({ type: Boolean, attribute: "show-selection-counter" })
|
|
587
|
+
], LuksoSelect.prototype, "showSelectionCounter", 2);
|
|
399
588
|
__decorateClass([
|
|
400
589
|
t()
|
|
401
590
|
], LuksoSelect.prototype, "optionsParsed", 2);
|
|
@@ -4,8 +4,20 @@ declare const meta: Meta;
|
|
|
4
4
|
export default meta;
|
|
5
5
|
/** Example of select with `string` values. */
|
|
6
6
|
export declare const DefaultSelect: any;
|
|
7
|
+
/** With `placeholder` value you can set fixed text in selection trigger. */
|
|
8
|
+
export declare const Placeholder: any;
|
|
7
9
|
/** Example of select that open top. */
|
|
8
10
|
export declare const OpenTop: any;
|
|
9
11
|
/** Example of select with `profile` values. */
|
|
10
12
|
export declare const ProfileSelect: any;
|
|
13
|
+
/** Example of `small` select. */
|
|
14
|
+
export declare const SmallSelect: any;
|
|
15
|
+
/** Example of multi select. */
|
|
16
|
+
export declare const MultiSelect: any;
|
|
17
|
+
/** Example of right side dropdown. */
|
|
18
|
+
export declare const RightSideDropdown: any;
|
|
19
|
+
/** Example of grouped select. */
|
|
20
|
+
export declare const GroupedSelect: any;
|
|
21
|
+
/** Example of selection counter. */
|
|
22
|
+
export declare const CountSelections: any;
|
|
11
23
|
//# sourceMappingURL=lukso-select.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lukso-select.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/lukso-select/lukso-select.stories.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,SAAS,CAAA;AAEhB,+DAA+D;AAC/D,QAAA,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"lukso-select.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/lukso-select/lukso-select.stories.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,SAAS,CAAA;AAEhB,+DAA+D;AAC/D,QAAA,MAAM,IAAI,EAAE,IAuOX,CAAA;AAED,eAAe,IAAI,CAAA;AAyDnB,+CAA+C;AAC/C,eAAO,MAAM,aAAa,KAAoB,CAAA;AAK9C,6EAA6E;AAC7E,eAAO,MAAM,WAAW,KAAoB,CAAA;AAM5C,wCAAwC;AACxC,eAAO,MAAM,OAAO,KAAoB,CAAA;AAMxC,gDAAgD;AAChD,eAAO,MAAM,aAAa,KAAoB,CAAA;AA8B9C,kCAAkC;AAClC,eAAO,MAAM,WAAW,KAAoB,CAAA;AAM5C,gCAAgC;AAChC,eAAO,MAAM,WAAW,KAAoB,CAAA;AAe5C,uCAAuC;AACvC,eAAO,MAAM,iBAAiB,KAAoB,CAAA;AAOlD,kCAAkC;AAClC,eAAO,MAAM,aAAa,KAAoB,CAAA;AA2B9C,qCAAqC;AACrC,eAAO,MAAM,eAAe,KAAoB,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
|
|
8
8
|
const style = ":host {\n display: inline-flex\n}";
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
|
-
const styleMap = require('../../style-map-
|
|
7
|
+
const styleMap = require('../../style-map-ebf3a8d2.cjs');
|
|
8
8
|
const index = require('../../index-e9668573.cjs');
|
|
9
9
|
require('../../directive-8278ab14.cjs');
|
|
10
10
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as TailwindElement, x } from '../../index-
|
|
1
|
+
import { a as TailwindElement, x } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
|
-
import { o } from '../../style-map-
|
|
3
|
+
import { o } from '../../style-map-3669b30c.js';
|
|
4
4
|
import { c as customClassMap } from '../../index-5e194caf.js';
|
|
5
5
|
import '../../directive-2bb7789e.js';
|
|
6
6
|
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const index = require('../../index-1d3f4a5a.cjs');
|
|
8
|
-
const index$1 = require('../../index-
|
|
8
|
+
const index$1 = require('../../index-a1e4b7d4.cjs');
|
|
9
9
|
require('../../bundle-mjs-d58a83c6.cjs');
|
|
10
10
|
require('../../directive-8278ab14.cjs');
|
|
11
11
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { T as TailwindStyledElement, x } from '../../index-
|
|
1
|
+
import { T as TailwindStyledElement, x } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { c as ce } from '../../index-ca8e900d.js';
|
|
4
|
-
import { c as customStyleMap } from '../../index-
|
|
4
|
+
import { c as customStyleMap } from '../../index-dfdfb6fe.js';
|
|
5
5
|
import '../../bundle-mjs-fbc6e2a8.js';
|
|
6
6
|
import '../../directive-2bb7789e.js';
|
|
7
7
|
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const state = require('../../state-d9fb972b.cjs');
|
|
8
8
|
const index = require('../../index-e9668573.cjs');
|
|
9
9
|
require('../lukso-icon/index.cjs');
|
|
10
10
|
require('../lukso-sanitize/index.cjs');
|
|
11
11
|
require('../../directive-8278ab14.cjs');
|
|
12
|
-
require('../../style-map-
|
|
12
|
+
require('../../style-map-ebf3a8d2.cjs');
|
|
13
13
|
|
|
14
14
|
const style = ":host {\n display: flex;\n height: 100%\n}";
|
|
15
15
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { T as TailwindStyledElement, x } from '../../index-
|
|
1
|
+
import { T as TailwindStyledElement, x } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { t } from '../../state-b9ca4e74.js';
|
|
4
4
|
import { c as customClassMap } from '../../index-5e194caf.js';
|
|
5
5
|
import '../lukso-icon/index.js';
|
|
6
6
|
import '../lukso-sanitize/index.js';
|
|
7
7
|
import '../../directive-2bb7789e.js';
|
|
8
|
-
import '../../style-map-
|
|
8
|
+
import '../../style-map-3669b30c.js';
|
|
9
9
|
|
|
10
10
|
const style = ":host {\n display: flex;\n height: 100%\n}";
|
|
11
11
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const directive = require('../../directive-8278ab14.cjs');
|
|
8
8
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as T$1, T as TailwindStyledElement, x as x$1 } from '../../index-
|
|
1
|
+
import { b as T$1, T as TailwindStyledElement, x as x$1 } from '../../index-09db75ee.js';
|
|
2
2
|
import { n as n$3, e as e$3 } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { e as e$2, i as i$3, t as t$3 } from '../../directive-2bb7789e.js';
|
|
4
4
|
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const state = require('../../state-d9fb972b.cjs');
|
|
8
8
|
const index = require('../../index-1d3f4a5a.cjs');
|
|
9
|
-
const styleMap = require('../../style-map-
|
|
9
|
+
const styleMap = require('../../style-map-ebf3a8d2.cjs');
|
|
10
10
|
require('../../bundle-mjs-d58a83c6.cjs');
|
|
11
11
|
require('../../directive-8278ab14.cjs');
|
|
12
12
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { T as TailwindStyledElement, x } from '../../index-
|
|
1
|
+
import { T as TailwindStyledElement, x } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { t } from '../../state-b9ca4e74.js';
|
|
4
4
|
import { c as ce } from '../../index-ca8e900d.js';
|
|
5
|
-
import { o } from '../../style-map-
|
|
5
|
+
import { o } from '../../style-map-3669b30c.js';
|
|
6
6
|
import '../../bundle-mjs-fbc6e2a8.js';
|
|
7
7
|
import '../../directive-2bb7789e.js';
|
|
8
8
|
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const index = require('../../index-e9668573.cjs');
|
|
8
|
-
const index$1 = require('../../index-
|
|
8
|
+
const index$1 = require('../../index-a1e4b7d4.cjs');
|
|
9
9
|
require('../../directive-8278ab14.cjs');
|
|
10
10
|
|
|
11
11
|
const sliceAddress = (address, startSliceBy = 6, endSliceBy) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { T as TailwindStyledElement, x, A } from '../../index-
|
|
1
|
+
import { T as TailwindStyledElement, x, A } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { c as customClassMap } from '../../index-5e194caf.js';
|
|
4
|
-
import { c as customStyleMap } from '../../index-
|
|
4
|
+
import { c as customStyleMap } from '../../index-dfdfb6fe.js';
|
|
5
5
|
import '../../directive-2bb7789e.js';
|
|
6
6
|
|
|
7
7
|
const sliceAddress = (address, startSliceBy = 6, endSliceBy) => {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const shared_tailwindElement_index = require('../../index-
|
|
5
|
+
const shared_tailwindElement_index = require('../../index-9b930f6a.cjs');
|
|
6
6
|
const queryAssignedElements = require('../../query-assigned-elements-d5e45650.cjs');
|
|
7
7
|
const directive = require('../../directive-8278ab14.cjs');
|
|
8
8
|
const index = require('../../index-1d3f4a5a.cjs');
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j, b as T, T as TailwindStyledElement, x } from '../../index-
|
|
1
|
+
import { j, b as T, T as TailwindStyledElement, x } from '../../index-09db75ee.js';
|
|
2
2
|
import { n, e as e$1 } from '../../query-assigned-elements-1c8c9e90.js';
|
|
3
3
|
import { e, i, t } from '../../directive-2bb7789e.js';
|
|
4
4
|
import { c as ce } from '../../index-ca8e900d.js';
|