@siemens/element-ng 48.10.0 → 49.0.0-rc.2

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 (396) hide show
  1. package/about/package.json +2 -1
  2. package/accordion/package.json +2 -1
  3. package/action-modal/package.json +2 -1
  4. package/ag-grid/package.json +2 -1
  5. package/application-header/package.json +2 -1
  6. package/auto-collapsable-list/package.json +2 -1
  7. package/autocomplete/package.json +2 -1
  8. package/avatar/package.json +2 -1
  9. package/badge/package.json +2 -1
  10. package/breadcrumb/package.json +2 -1
  11. package/breadcrumb-router/package.json +2 -1
  12. package/card/package.json +2 -1
  13. package/chat-messages/package.json +2 -1
  14. package/circle-status/package.json +2 -1
  15. package/color-picker/package.json +2 -1
  16. package/column-selection-dialog/package.json +2 -1
  17. package/common/package.json +2 -1
  18. package/connection-strength/package.json +2 -1
  19. package/content-action-bar/package.json +2 -1
  20. package/copyright-notice/package.json +2 -1
  21. package/dashboard/package.json +2 -1
  22. package/datatable/package.json +2 -1
  23. package/date-range-filter/package.json +2 -1
  24. package/datepicker/package.json +2 -1
  25. package/electron-titlebar/package.json +2 -1
  26. package/empty-state/package.json +2 -1
  27. package/fesm2022/siemens-element-ng-about.mjs +25 -24
  28. package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
  29. package/fesm2022/siemens-element-ng-accordion.mjs +49 -75
  30. package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
  31. package/fesm2022/siemens-element-ng-action-modal.mjs +59 -55
  32. package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
  33. package/fesm2022/siemens-element-ng-ag-grid.mjs +33 -37
  34. package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
  35. package/fesm2022/siemens-element-ng-application-header.mjs +122 -150
  36. package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
  37. package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +30 -32
  38. package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
  39. package/fesm2022/siemens-element-ng-autocomplete.mjs +34 -48
  40. package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
  41. package/fesm2022/siemens-element-ng-avatar.mjs +23 -24
  42. package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
  43. package/fesm2022/siemens-element-ng-badge.mjs +6 -6
  44. package/fesm2022/siemens-element-ng-badge.mjs.map +1 -1
  45. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +16 -16
  46. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
  47. package/fesm2022/siemens-element-ng-breadcrumb.mjs +18 -17
  48. package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
  49. package/fesm2022/siemens-element-ng-card.mjs +32 -34
  50. package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
  51. package/fesm2022/siemens-element-ng-chat-messages.mjs +204 -109
  52. package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
  53. package/fesm2022/siemens-element-ng-circle-status.mjs +26 -26
  54. package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
  55. package/fesm2022/siemens-element-ng-color-picker.mjs +18 -17
  56. package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
  57. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +36 -35
  58. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
  59. package/fesm2022/siemens-element-ng-common.mjs +13 -38
  60. package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
  61. package/fesm2022/siemens-element-ng-connection-strength.mjs +11 -11
  62. package/fesm2022/siemens-element-ng-connection-strength.mjs.map +1 -1
  63. package/fesm2022/siemens-element-ng-content-action-bar.mjs +33 -30
  64. package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
  65. package/fesm2022/siemens-element-ng-copyright-notice.mjs +13 -13
  66. package/fesm2022/siemens-element-ng-copyright-notice.mjs.map +1 -1
  67. package/fesm2022/siemens-element-ng-dashboard.mjs +161 -169
  68. package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
  69. package/fesm2022/siemens-element-ng-datatable.mjs +9 -9
  70. package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
  71. package/fesm2022/siemens-element-ng-date-range-filter.mjs +128 -149
  72. package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
  73. package/fesm2022/siemens-element-ng-datepicker.mjs +260 -271
  74. package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
  75. package/fesm2022/siemens-element-ng-electron-titlebar.mjs +19 -18
  76. package/fesm2022/siemens-element-ng-electron-titlebar.mjs.map +1 -1
  77. package/fesm2022/siemens-element-ng-empty-state.mjs +11 -11
  78. package/fesm2022/siemens-element-ng-empty-state.mjs.map +1 -1
  79. package/fesm2022/siemens-element-ng-file-uploader.mjs +66 -69
  80. package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
  81. package/fesm2022/siemens-element-ng-filter-bar.mjs +23 -23
  82. package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
  83. package/fesm2022/siemens-element-ng-filtered-search.mjs +141 -159
  84. package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
  85. package/fesm2022/siemens-element-ng-footer.mjs +10 -10
  86. package/fesm2022/siemens-element-ng-footer.mjs.map +1 -1
  87. package/fesm2022/siemens-element-ng-form.mjs +99 -85
  88. package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
  89. package/fesm2022/siemens-element-ng-formly.mjs +96 -94
  90. package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
  91. package/fesm2022/siemens-element-ng-header-dropdown.mjs +33 -33
  92. package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
  93. package/fesm2022/siemens-element-ng-help-button.mjs +7 -6
  94. package/fesm2022/siemens-element-ng-help-button.mjs.map +1 -1
  95. package/fesm2022/siemens-element-ng-icon-status.mjs +4 -4
  96. package/fesm2022/siemens-element-ng-icon.mjs +53 -135
  97. package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
  98. package/fesm2022/siemens-element-ng-info-page.mjs +11 -12
  99. package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
  100. package/fesm2022/siemens-element-ng-inline-notification.mjs +15 -16
  101. package/fesm2022/siemens-element-ng-inline-notification.mjs.map +1 -1
  102. package/fesm2022/siemens-element-ng-ip-input.mjs +16 -16
  103. package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
  104. package/fesm2022/siemens-element-ng-landing-page.mjs +71 -71
  105. package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
  106. package/fesm2022/siemens-element-ng-language-switcher.mjs +13 -13
  107. package/fesm2022/siemens-element-ng-language-switcher.mjs.map +1 -1
  108. package/fesm2022/siemens-element-ng-link.mjs +22 -23
  109. package/fesm2022/siemens-element-ng-link.mjs.map +1 -1
  110. package/fesm2022/siemens-element-ng-list-details.mjs +68 -86
  111. package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
  112. package/fesm2022/siemens-element-ng-loading-spinner.mjs +38 -52
  113. package/fesm2022/siemens-element-ng-loading-spinner.mjs.map +1 -1
  114. package/fesm2022/siemens-element-ng-localization.mjs +14 -11
  115. package/fesm2022/siemens-element-ng-localization.mjs.map +1 -1
  116. package/fesm2022/siemens-element-ng-main-detail-container.mjs +30 -30
  117. package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
  118. package/fesm2022/siemens-element-ng-markdown-renderer.mjs +5 -5
  119. package/fesm2022/siemens-element-ng-markdown-renderer.mjs.map +1 -1
  120. package/fesm2022/siemens-element-ng-menu.mjs +55 -54
  121. package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
  122. package/fesm2022/siemens-element-ng-modal.mjs +10 -13
  123. package/fesm2022/siemens-element-ng-modal.mjs.map +1 -1
  124. package/fesm2022/siemens-element-ng-navbar-vertical.mjs +183 -298
  125. package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
  126. package/fesm2022/siemens-element-ng-navbar.mjs +43 -43
  127. package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
  128. package/fesm2022/siemens-element-ng-notification-item.mjs +14 -13
  129. package/fesm2022/siemens-element-ng-notification-item.mjs.map +1 -1
  130. package/fesm2022/siemens-element-ng-number-input.mjs +32 -32
  131. package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
  132. package/fesm2022/siemens-element-ng-pagination.mjs +21 -20
  133. package/fesm2022/siemens-element-ng-pagination.mjs.map +1 -1
  134. package/fesm2022/siemens-element-ng-password-strength.mjs +21 -21
  135. package/fesm2022/siemens-element-ng-password-strength.mjs.map +1 -1
  136. package/fesm2022/siemens-element-ng-password-toggle.mjs +19 -15
  137. package/fesm2022/siemens-element-ng-password-toggle.mjs.map +1 -1
  138. package/fesm2022/siemens-element-ng-phone-number.mjs +56 -50
  139. package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
  140. package/fesm2022/siemens-element-ng-photo-upload.mjs +48 -47
  141. package/fesm2022/siemens-element-ng-photo-upload.mjs.map +1 -1
  142. package/fesm2022/siemens-element-ng-pills-input.mjs +45 -44
  143. package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
  144. package/fesm2022/siemens-element-ng-popover-legacy.mjs +31 -31
  145. package/fesm2022/siemens-element-ng-popover-legacy.mjs.map +1 -1
  146. package/fesm2022/siemens-element-ng-popover.mjs +29 -29
  147. package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
  148. package/fesm2022/siemens-element-ng-progressbar.mjs +15 -15
  149. package/fesm2022/siemens-element-ng-progressbar.mjs.map +1 -1
  150. package/fesm2022/siemens-element-ng-resize-observer.mjs +25 -61
  151. package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
  152. package/fesm2022/siemens-element-ng-result-details-list.mjs +13 -12
  153. package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
  154. package/fesm2022/siemens-element-ng-search-bar.mjs +25 -24
  155. package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
  156. package/fesm2022/siemens-element-ng-select.mjs +204 -347
  157. package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
  158. package/fesm2022/siemens-element-ng-shadow-root.mjs +3 -3
  159. package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
  160. package/fesm2022/siemens-element-ng-side-panel.mjs +144 -69
  161. package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
  162. package/fesm2022/siemens-element-ng-skip-links.mjs +13 -13
  163. package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
  164. package/fesm2022/siemens-element-ng-slider.mjs +30 -29
  165. package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
  166. package/fesm2022/siemens-element-ng-sort-bar.mjs +14 -13
  167. package/fesm2022/siemens-element-ng-sort-bar.mjs.map +1 -1
  168. package/fesm2022/siemens-element-ng-split.mjs +26 -28
  169. package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
  170. package/fesm2022/siemens-element-ng-status-bar.mjs +42 -43
  171. package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
  172. package/fesm2022/siemens-element-ng-status-counter.mjs +11 -12
  173. package/fesm2022/siemens-element-ng-status-counter.mjs.map +1 -1
  174. package/fesm2022/siemens-element-ng-status-toggle.mjs +15 -16
  175. package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
  176. package/fesm2022/siemens-element-ng-summary-chip.mjs +16 -17
  177. package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
  178. package/fesm2022/siemens-element-ng-summary-widget.mjs +16 -16
  179. package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
  180. package/fesm2022/siemens-element-ng-system-banner.mjs +7 -7
  181. package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
  182. package/fesm2022/siemens-element-ng-tabs-legacy.mjs +16 -16
  183. package/fesm2022/siemens-element-ng-tabs-legacy.mjs.map +1 -1
  184. package/fesm2022/siemens-element-ng-tabs.mjs +44 -47
  185. package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
  186. package/fesm2022/siemens-element-ng-theme.mjs +4 -4
  187. package/fesm2022/siemens-element-ng-theme.mjs.map +1 -1
  188. package/fesm2022/siemens-element-ng-threshold.mjs +51 -71
  189. package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
  190. package/fesm2022/siemens-element-ng-toast-notification.mjs +26 -52
  191. package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
  192. package/fesm2022/siemens-element-ng-tooltip.mjs +60 -68
  193. package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
  194. package/fesm2022/siemens-element-ng-tour.mjs +20 -20
  195. package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
  196. package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
  197. package/fesm2022/siemens-element-ng-tree-view.mjs +92 -117
  198. package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
  199. package/fesm2022/siemens-element-ng-typeahead.mjs +46 -62
  200. package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
  201. package/fesm2022/siemens-element-ng-wizard.mjs +49 -48
  202. package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
  203. package/file-uploader/package.json +2 -1
  204. package/filter-bar/package.json +2 -1
  205. package/filtered-search/package.json +2 -1
  206. package/footer/package.json +2 -1
  207. package/form/package.json +2 -1
  208. package/formly/package.json +2 -1
  209. package/header-dropdown/package.json +2 -1
  210. package/help-button/package.json +2 -1
  211. package/icon/package.json +2 -1
  212. package/icon-status/package.json +2 -1
  213. package/info-page/package.json +2 -1
  214. package/inline-notification/package.json +2 -1
  215. package/ip-input/package.json +2 -1
  216. package/landing-page/package.json +2 -1
  217. package/language-switcher/package.json +2 -1
  218. package/link/package.json +2 -1
  219. package/list-details/package.json +2 -1
  220. package/loading-spinner/package.json +2 -1
  221. package/localization/package.json +2 -1
  222. package/main-detail-container/package.json +2 -1
  223. package/markdown-renderer/package.json +2 -1
  224. package/menu/package.json +2 -1
  225. package/modal/package.json +2 -1
  226. package/navbar/package.json +2 -1
  227. package/navbar-vertical/package.json +2 -1
  228. package/notification-item/package.json +2 -1
  229. package/number-input/package.json +2 -1
  230. package/package.json +115 -107
  231. package/pagination/package.json +2 -1
  232. package/password-strength/package.json +2 -1
  233. package/password-toggle/package.json +2 -1
  234. package/phone-number/package.json +2 -1
  235. package/photo-upload/package.json +2 -1
  236. package/pills-input/package.json +2 -1
  237. package/popover/package.json +2 -1
  238. package/popover-legacy/package.json +2 -1
  239. package/progressbar/package.json +2 -1
  240. package/resize-observer/package.json +2 -1
  241. package/result-details-list/package.json +2 -1
  242. package/schematics/collection.json +0 -12
  243. package/schematics/migration.json +15 -0
  244. package/schematics/migrations/data/attribute-selectors.js +1 -6
  245. package/schematics/migrations/data/component-names.js +9 -68
  246. package/schematics/migrations/data/element-selectors.js +9 -8
  247. package/schematics/migrations/data/index.js +0 -1
  248. package/schematics/migrations/data/migration-test-data.js +167 -0
  249. package/schematics/migrations/data/output-names.js +1 -7
  250. package/schematics/migrations/data/symbol-removals.js +4 -45
  251. package/schematics/migrations/element-migration/element-migration.js +1 -3
  252. package/schematics/migrations/index.js +15 -5
  253. package/schematics/migrations/ngx-translate/index.js +93 -0
  254. package/schematics/ng-update/index.js +17 -0
  255. package/schematics/ng-update/schema.json +15 -0
  256. package/schematics/simpl-siemens-migration/index.js +1 -5
  257. package/schematics/utils/ts-utils.js +135 -0
  258. package/search-bar/package.json +2 -1
  259. package/select/package.json +2 -1
  260. package/shadow-root/package.json +2 -1
  261. package/side-panel/package.json +2 -1
  262. package/skip-links/package.json +2 -1
  263. package/slider/package.json +2 -1
  264. package/sort-bar/package.json +2 -1
  265. package/split/package.json +2 -1
  266. package/status-bar/package.json +2 -1
  267. package/status-counter/package.json +2 -1
  268. package/status-toggle/package.json +2 -1
  269. package/summary-chip/package.json +2 -1
  270. package/summary-widget/package.json +2 -1
  271. package/system-banner/package.json +2 -1
  272. package/tabs/package.json +2 -1
  273. package/tabs-legacy/package.json +2 -1
  274. package/template-i18n.json +32 -25
  275. package/test-styles.scss +5 -0
  276. package/theme/package.json +2 -1
  277. package/threshold/package.json +2 -1
  278. package/toast-notification/package.json +2 -1
  279. package/tooltip/package.json +2 -1
  280. package/tour/package.json +2 -1
  281. package/translate/package.json +2 -1
  282. package/tree-view/package.json +2 -1
  283. package/typeahead/package.json +2 -1
  284. package/{accordion/index.d.ts → types/siemens-element-ng-accordion.d.ts} +2 -3
  285. package/{application-header/index.d.ts → types/siemens-element-ng-application-header.d.ts} +19 -18
  286. package/{autocomplete/index.d.ts → types/siemens-element-ng-autocomplete.d.ts} +1 -3
  287. package/{breadcrumb/index.d.ts → types/siemens-element-ng-breadcrumb.d.ts} +2 -2
  288. package/{chat-messages/index.d.ts → types/siemens-element-ng-chat-messages.d.ts} +72 -10
  289. package/{common/index.d.ts → types/siemens-element-ng-common.d.ts} +2 -30
  290. package/{content-action-bar/index.d.ts → types/siemens-element-ng-content-action-bar.d.ts} +2 -2
  291. package/{dashboard/index.d.ts → types/siemens-element-ng-dashboard.d.ts} +6 -6
  292. package/{date-range-filter/index.d.ts → types/siemens-element-ng-date-range-filter.d.ts} +28 -27
  293. package/{datepicker/index.d.ts → types/siemens-element-ng-datepicker.d.ts} +5 -6
  294. package/{electron-titlebar/index.d.ts → types/siemens-element-ng-electron-titlebar.d.ts} +4 -4
  295. package/{file-uploader/index.d.ts → types/siemens-element-ng-file-uploader.d.ts} +26 -26
  296. package/{filter-bar/index.d.ts → types/siemens-element-ng-filter-bar.d.ts} +4 -4
  297. package/{filtered-search/index.d.ts → types/siemens-element-ng-filtered-search.d.ts} +6 -21
  298. package/{form/index.d.ts → types/siemens-element-ng-form.d.ts} +4 -6
  299. package/{formly/index.d.ts → types/siemens-element-ng-formly.d.ts} +1 -1
  300. package/types/siemens-element-ng-icon.d.ts +203 -0
  301. package/{landing-page/index.d.ts → types/siemens-element-ng-landing-page.d.ts} +15 -15
  302. package/{language-switcher/index.d.ts → types/siemens-element-ng-language-switcher.d.ts} +1 -2
  303. package/{list-details/index.d.ts → types/siemens-element-ng-list-details.d.ts} +4 -11
  304. package/{loading-spinner/index.d.ts → types/siemens-element-ng-loading-spinner.d.ts} +2 -3
  305. package/{modal/index.d.ts → types/siemens-element-ng-modal.d.ts} +0 -6
  306. package/{navbar-vertical/index.d.ts → types/siemens-element-ng-navbar-vertical.d.ts} +12 -7
  307. package/{navbar/index.d.ts → types/siemens-element-ng-navbar.d.ts} +11 -11
  308. package/{notification-item/index.d.ts → types/siemens-element-ng-notification-item.d.ts} +15 -3
  309. package/{pagination/index.d.ts → types/siemens-element-ng-pagination.d.ts} +4 -4
  310. package/{password-toggle/index.d.ts → types/siemens-element-ng-password-toggle.d.ts} +6 -4
  311. package/{phone-number/index.d.ts → types/siemens-element-ng-phone-number.d.ts} +8 -11
  312. package/{pills-input/index.d.ts → types/siemens-element-ng-pills-input.d.ts} +3 -3
  313. package/{popover/index.d.ts → types/siemens-element-ng-popover.d.ts} +2 -2
  314. package/{resize-observer/index.d.ts → types/siemens-element-ng-resize-observer.d.ts} +0 -30
  315. package/{search-bar/index.d.ts → types/siemens-element-ng-search-bar.d.ts} +2 -2
  316. package/{select/index.d.ts → types/siemens-element-ng-select.d.ts} +18 -97
  317. package/{side-panel/index.d.ts → types/siemens-element-ng-side-panel.d.ts} +26 -5
  318. package/{slider/index.d.ts → types/siemens-element-ng-slider.d.ts} +4 -4
  319. package/{split/index.d.ts → types/siemens-element-ng-split.d.ts} +1 -3
  320. package/{status-bar/index.d.ts → types/siemens-element-ng-status-bar.d.ts} +6 -6
  321. package/{tabs-legacy/index.d.ts → types/siemens-element-ng-tabs-legacy.d.ts} +5 -0
  322. package/{threshold/index.d.ts → types/siemens-element-ng-threshold.d.ts} +7 -7
  323. package/{toast-notification/index.d.ts → types/siemens-element-ng-toast-notification.d.ts} +3 -4
  324. package/{tooltip/index.d.ts → types/siemens-element-ng-tooltip.d.ts} +3 -6
  325. package/{tour/index.d.ts → types/siemens-element-ng-tour.d.ts} +1 -10
  326. package/{translate/index.d.ts → types/siemens-element-ng-translate.d.ts} +8 -1
  327. package/{tree-view/index.d.ts → types/siemens-element-ng-tree-view.d.ts} +0 -1
  328. package/{typeahead/index.d.ts → types/siemens-element-ng-typeahead.d.ts} +0 -2
  329. package/{wizard/index.d.ts → types/siemens-element-ng-wizard.d.ts} +6 -6
  330. package/wizard/package.json +2 -1
  331. package/fesm2022/siemens-element-ng-unauthorized-page.mjs +0 -75
  332. package/fesm2022/siemens-element-ng-unauthorized-page.mjs.map +0 -1
  333. package/icon/index.d.ts +0 -285
  334. package/schematics/migrations/action-modal-migration/action-modal-migration.js +0 -162
  335. package/schematics/migrations/action-modal-migration/action-modal.mappings.js +0 -98
  336. package/schematics/migrations/action-modal-migration/index.js +0 -5
  337. package/schematics/migrations/wizard-migration/index.js +0 -80
  338. package/schematics/scss-import-to-siemens-migration/index.js +0 -101
  339. package/schematics/scss-import-to-siemens-migration/schema.json +0 -16
  340. package/schematics/scss-import-to-siemens-migration/style-mappings.js +0 -62
  341. package/schematics/ts-import-to-siemens-migration/index.js +0 -230
  342. package/schematics/ts-import-to-siemens-migration/mappings/charts-ng-mappings.js +0 -71
  343. package/schematics/ts-import-to-siemens-migration/mappings/dashboards-ng-mappings.js +0 -54
  344. package/schematics/ts-import-to-siemens-migration/mappings/element-ng-mappings.js +0 -705
  345. package/schematics/ts-import-to-siemens-migration/mappings/element-translate-ng-mappings.js +0 -21
  346. package/schematics/ts-import-to-siemens-migration/mappings/index.js +0 -10
  347. package/schematics/ts-import-to-siemens-migration/mappings/maps-ng-mappings.js +0 -47
  348. package/schematics/ts-import-to-siemens-migration/mappings/native-charts-ng-mappings.js +0 -33
  349. package/schematics/ts-import-to-siemens-migration/model.js +0 -4
  350. package/schematics/ts-import-to-siemens-migration/schema.json +0 -16
  351. package/unauthorized-page/index.d.ts +0 -44
  352. package/unauthorized-page/package.json +0 -3
  353. /package/{about/index.d.ts → types/siemens-element-ng-about.d.ts} +0 -0
  354. /package/{action-modal/index.d.ts → types/siemens-element-ng-action-modal.d.ts} +0 -0
  355. /package/{ag-grid/index.d.ts → types/siemens-element-ng-ag-grid.d.ts} +0 -0
  356. /package/{auto-collapsable-list/index.d.ts → types/siemens-element-ng-auto-collapsable-list.d.ts} +0 -0
  357. /package/{avatar/index.d.ts → types/siemens-element-ng-avatar.d.ts} +0 -0
  358. /package/{badge/index.d.ts → types/siemens-element-ng-badge.d.ts} +0 -0
  359. /package/{breadcrumb-router/index.d.ts → types/siemens-element-ng-breadcrumb-router.d.ts} +0 -0
  360. /package/{card/index.d.ts → types/siemens-element-ng-card.d.ts} +0 -0
  361. /package/{circle-status/index.d.ts → types/siemens-element-ng-circle-status.d.ts} +0 -0
  362. /package/{color-picker/index.d.ts → types/siemens-element-ng-color-picker.d.ts} +0 -0
  363. /package/{column-selection-dialog/index.d.ts → types/siemens-element-ng-column-selection-dialog.d.ts} +0 -0
  364. /package/{connection-strength/index.d.ts → types/siemens-element-ng-connection-strength.d.ts} +0 -0
  365. /package/{copyright-notice/index.d.ts → types/siemens-element-ng-copyright-notice.d.ts} +0 -0
  366. /package/{datatable/index.d.ts → types/siemens-element-ng-datatable.d.ts} +0 -0
  367. /package/{empty-state/index.d.ts → types/siemens-element-ng-empty-state.d.ts} +0 -0
  368. /package/{footer/index.d.ts → types/siemens-element-ng-footer.d.ts} +0 -0
  369. /package/{header-dropdown/index.d.ts → types/siemens-element-ng-header-dropdown.d.ts} +0 -0
  370. /package/{help-button/index.d.ts → types/siemens-element-ng-help-button.d.ts} +0 -0
  371. /package/{icon-status/index.d.ts → types/siemens-element-ng-icon-status.d.ts} +0 -0
  372. /package/{info-page/index.d.ts → types/siemens-element-ng-info-page.d.ts} +0 -0
  373. /package/{inline-notification/index.d.ts → types/siemens-element-ng-inline-notification.d.ts} +0 -0
  374. /package/{ip-input/index.d.ts → types/siemens-element-ng-ip-input.d.ts} +0 -0
  375. /package/{link/index.d.ts → types/siemens-element-ng-link.d.ts} +0 -0
  376. /package/{localization/index.d.ts → types/siemens-element-ng-localization.d.ts} +0 -0
  377. /package/{main-detail-container/index.d.ts → types/siemens-element-ng-main-detail-container.d.ts} +0 -0
  378. /package/{markdown-renderer/index.d.ts → types/siemens-element-ng-markdown-renderer.d.ts} +0 -0
  379. /package/{menu/index.d.ts → types/siemens-element-ng-menu.d.ts} +0 -0
  380. /package/{number-input/index.d.ts → types/siemens-element-ng-number-input.d.ts} +0 -0
  381. /package/{password-strength/index.d.ts → types/siemens-element-ng-password-strength.d.ts} +0 -0
  382. /package/{photo-upload/index.d.ts → types/siemens-element-ng-photo-upload.d.ts} +0 -0
  383. /package/{popover-legacy/index.d.ts → types/siemens-element-ng-popover-legacy.d.ts} +0 -0
  384. /package/{progressbar/index.d.ts → types/siemens-element-ng-progressbar.d.ts} +0 -0
  385. /package/{result-details-list/index.d.ts → types/siemens-element-ng-result-details-list.d.ts} +0 -0
  386. /package/{shadow-root/index.d.ts → types/siemens-element-ng-shadow-root.d.ts} +0 -0
  387. /package/{skip-links/index.d.ts → types/siemens-element-ng-skip-links.d.ts} +0 -0
  388. /package/{sort-bar/index.d.ts → types/siemens-element-ng-sort-bar.d.ts} +0 -0
  389. /package/{status-counter/index.d.ts → types/siemens-element-ng-status-counter.d.ts} +0 -0
  390. /package/{status-toggle/index.d.ts → types/siemens-element-ng-status-toggle.d.ts} +0 -0
  391. /package/{summary-chip/index.d.ts → types/siemens-element-ng-summary-chip.d.ts} +0 -0
  392. /package/{summary-widget/index.d.ts → types/siemens-element-ng-summary-widget.d.ts} +0 -0
  393. /package/{system-banner/index.d.ts → types/siemens-element-ng-system-banner.d.ts} +0 -0
  394. /package/{tabs/index.d.ts → types/siemens-element-ng-tabs.d.ts} +0 -0
  395. /package/{theme/index.d.ts → types/siemens-element-ng-theme.d.ts} +0 -0
  396. /package/{index.d.ts → types/siemens-element-ng.d.ts} +0 -0
