@fundamental-ngx/core 0.37.0-rc.2 → 0.37.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 (373) hide show
  1. package/carousel/carousel-item/carousel-item.component.d.ts +2 -3
  2. package/carousel/carousel.component.d.ts +4 -3
  3. package/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.d.ts +4 -0
  4. package/esm2020/action-bar/action-bar.component.mjs +2 -2
  5. package/esm2020/action-sheet/action-sheet.component.mjs +3 -3
  6. package/esm2020/alert/alert.component.mjs +2 -2
  7. package/esm2020/avatar/avatar.component.mjs +7 -3
  8. package/esm2020/avatar-group/avatar-group.component.mjs +2 -2
  9. package/esm2020/bar/bar.component.mjs +2 -2
  10. package/esm2020/breadcrumb/breadcrumb.component.mjs +2 -2
  11. package/esm2020/busy-indicator/busy-indicator.component.mjs +2 -2
  12. package/esm2020/button/button.component.mjs +2 -2
  13. package/esm2020/calendar/calendar.component.mjs +2 -2
  14. package/esm2020/card/card.component.mjs +2 -2
  15. package/esm2020/carousel/carousel-item/carousel-item.component.mjs +5 -7
  16. package/esm2020/carousel/carousel.component.mjs +31 -27
  17. package/esm2020/checkbox/checkbox/checkbox.component.mjs +2 -2
  18. package/esm2020/combobox/combobox.component.mjs +1 -1
  19. package/esm2020/date-picker/date-picker.component.mjs +1 -1
  20. package/esm2020/datetime-picker/datetime-picker.component.mjs +1 -1
  21. package/esm2020/dialog/dialog.component.mjs +2 -2
  22. package/esm2020/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.mjs +7 -3
  23. package/esm2020/dynamic-page/dynamic-page.component.mjs +2 -2
  24. package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +2 -2
  25. package/esm2020/facets/facet/facet.component.mjs +2 -2
  26. package/esm2020/feed-input/feed-input.component.mjs +2 -2
  27. package/esm2020/feed-list-item/components/list/feed-list.component.mjs +2 -2
  28. package/esm2020/file-uploader/file-uploader.component.mjs +8 -12
  29. package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +2 -2
  30. package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +2 -2
  31. package/esm2020/form/fieldset/fieldset.component.mjs +2 -2
  32. package/esm2020/form/form-control/form-control.component.mjs +2 -2
  33. package/esm2020/form/form-group/form-group.component.mjs +2 -2
  34. package/esm2020/form/form-header/form-header.component.mjs +2 -2
  35. package/esm2020/form/form-input-message-group/form-input-message-group.component.mjs +3 -3
  36. package/esm2020/form/form-item/form-item.component.mjs +2 -2
  37. package/esm2020/form/form-label/form-label.component.mjs +2 -2
  38. package/esm2020/form/form-message/form-message.component.mjs +2 -2
  39. package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +2 -2
  40. package/esm2020/icon/icon.component.mjs +2 -2
  41. package/esm2020/illustrated-message/illustrated-message.component.mjs +2 -2
  42. package/esm2020/info-label/info-label.component.mjs +2 -2
  43. package/esm2020/inline-help/inline-help.directive.mjs +3 -3
  44. package/esm2020/input-group/input-group.component.mjs +2 -2
  45. package/esm2020/layout-grid/layout-grid.component.mjs +2 -2
  46. package/esm2020/layout-panel/layout-panel.component.mjs +2 -2
  47. package/esm2020/link/link.component.mjs +2 -2
  48. package/esm2020/list/list.component.mjs +2 -2
  49. package/esm2020/menu/menu-item/menu-item.component.mjs +43 -7
  50. package/esm2020/menu/menu.component.mjs +44 -33
  51. package/esm2020/menu/services/menu.service.mjs +14 -13
  52. package/esm2020/message-box/message-box.component.mjs +2 -2
  53. package/esm2020/message-page/message-page.component.mjs +2 -2
  54. package/esm2020/message-strip/message-strip.component.mjs +2 -2
  55. package/esm2020/message-toast/message-toast.component.mjs +2 -2
  56. package/esm2020/multi-input/multi-input.component.mjs +1 -1
  57. package/esm2020/nested-list/nested-list-popover/nested-list-popover.component.mjs +1 -1
  58. package/esm2020/notification/notification/notification.component.mjs +2 -2
  59. package/esm2020/object-identifier/object-identifier.component.mjs +2 -2
  60. package/esm2020/object-marker/object-marker.component.mjs +2 -2
  61. package/esm2020/object-number/object-number.component.mjs +2 -2
  62. package/esm2020/object-status/object-status.component.mjs +2 -2
  63. package/esm2020/overflow-layout/overflow-layout.component.mjs +1 -1
  64. package/esm2020/pagination/pagination.component.mjs +2 -2
  65. package/esm2020/panel/panel.component.mjs +2 -2
  66. package/esm2020/popover/base/base-popover.class.mjs +10 -2
  67. package/esm2020/popover/popover-body/popover-body.component.mjs +36 -35
  68. package/esm2020/popover/popover-service/popover.service.mjs +3 -1
  69. package/esm2020/product-switch/product-switch/product-switch.component.mjs +1 -1
  70. package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +2 -2
  71. package/esm2020/progress-indicator/progress-indicator.component.mjs +2 -2
  72. package/esm2020/quick-view/quick-view/quick-view.component.mjs +2 -2
  73. package/esm2020/radio/radio-button/radio-button.component.mjs +2 -2
  74. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +2 -2
  75. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +2 -2
  76. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +2 -2
  77. package/esm2020/scrollbar/scrollbar.component.mjs +2 -2
  78. package/esm2020/segmented-button/segmented-button.component.mjs +2 -2
  79. package/esm2020/select/select.component.mjs +2 -2
  80. package/esm2020/shared/interfaces/popover-position.mjs +1 -28
  81. package/esm2020/shellbar/product-menu/product-menu.component.mjs +1 -1
  82. package/esm2020/shellbar/shellbar.component.mjs +2 -2
  83. package/esm2020/shellbar/user-menu/shellbar-user-menu.component.mjs +1 -1
  84. package/esm2020/side-navigation/side-navigation.component.mjs +2 -2
  85. package/esm2020/slider/slider.component.mjs +2 -2
  86. package/esm2020/split-button/split-button.component.mjs +8 -8
  87. package/esm2020/splitter/splitter.component.mjs +2 -2
  88. package/esm2020/status-indicator/status-indicator.component.mjs +2 -2
  89. package/esm2020/step-input/step-input.component.mjs +2 -2
  90. package/esm2020/switch/switch.component.mjs +2 -2
  91. package/esm2020/table/table-wrapper.component.mjs +2 -2
  92. package/esm2020/table/table.component.mjs +2 -2
  93. package/esm2020/tabs/tab-list.component.mjs +2 -2
  94. package/esm2020/tabs/tab-nav/tab-nav.component.mjs +2 -2
  95. package/esm2020/text/text.component.mjs +2 -2
  96. package/esm2020/tile/tile.component.mjs +2 -2
  97. package/esm2020/time/time.component.mjs +2 -2
  98. package/esm2020/time-picker/time-picker.component.mjs +1 -1
  99. package/esm2020/title/title.component.mjs +2 -2
  100. package/esm2020/token/token.component.mjs +2 -2
  101. package/esm2020/token/tokenizer.component.mjs +2 -2
  102. package/esm2020/toolbar/toolbar.component.mjs +2 -2
  103. package/esm2020/tree/tree-child.component.mjs +2 -2
  104. package/esm2020/tree/tree.component.mjs +2 -2
  105. package/esm2020/upload-collection/upload-collection.component.mjs +2 -2
  106. package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +2 -2
  107. package/esm2020/vertical-navigation/vertical-navigation.component.mjs +2 -2
  108. package/esm2020/wizard/wizard.component.mjs +2 -2
  109. package/fesm2015/fundamental-ngx-core-action-bar.mjs +2 -2
  110. package/fesm2015/fundamental-ngx-core-action-sheet.mjs +2 -2
  111. package/fesm2015/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  112. package/fesm2015/fundamental-ngx-core-alert.mjs +2 -2
  113. package/fesm2015/fundamental-ngx-core-avatar-group.mjs +2 -2
  114. package/fesm2015/fundamental-ngx-core-avatar.mjs +6 -2
  115. package/fesm2015/fundamental-ngx-core-avatar.mjs.map +1 -1
  116. package/fesm2015/fundamental-ngx-core-bar.mjs +2 -2
  117. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +2 -2
  118. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  119. package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +2 -2
  120. package/fesm2015/fundamental-ngx-core-button.mjs +2 -2
  121. package/fesm2015/fundamental-ngx-core-button.mjs.map +1 -1
  122. package/fesm2015/fundamental-ngx-core-calendar.mjs +2 -2
  123. package/fesm2015/fundamental-ngx-core-card.mjs +2 -2
  124. package/fesm2015/fundamental-ngx-core-carousel.mjs +32 -30
  125. package/fesm2015/fundamental-ngx-core-carousel.mjs.map +1 -1
  126. package/fesm2015/fundamental-ngx-core-checkbox.mjs +2 -2
  127. package/fesm2015/fundamental-ngx-core-combobox.mjs +1 -1
  128. package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
  129. package/fesm2015/fundamental-ngx-core-date-picker.mjs +1 -1
  130. package/fesm2015/fundamental-ngx-core-date-picker.mjs.map +1 -1
  131. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +1 -1
  132. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  133. package/fesm2015/fundamental-ngx-core-dialog.mjs +2 -2
  134. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +8 -4
  135. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  136. package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  137. package/fesm2015/fundamental-ngx-core-facets.mjs +2 -2
  138. package/fesm2015/fundamental-ngx-core-feed-input.mjs +2 -2
  139. package/fesm2015/fundamental-ngx-core-feed-input.mjs.map +1 -1
  140. package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +2 -2
  141. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +6 -10
  142. package/fesm2015/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  143. package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  144. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  145. package/fesm2015/fundamental-ngx-core-form.mjs +16 -16
  146. package/fesm2015/fundamental-ngx-core-form.mjs.map +1 -1
  147. package/fesm2015/fundamental-ngx-core-grid-list.mjs +2 -2
  148. package/fesm2015/fundamental-ngx-core-icon.mjs +2 -2
  149. package/fesm2015/fundamental-ngx-core-icon.mjs.map +1 -1
  150. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +2 -2
  151. package/fesm2015/fundamental-ngx-core-info-label.mjs +2 -2
  152. package/fesm2015/fundamental-ngx-core-info-label.mjs.map +1 -1
  153. package/fesm2015/fundamental-ngx-core-inline-help.mjs +2 -2
  154. package/fesm2015/fundamental-ngx-core-inline-help.mjs.map +1 -1
  155. package/fesm2015/fundamental-ngx-core-input-group.mjs +2 -2
  156. package/fesm2015/fundamental-ngx-core-layout-grid.mjs +2 -2
  157. package/fesm2015/fundamental-ngx-core-layout-panel.mjs +2 -2
  158. package/fesm2015/fundamental-ngx-core-link.mjs +2 -2
  159. package/fesm2015/fundamental-ngx-core-link.mjs.map +1 -1
  160. package/fesm2015/fundamental-ngx-core-list.mjs +2 -2
  161. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  162. package/fesm2015/fundamental-ngx-core-menu.mjs +99 -49
  163. package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
  164. package/fesm2015/fundamental-ngx-core-message-box.mjs +2 -2
  165. package/fesm2015/fundamental-ngx-core-message-page.mjs +2 -2
  166. package/fesm2015/fundamental-ngx-core-message-strip.mjs +2 -2
  167. package/fesm2015/fundamental-ngx-core-message-toast.mjs +2 -2
  168. package/fesm2015/fundamental-ngx-core-multi-input.mjs +1 -1
  169. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  170. package/fesm2015/fundamental-ngx-core-nested-list.mjs +1 -1
  171. package/fesm2015/fundamental-ngx-core-nested-list.mjs.map +1 -1
  172. package/fesm2015/fundamental-ngx-core-notification.mjs +2 -2
  173. package/fesm2015/fundamental-ngx-core-object-identifier.mjs +2 -2
  174. package/fesm2015/fundamental-ngx-core-object-marker.mjs +2 -2
  175. package/fesm2015/fundamental-ngx-core-object-marker.mjs.map +1 -1
  176. package/fesm2015/fundamental-ngx-core-object-number.mjs +2 -2
  177. package/fesm2015/fundamental-ngx-core-object-status.mjs +2 -2
  178. package/fesm2015/fundamental-ngx-core-object-status.mjs.map +1 -1
  179. package/fesm2015/fundamental-ngx-core-overflow-layout.mjs +1 -1
  180. package/fesm2015/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  181. package/fesm2015/fundamental-ngx-core-pagination.mjs +2 -2
  182. package/fesm2015/fundamental-ngx-core-panel.mjs +2 -2
  183. package/fesm2015/fundamental-ngx-core-popover.mjs +47 -35
  184. package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
  185. package/fesm2015/fundamental-ngx-core-product-switch.mjs +3 -3
  186. package/fesm2015/fundamental-ngx-core-product-switch.mjs.map +1 -1
  187. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +2 -2
  188. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs.map +1 -1
  189. package/fesm2015/fundamental-ngx-core-quick-view.mjs +2 -2
  190. package/fesm2015/fundamental-ngx-core-quick-view.mjs.map +1 -1
  191. package/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
  192. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +2 -2
  193. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  194. package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  195. package/fesm2015/fundamental-ngx-core-scrollbar.mjs +2 -2
  196. package/fesm2015/fundamental-ngx-core-segmented-button.mjs +2 -2
  197. package/fesm2015/fundamental-ngx-core-select.mjs +2 -2
  198. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  199. package/fesm2015/fundamental-ngx-core-shared.mjs +1 -28
  200. package/fesm2015/fundamental-ngx-core-shared.mjs.map +1 -1
  201. package/fesm2015/fundamental-ngx-core-shellbar.mjs +4 -4
  202. package/fesm2015/fundamental-ngx-core-shellbar.mjs.map +1 -1
  203. package/fesm2015/fundamental-ngx-core-side-navigation.mjs +2 -2
  204. package/fesm2015/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  205. package/fesm2015/fundamental-ngx-core-slider.mjs +2 -2
  206. package/fesm2015/fundamental-ngx-core-slider.mjs.map +1 -1
  207. package/fesm2015/fundamental-ngx-core-split-button.mjs +7 -7
  208. package/fesm2015/fundamental-ngx-core-split-button.mjs.map +1 -1
  209. package/fesm2015/fundamental-ngx-core-splitter.mjs +2 -2
  210. package/fesm2015/fundamental-ngx-core-status-indicator.mjs +2 -2
  211. package/fesm2015/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  212. package/fesm2015/fundamental-ngx-core-step-input.mjs +2 -2
  213. package/fesm2015/fundamental-ngx-core-switch.mjs +2 -2
  214. package/fesm2015/fundamental-ngx-core-table.mjs +4 -4
  215. package/fesm2015/fundamental-ngx-core-tabs.mjs +4 -4
  216. package/fesm2015/fundamental-ngx-core-tabs.mjs.map +1 -1
  217. package/fesm2015/fundamental-ngx-core-text.mjs +2 -2
  218. package/fesm2015/fundamental-ngx-core-tile.mjs +2 -2
  219. package/fesm2015/fundamental-ngx-core-time-picker.mjs +1 -1
  220. package/fesm2015/fundamental-ngx-core-time-picker.mjs.map +1 -1
  221. package/fesm2015/fundamental-ngx-core-time.mjs +2 -2
  222. package/fesm2015/fundamental-ngx-core-title.mjs +2 -2
  223. package/fesm2015/fundamental-ngx-core-token.mjs +4 -4
  224. package/fesm2015/fundamental-ngx-core-token.mjs.map +1 -1
  225. package/fesm2015/fundamental-ngx-core-toolbar.mjs +2 -2
  226. package/fesm2015/fundamental-ngx-core-toolbar.mjs.map +1 -1
  227. package/fesm2015/fundamental-ngx-core-tree.mjs +3 -3
  228. package/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
  229. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +2 -2
  230. package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  231. package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  232. package/fesm2015/fundamental-ngx-core-wizard.mjs +2 -2
  233. package/fesm2020/fundamental-ngx-core-action-bar.mjs +2 -2
  234. package/fesm2020/fundamental-ngx-core-action-sheet.mjs +2 -2
  235. package/fesm2020/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  236. package/fesm2020/fundamental-ngx-core-alert.mjs +2 -2
  237. package/fesm2020/fundamental-ngx-core-avatar-group.mjs +2 -2
  238. package/fesm2020/fundamental-ngx-core-avatar.mjs +6 -2
  239. package/fesm2020/fundamental-ngx-core-avatar.mjs.map +1 -1
  240. package/fesm2020/fundamental-ngx-core-bar.mjs +2 -2
  241. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +2 -2
  242. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  243. package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +2 -2
  244. package/fesm2020/fundamental-ngx-core-button.mjs +2 -2
  245. package/fesm2020/fundamental-ngx-core-button.mjs.map +1 -1
  246. package/fesm2020/fundamental-ngx-core-calendar.mjs +2 -2
  247. package/fesm2020/fundamental-ngx-core-card.mjs +2 -2
  248. package/fesm2020/fundamental-ngx-core-carousel.mjs +32 -30
  249. package/fesm2020/fundamental-ngx-core-carousel.mjs.map +1 -1
  250. package/fesm2020/fundamental-ngx-core-checkbox.mjs +2 -2
  251. package/fesm2020/fundamental-ngx-core-combobox.mjs +1 -1
  252. package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
  253. package/fesm2020/fundamental-ngx-core-date-picker.mjs +1 -1
  254. package/fesm2020/fundamental-ngx-core-date-picker.mjs.map +1 -1
  255. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +1 -1
  256. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  257. package/fesm2020/fundamental-ngx-core-dialog.mjs +2 -2
  258. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +8 -4
  259. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  260. package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  261. package/fesm2020/fundamental-ngx-core-facets.mjs +2 -2
  262. package/fesm2020/fundamental-ngx-core-feed-input.mjs +2 -2
  263. package/fesm2020/fundamental-ngx-core-feed-input.mjs.map +1 -1
  264. package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +2 -2
  265. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +6 -10
  266. package/fesm2020/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  267. package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  268. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  269. package/fesm2020/fundamental-ngx-core-form.mjs +16 -16
  270. package/fesm2020/fundamental-ngx-core-form.mjs.map +1 -1
  271. package/fesm2020/fundamental-ngx-core-grid-list.mjs +2 -2
  272. package/fesm2020/fundamental-ngx-core-icon.mjs +2 -2
  273. package/fesm2020/fundamental-ngx-core-icon.mjs.map +1 -1
  274. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +2 -2
  275. package/fesm2020/fundamental-ngx-core-info-label.mjs +2 -2
  276. package/fesm2020/fundamental-ngx-core-info-label.mjs.map +1 -1
  277. package/fesm2020/fundamental-ngx-core-inline-help.mjs +2 -2
  278. package/fesm2020/fundamental-ngx-core-inline-help.mjs.map +1 -1
  279. package/fesm2020/fundamental-ngx-core-input-group.mjs +2 -2
  280. package/fesm2020/fundamental-ngx-core-layout-grid.mjs +2 -2
  281. package/fesm2020/fundamental-ngx-core-layout-panel.mjs +2 -2
  282. package/fesm2020/fundamental-ngx-core-link.mjs +2 -2
  283. package/fesm2020/fundamental-ngx-core-link.mjs.map +1 -1
  284. package/fesm2020/fundamental-ngx-core-list.mjs +2 -2
  285. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  286. package/fesm2020/fundamental-ngx-core-menu.mjs +97 -49
  287. package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
  288. package/fesm2020/fundamental-ngx-core-message-box.mjs +2 -2
  289. package/fesm2020/fundamental-ngx-core-message-page.mjs +2 -2
  290. package/fesm2020/fundamental-ngx-core-message-strip.mjs +2 -2
  291. package/fesm2020/fundamental-ngx-core-message-toast.mjs +2 -2
  292. package/fesm2020/fundamental-ngx-core-multi-input.mjs +1 -1
  293. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  294. package/fesm2020/fundamental-ngx-core-nested-list.mjs +1 -1
  295. package/fesm2020/fundamental-ngx-core-nested-list.mjs.map +1 -1
  296. package/fesm2020/fundamental-ngx-core-notification.mjs +2 -2
  297. package/fesm2020/fundamental-ngx-core-object-identifier.mjs +2 -2
  298. package/fesm2020/fundamental-ngx-core-object-marker.mjs +2 -2
  299. package/fesm2020/fundamental-ngx-core-object-marker.mjs.map +1 -1
  300. package/fesm2020/fundamental-ngx-core-object-number.mjs +2 -2
  301. package/fesm2020/fundamental-ngx-core-object-status.mjs +2 -2
  302. package/fesm2020/fundamental-ngx-core-object-status.mjs.map +1 -1
  303. package/fesm2020/fundamental-ngx-core-overflow-layout.mjs +1 -1
  304. package/fesm2020/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  305. package/fesm2020/fundamental-ngx-core-pagination.mjs +2 -2
  306. package/fesm2020/fundamental-ngx-core-panel.mjs +2 -2
  307. package/fesm2020/fundamental-ngx-core-popover.mjs +47 -35
  308. package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
  309. package/fesm2020/fundamental-ngx-core-product-switch.mjs +3 -3
  310. package/fesm2020/fundamental-ngx-core-product-switch.mjs.map +1 -1
  311. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +2 -2
  312. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs.map +1 -1
  313. package/fesm2020/fundamental-ngx-core-quick-view.mjs +2 -2
  314. package/fesm2020/fundamental-ngx-core-quick-view.mjs.map +1 -1
  315. package/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
  316. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +2 -2
  317. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  318. package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  319. package/fesm2020/fundamental-ngx-core-scrollbar.mjs +2 -2
  320. package/fesm2020/fundamental-ngx-core-segmented-button.mjs +2 -2
  321. package/fesm2020/fundamental-ngx-core-select.mjs +2 -2
  322. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  323. package/fesm2020/fundamental-ngx-core-shared.mjs +1 -28
  324. package/fesm2020/fundamental-ngx-core-shared.mjs.map +1 -1
  325. package/fesm2020/fundamental-ngx-core-shellbar.mjs +4 -4
  326. package/fesm2020/fundamental-ngx-core-shellbar.mjs.map +1 -1
  327. package/fesm2020/fundamental-ngx-core-side-navigation.mjs +2 -2
  328. package/fesm2020/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  329. package/fesm2020/fundamental-ngx-core-slider.mjs +2 -2
  330. package/fesm2020/fundamental-ngx-core-slider.mjs.map +1 -1
  331. package/fesm2020/fundamental-ngx-core-split-button.mjs +7 -7
  332. package/fesm2020/fundamental-ngx-core-split-button.mjs.map +1 -1
  333. package/fesm2020/fundamental-ngx-core-splitter.mjs +2 -2
  334. package/fesm2020/fundamental-ngx-core-status-indicator.mjs +2 -2
  335. package/fesm2020/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  336. package/fesm2020/fundamental-ngx-core-step-input.mjs +2 -2
  337. package/fesm2020/fundamental-ngx-core-switch.mjs +2 -2
  338. package/fesm2020/fundamental-ngx-core-table.mjs +4 -4
  339. package/fesm2020/fundamental-ngx-core-tabs.mjs +4 -4
  340. package/fesm2020/fundamental-ngx-core-tabs.mjs.map +1 -1
  341. package/fesm2020/fundamental-ngx-core-text.mjs +2 -2
  342. package/fesm2020/fundamental-ngx-core-tile.mjs +2 -2
  343. package/fesm2020/fundamental-ngx-core-time-picker.mjs +1 -1
  344. package/fesm2020/fundamental-ngx-core-time-picker.mjs.map +1 -1
  345. package/fesm2020/fundamental-ngx-core-time.mjs +2 -2
  346. package/fesm2020/fundamental-ngx-core-title.mjs +2 -2
  347. package/fesm2020/fundamental-ngx-core-token.mjs +4 -4
  348. package/fesm2020/fundamental-ngx-core-token.mjs.map +1 -1
  349. package/fesm2020/fundamental-ngx-core-toolbar.mjs +2 -2
  350. package/fesm2020/fundamental-ngx-core-toolbar.mjs.map +1 -1
  351. package/fesm2020/fundamental-ngx-core-tree.mjs +3 -3
  352. package/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
  353. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +2 -2
  354. package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  355. package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  356. package/fesm2020/fundamental-ngx-core-wizard.mjs +2 -2
  357. package/file-uploader/file-uploader.component.d.ts +0 -2
  358. package/fundamental-ngx-core-v0.37.0-rc.21.tgz +0 -0
  359. package/menu/menu-item/menu-item.component.d.ts +27 -7
  360. package/menu/menu.component.d.ts +15 -10
  361. package/menu/services/menu.service.d.ts +3 -3
  362. package/package.json +11 -8
  363. package/popover/base/base-popover.class.d.ts +5 -1
  364. package/popover/popover-body/popover-body.component.d.ts +7 -10
  365. package/schematics/migrations/migration-0-37/index.js +14 -1
  366. package/schematics/migrations/migration-0-37/index.js.map +1 -1
  367. package/schematics/migrations/migration-0-37/index.ts +18 -1
  368. package/schematics/ng-add/index.js +6 -6
  369. package/schematics/ng-add/index.js.map +1 -1
  370. package/schematics/ng-add/index.ts +4 -4
  371. package/shared/interfaces/popover-position.d.ts +0 -8
  372. package/styles/fundamental-ngx-core.css +1 -0
  373. package/fundamental-ngx-core-v0.37.0-rc.2.tgz +0 -0
