@sbb-esta/lyne-elements 3.11.0 → 3.12.1
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/action-group/action-group.component.js +1 -1
- package/alert/alert/alert.component.js +1 -1
- package/autocomplete/autocomplete-base-element.d.ts +5 -0
- package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/autocomplete/autocomplete-base-element.js +72 -59
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +1 -1
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
- package/badge.css +1 -0
- package/breadcrumb/breadcrumb/breadcrumb.component.js +4 -4
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
- package/button/common.js +1 -1
- package/button/mini-button/mini-button.component.js +1 -1
- package/button.js +1 -1
- package/calendar/calendar.component.js +1 -1
- package/card/card/card.component.js +1 -1
- package/card/card-badge/card-badge.component.js +1 -1
- package/carousel/carousel-list/carousel-list.component.d.ts +8 -3
- package/carousel/carousel-list/carousel-list.component.d.ts.map +1 -1
- package/carousel/carousel-list/carousel-list.component.js +62 -40
- package/checkbox/checkbox-group/checkbox-group.component.js +1 -1
- package/chip/chip/chip.component.js +1 -1
- package/chip/chip-group/chip-group.component.js +1 -1
- package/chip-label/chip-label.component.js +1 -1
- package/container/container/container.component.js +11 -11
- package/container/sticky-bar/sticky-bar.component.js +9 -9
- package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-input-mixin.js +55 -38
- package/core/mixins.js +1 -1
- package/core/overlay/overlay-option-panel.d.ts +2 -1
- package/core/overlay/overlay-option-panel.d.ts.map +1 -1
- package/core/overlay/overlay-option-panel.js +8 -5
- package/core/overlay/position.d.ts +2 -0
- package/core/overlay/position.d.ts.map +1 -1
- package/core/overlay/position.js +19 -17
- package/core/styles/layout.scss +4 -0
- package/core/styles/mixins/badge.scss +3 -0
- package/core/styles/mixins/layout.scss +5 -4
- package/core/styles/mixins/link.scss +0 -11
- package/custom-elements.json +573 -263
- package/date-input/date-input.component.js +1 -1
- package/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
- package/datepicker/datepicker-toggle/datepicker-toggle.component.js +1 -1
- package/development/autocomplete/autocomplete-base-element.d.ts +5 -0
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +25 -5
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -2
- package/development/carousel/carousel-list/carousel-list.component.d.ts +8 -3
- package/development/carousel/carousel-list/carousel-list.component.d.ts.map +1 -1
- package/development/carousel/carousel-list/carousel-list.component.js +51 -19
- package/development/container/container/container.component.js +3 -3
- package/development/container/sticky-bar/sticky-bar.component.js +5 -5
- package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-input-mixin.js +47 -12
- package/development/core/overlay/overlay-option-panel.d.ts +2 -1
- package/development/core/overlay/overlay-option-panel.d.ts.map +1 -1
- package/development/core/overlay/overlay-option-panel.js +6 -3
- package/development/core/overlay/position.d.ts +2 -0
- package/development/core/overlay/position.d.ts.map +1 -1
- package/development/core/overlay/position.js +3 -2
- package/development/footer/footer.component.js +3 -3
- package/development/header/header/header.component.js +3 -3
- package/development/lead-container/lead-container.component.js +8 -7
- package/development/link/common/block-link-common.js +2 -12
- package/development/link/common/inline-link-common.js +2 -10
- package/development/link/common/link-common.js +1 -1
- package/development/link/common.js +1 -1
- package/development/{link-common-DPLJx5Uo.js → link-common-BDFF9Oiz.js} +1 -3
- package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -2
- package/development/link.js +1 -1
- package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -1
- package/development/mini-calendar/mini-calendar/mini-calendar.component.js +5 -7
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +3 -3
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup-base-element.js +2 -1
- package/development/option/option/option-base-element.js +2 -2
- package/development/paginator/common/paginator-common.d.ts +2 -1
- package/development/paginator/common/paginator-common.d.ts.map +1 -1
- package/development/paginator/common/paginator-common.js +87 -49
- package/development/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
- package/development/paginator/compact-paginator/compact-paginator.component.js +3 -2
- package/development/paginator/paginator/paginator.component.d.ts +6 -0
- package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
- package/development/paginator/paginator/paginator.component.js +19 -4
- package/development/select/select.component.d.ts +12 -8
- package/development/select/select.component.d.ts.map +1 -1
- package/development/select/select.component.js +97 -85
- package/development/tag/tag/tag.component.js +2 -1
- package/dialog/dialog/dialog.component.js +1 -1
- package/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
- package/file-selector/common.js +1 -1
- package/file-selector-common-BEWjyy75.js +5 -0
- package/file-selector.js +1 -1
- package/flip-card/flip-card/flip-card.component.js +1 -1
- package/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
- package/footer/footer.component.js +8 -8
- package/form-error/form-error.component.js +1 -1
- package/form-field/form-field/form-field.component.js +1 -1
- package/form-field/form-field-clear/form-field-clear.component.js +1 -1
- package/header/common/header-action-common.js +1 -1
- package/header/header/header.component.js +32 -32
- package/icon-sidebar-button-common-XcKoF2SP.js +7 -0
- package/layout.css +9 -3
- package/lead-container/lead-container.component.js +8 -8
- package/link/common/block-link-common.js +25 -25
- package/link/common/inline-link-common.js +7 -7
- package/link/common/link-common.js +1 -1
- package/link/common.js +1 -1
- package/link-common-nA3q92jp.js +46 -0
- package/link-list/link-list/link-list.component.js +1 -1
- package/link-list/link-list-anchor/link-list-anchor.component.js +5 -5
- package/link.js +1 -1
- package/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/logo/logo.component.js +1 -1
- package/map-container/map-container.component.js +1 -1
- package/menu/common/menu-action-common.js +1 -1
- package/menu/menu/menu.component.js +1 -1
- package/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -1
- package/mini-calendar/mini-calendar/mini-calendar.component.js +5 -9
- package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +16 -16
- package/navigation/common/navigation-action-common.js +1 -1
- package/navigation/navigation/navigation.component.js +1 -1
- package/navigation/navigation-marker/navigation-marker.component.js +1 -1
- package/navigation/navigation-section/navigation-section.component.js +1 -1
- package/notification/notification.component.js +1 -1
- package/off-brand-theme.css +10 -3
- package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/option/optgroup/optgroup-base-element.js +5 -5
- package/option/option/option-base-element.js +1 -1
- package/option/option/option.component.js +1 -1
- package/overlay/overlay.component.js +1 -1
- package/package.json +1 -1
- package/paginator/common/paginator-common.d.ts +2 -1
- package/paginator/common/paginator-common.d.ts.map +1 -1
- package/paginator/common/paginator-common.js +102 -81
- package/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
- package/paginator/compact-paginator/compact-paginator.component.js +2 -1
- package/paginator/paginator/paginator.component.d.ts +6 -0
- package/paginator/paginator/paginator.component.d.ts.map +1 -1
- package/paginator/paginator/paginator.component.js +57 -45
- package/popover/popover/popover.component.js +1 -1
- package/popover/popover-trigger/popover-trigger.component.js +1 -1
- package/radio-button/common.js +1 -1
- package/radio-button/radio-button-group/radio-button-group.component.js +1 -1
- package/radio-button-common-Bw2t3Sxz.js +5 -0
- package/radio-button.js +1 -1
- package/safety-theme.css +10 -3
- package/select/select.component.d.ts +12 -8
- package/select/select.component.d.ts.map +1 -1
- package/select/select.component.js +136 -128
- package/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
- package/sidebar/common.js +1 -1
- package/sidebar/sidebar-container/sidebar-container.component.js +1 -1
- package/sidebar.js +1 -1
- package/signet/signet.component.js +1 -1
- package/slider/slider.component.js +1 -1
- package/standard-theme.css +10 -3
- package/stepper/step-label/step-label.component.js +1 -1
- package/stepper/stepper/stepper.component.js +1 -1
- package/tabs/tab-label/tab-label.component.js +1 -1
- package/tag/tag/tag.component.js +4 -4
- package/teaser/teaser.component.js +1 -1
- package/teaser-hero/teaser-hero.component.js +1 -1
- package/teaser-product/common.js +1 -1
- package/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/teaser-product-common-Du28QCY3.js +5 -0
- package/teaser-product.js +1 -1
- package/time-input/time-input.component.js +1 -1
- package/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
- package/toggle/toggle/toggle.component.js +1 -1
- package/toggle-check/toggle-check.component.js +1 -1
- package/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/train/train-formation/train-formation.component.js +1 -1
- package/train/train-wagon/train-wagon.component.js +1 -1
- package/transparent-button-DJIkG5hj.js +9 -0
- package/visual-checkbox/visual-checkbox.component.js +1 -1
- package/file-selector-common-D88J9PEh.js +0 -5
- package/icon-sidebar-button-common-BeRXvifI.js +0 -7
- package/link-common-BBKGg9HN.js +0 -46
- package/radio-button-common-Nm9ULjVb.js +0 -5
- package/teaser-product-common-DIra6aVg.js +0 -5
- package/transparent-button-Bg9fU_iZ.js +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paginator.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/paginator/paginator/paginator.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,qBAAqB,CAAC;AAC7B,OAAO,iBAAiB,CAAC;AACzB,OAAO,iBAAiB,CAAC;AACzB,OAAO,6BAA6B,CAAC;;AAIrC;;GAEG;AACH,qBAEM,mBAAoB,SAAQ,wBAA0C;IAC1E,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"paginator.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/paginator/paginator/paginator.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,qBAAqB,CAAC;AAC7B,OAAO,iBAAiB,CAAC;AACzB,OAAO,iBAAiB,CAAC;AACzB,OAAO,6BAA6B,CAAC;;AAIrC;;GAEG;AACH,qBAEM,mBAAoB,SAAQ,wBAA0C;IAC1E,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAG1C;IAEX,wCAAwC;IACxC,SACgB,eAAe,EAAE,MAAM,EAAE,CAAM;IAE/C;;;OAGG;IACH,SAAmF,aAAa,EAC5F,OAAO,GACP,KAAK,CAAW;IAEpB;;;OAGG;IACH,SAEgB,8BAA8B,EAAE,MAAM,CAAM;IAE5D,OAAO,CAAC,aAAa,CAAuB;cAEzB,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAezE,2CAA2C;IAC3C,OAAO,CAAC,gBAAgB;IAIxB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA2B7B,uFAAuF;IACvF,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,YAAY;IAWpB;;;;OAIG;IACH,OAAO,CAAC,iCAAiC;IAUzC,OAAO,CAAC,0BAA0B;IAoClC,OAAO,CAAC,kBAAkB;cAmCP,eAAe,IAAI,cAAc;CAiBrD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,eAAe,EAAE,mBAAmB,CAAC;KACtC;CACF"}
|
|
@@ -371,6 +371,20 @@ let SbbPaginatorElement = (() => {
|
|
|
371
371
|
this._markForFocus = this.pageIndex;
|
|
372
372
|
}
|
|
373
373
|
}
|
|
374
|
+
/**
|
|
375
|
+
* A `pageSize` change would trigger a `pageIndex` change via `willUpdate`;
|
|
376
|
+
* this triggers a `ɵpage` event, but it's late for the `page` event,
|
|
377
|
+
* so the checks on the `pageIndex` changes are done here, and possibly the event is emitted.
|
|
378
|
+
*/
|
|
379
|
+
_setPageSizeFromSizeOptionsSelect(value) {
|
|
380
|
+
const previousPageSize = this.pageSize;
|
|
381
|
+
const currentPageIndex = this.pageIndex;
|
|
382
|
+
this.pageSize = value;
|
|
383
|
+
const newPageIndex = Math.floor(this.pageIndex * previousPageSize / this.pageSize) || 0;
|
|
384
|
+
if (currentPageIndex !== newPageIndex) {
|
|
385
|
+
this.emitPageEvent(currentPageIndex, newPageIndex);
|
|
386
|
+
}
|
|
387
|
+
}
|
|
374
388
|
_renderItemPerPageTemplate() {
|
|
375
389
|
return this.pageSizeOptions && this.pageSizeOptions.length > 0 ? html`
|
|
376
390
|
<div class="sbb-paginator__page-size-options">
|
|
@@ -387,7 +401,7 @@ let SbbPaginatorElement = (() => {
|
|
|
387
401
|
id="select"
|
|
388
402
|
?disabled=${this.disabled}
|
|
389
403
|
value=${this.pageSizeOptions?.find((e) => e === this.pageSize) ?? this.pageSizeOptions[0]}
|
|
390
|
-
@change=${(e) => this.
|
|
404
|
+
@change=${(e) => this._setPageSizeFromSizeOptionsSelect(+e.target.value)}
|
|
391
405
|
>
|
|
392
406
|
${repeat(this.pageSizeOptions, (element) => html`<sbb-option value=${element}>${element}</sbb-option>`)}
|
|
393
407
|
</sbb-select>
|
|
@@ -411,7 +425,7 @@ let SbbPaginatorElement = (() => {
|
|
|
411
425
|
data-index=${item}
|
|
412
426
|
aria-label="${this.accessibilityPageLabel ? this.accessibilityPageLabel : i18nPage[this.language.current]} ${item + 1}"
|
|
413
427
|
aria-current=${this.pageIndex === item ? "true" : nothing}
|
|
414
|
-
@click=${() => this.
|
|
428
|
+
@click=${() => this.changeAndEmitPage(item)}
|
|
415
429
|
@keyup=${this._handleKeyUp}
|
|
416
430
|
>
|
|
417
431
|
<span class="sbb-paginator__page--number-item-label">${item + 1}</span>
|
|
@@ -452,11 +466,12 @@ let SbbPaginatorElement = (() => {
|
|
|
452
466
|
_classThis = _classDescriptor.value;
|
|
453
467
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
454
468
|
})(), _a.styles = style, _a.events = {
|
|
455
|
-
page: "page"
|
|
469
|
+
page: "page",
|
|
470
|
+
ɵpage: "ɵpage"
|
|
456
471
|
}, __runInitializers(_classThis, _classExtraInitializers), _a;
|
|
457
472
|
return _classThis;
|
|
458
473
|
})();
|
|
459
474
|
export {
|
|
460
475
|
SbbPaginatorElement
|
|
461
476
|
};
|
|
462
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3IvcGFnaW5hdG9yLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZXBlYXQgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZXBlYXQuanMnO1xuXG5pbXBvcnQgeyBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGkxOG5JdGVtc1BlclBhZ2UsIGkxOG5QYWdlIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiU2VsZWN0RWxlbWVudCB9IGZyb20gJy4uLy4uL3NlbGVjdC5qcyc7XG5pbXBvcnQgeyBTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50TWl4aW4gfSBmcm9tICcuLi9jb21tb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYWdpbmF0b3Iuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9mb3JtLWZpZWxkLmpzJztcbmltcG9ydCAnLi4vLi4vc2VsZWN0LmpzJztcbmltcG9ydCAnLi4vLi4vb3B0aW9uLmpzJztcbmltcG9ydCAnLi4vLi4vc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcblxuY29uc3QgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgPSAzO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgcGFnaW5hdG9yIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXBhZ2luYXRvcicpXG5jbGFzcyBTYmJQYWdpbmF0b3JFbGVtZW50IGV4dGVuZHMgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIHBhZ2U6ICdwYWdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIGF2YWlsYWJsZSBgcGFnZVNpemVgIGNob2ljZXMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2Utc2l6ZS1vcHRpb25zJywgdHlwZTogQXJyYXkgfSlcbiAgcHVibGljIGFjY2Vzc29yIHBhZ2VTaXplT3B0aW9uczogbnVtYmVyW10gPSBbXTtcblxuICAvKipcbiAgICogUG9zaXRpb24gb2YgdGhlIHByZXYvbmV4dCBidXR0b25zOiBpZiBgcGFnZVNpemVPcHRpb25zYCBpcyBzZXQsXG4gICAqIHRoZSBzYmItc2VsZWN0IGZvciB0aGUgcGFnZVNpemUgY2hhbmdlIHdpbGwgYmUgcG9zaXRpb25lZCBvcHBvc2l0ZWx5LCB3aXRoIHRoZSBwYWdlIG51bWJlcnMgYWx3YXlzIGluIHRoZSBjZW50ZXIuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwYWdlci1wb3NpdGlvbicsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIG92ZXJyaWRlIGFjY2Vzc29yIHBhZ2VyUG9zaXRpb246XG4gICAgfCAnc3RhcnQnXG4gICAgfCAnZW5kJyA9ICdzdGFydCc7XG5cbiAgLyoqXG4gICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBpdGVtcyBwZXIgcGFnZS4gRGVmYXVsdHMgdG8gYEl0ZW1zIHBlciBwYWdlLmAuXG4gICAqIENhbiBiZSBzZXQgZm9yIGNhc2VzIGxpa2UgYSBjYXJvdXNlbCwgd2hlcmUgYHNsaWRlYCBvciBgaW1hZ2VgIGZpdHMgYmV0dGVyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktaXRlbXMtcGVyLXBhZ2UtbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5SXRlbXNQZXJQYWdlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX21hcmtGb3JGb2N1czogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAvKiogVGFiIG5hdmlnYXRpb24gY2FuIGZvcmNlIGEgcmVyZW5kZXIgd2hlbiBlbGxpcHNpcyBlbGVtZW50cyBuZWVkIHRvIGJlIGRpc3BsYXllZDsgdGhlIGZvY3VzIG11c3Qgc3RheSBvbiB0aGUgY29ycmVjdCBlbGVtZW50LiAqL1xuICAgIGlmICh0aGlzLl9tYXJrRm9yRm9jdXMgJiYgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLm1vc3RSZWNlbnRNb2RhbGl0eSA9PT0gJ2tleWJvYXJkJykge1xuICAgICAgY29uc3QgZm9jdXNFbGVtZW50ID0gdGhpcy5fZ2V0VmlzaWJsZVBhZ2VzKCkuZmluZChcbiAgICAgICAgKGUpID0+IHRoaXMucGFnZUluZGV4ID09PSArZS5nZXRBdHRyaWJ1dGUoJ2RhdGEtaW5kZXgnKSEsXG4gICAgICApO1xuICAgICAgaWYgKGZvY3VzRWxlbWVudCkge1xuICAgICAgICAoZm9jdXNFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5mb2N1cygpO1xuICAgICAgfVxuICAgICAgLy8gUmVzZXQgbWFyayBmb3IgZm9jdXNcbiAgICAgIHRoaXMuX21hcmtGb3JGb2N1cyA9IG51bGw7XG4gICAgfVxuICB9XG4gIC8qKiBSZXR1cm5zIHRoZSBkaXNwbGF5ZWQgcGFnZSBlbGVtZW50cy4gKi9cbiAgcHJpdmF0ZSBfZ2V0VmlzaWJsZVBhZ2VzKCk6IEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yQWxsKCcuc2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyLWl0ZW0nKSk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlIHRoZSBwYWdlcyBzZXQgYmFzZWQgb24gdGhlIGZvbGxvd2luZyBydWxlczpcbiAgICogIC0gdGhlIGZpcnN0IHBhZ2UgbXVzdCBhbHdheXMgYmUgdmlzaWJsZTtcbiAgICogIC0gdGhlIGxhc3QgcGFnZSBtdXN0IGFsd2F5cyBiZSB2aXNpYmxlO1xuICAgKiAgLSBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIGBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRGAgb3RoZXIgcGFnZXMsIGVsbGlwc2lzIGJ1dHRvbiBtdXN0IGJlIHVzZWQuXG4gICAqL1xuICBwcml2YXRlIF9nZXRWaXNpYmxlUGFnZXNJbmRleCgpOiAobnVtYmVyIHwgJ2VsbGlwc2lzJylbXSB7XG4gICAgY29uc3QgdG90YWxQYWdlczogbnVtYmVyID0gdGhpcy5udW1iZXJPZlBhZ2VzKCk7XG4gICAgY29uc3QgY3VycmVudFBhZ2VJbmRleDogbnVtYmVyID0gdGhpcy5wYWdlSW5kZXg7XG5cbiAgICBpZiAodG90YWxQYWdlcyA8PSBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCArIDIpIHtcbiAgICAgIHJldHVybiB0aGlzLl9yYW5nZSh0b3RhbFBhZ2VzKTtcbiAgICB9IGVsc2UgaWYgKGN1cnJlbnRQYWdlSW5kZXggPCBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCkge1xuICAgICAgcmV0dXJuIFsuLi50aGlzLl9yYW5nZShNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCArIDEpLCAnZWxsaXBzaXMnLCB0b3RhbFBhZ2VzIC0gMV07XG4gICAgfSBlbHNlIGlmIChjdXJyZW50UGFnZUluZGV4ID49IHRvdGFsUGFnZXMgLSBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCkge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgMCxcbiAgICAgICAgJ2VsbGlwc2lzJyxcbiAgICAgICAgLi4udGhpcy5fcmFuZ2UoTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgKyAxLCB0b3RhbFBhZ2VzIC0gMSAtIE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEKSxcbiAgICAgIF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIDAsXG4gICAgICAgICdlbGxpcHNpcycsXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXggLSAxLFxuICAgICAgICBjdXJyZW50UGFnZUluZGV4LFxuICAgICAgICBjdXJyZW50UGFnZUluZGV4ICsgMSxcbiAgICAgICAgJ2VsbGlwc2lzJyxcbiAgICAgICAgdG90YWxQYWdlcyAtIDEsXG4gICAgICBdO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGFuIGFycmF5IG9mIGNvbnNlY3V0aXZlIG51bWJlcnMgZ2l2ZW4gdGhlIGxlbmd0aCBhbmQgdGhlIHN0YXJ0aW5nIHZhbHVlLiAqL1xuICBwcml2YXRlIF9yYW5nZShsZW5ndGg6IG51bWJlciwgb2Zmc2V0OiBudW1iZXIgPSAwKTogbnVtYmVyW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoIH0sIChfLCBrKSA9PiBrICsgb2Zmc2V0KTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUtleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmtleSAhPT0gJyAnICYmIGV2ZW50LmtleSAhPT0gJ0VudGVyJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLl9nZXRWaXNpYmxlUGFnZXMoKS5maW5kKChlOiBFbGVtZW50KSA9PiBlID09PSBldmVudC50YXJnZXQpO1xuICAgIGlmIChjdXJyZW50KSB7XG4gICAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSB0aGlzLnBhZ2VJbmRleDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJJdGVtUGVyUGFnZVRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHwgdHlwZW9mIG5vdGhpbmcge1xuICAgIHJldHVybiB0aGlzLnBhZ2VTaXplT3B0aW9ucyAmJiB0aGlzLnBhZ2VTaXplT3B0aW9ucy5sZW5ndGggPiAwXG4gICAgICA/IGh0bWxgXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2Utc2l6ZS1vcHRpb25zXCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwic2VsZWN0XCJcbiAgICAgICAgICAgICAgPiR7dGhpcy5hY2Nlc3NpYmlsaXR5SXRlbXNQZXJQYWdlTGFiZWxcbiAgICAgICAgICAgICAgICA/IHRoaXMuYWNjZXNzaWJpbGl0eUl0ZW1zUGVyUGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgOiBpMThuSXRlbXNQZXJQYWdlW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19PC9sYWJlbFxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNiYi1mb3JtLWZpZWxkXG4gICAgICAgICAgICAgIGJvcmRlcmxlc3NcbiAgICAgICAgICAgICAgd2lkdGg9XCJjb2xsYXBzZVwiXG4gICAgICAgICAgICAgID9uZWdhdGl2ZT0ke3RoaXMubmVnYXRpdmV9XG4gICAgICAgICAgICAgIHNpemU9JHt0aGlzLnNpemV9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzYmItc2VsZWN0XG4gICAgICAgICAgICAgICAgaWQ9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgdmFsdWU9JHt0aGlzLnBhZ2VTaXplT3B0aW9ucz8uZmluZCgoZSkgPT4gZSA9PT0gdGhpcy5wYWdlU2l6ZSkgPz9cbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucyFbMF19XG4gICAgICAgICAgICAgICAgQGNoYW5nZT0keyhlOiBFdmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICh0aGlzLnBhZ2VTaXplID0gKygoZS50YXJnZXQgYXMgU2JiU2VsZWN0RWxlbWVudCkudmFsdWUgYXMgc3RyaW5nKSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICAgICAgICAgIHRoaXMucGFnZVNpemVPcHRpb25zISxcbiAgICAgICAgICAgICAgICAgIChlbGVtZW50KSA9PiBodG1sYDxzYmItb3B0aW9uIHZhbHVlPSR7ZWxlbWVudH0+JHtlbGVtZW50fTwvc2JiLW9wdGlvbj5gLFxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvc2JiLXNlbGVjdD5cbiAgICAgICAgICAgIDwvc2JiLWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIGBcbiAgICAgIDogbm90aGluZztcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlclBhZ2VOdW1iZXJzKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDx1bCBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2VzXCI+XG4gICAgICAgICR7cmVwZWF0KFxuICAgICAgICAgIHRoaXMuX2dldFZpc2libGVQYWdlc0luZGV4KCksXG4gICAgICAgICAgKGl0ZW06IG51bWJlciB8ICdlbGxpcHNpcycpOiBUZW1wbGF0ZVJlc3VsdCA9PlxuICAgICAgICAgICAgaXRlbSA9PT0gJ2VsbGlwc2lzJ1xuICAgICAgICAgICAgICA/IGh0bWxgXG4gICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1lbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2UtLWVsbGlwc2lzLWl0ZW1cIj7igKY8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIGBcbiAgICAgICAgICAgICAgOiBodG1sYFxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICA/ZGF0YS1zZWxlY3RlZD0ke3RoaXMucGFnZUluZGV4ID09PSBpdGVtfVxuICAgICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgZGF0YS1pbmRleD0ke2l0ZW19XG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIiR7dGhpcy5hY2Nlc3NpYmlsaXR5UGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpMThuUGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfSAke2l0ZW0gKyAxfVwiXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PSR7dGhpcy5wYWdlSW5kZXggPT09IGl0ZW0gPyAndHJ1ZScgOiBub3RoaW5nfVxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpID0+ICh0aGlzLnBhZ2VJbmRleCA9IGl0ZW0pfVxuICAgICAgICAgICAgICAgICAgICAgIEBrZXl1cD0ke3RoaXMuX2hhbmRsZUtleVVwfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbFwiPiR7aXRlbSArIDF9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgYCxcbiAgICAgICAgKX1cbiAgICAgIDwvdWw+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJQYWdpbmF0b3IoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wYWdpbmF0b3JcIj5cbiAgICAgICAgJHtcbiAgICAgICAgICB0aGlzLnBhZ2VyUG9zaXRpb24gPT09ICdzdGFydCdcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAke3RoaXMucmVuZGVyUHJldk5leHRCdXR0b25zKCl9ICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgJHt0aGlzLl9yZW5kZXJJdGVtUGVyUGFnZVRlbXBsYXRlKCl9YFxuICAgICAgICAgICAgOiBodG1sYCR7dGhpcy5fcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpfVxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX0gJHt0aGlzLnJlbmRlclByZXZOZXh0QnV0dG9ucygpfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgIH08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcGFnaW5hdG9yJzogU2JiUGFnaW5hdG9yRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBd0JBLE1BQU0sNkJBQTZCO0lBTzdCLHVCQUFtQixNQUFBOzswQkFEeEIsY0FBYyxlQUFlLENBQUM7Ozs7b0JBQ0csK0JBQStCLFVBQVU7Ozs7Ozs7Ozs7QUFBakQsRUFBQSxtQkFBUSxZQUEwQztBQUFBOztBQVExRTtBQU0wRDtBQVUxRDtBQWhCZ0IseUJBQUEsbUNBQUEsa0JBQUEsTUFBQSwrQkFBNEIsQ0FBQSxDQUFFO0FBTXFDLHlCQUFBLGtDQUFBLGtCQUFBLE1BQUEsa0NBQUEsR0FBQSxrQkFBQSxNQUFBLDZCQUV2RSxPQUFPO0FBUUgseUJBQUEsbURBQUEsa0JBQUEsTUFBQSxnQ0FBQSxHQUFBLGtCQUFBLE1BQUEsOENBQXlDLEVBQUU7QUFFbkQsV0FBQSxpQkFBYSxrQkFBQSxNQUFBLGlEQUFBLEdBQWtCO0FBQUEsSUE2SnpDO0FBQUE7QUFBQSxJQS9LRSxJQUFnQixrQkFBZTtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBL0IsSUFBZ0IsZ0JBQWUsT0FBQTtBQUFBLHlCQUFBLG1DQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUE7QUFBQTtB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
|
|
477
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3BhZ2luYXRvci9wYWdpbmF0b3IvcGFnaW5hdG9yLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZXBlYXQgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZXBlYXQuanMnO1xuXG5pbXBvcnQgeyBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGkxOG5JdGVtc1BlclBhZ2UsIGkxOG5QYWdlIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiU2VsZWN0RWxlbWVudCB9IGZyb20gJy4uLy4uL3NlbGVjdC5qcyc7XG5pbXBvcnQgeyBTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50TWl4aW4gfSBmcm9tICcuLi9jb21tb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYWdpbmF0b3Iuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9mb3JtLWZpZWxkLmpzJztcbmltcG9ydCAnLi4vLi4vc2VsZWN0LmpzJztcbmltcG9ydCAnLi4vLi4vb3B0aW9uLmpzJztcbmltcG9ydCAnLi4vLi4vc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcblxuY29uc3QgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgPSAzO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgcGFnaW5hdG9yIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXBhZ2luYXRvcicpXG5jbGFzcyBTYmJQYWdpbmF0b3JFbGVtZW50IGV4dGVuZHMgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIHBhZ2U6ICdwYWdlJyxcbiAgICDJtXBhZ2U6ICfJtXBhZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgYXZhaWxhYmxlIGBwYWdlU2l6ZWAgY2hvaWNlcy4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncGFnZS1zaXplLW9wdGlvbnMnLCB0eXBlOiBBcnJheSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgcGFnZVNpemVPcHRpb25zOiBudW1iZXJbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBvZiB0aGUgcHJldi9uZXh0IGJ1dHRvbnM6IGlmIGBwYWdlU2l6ZU9wdGlvbnNgIGlzIHNldCxcbiAgICogdGhlIHNiYi1zZWxlY3QgZm9yIHRoZSBwYWdlU2l6ZSBjaGFuZ2Ugd2lsbCBiZSBwb3NpdGlvbmVkIG9wcG9zaXRlbHksIHdpdGggdGhlIHBhZ2UgbnVtYmVycyBhbHdheXMgaW4gdGhlIGNlbnRlci5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2VyLXBvc2l0aW9uJywgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgb3ZlcnJpZGUgYWNjZXNzb3IgcGFnZXJQb3NpdGlvbjpcbiAgICB8ICdzdGFydCdcbiAgICB8ICdlbmQnID0gJ3N0YXJ0JztcblxuICAvKipcbiAgICogQWNjZXNzaWJpbGl0eSBsYWJlbCBmb3IgdGhlIGl0ZW1zIHBlciBwYWdlLiBEZWZhdWx0cyB0byBgSXRlbXMgcGVyIHBhZ2UuYC5cbiAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1pdGVtcy1wZXItcGFnZS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlJdGVtc1BlclBhZ2VMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBfbWFya0ZvckZvY3VzOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci51cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIC8qKiBUYWIgbmF2aWdhdGlvbiBjYW4gZm9yY2UgYSByZXJlbmRlciB3aGVuIGVsbGlwc2lzIGVsZW1lbnRzIG5lZWQgdG8gYmUgZGlzcGxheWVkOyB0aGUgZm9jdXMgbXVzdCBzdGF5IG9uIHRoZSBjb3JyZWN0IGVsZW1lbnQuICovXG4gICAgaWYgKHRoaXMuX21hcmtGb3JGb2N1cyAmJiBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnKSB7XG4gICAgICBjb25zdCBmb2N1c0VsZW1lbnQgPSB0aGlzLl9nZXRWaXNpYmxlUGFnZXMoKS5maW5kKFxuICAgICAgICAoZSkgPT4gdGhpcy5wYWdlSW5kZXggPT09ICtlLmdldEF0dHJpYnV0ZSgnZGF0YS1pbmRleCcpISxcbiAgICAgICk7XG4gICAgICBpZiAoZm9jdXNFbGVtZW50KSB7XG4gICAgICAgIChmb2N1c0VsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgICB9XG4gICAgICAvLyBSZXNldCBtYXJrIGZvciBmb2N1c1xuICAgICAgdGhpcy5fbWFya0ZvckZvY3VzID0gbnVsbDtcbiAgICB9XG4gIH1cbiAgLyoqIFJldHVybnMgdGhlIGRpc3BsYXllZCBwYWdlIGVsZW1lbnRzLiAqL1xuICBwcml2YXRlIF9nZXRWaXNpYmxlUGFnZXMoKTogRWxlbWVudFtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3JBbGwoJy5zYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbScpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGUgdGhlIHBhZ2VzIHNldCBiYXNlZCBvbiB0aGUgZm9sbG93aW5nIHJ1bGVzOlxuICAgKiAgLSB0aGUgZmlyc3QgcGFnZSBtdXN0IGFsd2F5cyBiZSB2aXNpYmxlO1xuICAgKiAgLSB0aGUgbGFzdCBwYWdlIG11c3QgYWx3YXlzIGJlIHZpc2libGU7XG4gICAqICAtIGlmIHRoZXJlIGFyZSBtb3JlIHRoYW4gYE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEYCBvdGhlciBwYWdlcywgZWxsaXBzaXMgYnV0dG9uIG11c3QgYmUgdXNlZC5cbiAgICovXG4gIHByaXZhdGUgX2dldFZpc2libGVQYWdlc0luZGV4KCk6IChudW1iZXIgfCAnZWxsaXBzaXMnKVtdIHtcbiAgICBjb25zdCB0b3RhbFBhZ2VzOiBudW1iZXIgPSB0aGlzLm51bWJlck9mUGFnZXMoKTtcbiAgICBjb25zdCBjdXJyZW50UGFnZUluZGV4OiBudW1iZXIgPSB0aGlzLnBhZ2VJbmRleDtcblxuICAgIGlmICh0b3RhbFBhZ2VzIDw9IE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEICsgMikge1xuICAgICAgcmV0dXJuIHRoaXMuX3JhbmdlKHRvdGFsUGFnZXMpO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudFBhZ2VJbmRleCA8IE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEKSB7XG4gICAgICByZXR1cm4gWy4uLnRoaXMuX3JhbmdlKE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEICsgMSksICdlbGxpcHNpcycsIHRvdGFsUGFnZXMgLSAxXTtcbiAgICB9IGVsc2UgaWYgKGN1cnJlbnRQYWdlSW5kZXggPj0gdG90YWxQYWdlcyAtIE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAwLFxuICAgICAgICAnZWxsaXBzaXMnLFxuICAgICAgICAuLi50aGlzLl9yYW5nZShNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCArIDEsIHRvdGFsUGFnZXMgLSAxIC0gTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQpLFxuICAgICAgXTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgMCxcbiAgICAgICAgJ2VsbGlwc2lzJyxcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleCAtIDEsXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXgsXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXggKyAxLFxuICAgICAgICAnZWxsaXBzaXMnLFxuICAgICAgICB0b3RhbFBhZ2VzIC0gMSxcbiAgICAgIF07XG4gICAgfVxuICB9XG5cbiAgLyoqIENyZWF0ZXMgYW4gYXJyYXkgb2YgY29uc2VjdXRpdmUgbnVtYmVycyBnaXZlbiB0aGUgbGVuZ3RoIGFuZCB0aGUgc3RhcnRpbmcgdmFsdWUuICovXG4gIHByaXZhdGUgX3JhbmdlKGxlbmd0aDogbnVtYmVyLCBvZmZzZXQ6IG51bWJlciA9IDApOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oeyBsZW5ndGggfSwgKF8sIGspID0+IGsgKyBvZmZzZXQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnICcgJiYgZXZlbnQua2V5ICE9PSAnRW50ZXInKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudCA9IHRoaXMuX2dldFZpc2libGVQYWdlcygpLmZpbmQoKGU6IEVsZW1lbnQpID0+IGUgPT09IGV2ZW50LnRhcmdldCk7XG4gICAgaWYgKGN1cnJlbnQpIHtcbiAgICAgIHRoaXMuX21hcmtGb3JGb2N1cyA9IHRoaXMucGFnZUluZGV4O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBIGBwYWdlU2l6ZWAgY2hhbmdlIHdvdWxkIHRyaWdnZXIgYSBgcGFnZUluZGV4YCBjaGFuZ2UgdmlhIGB3aWxsVXBkYXRlYDtcbiAgICogdGhpcyB0cmlnZ2VycyBhIGDJtXBhZ2VgIGV2ZW50LCBidXQgaXQncyBsYXRlIGZvciB0aGUgYHBhZ2VgIGV2ZW50LFxuICAgKiBzbyB0aGUgY2hlY2tzIG9uIHRoZSBgcGFnZUluZGV4YCBjaGFuZ2VzIGFyZSBkb25lIGhlcmUsIGFuZCBwb3NzaWJseSB0aGUgZXZlbnQgaXMgZW1pdHRlZC5cbiAgICovXG4gIHByaXZhdGUgX3NldFBhZ2VTaXplRnJvbVNpemVPcHRpb25zU2VsZWN0KHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91c1BhZ2VTaXplID0gdGhpcy5wYWdlU2l6ZTtcbiAgICBjb25zdCBjdXJyZW50UGFnZUluZGV4ID0gdGhpcy5wYWdlSW5kZXg7XG4gICAgdGhpcy5wYWdlU2l6ZSA9IHZhbHVlO1xuICAgIGNvbnN0IG5ld1BhZ2VJbmRleCA9IE1hdGguZmxvb3IoKHRoaXMucGFnZUluZGV4ICogcHJldmlvdXNQYWdlU2l6ZSkgLyB0aGlzLnBhZ2VTaXplKSB8fCAwO1xuICAgIGlmIChjdXJyZW50UGFnZUluZGV4ICE9PSBuZXdQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMuZW1pdFBhZ2VFdmVudChjdXJyZW50UGFnZUluZGV4LCBuZXdQYWdlSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlckl0ZW1QZXJQYWdlVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQgfCB0eXBlb2Ygbm90aGluZyB7XG4gICAgcmV0dXJuIHRoaXMucGFnZVNpemVPcHRpb25zICYmIHRoaXMucGFnZVNpemVPcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgID8gaHRtbGBcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS1zaXplLW9wdGlvbnNcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICA+JHt0aGlzLmFjY2Vzc2liaWxpdHlJdGVtc1BlclBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgID8gdGhpcy5hY2Nlc3NpYmlsaXR5SXRlbXNQZXJQYWdlTGFiZWxcbiAgICAgICAgICAgICAgICA6IGkxOG5JdGVtc1BlclBhZ2VbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX08L2xhYmVsXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c2JiLWZvcm0tZmllbGRcbiAgICAgICAgICAgICAgYm9yZGVybGVzc1xuICAgICAgICAgICAgICB3aWR0aD1cImNvbGxhcHNlXCJcbiAgICAgICAgICAgICAgP25lZ2F0aXZlPSR7dGhpcy5uZWdhdGl2ZX1cbiAgICAgICAgICAgICAgc2l6ZT0ke3RoaXMuc2l6ZX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNiYi1zZWxlY3RcbiAgICAgICAgICAgICAgICBpZD1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICAgICB2YWx1ZT0ke3RoaXMucGFnZVNpemVPcHRpb25zPy5maW5kKChlKSA9PiBlID09PSB0aGlzLnBhZ2VTaXplKSA/P1xuICAgICAgICAgICAgICAgIHRoaXMucGFnZVNpemVPcHRpb25zIVswXX1cbiAgICAgICAgICAgICAgICBAY2hhbmdlPSR7KGU6IEV2ZW50KSA9PlxuICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0UGFnZVNpemVGcm9tU2l6ZU9wdGlvbnNTZWxlY3QoXG4gICAgICAgICAgICAgICAgICAgICsoKGUudGFyZ2V0IGFzIFNiYlNlbGVjdEVsZW1lbnQpLnZhbHVlIGFzIHN0cmluZyksXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgJHtyZXBlYXQoXG4gICAgICAgICAgICAgICAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucyEsXG4gICAgICAgICAgICAgICAgICAoZWxlbWVudCkgPT4gaHRtbGA8c2JiLW9wdGlvbiB2YWx1ZT0ke2VsZW1lbnR9PiR7ZWxlbWVudH08L3NiYi1vcHRpb24+YCxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L3NiYi1zZWxlY3Q+XG4gICAgICAgICAgICA8L3NiYi1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICBgXG4gICAgICA6IG5vdGhpbmc7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJQYWdlTnVtYmVycygpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8dWwgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlc1wiPlxuICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICB0aGlzLl9nZXRWaXNpYmxlUGFnZXNJbmRleCgpLFxuICAgICAgICAgIChpdGVtOiBudW1iZXIgfCAnZWxsaXBzaXMnKTogVGVtcGxhdGVSZXN1bHQgPT5cbiAgICAgICAgICAgIGl0ZW0gPT09ICdlbGxpcHNpcydcbiAgICAgICAgICAgICAgPyBodG1sYFxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS0tZWxsaXBzaXNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1lbGxpcHNpcy1pdGVtXCI+4oCmPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICBgXG4gICAgICAgICAgICAgIDogaHRtbGBcbiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2UtLW51bWJlclwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgP2RhdGEtc2VsZWN0ZWQ9JHt0aGlzLnBhZ2VJbmRleCA9PT0gaXRlbX1cbiAgICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyLWl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgIGRhdGEtaW5kZXg9JHtpdGVtfVxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCIke3RoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmFjY2Vzc2liaWxpdHlQYWdlTGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgIDogaTE4blBhZ2VbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX0gJHtpdGVtICsgMX1cIlxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY3VycmVudD0ke3RoaXMucGFnZUluZGV4ID09PSBpdGVtID8gJ3RydWUnIDogbm90aGluZ31cbiAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB0aGlzLmNoYW5nZUFuZEVtaXRQYWdlKGl0ZW0pfVxuICAgICAgICAgICAgICAgICAgICAgIEBrZXl1cD0ke3RoaXMuX2hhbmRsZUtleVVwfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbFwiPiR7aXRlbSArIDF9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgYCxcbiAgICAgICAgKX1cbiAgICAgIDwvdWw+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJQYWdpbmF0b3IoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wYWdpbmF0b3JcIj5cbiAgICAgICAgJHtcbiAgICAgICAgICB0aGlzLnBhZ2VyUG9zaXRpb24gPT09ICdzdGFydCdcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAke3RoaXMucmVuZGVyUHJldk5leHRCdXR0b25zKCl9ICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgJHt0aGlzLl9yZW5kZXJJdGVtUGVyUGFnZVRlbXBsYXRlKCl9YFxuICAgICAgICAgICAgOiBodG1sYCR7dGhpcy5fcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpfVxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX0gJHt0aGlzLnJlbmRlclByZXZOZXh0QnV0dG9ucygpfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgIH08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcGFnaW5hdG9yJzogU2JiUGFnaW5hdG9yRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpb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
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CSSResultGroup, PropertyDeclaration, PropertyValues, TemplateResult } from 'lit';
|
|
2
2
|
import { SbbOpenCloseBaseElement } from '../core/base-elements.js';
|
|
3
3
|
import { FormRestoreReason, FormRestoreState } from '../core/mixins.js';
|
|
4
|
+
import { SbbOptionElement } from '../option.js';
|
|
4
5
|
declare const SbbSelectElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbUpdateSchedulerMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbDisabledMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbNegativeMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbHydrationMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbRequiredMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbReadonlyMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbFormAssociatedMixinType> & typeof SbbOpenCloseBaseElement;
|
|
5
6
|
/**
|
|
6
7
|
* It displays a panel with selectable options.
|
|
@@ -29,7 +30,9 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
29
30
|
accessor multiple: boolean;
|
|
30
31
|
accessor disabled: boolean;
|
|
31
32
|
/** Value of the form element. */
|
|
32
|
-
|
|
33
|
+
set value(value: T[] | T);
|
|
34
|
+
get value(): T[] | T | null;
|
|
35
|
+
private _value;
|
|
33
36
|
/**
|
|
34
37
|
* Size variant, either m or s.
|
|
35
38
|
* @default 'm' / 's' (lean)
|
|
@@ -56,14 +59,14 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
56
59
|
private _didLoad;
|
|
57
60
|
private _isPointerDownEventOnMenu;
|
|
58
61
|
private _languageController;
|
|
62
|
+
private _isValueManuallyAssigned;
|
|
59
63
|
/**
|
|
60
64
|
* The 'combobox' input element
|
|
61
65
|
* @internal
|
|
62
66
|
*/
|
|
63
67
|
get inputElement(): HTMLElement;
|
|
64
|
-
/**
|
|
65
|
-
|
|
66
|
-
private get _filteredOptions();
|
|
68
|
+
/** Returns all SbbOptionElements from this sbb-select instance. */
|
|
69
|
+
get options(): SbbOptionElement<T>[];
|
|
67
70
|
constructor();
|
|
68
71
|
private _syncAriaLabels;
|
|
69
72
|
/** Opens the selection panel. */
|
|
@@ -73,6 +76,7 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
73
76
|
private _isZeroAnimationDuration;
|
|
74
77
|
/** Gets the current displayed value. */
|
|
75
78
|
getDisplayValue(): string;
|
|
79
|
+
private _selectableOptions;
|
|
76
80
|
/** Listens to option changes. */
|
|
77
81
|
private _onOptionChanged;
|
|
78
82
|
/** Listens to option changes. */
|
|
@@ -88,8 +92,6 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
88
92
|
* If the `disabled` or the `readonly` properties are set, and the panel is open, close it.
|
|
89
93
|
*/
|
|
90
94
|
private _closeOnDisabledReadonlyChanged;
|
|
91
|
-
/** Sets the _displayValue by checking the internal sbb-options and setting the correct `selected` value on them. */
|
|
92
|
-
private _onValueChanged;
|
|
93
95
|
protected firstUpdated(changedProperties: PropertyValues<this>): void;
|
|
94
96
|
/** @internal */
|
|
95
97
|
focus(): void;
|
|
@@ -115,7 +117,7 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
115
117
|
* @internal
|
|
116
118
|
*/
|
|
117
119
|
formStateRestoreCallback(state: FormRestoreState | null, _reason: FormRestoreReason): void;
|
|
118
|
-
|
|
120
|
+
protected formState(): FormRestoreState;
|
|
119
121
|
private _syncProperties;
|
|
120
122
|
protected shouldValidate(name: PropertyKey | undefined): boolean;
|
|
121
123
|
protected validate(): void;
|
|
@@ -149,7 +151,9 @@ export declare class SbbSelectElement<T = string> extends SbbSelectElement_base
|
|
|
149
151
|
private _resetActiveElement;
|
|
150
152
|
private _pointerDownListener;
|
|
151
153
|
private _closeOnBackdropClick;
|
|
152
|
-
private
|
|
154
|
+
private _updateOptionsFromValue;
|
|
155
|
+
private _updateValueFromOptions;
|
|
156
|
+
private _onSlotChange;
|
|
153
157
|
private _getSelected;
|
|
154
158
|
private _toggleOpening;
|
|
155
159
|
private _spreadDeferredDisplayValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/select/select.component.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAO/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAWnE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAQtB,MAAM,mBAAmB,CAAC;;
|
|
1
|
+
{"version":3,"file":"select.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/select/select.component.ts"],"names":[],"mappings":"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"}
|