@@ -1,8 +1,9 @@
1
- import { NgTemplateOutlet, NgClass } from '@angular/common';
1
+ import { NgTemplateOutlet } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { input, booleanAttribute, output, viewChild, signal, Component, inject, NgModule } from '@angular/core';
4
+ import { elementDown2 } from '@siemens/element-icons';
4
5
  import { SiHeaderDropdownComponent, SiHeaderDropdownTriggerDirective, SiHeaderDropdownItemsFactoryComponent, SI_HEADER_WITH_DROPDOWNS } from '@siemens/element-ng/header-dropdown';
5
- import { addIcons, elementDown2, SiIconComponent } from '@siemens/element-ng/icon';
6
+ import { addIcons, SiIconComponent } from '@siemens/element-ng/icon';
6
7
  import { SiLinkDirective } from '@siemens/element-ng/link';
7
8
  import { t, SiTranslatePipe } from '@siemens/element-translate-ng/translate';
8
9
  import { A11yModule } from '@angular/cdk/a11y';
@@ -21,7 +22,7 @@ class SiNavbarPrimaryComponent {
21
22
  *
22
23
  * @defaultValue []
23
24
  */
24
- primaryItems = input([]);
25
+ primaryItems = input([], ...(ngDevMode ? [{ debugName: "primaryItems" }] : []));
25
26
  /**
26
27
  * List of account dropdown elements (defined by `title` and `link`).
27
28
  *
@@ -33,19 +34,19 @@ class SiNavbarPrimaryComponent {
33
34
  * code between the <si-navbar-primary> tags. In this case you don't need this
34
35
  * property (will be ignored if you set anyway).
35
36
  */
36
- accountItems = input();
37
+ accountItems = input(...(ngDevMode ? [undefined, { debugName: "accountItems" }] : []));
37
38
  /**
38
39
  * Account settings name (`title`) and profile picture (`image` or `icon`)
39
40
  */
40
- account = input();
41
+ account = input(...(ngDevMode ? [undefined, { debugName: "account" }] : []));
41
42
  /**
42
43
  * URL of the navbar brand.
43
44
  */
44
- logoUrl = input();
45
+ logoUrl = input(...(ngDevMode ? [undefined, { debugName: "logoUrl" }] : []));
45
46
  /**
46
47
  * Title of the application.
47
48
  */
48
- appTitle = input();
49
+ appTitle = input(...(ngDevMode ? [undefined, { debugName: "appTitle" }] : []));
49
50
  /**
50
51
  * Configurable home link that is used at the logo and app title.
51
52
  * Use `undefined` to disable the link.
@@ -55,7 +56,7 @@ class SiNavbarPrimaryComponent {
55
56
  * { link: '/' }
56
57
  * ```
57
58
  */
58
- home = input({ link: '/' });
59
+ home = input({ link: '/' }, ...(ngDevMode ? [{ debugName: "home" }] : []));
59
60
  /**
60
61
  * title for the launchpad
61
62
  *
@@ -64,7 +65,7 @@ class SiNavbarPrimaryComponent {
64
65
  * t(() => $localize`:@@SI_LAUNCHPAD.TITLE:Launchpad`)
65
66
  * ```
66
67
  */
67
- appSwitcherTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.TITLE:Launchpad`));
68
+ appSwitcherTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.TITLE:Launchpad`), ...(ngDevMode ? [{ debugName: "appSwitcherTitle" }] : []));
68
69
  /**
69
70
  * sub-title for the launchpad
70
71
  *
@@ -73,7 +74,7 @@ class SiNavbarPrimaryComponent {
73
74
  * t(() => $localize`:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`)
74
75
  * ```
75
76
  */
