@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siemens-element-ng-markdown-extensions-katex.mjs","sources":["../../../../projects/element-ng/markdown/extensions/katex/si-markdown-katex.component.ts","../../../../projects/element-ng/markdown/extensions/katex/si-markdown-katex.extension.ts","../../../../projects/element-ng/markdown/extensions/katex/index.ts","../../../../projects/element-ng/markdown/extensions/katex/siemens-element-ng-markdown-extensions-katex.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport {\n Component,\n computed,\n effect,\n ElementRef,\n inject,\n input,\n ViewEncapsulation\n} from '@angular/core';\nimport { type SiMarkdownExtensionComponent } from '@siemens/element-ng/markdown';\nimport { type KatexOptions, render } from 'katex';\nimport { Literal, type Node, type Parent } from 'mdast';\n\n@Component({\n selector: 'si-markdown-katex',\n template: '',\n styleUrl: 'si-markdown-katex.component.scss',\n // this is necessary for the styles to work correctly\n // eslint-disable-next-line @angular-eslint/use-component-view-encapsulation\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'katex-container',\n '[attr.data-line]': 'node().position?.start?.line',\n '[class.d-block]': 'displayMode()'\n }\n})\nexport class SiMarkdownKatexComponent implements SiMarkdownExtensionComponent {\n private readonly elementRef = inject(ElementRef);\n\n readonly node = input.required<Node>();\n readonly parent = input.required<Parent>();\n readonly options = input<KatexOptions>();\n\n protected readonly displayMode = computed(() => this.node().type === 'math');\n private readonly expr = computed(() => (this.node() as Literal).value);\n\n constructor() {\n effect(() => this.render());\n }\n\n private render(): void {\n const expr = this.expr();\n const options = this.options() ?? {};\n render(expr, this.elementRef.nativeElement, {\n ...options,\n displayMode: this.displayMode(),\n throwOnError: false\n });\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { type SiMarkdownExtension } from '@siemens/element-ng/markdown';\n/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { type KatexOptions } from 'katex';\nimport remarkMath, { type Options } from 'remark-math';\n\nimport { SiMarkdownKatexComponent } from './si-markdown-katex.component';\n\n/**\n * An extension to render LaTeX math expressions using KaTeX. Uses `remark-math` to parse\n * the expressions inside the markdown document.\n * @param parseOptions - options passed to `remark-math`\n * @param katexOptions - options passed to `katex`\n * @returns extension for `SiMarkdownOption.installExtension()`\n */\nexport const siMarkdownMathKaTeX = (\n parseOptions?: Options,\n katexOptions?: KatexOptions\n): SiMarkdownExtension => {\n katexOptions ??= {\n output: 'html'\n };\n\n return {\n plugins: [{ plugin: remarkMath, options: parseOptions }],\n types: [\n { type: 'math', component: SiMarkdownKatexComponent, options: katexOptions },\n { type: 'inlineMath', component: SiMarkdownKatexComponent, options: katexOptions }\n ]\n };\n};\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-markdown-katex.extension';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;;;AAGG;MA2BU,wBAAwB,CAAA;AAClB,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAEvC,IAAI,GAAG,KAAK,CAAC,QAAQ;6EAAQ;IAC7B,MAAM,GAAG,KAAK,CAAC,QAAQ;+EAAU;AACjC,IAAA,OAAO,GAAG,KAAK;2FAAgB;AAErB,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM;oFAAC;IAC3D,IAAI,GAAG,QAAQ,CAAC,MAAO,IAAI,CAAC,IAAI,EAAc,CAAC,KAAK;6EAAC;AAEtE,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;IAC7B;IAEQ,MAAM,GAAA;AACZ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE;QACpC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAC1C,YAAA,GAAG,OAAO;AACV,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAC/B,YAAA,YAAY,EAAE;AACf,SAAA,CAAC;IACJ;uGAtBW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,slBAXzB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,smj5CAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAWD,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAbpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,YACnB,EAAE,EAAA,aAAA,EAIG,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACJ,wBAAA,KAAK,EAAE,iBAAiB;AACxB,wBAAA,kBAAkB,EAAE,8BAA8B;AAClD,wBAAA,iBAAiB,EAAE;AACpB,qBAAA,EAAA,MAAA,EAAA,CAAA,smj5CAAA,CAAA,EAAA;;;ACdH;;;;;;AAMG;MACU,mBAAmB,GAAG,CACjC,YAAsB,EACtB,YAA2B,KACJ;AACvB,IAAA,YAAY,KAAK;AACf,QAAA,MAAM,EAAE;KACT;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AACxD,QAAA,KAAK,EAAE;YACL,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,wBAAwB,EAAE,OAAO,EAAE,YAAY,EAAE;YAC5E,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,wBAAwB,EAAE,OAAO,EAAE,YAAY;AACjF;KACF;AACH;;ACpCA;;;AAGG;;ACHH;;AAEG;;;;"}
@@ -0,0 +1,86 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Injector, input, computed, afterNextRender, Component } from '@angular/core';
3
+ import { DomSanitizer } from '@angular/platform-browser';
4
+ import { computedAsync } from '@siemens/element-ng/markdown';
5
+ import mermaid from 'mermaid';
6
+
7
+ /**
8
+ * Copyright (c) Siemens 2016 - 2026
9
+ * SPDX-License-Identifier: MIT
10
+ */
11
+ class SiMarkdownMermaidComponent {
12
+ static idCounter = 1;
13
+ id = `__si-markdown-mermaid-${SiMarkdownMermaidComponent.idCounter++}`;
14
+ sanitizer = inject(DomSanitizer);
15
+ injector = inject(Injector);
16
+ node = input.required(/* @ts-ignore */
17
+ ...(ngDevMode ? [{ debugName: "node" }] : /* istanbul ignore next */ []));
18
+ parent = input.required(/* @ts-ignore */
19
+ ...(ngDevMode ? [{ debugName: "parent" }] : /* istanbul ignore next */ []));
20
+ options = input(/* @ts-ignore */
21
+ ...(ngDevMode ? [undefined, { debugName: "options" }] : /* istanbul ignore next */ []));
22
+ code = computed(() => this.node().value, /* @ts-ignore */
23
+ ...(ngDevMode ? [{ debugName: "code" }] : /* istanbul ignore next */ []));
24
+ svg = computedAsync({
25
+ params: () => ({ options: this.options(), code: this.code() }),
26
+ computation: params => this.render(params.code, params.options),
27
+ initial: undefined
28
+ });
29
+ async render(code, options = {}) {
30
+ if (!code) {
31
+ return '';
32
+ }
33
+ try {
34
+ mermaid.initialize({ ...options, startOnLoad: false, suppressErrorRendering: true });
35
+ }
36
+ catch (err) {
37
+ return '';
38
+ }
39
+ return await new Promise(resolve => {
40
+ // this is necessary for mermaid to init
41
+ afterNextRender(async () => {
42
+ try {
43
+ const ret = await mermaid.render(this.id, code);
44
+ resolve(this.sanitizer.bypassSecurityTrustHtml(ret.svg));
45
+ }
46
+ catch {
47
+ resolve('');
48
+ }
49
+ }, { injector: this.injector });
50
+ });
51
+ }
52
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMarkdownMermaidComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
53
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.8", type: SiMarkdownMermaidComponent, isStandalone: true, selector: "si-markdown-mermaid", inputs: { node: { classPropertyName: "node", publicName: "node", isSignal: true, isRequired: true, transformFunction: null }, parent: { classPropertyName: "parent", publicName: "parent", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-line": "node().position?.start?.line" } }, ngImport: i0, template: '<div [id]="id"></div><div [innerHTML]="svg()"></div>', isInline: true });
54
+ }
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMarkdownMermaidComponent, decorators: [{
56
+ type: Component,
57
+ args: [{
58
+ selector: 'si-markdown-mermaid',
59
+ template: '<div [id]="id"></div><div [innerHTML]="svg()"></div>',
60
+ host: {
61
+ '[attr.data-line]': 'node().position?.start?.line'
62
+ }
63
+ }]
64
+ }], propDecorators: { node: [{ type: i0.Input, args: [{ isSignal: true, alias: "node", required: true }] }], parent: [{ type: i0.Input, args: [{ isSignal: true, alias: "parent", required: true }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }] } });
65
+
66
+ /**
67
+ * Copyright (c) Siemens 2016 - 2026
68
+ * SPDX-License-Identifier: MIT
69
+ */
70
+ const siMarkdownMermaid = (options) => {
71
+ return {
72
+ codeTypes: [{ type: 'mermaid', component: SiMarkdownMermaidComponent, options }]
73
+ };
74
+ };
75
+
76
+ /**
77
+ * Copyright (c) Siemens 2016 - 2026
78
+ * SPDX-License-Identifier: MIT
79
+ */
80
+
81
+ /**
82
+ * Generated bundle index. Do not edit.
83
+ */
84
+
85
+ export { siMarkdownMermaid };
86
+ //# sourceMappingURL=siemens-element-ng-markdown-extensions-mermaid.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siemens-element-ng-markdown-extensions-mermaid.mjs","sources":["../../../../projects/element-ng/markdown/extensions/mermaid/si-markdown-mermaid.component.ts","../../../../projects/element-ng/markdown/extensions/mermaid/si-markdown-mermaid.extension.ts","../../../../projects/element-ng/markdown/extensions/mermaid/index.ts","../../../../projects/element-ng/markdown/extensions/mermaid/siemens-element-ng-markdown-extensions-mermaid.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { afterNextRender, Component, computed, inject, Injector, input } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { computedAsync, type SiMarkdownExtensionComponent } from '@siemens/element-ng/markdown';\nimport { Literal, type Node, type Parent } from 'mdast';\nimport mermaid, { MermaidConfig } from 'mermaid';\n\n@Component({\n selector: 'si-markdown-mermaid',\n template: '<div [id]=\"id\"></div><div [innerHTML]=\"svg()\"></div>',\n host: {\n '[attr.data-line]': 'node().position?.start?.line'\n }\n})\nexport class SiMarkdownMermaidComponent implements SiMarkdownExtensionComponent {\n private static idCounter = 1;\n protected id = `__si-markdown-mermaid-${SiMarkdownMermaidComponent.idCounter++}`;\n\n private readonly sanitizer = inject(DomSanitizer);\n private readonly injector = inject(Injector);\n readonly node = input.required<Node>();\n readonly parent = input.required<Parent>();\n readonly options = input<MermaidConfig>();\n\n protected readonly code = computed(() => (this.node() as Literal).value);\n\n protected readonly svg = computedAsync({\n params: () => ({ options: this.options(), code: this.code() }),\n computation: params => this.render(params.code, params.options),\n initial: undefined\n });\n\n private async render(code: string, options: MermaidConfig = {}): Promise<SafeHtml> {\n if (!code) {\n return '';\n }\n try {\n mermaid.initialize({ ...options, startOnLoad: false, suppressErrorRendering: true });\n } catch (err) {\n return '';\n }\n return await new Promise(resolve => {\n // this is necessary for mermaid to init\n afterNextRender(\n async () => {\n try {\n const ret = await mermaid.render(this.id, code);\n resolve(this.sanitizer.bypassSecurityTrustHtml(ret.svg));\n } catch {\n resolve('');\n }\n },\n { injector: this.injector }\n );\n });\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\n\nimport { type SiMarkdownExtension } from '@siemens/element-ng/markdown';\nimport { MermaidConfig } from 'mermaid';\n\nimport { SiMarkdownMermaidComponent } from './si-markdown-mermaid.component';\n\nexport const siMarkdownMermaid = (options?: MermaidConfig): SiMarkdownExtension => {\n return {\n codeTypes: [{ type: 'mermaid', component: SiMarkdownMermaidComponent, options }]\n };\n};\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-markdown-mermaid.extension';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAAA;;;AAGG;MAcU,0BAA0B,CAAA;AAC7B,IAAA,OAAO,SAAS,GAAG,CAAC;AAClB,IAAA,EAAE,GAAG,CAAA,sBAAA,EAAyB,0BAA0B,CAAC,SAAS,EAAE,EAAE;AAE/D,IAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;AAChC,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACnC,IAAI,GAAG,KAAK,CAAC,QAAQ;6EAAQ;IAC7B,MAAM,GAAG,KAAK,CAAC,QAAQ;+EAAU;AACjC,IAAA,OAAO,GAAG,KAAK;2FAAiB;IAEtB,IAAI,GAAG,QAAQ,CAAC,MAAO,IAAI,CAAC,IAAI,EAAc,CAAC,KAAK;6EAAC;IAErD,GAAG,GAAG,aAAa,CAAC;QACrC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAC9D,QAAA,WAAW,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;AAC/D,QAAA,OAAO,EAAE;AACV,KAAA,CAAC;AAEM,IAAA,MAAM,MAAM,CAAC,IAAY,EAAE,UAAyB,EAAE,EAAA;QAC5D,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,OAAO,EAAE;QACX;AACA,QAAA,IAAI;AACF,YAAA,OAAO,CAAC,UAAU,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;QACtF;QAAE,OAAO,GAAG,EAAE;AACZ,YAAA,OAAO,EAAE;QACX;AACA,QAAA,OAAO,MAAM,IAAI,OAAO,CAAC,OAAO,IAAG;;YAEjC,eAAe,CACb,YAAW;AACT,gBAAA,IAAI;AACF,oBAAA,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;AAC/C,oBAAA,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC1D;AAAE,gBAAA,MAAM;oBACN,OAAO,CAAC,EAAE,CAAC;gBACb;YACF,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B;AACH,QAAA,CAAC,CAAC;IACJ;uGAzCW,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA1B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,mhBAL3B,sDAAsD,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAKrD,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAPtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,sDAAsD;AAChE,oBAAA,IAAI,EAAE;AACJ,wBAAA,kBAAkB,EAAE;AACrB;AACF,iBAAA;;;AChBD;;;AAGG;AAOI,MAAM,iBAAiB,GAAG,CAAC,OAAuB,KAAyB;IAChF,OAAO;AACL,QAAA,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,0BAA0B,EAAE,OAAO,EAAE;KAChF;AACH;;ACdA;;;AAGG;;ACHH;;AAEG;;;;"}
@@ -0,0 +1,130 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, input, Component } from '@angular/core';
3
+ import { DomSanitizer } from '@angular/platform-browser';
4
+ import { computedAsync } from '@siemens/element-ng/markdown';
5
+ import hljs from 'highlight.js/lib/core';
6
+ import langBash from 'highlight.js/lib/languages/bash';
7
+ import langCss from 'highlight.js/lib/languages/css';
8
+ import langJs from 'highlight.js/lib/languages/javascript';
9
+ import langJson from 'highlight.js/lib/languages/json';
10
+ import langMarkdown from 'highlight.js/lib/languages/markdown';
11
+ import langPython from 'highlight.js/lib/languages/python';
12
+ import langScss from 'highlight.js/lib/languages/scss';
13
+ import langTs from 'highlight.js/lib/languages/typescript';
14
+ import langXml from 'highlight.js/lib/languages/xml';
15
+
16
+ /**
17
+ * Copyright (c) Siemens 2016 - 2026
18
+ * SPDX-License-Identifier: MIT
19
+ */
20
+ // some common languages are built-in for initial loading speed
21
+ hljs.registerLanguage('javascript', langJs);
22
+ hljs.registerLanguage('typescript', langTs);
23
+ hljs.registerLanguage('json', langJson);
24
+ hljs.registerLanguage('css', langCss);
25
+ hljs.registerLanguage('scss', langScss);
26
+ hljs.registerLanguage('bash', langBash);
27
+ hljs.registerLanguage('python', langPython);
28
+ hljs.registerLanguage('xml', langXml);
29
+ hljs.registerLanguage('markdown', langMarkdown);
30
+ const getHljsLang = async (lang, loader) => {
31
+ const loadedLang = hljs.getLanguage(lang);
32
+ if (loadedLang) {
33
+ return loadedLang;
34
+ }
35
+ if (loader) {
36
+ const importLang = await loader(lang);
37
+ if (importLang) {
38
+ hljs.registerLanguage(lang, importLang.default);
39
+ return hljs.getLanguage(lang);
40
+ }
41
+ }
42
+ return undefined;
43
+ };
44
+ class SiMarkdownHightlightJsComponent {
45
+ sanitizer = inject(DomSanitizer);
46
+ code = input.required(/* @ts-ignore */
47
+ ...(ngDevMode ? [{ debugName: "code" }] : /* istanbul ignore next */ []));
48
+ language = input.required(/* @ts-ignore */
49
+ ...(ngDevMode ? [{ debugName: "language" }] : /* istanbul ignore next */ []));
50
+ updateLanguage = input.required(/* @ts-ignore */
51
+ ...(ngDevMode ? [{ debugName: "updateLanguage" }] : /* istanbul ignore next */ []));
52
+ options = input(/* @ts-ignore */
53
+ ...(ngDevMode ? [undefined, { debugName: "options" }] : /* istanbul ignore next */ []));
54
+ highlighted = computedAsync({
55
+ params: () => ({ code: this.code(), language: this.language(), options: this.options() }),
56
+ computation: params => this.highlight(params.code, params.language, params.options),
57
+ initial: undefined
58
+ });
59
+ async highlight(code, language, options = {}) {
60
+ let highlighted = '';
61
+ if (!language && options?.autoDetectLanguage) {
62
+ try {
63
+ const res = hljs.highlightAuto(code, undefined);
64
+ highlighted = res.value;
65
+ if (res.language) {
66
+ const lang = hljs.getLanguage(res.language);
67
+ this.updateLanguage()(lang?.name);
68
+ }
69
+ else {
70
+ this.updateLanguage()(language);
71
+ }
72
+ }
73
+ catch {
74
+ // ignored
75
+ }
76
+ }
77
+ else {
78
+ const hljsLang = await getHljsLang(language, options.languageLoader);
79
+ if (hljsLang) {
80
+ this.updateLanguage()(hljsLang.name);
81
+ try {
82
+ highlighted = hljs.highlight(code, { ...options, language }).value;
83
+ }
84
+ catch {
85
+ // ignored
86
+ }
87
+ }
88
+ else {
89
+ this.updateLanguage()(language);
90
+ }
91
+ }
92
+ return highlighted ? this.sanitizer.bypassSecurityTrustHtml(highlighted) : '';
93
+ }
94
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMarkdownHightlightJsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
95
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMarkdownHightlightJsComponent, isStandalone: true, selector: "si-markdown-highlightjs", inputs: { code: { classPropertyName: "code", publicName: "code", isSignal: true, isRequired: true, transformFunction: null }, language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: true, transformFunction: null }, updateLanguage: { classPropertyName: "updateLanguage", publicName: "updateLanguage", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "d-block" }, ngImport: i0, template: "@let html = highlighted();\n@if (html) {\n <pre class=\"border-0 m-0 p-0\"><code [innerHTML]=\"html\"></code></pre>\n} @else {\n <pre class=\"border-0 m-0 p-0\"><code>{{ code() }} </code></pre>\n}\n", styles: [":host ::ng-deep .hljs{color:var(--si-sys-code-1)}:host ::ng-deep :is(.hljs-keyword,.hljs-literal,.hljs-operator){color:var(--si-sys-code-2)}:host ::ng-deep :is(.hljs-variable,.hljs-variable.language_,.hljs-params,.hljs-property){color:var(--si-sys-code-4)}:host ::ng-deep :is(.hljs-variable.constant_){color:var(--si-sys-code-3)}:host ::ng-deep :is(.hljs-title,.hljs-title.function_,.hljs-title.function_.invoke__,.hljs-built_in){color:var(--si-sys-code-5)}:host ::ng-deep :is(.hljs-string,.hljs-regexp,.hljs-char.escape_,.hljs-subst,.hljs-doctag){color:var(--si-sys-code-6)}:host ::ng-deep .hljs-number{color:var(--si-sys-code-7)}:host ::ng-deep :is(.hljs-symbol,.hljs-bullet){color:var(--si-sys-code-2)}:host ::ng-deep :is(.hljs-comment,.hljs-quote){color:var(--si-sys-code-8)}:host ::ng-deep .hljs-punctuation{color:var(--si-sys-code-9)}:host ::ng-deep :is(.hljs-tag,.hljs-name,.hljs-selector-tag,.hljs-selector-id,.hljs-selector-class,.hljs-selector-pseudo,.hljs-meta,.hljs-meta.keyword_,.hljs-template-tag,.hljs-template-variable){color:var(--si-sys-code-10)}:host ::ng-deep :is(.hljs-attr,.hljs-attribute,.hljs-selector-attr){color:var(--si-sys-code-3)}:host ::ng-deep :is(.hljs-type,.hljs-title.class_,.hljs-title.class_.inherited__){color:var(--si-sys-code-11)}:host ::ng-deep .hljs-deletion{color:var(--si-sys-code-11)}:host ::ng-deep .hljs-addition{color:var(--si-sys-code-12)}:host ::ng-deep .hljs-emphasis{font-style:italic}:host ::ng-deep .hljs-strong{font-weight:600}:host ::ng-deep :is(.hljs-code,.hljs-formula){color:var(--si-sys-code-1)}:host ::ng-deep :is(.hljs-section){color:var(--si-sys-code-1);font-weight:600}:host ::ng-deep .hljs-link{color:var(--si-sys-text-accent)}\n"] });
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMarkdownHightlightJsComponent, decorators: [{
98
+ type: Component,
99
+ args: [{ selector: 'si-markdown-highlightjs', host: {
100
+ class: 'd-block'
101
+ }, template: "@let html = highlighted();\n@if (html) {\n <pre class=\"border-0 m-0 p-0\"><code [innerHTML]=\"html\"></code></pre>\n} @else {\n <pre class=\"border-0 m-0 p-0\"><code>{{ code() }} </code></pre>\n}\n", styles: [":host ::ng-deep .hljs{color:var(--si-sys-code-1)}:host ::ng-deep :is(.hljs-keyword,.hljs-literal,.hljs-operator){color:var(--si-sys-code-2)}:host ::ng-deep :is(.hljs-variable,.hljs-variable.language_,.hljs-params,.hljs-property){color:var(--si-sys-code-4)}:host ::ng-deep :is(.hljs-variable.constant_){color:var(--si-sys-code-3)}:host ::ng-deep :is(.hljs-title,.hljs-title.function_,.hljs-title.function_.invoke__,.hljs-built_in){color:var(--si-sys-code-5)}:host ::ng-deep :is(.hljs-string,.hljs-regexp,.hljs-char.escape_,.hljs-subst,.hljs-doctag){color:var(--si-sys-code-6)}:host ::ng-deep .hljs-number{color:var(--si-sys-code-7)}:host ::ng-deep :is(.hljs-symbol,.hljs-bullet){color:var(--si-sys-code-2)}:host ::ng-deep :is(.hljs-comment,.hljs-quote){color:var(--si-sys-code-8)}:host ::ng-deep .hljs-punctuation{color:var(--si-sys-code-9)}:host ::ng-deep :is(.hljs-tag,.hljs-name,.hljs-selector-tag,.hljs-selector-id,.hljs-selector-class,.hljs-selector-pseudo,.hljs-meta,.hljs-meta.keyword_,.hljs-template-tag,.hljs-template-variable){color:var(--si-sys-code-10)}:host ::ng-deep :is(.hljs-attr,.hljs-attribute,.hljs-selector-attr){color:var(--si-sys-code-3)}:host ::ng-deep :is(.hljs-type,.hljs-title.class_,.hljs-title.class_.inherited__){color:var(--si-sys-code-11)}:host ::ng-deep .hljs-deletion{color:var(--si-sys-code-11)}:host ::ng-deep .hljs-addition{color:var(--si-sys-code-12)}:host ::ng-deep .hljs-emphasis{font-style:italic}:host ::ng-deep .hljs-strong{font-weight:600}:host ::ng-deep :is(.hljs-code,.hljs-formula){color:var(--si-sys-code-1)}:host ::ng-deep :is(.hljs-section){color:var(--si-sys-code-1);font-weight:600}:host ::ng-deep .hljs-link{color:var(--si-sys-text-accent)}\n"] }]
102
+ }], propDecorators: { code: [{ type: i0.Input, args: [{ isSignal: true, alias: "code", required: true }] }], language: [{ type: i0.Input, args: [{ isSignal: true, alias: "language", required: true }] }], updateLanguage: [{ type: i0.Input, args: [{ isSignal: true, alias: "updateLanguage", required: true }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }] } });
103
+
104
+ /**
105
+ * Copyright (c) Siemens 2016 - 2026
106
+ * SPDX-License-Identifier: MIT
107
+ */
108
+ /**
109
+ * Code highlighter using Highlight.js
110
+ * @param options - Options passed to highlight.js
111
+ * @returns highlighter configuration for `SiMarkdownOptions.setCodeHighlighter()`
112
+ */
113
+ const siMarkdownHighlightJs = (options) => {
114
+ return {
115
+ component: SiMarkdownHightlightJsComponent,
116
+ options
117
+ };
118
+ };
119
+
120
+ /**
121
+ * Copyright (c) Siemens 2016 - 2026
122
+ * SPDX-License-Identifier: MIT
123
+ */
124
+
125
+ /**
126
+ * Generated bundle index. Do not edit.
127
+ */
128
+
129
+ export { siMarkdownHighlightJs };
130
+ //# sourceMappingURL=siemens-element-ng-markdown-hightlighter-highlightjs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"siemens-element-ng-markdown-hightlighter-highlightjs.mjs","sources":["../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.html","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.highlighter.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/index.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/siemens-element-ng-markdown-hightlighter-highlightjs.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Component, inject, input } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { computedAsync, type SiMarkdownHighlighterComponent } from '@siemens/element-ng/markdown';\nimport { type Language } from 'highlight.js';\nimport hljs from 'highlight.js/lib/core';\nimport langBash from 'highlight.js/lib/languages/bash';\nimport langCss from 'highlight.js/lib/languages/css';\nimport langJs from 'highlight.js/lib/languages/javascript';\nimport langJson from 'highlight.js/lib/languages/json';\nimport langMarkdown from 'highlight.js/lib/languages/markdown';\nimport langPython from 'highlight.js/lib/languages/python';\nimport langScss from 'highlight.js/lib/languages/scss';\nimport langTs from 'highlight.js/lib/languages/typescript';\nimport langXml from 'highlight.js/lib/languages/xml';\n\nimport {\n HighlightJSLanguageLoader,\n SiMarkdownHighlightJsOptions\n} from './si-markdown-highlightjs.types';\n\n// some common languages are built-in for initial loading speed\nhljs.registerLanguage('javascript', langJs);\nhljs.registerLanguage('typescript', langTs);\nhljs.registerLanguage('json', langJson);\nhljs.registerLanguage('css', langCss);\nhljs.registerLanguage('scss', langScss);\nhljs.registerLanguage('bash', langBash);\nhljs.registerLanguage('python', langPython);\nhljs.registerLanguage('xml', langXml);\nhljs.registerLanguage('markdown', langMarkdown);\n\nconst getHljsLang = async (\n lang: string,\n loader?: HighlightJSLanguageLoader\n): Promise<Language | undefined> => {\n const loadedLang = hljs.getLanguage(lang);\n if (loadedLang) {\n return loadedLang;\n }\n\n if (loader) {\n const importLang = await loader(lang);\n if (importLang) {\n hljs.registerLanguage(lang, importLang.default);\n return hljs.getLanguage(lang);\n }\n }\n return undefined;\n};\n\n@Component({\n selector: 'si-markdown-highlightjs',\n templateUrl: './si-markdown-highlightjs.component.html',\n styleUrl: './si-markdown-highlightjs.component.scss',\n host: {\n class: 'd-block'\n }\n})\nexport class SiMarkdownHightlightJsComponent implements SiMarkdownHighlighterComponent {\n private readonly sanitizer = inject(DomSanitizer);\n readonly code = input.required<string>();\n readonly language = input.required<string>();\n readonly updateLanguage = input.required<(lang?: string) => void>();\n readonly options = input<SiMarkdownHighlightJsOptions>();\n\n protected readonly highlighted = computedAsync({\n params: () => ({ code: this.code(), language: this.language(), options: this.options() }),\n computation: params => this.highlight(params.code, params.language, params.options),\n initial: undefined\n });\n\n private async highlight(\n code: string,\n language: string,\n options: SiMarkdownHighlightJsOptions = {}\n ): Promise<SafeHtml> {\n let highlighted = '';\n if (!language && options?.autoDetectLanguage) {\n try {\n const res = hljs.highlightAuto(code, undefined);\n highlighted = res.value;\n if (res.language) {\n const lang = hljs.getLanguage(res.language);\n this.updateLanguage()(lang?.name);\n } else {\n this.updateLanguage()(language);\n }\n } catch {\n // ignored\n }\n } else {\n const hljsLang = await getHljsLang(language, options.languageLoader);\n if (hljsLang) {\n this.updateLanguage()(hljsLang.name);\n try {\n highlighted = hljs.highlight(code, { ...options, language }).value;\n } catch {\n // ignored\n }\n } else {\n this.updateLanguage()(language);\n }\n }\n return highlighted ? this.sanitizer.bypassSecurityTrustHtml(highlighted) : '';\n }\n}\n","@let html = highlighted();\n@if (html) {\n <pre class=\"border-0 m-0 p-0\"><code [innerHTML]=\"html\"></code></pre>\n} @else {\n <pre class=\"border-0 m-0 p-0\"><code>{{ code() }} </code></pre>\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\n\nimport { type SiMarkdownHighlighter } from '@siemens/element-ng/markdown';\n\nimport { SiMarkdownHightlightJsComponent } from './si-markdown-highlightjs.component';\nimport { SiMarkdownHighlightJsOptions } from './si-markdown-highlightjs.types';\n\n/**\n * Code highlighter using Highlight.js\n * @param options - Options passed to highlight.js\n * @returns highlighter configuration for `SiMarkdownOptions.setCodeHighlighter()`\n */\nexport const siMarkdownHighlightJs = (\n options?: SiMarkdownHighlightJsOptions\n): SiMarkdownHighlighter => {\n return {\n component: SiMarkdownHightlightJsComponent,\n options\n };\n};\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-markdown-highlightjs.types';\nexport * from './si-markdown-highlightjs.highlighter';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;AAGG;AAqBH;AACA,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC;AAC3C,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC;AAC3C,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC;AACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC;AACrC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC;AACvC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC;AACvC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC3C,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC;AACrC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC;AAE/C,MAAM,WAAW,GAAG,OAClB,IAAY,EACZ,MAAkC,KACD;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACzC,IAAI,UAAU,EAAE;AACd,QAAA,OAAO,UAAU;IACnB;IAEA,IAAI,MAAM,EAAE;AACV,QAAA,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QACrC,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC;AAC/C,YAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAC/B;IACF;AACA,IAAA,OAAO,SAAS;AAClB,CAAC;MAUY,+BAA+B,CAAA;AACzB,IAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;IACxC,IAAI,GAAG,KAAK,CAAC,QAAQ;6EAAU;IAC/B,QAAQ,GAAG,KAAK,CAAC,QAAQ;iFAAU;IACnC,cAAc,GAAG,KAAK,CAAC,QAAQ;uFAA2B;AAC1D,IAAA,OAAO,GAAG,KAAK;2FAAgC;IAErC,WAAW,GAAG,aAAa,CAAC;QAC7C,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACzF,WAAW,EAAE,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC;AACnF,QAAA,OAAO,EAAE;AACV,KAAA,CAAC;IAEM,MAAM,SAAS,CACrB,IAAY,EACZ,QAAgB,EAChB,UAAwC,EAAE,EAAA;QAE1C,IAAI,WAAW,GAAG,EAAE;AACpB,QAAA,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAE,kBAAkB,EAAE;AAC5C,YAAA,IAAI;gBACF,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC;AAC/C,gBAAA,WAAW,GAAG,GAAG,CAAC,KAAK;AACvB,gBAAA,IAAI,GAAG,CAAC,QAAQ,EAAE;oBAChB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAC3C,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;gBACnC;qBAAO;AACL,oBAAA,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC;gBACjC;YACF;AAAE,YAAA,MAAM;;YAER;QACF;aAAO;YACL,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC;YACpE,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;AACpC,gBAAA,IAAI;AACF,oBAAA,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK;gBACpE;AAAE,gBAAA,MAAM;;gBAER;YACF;iBAAO;AACL,gBAAA,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC;YACjC;QACF;AACA,QAAA,OAAO,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,WAAW,CAAC,GAAG,EAAE;IAC/E;uGA9CW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA/B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,woBC9D5C,0MAMA,EAAA,MAAA,EAAA,CAAA,+pDAAA,CAAA,EAAA,CAAA;;2FDwDa,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAR3C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,IAAA,EAG7B;AACJ,wBAAA,KAAK,EAAE;AACR,qBAAA,EAAA,QAAA,EAAA,0MAAA,EAAA,MAAA,EAAA,CAAA,+pDAAA,CAAA,EAAA;;;AE5DH;;;AAGG;AAOH;;;;AAIG;AACI,MAAM,qBAAqB,GAAG,CACnC,OAAsC,KACb;IACzB,OAAO;AACL,QAAA,SAAS,EAAE,+BAA+B;QAC1C;KACD;AACH;;ACtBA;;;AAGG;;ACHH;;AAEG;;;;"}