@sbb-esta/lyne-elements-experimental 4.0.0-next.2 → 4.0.0-next.4

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.
Files changed (179) hide show
  1. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +38 -0
  2. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -0
  3. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +89 -0
  4. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +31 -0
  5. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -0
  6. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +54 -0
  7. package/autocomplete-grid/autocomplete-grid-button.d.ts +5 -0
  8. package/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
  9. package/autocomplete-grid/autocomplete-grid-button.js +4 -0
  10. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +19 -0
  11. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -0
  12. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +25 -0
  13. package/autocomplete-grid/autocomplete-grid-cell.d.ts +5 -0
  14. package/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
  15. package/autocomplete-grid/autocomplete-grid-cell.js +4 -0
  16. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +19 -0
  17. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +1 -0
  18. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +29 -0
  19. package/autocomplete-grid/autocomplete-grid-optgroup.d.ts +5 -0
  20. package/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
  21. package/autocomplete-grid/autocomplete-grid-optgroup.js +4 -0
  22. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +26 -0
  23. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -0
  24. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +41 -0
  25. package/autocomplete-grid/autocomplete-grid-option.d.ts +5 -0
  26. package/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
  27. package/autocomplete-grid/autocomplete-grid-option.js +5 -0
  28. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +20 -0
  29. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -0
  30. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +28 -0
  31. package/autocomplete-grid/autocomplete-grid-row.d.ts +5 -0
  32. package/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
  33. package/autocomplete-grid/autocomplete-grid-row.js +4 -0
  34. package/autocomplete-grid/autocomplete-grid.d.ts +5 -0
  35. package/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  36. package/autocomplete-grid/autocomplete-grid.js +4 -0
  37. package/autocomplete-grid.d.ts +10 -0
  38. package/autocomplete-grid.d.ts.map +1 -0
  39. package/autocomplete-grid.js +15 -0
  40. package/core/datetime.d.ts +1 -1
  41. package/core/timetable/access-leg-helper.d.ts +6 -6
  42. package/core/timetable/timetable-helper.d.ts +1 -1
  43. package/core/timetable.d.ts +3 -3
  44. package/custom-elements.json +936 -136
  45. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +38 -0
  46. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -0
  47. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +140 -0
  48. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +31 -0
  49. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -0
  50. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +82 -0
  51. package/development/autocomplete-grid/autocomplete-grid-button.d.ts +5 -0
  52. package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
  53. package/development/autocomplete-grid/autocomplete-grid-button.js +5 -0
  54. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +19 -0
  55. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -0
  56. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +40 -0
  57. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +5 -0
  58. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
  59. package/development/autocomplete-grid/autocomplete-grid-cell.js +5 -0
  60. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +19 -0
  61. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +1 -0
  62. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +40 -0
  63. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +5 -0
  64. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
  65. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +5 -0
  66. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +26 -0
  67. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -0
  68. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +134 -0
  69. package/development/autocomplete-grid/autocomplete-grid-option.d.ts +5 -0
  70. package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
  71. package/development/autocomplete-grid/autocomplete-grid-option.js +6 -0
  72. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +20 -0
  73. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -0
  74. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +115 -0
  75. package/development/autocomplete-grid/autocomplete-grid-row.d.ts +5 -0
  76. package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
  77. package/development/autocomplete-grid/autocomplete-grid-row.js +5 -0
  78. package/development/autocomplete-grid/autocomplete-grid.d.ts +5 -0
  79. package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  80. package/development/autocomplete-grid/autocomplete-grid.js +5 -0
  81. package/development/autocomplete-grid.d.ts +10 -0
  82. package/development/autocomplete-grid.d.ts.map +1 -0
  83. package/development/autocomplete-grid.js +16 -0
  84. package/development/core/datetime.d.ts +1 -1
  85. package/development/core/timetable/access-leg-helper.d.ts +6 -6
  86. package/development/core/timetable/access-leg-helper.js +1 -1
  87. package/development/core/timetable/timetable-helper.d.ts +1 -1
  88. package/development/core/timetable/timetable-helper.js +1 -1
  89. package/development/core/timetable.d.ts +3 -3
  90. package/development/journey-summary/journey-summary.component.d.ts +1 -1
  91. package/development/journey-summary/journey-summary.component.js +1 -1
  92. package/development/journey-summary.d.ts +1 -1
  93. package/development/pearl-chain/pearl-chain.component.d.ts +1 -1
  94. package/development/pearl-chain/pearl-chain.component.js +1 -1
  95. package/development/pearl-chain-time/pearl-chain-time.component.d.ts +1 -1
  96. package/development/pearl-chain-time/pearl-chain-time.component.js +1 -1
  97. package/development/pearl-chain-time.d.ts +1 -1
  98. package/development/pearl-chain-vertical-item.d.ts +1 -1
  99. package/development/pearl-chain-vertical.d.ts +1 -1
  100. package/development/pearl-chain.d.ts +1 -1
  101. package/development/seat-reservation/common/mapper/icon-mapper.js +1 -1
  102. package/development/seat-reservation/common/mapper/mapper.d.ts +4 -2
  103. package/development/seat-reservation/common/mapper/mapper.d.ts.map +1 -1
  104. package/development/seat-reservation/common/mapper/mapper.js +1 -1
  105. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +0 -88
  106. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -1
  107. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.js +1 -815
  108. package/development/seat-reservation/common/mapper.d.ts +2 -2
  109. package/development/seat-reservation/common/translations.d.ts +1 -1
  110. package/development/seat-reservation/common.d.ts +4 -4
  111. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +5 -4
  112. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  113. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +16 -10
  114. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +2 -2
  115. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  116. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +13 -10
  117. package/development/seat-reservation/seat-reservation-area.d.ts +1 -1
  118. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  119. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  120. package/development/seat-reservation/seat-reservation-graphic.d.ts +1 -1
  121. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +8 -4
  122. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  123. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +57 -22
  124. package/development/seat-reservation/seat-reservation-navigation-coach.d.ts +1 -1
  125. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  126. package/development/seat-reservation/seat-reservation-navigation-services.d.ts +1 -1
  127. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +1 -1
  128. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
  129. package/development/seat-reservation/seat-reservation-place-control.d.ts +1 -1
  130. package/development/seat-reservation/seat-reservation-scoped.d.ts +1 -1
  131. package/development/seat-reservation/seat-reservation.d.ts +2 -2
  132. package/development/seat-reservation.d.ts +8 -8
  133. package/development/timetable-duration.d.ts +1 -1
  134. package/development/timetable-row/timetable-row.component.d.ts +1 -1
  135. package/development/timetable-row/timetable-row.component.d.ts.map +1 -1
  136. package/development/timetable-row/timetable-row.component.js +7 -7
  137. package/development/timetable-row.d.ts +1 -1
  138. package/index.d.ts +12 -0
  139. package/index.js +12 -0
  140. package/journey-summary/journey-summary.component.d.ts +1 -1
  141. package/journey-summary.d.ts +1 -1
  142. package/package.json +37 -2
  143. package/pearl-chain/pearl-chain.component.d.ts +1 -1
  144. package/pearl-chain-time/pearl-chain-time.component.d.ts +1 -1
  145. package/pearl-chain-time.d.ts +1 -1
  146. package/pearl-chain-vertical-item.d.ts +1 -1
  147. package/pearl-chain-vertical.d.ts +1 -1
  148. package/pearl-chain.d.ts +1 -1
  149. package/seat-reservation/common/mapper/mapper.d.ts +4 -2
  150. package/seat-reservation/common/mapper/mapper.d.ts.map +1 -1
  151. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +0 -88
  152. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -1
  153. package/seat-reservation/common/mapper/seat-reservation-sample-data.js +2 -815
  154. package/seat-reservation/common/mapper.d.ts +2 -2
  155. package/seat-reservation/common/translations.d.ts +1 -1
  156. package/seat-reservation/common.d.ts +4 -4
  157. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +5 -4
  158. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  159. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +31 -30
  160. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts +2 -2
  161. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  162. package/seat-reservation/seat-reservation/seat-reservation.component.js +40 -41
  163. package/seat-reservation/seat-reservation-area.d.ts +1 -1
  164. package/seat-reservation/seat-reservation-graphic.d.ts +1 -1
  165. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +8 -4
  166. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  167. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +148 -127
  168. package/seat-reservation/seat-reservation-navigation-coach.d.ts +1 -1
  169. package/seat-reservation/seat-reservation-navigation-services.d.ts +1 -1
  170. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +1 -1
  171. package/seat-reservation/seat-reservation-place-control.d.ts +1 -1
  172. package/seat-reservation/seat-reservation-scoped.d.ts +1 -1
  173. package/seat-reservation/seat-reservation.d.ts +2 -2
  174. package/seat-reservation.d.ts +8 -8
  175. package/timetable-duration.d.ts +1 -1
  176. package/timetable-row/timetable-row.component.d.ts +1 -1
  177. package/timetable-row/timetable-row.component.d.ts.map +1 -1
  178. package/timetable-row/timetable-row.component.js +18 -18
  179. 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;AAUrF,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,140 @@
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 { ɵstateController as _stateController } from "@sbb-esta/lyne-elements/core/mixins.js";
6
+ import { setAriaComboBoxAttributes } from "@sbb-esta/lyne-elements/core/overlay.js";
7
+ import { customElement } from "lit/decorators.js";
8
+ import { SbbAutocompleteGridOptionElement } from "../autocomplete-grid-option.js";
9
+ let nextId = 0;
10
+ const ariaRoleOnHost = isSafari;
11
+ let SbbAutocompleteGridElement = (() => {
12
+ var _a;
13
+ let _classDecorators = [customElement("sbb-autocomplete-grid")];
14
+ let _classDescriptor;
15
+ let _classExtraInitializers = [];
16
+ let _classThis;
17
+ let _classSuper = SbbAutocompleteBaseElement;
18
+ _a = class extends _classSuper {
19
+ get options() {
20
+ return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
21
+ }
22
+ constructor() {
23
+ super();
24
+ this.overlayId = `sbb-autocomplete-grid-${++nextId}`;
25
+ this.panelRole = "grid";
26
+ this._activeColumnIndex = 0;
27
+ this.addEventListener?.("optionselected", (e) => this.onOptionSelected(e));
28
+ }
29
+ syncNegative() {
30
+ this.querySelectorAll?.("sbb-divider, sbb-autocomplete-grid-button, sbb-option-hint").forEach((e) => e.negative = this.negative);
31
+ this.querySelectorAll?.("sbb-autocomplete-grid-row, sbb-autocomplete-grid-option, sbb-autocomplete-grid-optgroup").forEach((element) => _stateController(element).toggle("negative", this.negative));
32
+ }
33
+ openedPanelKeyboardInteraction(event) {
34
+ if (this.state !== "opened") {
35
+ return;
36
+ }
37
+ switch (event.key) {
38
+ case "Tab":
39
+ this.close();
40
+ break;
41
+ case "Enter":
42
+ this.selectByKeyboard(event);
43
+ break;
44
+ case "ArrowDown":
45
+ case "ArrowUp":
46
+ this.setNextActiveOption(event);
47
+ break;
48
+ case "ArrowRight":
49
+ case "ArrowLeft":
50
+ this._setNextHorizontalActiveElement(event);
51
+ break;
52
+ }
53
+ }
54
+ /**
55
+ * Select an element on 'Enter' keypress.
56
+ *
57
+ * Due to keyboard navigation code, the `_activeColumnIndex` is zero when an option is 'focused'
58
+ * and greater than zero when a button is 'focused', so asking for `querySelectorAll(...)[this._activeColumnIndex]`
59
+ * would always return a `SbbAutocompleteGridButtonElement`.
60
+ */
61
+ selectByKeyboard(event) {
62
+ event.preventDefault();
63
+ if (this._activeColumnIndex !== 0) {
64
+ this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button")[
65
+ // We ignore the option in the selector. Therefore, we have to shift the activeColumnIndex by one.
66
+ this._activeColumnIndex - 1
67
+ ]?.click();
68
+ } else {
69
+ this.activeOption?.["selectViaUserInteraction"](true);
70
+ }
71
+ }
72
+ setNextActiveOption(event) {
73
+ const enabledOptions = this.options.filter((opt) => !opt.matches(":is(:state(disabled),[state--disabled])"));
74
+ this.activeOption?.setActive(false);
75
+ this.triggerElement?.removeAttribute("aria-activedescendant");
76
+ Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-row :is(:state(focus-visible),[state--focus-visible])") ?? []).forEach((row) => _stateController(row).delete("focus-visible"));
77
+ this._activeColumnIndex = 0;
78
+ if (!enabledOptions.length) {
79
+ this.activeOption = null;
80
+ return;
81
+ }
82
+ const activeItemIndex = this.activeOption ? enabledOptions.indexOf(this.activeOption) : -1;
83
+ const next = getNextElementIndex(event, activeItemIndex, enabledOptions.length);
84
+ this.activeOption = enabledOptions[next];
85
+ this.activeOption.setActive(true);
86
+ this.triggerElement?.setAttribute("aria-activedescendant", this.activeOption.id);
87
+ this.activeOption.scrollIntoView({ block: "nearest" });
88
+ if (this.autoSelectActiveOption) {
89
+ this.onOptionArrowsSelected(this.activeOption);
90
+ }
91
+ }
92
+ _setNextHorizontalActiveElement(event) {
93
+ if (!this.activeOption) {
94
+ return;
95
+ }
96
+ const elementsInRow = Array.from(this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-option, sbb-autocomplete-grid-button") ?? [])?.filter((el) => !el.matches(":is(:state(disabled),[state--disabled])"));
97
+ if (!elementsInRow.length) {
98
+ return;
99
+ }
100
+ const next = getNextElementIndex(event, this._activeColumnIndex, elementsInRow.length);
101
+ const nextElement = elementsInRow[next];
102
+ if (nextElement instanceof SbbAutocompleteGridOptionElement) {
103
+ nextElement.setActive(true);
104
+ } else {
105
+ _stateController(nextElement).add("focus-visible");
106
+ }
107
+ const lastActiveElement = elementsInRow[this._activeColumnIndex];
108
+ if (lastActiveElement instanceof SbbAutocompleteGridOptionElement) {
109
+ lastActiveElement.setActive(false);
110
+ } else {
111
+ _stateController(lastActiveElement).delete("focus-visible");
112
+ }
113
+ this.triggerElement?.setAttribute("aria-activedescendant", nextElement.id);
114
+ nextElement.scrollIntoView({ block: "nearest" });
115
+ this._activeColumnIndex = next;
116
+ }
117
+ resetActiveElement() {
118
+ if (this._activeColumnIndex !== 0) {
119
+ this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button").forEach((e) => _stateController(e).delete("focus-visible"));
120
+ }
121
+ this.activeOption?.setActive(false);
122
+ this.activeOption = null;
123
+ this._activeColumnIndex = 0;
124
+ this.triggerElement?.removeAttribute("aria-activedescendant");
125
+ }
126
+ setTriggerAttributes(element) {
127
+ setAriaComboBoxAttributes(element, ariaRoleOnHost ? this.id : this.overlayId, false, "grid");
128
+ }
129
+ }, _classThis = _a, (() => {
130
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
131
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
132
+ _classThis = _classDescriptor.value;
133
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
134
+ })(), _a.role = ariaRoleOnHost ? "grid" : null, __runInitializers(_classThis, _classExtraInitializers), _a;
135
+ return _classThis;
136
+ })();
137
+ export {
138
+ SbbAutocompleteGridElement
139
+ };
140
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGlzU2FmYXJpIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kb20uanMnO1xuaW1wb3J0IHsgybVzdGF0ZUNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBzZXRBcmlhQ29tYm9Cb3hBdHRyaWJ1dGVzIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9vdmVybGF5LmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRGl2aWRlckVsZW1lbnQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9kaXZpZGVyLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3B0R3JvdXBFbGVtZW50LCBTYmJPcHRpb25IaW50RWxlbWVudCB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL29wdGlvbi5qcyc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUdyaWRCdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLnRzJztcbmltcG9ydCB7IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50IH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLnRzJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogT24gU2FmYXJpLCB0aGUgYXJpYSByb2xlICdsaXN0Ym94JyBtdXN0IGJlIG9uIHRoZSBob3N0IGVsZW1lbnQsIG9yIGVsc2UgVm9pY2VPdmVyIHdvbid0IHdvcmsgYXQgYWxsLlxuICogT24gdGhlIG90aGVyIGhhbmQsIEpBV1MgYW5kIE5WREEgbmVlZCB0aGUgcm9sZSB0byBiZSBcImNsb3NlclwiIHRvIHRoZSBvcHRpb25zLCBvciBlbHNlIG9wdGdyb3VwcyB3b24ndCB3b3JrLlxuICovXG5jb25zdCBhcmlhUm9sZU9uSG9zdCA9IGlzU2FmYXJpO1xuXG4vKipcbiAqIENvbWJpbmVkIHdpdGggYSBuYXRpdmUgaW5wdXQsIGl0IGRpc3BsYXlzIGEgcGFuZWwgd2l0aCBhIGxpc3Qgb2YgYXZhaWxhYmxlIG9wdGlvbnMgd2l0aCBjb25uZWN0ZWQgYnV0dG9ucy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvd2Agb3IgYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cGAgZWxlbWVudHMgdG8gdGhlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWRgLlxuICogQGNzc3Byb3AgWy0tc2JiLWF1dG9jb21wbGV0ZS16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZCcpXG5jbGFzcyBTYmJBdXRvY29tcGxldGVHcmlkRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50PFQ+IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gYXJpYVJvbGVPbkhvc3QgPyAnZ3JpZCcgOiBudWxsO1xuICBwcm90ZWN0ZWQgb3ZlcmxheUlkID0gYHNiYi1hdXRvY29tcGxldGUtZ3JpZC0keysrbmV4dElkfWA7XG4gIHByb3RlY3RlZCBwYW5lbFJvbGUgPSAnZ3JpZCc7XG4gIHByaXZhdGUgX2FjdGl2ZUNvbHVtbkluZGV4ID0gMDtcblxuICBwcm90ZWN0ZWQgZ2V0IG9wdGlvbnMoKTogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VD5bXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudDxUPj4oXG4gICAgICAgICdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uJyxcbiAgICAgICkgPz8gW10sXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdvcHRpb25zZWxlY3RlZCcsIChlOiBFdmVudCkgPT4gdGhpcy5vbk9wdGlvblNlbGVjdGVkKGUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzeW5jTmVnYXRpdmUoKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48XG4gICAgICBTYmJEaXZpZGVyRWxlbWVudCB8IFNiYkF1dG9jb21wbGV0ZUdyaWRCdXR0b25FbGVtZW50IHwgU2JiT3B0aW9uSGludEVsZW1lbnRcbiAgICA+KCdzYmItZGl2aWRlciwgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLWJ1dHRvbiwgc2JiLW9wdGlvbi1oaW50JykuZm9yRWFjaChcbiAgICAgIChlKSA9PiAoZS5uZWdhdGl2ZSA9IHRoaXMubmVnYXRpdmUpLFxuICAgICk7XG5cbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudDxUPiB8IFNiYk9wdEdyb3VwRWxlbWVudD4oXG4gICAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdywgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbiwgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwJyxcbiAgICApLmZvckVhY2goKGVsZW1lbnQpID0+IMm1c3RhdGVDb250cm9sbGVyKGVsZW1lbnQpLnRvZ2dsZSgnbmVnYXRpdmUnLCB0aGlzLm5lZ2F0aXZlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3BlbmVkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ1RhYic6XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgdGhpcy5zZWxlY3RCeUtleWJvYXJkKGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy5zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgdGhpcy5fc2V0TmV4dEhvcml6b250YWxBY3RpdmVFbGVtZW50KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdCBhbiBlbGVtZW50IG9uICdFbnRlcicga2V5cHJlc3MuXG4gICAqXG4gICAqIER1ZSB0byBrZXlib2FyZCBuYXZpZ2F0aW9uIGNvZGUsIHRoZSBgX2FjdGl2ZUNvbHVtbkluZGV4YCBpcyB6ZXJvIHdoZW4gYW4gb3B0aW9uIGlzICdmb2N1c2VkJ1xuICAgKiBhbmQgZ3JlYXRlciB0aGFuIHplcm8gd2hlbiBhIGJ1dHRvbiBpcyAnZm9jdXNlZCcsIHNvIGFza2luZyBmb3IgYHF1ZXJ5U2VsZWN0b3JBbGwoLi4uKVt0aGlzLl9hY3RpdmVDb2x1bW5JbmRleF1gXG4gICAqIHdvdWxkIGFsd2F5cyByZXR1cm4gYSBgU2JiQXV0b2NvbXBsZXRlR3JpZEJ1dHRvbkVsZW1lbnRgLlxuICAgKi9cbiAgcHJvdGVjdGVkIHNlbGVjdEJ5S2V5Ym9hcmQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgaWYgKHRoaXMuX2FjdGl2ZUNvbHVtbkluZGV4ICE9PSAwKSB7XG4gICAgICB0aGlzLmFjdGl2ZU9wdGlvblxuICAgICAgICA/LmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3cnKVxuICAgICAgICA/LnF1ZXJ5U2VsZWN0b3JBbGwoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1idXR0b24nKVxuICAgICAgICBbXG4gICAgICAgICAgLy8gV2UgaWdub3JlIHRoZSBvcHRpb24gaW4gdGhlIHNlbGVjdG9yLiBUaGVyZWZvcmUsIHdlIGhhdmUgdG8gc2hpZnQgdGhlIGFjdGl2ZUNvbHVtbkluZGV4IGJ5IG9uZS5cbiAgICAgICAgICB0aGlzLl9hY3RpdmVDb2x1bW5JbmRleCAtIDFcbiAgICAgICAgXT8uY2xpY2soKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hY3RpdmVPcHRpb24/Llsnc2VsZWN0VmlhVXNlckludGVyYWN0aW9uJ10odHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNldE5leHRBY3RpdmVPcHRpb24oZXZlbnQ/OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZW5hYmxlZE9wdGlvbnMgPSB0aGlzLm9wdGlvbnMuZmlsdGVyKChvcHQpID0+ICFvcHQubWF0Y2hlcygnOnN0YXRlKGRpc2FibGVkKScpKTtcblxuICAgIC8vIFJlc2V0IHBvdGVudGlhbGx5IGFjdGl2ZSBvcHRpb25cbiAgICB0aGlzLmFjdGl2ZU9wdGlvbj8uc2V0QWN0aXZlKGZhbHNlKTtcbiAgICB0aGlzLnRyaWdnZXJFbGVtZW50Py5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCcpO1xuICAgIEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/Lignc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdyA6c3RhdGUoZm9jdXMtdmlzaWJsZSknKSA/PyBbXSxcbiAgICApLmZvckVhY2goKHJvdykgPT4gybVzdGF0ZUNvbnRyb2xsZXIocm93KS5kZWxldGUoJ2ZvY3VzLXZpc2libGUnKSk7XG4gICAgdGhpcy5fYWN0aXZlQ29sdW1uSW5kZXggPSAwO1xuXG4gICAgaWYgKCFlbmFibGVkT3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuYWN0aXZlT3B0aW9uID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBhY3RpdmVJdGVtSW5kZXggPSB0aGlzLmFjdGl2ZU9wdGlvblxuICAgICAgPyBlbmFibGVkT3B0aW9ucy5pbmRleE9mKHRoaXMuYWN0aXZlT3B0aW9uIGFzIFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50PFQ+KVxuICAgICAgOiAtMTtcblxuICAgIC8vIEdldCBhbmQgYWN0aXZhdGUgdGhlIG5leHQgYWN0aXZlIG9wdGlvblxuICAgIGNvbnN0IG5leHQgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50LCBhY3RpdmVJdGVtSW5kZXgsIGVuYWJsZWRPcHRpb25zLmxlbmd0aCk7XG4gICAgdGhpcy5hY3RpdmVPcHRpb24gPSBlbmFibGVkT3B0aW9uc1tuZXh0XTtcbiAgICB0aGlzLmFjdGl2ZU9wdGlvbi5zZXRBY3RpdmUodHJ1ZSk7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudD8uc2V0QXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnLCB0aGlzLmFjdGl2ZU9wdGlvbi5pZCk7XG4gICAgdGhpcy5hY3RpdmVPcHRpb24uc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ25lYXJlc3QnIH0pO1xuICAgIGlmICh0aGlzLmF1dG9TZWxlY3RBY3RpdmVPcHRpb24pIHtcbiAgICAgIHRoaXMub25PcHRpb25BcnJvd3NTZWxlY3RlZCh0aGlzLmFjdGl2ZU9wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TmV4dEhvcml6b250YWxBY3RpdmVFbGVtZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFjdGl2ZU9wdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGVsZW1lbnRzSW5Sb3cgPSBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5hY3RpdmVPcHRpb25cbiAgICAgICAgPy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93JylcbiAgICAgICAgPy5xdWVyeVNlbGVjdG9yQWxsPFxuICAgICAgICAgIFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50PFQ+IHwgU2JiQXV0b2NvbXBsZXRlR3JpZEJ1dHRvbkVsZW1lbnRcbiAgICAgICAgPignc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbiwgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLWJ1dHRvbicpID8/IFtdLFxuICAgICk/LmZpbHRlcigoZWwpID0+ICFlbC5tYXRjaGVzKCc6c3RhdGUoZGlzYWJsZWQpJykpO1xuXG4gICAgaWYgKCFlbGVtZW50c0luUm93Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5leHQ6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZlbnQsIHRoaXMuX2FjdGl2ZUNvbHVtbkluZGV4LCBlbGVtZW50c0luUm93Lmxlbmd0aCk7XG4gICAgY29uc3QgbmV4dEVsZW1lbnQ6IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50PFQ+IHwgU2JiQXV0b2NvbXBsZXRlR3JpZEJ1dHRvbkVsZW1lbnQgPVxuICAgICAgZWxlbWVudHNJblJvd1tuZXh0XTtcbiAgICBpZiAobmV4dEVsZW1lbnQgaW5zdGFuY2VvZiBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCkge1xuICAgICAgbmV4dEVsZW1lbnQuc2V0QWN0aXZlKHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICDJtXN0YXRlQ29udHJvbGxlcihuZXh0RWxlbWVudCkuYWRkKCdmb2N1cy12aXNpYmxlJyk7XG4gICAgfVxuXG4gICAgY29uc3QgbGFzdEFjdGl2ZUVsZW1lbnQgPSBlbGVtZW50c0luUm93W3RoaXMuX2FjdGl2ZUNvbHVtbkluZGV4XTtcbiAgICBpZiAobGFzdEFjdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCkge1xuICAgICAgbGFzdEFjdGl2ZUVsZW1lbnQuc2V0QWN0aXZlKGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgybVzdGF0ZUNvbnRyb2xsZXIobGFzdEFjdGl2ZUVsZW1lbnQpLmRlbGV0ZSgnZm9jdXMtdmlzaWJsZScpO1xuICAgIH1cbiAgICB0aGlzLnRyaWdnZXJFbGVtZW50Py5zZXRBdHRyaWJ1dGUoJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCcsIG5leHRFbGVtZW50LmlkKTtcbiAgICBuZXh0RWxlbWVudC5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG4gICAgdGhpcy5fYWN0aXZlQ29sdW1uSW5kZXggPSBuZXh0O1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc2V0QWN0aXZlRWxlbWVudCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fYWN0aXZlQ29sdW1uSW5kZXggIT09IDApIHtcbiAgICAgIHRoaXMuYWN0aXZlT3B0aW9uXG4gICAgICAgID8uY2xvc2VzdCgnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdycpXG4gICAgICAgID8ucXVlcnlTZWxlY3RvckFsbCgnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLWJ1dHRvbicpXG4gICAgICAgIC5mb3JFYWNoKChlKSA9PiDJtXN0YXRlQ29udHJvbGxlcihlKS5kZWxldGUoJ2ZvY3VzLXZpc2libGUnKSk7XG4gICAgfVxuICAgIHRoaXMuYWN0aXZlT3B0aW9uPy5zZXRBY3RpdmUoZmFsc2UpO1xuICAgIHRoaXMuYWN0aXZlT3B0aW9uID0gbnVsbDtcbiAgICB0aGlzLl9hY3RpdmVDb2x1bW5JbmRleCA9IDA7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudD8ucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUcmlnZ2VyQXR0cmlidXRlcyhlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyhlbGVtZW50LCBhcmlhUm9sZU9uSG9zdCA/IHRoaXMuaWQgOiB0aGlzLm92ZXJsYXlJZCwgZmFsc2UsICdncmlkJyk7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1hdXRvY29tcGxldGUtZ3JpZCc6IFNiYkF1dG9jb21wbGV0ZUdyaWRFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiybVzdGF0ZUNvbnRyb2xsZXIiXSwibWFwcGluZ3MiOiI7Ozs7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
@@ -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,qBAKM,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;;cAoBkB,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"}
@@ -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 { SbbPropertyWatcherController } 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
+ })];
18
+ let _classDescriptor;
19
+ let _classExtraInitializers = [];
20
+ let _classThis;
21
+ let _classSuper = SbbDisabledMixin(SbbNegativeMixin(SbbIconNameMixin(SbbActionBaseElement)));
22
+ _a = class extends _classSuper {
23
+ /** Gets the SbbAutocompleteGridOptionElement on the same row of the button. */
24
+ get option() {
25
+ return this.closest("sbb-autocomplete-grid-row")?.querySelector("sbb-autocomplete-grid-option") || null;
26
+ }
27
+ get optgroup() {
28
+ return this.closest("sbb-autocomplete-grid-optgroup");
29
+ }
30
+ constructor() {
31
+ super();
32
+ this._handleButtonClick = async (event) => {
33
+ if (await isEventPrevented(event) || !this.closest("form")) {
34
+ return;
35
+ }
36
+ };
37
+ this.internals.states.add("button");
38
+ if (!isServer) {
39
+ this.setupBaseEventHandlers();
40
+ this.addEventListener("click", this._handleButtonClick);
41
+ this.addController(new SbbPropertyWatcherController(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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9hdXRvY29tcGxldGUtZ3JpZC9hdXRvY29tcGxldGUtZ3JpZC1idXR0b24vYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaW5pQnV0dG9uU3R5bGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9idXR0b24vY29tbW9uLmpzJztcbmltcG9ydCB7IFNiYkFjdGlvbkJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzRXZlbnRQcmV2ZW50ZWQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4sIFNiYk5lZ2F0aXZlTWl4aW4gfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcy5qcyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvaWNvbi5qcyc7XG5pbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBpc1NlcnZlciwgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRncm91cEVsZW1lbnQgfSBmcm9tICcuLi9hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50IH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLnRzJztcblxubGV0IGF1dG9jb21wbGV0ZUJ1dHRvbk5leHRJZCA9IDA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gaWNvbi1vbmx5IGJ1dHRvbiB0aGF0IGNhbiBiZSB1c2VkIGluIGBzYmItYXV0b2NvbXBsZXRlLWdyaWRgLlxuICpcbiAqIEBzbG90IGljb24gLSBTbG90IHVzZWQgdG8gZGlzcGxheSB0aGUgaWNvbiwgaWYgb25lIGlzIHNldFxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uJylcbkBob3N0QXR0cmlidXRlcyh7XG4gIHRhYmluZGV4OiBudWxsLFxufSlcbmNsYXNzIFNiYkF1dG9jb21wbGV0ZUdyaWRCdXR0b25FbGVtZW50IGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihcbiAgU2JiTmVnYXRpdmVNaXhpbihTYmJJY29uTmFtZU1peGluKFNiYkFjdGlvbkJhc2VFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ2J1dHRvbic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIG1pbmlCdXR0b25TdHlsZV07XG5cbiAgLyoqIEdldHMgdGhlIFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50IG9uIHRoZSBzYW1lIHJvdyBvZiB0aGUgYnV0dG9uLiAqL1xuICBwdWJsaWMgZ2V0IG9wdGlvbigpOiBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3cnKT8ucXVlcnlTZWxlY3Rvcignc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbicpIHx8XG4gICAgICBudWxsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgb3B0Z3JvdXAoKTogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGdyb3VwRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cCcpO1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnYnV0dG9uJyk7XG4gICAgaWYgKCFpc1NlcnZlcikge1xuICAgICAgdGhpcy5zZXR1cEJhc2VFdmVudEhhbmRsZXJzKCk7XG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5faGFuZGxlQnV0dG9uQ2xpY2spO1xuICAgICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcihcbiAgICAgICAgICB0aGlzLFxuICAgICAgICAgICgpID0+IHRoaXMuY2xvc2VzdCgnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwJyksXG4gICAgICAgICAge1xuICAgICAgICAgICAgZGlzYWJsZWQ6ICgpID0+IHRoaXMuX3VwZGF0ZUludGVybmFscygpLFxuICAgICAgICAgIH0sXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpc0Rpc2FibGVkRXh0ZXJuYWxseSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcHRncm91cD8uZGlzYWJsZWQgPz8gZmFsc2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBzdXBlci5yZW5kZXJJY29uU2xvdCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5pZCB8fD0gYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1idXR0b24tJHsrK2F1dG9jb21wbGV0ZUJ1dHRvbk5leHRJZH1gO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgdGhpcy5fdXBkYXRlSW50ZXJuYWxzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlSW50ZXJuYWxzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMub3B0Z3JvdXA/LmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdkaXNhYmxlZCcpO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYURpc2FibGVkID0gJ3RydWUnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCdkaXNhYmxlZCcpO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYURpc2FibGVkID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVCdXR0b25DbGljayA9IGFzeW5jIChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmICgoYXdhaXQgaXNFdmVudFByZXZlbnRlZChldmVudCkpIHx8ICF0aGlzLmNsb3Nlc3QoJ2Zvcm0nKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfTtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1idXR0b24nOiBTYmJBdXRvY29tcGxldGVHcmlkQnV0dG9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBY0EsSUFBSSwyQkFBMkI7SUFZekIsb0NBQWdDLE1BQUE7O0FBSnJDLE1BQUEsbUJBQUEsQ0FBQSxjQUFjLDhCQUE4QixHQUM1QyxlQUFlO0FBQUEsSUFDZCxVQUFVO0FBQUEsRUFBQSxDQUNYLENBQUM7Ozs7b0JBQzZDLGlCQUM3QyxpQkFBaUIsaUJBQWlCLG9CQUFvQixDQUFDLENBQUM7QUFEbkIsRUFBQSxtQkFBUSxZQUU5QztBQUFBO0FBQUEsSUFLQyxJQUFXLFNBQU07QUFDZixhQUNFLEtBQUssUUFBUSwyQkFBMkIsR0FBRyxjQUFjLDhCQUE4QixLQUN2RjtBQUFBLElBRUo7QUFBQSxJQUVBLElBQVcsV0FBUTtBQUNqQixhQUFPLEtBQUssUUFBUSxnQ0FBZ0M7QUFBQSxJQUN0RDtBQUFBLElBRUEsY0FBQTtBQUNFLFlBQUE7QUErQ00sV0FBQSxxQkFBcUIsT0FBTyxVQUFvQztBQUN0RSxZQUFLLE1BQU0saUJBQWlCLEtBQUssS0FBTSxDQUFDLEtBQUssUUFBUSxNQUFNLEdBQUc7QUFDNUQ7QUFBQSxRQUNGO0FBQUEsTUFDRjtBQWxERSxXQUFLLFVBQVUsT0FBTyxJQUFJLFFBQVE7QUFDbEMsVUFBSSxDQUFDLFVBQVU7QUFDYixhQUFLLHVCQUFBO0FBQ0wsYUFBSyxpQkFBaUIsU0FBUyxLQUFLLGtCQUFrQjtBQUN0RCxhQUFLLGNBQ0gsSUFBSSw2QkFDRixNQUNBLE1BQU0sS0FBSyxRQUFRLGdDQUFnQyxHQUNuRDtBQUFBLFVBQ0UsVUFBVSxNQUFNLEtBQUssaUJBQUE7QUFBQSxRQUFnQixDQUN0QyxDQUNGO0FBQUEsTUFFTDtBQUFBLElBQ0Y7QUFBQSxJQUVtQix1QkFBb0I7QUFDckMsYUFBTyxLQUFLLFVBQVUsWUFBWTtBQUFBLElBQ3BDO0FBQUEsSUFFbUIsaUJBQWM7QUFDL0IsYUFBTyxNQUFNLGVBQUE7QUFBQSxJQUNmO0FBQUEsSUFFZ0Isb0JBQWlCO0FBQy9CLFlBQU0sa0JBQUE7QUFDTixXQUFLLE9BQU8sZ0NBQWdDLEVBQUUsd0JBQXdCO0FBQUEsSUFDeEU7QUFBQSxJQUVtQixXQUFXLG1CQUF1QztBQUNuRSxZQUFNLFdBQVcsaUJBQWlCO0FBQ2xDLFVBQUksa0JBQWtCLElBQUksVUFBVSxHQUFHO0FBQ3JDLGFBQUssaUJBQUE7QUFBQSxNQUNQO0FBQUEsSUFDRjtBQUFBLElBRVEsbUJBQWdCO0FBQ3RCLFVBQUksS0FBSyxZQUFZLEtBQUssVUFBVSxVQUFVO0FBQzVDLGFBQUssVUFBVSxPQUFPLElBQUksVUFBVTtBQUNwQyxhQUFLLFVBQVUsZUFBZTtBQUFBLE1BQ2hDLE9BQU87QUFDTCxhQUFLLFVBQVUsT0FBTyxPQUFPLFVBQVU7QUFDdkMsYUFBSyxVQUFVLGVBQWU7QUFBQSxNQUNoQztBQUFBLElBQ0Y7QUFBQTs7QUFoRUYsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUdrQyxHQUFBLE9BQU8sVUFDaEIsR0FBQSxTQUF5QixDQUFDLGlCQUFpQixlQUFlLEdBSjdFLGtCQUFBLFlBQUEsdUJBQUEsR0FBaUM7OzsifQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './autocomplete-grid-button/autocomplete-grid-button.component.ts';
5
+ //# sourceMappingURL=autocomplete-grid-button.d.ts.map
@@ -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==
@@ -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"}
@@ -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,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './autocomplete-grid-cell/autocomplete-grid-cell.component.ts';
5
+ //# sourceMappingURL=autocomplete-grid-cell.d.ts.map
@@ -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
+ constructor();
12
+ protected getAutocompleteParent(): SbbAutocompleteBaseElement | null;
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;AAE1F,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;;IAiBD,SAAS,CAAC,qBAAqB,IAAI,0BAA0B,GAAG,IAAI;CAGrE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gCAAgC,EAAE,kCAAkC,CAAC;KACtE;CACF"}
@@ -0,0 +1,40 @@
1
+ import { __esDecorate, __runInitializers } from "tslib";
2
+ import { SbbPropertyWatcherController } from "@sbb-esta/lyne-elements/core/controllers.js";
3
+ import { SbbOptgroupBaseElement } from "@sbb-esta/lyne-elements/option/optgroup.js";
4
+ import { customElement } from "lit/decorators.js";
5
+ let SbbAutocompleteGridOptgroupElement = (() => {
6
+ var _a;
7
+ let _classDecorators = [customElement("sbb-autocomplete-grid-optgroup")];
8
+ let _classDescriptor;
9
+ let _classExtraInitializers = [];
10
+ let _classThis;
11
+ let _classSuper = SbbOptgroupBaseElement;
12
+ _a = class extends _classSuper {
13
+ get options() {
14
+ return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
15
+ }
16
+ constructor() {
17
+ super();
18
+ this.addController(new SbbPropertyWatcherController(this, () => this.closest("sbb-autocomplete-grid"), {
19
+ negative: (e) => {
20
+ this.toggleState("negative", e.negative);
21
+ this.requestUpdate();
22
+ }
23
+ }));
24
+ }
25
+ getAutocompleteParent() {
26
+ return this.closest?.("sbb-autocomplete-grid") || null;
27
+ }
28
+ }, _classThis = _a, (() => {
29
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
30
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
31
+ _classThis = _classDescriptor.value;
32
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
33
+ __runInitializers(_classThis, _classExtraInitializers);
34
+ })(), _a;
35
+ return _classThis;
36
+ })();
37
+ export {
38
+ SbbAutocompleteGridOptgroupElement
39
+ };
40
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvYXV0b2NvbXBsZXRlLmpzJztcbmltcG9ydCB7IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9vcHRpb24vb3B0Z3JvdXAuanMnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVHcmlkT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbi50cyc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXBgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0Z3JvdXAnKVxuY2xhc3MgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGdyb3VwRWxlbWVudCBleHRlbmRzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQge1xuICBwcm90ZWN0ZWQgZ2V0IG9wdGlvbnMoKTogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/Lignc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbicpID8/IFtdLFxuICAgICkgYXMgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnRbXTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIodGhpcywgKCkgPT4gdGhpcy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQnKSwge1xuICAgICAgICBuZWdhdGl2ZTogKGUpID0+IHtcbiAgICAgICAgICB0aGlzLnRvZ2dsZVN0YXRlKCduZWdhdGl2ZScsIGUubmVnYXRpdmUpO1xuXG4gICAgICAgICAgLy8gVG8gdXBkYXRlIHRoZSBzYmItZGl2aWRlciB3ZSBuZWVkIGEgcmVxdWVzdFVwZGF0ZSgpIGhlcmVcbiAgICAgICAgICB0aGlzLnJlcXVlc3RVcGRhdGUoKTtcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk6IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY2xvc2VzdD8uPFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50Pignc2JiLWF1dG9jb21wbGV0ZS1ncmlkJykgfHwgbnVsbDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGdyb3VwJzogU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGdyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7SUFjTSxzQ0FBa0MsTUFBQTs7MEJBRHZDLGNBQWMsZ0NBQWdDLENBQUM7Ozs7b0JBQ0M7QUFBUixFQUFBLG1CQUFRLFlBQXNCO0FBQUEsSUFDckUsSUFBYyxVQUFPO0FBQ25CLGFBQU8sTUFBTSxLQUNYLEtBQUssbUJBQW1CLDhCQUE4QixLQUFLLEVBQUU7QUFBQSxJQUVqRTtBQUFBLElBRUEsY0FBQTtBQUNFLFlBQUE7QUFFQSxXQUFLLGNBQ0gsSUFBSSw2QkFBNkIsTUFBTSxNQUFNLEtBQUssUUFBUSx1QkFBdUIsR0FBRztBQUFBLFFBQ2xGLFVBQVUsQ0FBQyxNQUFLO0FBQ2QsZUFBSyxZQUFZLFlBQVksRUFBRSxRQUFRO0FBR3ZDLGVBQUssY0FBQTtBQUFBLFFBQ1A7QUFBQSxNQUFBLENBQ0QsQ0FBQztBQUFBLElBRU47QUFBQSxJQUVVLHdCQUFxQjtBQUM3QixhQUFPLEtBQUssVUFBc0MsdUJBQXVCLEtBQUs7QUFBQSxJQUNoRjtBQUFBLEVBQUE7O0FBeEJGLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7QUFBTSxzQkFBQSxZQUFBLHVCQUFBO0FBQUEsRUFBQSxNQUFtQzs7OyJ9
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.ts';
5
+ //# sourceMappingURL=autocomplete-grid-optgroup.d.ts.map
@@ -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,26 @@
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 selectByClick(event: MouseEvent): void;
20
+ }
21
+ declare global {
22
+ interface HTMLElementTagNameMap {
23
+ 'sbb-autocomplete-grid-option': SbbAutocompleteGridOptionElement;
24
+ }
25
+ }
26
+ //# 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":"AAGA,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;;cAyB3B,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAW5E,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"}