76
- appSwitcherSubTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`));
77
+ appSwitcherSubTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`), ...(ngDevMode ? [{ debugName: "appSwitcherSubTitle" }] : []));
77
78
  /**
78
79
  * Title or translate key for the favorite apps section.
79
80
  *
@@ -82,7 +83,7 @@ class SiNavbarPrimaryComponent {
82
83
  * t(() => $localize`:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`)
83
84
  * ```
84
85
  */
85
- favoriteAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`));
86
+ favoriteAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`), ...(ngDevMode ? [{ debugName: "favoriteAppsTitle" }] : []));
86
87
  /**
87
88
  * Title or translate key for the default apps section.
88
89
  *
@@ -91,7 +92,7 @@ class SiNavbarPrimaryComponent {
91
92
  * t(() => $localize`:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`)
92
93
  * ```
93
94
  */
94
- defaultAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`));
95
+ defaultAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`), ...(ngDevMode ? [{ debugName: "defaultAppsTitle" }] : []));
95
96
  /**
96
97
  * Title or translate key for the show more apps button.
97
98
  *
@@ -100,7 +101,7 @@ class SiNavbarPrimaryComponent {
100
101
  * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_MORE:Show more`)
101
102
  * ```
102
103
  */
103
- showMoreAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SHOW_MORE:Show more`));
104
+ showMoreAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SHOW_MORE:Show more`), ...(ngDevMode ? [{ debugName: "showMoreAppsTitle" }] : []));
104
105
  /**
105
106
  * Title or translate key for the show less apps button.
106
107
  *
@@ -109,33 +110,33 @@ class SiNavbarPrimaryComponent {
109
110
  * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_LESS:Show less`)
110
111
  * ```
111
112
  */
112
- showLessAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SHOW_LESS:Show less`));
113
+ showLessAppsTitle = input(t(() => $localize `:@@SI_LAUNCHPAD.SHOW_LESS:Show less`), ...(ngDevMode ? [{ debugName: "showLessAppsTitle" }] : []));
113
114
  /**
114
115
  * All app items shown in the launchpad. The launchpad will not be visible if the
115
116
  * app items are undefined. The launchpad will be visible if the app items are an
116
117
  * empty array.
117
118
  */
118
- appItems = input();
119
+ appItems = input(...(ngDevMode ? [undefined, { debugName: "appItems" }] : []));
119
120
  /**
120
121
  * Like `appItems` but with the addition of categories. If this is set, `appItems` is ignored.
121
122
  */
122
- appCategoryItems = input();
123
+ appCategoryItems = input(...(ngDevMode ? [undefined, { debugName: "appCategoryItems" }] : []));
123
124
  /**
124
125
  * Allow the user to favorite apps which will then be displayed at the top.
125
126
  *
126
127
  * @defaultValue false
127
128
  */
128
- appItemsFavorites = input(false, { transform: booleanAttribute });
129
+ appItemsFavorites = input(false, { ...(ngDevMode ? { debugName: "appItemsFavorites" } : {}), transform: booleanAttribute });
129
130
  /**
130
131
  * "all apps" link in the launchpad
131
132
  */
132
- allAppsLink = input();
133
+ allAppsLink = input(...(ngDevMode ? [undefined, { debugName: "allAppsLink" }] : []));
133
134
  /**
134
135
  * Specifies whether the component should automatically be focused as soon as it is loaded.
135
136
  *
136
137
  * @defaultValue false
137
138
  */
138
- focusOnLoad = input(false, { transform: booleanAttribute });
139
+ focusOnLoad = input(false, { ...(ngDevMode ? { debugName: "focusOnLoad" } : {}), transform: booleanAttribute });
139
140
  /**
140
141
  * Marks the navbar as primary navigation element. Needed for a11y (screen reader).
141
142
  * Only one element should be primary. If multiple navbars are used, it's up to the
@@ -143,7 +144,7 @@ class SiNavbarPrimaryComponent {
143
144
  *
144
145
  * @defaultValue 'Primary'
145
146
  */
146
- navAriaLabel = input('Primary');
147
+ navAriaLabel = input('Primary', ...(ngDevMode ? [{ debugName: "navAriaLabel" }] : []));
147
148
  /**
148
149
  * Text to close the launchpad. Needed for a11y.
149
150
  *
@@ -152,7 +153,7 @@ class SiNavbarPrimaryComponent {
152
153
  * t(() => $localize`:@@SI_LAUNCHPAD.CLOSE:Close launchpad`)
153
154
  * ```
154
155
  */
155
- closeAppSwitcherText = input(t(() => $localize `:@@SI_LAUNCHPAD.CLOSE:Close launchpad`));
156
+ closeAppSwitcherText = input(t(() => $localize `:@@SI_LAUNCHPAD.CLOSE:Close launchpad`), ...(ngDevMode ? [{ debugName: "closeAppSwitcherText" }] : []));
156
157
  /**
157
158
  * Text for the launchpad icon. Needed for a11y.
158
159
  *
@@ -161,7 +162,7 @@ class SiNavbarPrimaryComponent {
161
162
  * t(() => $localize`:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`)
162
163
  * ```
163
164
  */
164
- openAppSwitcherText = input(t(() => $localize `:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`));
165
+ openAppSwitcherText = input(t(() => $localize `:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`), ...(ngDevMode ? [{ debugName: "openAppSwitcherText" }] : []));
165
166
  /**
166
167
  * Text or translate key for the toggle navigation icon. Needed for a11y.
167
168
  *
@@ -170,26 +171,26 @@ class SiNavbarPrimaryComponent {
170
171
  * t(() => $localize`:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`)
171
172
  * ```
172
173
  */
173
- toggleNavigationText = input(t(() => $localize `:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`));
174
+ toggleNavigationText = input(t(() => $localize `:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`), ...(ngDevMode ? [{ debugName: "toggleNavigationText" }] : []));
174
175
  /**
175
176
  * Aria label for the main menu landmark
176
177
  *
177
178
  * @defaultValue 'Header main'
178
179
  */
179
- ariaLabelMainMenu = input('Header main');
180
+ ariaLabelMainMenu = input('Header main', ...(ngDevMode ? [{ debugName: "ariaLabelMainMenu" }] : []));
180
181
  /**
181
182
  * Aria label for the secondary menu landmark
182
183
  *
183
184
  * @defaultValue 'Header secondary'
184
185
  */
185
- ariaLabelSecondaryMenu = input('Header secondary');
186
+ ariaLabelSecondaryMenu = input('Header secondary', ...(ngDevMode ? [{ debugName: "ariaLabelSecondaryMenu" }] : []));
186
187
  appItemFavoriteChanged = output();
187
188
  /** @internal */
188
189
  header = viewChild.required(SiApplicationHeaderComponent);
189
190
  /** @internal */
190
- collapsibleActions = viewChild(SiHeaderCollapsibleActionsComponent);
191
+ collapsibleActions = viewChild(SiHeaderCollapsibleActionsComponent, ...(ngDevMode ? [{ debugName: "collapsibleActions" }] : []));
191
192
  /** @internal */
192
- navItemCount = signal(0);
193
+ navItemCount = signal(0, ...(ngDevMode ? [{ debugName: "navItemCount" }] : []));
193
194
  newAppItems;
194
195
  active;
195
196
  /** @internal */
