@sbb-esta/lyne-elements-experimental 4.0.0-next.2 → 4.0.0-next.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/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +38 -0
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +88 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +31 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +55 -0
- package/autocomplete-grid/autocomplete-grid-button.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-button.js +4 -0
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +19 -0
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +25 -0
- package/autocomplete-grid/autocomplete-grid-cell.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-cell.js +4 -0
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +19 -0
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +24 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.js +4 -0
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +27 -0
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +42 -0
- package/autocomplete-grid/autocomplete-grid-option.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-option.js +5 -0
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +20 -0
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +28 -0
- package/autocomplete-grid/autocomplete-grid-row.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid-row.js +4 -0
- package/autocomplete-grid/autocomplete-grid.d.ts +5 -0
- package/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
- package/autocomplete-grid/autocomplete-grid.js +4 -0
- package/autocomplete-grid.d.ts +10 -0
- package/autocomplete-grid.d.ts.map +1 -0
- package/autocomplete-grid.js +15 -0
- package/core/datetime.d.ts +1 -1
- package/core/timetable/access-leg-helper.d.ts +1 -1
- package/core/timetable/timetable-helper.d.ts +1 -1
- package/core/timetable.d.ts +3 -3
- package/custom-elements.json +949 -106
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +38 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +139 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +31 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +82 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-button.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +19 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +40 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +19 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +34 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +27 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +139 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-option.js +6 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +20 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +115 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid-row.js +5 -0
- package/development/autocomplete-grid/autocomplete-grid.d.ts +5 -0
- package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
- package/development/autocomplete-grid/autocomplete-grid.js +5 -0
- package/development/autocomplete-grid.d.ts +10 -0
- package/development/autocomplete-grid.d.ts.map +1 -0
- package/development/autocomplete-grid.js +16 -0
- package/development/core/datetime.d.ts +1 -1
- package/development/core/timetable/access-leg-helper.d.ts +1 -1
- package/development/core/timetable/access-leg-helper.js +1 -1
- package/development/core/timetable/timetable-helper.d.ts +1 -1
- package/development/core/timetable/timetable-helper.js +1 -1
- package/development/core/timetable.d.ts +3 -3
- package/development/journey-summary/journey-summary.component.d.ts +1 -1
- package/development/journey-summary/journey-summary.component.js +1 -1
- package/development/journey-summary.d.ts +1 -1
- package/development/pearl-chain/pearl-chain.component.d.ts +1 -1
- package/development/pearl-chain/pearl-chain.component.js +1 -1
- package/development/pearl-chain-time/pearl-chain-time.component.d.ts +1 -1
- package/development/pearl-chain-time/pearl-chain-time.component.js +1 -1
- package/development/pearl-chain-time.d.ts +1 -1
- package/development/pearl-chain-vertical-item.d.ts +1 -1
- package/development/pearl-chain-vertical.d.ts +1 -1
- package/development/pearl-chain.d.ts +1 -1
- package/development/seat-reservation/common/mapper/icon-mapper.js +1 -1
- package/development/seat-reservation/common/mapper/mapper.d.ts +1 -1
- package/development/seat-reservation/common/mapper/mapper.js +1 -1
- package/development/seat-reservation/common/mapper.d.ts +2 -2
- package/development/seat-reservation/common/translations.d.ts +1 -1
- package/development/seat-reservation/common.d.ts +4 -4
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +2 -1
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +9 -2
- package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +1 -1
- package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
- package/development/seat-reservation/seat-reservation/seat-reservation.component.js +7 -4
- package/development/seat-reservation/seat-reservation-area.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
- package/development/seat-reservation/seat-reservation-graphic.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +7 -3
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +52 -17
- package/development/seat-reservation/seat-reservation-navigation-coach.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
- package/development/seat-reservation/seat-reservation-navigation-services.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
- package/development/seat-reservation/seat-reservation-place-control.d.ts +1 -1
- package/development/seat-reservation/seat-reservation-scoped.d.ts +1 -1
- package/development/seat-reservation/seat-reservation.d.ts +2 -2
- package/development/seat-reservation.d.ts +8 -8
- package/development/timetable-duration.d.ts +1 -1
- package/development/timetable-row/timetable-row.component.d.ts +1 -1
- package/development/timetable-row/timetable-row.component.js +1 -1
- package/development/timetable-row.d.ts +1 -1
- package/index.d.ts +12 -0
- package/index.js +12 -0
- package/journey-summary/journey-summary.component.d.ts +1 -1
- package/journey-summary.d.ts +1 -1
- package/package.json +37 -2
- package/pearl-chain/pearl-chain.component.d.ts +1 -1
- package/pearl-chain-time/pearl-chain-time.component.d.ts +1 -1
- package/pearl-chain-time.d.ts +1 -1
- package/pearl-chain-vertical-item.d.ts +1 -1
- package/pearl-chain-vertical.d.ts +1 -1
- package/pearl-chain.d.ts +1 -1
- package/seat-reservation/common/mapper/mapper.d.ts +1 -1
- package/seat-reservation/common/mapper.d.ts +2 -2
- package/seat-reservation/common/translations.d.ts +1 -1
- package/seat-reservation/common.d.ts +4 -4
- package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +2 -1
- package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
- package/seat-reservation/seat-reservation/seat-reservation-base-element.js +23 -22
- package/seat-reservation/seat-reservation/seat-reservation.component.d.ts +1 -1
- package/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
- package/seat-reservation/seat-reservation/seat-reservation.component.js +13 -14
- package/seat-reservation/seat-reservation-area.d.ts +1 -1
- package/seat-reservation/seat-reservation-graphic.d.ts +1 -1
- package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +7 -3
- package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
- package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +147 -126
- package/seat-reservation/seat-reservation-navigation-coach.d.ts +1 -1
- package/seat-reservation/seat-reservation-navigation-services.d.ts +1 -1
- package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +1 -1
- package/seat-reservation/seat-reservation-place-control.d.ts +1 -1
- package/seat-reservation/seat-reservation-scoped.d.ts +1 -1
- package/seat-reservation/seat-reservation.d.ts +2 -2
- package/seat-reservation.d.ts +8 -8
- package/timetable-duration.d.ts +1 -1
- package/timetable-row/timetable-row.component.d.ts +1 -1
- package/timetable-row.d.ts +1 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { SbbAutocompleteBaseElement } from '@sbb-esta/lyne-elements/autocomplete.js';
|
|
2
|
+
import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Combined with a native input, it displays a panel with a list of available options with connected buttons.
|
|
5
|
+
*
|
|
6
|
+
* @slot - Use the unnamed slot to add `sbb-autocomplete-grid-row` or `sbb-autocomplete-grid-optgroup` elements to the `sbb-autocomplete-grid`.
|
|
7
|
+
* @cssprop [--sbb-autocomplete-z-index=var(--sbb-overlay-default-z-index)] - To specify a custom stack order,
|
|
8
|
+
* the `z-index` can be overridden by defining this CSS variable. The default `z-index` of the
|
|
9
|
+
* component is set to `var(--sbb-overlay-default-z-index)` with a value of `1000`.
|
|
10
|
+
*/
|
|
11
|
+
export declare class SbbAutocompleteGridElement<T = string> extends SbbAutocompleteBaseElement<T> {
|
|
12
|
+
static readonly role: string | null;
|
|
13
|
+
protected overlayId: string;
|
|
14
|
+
protected panelRole: string;
|
|
15
|
+
private _activeColumnIndex;
|
|
16
|
+
protected get options(): SbbAutocompleteGridOptionElement<T>[];
|
|
17
|
+
constructor();
|
|
18
|
+
protected syncNegative(): void;
|
|
19
|
+
protected openedPanelKeyboardInteraction(event: KeyboardEvent): void;
|
|
20
|
+
/**
|
|
21
|
+
* Select an element on 'Enter' keypress.
|
|
22
|
+
*
|
|
23
|
+
* Due to keyboard navigation code, the `_activeColumnIndex` is zero when an option is 'focused'
|
|
24
|
+
* and greater than zero when a button is 'focused', so asking for `querySelectorAll(...)[this._activeColumnIndex]`
|
|
25
|
+
* would always return a `SbbAutocompleteGridButtonElement`.
|
|
26
|
+
*/
|
|
27
|
+
protected selectByKeyboard(event: KeyboardEvent): void;
|
|
28
|
+
protected setNextActiveOption(event?: KeyboardEvent): void;
|
|
29
|
+
private _setNextHorizontalActiveElement;
|
|
30
|
+
protected resetActiveElement(): void;
|
|
31
|
+
protected setTriggerAttributes(element: HTMLInputElement): void;
|
|
32
|
+
}
|
|
33
|
+
declare global {
|
|
34
|
+
interface HTMLElementTagNameMap {
|
|
35
|
+
'sbb-autocomplete-grid': SbbAutocompleteGridElement;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=autocomplete-grid.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AASrF,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAUlF;;;;;;;GAOG;AACH,qBAEM,0BAA0B,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,0BAA0B,CAAC,CAAC,CAAC;IAChF,gBAAgC,IAAI,gBAAkC;IACtE,SAAS,CAAC,SAAS,SAAuC;IAC1D,SAAS,CAAC,SAAS,SAAU;IAC7B,OAAO,CAAC,kBAAkB,CAAK;IAE/B,SAAS,KAAK,OAAO,IAAI,gCAAgC,CAAC,CAAC,CAAC,EAAE,CAM7D;;IAOD,SAAS,CAAC,YAAY,IAAI,IAAI;IAY9B,SAAS,CAAC,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IA0BpE;;;;;;OAMG;IACH,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAgBtD,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI;IA+B1D,OAAO,CAAC,+BAA+B;IAqCvC,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAapC,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAGhE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { SbbAutocompleteBaseElement } from "@sbb-esta/lyne-elements/autocomplete.js";
|
|
3
|
+
import { getNextElementIndex } from "@sbb-esta/lyne-elements/core/a11y.js";
|
|
4
|
+
import { isSafari } from "@sbb-esta/lyne-elements/core/dom.js";
|
|
5
|
+
import { setAriaComboBoxAttributes } from "@sbb-esta/lyne-elements/core/overlay.js";
|
|
6
|
+
import { customElement } from "lit/decorators.js";
|
|
7
|
+
import { SbbAutocompleteGridOptionElement } from "../autocomplete-grid-option.js";
|
|
8
|
+
let nextId = 0;
|
|
9
|
+
const ariaRoleOnHost = isSafari;
|
|
10
|
+
let SbbAutocompleteGridElement = (() => {
|
|
11
|
+
var _a;
|
|
12
|
+
let _classDecorators = [customElement("sbb-autocomplete-grid")];
|
|
13
|
+
let _classDescriptor;
|
|
14
|
+
let _classExtraInitializers = [];
|
|
15
|
+
let _classThis;
|
|
16
|
+
let _classSuper = SbbAutocompleteBaseElement;
|
|
17
|
+
_a = class extends _classSuper {
|
|
18
|
+
get options() {
|
|
19
|
+
return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
|
|
20
|
+
}
|
|
21
|
+
constructor() {
|
|
22
|
+
super();
|
|
23
|
+
this.overlayId = `sbb-autocomplete-grid-${++nextId}`;
|
|
24
|
+
this.panelRole = "grid";
|
|
25
|
+
this._activeColumnIndex = 0;
|
|
26
|
+
this.addEventListener?.("optionselected", (e) => this.onOptionSelected(e));
|
|
27
|
+
}
|
|
28
|
+
syncNegative() {
|
|
29
|
+
this.querySelectorAll?.("sbb-divider, sbb-autocomplete-grid-button, sbb-option-hint").forEach((e) => e.negative = this.negative);
|
|
30
|
+
this.querySelectorAll?.("sbb-autocomplete-grid-row, sbb-autocomplete-grid-option, sbb-autocomplete-grid-optgroup").forEach((element) => element.toggleAttribute("data-negative", this.negative));
|
|
31
|
+
}
|
|
32
|
+
openedPanelKeyboardInteraction(event) {
|
|
33
|
+
if (this.state !== "opened") {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
switch (event.key) {
|
|
37
|
+
case "Tab":
|
|
38
|
+
this.close();
|
|
39
|
+
break;
|
|
40
|
+
case "Enter":
|
|
41
|
+
this.selectByKeyboard(event);
|
|
42
|
+
break;
|
|
43
|
+
case "ArrowDown":
|
|
44
|
+
case "ArrowUp":
|
|
45
|
+
this.setNextActiveOption(event);
|
|
46
|
+
break;
|
|
47
|
+
case "ArrowRight":
|
|
48
|
+
case "ArrowLeft":
|
|
49
|
+
this._setNextHorizontalActiveElement(event);
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Select an element on 'Enter' keypress.
|
|
55
|
+
*
|
|
56
|
+
* Due to keyboard navigation code, the `_activeColumnIndex` is zero when an option is 'focused'
|
|
57
|
+
* and greater than zero when a button is 'focused', so asking for `querySelectorAll(...)[this._activeColumnIndex]`
|
|
58
|
+
* would always return a `SbbAutocompleteGridButtonElement`.
|
|
59
|
+
*/
|
|
60
|
+
selectByKeyboard(event) {
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
if (this._activeColumnIndex !== 0) {
|
|
63
|
+
this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button")[
|
|
64
|
+
// We ignore the option in the selector. Therefore, we have to shift the activeColumnIndex by one.
|
|
65
|
+
this._activeColumnIndex - 1
|
|
66
|
+
]?.click();
|
|
67
|
+
} else {
|
|
68
|
+
this.activeOption?.["selectViaUserInteraction"](true);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
setNextActiveOption(event) {
|
|
72
|
+
const enabledOptions = this.options.filter((opt) => !opt.matches(":state(disabled)"));
|
|
73
|
+
this.activeOption?.setActive(false);
|
|
74
|
+
this.triggerElement?.removeAttribute("aria-activedescendant");
|
|
75
|
+
Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-row [data-focus-visible]") ?? []).forEach((row) => row.removeAttribute("data-focus-visible"));
|
|
76
|
+
this._activeColumnIndex = 0;
|
|
77
|
+
if (!enabledOptions.length) {
|
|
78
|
+
this.activeOption = null;
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
const activeItemIndex = this.activeOption ? enabledOptions.indexOf(this.activeOption) : -1;
|
|
82
|
+
const next = getNextElementIndex(event, activeItemIndex, enabledOptions.length);
|
|
83
|
+
this.activeOption = enabledOptions[next];
|
|
84
|
+
this.activeOption.setActive(true);
|
|
85
|
+
this.triggerElement?.setAttribute("aria-activedescendant", this.activeOption.id);
|
|
86
|
+
this.activeOption.scrollIntoView({ block: "nearest" });
|
|
87
|
+
if (this.autoSelectActiveOption) {
|
|
88
|
+
this.onOptionArrowsSelected(this.activeOption);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
_setNextHorizontalActiveElement(event) {
|
|
92
|
+
if (!this.activeOption) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const elementsInRow = Array.from(this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-option, sbb-autocomplete-grid-button") ?? [])?.filter((el) => !el.matches(":state(disabled)"));
|
|
96
|
+
if (!elementsInRow.length) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const next = getNextElementIndex(event, this._activeColumnIndex, elementsInRow.length);
|
|
100
|
+
const nextElement = elementsInRow[next];
|
|
101
|
+
if (nextElement instanceof SbbAutocompleteGridOptionElement) {
|
|
102
|
+
nextElement.setActive(true);
|
|
103
|
+
} else {
|
|
104
|
+
nextElement.toggleAttribute("data-focus-visible", true);
|
|
105
|
+
}
|
|
106
|
+
const lastActiveElement = elementsInRow[this._activeColumnIndex];
|
|
107
|
+
if (lastActiveElement instanceof SbbAutocompleteGridOptionElement) {
|
|
108
|
+
lastActiveElement.setActive(false);
|
|
109
|
+
} else {
|
|
110
|
+
lastActiveElement.toggleAttribute("data-focus-visible", false);
|
|
111
|
+
}
|
|
112
|
+
this.triggerElement?.setAttribute("aria-activedescendant", nextElement.id);
|
|
113
|
+
nextElement.scrollIntoView({ block: "nearest" });
|
|
114
|
+
this._activeColumnIndex = next;
|
|
115
|
+
}
|
|
116
|
+
resetActiveElement() {
|
|
117
|
+
if (this._activeColumnIndex !== 0) {
|
|
118
|
+
this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button").forEach((e) => e.toggleAttribute("data-focus-visible", false));
|
|
119
|
+
}
|
|
120
|
+
this.activeOption?.setActive(false);
|
|
121
|
+
this.activeOption = null;
|
|
122
|
+
this._activeColumnIndex = 0;
|
|
123
|
+
this.triggerElement?.removeAttribute("aria-activedescendant");
|
|
124
|
+
}
|
|
125
|
+
setTriggerAttributes(element) {
|
|
126
|
+
setAriaComboBoxAttributes(element, ariaRoleOnHost ? this.id : this.overlayId, false, "grid");
|
|
127
|
+
}
|
|
128
|
+
}, _classThis = _a, (() => {
|
|
129
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
130
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
131
|
+
_classThis = _classDescriptor.value;
|
|
132
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
133
|
+
})(), _a.role = ariaRoleOnHost ? "grid" : null, __runInitializers(_classThis, _classExtraInitializers), _a;
|
|
134
|
+
return _classThis;
|
|
135
|
+
})();
|
|
136
|
+
export {
|
|
137
|
+
SbbAutocompleteGridElement
|
|
138
|
+
};
|
|
139
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGlzU2FmYXJpIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kb20uanMnO1xuaW1wb3J0IHsgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkRpdmlkZXJFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvZGl2aWRlci5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wdEdyb3VwRWxlbWVudCwgU2JiT3B0aW9uSGludEVsZW1lbnQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9vcHRpb24uanMnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudCB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS1ncmlkLWJ1dHRvbi50cyc7XG5pbXBvcnQgeyBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbi50cyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIE9uIFNhZmFyaSwgdGhlIGFyaWEgcm9sZSAnbGlzdGJveCcgbXVzdCBiZSBvbiB0aGUgaG9zdCBlbGVtZW50LCBvciBlbHNlIFZvaWNlT3ZlciB3b24ndCB3b3JrIGF0IGFsbC5cbiAqIE9uIHRoZSBvdGhlciBoYW5kLCBKQVdTIGFuZCBOVkRBIG5lZWQgdGhlIHJvbGUgdG8gYmUgXCJjbG9zZXJcIiB0byB0aGUgb3B0aW9ucywgb3IgZWxzZSBvcHRncm91cHMgd29uJ3Qgd29yay5cbiAqL1xuY29uc3QgYXJpYVJvbGVPbkhvc3QgPSBpc1NhZmFyaTtcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgbmF0aXZlIGlucHV0LCBpdCBkaXNwbGF5cyBhIHBhbmVsIHdpdGggYSBsaXN0IG9mIGF2YWlsYWJsZSBvcHRpb25zIHdpdGggY29ubmVjdGVkIGJ1dHRvbnMuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3dgIG9yIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXBgIGVsZW1lbnRzIHRvIHRoZSBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkYC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1hdXRvY29tcGxldGUtei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQnKVxuY2xhc3MgU2JiQXV0b2NvbXBsZXRlR3JpZEVsZW1lbnQ8VCA9IHN0cmluZz4gZXh0ZW5kcyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudDxUPiB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgcm9sZSA9IGFyaWFSb2xlT25Ib3N0ID8gJ2dyaWQnIDogbnVsbDtcbiAgcHJvdGVjdGVkIG92ZXJsYXlJZCA9IGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtJHsrK25leHRJZH1gO1xuICBwcm90ZWN0ZWQgcGFuZWxSb2xlID0gJ2dyaWQnO1xuICBwcml2YXRlIF9hY3RpdmVDb2x1bW5JbmRleCA9IDA7XG5cbiAgcHJvdGVjdGVkIGdldCBvcHRpb25zKCk6IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50PFQ+W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD4+KFxuICAgICAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbicsXG4gICAgICApID8/IFtdLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Lignb3B0aW9uc2VsZWN0ZWQnLCAoZTogRXZlbnQpID0+IHRoaXMub25PcHRpb25TZWxlY3RlZChlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3luY05lZ2F0aXZlKCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uPFxuICAgICAgU2JiRGl2aWRlckVsZW1lbnQgfCBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudCB8IFNiYk9wdGlvbkhpbnRFbGVtZW50XG4gICAgPignc2JiLWRpdmlkZXIsIHNiYi1hdXRvY29tcGxldGUtZ3JpZC1idXR0b24sIHNiYi1vcHRpb24taGludCcpLmZvckVhY2goXG4gICAgICAoZSkgPT4gKGUubmVnYXRpdmUgPSB0aGlzLm5lZ2F0aXZlKSxcbiAgICApO1xuXG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD4gfCBTYmJPcHRHcm91cEVsZW1lbnQ+KFxuICAgICAgJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3csIHNiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRpb24sIHNiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cCcsXG4gICAgKS5mb3JFYWNoKChlbGVtZW50KSA9PiBlbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1uZWdhdGl2ZScsIHRoaXMubmVnYXRpdmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvcGVuZWRQYW5lbEtleWJvYXJkSW50ZXJhY3Rpb24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgY2FzZSAnVGFiJzpcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgICB0aGlzLnNlbGVjdEJ5S2V5Ym9hcmQoZXZlbnQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICB0aGlzLnNldE5leHRBY3RpdmVPcHRpb24oZXZlbnQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICB0aGlzLl9zZXROZXh0SG9yaXpvbnRhbEFjdGl2ZUVsZW1lbnQoZXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0IGFuIGVsZW1lbnQgb24gJ0VudGVyJyBrZXlwcmVzcy5cbiAgICpcbiAgICogRHVlIHRvIGtleWJvYXJkIG5hdmlnYXRpb24gY29kZSwgdGhlIGBfYWN0aXZlQ29sdW1uSW5kZXhgIGlzIHplcm8gd2hlbiBhbiBvcHRpb24gaXMgJ2ZvY3VzZWQnXG4gICAqIGFuZCBncmVhdGVyIHRoYW4gemVybyB3aGVuIGEgYnV0dG9uIGlzICdmb2N1c2VkJywgc28gYXNraW5nIGZvciBgcXVlcnlTZWxlY3RvckFsbCguLi4pW3RoaXMuX2FjdGl2ZUNvbHVtbkluZGV4XWBcbiAgICogd291bGQgYWx3YXlzIHJldHVybiBhIGBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudGAuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2VsZWN0QnlLZXlib2FyZChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICBpZiAodGhpcy5fYWN0aXZlQ29sdW1uSW5kZXggIT09IDApIHtcbiAgICAgIHRoaXMuYWN0aXZlT3B0aW9uXG4gICAgICAgID8uY2xvc2VzdCgnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdycpXG4gICAgICAgID8ucXVlcnlTZWxlY3RvckFsbCgnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLWJ1dHRvbicpXG4gICAgICAgIFtcbiAgICAgICAgICAvLyBXZSBpZ25vcmUgdGhlIG9wdGlvbiBpbiB0aGUgc2VsZWN0b3IuIFRoZXJlZm9yZSwgd2UgaGF2ZSB0byBzaGlmdCB0aGUgYWN0aXZlQ29sdW1uSW5kZXggYnkgb25lLlxuICAgICAgICAgIHRoaXMuX2FjdGl2ZUNvbHVtbkluZGV4IC0gMVxuICAgICAgICBdPy5jbGljaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFjdGl2ZU9wdGlvbj8uWydzZWxlY3RWaWFVc2VySW50ZXJhY3Rpb24nXSh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudD86IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5maWx0ZXIoKG9wdCkgPT4gIW9wdC5tYXRjaGVzKCc6c3RhdGUoZGlzYWJsZWQpJykpO1xuXG4gICAgLy8gUmVzZXQgcG90ZW50aWFsbHkgYWN0aXZlIG9wdGlvblxuICAgIHRoaXMuYWN0aXZlT3B0aW9uPy5zZXRBY3RpdmUoZmFsc2UpO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50Jyk7XG4gICAgQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93IFtkYXRhLWZvY3VzLXZpc2libGVdJykgPz8gW10sXG4gICAgKS5mb3JFYWNoKChyb3cpID0+IHJvdy5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtZm9jdXMtdmlzaWJsZScpKTtcbiAgICB0aGlzLl9hY3RpdmVDb2x1bW5JbmRleCA9IDA7XG5cbiAgICBpZiAoIWVuYWJsZWRPcHRpb25zLmxlbmd0aCkge1xuICAgICAgdGhpcy5hY3RpdmVPcHRpb24gPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGFjdGl2ZUl0ZW1JbmRleCA9IHRoaXMuYWN0aXZlT3B0aW9uXG4gICAgICA/IGVuYWJsZWRPcHRpb25zLmluZGV4T2YodGhpcy5hY3RpdmVPcHRpb24gYXMgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD4pXG4gICAgICA6IC0xO1xuXG4gICAgLy8gR2V0IGFuZCBhY3RpdmF0ZSB0aGUgbmV4dCBhY3RpdmUgb3B0aW9uXG4gICAgY29uc3QgbmV4dCA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZlbnQsIGFjdGl2ZUl0ZW1JbmRleCwgZW5hYmxlZE9wdGlvbnMubGVuZ3RoKTtcbiAgICB0aGlzLmFjdGl2ZU9wdGlvbiA9IGVuYWJsZWRPcHRpb25zW25leHRdO1xuICAgIHRoaXMuYWN0aXZlT3B0aW9uLnNldEFjdGl2ZSh0cnVlKTtcbiAgICB0aGlzLnRyaWdnZXJFbGVtZW50Py5zZXRBdHRyaWJ1dGUoJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCcsIHRoaXMuYWN0aXZlT3B0aW9uLmlkKTtcbiAgICB0aGlzLmFjdGl2ZU9wdGlvbi5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG4gICAgaWYgKHRoaXMuYXV0b1NlbGVjdEFjdGl2ZU9wdGlvbikge1xuICAgICAgdGhpcy5vbk9wdGlvbkFycm93c1NlbGVjdGVkKHRoaXMuYWN0aXZlT3B0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zZXROZXh0SG9yaXpvbnRhbEFjdGl2ZUVsZW1lbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuYWN0aXZlT3B0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZWxlbWVudHNJblJvdyA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLmFjdGl2ZU9wdGlvblxuICAgICAgICA/LmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3cnKVxuICAgICAgICA/LnF1ZXJ5U2VsZWN0b3JBbGw8XG4gICAgICAgICAgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD4gfCBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudFxuICAgICAgICA+KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLCBzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uJykgPz8gW10sXG4gICAgKT8uZmlsdGVyKChlbCkgPT4gIWVsLm1hdGNoZXMoJzpzdGF0ZShkaXNhYmxlZCknKSk7XG5cbiAgICBpZiAoIWVsZW1lbnRzSW5Sb3cubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dDogbnVtYmVyID0gZ2V0TmV4dEVsZW1lbnRJbmRleChldmVudCwgdGhpcy5fYWN0aXZlQ29sdW1uSW5kZXgsIGVsZW1lbnRzSW5Sb3cubGVuZ3RoKTtcbiAgICBjb25zdCBuZXh0RWxlbWVudDogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD4gfCBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudCA9XG4gICAgICBlbGVtZW50c0luUm93W25leHRdO1xuICAgIGlmIChuZXh0RWxlbWVudCBpbnN0YW5jZW9mIFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50KSB7XG4gICAgICBuZXh0RWxlbWVudC5zZXRBY3RpdmUodHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5leHRFbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy12aXNpYmxlJywgdHJ1ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgbGFzdEFjdGl2ZUVsZW1lbnQgPSBlbGVtZW50c0luUm93W3RoaXMuX2FjdGl2ZUNvbHVtbkluZGV4XTtcbiAgICBpZiAobGFzdEFjdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCkge1xuICAgICAgbGFzdEFjdGl2ZUVsZW1lbnQuc2V0QWN0aXZlKGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGFzdEFjdGl2ZUVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnLCBmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50JywgbmV4dEVsZW1lbnQuaWQpO1xuICAgIG5leHRFbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmxvY2s6ICduZWFyZXN0JyB9KTtcbiAgICB0aGlzLl9hY3RpdmVDb2x1bW5JbmRleCA9IG5leHQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVzZXRBY3RpdmVFbGVtZW50KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9hY3RpdmVDb2x1bW5JbmRleCAhPT0gMCkge1xuICAgICAgdGhpcy5hY3RpdmVPcHRpb25cbiAgICAgICAgPy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93JylcbiAgICAgICAgPy5xdWVyeVNlbGVjdG9yQWxsKCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uJylcbiAgICAgICAgLmZvckVhY2goKGUpID0+IGUudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnLCBmYWxzZSkpO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZU9wdGlvbj8uc2V0QWN0aXZlKGZhbHNlKTtcbiAgICB0aGlzLmFjdGl2ZU9wdGlvbiA9IG51bGw7XG4gICAgdGhpcy5fYWN0aXZlQ29sdW1uSW5kZXggPSAwO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50Jyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0VHJpZ2dlckF0dHJpYnV0ZXMoZWxlbWVudDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xuICAgIHNldEFyaWFDb21ib0JveEF0dHJpYnV0ZXMoZWxlbWVudCwgYXJpYVJvbGVPbkhvc3QgPyB0aGlzLmlkIDogdGhpcy5vdmVybGF5SWQsIGZhbHNlLCAnZ3JpZCcpO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYXV0b2NvbXBsZXRlLWdyaWQnOiBTYmJBdXRvY29tcGxldGVHcmlkRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFXQSxJQUFJLFNBQVM7QUFNYixNQUFNLGlCQUFpQjtJQVlqQiw4QkFBMEIsTUFBQTs7MEJBRC9CLGNBQWMsdUJBQXVCLENBQUM7Ozs7b0JBQ2M7QUFBUixFQUFBLG1CQUFRLFlBQTZCO0FBQUEsSUFNaEYsSUFBYyxVQUFPO0FBQ25CLGFBQU8sTUFBTSxLQUNYLEtBQUssbUJBQ0gsOEJBQThCLEtBQzNCLEVBQUU7QUFBQSxJQUVYO0FBQUEsSUFFQSxjQUFBO0FBQ0UsWUFBQTtBQWJRLFdBQUEsWUFBWSx5QkFBeUIsRUFBRSxNQUFNO0FBQzdDLFdBQUEsWUFBWTtBQUNkLFdBQUEscUJBQXFCO0FBWTNCLFdBQUssbUJBQW1CLGtCQUFrQixDQUFDLE1BQWEsS0FBSyxpQkFBaUIsQ0FBQyxDQUFDO0FBQUEsSUFDbEY7QUFBQSxJQUVVLGVBQVk7QUFDcEIsV0FBSyxtQkFFSCw0REFBNEQsRUFBRSxRQUM5RCxDQUFDLE1BQU8sRUFBRSxXQUFXLEtBQUssUUFBUztBQUdyQyxXQUFLLG1CQUNILHlGQUF5RixFQUN6RixRQUFRLENBQUMsWUFBWSxRQUFRLGdCQUFnQixpQkFBaUIsS0FBSyxRQUFRLENBQUM7QUFBQSxJQUNoRjtBQUFBLElBRVUsK0JBQStCLE9BQW9CO0FBQzNELFVBQUksS0FBSyxVQUFVLFVBQVU7QUFDM0I7QUFBQSxNQUNGO0FBRUEsY0FBUSxNQUFNLEtBQUE7QUFBQSxRQUNaLEtBQUs7QUFDSCxlQUFLLE1BQUE7QUFDTDtBQUFBLFFBRUYsS0FBSztBQUNILGVBQUssaUJBQWlCLEtBQUs7QUFDM0I7QUFBQSxRQUVGLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxlQUFLLG9CQUFvQixLQUFLO0FBQzlCO0FBQUEsUUFFRixLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsZUFBSyxnQ0FBZ0MsS0FBSztBQUMxQztBQUFBLE1BQUE7QUFBQSxJQUVOO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQVNVLGlCQUFpQixPQUFvQjtBQUM3QyxZQUFNLGVBQUE7QUFFTixVQUFJLEtBQUssdUJBQXVCLEdBQUc7QUFDakMsYUFBSyxjQUNELFFBQVEsMkJBQTJCLEdBQ25DLGlCQUFpQiw4QkFBOEI7QUFBQTtBQUFBLFVBRy9DLEtBQUsscUJBQXFCO0FBQUEsUUFBQSxHQUN6QixNQUFBO0FBQUEsTUFDUCxPQUFPO0FBQ0wsYUFBSyxlQUFlLDBCQUEwQixFQUFFLElBQUk7QUFBQSxNQUN0RDtBQUFBLElBQ0Y7QUFBQSxJQUVVLG9CQUFvQixPQUFxQjtBQUNqRCxZQUFNLGlCQUFpQixLQUFLLFFBQVEsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsa0JBQWtCLENBQUM7QUFHcEYsV0FBSyxjQUFjLFVBQVUsS0FBSztBQUNsQyxXQUFLLGdCQUFnQixnQkFBZ0IsdUJBQXVCO0FBQzVELFlBQU0sS0FDSixLQUFLLG1CQUFtQixnREFBZ0QsS0FBSyxDQUFBLENBQUUsRUFDL0UsUUFBUSxDQUFDLFFBQVEsSUFBSSxnQkFBZ0Isb0JBQW9CLENBQUM7QUFDNUQsV0FBSyxxQkFBcUI7QUFFMUIsVUFBSSxDQUFDLGVBQWUsUUFBUTtBQUMxQixhQUFLLGVBQWU7QUFDcEI7QUFBQSxNQUNGO0FBRUEsWUFBTSxrQkFBa0IsS0FBSyxlQUN6QixlQUFlLFFBQVEsS0FBSyxZQUFtRCxJQUMvRTtBQUdKLFlBQU0sT0FBTyxvQkFBb0IsT0FBTyxpQkFBaUIsZUFBZSxNQUFNO0FBQzlFLFdBQUssZUFBZSxlQUFlLElBQUk7QUFDdkMsV0FBSyxhQUFhLFVBQVUsSUFBSTtBQUNoQyxXQUFLLGdCQUFnQixhQUFhLHlCQUF5QixLQUFLLGFBQWEsRUFBRTtBQUMvRSxXQUFLLGFBQWEsZUFBZSxFQUFFLE9BQU8sV0FBVztBQUNyRCxVQUFJLEtBQUssd0JBQXdCO0FBQy9CLGFBQUssdUJBQXVCLEtBQUssWUFBWTtBQUFBLE1BQy9DO0FBQUEsSUFDRjtBQUFBLElBRVEsZ0NBQWdDLE9BQW9CO0FBQzFELFVBQUksQ0FBQyxLQUFLLGNBQWM7QUFDdEI7QUFBQSxNQUNGO0FBRUEsWUFBTSxnQkFBZ0IsTUFBTSxLQUMxQixLQUFLLGNBQ0QsUUFBUSwyQkFBMkIsR0FDbkMsaUJBRUEsNERBQTRELEtBQUssQ0FBQSxDQUFFLEdBQ3RFLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxRQUFRLGtCQUFrQixDQUFDO0FBRWpELFVBQUksQ0FBQyxjQUFjLFFBQVE7QUFDekI7QUFBQSxNQUNGO0FBRUEsWUFBTSxPQUFlLG9CQUFvQixPQUFPLEtBQUssb0JBQW9CLGNBQWMsTUFBTTtBQUM3RixZQUFNLGNBQ0osY0FBYyxJQUFJO0FBQ3BCLFVBQUksdUJBQXVCLGtDQUFrQztBQUMzRCxvQkFBWSxVQUFVLElBQUk7QUFBQSxNQUM1QixPQUFPO0FBQ0wsb0JBQVksZ0JBQWdCLHNCQUFzQixJQUFJO0FBQUEsTUFDeEQ7QUFFQSxZQUFNLG9CQUFvQixjQUFjLEtBQUssa0JBQWtCO0FBQy9ELFVBQUksNkJBQTZCLGtDQUFrQztBQUNqRSwwQkFBa0IsVUFBVSxLQUFLO0FBQUEsTUFDbkMsT0FBTztBQUNMLDBCQUFrQixnQkFBZ0Isc0JBQXNCLEtBQUs7QUFBQSxNQUMvRDtBQUNBLFdBQUssZ0JBQWdCLGFBQWEseUJBQXlCLFlBQVksRUFBRTtBQUN6RSxrQkFBWSxlQUFlLEVBQUUsT0FBTyxVQUFBLENBQVc7QUFDL0MsV0FBSyxxQkFBcUI7QUFBQSxJQUM1QjtBQUFBLElBRVUscUJBQWtCO0FBQzFCLFVBQUksS0FBSyx1QkFBdUIsR0FBRztBQUNqQyxhQUFLLGNBQ0QsUUFBUSwyQkFBMkIsR0FDbkMsaUJBQWlCLDhCQUE4QixFQUNoRCxRQUFRLENBQUMsTUFBTSxFQUFFLGdCQUFnQixzQkFBc0IsS0FBSyxDQUFDO0FBQUEsTUFDbEU7QUFDQSxXQUFLLGNBQWMsVUFBVSxLQUFLO0FBQ2xDLFdBQUssZUFBZTtBQUNwQixXQUFLLHFCQUFxQjtBQUMxQixXQUFLLGdCQUFnQixnQkFBZ0IsdUJBQXVCO0FBQUEsSUFDOUQ7QUFBQSxJQUVVLHFCQUFxQixTQUF5QjtBQUN0RCxnQ0FBMEIsU0FBUyxpQkFBaUIsS0FBSyxLQUFLLEtBQUssV0FBVyxPQUFPLE1BQU07QUFBQSxJQUM3RjtBQUFBOztBQW5LRixpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBQ2tDLEdBQUEsT0FBTyxpQkFBaUIsU0FBUyxNQUQ3RCxrQkFBQSxZQUFBLHVCQUFBLEdBQXVDOzs7In0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { SbbActionBaseElement } from '@sbb-esta/lyne-elements/core/base-elements.js';
|
|
2
|
+
import { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
|
3
|
+
import { SbbAutocompleteGridOptgroupElement } from '../autocomplete-grid-optgroup.ts';
|
|
4
|
+
import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.ts';
|
|
5
|
+
declare const SbbAutocompleteGridButtonElement_base: import('@sbb-esta/lyne-elements/core/mixins.js').AbstractConstructor<import('@sbb-esta/lyne-elements/core/mixins.js').SbbDisabledMixinType> & import('@sbb-esta/lyne-elements/core/mixins.js').AbstractConstructor<import('@sbb-esta/lyne-elements/core/mixins.js').SbbNegativeMixinType> & import('@sbb-esta/lyne-elements/core/mixins.js').AbstractConstructor<import('@sbb-esta/lyne-elements/icon.js').SbbIconNameMixinType> & typeof SbbActionBaseElement;
|
|
6
|
+
/**
|
|
7
|
+
* It displays an icon-only button that can be used in `sbb-autocomplete-grid`.
|
|
8
|
+
*
|
|
9
|
+
* @slot icon - Slot used to display the icon, if one is set
|
|
10
|
+
*/
|
|
11
|
+
export declare class SbbAutocompleteGridButtonElement extends SbbAutocompleteGridButtonElement_base {
|
|
12
|
+
static readonly role = "button";
|
|
13
|
+
static styles: CSSResultGroup;
|
|
14
|
+
/** Gets the SbbAutocompleteGridOptionElement on the same row of the button. */
|
|
15
|
+
get option(): SbbAutocompleteGridOptionElement | null;
|
|
16
|
+
get optgroup(): SbbAutocompleteGridOptgroupElement | null;
|
|
17
|
+
constructor();
|
|
18
|
+
protected isDisabledExternally(): boolean;
|
|
19
|
+
protected renderTemplate(): TemplateResult;
|
|
20
|
+
connectedCallback(): void;
|
|
21
|
+
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
22
|
+
private _updateInternals;
|
|
23
|
+
private _handleButtonClick;
|
|
24
|
+
}
|
|
25
|
+
declare global {
|
|
26
|
+
interface HTMLElementTagNameMap {
|
|
27
|
+
'sbb-autocomplete-grid-button': SbbAutocompleteGridButtonElement;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=autocomplete-grid-button.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-button.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAOrF,OAAO,EAAE,KAAK,cAAc,EAAY,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAG9F,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;;AAIvF;;;;GAIG;AACH,qBAMM,gCAAiC,SAAQ,qCAE9C;IACC,gBAAgC,IAAI,YAAY;IAChD,OAAuB,MAAM,EAAE,cAAc,CAAsC;IAEnF,+EAA+E;IAC/E,IAAW,MAAM,IAAI,gCAAgC,GAAG,IAAI,CAK3D;IAED,IAAW,QAAQ,IAAI,kCAAkC,GAAG,IAAI,CAE/D;;cAmBkB,oBAAoB,IAAI,OAAO;cAI/B,cAAc,IAAI,cAAc;IAInC,iBAAiB,IAAI,IAAI;cAKtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO5E,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,kBAAkB,CAIxB;CACH;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,8BAA8B,EAAE,gCAAgC,CAAC;KAClE;CACF"}
|
package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { miniButtonStyle } from "@sbb-esta/lyne-elements/button/common.js";
|
|
3
|
+
import { SbbActionBaseElement } from "@sbb-esta/lyne-elements/core/base-elements.js";
|
|
4
|
+
import { SbbAncestorWatcherController } from "@sbb-esta/lyne-elements/core/controllers.js";
|
|
5
|
+
import { hostAttributes } from "@sbb-esta/lyne-elements/core/decorators.js";
|
|
6
|
+
import { isEventPrevented } from "@sbb-esta/lyne-elements/core/eventing.js";
|
|
7
|
+
import { SbbDisabledMixin, SbbNegativeMixin } from "@sbb-esta/lyne-elements/core/mixins.js";
|
|
8
|
+
import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
|
|
9
|
+
import { SbbIconNameMixin } from "@sbb-esta/lyne-elements/icon.js";
|
|
10
|
+
import { isServer } from "lit";
|
|
11
|
+
import { customElement } from "lit/decorators.js";
|
|
12
|
+
let autocompleteButtonNextId = 0;
|
|
13
|
+
let SbbAutocompleteGridButtonElement = (() => {
|
|
14
|
+
var _a;
|
|
15
|
+
let _classDecorators = [customElement("sbb-autocomplete-grid-button"), hostAttributes({
|
|
16
|
+
tabindex: null,
|
|
17
|
+
"data-button": ""
|
|
18
|
+
})];
|
|
19
|
+
let _classDescriptor;
|
|
20
|
+
let _classExtraInitializers = [];
|
|
21
|
+
let _classThis;
|
|
22
|
+
let _classSuper = SbbDisabledMixin(SbbNegativeMixin(SbbIconNameMixin(SbbActionBaseElement)));
|
|
23
|
+
_a = class extends _classSuper {
|
|
24
|
+
/** Gets the SbbAutocompleteGridOptionElement on the same row of the button. */
|
|
25
|
+
get option() {
|
|
26
|
+
return this.closest("sbb-autocomplete-grid-row")?.querySelector("sbb-autocomplete-grid-option") || null;
|
|
27
|
+
}
|
|
28
|
+
get optgroup() {
|
|
29
|
+
return this.closest("sbb-autocomplete-grid-optgroup");
|
|
30
|
+
}
|
|
31
|
+
constructor() {
|
|
32
|
+
super();
|
|
33
|
+
this._handleButtonClick = async (event) => {
|
|
34
|
+
if (await isEventPrevented(event) || !this.closest("form")) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
if (!isServer) {
|
|
39
|
+
this.setupBaseEventHandlers();
|
|
40
|
+
this.addEventListener("click", this._handleButtonClick);
|
|
41
|
+
this.addController(new SbbAncestorWatcherController(this, () => this.closest("sbb-autocomplete-grid-optgroup"), {
|
|
42
|
+
disabled: () => this._updateInternals()
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
isDisabledExternally() {
|
|
47
|
+
return this.optgroup?.disabled ?? false;
|
|
48
|
+
}
|
|
49
|
+
renderTemplate() {
|
|
50
|
+
return super.renderIconSlot();
|
|
51
|
+
}
|
|
52
|
+
connectedCallback() {
|
|
53
|
+
super.connectedCallback();
|
|
54
|
+
this.id ||= `sbb-autocomplete-grid-button-${++autocompleteButtonNextId}`;
|
|
55
|
+
}
|
|
56
|
+
willUpdate(changedProperties) {
|
|
57
|
+
super.willUpdate(changedProperties);
|
|
58
|
+
if (changedProperties.has("disabled")) {
|
|
59
|
+
this._updateInternals();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
_updateInternals() {
|
|
63
|
+
if (this.disabled || this.optgroup?.disabled) {
|
|
64
|
+
this.internals.states.add("disabled");
|
|
65
|
+
this.internals.ariaDisabled = "true";
|
|
66
|
+
} else {
|
|
67
|
+
this.internals.states.delete("disabled");
|
|
68
|
+
this.internals.ariaDisabled = null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}, _classThis = _a, (() => {
|
|
72
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
73
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
74
|
+
_classThis = _classDescriptor.value;
|
|
75
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
76
|
+
})(), _a.role = "button", _a.styles = [boxSizingStyles, miniButtonStyle], __runInitializers(_classThis, _classExtraInitializers), _a;
|
|
77
|
+
return _classThis;
|
|
78
|
+
})();
|
|
79
|
+
export {
|
|
80
|
+
SbbAutocompleteGridButtonElement
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9hdXRvY29tcGxldGUtZ3JpZC9hdXRvY29tcGxldGUtZ3JpZC1idXR0b24vYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaW5pQnV0dG9uU3R5bGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9idXR0b24vY29tbW9uLmpzJztcbmltcG9ydCB7IFNiYkFjdGlvbkJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkFuY2VzdG9yV2F0Y2hlckNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzRXZlbnRQcmV2ZW50ZWQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4sIFNiYk5lZ2F0aXZlTWl4aW4gfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcy5qcyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvaWNvbi5qcyc7XG5pbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBpc1NlcnZlciwgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRncm91cEVsZW1lbnQgfSBmcm9tICcuLi9hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50IH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLnRzJztcblxubGV0IGF1dG9jb21wbGV0ZUJ1dHRvbk5leHRJZCA9IDA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gaWNvbi1vbmx5IGJ1dHRvbiB0aGF0IGNhbiBiZSB1c2VkIGluIGBzYmItYXV0b2NvbXBsZXRlLWdyaWRgLlxuICpcbiAqIEBzbG90IGljb24gLSBTbG90IHVzZWQgdG8gZGlzcGxheSB0aGUgaWNvbiwgaWYgb25lIGlzIHNldFxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uJylcbkBob3N0QXR0cmlidXRlcyh7XG4gIHRhYmluZGV4OiBudWxsLFxuICAnZGF0YS1idXR0b24nOiAnJyxcbn0pXG5jbGFzcyBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudCBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYk5lZ2F0aXZlTWl4aW4oU2JiSWNvbk5hbWVNaXhpbihTYmJBY3Rpb25CYXNlRWxlbWVudCkpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgcm9sZSA9ICdidXR0b24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBtaW5pQnV0dG9uU3R5bGVdO1xuXG4gIC8qKiBHZXRzIHRoZSBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCBvbiB0aGUgc2FtZSByb3cgb2YgdGhlIGJ1dHRvbi4gKi9cbiAgcHVibGljIGdldCBvcHRpb24oKTogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93Jyk/LnF1ZXJ5U2VsZWN0b3IoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRpb24nKSB8fFxuICAgICAgbnVsbFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG9wdGdyb3VwKCk6IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRncm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAnKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGlmICghaXNTZXJ2ZXIpIHtcbiAgICAgIHRoaXMuc2V0dXBCYXNlRXZlbnRIYW5kbGVycygpO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX2hhbmRsZUJ1dHRvbkNsaWNrKTtcbiAgICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgICAgbmV3IFNiYkFuY2VzdG9yV2F0Y2hlckNvbnRyb2xsZXIoXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICAoKSA9PiB0aGlzLmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cCcpLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRpc2FibGVkOiAoKSA9PiB0aGlzLl91cGRhdGVJbnRlcm5hbHMoKSxcbiAgICAgICAgICB9LFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3B0Z3JvdXA/LmRpc2FibGVkID8/IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gc3VwZXIucmVuZGVySWNvblNsb3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuaWQgfHw9IGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLSR7KythdXRvY29tcGxldGVCdXR0b25OZXh0SWR9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZUludGVybmFscygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUludGVybmFscygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLm9wdGdyb3VwPy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnZGlzYWJsZWQnKTtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFEaXNhYmxlZCA9ICd0cnVlJztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgnZGlzYWJsZWQnKTtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFEaXNhYmxlZCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQnV0dG9uQ2xpY2sgPSBhc3luYyAoZXZlbnQ6IE1vdXNlRXZlbnQpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICBpZiAoKGF3YWl0IGlzRXZlbnRQcmV2ZW50ZWQoZXZlbnQpKSB8fCAhdGhpcy5jbG9zZXN0KCdmb3JtJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH07XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uJzogU2JiQXV0b2NvbXBsZXRlR3JpZEJ1dHRvbkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQWNBLElBQUksMkJBQTJCO0lBYXpCLG9DQUFnQyxNQUFBOztBQUxyQyxNQUFBLG1CQUFBLENBQUEsY0FBYyw4QkFBOEIsR0FDNUMsZUFBZTtBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLEVBQUEsQ0FDaEIsQ0FBQzs7OztvQkFDNkMsaUJBQzdDLGlCQUFpQixpQkFBaUIsb0JBQW9CLENBQUMsQ0FBQztBQURuQixFQUFBLG1CQUFRLFlBRTlDO0FBQUE7QUFBQSxJQUtDLElBQVcsU0FBTTtBQUNmLGFBQ0UsS0FBSyxRQUFRLDJCQUEyQixHQUFHLGNBQWMsOEJBQThCLEtBQ3ZGO0FBQUEsSUFFSjtBQUFBLElBRUEsSUFBVyxXQUFRO0FBQ2pCLGFBQU8sS0FBSyxRQUFRLGdDQUFnQztBQUFBLElBQ3REO0FBQUEsSUFFQSxjQUFBO0FBQ0UsWUFBQTtBQThDTSxXQUFBLHFCQUFxQixPQUFPLFVBQW9DO0FBQ3RFLFlBQUssTUFBTSxpQkFBaUIsS0FBSyxLQUFNLENBQUMsS0FBSyxRQUFRLE1BQU0sR0FBRztBQUM1RDtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBakRFLFVBQUksQ0FBQyxVQUFVO0FBQ2IsYUFBSyx1QkFBQTtBQUNMLGFBQUssaUJBQWlCLFNBQVMsS0FBSyxrQkFBa0I7QUFDdEQsYUFBSyxjQUNILElBQUksNkJBQ0YsTUFDQSxNQUFNLEtBQUssUUFBUSxnQ0FBZ0MsR0FDbkQ7QUFBQSxVQUNFLFVBQVUsTUFBTSxLQUFLLGlCQUFBO0FBQUEsUUFBZ0IsQ0FDdEMsQ0FDRjtBQUFBLE1BRUw7QUFBQSxJQUNGO0FBQUEsSUFFbUIsdUJBQW9CO0FBQ3JDLGFBQU8sS0FBSyxVQUFVLFlBQVk7QUFBQSxJQUNwQztBQUFBLElBRW1CLGlCQUFjO0FBQy9CLGFBQU8sTUFBTSxlQUFBO0FBQUEsSUFDZjtBQUFBLElBRWdCLG9CQUFpQjtBQUMvQixZQUFNLGtCQUFBO0FBQ04sV0FBSyxPQUFPLGdDQUFnQyxFQUFFLHdCQUF3QjtBQUFBLElBQ3hFO0FBQUEsSUFFbUIsV0FBVyxtQkFBdUM7QUFDbkUsWUFBTSxXQUFXLGlCQUFpQjtBQUNsQyxVQUFJLGtCQUFrQixJQUFJLFVBQVUsR0FBRztBQUNyQyxhQUFLLGlCQUFBO0FBQUEsTUFDUDtBQUFBLElBQ0Y7QUFBQSxJQUVRLG1CQUFnQjtBQUN0QixVQUFJLEtBQUssWUFBWSxLQUFLLFVBQVUsVUFBVTtBQUM1QyxhQUFLLFVBQVUsT0FBTyxJQUFJLFVBQVU7QUFDcEMsYUFBSyxVQUFVLGVBQWU7QUFBQSxNQUNoQyxPQUFPO0FBQ0wsYUFBSyxVQUFVLE9BQU8sT0FBTyxVQUFVO0FBQ3ZDLGFBQUssVUFBVSxlQUFlO0FBQUEsTUFDaEM7QUFBQSxJQUNGO0FBQUE7O0FBL0RGLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFHa0MsR0FBQSxPQUFPLFVBQ2hCLEdBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsZUFBZSxHQUo3RSxrQkFBQSxZQUFBLHVCQUFBLEdBQWlDOzs7In0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-button.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-button.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,kEAAkE,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SbbAutocompleteGridButtonElement } from "./autocomplete-grid-button/autocomplete-grid-button.component.js";
|
|
2
|
+
export {
|
|
3
|
+
SbbAutocompleteGridButtonElement
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjsifQ==
|
package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
|
|
2
|
+
declare const SbbAutocompleteGridCellElement_base: import('@sbb-esta/lyne-elements/core/mixins.js').AbstractConstructor<import('@sbb-esta/lyne-elements/core/mixins.js').SbbElementInternalsMixinType> & typeof LitElement & import('@sbb-esta/lyne-elements/core/mixins.js').SbbElementInternalsConstructor;
|
|
3
|
+
/**
|
|
4
|
+
* A wrapper component for autocomplete-grid action button.
|
|
5
|
+
*
|
|
6
|
+
* @slot - Use the unnamed slot to add a `sbb-autocomplete-grid-button` element.
|
|
7
|
+
*/
|
|
8
|
+
export declare class SbbAutocompleteGridCellElement extends SbbAutocompleteGridCellElement_base {
|
|
9
|
+
static readonly role = "gridcell";
|
|
10
|
+
static styles: CSSResultGroup;
|
|
11
|
+
protected render(): TemplateResult;
|
|
12
|
+
}
|
|
13
|
+
declare global {
|
|
14
|
+
interface HTMLElementTagNameMap {
|
|
15
|
+
'sbb-autocomplete-grid-cell': SbbAutocompleteGridCellElement;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=autocomplete-grid-cell.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-cell.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;;AAKjF;;;;GAIG;AACH,qBAEM,8BAA+B,SAAQ,mCAAoC;IAC/E,gBAAgC,IAAI,cAAc;IAClD,OAAuB,MAAM,EAAE,cAAc,CAA4B;cAEtD,MAAM,IAAI,cAAc;CAO5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,4BAA4B,EAAE,8BAA8B,CAAC;KAC9D;CACF"}
|
package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { SbbElementInternalsMixin } from "@sbb-esta/lyne-elements/core/mixins.js";
|
|
3
|
+
import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
|
|
4
|
+
import { css, LitElement, html } from "lit";
|
|
5
|
+
import { customElement } from "lit/decorators.js";
|
|
6
|
+
const style = css`:host {
|
|
7
|
+
display: block;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.sbb-autocomplete-grid-cell {
|
|
11
|
+
display: flex;
|
|
12
|
+
column-gap: var(--sbb-spacing-fixed-6x);
|
|
13
|
+
}`;
|
|
14
|
+
let SbbAutocompleteGridCellElement = (() => {
|
|
15
|
+
var _a;
|
|
16
|
+
let _classDecorators = [customElement("sbb-autocomplete-grid-cell")];
|
|
17
|
+
let _classDescriptor;
|
|
18
|
+
let _classExtraInitializers = [];
|
|
19
|
+
let _classThis;
|
|
20
|
+
let _classSuper = SbbElementInternalsMixin(LitElement);
|
|
21
|
+
_a = class extends _classSuper {
|
|
22
|
+
render() {
|
|
23
|
+
return html`
|
|
24
|
+
<span class="sbb-autocomplete-grid-cell">
|
|
25
|
+
<slot></slot>
|
|
26
|
+
</span>
|
|
27
|
+
`;
|
|
28
|
+
}
|
|
29
|
+
}, _classThis = _a, (() => {
|
|
30
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
31
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
32
|
+
_classThis = _classDescriptor.value;
|
|
33
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
34
|
+
})(), _a.role = "gridcell", _a.styles = [boxSizingStyles, style], __runInitializers(_classThis, _classExtraInitializers), _a;
|
|
35
|
+
return _classThis;
|
|
36
|
+
})();
|
|
37
|
+
export {
|
|
38
|
+
SbbAutocompleteGridCellElement
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy1leHBlcmltZW50YWwvYXV0b2NvbXBsZXRlLWdyaWQvYXV0b2NvbXBsZXRlLWdyaWQtY2VsbC9hdXRvY29tcGxldGUtZ3JpZC1jZWxsLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4gfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcy5qcyc7XG5pbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBodG1sLCBMaXRFbGVtZW50LCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2F1dG9jb21wbGV0ZS1ncmlkLWNlbGwuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBBIHdyYXBwZXIgY29tcG9uZW50IGZvciBhdXRvY29tcGxldGUtZ3JpZCBhY3Rpb24gYnV0dG9uLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGEgYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1idXR0b25gIGVsZW1lbnQuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1jZWxsJylcbmNsYXNzIFNiYkF1dG9jb21wbGV0ZUdyaWRDZWxsRWxlbWVudCBleHRlbmRzIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgcm9sZSA9ICdncmlkY2VsbCc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWF1dG9jb21wbGV0ZS1ncmlkLWNlbGxcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1jZWxsJzogU2JiQXV0b2NvbXBsZXRlR3JpZENlbGxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztJQWNNLGtDQUE4QixNQUFBOzswQkFEbkMsY0FBYyw0QkFBNEIsQ0FBQzs7OztvQkFDQyx5QkFBeUIsVUFBVTtBQUEzQyxFQUFBLG1CQUFRLFlBQW9DO0FBQUEsSUFJNUQsU0FBTTtBQUN2QixhQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUtUO0FBQUE7O0FBVkYsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUNrQyxHQUFBLE9BQU8sWUFDaEIsR0FBQSxTQUF5QixDQUFDLGlCQUFpQixLQUFLLEdBRm5FLGtCQUFBLFlBQUEsdUJBQUEsR0FBK0I7OzsifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-cell.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-cell.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,8DAA8D,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SbbAutocompleteGridCellElement } from "./autocomplete-grid-cell/autocomplete-grid-cell.component.js";
|
|
2
|
+
export {
|
|
3
|
+
SbbAutocompleteGridCellElement
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtY2VsbC5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7In0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SbbAutocompleteBaseElement } from '@sbb-esta/lyne-elements/autocomplete.js';
|
|
2
|
+
import { SbbOptgroupBaseElement } from '@sbb-esta/lyne-elements/option/optgroup.js';
|
|
3
|
+
import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.ts';
|
|
4
|
+
/**
|
|
5
|
+
* It can be used as a container for one or more `sbb-autocomplete-grid-option`.
|
|
6
|
+
*
|
|
7
|
+
* @slot - Use the unnamed slot to add `sbb-autocomplete-grid-option` elements to the `sbb-autocomplete-grid-optgroup`.
|
|
8
|
+
*/
|
|
9
|
+
export declare class SbbAutocompleteGridOptgroupElement extends SbbOptgroupBaseElement {
|
|
10
|
+
protected get options(): SbbAutocompleteGridOptionElement[];
|
|
11
|
+
protected getAutocompleteParent(): SbbAutocompleteBaseElement | null;
|
|
12
|
+
protected setAttributeFromParent(): void;
|
|
13
|
+
}
|
|
14
|
+
declare global {
|
|
15
|
+
interface HTMLElementTagNameMap {
|
|
16
|
+
'sbb-autocomplete-grid-optgroup': SbbAutocompleteGridOptgroupElement;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=autocomplete-grid-optgroup.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-optgroup.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAGpF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAEvF;;;;GAIG;AACH,qBAEM,kCAAmC,SAAQ,sBAAsB;IACrE,SAAS,KAAK,OAAO,IAAI,gCAAgC,EAAE,CAI1D;IAED,SAAS,CAAC,qBAAqB,IAAI,0BAA0B,GAAG,IAAI;IAIpE,SAAS,CAAC,sBAAsB,IAAI,IAAI;CAIzC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gCAAgC,EAAE,kCAAkC,CAAC;KACtE;CACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { SbbOptgroupBaseElement } from "@sbb-esta/lyne-elements/option/optgroup.js";
|
|
3
|
+
import { customElement } from "lit/decorators.js";
|
|
4
|
+
let SbbAutocompleteGridOptgroupElement = (() => {
|
|
5
|
+
var _a;
|
|
6
|
+
let _classDecorators = [customElement("sbb-autocomplete-grid-optgroup")];
|
|
7
|
+
let _classDescriptor;
|
|
8
|
+
let _classExtraInitializers = [];
|
|
9
|
+
let _classThis;
|
|
10
|
+
let _classSuper = SbbOptgroupBaseElement;
|
|
11
|
+
_a = class extends _classSuper {
|
|
12
|
+
get options() {
|
|
13
|
+
return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
|
|
14
|
+
}
|
|
15
|
+
getAutocompleteParent() {
|
|
16
|
+
return this.closest?.("sbb-autocomplete-grid") || null;
|
|
17
|
+
}
|
|
18
|
+
setAttributeFromParent() {
|
|
19
|
+
this.negative = !!this.closest(`:is(sbb-autocomplete-grid, sbb-form-field)[negative]`);
|
|
20
|
+
this.toggleAttribute("data-negative", this.negative);
|
|
21
|
+
}
|
|
22
|
+
}, _classThis = _a, (() => {
|
|
23
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
24
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
25
|
+
_classThis = _classDescriptor.value;
|
|
26
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
27
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
28
|
+
})(), _a;
|
|
29
|
+
return _classThis;
|
|
30
|
+
})();
|
|
31
|
+
export {
|
|
32
|
+
SbbAutocompleteGridOptgroupElement
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvYXV0b2NvbXBsZXRlLmpzJztcbmltcG9ydCB7IFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9vcHRpb24vb3B0Z3JvdXAuanMnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbi50cyc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXBgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAnKVxuY2xhc3MgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGdyb3VwRWxlbWVudCBleHRlbmRzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQge1xuICBwcm90ZWN0ZWQgZ2V0IG9wdGlvbnMoKTogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/Lignc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbicpID8/IFtdLFxuICAgICkgYXMgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnRbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBdXRvY29tcGxldGVQYXJlbnQoKTogU2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0Py48U2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQ+KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQnKSB8fCBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldEF0dHJpYnV0ZUZyb21QYXJlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5uZWdhdGl2ZSA9ICEhdGhpcy5jbG9zZXN0KGA6aXMoc2JiLWF1dG9jb21wbGV0ZS1ncmlkLCBzYmItZm9ybS1maWVsZClbbmVnYXRpdmVdYCk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnLCB0aGlzLm5lZ2F0aXZlKTtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwJzogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGdyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztJQWFNLHNDQUFrQyxNQUFBOzswQkFEdkMsY0FBYyxnQ0FBZ0MsQ0FBQzs7OztvQkFDQztBQUFSLEVBQUEsbUJBQVEsWUFBc0I7QUFBQSxJQUNyRSxJQUFjLFVBQU87QUFDbkIsYUFBTyxNQUFNLEtBQ1gsS0FBSyxtQkFBbUIsOEJBQThCLEtBQUssRUFBRTtBQUFBLElBRWpFO0FBQUEsSUFFVSx3QkFBcUI7QUFDN0IsYUFBTyxLQUFLLFVBQXNDLHVCQUF1QixLQUFLO0FBQUEsSUFDaEY7QUFBQSxJQUVVLHlCQUFzQjtBQUM5QixXQUFLLFdBQVcsQ0FBQyxDQUFDLEtBQUssUUFBUSxzREFBc0Q7QUFDckYsV0FBSyxnQkFBZ0IsaUJBQWlCLEtBQUssUUFBUTtBQUFBLElBQ3JEO0FBQUEsRUFBQTs7QUFkRixpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBQU0sc0JBQUEsWUFBQSx1QkFBQTtBQUFBLEVBQUEsTUFBbUM7OzsifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-optgroup.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-optgroup.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,sEAAsE,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SbbAutocompleteGridOptgroupElement } from "./autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js";
|
|
2
|
+
export {
|
|
3
|
+
SbbAutocompleteGridOptgroupElement
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAuanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOyJ9
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { SbbOptionBaseElement } from '@sbb-esta/lyne-elements/option.js';
|
|
2
|
+
import { CSSResultGroup, PropertyValues } from 'lit';
|
|
3
|
+
export declare const autocompleteGridOptionId: string;
|
|
4
|
+
/**
|
|
5
|
+
* It displays an option item which can be used in `sbb-autocomplete-grid`.
|
|
6
|
+
*
|
|
7
|
+
* @slot - Use the unnamed slot to add content to the option label.
|
|
8
|
+
* @slot icon - Use this slot to provide an icon. If `icon-name` is set, a sbb-icon will be used.
|
|
9
|
+
* @cssprop [--sbb-option-icon-container-display=none] - Can be used to reserve space even
|
|
10
|
+
* when preserve-icon-space on autocomplete is not set or iconName is not set.
|
|
11
|
+
* @overrideType value - T = string
|
|
12
|
+
*/
|
|
13
|
+
export declare class SbbAutocompleteGridOptionElement<T = string> extends SbbOptionBaseElement<T> {
|
|
14
|
+
static readonly role = "gridcell";
|
|
15
|
+
static styles: CSSResultGroup;
|
|
16
|
+
protected optionId: string;
|
|
17
|
+
constructor();
|
|
18
|
+
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
19
|
+
protected setAttributeFromParent(): void;
|
|
20
|
+
protected selectByClick(event: MouseEvent): void;
|
|
21
|
+
}
|
|
22
|
+
declare global {
|
|
23
|
+
interface HTMLElementTagNameMap {
|
|
24
|
+
'sbb-autocomplete-grid-option': SbbAutocompleteGridOptionElement;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=autocomplete-grid-option.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autocomplete-grid-option.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1D,eAAO,MAAM,wBAAwB,EAAE,MAAuC,CAAC;AAE/E;;;;;;;;GAQG;AACH,qBAEM,gCAAgC,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAChF,gBAAgC,IAAI,cAAc;IAClD,OAAuB,MAAM,EAAE,cAAc,CAA4B;IAEzE,SAAS,CAAC,QAAQ,SAA4B;;cAkB3B,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAW5E,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAexC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CAQjD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,8BAA8B,EAAE,gCAAgC,CAAC;KAClE;CACF"}
|