@fundamental-ngx/core 0.43.0-rc.2 → 0.43.0-rc.21

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 (824) hide show
  1. package/carousel/carousel.component.d.ts +4 -2
  2. package/dialog/dialog-container/dialog-container.component.d.ts +4 -2
  3. package/esm2020/action-bar/action-bar-actions/action-bar-actions.directive.mjs +3 -3
  4. package/esm2020/action-bar/action-bar-back/action-bar-back.directive.mjs +3 -3
  5. package/esm2020/action-bar/action-bar-description/action-bar-description.directive.mjs +3 -3
  6. package/esm2020/action-bar/action-bar-header/action-bar-header.directive.mjs +3 -3
  7. package/esm2020/action-bar/action-bar-mobile/action-bar-mobile.directive.mjs +3 -3
  8. package/esm2020/action-bar/action-bar-title/action-bar-title.component.mjs +3 -3
  9. package/esm2020/action-bar/action-bar.component.mjs +3 -3
  10. package/esm2020/action-bar/action-bar.module.mjs +4 -4
  11. package/esm2020/action-sheet/action-sheet-body/action-sheet-body.component.mjs +3 -3
  12. package/esm2020/action-sheet/action-sheet-control/action-sheet-control.component.mjs +3 -3
  13. package/esm2020/action-sheet/action-sheet-item/action-sheet-item.component.mjs +3 -3
  14. package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.component.mjs +3 -3
  15. package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.module.mjs +4 -4
  16. package/esm2020/action-sheet/action-sheet.component.mjs +3 -3
  17. package/esm2020/action-sheet/action-sheet.module.mjs +4 -4
  18. package/esm2020/action-sheet/deprecated-action-sheet-compact.directive.mjs +3 -3
  19. package/esm2020/alert/alert-service/alert.service.mjs +3 -3
  20. package/esm2020/alert/alert-utils/alert-container.component.mjs +3 -3
  21. package/esm2020/alert/alert.component.mjs +3 -3
  22. package/esm2020/alert/alert.module.mjs +4 -4
  23. package/esm2020/avatar/avatar.component.mjs +3 -3
  24. package/esm2020/avatar/avatar.module.mjs +4 -4
  25. package/esm2020/avatar-group/avatar-group.component.mjs +3 -3
  26. package/esm2020/avatar-group/avatar-group.module.mjs +4 -4
  27. package/esm2020/avatar-group/directives/avatar-group-focusable-avatar.directive.mjs +3 -3
  28. package/esm2020/avatar-group/directives/avatar-group-item.directive.mjs +3 -3
  29. package/esm2020/avatar-group/directives/avatar-group-overflow-body.directive.mjs +3 -3
  30. package/esm2020/avatar-group/directives/avatar-group-overflow-button-text.directive.mjs +3 -3
  31. package/esm2020/avatar-group/directives/avatar-group-overflow-button.directive.mjs +3 -3
  32. package/esm2020/avatar-group/directives/avatar-group-overflow-item.directive.mjs +3 -3
  33. package/esm2020/avatar-group/directives/avatar-group-popover-control.directive.mjs +3 -3
  34. package/esm2020/bar/bar.component.mjs +3 -3
  35. package/esm2020/bar/bar.module.mjs +4 -4
  36. package/esm2020/bar/button-bar/button-bar.component.mjs +3 -3
  37. package/esm2020/bar/deprecated-bar-button-content-density.directive.mjs +3 -3
  38. package/esm2020/bar/deprecated-bar-content-density.directive.mjs +3 -3
  39. package/esm2020/bar/directives/bar-element.directive.mjs +3 -3
  40. package/esm2020/bar/directives/bar-left.directive.mjs +3 -3
  41. package/esm2020/bar/directives/bar-middle.directive.mjs +3 -3
  42. package/esm2020/bar/directives/bar-right.directive.mjs +3 -3
  43. package/esm2020/breadcrumb/breadcrumb-item.component.mjs +3 -3
  44. package/esm2020/breadcrumb/breadcrumb.component.mjs +3 -3
  45. package/esm2020/breadcrumb/breadcrumb.module.mjs +4 -4
  46. package/esm2020/breadcrumb/deprecated-breadcrumbs-compact.directive.mjs +3 -3
  47. package/esm2020/busy-indicator/busy-indicator-extended/busy-indicator-extended.directive.mjs +3 -3
  48. package/esm2020/busy-indicator/busy-indicator.component.mjs +3 -3
  49. package/esm2020/busy-indicator/busy-indicator.module.mjs +4 -4
  50. package/esm2020/button/base-button.mjs +3 -3
  51. package/esm2020/button/button.component.mjs +3 -3
  52. package/esm2020/button/button.module.mjs +4 -4
  53. package/esm2020/button/deprecated-button-content-density.directive.mjs +3 -3
  54. package/esm2020/calendar/calendar-directives.mjs +3 -3
  55. package/esm2020/calendar/calendar-header/calendar-header.component.mjs +3 -3
  56. package/esm2020/calendar/calendar-views/calendar-aggregated-year-view/calendar-aggregated-year-view.component.mjs +3 -3
  57. package/esm2020/calendar/calendar-views/calendar-day-view/calendar-day-view.component.mjs +3 -3
  58. package/esm2020/calendar/calendar-views/calendar-month-view/calendar-month-view.component.mjs +3 -3
  59. package/esm2020/calendar/calendar-views/calendar-year-view/calendar-year-view.component.mjs +3 -3
  60. package/esm2020/calendar/calendar.component.mjs +3 -3
  61. package/esm2020/calendar/calendar.module.mjs +4 -4
  62. package/esm2020/calendar/calendar.service.mjs +3 -3
  63. package/esm2020/calendar/deprecated-calendar-content-density.directive.mjs +3 -3
  64. package/esm2020/calendar/i18n/calendar-i18n-labels.mjs +3 -3
  65. package/esm2020/card/card-content.component.mjs +3 -3
  66. package/esm2020/card/card-counter.directive.mjs +3 -3
  67. package/esm2020/card/card-footer-action-item.directive.mjs +3 -3
  68. package/esm2020/card/card-footer.component.mjs +3 -3
  69. package/esm2020/card/card-header.component.mjs +3 -3
  70. package/esm2020/card/card-loader.component.mjs +3 -3
  71. package/esm2020/card/card-second-subtitle.directive.mjs +3 -3
  72. package/esm2020/card/card-subtitle.directive.mjs +3 -3
  73. package/esm2020/card/card-title.directive.mjs +3 -3
  74. package/esm2020/card/card.component.mjs +3 -3
  75. package/esm2020/card/card.module.mjs +4 -4
  76. package/esm2020/card/deprecated-card-content-density.directive.mjs +3 -3
  77. package/esm2020/card/kpi/card-kpi-analytics-content.directive.mjs +3 -3
  78. package/esm2020/card/kpi/card-kpi-analytics-label.directive.mjs +3 -3
  79. package/esm2020/card/kpi/card-kpi-analytics.directive.mjs +3 -3
  80. package/esm2020/card/kpi/card-kpi-header.component.mjs +3 -3
  81. package/esm2020/card/kpi/card-kpi-scale-icon.directive.mjs +3 -3
  82. package/esm2020/card/kpi/card-kpi-scale-text.directive.mjs +3 -3
  83. package/esm2020/card/kpi/card-kpi-value.directive.mjs +3 -3
  84. package/esm2020/carousel/carousel-item/carousel-item.component.mjs +3 -3
  85. package/esm2020/carousel/carousel-item.directive.mjs +3 -3
  86. package/esm2020/carousel/carousel.component.mjs +10 -4
  87. package/esm2020/carousel/carousel.directive.mjs +3 -3
  88. package/esm2020/carousel/carousel.module.mjs +4 -4
  89. package/esm2020/carousel/carousel.service.mjs +3 -3
  90. package/esm2020/checkbox/checkbox/checkbox.component.mjs +3 -3
  91. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  92. package/esm2020/checkbox/deprecated-checkbox-content-density.directive.mjs +3 -3
  93. package/esm2020/combobox/combobox-mobile/combobox-mobile.component.mjs +5 -5
  94. package/esm2020/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
  95. package/esm2020/combobox/combobox.component.mjs +4 -4
  96. package/esm2020/combobox/combobox.module.mjs +4 -4
  97. package/esm2020/combobox/deprecated-combobox-content-density.directive.mjs +3 -3
  98. package/esm2020/combobox/list-group.pipe.mjs +3 -3
  99. package/esm2020/content-density/classes/deprecated-compact.directive.mjs +3 -3
  100. package/esm2020/content-density/classes/deprecated-condensed.directive.mjs +3 -3
  101. package/esm2020/content-density/classes/deprecated-content-density.directive.mjs +3 -3
  102. package/esm2020/content-density/classes/deprecated-cozy.directive.mjs +3 -3
  103. package/esm2020/content-density/content-density.module.mjs +4 -4
  104. package/esm2020/content-density/directives/content-density.directive.mjs +3 -3
  105. package/esm2020/content-density/providers/local-content-density-storage.mjs +3 -3
  106. package/esm2020/content-density/providers/memory-content-density-storage.mjs +3 -3
  107. package/esm2020/content-density/providers/url-content-density-storage.mjs +3 -3
  108. package/esm2020/content-density/services/content-density-observer.service.mjs +3 -3
  109. package/esm2020/content-density/services/deprecated-content-density.service.mjs +3 -3
  110. package/esm2020/content-density/services/global-content-density.service.mjs +3 -3
  111. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  112. package/esm2020/date-picker/date-picker.module.mjs +4 -4
  113. package/esm2020/date-picker/deprecated-date-picker-compact.directive.mjs +3 -3
  114. package/esm2020/datetime/datetime-format.pipes.mjs +9 -9
  115. package/esm2020/datetime/fd-datetime-adapter.mjs +3 -3
  116. package/esm2020/datetime/fd-datetime-pipes.module.mjs +4 -4
  117. package/esm2020/datetime/fd-datetime.module.mjs +8 -8
  118. package/esm2020/datetime-picker/datetime-picker.component.mjs +3 -3
  119. package/esm2020/datetime-picker/datetime-picker.module.mjs +4 -4
  120. package/esm2020/datetime-picker/deprecated-date-time-picker-content-density.directive.mjs +3 -3
  121. package/esm2020/dialog/base/dialog-base.class.mjs +3 -3
  122. package/esm2020/dialog/base/dialog-base.service.mjs +3 -3
  123. package/esm2020/dialog/base/dialog-footer-base.class.mjs +3 -3
  124. package/esm2020/dialog/base/dialog-header-base.class.mjs +3 -3
  125. package/esm2020/dialog/dialog-body/dialog-body.component.mjs +3 -3
  126. package/esm2020/dialog/dialog-close-button/dialog-close-button.component.mjs +3 -3
  127. package/esm2020/dialog/dialog-container/dialog-container.component.mjs +11 -5
  128. package/esm2020/dialog/dialog-default/dialog-default.component.mjs +5 -5
  129. package/esm2020/dialog/dialog-footer/dialog-footer.component.mjs +3 -3
  130. package/esm2020/dialog/dialog-footer-button/dialog-footer-button.component.mjs +3 -3
  131. package/esm2020/dialog/dialog-header/dialog-header.component.mjs +3 -3
  132. package/esm2020/dialog/dialog-service/dialog.service.mjs +3 -3
  133. package/esm2020/dialog/dialog.component.mjs +3 -3
  134. package/esm2020/dialog/dialog.module.mjs +4 -4
  135. package/esm2020/dialog/directives/dialog-decisive-button.directive.mjs +3 -3
  136. package/esm2020/dialog/directives/dialog-title.directive.mjs +3 -3
  137. package/esm2020/dialog/utils/dialog-config.class.mjs +3 -3
  138. package/esm2020/dialog/utils/dialog-overlay.container.mjs +3 -3
  139. package/esm2020/dialog/utils/dialog-ref.class.mjs +3 -3
  140. package/esm2020/dynamic-page/deprecated-dynamic-page-compact.directive.mjs +3 -3
  141. package/esm2020/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
  142. package/esm2020/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
  143. package/esm2020/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
  144. package/esm2020/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
  145. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-base-actions.mjs +3 -3
  146. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-global-actions.component.mjs +3 -3
  147. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-layout-actions.component.mjs +3 -3
  148. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-title-content.component.mjs +3 -3
  149. package/esm2020/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
  150. package/esm2020/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.mjs +3 -3
  151. package/esm2020/dynamic-page/dynamic-page-wrapper.directive.mjs +3 -3
  152. package/esm2020/dynamic-page/dynamic-page.component.mjs +3 -3
  153. package/esm2020/dynamic-page/dynamic-page.config.mjs +3 -3
  154. package/esm2020/dynamic-page/dynamic-page.module.mjs +4 -4
  155. package/esm2020/dynamic-page/dynamic-page.service.mjs +3 -3
  156. package/esm2020/dynamic-side-content/dynamic-side-content-main.component.mjs +3 -3
  157. package/esm2020/dynamic-side-content/dynamic-side-content-side.component.mjs +3 -3
  158. package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +3 -3
  159. package/esm2020/dynamic-side-content/dynamic-side-content.module.mjs +4 -4
  160. package/esm2020/facets/content/facet-content.component.mjs +3 -3
  161. package/esm2020/facets/facet/facet.component.mjs +3 -3
  162. package/esm2020/facets/facet-group.component.mjs +3 -3
  163. package/esm2020/facets/facet.module.mjs +4 -4
  164. package/esm2020/feed-input/directives/feed-input-avatar.directive.mjs +3 -3
  165. package/esm2020/feed-input/directives/feed-input-button.directive.mjs +3 -3
  166. package/esm2020/feed-input/directives/feed-input-textarea.directive.mjs +3 -3
  167. package/esm2020/feed-input/feed-input.component.mjs +3 -3
  168. package/esm2020/feed-input/feed-input.module.mjs +4 -4
  169. package/esm2020/feed-list-item/components/feed-list-action/feed-list-action.component.mjs +3 -3
  170. package/esm2020/feed-list-item/components/feed-list-avatar/feed-list-avatar.component.mjs +3 -3
  171. package/esm2020/feed-list-item/components/feed-list-footer/feed-list-footer.component.mjs +3 -3
  172. package/esm2020/feed-list-item/components/item/feed-list-item.component.mjs +3 -3
  173. package/esm2020/feed-list-item/components/list/feed-list.component.mjs +3 -3
  174. package/esm2020/feed-list-item/directives/byline.directive.mjs +3 -3
  175. package/esm2020/feed-list-item/feed-list-item.module.mjs +4 -4
  176. package/esm2020/file-uploader/deprecated-file-uploader-content-density.directive.mjs +3 -3
  177. package/esm2020/file-uploader/directives/file-uploader-dragndrop.directive.mjs +3 -3
  178. package/esm2020/file-uploader/directives/file-uploader-select.directive.mjs +3 -3
  179. package/esm2020/file-uploader/file-uploader.component.mjs +3 -3
  180. package/esm2020/file-uploader/file-uploader.module.mjs +4 -4
  181. package/esm2020/file-uploader/file-uploader.service.mjs +3 -3
  182. package/esm2020/fixed-card-layout/fixed-card-layout-item/fixed-card-layout-item.component.mjs +3 -3
  183. package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +6 -6
  184. package/esm2020/fixed-card-layout/fixed-card-layout.module.mjs +4 -4
  185. package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +3 -3
  186. package/esm2020/flexible-column-layout/flexible-column-layout.module.mjs +4 -4
  187. package/esm2020/form/fieldset/fieldset.component.mjs +3 -3
  188. package/esm2020/form/fieldset/fieldset.module.mjs +4 -4
  189. package/esm2020/form/form-control/deprecated-form-control-content-density.directive.mjs +3 -3
  190. package/esm2020/form/form-control/form-control.component.mjs +3 -3
  191. package/esm2020/form/form-control/form-control.module.mjs +4 -4
  192. package/esm2020/form/form-control/input-form-control.directive.mjs +3 -3
  193. package/esm2020/form/form-control/textarea-form-control.directive.mjs +3 -3
  194. package/esm2020/form/form-group/form-group.component.mjs +3 -3
  195. package/esm2020/form/form-group/form-group.module.mjs +4 -4
  196. package/esm2020/form/form-header/form-header.component.mjs +3 -3
  197. package/esm2020/form/form-header/form-header.module.mjs +4 -4
  198. package/esm2020/form/form-input-message-group/form-input-message-group.component.mjs +3 -3
  199. package/esm2020/form/form-input-message-group/form-input-message-group.module.mjs +4 -4
  200. package/esm2020/form/form-item/form-item.component.mjs +3 -3
  201. package/esm2020/form/form-item/form-item.module.mjs +4 -4
  202. package/esm2020/form/form-label/form-label.component.mjs +3 -3
  203. package/esm2020/form/form-label/form-label.module.mjs +4 -4
  204. package/esm2020/form/form-legend/form-legend.directive.mjs +3 -3
  205. package/esm2020/form/form-legend/form-legend.module.mjs +4 -4
  206. package/esm2020/form/form-message/form-message.component.mjs +3 -3
  207. package/esm2020/form/form-message/form-message.module.mjs +4 -4
  208. package/esm2020/form/form-message/popover-form-message.service.mjs +3 -3
  209. package/esm2020/form/form.module.mjs +4 -4
  210. package/esm2020/formatted-text/formatted-text.component.mjs +3 -3
  211. package/esm2020/formatted-text/formatted-text.module.mjs +4 -4
  212. package/esm2020/fundamental-ngx.module.mjs +4 -4
  213. package/esm2020/grid-list/components/grid-list/grid-list-base.component.mjs +3 -3
  214. package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +3 -3
  215. package/esm2020/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.mjs +3 -3
  216. package/esm2020/grid-list/components/grid-list-footer/grid-list-footer.component.mjs +3 -3
  217. package/esm2020/grid-list/components/grid-list-group-header/grid-list-group-header.component.mjs +3 -3
  218. package/esm2020/grid-list/components/grid-list-item/grid-list-item.component.mjs +3 -3
  219. package/esm2020/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.mjs +3 -3
  220. package/esm2020/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.mjs +3 -3
  221. package/esm2020/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.mjs +3 -3
  222. package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.mjs +3 -3
  223. package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.directive.mjs +3 -3
  224. package/esm2020/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.mjs +3 -3
  225. package/esm2020/grid-list/directives/grid-list-item-body.directive.mjs +3 -3
  226. package/esm2020/grid-list/directives/grid-list-item-image.directive.mjs +3 -3
  227. package/esm2020/grid-list/grid-list.module.mjs +4 -4
  228. package/esm2020/icon/icon.component.mjs +3 -3
  229. package/esm2020/icon/icon.module.mjs +4 -4
  230. package/esm2020/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.mjs +3 -3
  231. package/esm2020/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.mjs +3 -3
  232. package/esm2020/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.mjs +3 -3
  233. package/esm2020/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.mjs +3 -3
  234. package/esm2020/illustrated-message/illustrated-message.component.mjs +3 -3
  235. package/esm2020/illustrated-message/illustrated-message.module.mjs +4 -4
  236. package/esm2020/infinite-scroll/infinite-scroll.directive.mjs +3 -3
  237. package/esm2020/infinite-scroll/infinite-scroll.module.mjs +4 -4
  238. package/esm2020/info-label/info-label.component.mjs +3 -3
  239. package/esm2020/info-label/info-label.module.mjs +4 -4
  240. package/esm2020/inline-help/inline-help.directive.mjs +3 -3
  241. package/esm2020/inline-help/inline-help.module.mjs +4 -4
  242. package/esm2020/input-group/deprecated-input-group-compact.directive.mjs +3 -3
  243. package/esm2020/input-group/input-group-directives.mjs +12 -12
  244. package/esm2020/input-group/input-group.component.mjs +3 -3
  245. package/esm2020/input-group/input-group.module.mjs +4 -4
  246. package/esm2020/layout-grid/directives/layout-grid-col.directive.mjs +3 -3
  247. package/esm2020/layout-grid/directives/layout-grid-row.directive.mjs +3 -3
  248. package/esm2020/layout-grid/layout-grid.component.mjs +3 -3
  249. package/esm2020/layout-grid/layout-grid.module.mjs +4 -4
  250. package/esm2020/layout-panel/layout-panel-actions/layout-panel-actions.component.mjs +3 -3
  251. package/esm2020/layout-panel/layout-panel-body/layout-panel-body.component.mjs +3 -3
  252. package/esm2020/layout-panel/layout-panel-description/layout-panel-description.component.mjs +3 -3
  253. package/esm2020/layout-panel/layout-panel-filters/layout-panel-filters.component.mjs +3 -3
  254. package/esm2020/layout-panel/layout-panel-footer/layout-panel-footer.component.mjs +3 -3
  255. package/esm2020/layout-panel/layout-panel-head/layout-panel-head.component.mjs +3 -3
  256. package/esm2020/layout-panel/layout-panel-header/layout-panel-header.component.mjs +3 -3
  257. package/esm2020/layout-panel/layout-panel-title/layout-panel-title.directive.mjs +3 -3
  258. package/esm2020/layout-panel/layout-panel.component.mjs +3 -3
  259. package/esm2020/layout-panel/layout-panel.module.mjs +4 -4
  260. package/esm2020/link/link.component.mjs +3 -3
  261. package/esm2020/link/link.module.mjs +4 -4
  262. package/esm2020/list/deprecated-list-content-density,directive.mjs +3 -3
  263. package/esm2020/list/directives/byline/list-byline-left.directive.mjs +3 -3
  264. package/esm2020/list/directives/byline/list-byline-right.directive.mjs +3 -3
  265. package/esm2020/list/directives/byline/list-byline.directive.mjs +3 -3
  266. package/esm2020/list/directives/byline/list-content.directive.mjs +3 -3
  267. package/esm2020/list/directives/byline/list-thumbnail.directive.mjs +3 -3
  268. package/esm2020/list/directives/list-footer.directive.mjs +3 -3
  269. package/esm2020/list/directives/list-group-header.directive.mjs +3 -3
  270. package/esm2020/list/directives/list-icon.directive.mjs +3 -3
  271. package/esm2020/list/directives/list-link.directive.mjs +3 -3
  272. package/esm2020/list/directives/list-navigation-item-arrow.directive.mjs +3 -3
  273. package/esm2020/list/directives/list-navigation-item-text.directive.mjs +3 -3
  274. package/esm2020/list/directives/list-secondary.directive.mjs +3 -3
  275. package/esm2020/list/directives/list-title-text.directive.mjs +3 -3
  276. package/esm2020/list/directives/list-title.directive.mjs +3 -3
  277. package/esm2020/list/list-focus-item.model.mjs +3 -3
  278. package/esm2020/list/list-item/list-item.component.mjs +13 -4
  279. package/esm2020/list/list-message.directive.mjs +3 -3
  280. package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +3 -3
  281. package/esm2020/list/list.component.mjs +3 -3
  282. package/esm2020/list/list.module.mjs +4 -4
  283. package/esm2020/menu/directives/deprecated-menu-compact.directive.mjs +3 -3
  284. package/esm2020/menu/directives/menu-addon.directive.mjs +3 -3
  285. package/esm2020/menu/directives/menu-interactive.directive.mjs +3 -3
  286. package/esm2020/menu/directives/menu-shortcut.directive.mjs +3 -3
  287. package/esm2020/menu/directives/menu-title.directive.mjs +3 -3
  288. package/esm2020/menu/directives/menu-trigger.directive.mjs +3 -3
  289. package/esm2020/menu/menu-item/menu-item.component.mjs +6 -6
  290. package/esm2020/menu/menu-keyboard.service.mjs +3 -3
  291. package/esm2020/menu/menu-mobile/menu-mobile.component.mjs +5 -5
  292. package/esm2020/menu/menu-mobile/menu-mobile.module.mjs +4 -4
  293. package/esm2020/menu/menu-separator/menu-separator.component.mjs +3 -3
  294. package/esm2020/menu/menu.component.mjs +3 -3
  295. package/esm2020/menu/menu.module.mjs +4 -4
  296. package/esm2020/menu/services/menu.service.mjs +3 -3
  297. package/esm2020/message-box/directives/message-box-decisive-button.directive.mjs +3 -3
  298. package/esm2020/message-box/message-box-body/message-box-body.component.mjs +3 -3
  299. package/esm2020/message-box/message-box-container/message-box-container.component.mjs +5 -6
  300. package/esm2020/message-box/message-box-default/message-box-default.component.mjs +5 -5
  301. package/esm2020/message-box/message-box-footer/message-box-footer.component.mjs +3 -3
  302. package/esm2020/message-box/message-box-footer-button/message-box-footer-button.component.mjs +3 -3
  303. package/esm2020/message-box/message-box-header/message-box-header.component.mjs +3 -3
  304. package/esm2020/message-box/message-box-semantic-icon/message-box-semantic-icon.component.mjs +3 -3
  305. package/esm2020/message-box/message-box.component.mjs +3 -3
  306. package/esm2020/message-box/message-box.module.mjs +4 -4
  307. package/esm2020/message-box/services/message-box.service.mjs +3 -3
  308. package/esm2020/message-box/utils/message-box-config.class.mjs +3 -3
  309. package/esm2020/message-box/utils/message-box-ref.class.mjs +3 -3
  310. package/esm2020/message-page/message-page-actions/message-page-actions.component.mjs +3 -3
  311. package/esm2020/message-page/message-page-more/message-page-more.component.mjs +3 -3
  312. package/esm2020/message-page/message-page-subtitle/message-page-subtitle.component.mjs +3 -3
  313. package/esm2020/message-page/message-page-title/message-page-title.component.mjs +3 -3
  314. package/esm2020/message-page/message-page.component.mjs +3 -3
  315. package/esm2020/message-page/message-page.module.mjs +4 -4
  316. package/esm2020/message-strip/alert/message-strip-alert/message-strip-alert.component.mjs +3 -3
  317. package/esm2020/message-strip/alert/message-strip-alert-container/message-strip-alert-container.component.mjs +3 -3
  318. package/esm2020/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.mjs +3 -3
  319. package/esm2020/message-strip/alert/message-strip-alert.service.mjs +3 -3
  320. package/esm2020/message-strip/auto-dismiss-message-strip.directive.mjs +3 -3
  321. package/esm2020/message-strip/message-strip.component.mjs +3 -3
  322. package/esm2020/message-strip/message-strip.module.mjs +4 -4
  323. package/esm2020/message-toast/components/message-toast-text.component.mjs +3 -3
  324. package/esm2020/message-toast/message-toast.component.mjs +3 -3
  325. package/esm2020/message-toast/message-toast.module.mjs +4 -4
  326. package/esm2020/message-toast/message-toast.service.mjs +3 -3
  327. package/esm2020/message-toast/toast-overlay-container.class.mjs +3 -3
  328. package/esm2020/micro-process-flow/components/micro-process-flow/deprecated-micro-process-flow-content-density.directive.mjs +3 -3
  329. package/esm2020/micro-process-flow/components/micro-process-flow/micro-process-flow.component.mjs +3 -3
  330. package/esm2020/micro-process-flow/components/micro-process-flow-icon/micro-process-flow-icon.component.mjs +3 -3
  331. package/esm2020/micro-process-flow/components/micro-process-flow-item/micro-process-flow-item.component.mjs +3 -3
  332. package/esm2020/micro-process-flow/micro-process-flow-focusable-item.directive.mjs +3 -3
  333. package/esm2020/micro-process-flow/micro-process-flow-intermediary-item.directive.mjs +3 -3
  334. package/esm2020/micro-process-flow/micro-process-flow.module.mjs +4 -4
  335. package/esm2020/multi-combobox/base-multi-combobox.class.mjs +3 -3
  336. package/esm2020/multi-combobox/mobile/mobile-multi-combobox.component.mjs +3 -3
  337. package/esm2020/multi-combobox/mobile/mobile-multi-combobox.module.mjs +4 -4
  338. package/esm2020/multi-combobox/multi-combobox-config.mjs +3 -3
  339. package/esm2020/multi-combobox/multi-combobox.component.mjs +4 -4
  340. package/esm2020/multi-combobox/multi-combobox.module.mjs +4 -4
  341. package/esm2020/multi-combobox/select-all-toggler/select-all-toggler.component.mjs +3 -3
  342. package/esm2020/multi-input/deprecated-multi-input-compact.directive.mjs +3 -3
  343. package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +3 -3
  344. package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
  345. package/esm2020/multi-input/multi-input.component.mjs +4 -4
  346. package/esm2020/multi-input/multi-input.module.mjs +4 -4
  347. package/esm2020/nested-list/deprecated-nested-list-compact.directive.mjs +3 -3
  348. package/esm2020/nested-list/nested-content/nested-list-content.directive.mjs +3 -3
  349. package/esm2020/nested-list/nested-item/nested-item.directive.mjs +3 -3
  350. package/esm2020/nested-list/nested-link/nested-link.directive.mjs +3 -3
  351. package/esm2020/nested-list/nested-list/nested-list.directive.mjs +3 -3
  352. package/esm2020/nested-list/nested-list-directives.mjs +12 -12
  353. package/esm2020/nested-list/nested-list-keyboard.service.mjs +3 -3
  354. package/esm2020/nested-list/nested-list-popover/nested-list-popover.component.mjs +3 -3
  355. package/esm2020/nested-list/nested-list-state.service.mjs +3 -3
  356. package/esm2020/nested-list/nested-list.module.mjs +4 -4
  357. package/esm2020/nested-list/prepared-nested-list/prepared-nested-list.component.mjs +3 -3
  358. package/esm2020/notification/directives/notification-footer-content.directive.mjs +3 -3
  359. package/esm2020/notification/directives/notification-indicator.directive.mjs +3 -3
  360. package/esm2020/notification/directives/notification-limit-description.directive.mjs +3 -3
  361. package/esm2020/notification/directives/notification-limit-title.directive.mjs +3 -3
  362. package/esm2020/notification/directives/notification-paragraph.directive.mjs +3 -3
  363. package/esm2020/notification/directives/notification-separator.directive.mjs +3 -3
  364. package/esm2020/notification/directives/notification-title.directive.mjs +3 -3
  365. package/esm2020/notification/notification/notification.component.mjs +3 -3
  366. package/esm2020/notification/notification-actions/notification-actions.component.mjs +3 -3
  367. package/esm2020/notification/notification-body/notification-body.component.mjs +3 -3
  368. package/esm2020/notification/notification-content/notification-content.component.mjs +3 -3
  369. package/esm2020/notification/notification-footer/notification-footer.component.mjs +3 -3
  370. package/esm2020/notification/notification-group/notification-group.component.mjs +3 -3
  371. package/esm2020/notification/notification-group-header/notification-group-header.component.mjs +3 -3
  372. package/esm2020/notification/notification-group-list/notification-group-list.component.mjs +3 -3
  373. package/esm2020/notification/notification-header/notification-header.component.mjs +3 -3
  374. package/esm2020/notification/notification-limit/notification-limit.component.mjs +3 -3
  375. package/esm2020/notification/notification-service/notification.service.mjs +3 -3
  376. package/esm2020/notification/notification-utils/notification-container.mjs +3 -3
  377. package/esm2020/notification/notification-utils/notification-group-base.mjs +3 -3
  378. package/esm2020/notification/notification.module.mjs +4 -4
  379. package/esm2020/object-identifier/object-identifier.component.mjs +3 -3
  380. package/esm2020/object-identifier/object-identifier.module.mjs +4 -4
  381. package/esm2020/object-marker/object-marker.component.mjs +3 -3
  382. package/esm2020/object-marker/object-marker.module.mjs +4 -4
  383. package/esm2020/object-number/object-number.component.mjs +3 -3
  384. package/esm2020/object-number/object-number.module.mjs +4 -4
  385. package/esm2020/object-status/object-status.component.mjs +3 -3
  386. package/esm2020/object-status/object-status.module.mjs +4 -4
  387. package/esm2020/overflow-layout/directives/overflow-expand.directive.mjs +3 -3
  388. package/esm2020/overflow-layout/directives/overflow-item-container-ref.directive.mjs +3 -3
  389. package/esm2020/overflow-layout/directives/overflow-item-ref.directive.mjs +3 -3
  390. package/esm2020/overflow-layout/directives/overflow-layout-focusable-item.directive.mjs +3 -3
  391. package/esm2020/overflow-layout/directives/overflow-layout-item-container.directive.mjs +3 -3
  392. package/esm2020/overflow-layout/directives/overflow-layout-item.directive.mjs +3 -3
  393. package/esm2020/overflow-layout/directives/overflow-layout-popover-content.directive.mjs +3 -3
  394. package/esm2020/overflow-layout/overflow-layout.component.mjs +3 -3
  395. package/esm2020/overflow-layout/overflow-layout.module.mjs +4 -4
  396. package/esm2020/overflow-layout/overflow-layout.service.mjs +3 -3
  397. package/esm2020/pagination/deprecated-pagination-compact.directive.mjs +3 -3
  398. package/esm2020/pagination/pagination.component.mjs +3 -3
  399. package/esm2020/pagination/pagination.module.mjs +4 -4
  400. package/esm2020/pagination/pagination.service.mjs +3 -3
  401. package/esm2020/panel/deprecated-panel-compact.directive.mjs +3 -3
  402. package/esm2020/panel/panel-content/panel-content.directive.mjs +3 -3
  403. package/esm2020/panel/panel-title/panel-title.directive.mjs +3 -3
  404. package/esm2020/panel/panel.component.mjs +3 -3
  405. package/esm2020/panel/panel.module.mjs +4 -4
  406. package/esm2020/popover/base/base-popover.class.mjs +3 -3
  407. package/esm2020/popover/popover-body/popover-body-directives/popover-body-footer.directive.mjs +3 -3
  408. package/esm2020/popover/popover-body/popover-body-directives/popover-body-header.directive.mjs +3 -3
  409. package/esm2020/popover/popover-body/popover-body.component.mjs +14 -4
  410. package/esm2020/popover/popover-container/popover-container.directive.mjs +3 -3
  411. package/esm2020/popover/popover-control/popover-control.component.mjs +3 -3
  412. package/esm2020/popover/popover-mobile/popover-mobile.component.mjs +5 -5
  413. package/esm2020/popover/popover-mobile/popover-mobile.module.mjs +4 -4
  414. package/esm2020/popover/popover-service/popover.service.mjs +25 -5
  415. package/esm2020/popover/popover-trigger.directive.mjs +3 -3
  416. package/esm2020/popover/popover.component.mjs +23 -22
  417. package/esm2020/popover/popover.module.mjs +4 -4
  418. package/esm2020/product-switch/product-switch/product-switch.component.mjs +3 -3
  419. package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +3 -3
  420. package/esm2020/product-switch/product-switch.module.mjs +4 -4
  421. package/esm2020/progress-indicator/progress-indicator.component.mjs +3 -3
  422. package/esm2020/progress-indicator/progress-indicator.module.mjs +4 -4
  423. package/esm2020/quick-view/quick-view/quick-view.component.mjs +3 -3
  424. package/esm2020/quick-view/quick-view-group/quick-view-group.component.mjs +3 -3
  425. package/esm2020/quick-view/quick-view-group-item/quick-view-group-item.component.mjs +3 -3
  426. package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content-element.directive.mjs +3 -3
  427. package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.mjs +3 -3
  428. package/esm2020/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.mjs +3 -3
  429. package/esm2020/quick-view/quick-view-group-title/quick-view-group-title.component.mjs +3 -3
  430. package/esm2020/quick-view/quick-view-subheader/quick-view-subheader.component.mjs +3 -3
  431. package/esm2020/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.mjs +3 -3
  432. package/esm2020/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.mjs +3 -3
  433. package/esm2020/quick-view/quick-view-title/quick-view-title.component.mjs +3 -3
  434. package/esm2020/quick-view/quick-view.module.mjs +4 -4
  435. package/esm2020/radio/deprecated-radio-button-compact.directive.mjs +3 -3
  436. package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
  437. package/esm2020/radio/radio.module.mjs +4 -4
  438. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +3 -3
  439. package/esm2020/rating-indicator/pipes/rating-star-label.pipe.mjs +3 -3
  440. package/esm2020/rating-indicator/rating-indicator.module.mjs +4 -4
  441. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +3 -3
  442. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +3 -3
  443. package/esm2020/resizable-card-layout/resizable-card-layout.module.mjs +4 -4
  444. package/esm2020/scroll-spy/scroll-spy.directive.mjs +3 -3
  445. package/esm2020/scroll-spy/scroll-spy.module.mjs +4 -4
  446. package/esm2020/scrollbar/scrollbar.directive.mjs +9 -5
  447. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  448. package/esm2020/segmented-button/segmented-button.component.mjs +3 -3
  449. package/esm2020/segmented-button/segmented-button.module.mjs +4 -4
  450. package/esm2020/select/deprecated-select-compact.directive.mjs +3 -3
  451. package/esm2020/select/option/option.component.mjs +3 -3
  452. package/esm2020/select/select-key-manager.service.mjs +3 -3
  453. package/esm2020/select/select-mobile/select-mobile.component.mjs +3 -3
  454. package/esm2020/select/select-mobile/select-mobile.module.mjs +4 -4
  455. package/esm2020/select/select.component.mjs +6 -6
  456. package/esm2020/select/select.module.mjs +4 -4
  457. package/esm2020/shared/services/value-state-message.service.mjs +3 -3
  458. package/esm2020/shellbar/deprecated-shellbar-compact.directive.mjs +3 -3
  459. package/esm2020/shellbar/product-menu/product-menu.component.mjs +3 -3
  460. package/esm2020/shellbar/shellbar-action/shellbar-action.component.mjs +3 -3
  461. package/esm2020/shellbar/shellbar-actions/shellbar-actions.component.mjs +3 -3
  462. package/esm2020/shellbar/shellbar-actions-mobile/shellbar-actions-mobile.component.mjs +3 -3
  463. package/esm2020/shellbar/shellbar-logo/shellbar-logo.component.mjs +3 -3
  464. package/esm2020/shellbar/shellbar-sidenav.directive.mjs +3 -3
  465. package/esm2020/shellbar/shellbar-subtitle/shellbar-subtitle.component.mjs +3 -3
  466. package/esm2020/shellbar/shellbar-title/shellbar-title.component.mjs +3 -3
  467. package/esm2020/shellbar/shellbar.component.mjs +3 -3
  468. package/esm2020/shellbar/shellbar.module.mjs +4 -4
  469. package/esm2020/shellbar/user-menu/shellbar-user-menu.component.mjs +3 -3
  470. package/esm2020/side-navigation/side-navigation-main.directive.mjs +3 -3
  471. package/esm2020/side-navigation/side-navigation-utility.directive.mjs +3 -3
  472. package/esm2020/side-navigation/side-navigation.component.mjs +3 -3
  473. package/esm2020/side-navigation/side-navigation.module.mjs +4 -4
  474. package/esm2020/skeleton/components/skeleton.component.mjs +3 -3
  475. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  476. package/esm2020/slider/deprecated-slider-cozy.directive.mjs +3 -3
  477. package/esm2020/slider/slider-position.directive.mjs +3 -3
  478. package/esm2020/slider/slider.component.mjs +3 -3
  479. package/esm2020/slider/slider.module.mjs +4 -4
  480. package/esm2020/split-button/deprecated-split-button-compact.directive.mjs +3 -3
  481. package/esm2020/split-button/split-button-utils/split-button.directives.mjs +3 -3
  482. package/esm2020/split-button/split-button.component.mjs +3 -3
  483. package/esm2020/split-button/split-button.module.mjs +4 -4
  484. package/esm2020/splitter/splitter-pagination/splitter-pagination.component.mjs +3 -3
  485. package/esm2020/splitter/splitter-pane-container/splitter-pane-container.component.mjs +6 -6
  486. package/esm2020/splitter/splitter-resizer/splitter-resizer.component.mjs +3 -3
  487. package/esm2020/splitter/splitter-split-pane/splitter-split-pane.component.mjs +3 -3
  488. package/esm2020/splitter/splitter.component.mjs +3 -3
  489. package/esm2020/splitter/splitter.module.mjs +4 -4
  490. package/esm2020/status-indicator/status-indicator.component.mjs +3 -3
  491. package/esm2020/status-indicator/status-indicator.module.mjs +4 -4
  492. package/esm2020/step-input/deprecated-step-input-compact.directive.mjs +3 -3
  493. package/esm2020/step-input/step-input.component.mjs +3 -3
  494. package/esm2020/step-input/step-input.module.mjs +4 -4
  495. package/esm2020/switch/deprecated-switch-compact.directive.mjs +3 -3
  496. package/esm2020/switch/switch.component.mjs +3 -3
  497. package/esm2020/switch/switch.module.mjs +4 -4
  498. package/esm2020/table/deprecated-table-compact.directive.mjs +3 -3
  499. package/esm2020/table/deprecated-table-condensed.directive.mjs +3 -3
  500. package/esm2020/table/directives/table-body.directive.mjs +3 -3
  501. package/esm2020/table/directives/table-cell.directive.mjs +3 -3
  502. package/esm2020/table/directives/table-fixed.directive.mjs +3 -3
  503. package/esm2020/table/directives/table-footer.directive.mjs +3 -3
  504. package/esm2020/table/directives/table-header.directive.mjs +3 -3
  505. package/esm2020/table/directives/table-icon.directive.mjs +3 -3
  506. package/esm2020/table/directives/table-inner.directive.mjs +3 -3
  507. package/esm2020/table/directives/table-popover.directive.mjs +3 -3
  508. package/esm2020/table/directives/table-responsive-wrapper.directive.mjs +3 -3
  509. package/esm2020/table/directives/table-row.directive.mjs +3 -3
  510. package/esm2020/table/directives/table-status-indicator.directive.mjs +3 -3
  511. package/esm2020/table/directives/table-text.directive.mjs +3 -3
  512. package/esm2020/table/table-wrapper.component.mjs +3 -3
  513. package/esm2020/table/table.component.mjs +3 -3
  514. package/esm2020/table/table.module.mjs +4 -4
  515. package/esm2020/tabs/deprecated-tabs-compact.directive.mjs +3 -3
  516. package/esm2020/tabs/tab-item/tab-item.directive.mjs +3 -3
  517. package/esm2020/tabs/tab-item-expand/tab-item-expand.component.mjs +3 -3
  518. package/esm2020/tabs/tab-link/tab-link.directive.mjs +3 -3
  519. package/esm2020/tabs/tab-list.component.mjs +11 -4
  520. package/esm2020/tabs/tab-nav/tab-nav.component.mjs +3 -3
  521. package/esm2020/tabs/tab-panel/tab-panel.component.mjs +10 -4
  522. package/esm2020/tabs/tab-utils/tab-directives.mjs +30 -30
  523. package/esm2020/tabs/tabs.module.mjs +4 -4
  524. package/esm2020/text/text.component.mjs +3 -3
  525. package/esm2020/text/text.module.mjs +4 -4
  526. package/esm2020/theming/theming.module.mjs +4 -4
  527. package/esm2020/theming/theming.service.mjs +3 -3
  528. package/esm2020/tile/directives/numeric-content.directives.mjs +27 -27
  529. package/esm2020/tile/directives/tile.directives.mjs +69 -69
  530. package/esm2020/tile/tile.component.mjs +3 -3
  531. package/esm2020/tile/tile.module.mjs +4 -4
  532. package/esm2020/time/deprecated-time-content-density.directive.mjs +3 -3
  533. package/esm2020/time/i18n/time-i18n.mjs +3 -3
  534. package/esm2020/time/time-column/time-column.component.mjs +3 -3
  535. package/esm2020/time/time.component.mjs +3 -3
  536. package/esm2020/time/time.module.mjs +4 -4
  537. package/esm2020/time-picker/deprecated-timepicker-compact.directive.mjs +3 -3
  538. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  539. package/esm2020/time-picker/time-picker.module.mjs +4 -4
  540. package/esm2020/timeline/components/timeline-node/timeline-node.component.mjs +3 -3
  541. package/esm2020/timeline/components/timeline-node-body/timeline-node-body.component.mjs +3 -3
  542. package/esm2020/timeline/components/timeline-node-footer/timeline-node-footer.component.mjs +3 -3
  543. package/esm2020/timeline/components/timeline-node-header/timeline-node-header-info/timeline-node-header-info.component.mjs +3 -3
  544. package/esm2020/timeline/components/timeline-node-header/timeline-node-header.component.mjs +3 -3
  545. package/esm2020/timeline/directives/class-bindings/timeline-header-info-sub-title.directive.mjs +3 -3
  546. package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-text.directive.mjs +3 -3
  547. package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-title.directive.mjs +3 -3
  548. package/esm2020/timeline/directives/timeline-first-list-outlet.directive.mjs +3 -3
  549. package/esm2020/timeline/directives/timeline-node-def.directive.mjs +3 -3
  550. package/esm2020/timeline/directives/timeline-second-list-outlet.directive.mjs +3 -3
  551. package/esm2020/timeline/services/timeline-position-control.service.mjs +3 -3
  552. package/esm2020/timeline/timeline.component.mjs +3 -3
  553. package/esm2020/timeline/timeline.module.mjs +4 -4
  554. package/esm2020/title/title.component.mjs +3 -3
  555. package/esm2020/title/title.module.mjs +4 -4
  556. package/esm2020/token/deprecated-tokenizer-content-density.directive.mjs +3 -3
  557. package/esm2020/token/token-input.directive.mjs +3 -3
  558. package/esm2020/token/token.component.mjs +3 -3
  559. package/esm2020/token/token.module.mjs +4 -4
  560. package/esm2020/token/tokenizer.component.mjs +3 -3
  561. package/esm2020/toolbar/deprecated-toolbar-size.directive.mjs +3 -3
  562. package/esm2020/toolbar/toolbar-form-label.directive.mjs +3 -3
  563. package/esm2020/toolbar/toolbar-item.directive.mjs +3 -3
  564. package/esm2020/toolbar/toolbar-label.directive.mjs +3 -3
  565. package/esm2020/toolbar/toolbar-overflow-button-menu.directive.mjs +3 -3
  566. package/esm2020/toolbar/toolbar-overflow-button.directive.mjs +3 -3
  567. package/esm2020/toolbar/toolbar-separator.component.mjs +3 -3
  568. package/esm2020/toolbar/toolbar-spacer.directive.mjs +3 -3
  569. package/esm2020/toolbar/toolbar.component.mjs +3 -3
  570. package/esm2020/toolbar/toolbar.module.mjs +4 -4
  571. package/esm2020/tree/components/tree-item/tree-item.component.mjs +3 -3
  572. package/esm2020/tree/directives/tree-item-button.directive.mjs +3 -3
  573. package/esm2020/tree/directives/tree-item-def.directive.mjs +3 -3
  574. package/esm2020/tree/directives/tree-item-icon.directive.mjs +6 -6
  575. package/esm2020/tree/directives/tree-item.directive.mjs +3 -3
  576. package/esm2020/tree/models/base-tree-item.class.mjs +3 -3
  577. package/esm2020/tree/tree.component.mjs +3 -3
  578. package/esm2020/tree/tree.module.mjs +4 -4
  579. package/esm2020/tree/tree.service.mjs +3 -3
  580. package/esm2020/upload-collection/upload-collection-button-group/upload-collection-button-group.component.mjs +3 -3
  581. package/esm2020/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +3 -3
  582. package/esm2020/upload-collection/upload-collection-item.directive.mjs +3 -3
  583. package/esm2020/upload-collection/upload-collection-simple.directives.mjs +21 -21
  584. package/esm2020/upload-collection/upload-collection.component.mjs +3 -3
  585. package/esm2020/upload-collection/upload-collection.module.mjs +4 -4
  586. package/esm2020/vertical-navigation/vertical-navigation-group-header.directive.mjs +3 -3
  587. package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +3 -3
  588. package/esm2020/vertical-navigation/vertical-navigation.component.mjs +3 -3
  589. package/esm2020/vertical-navigation/vertical-navigation.module.mjs +4 -4
  590. package/esm2020/wizard/deprecated-wizard-compact.directive.mjs +3 -3
  591. package/esm2020/wizard/wizard-content/wizard-content.component.mjs +3 -3
  592. package/esm2020/wizard/wizard-navigation/wizard-navigation.component.mjs +3 -3
  593. package/esm2020/wizard/wizard-next-step/wizard-next-step.component.mjs +3 -3
  594. package/esm2020/wizard/wizard-progress-bar/wizard-progress-bar.directive.mjs +3 -3
  595. package/esm2020/wizard/wizard-step/wizard-step.component.mjs +3 -3
  596. package/esm2020/wizard/wizard-step-indicator/wizard-step-indicator.component.mjs +3 -3
  597. package/esm2020/wizard/wizard.component.mjs +3 -3
  598. package/esm2020/wizard/wizard.module.mjs +4 -4
  599. package/esm2020/wizard/wizard.service.mjs +3 -3
  600. package/fesm2015/fundamental-ngx-core-action-bar.mjs +25 -25
  601. package/fesm2015/fundamental-ngx-core-action-sheet.mjs +26 -26
  602. package/fesm2015/fundamental-ngx-core-alert.mjs +13 -13
  603. package/fesm2015/fundamental-ngx-core-avatar-group.mjs +28 -28
  604. package/fesm2015/fundamental-ngx-core-avatar.mjs +7 -7
  605. package/fesm2015/fundamental-ngx-core-bar.mjs +28 -28
  606. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +13 -13
  607. package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +10 -10
  608. package/fesm2015/fundamental-ngx-core-button.mjs +13 -13
  609. package/fesm2015/fundamental-ngx-core-calendar.mjs +34 -34
  610. package/fesm2015/fundamental-ngx-core-card.mjs +58 -58
  611. package/fesm2015/fundamental-ngx-core-carousel.mjs +26 -19
  612. package/fesm2015/fundamental-ngx-core-carousel.mjs.map +1 -1
  613. package/fesm2015/fundamental-ngx-core-checkbox.mjs +10 -10
  614. package/fesm2015/fundamental-ngx-core-combobox.mjs +22 -22
  615. package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
  616. package/fesm2015/fundamental-ngx-core-content-density.mjs +37 -37
  617. package/fesm2015/fundamental-ngx-core-date-picker.mjs +10 -10
  618. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +10 -10
  619. package/fesm2015/fundamental-ngx-core-datetime.mjs +24 -24
  620. package/fesm2015/fundamental-ngx-core-dialog.mjs +66 -60
  621. package/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
  622. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +49 -49
  623. package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  624. package/fesm2015/fundamental-ngx-core-facets.mjs +13 -13
  625. package/fesm2015/fundamental-ngx-core-feed-input.mjs +16 -16
  626. package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +22 -22
  627. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +19 -19
  628. package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
  629. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  630. package/fesm2015/fundamental-ngx-core-form.mjs +79 -79
  631. package/fesm2015/fundamental-ngx-core-formatted-text.mjs +7 -7
  632. package/fesm2015/fundamental-ngx-core-grid-list.mjs +46 -46
  633. package/fesm2015/fundamental-ngx-core-icon.mjs +7 -7
  634. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +19 -19
  635. package/fesm2015/fundamental-ngx-core-infinite-scroll.mjs +7 -7
  636. package/fesm2015/fundamental-ngx-core-info-label.mjs +7 -7
  637. package/fesm2015/fundamental-ngx-core-inline-help.mjs +7 -7
  638. package/fesm2015/fundamental-ngx-core-input-group.mjs +22 -22
  639. package/fesm2015/fundamental-ngx-core-layout-grid.mjs +13 -13
  640. package/fesm2015/fundamental-ngx-core-layout-panel.mjs +31 -31
  641. package/fesm2015/fundamental-ngx-core-link.mjs +7 -7
  642. package/fesm2015/fundamental-ngx-core-list.mjs +73 -64
  643. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  644. package/fesm2015/fundamental-ngx-core-menu.mjs +48 -48
  645. package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
  646. package/fesm2015/fundamental-ngx-core-message-box.mjs +41 -42
  647. package/fesm2015/fundamental-ngx-core-message-box.mjs.map +1 -1
  648. package/fesm2015/fundamental-ngx-core-message-page.mjs +19 -19
  649. package/fesm2015/fundamental-ngx-core-message-strip.mjs +22 -22
  650. package/fesm2015/fundamental-ngx-core-message-toast.mjs +16 -16
  651. package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs +22 -22
  652. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +24 -24
  653. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  654. package/fesm2015/fundamental-ngx-core-multi-input.mjs +18 -18
  655. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  656. package/fesm2015/fundamental-ngx-core-nested-list.mjs +43 -43
  657. package/fesm2015/fundamental-ngx-core-notification.mjs +64 -64
  658. package/fesm2015/fundamental-ngx-core-object-identifier.mjs +7 -7
  659. package/fesm2015/fundamental-ngx-core-object-marker.mjs +7 -7
  660. package/fesm2015/fundamental-ngx-core-object-number.mjs +7 -7
  661. package/fesm2015/fundamental-ngx-core-object-status.mjs +7 -7
  662. package/fesm2015/fundamental-ngx-core-overflow-layout.mjs +31 -31
  663. package/fesm2015/fundamental-ngx-core-pagination.mjs +13 -13
  664. package/fesm2015/fundamental-ngx-core-panel.mjs +16 -16
  665. package/fesm2015/fundamental-ngx-core-popover.mjs +89 -59
  666. package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
  667. package/fesm2015/fundamental-ngx-core-product-switch.mjs +10 -10
  668. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +7 -7
  669. package/fesm2015/fundamental-ngx-core-quick-view.mjs +37 -37
  670. package/fesm2015/fundamental-ngx-core-radio.mjs +10 -10
  671. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +10 -10
  672. package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
  673. package/fesm2015/fundamental-ngx-core-scroll-spy.mjs +7 -7
  674. package/fesm2015/fundamental-ngx-core-scrollbar.mjs +12 -8
  675. package/fesm2015/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  676. package/fesm2015/fundamental-ngx-core-segmented-button.mjs +7 -7
  677. package/fesm2015/fundamental-ngx-core-select.mjs +25 -25
  678. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  679. package/fesm2015/fundamental-ngx-core-shared.mjs +3 -3
  680. package/fesm2015/fundamental-ngx-core-shellbar.mjs +37 -37
  681. package/fesm2015/fundamental-ngx-core-side-navigation.mjs +13 -13
  682. package/fesm2015/fundamental-ngx-core-skeleton.mjs +7 -7
  683. package/fesm2015/fundamental-ngx-core-slider.mjs +13 -13
  684. package/fesm2015/fundamental-ngx-core-split-button.mjs +13 -13
  685. package/fesm2015/fundamental-ngx-core-splitter.mjs +22 -22
  686. package/fesm2015/fundamental-ngx-core-status-indicator.mjs +7 -7
  687. package/fesm2015/fundamental-ngx-core-step-input.mjs +10 -10
  688. package/fesm2015/fundamental-ngx-core-switch.mjs +10 -10
  689. package/fesm2015/fundamental-ngx-core-table.mjs +52 -52
  690. package/fesm2015/fundamental-ngx-core-tabs.mjs +68 -55
  691. package/fesm2015/fundamental-ngx-core-tabs.mjs.map +1 -1
  692. package/fesm2015/fundamental-ngx-core-text.mjs +7 -7
  693. package/fesm2015/fundamental-ngx-core-theming.mjs +7 -7
  694. package/fesm2015/fundamental-ngx-core-tile.mjs +103 -103
  695. package/fesm2015/fundamental-ngx-core-time-picker.mjs +10 -10
  696. package/fesm2015/fundamental-ngx-core-time.mjs +16 -16
  697. package/fesm2015/fundamental-ngx-core-timeline.mjs +43 -43
  698. package/fesm2015/fundamental-ngx-core-title.mjs +7 -7
  699. package/fesm2015/fundamental-ngx-core-token.mjs +16 -16
  700. package/fesm2015/fundamental-ngx-core-token.mjs.map +1 -1
  701. package/fesm2015/fundamental-ngx-core-toolbar.mjs +31 -31
  702. package/fesm2015/fundamental-ngx-core-tree.mjs +31 -31
  703. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +37 -37
  704. package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +13 -13
  705. package/fesm2015/fundamental-ngx-core-wizard.mjs +31 -31
  706. package/fesm2015/fundamental-ngx-core.mjs +4 -4
  707. package/fesm2020/fundamental-ngx-core-action-bar.mjs +25 -25
  708. package/fesm2020/fundamental-ngx-core-action-sheet.mjs +26 -26
  709. package/fesm2020/fundamental-ngx-core-alert.mjs +13 -13
  710. package/fesm2020/fundamental-ngx-core-avatar-group.mjs +28 -28
  711. package/fesm2020/fundamental-ngx-core-avatar.mjs +7 -7
  712. package/fesm2020/fundamental-ngx-core-bar.mjs +28 -28
  713. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +13 -13
  714. package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +10 -10
  715. package/fesm2020/fundamental-ngx-core-button.mjs +13 -13
  716. package/fesm2020/fundamental-ngx-core-calendar.mjs +34 -34
  717. package/fesm2020/fundamental-ngx-core-card.mjs +58 -58
  718. package/fesm2020/fundamental-ngx-core-carousel.mjs +25 -19
  719. package/fesm2020/fundamental-ngx-core-carousel.mjs.map +1 -1
  720. package/fesm2020/fundamental-ngx-core-checkbox.mjs +10 -10
  721. package/fesm2020/fundamental-ngx-core-combobox.mjs +22 -22
  722. package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
  723. package/fesm2020/fundamental-ngx-core-content-density.mjs +37 -37
  724. package/fesm2020/fundamental-ngx-core-date-picker.mjs +10 -10
  725. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +10 -10
  726. package/fesm2020/fundamental-ngx-core-datetime.mjs +24 -24
  727. package/fesm2020/fundamental-ngx-core-dialog.mjs +66 -60
  728. package/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
  729. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +49 -49
  730. package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  731. package/fesm2020/fundamental-ngx-core-facets.mjs +13 -13
  732. package/fesm2020/fundamental-ngx-core-feed-input.mjs +16 -16
  733. package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +22 -22
  734. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +19 -19
  735. package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
  736. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  737. package/fesm2020/fundamental-ngx-core-form.mjs +79 -79
  738. package/fesm2020/fundamental-ngx-core-formatted-text.mjs +7 -7
  739. package/fesm2020/fundamental-ngx-core-grid-list.mjs +46 -46
  740. package/fesm2020/fundamental-ngx-core-icon.mjs +7 -7
  741. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +19 -19
  742. package/fesm2020/fundamental-ngx-core-infinite-scroll.mjs +7 -7
  743. package/fesm2020/fundamental-ngx-core-info-label.mjs +7 -7
  744. package/fesm2020/fundamental-ngx-core-inline-help.mjs +7 -7
  745. package/fesm2020/fundamental-ngx-core-input-group.mjs +22 -22
  746. package/fesm2020/fundamental-ngx-core-layout-grid.mjs +13 -13
  747. package/fesm2020/fundamental-ngx-core-layout-panel.mjs +31 -31
  748. package/fesm2020/fundamental-ngx-core-link.mjs +7 -7
  749. package/fesm2020/fundamental-ngx-core-list.mjs +73 -64
  750. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  751. package/fesm2020/fundamental-ngx-core-menu.mjs +48 -48
  752. package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
  753. package/fesm2020/fundamental-ngx-core-message-box.mjs +41 -42
  754. package/fesm2020/fundamental-ngx-core-message-box.mjs.map +1 -1
  755. package/fesm2020/fundamental-ngx-core-message-page.mjs +19 -19
  756. package/fesm2020/fundamental-ngx-core-message-strip.mjs +22 -22
  757. package/fesm2020/fundamental-ngx-core-message-toast.mjs +16 -16
  758. package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs +22 -22
  759. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +24 -24
  760. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  761. package/fesm2020/fundamental-ngx-core-multi-input.mjs +18 -18
  762. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  763. package/fesm2020/fundamental-ngx-core-nested-list.mjs +43 -43
  764. package/fesm2020/fundamental-ngx-core-notification.mjs +64 -64
  765. package/fesm2020/fundamental-ngx-core-object-identifier.mjs +7 -7
  766. package/fesm2020/fundamental-ngx-core-object-marker.mjs +7 -7
  767. package/fesm2020/fundamental-ngx-core-object-number.mjs +7 -7
  768. package/fesm2020/fundamental-ngx-core-object-status.mjs +7 -7
  769. package/fesm2020/fundamental-ngx-core-overflow-layout.mjs +31 -31
  770. package/fesm2020/fundamental-ngx-core-pagination.mjs +13 -13
  771. package/fesm2020/fundamental-ngx-core-panel.mjs +16 -16
  772. package/fesm2020/fundamental-ngx-core-popover.mjs +89 -59
  773. package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
  774. package/fesm2020/fundamental-ngx-core-product-switch.mjs +10 -10
  775. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +7 -7
  776. package/fesm2020/fundamental-ngx-core-quick-view.mjs +37 -37
  777. package/fesm2020/fundamental-ngx-core-radio.mjs +10 -10
  778. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +10 -10
  779. package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
  780. package/fesm2020/fundamental-ngx-core-scroll-spy.mjs +7 -7
  781. package/fesm2020/fundamental-ngx-core-scrollbar.mjs +12 -8
  782. package/fesm2020/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  783. package/fesm2020/fundamental-ngx-core-segmented-button.mjs +7 -7
  784. package/fesm2020/fundamental-ngx-core-select.mjs +25 -25
  785. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  786. package/fesm2020/fundamental-ngx-core-shared.mjs +3 -3
  787. package/fesm2020/fundamental-ngx-core-shellbar.mjs +37 -37
  788. package/fesm2020/fundamental-ngx-core-side-navigation.mjs +13 -13
  789. package/fesm2020/fundamental-ngx-core-skeleton.mjs +7 -7
  790. package/fesm2020/fundamental-ngx-core-slider.mjs +13 -13
  791. package/fesm2020/fundamental-ngx-core-split-button.mjs +13 -13
  792. package/fesm2020/fundamental-ngx-core-splitter.mjs +22 -22
  793. package/fesm2020/fundamental-ngx-core-status-indicator.mjs +7 -7
  794. package/fesm2020/fundamental-ngx-core-step-input.mjs +10 -10
  795. package/fesm2020/fundamental-ngx-core-switch.mjs +10 -10
  796. package/fesm2020/fundamental-ngx-core-table.mjs +52 -52
  797. package/fesm2020/fundamental-ngx-core-tabs.mjs +68 -55
  798. package/fesm2020/fundamental-ngx-core-tabs.mjs.map +1 -1
  799. package/fesm2020/fundamental-ngx-core-text.mjs +7 -7
  800. package/fesm2020/fundamental-ngx-core-theming.mjs +7 -7
  801. package/fesm2020/fundamental-ngx-core-tile.mjs +103 -103
  802. package/fesm2020/fundamental-ngx-core-time-picker.mjs +10 -10
  803. package/fesm2020/fundamental-ngx-core-time.mjs +16 -16
  804. package/fesm2020/fundamental-ngx-core-timeline.mjs +43 -43
  805. package/fesm2020/fundamental-ngx-core-title.mjs +7 -7
  806. package/fesm2020/fundamental-ngx-core-token.mjs +16 -16
  807. package/fesm2020/fundamental-ngx-core-token.mjs.map +1 -1
  808. package/fesm2020/fundamental-ngx-core-toolbar.mjs +31 -31
  809. package/fesm2020/fundamental-ngx-core-tree.mjs +31 -31
  810. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +37 -37
  811. package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +13 -13
  812. package/fesm2020/fundamental-ngx-core-wizard.mjs +31 -31
  813. package/fesm2020/fundamental-ngx-core.mjs +4 -4
  814. package/fundamental-ngx-core-v0.43.0-rc.21.tgz +0 -0
  815. package/list/list-item/list-item.component.d.ts +5 -1
  816. package/package.json +11 -11
  817. package/popover/popover-body/popover-body.component.d.ts +7 -2
  818. package/popover/popover-service/popover.service.d.ts +4 -0
  819. package/popover/popover.component.d.ts +2 -2
  820. package/schematics/add-dependencies/index.js +6 -6
  821. package/scrollbar/scrollbar.directive.d.ts +2 -0
  822. package/tabs/tab-list.component.d.ts +3 -1
  823. package/tabs/tab-panel/tab-panel.component.d.ts +2 -0
  824. package/fundamental-ngx-core-v0.43.0-rc.2.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-multi-input.mjs","sources":["../../../../libs/core/src/lib/multi-input/multi-input.interface.ts","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.component.ts","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.component.html","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.module.ts","../../../../libs/core/src/lib/multi-input/multi-input.component.ts","../../../../libs/core/src/lib/multi-input/multi-input.component.html","../../../../libs/core/src/lib/multi-input/deprecated-multi-input-compact.directive.ts","../../../../libs/core/src/lib/multi-input/multi-input.module.ts","../../../../libs/core/src/lib/multi-input/fundamental-ngx-core-multi-input.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core';\nimport { MobileMode } from '@fundamental-ngx/core/mobile-mode';\n\nexport const MULTI_INPUT_COMPONENT = new InjectionToken<string[]>('MultiInputComponent');\n\n/**\n * Multi Input Interface to have typing and avoid circular dependency between\n * MultiInputComponent <==> MultiInputMobileComponent\n */\nexport interface MultiInputInterface extends MobileMode {\n selected: any[];\n openChange: EventEmitter<boolean>;\n allItemsSelectedChange: EventEmitter<boolean>;\n\n dialogApprove(): void;\n\n selectAllItems(selectAll: boolean): void;\n\n dialogDismiss(selectedBackup: any[]): void;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n OnDestroy,\n OnInit,\n Optional,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { takeUntil } from 'rxjs/operators';\nimport { MULTI_INPUT_COMPONENT, MultiInputInterface } from '../multi-input.interface';\nimport {\n MOBILE_MODE_CONFIG,\n MobileModeBase,\n MobileModeControl,\n MobileModeConfigToken\n} from '@fundamental-ngx/core/mobile-mode';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\n\n@Component({\n selector: 'fd-multi-input-mobile',\n templateUrl: './multi-input-mobile.component.html',\n styleUrls: ['./multi-input-mobile.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class MultiInputMobileComponent extends MobileModeBase<MultiInputInterface> implements OnInit, OnDestroy {\n /** @hidden */\n allItemsSelected: boolean;\n\n /** @hidden */\n @ViewChild('dialogTemplate') dialogTemplate: TemplateRef<any>;\n\n /** @hidden\n * For internal usage\n * Control element, which will be rendered inside dialog.\n * List element, which will be rendered inside dialog.\n */\n childContent: Nullable<{\n listTemplate: TemplateRef<any>;\n controlTemplate: TemplateRef<any>;\n }> = null;\n\n /** @hidden */\n private _selectedBackup: any[];\n\n /** @hidden */\n constructor(\n elementRef: ElementRef,\n dialogService: DialogService,\n @Inject(MULTI_INPUT_COMPONENT) multiInputComponent: MultiInputInterface,\n @Optional() @Inject(MOBILE_MODE_CONFIG) mobileModes: MobileModeConfigToken[]\n ) {\n super(elementRef, dialogService, multiInputComponent, MobileModeControl.MULTI_INPUT, mobileModes);\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._listenOnMultiInputOpenChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n super.onDestroy();\n }\n\n /** Throw select all event, it's handled by multi input component */\n selectAll(selectAll: boolean): void {\n this._component.selectAllItems(!selectAll);\n }\n\n /** @hidden */\n handleDismiss(): void {\n this.dialogRef.dismiss();\n this._component.dialogDismiss(this._selectedBackup);\n }\n\n /** @hidden */\n handleApprove(): void {\n this.dialogRef.close();\n this._component.dialogApprove();\n }\n\n /** @hidden */\n private _toggleDialog(open: boolean): void {\n if (!open) {\n return;\n }\n\n this._selectedBackup = this._component.selected?.length ? [...this._component.selected] : [];\n if (!this._dialogService.hasOpenDialogs()) {\n this._open();\n }\n }\n\n /** @hidden */\n private _listenOnMultiInputOpenChange(): void {\n this._component.openChange.pipe(takeUntil(this._onDestroy$)).subscribe((isOpen) => this._toggleDialog(isOpen));\n this._component.allItemsSelectedChange\n .pipe(takeUntil(this._onDestroy$))\n .subscribe((allItemsSelected) => (this.allItemsSelected = allItemsSelected));\n }\n\n /** @hidden */\n private _open(): void {\n this.dialogRef = this._dialogService.open(this.dialogTemplate, {\n mobile: true,\n disablePaddings: true,\n ...this.dialogConfig,\n backdropClickCloseable: false,\n escKeyCloseable: false,\n container: this._elementRef.nativeElement\n });\n }\n}\n","<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title *ngIf=\"mobileConfig?.title\">{{ mobileConfig.title }}</h1>\n <button\n fd-dialog-close-button\n [mobile]=\"true\"\n *ngIf=\"mobileConfig?.hasCloseButton\"\n (click)=\"handleDismiss()\"\n ></button>\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element class=\"custom-multi-input-mobile-control-element\">\n <ng-container *ngTemplateOutlet=\"childContent?.controlTemplate || null\"></ng-container>\n </fd-bar-element>\n <fd-bar-element class=\"custom-multi-input-select-all-bar-element\">\n <button\n fd-button\n glyph=\"multiselect-all\"\n [fdType]=\"allItemsSelected ? 'emphasized' : 'transparent'\"\n (click)=\"selectAll(allItemsSelected)\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent?.listTemplate || null\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n *ngIf=\"mobileConfig?.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"handleApprove()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"handleDismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { BarModule } from '@fundamental-ngx/core/bar';\nimport { MultiInputMobileComponent } from './multi-input-mobile.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { DialogModule } from '@fundamental-ngx/core/dialog';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MultiInputMobileComponent],\n imports: [BarModule, DialogModule, ButtonModule, CommonModule],\n exports: [MultiInputMobileComponent]\n})\nexport class MultiInputMobileModule {}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Inject,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DOWN_ARROW, ENTER, ESCAPE, SPACE, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { BehaviorSubject, combineLatest, firstValueFrom, Observable, Subscription } from 'rxjs';\nimport { distinctUntilChanged, first, map, startWith } from 'rxjs/operators';\n\nimport { PopoverComponent } from '@fundamental-ngx/core/popover';\nimport { MenuKeyboardService } from '@fundamental-ngx/core/menu';\nimport { PopoverFillMode } from '@fundamental-ngx/core/shared';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\nimport { TokenizerComponent } from '@fundamental-ngx/core/token';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\nimport { ListComponent } from '@fundamental-ngx/core/list';\nimport {\n applyCssClass,\n CssClassBuilder,\n DynamicComponentService,\n FocusEscapeDirection,\n FocusTrapService,\n KeyUtil,\n Nullable,\n RangeSelector,\n RtlService,\n uuidv4\n} from '@fundamental-ngx/cdk/utils';\n\nimport { MultiInputMobileComponent } from './multi-input-mobile/multi-input-mobile.component';\nimport { MultiInputMobileModule } from './multi-input-mobile/multi-input-mobile.module';\nimport { MULTI_INPUT_COMPONENT, MultiInputInterface } from './multi-input.interface';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { FormStates } from '@fundamental-ngx/cdk/forms';\nimport { FD_LANGUAGE, FdLanguage, TranslationResolver } from '@fundamental-ngx/i18n';\n\n/**\n * Input field with multiple selection enabled. Should be used when a user can select between a\n * limited number of pre-defined options with a filter-enabled context.\n *\n * Supports Angular Forms.\n */\n@Component({\n selector: 'fd-multi-input',\n templateUrl: './multi-input.component.html',\n styleUrls: ['./multi-input.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MultiInputComponent),\n multi: true\n },\n MenuKeyboardService,\n registerFormItemControl(MultiInputComponent),\n contentDensityObserverProviders()\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MultiInputComponent\n implements\n MultiInputInterface,\n ControlValueAccessor,\n CssClassBuilder,\n OnInit,\n OnChanges,\n AfterViewInit,\n OnDestroy,\n FormItemControl\n{\n /** Placeholder for the input field. */\n @Input()\n placeholder = '';\n\n /** Whether the input is disabled. */\n @Input()\n disabled = false;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** Whether to use cozy visuals but compact collapsing behavior. */\n @Input()\n compactCollapse = true;\n\n /** Max height of the popover. Any overflowing elements will be accessible through scrolling. */\n @Input()\n maxHeight = '300px';\n\n /** Icon of the button on the right of the input field. */\n @Input()\n glyph = 'value-help';\n\n /** Values to be displayed in the unfiltered dropdown. */\n @Input()\n dropdownValues: any[] = [];\n\n /** Whether to open the dropdown when the addon button is clicked. */\n @Input()\n openDropdownOnAddOnClicked = true;\n\n /** Search term, or more specifically the value of the inner input field. */\n @Input()\n set searchTerm(value: string) {\n this._searchTermCtrl.setValue(value);\n }\n get searchTerm(): string {\n return this._searchTermCtrl.value ?? '';\n }\n\n /** Id attribute for input element inside MultiInput component */\n @Input()\n inputId = '';\n\n /** Whether the search term should be highlighted in results. */\n @Input()\n highlight = true;\n\n /** Selected dropdown items. */\n @Input()\n set selected(values: any[]) {\n this._selectionModel.clear();\n values?.forEach((item) => this._selectionModel.select(item));\n }\n get selected(): any[] {\n return this._selectionModel.selected;\n }\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /**\n * Filter function. Accepts an array and a string as arguments, and outputs an array.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n filterFn = this._defaultFilter;\n\n /**\n * Value function. Accepts an object of the same type as the\n * items passed to dropdownValues as argument, and outputs any property, that should be used as value.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n valueFn = this._defaultValueFn;\n\n /**\n * Display function. Accepts an object of the same type as the\n * items passed to dropdownValues as argument, and outputs a string.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n displayFn = this._defaultDisplay;\n\n /**\n * Parse function. Used for submitting new tokens. Accepts a string by default.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n newTokenParseFn: (searchTerm: string) => any = this._defaultParse;\n\n /**\n * Validate function. Used to check if new token can be added into list.\n * Works only, when `allowNewTokens` option is enabled.\n */\n @Input()\n newTokenValidateFn = this._defaultTokenValidate;\n\n /** aria-label attribute binding. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** aria-labelledby attribute binding. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /**\n * Preset options for the Select body width, whatever is chosen, the body has a 600px limit.\n * * `at-least` will apply a minimum width to the body equivalent to the width of the control. - Default\n * * `equal` will apply a width to the body equivalent to the width of the control.\n * * 'fit-content' will apply width needed to properly display items inside, independent of control.\n */\n @Input()\n fillControlMode: PopoverFillMode = 'at-least';\n\n /**\n * The state of the form control - applies css classes.\n * Can be `success`, `error`, `warning`, `information` or blank for default.\n */\n @Input()\n state?: FormStates;\n\n /**\n * Whether AddOn Button should be focusable\n * @default true\n */\n @Input()\n buttonFocusable = true;\n\n /** Whether the multi-input allows the creation of new tokens. */\n @Input()\n allowNewTokens = false;\n\n /** Whether the multi-input should be built on mobile mode */\n @Input()\n mobile = false;\n\n /** Whether the multi-input should have show all button. */\n @Input()\n showAllButton = true;\n\n /**\n * Max width of multi input body.\n * `none` will not limit width of the dropdown.\n * `container` will limit width of the dropdown to the width of the multi-input itself.\n * `number` will limit width of the dropdown by provided number in pixels.\n */\n @Input()\n bodyMaxWidth: 'none' | 'container' | number = 'none';\n\n /** @hidden */\n get _popoverMaxWidth(): Nullable<number> {\n if (this.bodyMaxWidth === 'none') {\n return null;\n }\n\n if (typeof this.bodyMaxWidth === 'number') {\n return this.bodyMaxWidth;\n }\n\n return this.elementRef.nativeElement.getBoundingClientRect().width;\n }\n\n /** Multi Input Mobile Configuration, it's applied only, when mobile is enabled */\n @Input()\n mobileConfig: MobileModeConfig = { hasCloseButton: true, approveButtonText: 'Select' };\n\n /**\n * Whether or not to return results where the input matches the entire string. By default, only results that start\n * with the input search term will be returned.\n */\n @Input()\n includes = false;\n\n /**\n * The template with which to display the individual listed items.\n * Use it by passing an ng-template with implicit content. See examples for more info.\n */\n @Input()\n itemTemplate: TemplateRef<any>;\n\n /**\n * The tooltip for the multi-input icon.\n */\n @Input()\n title: string;\n\n /** Whether list item options should be rendered as byline. */\n @Input()\n byline = false;\n\n /** Whether the autocomplete should be enabled; Enabled by default */\n @Input()\n autoComplete = true;\n\n /** Event emitted when the search term changes. Use *$event* to access the new term. */\n @Output()\n readonly searchTermChange: EventEmitter<string> = new EventEmitter<string>();\n\n /** Event emitted when the selected items change. Use *$event* to access the new selected array. */\n @Output()\n readonly selectedChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n /** Whether multi input popover body should be opened */\n @Input()\n open = false;\n\n /** Whether or not to display the addon button. */\n @Input()\n displayAddonButton = true;\n\n /** Event emitted, when the multi input's popover body is opened or closed */\n @Output()\n readonly openChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** Emits event when the addon button is clicked. */\n @Output()\n readonly addOnButtonClicked: EventEmitter<Event> = new EventEmitter<Event>();\n\n /** Event emitted, when the multi input's all item checked or not */\n @Output()\n readonly allItemsSelectedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @hidden */\n @ViewChild(PopoverComponent)\n popoverRef: PopoverComponent;\n\n /** @hidden */\n @ViewChild('control', { read: TemplateRef })\n controlTemplate: TemplateRef<any>;\n\n /** @hidden */\n @ViewChild('list', { read: TemplateRef })\n listTemplate: TemplateRef<any>;\n\n /** @hidden */\n @ViewChild(ListComponent)\n listComponent: ListComponent;\n\n /** @hidden */\n @ViewChild('searchInputElement', { read: ElementRef })\n searchInputElement: ElementRef<HTMLInputElement>;\n\n /** @hidden */\n @ViewChild(TokenizerComponent)\n tokenizer: TokenizerComponent;\n\n /** @hidden */\n readonly optionItems$ = new BehaviorSubject<OptionItem[]>([]);\n\n /** @hidden */\n readonly _searchTermCtrl = new FormControl('');\n\n /** @hidden */\n readonly _selectionModel = new SelectionModel<any>(true);\n\n /** @hidden */\n readonly _viewModel$: Observable<ViewModel> = this._getViewModel();\n\n /** @hidden */\n _dir: string;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n private readonly _rangeSelector = new RangeSelector();\n\n /** @hidden */\n private readonly _translationResolver = new TranslationResolver();\n\n /** @hidden */\n onChange: (value: any) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n constructor(\n readonly _contentDensityObserver: ContentDensityObserver,\n public readonly elementRef: ElementRef<HTMLElement>,\n private readonly _changeDetRef: ChangeDetectorRef,\n private readonly _dynamicComponentService: DynamicComponentService,\n private readonly _injector: Injector,\n private readonly _viewContainerRef: ViewContainerRef,\n @Inject(FD_LANGUAGE) private readonly _language: Observable<FdLanguage>,\n @Optional() private readonly _rtlService: RtlService,\n @Optional() private readonly _focusTrapService: FocusTrapService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n\n this._subscriptions.add(\n this._rtlService?.rtl.subscribe((isRtl) => {\n this._dir = isRtl ? 'rtl' : 'ltr';\n this.buildComponentCssClass();\n })\n );\n\n if (!this.inputId) {\n this.inputId = uuidv4();\n }\n\n this._subscriptions.add(\n this._searchTermCtrl.valueChanges.pipe(distinctUntilChanged()).subscribe((searchTerm) => {\n this.searchTermChange.emit(searchTerm ?? '');\n // resetting existing selection state, if any\n this._rangeSelector.reset();\n })\n );\n this._subscriptions.add(\n this._getViewModel()\n .pipe(map((viewModel) => !viewModel.displayedOptions.some((c) => !c.isSelected)))\n .subscribe((allItemsSelected) => this.allItemsSelectedChange.emit(allItemsSelected))\n );\n\n if (!this.ariaLabel) {\n this._subscriptions.add(\n this._language.subscribe(() => {\n this._getAriaLabel();\n })\n );\n }\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n this.buildComponentCssClass();\n\n if (changes.dropdownValues || changes.searchTerm || changes.valueFn || changes.displayFn) {\n const optionItems = (this.dropdownValues ?? []).map((item) => this._getOptionItem(item));\n this.optionItems$.next(optionItems);\n this._changeDetRef.markForCheck();\n }\n\n if (changes.disabled) {\n this.disabled ? this._searchTermCtrl.disable() : this._searchTermCtrl.enable();\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.mobile) {\n this._setUpMobileMode();\n }\n this.tokenizer._showOverflowPopover = false;\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n // TODO: this icon flip may be addressed in styles in the future\n if (this.glyph === 'value-help' && this._dir === 'rtl') {\n const icon = this.elementRef.nativeElement.querySelector('.sap-icon--value-help') as HTMLElement;\n if (icon) {\n icon.style.transform = 'scaleX(-1)';\n }\n }\n\n return ['fd-multi-input', 'fd-multi-input-custom', this.class];\n }\n\n /** @hidden */\n registerOnChange(fn: (selected: any[]) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n if (isDisabled) {\n this.elementRef.nativeElement.style.pointerEvents = 'none';\n } else {\n this.elementRef.nativeElement.style.pointerEvents = 'auto';\n }\n\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n writeValue(selected: any[]): void {\n this.selected = selected;\n\n this._changeDetRef.markForCheck();\n }\n\n /** Method passed to list component */\n handleListFocusEscape(direction: FocusEscapeDirection): void {\n if (direction === 'up' && !this.mobile) {\n this.searchInputElement.nativeElement.focus();\n }\n }\n\n /** @hidden */\n openChangeHandle(open: boolean): void {\n if (this.disabled) {\n return;\n }\n\n if (!open && this.open && !this.mobile) {\n this.searchInputElement.nativeElement.focus();\n }\n\n if (this.open !== open) {\n this.openChange.emit(open);\n }\n\n this.open = open;\n\n if (!this.mobile) {\n this._popoverOpenHandle(open);\n }\n\n if (!this.open) {\n this._resetSearchTerm();\n this.enableParentFocusTrap();\n } else {\n this.disableParentFocusTrap();\n\n this.searchInputElement?.nativeElement.focus();\n }\n\n this.tokenizer.tokenizerInnerEl.nativeElement.scrollLeft =\n this.tokenizer.tokenizerInnerEl.nativeElement.scrollWidth;\n\n this._changeDetRef.detectChanges();\n }\n\n /** Method that selects all possible options. */\n selectAllItems(selectAll: boolean): void {\n if (selectAll) {\n this.selected = this.optionItems$.getValue().map((c) => c.value);\n } else {\n this.selected = [];\n }\n // On Mobile mode changes are propagated only on approve.\n this._propagateChange();\n }\n\n /** @hidden */\n _onCheckboxKeyup(value: any, event: KeyboardEvent, index: number): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n this._onCheckboxClick(value, event, index);\n }\n }\n\n /** @hidden */\n async _onCheckboxClick(\n value: any,\n event: MouseEvent | KeyboardEvent,\n index: number,\n isListItem = false\n ): Promise<void> {\n const toggledSelection = !this._selectionModel.isSelected(value);\n this._rangeSelector.onRangeElementToggled(index, event);\n const sub = this._viewModel$.pipe(first()).subscribe((vm) => {\n this._rangeSelector.applyValueToEachInRange((idx) =>\n this._handleSelect(toggledSelection, vm.displayedOptions[idx].value, false)\n );\n this._changeDetRef.detectChanges();\n });\n this._subscriptions.add(sub);\n if (isListItem) {\n this.openChangeHandle(false);\n } else {\n // stop propagation on the checkbox so event doesn't reach the list item\n event.stopPropagation();\n }\n }\n\n /** @hidden */\n _onTokenClick(value: any, resetSearch: boolean, event?: MouseEvent): void {\n event?.preventDefault(); // prevent this function from being called twice when checkbox updates\n this._handleSelect(false, value, resetSearch, true);\n }\n\n /** @hidden */\n _handleSelect(checked: any, value: any, resetSearch = true, fromTokenCloseClick = false): void {\n const previousLength = this._selectionModel.selected.length;\n if (checked) {\n this._selectionModel.select(value);\n } else {\n this._selectionModel.deselect(value);\n }\n\n // Handle popover placement update\n if (this._shouldPopoverBeUpdated(previousLength, this._selectionModel.selected.length)) {\n this.popoverRef.refreshPosition();\n }\n if (resetSearch) {\n this._resetSearchTerm();\n this.searchInputElement.nativeElement.focus();\n }\n\n if (this._selectionModel.selected.length === 0) {\n this.searchInputElement.nativeElement.focus();\n this._changeDetRef.detectChanges();\n }\n\n // On Mobile mode changes are propagated only on approve.\n this._propagateChange(fromTokenCloseClick);\n }\n\n /** @hidden */\n _handleInputKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, DOWN_ARROW) && !this.mobile) {\n if (event.altKey) {\n this.openChangeHandle(true);\n }\n\n if (this.listComponent) {\n this.listComponent.setItemActive(0);\n event.preventDefault();\n }\n } else if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, ENTER])) {\n this.openChangeHandle(true);\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.openChangeHandle(false);\n } else if (KeyUtil.isKeyCode(event, TAB) && this.open) {\n if (this.listComponent) {\n this.listComponent.setItemActive(0);\n event.preventDefault();\n }\n } else if (KeyUtil.isKeyType(event, 'alphabetical') || KeyUtil.isKeyType(event, 'numeric')) {\n if (!this.open) {\n this.openChangeHandle(true);\n this.searchInputElement.nativeElement.focus();\n }\n }\n }\n\n /** @hidden */\n _showAllClicked(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n this._searchTermCtrl.setValue('');\n this.searchInputElement.nativeElement.focus();\n }\n\n /** @hidden */\n _showAllKeyDown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n this._showAllClicked(event);\n }\n }\n\n /** @hidden */\n _onSubmit(): void {\n const searchTerm = this.searchTerm;\n if (searchTerm === '') {\n return;\n }\n const isExist = this._selectFirstFiltered(searchTerm);\n if (!isExist && this.allowNewTokens && this.newTokenValidateFn(this._searchTermCtrl.value ?? '')) {\n const newToken = this.newTokenParseFn(this._searchTermCtrl.value ?? '');\n this._addNewTokenToDropDownValues(newToken);\n this._handleSelect(true, newToken);\n this._searchTermCtrl.setValue('');\n this.open = false;\n }\n }\n\n /** @hidden */\n _handleComplete({ term }): void {\n this.searchTerm = term;\n }\n\n /**\n * Handle dialog dismissing, closes popover and sets backup data.\n */\n dialogDismiss(selectedBackup: any[]): void {\n this.openChangeHandle(false);\n this._resetSearchTerm();\n this.selected = selectedBackup;\n }\n\n /**\n * Handle dialog approval, closes popover and propagates data changes.\n */\n dialogApprove(): void {\n this._propagateChange(true);\n this.openChangeHandle(false);\n this._resetSearchTerm();\n }\n\n /** @hidden */\n _moreClicked(): void {\n this.openChangeHandle(true);\n }\n\n /** @hidden */\n _addOnButtonClicked(event: Event): void {\n this.addOnButtonClicked.emit(event);\n if (this.openDropdownOnAddOnClicked) {\n this.openChangeHandle(!this.open);\n } else if (this.open) {\n this.openChangeHandle(false);\n }\n }\n\n /** @hidden */\n disableParentFocusTrap(): void {\n this._focusTrapService?.pauseCurrentFocusTrap();\n }\n\n /** @hidden */\n enableParentFocusTrap(): void {\n this._focusTrapService?.unpauseCurrentFocusTrap();\n }\n\n /** @hidden */\n private _addNewTokenToDropDownValues(newToken): void {\n this.dropdownValues.push(newToken);\n const newOption = this._getOptionItem(newToken);\n this.optionItems$.next([...this.optionItems$.value, newOption]);\n }\n\n /** @hidden */\n private _selectFirstFiltered(searchTerm: string): boolean {\n const filtered = this.filterFn(this.dropdownValues, searchTerm);\n if (Array.isArray(filtered) && filtered.length > 0 && this.autoComplete) {\n const optionItem = this._getOptionItem(filtered[0]);\n this._handleSelect(true, optionItem.value);\n this._searchTermCtrl.setValue('');\n this.open = false;\n return true;\n }\n return false;\n }\n\n /** @hidden */\n private _defaultFilter(contentArray: any[], searchTerm: string = ''): any[] {\n const searchLower = searchTerm.toLocaleLowerCase();\n return contentArray.filter((item) => {\n if (item) {\n const displayedValue = this.displayFn(item);\n const term = typeof displayedValue === 'string' ? displayedValue.toLocaleLowerCase() : '';\n\n return this.includes ? term.includes(searchLower) : term.startsWith(searchLower);\n }\n });\n }\n\n /** @hidden */\n private _defaultValueFn(value: any): any {\n return value;\n }\n\n /** @hidden */\n private _defaultDisplay(str: any): string {\n return str;\n }\n\n /** @hidden */\n private _defaultParse(str: any): string {\n return str;\n }\n\n /** @hidden */\n private _defaultTokenValidate(str: string): boolean {\n return !!str;\n }\n\n /** @hidden */\n private _popoverOpenHandle(open: boolean): void {\n this.open = open;\n }\n\n /** @hidden */\n private _propagateChange(emitInMobile?: boolean): void {\n if (!this.mobile || emitInMobile) {\n const selected = [...this._selectionModel.selected];\n this.onChange(selected);\n this.selectedChange.emit(selected);\n }\n }\n\n /** @hidden */\n private _shouldPopoverBeUpdated(previousLength: number, currentLength: number): boolean {\n return (\n !!this.popoverRef &&\n ((previousLength === 0 && currentLength === 1) || (previousLength === 1 && currentLength === 0))\n );\n }\n\n /** @hidden */\n private async _setUpMobileMode(): Promise<void> {\n const injector = Injector.create({\n providers: [{ provide: MULTI_INPUT_COMPONENT, useValue: this }],\n parent: this._injector\n });\n\n await this._dynamicComponentService.createDynamicModule(\n {\n listTemplate: this.listTemplate,\n controlTemplate: this.controlTemplate\n },\n MultiInputMobileModule,\n MultiInputMobileComponent,\n this._viewContainerRef,\n injector\n );\n }\n\n /** @hidden */\n private _resetSearchTerm(): void {\n this._searchTermCtrl.setValue('');\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n private _getOptionItem(item: any): OptionItem {\n const { label, value } = this._getValueAndLabel(item);\n return {\n item,\n label,\n value,\n isSelected: false\n };\n }\n\n /** @hidden */\n private _getValueAndLabel(itemOrValue: any, optionItems: OptionItem[] = []): OptionItemBase {\n if (optionItems.length > 0) {\n itemOrValue = optionItems.find((c) => c.value === itemOrValue)?.item ?? itemOrValue;\n }\n const defaultDisplay = typeof itemOrValue === 'object' ? itemOrValue[Object.keys(itemOrValue)[0]] : itemOrValue;\n const value = this.valueFn(itemOrValue) ?? defaultDisplay;\n const label = this.displayFn(itemOrValue) ?? defaultDisplay;\n return { label, value };\n }\n\n /** @hidden */\n private _getViewModel(): Observable<ViewModel> {\n return combineLatest([\n this._searchTermCtrl.valueChanges.pipe(startWith(this._searchTermCtrl.value)),\n this._selectionModel.changed.pipe(startWith(null)),\n this.optionItems$\n ]).pipe(\n map(([, , optionItems]) => {\n const selected = this.selected.map((c) => this._getValueAndLabel(c, optionItems));\n // not using \"searchTerm\" value from combineLatest as it will be wrong for late subscribers, if any\n const searchTerm = this._searchTermCtrl.value ?? '';\n const filtered = this.filterFn(\n optionItems.map((c) => c.item),\n searchTerm\n );\n const displayedOptions = (Array.isArray(filtered) ? filtered : []).map((item) =>\n this._getOptionItem(item)\n );\n displayedOptions.forEach((c) => (c.isSelected = selected.findIndex((d) => d.value === c.value) > -1));\n return { selectedOptions: selected, displayedOptions };\n })\n );\n }\n\n /** @hidden */\n @HostListener('focusout', ['$event'])\n private _focusOut(event: FocusEvent): void {\n if (!this.elementRef.nativeElement.contains(event.relatedTarget as Node)) {\n this.onTouched();\n }\n }\n\n /** @hidden */\n private async _getAriaLabel(): Promise<void> {\n const lang = await firstValueFrom(this._language);\n this.ariaLabel = this._translationResolver.resolve(lang, 'coreMultiInput.multiInputAriaLabel');\n }\n}\n\ninterface OptionItem<T = any> extends OptionItemBase {\n item: T;\n isSelected: boolean;\n}\ninterface OptionItemBase {\n label: string;\n value: any;\n}\n\ninterface ViewModel {\n selectedOptions: OptionItemBase[];\n displayedOptions: OptionItem[];\n}\n","<ng-container *ngIf=\"_viewModel$ | async as viewModel\">\n <div class=\"fd-multi-input fd-multi-input-custom\">\n <div class=\"fd-multi-input-field\">\n <ng-container [ngTemplateOutlet]=\"control\" *ngIf=\"mobile\"></ng-container>\n\n <fd-popover\n additionalBodyClass=\"fd-popover-custom-list\"\n *ngIf=\"!mobile\"\n [isOpen]=\"open\"\n (isOpenChange)=\"openChangeHandle($event)\"\n (input)=\"!open && openChangeHandle(true)\"\n [triggers]=\"[]\"\n [maxWidth]=\"_popoverMaxWidth\"\n [disabled]=\"disabled\"\n [fillControlMode]=\"fillControlMode\"\n class=\"fd-multi-input-popover-custom\"\n >\n <fd-popover-control>\n <form (submit)=\"_onSubmit()\">\n <ng-container *ngTemplateOutlet=\"control\"></ng-container>\n </form>\n </fd-popover-control>\n\n <fd-popover-body\n [attr.aria-hidden]=\"!open\"\n [class.fd-popover__body--hidden]=\"!viewModel.displayedOptions.length\"\n >\n <ng-container *ngTemplateOutlet=\"list\"></ng-container>\n\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n </div>\n </div>\n\n <ng-template #control>\n <fd-input-group\n class=\"fd-multi-input-input-group-custom\"\n [state]=\"state\"\n [buttonFocusable]=\"buttonFocusable\"\n [button]=\"displayAddonButton\"\n [disabled]=\"disabled\"\n [isExpanded]=\"open && !mobile && viewModel.displayedOptions.length > 0\"\n [isControl]=\"true\"\n [glyph]=\"displayAddonButton ? glyph : ''\"\n [iconTitle]=\"title\"\n (addOnButtonClicked)=\"_addOnButtonClicked($event)\"\n >\n <fd-tokenizer\n #tokenizer\n [compactCollapse]=\"compactCollapse\"\n [open]=\"open\"\n [tokenizerFocusable]=\"false\"\n (moreClickedEvent)=\"_moreClicked()\"\n class=\"fd-multi-input-tokenizer-custom\"\n tabindex=\"-1\"\n >\n <fd-token\n *ngFor=\"let option of viewModel.selectedOptions; trackBy: valueFn\"\n [disabled]=\"disabled\"\n (onCloseClick)=\"_onTokenClick(option.value, false, $event)\"\n (onRemove)=\"_onTokenClick(option.value, false)\"\n >\n <span [innerHtml]=\"option.label\"></span>\n </fd-token>\n\n <input\n type=\"text\"\n class=\"fd-input fd-tokenizer__input fd-multi-input-tokenizer-input\"\n autocomplete=\"off\"\n fd-form-control\n fd-input-group-input\n fdkAutoComplete\n (onComplete)=\"_handleComplete($event)\"\n #searchInputElement\n [displayFn]=\"displayFn\"\n [inputText]=\"_searchTermCtrl.value || ''\"\n [options]=\"dropdownValues\"\n [enable]=\"autoComplete && !mobile\"\n [placeholder]=\"placeholder\"\n [formControl]=\"_searchTermCtrl\"\n [attr.aria-required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n (keydown)=\"_handleInputKeydown($event)\"\n [attr.id]=\"inputId\"\n (focus)=\"tokenizer._showAllTokens()\"\n (blur)=\"tokenizer._hideTokens()\"\n />\n </fd-tokenizer>\n </fd-input-group>\n </ng-template>\n\n <ng-template #list>\n <ul\n *ngIf=\"viewModel.displayedOptions.length\"\n fd-list\n class=\"fd-multi-input-menu-overflow\"\n [selection]=\"true\"\n [mobileMode]=\"mobile\"\n [style.maxHeight]=\"!mobile ? maxHeight : 'auto'\"\n [byline]=\"byline\"\n (focusEscapeList)=\"handleListFocusEscape($event)\"\n [style.minWidth]=\"'100%'\"\n >\n <li\n *ngFor=\"let option of viewModel.displayedOptions; index as idx; trackBy: valueFn\"\n fd-list-item\n [attr.aria-label]=\"option.label\"\n (click)=\"_onCheckboxClick(option.value, $event, idx, true)\"\n (keyup)=\"_onCheckboxKeyup(option.value, $event, idx)\"\n [selected]=\"option.isSelected\"\n >\n <fd-checkbox (click)=\"_onCheckboxClick(option.value, $event, idx)\" [value]=\"option.isSelected\">\n <!-- TODO -->\n </fd-checkbox>\n\n <ng-container\n [ngTemplateOutlet]=\"itemSource\"\n [ngTemplateOutletContext]=\"{ option: option }\"\n ></ng-container>\n </li>\n\n <li\n *ngIf=\"showAllButton && viewModel.displayedOptions.length < dropdownValues.length\"\n fd-list-item\n class=\"fd-multi-input-show-all\"\n (keyDown)=\"_showAllKeyDown($event)\"\n (click)=\"_showAllClicked($event)\"\n >\n <a fd-link tabindex=\"0\">Show All ({{ dropdownValues.length }})</a>\n </li>\n </ul>\n </ng-template>\n\n <ng-template let-option=\"option\" #itemSource>\n <span\n *ngIf=\"!itemTemplate\"\n fd-list-title\n [innerHtml]=\"option.label | highlight : _searchTermCtrl.value || '' : highlight\"\n ></span>\n\n <ng-container *ngIf=\"itemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: option.item }\"\n ></ng-container>\n </ng-container>\n </ng-template>\n</ng-container>\n","import { Directive, forwardRef } from '@angular/core';\nimport { CONTENT_DENSITY_DIRECTIVE, DeprecatedCompactDirective } from '@fundamental-ngx/core/content-density';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-multi-input[compact]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedMultiInputCompactDirective)\n }\n ]\n})\nexport class DeprecatedMultiInputCompactDirective extends DeprecatedCompactDirective {\n /** @hidden */\n constructor() {\n super('fd-multi-input');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MultiInputComponent } from './multi-input.component';\nimport { TokenModule } from '@fundamental-ngx/core/token';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { PipeModule } from '@fundamental-ngx/cdk/utils';\nimport { InputGroupModule } from '@fundamental-ngx/core/input-group';\nimport { FormModule } from '@fundamental-ngx/core/form';\nimport { CheckboxModule } from '@fundamental-ngx/core/checkbox';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { LinkModule } from '@fundamental-ngx/core/link';\nimport { AutoCompleteModule } from '@fundamental-ngx/cdk/utils';\nimport { DeprecatedMultiInputCompactDirective } from './deprecated-multi-input-compact.directive';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\n\n@NgModule({\n declarations: [MultiInputComponent, DeprecatedMultiInputCompactDirective],\n imports: [\n CommonModule,\n TokenModule,\n FormsModule,\n ReactiveFormsModule,\n ListModule,\n PopoverModule,\n PipeModule,\n InputGroupModule,\n FormModule,\n CheckboxModule,\n LinkModule,\n AutoCompleteModule,\n ContentDensityModule\n ],\n exports: [MultiInputComponent, DeprecatedMultiInputCompactDirective, ContentDensityModule]\n})\nexport class MultiInputModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","i6","i2","i3","i5"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-multi-input.mjs","sources":["../../../../libs/core/src/lib/multi-input/multi-input.interface.ts","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.component.ts","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.component.html","../../../../libs/core/src/lib/multi-input/multi-input-mobile/multi-input-mobile.module.ts","../../../../libs/core/src/lib/multi-input/multi-input.component.ts","../../../../libs/core/src/lib/multi-input/multi-input.component.html","../../../../libs/core/src/lib/multi-input/deprecated-multi-input-compact.directive.ts","../../../../libs/core/src/lib/multi-input/multi-input.module.ts","../../../../libs/core/src/lib/multi-input/fundamental-ngx-core-multi-input.ts"],"sourcesContent":["import { EventEmitter, InjectionToken } from '@angular/core';\nimport { MobileMode } from '@fundamental-ngx/core/mobile-mode';\n\nexport const MULTI_INPUT_COMPONENT = new InjectionToken<string[]>('MultiInputComponent');\n\n/**\n * Multi Input Interface to have typing and avoid circular dependency between\n * MultiInputComponent <==> MultiInputMobileComponent\n */\nexport interface MultiInputInterface extends MobileMode {\n selected: any[];\n openChange: EventEmitter<boolean>;\n allItemsSelectedChange: EventEmitter<boolean>;\n\n dialogApprove(): void;\n\n selectAllItems(selectAll: boolean): void;\n\n dialogDismiss(selectedBackup: any[]): void;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n OnDestroy,\n OnInit,\n Optional,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { takeUntil } from 'rxjs/operators';\nimport { MULTI_INPUT_COMPONENT, MultiInputInterface } from '../multi-input.interface';\nimport {\n MOBILE_MODE_CONFIG,\n MobileModeBase,\n MobileModeControl,\n MobileModeConfigToken\n} from '@fundamental-ngx/core/mobile-mode';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\n\n@Component({\n selector: 'fd-multi-input-mobile',\n templateUrl: './multi-input-mobile.component.html',\n styleUrls: ['./multi-input-mobile.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class MultiInputMobileComponent extends MobileModeBase<MultiInputInterface> implements OnInit, OnDestroy {\n /** @hidden */\n allItemsSelected: boolean;\n\n /** @hidden */\n @ViewChild('dialogTemplate') dialogTemplate: TemplateRef<any>;\n\n /** @hidden\n * For internal usage\n * Control element, which will be rendered inside dialog.\n * List element, which will be rendered inside dialog.\n */\n childContent: Nullable<{\n listTemplate: TemplateRef<any>;\n controlTemplate: TemplateRef<any>;\n }> = null;\n\n /** @hidden */\n private _selectedBackup: any[];\n\n /** @hidden */\n constructor(\n elementRef: ElementRef,\n dialogService: DialogService,\n @Inject(MULTI_INPUT_COMPONENT) multiInputComponent: MultiInputInterface,\n @Optional() @Inject(MOBILE_MODE_CONFIG) mobileModes: MobileModeConfigToken[]\n ) {\n super(elementRef, dialogService, multiInputComponent, MobileModeControl.MULTI_INPUT, mobileModes);\n }\n\n /** @hidden */\n ngOnInit(): void {\n this._listenOnMultiInputOpenChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n super.onDestroy();\n }\n\n /** Throw select all event, it's handled by multi input component */\n selectAll(selectAll: boolean): void {\n this._component.selectAllItems(!selectAll);\n }\n\n /** @hidden */\n handleDismiss(): void {\n this.dialogRef.dismiss();\n this._component.dialogDismiss(this._selectedBackup);\n }\n\n /** @hidden */\n handleApprove(): void {\n this.dialogRef.close();\n this._component.dialogApprove();\n }\n\n /** @hidden */\n private _toggleDialog(open: boolean): void {\n if (!open) {\n return;\n }\n\n this._selectedBackup = this._component.selected?.length ? [...this._component.selected] : [];\n if (!this._dialogService.hasOpenDialogs()) {\n this._open();\n }\n }\n\n /** @hidden */\n private _listenOnMultiInputOpenChange(): void {\n this._component.openChange.pipe(takeUntil(this._onDestroy$)).subscribe((isOpen) => this._toggleDialog(isOpen));\n this._component.allItemsSelectedChange\n .pipe(takeUntil(this._onDestroy$))\n .subscribe((allItemsSelected) => (this.allItemsSelected = allItemsSelected));\n }\n\n /** @hidden */\n private _open(): void {\n this.dialogRef = this._dialogService.open(this.dialogTemplate, {\n mobile: true,\n disablePaddings: true,\n ...this.dialogConfig,\n backdropClickCloseable: false,\n escKeyCloseable: false,\n container: this._elementRef.nativeElement\n });\n }\n}\n","<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title *ngIf=\"mobileConfig?.title\">{{ mobileConfig.title }}</h1>\n <button\n fd-dialog-close-button\n [mobile]=\"true\"\n *ngIf=\"mobileConfig?.hasCloseButton\"\n (click)=\"handleDismiss()\"\n ></button>\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element class=\"custom-multi-input-mobile-control-element\">\n <ng-container *ngTemplateOutlet=\"childContent?.controlTemplate || null\"></ng-container>\n </fd-bar-element>\n <fd-bar-element class=\"custom-multi-input-select-all-bar-element\">\n <button\n fd-button\n glyph=\"multiselect-all\"\n [fdType]=\"allItemsSelected ? 'emphasized' : 'transparent'\"\n (click)=\"selectAll(allItemsSelected)\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent?.listTemplate || null\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n *ngIf=\"mobileConfig?.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"handleApprove()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"handleDismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { BarModule } from '@fundamental-ngx/core/bar';\nimport { MultiInputMobileComponent } from './multi-input-mobile.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { DialogModule } from '@fundamental-ngx/core/dialog';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [MultiInputMobileComponent],\n imports: [BarModule, DialogModule, ButtonModule, CommonModule],\n exports: [MultiInputMobileComponent]\n})\nexport class MultiInputMobileModule {}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Inject,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DOWN_ARROW, ENTER, ESCAPE, SPACE, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { BehaviorSubject, combineLatest, firstValueFrom, Observable, Subscription } from 'rxjs';\nimport { distinctUntilChanged, first, map, startWith } from 'rxjs/operators';\n\nimport { PopoverComponent } from '@fundamental-ngx/core/popover';\nimport { MenuKeyboardService } from '@fundamental-ngx/core/menu';\nimport { PopoverFillMode } from '@fundamental-ngx/core/shared';\nimport { MobileModeConfig } from '@fundamental-ngx/core/mobile-mode';\nimport { TokenizerComponent } from '@fundamental-ngx/core/token';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\nimport { ListComponent } from '@fundamental-ngx/core/list';\nimport {\n applyCssClass,\n CssClassBuilder,\n DynamicComponentService,\n FocusEscapeDirection,\n FocusTrapService,\n KeyUtil,\n Nullable,\n RangeSelector,\n RtlService,\n uuidv4\n} from '@fundamental-ngx/cdk/utils';\n\nimport { MultiInputMobileComponent } from './multi-input-mobile/multi-input-mobile.component';\nimport { MultiInputMobileModule } from './multi-input-mobile/multi-input-mobile.module';\nimport { MULTI_INPUT_COMPONENT, MultiInputInterface } from './multi-input.interface';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { FormStates } from '@fundamental-ngx/cdk/forms';\nimport { FD_LANGUAGE, FdLanguage, TranslationResolver } from '@fundamental-ngx/i18n';\n\n/**\n * Input field with multiple selection enabled. Should be used when a user can select between a\n * limited number of pre-defined options with a filter-enabled context.\n *\n * Supports Angular Forms.\n */\n@Component({\n selector: 'fd-multi-input',\n templateUrl: './multi-input.component.html',\n styleUrls: ['./multi-input.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MultiInputComponent),\n multi: true\n },\n MenuKeyboardService,\n registerFormItemControl(MultiInputComponent),\n contentDensityObserverProviders()\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MultiInputComponent\n implements\n MultiInputInterface,\n ControlValueAccessor,\n CssClassBuilder,\n OnInit,\n OnChanges,\n AfterViewInit,\n OnDestroy,\n FormItemControl\n{\n /** Placeholder for the input field. */\n @Input()\n placeholder = '';\n\n /** Whether the input is disabled. */\n @Input()\n disabled = false;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** Whether to use cozy visuals but compact collapsing behavior. */\n @Input()\n compactCollapse = true;\n\n /** Max height of the popover. Any overflowing elements will be accessible through scrolling. */\n @Input()\n maxHeight = '300px';\n\n /** Icon of the button on the right of the input field. */\n @Input()\n glyph = 'value-help';\n\n /** Values to be displayed in the unfiltered dropdown. */\n @Input()\n dropdownValues: any[] = [];\n\n /** Whether to open the dropdown when the addon button is clicked. */\n @Input()\n openDropdownOnAddOnClicked = true;\n\n /** Search term, or more specifically the value of the inner input field. */\n @Input()\n set searchTerm(value: string) {\n this._searchTermCtrl.setValue(value);\n }\n get searchTerm(): string {\n return this._searchTermCtrl.value ?? '';\n }\n\n /** Id attribute for input element inside MultiInput component */\n @Input()\n inputId = '';\n\n /** Whether the search term should be highlighted in results. */\n @Input()\n highlight = true;\n\n /** Selected dropdown items. */\n @Input()\n set selected(values: any[]) {\n this._selectionModel.clear();\n values?.forEach((item) => this._selectionModel.select(item));\n }\n get selected(): any[] {\n return this._selectionModel.selected;\n }\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /**\n * Filter function. Accepts an array and a string as arguments, and outputs an array.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n filterFn = this._defaultFilter;\n\n /**\n * Value function. Accepts an object of the same type as the\n * items passed to dropdownValues as argument, and outputs any property, that should be used as value.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n valueFn = this._defaultValueFn;\n\n /**\n * Display function. Accepts an object of the same type as the\n * items passed to dropdownValues as argument, and outputs a string.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n displayFn = this._defaultDisplay;\n\n /**\n * Parse function. Used for submitting new tokens. Accepts a string by default.\n * An arrow function can be used to access the *this* keyword in the calling component.\n * See multi input examples for details.\n */\n @Input()\n newTokenParseFn: (searchTerm: string) => any = this._defaultParse;\n\n /**\n * Validate function. Used to check if new token can be added into list.\n * Works only, when `allowNewTokens` option is enabled.\n */\n @Input()\n newTokenValidateFn = this._defaultTokenValidate;\n\n /** aria-label attribute binding. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** aria-labelledby attribute binding. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /**\n * Preset options for the Select body width, whatever is chosen, the body has a 600px limit.\n * * `at-least` will apply a minimum width to the body equivalent to the width of the control. - Default\n * * `equal` will apply a width to the body equivalent to the width of the control.\n * * 'fit-content' will apply width needed to properly display items inside, independent of control.\n */\n @Input()\n fillControlMode: PopoverFillMode = 'at-least';\n\n /**\n * The state of the form control - applies css classes.\n * Can be `success`, `error`, `warning`, `information` or blank for default.\n */\n @Input()\n state?: FormStates;\n\n /**\n * Whether AddOn Button should be focusable\n * @default true\n */\n @Input()\n buttonFocusable = true;\n\n /** Whether the multi-input allows the creation of new tokens. */\n @Input()\n allowNewTokens = false;\n\n /** Whether the multi-input should be built on mobile mode */\n @Input()\n mobile = false;\n\n /** Whether the multi-input should have show all button. */\n @Input()\n showAllButton = true;\n\n /**\n * Max width of multi input body.\n * `none` will not limit width of the dropdown.\n * `container` will limit width of the dropdown to the width of the multi-input itself.\n * `number` will limit width of the dropdown by provided number in pixels.\n */\n @Input()\n bodyMaxWidth: 'none' | 'container' | number = 'none';\n\n /** @hidden */\n get _popoverMaxWidth(): Nullable<number> {\n if (this.bodyMaxWidth === 'none') {\n return null;\n }\n\n if (typeof this.bodyMaxWidth === 'number') {\n return this.bodyMaxWidth;\n }\n\n return this.elementRef.nativeElement.getBoundingClientRect().width;\n }\n\n /** Multi Input Mobile Configuration, it's applied only, when mobile is enabled */\n @Input()\n mobileConfig: MobileModeConfig = { hasCloseButton: true, approveButtonText: 'Select' };\n\n /**\n * Whether or not to return results where the input matches the entire string. By default, only results that start\n * with the input search term will be returned.\n */\n @Input()\n includes = false;\n\n /**\n * The template with which to display the individual listed items.\n * Use it by passing an ng-template with implicit content. See examples for more info.\n */\n @Input()\n itemTemplate: TemplateRef<any>;\n\n /**\n * The tooltip for the multi-input icon.\n */\n @Input()\n title: string;\n\n /** Whether list item options should be rendered as byline. */\n @Input()\n byline = false;\n\n /** Whether the autocomplete should be enabled; Enabled by default */\n @Input()\n autoComplete = true;\n\n /** Event emitted when the search term changes. Use *$event* to access the new term. */\n @Output()\n readonly searchTermChange: EventEmitter<string> = new EventEmitter<string>();\n\n /** Event emitted when the selected items change. Use *$event* to access the new selected array. */\n @Output()\n readonly selectedChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n /** Whether multi input popover body should be opened */\n @Input()\n open = false;\n\n /** Whether or not to display the addon button. */\n @Input()\n displayAddonButton = true;\n\n /** Event emitted, when the multi input's popover body is opened or closed */\n @Output()\n readonly openChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** Emits event when the addon button is clicked. */\n @Output()\n readonly addOnButtonClicked: EventEmitter<Event> = new EventEmitter<Event>();\n\n /** Event emitted, when the multi input's all item checked or not */\n @Output()\n readonly allItemsSelectedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @hidden */\n @ViewChild(PopoverComponent)\n popoverRef: PopoverComponent;\n\n /** @hidden */\n @ViewChild('control', { read: TemplateRef })\n controlTemplate: TemplateRef<any>;\n\n /** @hidden */\n @ViewChild('list', { read: TemplateRef })\n listTemplate: TemplateRef<any>;\n\n /** @hidden */\n @ViewChild(ListComponent)\n listComponent: ListComponent;\n\n /** @hidden */\n @ViewChild('searchInputElement', { read: ElementRef })\n searchInputElement: ElementRef<HTMLInputElement>;\n\n /** @hidden */\n @ViewChild(TokenizerComponent)\n tokenizer: TokenizerComponent;\n\n /** @hidden */\n readonly optionItems$ = new BehaviorSubject<OptionItem[]>([]);\n\n /** @hidden */\n readonly _searchTermCtrl = new FormControl('');\n\n /** @hidden */\n readonly _selectionModel = new SelectionModel<any>(true);\n\n /** @hidden */\n readonly _viewModel$: Observable<ViewModel> = this._getViewModel();\n\n /** @hidden */\n _dir: string;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n private readonly _rangeSelector = new RangeSelector();\n\n /** @hidden */\n private readonly _translationResolver = new TranslationResolver();\n\n /** @hidden */\n onChange: (value: any) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n constructor(\n readonly _contentDensityObserver: ContentDensityObserver,\n public readonly elementRef: ElementRef<HTMLElement>,\n private readonly _changeDetRef: ChangeDetectorRef,\n private readonly _dynamicComponentService: DynamicComponentService,\n private readonly _injector: Injector,\n private readonly _viewContainerRef: ViewContainerRef,\n @Inject(FD_LANGUAGE) private readonly _language: Observable<FdLanguage>,\n @Optional() private readonly _rtlService: RtlService,\n @Optional() private readonly _focusTrapService: FocusTrapService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n\n this._subscriptions.add(\n this._rtlService?.rtl.subscribe((isRtl) => {\n this._dir = isRtl ? 'rtl' : 'ltr';\n this.buildComponentCssClass();\n })\n );\n\n if (!this.inputId) {\n this.inputId = uuidv4();\n }\n\n this._subscriptions.add(\n this._searchTermCtrl.valueChanges.pipe(distinctUntilChanged()).subscribe((searchTerm) => {\n this.searchTermChange.emit(searchTerm ?? '');\n // resetting existing selection state, if any\n this._rangeSelector.reset();\n })\n );\n this._subscriptions.add(\n this._getViewModel()\n .pipe(map((viewModel) => !viewModel.displayedOptions.some((c) => !c.isSelected)))\n .subscribe((allItemsSelected) => this.allItemsSelectedChange.emit(allItemsSelected))\n );\n\n if (!this.ariaLabel) {\n this._subscriptions.add(\n this._language.subscribe(() => {\n this._getAriaLabel();\n })\n );\n }\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n this.buildComponentCssClass();\n\n if (changes.dropdownValues || changes.searchTerm || changes.valueFn || changes.displayFn) {\n const optionItems = (this.dropdownValues ?? []).map((item) => this._getOptionItem(item));\n this.optionItems$.next(optionItems);\n this._changeDetRef.markForCheck();\n }\n\n if (changes.disabled) {\n this.disabled ? this._searchTermCtrl.disable() : this._searchTermCtrl.enable();\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.mobile) {\n this._setUpMobileMode();\n }\n this.tokenizer._showOverflowPopover = false;\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n // TODO: this icon flip may be addressed in styles in the future\n if (this.glyph === 'value-help' && this._dir === 'rtl') {\n const icon = this.elementRef.nativeElement.querySelector('.sap-icon--value-help') as HTMLElement;\n if (icon) {\n icon.style.transform = 'scaleX(-1)';\n }\n }\n\n return ['fd-multi-input', 'fd-multi-input-custom', this.class];\n }\n\n /** @hidden */\n registerOnChange(fn: (selected: any[]) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n if (isDisabled) {\n this.elementRef.nativeElement.style.pointerEvents = 'none';\n } else {\n this.elementRef.nativeElement.style.pointerEvents = 'auto';\n }\n\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n writeValue(selected: any[]): void {\n this.selected = selected;\n\n this._changeDetRef.markForCheck();\n }\n\n /** Method passed to list component */\n handleListFocusEscape(direction: FocusEscapeDirection): void {\n if (direction === 'up' && !this.mobile) {\n this.searchInputElement.nativeElement.focus();\n }\n }\n\n /** @hidden */\n openChangeHandle(open: boolean): void {\n if (this.disabled) {\n return;\n }\n\n if (!open && this.open && !this.mobile) {\n this.searchInputElement.nativeElement.focus();\n }\n\n if (this.open !== open) {\n this.openChange.emit(open);\n }\n\n this.open = open;\n\n if (!this.mobile) {\n this._popoverOpenHandle(open);\n }\n\n if (!this.open) {\n this._resetSearchTerm();\n this.enableParentFocusTrap();\n } else {\n this.disableParentFocusTrap();\n\n this.searchInputElement?.nativeElement.focus();\n }\n\n this.tokenizer.tokenizerInnerEl.nativeElement.scrollLeft =\n this.tokenizer.tokenizerInnerEl.nativeElement.scrollWidth;\n\n this._changeDetRef.detectChanges();\n }\n\n /** Method that selects all possible options. */\n selectAllItems(selectAll: boolean): void {\n if (selectAll) {\n this.selected = this.optionItems$.getValue().map((c) => c.value);\n } else {\n this.selected = [];\n }\n // On Mobile mode changes are propagated only on approve.\n this._propagateChange();\n }\n\n /** @hidden */\n _onCheckboxKeyup(value: any, event: KeyboardEvent, index: number): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n this._onCheckboxClick(value, event, index);\n }\n }\n\n /** @hidden */\n async _onCheckboxClick(\n value: any,\n event: MouseEvent | KeyboardEvent,\n index: number,\n isListItem = false\n ): Promise<void> {\n const toggledSelection = !this._selectionModel.isSelected(value);\n this._rangeSelector.onRangeElementToggled(index, event);\n const sub = this._viewModel$.pipe(first()).subscribe((vm) => {\n this._rangeSelector.applyValueToEachInRange((idx) =>\n this._handleSelect(toggledSelection, vm.displayedOptions[idx].value, false)\n );\n this._changeDetRef.detectChanges();\n });\n this._subscriptions.add(sub);\n if (isListItem) {\n this.openChangeHandle(false);\n } else {\n // stop propagation on the checkbox so event doesn't reach the list item\n event.stopPropagation();\n }\n }\n\n /** @hidden */\n _onTokenClick(value: any, resetSearch: boolean, event?: MouseEvent): void {\n event?.preventDefault(); // prevent this function from being called twice when checkbox updates\n this._handleSelect(false, value, resetSearch, true);\n }\n\n /** @hidden */\n _handleSelect(checked: any, value: any, resetSearch = true, fromTokenCloseClick = false): void {\n const previousLength = this._selectionModel.selected.length;\n if (checked) {\n this._selectionModel.select(value);\n } else {\n this._selectionModel.deselect(value);\n }\n\n // Handle popover placement update\n if (this._shouldPopoverBeUpdated(previousLength, this._selectionModel.selected.length)) {\n this.popoverRef.refreshPosition();\n }\n if (resetSearch) {\n this._resetSearchTerm();\n this.searchInputElement.nativeElement.focus();\n }\n\n if (this._selectionModel.selected.length === 0) {\n this.searchInputElement.nativeElement.focus();\n this._changeDetRef.detectChanges();\n }\n\n // On Mobile mode changes are propagated only on approve.\n this._propagateChange(fromTokenCloseClick);\n }\n\n /** @hidden */\n _handleInputKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, DOWN_ARROW) && !this.mobile) {\n if (event.altKey) {\n this.openChangeHandle(true);\n }\n\n if (this.listComponent) {\n this.listComponent.setItemActive(0);\n event.preventDefault();\n }\n } else if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW, ENTER])) {\n this.openChangeHandle(true);\n } else if (KeyUtil.isKeyCode(event, ESCAPE)) {\n this.openChangeHandle(false);\n } else if (KeyUtil.isKeyCode(event, TAB) && this.open) {\n if (this.listComponent) {\n this.listComponent.setItemActive(0);\n event.preventDefault();\n }\n } else if (KeyUtil.isKeyType(event, 'alphabetical') || KeyUtil.isKeyType(event, 'numeric')) {\n if (!this.open) {\n this.openChangeHandle(true);\n this.searchInputElement.nativeElement.focus();\n }\n }\n }\n\n /** @hidden */\n _showAllClicked(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n this._searchTermCtrl.setValue('');\n this.searchInputElement.nativeElement.focus();\n }\n\n /** @hidden */\n _showAllKeyDown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [SPACE, ENTER])) {\n this._showAllClicked(event);\n }\n }\n\n /** @hidden */\n _onSubmit(): void {\n const searchTerm = this.searchTerm;\n if (searchTerm === '') {\n return;\n }\n const isExist = this._selectFirstFiltered(searchTerm);\n if (!isExist && this.allowNewTokens && this.newTokenValidateFn(this._searchTermCtrl.value ?? '')) {\n const newToken = this.newTokenParseFn(this._searchTermCtrl.value ?? '');\n this._addNewTokenToDropDownValues(newToken);\n this._handleSelect(true, newToken);\n this._searchTermCtrl.setValue('');\n this.open = false;\n }\n }\n\n /** @hidden */\n _handleComplete({ term }): void {\n this.searchTerm = term;\n }\n\n /**\n * Handle dialog dismissing, closes popover and sets backup data.\n */\n dialogDismiss(selectedBackup: any[]): void {\n this.openChangeHandle(false);\n this._resetSearchTerm();\n this.selected = selectedBackup;\n }\n\n /**\n * Handle dialog approval, closes popover and propagates data changes.\n */\n dialogApprove(): void {\n this._propagateChange(true);\n this.openChangeHandle(false);\n this._resetSearchTerm();\n }\n\n /** @hidden */\n _moreClicked(): void {\n this.openChangeHandle(true);\n }\n\n /** @hidden */\n _addOnButtonClicked(event: Event): void {\n this.addOnButtonClicked.emit(event);\n if (this.openDropdownOnAddOnClicked) {\n this.openChangeHandle(!this.open);\n } else if (this.open) {\n this.openChangeHandle(false);\n }\n }\n\n /** @hidden */\n disableParentFocusTrap(): void {\n this._focusTrapService?.pauseCurrentFocusTrap();\n }\n\n /** @hidden */\n enableParentFocusTrap(): void {\n this._focusTrapService?.unpauseCurrentFocusTrap();\n }\n\n /** @hidden */\n private _addNewTokenToDropDownValues(newToken): void {\n this.dropdownValues.push(newToken);\n const newOption = this._getOptionItem(newToken);\n this.optionItems$.next([...this.optionItems$.value, newOption]);\n }\n\n /** @hidden */\n private _selectFirstFiltered(searchTerm: string): boolean {\n const filtered = this.filterFn(this.dropdownValues, searchTerm);\n if (Array.isArray(filtered) && filtered.length > 0 && this.autoComplete) {\n const optionItem = this._getOptionItem(filtered[0]);\n this._handleSelect(true, optionItem.value);\n this._searchTermCtrl.setValue('');\n this.open = false;\n return true;\n }\n return false;\n }\n\n /** @hidden */\n private _defaultFilter(contentArray: any[], searchTerm: string = ''): any[] {\n const searchLower = searchTerm.toLocaleLowerCase();\n return contentArray.filter((item) => {\n if (item) {\n const displayedValue = this.displayFn(item);\n const term = typeof displayedValue === 'string' ? displayedValue.toLocaleLowerCase() : '';\n\n return this.includes ? term.includes(searchLower) : term.startsWith(searchLower);\n }\n });\n }\n\n /** @hidden */\n private _defaultValueFn(value: any): any {\n return value;\n }\n\n /** @hidden */\n private _defaultDisplay(str: any): string {\n return str;\n }\n\n /** @hidden */\n private _defaultParse(str: any): string {\n return str;\n }\n\n /** @hidden */\n private _defaultTokenValidate(str: string): boolean {\n return !!str;\n }\n\n /** @hidden */\n private _popoverOpenHandle(open: boolean): void {\n this.open = open;\n }\n\n /** @hidden */\n private _propagateChange(emitInMobile?: boolean): void {\n if (!this.mobile || emitInMobile) {\n const selected = [...this._selectionModel.selected];\n this.onChange(selected);\n this.selectedChange.emit(selected);\n }\n }\n\n /** @hidden */\n private _shouldPopoverBeUpdated(previousLength: number, currentLength: number): boolean {\n return (\n !!this.popoverRef &&\n ((previousLength === 0 && currentLength === 1) || (previousLength === 1 && currentLength === 0))\n );\n }\n\n /** @hidden */\n private async _setUpMobileMode(): Promise<void> {\n const injector = Injector.create({\n providers: [{ provide: MULTI_INPUT_COMPONENT, useValue: this }],\n parent: this._injector\n });\n\n await this._dynamicComponentService.createDynamicModule(\n {\n listTemplate: this.listTemplate,\n controlTemplate: this.controlTemplate\n },\n MultiInputMobileModule,\n MultiInputMobileComponent,\n this._viewContainerRef,\n injector\n );\n }\n\n /** @hidden */\n private _resetSearchTerm(): void {\n this._searchTermCtrl.setValue('');\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n private _getOptionItem(item: any): OptionItem {\n const { label, value } = this._getValueAndLabel(item);\n return {\n item,\n label,\n value,\n isSelected: false\n };\n }\n\n /** @hidden */\n private _getValueAndLabel(itemOrValue: any, optionItems: OptionItem[] = []): OptionItemBase {\n if (optionItems.length > 0) {\n itemOrValue = optionItems.find((c) => c.value === itemOrValue)?.item ?? itemOrValue;\n }\n const defaultDisplay = typeof itemOrValue === 'object' ? itemOrValue[Object.keys(itemOrValue)[0]] : itemOrValue;\n const value = this.valueFn(itemOrValue) ?? defaultDisplay;\n const label = this.displayFn(itemOrValue) ?? defaultDisplay;\n return { label, value };\n }\n\n /** @hidden */\n private _getViewModel(): Observable<ViewModel> {\n return combineLatest([\n this._searchTermCtrl.valueChanges.pipe(startWith(this._searchTermCtrl.value)),\n this._selectionModel.changed.pipe(startWith(null)),\n this.optionItems$\n ]).pipe(\n map(([, , optionItems]) => {\n const selected = this.selected.map((c) => this._getValueAndLabel(c, optionItems));\n // not using \"searchTerm\" value from combineLatest as it will be wrong for late subscribers, if any\n const searchTerm = this._searchTermCtrl.value ?? '';\n const filtered = this.filterFn(\n optionItems.map((c) => c.item),\n searchTerm\n );\n const displayedOptions = (Array.isArray(filtered) ? filtered : []).map((item) =>\n this._getOptionItem(item)\n );\n displayedOptions.forEach((c) => (c.isSelected = selected.findIndex((d) => d.value === c.value) > -1));\n return { selectedOptions: selected, displayedOptions };\n })\n );\n }\n\n /** @hidden */\n @HostListener('focusout', ['$event'])\n private _focusOut(event: FocusEvent): void {\n if (!this.elementRef.nativeElement.contains(event.relatedTarget as Node)) {\n this.onTouched();\n }\n }\n\n /** @hidden */\n private async _getAriaLabel(): Promise<void> {\n const lang = await firstValueFrom(this._language);\n this.ariaLabel = this._translationResolver.resolve(lang, 'coreMultiInput.multiInputAriaLabel');\n }\n}\n\ninterface OptionItem<T = any> extends OptionItemBase {\n item: T;\n isSelected: boolean;\n}\ninterface OptionItemBase {\n label: string;\n value: any;\n}\n\ninterface ViewModel {\n selectedOptions: OptionItemBase[];\n displayedOptions: OptionItem[];\n}\n","<ng-container *ngIf=\"_viewModel$ | async as viewModel\">\n <div class=\"fd-multi-input fd-multi-input-custom\">\n <div class=\"fd-multi-input-field\">\n <ng-container [ngTemplateOutlet]=\"control\" *ngIf=\"mobile\"></ng-container>\n\n <fd-popover\n additionalBodyClass=\"fd-popover-custom-list\"\n *ngIf=\"!mobile\"\n [isOpen]=\"open\"\n (isOpenChange)=\"openChangeHandle($event)\"\n (input)=\"!open && openChangeHandle(true)\"\n [triggers]=\"[]\"\n [maxWidth]=\"_popoverMaxWidth\"\n [disabled]=\"disabled\"\n [fillControlMode]=\"fillControlMode\"\n class=\"fd-multi-input-popover-custom\"\n >\n <fd-popover-control>\n <form (submit)=\"_onSubmit()\">\n <ng-container *ngTemplateOutlet=\"control\"></ng-container>\n </form>\n </fd-popover-control>\n\n <fd-popover-body\n [attr.aria-hidden]=\"!open\"\n [class.fd-popover__body--hidden]=\"!viewModel.displayedOptions.length\"\n >\n <ng-container *ngTemplateOutlet=\"list\"></ng-container>\n\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n </div>\n </div>\n\n <ng-template #control>\n <fd-input-group\n class=\"fd-multi-input-input-group-custom\"\n [state]=\"state\"\n [buttonFocusable]=\"buttonFocusable\"\n [button]=\"displayAddonButton\"\n [disabled]=\"disabled\"\n [isExpanded]=\"open && !mobile && viewModel.displayedOptions.length > 0\"\n [isControl]=\"true\"\n [glyph]=\"displayAddonButton ? glyph : ''\"\n [iconTitle]=\"title\"\n (addOnButtonClicked)=\"_addOnButtonClicked($event)\"\n >\n <fd-tokenizer\n #tokenizer\n [compactCollapse]=\"compactCollapse\"\n [open]=\"open\"\n [tokenizerFocusable]=\"false\"\n (moreClickedEvent)=\"_moreClicked()\"\n class=\"fd-multi-input-tokenizer-custom\"\n tabindex=\"-1\"\n >\n <fd-token\n *ngFor=\"let option of viewModel.selectedOptions; trackBy: valueFn\"\n [disabled]=\"disabled\"\n (onCloseClick)=\"_onTokenClick(option.value, false, $event)\"\n (onRemove)=\"_onTokenClick(option.value, false)\"\n >\n <span [innerHtml]=\"option.label\"></span>\n </fd-token>\n\n <input\n type=\"text\"\n class=\"fd-input fd-tokenizer__input fd-multi-input-tokenizer-input\"\n autocomplete=\"off\"\n fd-form-control\n fd-input-group-input\n fdkAutoComplete\n (onComplete)=\"_handleComplete($event)\"\n #searchInputElement\n [displayFn]=\"displayFn\"\n [inputText]=\"_searchTermCtrl.value || ''\"\n [options]=\"dropdownValues\"\n [enable]=\"autoComplete && !mobile\"\n [placeholder]=\"placeholder\"\n [formControl]=\"_searchTermCtrl\"\n [attr.aria-required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n (keydown)=\"_handleInputKeydown($event)\"\n [attr.id]=\"inputId\"\n (focus)=\"tokenizer._showAllTokens()\"\n (blur)=\"tokenizer._hideTokens()\"\n />\n </fd-tokenizer>\n </fd-input-group>\n </ng-template>\n\n <ng-template #list>\n <ul\n *ngIf=\"viewModel.displayedOptions.length\"\n fd-list\n class=\"fd-multi-input-menu-overflow\"\n [selection]=\"true\"\n [mobileMode]=\"mobile\"\n [style.maxHeight]=\"!mobile ? maxHeight : 'auto'\"\n [byline]=\"byline\"\n (focusEscapeList)=\"handleListFocusEscape($event)\"\n [style.minWidth]=\"'100%'\"\n >\n <li\n *ngFor=\"let option of viewModel.displayedOptions; index as idx; trackBy: valueFn\"\n fd-list-item\n [attr.aria-label]=\"option.label\"\n (click)=\"_onCheckboxClick(option.value, $event, idx, true)\"\n (keyup)=\"_onCheckboxKeyup(option.value, $event, idx)\"\n [selected]=\"option.isSelected\"\n >\n <fd-checkbox (click)=\"_onCheckboxClick(option.value, $event, idx)\" [value]=\"option.isSelected\">\n <!-- TODO -->\n </fd-checkbox>\n\n <ng-container\n [ngTemplateOutlet]=\"itemSource\"\n [ngTemplateOutletContext]=\"{ option: option }\"\n ></ng-container>\n </li>\n\n <li\n *ngIf=\"showAllButton && viewModel.displayedOptions.length < dropdownValues.length\"\n fd-list-item\n class=\"fd-multi-input-show-all\"\n (keyDown)=\"_showAllKeyDown($event)\"\n (click)=\"_showAllClicked($event)\"\n >\n <a fd-link tabindex=\"0\">Show All ({{ dropdownValues.length }})</a>\n </li>\n </ul>\n </ng-template>\n\n <ng-template let-option=\"option\" #itemSource>\n <span\n *ngIf=\"!itemTemplate\"\n fd-list-title\n [innerHtml]=\"option.label | highlight : _searchTermCtrl.value || '' : highlight\"\n ></span>\n\n <ng-container *ngIf=\"itemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: option.item }\"\n ></ng-container>\n </ng-container>\n </ng-template>\n</ng-container>\n","import { Directive, forwardRef } from '@angular/core';\nimport { CONTENT_DENSITY_DIRECTIVE, DeprecatedCompactDirective } from '@fundamental-ngx/core/content-density';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-multi-input[compact]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedMultiInputCompactDirective)\n }\n ]\n})\nexport class DeprecatedMultiInputCompactDirective extends DeprecatedCompactDirective {\n /** @hidden */\n constructor() {\n super('fd-multi-input');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MultiInputComponent } from './multi-input.component';\nimport { TokenModule } from '@fundamental-ngx/core/token';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { PipeModule } from '@fundamental-ngx/cdk/utils';\nimport { InputGroupModule } from '@fundamental-ngx/core/input-group';\nimport { FormModule } from '@fundamental-ngx/core/form';\nimport { CheckboxModule } from '@fundamental-ngx/core/checkbox';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { LinkModule } from '@fundamental-ngx/core/link';\nimport { AutoCompleteModule } from '@fundamental-ngx/cdk/utils';\nimport { DeprecatedMultiInputCompactDirective } from './deprecated-multi-input-compact.directive';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\n\n@NgModule({\n declarations: [MultiInputComponent, DeprecatedMultiInputCompactDirective],\n imports: [\n CommonModule,\n TokenModule,\n FormsModule,\n ReactiveFormsModule,\n ListModule,\n PopoverModule,\n PipeModule,\n InputGroupModule,\n FormModule,\n CheckboxModule,\n LinkModule,\n AutoCompleteModule,\n ContentDensityModule\n ],\n exports: [MultiInputComponent, DeprecatedMultiInputCompactDirective, ContentDensityModule]\n})\nexport class MultiInputModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","i6","i2","i3","i5"],"mappings":"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"}