@siemens/element-ng 49.16.0 → 51.0.0-rc.10

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 (314) hide show
  1. package/README.md +1 -1
  2. package/fesm2022/siemens-element-ng-about.mjs +41 -25
  3. package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
  4. package/fesm2022/siemens-element-ng-accordion.mjs +59 -41
  5. package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
  6. package/fesm2022/siemens-element-ng-action-modal.mjs +83 -53
  7. package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
  8. package/fesm2022/siemens-element-ng-ag-grid.mjs +143 -148
  9. package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
  10. package/fesm2022/siemens-element-ng-application-header.mjs +180 -188
  11. package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
  12. package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +34 -28
  13. package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
  14. package/fesm2022/siemens-element-ng-autocomplete.mjs +27 -22
  15. package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
  16. package/fesm2022/siemens-element-ng-avatar.mjs +34 -24
  17. package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
  18. package/fesm2022/siemens-element-ng-badge.mjs +9 -8
  19. package/fesm2022/siemens-element-ng-badge.mjs.map +1 -1
  20. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +17 -14
  21. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
  22. package/fesm2022/siemens-element-ng-breadcrumb.mjs +21 -17
  23. package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
  24. package/fesm2022/siemens-element-ng-card.mjs +72 -47
  25. package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
  26. package/fesm2022/siemens-element-ng-carousel.mjs +58 -34
  27. package/fesm2022/siemens-element-ng-carousel.mjs.map +1 -1
  28. package/fesm2022/siemens-element-ng-chat-messages.mjs +323 -215
  29. package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
  30. package/fesm2022/siemens-element-ng-circle-status.mjs +39 -25
  31. package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
  32. package/fesm2022/siemens-element-ng-color-picker.mjs +44 -34
  33. package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
  34. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +58 -37
  35. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
  36. package/fesm2022/siemens-element-ng-common.mjs +22 -22
  37. package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
  38. package/fesm2022/siemens-element-ng-connection-strength.mjs +14 -12
  39. package/fesm2022/siemens-element-ng-connection-strength.mjs.map +1 -1
  40. package/fesm2022/siemens-element-ng-content-action-bar.mjs +37 -28
  41. package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
  42. package/fesm2022/siemens-element-ng-copyright-notice.mjs +19 -14
  43. package/fesm2022/siemens-element-ng-copyright-notice.mjs.map +1 -1
  44. package/fesm2022/siemens-element-ng-dashboard.mjs +337 -223
  45. package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
  46. package/fesm2022/siemens-element-ng-datatable.mjs +12 -15
  47. package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
  48. package/fesm2022/siemens-element-ng-date-range-filter.mjs +126 -76
  49. package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
  50. package/fesm2022/siemens-element-ng-datepicker.mjs +393 -251
  51. package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
  52. package/fesm2022/siemens-element-ng-electron-titlebar.mjs +22 -17
  53. package/fesm2022/siemens-element-ng-electron-titlebar.mjs.map +1 -1
  54. package/fesm2022/siemens-element-ng-empty-state.mjs +15 -12
  55. package/fesm2022/siemens-element-ng-empty-state.mjs.map +1 -1
  56. package/fesm2022/siemens-element-ng-file-uploader.mjs +105 -91
  57. package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
  58. package/fesm2022/siemens-element-ng-filter-bar.mjs +33 -25
  59. package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
  60. package/fesm2022/siemens-element-ng-filtered-search.mjs +274 -165
  61. package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
  62. package/fesm2022/siemens-element-ng-footer.mjs +12 -10
  63. package/fesm2022/siemens-element-ng-footer.mjs.map +1 -1
  64. package/fesm2022/siemens-element-ng-form.mjs +361 -116
  65. package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
  66. package/fesm2022/siemens-element-ng-formly-legacy.mjs +99 -0
  67. package/fesm2022/siemens-element-ng-formly-legacy.mjs.map +1 -0
  68. package/fesm2022/siemens-element-ng-formly.mjs +224 -318
  69. package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
  70. package/fesm2022/siemens-element-ng-header-dropdown.mjs +40 -30
  71. package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
  72. package/fesm2022/siemens-element-ng-help-button.mjs +6 -6
  73. package/fesm2022/siemens-element-ng-help-button.mjs.map +1 -1
  74. package/fesm2022/siemens-element-ng-icon.mjs +56 -57
  75. package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
  76. package/fesm2022/siemens-element-ng-info-page.mjs +17 -11
  77. package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
  78. package/fesm2022/siemens-element-ng-inline-notification.mjs +19 -14
  79. package/fesm2022/siemens-element-ng-inline-notification.mjs.map +1 -1
  80. package/fesm2022/siemens-element-ng-ip-input.mjs +19 -15
  81. package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
  82. package/fesm2022/siemens-element-ng-landing-page.mjs +121 -75
  83. package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
  84. package/fesm2022/siemens-element-ng-language-switcher.mjs +16 -12
  85. package/fesm2022/siemens-element-ng-language-switcher.mjs.map +1 -1
  86. package/fesm2022/siemens-element-ng-link.mjs +31 -21
  87. package/fesm2022/siemens-element-ng-link.mjs.map +1 -1
  88. package/fesm2022/siemens-element-ng-list-details.mjs +132 -66
  89. package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
  90. package/fesm2022/siemens-element-ng-loading-spinner.mjs +51 -64
  91. package/fesm2022/siemens-element-ng-loading-spinner.mjs.map +1 -1
  92. package/fesm2022/siemens-element-ng-localization.mjs +14 -12
  93. package/fesm2022/siemens-element-ng-localization.mjs.map +1 -1
  94. package/fesm2022/siemens-element-ng-main-detail-container.mjs +116 -51
  95. package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
  96. package/fesm2022/siemens-element-ng-maplibre.mjs +401 -0
  97. package/fesm2022/siemens-element-ng-maplibre.mjs.map +1 -0
  98. package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs +70 -0
  99. package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs.map +1 -0
  100. package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs +215 -0
  101. package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs.map +1 -0
  102. package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs +76 -0
  103. package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs.map +1 -0
  104. package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs +86 -0
  105. package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs.map +1 -0
  106. package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs +130 -0
  107. package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs.map +1 -0
  108. package/fesm2022/siemens-element-ng-markdown.mjs +800 -0
  109. package/fesm2022/siemens-element-ng-markdown.mjs.map +1 -0
  110. package/fesm2022/siemens-element-ng-menu.mjs +71 -57
  111. package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
  112. package/fesm2022/siemens-element-ng-modal.mjs +14 -11
  113. package/fesm2022/siemens-element-ng-modal.mjs.map +1 -1
  114. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +251 -206
  115. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
  116. package/fesm2022/siemens-element-ng-navbar-vertical.mjs +123 -86
  117. package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
  118. package/fesm2022/siemens-element-ng-navbar.mjs +72 -45
  119. package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
  120. package/fesm2022/siemens-element-ng-notification-item.mjs +19 -11
  121. package/fesm2022/siemens-element-ng-notification-item.mjs.map +1 -1
  122. package/fesm2022/siemens-element-ng-number-input.mjs +41 -29
  123. package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
  124. package/fesm2022/siemens-element-ng-pagination.mjs +31 -20
  125. package/fesm2022/siemens-element-ng-pagination.mjs.map +1 -1
  126. package/fesm2022/siemens-element-ng-password-strength.mjs +33 -24
  127. package/fesm2022/siemens-element-ng-password-strength.mjs.map +1 -1
  128. package/fesm2022/siemens-element-ng-password-toggle.mjs +19 -14
  129. package/fesm2022/siemens-element-ng-password-toggle.mjs.map +1 -1
  130. package/fesm2022/siemens-element-ng-phone-number.mjs +144 -139
  131. package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
  132. package/fesm2022/siemens-element-ng-photo-upload.mjs +85 -52
  133. package/fesm2022/siemens-element-ng-photo-upload.mjs.map +1 -1
  134. package/fesm2022/siemens-element-ng-pills-input.mjs +56 -41
  135. package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
  136. package/fesm2022/siemens-element-ng-popover-legacy.mjs +43 -28
  137. package/fesm2022/siemens-element-ng-popover-legacy.mjs.map +1 -1
  138. package/fesm2022/siemens-element-ng-popover.mjs +35 -27
  139. package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
  140. package/fesm2022/siemens-element-ng-progressbar.mjs +23 -16
  141. package/fesm2022/siemens-element-ng-progressbar.mjs.map +1 -1
  142. package/fesm2022/siemens-element-ng-resize-observer.mjs +32 -43
  143. package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
  144. package/fesm2022/siemens-element-ng-result-details-list.mjs +12 -10
  145. package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
  146. package/fesm2022/siemens-element-ng-search-bar.mjs +38 -37
  147. package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
  148. package/fesm2022/siemens-element-ng-select.mjs +265 -170
  149. package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
  150. package/fesm2022/siemens-element-ng-shadow-root.mjs +4 -4
  151. package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
  152. package/fesm2022/siemens-element-ng-side-panel.mjs +181 -104
  153. package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
  154. package/fesm2022/siemens-element-ng-skip-links.mjs +21 -24
  155. package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
  156. package/fesm2022/siemens-element-ng-slider.mjs +45 -30
  157. package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
  158. package/fesm2022/siemens-element-ng-source-chip.mjs +79 -0
  159. package/fesm2022/siemens-element-ng-source-chip.mjs.map +1 -0
  160. package/fesm2022/siemens-element-ng-split.mjs +290 -306
  161. package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
  162. package/fesm2022/siemens-element-ng-status-bar.mjs +66 -52
  163. package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
  164. package/fesm2022/siemens-element-ng-status-counter.mjs +15 -11
  165. package/fesm2022/siemens-element-ng-status-counter.mjs.map +1 -1
  166. package/fesm2022/siemens-element-ng-status-toggle.mjs +26 -16
  167. package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
  168. package/fesm2022/siemens-element-ng-summary-chip.mjs +25 -16
  169. package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
  170. package/fesm2022/siemens-element-ng-summary-widget.mjs +27 -17
  171. package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
  172. package/fesm2022/siemens-element-ng-system-banner.mjs +13 -10
  173. package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
  174. package/fesm2022/siemens-element-ng-tabs-legacy.mjs +20 -17
  175. package/fesm2022/siemens-element-ng-tabs-legacy.mjs.map +1 -1
  176. package/fesm2022/siemens-element-ng-tabs.mjs +156 -131
  177. package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
  178. package/fesm2022/siemens-element-ng-theme.mjs +29 -6
  179. package/fesm2022/siemens-element-ng-theme.mjs.map +1 -1
  180. package/fesm2022/siemens-element-ng-threshold.mjs +62 -42
  181. package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
  182. package/fesm2022/siemens-element-ng-toast-notification.mjs +59 -40
  183. package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
  184. package/fesm2022/siemens-element-ng-tooltip.mjs +108 -82
  185. package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
  186. package/fesm2022/siemens-element-ng-tour.mjs +36 -19
  187. package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
  188. package/fesm2022/siemens-element-ng-translate.mjs +0 -1
  189. package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
  190. package/fesm2022/siemens-element-ng-tree-view.mjs +113 -84
  191. package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
  192. package/fesm2022/siemens-element-ng-typeahead.mjs +69 -49
  193. package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
  194. package/fesm2022/siemens-element-ng-wizard.mjs +95 -54
  195. package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
  196. package/formly-legacy/package.json +4 -0
  197. package/maplibre/package.json +4 -0
  198. package/maplibre/styles/_index.scss +1 -0
  199. package/maplibre/styles/maplibre-gl.scss +724 -0
  200. package/markdown/directives/tabs/package.json +4 -0
  201. package/markdown/extensions/citations/package.json +4 -0
  202. package/markdown/extensions/katex/package.json +4 -0
  203. package/markdown/extensions/mermaid/package.json +4 -0
  204. package/markdown/hightlighter/highlightjs/package.json +4 -0
  205. package/markdown/package.json +4 -0
  206. package/package.json +96 -25
  207. package/schematics/collection.json +5 -0
  208. package/schematics/{migrations/icon-path-migration → migrate-tabs-legacy}/index.js +1 -1
  209. package/schematics/migrate-tabs-legacy/migrate-tabs-legacy-rule.js +675 -0
  210. package/schematics/migrate-tabs-legacy/schema.json +14 -0
  211. package/schematics/migration.json +4 -4
  212. package/schematics/migrations/data/class-member-replacement.js +1 -19
  213. package/schematics/migrations/data/component-property-names.js +1 -25
  214. package/schematics/migrations/data/component-property-to-child.js +11 -0
  215. package/schematics/migrations/data/css-custom-properties.js +224 -0
  216. package/schematics/migrations/data/element-class-changes.js +116 -18
  217. package/schematics/migrations/data/element-migration-data.js +6 -0
  218. package/schematics/migrations/data/element-selectors.js +1 -9
  219. package/schematics/migrations/data/index.js +0 -4
  220. package/schematics/migrations/data/migration-test-data.js +49 -6
  221. package/schematics/migrations/data/provider-function-removals.js +7 -0
  222. package/schematics/migrations/data/symbol-removals.js +17 -7
  223. package/schematics/migrations/data/symbol-renaming.js +3 -44
  224. package/schematics/migrations/element-migration/element-migration.js +6 -6
  225. package/schematics/migrations/utilities/component-property-to-child.migration.js +73 -0
  226. package/schematics/migrations/utilities/css-custom-property.migration.js +51 -0
  227. package/schematics/migrations/utilities/element-class-change.migration.js +10 -5
  228. package/schematics/migrations/utilities/import-removal.js +39 -0
  229. package/schematics/migrations/utilities/index.js +4 -0
  230. package/schematics/migrations/utilities/provider-function-removal.migration.js +116 -0
  231. package/schematics/ng-update/index.js +1 -1
  232. package/schematics/ng-update/migrate-content-formatter.js +288 -0
  233. package/schematics/ng-update/migrate-list-details-units.js +86 -0
  234. package/schematics/ng-update/migrate-main-detail-units.js +89 -0
  235. package/schematics/ng-update/migrate-markdown-renderer.js +106 -0
  236. package/schematics/ng-update/migrate-spacers.js +32 -0
  237. package/schematics/ng-update/migrate-split-collapse.js +276 -0
  238. package/schematics/ng-update/migrate-split-scale.js +524 -0
  239. package/schematics/ng-update/migrate-split-sizes.js +107 -0
  240. package/schematics/ng-update/migrate-to-v51.js +35 -0
  241. package/schematics/utils/index.js +1 -0
  242. package/schematics/utils/template-edit-utils.js +35 -0
  243. package/schematics/utils/template-utils.js +31 -45
  244. package/source-chip/package.json +4 -0
  245. package/template-i18n.json +78 -47
  246. package/types/siemens-element-ng-application-header.d.ts +7 -33
  247. package/types/siemens-element-ng-avatar.d.ts +1 -1
  248. package/types/siemens-element-ng-breadcrumb.d.ts +1 -1
  249. package/types/siemens-element-ng-chat-messages.d.ts +118 -70
  250. package/types/siemens-element-ng-circle-status.d.ts +1 -1
  251. package/types/siemens-element-ng-content-action-bar.d.ts +1 -1
  252. package/types/siemens-element-ng-dashboard.d.ts +2 -2
  253. package/types/siemens-element-ng-datatable.d.ts +5 -56
  254. package/types/siemens-element-ng-date-range-filter.d.ts +1 -1
  255. package/types/siemens-element-ng-datepicker.d.ts +8 -15
  256. package/types/siemens-element-ng-electron-titlebar.d.ts +1 -1
  257. package/types/siemens-element-ng-file-uploader.d.ts +13 -31
  258. package/types/siemens-element-ng-filter-bar.d.ts +1 -1
  259. package/types/siemens-element-ng-filtered-search.d.ts +4 -4
  260. package/types/siemens-element-ng-form.d.ts +183 -44
  261. package/types/siemens-element-ng-formly-legacy.d.ts +40 -0
  262. package/types/siemens-element-ng-formly.d.ts +34 -167
  263. package/types/siemens-element-ng-icon.d.ts +2 -19
  264. package/types/siemens-element-ng-landing-page.d.ts +2 -2
  265. package/types/siemens-element-ng-list-details.d.ts +25 -3
  266. package/types/siemens-element-ng-loading-spinner.d.ts +11 -17
  267. package/types/siemens-element-ng-main-detail-container.d.ts +23 -3
  268. package/types/siemens-element-ng-maplibre.d.ts +190 -0
  269. package/types/siemens-element-ng-markdown-directives-tabs.d.ts +10 -0
  270. package/types/siemens-element-ng-markdown-extensions-citations.d.ts +11 -0
  271. package/types/siemens-element-ng-markdown-extensions-katex.d.ts +19 -0
  272. package/types/siemens-element-ng-markdown-extensions-mermaid.d.ts +11 -0
  273. package/types/siemens-element-ng-markdown-hightlighter-highlightjs.d.ts +48 -0
  274. package/types/siemens-element-ng-markdown.d.ts +367 -0
  275. package/types/siemens-element-ng-menu.d.ts +2 -0
  276. package/types/siemens-element-ng-navbar-vertical-next.d.ts +87 -39
  277. package/types/siemens-element-ng-navbar-vertical.d.ts +1 -1
  278. package/types/siemens-element-ng-navbar.d.ts +3 -3
  279. package/types/siemens-element-ng-notification-item.d.ts +12 -0
  280. package/types/siemens-element-ng-phone-number.d.ts +28 -10
  281. package/types/siemens-element-ng-photo-upload.d.ts +4 -4
  282. package/types/siemens-element-ng-resize-observer.d.ts +0 -17
  283. package/types/siemens-element-ng-search-bar.d.ts +2 -9
  284. package/types/siemens-element-ng-select.d.ts +32 -5
  285. package/types/siemens-element-ng-side-panel.d.ts +25 -11
  286. package/types/siemens-element-ng-source-chip.d.ts +53 -0
  287. package/types/siemens-element-ng-split.d.ts +101 -78
  288. package/types/siemens-element-ng-status-bar.d.ts +5 -13
  289. package/types/siemens-element-ng-status-counter.d.ts +1 -1
  290. package/types/siemens-element-ng-system-banner.d.ts +2 -2
  291. package/types/siemens-element-ng-tabs.d.ts +1 -2
  292. package/types/siemens-element-ng-theme.d.ts +12 -2
  293. package/types/siemens-element-ng-threshold.d.ts +1 -1
  294. package/types/siemens-element-ng-toast-notification.d.ts +0 -1
  295. package/types/siemens-element-ng-tooltip.d.ts +7 -7
  296. package/types/siemens-element-ng-translate.d.ts +35 -5
  297. package/types/siemens-element-ng-tree-view.d.ts +3 -0
  298. package/types/siemens-element-ng-wizard.d.ts +18 -3
  299. package/fesm2022/siemens-element-ng-icon-status.mjs +0 -46
  300. package/fesm2022/siemens-element-ng-icon-status.mjs.map +0 -1
  301. package/fesm2022/siemens-element-ng-markdown-renderer.mjs +0 -263
  302. package/fesm2022/siemens-element-ng-markdown-renderer.mjs.map +0 -1
  303. package/fesm2022/siemens-element-ng-sort-bar.mjs +0 -99
  304. package/fesm2022/siemens-element-ng-sort-bar.mjs.map +0 -1
  305. package/icon-status/package.json +0 -4
  306. package/markdown-renderer/package.json +0 -4
  307. package/schematics/migrations/icon-path-migration/icon-path-migration.js +0 -95
  308. package/schematics/ng-update/migrate-to-v49.js +0 -21
  309. package/schematics/vitest-setup.js +0 -5
  310. package/sort-bar/package.json +0 -4
  311. package/types/siemens-element-ng-icon-status.d.ts +0 -25
  312. package/types/siemens-element-ng-markdown-renderer.d.ts +0 -36
  313. package/types/siemens-element-ng-sort-bar.d.ts +0 -59
  314. /package/{LICENSE.md → LICENSE} +0 -0
