@fundamental-ngx/core 0.63.2-rc.4 → 0.63.2-rc.6

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 (201) hide show
  1. package/fesm2022/fundamental-ngx-core-action-bar.mjs +27 -26
  2. package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
  3. package/fesm2022/fundamental-ngx-core-action-sheet.mjs +25 -22
  4. package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  5. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +35 -31
  6. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
  7. package/fesm2022/fundamental-ngx-core-avatar-group.mjs +52 -43
  8. package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  9. package/fesm2022/fundamental-ngx-core-avatar.mjs +67 -43
  10. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  11. package/fesm2022/fundamental-ngx-core-bar.mjs +50 -41
  12. package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
  13. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +18 -14
  14. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  15. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +34 -23
  16. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs.map +1 -1
  17. package/fesm2022/fundamental-ngx-core-button.mjs +56 -37
  18. package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
  19. package/fesm2022/fundamental-ngx-core-calendar.mjs +87 -62
  20. package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
  21. package/fesm2022/fundamental-ngx-core-card.mjs +264 -188
  22. package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
  23. package/fesm2022/fundamental-ngx-core-carousel.mjs +35 -26
  24. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  25. package/fesm2022/fundamental-ngx-core-checkbox.mjs +7 -7
  26. package/fesm2022/fundamental-ngx-core-combobox.mjs +19 -18
  27. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  28. package/fesm2022/fundamental-ngx-core-content-density.mjs +46 -36
  29. package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
  30. package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -13
  31. package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
  32. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +15 -14
  33. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  34. package/fesm2022/fundamental-ngx-core-datetime.mjs +32 -31
  35. package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
  36. package/fesm2022/fundamental-ngx-core-dialog.mjs +116 -89
  37. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  38. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +100 -77
  39. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  40. package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  41. package/fesm2022/fundamental-ngx-core-facets.mjs +24 -20
  42. package/fesm2022/fundamental-ngx-core-facets.mjs.map +1 -1
  43. package/fesm2022/fundamental-ngx-core-feed-input.mjs +18 -17
  44. package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
  45. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +22 -22
  46. package/fesm2022/fundamental-ngx-core-file-uploader.mjs +16 -16
  47. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +17 -15
  48. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
  49. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  50. package/fesm2022/fundamental-ngx-core-form.mjs +74 -74
  51. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  52. package/fesm2022/fundamental-ngx-core-formatted-text.mjs +17 -12
  53. package/fesm2022/fundamental-ngx-core-formatted-text.mjs.map +1 -1
  54. package/fesm2022/fundamental-ngx-core-generic-tag.mjs +19 -13
  55. package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -1
  56. package/fesm2022/fundamental-ngx-core-grid-list.mjs +56 -51
  57. package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
  58. package/fesm2022/fundamental-ngx-core-icon.mjs +33 -20
  59. package/fesm2022/fundamental-ngx-core-icon.mjs.map +1 -1
  60. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +42 -31
  61. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  62. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs +11 -9
  63. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs.map +1 -1
  64. package/fesm2022/fundamental-ngx-core-info-label.mjs +29 -18
  65. package/fesm2022/fundamental-ngx-core-info-label.mjs.map +1 -1
  66. package/fesm2022/fundamental-ngx-core-inline-help.mjs +35 -25
  67. package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
  68. package/fesm2022/fundamental-ngx-core-input-group.mjs +21 -21
  69. package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
  70. package/fesm2022/fundamental-ngx-core-layout-grid.mjs +40 -27
  71. package/fesm2022/fundamental-ngx-core-layout-grid.mjs.map +1 -1
  72. package/fesm2022/fundamental-ngx-core-layout-panel.mjs +41 -37
  73. package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
  74. package/fesm2022/fundamental-ngx-core-link.mjs +24 -19
  75. package/fesm2022/fundamental-ngx-core-link.mjs.map +1 -1
  76. package/fesm2022/fundamental-ngx-core-list.mjs +100 -91
  77. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  78. package/fesm2022/fundamental-ngx-core-menu.mjs +125 -101
  79. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  80. package/fesm2022/fundamental-ngx-core-message-box.mjs +39 -38
  81. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  82. package/fesm2022/fundamental-ngx-core-message-page.mjs +19 -19
  83. package/fesm2022/fundamental-ngx-core-message-strip.mjs +79 -55
  84. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  85. package/fesm2022/fundamental-ngx-core-message-toast.mjs +17 -17
  86. package/fesm2022/fundamental-ngx-core-message-toast.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +21 -20
  88. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  89. package/fesm2022/fundamental-ngx-core-mobile-mode.mjs +3 -3
  90. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +98 -66
  91. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  92. package/fesm2022/fundamental-ngx-core-multi-input.mjs +27 -21
  93. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  94. package/fesm2022/fundamental-ngx-core-nested-list.mjs +46 -43
  95. package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
  96. package/fesm2022/fundamental-ngx-core-notification.mjs +178 -132
  97. package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
  98. package/fesm2022/fundamental-ngx-core-object-attribute.mjs +7 -7
  99. package/fesm2022/fundamental-ngx-core-object-identifier.mjs +24 -17
  100. package/fesm2022/fundamental-ngx-core-object-identifier.mjs.map +1 -1
  101. package/fesm2022/fundamental-ngx-core-object-marker.mjs +41 -24
  102. package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
  103. package/fesm2022/fundamental-ngx-core-object-number.mjs +33 -21
  104. package/fesm2022/fundamental-ngx-core-object-number.mjs.map +1 -1
  105. package/fesm2022/fundamental-ngx-core-object-status.mjs +41 -26
  106. package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
  107. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +33 -32
  108. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  109. package/fesm2022/fundamental-ngx-core-pagination.mjs +10 -10
  110. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  111. package/fesm2022/fundamental-ngx-core-panel.mjs +51 -35
  112. package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
  113. package/fesm2022/fundamental-ngx-core-popover.mjs +267 -164
  114. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  115. package/fesm2022/fundamental-ngx-core-product-switch.mjs +46 -32
  116. package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
  117. package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +7 -7
  118. package/fesm2022/fundamental-ngx-core-quick-view.mjs +47 -44
  119. package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
  120. package/fesm2022/fundamental-ngx-core-radio.mjs +8 -8
  121. package/fesm2022/fundamental-ngx-core-radio.mjs.map +1 -1
  122. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +61 -39
  123. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  124. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +12 -11
  125. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
  126. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs +17 -12
  127. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs.map +1 -1
  128. package/fesm2022/fundamental-ngx-core-scrollbar.mjs +14 -12
  129. package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  130. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +9 -8
  131. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  132. package/fesm2022/fundamental-ngx-core-select.mjs +22 -21
  133. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  134. package/fesm2022/fundamental-ngx-core-settings.mjs +70 -60
  135. package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
  136. package/fesm2022/fundamental-ngx-core-shared.mjs +3 -3
  137. package/fesm2022/fundamental-ngx-core-shellbar.mjs +77 -63
  138. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  139. package/fesm2022/fundamental-ngx-core-side-navigation.mjs +13 -13
  140. package/fesm2022/fundamental-ngx-core-skeleton.mjs +24 -16
  141. package/fesm2022/fundamental-ngx-core-skeleton.mjs.map +1 -1
  142. package/fesm2022/fundamental-ngx-core-slider.mjs +15 -13
  143. package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
  144. package/fesm2022/fundamental-ngx-core-split-button.mjs +10 -10
  145. package/fesm2022/fundamental-ngx-core-status-indicator.mjs +62 -35
  146. package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  147. package/fesm2022/fundamental-ngx-core-step-input.mjs +11 -9
  148. package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
  149. package/fesm2022/fundamental-ngx-core-switch.mjs +8 -8
  150. package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
  151. package/fesm2022/fundamental-ngx-core-table.mjs +51 -50
  152. package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
  153. package/fesm2022/fundamental-ngx-core-tabs.mjs +56 -55
  154. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  155. package/fesm2022/fundamental-ngx-core-text.mjs +29 -19
  156. package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
  157. package/fesm2022/fundamental-ngx-core-theming.mjs +7 -7
  158. package/fesm2022/fundamental-ngx-core-tile.mjs +171 -136
  159. package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
  160. package/fesm2022/fundamental-ngx-core-time-picker.mjs +9 -8
  161. package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
  162. package/fesm2022/fundamental-ngx-core-time.mjs +16 -13
  163. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  164. package/fesm2022/fundamental-ngx-core-timeline.mjs +43 -43
  165. package/fesm2022/fundamental-ngx-core-title.mjs +12 -10
  166. package/fesm2022/fundamental-ngx-core-title.mjs.map +1 -1
  167. package/fesm2022/fundamental-ngx-core-token.mjs +33 -24
  168. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  169. package/fesm2022/fundamental-ngx-core-toolbar.mjs +35 -32
  170. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  171. package/fesm2022/fundamental-ngx-core-tree.mjs +41 -36
  172. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  173. package/fesm2022/fundamental-ngx-core-upload-collection.mjs +37 -37
  174. package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  175. package/fesm2022/fundamental-ngx-core-user-menu.mjs +108 -84
  176. package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
  177. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +20 -17
  178. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs.map +1 -1
  179. package/fesm2022/fundamental-ngx-core-wizard.mjs +41 -32
  180. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  181. package/fesm2022/fundamental-ngx-core.mjs +4 -4
  182. package/package.json +11 -10
  183. package/schematics/add-styles/index.js +3 -3
  184. package/schematics/add-styles/index.js.map +1 -1
  185. package/schematics/add-theming/index.js +1 -1
  186. package/schematics/add-theming/index.js.map +1 -1
  187. package/schematics/package.json +7 -0
  188. package/schematics/tsconfig.json +12 -6
  189. package/schematics/tsconfig.spec.json +2 -0
  190. package/schematics/utils/calls-providers-function.js +34 -1
  191. package/schematics/utils/calls-providers-function.js.map +1 -1
  192. package/schematics/utils/ng-module-utils.js +34 -1
  193. package/schematics/utils/ng-module-utils.js.map +1 -1
  194. package/types/fundamental-ngx-core-avatar-group-legacy.d.ts +1 -0
  195. package/types/fundamental-ngx-core-carousel.d.ts +2 -0
  196. package/types/fundamental-ngx-core-list.d.ts +2 -2
  197. package/types/fundamental-ngx-core-menu.d.ts +4 -4
  198. package/types/fundamental-ngx-core-notification.d.ts +0 -2
  199. package/types/fundamental-ngx-core-popover.d.ts +8 -6
  200. package/types/fundamental-ngx-core-product-switch.d.ts +6 -3
  201. package/types/fundamental-ngx-core-wizard.d.ts +4 -1
@@ -78,10 +78,10 @@ class MultiAnnouncerDirective {
78
78
  this._announcement = '';
79
79
  });
80
80
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiAnnouncerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
82
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: MultiAnnouncerDirective, isStandalone: true, selector: "[fdMultiAnnouncer]", inputs: { multiAnnouncerOptions: "multiAnnouncerOptions" }, host: { listeners: { "keyup": "_makeSearchTermChangeAnnouncements($event)" } }, queries: [{ propertyName: "_tokens", predicate: TokenComponent, descendants: true }], exportAs: ["fdMultiAnnouncer"], ngImport: i0 }); }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiAnnouncerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
82
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: MultiAnnouncerDirective, isStandalone: true, selector: "[fdMultiAnnouncer]", inputs: { multiAnnouncerOptions: "multiAnnouncerOptions" }, host: { listeners: { "keyup": "_makeSearchTermChangeAnnouncements($event)" } }, queries: [{ propertyName: "_tokens", predicate: TokenComponent, descendants: true }], exportAs: ["fdMultiAnnouncer"], ngImport: i0 }); }
83
83
  }
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiAnnouncerDirective, decorators: [{
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiAnnouncerDirective, decorators: [{
85
85
  type: Directive,
86
86
  args: [{
87
87
  selector: '[fdMultiAnnouncer]',
@@ -177,10 +177,10 @@ class MultiComboboxConfig {
177
177
  */
178
178
  this.providers = new Map();
179
179
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
181
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxConfig, providedIn: 'root' }); }
180
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
181
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxConfig, providedIn: 'root' }); }
182
182
  }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxConfig, decorators: [{
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxConfig, decorators: [{
184
184
  type: Injectable,
185
185
  args: [{ providedIn: 'root' }]
186
186
  }] });