@@ -20,6 +20,7 @@ import * as i5 from '@fundamental-ngx/core/bar';
20
20
  import * as i7 from '@fundamental-ngx/core/title';
21
21
  import * as i8 from '@fundamental-ngx/core/button';
22
22
  import { ButtonModule } from '@fundamental-ngx/core/button';
23
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
23
24
 
24
25
  /**
25
26
  * The directive that represents the menu title.
@@ -133,8 +134,8 @@ class MenuService {
133
134
  return this._rtlService?.rtl.value;
134
135
  }
135
136
  /** Reference to menu component */
136
- get menu() {
137
- return this._menu;
137
+ get menuComponent() {
138
+ return this._menuComponent;
138
139
  }
139
140
  /** Returns menu mode observable */
140
141
  get isMobileMode() {
@@ -175,9 +176,9 @@ class MenuService {
175
176
  this._emitActivePath();
176
177
  }
177
178
  /** Initializes menu service based on given Menu Component */
178
- setMenuRoot(menu) {
179
- this._menu = menu;
180
- this.menuMap = this._buildMenuMap(this._menu);
179
+ setMenuComponent(menu) {
180
+ this._menuComponent = menu;
181
+ this.menuMap = this._buildMenuMap(this._menuComponent);
181
182
  }
182
183
  /** Clears Active Node Path and resets Focused Node */
183
184
  resetMenuState() {
@@ -189,7 +190,7 @@ class MenuService {
189
190
  * - Validates Active Node Path
190
191
  * - Validates Focused Node */
191
192
  rebuildMenu() {
192
- this.menuMap = this._buildMenuMap(this._menu);
193
+ this.menuMap = this._buildMenuMap(this._menuComponent);
193
194
  const deadNode = this.activeNodePath.find((node) => !this.menuMap.has(node.item));
194
195
  if (deadNode?.item) {
195
196
  this.setActive(false, deadNode.item);
@@ -255,7 +256,7 @@ class MenuService {
255
256
  item: menuItem,
256
257
  parent: null,
257
258
  children: menuItem.submenu
258
- ? menuItem.submenu.menuItems.toArray().map((subMenuItem) => buildNode(subMenuItem))
259
+ ? menuItem.submenu.menuItems.map((subMenuItem) => buildNode(subMenuItem))
259
260
  : []
260
261
  };
261
262
  }
@@ -268,11 +269,12 @@ class MenuService {
268
269
  node.children.forEach((childNode) => toMap(childNode, map));
269
270
  return map;
270
271
  }
272
+ const rootItems = menu._menuItems.filter((rootItem) => !rootItem.parentSubmenu);
271
273
  /** root item */
272
274
  const menuTree = {
273
275
  item: null,
274
276
  parent: null,
275
- children: menu.menuItems.toArray().map((item) => buildNode(item))
277
+ children: rootItems.map((item) => buildNode(item))
276
278
  };
277
279
  setParents(menuTree, null);
278
280
  return toMap(menuTree);
@@ -282,8 +284,8 @@ class MenuService {
282
284
  const menuNode = this.menuMap.get(menuItem);
283
285
  const children = menuNode?.parent?.children.map((i) => i.item);
284
286
  const activeSibling = this.activeNodePath.find((i) => children?.includes(i.item));
285
- const activeParentIndex = this.activeNodePath.indexOf(menuNode?.parent);
286
287
  if (activeSibling) {
288
+ const activeParentIndex = this.activeNodePath.indexOf(menuNode?.parent);
287
289
  this._removeFromActivePath(activeParentIndex !== -1 ? activeSibling.item : this.activeNodePath[0].item);
288
290
  }
289
291
  }
@@ -334,8 +336,8 @@ class MenuService {
334
336
  focusRight(focusedNode);
335
337
  }
336
338
  }
337
- else if (KeyUtil.isKeyCode(event, ESCAPE) && this.menu.closeOnEscapeKey) {
338
- this.menu.close();
339
+ else if (KeyUtil.isKeyCode(event, ESCAPE) && this.menuComponent.closeOnEscapeKey) {
340
+ this.menuComponent.close();
339
341
  }
340
342
  else {
341
343
  matched = false;
@@ -346,7 +348,7 @@ class MenuService {
346
348
  }
347
349
  /** @hidden Emits an array of active menu items */
348
350
  _emitActivePath() {
349
- this.menu.activePath.emit(this.activeNodePath.map((node) => node.item));
351
+ this.menuComponent.activePath.emit(this.activeNodePath.map((node) => node.item));
350
352
  }
351
353
  /** @hidden Depending on direction returns closest enabled sibling of given node */
352
354
  _closestEnabled(node, direction) {
@@ -394,6 +396,13 @@ class MenuItemComponent {
394
396
  this._hoverSubscriptions = new Subscription();
395
397
  }
396
398
  /** @hidden */
399
+ ngOnInit() {
400
+ if (this.parentSubmenu) {
401
+ this._submenu = this.parentSubmenu;
402
+ this._submenu._registerItem(this);
403
+ }
404
+ }
405
+ /** @hidden */
397
406
  ngAfterContentInit() {
398
407
  this._setMenuService();
399
408
  this._initialiseItemState();
@@ -412,12 +421,15 @@ class MenuItemComponent {
412
421
  }
413
422
  /** @hidden */
414
423
  ngOnDestroy() {
424
+ if (this.parentSubmenu) {
425
+ this._submenu?._unregisterItem(this);
426
+ }
415
427
  this._subscriptions.unsubscribe();
416
428
  this._hoverSubscriptions.unsubscribe();
417
429
  }
418
430
  /** Whether menu item has popup (desktop mode) */
419
431
  get hasPopup() {
420
- return !!this.submenu && (!this.menuService?.menu || !this.menuService?.menu.mobile);
432
+ return !!this.submenu && (!this.menuService?.menuComponent || !this.menuService?.menuComponent.mobile);
421
433
  }
422
434
  /** Focuses Menu Item interactive element */
423
435
  focus() {
@@ -450,7 +462,7 @@ class MenuItemComponent {
450
462
  const hoverSubscriptions = new Subscription();
451
463
  const mouseEnter$ = fromEvent(this.menuInteractive.elementRef.nativeElement, 'mouseenter');
452
464
  const mouseLeave$ = fromEvent(this.menuInteractive.elementRef.nativeElement, 'mouseleave');
453
- const timerFactory$ = defer(() => timer(this.menuService ? this.menuService.menu.openOnHoverTime : 0).pipe(takeUntil(mouseLeave$)));
465
+ const timerFactory$ = defer(() => timer(this.menuService ? this.menuService.menuComponent.openOnHoverTime : 0).pipe(takeUntil(mouseLeave$)));
454
466
  // Set active on hover
455
467
  hoverSubscriptions.add(mouseEnter$
456
468
  .pipe(filter(() => !!this.menuService), switchMap(() => timerFactory$))
@@ -497,7 +509,7 @@ class MenuItemComponent {
497
509
  }
498
510
  }
499
511
  MenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MenuItemComponent, deps: [{ token: i0.ElementRef }, { token: MenuService, optional: true }, { token: i0.ChangeDetectorRef }, { token: SUBMENU, optional: true }], target: i0.ɵɵFactoryTarget.Component });
500
- MenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MenuItemComponent, selector: "li[fd-menu-item]", inputs: { disabled: "disabled", itemId: "itemId", submenu: "submenu" }, outputs: { onSelect: "onSelect" }, host: { attributes: { "attr.role": "menuitem" }, properties: { "class.fd-menu__item": "true" } }, queries: [{ propertyName: "menuItemTitle", first: true, predicate: MenuTitleDirective, descendants: true }, { propertyName: "menuInteractive", first: true, predicate: MenuInteractiveDirective, descendants: true }], exportAs: ["fd-menu-item"], usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n\n<ng-container *ngIf=\"hasPopup && submenu\">\n <ul\n class=\"fd-menu__sublist\"\n role=\"menu\"\n [attr.id]=\"itemId\"\n [attr.aria-hidden]=\"!submenuVisible\"\n [attr.aria-label]=\"submenu.ariaLabel\"\n [attr.aria-labelledby]=\"submenu.ariaLabelledby\"\n >\n <ng-container *ngTemplateOutlet=\"submenu.templateRef\"></ng-container>\n </ul>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
512
+ MenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MenuItemComponent, selector: "li[fd-menu-item]", inputs: { disabled: "disabled", itemId: "itemId", submenu: "submenu", parentSubmenu: "parentSubmenu" }, outputs: { onSelect: "onSelect" }, host: { attributes: { "attr.role": "menuitem" }, properties: { "class.fd-menu__item": "true" } }, queries: [{ propertyName: "menuItemTitle", first: true, predicate: MenuTitleDirective, descendants: true }, { propertyName: "menuInteractive", first: true, predicate: MenuInteractiveDirective, descendants: true }], exportAs: ["fd-menu-item"], usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n\n<ng-container *ngIf=\"hasPopup && submenu\">\n <ul\n class=\"fd-menu__sublist\"\n role=\"menu\"\n [attr.id]=\"itemId\"\n [attr.aria-hidden]=\"!submenuVisible\"\n [attr.aria-label]=\"submenu.ariaLabel\"\n [attr.aria-labelledby]=\"submenu.ariaLabelledby\"\n >\n <ng-container *ngTemplateOutlet=\"submenu.templateRef\"></ng-container>\n </ul>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
501
513
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MenuItemComponent, decorators: [{
502
514
  type: Component,
503
515
  args: [{ selector: 'li[fd-menu-item]', exportAs: 'fd-menu-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
@@ -517,6 +529,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
517
529
  type: Input
518
530
  }], submenu: [{
519
531
  type: Input
532
+ }], parentSubmenu: [{
533
+ type: Input
520
534
  }],
521
535
  // eslint-disable-next-line @angular-eslint/no-output-on-prefix
522
536
  onSelect: [{
@@ -529,9 +543,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
529
543
  args: [MenuInteractiveDirective]
530
544
  }] } });
531
545
  class SubmenuComponent {
546
+ constructor() {
547
+ /** @hidden */
548
+ this._registeredItems = [];
549
+ /** @hidden */
550
+ this._menuItemsChange$ = new Subject();
551
+ }
552
+ /** @hidden */
553
+ get menuItems() {
554
+ return this._projectedItems.length ? this._projectedItems.toArray() : this._registeredItems;
555
+ }
556
+ /** @hidden */
557
+ ngAfterContentInit() {
558
+ this._projectedItems.changes.subscribe(() => this._menuItemsChange$.next());
559
+ }
560
+ /** @hidden method for manually registering item when it's not visible for @ContentChildren */
561
+ _registerItem(item) {
562
+ this._registeredItems.push(item);
563
+ this._menuItemsChange$.next();
564
+ }
565
+ /** @hidden method for manually unregistering item when it's not visible for @ContentChildren */
566
+ _unregisterItem(item) {
567
+ this._registeredItems = this._registeredItems.filter((i) => i !== item);
568
+ this._menuItemsChange$.next();
569
+ }
532
570
  }
533
571
  SubmenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SubmenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
534
- SubmenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: SubmenuComponent, selector: "fd-submenu", inputs: { ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby" }, providers: [{ provide: SUBMENU, useExisting: SubmenuComponent }], queries: [{ propertyName: "menuItems", predicate: MenuItemComponent }], viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], exportAs: ["fdSubmenu"], ngImport: i0, template: `
572
+ SubmenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: SubmenuComponent, selector: "fd-submenu", inputs: { ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby" }, providers: [{ provide: SUBMENU, useExisting: SubmenuComponent }], queries: [{ propertyName: "_projectedItems", predicate: MenuItemComponent }], viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], exportAs: ["fdSubmenu"], ngImport: i0, template: `
535
573
  <ng-template>
536
574
  <ng-content></ng-content>
537
575
  </ng-template>
@@ -557,7 +595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
557
595
  }], templateRef: [{
558
596
  type: ViewChild,
559
597
  args: [TemplateRef]
560
- }], menuItems: [{
598
+ }], _projectedItems: [{
561
599
  type: ContentChildren,
562
600
  args: [MenuItemComponent]
563
601
  }] } });
@@ -944,6 +982,13 @@ class MenuComponent extends BasePopoverClass {
944
982
  this.disabled = false;
945
983
  /** Whether the popover should be focusTrapped. */
946
984
  this.focusTrapped = true;
985
+ /**
986
+ * Whether the popover should automatically move focus into the trapped region upon
987
+ * initialization and return focus to the previous activeElement upon destruction.
988
+ */
989
+ this.focusAutoCapture = true;
990
+ /** Should fd-scrollbar have tabindex*/
991
+ this.tabbableScrollbar = false;
947
992
  /** Open submenu on hover after given milliseconds */
948
993
  this.openOnHoverTime = 0;
949
994
  /** Display menu without integrated popover */
@@ -952,19 +997,19 @@ class MenuComponent extends BasePopoverClass {
952
997
  this.id = `fd-menu-${menuUniqueId++}`;
953
998
  /** Emits array of active menu items */
954
999
  this.activePath = new EventEmitter();
955
- /** Whether use menu in mobile mode */
956
- this.mobile = false;
957
- /** @hidden Whether Popover with the menu is opened */
958
- this.isOpen = false;
1000
+ /** @hidden Whether use a menu in mobile mode */
1001
+ this._mobile = false;
959
1002
  /** @hidden */
960
1003
  this._subscriptions = new Subscription();
961
1004
  }
962
1005
  /** Set menu in mobile mode */
963
- // eslint-disable-next-line @angular-eslint/no-input-rename
964
- set setMobileMode(value) {
965
- this.mobile = value;
1006
+ set mobile(value) {
1007
+ this._mobile = coerceBooleanProperty(value);
966
1008
  this._menuService.setMenuMode(this.mobile);
967
1009
  }
1010
+ get mobile() {
1011
+ return this._mobile;
1012
+ }
968
1013
  /** @hidden */
969
1014
  get _popoverConfig() {
970
1015
  return {
@@ -977,9 +1022,9 @@ class MenuComponent extends BasePopoverClass {
977
1022
  /** keep isOpen up to date */
978
1023
  this.isOpenChange.subscribe((isOpen) => {
979
1024
  this.isOpen = isOpen;
1025
+ // when popover got closed by its own mechanism (e.x. click outside)
1026
+ // we need to clean up a menu as well
980
1027
  if (!isOpen) {
981
- // when popover got closed by its own mechanism (e.x. click outside)
982
- // we need to clean up menu as well
983
1028
  this._cleanUpMenuAfterClose();
984
1029
  }
985
1030
  this._changeDetectorRef.markForCheck();
@@ -987,15 +1032,15 @@ class MenuComponent extends BasePopoverClass {
987
1032
  }
988
1033
  /** @hidden */
989
1034
  ngAfterContentInit() {
990
- this._menuService.setMenuRoot(this);
1035
+ this._menuService.setMenuComponent(this);
991
1036
  this._listenOnMenuItemsChange();
992
1037
  }
993
1038
  /** @hidden */
994
1039
  ngAfterViewInit() {
995
1040
  this._menuService.isMobileMode.subscribe((isMobile) => {
996
1041
  this._setupView();
1042
+ // Since it is mobile, it's needed to disable popoverService
997
1043
  if (isMobile) {
998
- // Since it is mobile it's needed to disable popoverService
999
1044
  this._popoverService.deactivate();
1000
1045
  }
1001
1046
  });
@@ -1025,7 +1070,7 @@ class MenuComponent extends BasePopoverClass {
1025
1070
  this.isOpen = true;
1026
1071
  this.isOpenChange.emit(this.isOpen);
1027
1072
  }
1028
- if (!this.mobile) {
1073
+ else {
1029
1074
  this._popoverService.open();
1030
1075
  }
1031
1076
  this._changeDetectorRef.markForCheck();
@@ -1036,7 +1081,7 @@ class MenuComponent extends BasePopoverClass {
1036
1081
  this.isOpen = false;
1037
1082
  this.isOpenChange.emit(this.isOpen);
1038
1083
  }
1039
- if (!this.mobile) {
1084
+ else {
1040
1085
  this._popoverService.close();
1041
1086
  }
1042
1087
  this._cleanUpMenuAfterClose();
@@ -1067,31 +1112,31 @@ class MenuComponent extends BasePopoverClass {
1067
1112
  }
1068
1113
  /** @hidden */
1069
1114
  _setupPopoverService() {
1070
- this._subscriptions.add(this._popoverService._onLoad.subscribe((elementRef) => this._manageKeyboardSupport(elementRef)));
1071
- this._popoverService.templateContent = this.menuRootTemplate;
1115
+ this._subscriptions.add(this._popoverService._onLoad.subscribe((elementRef) => this._menuService.addKeyboardSupport(elementRef)));
1116
+ this._popoverService.templateContent = this._menuRootTemplate;
1072
1117
  this._popoverService.initialise(this._externalTrigger, this._popoverConfig);
1073
1118
  }
1074
- /** @hidden */
1075
- _manageKeyboardSupport(elementRef) {
1076
- this._menuService.addKeyboardSupport(elementRef);
1077
- }
1078
1119
  /** @hidden Open Menu in mobile mode */
1079
1120
  async _setupMobileMode() {
1080
1121
  const injector = Injector.create({
1081
1122
  providers: [{ provide: MENU_COMPONENT, useValue: this }],
1082
1123
  parent: this._injector
1083
1124
  });
1084
- this._mobileModeComponentRef = await this._dynamicComponentService.createDynamicModule(this.menuRootTemplate, MenuMobileModule, MenuMobileComponent, this._viewContainerRef, injector);
1125
+ this._mobileModeComponentRef = await this._dynamicComponentService.createDynamicModule(this._menuRootTemplate, MenuMobileModule, MenuMobileComponent, this._viewContainerRef, injector);
1085
1126
  this._listenOnTriggerRefClicks();
1086
1127
  }
1087
1128
  /** @hidden Listen on menu items change and rebuild menu */
1088
1129
  _listenOnMenuItemsChange() {
1089
- this._subscriptions.add(this.menuItems.changes.subscribe(() => this._menuService.rebuildMenu()));
1090
- this.menuItems.forEach((m) => {
1091
- if (m.submenu && m.submenu.menuItems) {
1092
- this._subscriptions.add(m.submenu.menuItems.changes.subscribe(() => this._menuService.rebuildMenu()));
1130
+ this._subscriptions.add(this._menuItems.changes.subscribe(() => this._menuService.rebuildMenu()));
1131
+ // Whether menu have submenu or not.
1132
+ let isSubmenu = false;
1133
+ this._menuItems.forEach((menuItem) => {
1134
+ if (menuItem.submenu?.menuItems) {
1135
+ isSubmenu = true;
1136
+ this._subscriptions.add(menuItem.submenu._menuItemsChange$.subscribe(() => this._menuService.rebuildMenu()));
1093
1137
  }
1094
1138
  });
1139
+ this.disableScrollbar = isSubmenu;
1095
1140
  }
1096
1141
  /**
1097
1142
  * @hidden
@@ -1127,21 +1172,24 @@ class MenuComponent extends BasePopoverClass {
1127
1172
  }
1128
1173
  }
1129
1174
  MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MenuComponent, deps: [{ token: i0.ElementRef }, { token: i1.DialogConfig, optional: true }, { token: i0.Renderer2 }, { token: MenuService }, { token: i0.ChangeDetectorRef }, { token: i3$1.PopoverService }, { token: i0.Injector }, { token: i0.ViewContainerRef }, { token: i3.DynamicComponentService, optional: true }, { token: i5$1.ContentDensityObserver }], target: i0.ɵɵFactoryTarget.Component });
1130
- MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MenuComponent, selector: "fd-menu", inputs: { setMobileMode: ["mobile", "setMobileMode"], disabled: "disabled", focusTrapped: "focusTrapped", openOnHoverTime: "openOnHoverTime", mobileConfig: "mobileConfig", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", id: "id" }, outputs: { activePath: "activePath" }, providers: [MenuService, PopoverService, contentDensityObserverProviders()], queries: [{ propertyName: "menuItems", predicate: MenuItemComponent, descendants: true }], viewQueries: [{ propertyName: "menuRootTemplate", first: true, predicate: ["menuRootTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container #viewContainer></ng-container>\n\n<ng-template #menuRootTemplate>\n <nav\n class=\"fd-menu\"\n fdInitialFocus\n [enabled]=\"focusTrapped\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-label]=\"ariaLabel\"\n role=\"menu\"\n [class.fd-menu--compact]=\"_contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n >\n <ul role=\"none\" class=\"fd-menu__list fd-menu__list--no-shadow\">\n <ng-content></ng-content>\n </ul>\n </nav>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.25.1-rc.16\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dialog__body{--fdButton_Menu_Border_Radius:0}.fd-menu{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-width:20rem;padding:0;width:-moz-fit-content;width:fit-content}.fd-menu:after,.fd-menu:before{box-sizing:inherit;font-size:inherit}.fd-menu__list,.fd-menu__sublist{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_Shadow1);border:0;border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-menu__list:after,.fd-menu__list:before,.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__list--no-shadow,.fd-menu__sublist--no-shadow{box-shadow:none}.fd-menu__sublist{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;left:100%;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0 -.25rem;min-width:100%;padding:0;position:absolute;top:0;z-index:2}.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__sublist[dir=rtl],[dir=rtl] .fd-menu__sublist{left:auto;margin:.25rem -.25rem 0 0;right:100%}.fd-menu__sublist[aria-hidden=true]{display:none}.fd-menu__list>.fd-menu__item{position:relative;width:100%}.fd-menu__list--overflow{flex-wrap:nowrap;overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow.is-focus,.fd-menu__list--overflow:focus{outline:none;z-index:5}.fd-menu__list--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb:active,.fd-menu__list--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu__separator{-webkit-box-sizing:border-box;background-color:var(--sapGroup_ContentBorderColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:.0625rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-menu__separator:after,.fd-menu__separator:before{box-sizing:inherit;font-size:inherit}.fd-menu__item{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-menu__item:after,.fd-menu__item:before{box-sizing:inherit;font-size:inherit}.fd-menu__item:first-child,.fd-menu__item:first-child .fd-menu__link:after{border-top-left-radius:var(--fdButton_Menu_Border_Radius);border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__item:last-child,.fd-menu__item:last-child .fd-menu__link:after{border-bottom-left-radius:var(--fdButton_Menu_Border_Radius);border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__link{-webkit-box-sizing:border-box;align-items:center;border:0;border-radius:inherit;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:2.75rem;line-height:var(--sapContent_LineHeight);margin:0;outline:none;padding:.75rem 1rem .75rem .75rem;text-decoration:none;width:100%}.fd-menu__link:after,.fd-menu__link:before{box-sizing:inherit;font-size:inherit}.fd-menu__link.is-focus:after,.fd-menu__link:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\"\";inset:.0625rem;pointer-events:none;position:absolute}.fd-menu__link.is-hover,.fd-menu__link:hover{background-color:var(--sapList_Hover_Background)}.fd-menu__link.is-selected,.fd-menu__link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.is-selected .fd-menu__addon-after,.fd-menu__link.is-selected .fd-menu__addon-before,.fd-menu__link.is-selected .fd-menu__shortcut,.fd-menu__link[aria-selected=true] .fd-menu__addon-after,.fd-menu__link[aria-selected=true] .fd-menu__addon-before,.fd-menu__link[aria-selected=true] .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.is-selected.is-hover:not(:active):not(.is-active),.fd-menu__link.is-selected:hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true].is-hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true]:hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.is-selected.is-focus,.fd-menu__link.is-selected:focus,.fd-menu__link[aria-selected=true].is-focus,.fd-menu__link[aria-selected=true]:focus{z-index:5}.fd-menu__link.is-selected.is-focus:after,.fd-menu__link.is-selected:focus:after,.fd-menu__link[aria-selected=true].is-focus:after,.fd-menu__link[aria-selected=true]:focus:after{bottom:.125rem}.fd-menu__link.is-active,.fd-menu__link:active{background-color:var(--sapList_Active_Background);color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active:after,.fd-menu__link:active:after{display:none}.fd-menu__link.is-active .fd-menu__addon-after,.fd-menu__link.is-active .fd-menu__addon-before,.fd-menu__link.is-active .fd-menu__shortcut,.fd-menu__link.is-active .fd-menu__title,.fd-menu__link:active .fd-menu__addon-after,.fd-menu__link:active .fd-menu__addon-before,.fd-menu__link:active .fd-menu__shortcut,.fd-menu__link:active .fd-menu__title{color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active.is-focus,.fd-menu__link.is-active:focus,.fd-menu__link:active.is-focus,.fd-menu__link:active:focus{outline-color:var(--fdMenu_Active_State_Focus);z-index:5}.fd-menu__link.is-disabled,.fd-menu__link:disabled,.fd-menu__link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-menu__link.is-disabled.is-focus,.fd-menu__link.is-disabled:focus,.fd-menu__link:disabled.is-focus,.fd-menu__link:disabled:focus,.fd-menu__link[aria-disabled=true].is-focus,.fd-menu__link[aria-disabled=true]:focus{z-index:5}.fd-menu__link.is-disabled.is-focus:after,.fd-menu__link.is-disabled:focus:after,.fd-menu__link:disabled.is-focus:after,.fd-menu__link:disabled:focus:after,.fd-menu__link[aria-disabled=true].is-focus:after,.fd-menu__link[aria-disabled=true]:focus:after{display:none}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active){background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__shortcut,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus{z-index:5}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus:after{bottom:.125rem}.fd-menu__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdMenu_Text_Shadow);white-space:nowrap;width:100%}.fd-menu__title:after,.fd-menu__title:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after,.fd-menu__addon-before{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;height:1.25rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-width:2.25rem;padding:0;text-shadow:var(--fdMenu_Text_Shadow);width:2.25rem}.fd-menu__addon-after:after,.fd-menu__addon-after:before,.fd-menu__addon-before:after,.fd-menu__addon-before:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after [class*=sap-icon],.fd-menu__addon-after[class*=sap-icon],.fd-menu__addon-before [class*=sap-icon],.fd-menu__addon-before[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-menu__addon-before{margin:0 0 0 -.75rem}.fd-menu__addon-after,.fd-menu__addon-before[dir=rtl],[dir=rtl] .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu__addon-after[dir=rtl],[dir=rtl] .fd-menu__addon-after{margin:0 0 0 -.75rem}.fd-menu__addon-after--submenu{font-size:var(--sapFontSmallSize)}.fd-menu__addon-after--submenu:before{content:\"\\e066\"}.fd-menu__addon-after--submenu:before,.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{content:\"\\e067\"}.fd-menu__shortcut{-webkit-box-sizing:border-box;-ms-flex-negative:0;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;flex-shrink:0;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;white-space:nowrap}.fd-menu__shortcut:after,.fd-menu__shortcut:before{box-sizing:inherit;font-size:inherit}.fd-menu__shortcut[dir=rtl],[dir=rtl] .fd-menu__shortcut{padding-left:0;padding-right:1rem}.fd-menu--overflow{-webkit-box-shadow:var(--sapContent_Shadow1);border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu--overflow.is-focus,.fd-menu--overflow:focus{outline:none;z-index:5}.fd-menu--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb:active,.fd-menu--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu--overflow .fd-menu__list{box-shadow:none}.fd-menu--overflow .fd-menu__item:first-child{border-top-right-radius:0}.fd-menu--overflow .fd-menu__item:first-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:first-child{border-top-left-radius:0;border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--overflow .fd-menu__item:last-child{border-bottom-right-radius:0}.fd-menu--overflow .fd-menu__item:last-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:last-child{border-bottom-left-radius:0;border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--full-width{max-width:100%}.fd-menu--compact .fd-menu__link{height:2rem;padding:.375rem .75rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link .fd-menu__addon-before{min-width:2rem;width:2rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 0 0 -.5rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 -.75rem 0 0}.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-after{margin:0 0 0 -.5rem}.fd-menu--mobile{max-width:100%;width:100%}.fd-menu--mobile .fd-menu__list,.fd-menu--mobile .fd-menu__sublist{-webkit-box-shadow:none;border-radius:0;box-shadow:none;margin:0;position:static}.fd-menu--mobile .fd-menu__list .fd-menu__item,.fd-menu--mobile .fd-menu__sublist .fd-menu__item{border-radius:0}.fd-menu--mobile .fd-menu__list .fd-menu__link,.fd-menu--mobile .fd-menu__sublist .fd-menu__link{padding:.75rem 1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{min-width:2.75rem;width:2.75rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 0 0 -1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after{margin:0 0 0 -1rem}:host{display:inline}fd-menu .fd-menu__list,fd-menu .fd-menu__sublist{flex-wrap:nowrap}.fd-popover--menu .fd-scrollbar{overflow:visible!important}\n"], dependencies: [{ kind: "directive", type: i3.InitialFocusDirective, selector: "[fdInitialFocus], [fd-initial-focus]", inputs: ["fd-initial-focus", "enabled", "focusLastElement"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1175
+ MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MenuComponent, selector: "fd-menu", inputs: { mobile: "mobile", disabled: "disabled", focusTrapped: "focusTrapped", focusAutoCapture: "focusAutoCapture", tabbableScrollbar: "tabbableScrollbar", openOnHoverTime: "openOnHoverTime", mobileConfig: "mobileConfig", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", id: "id" }, outputs: { activePath: "activePath" }, providers: [MenuService, PopoverService, contentDensityObserverProviders()], queries: [{ propertyName: "_menuItems", predicate: MenuItemComponent }], viewQueries: [{ propertyName: "_menuRootTemplate", first: true, predicate: ["menuRootTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container #viewContainer></ng-container>\n\n<ng-template #menuRootTemplate>\n <nav\n class=\"fd-menu\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-label]=\"ariaLabel\"\n role=\"menu\"\n [class.fd-menu--compact]=\"_contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n >\n <ul role=\"none\" class=\"fd-menu__list fd-menu__list--no-shadow\">\n <ng-content></ng-content>\n </ul>\n </nav>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dialog__body{--fdButton_Menu_Border_Radius:0}.fd-menu{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-width:20rem;padding:0;width:-moz-fit-content;width:fit-content}.fd-menu:after,.fd-menu:before{box-sizing:inherit;font-size:inherit}.fd-menu__list,.fd-menu__sublist{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_Shadow1);border:0;border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-menu__list:after,.fd-menu__list:before,.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__list--no-shadow,.fd-menu__sublist--no-shadow{box-shadow:none}.fd-menu__sublist{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;left:100%;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0 -.25rem;min-width:100%;padding:0;position:absolute;top:0;z-index:2}.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__sublist[dir=rtl],[dir=rtl] .fd-menu__sublist{left:auto;margin:.25rem -.25rem 0 0;right:100%}.fd-menu__sublist[aria-hidden=true]{display:none}.fd-menu__list>.fd-menu__item{position:relative;width:100%}.fd-menu__list--overflow{flex-wrap:nowrap;overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow.is-focus,.fd-menu__list--overflow:focus{outline:none;z-index:5}.fd-menu__list--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb:active,.fd-menu__list--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu__separator{-webkit-box-sizing:border-box;background-color:var(--sapGroup_ContentBorderColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:.0625rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-menu__separator:after,.fd-menu__separator:before{box-sizing:inherit;font-size:inherit}.fd-menu__item{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-menu__item:after,.fd-menu__item:before{box-sizing:inherit;font-size:inherit}.fd-menu__item:first-child,.fd-menu__item:first-child .fd-menu__link:after{border-top-left-radius:var(--fdButton_Menu_Border_Radius);border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__item:last-of-type,.fd-menu__item:last-of-type .fd-menu__link:after{border-bottom-left-radius:var(--fdButton_Menu_Border_Radius);border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__link{-webkit-box-sizing:border-box;align-items:center;border:0;border-radius:inherit;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:2.75rem;line-height:var(--sapContent_LineHeight);margin:0;outline:none;padding:.75rem 1rem .75rem .75rem;text-decoration:none;width:100%}.fd-menu__link:after,.fd-menu__link:before{box-sizing:inherit;font-size:inherit}.fd-menu__link.is-focus:after,.fd-menu__link:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\"\";inset:.0625rem;pointer-events:none;position:absolute}.fd-menu__link.is-hover,.fd-menu__link:hover{background-color:var(--sapList_Hover_Background)}.fd-menu__link.is-selected,.fd-menu__link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.is-selected .fd-menu__addon-after,.fd-menu__link.is-selected .fd-menu__addon-before,.fd-menu__link.is-selected .fd-menu__shortcut,.fd-menu__link[aria-selected=true] .fd-menu__addon-after,.fd-menu__link[aria-selected=true] .fd-menu__addon-before,.fd-menu__link[aria-selected=true] .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.is-selected.is-hover:not(:active):not(.is-active),.fd-menu__link.is-selected:hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true].is-hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true]:hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.is-selected.is-focus,.fd-menu__link.is-selected:focus,.fd-menu__link[aria-selected=true].is-focus,.fd-menu__link[aria-selected=true]:focus{z-index:5}.fd-menu__link.is-selected.is-focus:after,.fd-menu__link.is-selected:focus:after,.fd-menu__link[aria-selected=true].is-focus:after,.fd-menu__link[aria-selected=true]:focus:after{bottom:.125rem}.fd-menu__link.is-active,.fd-menu__link:active{background-color:var(--sapList_Active_Background);color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active:after,.fd-menu__link:active:after{display:none}.fd-menu__link.is-active .fd-menu__addon-after,.fd-menu__link.is-active .fd-menu__addon-before,.fd-menu__link.is-active .fd-menu__shortcut,.fd-menu__link.is-active .fd-menu__title,.fd-menu__link:active .fd-menu__addon-after,.fd-menu__link:active .fd-menu__addon-before,.fd-menu__link:active .fd-menu__shortcut,.fd-menu__link:active .fd-menu__title{color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active.is-focus,.fd-menu__link.is-active:focus,.fd-menu__link:active.is-focus,.fd-menu__link:active:focus{outline-color:var(--fdMenu_Active_State_Focus);z-index:5}.fd-menu__link.is-disabled,.fd-menu__link:disabled,.fd-menu__link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-menu__link.is-disabled.is-focus,.fd-menu__link.is-disabled:focus,.fd-menu__link:disabled.is-focus,.fd-menu__link:disabled:focus,.fd-menu__link[aria-disabled=true].is-focus,.fd-menu__link[aria-disabled=true]:focus{z-index:5}.fd-menu__link.is-disabled.is-focus:after,.fd-menu__link.is-disabled:focus:after,.fd-menu__link:disabled.is-focus:after,.fd-menu__link:disabled:focus:after,.fd-menu__link[aria-disabled=true].is-focus:after,.fd-menu__link[aria-disabled=true]:focus:after{display:none}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active){background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__shortcut,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus{z-index:5}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus:after{bottom:.125rem}.fd-menu__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdMenu_Text_Shadow);white-space:nowrap;width:100%}.fd-menu__title:after,.fd-menu__title:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after,.fd-menu__addon-before{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;height:1.25rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-width:2.25rem;padding:0;text-shadow:var(--fdMenu_Text_Shadow);width:2.25rem}.fd-menu__addon-after:after,.fd-menu__addon-after:before,.fd-menu__addon-before:after,.fd-menu__addon-before:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after [class*=sap-icon],.fd-menu__addon-after[class*=sap-icon],.fd-menu__addon-before [class*=sap-icon],.fd-menu__addon-before[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-menu__addon-before{margin:0 0 0 -.75rem}.fd-menu__addon-after,.fd-menu__addon-before[dir=rtl],[dir=rtl] .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu__addon-after[dir=rtl],[dir=rtl] .fd-menu__addon-after{margin:0 0 0 -.75rem}.fd-menu__addon-after--submenu{font-size:var(--sapFontSmallSize)}.fd-menu__addon-after--submenu:before{content:\"\\e066\"}.fd-menu__addon-after--submenu:before,.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{content:\"\\e067\"}.fd-menu__shortcut{-webkit-box-sizing:border-box;-ms-flex-negative:0;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;flex-shrink:0;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;white-space:nowrap}.fd-menu__shortcut:after,.fd-menu__shortcut:before{box-sizing:inherit;font-size:inherit}.fd-menu__shortcut[dir=rtl],[dir=rtl] .fd-menu__shortcut{padding-left:0;padding-right:1rem}.fd-menu--overflow{-webkit-box-shadow:var(--sapContent_Shadow1);border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu--overflow.is-focus,.fd-menu--overflow:focus{outline:none;z-index:5}.fd-menu--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb:active,.fd-menu--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu--overflow .fd-menu__list{box-shadow:none}.fd-menu--overflow .fd-menu__item:first-child{border-top-right-radius:0}.fd-menu--overflow .fd-menu__item:first-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:first-child{border-top-left-radius:0;border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--overflow .fd-menu__item:last-of-type{border-bottom-right-radius:0}.fd-menu--overflow .fd-menu__item:last-of-type[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:last-of-type{border-bottom-left-radius:0;border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--full-width{max-width:100%}.fd-menu--compact .fd-menu__link{height:2rem;padding:.375rem .75rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link .fd-menu__addon-before{min-width:2rem;width:2rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 0 0 -.5rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 -.75rem 0 0}.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-after{margin:0 0 0 -.5rem}.fd-menu--mobile{max-width:100%;width:100%}.fd-menu--mobile .fd-menu__list,.fd-menu--mobile .fd-menu__sublist{-webkit-box-shadow:none;border-radius:0;box-shadow:none;margin:0;position:static}.fd-menu--mobile .fd-menu__list .fd-menu__item,.fd-menu--mobile .fd-menu__sublist .fd-menu__item{border-radius:0}.fd-menu--mobile .fd-menu__list .fd-menu__link,.fd-menu--mobile .fd-menu__sublist .fd-menu__link{padding:.75rem 1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{min-width:2.75rem;width:2.75rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 0 0 -1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after{margin:0 0 0 -1rem}:host{display:inline}fd-menu .fd-menu__list,fd-menu .fd-menu__sublist{flex-wrap:nowrap}\n"], dependencies: [{ kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1131
1176
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MenuComponent, decorators: [{
1132
1177
  type: Component,
1133
- args: [{ selector: 'fd-menu', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [MenuService, PopoverService, contentDensityObserverProviders()], template: "<ng-container #viewContainer></ng-container>\n\n<ng-template #menuRootTemplate>\n <nav\n class=\"fd-menu\"\n fdInitialFocus\n [enabled]=\"focusTrapped\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-label]=\"ariaLabel\"\n role=\"menu\"\n [class.fd-menu--compact]=\"_contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n >\n <ul role=\"none\" class=\"fd-menu__list fd-menu__list--no-shadow\">\n <ng-content></ng-content>\n </ul>\n </nav>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.25.1-rc.16\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dialog__body{--fdButton_Menu_Border_Radius:0}.fd-menu{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-width:20rem;padding:0;width:-moz-fit-content;width:fit-content}.fd-menu:after,.fd-menu:before{box-sizing:inherit;font-size:inherit}.fd-menu__list,.fd-menu__sublist{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_Shadow1);border:0;border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-menu__list:after,.fd-menu__list:before,.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__list--no-shadow,.fd-menu__sublist--no-shadow{box-shadow:none}.fd-menu__sublist{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;left:100%;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0 -.25rem;min-width:100%;padding:0;position:absolute;top:0;z-index:2}.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__sublist[dir=rtl],[dir=rtl] .fd-menu__sublist{left:auto;margin:.25rem -.25rem 0 0;right:100%}.fd-menu__sublist[aria-hidden=true]{display:none}.fd-menu__list>.fd-menu__item{position:relative;width:100%}.fd-menu__list--overflow{flex-wrap:nowrap;overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow.is-focus,.fd-menu__list--overflow:focus{outline:none;z-index:5}.fd-menu__list--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb:active,.fd-menu__list--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu__separator{-webkit-box-sizing:border-box;background-color:var(--sapGroup_ContentBorderColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:.0625rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-menu__separator:after,.fd-menu__separator:before{box-sizing:inherit;font-size:inherit}.fd-menu__item{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-menu__item:after,.fd-menu__item:before{box-sizing:inherit;font-size:inherit}.fd-menu__item:first-child,.fd-menu__item:first-child .fd-menu__link:after{border-top-left-radius:var(--fdButton_Menu_Border_Radius);border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__item:last-child,.fd-menu__item:last-child .fd-menu__link:after{border-bottom-left-radius:var(--fdButton_Menu_Border_Radius);border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__link{-webkit-box-sizing:border-box;align-items:center;border:0;border-radius:inherit;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:2.75rem;line-height:var(--sapContent_LineHeight);margin:0;outline:none;padding:.75rem 1rem .75rem .75rem;text-decoration:none;width:100%}.fd-menu__link:after,.fd-menu__link:before{box-sizing:inherit;font-size:inherit}.fd-menu__link.is-focus:after,.fd-menu__link:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\"\";inset:.0625rem;pointer-events:none;position:absolute}.fd-menu__link.is-hover,.fd-menu__link:hover{background-color:var(--sapList_Hover_Background)}.fd-menu__link.is-selected,.fd-menu__link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.is-selected .fd-menu__addon-after,.fd-menu__link.is-selected .fd-menu__addon-before,.fd-menu__link.is-selected .fd-menu__shortcut,.fd-menu__link[aria-selected=true] .fd-menu__addon-after,.fd-menu__link[aria-selected=true] .fd-menu__addon-before,.fd-menu__link[aria-selected=true] .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.is-selected.is-hover:not(:active):not(.is-active),.fd-menu__link.is-selected:hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true].is-hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true]:hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.is-selected.is-focus,.fd-menu__link.is-selected:focus,.fd-menu__link[aria-selected=true].is-focus,.fd-menu__link[aria-selected=true]:focus{z-index:5}.fd-menu__link.is-selected.is-focus:after,.fd-menu__link.is-selected:focus:after,.fd-menu__link[aria-selected=true].is-focus:after,.fd-menu__link[aria-selected=true]:focus:after{bottom:.125rem}.fd-menu__link.is-active,.fd-menu__link:active{background-color:var(--sapList_Active_Background);color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active:after,.fd-menu__link:active:after{display:none}.fd-menu__link.is-active .fd-menu__addon-after,.fd-menu__link.is-active .fd-menu__addon-before,.fd-menu__link.is-active .fd-menu__shortcut,.fd-menu__link.is-active .fd-menu__title,.fd-menu__link:active .fd-menu__addon-after,.fd-menu__link:active .fd-menu__addon-before,.fd-menu__link:active .fd-menu__shortcut,.fd-menu__link:active .fd-menu__title{color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active.is-focus,.fd-menu__link.is-active:focus,.fd-menu__link:active.is-focus,.fd-menu__link:active:focus{outline-color:var(--fdMenu_Active_State_Focus);z-index:5}.fd-menu__link.is-disabled,.fd-menu__link:disabled,.fd-menu__link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-menu__link.is-disabled.is-focus,.fd-menu__link.is-disabled:focus,.fd-menu__link:disabled.is-focus,.fd-menu__link:disabled:focus,.fd-menu__link[aria-disabled=true].is-focus,.fd-menu__link[aria-disabled=true]:focus{z-index:5}.fd-menu__link.is-disabled.is-focus:after,.fd-menu__link.is-disabled:focus:after,.fd-menu__link:disabled.is-focus:after,.fd-menu__link:disabled:focus:after,.fd-menu__link[aria-disabled=true].is-focus:after,.fd-menu__link[aria-disabled=true]:focus:after{display:none}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active){background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__shortcut,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus{z-index:5}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus:after{bottom:.125rem}.fd-menu__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdMenu_Text_Shadow);white-space:nowrap;width:100%}.fd-menu__title:after,.fd-menu__title:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after,.fd-menu__addon-before{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;height:1.25rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-width:2.25rem;padding:0;text-shadow:var(--fdMenu_Text_Shadow);width:2.25rem}.fd-menu__addon-after:after,.fd-menu__addon-after:before,.fd-menu__addon-before:after,.fd-menu__addon-before:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after [class*=sap-icon],.fd-menu__addon-after[class*=sap-icon],.fd-menu__addon-before [class*=sap-icon],.fd-menu__addon-before[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-menu__addon-before{margin:0 0 0 -.75rem}.fd-menu__addon-after,.fd-menu__addon-before[dir=rtl],[dir=rtl] .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu__addon-after[dir=rtl],[dir=rtl] .fd-menu__addon-after{margin:0 0 0 -.75rem}.fd-menu__addon-after--submenu{font-size:var(--sapFontSmallSize)}.fd-menu__addon-after--submenu:before{content:\"\\e066\"}.fd-menu__addon-after--submenu:before,.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{content:\"\\e067\"}.fd-menu__shortcut{-webkit-box-sizing:border-box;-ms-flex-negative:0;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;flex-shrink:0;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;white-space:nowrap}.fd-menu__shortcut:after,.fd-menu__shortcut:before{box-sizing:inherit;font-size:inherit}.fd-menu__shortcut[dir=rtl],[dir=rtl] .fd-menu__shortcut{padding-left:0;padding-right:1rem}.fd-menu--overflow{-webkit-box-shadow:var(--sapContent_Shadow1);border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu--overflow.is-focus,.fd-menu--overflow:focus{outline:none;z-index:5}.fd-menu--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb:active,.fd-menu--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu--overflow .fd-menu__list{box-shadow:none}.fd-menu--overflow .fd-menu__item:first-child{border-top-right-radius:0}.fd-menu--overflow .fd-menu__item:first-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:first-child{border-top-left-radius:0;border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--overflow .fd-menu__item:last-child{border-bottom-right-radius:0}.fd-menu--overflow .fd-menu__item:last-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:last-child{border-bottom-left-radius:0;border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--full-width{max-width:100%}.fd-menu--compact .fd-menu__link{height:2rem;padding:.375rem .75rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link .fd-menu__addon-before{min-width:2rem;width:2rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 0 0 -.5rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 -.75rem 0 0}.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-after{margin:0 0 0 -.5rem}.fd-menu--mobile{max-width:100%;width:100%}.fd-menu--mobile .fd-menu__list,.fd-menu--mobile .fd-menu__sublist{-webkit-box-shadow:none;border-radius:0;box-shadow:none;margin:0;position:static}.fd-menu--mobile .fd-menu__list .fd-menu__item,.fd-menu--mobile .fd-menu__sublist .fd-menu__item{border-radius:0}.fd-menu--mobile .fd-menu__list .fd-menu__link,.fd-menu--mobile .fd-menu__sublist .fd-menu__link{padding:.75rem 1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{min-width:2.75rem;width:2.75rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 0 0 -1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after{margin:0 0 0 -1rem}:host{display:inline}fd-menu .fd-menu__list,fd-menu .fd-menu__sublist{flex-wrap:nowrap}.fd-popover--menu .fd-scrollbar{overflow:visible!important}\n"] }]
1178
+ args: [{ selector: 'fd-menu', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [MenuService, PopoverService, contentDensityObserverProviders()], template: "<ng-container #viewContainer></ng-container>\n\n<ng-template #menuRootTemplate>\n <nav\n class=\"fd-menu\"\n [id]=\"id\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-label]=\"ariaLabel\"\n role=\"menu\"\n [class.fd-menu--compact]=\"_contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n >\n <ul role=\"none\" class=\"fd-menu__list fd-menu__list--no-shadow\">\n <ng-content></ng-content>\n </ul>\n </nav>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dialog__body{--fdButton_Menu_Border_Radius:0}.fd-menu{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-width:20rem;padding:0;width:-moz-fit-content;width:fit-content}.fd-menu:after,.fd-menu:before{box-sizing:inherit;font-size:inherit}.fd-menu__list,.fd-menu__sublist{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;-webkit-box-shadow:var(--sapContent_Shadow1);border:0;border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-menu__list:after,.fd-menu__list:before,.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__list--no-shadow,.fd-menu__sublist--no-shadow{box-shadow:none}.fd-menu__sublist{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;left:100%;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0 -.25rem;min-width:100%;padding:0;position:absolute;top:0;z-index:2}.fd-menu__sublist:after,.fd-menu__sublist:before{box-sizing:inherit;font-size:inherit}.fd-menu__sublist[dir=rtl],[dir=rtl] .fd-menu__sublist{left:auto;margin:.25rem -.25rem 0 0;right:100%}.fd-menu__sublist[aria-hidden=true]{display:none}.fd-menu__list>.fd-menu__item{position:relative;width:100%}.fd-menu__list--overflow{flex-wrap:nowrap;overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow.is-focus,.fd-menu__list--overflow:focus{outline:none;z-index:5}.fd-menu__list--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu__list--overflow::-webkit-scrollbar-thumb:active,.fd-menu__list--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu__list--overflow::-webkit-scrollbar-corner,.fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu__list--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu__list--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu__separator{-webkit-box-sizing:border-box;background-color:var(--sapGroup_ContentBorderColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:.0625rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-menu__separator:after,.fd-menu__separator:before{box-sizing:inherit;font-size:inherit}.fd-menu__item{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-menu__item:after,.fd-menu__item:before{box-sizing:inherit;font-size:inherit}.fd-menu__item:first-child,.fd-menu__item:first-child .fd-menu__link:after{border-top-left-radius:var(--fdButton_Menu_Border_Radius);border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__item:last-of-type,.fd-menu__item:last-of-type .fd-menu__link:after{border-bottom-left-radius:var(--fdButton_Menu_Border_Radius);border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu__link{-webkit-box-sizing:border-box;align-items:center;border:0;border-radius:inherit;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:2.75rem;line-height:var(--sapContent_LineHeight);margin:0;outline:none;padding:.75rem 1rem .75rem .75rem;text-decoration:none;width:100%}.fd-menu__link:after,.fd-menu__link:before{box-sizing:inherit;font-size:inherit}.fd-menu__link.is-focus:after,.fd-menu__link:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\"\";inset:.0625rem;pointer-events:none;position:absolute}.fd-menu__link.is-hover,.fd-menu__link:hover{background-color:var(--sapList_Hover_Background)}.fd-menu__link.is-selected,.fd-menu__link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.is-selected .fd-menu__addon-after,.fd-menu__link.is-selected .fd-menu__addon-before,.fd-menu__link.is-selected .fd-menu__shortcut,.fd-menu__link[aria-selected=true] .fd-menu__addon-after,.fd-menu__link[aria-selected=true] .fd-menu__addon-before,.fd-menu__link[aria-selected=true] .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.is-selected.is-hover:not(:active):not(.is-active),.fd-menu__link.is-selected:hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true].is-hover:not(:active):not(.is-active),.fd-menu__link[aria-selected=true]:hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.is-selected.is-focus,.fd-menu__link.is-selected:focus,.fd-menu__link[aria-selected=true].is-focus,.fd-menu__link[aria-selected=true]:focus{z-index:5}.fd-menu__link.is-selected.is-focus:after,.fd-menu__link.is-selected:focus:after,.fd-menu__link[aria-selected=true].is-focus:after,.fd-menu__link[aria-selected=true]:focus:after{bottom:.125rem}.fd-menu__link.is-active,.fd-menu__link:active{background-color:var(--sapList_Active_Background);color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active:after,.fd-menu__link:active:after{display:none}.fd-menu__link.is-active .fd-menu__addon-after,.fd-menu__link.is-active .fd-menu__addon-before,.fd-menu__link.is-active .fd-menu__shortcut,.fd-menu__link.is-active .fd-menu__title,.fd-menu__link:active .fd-menu__addon-after,.fd-menu__link:active .fd-menu__addon-before,.fd-menu__link:active .fd-menu__shortcut,.fd-menu__link:active .fd-menu__title{color:var(--sapList_Active_TextColor)}.fd-menu__link.is-active.is-focus,.fd-menu__link.is-active:focus,.fd-menu__link:active.is-focus,.fd-menu__link:active:focus{outline-color:var(--fdMenu_Active_State_Focus);z-index:5}.fd-menu__link.is-disabled,.fd-menu__link:disabled,.fd-menu__link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-menu__link.is-disabled.is-focus,.fd-menu__link.is-disabled:focus,.fd-menu__link:disabled.is-focus,.fd-menu__link:disabled:focus,.fd-menu__link[aria-disabled=true].is-focus,.fd-menu__link[aria-disabled=true]:focus{z-index:5}.fd-menu__link.is-disabled.is-focus:after,.fd-menu__link.is-disabled:focus:after,.fd-menu__link:disabled.is-focus:after,.fd-menu__link:disabled:focus:after,.fd-menu__link[aria-disabled=true].is-focus:after,.fd-menu__link[aria-disabled=true]:focus:after{display:none}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active){background-color:var(--sapList_SelectionBackgroundColor);border-bottom:.0625rem solid var(--sapList_SelectionBorderColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active) .fd-menu__shortcut,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__addon-before,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active) .fd-menu__shortcut{color:var(--sapContent_NonInteractiveIconColor)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-hover:not(:active):not(.is-active),.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):hover:not(:active):not(.is-active){background-color:var(--sapList_Hover_SelectionBackground)}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus{z-index:5}.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child.is-expanded:not(:active):not(.is-active):focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active).is-focus:after,.fd-menu__link.has-child[aria-expanded=true]:not(:active):not(.is-active):focus:after{bottom:.125rem}.fd-menu__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdMenu_Text_Shadow);white-space:nowrap;width:100%}.fd-menu__title:after,.fd-menu__title:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after,.fd-menu__addon-before{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;height:1.25rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-width:2.25rem;padding:0;text-shadow:var(--fdMenu_Text_Shadow);width:2.25rem}.fd-menu__addon-after:after,.fd-menu__addon-after:before,.fd-menu__addon-before:after,.fd-menu__addon-before:before{box-sizing:inherit;font-size:inherit}.fd-menu__addon-after [class*=sap-icon],.fd-menu__addon-after[class*=sap-icon],.fd-menu__addon-before [class*=sap-icon],.fd-menu__addon-before[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-menu__addon-before{margin:0 0 0 -.75rem}.fd-menu__addon-after,.fd-menu__addon-before[dir=rtl],[dir=rtl] .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu__addon-after[dir=rtl],[dir=rtl] .fd-menu__addon-after{margin:0 0 0 -.75rem}.fd-menu__addon-after--submenu{font-size:var(--sapFontSmallSize)}.fd-menu__addon-after--submenu:before{content:\"\\e066\"}.fd-menu__addon-after--submenu:before,.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-menu__addon-after--submenu[dir=rtl]:before,[dir=rtl] .fd-menu__addon-after--submenu:before{content:\"\\e067\"}.fd-menu__shortcut{-webkit-box-sizing:border-box;-ms-flex-negative:0;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;flex-shrink:0;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;white-space:nowrap}.fd-menu__shortcut:after,.fd-menu__shortcut:before{box-sizing:inherit;font-size:inherit}.fd-menu__shortcut[dir=rtl],[dir=rtl] .fd-menu__shortcut{padding-left:0;padding-right:1rem}.fd-menu--overflow{-webkit-box-shadow:var(--sapContent_Shadow1);border-radius:var(--fdButton_Menu_Border_Radius);box-shadow:var(--sapContent_Shadow1);overflow-y:scroll;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-menu--overflow.is-focus,.fd-menu--overflow:focus{outline:none;z-index:5}.fd-menu--overflow::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-menu--overflow::-webkit-scrollbar-thumb:active,.fd-menu--overflow::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-menu--overflow::-webkit-scrollbar-corner,.fd-menu--overflow::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-corner,.fd-menu--overflow[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-corner,[dir=rtl] .fd-menu--overflow::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-menu--overflow .fd-menu__list{box-shadow:none}.fd-menu--overflow .fd-menu__item:first-child{border-top-right-radius:0}.fd-menu--overflow .fd-menu__item:first-child[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:first-child{border-top-left-radius:0;border-top-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--overflow .fd-menu__item:last-of-type{border-bottom-right-radius:0}.fd-menu--overflow .fd-menu__item:last-of-type[dir=rtl],[dir=rtl] .fd-menu--overflow .fd-menu__item:last-of-type{border-bottom-left-radius:0;border-bottom-right-radius:var(--fdButton_Menu_Border_Radius)}.fd-menu--full-width{max-width:100%}.fd-menu--compact .fd-menu__link{height:2rem;padding:.375rem .75rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link .fd-menu__addon-before{min-width:2rem;width:2rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 0 0 -.5rem}.fd-menu--compact .fd-menu__link .fd-menu__addon-after,.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-before{margin:0 -.75rem 0 0}.fd-menu--compact .fd-menu__link[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--compact .fd-menu__link .fd-menu__addon-after{margin:0 0 0 -.5rem}.fd-menu--mobile{max-width:100%;width:100%}.fd-menu--mobile .fd-menu__list,.fd-menu--mobile .fd-menu__sublist{-webkit-box-shadow:none;border-radius:0;box-shadow:none;margin:0;position:static}.fd-menu--mobile .fd-menu__list .fd-menu__item,.fd-menu--mobile .fd-menu__sublist .fd-menu__item{border-radius:0}.fd-menu--mobile .fd-menu__list .fd-menu__link,.fd-menu--mobile .fd-menu__sublist .fd-menu__link{padding:.75rem 1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{min-width:2.75rem;width:2.75rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 0 0 -1rem}.fd-menu--mobile .fd-menu__list .fd-menu__addon-after,.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-before,.fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-before,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-before{margin:0 -1rem 0 0}.fd-menu--mobile .fd-menu__list[dir=rtl] .fd-menu__addon-after,.fd-menu--mobile .fd-menu__sublist[dir=rtl] .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__list .fd-menu__addon-after,[dir=rtl] .fd-menu--mobile .fd-menu__sublist .fd-menu__addon-after{margin:0 0 0 -1rem}:host{display:inline}fd-menu .fd-menu__list,fd-menu .fd-menu__sublist{flex-wrap:nowrap}\n"] }]
1134
1179
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DialogConfig, decorators: [{
1135
1180
  type: Optional
1136
1181
  }] }, { type: i0.Renderer2 }, { type: MenuService }, { type: i0.ChangeDetectorRef }, { type: i3$1.PopoverService }, { type: i0.Injector }, { type: i0.ViewContainerRef }, { type: i3.DynamicComponentService, decorators: [{
1137
1182
  type: Optional
1138
- }] }, { type: i5$1.ContentDensityObserver }]; }, propDecorators: { setMobileMode: [{
1139
- type: Input,
1140
- args: ['mobile']
1183
+ }] }, { type: i5$1.ContentDensityObserver }]; }, propDecorators: { mobile: [{
1184
+ type: Input
1141
1185
  }], disabled: [{
1142
1186
  type: Input
1143
1187
  }], focusTrapped: [{
1144
1188
  type: Input
1189
+ }], focusAutoCapture: [{
1190
+ type: Input
1191
+ }], tabbableScrollbar: [{
1192
+ type: Input
1145
1193
  }], openOnHoverTime: [{
1146
1194
  type: Input
1147
1195
  }], mobileConfig: [{
@@ -1154,12 +1202,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
1154
1202
  type: Input
1155
1203
  }], activePath: [{
1156
1204
  type: Output
1157
- }], menuRootTemplate: [{
1205
+ }], _menuRootTemplate: [{
1158
1206
  type: ViewChild,
1159
1207
  args: ['menuRootTemplate']
1160
- }], menuItems: [{
1208
+ }], _menuItems: [{
1161
1209
  type: ContentChildren,
1162
- args: [MenuItemComponent, { descendants: true }]
1210
+ args: [MenuItemComponent]
1163
1211
  }] } });
1164
1212
 
1165
1213
  class MenuModule {