@genesislcap/foundation-ui 14.193.1 → 14.193.3
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/custom-elements.json +1515 -1473
- package/dist/dts/flyout/flyout.d.ts +2 -0
- package/dist/dts/flyout/flyout.d.ts.map +1 -1
- package/dist/dts/multiselect/multiselect.d.ts +2 -1
- package/dist/dts/multiselect/multiselect.d.ts.map +1 -1
- package/dist/dts/multiselect/multiselect.styles.d.ts.map +1 -1
- package/dist/dts/multiselect/multiselect.template.d.ts.map +1 -1
- package/dist/esm/flyout/flyout.js +4 -0
- package/dist/esm/flyout/flyout.template.js +3 -3
- package/dist/esm/multiselect/multiselect.js +36 -6
- package/dist/esm/multiselect/multiselect.styles.js +26 -5
- package/dist/esm/multiselect/multiselect.template.js +47 -45
- package/package.json +16 -16
|
@@ -3,6 +3,7 @@ import { FoundationElement } from '@microsoft/fast-foundation';
|
|
|
3
3
|
* @tagname %%prefix%%-flyout
|
|
4
4
|
*/
|
|
5
5
|
export declare class Flyout extends FoundationElement {
|
|
6
|
+
exit: HTMLDivElement;
|
|
6
7
|
position: string;
|
|
7
8
|
displayHeader: boolean;
|
|
8
9
|
closed: boolean;
|
|
@@ -10,6 +11,7 @@ export declare class Flyout extends FoundationElement {
|
|
|
10
11
|
visuallyhidden: boolean;
|
|
11
12
|
closeFlyout(): void;
|
|
12
13
|
closingFinished(): void;
|
|
14
|
+
focusExit(): void;
|
|
13
15
|
}
|
|
14
16
|
export declare const foundationFlyoutShadowOptions: ShadowRootInit;
|
|
15
17
|
export declare const defaultFlyoutConfig: {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flyout.d.ts","sourceRoot":"","sources":["../../../src/flyout/flyout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAI/D;;GAEG;AACH,qBAAa,MAAO,SAAQ,iBAAiB;
|
|
1
|
+
{"version":3,"file":"flyout.d.ts","sourceRoot":"","sources":["../../../src/flyout/flyout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAI/D;;GAEG;AACH,qBAAa,MAAO,SAAQ,iBAAiB;IACpC,IAAI,EAAE,cAAc,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAW;IACN,aAAa,EAAE,OAAO,CAAQ;IAC9B,MAAM,EAAE,OAAO,CAAQ;IAClD,aAAa;IASc,cAAc,EAAE,OAAO,CAAQ;IAE1D,WAAW;IAIX,eAAe;IAOf,SAAS;CAGV;AAGD,eAAO,MAAM,6BAA6B,EAAE,cAA0B,CAAC;AAEvE,eAAO,MAAM,mBAAmB,IAAK,CAAC;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;iBAM3B,CAAC"}
|
|
@@ -66,11 +66,11 @@ export declare class Multiselect extends FoundationElement {
|
|
|
66
66
|
isOptionDisabled(option: MultiselectOption): boolean;
|
|
67
67
|
get getDisplayValue(): string;
|
|
68
68
|
get getPlaceholder(): string;
|
|
69
|
-
get isAllSelected(): boolean;
|
|
70
69
|
get isAllOptionsDisabled(): boolean;
|
|
71
70
|
get showCreatable(): boolean;
|
|
72
71
|
isOptionSelected(normalizedOption: MultiselectOption): boolean;
|
|
73
72
|
selectCheckboxOne(normalizedOption: MultiselectOption): void;
|
|
73
|
+
checkboxKeyDown(normalizedOption: MultiselectOption, event: KeyboardEvent): boolean;
|
|
74
74
|
getEnabledOptionsCount(): number;
|
|
75
75
|
selectCheckboxAll(): void;
|
|
76
76
|
inputHandler(): void;
|
|
@@ -80,6 +80,7 @@ export declare class Multiselect extends FoundationElement {
|
|
|
80
80
|
asyncSetFilter(): void;
|
|
81
81
|
changeHandler(event: Event): void;
|
|
82
82
|
private handleClickOutside;
|
|
83
|
+
keydownHandler(e: Event & KeyboardEvent): boolean | void;
|
|
83
84
|
}
|
|
84
85
|
export declare const foundationMultiselect: (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<{
|
|
85
86
|
baseName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiselect.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAO9D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD,eAAO,MAAM,kCAAkC,EAAE,cAA0B,CAAC;AAE5E,eAAO,MAAM,wBAAwB,IAAK,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GACzB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GACD,MAAM,CAAC;AAEX;;GAEG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAC1C,IAAI,SAAM;IACuC,YAAY,EAAE,OAAO,CAAQ;IACzD,GAAG,UAAQ;IACX,WAAW,UAAS;IACpB,MAAM,UAAQ;IACd,QAAQ,UAAS;IACjB,SAAS,UAAS;IAClB,KAAK,UAAS;IACnC,QAAQ,EAAE,MAAM,CAAiB;IAEvC,2FAA2F;IAC/B,gBAAgB,UAAS;IAErF,eAAe,CAAC,QAAQ,KAAA,EAAE,QAAQ,EAAE,MAAM;IAG1C,qBAAqB,MAAC;IACV,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC5B,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAC3C,cAAc,MAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAM;IAC3C,OAAO,CAAC,YAAY,CAAiD;IACzD,IAAI,UAAS;IACzB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IAYhC,OAAO,EAAE,iBAAiB,EAAE,CAAM;IAClC,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,wBAAwB,EAAE,iBAAiB,EAAE,CAAqB;IAClE,eAAe,EAAE,WAAW,CAAC;IAEzC;;;;OAIG;IACS,QAAQ,EAAE,QAAQ,CAAkB;IAEpC,qBAAqB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IAElE,OAAO,CAAC,kBAAkB,CAAkB;IAE5C,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,EAAE,WAAW,CAAC;IAE5B,iBAAiB;IAOjB,oBAAoB;IAKpB,MAAM;IAON,cAAc;IAQd,sBAAsB;IAOtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAqC3B,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAOtC,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAetC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB;IAQ1C,IACI,eAAe,WAyBlB;IAED,IACI,cAAc,WAEjB;IAED,IACI,
|
|
1
|
+
{"version":3,"file":"multiselect.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAO9D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD,eAAO,MAAM,kCAAkC,EAAE,cAA0B,CAAC;AAE5E,eAAO,MAAM,wBAAwB,IAAK,CAAC;AAE3C,MAAM,MAAM,iBAAiB,GACzB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GACD,MAAM,CAAC;AAEX;;GAEG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAC1C,IAAI,SAAM;IACuC,YAAY,EAAE,OAAO,CAAQ;IACzD,GAAG,UAAQ;IACX,WAAW,UAAS;IACpB,MAAM,UAAQ;IACd,QAAQ,UAAS;IACjB,SAAS,UAAS;IAClB,KAAK,UAAS;IACnC,QAAQ,EAAE,MAAM,CAAiB;IAEvC,2FAA2F;IAC/B,gBAAgB,UAAS;IAErF,eAAe,CAAC,QAAQ,KAAA,EAAE,QAAQ,EAAE,MAAM;IAG1C,qBAAqB,MAAC;IACV,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC5B,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAC3C,cAAc,MAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAM;IAC3C,OAAO,CAAC,YAAY,CAAiD;IACzD,IAAI,UAAS;IACzB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IAYhC,OAAO,EAAE,iBAAiB,EAAE,CAAM;IAClC,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,wBAAwB,EAAE,iBAAiB,EAAE,CAAqB;IAClE,eAAe,EAAE,WAAW,CAAC;IAEzC;;;;OAIG;IACS,QAAQ,EAAE,QAAQ,CAAkB;IAEpC,qBAAqB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IAElE,OAAO,CAAC,kBAAkB,CAAkB;IAE5C,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,EAAE,WAAW,CAAC;IAE5B,iBAAiB;IAOjB,oBAAoB;IAKpB,MAAM;IAON,cAAc;IAQd,sBAAsB;IAOtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAqC3B,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAOtC,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAetC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB;IAQ1C,IACI,eAAe,WAyBlB;IAED,IACI,cAAc,WAEjB;IAED,IACI,oBAAoB,YAEvB;IAED,IACI,aAAa,YAMhB;IAED,gBAAgB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,OAAO;IAI9D,iBAAiB,CAAC,gBAAgB,EAAE,iBAAiB;IAarD,eAAe,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa;IAQzE,sBAAsB;IAItB,iBAAiB;IAajB,YAAY;IAcZ,qBAAqB;IAQrB,SAAS;IAcT,SAAS;IAST,cAAc;IAkBd,aAAa,CAAC,KAAK,EAAE,KAAK;IAK1B,OAAO,CAAC,kBAAkB;IAM1B,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,GAAG,OAAO,GAAG,IAAI;CAgCzD;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;sBAMhC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiselect.styles.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"multiselect.styles.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,eAAO,MAAM,iBAAiB,iDA4L7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiselect.template.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.template.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAKjD,eAAO,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"multiselect.template.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.template.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAKjD,eAAO,MAAM,sBAAsB,uFAyGlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,kEAE/B,CAAC"}
|
|
@@ -18,6 +18,7 @@ export class Flyout extends FoundationElement {
|
|
|
18
18
|
if (!this.closed) {
|
|
19
19
|
// TODO: timeout shouldn't be necessary here but without it opening transition doesn't work
|
|
20
20
|
setTimeout(() => (this.visuallyhidden = false), 1);
|
|
21
|
+
this.focusExit();
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
24
|
closeFlyout() {
|
|
@@ -29,6 +30,9 @@ export class Flyout extends FoundationElement {
|
|
|
29
30
|
this.$emit('closed');
|
|
30
31
|
}
|
|
31
32
|
}
|
|
33
|
+
focusExit() {
|
|
34
|
+
this.exit.focus();
|
|
35
|
+
}
|
|
32
36
|
}
|
|
33
37
|
__decorate([
|
|
34
38
|
attr
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { html, when } from '@microsoft/fast-element';
|
|
1
|
+
import { html, when, ref } from '@microsoft/fast-element';
|
|
2
2
|
import { getPrefix } from '../utils/dom';
|
|
3
3
|
export const getPrefixedFlyout = (prefix) => html `
|
|
4
4
|
<div ?closed=${(x) => x.closed} ?visuallyhidden=${(x) => x.visuallyhidden}>
|
|
@@ -10,9 +10,9 @@ export const getPrefixedFlyout = (prefix) => html `
|
|
|
10
10
|
<div class="title" part="title">
|
|
11
11
|
<slot name="title"></slot>
|
|
12
12
|
</div>
|
|
13
|
-
|
|
13
|
+
<${prefix}-button class="exit" part="exit" aria-label="exit" ${ref('exit')} appearance="stealth" @click=${(x) => x.closeFlyout()}>
|
|
14
14
|
<${prefix}-icon name="times"></${prefix}-icon>
|
|
15
|
-
|
|
15
|
+
</${prefix}-button>
|
|
16
16
|
</div>
|
|
17
17
|
`)}
|
|
18
18
|
<div class="content" part="content">
|
|
@@ -177,9 +177,6 @@ export class Multiselect extends FoundationElement {
|
|
|
177
177
|
get getPlaceholder() {
|
|
178
178
|
return `Search ${this.name}`.trim().concat('...');
|
|
179
179
|
}
|
|
180
|
-
get isAllSelected() {
|
|
181
|
-
return (!this.isAllOptionsDisabled && this.selectedOptions.length === this.getEnabledOptionsCount());
|
|
182
|
-
}
|
|
183
180
|
get isAllOptionsDisabled() {
|
|
184
181
|
return this.options.length === this.options.filter(this.isOptionDisabled).length;
|
|
185
182
|
}
|
|
@@ -203,6 +200,13 @@ export class Multiselect extends FoundationElement {
|
|
|
203
200
|
}
|
|
204
201
|
this.$emit('selectionChange', this.selectedOptions);
|
|
205
202
|
}
|
|
203
|
+
checkboxKeyDown(normalizedOption, event) {
|
|
204
|
+
if (event.key === ' ') {
|
|
205
|
+
event.preventDefault();
|
|
206
|
+
this.selectCheckboxOne(normalizedOption);
|
|
207
|
+
}
|
|
208
|
+
return true;
|
|
209
|
+
}
|
|
206
210
|
getEnabledOptionsCount() {
|
|
207
211
|
return this.options.length - this.options.filter(this.isOptionDisabled).length;
|
|
208
212
|
}
|
|
@@ -219,6 +223,9 @@ export class Multiselect extends FoundationElement {
|
|
|
219
223
|
this.$emit('selectionChange', this.selectedOptions);
|
|
220
224
|
}
|
|
221
225
|
inputHandler() {
|
|
226
|
+
if (!this.open) {
|
|
227
|
+
this.open = true;
|
|
228
|
+
}
|
|
222
229
|
if (this.async) {
|
|
223
230
|
this.loading = true;
|
|
224
231
|
this.filteredAvailableOptions = [];
|
|
@@ -280,6 +287,32 @@ export class Multiselect extends FoundationElement {
|
|
|
280
287
|
this.open = false;
|
|
281
288
|
}
|
|
282
289
|
}
|
|
290
|
+
keydownHandler(e) {
|
|
291
|
+
const key = e.key;
|
|
292
|
+
if (e.ctrlKey || e.shiftKey) {
|
|
293
|
+
return true;
|
|
294
|
+
}
|
|
295
|
+
switch (key) {
|
|
296
|
+
case 'Escape': {
|
|
297
|
+
if (this.open) {
|
|
298
|
+
this.open = false;
|
|
299
|
+
break;
|
|
300
|
+
}
|
|
301
|
+
break;
|
|
302
|
+
}
|
|
303
|
+
case 'ArrowUp':
|
|
304
|
+
case 'ArrowDown': {
|
|
305
|
+
if (!this.open) {
|
|
306
|
+
this.open = true;
|
|
307
|
+
break;
|
|
308
|
+
}
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
default: {
|
|
312
|
+
return true;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}
|
|
283
316
|
}
|
|
284
317
|
__decorate([
|
|
285
318
|
attr
|
|
@@ -353,9 +386,6 @@ __decorate([
|
|
|
353
386
|
__decorate([
|
|
354
387
|
volatile
|
|
355
388
|
], Multiselect.prototype, "getPlaceholder", null);
|
|
356
|
-
__decorate([
|
|
357
|
-
volatile
|
|
358
|
-
], Multiselect.prototype, "isAllSelected", null);
|
|
359
389
|
__decorate([
|
|
360
390
|
volatile
|
|
361
391
|
], Multiselect.prototype, "isAllOptionsDisabled", null);
|
|
@@ -23,7 +23,7 @@ export const multiselectStyles = css `
|
|
|
23
23
|
min-height: 40px;
|
|
24
24
|
padding: 0 calc(var(--design-unit) * 2.25px);
|
|
25
25
|
border-width: 0;
|
|
26
|
-
background: var(--neutral-fill-input-rest);
|
|
26
|
+
background-color: var(--neutral-fill-input-rest);
|
|
27
27
|
border-radius: calc(var(--control-corner-radius) * 1px);
|
|
28
28
|
}
|
|
29
29
|
|
|
@@ -99,6 +99,7 @@ export const multiselectStyles = css `
|
|
|
99
99
|
overflow-y: scroll;
|
|
100
100
|
scrollbar-width: thin;
|
|
101
101
|
scrollbar-color: var(--neutral-layer-2) var(--neutral-layer-4);
|
|
102
|
+
list-style: none;
|
|
102
103
|
}
|
|
103
104
|
|
|
104
105
|
.checkbox-container zero-checkbox {
|
|
@@ -110,10 +111,6 @@ export const multiselectStyles = css `
|
|
|
110
111
|
cursor: not-allowed;
|
|
111
112
|
}
|
|
112
113
|
|
|
113
|
-
#filter-search {
|
|
114
|
-
padding: 5px;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
114
|
::-webkit-scrollbar {
|
|
118
115
|
width: 12px;
|
|
119
116
|
}
|
|
@@ -167,4 +164,28 @@ export const multiselectStyles = css `
|
|
|
167
164
|
.label-hidden {
|
|
168
165
|
display: none;
|
|
169
166
|
}
|
|
167
|
+
|
|
168
|
+
ol,
|
|
169
|
+
li {
|
|
170
|
+
margin: 0;
|
|
171
|
+
padding: 0;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.checkbox {
|
|
175
|
+
width: 100%;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.select-all {
|
|
179
|
+
width: 100%;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
.display-value {
|
|
183
|
+
position: absolute;
|
|
184
|
+
right: 40px;
|
|
185
|
+
line-height: var(--type-ramp-base-line-height);
|
|
186
|
+
color: var(--neutral-foreground-rest);
|
|
187
|
+
font-size: var(--type-ramp-base-font-size);
|
|
188
|
+
line-height: var(--type-ramp-base-line-height);
|
|
189
|
+
font-family: var(--body-font);
|
|
190
|
+
}
|
|
170
191
|
`;
|
|
@@ -7,7 +7,7 @@ const ARROW_SVG_PATH = 'M11.85.65c.2.2.2.5 0 .7L6.4 6.84a.55.55 0 01-.78 0L.14 1
|
|
|
7
7
|
export const getPrefixedMultiselect = (prefix = 'foundation') => html `
|
|
8
8
|
<label
|
|
9
9
|
part="label"
|
|
10
|
-
for="
|
|
10
|
+
for="display-field"
|
|
11
11
|
class=${(x) => { var _a; return classNames('label', ['label-hidden', !((_a = x.defaultSlottedNodes) === null || _a === void 0 ? void 0 : _a.length)]); }}
|
|
12
12
|
>
|
|
13
13
|
<slot
|
|
@@ -18,8 +18,23 @@ export const getPrefixedMultiselect = (prefix = 'foundation') => html `
|
|
|
18
18
|
})}
|
|
19
19
|
></slot>
|
|
20
20
|
</label>
|
|
21
|
-
<div class="root" part="root">
|
|
21
|
+
<div class="root" part="root" @keydown="${(x, c) => x.keydownHandler(c.event)}">
|
|
22
22
|
<div class="control" part="control">
|
|
23
|
+
<input
|
|
24
|
+
id="display-field"
|
|
25
|
+
part="filter-search"
|
|
26
|
+
role="combobox"
|
|
27
|
+
aria-haspopup="listbox"
|
|
28
|
+
aria-controls="checkbox-container"
|
|
29
|
+
aria-expanded=${(x) => (x.open ? 'true' : 'false')}
|
|
30
|
+
?readonly=${(x) => !x.search}
|
|
31
|
+
@click=${(x) => x.toggle()}
|
|
32
|
+
?disabled="${(x) => x.disabled}"
|
|
33
|
+
value=${sync((x) => x.filterSearchValue, 'string', 'input')}
|
|
34
|
+
placeholder="${(x) => x.getDisplayValue}"
|
|
35
|
+
@input=${(x, c) => x.inputHandler()}
|
|
36
|
+
@change=${(x, c) => x.changeHandler(c.event)}
|
|
37
|
+
/>
|
|
23
38
|
<div part="indicator" class="indicator" @click=${(x) => !x.disabled && x.toggle()}>
|
|
24
39
|
<svg
|
|
25
40
|
viewBox="0 0 12 7"
|
|
@@ -31,47 +46,34 @@ export const getPrefixedMultiselect = (prefix = 'foundation') => html `
|
|
|
31
46
|
<path d="${ARROW_SVG_PATH}" />
|
|
32
47
|
</svg>
|
|
33
48
|
</div>
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
readonly
|
|
38
|
-
type="text"
|
|
39
|
-
id="display-field"
|
|
40
|
-
part="display-field"
|
|
41
|
-
:value="${(x) => x.getDisplayValue}"
|
|
42
|
-
:disabled="${(x) => x.disabled}"
|
|
43
|
-
@click=${(x) => x.toggle()}
|
|
44
|
-
/>
|
|
49
|
+
${when((x) => x.filterSearchValue && x.selectedOptions.length, html `
|
|
50
|
+
<div class="display-value">${(x) => x.getDisplayValue}</div>
|
|
51
|
+
`)}
|
|
45
52
|
</div>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
<${prefix}-text-field
|
|
49
|
-
id="filter-search"
|
|
50
|
-
part="filter-search"
|
|
51
|
-
value=${sync((x) => x.filterSearchValue, 'string', 'input')}
|
|
52
|
-
placeholder="${(x) => x.getPlaceholder}"
|
|
53
|
-
@input=${(x, c) => x.inputHandler()}
|
|
54
|
-
@change=${(x, c) => x.changeHandler(c.event)}
|
|
55
|
-
></${prefix}-text-field>
|
|
53
|
+
${when((x) => x.loading, html `
|
|
54
|
+
<${prefix}-progress slot="indicator"></${prefix}-progress>
|
|
56
55
|
`)}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
56
|
+
<ol
|
|
57
|
+
${ref('optionsElement')}
|
|
58
|
+
id="checkbox-container"
|
|
59
|
+
class="checkbox-container options"
|
|
60
|
+
aria-multiselectable="true"
|
|
61
|
+
>
|
|
62
|
+
${when((x) => x.all, html `
|
|
63
|
+
<${prefix}-button
|
|
64
|
+
class="select-all"
|
|
65
|
+
@click=${(x) => x.selectCheckboxAll()}
|
|
66
|
+
?disabled="${(x, c) => x.isAllOptionsDisabled}"
|
|
67
|
+
>
|
|
68
|
+
Select All ${(x) => x.name}
|
|
69
|
+
</${prefix}-button>
|
|
70
|
+
`)}
|
|
71
|
+
${repeat((x) => x.filteredAvailableOptions, html `
|
|
72
|
+
<li role="option" value=${(x, ctx) => ctx.parent.getItemLabel(x)}>
|
|
73
73
|
<${prefix}-checkbox
|
|
74
74
|
part="checkbox"
|
|
75
|
+
class="checkbox"
|
|
76
|
+
@keydown=${(x, c) => c.parent.checkboxKeyDown(x, c.event)}
|
|
75
77
|
@click=${(x, c) => c.parent.selectCheckboxOne(x)}
|
|
76
78
|
@change=${(x, c) => c.parent.changeHandler(c.event)}
|
|
77
79
|
?current-checked="${(x, c) => c.parent.isOptionSelected(x)}"
|
|
@@ -79,12 +81,12 @@ export const getPrefixedMultiselect = (prefix = 'foundation') => html `
|
|
|
79
81
|
>
|
|
80
82
|
${(x, ctx) => ctx.parent.getItemLabel(x)}
|
|
81
83
|
</${prefix}-checkbox>
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
</
|
|
84
|
+
</li>
|
|
85
|
+
`)}
|
|
86
|
+
${when((x) => x.showCreatable, html `
|
|
87
|
+
<${prefix}-button @click=${(x) => x.addOption()}>Create "${(x) => x.filterSearchValue}"</${prefix}-button>
|
|
88
|
+
`)}
|
|
89
|
+
</ol>
|
|
88
90
|
</div>
|
|
89
91
|
<slot
|
|
90
92
|
${slotted({
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/foundation-ui",
|
|
3
3
|
"description": "Genesis Foundation UI",
|
|
4
|
-
"version": "14.193.
|
|
4
|
+
"version": "14.193.3",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -82,13 +82,13 @@
|
|
|
82
82
|
}
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@genesislcap/foundation-testing": "14.193.
|
|
86
|
-
"@genesislcap/genx": "14.193.
|
|
87
|
-
"@genesislcap/rollup-builder": "14.193.
|
|
88
|
-
"@genesislcap/ts-builder": "14.193.
|
|
89
|
-
"@genesislcap/uvu-playwright-builder": "14.193.
|
|
90
|
-
"@genesislcap/vite-builder": "14.193.
|
|
91
|
-
"@genesislcap/webpack-builder": "14.193.
|
|
85
|
+
"@genesislcap/foundation-testing": "14.193.3",
|
|
86
|
+
"@genesislcap/genx": "14.193.3",
|
|
87
|
+
"@genesislcap/rollup-builder": "14.193.3",
|
|
88
|
+
"@genesislcap/ts-builder": "14.193.3",
|
|
89
|
+
"@genesislcap/uvu-playwright-builder": "14.193.3",
|
|
90
|
+
"@genesislcap/vite-builder": "14.193.3",
|
|
91
|
+
"@genesislcap/webpack-builder": "14.193.3",
|
|
92
92
|
"copyfiles": "^2.4.1",
|
|
93
93
|
"rimraf": "^5.0.0",
|
|
94
94
|
"rxjs": "^7.5.4"
|
|
@@ -99,13 +99,13 @@
|
|
|
99
99
|
"@fortawesome/free-regular-svg-icons": "^6.2.1",
|
|
100
100
|
"@fortawesome/free-solid-svg-icons": "^6.2.1",
|
|
101
101
|
"@genesiscommunitysuccess/analyzer-import-alias-plugin": "^5.0.3",
|
|
102
|
-
"@genesislcap/foundation-comms": "14.193.
|
|
103
|
-
"@genesislcap/foundation-criteria": "14.193.
|
|
104
|
-
"@genesislcap/foundation-errors": "14.193.
|
|
105
|
-
"@genesislcap/foundation-logger": "14.193.
|
|
106
|
-
"@genesislcap/foundation-notifications": "14.193.
|
|
107
|
-
"@genesislcap/foundation-user": "14.193.
|
|
108
|
-
"@genesislcap/foundation-utils": "14.193.
|
|
102
|
+
"@genesislcap/foundation-comms": "14.193.3",
|
|
103
|
+
"@genesislcap/foundation-criteria": "14.193.3",
|
|
104
|
+
"@genesislcap/foundation-errors": "14.193.3",
|
|
105
|
+
"@genesislcap/foundation-logger": "14.193.3",
|
|
106
|
+
"@genesislcap/foundation-notifications": "14.193.3",
|
|
107
|
+
"@genesislcap/foundation-user": "14.193.3",
|
|
108
|
+
"@genesislcap/foundation-utils": "14.193.3",
|
|
109
109
|
"@microsoft/fast-colors": "^5.3.1",
|
|
110
110
|
"@microsoft/fast-components": "^2.30.6",
|
|
111
111
|
"@microsoft/fast-element": "^1.12.0",
|
|
@@ -127,5 +127,5 @@
|
|
|
127
127
|
"access": "public"
|
|
128
128
|
},
|
|
129
129
|
"customElements": "dist/custom-elements.json",
|
|
130
|
-
"gitHead": "
|
|
130
|
+
"gitHead": "38840a2d88af7100ff4b38c9b1440885c67a0799"
|
|
131
131
|
}
|