@@ -9,25 +9,32 @@ import { SiIconComponent } from '@siemens/element-ng/icon';
9
9
 
10
10
  class PopoverComponent {
11
11
  /** Text or template content displayed in the popover. */
12
- popover = input(...(ngDevMode ? [undefined, { debugName: "popover" }] : []));
12
+ popover = input(/* @ts-ignore */
13
+ ...(ngDevMode ? [undefined, { debugName: "popover" }] : /* istanbul ignore next */ []));
13
14
  /**
14
15
  * Title displayed at the top of the popover.
15
16
  *
16
17
  * @defaultValue ''
17
18
  */
18
- popoverTitle = input('', ...(ngDevMode ? [{ debugName: "popoverTitle" }] : []));
19
+ popoverTitle = input('', /* @ts-ignore */
20
+ ...(ngDevMode ? [{ debugName: "popoverTitle" }] : /* istanbul ignore next */ []));
19
21
  /**
20
22
  * CSS class applied to the popover container.
21
23
  *
22
24
  * @defaultValue ''
23
25
  */
24
- containerClass = input('', ...(ngDevMode ? [{ debugName: "containerClass" }] : []));
26
+ containerClass = input('', /* @ts-ignore */
27
+ ...(ngDevMode ? [{ debugName: "containerClass" }] : /* istanbul ignore next */ []));
25
28
  /** Icon displayed beside the popover title. */
26
- icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
29
+ icon = input(/* @ts-ignore */
30
+ ...(ngDevMode ? [undefined, { debugName: "icon" }] : /* istanbul ignore next */ []));
27
31
  /** Context provided to the popover template. */
28
- popoverContext = input(...(ngDevMode ? [undefined, { debugName: "popoverContext" }] : []));
29
- positionClass = signal('', ...(ngDevMode ? [{ debugName: "positionClass" }] : []));
30
- arrowPos = signal(undefined, ...(ngDevMode ? [{ debugName: "arrowPos" }] : []));
32
+ popoverContext = input(/* @ts-ignore */
33
+ ...(ngDevMode ? [undefined, { debugName: "popoverContext" }] : /* istanbul ignore next */ []));
34
+ positionClass = signal('', /* @ts-ignore */
35
+ ...(ngDevMode ? [{ debugName: "positionClass" }] : /* istanbul ignore next */ []));
36
+ arrowPos = signal(undefined, /* @ts-ignore */
37
+ ...(ngDevMode ? [{ debugName: "arrowPos" }] : /* istanbul ignore next */ []));
31
38
  popoverTemplate = null;
32
39
  elementRef = inject(ElementRef);
33
40
  ngOnInit() {
@@ -44,12 +51,12 @@ class PopoverComponent {
44
51
  const arrowPos = calculateOverlayArrowPosition(change, this.elementRef, anchor);
45
52
  this.arrowPos.set(arrowPos);
46
53
  }
47
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
48
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: PopoverComponent, isStandalone: true, selector: "si-popover", inputs: { popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, popoverTitle: { classPropertyName: "popoverTitle", publicName: "popoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "containerClass", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, popoverContext: { classPropertyName: "popoverContext", publicName: "popoverContext", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
54
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
55
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: PopoverComponent, isStandalone: true, selector: "si-popover", inputs: { popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, popoverTitle: { classPropertyName: "popoverTitle", publicName: "popoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "containerClass", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, popoverContext: { classPropertyName: "popoverContext", publicName: "popoverContext", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
49
56
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: PopoverComponent, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PopoverComponent, decorators: [{
51
58
  type: Component,
52
- args: [{ selector: 'si-popover', imports: [NgTemplateOutlet, SiIconComponent], changeDetection: ChangeDetectionStrategy.Default, template: "<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n" }]
59
+ args: [{ selector: 'si-popover', imports: [NgTemplateOutlet, SiIconComponent], changeDetection: ChangeDetectionStrategy.Eager, template: "<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n" }]
53
60
  }], propDecorators: { popover: [{ type: i0.Input, args: [{ isSignal: true, alias: "popover", required: false }] }], popoverTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "popoverTitle", required: false }] }], containerClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "containerClass", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], popoverContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "popoverContext", required: false }] }] } });