@@ -211,35 +211,41 @@ class BaseMultiCombobox {
211
211
  * Signal containing currently selected suggestion items.
212
212
  * @hidden
213
213
  */
214
- this._selectedSuggestions = signal([], ...(ngDevMode ? [{ debugName: "_selectedSuggestions" }] : []));
214
+ this._selectedSuggestions = signal([], /* @ts-ignore */
215
+ ...(ngDevMode ? [{ debugName: "_selectedSuggestions" }] : /* istanbul ignore next */ []));
215
216
  /**
216
217
  * Signal containing currently matched suggestion items based on search text.
217
218
  * Updates when the user types in the search field.
218
219
  * Contains filtered options that match the current query.
219
220
  * @hidden
220
221
  */
221
- this._suggestions = signal([], ...(ngDevMode ? [{ debugName: "_suggestions" }] : []));
222
+ this._suggestions = signal([], /* @ts-ignore */
223
+ ...(ngDevMode ? [{ debugName: "_suggestions" }] : /* istanbul ignore next */ []));
222
224
  /**
223
225
  * Signal containing flattened suggestion items (groups expanded to flat list).
224
226
  * @hidden
225
227
  */
226
- this._flatSuggestions = signal([], ...(ngDevMode ? [{ debugName: "_flatSuggestions" }] : []));
228
+ this._flatSuggestions = signal([], /* @ts-ignore */
229
+ ...(ngDevMode ? [{ debugName: "_flatSuggestions" }] : /* istanbul ignore next */ []));
227
230
  /**
228
231
  * Signal containing the complete flattened list of all available items.
229
232
  * @hidden
230
233
  */
231
- this._fullFlatSuggestions = signal([], ...(ngDevMode ? [{ debugName: "_fullFlatSuggestions" }] : []));
234
+ this._fullFlatSuggestions = signal([], /* @ts-ignore */
235
+ ...(ngDevMode ? [{ debugName: "_fullFlatSuggestions" }] : /* istanbul ignore next */ []));
232
236
  /**
233
237
  * Signal indicating whether the "show selected only" mode is active.
234
238
  * In mobile mode, toggles between showing all items and showing only selected items.
235
239
  * @hidden
236
240
  */
237
- this.selectedShown = signal(false, ...(ngDevMode ? [{ debugName: "selectedShown" }] : []));
241
+ this.selectedShown = signal(false, /* @ts-ignore */
242
+ ...(ngDevMode ? [{ debugName: "selectedShown" }] : /* istanbul ignore next */ []));
238
243
  /**
239
244
  * Writable signal for overriding the invalid entry message with i18n translations.
240
245
  * @hidden
241
246
  */
242
- this._invalidEntryMessageOverride = signal(null, ...(ngDevMode ? [{ debugName: "_invalidEntryMessageOverride" }] : []));
247
+ this._invalidEntryMessageOverride = signal(null, /* @ts-ignore */
248
+ ...(ngDevMode ? [{ debugName: "_invalidEntryMessageOverride" }] : /* istanbul ignore next */ []));
243
249
  /** @hidden */
244
250
  this._elmRef = inject((ElementRef));
245
251
  /** @hidden */
@@ -304,7 +310,8 @@ class BaseMultiCombobox {
304
310
  * Used for controlling popover visibility and position.
305
311
  * @hidden
306
312
  */
307
- this.popover = viewChild(PopoverComponent, ...(ngDevMode ? [{ debugName: "popover" }] : []));
313
+ this.popover = viewChild(PopoverComponent, /* @ts-ignore */
314
+ ...(ngDevMode ? [{ debugName: "popover" }] : /* istanbul ignore next */ []));
308
315
  /** @hidden */
309
316
  this._displayFn = (value) => displayValue(value, this.displayKey());
310
317
  /** @hidden */
@@ -686,10 +693,10 @@ class BaseMultiCombobox {
686
693
  this._dsSubscription.add(this.dataSourceDirective.dataSourceProvider?.dataRequested.subscribe((value) => this.dataRequested.emit(value)));
687
694
  this._dsSubscription.add(this.dataSourceDirective.dataSourceProvider?.dataReceived.subscribe((value) => this.dataReceived.emit(value)));
688
695
  }
689
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BaseMultiCombobox, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
690
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.0", type: BaseMultiCombobox, isStandalone: true, viewQueries: [{ propertyName: "popover", first: true, predicate: PopoverComponent, descendants: true, isSignal: true }], ngImport: i0 }); }
696
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: BaseMultiCombobox, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
697
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "22.0.5", type: BaseMultiCombobox, isStandalone: true, viewQueries: [{ propertyName: "popover", first: true, predicate: PopoverComponent, descendants: true, isSignal: true }], ngImport: i0 }); }
691
698
  }
692
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BaseMultiCombobox, decorators: [{
699
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: BaseMultiCombobox, decorators: [{
693
700
  type: Directive
694
701
  }], propDecorators: { popover: [{ type: i0.ViewChild, args: [i0.forwardRef(() => PopoverComponent), { isSignal: true }] }] } });
695
702
 
@@ -760,10 +767,10 @@ class MobileMultiComboboxComponent extends MobileModeBase {
760
767
  disablePaddings: true
761
768
  });
762
769
  }