@@ -255,10 +256,10 @@ class SiNavbarPrimaryComponent {
255
256
  onFavoriteChange({ app, favorite }) {
256
257
  this.appItemFavoriteChanged.emit([app._src, favorite]);
257
258
  }
258
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarPrimaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
259
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiNavbarPrimaryComponent, isStandalone: true, selector: "si-navbar-primary", inputs: { primaryItems: { classPropertyName: "primaryItems", publicName: "primaryItems", isSignal: true, isRequired: false, transformFunction: null }, accountItems: { classPropertyName: "accountItems", publicName: "accountItems", isSignal: true, isRequired: false, transformFunction: null }, account: { classPropertyName: "account", publicName: "account", isSignal: true, isRequired: false, transformFunction: null }, logoUrl: { classPropertyName: "logoUrl", publicName: "logoUrl", isSignal: true, isRequired: false, transformFunction: null }, appTitle: { classPropertyName: "appTitle", publicName: "appTitle", isSignal: true, isRequired: false, transformFunction: null }, home: { classPropertyName: "home", publicName: "home", isSignal: true, isRequired: false, transformFunction: null }, appSwitcherTitle: { classPropertyName: "appSwitcherTitle", publicName: "appSwitcherTitle", isSignal: true, isRequired: false, transformFunction: null }, appSwitcherSubTitle: { classPropertyName: "appSwitcherSubTitle", publicName: "appSwitcherSubTitle", isSignal: true, isRequired: false, transformFunction: null }, favoriteAppsTitle: { classPropertyName: "favoriteAppsTitle", publicName: "favoriteAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, defaultAppsTitle: { classPropertyName: "defaultAppsTitle", publicName: "defaultAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, showMoreAppsTitle: { classPropertyName: "showMoreAppsTitle", publicName: "showMoreAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, showLessAppsTitle: { classPropertyName: "showLessAppsTitle", publicName: "showLessAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, appItems: { classPropertyName: "appItems", publicName: "appItems", isSignal: true, isRequired: false, transformFunction: null }, appCategoryItems: { classPropertyName: "appCategoryItems", publicName: "appCategoryItems", isSignal: true, isRequired: false, transformFunction: null }, appItemsFavorites: { classPropertyName: "appItemsFavorites", publicName: "appItemsFavorites", isSignal: true, isRequired: false, transformFunction: null }, allAppsLink: { classPropertyName: "allAppsLink", publicName: "allAppsLink", isSignal: true, isRequired: false, transformFunction: null }, focusOnLoad: { classPropertyName: "focusOnLoad", publicName: "focusOnLoad", isSignal: true, isRequired: false, transformFunction: null }, navAriaLabel: { classPropertyName: "navAriaLabel", publicName: "navAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, closeAppSwitcherText: { classPropertyName: "closeAppSwitcherText", publicName: "closeAppSwitcherText", isSignal: true, isRequired: false, transformFunction: null }, openAppSwitcherText: { classPropertyName: "openAppSwitcherText", publicName: "openAppSwitcherText", isSignal: true, isRequired: false, transformFunction: null }, toggleNavigationText: { classPropertyName: "toggleNavigationText", publicName: "toggleNavigationText", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelMainMenu: { classPropertyName: "ariaLabelMainMenu", publicName: "ariaLabelMainMenu", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelSecondaryMenu: { classPropertyName: "ariaLabelSecondaryMenu", publicName: "ariaLabelSecondaryMenu", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { appItemFavoriteChanged: "appItemFavoriteChanged" }, providers: [{ provide: SI_HEADER_WITH_DROPDOWNS, useExisting: SiNavbarPrimaryComponent }], viewQueries: [{ propertyName: "header", first: true, predicate: SiApplicationHeaderComponent, descendants: true, isSignal: true }, { propertyName: "collapsibleActions", first: true, predicate: SiHeaderCollapsibleActionsComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<si-application-header [launchpad]=\"newAppItems ? launchpad : undefined\">\n <si-header-brand>\n @if (logoUrl()) {\n <a class=\"header-logo header-custom-logo px-6 focus-inside\" [siLink]=\"home()\">\n <img alt=\"Siemens logo\" [src]=\"logoUrl()\" />\n </a>\n } @else {\n <a siHeaderLogo class=\"d-none d-md-flex\" [siLink]=\"home()\"></a>\n }\n @if (appTitle()) {\n <h1 class=\"application-name\">{{ appTitle() }}</h1>\n }\n </si-header-brand>\n\n @if (primaryItems().length) {\n <si-header-navigation [attr.aria-label]=\"ariaLabelMainMenu()\">\n @for (item of primaryItems(); track $index) {\n @if (item.items) {\n <button\n type=\"button\"\n si-header-navigation-item\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n [class.active]=\"active === item\"\n >\n {{ item.title | translate }}\n <ng-template #dropdown>\n <si-header-dropdown>\n <si-header-dropdown-items-factory\n [items]=\"item.items\"\n (activeChange)=\"$event ? (active = item) : null\"\n />\n </si-header-dropdown>\n </ng-template>\n </button>\n } @else {\n <a\n si-header-navigation-item\n activeClass=\"active\"\n [siLink]=\"item\"\n (activeChange)=\"$event ? (active = item) : null\"\n >\n {{ item.title | translate }}\n </a>\n }\n }\n </si-header-navigation>\n }\n @if (navItemCount() || account()) {\n <si-header-actions [attr.aria-label]=\"ariaLabelSecondaryMenu()\">\n @if (navItemCount()) {\n @if (navItemCount() === 1) {\n <ng-container *ngTemplateOutlet=\"actions\" />\n } @else {\n <si-header-collapsible-actions>\n <ng-container *ngTemplateOutlet=\"actions\" />\n </si-header-collapsible-actions>\n }\n }\n @if (account()) {\n <!--eslint-disable @angular-eslint/template/elements-content -->\n <button\n si-header-account-item\n type=\"button\"\n [name]=\"account()!.title\"\n [initials]=\"account()!.initials\"\n [imageUrl]=\"account()!.image\"\n [siHeaderDropdownTriggerFor]=\"accountDropdown\"\n ></button>\n <!--eslint-enable @angular-eslint/template/elements-content -->\n\n <ng-template #accountDropdown>\n <si-header-dropdown>\n <div class=\"d-block userinfo mx-5 mb-4\">\n <div class=\"si-h5 text-truncate\">{{ account()!.title }}</div>\n @if (account()!.email) {\n <div class=\"email\">{{ account()!.email }}</div>\n }\n <div class=\"d-flex align-items-center text-secondary mt-2\">\n @if (account()!.company) {\n <span class=\"label me-4\">{{ account()!.company | translate }}</span>\n }\n @if (account()!.role) {\n <span class=\"ms-0 badge bg-default\">\n {{ account()!.role | translate }}\n </span>\n }\n </div>\n </div>\n @if (accountItems()?.length) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <si-header-dropdown-items-factory [items]=\"accountItems()!\" />\n }\n @if (account()!.customContent) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <ng-content />\n }\n </si-header-dropdown>\n </ng-template>\n }\n </si-header-actions>\n } @else {\n <!-- Seems like @if makes ng-content believe that there is always a header-actions section. So we have to add it here. -->\n <si-header-actions />\n }\n</si-application-header>\n\n<ng-template #launchpad>\n <si-launchpad-factory\n [showLessAppsText]=\"showLessAppsTitle()\"\n [showMoreAppsText]=\"showMoreAppsTitle()\"\n [closeText]=\"closeAppSwitcherText()\"\n [titleText]=\"appSwitcherTitle()\"\n [subtitleText]=\"appSwitcherSubTitle()\"\n [enableFavorites]=\"appItemsFavorites()\"\n [favoriteAppsText]=\"favoriteAppsTitle()\"\n [apps]=\"newAppItems!\"\n (favoriteChange)=\"onFavoriteChange($event)\"\n />\n</ng-template>\n<ng-template #actions>\n <ng-content select=\"si-navbar-item[quickAction], element-navbar-item[quickAction='true']\" />\n</ng-template>\n", styles: [".header-custom-logo{content:initial;inline-size:auto}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SiLinkDirective, selector: "[siLink]", inputs: ["siLink", "siLinkDefaultTarget", "actionParam", "activeClass", "exactMatch", "ariaCurrent"], outputs: ["activeChange"], exportAs: ["siLink"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }, { kind: "component", type: SiApplicationHeaderComponent, selector: "si-application-header", inputs: ["expandBreakpoint", "launchpad", "launchpadLabel"] }, { kind: "component", type: SiLaunchpadFactoryComponent, selector: "si-launchpad-factory", inputs: ["closeText", "titleText", "subtitleText", "apps", "enableFavorites", "favoriteAppsText", "showMoreAppsText", "showLessAppsText"], outputs: ["favoriteChange"] }, { kind: "component", type: SiHeaderAccountItemComponent, selector: "button[si-header-account-item]", inputs: ["name", "initials", "imageUrl"] }, { kind: "component", type: SiHeaderDropdownComponent, selector: "si-header-dropdown" }, { kind: "directive", type: SiHeaderDropdownTriggerDirective, selector: "[siHeaderDropdownTriggerFor]", inputs: ["siHeaderDropdownTriggerFor", "dropdownData"], outputs: ["openChange"], exportAs: ["siHeaderDropdownTrigger"] }, { kind: "component", type: SiHeaderDropdownItemsFactoryComponent, selector: "si-header-dropdown-items-factory", inputs: ["items"], outputs: ["activeChange"] }, { kind: "component", type: SiHeaderNavigationItemComponent, selector: "button[si-header-navigation-item], a[si-header-navigation-item]" }, { kind: "directive", type: SiHeaderBrandDirective, selector: "si-header-brand" }, { kind: "component", type: SiHeaderNavigationComponent, selector: "si-header-navigation" }, { kind: "directive", type: SiHeaderActionsDirective, selector: "si-header-actions" }, { kind: "component", type: SiHeaderCollapsibleActionsComponent, selector: "si-header-collapsible-actions", inputs: ["mobileToggleLabel"] }, { kind: "directive", type: SiHeaderLogoDirective, selector: "si-header-logo, [siHeaderLogo]" }] });
259
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarPrimaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
260
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: SiNavbarPrimaryComponent, isStandalone: true, selector: "si-navbar-primary", inputs: { primaryItems: { classPropertyName: "primaryItems", publicName: "primaryItems", isSignal: true, isRequired: false, transformFunction: null }, accountItems: { classPropertyName: "accountItems", publicName: "accountItems", isSignal: true, isRequired: false, transformFunction: null }, account: { classPropertyName: "account", publicName: "account", isSignal: true, isRequired: false, transformFunction: null }, logoUrl: { classPropertyName: "logoUrl", publicName: "logoUrl", isSignal: true, isRequired: false, transformFunction: null }, appTitle: { classPropertyName: "appTitle", publicName: "appTitle", isSignal: true, isRequired: false, transformFunction: null }, home: { classPropertyName: "home", publicName: "home", isSignal: true, isRequired: false, transformFunction: null }, appSwitcherTitle: { classPropertyName: "appSwitcherTitle", publicName: "appSwitcherTitle", isSignal: true, isRequired: false, transformFunction: null }, appSwitcherSubTitle: { classPropertyName: "appSwitcherSubTitle", publicName: "appSwitcherSubTitle", isSignal: true, isRequired: false, transformFunction: null }, favoriteAppsTitle: { classPropertyName: "favoriteAppsTitle", publicName: "favoriteAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, defaultAppsTitle: { classPropertyName: "defaultAppsTitle", publicName: "defaultAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, showMoreAppsTitle: { classPropertyName: "showMoreAppsTitle", publicName: "showMoreAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, showLessAppsTitle: { classPropertyName: "showLessAppsTitle", publicName: "showLessAppsTitle", isSignal: true, isRequired: false, transformFunction: null }, appItems: { classPropertyName: "appItems", publicName: "appItems", isSignal: true, isRequired: false, transformFunction: null }, appCategoryItems: { classPropertyName: "appCategoryItems", publicName: "appCategoryItems", isSignal: true, isRequired: false, transformFunction: null }, appItemsFavorites: { classPropertyName: "appItemsFavorites", publicName: "appItemsFavorites", isSignal: true, isRequired: false, transformFunction: null }, allAppsLink: { classPropertyName: "allAppsLink", publicName: "allAppsLink", isSignal: true, isRequired: false, transformFunction: null }, focusOnLoad: { classPropertyName: "focusOnLoad", publicName: "focusOnLoad", isSignal: true, isRequired: false, transformFunction: null }, navAriaLabel: { classPropertyName: "navAriaLabel", publicName: "navAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, closeAppSwitcherText: { classPropertyName: "closeAppSwitcherText", publicName: "closeAppSwitcherText", isSignal: true, isRequired: false, transformFunction: null }, openAppSwitcherText: { classPropertyName: "openAppSwitcherText", publicName: "openAppSwitcherText", isSignal: true, isRequired: false, transformFunction: null }, toggleNavigationText: { classPropertyName: "toggleNavigationText", publicName: "toggleNavigationText", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelMainMenu: { classPropertyName: "ariaLabelMainMenu", publicName: "ariaLabelMainMenu", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelSecondaryMenu: { classPropertyName: "ariaLabelSecondaryMenu", publicName: "ariaLabelSecondaryMenu", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { appItemFavoriteChanged: "appItemFavoriteChanged" }, providers: [{ provide: SI_HEADER_WITH_DROPDOWNS, useExisting: SiNavbarPrimaryComponent }], viewQueries: [{ propertyName: "header", first: true, predicate: SiApplicationHeaderComponent, descendants: true, isSignal: true }, { propertyName: "collapsibleActions", first: true, predicate: SiHeaderCollapsibleActionsComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<si-application-header [launchpad]=\"newAppItems ? launchpad : undefined\">\n <si-header-brand>\n @if (logoUrl()) {\n <a class=\"header-logo header-custom-logo px-6 focus-inside\" [siLink]=\"home()\">\n <img alt=\"Siemens logo\" [src]=\"logoUrl()\" />\n </a>\n } @else {\n <a siHeaderLogo class=\"d-none d-md-flex\" [siLink]=\"home()\"></a>\n }\n @if (appTitle()) {\n <h1 class=\"application-name\">{{ appTitle() }}</h1>\n }\n </si-header-brand>\n\n @if (primaryItems().length) {\n <si-header-navigation [attr.aria-label]=\"ariaLabelMainMenu()\">\n @for (item of primaryItems(); track $index) {\n @if (item.items) {\n <button\n type=\"button\"\n si-header-navigation-item\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n [class.active]=\"active === item\"\n >\n {{ item.title | translate }}\n <ng-template #dropdown>\n <si-header-dropdown>\n <si-header-dropdown-items-factory\n [items]=\"item.items\"\n (activeChange)=\"$event ? (active = item) : null\"\n />\n </si-header-dropdown>\n </ng-template>\n </button>\n } @else {\n <a\n si-header-navigation-item\n activeClass=\"active\"\n [siLink]=\"item\"\n (activeChange)=\"$event ? (active = item) : null\"\n >\n {{ item.title | translate }}\n </a>\n }\n }\n </si-header-navigation>\n }\n @if (navItemCount() || account()) {\n <si-header-actions [attr.aria-label]=\"ariaLabelSecondaryMenu()\">\n @if (navItemCount()) {\n @if (navItemCount() === 1) {\n <ng-container *ngTemplateOutlet=\"actions\" />\n } @else {\n <si-header-collapsible-actions>\n <ng-container *ngTemplateOutlet=\"actions\" />\n </si-header-collapsible-actions>\n }\n }\n @if (account()) {\n <!--eslint-disable @angular-eslint/template/elements-content -->\n <button\n si-header-account-item\n type=\"button\"\n [name]=\"account()!.title\"\n [initials]=\"account()!.initials\"\n [imageUrl]=\"account()!.image\"\n [siHeaderDropdownTriggerFor]=\"accountDropdown\"\n ></button>\n <!--eslint-enable @angular-eslint/template/elements-content -->\n\n <ng-template #accountDropdown>\n <si-header-dropdown>\n <div class=\"d-block userinfo mx-5 mb-4\">\n <div class=\"si-h5 text-truncate\">{{ account()!.title }}</div>\n @if (account()!.email) {\n <div class=\"email\">{{ account()!.email }}</div>\n }\n <div class=\"d-flex align-items-center text-secondary mt-2\">\n @if (account()!.company) {\n <span class=\"label me-4\">{{ account()!.company | translate }}</span>\n }\n @if (account()!.role) {\n <span class=\"ms-0 badge bg-default\">\n {{ account()!.role | translate }}\n </span>\n }\n </div>\n </div>\n @if (accountItems()?.length) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <si-header-dropdown-items-factory [items]=\"accountItems()!\" />\n }\n @if (account()!.customContent) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <ng-content />\n }\n </si-header-dropdown>\n </ng-template>\n }\n </si-header-actions>\n } @else {\n <!-- Seems like @if makes ng-content believe that there is always a header-actions section. So we have to add it here. -->\n <si-header-actions />\n }\n</si-application-header>\n\n<ng-template #launchpad>\n <si-launchpad-factory\n [showLessAppsText]=\"showLessAppsTitle()\"\n [showMoreAppsText]=\"showMoreAppsTitle()\"\n [closeText]=\"closeAppSwitcherText()\"\n [titleText]=\"appSwitcherTitle()\"\n [subtitleText]=\"appSwitcherSubTitle()\"\n [enableFavorites]=\"appItemsFavorites()\"\n [favoriteAppsText]=\"favoriteAppsTitle()\"\n [apps]=\"newAppItems!\"\n (favoriteChange)=\"onFavoriteChange($event)\"\n />\n</ng-template>\n<ng-template #actions>\n <ng-content select=\"si-navbar-item[quickAction], element-navbar-item[quickAction='true']\" />\n</ng-template>\n", styles: [".header-custom-logo{content:initial;inline-size:auto}\n"], dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SiLinkDirective, selector: "[siLink]", inputs: ["siLink", "siLinkDefaultTarget", "actionParam", "activeClass", "exactMatch", "ariaCurrent"], outputs: ["activeChange"], exportAs: ["siLink"] }, { kind: "component", type: SiApplicationHeaderComponent, selector: "si-application-header", inputs: ["expandBreakpoint", "launchpad", "launchpadLabel"] }, { kind: "component", type: SiLaunchpadFactoryComponent, selector: "si-launchpad-factory", inputs: ["closeText", "titleText", "subtitleText", "apps", "enableFavorites", "favoriteAppsText", "showMoreAppsText", "showLessAppsText"], outputs: ["favoriteChange"] }, { kind: "component", type: SiHeaderAccountItemComponent, selector: "button[si-header-account-item]", inputs: ["name", "initials", "imageUrl"] }, { kind: "component", type: SiHeaderDropdownComponent, selector: "si-header-dropdown" }, { kind: "directive", type: SiHeaderDropdownTriggerDirective, selector: "[siHeaderDropdownTriggerFor]", inputs: ["siHeaderDropdownTriggerFor", "dropdownData"], outputs: ["openChange"], exportAs: ["siHeaderDropdownTrigger"] }, { kind: "component", type: SiHeaderDropdownItemsFactoryComponent, selector: "si-header-dropdown-items-factory", inputs: ["items"], outputs: ["activeChange"] }, { kind: "component", type: SiHeaderNavigationItemComponent, selector: "button[si-header-navigation-item], a[si-header-navigation-item]" }, { kind: "directive", type: SiHeaderBrandDirective, selector: "si-header-brand" }, { kind: "component", type: SiHeaderNavigationComponent, selector: "si-header-navigation" }, { kind: "directive", type: SiHeaderActionsDirective, selector: "si-header-actions" }, { kind: "component", type: SiHeaderCollapsibleActionsComponent, selector: "si-header-collapsible-actions", inputs: ["mobileToggleLabel"] }, { kind: "directive", type: SiHeaderLogoDirective, selector: "si-header-logo, [siHeaderLogo]" }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
260
261
  }
261
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarPrimaryComponent, decorators: [{
262
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarPrimaryComponent, decorators: [{
262
263
  type: Component,
263
264
  args: [{ selector: 'si-navbar-primary', imports: [
264
265
  A11yModule,
@@ -278,7 +279,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
278
279
  SiHeaderCollapsibleActionsComponent,
279
280
  SiHeaderLogoDirective
280
281
  ], providers: [{ provide: SI_HEADER_WITH_DROPDOWNS, useExisting: SiNavbarPrimaryComponent }], template: "<si-application-header [launchpad]=\"newAppItems ? launchpad : undefined\">\n <si-header-brand>\n @if (logoUrl()) {\n <a class=\"header-logo header-custom-logo px-6 focus-inside\" [siLink]=\"home()\">\n <img alt=\"Siemens logo\" [src]=\"logoUrl()\" />\n </a>\n } @else {\n <a siHeaderLogo class=\"d-none d-md-flex\" [siLink]=\"home()\"></a>\n }\n @if (appTitle()) {\n <h1 class=\"application-name\">{{ appTitle() }}</h1>\n }\n </si-header-brand>\n\n @if (primaryItems().length) {\n <si-header-navigation [attr.aria-label]=\"ariaLabelMainMenu()\">\n @for (item of primaryItems(); track $index) {\n @if (item.items) {\n <button\n type=\"button\"\n si-header-navigation-item\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n [class.active]=\"active === item\"\n >\n {{ item.title | translate }}\n <ng-template #dropdown>\n <si-header-dropdown>\n <si-header-dropdown-items-factory\n [items]=\"item.items\"\n (activeChange)=\"$event ? (active = item) : null\"\n />\n </si-header-dropdown>\n </ng-template>\n </button>\n } @else {\n <a\n si-header-navigation-item\n activeClass=\"active\"\n [siLink]=\"item\"\n (activeChange)=\"$event ? (active = item) : null\"\n >\n {{ item.title | translate }}\n </a>\n }\n }\n </si-header-navigation>\n }\n @if (navItemCount() || account()) {\n <si-header-actions [attr.aria-label]=\"ariaLabelSecondaryMenu()\">\n @if (navItemCount()) {\n @if (navItemCount() === 1) {\n <ng-container *ngTemplateOutlet=\"actions\" />\n } @else {\n <si-header-collapsible-actions>\n <ng-container *ngTemplateOutlet=\"actions\" />\n </si-header-collapsible-actions>\n }\n }\n @if (account()) {\n <!--eslint-disable @angular-eslint/template/elements-content -->\n <button\n si-header-account-item\n type=\"button\"\n [name]=\"account()!.title\"\n [initials]=\"account()!.initials\"\n [imageUrl]=\"account()!.image\"\n [siHeaderDropdownTriggerFor]=\"accountDropdown\"\n ></button>\n <!--eslint-enable @angular-eslint/template/elements-content -->\n\n <ng-template #accountDropdown>\n <si-header-dropdown>\n <div class=\"d-block userinfo mx-5 mb-4\">\n <div class=\"si-h5 text-truncate\">{{ account()!.title }}</div>\n @if (account()!.email) {\n <div class=\"email\">{{ account()!.email }}</div>\n }\n <div class=\"d-flex align-items-center text-secondary mt-2\">\n @if (account()!.company) {\n <span class=\"label me-4\">{{ account()!.company | translate }}</span>\n }\n @if (account()!.role) {\n <span class=\"ms-0 badge bg-default\">\n {{ account()!.role | translate }}\n </span>\n }\n </div>\n </div>\n @if (accountItems()?.length) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <si-header-dropdown-items-factory [items]=\"accountItems()!\" />\n }\n @if (account()!.customContent) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <ng-content />\n }\n </si-header-dropdown>\n </ng-template>\n }\n </si-header-actions>\n } @else {\n <!-- Seems like @if makes ng-content believe that there is always a header-actions section. So we have to add it here. -->\n <si-header-actions />\n }\n</si-application-header>\n\n<ng-template #launchpad>\n <si-launchpad-factory\n [showLessAppsText]=\"showLessAppsTitle()\"\n [showMoreAppsText]=\"showMoreAppsTitle()\"\n [closeText]=\"closeAppSwitcherText()\"\n [titleText]=\"appSwitcherTitle()\"\n [subtitleText]=\"appSwitcherSubTitle()\"\n [enableFavorites]=\"appItemsFavorites()\"\n [favoriteAppsText]=\"favoriteAppsTitle()\"\n [apps]=\"newAppItems!\"\n (favoriteChange)=\"onFavoriteChange($event)\"\n />\n</ng-template>\n<ng-template #actions>\n <ng-content select=\"si-navbar-item[quickAction], element-navbar-item[quickAction='true']\" />\n</ng-template>\n", styles: [".header-custom-logo{content:initial;inline-size:auto}\n"] }]
281
- }] });
282
+ }], propDecorators: { primaryItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "primaryItems", required: false }] }], accountItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "accountItems", required: false }] }], account: [{ type: i0.Input, args: [{ isSignal: true, alias: "account", required: false }] }], logoUrl: [{ type: i0.Input, args: [{ isSignal: true, alias: "logoUrl", required: false }] }], appTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "appTitle", required: false }] }], home: [{ type: i0.Input, args: [{ isSignal: true, alias: "home", required: false }] }], appSwitcherTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "appSwitcherTitle", required: false }] }], appSwitcherSubTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "appSwitcherSubTitle", required: false }] }], favoriteAppsTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "favoriteAppsTitle", required: false }] }], defaultAppsTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultAppsTitle", required: false }] }], showMoreAppsTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "showMoreAppsTitle", required: false }] }], showLessAppsTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "showLessAppsTitle", required: false }] }], appItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "appItems", required: false }] }], appCategoryItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "appCategoryItems", required: false }] }], appItemsFavorites: [{ type: i0.Input, args: [{ isSignal: true, alias: "appItemsFavorites", required: false }] }], allAppsLink: [{ type: i0.Input, args: [{ isSignal: true, alias: "allAppsLink", required: false }] }], focusOnLoad: [{ type: i0.Input, args: [{ isSignal: true, alias: "focusOnLoad", required: false }] }], navAriaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "navAriaLabel", required: false }] }], closeAppSwitcherText: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeAppSwitcherText", required: false }] }], openAppSwitcherText: [{ type: i0.Input, args: [{ isSignal: true, alias: "openAppSwitcherText", required: false }] }], toggleNavigationText: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleNavigationText", required: false }] }], ariaLabelMainMenu: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelMainMenu", required: false }] }], ariaLabelSecondaryMenu: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelSecondaryMenu", required: false }] }], appItemFavoriteChanged: [{ type: i0.Output, args: ["appItemFavoriteChanged"] }], header: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiApplicationHeaderComponent), { isSignal: true }] }], collapsibleActions: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiHeaderCollapsibleActionsComponent), { isSignal: true }] }] } });
282
283
 