54
61
 
55
62
  /**
@@ -63,13 +70,15 @@ class SiPopoverLegacyDirective {
63
70
  /**
64
71
  * The popover text to be displayed
65
72
  */
66
- siPopoverLegacy = input(...(ngDevMode ? [undefined, { debugName: "siPopoverLegacy" }] : []));
73
+ siPopoverLegacy = input(/* @ts-ignore */
74
+ ...(ngDevMode ? [undefined, { debugName: "siPopoverLegacy" }] : /* istanbul ignore next */ []));
67
75
  /**
68
76
  * The placement of the popover. One of 'top', 'start', end', 'bottom'
69
77
  *
70
78
  * @defaultValue 'auto'
71
79
  */
72
- placement = input('auto', ...(ngDevMode ? [{ debugName: "placement" }] : []));
80
+ placement = input('auto', /* @ts-ignore */
81
+ ...(ngDevMode ? [{ debugName: "placement" }] : /* istanbul ignore next */ []));
73
82
  placementInternal = computed(() => {
74
83
  if (this.placement() !== 'top' &&
75
84
  this.placement() !== 'bottom' &&
@@ -80,7 +89,8 @@ class SiPopoverLegacyDirective {
80
89
  else {
81
90
  return this.placement();
82
91
  }
83
- }, ...(ngDevMode ? [{ debugName: "placementInternal" }] : []));
92
+ }, /* @ts-ignore */
93
+ ...(ngDevMode ? [{ debugName: "placementInternal" }] : /* istanbul ignore next */ []));
84
94
  /**
85
95
  * The trigger event(s) on which the popover shall be displayed.
86
96
  * Applications can pass multiple triggers separated by space.
@@ -92,39 +102,44 @@ class SiPopoverLegacyDirective {
92
102
  *
93
103
  * @defaultValue 'click'
94
104
  */
95
- triggers = input('click', ...(ngDevMode ? [{ debugName: "triggers" }] : []));
105
+ triggers = input('click', /* @ts-ignore */
106
+ ...(ngDevMode ? [{ debugName: "triggers" }] : /* istanbul ignore next */ []));
96
107
  /**
97
108
  * The title to be displayed on top for the popover
98
109
  *
99
110
  * @defaultValue ''
100
111
  */
101
- popoverTitle = input('', ...(ngDevMode ? [{ debugName: "popoverTitle" }] : []));
112
+ popoverTitle = input('', /* @ts-ignore */
113
+ ...(ngDevMode ? [{ debugName: "popoverTitle" }] : /* istanbul ignore next */ []));
102
114
  /**
103
115
  * The class that will be applied to container of the popover
104
116
  *
105
117
  * @defaultValue ''
106
118
  */
107
- containerClass = input('', ...(ngDevMode ? [{ debugName: "containerClass" }] : []));
119
+ containerClass = input('', /* @ts-ignore */
120
+ ...(ngDevMode ? [{ debugName: "containerClass" }] : /* istanbul ignore next */ []));
108
121
  /**
109
122
  * The flag determines whether to close popover on clicking outside
110
123
  *
111
124
  * @defaultValue true
112
125
  */