763
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MobileMultiComboboxComponent, deps: [{ token: MULTI_COMBOBOX_COMPONENT }], target: i0.ɵɵFactoryTarget.Component }); }
764
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: MobileMultiComboboxComponent, isStandalone: true, selector: "fd-mobile-multi-combobox", viewQueries: [{ propertyName: "dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n @if (mobileConfig.title) {\n <h1 fd-title fd-dialog-title>{{ mobileConfig.title }}</h1>\n }\n @if (mobileConfig.hasCloseButton) {\n <button fd-dialog-close-button [mobile]=\"true\" (click)=\"handleDismiss()\"></button>\n }\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\">\n <ng-template [ngTemplateOutlet]=\"childContent?.controlTemplate || null\"></ng-template>\n @if (selectedShown()) {\n <button\n fd-button\n glyph=\"multiselect-all\"\n fdType=\"emphasized\"\n [title]=\"('platformMultiCombobox.mobileShowAllItemsButton' | fdTranslate)()\"\n [attr.aria-label]=\"('platformMultiCombobox.mobileShowAllItemsButton' | fdTranslate)()\"\n class=\"fd-margin-begin--tiny\"\n (click)=\"showSelected()\"\n ></button>\n }\n @if (selectedShown() === false) {\n <button\n fd-button\n glyph=\"multiselect-all\"\n fdType=\"transparent\"\n [title]=\"('platformMultiCombobox.mobileShowSelectedItemsButton' | fdTranslate)()\"\n [attr.aria-label]=\"\n ('platformMultiCombobox.mobileShowSelectedItemsButton' | fdTranslate)()\n \"\n class=\"fd-margin-begin--tiny\"\n (click)=\"showSelected()\"\n ></button>\n }\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n <fd-dialog-body>\n <ng-template [ngTemplateOutlet]=\"childContent?.listTemplate || null\"></ng-template>\n </fd-dialog-body>\n <fd-dialog-footer>\n @if (mobileConfig.approveButtonText) {\n <fd-button-bar fdType=\"emphasized\" [label]=\"mobileConfig.approveButtonText!\" (click)=\"handleApprove()\">\n </fd-button-bar>\n }\n @if (mobileConfig.cancelButtonText) {\n <fd-button-bar [label]=\"mobileConfig.cancelButtonText!\" (click)=\"handleDismiss()\"> </fd-button-bar>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: BarMiddleDirective, selector: "[fd-bar-middle]", inputs: ["stackContentsVertically"] }, { kind: "directive", type: BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["twoLineClamp", "headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["id"], exportAs: ["fd-button"] }, { kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header", inputs: ["inShellbar"] }, { kind: "component", type: DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
770
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MobileMultiComboboxComponent, deps: [{ token: MULTI_COMBOBOX_COMPONENT }], target: i0.ɵɵFactoryTarget.Component }); }
771
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: MobileMultiComboboxComponent, isStandalone: true, selector: "fd-mobile-multi-combobox", viewQueries: [{ propertyName: "dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n @if (mobileConfig.title) {\n <h1 fd-title fd-dialog-title>{{ mobileConfig.title }}</h1>\n }\n @if (mobileConfig.hasCloseButton) {\n <button fd-dialog-close-button [mobile]=\"true\" (click)=\"handleDismiss()\"></button>\n }\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\">\n <ng-template [ngTemplateOutlet]=\"childContent?.controlTemplate || null\"></ng-template>\n @if (selectedShown()) {\n <button\n fd-button\n glyph=\"multiselect-all\"\n fdType=\"emphasized\"\n [title]=\"('platformMultiCombobox.mobileShowAllItemsButton' | fdTranslate)()\"\n [attr.aria-label]=\"('platformMultiCombobox.mobileShowAllItemsButton' | fdTranslate)()\"\n class=\"fd-margin-begin--tiny\"\n (click)=\"showSelected()\"\n ></button>\n }\n @if (selectedShown() === false) {\n <button\n fd-button\n glyph=\"multiselect-all\"\n fdType=\"transparent\"\n [title]=\"('platformMultiCombobox.mobileShowSelectedItemsButton' | fdTranslate)()\"\n [attr.aria-label]=\"\n ('platformMultiCombobox.mobileShowSelectedItemsButton' | fdTranslate)()\n \"\n class=\"fd-margin-begin--tiny\"\n (click)=\"showSelected()\"\n ></button>\n }\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n <fd-dialog-body>\n <ng-template [ngTemplateOutlet]=\"childContent?.listTemplate || null\"></ng-template>\n </fd-dialog-body>\n <fd-dialog-footer>\n @if (mobileConfig.approveButtonText) {\n <fd-button-bar fdType=\"emphasized\" [label]=\"mobileConfig.approveButtonText!\" (click)=\"handleApprove()\">\n </fd-button-bar>\n }\n @if (mobileConfig.cancelButtonText) {\n <fd-button-bar [label]=\"mobileConfig.cancelButtonText!\" (click)=\"handleDismiss()\"> </fd-button-bar>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: BarMiddleDirective, selector: "[fd-bar-middle]", inputs: ["stackContentsVertically"] }, { kind: "directive", type: BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["twoLineClamp", "headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["id"], exportAs: ["fd-button"] }, { kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header", inputs: ["inShellbar"] }, { kind: "component", type: DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
765
772
  }
766
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MobileMultiComboboxComponent, decorators: [{
773
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MobileMultiComboboxComponent, decorators: [{
767
774
  type: Component,
768
775
  args: [{ selector: 'fd-mobile-multi-combobox', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
769
776
  BarMiddleDirective,
@@ -884,8 +891,8 @@ class SelectAllTogglerComponent extends ListFocusItem {
884
891
  change(value) {
885
892
  this.selectAllHandler(value);
886
893
  }
887
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: SelectAllTogglerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
888
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: SelectAllTogglerComponent, isStandalone: true, selector: "fd-multi-combobox-select-all-toggler", inputs: { selectAllHandler: "selectAllHandler", valueChanges: "valueChanges", selectedItems: "selectedItems", flatItems: "flatItems" }, host: { listeners: { "keydown.enter": "onKeyDown($event)", "keydown.space": "onKeyDown($event)", "click": "onClick()" } }, providers: [
894
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: SelectAllTogglerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
895
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: SelectAllTogglerComponent, isStandalone: true, selector: "fd-multi-combobox-select-all-toggler", inputs: { selectAllHandler: "selectAllHandler", valueChanges: "valueChanges", selectedItems: "selectedItems", flatItems: "flatItems" }, host: { listeners: { "keydown.enter": "onKeyDown($event)", "keydown.space": "onKeyDown($event)", "click": "onClick()" } }, providers: [
889
896
  {
890
897
  provide: ListFocusItem,
891
898
  useExisting: SelectAllTogglerComponent
@@ -905,7 +912,7 @@ class SelectAllTogglerComponent extends ListFocusItem {
905
912
  </fd-toolbar>
906
913
  `, isInline: true, styles: ["fd-multi-combobox-select-all-toggler{display:block;background-color:var(--sapBackgroundColor);cursor:pointer;position:sticky;top:0;z-index:1}fd-multi-combobox-select-all-toggler:focus,fd-multi-combobox-select-all-toggler.is-focus{outline-offset:-.1875rem;outline-width:var(--sapContent_FocusWidth);outline-style:var(--sapContent_FocusStyle);outline-color:var(--sapContent_FocusColor)}fd-multi-combobox-select-all-toggler .fd-toolbar{padding-left:0;padding-right:0}fd-multi-combobox-select-all-toggler .fd-multi-combobox-select-all__form-item{display:flex;flex-direction:row;align-items:center;font-weight:700}fd-multi-combobox-select-all-toggler .fd-multi-combobox-select-all__form-item fd-checkbox{pointer-events:none}fd-multi-combobox-select-all-toggler .fd-multi-combobox-select-all__form-item fd-checkbox .fd-checkbox__checkmark{margin-inline-end:.5rem}fd-multi-combobox-select-all-toggler .fd-multi-combobox-select-all__form-item fd-checkbox .fd-checkbox__text{font-weight:700!important}\n"], dependencies: [{ kind: "component", type: ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "ariaOrientation", "id"] }, { kind: "component", type: FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
907
914
  }
908
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: SelectAllTogglerComponent, decorators: [{
915
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: SelectAllTogglerComponent, decorators: [{
909
916
  type: Component,
910
917
  args: [{ selector: 'fd-multi-combobox-select-all-toggler', template: `
911
918
  <fd-toolbar>
@@ -1004,27 +1011,28 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1004
1011
  * Show select all checkbox
1005
1012
  * @defaultValue false
1006
1013
  */
1007
- this.showSelectAll = input(false, { ...(ngDevMode ? { debugName: "showSelectAll" } : {}), transform: booleanAttribute });
1014
+ this.showSelectAll = input(false, { ...(ngDevMode ? { debugName: "showSelectAll" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1008
1015
  /**
1009
1016
  * Maximum height of the dropdown options panel.
1010
1017
  * @defaultValue '250px'
1011
1018
  */
1012
- this.maxHeight = input('250px', ...(ngDevMode ? [{ debugName: "maxHeight" }] : []));
1019
+ this.maxHeight = input('250px', /* @ts-ignore */
1020
+ ...(ngDevMode ? [{ debugName: "maxHeight" }] : /* istanbul ignore next */ []));
1013
1021
  /**
1014
1022
  * Controls whether the addon button can receive keyboard focus.
1015
1023
  * @defaultValue false
1016
1024
  */
1017
- this.buttonFocusable = input(false, { ...(ngDevMode ? { debugName: "buttonFocusable" } : {}), transform: booleanAttribute });
1025
+ this.buttonFocusable = input(false, { ...(ngDevMode ? { debugName: "buttonFocusable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1018
1026
  /**
1019
1027
  * Whether the autocomplete should be enabled; Enabled by default.
1020
1028
  * @defaultValue true
1021
1029
  */
1022
- this.autoComplete = input(true, { ...(ngDevMode ? { debugName: "autoComplete" } : {}), transform: booleanAttribute });
1030
+ this.autoComplete = input(true, { ...(ngDevMode ? { debugName: "autoComplete" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1023
1031
  /**
1024
1032
  * Whether list item options should be rendered as byline.
1025
1033
  * @defaultValue false
1026
1034
  */
1027
- this.byline = input(false, { ...(ngDevMode ? { debugName: "byline" } : {}), transform: booleanAttribute });
1035
+ this.byline = input(false, { ...(ngDevMode ? { debugName: "byline" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1028
1036
  /**
1029
1037
  * Max width of multi combobox dropdown body.
1030
1038
  * `none` will not limit width of the dropdown.
@@ -1033,13 +1041,15 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1033
1041
  *
1034
1042
  * @defaultValue 'none'
1035
1043
  */
1036
- this.bodyMaxWidth = input('none', ...(ngDevMode ? [{ debugName: "bodyMaxWidth" }] : []));
1044
+ this.bodyMaxWidth = input('none', /* @ts-ignore */
1045
+ ...(ngDevMode ? [{ debugName: "bodyMaxWidth" }] : /* istanbul ignore next */ []));
1037
1046
  /**
1038
1047
  * TODO: Name of the entity for which DataProvider will be loaded. You can either pass list of
1039
1048
  * items or use this entityClass and internally we should be able to do lookup to some registry
1040
1049
  * and retrieve the best matching DataProvider that is set on application level
1041
1050
  */
1042
- this.entityClass = input(...(ngDevMode ? [undefined, { debugName: "entityClass" }] : []));
1051
+ this.entityClass = input(/* @ts-ignore */
1052
+ ...(ngDevMode ? [undefined, { debugName: "entityClass" }] : /* istanbul ignore next */ []));
1043
1053
  /**
1044
1054
  * Enables mobile-optimized rendering mode.
1045
1055
  * When enabled, displays the combobox in a full-screen dialog optimized for touch devices.
@@ -1047,7 +1057,7 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1047
1057
  *
1048
1058
  * @defaultValue false
1049
1059
  */
1050
- this.mobile = input(false, { ...(ngDevMode ? { debugName: "mobile" } : {}), transform: booleanAttribute });
1060
+ this.mobile = input(false, { ...(ngDevMode ? { debugName: "mobile" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1051
1061
  /**
1052
1062
  * Controls whether items should be grouped in the dropdown.
1053
1063
  * When enabled, items are organized by the property specified in `groupKey`.
@@ -1055,7 +1065,7 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1055
1065
  *
1056
1066
  * @defaultValue false
1057
1067
  */
1058
- this.group = input(false, { ...(ngDevMode ? { debugName: "group" } : {}), transform: booleanAttribute });
1068
+ this.group = input(false, { ...(ngDevMode ? { debugName: "group" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1059
1069
  /**
1060
1070
  * Property path for grouping items.
1061
1071
  * Specifies which property to use for grouping items when `group` is enabled.
@@ -1067,27 +1077,30 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1067
1077
  *
1068
1078
  * @defaultValue ''
1069
1079
  */
1070
- this.groupKey = input('', ...(ngDevMode ? [{ debugName: "groupKey" }] : []));
1080
+ this.groupKey = input('', /* @ts-ignore */
1081
+ ...(ngDevMode ? [{ debugName: "groupKey" }] : /* istanbul ignore next */ []));
1071
1082
  /**
1072
1083
  * Property path for secondary text display.
1073
1084
  * When `showSecondaryText` is enabled, displays this property as secondary text below the main label.
1074
1085
  *
1075
1086
  * @defaultValue ''
1076
1087
  */
1077
- this.secondaryKey = input('', ...(ngDevMode ? [{ debugName: "secondaryKey" }] : []));
1088
+ this.secondaryKey = input('', /* @ts-ignore */
1089
+ ...(ngDevMode ? [{ debugName: "secondaryKey" }] : /* istanbul ignore next */ []));
1078
1090
  /**
1079
1091
  * Controls visibility of the secondary text column.
1080
1092
  * When enabled, displays secondary text from the `secondaryKey` property in a two-column layout.
1081
1093
  *
1082
1094
  * @defaultValue false
1083
1095
  */
1084
- this.showSecondaryText = input(false, { ...(ngDevMode ? { debugName: "showSecondaryText" } : {}), transform: booleanAttribute });
1096
+ this.showSecondaryText = input(false, { ...(ngDevMode ? { debugName: "showSecondaryText" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1085
1097
  /**
1086
1098
  * Horizontally align text inside the second column (applicable for two columns layout).
1087
1099
  *
1088
1100
  * @defaultValue 'right'
1089
1101
  */
1090
- this.secondaryTextAlignment = input('right', ...(ngDevMode ? [{ debugName: "secondaryTextAlignment" }] : []));
1102
+ this.secondaryTextAlignment = input('right', /* @ts-ignore */
1103
+ ...(ngDevMode ? [{ debugName: "secondaryTextAlignment" }] : /* istanbul ignore next */ []));
1091
1104
  /**
1092
1105
  * Enables automatic width adjustment of the dropdown.
1093
1106
  * When enabled, the dropdown width automatically adjusts based on content.
@@ -1095,57 +1108,66 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1095
1108
  *
1096
1109
  * @defaultValue true
1097
1110
  */
1098
- this.autoResize = input(true, { ...(ngDevMode ? { debugName: "autoResize" } : {}), transform: booleanAttribute });
1111
+ this.autoResize = input(true, { ...(ngDevMode ? { debugName: "autoResize" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1099
1112
  /**
1100
1113
  * Controls whether clicking the addon button opens the dropdown.
1101
1114
  * @defaultValue true
1102
1115
  */
1103
- this.openDropdownOnAddOnClicked = input(true, { ...(ngDevMode ? { debugName: "openDropdownOnAddOnClicked" } : {}), transform: booleanAttribute });
1116
+ this.openDropdownOnAddOnClicked = input(true, { ...(ngDevMode ? { debugName: "openDropdownOnAddOnClicked" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
1104
1117
  /**
1105
1118
  * Preset options for the Select body width, whatever is chosen, the body has a 600px limit.
1106
1119
  * * `at-least` will apply a minimum width to the body equivalent to the width of the control. - Default
1107
1120
  * * `equal` will apply a width to the body equivalent to the width of the control.
1108
1121
  * * 'fit-content' will apply width needed to properly display items inside, independent of control.
1109
1122
  */
1110
- this.fillControlMode = input('at-least', ...(ngDevMode ? [{ debugName: "fillControlMode" }] : []));
1123
+ this.fillControlMode = input('at-least', /* @ts-ignore */
1124
+ ...(ngDevMode ? [{ debugName: "fillControlMode" }] : /* istanbul ignore next */ []));
1111
1125
  /** Sets title attribute to addon button. */
1112
- this.addonIconTitle = input(...(ngDevMode ? [undefined, { debugName: "addonIconTitle" }] : []));
1126
+ this.addonIconTitle = input(/* @ts-ignore */
1127
+ ...(ngDevMode ? [undefined, { debugName: "addonIconTitle" }] : /* istanbul ignore next */ []));
1113
1128
  /**
1114
1129
  * @deprecated Use the i18n module to modify the translation for this string.
1115
1130
  * Sets invalid entry message.
1116
1131
  * */
1117
- this.invalidEntryMessage = input(null, ...(ngDevMode ? [{ debugName: "invalidEntryMessage" }] : []));
1132
+ this.invalidEntryMessage = input(null, /* @ts-ignore */
1133
+ ...(ngDevMode ? [{ debugName: "invalidEntryMessage" }] : /* istanbul ignore next */ []));
1118
1134
  /** Turns limitless mode, ON or OFF */
1119
- this.limitless = model(false, ...(ngDevMode ? [{ debugName: "limitless" }] : []));
1135
+ this.limitless = model(false, /* @ts-ignore */
1136
+ ...(ngDevMode ? [{ debugName: "limitless" }] : /* istanbul ignore next */ []));
1120
1137
  /**
1121
1138
  * Used in filters and any kind of comparators when we work with objects and this identify
1122
1139
  * unique field name based on which we are going to do the job
1123
1140
  */
1124
- this.lookupKey = input('', ...(ngDevMode ? [{ debugName: "lookupKey" }] : []));
1141
+ this.lookupKey = input('', /* @ts-ignore */
1142
+ ...(ngDevMode ? [{ debugName: "lookupKey" }] : /* istanbul ignore next */ []));
1125
1143
  /**
1126
1144
  * When we deal with unknown object we can use `displayKey` to retrieve value from specific
1127
1145
  * property of the object to act as display value.
1128
1146
  *
1129
1147
  * @See ComboBox, Select, RadioGroup, CheckBox Group
1130
1148
  */
1131
- this.displayKey = input('', ...(ngDevMode ? [{ debugName: "displayKey" }] : []));
1149
+ this.displayKey = input('', /* @ts-ignore */
1150
+ ...(ngDevMode ? [{ debugName: "displayKey" }] : /* istanbul ignore next */ []));
1132
1151
  /**
1133
1152
  * List of values, it can be of type SelectItem, string or any object.
1134
1153
  * Generic object type is among the list of types,
1135
1154
  * because we allow to get labels and values using `displayKey` and `lookupKey` inputs accordingly.
1136
1155
  */
1137
- this.list = input(...(ngDevMode ? [undefined, { debugName: "list" }] : []));
1156
+ this.list = input(/* @ts-ignore */
1157
+ ...(ngDevMode ? [undefined, { debugName: "list" }] : /* istanbul ignore next */ []));
1138
1158
  /**
1139
1159
  * Time in ms for how long message of invalid entry should be displayed.
1140
1160
  * @defaultValue 3000
1141
1161
  */
1142
- this.invalidEntryDisplayTime = input(3000, ...(ngDevMode ? [{ debugName: "invalidEntryDisplayTime" }] : []));
1162
+ this.invalidEntryDisplayTime = input(3000, /* @ts-ignore */
1163
+ ...(ngDevMode ? [{ debugName: "invalidEntryDisplayTime" }] : /* istanbul ignore next */ []));
1143
1164
  /**
1144
1165
  * String matching strategy for typeahead list.
1145
1166
  * Available options: 'starts with per term', 'starts with', 'contains'
1146
1167
  * @defaultValue MatchingStrategy.STARTS_WITH_PER_TERM
1147
1168
  */
1148
- this.matchingStrategy = input(MatchingStrategy.STARTS_WITH_PER_TERM, ...(ngDevMode ? [{ debugName: "matchingStrategy" }] : []));
1169
+ this.matchingStrategy = input(MatchingStrategy.STARTS_WITH_PER_TERM, /* @ts-ignore */
1170
+ ...(ngDevMode ? [{ debugName: "matchingStrategy" }] : /* istanbul ignore next */ []));
1149
1171
  /** Event emitted when item is selected. */
1150
1172
  this.selectionChange = output();
1151
1173
  /** @hidden Emits event when the menu is opened/closed. */
@@ -1160,7 +1182,8 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1160
1182
  * References the search input element within the template.
1161
1183
  * @hidden
1162
1184
  */
1163
- this.searchInputElement = viewChild('searchInputElement', ...(ngDevMode ? [{ debugName: "searchInputElement" }] : []));
1185
+ this.searchInputElement = viewChild('searchInputElement', /* @ts-ignore */
1186
+ ...(ngDevMode ? [{ debugName: "searchInputElement" }] : /* istanbul ignore next */ []));
1164
1187
  /**
1165
1188
  * Observable version of selectionChange for template use.
1166
1189
  *
@@ -1180,12 +1203,14 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1180
1203
  * Computed signal for the current input text value.
1181
1204
  * @returns Computed signal containing the current input text
1182
1205
  */
1183
- this.inputText = computed(() => this._inputText() || '', ...(ngDevMode ? [{ debugName: "inputText" }] : []));
1206
+ this.inputText = computed(() => this._inputText() || '', /* @ts-ignore */
1207
+ ...(ngDevMode ? [{ debugName: "inputText" }] : /* istanbul ignore next */ []));
1184
1208
  /**
1185
1209
  * Computed signal indicating whether grouping is active.
1186
1210
  * @hidden
1187
1211
  */
1188
- this.isGroup = computed(() => !!(this.group() && this.groupKey()), ...(ngDevMode ? [{ debugName: "isGroup" }] : []));
1212
+ this.isGroup = computed(() => !!(this.group() && this.groupKey()), /* @ts-ignore */
1213
+ ...(ngDevMode ? [{ debugName: "isGroup" }] : /* istanbul ignore next */ []));
1189
1214
  /**
1190
1215
  * Tracks whether the dropdown is currently open.
1191
1216
  */
@@ -1204,7 +1229,8 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1204
1229
  *
1205
1230
  * @hidden Internal writable signal for selected items
1206
1231
  */
1207
- this._selectedItems = signal([], ...(ngDevMode ? [{ debugName: "_selectedItems" }] : []));
1232
+ this._selectedItems = signal([], /* @ts-ignore */
1233
+ ...(ngDevMode ? [{ debugName: "_selectedItems" }] : /* istanbul ignore next */ []));
1208
1234
  /**
1209
1235
  * Internal writable signal storing the current input text.
1210
1236
  *
@@ -1214,41 +1240,47 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1214
1240
  *
1215
1241
  * @hidden Internal writable signal for input text
1216
1242
  */
1217
- this._inputText = signal('', ...(ngDevMode ? [{ debugName: "_inputText" }] : []));
1243
+ this._inputText = signal('', /* @ts-ignore */
1244
+ ...(ngDevMode ? [{ debugName: "_inputText" }] : /* istanbul ignore next */ []));
1218
1245
  /**
1219
1246
  * Reference to the list component instance.
1220
1247
  * @hidden
1221
1248
  */
1222
- this.listComponent = viewChild(FD_LIST_COMPONENT, ...(ngDevMode ? [{ debugName: "listComponent" }] : []));
1249
+ this.listComponent = viewChild(FD_LIST_COMPONENT, /* @ts-ignore */
1250
+ ...(ngDevMode ? [{ debugName: "listComponent" }] : /* istanbul ignore next */ []));
1223
1251
  /**
1224
1252
  * Collection of custom templates provided by content projection.
1225
1253
  * @hidden
1226
1254
  */
1227
- this.customTemplates = contentChildren(TemplateDirective, ...(ngDevMode ? [{ debugName: "customTemplates" }] : []));
1255
+ this.customTemplates = contentChildren(TemplateDirective, /* @ts-ignore */
1256
+ ...(ngDevMode ? [{ debugName: "customTemplates" }] : /* istanbul ignore next */ []));
1228
1257
  /**
1229
1258
  * Template reference for the mobile mode control.
1230
1259
  * @hidden
1231
1260
  */
1232
- this.mobileControlTemplate = viewChild('mobileControlTemplate', ...(ngDevMode ? [{ debugName: "mobileControlTemplate" }] : []));
1261
+ this.mobileControlTemplate = viewChild('mobileControlTemplate', /* @ts-ignore */
1262
+ ...(ngDevMode ? [{ debugName: "mobileControlTemplate" }] : /* istanbul ignore next */ []));
1233
1263
  /**
1234
1264
  * Template reference for the dropdown list.
1235
1265
  * @hidden
1236
1266
  */
1237
- this.listTemplate = viewChild('listTemplate', ...(ngDevMode ? [{ debugName: "listTemplate" }] : []));
1267
+ this.listTemplate = viewChild('listTemplate', /* @ts-ignore */
1268
+ ...(ngDevMode ? [{ debugName: "listTemplate" }] : /* istanbul ignore next */ []));
1238
1269
  /**
1239
1270
  * Reference to the tokenizer component instance.
1240
1271
  * @hidden
1241
1272
  */
1242
- this._tokenizer = viewChild(TokenizerComponent, ...(ngDevMode ? [{ debugName: "_tokenizer" }] : []));
1273
+ this._tokenizer = viewChild(TokenizerComponent, /* @ts-ignore */
1274
+ ...(ngDevMode ? [{ debugName: "_tokenizer" }] : /* istanbul ignore next */ []));
1243
1275
  /**
1244
1276
  * Reference to the input group element.
1245
1277
  * @hidden
1246
1278
  */
1247
- this._inputGroup = viewChild('inputGroup', { ...(ngDevMode ? { debugName: "_inputGroup" } : {}), read: ElementRef });
1279
+ this._inputGroup = viewChild('inputGroup', { ...(ngDevMode ? { debugName: "_inputGroup" } : /* istanbul ignore next */ {}), read: ElementRef });
1248
1280
  /**
1249
1281
  * @hidden
1250
1282
  */
1251
- this.items = viewChildren('item', { ...(ngDevMode ? { debugName: "items" } : {}), read: ElementRef });
1283
+ this.items = viewChildren('item', { ...(ngDevMode ? { debugName: "items" } : /* istanbul ignore next */ {}), read: ElementRef });
1252
1284
  /**
1253
1285
  * Observable stream of the current language configuration.
1254
1286
  * @hidden
@@ -1755,8 +1787,8 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1755
1787
  }
1756
1788
  });
1757
1789
  }
1758
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.DynamicComponentService }, { token: i1.FocusTrapService }], target: i0.ɵɵFactoryTarget.Component }); }
1759
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: MultiComboboxComponent, isStandalone: true, selector: "fd-multi-combobox", inputs: { mobileConfig: { classPropertyName: "mobileConfig", publicName: "mobileConfig", isSignal: false, isRequired: false, transformFunction: null }, selectedItems: { classPropertyName: "selectedItems", publicName: "selectedItems", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, showSelectAll: { classPropertyName: "showSelectAll", publicName: "showSelectAll", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, buttonFocusable: { classPropertyName: "buttonFocusable", publicName: "buttonFocusable", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, byline: { classPropertyName: "byline", publicName: "byline", isSignal: true, isRequired: false, transformFunction: null }, bodyMaxWidth: { classPropertyName: "bodyMaxWidth", publicName: "bodyMaxWidth", isSignal: true, isRequired: false, transformFunction: null }, entityClass: { classPropertyName: "entityClass", publicName: "entityClass", isSignal: true, isRequired: false, transformFunction: null }, mobile: { classPropertyName: "mobile", publicName: "mobile", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupKey: { classPropertyName: "groupKey", publicName: "groupKey", isSignal: true, isRequired: false, transformFunction: null }, secondaryKey: { classPropertyName: "secondaryKey", publicName: "secondaryKey", isSignal: true, isRequired: false, transformFunction: null }, showSecondaryText: { classPropertyName: "showSecondaryText", publicName: "showSecondaryText", isSignal: true, isRequired: false, transformFunction: null }, secondaryTextAlignment: { classPropertyName: "secondaryTextAlignment", publicName: "secondaryTextAlignment", isSignal: true, isRequired: false, transformFunction: null }, autoResize: { classPropertyName: "autoResize", publicName: "autoResize", isSignal: true, isRequired: false, transformFunction: null }, openDropdownOnAddOnClicked: { classPropertyName: "openDropdownOnAddOnClicked", publicName: "openDropdownOnAddOnClicked", isSignal: true, isRequired: false, transformFunction: null }, fillControlMode: { classPropertyName: "fillControlMode", publicName: "fillControlMode", isSignal: true, isRequired: false, transformFunction: null }, addonIconTitle: { classPropertyName: "addonIconTitle", publicName: "addonIconTitle", isSignal: true, isRequired: false, transformFunction: null }, invalidEntryMessage: { classPropertyName: "invalidEntryMessage", publicName: "invalidEntryMessage", isSignal: true, isRequired: false, transformFunction: null }, limitless: { classPropertyName: "limitless", publicName: "limitless", isSignal: true, isRequired: false, transformFunction: null }, lookupKey: { classPropertyName: "lookupKey", publicName: "lookupKey", isSignal: true, isRequired: false, transformFunction: null }, displayKey: { classPropertyName: "displayKey", publicName: "displayKey", isSignal: true, isRequired: false, transformFunction: null }, list: { classPropertyName: "list", publicName: "list", isSignal: true, isRequired: false, transformFunction: null }, invalidEntryDisplayTime: { classPropertyName: "invalidEntryDisplayTime", publicName: "invalidEntryDisplayTime", isSignal: true, isRequired: false, transformFunction: null }, matchingStrategy: { classPropertyName: "matchingStrategy", publicName: "matchingStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { limitless: "limitlessChange", selectionChange: "selectionChange", isOpenChange: "isOpenChange", addOnButtonClicked: "addOnButtonClicked", dataRequested: "dataRequested", dataReceived: "dataReceived" }, providers: [
1790
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.DynamicComponentService }, { token: i1.FocusTrapService }], target: i0.ɵɵFactoryTarget.Component }); }
1791
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: MultiComboboxComponent, isStandalone: true, selector: "fd-multi-combobox", inputs: { mobileConfig: { classPropertyName: "mobileConfig", publicName: "mobileConfig", isSignal: false, isRequired: false, transformFunction: null }, selectedItems: { classPropertyName: "selectedItems", publicName: "selectedItems", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, showSelectAll: { classPropertyName: "showSelectAll", publicName: "showSelectAll", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, buttonFocusable: { classPropertyName: "buttonFocusable", publicName: "buttonFocusable", isSignal: true, isRequired: false, transformFunction: null }, autoComplete: { classPropertyName: "autoComplete", publicName: "autoComplete", isSignal: true, isRequired: false, transformFunction: null }, byline: { classPropertyName: "byline", publicName: "byline", isSignal: true, isRequired: false, transformFunction: null }, bodyMaxWidth: { classPropertyName: "bodyMaxWidth", publicName: "bodyMaxWidth", isSignal: true, isRequired: false, transformFunction: null }, entityClass: { classPropertyName: "entityClass", publicName: "entityClass", isSignal: true, isRequired: false, transformFunction: null }, mobile: { classPropertyName: "mobile", publicName: "mobile", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, groupKey: { classPropertyName: "groupKey", publicName: "groupKey", isSignal: true, isRequired: false, transformFunction: null }, secondaryKey: { classPropertyName: "secondaryKey", publicName: "secondaryKey", isSignal: true, isRequired: false, transformFunction: null }, showSecondaryText: { classPropertyName: "showSecondaryText", publicName: "showSecondaryText", isSignal: true, isRequired: false, transformFunction: null }, secondaryTextAlignment: { classPropertyName: "secondaryTextAlignment", publicName: "secondaryTextAlignment", isSignal: true, isRequired: false, transformFunction: null }, autoResize: { classPropertyName: "autoResize", publicName: "autoResize", isSignal: true, isRequired: false, transformFunction: null }, openDropdownOnAddOnClicked: { classPropertyName: "openDropdownOnAddOnClicked", publicName: "openDropdownOnAddOnClicked", isSignal: true, isRequired: false, transformFunction: null }, fillControlMode: { classPropertyName: "fillControlMode", publicName: "fillControlMode", isSignal: true, isRequired: false, transformFunction: null }, addonIconTitle: { classPropertyName: "addonIconTitle", publicName: "addonIconTitle", isSignal: true, isRequired: false, transformFunction: null }, invalidEntryMessage: { classPropertyName: "invalidEntryMessage", publicName: "invalidEntryMessage", isSignal: true, isRequired: false, transformFunction: null }, limitless: { classPropertyName: "limitless", publicName: "limitless", isSignal: true, isRequired: false, transformFunction: null }, lookupKey: { classPropertyName: "lookupKey", publicName: "lookupKey", isSignal: true, isRequired: false, transformFunction: null }, displayKey: { classPropertyName: "displayKey", publicName: "displayKey", isSignal: true, isRequired: false, transformFunction: null }, list: { classPropertyName: "list", publicName: "list", isSignal: true, isRequired: false, transformFunction: null }, invalidEntryDisplayTime: { classPropertyName: "invalidEntryDisplayTime", publicName: "invalidEntryDisplayTime", isSignal: true, isRequired: false, transformFunction: null }, matchingStrategy: { classPropertyName: "matchingStrategy", publicName: "matchingStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { limitless: "limitlessChange", selectionChange: "selectionChange", isOpenChange: "isOpenChange", addOnButtonClicked: "addOnButtonClicked", dataRequested: "dataRequested", dataReceived: "dataReceived" }, providers: [
1760
1792
  CvaControl,
1761
1793
  DynamicComponentService,
1762
1794
  contentDensityObserverProviders(),
@@ -1768,9 +1800,9 @@ class MultiComboboxComponent extends BaseMultiCombobox {
1768
1800
  provide: MULTI_COMBOBOX_COMPONENT,
1769
1801
  useExisting: MultiComboboxComponent
1770
1802
  }
1771
- ], queries: [{ propertyName: "customTemplates", predicate: TemplateDirective, isSignal: true }], viewQueries: [{ propertyName: "searchInputElement", first: true, predicate: ["searchInputElement"], descendants: true, isSignal: true }, { propertyName: "listComponent", first: true, predicate: FD_LIST_COMPONENT, descendants: true, isSignal: true }, { propertyName: "mobileControlTemplate", first: true, predicate: ["mobileControlTemplate"], descendants: true, isSignal: true }, { propertyName: "listTemplate", first: true, predicate: ["listTemplate"], descendants: true, isSignal: true }, { propertyName: "_tokenizer", first: true, predicate: TokenizerComponent, descendants: true, isSignal: true }, { propertyName: "_inputGroup", first: true, predicate: ["inputGroup"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "items", predicate: ["item"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i2.CvaDirective, inputs: ["id", "inputId", "placeholder", "placeholder", "state", "state", "stateMessage", "stateMessage", "disabled", "disabled", "readonly", "readonly", "name", "name"] }, { directive: i3.DataSourceDirective, inputs: ["dataSource", "dataSource"], outputs: ["dataChanged", "dataChanged"] }], ngImport: i0, template: "<div class=\"fd-multi-combobox\">\n @if (mobile()) {\n <ng-template [ngTemplateOutlet]=\"controlTemplate\"></ng-template>\n } @else {\n <fd-popover\n additionalBodyClass=\"fd-popover-custom-list fd-multi-combobox__list-container\"\n (isOpenChange)=\"_popoverOpenChangeHandle($event)\"\n [isOpen]=\"isOpen\"\n [triggers]=\"[]\"\n [disabled]=\"_cva.disabled\"\n [maxWidth]=\"_popoverMaxWidth\"\n [fillControlMode]=\"fillControlMode()\"\n >\n <fd-popover-control>\n <ng-template [ngTemplateOutlet]=\"controlTemplate\"></ng-template>\n </fd-popover-control>\n <fd-popover-body [style.width.%]=\"!autoResize() && 100\">\n <ng-template [ngTemplateOutlet]=\"listTemplate\"></ng-template>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n }\n</div>\n<ng-template #controlTemplate>\n <fd-form-input-message-group>\n <fd-input-group\n #inputGroup\n [id]=\"_cva.id + '-input-group-container'\"\n [state]=\"_cva.state\"\n [buttonFocusable]=\"buttonFocusable()\"\n [button]=\"!_cva.readonly\"\n [glyph]=\"!_cva.readonly ? 'navigation-down-arrow' : ' '\"\n [isControl]=\"true\"\n [disabled]=\"_cva.disabled || _cva.readonly\"\n [isExpanded]=\"!mobile() && isOpen && _suggestions().length > 0\"\n [attr.aria-disabled]=\"_cva.disabled || _cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [glyphAriaLabel]=\"_cva.ariaLabel || ('platformMultiCombobox.inputGlyphAriaLabel' | fdTranslate)()\"\n [iconTitle]=\"addonIconTitle() || ('platformMultiCombobox.inputGlyphAriaLabel' | fdTranslate)()\"\n (addOnButtonClicked)=\"_addOnClicked($event)\"\n (click)=\"mobile() && !isOpen && _onPrimaryButtonClick(false)\"\n (keydown)=\"_navigateByTokens($event)\"\n >\n <fd-tokenizer\n [tokenizerFocusable]=\"false\"\n [compactCollapse]=\"true\"\n [showOverflowPopover]=\"false\"\n #tokenizer\n class=\"fd-multi-combobox-tokenizer-custom\"\n (moreClickedEvent)=\"_moreClicked()\"\n fdMultiAnnouncer\n [multiAnnouncerOptions]=\"_suggestions()\"\n >\n @for (token of _selectedSuggestions(); track token.id) {\n <fd-token [readOnly]=\"_cva.disabled\" (onCloseClick)=\"_removeToken(token, $event)\">\n {{ token.label }}\n </fd-token>\n }\n <input\n #searchInputElement\n fdkAutoComplete\n (onComplete)=\"_onCompleteTerm($event)\"\n [options]=\"_suggestions()\"\n [inputText]=\"_inputText()\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [ariaLabel]=\"('coreMultiComboBox.multiComboBoxAriaLabel' | fdTranslate)()\"\n [attr.aria-labelledby]=\"_cva.ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete() && !mobile() ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete() && !mobile() ? _cva.id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete() && !mobile()\"\n fd-form-control\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"_cva.id\"\n [name]=\"_cva.name\"\n (keydown)=\"_onInputKeydownHandler($event)\"\n [disabled]=\"_cva.disabled\"\n [ngModel]=\"_inputText()\"\n (ngModelChange)=\"_setInputText($event); _searchTermChanged()\"\n [attr.placeholder]=\"_selectedSuggestions().length ? null : _cva.placeholder\"\n (focus)=\"tokenizer._showAllTokens()\"\n (blur)=\"!mobile() && _onBlur($event); tokenizer._hideTokens()\"\n [attr.aria-expanded]=\"isOpen\"\n [readonly]=\"_cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [attr.aria-required]=\"_cva.required\"\n [displayFn]=\"_displayFn\"\n class=\"fd-tokenizer__input fd-input-group__input\"\n />\n </fd-tokenizer>\n </fd-input-group>\n @if (mobile() && isOpen ? false : !!_cva.stateMessage) {\n <fd-form-message [type]=\"_cva.state\" [innerHtml]=\"_cva.stateMessage\"></fd-form-message>\n }\n </fd-form-input-message-group>\n</ng-template>\n<ng-template #mobileControlTemplate>\n <fd-input-group\n [id]=\"_cva.id + '-input-group-container'\"\n class=\"fd-multi-combobox-input-group-custom\"\n [state]=\"_cva.state\"\n [buttonFocusable]=\"false\"\n [isControl]=\"true\"\n [disabled]=\"_cva.disabled || _cva.readonly\"\n [isExpanded]=\"!mobile() && isOpen && _suggestions().length > 0\"\n [attr.aria-disabled]=\"_cva.disabled || _cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [glyphAriaLabel]=\"_cva.ariaLabel\"\n >\n <input\n fdkAutoComplete\n (onComplete)=\"_onCompleteTerm($event)\"\n [options]=\"_suggestions()\"\n [inputText]=\"_inputText()\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [ariaLabel]=\"('coreMultiComboBox.multiComboBoxAriaLabel' | fdTranslate)()\"\n [attr.aria-labelledby]=\"_cva.ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete() && !mobile() ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete() && !mobile() ? _cva.id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete() && !mobile()\"\n fd-form-control\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"_cva.id\"\n [name]=\"_cva.name\"\n (keydown)=\"_onInputKeydownHandler($event)\"\n [disabled]=\"_cva.disabled\"\n [ngModel]=\"_inputText()\"\n (ngModelChange)=\"_setInputText($event); _searchTermChanged()\"\n [placeholder]=\"_cva.placeholder\"\n (focus)=\"_cva.onTouched()\"\n (blur)=\"!mobile() && _onBlur($event)\"\n [attr.aria-expanded]=\"isOpen\"\n [readonly]=\"_cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [displayFn]=\"_displayFn\"\n />\n </fd-input-group>\n</ng-template>\n<ng-template #listTemplate>\n <ul\n fd-list\n [byline]=\"byline()\"\n [selection]=\"byline()\"\n (focusEscapeList)=\"_handleListFocusEscape($event)\"\n class=\"fd-multi-combobox__list fd-list--multi-input\"\n [id]=\"_cva.id + '-result'\"\n role=\"listbox\"\n [style.max-height]=\"!mobile() && maxHeight()\"\n [style.min-width.px]=\"!mobile() && minWidth\"\n [style.max-width.px]=\"autoResize() && maxWidth\"\n [attr.aria-labelledby]=\"_cva.id + '-search'\"\n aria-multiselectable=\"true\"\n [tabindex]=\"0\"\n (keydown.tab)=\"close()\"\n (keydown.shift.tab)=\"close()\"\n (keydown.escape)=\"close()\"\n >\n @if (!!_cva.stateMessage) {\n <fd-form-message [type]=\"_cva.state\" [innerHtml]=\"_cva.stateMessage\"></fd-form-message>\n }\n @if (showSelectAll()) {\n <fd-multi-combobox-select-all-toggler\n [selectAllHandler]=\"_handleSelectAllItems\"\n [valueChanges]=\"selectionChange$\"\n [selectedItems]=\"_selectedSuggestions()\"\n [flatItems]=\"_flatSuggestions()\"\n ></fd-multi-combobox-select-all-toggler>\n }\n <ng-content></ng-content>\n @if (isGroup()) {\n @for (group of _suggestions(); track group.label; let groupIndex = $index) {\n @if (!groupItemTemplate) {\n <li\n fd-list-item\n fd-list-group-header\n ariaRole=\"group\"\n [attr.aria-roledescription]=\"('coreMultiComboBox.listGroupHeader' | fdTranslate)()\"\n [attr.aria-owns]=\"_getGroupItemIds(groupIndex)\"\n [attr.aria-label]=\"group.label\"\n >\n <span fd-list-title>{{ group.label }}</span>\n </li>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"groupItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: group.label } }\"\n ></ng-template>\n }\n @for (optionItem of group.children; track optionItem.id; let i = $index) {\n <li\n fd-list-item\n #item=\"fdListItem\"\n role=\"option\"\n (click)=\"!mobile() && _onOptionClicked($event, i)\"\n (keydown)=\"_onItemKeyDownHandler($event)\"\n [selected]=\"!!optionItem.selected\"\n [attr.id-with-group-index]=\"item.id + '-group-' + groupIndex\"\n [attr.aria-setsize]=\"group.children?.length\"\n [attr.aria-posinset]=\"i + 1\"\n >\n <fd-checkbox\n role=\"presentation\"\n (click)=\"_onOptionCheckboxClicked($event, i)\"\n (ngModelChange)=\"_toggleSelection(optionItem)\"\n [ngModel]=\"optionItem.selected\"\n >\n </fd-checkbox>\n <ng-template\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-template>\n </li>\n }\n }\n } @else {\n @for (optionItem of _suggestions(); track optionItem.id; let i = $index) {\n <li\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (click)=\"!mobile() && _onOptionClicked($event, i)\"\n (keydown)=\"_onItemKeyDownHandler($event)\"\n [selected]=\"!!optionItem.selected\"\n >\n <fd-checkbox\n role=\"presentation\"\n (click)=\"_onOptionCheckboxClicked($event, i)\"\n (ngModelChange)=\"_toggleSelection(optionItem)\"\n [ngModel]=\"optionItem.selected\"\n >\n </fd-checkbox>\n <ng-template\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-template>\n </li>\n }\n }\n </ul>\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #listItem>\n @if (optionItem.selected && !!selectedItemTemplate) {\n <ng-template\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-template>\n }\n @if (!(optionItem.selected && selectedItemTemplate)) {\n <ng-template\n [ngTemplateOutlet]=\"optionItemSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: index }\"\n ></ng-template>\n <ng-template\n [ngTemplateOutlet]=\"secondaryTextSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem }\"\n ></ng-template>\n }\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #optionItemSource>\n @if (!optionItemTemplate) {\n <span\n fd-list-title\n [attr.title]=\"optionItem.label\"\n [innerHTML]=\"optionItem.label | highlight: _inputText()\"\n fdTruncatedTitle\n ></span>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"optionItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-template>\n }\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" #secondaryTextSource>\n @if (showSecondaryText()) {\n @if (!secondaryItemTemplate) {\n <span\n [style.text-align]=\"secondaryTextAlignment()\"\n fd-list-secondary\n [attr.title]=\"optionItem.secondaryText\"\n [innerHTML]=\"optionItem.secondaryText | highlight: _inputText()\"\n ></span>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"secondaryItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value }\"\n ></ng-template>\n }\n }\n</ng-template>\n", styles: [".fd-margin--tiny{margin-block:.5rem;margin-inline:.5rem}.fd-margin--sm{margin-block:1rem;margin-inline:1rem}.fd-margin--md{margin-block:2rem;margin-inline:2rem}.fd-margin--lg{margin-block:3rem;margin-inline:3rem}.fd-margin--none{margin-block:0;margin-inline:0}.fd-margin-top--tiny{-webkit-margin-before:.5rem;margin-block-start:.5rem}.fd-margin-top--sm{-webkit-margin-before:1rem;margin-block-start:1rem}.fd-margin-top--md{-webkit-margin-before:2rem;margin-block-start:2rem}.fd-margin-top--lg{-webkit-margin-before:3rem;margin-block-start:3rem}.fd-margin-top--none{-webkit-margin-before:0;margin-block-start:0}.fd-margin-end--tiny{-webkit-margin-end:.5rem;margin-inline-end:.5rem}.fd-margin-end--sm{-webkit-margin-end:1rem;margin-inline-end:1rem}.fd-margin-end--md{-webkit-margin-end:2rem;margin-inline-end:2rem}.fd-margin-end--lg{-webkit-margin-end:3rem;margin-inline-end:3rem}.fd-margin-end--none{-webkit-margin-end:0;margin-inline-end:0}.fd-margin-bottom--tiny{-webkit-margin-after:.5rem;margin-block-end:.5rem}.fd-margin-bottom--sm{-webkit-margin-after:1rem;margin-block-end:1rem}.fd-margin-bottom--md{-webkit-margin-after:2rem;margin-block-end:2rem}.fd-margin-bottom--lg{-webkit-margin-after:3rem;margin-block-end:3rem}.fd-margin-bottom--none{-webkit-margin-after:0;margin-block-end:0}.fd-margin-begin--tiny{-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-margin-begin--sm{-webkit-margin-start:1rem;margin-inline-start:1rem}.fd-margin-begin--md{-webkit-margin-start:2rem;margin-inline-start:2rem}.fd-margin-begin--lg{-webkit-margin-start:3rem;margin-inline-start:3rem}.fd-margin-begin--none{-webkit-margin-start:0;margin-inline-start:0}.fd-margin-top-bottom--tiny{margin-block:.5rem}.fd-margin-top-bottom--sm{margin-block:1rem}.fd-margin-top-bottom--md{margin-block:2rem}.fd-margin-top-bottom--lg{margin-block:3rem}.fd-margin-begin-end--tiny{margin-inline:.5rem}.fd-margin-begin-end--sm{margin-inline:1rem}.fd-margin-begin-end--md{margin-inline:2rem}.fd-margin-begin-end--lg{margin-inline:3rem}.fd-margin-responsive--sm{margin-block:0 1rem;margin-inline:0}.fd-margin-responsive--md{margin-block:1rem;margin-inline:1rem}.fd-margin-responsive--lg{margin-block:1rem;margin-inline:2rem}.fd-margin-responsive--xl{margin-block:1rem;margin-inline:3rem}.fd-margin-negative-begin-end--tiny{margin-block:0;margin-inline:-.5rem}.fd-margin-negative-begin-end--sm{margin-block:0;margin-inline:-1rem}.fd-margin-negative-begin-end--md{margin-block:0;margin-inline:-2rem}.fd-margin-negative-begin-end--lg{margin-block:0;margin-inline:-3rem}.fd-multi-combobox-tokenizer-custom{width:calc(100% - 2.25rem)}[class*=--compact] .fd-multi-combobox-tokenizer-custom:not([class*=--cozy]):not([class*=--condensed]),.is-compact .fd-multi-combobox-tokenizer-custom:not(.is-cozy):not(.is-condensed),.fd-multi-combobox-tokenizer-custom[class*=--compact],.fd-multi-combobox-tokenizer-custom.is-compact{width:calc(100% - 2rem)}.fd-multi-combobox-input-group-custom{display:inline-block}.fd-multi-combobox .fd-popover-custom{display:block}.fd-multi-combobox__list-container .fd-list .fd-list__item.fd-list__group-header{padding:0 1rem}.fd-multi-combobox__list-container .fd-list .fd-list__item .fd-list__title{max-width:inherit}.fd-multi-combobox__list-container .fd-list.fd-list--compact .fd-list__item.fd-list__group-header{padding:0 .5rem}.fd-multi-combobox__list-container fd-form-message{max-width:100%;border-radius:0!important}.fd-dialog__body fd-form-message{max-width:100%;border-radius:0!important}.fd-multi-combobox__list fd-form-message{position:relative;z-index:10}\n/*! Bundled license information:\n\nfundamental-styles/dist/margins.css:\n (*!\n * Fundamental Library Styles v0.41.8\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PopoverComponent, selector: "fd-popover", inputs: ["config", "title", "trigger", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll", "placement", "maxWidth", "fillControlMode", "closeOnOutsideClick", "closeOnEscapeKey", "disabled", "triggers", "focusTrapped", "focusAutoCapture", "restoreFocusOnClose", "noArrow", "disableScrollbar", "appendTo", "placementContainer", "scrollStrategy", "cdkPositions", "applyOverlay", "additionalBodyClass", "additionalTriggerClass", "closeOnNavigation", "fixedPosition", "resizable", "bodyAriaLabel", "bodyRole", "bodyAriaLabelledBy", "isOpen"], outputs: ["triggerChange", "isOpenChange", "beforeOpen"] }, { kind: "component", type: PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"], outputs: ["onClose"] }, { kind: "component", type: FormInputMessageGroupComponent, selector: "fd-form-input-message-group", inputs: ["triggers", "closeOnOutsideClick", "fillControlMode", "noArrow", "closeOnEscapeKey", "placement", "placementContainer", "isOpen", "preventSpaceKeyScroll"], outputs: ["isOpenChange"] }, { kind: "component", type: InputGroupComponent, selector: "fd-input-group", inputs: ["placement", "required", "inline", "addOnText", "buttonFocusable", "type", "glyph", "glyphFont", "button", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "addonButtonAriaHidden", "iconTitle", "ariaLabelledBy", "ariaLabel"], outputs: ["addOnButtonClicked", "search"] }, { kind: "component", type: TokenizerComponent, selector: "fd-tokenizer", inputs: ["class", "disableKeyboardDeletion", "compactCollapse", "tokenizerFocusable", "inputValue", "glyph", "glyphFont", "moreTerm", "open", "showOverflowPopover", "externalHiddenCount"], outputs: ["moreClickedEvent"] }, { kind: "component", type: TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused", "selectedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: AutoCompleteDirective, selector: "[fdkAutoComplete]", inputs: ["options", "inputText", "enable", "displayFn", "matcher"], outputs: ["onComplete"] }, { kind: "component", type: FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: InputGroupInputDirective, selector: "[fdInputGroupInput], [fd-input-group-input]", inputs: ["class"] }, { kind: "component", type: FormMessageComponent, selector: "fd-form-message", inputs: ["type", "static", "embedded", "class"] }, { kind: "component", type: ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter", "searchResultsList"], outputs: ["focusEscapeList"] }, { kind: "component", type: SelectAllTogglerComponent, selector: "fd-multi-combobox-select-all-toggler", inputs: ["selectAllHandler", "valueChanges", "selectedItems", "flatItems"] }, { kind: "directive", type: ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate", "scope"] }, { kind: "component", type: ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "counterRole", "counterAriaLabel", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl", "suggestion"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "directive", type: ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: MultiAnnouncerDirective, selector: "[fdMultiAnnouncer]", inputs: ["multiAnnouncerOptions"], exportAs: ["fdMultiAnnouncer"] }, { kind: "directive", type: TruncatedTitleDirective, selector: "[fdkTruncatedTitle], [fdTruncatedTitle], [fd-truncate-title]" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }, { kind: "pipe", type: SearchHighlightPipe, name: "highlight" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1803
+ ], queries: [{ propertyName: "customTemplates", predicate: TemplateDirective, isSignal: true }], viewQueries: [{ propertyName: "searchInputElement", first: true, predicate: ["searchInputElement"], descendants: true, isSignal: true }, { propertyName: "listComponent", first: true, predicate: FD_LIST_COMPONENT, descendants: true, isSignal: true }, { propertyName: "mobileControlTemplate", first: true, predicate: ["mobileControlTemplate"], descendants: true, isSignal: true }, { propertyName: "listTemplate", first: true, predicate: ["listTemplate"], descendants: true, isSignal: true }, { propertyName: "_tokenizer", first: true, predicate: TokenizerComponent, descendants: true, isSignal: true }, { propertyName: "_inputGroup", first: true, predicate: ["inputGroup"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "items", predicate: ["item"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i2.CvaDirective, inputs: ["id", "inputId", "placeholder", "placeholder", "state", "state", "stateMessage", "stateMessage", "disabled", "disabled", "readonly", "readonly", "name", "name"] }, { directive: i3.DataSourceDirective, inputs: ["dataSource", "dataSource"], outputs: ["dataChanged", "dataChanged"] }], ngImport: i0, template: "<div class=\"fd-multi-combobox\">\n @if (mobile()) {\n <ng-template [ngTemplateOutlet]=\"controlTemplate\"></ng-template>\n } @else {\n <fd-popover\n additionalBodyClass=\"fd-popover-custom-list fd-multi-combobox__list-container\"\n (isOpenChange)=\"_popoverOpenChangeHandle($event)\"\n [isOpen]=\"isOpen\"\n [triggers]=\"[]\"\n [disabled]=\"_cva.disabled\"\n [maxWidth]=\"_popoverMaxWidth\"\n [fillControlMode]=\"fillControlMode()\"\n >\n <fd-popover-control>\n <ng-template [ngTemplateOutlet]=\"controlTemplate\"></ng-template>\n </fd-popover-control>\n <fd-popover-body [style.width.%]=\"!autoResize() && 100\">\n <ng-template [ngTemplateOutlet]=\"listTemplate\"></ng-template>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n }\n</div>\n<ng-template #controlTemplate>\n <fd-form-input-message-group>\n <fd-input-group\n #inputGroup\n [id]=\"_cva.id + '-input-group-container'\"\n [state]=\"_cva.state\"\n [buttonFocusable]=\"buttonFocusable()\"\n [button]=\"!_cva.readonly\"\n [glyph]=\"!_cva.readonly ? 'navigation-down-arrow' : ' '\"\n [isControl]=\"true\"\n [disabled]=\"_cva.disabled || _cva.readonly\"\n [isExpanded]=\"!mobile() && isOpen && _suggestions().length > 0\"\n [attr.aria-disabled]=\"_cva.disabled || _cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [glyphAriaLabel]=\"_cva.ariaLabel || ('platformMultiCombobox.inputGlyphAriaLabel' | fdTranslate)()\"\n [iconTitle]=\"addonIconTitle() || ('platformMultiCombobox.inputGlyphAriaLabel' | fdTranslate)()\"\n (addOnButtonClicked)=\"_addOnClicked($event)\"\n (click)=\"mobile() && !isOpen && _onPrimaryButtonClick(false)\"\n (keydown)=\"_navigateByTokens($event)\"\n >\n <fd-tokenizer\n [tokenizerFocusable]=\"false\"\n [compactCollapse]=\"true\"\n [showOverflowPopover]=\"false\"\n #tokenizer\n class=\"fd-multi-combobox-tokenizer-custom\"\n (moreClickedEvent)=\"_moreClicked()\"\n fdMultiAnnouncer\n [multiAnnouncerOptions]=\"_suggestions()\"\n >\n @for (token of _selectedSuggestions(); track token.id) {\n <fd-token [readOnly]=\"_cva.disabled\" (onCloseClick)=\"_removeToken(token, $event)\">\n {{ token.label }}\n </fd-token>\n }\n <input\n #searchInputElement\n fdkAutoComplete\n (onComplete)=\"_onCompleteTerm($event)\"\n [options]=\"_suggestions()\"\n [inputText]=\"_inputText()\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [ariaLabel]=\"('coreMultiComboBox.multiComboBoxAriaLabel' | fdTranslate)()\"\n [attr.aria-labelledby]=\"_cva.ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete() && !mobile() ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete() && !mobile() ? _cva.id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete() && !mobile()\"\n fd-form-control\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"_cva.id\"\n [name]=\"_cva.name\"\n (keydown)=\"_onInputKeydownHandler($event)\"\n [disabled]=\"_cva.disabled\"\n [ngModel]=\"_inputText()\"\n (ngModelChange)=\"_setInputText($event); _searchTermChanged()\"\n [attr.placeholder]=\"_selectedSuggestions().length ? null : _cva.placeholder\"\n (focus)=\"tokenizer._showAllTokens()\"\n (blur)=\"!mobile() && _onBlur($event); tokenizer._hideTokens()\"\n [attr.aria-expanded]=\"isOpen\"\n [readonly]=\"_cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [attr.aria-required]=\"_cva.required\"\n [displayFn]=\"_displayFn\"\n class=\"fd-tokenizer__input fd-input-group__input\"\n />\n </fd-tokenizer>\n </fd-input-group>\n @if (mobile() && isOpen ? false : !!_cva.stateMessage) {\n <fd-form-message [type]=\"_cva.state\" [innerHtml]=\"_cva.stateMessage\"></fd-form-message>\n }\n </fd-form-input-message-group>\n</ng-template>\n<ng-template #mobileControlTemplate>\n <fd-input-group\n [id]=\"_cva.id + '-input-group-container'\"\n class=\"fd-multi-combobox-input-group-custom\"\n [state]=\"_cva.state\"\n [buttonFocusable]=\"false\"\n [isControl]=\"true\"\n [disabled]=\"_cva.disabled || _cva.readonly\"\n [isExpanded]=\"!mobile() && isOpen && _suggestions().length > 0\"\n [attr.aria-disabled]=\"_cva.disabled || _cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [glyphAriaLabel]=\"_cva.ariaLabel\"\n >\n <input\n fdkAutoComplete\n (onComplete)=\"_onCompleteTerm($event)\"\n [options]=\"_suggestions()\"\n [inputText]=\"_inputText()\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [ariaLabel]=\"('coreMultiComboBox.multiComboBoxAriaLabel' | fdTranslate)()\"\n [attr.aria-labelledby]=\"_cva.ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete() && !mobile() ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete() && !mobile() ? _cva.id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete() && !mobile()\"\n fd-form-control\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"_cva.id\"\n [name]=\"_cva.name\"\n (keydown)=\"_onInputKeydownHandler($event)\"\n [disabled]=\"_cva.disabled\"\n [ngModel]=\"_inputText()\"\n (ngModelChange)=\"_setInputText($event); _searchTermChanged()\"\n [placeholder]=\"_cva.placeholder\"\n (focus)=\"_cva.onTouched()\"\n (blur)=\"!mobile() && _onBlur($event)\"\n [attr.aria-expanded]=\"isOpen\"\n [readonly]=\"_cva.readonly\"\n [attr.aria-readonly]=\"_cva.readonly\"\n [displayFn]=\"_displayFn\"\n />\n </fd-input-group>\n</ng-template>\n<ng-template #listTemplate>\n <ul\n fd-list\n [byline]=\"byline()\"\n [selection]=\"byline()\"\n (focusEscapeList)=\"_handleListFocusEscape($event)\"\n class=\"fd-multi-combobox__list fd-list--multi-input\"\n [id]=\"_cva.id + '-result'\"\n role=\"listbox\"\n [style.max-height]=\"!mobile() && maxHeight()\"\n [style.min-width.px]=\"!mobile() && minWidth\"\n [style.max-width.px]=\"autoResize() && maxWidth\"\n [attr.aria-labelledby]=\"_cva.id + '-search'\"\n aria-multiselectable=\"true\"\n [tabindex]=\"0\"\n (keydown.tab)=\"close()\"\n (keydown.shift.tab)=\"close()\"\n (keydown.escape)=\"close()\"\n >\n @if (!!_cva.stateMessage) {\n <fd-form-message [type]=\"_cva.state\" [innerHtml]=\"_cva.stateMessage\"></fd-form-message>\n }\n @if (showSelectAll()) {\n <fd-multi-combobox-select-all-toggler\n [selectAllHandler]=\"_handleSelectAllItems\"\n [valueChanges]=\"selectionChange$\"\n [selectedItems]=\"_selectedSuggestions()\"\n [flatItems]=\"_flatSuggestions()\"\n ></fd-multi-combobox-select-all-toggler>\n }\n <ng-content></ng-content>\n @if (isGroup()) {\n @for (group of _suggestions(); track group.label; let groupIndex = $index) {\n @if (!groupItemTemplate) {\n <li\n fd-list-item\n fd-list-group-header\n ariaRole=\"group\"\n [attr.aria-roledescription]=\"('coreMultiComboBox.listGroupHeader' | fdTranslate)()\"\n [attr.aria-owns]=\"_getGroupItemIds(groupIndex)\"\n [attr.aria-label]=\"group.label\"\n >\n <span fd-list-title>{{ group.label }}</span>\n </li>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"groupItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: group.label } }\"\n ></ng-template>\n }\n @for (optionItem of group.children; track optionItem.id; let i = $index) {\n <li\n fd-list-item\n #item=\"fdListItem\"\n role=\"option\"\n (click)=\"!mobile() && _onOptionClicked($event, i)\"\n (keydown)=\"_onItemKeyDownHandler($event)\"\n [selected]=\"!!optionItem.selected\"\n [attr.id-with-group-index]=\"item.id + '-group-' + groupIndex\"\n [attr.aria-setsize]=\"group.children?.length\"\n [attr.aria-posinset]=\"i + 1\"\n >\n <fd-checkbox\n role=\"presentation\"\n (click)=\"_onOptionCheckboxClicked($event, i)\"\n (ngModelChange)=\"_toggleSelection(optionItem)\"\n [ngModel]=\"optionItem.selected\"\n >\n </fd-checkbox>\n <ng-template\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-template>\n </li>\n }\n }\n } @else {\n @for (optionItem of _suggestions(); track optionItem.id; let i = $index) {\n <li\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (click)=\"!mobile() && _onOptionClicked($event, i)\"\n (keydown)=\"_onItemKeyDownHandler($event)\"\n [selected]=\"!!optionItem.selected\"\n >\n <fd-checkbox\n role=\"presentation\"\n (click)=\"_onOptionCheckboxClicked($event, i)\"\n (ngModelChange)=\"_toggleSelection(optionItem)\"\n [ngModel]=\"optionItem.selected\"\n >\n </fd-checkbox>\n <ng-template\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-template>\n </li>\n }\n }\n </ul>\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #listItem>\n @if (optionItem.selected && !!selectedItemTemplate) {\n <ng-template\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-template>\n }\n @if (!(optionItem.selected && selectedItemTemplate)) {\n <ng-template\n [ngTemplateOutlet]=\"optionItemSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: index }\"\n ></ng-template>\n <ng-template\n [ngTemplateOutlet]=\"secondaryTextSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem }\"\n ></ng-template>\n }\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #optionItemSource>\n @if (!optionItemTemplate) {\n <span\n fd-list-title\n [attr.title]=\"optionItem.label\"\n [innerHTML]=\"optionItem.label | highlight: _inputText()\"\n fdTruncatedTitle\n ></span>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"optionItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-template>\n }\n</ng-template>\n<ng-template let-optionItem=\"optionItem\" #secondaryTextSource>\n @if (showSecondaryText()) {\n @if (!secondaryItemTemplate) {\n <span\n [style.text-align]=\"secondaryTextAlignment()\"\n fd-list-secondary\n [attr.title]=\"optionItem.secondaryText\"\n [innerHTML]=\"optionItem.secondaryText | highlight: _inputText()\"\n ></span>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"secondaryItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value }\"\n ></ng-template>\n }\n }\n</ng-template>\n", styles: [".fd-margin--tiny{margin-block:.5rem;margin-inline:.5rem}.fd-margin--sm{margin-block:1rem;margin-inline:1rem}.fd-margin--md{margin-block:2rem;margin-inline:2rem}.fd-margin--lg{margin-block:3rem;margin-inline:3rem}.fd-margin--none{margin-block:0;margin-inline:0}.fd-margin-top--tiny{-webkit-margin-before:.5rem;margin-block-start:.5rem}.fd-margin-top--sm{-webkit-margin-before:1rem;margin-block-start:1rem}.fd-margin-top--md{-webkit-margin-before:2rem;margin-block-start:2rem}.fd-margin-top--lg{-webkit-margin-before:3rem;margin-block-start:3rem}.fd-margin-top--none{-webkit-margin-before:0;margin-block-start:0}.fd-margin-end--tiny{-webkit-margin-end:.5rem;margin-inline-end:.5rem}.fd-margin-end--sm{-webkit-margin-end:1rem;margin-inline-end:1rem}.fd-margin-end--md{-webkit-margin-end:2rem;margin-inline-end:2rem}.fd-margin-end--lg{-webkit-margin-end:3rem;margin-inline-end:3rem}.fd-margin-end--none{-webkit-margin-end:0;margin-inline-end:0}.fd-margin-bottom--tiny{-webkit-margin-after:.5rem;margin-block-end:.5rem}.fd-margin-bottom--sm{-webkit-margin-after:1rem;margin-block-end:1rem}.fd-margin-bottom--md{-webkit-margin-after:2rem;margin-block-end:2rem}.fd-margin-bottom--lg{-webkit-margin-after:3rem;margin-block-end:3rem}.fd-margin-bottom--none{-webkit-margin-after:0;margin-block-end:0}.fd-margin-begin--tiny{-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-margin-begin--sm{-webkit-margin-start:1rem;margin-inline-start:1rem}.fd-margin-begin--md{-webkit-margin-start:2rem;margin-inline-start:2rem}.fd-margin-begin--lg{-webkit-margin-start:3rem;margin-inline-start:3rem}.fd-margin-begin--none{-webkit-margin-start:0;margin-inline-start:0}.fd-margin-top-bottom--tiny{margin-block:.5rem}.fd-margin-top-bottom--sm{margin-block:1rem}.fd-margin-top-bottom--md{margin-block:2rem}.fd-margin-top-bottom--lg{margin-block:3rem}.fd-margin-begin-end--tiny{margin-inline:.5rem}.fd-margin-begin-end--sm{margin-inline:1rem}.fd-margin-begin-end--md{margin-inline:2rem}.fd-margin-begin-end--lg{margin-inline:3rem}.fd-margin-responsive--sm{margin-block:0 1rem;margin-inline:0}.fd-margin-responsive--md{margin-block:1rem;margin-inline:1rem}.fd-margin-responsive--lg{margin-block:1rem;margin-inline:2rem}.fd-margin-responsive--xl{margin-block:1rem;margin-inline:3rem}.fd-margin-negative-begin-end--tiny{margin-block:0;margin-inline:-.5rem}.fd-margin-negative-begin-end--sm{margin-block:0;margin-inline:-1rem}.fd-margin-negative-begin-end--md{margin-block:0;margin-inline:-2rem}.fd-margin-negative-begin-end--lg{margin-block:0;margin-inline:-3rem}.fd-multi-combobox-tokenizer-custom{width:calc(100% - 2.25rem)}[class*=--compact] .fd-multi-combobox-tokenizer-custom:not([class*=--cozy]):not([class*=--condensed]),.is-compact .fd-multi-combobox-tokenizer-custom:not(.is-cozy):not(.is-condensed),.fd-multi-combobox-tokenizer-custom[class*=--compact],.fd-multi-combobox-tokenizer-custom.is-compact{width:calc(100% - 2rem)}.fd-multi-combobox-input-group-custom{display:inline-block}.fd-multi-combobox .fd-popover-custom{display:block}.fd-multi-combobox__list-container .fd-list .fd-list__item.fd-list__group-header{padding:0 1rem}.fd-multi-combobox__list-container .fd-list .fd-list__item .fd-list__title{max-width:inherit}.fd-multi-combobox__list-container .fd-list.fd-list--compact .fd-list__item.fd-list__group-header{padding:0 .5rem}.fd-multi-combobox__list-container fd-form-message{max-width:100%;border-radius:0!important}.fd-dialog__body fd-form-message{max-width:100%;border-radius:0!important}.fd-multi-combobox__list fd-form-message{position:relative;z-index:10}\n/*! Bundled license information:\n\nfundamental-styles/dist/margins.css:\n (*!\n * Fundamental Library Styles v0.41.8\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PopoverComponent, selector: "fd-popover", inputs: ["config", "title", "trigger", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll", "placement", "maxWidth", "fillControlMode", "closeOnOutsideClick", "closeOnEscapeKey", "disabled", "triggers", "focusTrapped", "focusAutoCapture", "restoreFocusOnClose", "noArrow", "disableScrollbar", "appendTo", "placementContainer", "scrollStrategy", "cdkPositions", "applyOverlay", "additionalBodyClass", "additionalTriggerClass", "closeOnNavigation", "fixedPosition", "resizable", "bodyAriaLabel", "bodyRole", "bodyAriaLabelledBy", "isOpen"], outputs: ["triggerChange", "isOpenChange", "beforeOpen"] }, { kind: "component", type: PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"], outputs: ["onClose"] }, { kind: "component", type: FormInputMessageGroupComponent, selector: "fd-form-input-message-group", inputs: ["triggers", "closeOnOutsideClick", "fillControlMode", "noArrow", "closeOnEscapeKey", "placement", "placementContainer", "isOpen", "preventSpaceKeyScroll"], outputs: ["isOpenChange"] }, { kind: "component", type: InputGroupComponent, selector: "fd-input-group", inputs: ["placement", "required", "inline", "addOnText", "buttonFocusable", "type", "glyph", "glyphFont", "button", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "addonButtonAriaHidden", "iconTitle", "ariaLabelledBy", "ariaLabel"], outputs: ["addOnButtonClicked", "search"] }, { kind: "component", type: TokenizerComponent, selector: "fd-tokenizer", inputs: ["class", "disableKeyboardDeletion", "compactCollapse", "tokenizerFocusable", "inputValue", "glyph", "glyphFont", "moreTerm", "open", "showOverflowPopover", "externalHiddenCount"], outputs: ["moreClickedEvent"] }, { kind: "component", type: TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused", "selectedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: AutoCompleteDirective, selector: "[fdkAutoComplete]", inputs: ["options", "inputText", "enable", "displayFn", "matcher"], outputs: ["onComplete"] }, { kind: "component", type: FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: InputGroupInputDirective, selector: "[fdInputGroupInput], [fd-input-group-input]", inputs: ["class"] }, { kind: "component", type: FormMessageComponent, selector: "fd-form-message", inputs: ["type", "static", "embedded", "class"] }, { kind: "component", type: ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter", "searchResultsList"], outputs: ["focusEscapeList"] }, { kind: "component", type: SelectAllTogglerComponent, selector: "fd-multi-combobox-select-all-toggler", inputs: ["selectAllHandler", "valueChanges", "selectedItems", "flatItems"] }, { kind: "directive", type: ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate", "scope"] }, { kind: "component", type: ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "counterRole", "counterAriaLabel", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl", "suggestion"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "directive", type: ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: MultiAnnouncerDirective, selector: "[fdMultiAnnouncer]", inputs: ["multiAnnouncerOptions"], exportAs: ["fdMultiAnnouncer"] }, { kind: "directive", type: TruncatedTitleDirective, selector: "[fdkTruncatedTitle], [fdTruncatedTitle], [fd-truncate-title]" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }, { kind: "pipe", type: SearchHighlightPipe, name: "highlight" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1772
1804
  }
1773
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxComponent, decorators: [{
1805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxComponent, decorators: [{
1774
1806
  type: Component,
1775
1807
  args: [{ selector: 'fd-multi-combobox', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
1776
1808
  {
@@ -1834,11 +1866,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
1834
1866
  * Use direct imports of components and directives.
1835
1867
  */
1836
1868
  class MultiComboboxModule {
1837
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1838
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxModule, imports: [MultiComboboxComponent, SelectAllTogglerComponent, MultiAnnouncerDirective], exports: [MultiComboboxComponent, SelectAllTogglerComponent, MultiAnnouncerDirective] }); }
1839
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxModule, imports: [MultiComboboxComponent, SelectAllTogglerComponent] }); }
1869
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1870
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxModule, imports: [MultiComboboxComponent, SelectAllTogglerComponent, MultiAnnouncerDirective], exports: [MultiComboboxComponent, SelectAllTogglerComponent, MultiAnnouncerDirective] }); }
1871
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxModule, imports: [MultiComboboxComponent, SelectAllTogglerComponent] }); }
1840
1872
  }
1841
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: MultiComboboxModule, decorators: [{
1873
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: MultiComboboxModule, decorators: [{
1842
1874
  type: NgModule,
1843
1875
  args: [{
1844
1876
  imports: [MultiComboboxComponent, SelectAllTogglerComponent, MultiAnnouncerDirective],