283
284
  /**
284
285
  * Copyright (c) Siemens 2016 - 2025
@@ -290,14 +291,14 @@ class SiNavbarItemComponent {
290
291
  /**
291
292
  * MenuItem to display in the navbar.
292
293
  */
293
- item = input.required();
294
+ item = input.required(...(ngDevMode ? [{ debugName: "item" }] : []));
294
295
  /**
295
296
  * Is the item a quick action displayed on the end (right in LTR) side
296
297
  *
297
298
  * @defaultValue false
298
299
  */
299
- quickAction = input(false, { transform: booleanAttribute });
300
- dropdownTrigger = viewChild(SiHeaderDropdownTriggerDirective);
300
+ quickAction = input(false, { ...(ngDevMode ? { debugName: "quickAction" } : {}), transform: booleanAttribute });
301
+ dropdownTrigger = viewChild(SiHeaderDropdownTriggerDirective, ...(ngDevMode ? [{ debugName: "dropdownTrigger" }] : []));
301
302
  active = false;
302
303
  navbar = inject(SiNavbarPrimaryComponent);
303
304
  hasBadge = false;
@@ -329,22 +330,21 @@ class SiNavbarItemComponent {
329
330
  get visuallyHideTitle() {
330
331
  return !this.navbar.collapsibleActions()?.mobileExpanded();
331
332
  }
332
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
333
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiNavbarItemComponent, isStandalone: true, selector: "si-navbar-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, quickAction: { classPropertyName: "quickAction", publicName: "quickAction", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "d-contents" }, viewQueries: [{ propertyName: "dropdownTrigger", first: true, predicate: SiHeaderDropdownTriggerDirective, descendants: true, isSignal: true }], ngImport: i0, template: "@if (item().items || item().customContent) {\n <button\n type=\"button\"\n class=\"header-item focus-inside\"\n [class.active]=\"active\"\n [attr.aria-label]=\"item().title | translate\"\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n <si-icon class=\"dropdown-caret\" [icon]=\"icons.elementDown2\" />\n </button>\n} @else {\n <a\n class=\"header-item focus-inside\"\n activeClass=\"active\"\n [siLink]=\"item()\"\n [attr.aria-label]=\"item().title | translate\"\n (activeChange)=\"active = $event\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n </a>\n}\n\n<ng-template #itemContent>\n @let icon = item().icon;\n @if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n }\n @if (item().badge) {\n <div class=\"badge-text\">{{ item().badge }}</div>\n }\n <ng-content select=\"si-avatar\" />\n <div class=\"item-title\" [class.visually-hidden]=\"visuallyHideTitle\">\n {{ item().title | translate }}\n </div>\n</ng-template>\n\n<ng-template #dropdown>\n <si-header-dropdown>\n @if (item().items) {\n <si-header-dropdown-items-factory [items]=\"item().items!\" (activeChange)=\"active = $event\" />\n }\n @if (item().customContent) {\n <ng-content />\n }\n </si-header-dropdown>\n</ng-template>\n", dependencies: [{ kind: "directive", type: SiLinkDirective, selector: "[siLink]", inputs: ["siLink", "siLinkDefaultTarget", "actionParam", "activeClass", "exactMatch", "ariaCurrent"], outputs: ["activeChange"], exportAs: ["siLink"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiHeaderDropdownComponent, selector: "si-header-dropdown" }, { kind: "component", type: SiHeaderDropdownItemsFactoryComponent, selector: "si-header-dropdown-items-factory", inputs: ["items"], outputs: ["activeChange"] }, { kind: "directive", type: SiHeaderDropdownTriggerDirective, selector: "[siHeaderDropdownTriggerFor]", inputs: ["siHeaderDropdownTriggerFor", "dropdownData"], outputs: ["openChange"], exportAs: ["siHeaderDropdownTrigger"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
333
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
334
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: SiNavbarItemComponent, isStandalone: true, selector: "si-navbar-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, quickAction: { classPropertyName: "quickAction", publicName: "quickAction", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "d-contents" }, viewQueries: [{ propertyName: "dropdownTrigger", first: true, predicate: SiHeaderDropdownTriggerDirective, descendants: true, isSignal: true }], ngImport: i0, template: "@if (item().items || item().customContent) {\n <button\n type=\"button\"\n class=\"header-item focus-inside\"\n [class.active]=\"active\"\n [attr.aria-label]=\"item().title | translate\"\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n <si-icon class=\"dropdown-caret\" [icon]=\"icons.elementDown2\" />\n </button>\n} @else {\n <a\n class=\"header-item focus-inside\"\n activeClass=\"active\"\n [siLink]=\"item()\"\n [attr.aria-label]=\"item().title | translate\"\n (activeChange)=\"active = $event\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n </a>\n}\n\n<ng-template #itemContent>\n @let icon = item().icon;\n @if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n }\n @if (item().badge) {\n <div class=\"badge-text\">{{ item().badge }}</div>\n }\n <ng-content select=\"si-avatar\" />\n <div class=\"item-title\" [class.visually-hidden]=\"visuallyHideTitle\">\n {{ item().title | translate }}\n </div>\n</ng-template>\n\n<ng-template #dropdown>\n <si-header-dropdown>\n @if (item().items) {\n <si-header-dropdown-items-factory [items]=\"item().items!\" (activeChange)=\"active = $event\" />\n }\n @if (item().customContent) {\n <ng-content />\n }\n </si-header-dropdown>\n</ng-template>\n", dependencies: [{ kind: "directive", type: SiLinkDirective, selector: "[siLink]", inputs: ["siLink", "siLinkDefaultTarget", "actionParam", "activeClass", "exactMatch", "ariaCurrent"], outputs: ["activeChange"], exportAs: ["siLink"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiHeaderDropdownComponent, selector: "si-header-dropdown" }, { kind: "component", type: SiHeaderDropdownItemsFactoryComponent, selector: "si-header-dropdown-items-factory", inputs: ["items"], outputs: ["activeChange"] }, { kind: "directive", type: SiHeaderDropdownTriggerDirective, selector: "[siHeaderDropdownTriggerFor]", inputs: ["siHeaderDropdownTriggerFor", "dropdownData"], outputs: ["openChange"], exportAs: ["siHeaderDropdownTrigger"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
334
335
  }
335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarItemComponent, decorators: [{
336
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarItemComponent, decorators: [{
336
337
  type: Component,
337
338
  args: [{ selector: 'si-navbar-item', imports: [
338
339
  SiLinkDirective,
339
340
  SiTranslatePipe,
340
- NgClass,
341
341
  NgTemplateOutlet,
342
342
  SiHeaderDropdownComponent,
343
343
  SiHeaderDropdownItemsFactoryComponent,
344
344
  SiHeaderDropdownTriggerDirective,
345
345
  SiIconComponent
346
346
  ], host: { class: 'd-contents' }, template: "@if (item().items || item().customContent) {\n <button\n type=\"button\"\n class=\"header-item focus-inside\"\n [class.active]=\"active\"\n [attr.aria-label]=\"item().title | translate\"\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n <si-icon class=\"dropdown-caret\" [icon]=\"icons.elementDown2\" />\n </button>\n} @else {\n <a\n class=\"header-item focus-inside\"\n activeClass=\"active\"\n [siLink]=\"item()\"\n [attr.aria-label]=\"item().title | translate\"\n (activeChange)=\"active = $event\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n </a>\n}\n\n<ng-template #itemContent>\n @let icon = item().icon;\n @if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n }\n @if (item().badge) {\n <div class=\"badge-text\">{{ item().badge }}</div>\n }\n <ng-content select=\"si-avatar\" />\n <div class=\"item-title\" [class.visually-hidden]=\"visuallyHideTitle\">\n {{ item().title | translate }}\n </div>\n</ng-template>\n\n<ng-template #dropdown>\n <si-header-dropdown>\n @if (item().items) {\n <si-header-dropdown-items-factory [items]=\"item().items!\" (activeChange)=\"active = $event\" />\n }\n @if (item().customContent) {\n <ng-content />\n }\n </si-header-dropdown>\n</ng-template>\n" }]
347
- }] });
347
+ }], propDecorators: { item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: true }] }], quickAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "quickAction", required: false }] }], dropdownTrigger: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiHeaderDropdownTriggerDirective), { isSignal: true }] }] } });
348
348
 
349
349
  /**
350
350
  * Copyright (c) Siemens 2016 - 2025
@@ -363,11 +363,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
363
363
  const components = [SiNavbarItemComponent, SiNavbarPrimaryComponent];
364
364
  /** @deprecated Use the new `si-application-header` instead. */
365
365
  class SiNavbarModule {
366
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
367
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarModule, imports: [SiNavbarItemComponent, SiNavbarPrimaryComponent], exports: [SiNavbarItemComponent, SiNavbarPrimaryComponent] });
368
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarModule, imports: [components] });
366
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
367
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarModule, imports: [SiNavbarItemComponent, SiNavbarPrimaryComponent], exports: [SiNavbarItemComponent, SiNavbarPrimaryComponent] });
368
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarModule, imports: [components] });
369
369
  }