113
- outsideClick = input(true, { ...(ngDevMode ? { debugName: "outsideClick" } : {}), transform: booleanAttribute });
126
+ outsideClick = input(true, { ...(ngDevMode ? { debugName: "outsideClick" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
114
127
  /**
115
128
  * The icon to be displayed besides popover title
116
129
  */
117
- icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
130
+ icon = input(/* @ts-ignore */
131
+ ...(ngDevMode ? [undefined, { debugName: "icon" }] : /* istanbul ignore next */ []));
118
132
  /**
119
133
  * Specify whether or not the popover is currently shown
120
134
  *
121
135
  * @defaultValue false
122
136
  */
123
- isOpen = input(false, { ...(ngDevMode ? { debugName: "isOpen" } : {}), transform: booleanAttribute });
137
+ isOpen = input(false, { ...(ngDevMode ? { debugName: "isOpen" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
124
138
  /**
125
139
  * The context for the attached template
126
140
  */
127
- popoverContext = input(...(ngDevMode ? [undefined, { debugName: "popoverContext" }] : []));
141
+ popoverContext = input(/* @ts-ignore */
142
+ ...(ngDevMode ? [undefined, { debugName: "popoverContext" }] : /* istanbul ignore next */ []));
128
143
  /**
129
144
  * Emits an event when the popover is shown
130
145
  */
@@ -211,10 +226,10 @@ class SiPopoverLegacyDirective {
211
226
  }
212
227
  }
213
228
  }
214
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
215
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.8", type: SiPopoverLegacyDirective, isStandalone: true, selector: "[siPopoverLegacy]", inputs: { siPopoverLegacy: { classPropertyName: "siPopoverLegacy", publicName: "siPopoverLegacy", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, triggers: { classPropertyName: "triggers", publicName: "triggers", isSignal: true, isRequired: false, transformFunction: null }, popoverTitle: { classPropertyName: "popoverTitle", publicName: "popoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "containerClass", isSignal: true, isRequired: false, transformFunction: null }, outsideClick: { classPropertyName: "outsideClick", publicName: "outsideClick", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, popoverContext: { classPropertyName: "popoverContext", publicName: "popoverContext", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { shown: "shown", hidden: "hidden" }, host: { listeners: { "mouseenter": "onTrigger(\"hover\")", "mouseleave": "onTrigger(\"hover\")", "focus": "onTrigger(\"focus\")", "click": "onTrigger(\"click\")", "touchstart": "focusOut()", "focusout": "focusOut()" } }, exportAs: ["si-popover"], ngImport: i0 });
229
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
230
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiPopoverLegacyDirective, isStandalone: true, selector: "[siPopoverLegacy]", inputs: { siPopoverLegacy: { classPropertyName: "siPopoverLegacy", publicName: "siPopoverLegacy", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, triggers: { classPropertyName: "triggers", publicName: "triggers", isSignal: true, isRequired: false, transformFunction: null }, popoverTitle: { classPropertyName: "popoverTitle", publicName: "popoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "containerClass", isSignal: true, isRequired: false, transformFunction: null }, outsideClick: { classPropertyName: "outsideClick", publicName: "outsideClick", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, popoverContext: { classPropertyName: "popoverContext", publicName: "popoverContext", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { shown: "shown", hidden: "hidden" }, host: { listeners: { "mouseenter": "onTrigger(\"hover\")", "mouseleave": "onTrigger(\"hover\")", "focus": "onTrigger(\"focus\")", "click": "onTrigger(\"click\")", "touchstart": "focusOut()", "focusout": "focusOut()" } }, exportAs: ["si-popover"], ngImport: i0 });
216
231
  }
217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyDirective, decorators: [{
232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyDirective, decorators: [{
218
233
  type: Directive,
219
234
  args: [{
220
235
  selector: '[siPopoverLegacy]',
@@ -248,11 +263,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
248
263
  * @deprecated Use {@link SiPopoverDirective} instead.
249
264
  */
250
265
  class SiPopoverLegacyModule {
251
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
252
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyModule, imports: [SiPopoverLegacyDirective], exports: [SiPopoverLegacyDirective] });
253
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyModule });
266
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
267
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyModule, imports: [SiPopoverLegacyDirective], exports: [SiPopoverLegacyDirective] });
268
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyModule });
254
269
  }
255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverLegacyModule, decorators: [{
270
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverLegacyModule, decorators: [{
256
271
  type: NgModule,
257
272
  args: [{
258
273
  imports: [SiPopoverLegacyDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-element-ng-popover-legacy.mjs","sources":["../../../../projects/element-ng/popover-legacy/si-popover.component.ts","../../../../projects/element-ng/popover-legacy/si-popover.component.html","../../../../projects/element-ng/popover-legacy/si-popover-legacy.directive.ts","../../../../projects/element-ng/popover-legacy/si-popover-legacy.module.ts","../../../../projects/element-ng/popover-legacy/index.ts","../../../../projects/element-ng/popover-legacy/siemens-element-ng-popover-legacy.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n input,\n OnInit,\n signal,\n TemplateRef\n} from '@angular/core';\nimport { calculateOverlayArrowPosition, OverlayArrowPosition } from '@siemens/element-ng/common';\nimport { SiIconComponent } from '@siemens/element-ng/icon';\n\n@Component({\n selector: 'si-popover',\n imports: [NgTemplateOutlet, SiIconComponent],\n templateUrl: './si-popover.component.html',\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class PopoverComponent implements OnInit {\n /** Text or template content displayed in the popover. */\n readonly popover = input<string | TemplateRef<any>>();\n /**\n * Title displayed at the top of the popover.\n *\n * @defaultValue ''\n */\n readonly popoverTitle = input('');\n /**\n * CSS class applied to the popover container.\n *\n * @defaultValue ''\n */\n readonly containerClass = input('');\n /** Icon displayed beside the popover title. */\n readonly icon = input<string>();\n /** Context provided to the popover template. */\n readonly popoverContext = input<unknown>();\n\n protected readonly positionClass = signal('');\n protected readonly arrowPos = signal<OverlayArrowPosition | undefined>(undefined);\n protected popoverTemplate: TemplateRef<any> | null = null;\n\n private elementRef = inject(ElementRef);\n\n ngOnInit(): void {\n const popover = this.popover();\n if (popover instanceof TemplateRef) {\n this.popoverTemplate = popover;\n }\n }\n\n /** @internal */\n updateArrow(change: ConnectedOverlayPositionChange, anchor?: ElementRef): void {\n const positionClass = `popover-${change.connectionPair.overlayX}-${change.connectionPair.overlayY}`;\n // need two updates as class changes affect the position\n this.positionClass.set(positionClass);\n const arrowPos = calculateOverlayArrowPosition(change, this.elementRef, anchor);\n this.arrowPos.set(arrowPos);\n }\n}\n","<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n booleanAttribute,\n ComponentRef,\n computed,\n Directive,\n ElementRef,\n HostListener,\n inject,\n input,\n OnDestroy,\n OnInit,\n output,\n TemplateRef\n} from '@angular/core';\nimport { getOverlay, getPositionStrategy, hasTrigger, positions } from '@siemens/element-ng/common';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { PopoverComponent } from './si-popover.component';\n\n/**\n * @deprecated Use {@link SiPopoverDirective} instead.\n */\n@Directive({\n selector: '[siPopoverLegacy]',\n exportAs: 'si-popover'\n})\nexport class SiPopoverLegacyDirective implements OnInit, OnDestroy {\n /**\n * The popover text to be displayed\n */\n readonly siPopoverLegacy = input<string | TemplateRef<any>>();\n\n /**\n * The placement of the popover. One of 'top', 'start', end', 'bottom'\n *\n * @defaultValue 'auto'\n */\n readonly placement = input<keyof typeof positions>('auto');\n\n readonly placementInternal = computed(() => {\n if (\n this.placement() !== 'top' &&\n this.placement() !== 'bottom' &&\n this.placement() !== 'start' &&\n this.placement() !== 'end'\n ) {\n return 'auto';\n } else {\n return this.placement();\n }\n });\n\n /**\n * The trigger event(s) on which the popover shall be displayed.\n * Applications can pass multiple triggers separated by space.\n * Supported events are 'click', 'hover' and 'focus'.\n *\n * **Limitations:**\n * Safari browsers do not raise a 'focus' event on host element click and 'focus'\n * on tab key has to be enabled in the advanced browser settings.\n *\n * @defaultValue 'click'\n */\n readonly triggers = input('click');\n\n /**\n * The title to be displayed on top for the popover\n *\n * @defaultValue ''\n */\n readonly popoverTitle = input('');\n\n /**\n * The class that will be applied to container of the popover\n *\n * @defaultValue ''\n */\n readonly containerClass = input('');\n\n /**\n * The flag determines whether to close popover on clicking outside\n *\n * @defaultValue true\n */\n readonly outsideClick = input(true, { transform: booleanAttribute });\n\n /**\n * The icon to be displayed besides popover title\n */\n readonly icon = input<string>();\n\n /**\n * Specify whether or not the popover is currently shown\n *\n * @defaultValue false\n */\n readonly isOpen = input<boolean | undefined, unknown>(false, { transform: booleanAttribute });\n\n /**\n * The context for the attached template\n */\n readonly popoverContext = input<unknown>();\n\n /**\n * Emits an event when the popover is shown\n */\n readonly shown = output<void>();\n\n /**\n * Emits an event when the popover is hidden\n */\n readonly hidden = output<void>();\n\n private overlayref?: OverlayRef;\n private overlay = inject(Overlay);\n private elementRef = inject(ElementRef);\n private destroyer = new Subject<void>();\n\n ngOnInit(): void {\n if (this.isOpen()) {\n this.show();\n }\n }\n\n ngOnDestroy(): void {\n this.overlayref?.dispose();\n this.destroyer.next();\n this.destroyer.complete();\n }\n\n /**\n * Displays popover and emits 'shown' event.\n */\n show(): void {\n if (!this.overlayref?.hasAttached()) {\n const triggers = this.triggers();\n const backdrop =\n this.outsideClick() && !hasTrigger('focus', triggers) && !hasTrigger('hover', triggers);\n this.overlayref = getOverlay(\n this.elementRef,\n this.overlay,\n backdrop,\n this.placementInternal()\n );\n if (backdrop) {\n this.overlayref\n .backdropClick()\n .pipe(takeUntil(this.destroyer))\n .subscribe(() => this.hide());\n }\n }\n\n if (this.overlayref.hasAttached()) {\n return;\n }\n const popoverPortal = new ComponentPortal(PopoverComponent);\n const popoverRef: ComponentRef<PopoverComponent> = this.overlayref.attach(popoverPortal);\n\n popoverRef.setInput('popover', this.siPopoverLegacy());\n popoverRef.setInput('popoverTitle', this.popoverTitle());\n popoverRef.setInput('icon', this.icon());\n popoverRef.setInput('containerClass', this.containerClass());\n popoverRef.setInput('popoverContext', this.popoverContext());\n\n const positionStrategy = getPositionStrategy(this.overlayref);\n positionStrategy?.positionChanges\n .pipe(takeUntil(this.destroyer))\n .subscribe(change => popoverRef.instance.updateArrow(change, this.elementRef));\n\n this.shown.emit();\n }\n\n /**\n * Hides the popover and emits 'hidden' event.\n */\n hide(): void {\n if (this.overlayref?.hasAttached()) {\n this.overlayref?.detach();\n this.hidden.emit();\n this.destroyer.next();\n }\n }\n\n /**\n * Updates the position of the popover based on the position strategy.\n */\n updatePosition(): void {\n this.overlayref?.updatePosition();\n }\n\n @HostListener('mouseenter', ['\"hover\"'])\n @HostListener('mouseleave', ['\"hover\"'])\n @HostListener('focus', ['\"focus\"'])\n @HostListener('click', ['\"click\"'])\n protected onTrigger(trigger: string): void {\n if (hasTrigger(trigger, this.triggers())) {\n if (this.overlayref?.hasAttached()) {\n this.hide();\n } else {\n this.show();\n }\n }\n }\n\n @HostListener('touchstart')\n @HostListener('focusout')\n protected focusOut(): void {\n if (hasTrigger('focus', this.triggers())) {\n if (this.outsideClick()) {\n this.hide();\n }\n }\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiPopoverLegacyDirective } from './si-popover-legacy.directive';\n\n/**\n * @deprecated Use {@link SiPopoverDirective} instead.\n */\n@NgModule({\n imports: [SiPopoverLegacyDirective],\n exports: [SiPopoverLegacyDirective]\n})\nexport class SiPopoverLegacyModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-popover-legacy.directive';\nexport * from './si-popover-legacy.module';\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-popover-legacy.mjs","sources":["../../../../projects/element-ng/popover-legacy/si-popover.component.ts","../../../../projects/element-ng/popover-legacy/si-popover.component.html","../../../../projects/element-ng/popover-legacy/si-popover-legacy.directive.ts","../../../../projects/element-ng/popover-legacy/si-popover-legacy.module.ts","../../../../projects/element-ng/popover-legacy/index.ts","../../../../projects/element-ng/popover-legacy/siemens-element-ng-popover-legacy.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n input,\n OnInit,\n signal,\n TemplateRef\n} from '@angular/core';\nimport { calculateOverlayArrowPosition, OverlayArrowPosition } from '@siemens/element-ng/common';\nimport { SiIconComponent } from '@siemens/element-ng/icon';\n\n@Component({\n selector: 'si-popover',\n imports: [NgTemplateOutlet, SiIconComponent],\n templateUrl: './si-popover.component.html',\n changeDetection: ChangeDetectionStrategy.Eager\n})\nexport class PopoverComponent implements OnInit {\n /** Text or template content displayed in the popover. */\n readonly popover = input<string | TemplateRef<any>>();\n /**\n * Title displayed at the top of the popover.\n *\n * @defaultValue ''\n */\n readonly popoverTitle = input('');\n /**\n * CSS class applied to the popover container.\n *\n * @defaultValue ''\n */\n readonly containerClass = input('');\n /** Icon displayed beside the popover title. */\n readonly icon = input<string>();\n /** Context provided to the popover template. */\n readonly popoverContext = input<unknown>();\n\n protected readonly positionClass = signal('');\n protected readonly arrowPos = signal<OverlayArrowPosition | undefined>(undefined);\n protected popoverTemplate: TemplateRef<any> | null = null;\n\n private elementRef = inject(ElementRef);\n\n ngOnInit(): void {\n const popover = this.popover();\n if (popover instanceof TemplateRef) {\n this.popoverTemplate = popover;\n }\n }\n\n /** @internal */\n updateArrow(change: ConnectedOverlayPositionChange, anchor?: ElementRef): void {\n const positionClass = `popover-${change.connectionPair.overlayX}-${change.connectionPair.overlayY}`;\n // need two updates as class changes affect the position\n this.positionClass.set(positionClass);\n const arrowPos = calculateOverlayArrowPosition(change, this.elementRef, anchor);\n this.arrowPos.set(arrowPos);\n }\n}\n","<div\n class=\"popover position-relative focus-outline-padding\"\n [class]=\"[containerClass(), positionClass()]\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popoverTitle()) {\n <div class=\"popover-header\">\n @let iconValue = icon();\n @if (iconValue) {\n <si-icon class=\"icon me-2\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\">{{ popoverTitle() }}</span>\n </div>\n }\n <div class=\"popover-body\">\n @if (!popoverTemplate) {\n <div class=\"si-body\" [innerHTML]=\"popover()\"></div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popoverContext()\"\n />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n booleanAttribute,\n ComponentRef,\n computed,\n Directive,\n ElementRef,\n HostListener,\n inject,\n input,\n OnDestroy,\n OnInit,\n output,\n TemplateRef\n} from '@angular/core';\nimport { getOverlay, getPositionStrategy, hasTrigger, positions } from '@siemens/element-ng/common';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { PopoverComponent } from './si-popover.component';\n\n/**\n * @deprecated Use {@link SiPopoverDirective} instead.\n */\n@Directive({\n selector: '[siPopoverLegacy]',\n exportAs: 'si-popover'\n})\nexport class SiPopoverLegacyDirective implements OnInit, OnDestroy {\n /**\n * The popover text to be displayed\n */\n readonly siPopoverLegacy = input<string | TemplateRef<any>>();\n\n /**\n * The placement of the popover. One of 'top', 'start', end', 'bottom'\n *\n * @defaultValue 'auto'\n */\n readonly placement = input<keyof typeof positions>('auto');\n\n readonly placementInternal = computed(() => {\n if (\n this.placement() !== 'top' &&\n this.placement() !== 'bottom' &&\n this.placement() !== 'start' &&\n this.placement() !== 'end'\n ) {\n return 'auto';\n } else {\n return this.placement();\n }\n });\n\n /**\n * The trigger event(s) on which the popover shall be displayed.\n * Applications can pass multiple triggers separated by space.\n * Supported events are 'click', 'hover' and 'focus'.\n *\n * **Limitations:**\n * Safari browsers do not raise a 'focus' event on host element click and 'focus'\n * on tab key has to be enabled in the advanced browser settings.\n *\n * @defaultValue 'click'\n */\n readonly triggers = input('click');\n\n /**\n * The title to be displayed on top for the popover\n *\n * @defaultValue ''\n */\n readonly popoverTitle = input('');\n\n /**\n * The class that will be applied to container of the popover\n *\n * @defaultValue ''\n */\n readonly containerClass = input('');\n\n /**\n * The flag determines whether to close popover on clicking outside\n *\n * @defaultValue true\n */\n readonly outsideClick = input(true, { transform: booleanAttribute });\n\n /**\n * The icon to be displayed besides popover title\n */\n readonly icon = input<string>();\n\n /**\n * Specify whether or not the popover is currently shown\n *\n * @defaultValue false\n */\n readonly isOpen = input<boolean | undefined, unknown>(false, { transform: booleanAttribute });\n\n /**\n * The context for the attached template\n */\n readonly popoverContext = input<unknown>();\n\n /**\n * Emits an event when the popover is shown\n */\n readonly shown = output<void>();\n\n /**\n * Emits an event when the popover is hidden\n */\n readonly hidden = output<void>();\n\n private overlayref?: OverlayRef;\n private overlay = inject(Overlay);\n private elementRef = inject(ElementRef);\n private destroyer = new Subject<void>();\n\n ngOnInit(): void {\n if (this.isOpen()) {\n this.show();\n }\n }\n\n ngOnDestroy(): void {\n this.overlayref?.dispose();\n this.destroyer.next();\n this.destroyer.complete();\n }\n\n /**\n * Displays popover and emits 'shown' event.\n */\n show(): void {\n if (!this.overlayref?.hasAttached()) {\n const triggers = this.triggers();\n const backdrop =\n this.outsideClick() && !hasTrigger('focus', triggers) && !hasTrigger('hover', triggers);\n this.overlayref = getOverlay(\n this.elementRef,\n this.overlay,\n backdrop,\n this.placementInternal()\n );\n if (backdrop) {\n this.overlayref\n .backdropClick()\n .pipe(takeUntil(this.destroyer))\n .subscribe(() => this.hide());\n }\n }\n\n if (this.overlayref.hasAttached()) {\n return;\n }\n const popoverPortal = new ComponentPortal(PopoverComponent);\n const popoverRef: ComponentRef<PopoverComponent> = this.overlayref.attach(popoverPortal);\n\n popoverRef.setInput('popover', this.siPopoverLegacy());\n popoverRef.setInput('popoverTitle', this.popoverTitle());\n popoverRef.setInput('icon', this.icon());\n popoverRef.setInput('containerClass', this.containerClass());\n popoverRef.setInput('popoverContext', this.popoverContext());\n\n const positionStrategy = getPositionStrategy(this.overlayref);\n positionStrategy?.positionChanges\n .pipe(takeUntil(this.destroyer))\n .subscribe(change => popoverRef.instance.updateArrow(change, this.elementRef));\n\n this.shown.emit();\n }\n\n /**\n * Hides the popover and emits 'hidden' event.\n */\n hide(): void {\n if (this.overlayref?.hasAttached()) {\n this.overlayref?.detach();\n this.hidden.emit();\n this.destroyer.next();\n }\n }\n\n /**\n * Updates the position of the popover based on the position strategy.\n */\n updatePosition(): void {\n this.overlayref?.updatePosition();\n }\n\n @HostListener('mouseenter', ['\"hover\"'])\n @HostListener('mouseleave', ['\"hover\"'])\n @HostListener('focus', ['\"focus\"'])\n @HostListener('click', ['\"click\"'])\n protected onTrigger(trigger: string): void {\n if (hasTrigger(trigger, this.triggers())) {\n if (this.overlayref?.hasAttached()) {\n this.hide();\n } else {\n this.show();\n }\n }\n }\n\n @HostListener('touchstart')\n @HostListener('focusout')\n protected focusOut(): void {\n if (hasTrigger('focus', this.triggers())) {\n if (this.outsideClick()) {\n this.hide();\n }\n }\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiPopoverLegacyDirective } from './si-popover-legacy.directive';\n\n/**\n * @deprecated Use {@link SiPopoverDirective} instead.\n */\n@NgModule({\n imports: [SiPopoverLegacyDirective],\n exports: [SiPopoverLegacyDirective]\n})\nexport class SiPopoverLegacyModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-popover-legacy.directive';\nexport * from './si-popover-legacy.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;MAyBa,gBAAgB,CAAA;;AAElB,IAAA,OAAO,GAAG,KAAK;2FAA6B;AACrD;;;;AAIG;IACM,YAAY,GAAG,KAAK,CAAC,EAAE;qFAAC;AACjC;;;;AAIG;IACM,cAAc,GAAG,KAAK,CAAC,EAAE;uFAAC;;AAE1B,IAAA,IAAI,GAAG,KAAK;wFAAU;;AAEtB,IAAA,cAAc,GAAG,KAAK;kGAAW;IAEvB,aAAa,GAAG,MAAM,CAAC,EAAE;sFAAC;IAC1B,QAAQ,GAAG,MAAM,CAAmC,SAAS;iFAAC;IACvE,eAAe,GAA4B,IAAI;AAEjD,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAEvC,QAAQ,GAAA;AACN,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAA,IAAI,OAAO,YAAY,WAAW,EAAE;AAClC,YAAA,IAAI,CAAC,eAAe,GAAG,OAAO;QAChC;IACF;;IAGA,WAAW,CAAC,MAAsC,EAAE,MAAmB,EAAA;AACrE,QAAA,MAAM,aAAa,GAAG,CAAA,QAAA,EAAW,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAA,CAAA,EAAI,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE;;AAEnG,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC;AACrC,QAAA,MAAM,QAAQ,GAAG,6BAA6B,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC/E,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7B;uGAxCW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,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,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,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,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzB7B,ozBA6BA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDRY,gBAAgB,oJAAE,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA;;2FAIhC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAN5B,SAAS;+BACE,YAAY,EAAA,OAAA,EACb,CAAC,gBAAgB,EAAE,eAAe,CAAC,EAAA,eAAA,EAE3B,uBAAuB,CAAC,KAAK,EAAA,QAAA,EAAA,ozBAAA,EAAA;;;AEvBhD;;;AAGG;AAsBH;;AAEG;MAKU,wBAAwB,CAAA;AACnC;;AAEG;AACM,IAAA,eAAe,GAAG,KAAK;mGAA6B;AAE7D;;;;AAIG;IACM,SAAS,GAAG,KAAK,CAAyB,MAAM;kFAAC;AAEjD,IAAA,iBAAiB,GAAG,QAAQ,CAAC,MAAK;AACzC,QAAA,IACE,IAAI,CAAC,SAAS,EAAE,KAAK,KAAK;AAC1B,YAAA,IAAI,CAAC,SAAS,EAAE,KAAK,QAAQ;AAC7B,YAAA,IAAI,CAAC,SAAS,EAAE,KAAK,OAAO;AAC5B,YAAA,IAAI,CAAC,SAAS,EAAE,KAAK,KAAK,EAC1B;AACA,YAAA,OAAO,MAAM;QACf;aAAO;AACL,YAAA,OAAO,IAAI,CAAC,SAAS,EAAE;QACzB;IACF,CAAC;0FAAC;AAEF;;;;;;;;;;AAUG;IACM,QAAQ,GAAG,KAAK,CAAC,OAAO;iFAAC;AAElC;;;;AAIG;IACM,YAAY,GAAG,KAAK,CAAC,EAAE;qFAAC;AAEjC;;;;AAIG;IACM,cAAc,GAAG,KAAK,CAAC,EAAE;uFAAC;AAEnC;;;;AAIG;IACM,YAAY,GAAG,KAAK,CAAC,IAAI,oFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEpE;;AAEG;AACM,IAAA,IAAI,GAAG,KAAK;wFAAU;AAE/B;;;;AAIG;IACM,MAAM,GAAG,KAAK,CAA+B,KAAK,8EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE7F;;AAEG;AACM,IAAA,cAAc,GAAG,KAAK;kGAAW;AAE1C;;AAEG;IACM,KAAK,GAAG,MAAM,EAAQ;AAE/B;;AAEG;IACM,MAAM,GAAG,MAAM,EAAQ;AAExB,IAAA,UAAU;AACV,IAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AACzB,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,IAAA,SAAS,GAAG,IAAI,OAAO,EAAQ;IAEvC,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACjB,IAAI,CAAC,IAAI,EAAE;QACb;IACF;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE;AAC1B,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACrB,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;IAC3B;AAEA;;AAEG;IACH,IAAI,GAAA;QACF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE;AACnC,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;YAChC,MAAM,QAAQ,GACZ,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC;YACzF,IAAI,CAAC,UAAU,GAAG,UAAU,CAC1B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,OAAO,EACZ,QAAQ,EACR,IAAI,CAAC,iBAAiB,EAAE,CACzB;YACD,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC;AACF,qBAAA,aAAa;AACb,qBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;qBAC9B,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjC;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE;YACjC;QACF;AACA,QAAA,MAAM,aAAa,GAAG,IAAI,eAAe,CAAC,gBAAgB,CAAC;QAC3D,MAAM,UAAU,GAAmC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC;QAExF,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;QACxD,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACxC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5D,UAAU,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5D,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;AAC7D,QAAA,gBAAgB,EAAE;AACf,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;AAC9B,aAAA,SAAS,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAEhF,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;IACnB;AAEA;;AAEG;IACH,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE;AAClC,YAAA,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE;AACzB,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;QACvB;IACF;AAEA;;AAEG;IACH,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE;IACnC;AAMU,IAAA,SAAS,CAAC,OAAe,EAAA;QACjC,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE;AACxC,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE;gBAClC,IAAI,CAAC,IAAI,EAAE;YACb;iBAAO;gBACL,IAAI,CAAC,IAAI,EAAE;YACb;QACF;IACF;IAIU,QAAQ,GAAA;QAChB,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE;AACxC,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;gBACvB,IAAI,CAAC,IAAI,EAAE;YACb;QACF;IACF;uGA1LW,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,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,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,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,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,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,OAAA,EAAA,sBAAA,EAAA,OAAA,EAAA,sBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE;AACX,iBAAA;;sBAqKE,YAAY;uBAAC,YAAY,EAAE,CAAC,SAAS,CAAC;;sBACtC,YAAY;uBAAC,YAAY,EAAE,CAAC,SAAS,CAAC;;sBACtC,YAAY;uBAAC,OAAO,EAAE,CAAC,SAAS,CAAC;;sBACjC,YAAY;uBAAC,OAAO,EAAE,CAAC,SAAS,CAAC;;sBAWjC,YAAY;uBAAC,YAAY;;sBACzB,YAAY;uBAAC,UAAU;;;ACnN1B;;;AAGG;AAKH;;AAEG;MAKU,qBAAqB,CAAA;uGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAArB,qBAAqB,EAAA,OAAA,EAAA,CAHtB,wBAAwB,CAAA,EAAA,OAAA,EAAA,CACxB,wBAAwB,CAAA,EAAA,CAAA;wGAEvB,qBAAqB,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,wBAAwB,CAAC;oBACnC,OAAO,EAAE,CAAC,wBAAwB;AACnC,iBAAA;;;ACdD;;;AAGG;;ACHH;;AAEG;;;;"}
@@ -15,18 +15,23 @@ import { SiTranslatePipe } from '@siemens/element-translate-ng/translate';
15
15
  */
16
16
  class PopoverComponent {
17
17
  /** The directive that supplies and controls the popover content. */
18
- popoverDirective = input.required(...(ngDevMode ? [{ debugName: "popoverDirective" }] : []));
19
- popoverWrapper = viewChild.required('popoverWrapper');
18
+ popoverDirective = input.required(/* @ts-ignore */
19
+ ...(ngDevMode ? [{ debugName: "popoverDirective" }] : /* istanbul ignore next */ []));
20
+ popoverWrapper = viewChild.required('popoverWrapper', /* @ts-ignore */
21
+ ...(ngDevMode ? [{ debugName: "popoverWrapper" }] : /* istanbul ignore next */ []));
20
22
  /** @internal */
21
23
  labelledBy;
22
24
  /** @internal */
23
25
  describedBy;
24
- positionClass = signal('', ...(ngDevMode ? [{ debugName: "positionClass" }] : []));
25
- arrowPos = signal(undefined, ...(ngDevMode ? [{ debugName: "arrowPos" }] : []));
26
+ positionClass = signal('', /* @ts-ignore */
27
+ ...(ngDevMode ? [{ debugName: "positionClass" }] : /* istanbul ignore next */ []));
28
+ arrowPos = signal(undefined, /* @ts-ignore */
29
+ ...(ngDevMode ? [{ debugName: "arrowPos" }] : /* istanbul ignore next */ []));
26
30
  description = computed(() => {
27
31
  const description = this.popoverDirective().siPopover();
28
32
  return !(description instanceof TemplateRef) ? description : undefined;
29
- }, ...(ngDevMode ? [{ debugName: "description" }] : []));
33
+ }, /* @ts-ignore */
34
+ ...(ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []));
30
35
  popoverTemplate = null;
31
36
  injector = inject(Injector);
32
37
  elementRef = inject(ElementRef);
@@ -74,12 +79,12 @@ class PopoverComponent {
74
79
  }
75
80
  });
76
81
  }
77
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
78
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: PopoverComponent, isStandalone: true, selector: "si-popover", inputs: { popoverDirective: { classPropertyName: "popoverDirective", publicName: "popoverDirective", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "id": "this.popoverDirective().popoverId" } }, viewQueries: [{ propertyName: "popoverWrapper", first: true, predicate: ["popoverWrapper"], descendants: true, isSignal: true }], ngImport: i0, template: "@let popover = popoverDirective();\n<div\n #popoverWrapper\n role=\"dialog\"\n [class]=\"[\n 'popover',\n 'position-relative',\n 'focus-inside',\n positionClass(),\n popover.containerClass()\n ]\"\n [attr.aria-labelledby]=\"labelledBy\"\n [attr.aria-describedby]=\"describedBy\"\n (keydown.escape)=\"hide()\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popover.title()) {\n <div class=\"popover-header\">\n @let iconValue = popover.icon();\n @if (iconValue) {\n <si-icon class=\"icon me-1\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\" [id]=\"labelledBy\">{{ popover.title() | translate }}</span>\n </div>\n }\n @if (!popoverTemplate) {\n <div class=\"popover-body\">\n <div class=\"si-body\" [id]=\"describedBy\">{{ description() | translate }}</div>\n </div>\n } @else {\n <!-- If title is already provided, we wrap the template with the `popover-body` class\n since the template may not be in the popover body directive. Also used by SiHelpButtonComponent -->\n @if (popover.title()) {\n <div class=\"popover-body\">\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n </div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n }\n }\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default });
82
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
83
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: PopoverComponent, isStandalone: true, selector: "si-popover", inputs: { popoverDirective: { classPropertyName: "popoverDirective", publicName: "popoverDirective", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "id": "this.popoverDirective().popoverId" } }, viewQueries: [{ propertyName: "popoverWrapper", first: true, predicate: ["popoverWrapper"], descendants: true, isSignal: true }], ngImport: i0, template: "@let popover = popoverDirective();\n<div\n #popoverWrapper\n role=\"dialog\"\n [class]=\"[\n 'popover',\n 'position-relative',\n 'focus-inside',\n positionClass(),\n popover.containerClass()\n ]\"\n [attr.aria-labelledby]=\"labelledBy\"\n [attr.aria-describedby]=\"describedBy\"\n (keydown.escape)=\"hide()\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popover.title()) {\n <div class=\"popover-header\">\n @let iconValue = popover.icon();\n @if (iconValue) {\n <si-icon class=\"icon me-1\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\" [id]=\"labelledBy\">{{ popover.title() | translate }}</span>\n </div>\n }\n @if (!popoverTemplate) {\n <div class=\"popover-body\">\n <div class=\"si-body\" [id]=\"describedBy\">{{ description() | translate }}</div>\n </div>\n } @else {\n <!-- If title is already provided, we wrap the template with the `popover-body` class\n since the template may not be in the popover body directive. Also used by SiHelpButtonComponent -->\n @if (popover.title()) {\n <div class=\"popover-body\">\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n </div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n }\n }\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
79
84
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: PopoverComponent, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PopoverComponent, decorators: [{
81
86
  type: Component,
82
- args: [{ selector: 'si-popover', imports: [NgTemplateOutlet, SiIconComponent, SiTranslatePipe], changeDetection: ChangeDetectionStrategy.Default, host: {
87
+ args: [{ selector: 'si-popover', imports: [NgTemplateOutlet, SiIconComponent, SiTranslatePipe], changeDetection: ChangeDetectionStrategy.Eager, host: {
83
88
  '[id]': 'this.popoverDirective().popoverId'
84
89
  }, template: "@let popover = popoverDirective();\n<div\n #popoverWrapper\n role=\"dialog\"\n [class]=\"[\n 'popover',\n 'position-relative',\n 'focus-inside',\n positionClass(),\n popover.containerClass()\n ]\"\n [attr.aria-labelledby]=\"labelledBy\"\n [attr.aria-describedby]=\"describedBy\"\n (keydown.escape)=\"hide()\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popover.title()) {\n <div class=\"popover-header\">\n @let iconValue = popover.icon();\n @if (iconValue) {\n <si-icon class=\"icon me-1\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\" [id]=\"labelledBy\">{{ popover.title() | translate }}</span>\n </div>\n }\n @if (!popoverTemplate) {\n <div class=\"popover-body\">\n <div class=\"si-body\" [id]=\"describedBy\">{{ description() | translate }}</div>\n </div>\n } @else {\n <!-- If title is already provided, we wrap the template with the `popover-body` class\n since the template may not be in the popover body directive. Also used by SiHelpButtonComponent -->\n @if (popover.title()) {\n <div class=\"popover-body\">\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n </div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n }\n }\n</div>\n" }]
85
90
  }], propDecorators: { popoverDirective: [{ type: i0.Input, args: [{ isSignal: true, alias: "popoverDirective", required: true }] }], popoverWrapper: [{ type: i0.ViewChild, args: ['popoverWrapper', { isSignal: true }] }] } });
@@ -93,13 +98,14 @@ class SiPopoverDirective {
93
98
  /**
94
99
  * The popover text to be displayed
95
100
  */
96
- siPopover = input(...(ngDevMode ? [undefined, { debugName: "siPopover" }] : []));
101
+ siPopover = input(/* @ts-ignore */
102
+ ...(ngDevMode ? [undefined, { debugName: "siPopover" }] : /* istanbul ignore next */ []));
97
103
  /**
98
104
  * The placement of the popover. One of 'top', 'start', end', 'bottom'
99
105
  *
100
106
  * @defaultValue 'auto'
101
107
  */
102
- placement = input('auto', { ...(ngDevMode ? { debugName: "placement" } : {}), alias: 'siPopoverPlacement' });
108
+ placement = input('auto', { ...(ngDevMode ? { debugName: "placement" } : /* istanbul ignore next */ {}), alias: 'siPopoverPlacement' });
103
109
  placementInternal = computed(() => {
104
110
  if (this.placement() !== 'top' &&
105
111
  this.placement() !== 'bottom' &&
@@ -110,37 +116,38 @@ class SiPopoverDirective {
110
116
  else {
111
117
  return this.placement();
112
118
  }
113
- }, ...(ngDevMode ? [{ debugName: "placementInternal" }] : []));
119
+ }, /* @ts-ignore */
120
+ ...(ngDevMode ? [{ debugName: "placementInternal" }] : /* istanbul ignore next */ []));
114
121
  /**
115
122
  * The title to be displayed on top for the popover
116
123
  *
117
124
  * @defaultValue undefined
118
125
  */
119
- title = input(undefined, { ...(ngDevMode ? { debugName: "title" } : {}), alias: 'siPopoverTitle' });
126
+ title = input(undefined, { ...(ngDevMode ? { debugName: "title" } : /* istanbul ignore next */ {}), alias: 'siPopoverTitle' });
120
127
  /**
121
128
  * The class that will be applied to container of the popover
122
129
  *
123
130
  * @defaultValue ''
124
131
  */
125
- containerClass = input('', { ...(ngDevMode ? { debugName: "containerClass" } : {}), alias: 'siPopoverContainerClass' });
132
+ containerClass = input('', { ...(ngDevMode ? { debugName: "containerClass" } : /* istanbul ignore next */ {}), alias: 'siPopoverContainerClass' });
126
133
  /**
127
134
  * The icon to be displayed besides popover title
128
135
  *
129
136
  * @defaultValue undefined
130
137
  */
131
- icon = input(undefined, { ...(ngDevMode ? { debugName: "icon" } : {}), alias: 'siPopoverIcon' });
138
+ icon = input(undefined, { ...(ngDevMode ? { debugName: "icon" } : /* istanbul ignore next */ {}), alias: 'siPopoverIcon' });
132
139
  /**
133
140
  * The context for the attached template
134
141
  *
135
142
  * @defaultValue undefined
136
143
  */
137
- context = input(undefined, { ...(ngDevMode ? { debugName: "context" } : {}), alias: 'siPopoverContext' });
144
+ context = input(undefined, { ...(ngDevMode ? { debugName: "context" } : /* istanbul ignore next */ {}), alias: 'siPopoverContext' });
138
145
  /**
139
146
  * CDK scroll strategy used for the popover overlay.
140
147
  *
141
148
  * @defaultValue defaultConnectedOverlayScrollStrategy()
142
149
  */
143
- scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), { ...(ngDevMode ? { debugName: "scrollStrategy" } : {}), alias: 'siPopoverScrollStrategy' });
150
+ scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), { ...(ngDevMode ? { debugName: "scrollStrategy" } : /* istanbul ignore next */ {}), alias: 'siPopoverScrollStrategy' });
144
151
  /**
145
152
  * Emits `true` when the popover is shown, `false` when the popover is hidden.
146
153
  */
@@ -150,7 +157,8 @@ class SiPopoverDirective {
150
157
  /** @internal */
151
158
  popoverId = `__popover_${this.popoverCounter}`;
152
159
  /** @internal */
153
- isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
160
+ isOpen = signal(false, /* @ts-ignore */
161
+ ...(ngDevMode ? [{ debugName: "isOpen" }] : /* istanbul ignore next */ []));
154
162
  overlayref;
155
163
  popoverRef;
156
164
  overlay = inject(Overlay);
@@ -220,10 +228,10 @@ class SiPopoverDirective {
220
228
  .subscribe(change => this.popoverRef?.instance.updateArrow(change, this.elementRef));
221
229
  return overlayRef;
222
230
  }
223
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
224
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.8", type: SiPopoverDirective, isStandalone: true, selector: "[siPopover]", inputs: { siPopover: { classPropertyName: "siPopover", publicName: "siPopover", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "siPopoverPlacement", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "siPopoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "siPopoverContainerClass", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "siPopoverIcon", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "siPopoverContext", isSignal: true, isRequired: false, transformFunction: null }, scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "siPopoverScrollStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visibilityChange: "siPopoverVisibilityChange" }, host: { listeners: { "click": "onClick()" }, properties: { "attr.aria-expanded": "isOpen()", "attr.aria-controls": "popoverId" } }, exportAs: ["si-popover"], ngImport: i0 });
231
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
232
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.8", type: SiPopoverDirective, isStandalone: true, selector: "[siPopover]", inputs: { siPopover: { classPropertyName: "siPopover", publicName: "siPopover", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "siPopoverPlacement", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "siPopoverTitle", isSignal: true, isRequired: false, transformFunction: null }, containerClass: { classPropertyName: "containerClass", publicName: "siPopoverContainerClass", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "siPopoverIcon", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "siPopoverContext", isSignal: true, isRequired: false, transformFunction: null }, scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "siPopoverScrollStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visibilityChange: "siPopoverVisibilityChange" }, host: { listeners: { "click": "onClick()" }, properties: { "attr.aria-expanded": "isOpen()", "attr.aria-controls": "popoverId" } }, exportAs: ["si-popover"], ngImport: i0 });
225
233
  }
226
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverDirective, decorators: [{
234
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverDirective, decorators: [{
227
235
  type: Directive,
228
236
  args: [{
229
237
  selector: '[siPopover]',
@@ -242,10 +250,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
242
250
  */
243
251
  class SiPopoverTitleDirective {
244
252
  popover = inject(PopoverComponent);
245
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
246
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.8", type: SiPopoverTitleDirective, isStandalone: true, selector: "si-popover-title", host: { properties: { "id": "this.popover.labelledBy" }, classAttribute: "popover-header" }, ngImport: i0 });
253
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
254
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SiPopoverTitleDirective, isStandalone: true, selector: "si-popover-title", host: { properties: { "id": "this.popover.labelledBy" }, classAttribute: "popover-header" }, ngImport: i0 });
247
255
  }
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverTitleDirective, decorators: [{
256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverTitleDirective, decorators: [{
249
257
  type: Directive,
250
258
  args: [{
251
259
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -263,10 +271,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
263
271
  */
264
272
  class SiPopoverBodyDirective {
265
273
  popover = inject(PopoverComponent);
266
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverBodyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
267
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.8", type: SiPopoverBodyDirective, isStandalone: true, selector: "si-popover-body", host: { properties: { "id": "this.popover.describedBy" }, classAttribute: "popover-body d-block" }, ngImport: i0 });
274
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverBodyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
275
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SiPopoverBodyDirective, isStandalone: true, selector: "si-popover-body", host: { properties: { "id": "this.popover.describedBy" }, classAttribute: "popover-body d-block" }, ngImport: i0 });
268
276
  }
269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiPopoverBodyDirective, decorators: [{
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiPopoverBodyDirective, decorators: [{
270
278
  type: Directive,
271
279
  args: [{
272
280
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-element-ng-popover.mjs","sources":["../../../../projects/element-ng/popover/si-popover.component.ts","../../../../projects/element-ng/popover/si-popover.component.html","../../../../projects/element-ng/popover/si-popover.directive.ts","../../../../projects/element-ng/popover/si-popover-title.directive.ts","../../../../projects/element-ng/popover/si-popover-body.directive.ts","../../../../projects/element-ng/popover/index.ts","../../../../projects/element-ng/popover/siemens-element-ng-popover.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { ConfigurableFocusTrap, ConfigurableFocusTrapFactory } from '@angular/cdk/a11y';\nimport { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n Component,\n ElementRef,\n inject,\n Injector,\n input,\n OnDestroy,\n OnInit,\n signal,\n TemplateRef,\n viewChild,\n DOCUMENT,\n computed,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { calculateOverlayArrowPosition, OverlayArrowPosition } from '@siemens/element-ng/common';\nimport { SiIconComponent } from '@siemens/element-ng/icon';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiPopoverDirective } from './si-popover.directive';\n\n@Component({\n selector: 'si-popover',\n imports: [NgTemplateOutlet, SiIconComponent, SiTranslatePipe],\n templateUrl: './si-popover.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n '[id]': 'this.popoverDirective().popoverId'\n }\n})\nexport class PopoverComponent implements OnInit, OnDestroy {\n /** The directive that supplies and controls the popover content. */\n readonly popoverDirective = input.required<SiPopoverDirective>();\n readonly popoverWrapper = viewChild.required<ElementRef>('popoverWrapper');\n\n /** @internal */\n labelledBy: string | undefined;\n /** @internal */\n describedBy: string | undefined;\n protected readonly positionClass = signal('');\n protected readonly arrowPos = signal<OverlayArrowPosition | undefined>(undefined);\n protected readonly description = computed(() => {\n const description = this.popoverDirective().siPopover();\n return !(description instanceof TemplateRef) ? description : undefined;\n });\n protected popoverTemplate: TemplateRef<any> | null = null;\n protected injector = inject(Injector);\n\n private elementRef = inject(ElementRef);\n private focusTrapFactory = inject(ConfigurableFocusTrapFactory);\n private focusTrap?: ConfigurableFocusTrap;\n private readonly previouslyActiveElement = inject(DOCUMENT).activeElement;\n\n ngOnInit(): void {\n const popoverDirective = this.popoverDirective();\n const popover = popoverDirective.siPopover();\n if (popover instanceof TemplateRef) {\n this.popoverTemplate = popover;\n }\n this.labelledBy = `__popover-title_${popoverDirective.popoverCounter}`;\n this.describedBy = `__popover-body_${popoverDirective.popoverCounter}`;\n\n this.applyFocus();\n }\n\n ngOnDestroy(): void {\n this.focusTrap?.destroy();\n if (\n this.previouslyActiveElement &&\n 'focus' in this.previouslyActiveElement &&\n typeof this.previouslyActiveElement.focus === 'function'\n ) {\n this.previouslyActiveElement.focus();\n }\n }\n\n /** @internal */\n updateArrow(change: ConnectedOverlayPositionChange, anchor?: ElementRef): void {\n const positionClass = `popover-${change.connectionPair.overlayX}-${change.connectionPair.overlayY}`;\n // need two updates as class changes affect the position\n this.positionClass.set(positionClass);\n const arrowPos = calculateOverlayArrowPosition(change, this.elementRef, anchor);\n this.arrowPos.set(arrowPos);\n }\n\n hide(): void {\n this.popoverDirective().hide();\n }\n\n private applyFocus(): void {\n // Using setTimeout ensures that SR first read `expanded` before we move the focus.\n setTimeout(async () => {\n const popoverWrapperEl = this.popoverWrapper().nativeElement;\n this.focusTrap = this.focusTrapFactory.create(this.popoverWrapper().nativeElement);\n const moved = await this.focusTrap.focusFirstTabbableElementWhenReady();\n if (!moved) {\n popoverWrapperEl.tabIndex = 0;\n popoverWrapperEl.focus();\n }\n });\n }\n}\n","@let popover = popoverDirective();\n<div\n #popoverWrapper\n role=\"dialog\"\n [class]=\"[\n 'popover',\n 'position-relative',\n 'focus-inside',\n positionClass(),\n popover.containerClass()\n ]\"\n [attr.aria-labelledby]=\"labelledBy\"\n [attr.aria-describedby]=\"describedBy\"\n (keydown.escape)=\"hide()\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popover.title()) {\n <div class=\"popover-header\">\n @let iconValue = popover.icon();\n @if (iconValue) {\n <si-icon class=\"icon me-1\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\" [id]=\"labelledBy\">{{ popover.title() | translate }}</span>\n </div>\n }\n @if (!popoverTemplate) {\n <div class=\"popover-body\">\n <div class=\"si-body\" [id]=\"describedBy\">{{ description() | translate }}</div>\n </div>\n } @else {\n <!-- If title is already provided, we wrap the template with the `popover-body` class\n since the template may not be in the popover body directive. Also used by SiHelpButtonComponent -->\n @if (popover.title()) {\n <div class=\"popover-body\">\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n </div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n }\n }\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ComponentRef,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n OnDestroy,\n output,\n signal,\n TemplateRef\n} from '@angular/core';\nimport {\n defaultConnectedOverlayScrollStrategy,\n getOverlay,\n getPositionStrategy,\n positions\n} from '@siemens/element-ng/common';\nimport { TranslatableString } from '@siemens/element-translate-ng/translate-types';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n selector: '[siPopover]',\n host: {\n '[attr.aria-expanded]': 'isOpen()',\n '[attr.aria-controls]': 'popoverId',\n '(click)': 'onClick()'\n },\n exportAs: 'si-popover'\n})\nexport class SiPopoverDirective implements OnDestroy {\n private static idCounter = 0;\n\n /**\n * The popover text to be displayed\n */\n readonly siPopover = input<TranslatableString | TemplateRef<unknown>>();\n\n /**\n * The placement of the popover. One of 'top', 'start', end', 'bottom'\n *\n * @defaultValue 'auto'\n */\n readonly placement = input<keyof typeof positions>('auto', { alias: 'siPopoverPlacement' });\n\n readonly placementInternal = computed(() => {\n if (\n this.placement() !== 'top' &&\n this.placement() !== 'bottom' &&\n this.placement() !== 'start' &&\n this.placement() !== 'end'\n ) {\n return 'auto';\n } else {\n return this.placement();\n }\n });\n\n /**\n * The title to be displayed on top for the popover\n *\n * @defaultValue undefined\n */\n readonly title = input<TranslatableString>(undefined, { alias: 'siPopoverTitle' });\n\n /**\n * The class that will be applied to container of the popover\n *\n * @defaultValue ''\n */\n readonly containerClass = input('', { alias: 'siPopoverContainerClass' });\n\n /**\n * The icon to be displayed besides popover title\n *\n * @defaultValue undefined\n */\n readonly icon = input<string>(undefined, { alias: 'siPopoverIcon' });\n\n /**\n * The context for the attached template\n *\n * @defaultValue undefined\n */\n readonly context = input<unknown>(undefined, { alias: 'siPopoverContext' });\n\n /**\n * CDK scroll strategy used for the popover overlay.\n *\n * @defaultValue defaultConnectedOverlayScrollStrategy()\n */\n readonly scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), {\n alias: 'siPopoverScrollStrategy'\n });\n\n /**\n * Emits `true` when the popover is shown, `false` when the popover is hidden.\n */\n readonly visibilityChange = output<boolean>({ alias: 'siPopoverVisibilityChange' });\n\n /** @internal */\n readonly popoverCounter = SiPopoverDirective.idCounter++;\n /** @internal */\n readonly popoverId = `__popover_${this.popoverCounter}`;\n\n /** @internal */\n protected readonly isOpen = signal<boolean>(false);\n\n private overlayref?: OverlayRef;\n private popoverRef?: ComponentRef<PopoverComponent>;\n private overlay = inject(Overlay);\n private elementRef = inject(ElementRef);\n private destroyer = new Subject<void>();\n\n ngOnDestroy(): void {\n this.overlayref?.dispose();\n this.destroyer.next();\n this.destroyer.complete();\n }\n\n /**\n * Displays popover and emits 'shown' event.\n */\n show(): void {\n if (this.overlayref?.hasAttached()) {\n return;\n }\n\n this.overlayref ??= this.createOverlay();\n\n const popoverPortal = new ComponentPortal(PopoverComponent);\n this.popoverRef = this.overlayref.attach(popoverPortal);\n\n this.popoverRef.setInput('popoverDirective', this);\n\n this.isOpen.set(true);\n this.visibilityChange.emit(true);\n }\n\n /**\n * Hides the popover and emits 'hidden' event.\n */\n hide(): void {\n this.overlayref?.detach();\n }\n\n /**\n * Updates the position of the popover based on the position strategy.\n */\n updatePosition(): void {\n this.overlayref?.updatePosition();\n }\n\n protected onClick(): void {\n if (this.overlayref?.hasAttached()) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n private createOverlay(): OverlayRef {\n const overlayRef = getOverlay(\n this.elementRef,\n this.overlay,\n false,\n this.placementInternal(),\n false,\n true,\n this.scrollStrategy()\n );\n overlayRef\n .detachments()\n .pipe(takeUntil(this.destroyer))\n .subscribe(() => {\n this.popoverRef = undefined;\n if (this.isOpen()) {\n this.isOpen.set(false);\n this.visibilityChange.emit(false);\n }\n });\n overlayRef\n .outsidePointerEvents()\n .pipe(takeUntil(this.destroyer))\n .subscribe(({ target }) => {\n if (target !== this.elementRef.nativeElement) {\n this.hide();\n }\n });\n getPositionStrategy(overlayRef)\n ?.positionChanges.pipe(takeUntil(this.destroyer))\n .subscribe(change => this.popoverRef?.instance.updateArrow(change, this.elementRef));\n return overlayRef;\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive, inject } from '@angular/core';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-popover-title',\n host: {\n '[id]': 'this.popover.labelledBy',\n 'class': 'popover-header'\n }\n})\nexport class SiPopoverTitleDirective {\n readonly popover = inject(PopoverComponent);\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive, inject } from '@angular/core';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-popover-body',\n host: {\n '[id]': 'this.popover.describedBy',\n 'class': 'popover-body d-block'\n }\n})\nexport class SiPopoverBodyDirective {\n readonly popover = inject(PopoverComponent);\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-popover.directive';\nexport * from './si-popover-title.directive';\nexport * from './si-popover-body.directive';\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-popover.mjs","sources":["../../../../projects/element-ng/popover/si-popover.component.ts","../../../../projects/element-ng/popover/si-popover.component.html","../../../../projects/element-ng/popover/si-popover.directive.ts","../../../../projects/element-ng/popover/si-popover-title.directive.ts","../../../../projects/element-ng/popover/si-popover-body.directive.ts","../../../../projects/element-ng/popover/index.ts","../../../../projects/element-ng/popover/siemens-element-ng-popover.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { ConfigurableFocusTrap, ConfigurableFocusTrapFactory } from '@angular/cdk/a11y';\nimport { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n Component,\n ElementRef,\n inject,\n Injector,\n input,\n OnDestroy,\n OnInit,\n signal,\n TemplateRef,\n viewChild,\n DOCUMENT,\n computed,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { calculateOverlayArrowPosition, OverlayArrowPosition } from '@siemens/element-ng/common';\nimport { SiIconComponent } from '@siemens/element-ng/icon';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiPopoverDirective } from './si-popover.directive';\n\n@Component({\n selector: 'si-popover',\n imports: [NgTemplateOutlet, SiIconComponent, SiTranslatePipe],\n templateUrl: './si-popover.component.html',\n changeDetection: ChangeDetectionStrategy.Eager,\n host: {\n '[id]': 'this.popoverDirective().popoverId'\n }\n})\nexport class PopoverComponent implements OnInit, OnDestroy {\n /** The directive that supplies and controls the popover content. */\n readonly popoverDirective = input.required<SiPopoverDirective>();\n readonly popoverWrapper = viewChild.required<ElementRef>('popoverWrapper');\n\n /** @internal */\n labelledBy: string | undefined;\n /** @internal */\n describedBy: string | undefined;\n protected readonly positionClass = signal('');\n protected readonly arrowPos = signal<OverlayArrowPosition | undefined>(undefined);\n protected readonly description = computed(() => {\n const description = this.popoverDirective().siPopover();\n return !(description instanceof TemplateRef) ? description : undefined;\n });\n protected popoverTemplate: TemplateRef<any> | null = null;\n protected injector = inject(Injector);\n\n private elementRef = inject(ElementRef);\n private focusTrapFactory = inject(ConfigurableFocusTrapFactory);\n private focusTrap?: ConfigurableFocusTrap;\n private readonly previouslyActiveElement = inject(DOCUMENT).activeElement;\n\n ngOnInit(): void {\n const popoverDirective = this.popoverDirective();\n const popover = popoverDirective.siPopover();\n if (popover instanceof TemplateRef) {\n this.popoverTemplate = popover;\n }\n this.labelledBy = `__popover-title_${popoverDirective.popoverCounter}`;\n this.describedBy = `__popover-body_${popoverDirective.popoverCounter}`;\n\n this.applyFocus();\n }\n\n ngOnDestroy(): void {\n this.focusTrap?.destroy();\n if (\n this.previouslyActiveElement &&\n 'focus' in this.previouslyActiveElement &&\n typeof this.previouslyActiveElement.focus === 'function'\n ) {\n this.previouslyActiveElement.focus();\n }\n }\n\n /** @internal */\n updateArrow(change: ConnectedOverlayPositionChange, anchor?: ElementRef): void {\n const positionClass = `popover-${change.connectionPair.overlayX}-${change.connectionPair.overlayY}`;\n // need two updates as class changes affect the position\n this.positionClass.set(positionClass);\n const arrowPos = calculateOverlayArrowPosition(change, this.elementRef, anchor);\n this.arrowPos.set(arrowPos);\n }\n\n hide(): void {\n this.popoverDirective().hide();\n }\n\n private applyFocus(): void {\n // Using setTimeout ensures that SR first read `expanded` before we move the focus.\n setTimeout(async () => {\n const popoverWrapperEl = this.popoverWrapper().nativeElement;\n this.focusTrap = this.focusTrapFactory.create(this.popoverWrapper().nativeElement);\n const moved = await this.focusTrap.focusFirstTabbableElementWhenReady();\n if (!moved) {\n popoverWrapperEl.tabIndex = 0;\n popoverWrapperEl.focus();\n }\n });\n }\n}\n","@let popover = popoverDirective();\n<div\n #popoverWrapper\n role=\"dialog\"\n [class]=\"[\n 'popover',\n 'position-relative',\n 'focus-inside',\n positionClass(),\n popover.containerClass()\n ]\"\n [attr.aria-labelledby]=\"labelledBy\"\n [attr.aria-describedby]=\"describedBy\"\n (keydown.escape)=\"hide()\"\n>\n <div\n class=\"popover-arrow\"\n [style.left.px]=\"arrowPos()?.left\"\n [style.right.px]=\"arrowPos()?.right\"\n ></div>\n @if (popover.title()) {\n <div class=\"popover-header\">\n @let iconValue = popover.icon();\n @if (iconValue) {\n <si-icon class=\"icon me-1\" [icon]=\"iconValue\" />\n }\n <span class=\"si-h5\" [id]=\"labelledBy\">{{ popover.title() | translate }}</span>\n </div>\n }\n @if (!popoverTemplate) {\n <div class=\"popover-body\">\n <div class=\"si-body\" [id]=\"describedBy\">{{ description() | translate }}</div>\n </div>\n } @else {\n <!-- If title is already provided, we wrap the template with the `popover-body` class\n since the template may not be in the popover body directive. Also used by SiHelpButtonComponent -->\n @if (popover.title()) {\n <div class=\"popover-body\">\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n </div>\n } @else {\n <ng-template\n [ngTemplateOutlet]=\"popoverTemplate\"\n [ngTemplateOutletContext]=\"popover.context()\"\n [ngTemplateOutletInjector]=\"injector\"\n />\n }\n }\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ComponentRef,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n OnDestroy,\n output,\n signal,\n TemplateRef\n} from '@angular/core';\nimport {\n defaultConnectedOverlayScrollStrategy,\n getOverlay,\n getPositionStrategy,\n positions\n} from '@siemens/element-ng/common';\nimport { TranslatableString } from '@siemens/element-translate-ng/translate-types';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n selector: '[siPopover]',\n host: {\n '[attr.aria-expanded]': 'isOpen()',\n '[attr.aria-controls]': 'popoverId',\n '(click)': 'onClick()'\n },\n exportAs: 'si-popover'\n})\nexport class SiPopoverDirective implements OnDestroy {\n private static idCounter = 0;\n\n /**\n * The popover text to be displayed\n */\n readonly siPopover = input<TranslatableString | TemplateRef<unknown>>();\n\n /**\n * The placement of the popover. One of 'top', 'start', end', 'bottom'\n *\n * @defaultValue 'auto'\n */\n readonly placement = input<keyof typeof positions>('auto', { alias: 'siPopoverPlacement' });\n\n readonly placementInternal = computed(() => {\n if (\n this.placement() !== 'top' &&\n this.placement() !== 'bottom' &&\n this.placement() !== 'start' &&\n this.placement() !== 'end'\n ) {\n return 'auto';\n } else {\n return this.placement();\n }\n });\n\n /**\n * The title to be displayed on top for the popover\n *\n * @defaultValue undefined\n */\n readonly title = input<TranslatableString>(undefined, { alias: 'siPopoverTitle' });\n\n /**\n * The class that will be applied to container of the popover\n *\n * @defaultValue ''\n */\n readonly containerClass = input('', { alias: 'siPopoverContainerClass' });\n\n /**\n * The icon to be displayed besides popover title\n *\n * @defaultValue undefined\n */\n readonly icon = input<string>(undefined, { alias: 'siPopoverIcon' });\n\n /**\n * The context for the attached template\n *\n * @defaultValue undefined\n */\n readonly context = input<unknown>(undefined, { alias: 'siPopoverContext' });\n\n /**\n * CDK scroll strategy used for the popover overlay.\n *\n * @defaultValue defaultConnectedOverlayScrollStrategy()\n */\n readonly scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), {\n alias: 'siPopoverScrollStrategy'\n });\n\n /**\n * Emits `true` when the popover is shown, `false` when the popover is hidden.\n */\n readonly visibilityChange = output<boolean>({ alias: 'siPopoverVisibilityChange' });\n\n /** @internal */\n readonly popoverCounter = SiPopoverDirective.idCounter++;\n /** @internal */\n readonly popoverId = `__popover_${this.popoverCounter}`;\n\n /** @internal */\n protected readonly isOpen = signal<boolean>(false);\n\n private overlayref?: OverlayRef;\n private popoverRef?: ComponentRef<PopoverComponent>;\n private overlay = inject(Overlay);\n private elementRef = inject(ElementRef);\n private destroyer = new Subject<void>();\n\n ngOnDestroy(): void {\n this.overlayref?.dispose();\n this.destroyer.next();\n this.destroyer.complete();\n }\n\n /**\n * Displays popover and emits 'shown' event.\n */\n show(): void {\n if (this.overlayref?.hasAttached()) {\n return;\n }\n\n this.overlayref ??= this.createOverlay();\n\n const popoverPortal = new ComponentPortal(PopoverComponent);\n this.popoverRef = this.overlayref.attach(popoverPortal);\n\n this.popoverRef.setInput('popoverDirective', this);\n\n this.isOpen.set(true);\n this.visibilityChange.emit(true);\n }\n\n /**\n * Hides the popover and emits 'hidden' event.\n */\n hide(): void {\n this.overlayref?.detach();\n }\n\n /**\n * Updates the position of the popover based on the position strategy.\n */\n updatePosition(): void {\n this.overlayref?.updatePosition();\n }\n\n protected onClick(): void {\n if (this.overlayref?.hasAttached()) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n private createOverlay(): OverlayRef {\n const overlayRef = getOverlay(\n this.elementRef,\n this.overlay,\n false,\n this.placementInternal(),\n false,\n true,\n this.scrollStrategy()\n );\n overlayRef\n .detachments()\n .pipe(takeUntil(this.destroyer))\n .subscribe(() => {\n this.popoverRef = undefined;\n if (this.isOpen()) {\n this.isOpen.set(false);\n this.visibilityChange.emit(false);\n }\n });\n overlayRef\n .outsidePointerEvents()\n .pipe(takeUntil(this.destroyer))\n .subscribe(({ target }) => {\n if (target !== this.elementRef.nativeElement) {\n this.hide();\n }\n });\n getPositionStrategy(overlayRef)\n ?.positionChanges.pipe(takeUntil(this.destroyer))\n .subscribe(change => this.popoverRef?.instance.updateArrow(change, this.elementRef));\n return overlayRef;\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive, inject } from '@angular/core';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-popover-title',\n host: {\n '[id]': 'this.popover.labelledBy',\n 'class': 'popover-header'\n }\n})\nexport class SiPopoverTitleDirective {\n readonly popover = inject(PopoverComponent);\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive, inject } from '@angular/core';\n\nimport { PopoverComponent } from './si-popover.component';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-popover-body',\n host: {\n '[id]': 'this.popover.describedBy',\n 'class': 'popover-body d-block'\n }\n})\nexport class SiPopoverBodyDirective {\n readonly popover = inject(PopoverComponent);\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-popover.directive';\nexport * from './si-popover-title.directive';\nexport * from './si-popover-body.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}