370
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiNavbarModule, decorators: [{
370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiNavbarModule, decorators: [{
371
371
  type: NgModule,
372
372
  args: [{
373
373
  imports: components,
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-element-ng-navbar.mjs","sources":["../../../../projects/element-ng/navbar/si-navbar-primary/si-navbar-primary.component.ts","../../../../projects/element-ng/navbar/si-navbar-primary/si-navbar-primary.component.html","../../../../projects/element-ng/navbar/si-navbar-item/si-navbar-item.component.ts","../../../../projects/element-ng/navbar/si-navbar-item/si-navbar-item.component.html","../../../../projects/element-ng/navbar/si-navbar-item/index.ts","../../../../projects/element-ng/navbar/si-navbar-primary/index.ts","../../../../projects/element-ng/navbar/si-navbar.module.ts","../../../../projects/element-ng/navbar/index.ts","../../../../projects/element-ng/navbar/siemens-element-ng-navbar.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n booleanAttribute,\n Component,\n input,\n OnChanges,\n output,\n signal,\n SimpleChanges,\n viewChild\n} from '@angular/core';\nimport {\n App,\n AppCategory,\n FavoriteChangeEvent,\n SiApplicationHeaderComponent,\n SiHeaderAccountItemComponent,\n SiHeaderActionsDirective,\n SiHeaderBrandDirective,\n SiHeaderCollapsibleActionsComponent,\n SiHeaderLogoDirective,\n SiHeaderNavigationComponent,\n SiHeaderNavigationItemComponent,\n SiLaunchpadFactoryComponent\n} from '@siemens/element-ng/application-header';\nimport { MenuItem } from '@siemens/element-ng/common';\nimport {\n HeaderWithDropdowns,\n SI_HEADER_WITH_DROPDOWNS,\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective\n} from '@siemens/element-ng/header-dropdown';\nimport { Link, SiLinkDirective } from '@siemens/element-ng/link';\nimport { SiTranslatePipe, t } from '@siemens/element-translate-ng/translate';\nimport { defer } from 'rxjs';\n\nimport { AccountItem } from '../account.model';\nimport { AppItem, AppItemCategory } from './si-navbar-primary.model';\n\n/** @deprecated Use the new `si-application-header` instead. */\n@Component({\n selector: 'si-navbar-primary',\n imports: [\n A11yModule,\n NgTemplateOutlet,\n SiLinkDirective,\n SiTranslatePipe,\n SiApplicationHeaderComponent,\n SiLaunchpadFactoryComponent,\n SiHeaderAccountItemComponent,\n SiHeaderDropdownComponent,\n SiHeaderDropdownTriggerDirective,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderNavigationItemComponent,\n SiHeaderBrandDirective,\n SiHeaderNavigationComponent,\n SiHeaderActionsDirective,\n SiHeaderCollapsibleActionsComponent,\n SiHeaderLogoDirective\n ],\n templateUrl: './si-navbar-primary.component.html',\n styles: `\n .header-custom-logo {\n content: initial;\n inline-size: auto;\n }\n `,\n providers: [{ provide: SI_HEADER_WITH_DROPDOWNS, useExisting: SiNavbarPrimaryComponent }]\n})\nexport class SiNavbarPrimaryComponent implements OnChanges, HeaderWithDropdowns {\n /**\n * List of navbar items which should be displayed at the left (in LTR) side next to the\n * banner.\n *\n * @defaultValue []\n */\n readonly primaryItems = input<MenuItem[]>([]);\n /**\n * List of account dropdown elements (defined by `title` and `link`).\n *\n * The menu item can have submenu items (supplying `items`: MenuItem[]).\n * Submenu items can be divided into groups by separators. A separator is\n * an item with only '-' set as `title`.\n *\n * Alternatively, you can can create a custom content by putting your html\n * code between the <si-navbar-primary> tags. In this case you don't need this\n * property (will be ignored if you set anyway).\n */\n readonly accountItems = input<MenuItem[]>();\n /**\n * Account settings name (`title`) and profile picture (`image` or `icon`)\n */\n readonly account = input<AccountItem>();\n /**\n * URL of the navbar brand.\n */\n readonly logoUrl = input<string>();\n /**\n * Title of the application.\n */\n readonly appTitle = input<string>();\n /**\n * Configurable home link that is used at the logo and app title.\n * Use `undefined` to disable the link.\n *\n * @defaultValue\n * ```\n * { link: '/' }\n * ```\n */\n readonly home = input<Link | undefined>({ link: '/' });\n /**\n * title for the launchpad\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.TITLE:Launchpad`)\n * ```\n */\n readonly appSwitcherTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.TITLE:Launchpad`));\n\n /**\n * sub-title for the launchpad\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`)\n * ```\n */\n readonly appSwitcherSubTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`)\n );\n\n /**\n * Title or translate key for the favorite apps section.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`)\n * ```\n */\n readonly favoriteAppsTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`)\n );\n\n /**\n * Title or translate key for the default apps section.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`)\n * ```\n */\n readonly defaultAppsTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`)\n );\n\n /**\n * Title or translate key for the show more apps button.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_MORE:Show more`)\n * ```\n */\n readonly showMoreAppsTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.SHOW_MORE:Show more`));\n\n /**\n * Title or translate key for the show less apps button.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_LESS:Show less`)\n * ```\n */\n readonly showLessAppsTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.SHOW_LESS:Show less`));\n\n /**\n * All app items shown in the launchpad. The launchpad will not be visible if the\n * app items are undefined. The launchpad will be visible if the app items are an\n * empty array.\n */\n readonly appItems = input<AppItem[]>();\n /**\n * Like `appItems` but with the addition of categories. If this is set, `appItems` is ignored.\n */\n readonly appCategoryItems = input<AppItemCategory[]>();\n\n /**\n * Allow the user to favorite apps which will then be displayed at the top.\n *\n * @defaultValue false\n */\n readonly appItemsFavorites = input(false, { transform: booleanAttribute });\n /**\n * \"all apps\" link in the launchpad\n */\n readonly allAppsLink = input<MenuItem>();\n /**\n * Specifies whether the component should automatically be focused as soon as it is loaded.\n *\n * @defaultValue false\n */\n readonly focusOnLoad = input(false, { transform: booleanAttribute });\n\n /**\n * Marks the navbar as primary navigation element. Needed for a11y (screen reader).\n * Only one element should be primary. If multiple navbars are used, it's up to the\n * user of the components to label them in the correct order.\n *\n * @defaultValue 'Primary'\n */\n readonly navAriaLabel = input('Primary');\n\n /**\n * Text to close the launchpad. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.CLOSE:Close launchpad`)\n * ```\n */\n readonly closeAppSwitcherText = input(t(() => $localize`:@@SI_LAUNCHPAD.CLOSE:Close launchpad`));\n\n /**\n * Text for the launchpad icon. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`)\n * ```\n */\n readonly openAppSwitcherText = input(\n t(() => $localize`:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`)\n );\n\n /**\n * Text or translate key for the toggle navigation icon. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`)\n * ```\n */\n readonly toggleNavigationText = input(\n t(() => $localize`:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`)\n );\n\n /**\n * Aria label for the main menu landmark\n *\n * @defaultValue 'Header main'\n */\n readonly ariaLabelMainMenu = input('Header main');\n\n /**\n * Aria label for the secondary menu landmark\n *\n * @defaultValue 'Header secondary'\n */\n readonly ariaLabelSecondaryMenu = input('Header secondary');\n\n readonly appItemFavoriteChanged = output<[AppItem, boolean]>();\n\n /** @internal */\n readonly header = viewChild.required(SiApplicationHeaderComponent);\n /** @internal */\n readonly collapsibleActions = viewChild(SiHeaderCollapsibleActionsComponent);\n /** @internal */\n readonly navItemCount = signal(0);\n\n protected newAppItems?: App[] | AppCategory[];\n protected active?: MenuItem;\n\n /** @internal */\n // defer is required as header is not available at the time of creation.`\n readonly inlineDropdown = defer(() => this.header().inlineDropdown);\n\n /** @internal */\n onDropdownItemTriggered(): void {\n this.header().onDropdownItemTriggered();\n }\n\n /** @internal */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.appItems || changes.appCategoryItems) {\n const appItems = this.appItems();\n const appCategoryItems = this.appCategoryItems();\n if (appCategoryItems) {\n this.newAppItems = appCategoryItems.map(category => ({\n // Violation by intention.\n // Empty strings should also be replaced by the default title.\n // We rely on this in our examples, so projects might as well.\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n name: category.category || this.defaultAppsTitle(),\n apps: this.convertApps(category.items)\n }));\n const allAppsLink = this.allAppsLink();\n if (allAppsLink && this.newAppItems.length) {\n const lastCategory = this.newAppItems.at(-1)!;\n lastCategory.apps.push({\n name: allAppsLink.title!,\n iconClass: allAppsLink.icon ?? 'element-plus',\n href: allAppsLink.href!,\n target: allAppsLink.target,\n _noFavorite: true // this should not show up in public API, but we need it for now.\n } as App);\n }\n } else if (appItems) {\n this.newAppItems = this.convertApps(appItems!);\n const allAppsLink = this.allAppsLink();\n if (allAppsLink) {\n this.newAppItems.push({\n name: allAppsLink.title!,\n iconClass: allAppsLink.icon ?? 'element-plus',\n href: allAppsLink.href!,\n target: allAppsLink.target,\n _noFavorite: true // this should not show up in public API, but we need it for now.\n } as App);\n }\n }\n }\n }\n\n private convertApps(apps: AppItem[]): App[] {\n return apps.map(app => ({\n name: app.title!,\n href: app.href!,\n external: app.isExternal,\n active: app.isActive,\n target: app.target,\n iconClass: app.icon,\n favorite: app.isFavorite,\n _src: app // this should not show up in public API, but we need it for now.\n }));\n }\n\n protected onFavoriteChange({ app, favorite }: FavoriteChangeEvent): void {\n this.appItemFavoriteChanged.emit([(app as any)._src, favorite]);\n }\n}\n","<si-application-header [launchpad]=\"newAppItems ? launchpad : undefined\">\n <si-header-brand>\n @if (logoUrl()) {\n <a class=\"header-logo header-custom-logo px-6 focus-inside\" [siLink]=\"home()\">\n <img alt=\"Siemens logo\" [src]=\"logoUrl()\" />\n </a>\n } @else {\n <a siHeaderLogo class=\"d-none d-md-flex\" [siLink]=\"home()\"></a>\n }\n @if (appTitle()) {\n <h1 class=\"application-name\">{{ appTitle() }}</h1>\n }\n </si-header-brand>\n\n @if (primaryItems().length) {\n <si-header-navigation [attr.aria-label]=\"ariaLabelMainMenu()\">\n @for (item of primaryItems(); track $index) {\n @if (item.items) {\n <button\n type=\"button\"\n si-header-navigation-item\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n [class.active]=\"active === item\"\n >\n {{ item.title | translate }}\n <ng-template #dropdown>\n <si-header-dropdown>\n <si-header-dropdown-items-factory\n [items]=\"item.items\"\n (activeChange)=\"$event ? (active = item) : null\"\n />\n </si-header-dropdown>\n </ng-template>\n </button>\n } @else {\n <a\n si-header-navigation-item\n activeClass=\"active\"\n [siLink]=\"item\"\n (activeChange)=\"$event ? (active = item) : null\"\n >\n {{ item.title | translate }}\n </a>\n }\n }\n </si-header-navigation>\n }\n @if (navItemCount() || account()) {\n <si-header-actions [attr.aria-label]=\"ariaLabelSecondaryMenu()\">\n @if (navItemCount()) {\n @if (navItemCount() === 1) {\n <ng-container *ngTemplateOutlet=\"actions\" />\n } @else {\n <si-header-collapsible-actions>\n <ng-container *ngTemplateOutlet=\"actions\" />\n </si-header-collapsible-actions>\n }\n }\n @if (account()) {\n <!--eslint-disable @angular-eslint/template/elements-content -->\n <button\n si-header-account-item\n type=\"button\"\n [name]=\"account()!.title\"\n [initials]=\"account()!.initials\"\n [imageUrl]=\"account()!.image\"\n [siHeaderDropdownTriggerFor]=\"accountDropdown\"\n ></button>\n <!--eslint-enable @angular-eslint/template/elements-content -->\n\n <ng-template #accountDropdown>\n <si-header-dropdown>\n <div class=\"d-block userinfo mx-5 mb-4\">\n <div class=\"si-h5 text-truncate\">{{ account()!.title }}</div>\n @if (account()!.email) {\n <div class=\"email\">{{ account()!.email }}</div>\n }\n <div class=\"d-flex align-items-center text-secondary mt-2\">\n @if (account()!.company) {\n <span class=\"label me-4\">{{ account()!.company | translate }}</span>\n }\n @if (account()!.role) {\n <span class=\"ms-0 badge bg-default\">\n {{ account()!.role | translate }}\n </span>\n }\n </div>\n </div>\n @if (accountItems()?.length) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <si-header-dropdown-items-factory [items]=\"accountItems()!\" />\n }\n @if (account()!.customContent) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <ng-content />\n }\n </si-header-dropdown>\n </ng-template>\n }\n </si-header-actions>\n } @else {\n <!-- Seems like @if makes ng-content believe that there is always a header-actions section. So we have to add it here. -->\n <si-header-actions />\n }\n</si-application-header>\n\n<ng-template #launchpad>\n <si-launchpad-factory\n [showLessAppsText]=\"showLessAppsTitle()\"\n [showMoreAppsText]=\"showMoreAppsTitle()\"\n [closeText]=\"closeAppSwitcherText()\"\n [titleText]=\"appSwitcherTitle()\"\n [subtitleText]=\"appSwitcherSubTitle()\"\n [enableFavorites]=\"appItemsFavorites()\"\n [favoriteAppsText]=\"favoriteAppsTitle()\"\n [apps]=\"newAppItems!\"\n (favoriteChange)=\"onFavoriteChange($event)\"\n />\n</ng-template>\n<ng-template #actions>\n <ng-content select=\"si-navbar-item[quickAction], element-navbar-item[quickAction='true']\" />\n</ng-template>\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n booleanAttribute,\n Component,\n DoCheck,\n inject,\n input,\n OnDestroy,\n OnInit,\n viewChild\n} from '@angular/core';\nimport { MenuItem } from '@siemens/element-ng/common';\nimport {\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective\n} from '@siemens/element-ng/header-dropdown';\nimport { addIcons, elementDown2, SiIconComponent } from '@siemens/element-ng/icon';\nimport { SiLinkDirective } from '@siemens/element-ng/link';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiNavbarPrimaryComponent } from '../si-navbar-primary/si-navbar-primary.component';\n\n/** @deprecated Use the new `si-application-header` instead. */\n@Component({\n selector: 'si-navbar-item',\n imports: [\n SiLinkDirective,\n SiTranslatePipe,\n NgClass,\n NgTemplateOutlet,\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective,\n SiIconComponent\n ],\n templateUrl: './si-navbar-item.component.html',\n host: { class: 'd-contents' }\n})\nexport class SiNavbarItemComponent implements OnInit, DoCheck, OnDestroy {\n protected readonly icons = addIcons({ elementDown2 });\n\n /**\n * MenuItem to display in the navbar.\n */\n readonly item = input.required<MenuItem>();\n\n /**\n * Is the item a quick action displayed on the end (right in LTR) side\n *\n * @defaultValue false\n */\n readonly quickAction = input(false, { transform: booleanAttribute });\n\n readonly dropdownTrigger = viewChild(SiHeaderDropdownTriggerDirective);\n\n protected active = false;\n protected navbar = inject(SiNavbarPrimaryComponent);\n\n private hasBadge = false;\n\n ngOnInit(): void {\n this.navbar.header().closeMobileMenus.subscribe(() => this.dropdownTrigger()?.close());\n this.navbar.navItemCount.update(value => value + 1);\n }\n\n ngDoCheck(): void {\n const item = this.item();\n const newHasBadge = !!(item.badge ?? item.badgeDot);\n if (this.quickAction() && this.hasBadge !== newHasBadge) {\n this.hasBadge = newHasBadge;\n if (this.hasBadge) {\n this.navbar.collapsibleActions()?.badgeCount.update(value => value + 1);\n } else {\n this.navbar.collapsibleActions()?.badgeCount.update(value => value - 1);\n }\n }\n }\n\n ngOnDestroy(): void {\n this.navbar.navItemCount.update(value => value - 1);\n }\n\n protected click(): void {\n if (!this.dropdownTrigger()) {\n this.navbar.header().closeMobileMenus.next();\n }\n }\n\n protected get visuallyHideTitle(): boolean {\n return !this.navbar.collapsibleActions()?.mobileExpanded();\n }\n}\n","@if (item().items || item().customContent) {\n <button\n type=\"button\"\n class=\"header-item focus-inside\"\n [class.active]=\"active\"\n [attr.aria-label]=\"item().title | translate\"\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n <si-icon class=\"dropdown-caret\" [icon]=\"icons.elementDown2\" />\n </button>\n} @else {\n <a\n class=\"header-item focus-inside\"\n activeClass=\"active\"\n [siLink]=\"item()\"\n [attr.aria-label]=\"item().title | translate\"\n (activeChange)=\"active = $event\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n </a>\n}\n\n<ng-template #itemContent>\n @let icon = item().icon;\n @if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n }\n @if (item().badge) {\n <div class=\"badge-text\">{{ item().badge }}</div>\n }\n <ng-content select=\"si-avatar\" />\n <div class=\"item-title\" [class.visually-hidden]=\"visuallyHideTitle\">\n {{ item().title | translate }}\n </div>\n</ng-template>\n\n<ng-template #dropdown>\n <si-header-dropdown>\n @if (item().items) {\n <si-header-dropdown-items-factory [items]=\"item().items!\" (activeChange)=\"active = $event\" />\n }\n @if (item().customContent) {\n <ng-content />\n }\n </si-header-dropdown>\n</ng-template>\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-item.component';\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-primary.component';\nexport * from './si-navbar-primary.model';\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiNavbarItemComponent } from './si-navbar-item/si-navbar-item.component';\nimport { SiNavbarPrimaryComponent } from './si-navbar-primary/si-navbar-primary.component';\n\nconst components = [SiNavbarItemComponent, SiNavbarPrimaryComponent];\n\n/** @deprecated Use the new `si-application-header` instead. */\n@NgModule({\n imports: components,\n exports: components\n})\nexport class SiNavbarModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-item/index';\nexport * from './si-navbar-primary/index';\nexport * from './si-navbar.module';\nexport * from './account.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"siemens-element-ng-navbar.mjs","sources":["../../../../projects/element-ng/navbar/si-navbar-primary/si-navbar-primary.component.ts","../../../../projects/element-ng/navbar/si-navbar-primary/si-navbar-primary.component.html","../../../../projects/element-ng/navbar/si-navbar-item/si-navbar-item.component.ts","../../../../projects/element-ng/navbar/si-navbar-item/si-navbar-item.component.html","../../../../projects/element-ng/navbar/si-navbar-item/index.ts","../../../../projects/element-ng/navbar/si-navbar-primary/index.ts","../../../../projects/element-ng/navbar/si-navbar.module.ts","../../../../projects/element-ng/navbar/index.ts","../../../../projects/element-ng/navbar/siemens-element-ng-navbar.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n booleanAttribute,\n Component,\n input,\n OnChanges,\n output,\n signal,\n SimpleChanges,\n viewChild\n} from '@angular/core';\nimport {\n App,\n AppCategory,\n FavoriteChangeEvent,\n SiApplicationHeaderComponent,\n SiHeaderAccountItemComponent,\n SiHeaderActionsDirective,\n SiHeaderBrandDirective,\n SiHeaderCollapsibleActionsComponent,\n SiHeaderLogoDirective,\n SiHeaderNavigationComponent,\n SiHeaderNavigationItemComponent,\n SiLaunchpadFactoryComponent\n} from '@siemens/element-ng/application-header';\nimport { MenuItem } from '@siemens/element-ng/common';\nimport {\n HeaderWithDropdowns,\n SI_HEADER_WITH_DROPDOWNS,\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective\n} from '@siemens/element-ng/header-dropdown';\nimport { Link, SiLinkDirective } from '@siemens/element-ng/link';\nimport { SiTranslatePipe, t } from '@siemens/element-translate-ng/translate';\nimport { defer } from 'rxjs';\n\nimport { AccountItem } from '../account.model';\nimport { AppItem, AppItemCategory } from './si-navbar-primary.model';\n\n/** @deprecated Use the new `si-application-header` instead. */\n@Component({\n selector: 'si-navbar-primary',\n imports: [\n A11yModule,\n NgTemplateOutlet,\n SiLinkDirective,\n SiTranslatePipe,\n SiApplicationHeaderComponent,\n SiLaunchpadFactoryComponent,\n SiHeaderAccountItemComponent,\n SiHeaderDropdownComponent,\n SiHeaderDropdownTriggerDirective,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderNavigationItemComponent,\n SiHeaderBrandDirective,\n SiHeaderNavigationComponent,\n SiHeaderActionsDirective,\n SiHeaderCollapsibleActionsComponent,\n SiHeaderLogoDirective\n ],\n templateUrl: './si-navbar-primary.component.html',\n styles: `\n .header-custom-logo {\n content: initial;\n inline-size: auto;\n }\n `,\n providers: [{ provide: SI_HEADER_WITH_DROPDOWNS, useExisting: SiNavbarPrimaryComponent }]\n})\nexport class SiNavbarPrimaryComponent implements OnChanges, HeaderWithDropdowns {\n /**\n * List of navbar items which should be displayed at the left (in LTR) side next to the\n * banner.\n *\n * @defaultValue []\n */\n readonly primaryItems = input<MenuItem[]>([]);\n /**\n * List of account dropdown elements (defined by `title` and `link`).\n *\n * The menu item can have submenu items (supplying `items`: MenuItem[]).\n * Submenu items can be divided into groups by separators. A separator is\n * an item with only '-' set as `title`.\n *\n * Alternatively, you can can create a custom content by putting your html\n * code between the <si-navbar-primary> tags. In this case you don't need this\n * property (will be ignored if you set anyway).\n */\n readonly accountItems = input<MenuItem[]>();\n /**\n * Account settings name (`title`) and profile picture (`image` or `icon`)\n */\n readonly account = input<AccountItem>();\n /**\n * URL of the navbar brand.\n */\n readonly logoUrl = input<string>();\n /**\n * Title of the application.\n */\n readonly appTitle = input<string>();\n /**\n * Configurable home link that is used at the logo and app title.\n * Use `undefined` to disable the link.\n *\n * @defaultValue\n * ```\n * { link: '/' }\n * ```\n */\n readonly home = input<Link | undefined>({ link: '/' });\n /**\n * title for the launchpad\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.TITLE:Launchpad`)\n * ```\n */\n readonly appSwitcherTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.TITLE:Launchpad`));\n\n /**\n * sub-title for the launchpad\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`)\n * ```\n */\n readonly appSwitcherSubTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.SUB_TITLE:Access all your apps`)\n );\n\n /**\n * Title or translate key for the favorite apps section.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`)\n * ```\n */\n readonly favoriteAppsTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.FAVORITE_APPS:Favorite apps`)\n );\n\n /**\n * Title or translate key for the default apps section.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`)\n * ```\n */\n readonly defaultAppsTitle = input(\n t(() => $localize`:@@SI_LAUNCHPAD.DEFAULT_CATEGORY_TITLE:Apps`)\n );\n\n /**\n * Title or translate key for the show more apps button.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_MORE:Show more`)\n * ```\n */\n readonly showMoreAppsTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.SHOW_MORE:Show more`));\n\n /**\n * Title or translate key for the show less apps button.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.SHOW_LESS:Show less`)\n * ```\n */\n readonly showLessAppsTitle = input(t(() => $localize`:@@SI_LAUNCHPAD.SHOW_LESS:Show less`));\n\n /**\n * All app items shown in the launchpad. The launchpad will not be visible if the\n * app items are undefined. The launchpad will be visible if the app items are an\n * empty array.\n */\n readonly appItems = input<AppItem[]>();\n /**\n * Like `appItems` but with the addition of categories. If this is set, `appItems` is ignored.\n */\n readonly appCategoryItems = input<AppItemCategory[]>();\n\n /**\n * Allow the user to favorite apps which will then be displayed at the top.\n *\n * @defaultValue false\n */\n readonly appItemsFavorites = input(false, { transform: booleanAttribute });\n /**\n * \"all apps\" link in the launchpad\n */\n readonly allAppsLink = input<MenuItem>();\n /**\n * Specifies whether the component should automatically be focused as soon as it is loaded.\n *\n * @defaultValue false\n */\n readonly focusOnLoad = input(false, { transform: booleanAttribute });\n\n /**\n * Marks the navbar as primary navigation element. Needed for a11y (screen reader).\n * Only one element should be primary. If multiple navbars are used, it's up to the\n * user of the components to label them in the correct order.\n *\n * @defaultValue 'Primary'\n */\n readonly navAriaLabel = input('Primary');\n\n /**\n * Text to close the launchpad. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_LAUNCHPAD.CLOSE:Close launchpad`)\n * ```\n */\n readonly closeAppSwitcherText = input(t(() => $localize`:@@SI_LAUNCHPAD.CLOSE:Close launchpad`));\n\n /**\n * Text for the launchpad icon. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`)\n * ```\n */\n readonly openAppSwitcherText = input(\n t(() => $localize`:@@SI_NAVBAR.OPEN_LAUNCHPAD:Open launchpad`)\n );\n\n /**\n * Text or translate key for the toggle navigation icon. Needed for a11y.\n *\n * @defaultValue\n * ```\n * t(() => $localize`:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`)\n * ```\n */\n readonly toggleNavigationText = input(\n t(() => $localize`:@@SI_NAVBAR.TOGGLE_NAVIGATION:Toggle navigation`)\n );\n\n /**\n * Aria label for the main menu landmark\n *\n * @defaultValue 'Header main'\n */\n readonly ariaLabelMainMenu = input('Header main');\n\n /**\n * Aria label for the secondary menu landmark\n *\n * @defaultValue 'Header secondary'\n */\n readonly ariaLabelSecondaryMenu = input('Header secondary');\n\n readonly appItemFavoriteChanged = output<[AppItem, boolean]>();\n\n /** @internal */\n readonly header = viewChild.required(SiApplicationHeaderComponent);\n /** @internal */\n readonly collapsibleActions = viewChild(SiHeaderCollapsibleActionsComponent);\n /** @internal */\n readonly navItemCount = signal(0);\n\n protected newAppItems?: App[] | AppCategory[];\n protected active?: MenuItem;\n\n /** @internal */\n // defer is required as header is not available at the time of creation.`\n readonly inlineDropdown = defer(() => this.header().inlineDropdown);\n\n /** @internal */\n onDropdownItemTriggered(): void {\n this.header().onDropdownItemTriggered();\n }\n\n /** @internal */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.appItems || changes.appCategoryItems) {\n const appItems = this.appItems();\n const appCategoryItems = this.appCategoryItems();\n if (appCategoryItems) {\n this.newAppItems = appCategoryItems.map(category => ({\n // Violation by intention.\n // Empty strings should also be replaced by the default title.\n // We rely on this in our examples, so projects might as well.\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n name: category.category || this.defaultAppsTitle(),\n apps: this.convertApps(category.items)\n }));\n const allAppsLink = this.allAppsLink();\n if (allAppsLink && this.newAppItems.length) {\n const lastCategory = this.newAppItems.at(-1)!;\n lastCategory.apps.push({\n name: allAppsLink.title!,\n iconClass: allAppsLink.icon ?? 'element-plus',\n href: allAppsLink.href!,\n target: allAppsLink.target,\n _noFavorite: true // this should not show up in public API, but we need it for now.\n } as App);\n }\n } else if (appItems) {\n this.newAppItems = this.convertApps(appItems!);\n const allAppsLink = this.allAppsLink();\n if (allAppsLink) {\n this.newAppItems.push({\n name: allAppsLink.title!,\n iconClass: allAppsLink.icon ?? 'element-plus',\n href: allAppsLink.href!,\n target: allAppsLink.target,\n _noFavorite: true // this should not show up in public API, but we need it for now.\n } as App);\n }\n }\n }\n }\n\n private convertApps(apps: AppItem[]): App[] {\n return apps.map(app => ({\n name: app.title!,\n href: app.href!,\n external: app.isExternal,\n active: app.isActive,\n target: app.target,\n iconClass: app.icon,\n favorite: app.isFavorite,\n _src: app // this should not show up in public API, but we need it for now.\n }));\n }\n\n protected onFavoriteChange({ app, favorite }: FavoriteChangeEvent): void {\n this.appItemFavoriteChanged.emit([(app as any)._src, favorite]);\n }\n}\n","<si-application-header [launchpad]=\"newAppItems ? launchpad : undefined\">\n <si-header-brand>\n @if (logoUrl()) {\n <a class=\"header-logo header-custom-logo px-6 focus-inside\" [siLink]=\"home()\">\n <img alt=\"Siemens logo\" [src]=\"logoUrl()\" />\n </a>\n } @else {\n <a siHeaderLogo class=\"d-none d-md-flex\" [siLink]=\"home()\"></a>\n }\n @if (appTitle()) {\n <h1 class=\"application-name\">{{ appTitle() }}</h1>\n }\n </si-header-brand>\n\n @if (primaryItems().length) {\n <si-header-navigation [attr.aria-label]=\"ariaLabelMainMenu()\">\n @for (item of primaryItems(); track $index) {\n @if (item.items) {\n <button\n type=\"button\"\n si-header-navigation-item\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n [class.active]=\"active === item\"\n >\n {{ item.title | translate }}\n <ng-template #dropdown>\n <si-header-dropdown>\n <si-header-dropdown-items-factory\n [items]=\"item.items\"\n (activeChange)=\"$event ? (active = item) : null\"\n />\n </si-header-dropdown>\n </ng-template>\n </button>\n } @else {\n <a\n si-header-navigation-item\n activeClass=\"active\"\n [siLink]=\"item\"\n (activeChange)=\"$event ? (active = item) : null\"\n >\n {{ item.title | translate }}\n </a>\n }\n }\n </si-header-navigation>\n }\n @if (navItemCount() || account()) {\n <si-header-actions [attr.aria-label]=\"ariaLabelSecondaryMenu()\">\n @if (navItemCount()) {\n @if (navItemCount() === 1) {\n <ng-container *ngTemplateOutlet=\"actions\" />\n } @else {\n <si-header-collapsible-actions>\n <ng-container *ngTemplateOutlet=\"actions\" />\n </si-header-collapsible-actions>\n }\n }\n @if (account()) {\n <!--eslint-disable @angular-eslint/template/elements-content -->\n <button\n si-header-account-item\n type=\"button\"\n [name]=\"account()!.title\"\n [initials]=\"account()!.initials\"\n [imageUrl]=\"account()!.image\"\n [siHeaderDropdownTriggerFor]=\"accountDropdown\"\n ></button>\n <!--eslint-enable @angular-eslint/template/elements-content -->\n\n <ng-template #accountDropdown>\n <si-header-dropdown>\n <div class=\"d-block userinfo mx-5 mb-4\">\n <div class=\"si-h5 text-truncate\">{{ account()!.title }}</div>\n @if (account()!.email) {\n <div class=\"email\">{{ account()!.email }}</div>\n }\n <div class=\"d-flex align-items-center text-secondary mt-2\">\n @if (account()!.company) {\n <span class=\"label me-4\">{{ account()!.company | translate }}</span>\n }\n @if (account()!.role) {\n <span class=\"ms-0 badge bg-default\">\n {{ account()!.role | translate }}\n </span>\n }\n </div>\n </div>\n @if (accountItems()?.length) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <si-header-dropdown-items-factory [items]=\"accountItems()!\" />\n }\n @if (account()!.customContent) {\n <div class=\"d-block dropdown-divider\" role=\"separator\"></div>\n <ng-content />\n }\n </si-header-dropdown>\n </ng-template>\n }\n </si-header-actions>\n } @else {\n <!-- Seems like @if makes ng-content believe that there is always a header-actions section. So we have to add it here. -->\n <si-header-actions />\n }\n</si-application-header>\n\n<ng-template #launchpad>\n <si-launchpad-factory\n [showLessAppsText]=\"showLessAppsTitle()\"\n [showMoreAppsText]=\"showMoreAppsTitle()\"\n [closeText]=\"closeAppSwitcherText()\"\n [titleText]=\"appSwitcherTitle()\"\n [subtitleText]=\"appSwitcherSubTitle()\"\n [enableFavorites]=\"appItemsFavorites()\"\n [favoriteAppsText]=\"favoriteAppsTitle()\"\n [apps]=\"newAppItems!\"\n (favoriteChange)=\"onFavoriteChange($event)\"\n />\n</ng-template>\n<ng-template #actions>\n <ng-content select=\"si-navbar-item[quickAction], element-navbar-item[quickAction='true']\" />\n</ng-template>\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n booleanAttribute,\n Component,\n DoCheck,\n inject,\n input,\n OnDestroy,\n OnInit,\n viewChild\n} from '@angular/core';\nimport { elementDown2 } from '@siemens/element-icons';\nimport { MenuItem } from '@siemens/element-ng/common';\nimport {\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective\n} from '@siemens/element-ng/header-dropdown';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\nimport { SiLinkDirective } from '@siemens/element-ng/link';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiNavbarPrimaryComponent } from '../si-navbar-primary/si-navbar-primary.component';\n\n/** @deprecated Use the new `si-application-header` instead. */\n@Component({\n selector: 'si-navbar-item',\n imports: [\n SiLinkDirective,\n SiTranslatePipe,\n NgTemplateOutlet,\n SiHeaderDropdownComponent,\n SiHeaderDropdownItemsFactoryComponent,\n SiHeaderDropdownTriggerDirective,\n SiIconComponent\n ],\n templateUrl: './si-navbar-item.component.html',\n host: { class: 'd-contents' }\n})\nexport class SiNavbarItemComponent implements OnInit, DoCheck, OnDestroy {\n protected readonly icons = addIcons({ elementDown2 });\n\n /**\n * MenuItem to display in the navbar.\n */\n readonly item = input.required<MenuItem>();\n\n /**\n * Is the item a quick action displayed on the end (right in LTR) side\n *\n * @defaultValue false\n */\n readonly quickAction = input(false, { transform: booleanAttribute });\n\n readonly dropdownTrigger = viewChild(SiHeaderDropdownTriggerDirective);\n\n protected active = false;\n protected navbar = inject(SiNavbarPrimaryComponent);\n\n private hasBadge = false;\n\n ngOnInit(): void {\n this.navbar.header().closeMobileMenus.subscribe(() => this.dropdownTrigger()?.close());\n this.navbar.navItemCount.update(value => value + 1);\n }\n\n ngDoCheck(): void {\n const item = this.item();\n const newHasBadge = !!(item.badge ?? item.badgeDot);\n if (this.quickAction() && this.hasBadge !== newHasBadge) {\n this.hasBadge = newHasBadge;\n if (this.hasBadge) {\n this.navbar.collapsibleActions()?.badgeCount.update(value => value + 1);\n } else {\n this.navbar.collapsibleActions()?.badgeCount.update(value => value - 1);\n }\n }\n }\n\n ngOnDestroy(): void {\n this.navbar.navItemCount.update(value => value - 1);\n }\n\n protected click(): void {\n if (!this.dropdownTrigger()) {\n this.navbar.header().closeMobileMenus.next();\n }\n }\n\n protected get visuallyHideTitle(): boolean {\n return !this.navbar.collapsibleActions()?.mobileExpanded();\n }\n}\n","@if (item().items || item().customContent) {\n <button\n type=\"button\"\n class=\"header-item focus-inside\"\n [class.active]=\"active\"\n [attr.aria-label]=\"item().title | translate\"\n [siHeaderDropdownTriggerFor]=\"dropdown\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n <si-icon class=\"dropdown-caret\" [icon]=\"icons.elementDown2\" />\n </button>\n} @else {\n <a\n class=\"header-item focus-inside\"\n activeClass=\"active\"\n [siLink]=\"item()\"\n [attr.aria-label]=\"item().title | translate\"\n (activeChange)=\"active = $event\"\n (click)=\"click()\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\" />\n </a>\n}\n\n<ng-template #itemContent>\n @let icon = item().icon;\n @if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n }\n @if (item().badge) {\n <div class=\"badge-text\">{{ item().badge }}</div>\n }\n <ng-content select=\"si-avatar\" />\n <div class=\"item-title\" [class.visually-hidden]=\"visuallyHideTitle\">\n {{ item().title | translate }}\n </div>\n</ng-template>\n\n<ng-template #dropdown>\n <si-header-dropdown>\n @if (item().items) {\n <si-header-dropdown-items-factory [items]=\"item().items!\" (activeChange)=\"active = $event\" />\n }\n @if (item().customContent) {\n <ng-content />\n }\n </si-header-dropdown>\n</ng-template>\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-item.component';\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-primary.component';\nexport * from './si-navbar-primary.model';\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiNavbarItemComponent } from './si-navbar-item/si-navbar-item.component';\nimport { SiNavbarPrimaryComponent } from './si-navbar-primary/si-navbar-primary.component';\n\nconst components = [SiNavbarItemComponent, SiNavbarPrimaryComponent];\n\n/** @deprecated Use the new `si-application-header` instead. */\n@NgModule({\n imports: components,\n exports: components\n})\nexport class SiNavbarModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2025\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-navbar-item/index';\nexport * from './si-navbar-primary/index';\nexport * from './si-navbar.module';\nexport * from './account.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;AAGG;AA0CH;MA8Ba,wBAAwB,CAAA;AACnC;;;;;AAKG;AACM,IAAA,YAAY,GAAG,KAAK,CAAa,EAAE,wDAAC;AAC7C;;;;;;;;;;AAUG;IACM,YAAY,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAc;AAC3C;;AAEG;IACM,OAAO,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAe;AACvC;;AAEG;IACM,OAAO,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;AAClC;;AAEG;IACM,QAAQ,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;AACnC;;;;;;;;AAQG;IACM,IAAI,GAAG,KAAK,CAAmB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AACtD;;;;;;;AAOG;AACM,IAAA,gBAAgB,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,+BAAA,CAAiC,CAAC,4DAAC;AAEtF;;;;;;;AAOG;AACM,IAAA,mBAAmB,GAAG,KAAK,CAClC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,8CAAA,CAAgD,CAAC,+DACnE;AAED;;;;;;;AAOG;AACM,IAAA,iBAAiB,GAAG,KAAK,CAChC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,2CAAA,CAA6C,CAAC,6DAChE;AAED;;;;;;;AAOG;AACM,IAAA,gBAAgB,GAAG,KAAK,CAC/B,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,2CAAA,CAA6C,CAAC,4DAChE;AAED;;;;;;;AAOG;AACM,IAAA,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,mCAAA,CAAqC,CAAC,6DAAC;AAE3F;;;;;;;AAOG;AACM,IAAA,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,mCAAA,CAAqC,CAAC,6DAAC;AAE3F;;;;AAIG;IACM,QAAQ,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAa;AACtC;;AAEG;IACM,gBAAgB,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAqB;AAEtD;;;;AAIG;IACM,iBAAiB,GAAG,KAAK,CAAC,KAAK,8DAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAC1E;;AAEG;IACM,WAAW,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAY;AACxC;;;;AAIG;IACM,WAAW,GAAG,KAAK,CAAC,KAAK,wDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEpE;;;;;;AAMG;AACM,IAAA,YAAY,GAAG,KAAK,CAAC,SAAS,wDAAC;AAExC;;;;;;;AAOG;AACM,IAAA,oBAAoB,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,qCAAA,CAAuC,CAAC,gEAAC;AAEhG;;;;;;;AAOG;AACM,IAAA,mBAAmB,GAAG,KAAK,CAClC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,0CAAA,CAA4C,CAAC,+DAC/D;AAED;;;;;;;AAOG;AACM,IAAA,oBAAoB,GAAG,KAAK,CACnC,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA,gDAAA,CAAkD,CAAC,gEACrE;AAED;;;;AAIG;AACM,IAAA,iBAAiB,GAAG,KAAK,CAAC,aAAa,6DAAC;AAEjD;;;;AAIG;AACM,IAAA,sBAAsB,GAAG,KAAK,CAAC,kBAAkB,kEAAC;IAElD,sBAAsB,GAAG,MAAM,EAAsB;;AAGrD,IAAA,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,4BAA4B,CAAC;;AAEzD,IAAA,kBAAkB,GAAG,SAAS,CAAC,mCAAmC,8DAAC;;AAEnE,IAAA,YAAY,GAAG,MAAM,CAAC,CAAC,wDAAC;AAEvB,IAAA,WAAW;AACX,IAAA,MAAM;;;AAIP,IAAA,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC;;IAGnE,uBAAuB,GAAA;AACrB,QAAA,IAAI,CAAC,MAAM,EAAE,CAAC,uBAAuB,EAAE;IACzC;;AAGA,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,gBAAgB,EAAE;AAChD,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE;YAChD,IAAI,gBAAgB,EAAE;gBACpB,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,KAAK;;;;;oBAKnD,IAAI,EAAE,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBAClD,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK;AACtC,iBAAA,CAAC,CAAC;AACH,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;gBACtC,IAAI,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;oBAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE;AAC7C,oBAAA,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,WAAW,CAAC,KAAM;AACxB,wBAAA,SAAS,EAAE,WAAW,CAAC,IAAI,IAAI,cAAc;wBAC7C,IAAI,EAAE,WAAW,CAAC,IAAK;wBACvB,MAAM,EAAE,WAAW,CAAC,MAAM;wBAC1B,WAAW,EAAE,IAAI;AACX,qBAAA,CAAC;gBACX;YACF;iBAAO,IAAI,QAAQ,EAAE;gBACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAS,CAAC;AAC9C,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;gBACtC,IAAI,WAAW,EAAE;AACf,oBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;wBACpB,IAAI,EAAE,WAAW,CAAC,KAAM;AACxB,wBAAA,SAAS,EAAE,WAAW,CAAC,IAAI,IAAI,cAAc;wBAC7C,IAAI,EAAE,WAAW,CAAC,IAAK;wBACvB,MAAM,EAAE,WAAW,CAAC,MAAM;wBAC1B,WAAW,EAAE,IAAI;AACX,qBAAA,CAAC;gBACX;YACF;QACF;IACF;AAEQ,IAAA,WAAW,CAAC,IAAe,EAAA;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK;YACtB,IAAI,EAAE,GAAG,CAAC,KAAM;YAChB,IAAI,EAAE,GAAG,CAAC,IAAK;YACf,QAAQ,EAAE,GAAG,CAAC,UAAU;YACxB,MAAM,EAAE,GAAG,CAAC,QAAQ;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,GAAG,CAAC,IAAI;YACnB,QAAQ,EAAE,GAAG,CAAC,UAAU;YACxB,IAAI,EAAE,GAAG;AACV,SAAA,CAAC,CAAC;IACL;AAEU,IAAA,gBAAgB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAuB,EAAA;AAC/D,QAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAE,GAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACjE;uGA9QW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,oBAAA,EAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,UAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,oBAAA,EAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,UAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,sBAAA,EAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,SAAA,EAFxB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAsMpD,4BAA4B,qGAEzB,mCAAmC,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjR7E,i+IA0HA,EAAA,MAAA,EAAA,CAAA,yDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDzEI,UAAU,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACV,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,eAAe,4MAEf,4BAA4B,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,WAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC5B,2BAA2B,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,cAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC3B,4BAA4B,qHAC5B,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACzB,gCAAgC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,4BAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChC,qCAAqC,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACrC,+BAA+B,EAAA,QAAA,EAAA,iEAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC/B,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACtB,2BAA2B,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC3B,wBAAwB,8DACxB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,qBAAqB,EAAA,QAAA,EAAA,gCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAZrB,eAAe,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA;;2FAuBN,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBA7BpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAAA,OAAA,EACpB;wBACP,UAAU;wBACV,gBAAgB;wBAChB,eAAe;wBACf,eAAe;wBACf,4BAA4B;wBAC5B,2BAA2B;wBAC3B,4BAA4B;wBAC5B,yBAAyB;wBACzB,gCAAgC;wBAChC,qCAAqC;wBACrC,+BAA+B;wBAC/B,sBAAsB;wBACtB,2BAA2B;wBAC3B,wBAAwB;wBACxB,mCAAmC;wBACnC;qBACD,EAAA,SAAA,EAQU,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAA,wBAA0B,EAAE,CAAC,EAAA,QAAA,EAAA,i+IAAA,EAAA,MAAA,EAAA,CAAA,yDAAA,CAAA,EAAA;AAsMpD,SAAA,CAAA,EAAA,cAAA,EAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAAA,4BAA4B,iGAEzB,mCAAmC,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEjR7E;;;AAGG;AAyBH;MAea,qBAAqB,CAAA;AACb,IAAA,KAAK,GAAG,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;AAErD;;AAEG;AACM,IAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,+CAAY;AAE1C;;;;AAIG;IACM,WAAW,GAAG,KAAK,CAAC,KAAK,wDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE3D,IAAA,eAAe,GAAG,SAAS,CAAC,gCAAgC,2DAAC;IAE5D,MAAM,GAAG,KAAK;AACd,IAAA,MAAM,GAAG,MAAM,CAAC,wBAAwB,CAAC;IAE3C,QAAQ,GAAG,KAAK;IAExB,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC;AACtF,QAAA,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;IACrD;IAEA,SAAS,GAAA;AACP,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,QAAA,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;AACvD,YAAA,IAAI,CAAC,QAAQ,GAAG,WAAW;AAC3B,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;YACzE;iBAAO;AACL,gBAAA,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;YACzE;QACF;IACF;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;IACrD;IAEU,KAAK,GAAA;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE;YAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE;QAC9C;IACF;AAEA,IAAA,IAAc,iBAAiB,GAAA;QAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,cAAc,EAAE;IAC5D;uGApDW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,6aAeK,gCAAgC,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1DvE,03CAiDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDjBI,eAAe,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,aAAA,EAAA,YAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEf,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,yBAAyB,+DACzB,qCAAqC,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACrC,gCAAgC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,4BAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChC,eAAe,iEALf,eAAe,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA;;2FAUN,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAdjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAAA,OAAA,EACjB;wBACP,eAAe;wBACf,eAAe;wBACf,gBAAgB;wBAChB,yBAAyB;wBACzB,qCAAqC;wBACrC,gCAAgC;wBAChC;AACD,qBAAA,EAAA,IAAA,EAEK,EAAE,KAAK,EAAE,YAAY,EAAE,EAAA,QAAA,EAAA,03CAAA,EAAA;8RAiBQ,gCAAgC,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE1DvE;;;AAGG;;ACHH;;;AAGG;;ACHH;;;AAGG;AAMH,MAAM,UAAU,GAAG,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;AAEpE;MAKa,cAAc,CAAA;uGAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAPP,qBAAqB,EAAE,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAA/C,qBAAqB,EAAE,wBAAwB,CAAA,EAAA,CAAA;AAOtD,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAHhB,UAAU,CAAA,EAAA,CAAA;;2FAGR,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,UAAU;AACnB,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACfD;;;AAGG;;ACHH;;AAEG;;;;"}