@siemens/ix 0.0.0-pr-2166-20251001083917 → 0.0.0-pr-2212-20251017115125

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 (898) hide show
  1. package/READMEOSS.html +20 -20
  2. package/components/index.js +4 -4
  3. package/components/index.js.map +1 -1
  4. package/components/ix-action-card.js +3 -3
  5. package/components/ix-action-card.js.map +1 -1
  6. package/components/ix-application-header.js +1 -1
  7. package/components/ix-application-switch-modal.js +6 -6
  8. package/components/ix-application.js +2 -2
  9. package/components/ix-avatar.js +1 -1
  10. package/components/ix-basic-navigation.js +7 -7
  11. package/components/ix-blind.js +1 -1
  12. package/components/ix-breadcrumb-item.js +1 -1
  13. package/components/ix-breadcrumb.js +10 -10
  14. package/components/ix-breadcrumb.js.map +1 -1
  15. package/components/ix-button.js +1 -1
  16. package/components/ix-card-list.js +4 -4
  17. package/components/ix-category-filter.js +22 -13
  18. package/components/ix-category-filter.js.map +1 -1
  19. package/components/ix-checkbox-group.js +4 -4
  20. package/components/ix-checkbox.js +1 -1
  21. package/components/ix-chip.js +15 -14
  22. package/components/ix-chip.js.map +1 -1
  23. package/components/ix-content-header.js +3 -3
  24. package/components/ix-custom-field.js +4 -4
  25. package/components/ix-date-dropdown.js +20 -20
  26. package/components/ix-date-dropdown.js.map +1 -1
  27. package/components/ix-date-input.js +14 -14
  28. package/components/ix-date-input.js.map +1 -1
  29. package/components/ix-date-picker.js +1 -1
  30. package/components/ix-date-time-card.js +1 -1
  31. package/components/ix-datetime-picker.js +34 -13
  32. package/components/ix-datetime-picker.js.map +1 -1
  33. package/components/ix-drawer.js +7 -8
  34. package/components/ix-drawer.js.map +1 -1
  35. package/components/ix-dropdown-button.js +4 -4
  36. package/components/ix-dropdown-header.js +1 -1
  37. package/components/ix-dropdown.js +1 -1
  38. package/components/ix-empty-state.js +3 -3
  39. package/components/ix-event-list.js +4 -4
  40. package/components/ix-event-list.js.map +1 -1
  41. package/components/ix-expanding-search.js +2 -2
  42. package/components/ix-field-label.js +1 -1
  43. package/components/ix-field-wrapper.js +1 -1
  44. package/components/ix-filter-chip.js +1 -1
  45. package/components/ix-flip-tile.js +2 -2
  46. package/components/ix-group-context-menu.js +1 -1
  47. package/components/ix-group-item.js +1 -1
  48. package/components/ix-group.js +24 -24
  49. package/components/ix-group.js.map +1 -1
  50. package/components/ix-helper-text.js +2 -2
  51. package/components/ix-icon-button.js +1 -1
  52. package/components/ix-icon-toggle-button.js +2 -2
  53. package/components/ix-input-group.d.ts +11 -0
  54. package/components/ix-input-group.js +154 -0
  55. package/components/ix-input-group.js.map +1 -0
  56. package/components/ix-input.js +11 -11
  57. package/components/ix-input.js.map +1 -1
  58. package/components/ix-key-value-list.js +1 -1
  59. package/components/ix-key-value.js +1 -1
  60. package/components/ix-kpi.js +3 -3
  61. package/components/ix-layout-auto.js +1 -1
  62. package/components/ix-layout-grid.js +1 -1
  63. package/components/ix-link-button.js +3 -3
  64. package/components/ix-map-navigation-overlay.js +1 -1
  65. package/components/ix-map-navigation.js +9 -10
  66. package/components/ix-map-navigation.js.map +1 -1
  67. package/components/ix-menu-about-item.js +1 -1
  68. package/components/ix-menu-about-news.js +8 -8
  69. package/components/ix-menu-about.js +3 -3
  70. package/components/ix-menu-avatar-item.js +1 -1
  71. package/components/ix-menu-avatar.js +11 -11
  72. package/components/ix-menu-avatar.js.map +1 -1
  73. package/components/ix-menu-category.js +9 -9
  74. package/components/ix-menu-expand-icon.js +1 -1
  75. package/components/ix-menu-item.js +1 -1
  76. package/components/ix-menu-settings-item.js +1 -1
  77. package/components/ix-menu-settings.js +1 -1
  78. package/components/ix-menu.js +26 -21
  79. package/components/ix-menu.js.map +1 -1
  80. package/components/ix-message-bar.js +11 -8
  81. package/components/ix-message-bar.js.map +1 -1
  82. package/components/ix-modal-content.js +1 -1
  83. package/components/ix-modal-footer.js +1 -1
  84. package/components/ix-modal-header.js +1 -1
  85. package/components/ix-modal-loading.js +2 -2
  86. package/components/ix-modal.js +17 -17
  87. package/components/ix-modal.js.map +1 -1
  88. package/components/ix-number-input.js +12 -12
  89. package/components/ix-pagination.js +15 -15
  90. package/components/ix-pagination.js.map +1 -1
  91. package/components/ix-pane-layout.js +1 -1
  92. package/components/ix-pane.js +4 -4
  93. package/components/ix-pill.js +3 -3
  94. package/components/ix-pill.js.map +1 -1
  95. package/components/ix-progress-indicator.js +2 -2
  96. package/components/ix-push-card.js +5 -5
  97. package/components/ix-push-card.js.map +1 -1
  98. package/components/ix-radio-group.js +4 -4
  99. package/components/ix-radio.js +1 -1
  100. package/components/ix-select.js +1 -1
  101. package/components/ix-slider.js +2 -2
  102. package/components/ix-spinner.js +1 -1
  103. package/components/ix-split-button.js +4 -4
  104. package/components/ix-textarea.js +6 -6
  105. package/components/ix-time-input.js +20 -13
  106. package/components/ix-time-input.js.map +1 -1
  107. package/components/ix-time-picker.js +1 -1
  108. package/components/ix-toast-container.js +9 -9
  109. package/components/ix-toast-container.js.map +1 -1
  110. package/components/ix-toast.js +1 -1
  111. package/components/ix-toggle-button.js +1 -1
  112. package/components/ix-toggle.js +5 -5
  113. package/components/ix-toggle.js.map +1 -1
  114. package/components/ix-tooltip.js +1 -1
  115. package/components/ix-tree-item.js +1 -1
  116. package/components/ix-tree.js +2 -2
  117. package/components/ix-typography.js +1 -1
  118. package/components/ix-upload.js +5 -5
  119. package/components/ix-validation-tooltip.d.ts +11 -0
  120. package/components/ix-validation-tooltip.js +184 -0
  121. package/components/ix-validation-tooltip.js.map +1 -0
  122. package/components/ix-workflow-step.js +5 -4
  123. package/components/ix-workflow-step.js.map +1 -1
  124. package/components/ix-workflow-steps.js +1 -1
  125. package/components/{p-DklPCkRW.js → p-8MS-omi7.js} +3 -3
  126. package/components/{p-DklPCkRW.js.map → p-8MS-omi7.js.map} +1 -1
  127. package/components/{p-7-Wnr7e5.js → p-BFuOBAQB.js} +12 -6
  128. package/components/p-BFuOBAQB.js.map +1 -0
  129. package/components/{p-Baga5bu5.js → p-BSiqAMAr.js} +6 -6
  130. package/components/{p-Baga5bu5.js.map → p-BSiqAMAr.js.map} +1 -1
  131. package/components/{p-DE74-VWH.js → p-BYRT3Z1w.js} +12 -11
  132. package/components/p-BYRT3Z1w.js.map +1 -0
  133. package/components/{p-ts3VxLYi.js → p-BYvKfy9G.js} +6 -6
  134. package/components/{p-ts3VxLYi.js.map → p-BYvKfy9G.js.map} +1 -1
  135. package/components/{p-DOGuJxKg.js → p-BnT1mAuX.js} +6 -6
  136. package/components/{p-DOGuJxKg.js.map → p-BnT1mAuX.js.map} +1 -1
  137. package/components/{p-C8wXJCK3.js → p-BrKwrb_Z.js} +4 -4
  138. package/components/{p-C8wXJCK3.js.map → p-BrKwrb_Z.js.map} +1 -1
  139. package/components/{p-C4MK63gz.js → p-BrgHqrnH.js} +3 -3
  140. package/components/{p-C4MK63gz.js.map → p-BrgHqrnH.js.map} +1 -1
  141. package/components/{p-DaR6pX8w.js → p-C-7UhkWz.js} +8 -8
  142. package/components/{p-DaR6pX8w.js.map → p-C-7UhkWz.js.map} +1 -1
  143. package/components/{p-D3ZlTDAF.js → p-C3irznVN.js} +3 -3
  144. package/components/{p-D3ZlTDAF.js.map → p-C3irznVN.js.map} +1 -1
  145. package/components/{p-CiSM2A9Q.js → p-CAqtPJ4-.js} +3 -102
  146. package/components/p-CAqtPJ4-.js.map +1 -0
  147. package/components/p-CFRrPFxi.js +103 -0
  148. package/components/p-CFRrPFxi.js.map +1 -0
  149. package/components/{p-BmLRwuMH.js → p-CGPMGyof.js} +6 -5
  150. package/components/p-CGPMGyof.js.map +1 -0
  151. package/components/{p-DlNAQJQO.js → p-CMNpJTDF.js} +3 -3
  152. package/components/{p-DlNAQJQO.js.map → p-CMNpJTDF.js.map} +1 -1
  153. package/components/{p-uiKHewyI.js → p-CMk-tLmg.js} +4 -4
  154. package/components/{p-uiKHewyI.js.map → p-CMk-tLmg.js.map} +1 -1
  155. package/components/{p-CCyj6Nhd.js → p-CO2zhw6V.js} +3 -3
  156. package/components/{p-CCyj6Nhd.js.map → p-CO2zhw6V.js.map} +1 -1
  157. package/components/{p-BruPthTZ.js → p-CbQqqTKK.js} +71 -17
  158. package/components/p-CbQqqTKK.js.map +1 -0
  159. package/components/{p-w319yPRv.js → p-Cl420PSP.js} +6 -6
  160. package/components/{p-w319yPRv.js.map → p-Cl420PSP.js.map} +1 -1
  161. package/components/{p-C9yPT68I.js → p-CsHYWHE6.js} +25 -37
  162. package/components/p-CsHYWHE6.js.map +1 -0
  163. package/components/p-Ctze1Bh6.js +64 -0
  164. package/components/p-Ctze1Bh6.js.map +1 -0
  165. package/components/{p-BU9xngEb.js → p-CyJWaxhg.js} +9 -9
  166. package/components/{p-BU9xngEb.js.map → p-CyJWaxhg.js.map} +1 -1
  167. package/components/{p-gkooEHol.js → p-CzzcLSmV.js} +4 -4
  168. package/components/p-CzzcLSmV.js.map +1 -0
  169. package/components/{p-Cx5H0GeI.js → p-D5QNBS-J.js} +18 -21
  170. package/components/p-D5QNBS-J.js.map +1 -0
  171. package/components/{p-bBkFZC8X.js → p-D99ntB9D.js} +4 -4
  172. package/components/{p-bBkFZC8X.js.map → p-D99ntB9D.js.map} +1 -1
  173. package/components/{p-BLcKiU45.js → p-DAWZ76L0.js} +4 -4
  174. package/components/{p-BLcKiU45.js.map → p-DAWZ76L0.js.map} +1 -1
  175. package/components/{p-Ba6JlSP8.js → p-DRlGkOeX.js} +5 -5
  176. package/components/{p-Ba6JlSP8.js.map → p-DRlGkOeX.js.map} +1 -1
  177. package/components/{p-DSF854K6.js → p-DZNnQyWO.js} +4 -3
  178. package/components/p-DZNnQyWO.js.map +1 -0
  179. package/components/{p-DLcItN6d.js → p-DmTyQW2E.js} +5 -5
  180. package/components/p-DmTyQW2E.js.map +1 -0
  181. package/components/{p-Bc15ecXv.js → p-DyW_A5Tq.js} +13 -13
  182. package/components/p-DyW_A5Tq.js.map +1 -0
  183. package/components/{p-4dm0FrTr.js → p-FnN74Elm.js} +4 -3
  184. package/components/p-FnN74Elm.js.map +1 -0
  185. package/components/{p-CfOUCcs9.js → p-GkRC08qs.js} +3 -3
  186. package/components/{p-CfOUCcs9.js.map → p-GkRC08qs.js.map} +1 -1
  187. package/components/p-fef9-zXA.js +56 -0
  188. package/components/{p-R9YNQy08.js.map → p-fef9-zXA.js.map} +1 -1
  189. package/components/{p-BNYHD56q.js → p-j4BMT-Rr.js} +25 -25
  190. package/components/p-j4BMT-Rr.js.map +1 -0
  191. package/components/{p-Fbu6eUjk.js → p-s3E9saxz.js} +5 -5
  192. package/components/{p-Fbu6eUjk.js.map → p-s3E9saxz.js.map} +1 -1
  193. package/components/p-taILGXkr.js.map +1 -1
  194. package/dist/cjs/find-element-D7yD1Ukn.js +106 -0
  195. package/dist/cjs/find-element-D7yD1Ukn.js.map +1 -0
  196. package/dist/cjs/{find-element-BNZJcvT8.js → floating-ui.dom-CMzYsRR7.js} +2 -103
  197. package/dist/cjs/floating-ui.dom-CMzYsRR7.js.map +1 -0
  198. package/dist/cjs/{index-BJkiBUu0.js → index-B7AMgiIZ.js} +3 -3
  199. package/dist/cjs/{index-BJkiBUu0.js.map → index-B7AMgiIZ.js.map} +1 -1
  200. package/dist/cjs/index-DuDLgBnw.js +8 -0
  201. package/dist/cjs/index-Dyz3z1FD.js.map +1 -1
  202. package/dist/cjs/index.cjs.js +3 -3
  203. package/dist/cjs/index.cjs.js.map +1 -1
  204. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  205. package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
  206. package/dist/cjs/ix-application-header.cjs.entry.js +3 -3
  207. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
  208. package/dist/cjs/ix-application.cjs.entry.js +2 -2
  209. package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
  210. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  211. package/dist/cjs/ix-basic-navigation.cjs.entry.js +1 -1
  212. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +7 -7
  213. package/dist/cjs/ix-breadcrumb-item.entry.cjs.js.map +1 -1
  214. package/dist/cjs/ix-breadcrumb.cjs.entry.js +6 -6
  215. package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
  216. package/dist/cjs/ix-category-filter.cjs.entry.js +16 -8
  217. package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
  218. package/dist/cjs/ix-chip.cjs.entry.js +10 -9
  219. package/dist/cjs/ix-chip.entry.cjs.js.map +1 -1
  220. package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
  221. package/dist/cjs/ix-col_4.cjs.entry.js +18 -18
  222. package/dist/cjs/ix-date-dropdown.cjs.entry.js +11 -11
  223. package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
  224. package/dist/cjs/ix-date-input.cjs.entry.js +4 -4
  225. package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
  226. package/dist/cjs/ix-date-time-card.cjs.entry.js +8 -3
  227. package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
  228. package/dist/cjs/ix-datetime-picker.cjs.entry.js +21 -3
  229. package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
  230. package/dist/cjs/ix-drawer.cjs.entry.js +5 -6
  231. package/dist/cjs/ix-drawer.entry.cjs.js.map +1 -1
  232. package/dist/cjs/ix-dropdown.cjs.entry.js +8 -7
  233. package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
  234. package/dist/cjs/ix-event-list.cjs.entry.js +4 -4
  235. package/dist/cjs/ix-event-list.entry.cjs.js.map +1 -1
  236. package/dist/cjs/ix-filter-chip.ix-select-item.entry.cjs.js.map +1 -1
  237. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +1 -1
  238. package/dist/cjs/ix-group-context-menu.ix-group-item.entry.cjs.js.map +1 -1
  239. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +5 -18
  240. package/dist/cjs/ix-group.cjs.entry.js +18 -18
  241. package/dist/cjs/ix-group.entry.cjs.js.map +1 -1
  242. package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
  243. package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
  244. package/dist/cjs/ix-icon-button_2.cjs.entry.js +2 -2
  245. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  246. package/dist/cjs/ix-input-group.cjs.entry.js +130 -0
  247. package/dist/cjs/ix-input-group.entry.cjs.js.map +1 -0
  248. package/dist/cjs/ix-input.cjs.entry.js +5 -5
  249. package/dist/cjs/ix-input.entry.cjs.js.map +1 -1
  250. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  251. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  252. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  253. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  254. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  255. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  256. package/dist/cjs/ix-map-navigation.cjs.entry.js +2 -3
  257. package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
  258. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  259. package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
  260. package/dist/cjs/ix-menu-avatar.cjs.entry.js +4 -4
  261. package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
  262. package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
  263. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  264. package/dist/cjs/ix-menu-item.cjs.entry.js +4 -4
  265. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  266. package/dist/cjs/ix-menu.cjs.entry.js +20 -16
  267. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  268. package/dist/cjs/ix-message-bar.cjs.entry.js +8 -5
  269. package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
  270. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  271. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  272. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  273. package/dist/cjs/ix-modal.cjs.entry.js +14 -14
  274. package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
  275. package/dist/cjs/ix-number-input.cjs.entry.js +6 -6
  276. package/dist/cjs/ix-pagination.cjs.entry.js +5 -5
  277. package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
  278. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  279. package/dist/cjs/ix-pane.cjs.entry.js +1 -1
  280. package/dist/cjs/ix-pill.cjs.entry.js +1 -1
  281. package/dist/cjs/ix-pill.entry.cjs.js.map +1 -1
  282. package/dist/cjs/ix-push-card.cjs.entry.js +3 -3
  283. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  284. package/dist/cjs/ix-select.cjs.entry.js +8 -11
  285. package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
  286. package/dist/cjs/ix-textarea.cjs.entry.js +2 -2
  287. package/dist/cjs/ix-time-input.cjs.entry.js +9 -3
  288. package/dist/cjs/ix-time-input.entry.cjs.js.map +1 -1
  289. package/dist/cjs/ix-time-picker.cjs.entry.js +58 -10
  290. package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
  291. package/dist/cjs/ix-toast-container.cjs.entry.js +5 -5
  292. package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
  293. package/dist/cjs/ix-toast.cjs.entry.js +6 -5
  294. package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
  295. package/dist/cjs/ix-toggle.cjs.entry.js +4 -4
  296. package/dist/cjs/ix-toggle.entry.cjs.js.map +1 -1
  297. package/dist/cjs/ix-tooltip.cjs.entry.js +10 -9
  298. package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
  299. package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
  300. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  301. package/dist/cjs/ix-typography.cjs.entry.js +1 -1
  302. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  303. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +155 -0
  304. package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +1 -0
  305. package/dist/cjs/ix-workflow-step.cjs.entry.js +5 -4
  306. package/dist/cjs/ix-workflow-step.entry.cjs.js.map +1 -1
  307. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  308. package/dist/cjs/loader.cjs.js +1 -1
  309. package/dist/cjs/{modal-BdSf3C6f.js → modal-CsEGB0kd.js} +4 -3
  310. package/dist/cjs/modal-CsEGB0kd.js.map +1 -0
  311. package/dist/cjs/{service-DuiJmf7R.js → service-FGbUpQQM.js} +4 -4
  312. package/dist/cjs/service-FGbUpQQM.js.map +1 -0
  313. package/dist/cjs/siemens-ix.cjs.js +1 -1
  314. package/dist/cjs/{theme-switcher-Do9dkNUv.js → theme-switcher-76Td30il.js} +25 -37
  315. package/dist/cjs/theme-switcher-76Td30il.js.map +1 -0
  316. package/dist/collection/collection-manifest.json +2 -0
  317. package/dist/collection/components/action-card/action-card.js +2 -2
  318. package/dist/collection/components/action-card/action-card.js.map +1 -1
  319. package/dist/collection/components/avatar/avatar.js +1 -1
  320. package/dist/collection/components/avatar/avatar.js.map +1 -1
  321. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -9
  322. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  323. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +16 -16
  324. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  325. package/dist/collection/components/category-filter/category-filter.js +43 -12
  326. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  327. package/dist/collection/components/chip/chip.css +1 -1
  328. package/dist/collection/components/chip/chip.js +13 -12
  329. package/dist/collection/components/chip/chip.js.map +1 -1
  330. package/dist/collection/components/date-dropdown/date-dropdown.js +19 -19
  331. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  332. package/dist/collection/components/date-input/date-input.js +5 -5
  333. package/dist/collection/components/date-input/date-input.js.map +1 -1
  334. package/dist/collection/components/date-picker/date-picker-component.js.map +1 -1
  335. package/dist/collection/components/date-picker/date-picker.js +31 -26
  336. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  337. package/dist/collection/components/date-time-card/date-time-card.js +30 -5
  338. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  339. package/dist/collection/components/datetime-picker/datetime-picker.js +94 -7
  340. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  341. package/dist/collection/components/drawer/drawer.js +5 -6
  342. package/dist/collection/components/drawer/drawer.js.map +1 -1
  343. package/dist/collection/components/event-list/event-list.js +6 -6
  344. package/dist/collection/components/event-list/event-list.js.map +1 -1
  345. package/dist/collection/components/filter-chip/filter-chip.css +1 -0
  346. package/dist/collection/components/group/group.css +0 -12
  347. package/dist/collection/components/group/group.js +23 -23
  348. package/dist/collection/components/group/group.js.map +1 -1
  349. package/dist/collection/components/group-item/group-item.css +6 -22
  350. package/dist/collection/components/group-item/group-item.js +8 -44
  351. package/dist/collection/components/group-item/group-item.js.map +1 -1
  352. package/dist/collection/components/helper-text/helper-text.js +1 -1
  353. package/dist/collection/components/icon-button/icon-button.js +2 -2
  354. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  355. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  356. package/dist/collection/components/input/input.js +5 -5
  357. package/dist/collection/components/input/input.js.map +1 -1
  358. package/dist/collection/components/input/number-input.js +6 -6
  359. package/dist/collection/components/input/textarea.js +2 -2
  360. package/dist/collection/components/input-group/input-group.css +115 -0
  361. package/dist/collection/components/input-group/input-group.js +152 -0
  362. package/dist/collection/components/input-group/input-group.js.map +1 -0
  363. package/dist/collection/components/key-value/key-value.js +1 -1
  364. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  365. package/dist/collection/components/kpi/kpi.js +3 -3
  366. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  367. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  368. package/dist/collection/components/link-button/link-button.js +3 -3
  369. package/dist/collection/components/map-navigation/map-navigation.js +2 -3
  370. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  371. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  372. package/dist/collection/components/menu/menu-expand-icon.js +1 -1
  373. package/dist/collection/components/menu/menu.js +36 -12
  374. package/dist/collection/components/menu/menu.js.map +1 -1
  375. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  376. package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
  377. package/dist/collection/components/menu-avatar/menu-avatar.js +7 -7
  378. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  379. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  380. package/dist/collection/components/menu-category/menu-category.js +5 -5
  381. package/dist/collection/components/menu-item/menu-item.js +4 -4
  382. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  383. package/dist/collection/components/message-bar/message-bar.js +18 -12
  384. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  385. package/dist/collection/components/modal/modal.css +1 -1
  386. package/dist/collection/components/modal/modal.js +29 -29
  387. package/dist/collection/components/modal/modal.js.map +1 -1
  388. package/dist/collection/components/modal-content/modal-content.js +1 -1
  389. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  390. package/dist/collection/components/modal-header/modal-header.js +1 -1
  391. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  392. package/dist/collection/components/pagination/pagination.js +9 -9
  393. package/dist/collection/components/pagination/pagination.js.map +1 -1
  394. package/dist/collection/components/pill/pill.css +1 -1
  395. package/dist/collection/components/push-card/push-card.js +7 -7
  396. package/dist/collection/components/push-card/push-card.js.map +1 -1
  397. package/dist/collection/components/select/select.js +8 -11
  398. package/dist/collection/components/select/select.js.map +1 -1
  399. package/dist/collection/components/spinner/spinner.css +5 -5
  400. package/dist/collection/components/time-input/time-input.js +32 -3
  401. package/dist/collection/components/time-input/time-input.js.map +1 -1
  402. package/dist/collection/components/time-picker/time-picker.js +199 -14
  403. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  404. package/dist/collection/components/toast/toast-container.js +5 -5
  405. package/dist/collection/components/toast/toast-container.js.map +1 -1
  406. package/dist/collection/components/toast/toast.js +9 -8
  407. package/dist/collection/components/toast/toast.js.map +1 -1
  408. package/dist/collection/components/toggle/toggle.css +227 -0
  409. package/dist/collection/components/toggle/toggle.js +3 -3
  410. package/dist/collection/components/tooltip/tooltip.js +1 -1
  411. package/dist/collection/components/tree/tree.js +1 -1
  412. package/dist/collection/components/tree-item/tree-item.js +4 -4
  413. package/dist/collection/components/typography/typography.js +1 -1
  414. package/dist/collection/components/upload/upload.js +3 -3
  415. package/dist/collection/components/utils/application-layout/service.js +2 -2
  416. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  417. package/dist/collection/components/utils/modal/loading.js +1 -1
  418. package/dist/collection/components/utils/modal/loading.js.map +1 -1
  419. package/dist/collection/components/utils/modal/message.js +2 -1
  420. package/dist/collection/components/utils/modal/message.js.map +1 -1
  421. package/dist/collection/components/utils/notification-color.js.map +1 -1
  422. package/dist/collection/components/utils/theme-switcher.js +23 -35
  423. package/dist/collection/components/utils/theme-switcher.js.map +1 -1
  424. package/dist/collection/components/validation-tooltip/validation-tooltip.css +225 -0
  425. package/dist/collection/components/validation-tooltip/validation-tooltip.js +250 -0
  426. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -0
  427. package/dist/collection/components/workflow-step/workflow-step.js +5 -4
  428. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  429. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  430. package/dist/collection/tests/utils/test/page.js +2 -2
  431. package/dist/collection/tests/utils/test/page.js.map +1 -1
  432. package/dist/esm/find-element-CFRrPFxi.js +103 -0
  433. package/dist/esm/find-element-CFRrPFxi.js.map +1 -0
  434. package/dist/esm/{find-element-CiSM2A9Q.js → floating-ui.dom-CAqtPJ4-.js} +3 -102
  435. package/dist/esm/floating-ui.dom-CAqtPJ4-.js.map +1 -0
  436. package/dist/esm/{index-D4tQ_iTq.js → index--ZIr3Aqz.js} +3 -3
  437. package/dist/esm/{index-D4tQ_iTq.js.map → index--ZIr3Aqz.js.map} +1 -1
  438. package/dist/esm/index-Cz75KU1f.js.map +1 -1
  439. package/dist/esm/index-DGODjp4O.js +8 -0
  440. package/dist/esm/index.js +4 -4
  441. package/dist/esm/index.js.map +1 -1
  442. package/dist/esm/ix-action-card.entry.js +2 -2
  443. package/dist/esm/ix-action-card.entry.js.map +1 -1
  444. package/dist/esm/ix-application-header.entry.js +3 -3
  445. package/dist/esm/ix-application-switch-modal.entry.js +1 -1
  446. package/dist/esm/ix-application.entry.js +2 -2
  447. package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
  448. package/dist/esm/ix-avatar_2.entry.js +1 -1
  449. package/dist/esm/ix-basic-navigation.entry.js +1 -1
  450. package/dist/esm/ix-breadcrumb-item.entry.js +7 -7
  451. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  452. package/dist/esm/ix-breadcrumb.entry.js +6 -6
  453. package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
  454. package/dist/esm/ix-category-filter.entry.js +16 -8
  455. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  456. package/dist/esm/ix-chip.entry.js +10 -9
  457. package/dist/esm/ix-chip.entry.js.map +1 -1
  458. package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
  459. package/dist/esm/ix-col_4.entry.js +18 -18
  460. package/dist/esm/ix-date-dropdown.entry.js +11 -11
  461. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  462. package/dist/esm/ix-date-input.entry.js +4 -4
  463. package/dist/esm/ix-date-input.entry.js.map +1 -1
  464. package/dist/esm/ix-date-time-card.entry.js +8 -3
  465. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  466. package/dist/esm/ix-datetime-picker.entry.js +21 -3
  467. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  468. package/dist/esm/ix-drawer.entry.js +5 -6
  469. package/dist/esm/ix-drawer.entry.js.map +1 -1
  470. package/dist/esm/ix-dropdown.entry.js +2 -1
  471. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  472. package/dist/esm/ix-event-list.entry.js +4 -4
  473. package/dist/esm/ix-event-list.entry.js.map +1 -1
  474. package/dist/esm/ix-filter-chip.ix-select-item.entry.js.map +1 -1
  475. package/dist/esm/ix-filter-chip_2.entry.js +1 -1
  476. package/dist/esm/ix-group-context-menu.ix-group-item.entry.js.map +1 -1
  477. package/dist/esm/ix-group-context-menu_2.entry.js +5 -18
  478. package/dist/esm/ix-group.entry.js +19 -19
  479. package/dist/esm/ix-group.entry.js.map +1 -1
  480. package/dist/esm/ix-helper-text.entry.js +1 -1
  481. package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
  482. package/dist/esm/ix-icon-button_2.entry.js +2 -2
  483. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  484. package/dist/esm/ix-input-group.entry.js +128 -0
  485. package/dist/esm/ix-input-group.entry.js.map +1 -0
  486. package/dist/esm/ix-input.entry.js +5 -5
  487. package/dist/esm/ix-input.entry.js.map +1 -1
  488. package/dist/esm/ix-key-value-list.entry.js +1 -1
  489. package/dist/esm/ix-key-value.entry.js +1 -1
  490. package/dist/esm/ix-kpi.entry.js +3 -3
  491. package/dist/esm/ix-layout-auto.entry.js +1 -1
  492. package/dist/esm/ix-link-button.entry.js +3 -3
  493. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  494. package/dist/esm/ix-map-navigation.entry.js +2 -3
  495. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  496. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  497. package/dist/esm/ix-menu-about-news.entry.js +4 -4
  498. package/dist/esm/ix-menu-avatar.entry.js +4 -4
  499. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  500. package/dist/esm/ix-menu-category.entry.js +5 -5
  501. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  502. package/dist/esm/ix-menu-item.entry.js +4 -4
  503. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  504. package/dist/esm/ix-menu.entry.js +20 -16
  505. package/dist/esm/ix-menu.entry.js.map +1 -1
  506. package/dist/esm/ix-message-bar.entry.js +8 -5
  507. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  508. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  509. package/dist/esm/ix-modal-footer.entry.js +1 -1
  510. package/dist/esm/ix-modal-loading.entry.js +1 -1
  511. package/dist/esm/ix-modal.entry.js +14 -14
  512. package/dist/esm/ix-modal.entry.js.map +1 -1
  513. package/dist/esm/ix-number-input.entry.js +6 -6
  514. package/dist/esm/ix-pagination.entry.js +5 -5
  515. package/dist/esm/ix-pagination.entry.js.map +1 -1
  516. package/dist/esm/ix-pane-layout.entry.js +1 -1
  517. package/dist/esm/ix-pane.entry.js +1 -1
  518. package/dist/esm/ix-pill.entry.js +1 -1
  519. package/dist/esm/ix-pill.entry.js.map +1 -1
  520. package/dist/esm/ix-push-card.entry.js +3 -3
  521. package/dist/esm/ix-push-card.entry.js.map +1 -1
  522. package/dist/esm/ix-select.entry.js +8 -11
  523. package/dist/esm/ix-select.entry.js.map +1 -1
  524. package/dist/esm/ix-textarea.entry.js +2 -2
  525. package/dist/esm/ix-time-input.entry.js +9 -3
  526. package/dist/esm/ix-time-input.entry.js.map +1 -1
  527. package/dist/esm/ix-time-picker.entry.js +58 -10
  528. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  529. package/dist/esm/ix-toast-container.entry.js +5 -5
  530. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  531. package/dist/esm/ix-toast.entry.js +6 -5
  532. package/dist/esm/ix-toast.entry.js.map +1 -1
  533. package/dist/esm/ix-toggle.entry.js +4 -4
  534. package/dist/esm/ix-toggle.entry.js.map +1 -1
  535. package/dist/esm/ix-tooltip.entry.js +3 -2
  536. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  537. package/dist/esm/ix-tree-item.entry.js +4 -4
  538. package/dist/esm/ix-tree.entry.js +1 -1
  539. package/dist/esm/ix-typography.entry.js +1 -1
  540. package/dist/esm/ix-upload.entry.js +3 -3
  541. package/dist/esm/ix-validation-tooltip.entry.js +153 -0
  542. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -0
  543. package/dist/esm/ix-workflow-step.entry.js +5 -4
  544. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  545. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  546. package/dist/esm/loader.js +1 -1
  547. package/dist/esm/{modal-BQcyFJfE.js → modal-D9BaTrTa.js} +4 -3
  548. package/dist/esm/modal-D9BaTrTa.js.map +1 -0
  549. package/dist/esm/{service-Da0kv8hS.js → service-ktcE7NzB.js} +4 -4
  550. package/dist/esm/service-ktcE7NzB.js.map +1 -0
  551. package/dist/esm/siemens-ix.js +1 -1
  552. package/dist/esm/{theme-switcher-Bg6wsOIn.js → theme-switcher-DRqJGlG2.js} +25 -37
  553. package/dist/esm/theme-switcher-DRqJGlG2.js.map +1 -0
  554. package/dist/siemens-ix/index.esm.js +1 -1
  555. package/dist/siemens-ix/index.esm.js.map +1 -1
  556. package/dist/siemens-ix/ix-action-card.entry.esm.js.map +1 -1
  557. package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
  558. package/dist/siemens-ix/ix-breadcrumb-item.entry.esm.js.map +1 -1
  559. package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
  560. package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
  561. package/dist/siemens-ix/ix-chip.entry.esm.js.map +1 -1
  562. package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
  563. package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
  564. package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
  565. package/dist/siemens-ix/ix-date-time-card.entry.esm.js.map +1 -1
  566. package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
  567. package/dist/siemens-ix/ix-drawer.entry.esm.js.map +1 -1
  568. package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
  569. package/dist/siemens-ix/ix-event-list.entry.esm.js.map +1 -1
  570. package/dist/siemens-ix/ix-filter-chip.ix-select-item.entry.esm.js.map +1 -1
  571. package/dist/siemens-ix/ix-group-context-menu.ix-group-item.entry.esm.js.map +1 -1
  572. package/dist/siemens-ix/ix-group.entry.esm.js.map +1 -1
  573. package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
  574. package/dist/siemens-ix/ix-input-group.entry.esm.js.map +1 -0
  575. package/dist/siemens-ix/ix-input.entry.esm.js.map +1 -1
  576. package/dist/siemens-ix/ix-map-navigation.entry.esm.js.map +1 -1
  577. package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
  578. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  579. package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
  580. package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
  581. package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
  582. package/dist/siemens-ix/ix-pill.entry.esm.js.map +1 -1
  583. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  584. package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
  585. package/dist/siemens-ix/ix-time-input.entry.esm.js.map +1 -1
  586. package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
  587. package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
  588. package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
  589. package/dist/siemens-ix/ix-toggle.entry.esm.js.map +1 -1
  590. package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
  591. package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +1 -0
  592. package/dist/siemens-ix/ix-workflow-step.entry.esm.js.map +1 -1
  593. package/dist/siemens-ix/{p-639d0d7f.entry.js → p-02621eb8.entry.js} +2 -2
  594. package/dist/siemens-ix/p-02621eb8.entry.js.map +1 -0
  595. package/dist/siemens-ix/{p-bf2374a0.entry.js → p-0469aec7.entry.js} +2 -2
  596. package/dist/siemens-ix/{p-800f59a7.entry.js → p-09cce59e.entry.js} +2 -2
  597. package/dist/siemens-ix/p-09cce59e.entry.js.map +1 -0
  598. package/dist/siemens-ix/{p-f14790b4.entry.js → p-14fca48a.entry.js} +2 -2
  599. package/dist/siemens-ix/{p-111687a2.entry.js → p-19c2cb50.entry.js} +2 -2
  600. package/dist/siemens-ix/{p-111687a2.entry.js.map → p-19c2cb50.entry.js.map} +1 -1
  601. package/dist/siemens-ix/{p-c31b2027.entry.js → p-1ca58d8b.entry.js} +2 -2
  602. package/dist/siemens-ix/p-1d0ae43f.entry.js +2 -0
  603. package/dist/siemens-ix/p-1d0ae43f.entry.js.map +1 -0
  604. package/dist/siemens-ix/p-1fa5a3e4.entry.js +2 -0
  605. package/dist/siemens-ix/p-1fa5a3e4.entry.js.map +1 -0
  606. package/dist/siemens-ix/{p-1ac88556.entry.js → p-223c9d79.entry.js} +2 -2
  607. package/dist/siemens-ix/{p-1ac88556.entry.js.map → p-223c9d79.entry.js.map} +1 -1
  608. package/dist/siemens-ix/p-27f1d6c9.entry.js +2 -0
  609. package/dist/siemens-ix/p-27f1d6c9.entry.js.map +1 -0
  610. package/dist/siemens-ix/p-2d01c802.entry.js +2 -0
  611. package/dist/siemens-ix/p-2d01c802.entry.js.map +1 -0
  612. package/dist/siemens-ix/p-2d3f7bb5.entry.js +2 -0
  613. package/dist/siemens-ix/p-2d3f7bb5.entry.js.map +1 -0
  614. package/dist/siemens-ix/p-2d9b7dbd.entry.js +2 -0
  615. package/dist/siemens-ix/p-2d9b7dbd.entry.js.map +1 -0
  616. package/dist/siemens-ix/p-30545ef9.entry.js +2 -0
  617. package/dist/siemens-ix/{p-13fb0104.entry.js → p-3522b3af.entry.js} +2 -2
  618. package/dist/siemens-ix/{p-13fb0104.entry.js.map → p-3522b3af.entry.js.map} +1 -1
  619. package/dist/siemens-ix/{p-6645d4ee.entry.js → p-404dffde.entry.js} +2 -2
  620. package/dist/siemens-ix/{p-3f06687e.entry.js → p-42a70164.entry.js} +2 -2
  621. package/dist/siemens-ix/p-42a70164.entry.js.map +1 -0
  622. package/dist/siemens-ix/{p-2041357d.entry.js → p-48b0fef4.entry.js} +2 -2
  623. package/dist/siemens-ix/{p-ae2e5e0c.entry.js → p-4b88c430.entry.js} +2 -2
  624. package/dist/siemens-ix/{p-ae2e5e0c.entry.js.map → p-4b88c430.entry.js.map} +1 -1
  625. package/dist/siemens-ix/{p-91fa3ab0.entry.js → p-5140e6e6.entry.js} +2 -2
  626. package/dist/siemens-ix/{p-28fe8512.entry.js → p-52dc3ba0.entry.js} +2 -2
  627. package/dist/siemens-ix/{p-fbd0973d.entry.js → p-53e82da9.entry.js} +2 -2
  628. package/dist/siemens-ix/p-53e82da9.entry.js.map +1 -0
  629. package/dist/siemens-ix/p-53e9e280.entry.js +2 -0
  630. package/dist/siemens-ix/p-53e9e280.entry.js.map +1 -0
  631. package/dist/siemens-ix/p-5bed04ac.entry.js +2 -0
  632. package/dist/siemens-ix/p-5bed04ac.entry.js.map +1 -0
  633. package/dist/siemens-ix/{p-c248940f.entry.js → p-5c109476.entry.js} +2 -2
  634. package/dist/siemens-ix/p-5f72640f.entry.js +2 -0
  635. package/dist/siemens-ix/p-5f72640f.entry.js.map +1 -0
  636. package/dist/siemens-ix/{p-e3a219e3.entry.js → p-6a39d630.entry.js} +2 -2
  637. package/dist/siemens-ix/p-6c873cc5.entry.js +2 -0
  638. package/dist/siemens-ix/p-6d8e725c.entry.js +2 -0
  639. package/dist/siemens-ix/p-6d8e725c.entry.js.map +1 -0
  640. package/dist/siemens-ix/{p-e201fa04.entry.js → p-71550396.entry.js} +2 -2
  641. package/dist/siemens-ix/{p-e201fa04.entry.js.map → p-71550396.entry.js.map} +1 -1
  642. package/dist/siemens-ix/{p-32203c19.entry.js → p-71e94914.entry.js} +2 -2
  643. package/dist/siemens-ix/p-71e94914.entry.js.map +1 -0
  644. package/dist/siemens-ix/p-740420eb.entry.js +2 -0
  645. package/dist/siemens-ix/p-740420eb.entry.js.map +1 -0
  646. package/dist/siemens-ix/{p-c6ecc2e3.entry.js → p-746b04cb.entry.js} +2 -2
  647. package/dist/siemens-ix/p-78ddd5f5.entry.js +2 -0
  648. package/dist/siemens-ix/p-78ddd5f5.entry.js.map +1 -0
  649. package/dist/siemens-ix/{p-75edf091.entry.js → p-7989235e.entry.js} +2 -2
  650. package/dist/siemens-ix/p-7989235e.entry.js.map +1 -0
  651. package/dist/siemens-ix/{p-9dbfd7cd.entry.js → p-7a108b0d.entry.js} +2 -2
  652. package/dist/siemens-ix/{p-1cd4280f.entry.js → p-7d95ae34.entry.js} +2 -2
  653. package/dist/siemens-ix/{p-75f4bbb1.entry.js → p-81c8d542.entry.js} +2 -2
  654. package/dist/siemens-ix/{p-d7c7d38b.entry.js → p-8dcc6456.entry.js} +2 -2
  655. package/dist/siemens-ix/{p-d1254b5b.entry.js → p-8e48a7a1.entry.js} +2 -2
  656. package/dist/siemens-ix/{p-c413e3c4.entry.js → p-8eee6a03.entry.js} +2 -2
  657. package/dist/siemens-ix/p-90089ce1.entry.js +2 -0
  658. package/dist/siemens-ix/{p-0ba7d263.entry.js → p-90bd8d7b.entry.js} +2 -2
  659. package/dist/siemens-ix/{p-1bd1380b.entry.js → p-95d4d849.entry.js} +2 -2
  660. package/dist/siemens-ix/{p-a7cb47ca.entry.js → p-9638c57b.entry.js} +2 -2
  661. package/dist/siemens-ix/p-9638c57b.entry.js.map +1 -0
  662. package/dist/siemens-ix/p-96a20067.entry.js +2 -0
  663. package/dist/siemens-ix/{p-2355f27d.entry.js.map → p-96a20067.entry.js.map} +1 -1
  664. package/dist/siemens-ix/{p-38f9b6e2.entry.js → p-99ad8022.entry.js} +2 -2
  665. package/dist/siemens-ix/p-99ad8022.entry.js.map +1 -0
  666. package/dist/siemens-ix/p-9bd4c682.entry.js +2 -0
  667. package/dist/siemens-ix/{p-b895b3db.entry.js → p-9d7a2428.entry.js} +2 -2
  668. package/dist/siemens-ix/p-9d7a2428.entry.js.map +1 -0
  669. package/dist/siemens-ix/p-CAqtPJ4-.js +2 -0
  670. package/dist/siemens-ix/p-CAqtPJ4-.js.map +1 -0
  671. package/dist/siemens-ix/p-CFRrPFxi.js +2 -0
  672. package/dist/siemens-ix/p-CFRrPFxi.js.map +1 -0
  673. package/dist/siemens-ix/p-CpVbQsUI.js +2 -0
  674. package/dist/siemens-ix/p-CpVbQsUI.js.map +1 -0
  675. package/dist/siemens-ix/p-CsHYWHE6.js +2 -0
  676. package/dist/siemens-ix/p-CsHYWHE6.js.map +1 -0
  677. package/dist/siemens-ix/p-Cz75KU1f.js.map +1 -1
  678. package/dist/siemens-ix/{p-gkooEHol.js → p-CzzcLSmV.js} +2 -2
  679. package/dist/siemens-ix/p-CzzcLSmV.js.map +1 -0
  680. package/dist/siemens-ix/{p-CNToWy_R.js → p-DRnSC9aV.js} +2 -2
  681. package/dist/siemens-ix/{p-CNToWy_R.js.map → p-DRnSC9aV.js.map} +1 -1
  682. package/dist/siemens-ix/p-b11b63ca.entry.js +2 -0
  683. package/dist/siemens-ix/p-b11b63ca.entry.js.map +1 -0
  684. package/dist/siemens-ix/p-b59285eb.entry.js +2 -0
  685. package/dist/siemens-ix/{p-d9766334.entry.js.map → p-b59285eb.entry.js.map} +1 -1
  686. package/dist/siemens-ix/{p-c949686e.entry.js → p-b6d9c16c.entry.js} +2 -2
  687. package/dist/siemens-ix/{p-c949686e.entry.js.map → p-b6d9c16c.entry.js.map} +1 -1
  688. package/dist/siemens-ix/{p-d0213ff0.entry.js → p-b6dad40c.entry.js} +2 -2
  689. package/dist/siemens-ix/{p-331f1b60.entry.js → p-bb28a2d6.entry.js} +2 -2
  690. package/dist/siemens-ix/{p-e55cd52b.entry.js → p-bd369344.entry.js} +2 -2
  691. package/dist/siemens-ix/{p-db02f4c2.entry.js → p-c446ffdb.entry.js} +2 -2
  692. package/dist/siemens-ix/{p-96533ffc.entry.js → p-c8cf26c5.entry.js} +2 -2
  693. package/dist/siemens-ix/p-c8cf26c5.entry.js.map +1 -0
  694. package/dist/siemens-ix/{p-bb878ea4.entry.js → p-cd11dfa8.entry.js} +2 -2
  695. package/dist/siemens-ix/p-d0d972c2.entry.js +2 -0
  696. package/dist/siemens-ix/{p-5f7943f2.entry.js.map → p-d0d972c2.entry.js.map} +1 -1
  697. package/dist/siemens-ix/{p-a67bc456.entry.js → p-dc5b5c0c.entry.js} +2 -2
  698. package/dist/siemens-ix/p-ddaf98b6.entry.js +2 -0
  699. package/dist/siemens-ix/p-ddaf98b6.entry.js.map +1 -0
  700. package/dist/siemens-ix/{p-7060645f.entry.js → p-eba51393.entry.js} +2 -2
  701. package/dist/siemens-ix/p-ec8f67b0.entry.js +2 -0
  702. package/dist/siemens-ix/p-ec8f67b0.entry.js.map +1 -0
  703. package/dist/siemens-ix/{p-d585e581.entry.js → p-f112fabd.entry.js} +2 -2
  704. package/dist/siemens-ix/{p-d585e581.entry.js.map → p-f112fabd.entry.js.map} +1 -1
  705. package/dist/siemens-ix/{p-9272ae83.entry.js → p-f29eaee8.entry.js} +2 -2
  706. package/dist/siemens-ix/p-f55eef69.entry.js +2 -0
  707. package/dist/siemens-ix/p-f55eef69.entry.js.map +1 -0
  708. package/dist/siemens-ix/{p-9b88a932.entry.js → p-f6d678a6.entry.js} +2 -2
  709. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  710. package/dist/siemens-ix/siemens-ix.css +2312 -2248
  711. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  712. package/dist/siemens-ix/theme/classic-dark.css +1 -1
  713. package/dist/siemens-ix/theme/classic-light.css +1 -1
  714. package/dist/types/components/avatar/avatar.d.ts +1 -1
  715. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -1
  716. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +3 -3
  717. package/dist/types/components/category-filter/category-filter.d.ts +9 -3
  718. package/dist/types/components/chip/chip.d.ts +2 -2
  719. package/dist/types/components/date-dropdown/date-dropdown.d.ts +6 -6
  720. package/dist/types/components/date-input/date-input.d.ts +4 -0
  721. package/dist/types/components/date-picker/date-picker-component.d.ts +1 -1
  722. package/dist/types/components/date-picker/date-picker.d.ts +5 -7
  723. package/dist/types/components/date-time-card/date-time-card.d.ts +5 -1
  724. package/dist/types/components/datetime-picker/datetime-picker.d.ts +20 -2
  725. package/dist/types/components/event-list/event-list.d.ts +1 -1
  726. package/dist/types/components/group/group.d.ts +4 -4
  727. package/dist/types/components/group-item/group-item.d.ts +2 -9
  728. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  729. package/dist/types/components/input-group/input-group.d.ts +24 -0
  730. package/dist/types/components/menu/menu.d.ts +4 -0
  731. package/dist/types/components/menu-avatar/menu-avatar.d.ts +1 -1
  732. package/dist/types/components/message-bar/message-bar.d.ts +4 -3
  733. package/dist/types/components/modal/modal.d.ts +9 -9
  734. package/dist/types/components/pagination/pagination.d.ts +2 -2
  735. package/dist/types/components/push-card/push-card.d.ts +2 -2
  736. package/dist/types/components/time-input/time-input.d.ts +6 -0
  737. package/dist/types/components/time-picker/time-picker.d.ts +40 -2
  738. package/dist/types/components/toast/toast.d.ts +1 -1
  739. package/dist/types/components/utils/notification-color.d.ts +1 -1
  740. package/dist/types/components/utils/theme-switcher.d.ts +4 -11
  741. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +45 -0
  742. package/dist/types/components.d.ts +421 -197
  743. package/hydrate/index.js +714 -328
  744. package/hydrate/index.mjs +714 -328
  745. package/package.json +3 -3
  746. package/scss/_core.scss +1 -0
  747. package/scss/components/_input-group.scss +32 -0
  748. package/scss/theme/classic/dark/_variables.scss +185 -185
  749. package/scss/theme/classic/light/_variables.scss +185 -185
  750. package/scss/theme/core/_common.scss +123 -123
  751. package/scss/theme/core/components/action-card.scss +65 -65
  752. package/scss/theme/core/components/app-header.scss +3 -3
  753. package/scss/theme/core/components/avatar.scss +5 -5
  754. package/scss/theme/core/components/blind.scss +16 -16
  755. package/scss/theme/core/components/button.scss +124 -124
  756. package/scss/theme/core/components/card.scss +61 -61
  757. package/scss/theme/core/components/checkbox.scss +61 -61
  758. package/scss/theme/core/components/chip.scss +21 -21
  759. package/scss/theme/core/components/datepicker.scss +54 -54
  760. package/scss/theme/core/components/event-list.scss +14 -14
  761. package/scss/theme/core/components/flip.scss +23 -23
  762. package/scss/theme/core/components/ghost.scss +1 -1
  763. package/scss/theme/core/components/group.scss +16 -16
  764. package/scss/theme/core/components/input-helper.scss +2 -2
  765. package/scss/theme/core/components/input.scss +28 -28
  766. package/scss/theme/core/components/kpi.scss +5 -5
  767. package/scss/theme/core/components/label.scss +2 -2
  768. package/scss/theme/core/components/link.scss +6 -6
  769. package/scss/theme/core/components/map-navigation.scss +2 -2
  770. package/scss/theme/core/components/menu.scss +19 -19
  771. package/scss/theme/core/components/message-bar.scss +3 -3
  772. package/scss/theme/core/components/modal-dialog.scss +1 -1
  773. package/scss/theme/core/components/navigation.scss +11 -11
  774. package/scss/theme/core/components/pagination.scss +6 -6
  775. package/scss/theme/core/components/pane.scss +5 -5
  776. package/scss/theme/core/components/pill.scss +1 -1
  777. package/scss/theme/core/components/progress-indicator.scss +22 -22
  778. package/scss/theme/core/components/push-card.scss +124 -124
  779. package/scss/theme/core/components/radiobutton.scss +44 -44
  780. package/scss/theme/core/components/scrollbar.scss +3 -3
  781. package/scss/theme/core/components/select-list.scss +11 -11
  782. package/scss/theme/core/components/slider.scss +12 -12
  783. package/scss/theme/core/components/switch.scss +145 -109
  784. package/scss/theme/core/components/tab.scss +33 -33
  785. package/scss/theme/core/components/table.scss +30 -30
  786. package/scss/theme/core/components/tile.scss +1 -1
  787. package/scss/theme/core/components/toast.scss +5 -5
  788. package/scss/theme/core/components/tooltip.scss +2 -2
  789. package/scss/theme/core/components/tree.scss +7 -7
  790. package/scss/theme/core/components/upload.scss +4 -4
  791. package/scss/theme/core/components/workflow.scss +7 -7
  792. package/components/p-4dm0FrTr.js.map +0 -1
  793. package/components/p-7-Wnr7e5.js.map +0 -1
  794. package/components/p-BNYHD56q.js.map +0 -1
  795. package/components/p-Bc15ecXv.js.map +0 -1
  796. package/components/p-BmLRwuMH.js.map +0 -1
  797. package/components/p-BruPthTZ.js.map +0 -1
  798. package/components/p-C9yPT68I.js.map +0 -1
  799. package/components/p-CiSM2A9Q.js.map +0 -1
  800. package/components/p-Cx5H0GeI.js.map +0 -1
  801. package/components/p-DE74-VWH.js.map +0 -1
  802. package/components/p-DLcItN6d.js.map +0 -1
  803. package/components/p-DSF854K6.js.map +0 -1
  804. package/components/p-DVPJHakC.js +0 -78
  805. package/components/p-DVPJHakC.js.map +0 -1
  806. package/components/p-R9YNQy08.js +0 -56
  807. package/components/p-gkooEHol.js.map +0 -1
  808. package/dist/cjs/find-element-BNZJcvT8.js.map +0 -1
  809. package/dist/cjs/modal-BdSf3C6f.js.map +0 -1
  810. package/dist/cjs/service-DuiJmf7R.js.map +0 -1
  811. package/dist/cjs/theme-switcher-Do9dkNUv.js.map +0 -1
  812. package/dist/esm/find-element-CiSM2A9Q.js.map +0 -1
  813. package/dist/esm/modal-BQcyFJfE.js.map +0 -1
  814. package/dist/esm/service-Da0kv8hS.js.map +0 -1
  815. package/dist/esm/theme-switcher-Bg6wsOIn.js.map +0 -1
  816. package/dist/siemens-ix/p-21106fcd.entry.js +0 -2
  817. package/dist/siemens-ix/p-21106fcd.entry.js.map +0 -1
  818. package/dist/siemens-ix/p-2355f27d.entry.js +0 -2
  819. package/dist/siemens-ix/p-2b046df5.entry.js +0 -2
  820. package/dist/siemens-ix/p-2b046df5.entry.js.map +0 -1
  821. package/dist/siemens-ix/p-32200cc4.entry.js +0 -2
  822. package/dist/siemens-ix/p-32200cc4.entry.js.map +0 -1
  823. package/dist/siemens-ix/p-32203c19.entry.js.map +0 -1
  824. package/dist/siemens-ix/p-38f9b6e2.entry.js.map +0 -1
  825. package/dist/siemens-ix/p-3f06687e.entry.js.map +0 -1
  826. package/dist/siemens-ix/p-566a58f4.entry.js +0 -2
  827. package/dist/siemens-ix/p-566a58f4.entry.js.map +0 -1
  828. package/dist/siemens-ix/p-5d48f9cb.entry.js +0 -2
  829. package/dist/siemens-ix/p-5d48f9cb.entry.js.map +0 -1
  830. package/dist/siemens-ix/p-5f7943f2.entry.js +0 -2
  831. package/dist/siemens-ix/p-639d0d7f.entry.js.map +0 -1
  832. package/dist/siemens-ix/p-670d5b84.entry.js +0 -2
  833. package/dist/siemens-ix/p-670d5b84.entry.js.map +0 -1
  834. package/dist/siemens-ix/p-71a38f35.entry.js +0 -2
  835. package/dist/siemens-ix/p-75edf091.entry.js.map +0 -1
  836. package/dist/siemens-ix/p-78797f4b.entry.js +0 -2
  837. package/dist/siemens-ix/p-78797f4b.entry.js.map +0 -1
  838. package/dist/siemens-ix/p-800f59a7.entry.js.map +0 -1
  839. package/dist/siemens-ix/p-86ac2254.entry.js +0 -2
  840. package/dist/siemens-ix/p-86ac2254.entry.js.map +0 -1
  841. package/dist/siemens-ix/p-8bd3f89a.entry.js +0 -2
  842. package/dist/siemens-ix/p-8bd3f89a.entry.js.map +0 -1
  843. package/dist/siemens-ix/p-96533ffc.entry.js.map +0 -1
  844. package/dist/siemens-ix/p-98ab64dc.entry.js +0 -2
  845. package/dist/siemens-ix/p-98ab64dc.entry.js.map +0 -1
  846. package/dist/siemens-ix/p-9a8188a7.entry.js +0 -2
  847. package/dist/siemens-ix/p-9a8188a7.entry.js.map +0 -1
  848. package/dist/siemens-ix/p-C9yPT68I.js +0 -2
  849. package/dist/siemens-ix/p-C9yPT68I.js.map +0 -1
  850. package/dist/siemens-ix/p-CiSM2A9Q.js +0 -2
  851. package/dist/siemens-ix/p-CiSM2A9Q.js.map +0 -1
  852. package/dist/siemens-ix/p-DxCNpXRB.js +0 -2
  853. package/dist/siemens-ix/p-DxCNpXRB.js.map +0 -1
  854. package/dist/siemens-ix/p-a6612a5b.entry.js +0 -2
  855. package/dist/siemens-ix/p-a7cb47ca.entry.js.map +0 -1
  856. package/dist/siemens-ix/p-ac1f35ad.entry.js +0 -2
  857. package/dist/siemens-ix/p-ac1f35ad.entry.js.map +0 -1
  858. package/dist/siemens-ix/p-b895b3db.entry.js.map +0 -1
  859. package/dist/siemens-ix/p-bc7fc8b2.entry.js +0 -2
  860. package/dist/siemens-ix/p-bc7fc8b2.entry.js.map +0 -1
  861. package/dist/siemens-ix/p-c10b2e40.entry.js +0 -2
  862. package/dist/siemens-ix/p-d9766334.entry.js +0 -2
  863. package/dist/siemens-ix/p-ea435816.entry.js +0 -2
  864. package/dist/siemens-ix/p-ea435816.entry.js.map +0 -1
  865. package/dist/siemens-ix/p-fbd0973d.entry.js.map +0 -1
  866. package/dist/siemens-ix/p-fbedad11.entry.js +0 -2
  867. package/dist/siemens-ix/p-gkooEHol.js.map +0 -1
  868. /package/dist/siemens-ix/{p-bf2374a0.entry.js.map → p-0469aec7.entry.js.map} +0 -0
  869. /package/dist/siemens-ix/{p-f14790b4.entry.js.map → p-14fca48a.entry.js.map} +0 -0
  870. /package/dist/siemens-ix/{p-c31b2027.entry.js.map → p-1ca58d8b.entry.js.map} +0 -0
  871. /package/dist/siemens-ix/{p-c10b2e40.entry.js.map → p-30545ef9.entry.js.map} +0 -0
  872. /package/dist/siemens-ix/{p-6645d4ee.entry.js.map → p-404dffde.entry.js.map} +0 -0
  873. /package/dist/siemens-ix/{p-2041357d.entry.js.map → p-48b0fef4.entry.js.map} +0 -0
  874. /package/dist/siemens-ix/{p-91fa3ab0.entry.js.map → p-5140e6e6.entry.js.map} +0 -0
  875. /package/dist/siemens-ix/{p-28fe8512.entry.js.map → p-52dc3ba0.entry.js.map} +0 -0
  876. /package/dist/siemens-ix/{p-c248940f.entry.js.map → p-5c109476.entry.js.map} +0 -0
  877. /package/dist/siemens-ix/{p-e3a219e3.entry.js.map → p-6a39d630.entry.js.map} +0 -0
  878. /package/dist/siemens-ix/{p-71a38f35.entry.js.map → p-6c873cc5.entry.js.map} +0 -0
  879. /package/dist/siemens-ix/{p-c6ecc2e3.entry.js.map → p-746b04cb.entry.js.map} +0 -0
  880. /package/dist/siemens-ix/{p-9dbfd7cd.entry.js.map → p-7a108b0d.entry.js.map} +0 -0
  881. /package/dist/siemens-ix/{p-1cd4280f.entry.js.map → p-7d95ae34.entry.js.map} +0 -0
  882. /package/dist/siemens-ix/{p-75f4bbb1.entry.js.map → p-81c8d542.entry.js.map} +0 -0
  883. /package/dist/siemens-ix/{p-d7c7d38b.entry.js.map → p-8dcc6456.entry.js.map} +0 -0
  884. /package/dist/siemens-ix/{p-d1254b5b.entry.js.map → p-8e48a7a1.entry.js.map} +0 -0
  885. /package/dist/siemens-ix/{p-c413e3c4.entry.js.map → p-8eee6a03.entry.js.map} +0 -0
  886. /package/dist/siemens-ix/{p-fbedad11.entry.js.map → p-90089ce1.entry.js.map} +0 -0
  887. /package/dist/siemens-ix/{p-0ba7d263.entry.js.map → p-90bd8d7b.entry.js.map} +0 -0
  888. /package/dist/siemens-ix/{p-1bd1380b.entry.js.map → p-95d4d849.entry.js.map} +0 -0
  889. /package/dist/siemens-ix/{p-a6612a5b.entry.js.map → p-9bd4c682.entry.js.map} +0 -0
  890. /package/dist/siemens-ix/{p-d0213ff0.entry.js.map → p-b6dad40c.entry.js.map} +0 -0
  891. /package/dist/siemens-ix/{p-331f1b60.entry.js.map → p-bb28a2d6.entry.js.map} +0 -0
  892. /package/dist/siemens-ix/{p-e55cd52b.entry.js.map → p-bd369344.entry.js.map} +0 -0
  893. /package/dist/siemens-ix/{p-db02f4c2.entry.js.map → p-c446ffdb.entry.js.map} +0 -0
  894. /package/dist/siemens-ix/{p-bb878ea4.entry.js.map → p-cd11dfa8.entry.js.map} +0 -0
  895. /package/dist/siemens-ix/{p-a67bc456.entry.js.map → p-dc5b5c0c.entry.js.map} +0 -0
  896. /package/dist/siemens-ix/{p-7060645f.entry.js.map → p-eba51393.entry.js.map} +0 -0
  897. /package/dist/siemens-ix/{p-9272ae83.entry.js.map → p-f29eaee8.entry.js.map} +0 -0
  898. /package/dist/siemens-ix/{p-9b88a932.entry.js.map → p-f6d678a6.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/components/utils/application-layout/service.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Breakpoint, matchBreakpoint } from '../breakpoints';\nimport { debounce } from '../debounce';\nimport { TypedEvent } from '../typed-event';\n\nclass ApplicationLayoutService {\n // Keep order of breakpoints\n #supportedBreakpoints: Breakpoint[] = ['sm', 'md', 'lg'];\n #breakpointChangeListener = new TypedEvent<Breakpoint>();\n #breakpoint: Breakpoint = 'lg';\n\n #isDetectionEnabled = true;\n debouncedOnResize = debounce(this.onResize.bind(this), 50);\n\n constructor() {\n if (typeof window !== 'undefined') {\n window.addEventListener('resize', this.debouncedOnResize.bind(this));\n this.debouncedOnResize();\n }\n }\n\n get breakpoint() {\n return this.#breakpoint;\n }\n\n get onChange() {\n return this.#breakpointChangeListener;\n }\n\n get isDetectionEnabled() {\n return this.#isDetectionEnabled;\n }\n\n private onResize() {\n if (!this.#isDetectionEnabled) {\n return;\n }\n if (!this.#supportedBreakpoints) {\n return;\n }\n const matchBreakpoints: [Breakpoint, boolean][] = [];\n\n const breakpoints = this.#supportedBreakpoints;\n\n breakpoints.forEach((breakpoint) => {\n const match = matchBreakpoint(breakpoint);\n matchBreakpoints.push([breakpoint, match]);\n });\n\n if (matchBreakpoints.every(([, match]) => match === false)) {\n let breakPointIndex = 0;\n if (!this.#supportedBreakpoints.includes('lg')) {\n breakPointIndex = matchBreakpoints.length - 1;\n }\n\n const [breakpoint] = matchBreakpoints[breakPointIndex];\n requestAnimationFrame(() =>\n this.#breakpointChangeListener.emit(breakpoint)\n );\n this.#breakpoint = breakpoint;\n return;\n }\n\n for (const [breakpoint, match] of matchBreakpoints.reverse()) {\n if (match) {\n requestAnimationFrame(() =>\n this.#breakpointChangeListener.emit(breakpoint)\n );\n this.#breakpoint = breakpoint;\n break;\n }\n }\n }\n\n public disableBreakpointDetection() {\n this.#isDetectionEnabled = false;\n }\n\n public enableBreakpointDetection() {\n this.#isDetectionEnabled = true;\n }\n\n public setBreakpoint(breakpoint: Breakpoint) {\n this.#breakpoint = breakpoint;\n this.#breakpointChangeListener.emit(breakpoint);\n }\n\n public setBreakpoints(breakpoints: Breakpoint[]) {\n this.#supportedBreakpoints = breakpoints;\n this.onResize();\n }\n}\n\nexport const applicationLayoutService = new ApplicationLayoutService();\n"]}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/components/utils/application-layout/service.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Breakpoint, matchBreakpoint } from '../breakpoints';\nimport { debounce } from '../debounce';\nimport { TypedEvent } from '../typed-event';\n\nclass ApplicationLayoutService {\n // Keep order of breakpoints\n #supportedBreakpoints: Breakpoint[] = ['sm', 'md', 'lg'];\n #breakpointChangeListener = new TypedEvent<Breakpoint>();\n #breakpoint: Breakpoint = 'lg';\n\n #isDetectionEnabled = true;\n debouncedOnResize = debounce(this.onResize.bind(this), 50);\n\n constructor() {\n if (typeof window !== 'undefined') {\n window.addEventListener('resize', this.debouncedOnResize.bind(this));\n this.debouncedOnResize();\n }\n }\n\n get breakpoint() {\n return this.#breakpoint;\n }\n\n get onChange() {\n return this.#breakpointChangeListener;\n }\n\n get isDetectionEnabled() {\n return this.#isDetectionEnabled;\n }\n\n private onResize() {\n if (!this.#isDetectionEnabled) {\n return;\n }\n if (!this.#supportedBreakpoints) {\n return;\n }\n const matchBreakpoints: [Breakpoint, boolean][] = [];\n\n const breakpoints = this.#supportedBreakpoints;\n\n breakpoints.forEach((breakpoint) => {\n const match = matchBreakpoint(breakpoint);\n matchBreakpoints.push([breakpoint, match]);\n });\n\n if (matchBreakpoints.every(([_, match]) => match === false)) {\n let breakPointIndex = 0;\n if (!this.#supportedBreakpoints.includes('lg')) {\n breakPointIndex = matchBreakpoints.length - 1;\n }\n\n const [breakpoint, _] = matchBreakpoints[breakPointIndex];\n requestAnimationFrame(() =>\n this.#breakpointChangeListener.emit(breakpoint)\n );\n this.#breakpoint = breakpoint;\n return;\n }\n\n for (const [breakpoint, match] of matchBreakpoints.reverse()) {\n if (match) {\n requestAnimationFrame(() =>\n this.#breakpointChangeListener.emit(breakpoint)\n );\n this.#breakpoint = breakpoint;\n break;\n }\n }\n }\n\n public disableBreakpointDetection() {\n this.#isDetectionEnabled = false;\n }\n\n public enableBreakpointDetection() {\n this.#isDetectionEnabled = true;\n }\n\n public setBreakpoint(breakpoint: Breakpoint) {\n this.#breakpoint = breakpoint;\n this.#breakpointChangeListener.emit(breakpoint);\n }\n\n public setBreakpoints(breakpoints: Breakpoint[]) {\n this.#supportedBreakpoints = breakpoints;\n this.onResize();\n }\n}\n\nexport const applicationLayoutService = new ApplicationLayoutService();\n"]}
@@ -10,7 +10,7 @@ import Animation from "../animation";
10
10
  import { getCoreDelegate } from "../delegate";
11
11
  export function showModalLoading(message) {
12
12
  const modal = document.createElement('ix-modal');
13
- modal.disableEscapeClose = true;
13
+ modal.closeOnEscape = false;
14
14
  const loading = document.createElement('ix-modal-loading');
15
15
  loading.innerText = message;
16
16
  modal.appendChild(loading);
@@ -1 +1 @@
1
- {"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../src/components/utils/modal/loading.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACjD,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAEhC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC3D,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC;IAC5B,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAE3B,eAAe,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,KAAK,CAAC,SAAS,EAAE,CAAC;IAElB,OAAO;QACL,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QACpD,MAAM,EAAE,CAAC,IAAa,EAAE,UAAkB,GAAG,EAAE,EAAE;YAC/C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,CAAC,CAAC;YACd,CAAC;YACD,UAAU,CAAC,GAAG,EAAE;gBACd,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACvB,UAAU,CACR,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EACrD,SAAS,CAAC,UAAU,CACrB,CAAC;YACJ,CAAC,EAAE,OAAO,CAAC,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport Animation from '../animation';\nimport { getCoreDelegate } from '../delegate';\n\nexport function showModalLoading(message: string) {\n const modal = document.createElement('ix-modal');\n modal.disableEscapeClose = true;\n\n const loading = document.createElement('ix-modal-loading');\n loading.innerText = message;\n modal.appendChild(loading);\n\n getCoreDelegate().attachView(modal);\n modal.showModal();\n\n return {\n update: (text: string) => (loading.innerHTML = text),\n finish: (text?: string, timeout: number = 250) => {\n if (text !== undefined) {\n loading.innerText = text;\n } else {\n timeout = 0;\n }\n setTimeout(() => {\n modal.closeModal(null);\n setTimeout(\n async () => await getCoreDelegate().removeView(modal),\n Animation.mediumTime\n );\n }, timeout);\n },\n };\n}\n"]}
1
+ {"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../src/components/utils/modal/loading.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACjD,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;IAE5B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC3D,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC;IAC5B,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAE3B,eAAe,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,KAAK,CAAC,SAAS,EAAE,CAAC;IAElB,OAAO;QACL,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QACpD,MAAM,EAAE,CAAC,IAAa,EAAE,UAAkB,GAAG,EAAE,EAAE;YAC/C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,CAAC,CAAC;YACd,CAAC;YACD,UAAU,CAAC,GAAG,EAAE;gBACd,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACvB,UAAU,CACR,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EACrD,SAAS,CAAC,UAAU,CACrB,CAAC;YACJ,CAAC,EAAE,OAAO,CAAC,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport Animation from '../animation';\nimport { getCoreDelegate } from '../delegate';\n\nexport function showModalLoading(message: string) {\n const modal = document.createElement('ix-modal');\n modal.closeOnEscape = false;\n\n const loading = document.createElement('ix-modal-loading');\n loading.innerText = message;\n modal.appendChild(loading);\n\n getCoreDelegate().attachView(modal);\n modal.showModal();\n\n return {\n update: (text: string) => (loading.innerHTML = text),\n finish: (text?: string, timeout: number = 250) => {\n if (text !== undefined) {\n loading.innerText = text;\n } else {\n timeout = 0;\n }\n setTimeout(() => {\n modal.closeModal(null);\n setTimeout(\n async () => await getCoreDelegate().removeView(modal),\n Animation.mediumTime\n );\n }, timeout);\n },\n };\n}\n"]}
@@ -107,7 +107,8 @@ showMessage.warning = (title, message, textOkay, textCancel, payloadOkay, payloa
107
107
  message,
108
108
  messageTitle: title,
109
109
  icon: iconWarning,
110
- iconColor: 'color-warning',
110
+ //TODO(IX-3400): Remove warning-text when proper CSS variable is available
111
+ iconColor: 'color-warning-text',
111
112
  actions: createConfirmButtons(textOkay, textCancel, payloadOkay, payloadCancel),
112
113
  });
113
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../src/components/utils/modal/message.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n iconError,\n iconInfo,\n iconQuestion,\n iconSuccess,\n iconWarning,\n} from '@siemens/ix-icons/icons';\nimport { getCoreDelegate } from '../delegate';\nimport { TypedEvent } from '../typed-event';\nimport { ModalConfig } from './modal';\n\nexport type MessageConfig<T> = Omit<\n ModalConfig<T, unknown>,\n 'content' | 'title'\n> &\n MessageContent;\n\nfunction setA11yAttributes(element: HTMLElement, config: MessageContent) {\n const ariaDescribedby = config.ariaDescribedby;\n const ariaLabelledby = config.ariaLabelledby;\n\n delete config['ariaDescribedby'];\n delete config['ariaLabelledby'];\n\n if (ariaDescribedby) {\n element.setAttribute('aria-describedby', ariaDescribedby);\n }\n\n if (ariaLabelledby) {\n element.setAttribute('aria-labelledby', ariaLabelledby);\n }\n}\n\nfunction createConfirmButtons(\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) {\n let actions: MessageAction[] = [];\n\n if (textCancel !== undefined) {\n actions = [\n ...actions,\n {\n id: 'cancel',\n text: textCancel,\n type: 'cancel',\n payload: payloadCancel,\n } as MessageAction,\n ];\n }\n return [\n ...actions,\n {\n id: 'okay',\n text: textOkay,\n type: 'okay',\n payload: payloadOkay,\n } as MessageAction,\n ];\n}\n\nexport type MessageAction = {\n id: string;\n type: 'button-primary' | 'button-secondary' | 'okay' | 'cancel';\n text: string;\n payload?: any;\n};\n\nexport type MessageContent = {\n icon: string;\n iconColor?: string;\n messageTitle: string;\n message: string;\n actions: MessageAction[];\n ariaLabelledby?: string;\n ariaDescribedby?: string;\n};\n\nexport async function showMessage<T>(config: MessageConfig<T>) {\n const onMessageAction = new TypedEvent<{\n actionId: string;\n payload: T;\n }>();\n const dialog = document.createElement('ix-modal');\n const header = document.createElement('ix-modal-header');\n const content = document.createElement('ix-modal-content');\n const footer = document.createElement('ix-modal-footer');\n\n setA11yAttributes(dialog, config);\n\n Object.assign(header, config);\n Object.assign(content, config);\n Object.assign(footer, config);\n\n header.innerText = config.messageTitle;\n content.innerText = config.message;\n\n config.actions.forEach(({ id, text, type, payload }) => {\n const button = document.createElement('ix-button');\n button.innerText = text;\n footer.appendChild(button);\n\n if (type === 'okay') {\n button.variant = 'primary';\n button.addEventListener('click', () =>\n dialog.closeModal({\n actionId: id,\n payload,\n })\n );\n return;\n } else if (type === 'cancel') {\n button.variant = 'secondary';\n button.addEventListener('click', () =>\n dialog.dismissModal({\n actionId: id,\n payload,\n })\n );\n return;\n }\n });\n\n dialog.appendChild(header);\n dialog.appendChild(content);\n dialog.appendChild(footer);\n\n const dialogRef =\n await getCoreDelegate().attachView<HTMLIxModalElement>(dialog);\n\n dialogRef.addEventListener(\n 'dialogClose',\n (\n event: CustomEvent<{\n actionId: string;\n payload: T;\n }>\n ) => {\n onMessageAction.emit(event.detail);\n dialogRef.remove();\n }\n );\n\n dialogRef.addEventListener(\n 'dialogDismiss',\n (\n event: CustomEvent<{\n actionId: string;\n payload: T;\n }>\n ) => {\n onMessageAction.emit(event.detail);\n dialogRef.remove();\n }\n );\n\n setA11yAttributes(dialogRef, config);\n Object.assign(dialogRef, config);\n\n dialogRef.showModal();\n return onMessageAction;\n}\n\nshowMessage.info = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconInfo,\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.warning = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconWarning,\n iconColor: 'color-warning',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.error = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconError,\n iconColor: 'color-alarm',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.success = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconSuccess,\n iconColor: 'color-success',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.question = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconQuestion,\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n"]}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../src/components/utils/modal/message.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n iconError,\n iconInfo,\n iconQuestion,\n iconSuccess,\n iconWarning,\n} from '@siemens/ix-icons/icons';\nimport { getCoreDelegate } from '../delegate';\nimport { TypedEvent } from '../typed-event';\nimport { ModalConfig } from './modal';\n\nexport type MessageConfig<T> = Omit<\n ModalConfig<T, unknown>,\n 'content' | 'title'\n> &\n MessageContent;\n\nfunction setA11yAttributes(element: HTMLElement, config: MessageContent) {\n const ariaDescribedby = config.ariaDescribedby;\n const ariaLabelledby = config.ariaLabelledby;\n\n delete config['ariaDescribedby'];\n delete config['ariaLabelledby'];\n\n if (ariaDescribedby) {\n element.setAttribute('aria-describedby', ariaDescribedby);\n }\n\n if (ariaLabelledby) {\n element.setAttribute('aria-labelledby', ariaLabelledby);\n }\n}\n\nfunction createConfirmButtons(\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) {\n let actions: MessageAction[] = [];\n\n if (textCancel !== undefined) {\n actions = [\n ...actions,\n {\n id: 'cancel',\n text: textCancel,\n type: 'cancel',\n payload: payloadCancel,\n } as MessageAction,\n ];\n }\n return [\n ...actions,\n {\n id: 'okay',\n text: textOkay,\n type: 'okay',\n payload: payloadOkay,\n } as MessageAction,\n ];\n}\n\nexport type MessageAction = {\n id: string;\n type: 'button-primary' | 'button-secondary' | 'okay' | 'cancel';\n text: string;\n payload?: any;\n};\n\nexport type MessageContent = {\n icon: string;\n iconColor?: string;\n messageTitle: string;\n message: string;\n actions: MessageAction[];\n ariaLabelledby?: string;\n ariaDescribedby?: string;\n};\n\nexport async function showMessage<T>(config: MessageConfig<T>) {\n const onMessageAction = new TypedEvent<{\n actionId: string;\n payload: T;\n }>();\n const dialog = document.createElement('ix-modal');\n const header = document.createElement('ix-modal-header');\n const content = document.createElement('ix-modal-content');\n const footer = document.createElement('ix-modal-footer');\n\n setA11yAttributes(dialog, config);\n\n Object.assign(header, config);\n Object.assign(content, config);\n Object.assign(footer, config);\n\n header.innerText = config.messageTitle;\n content.innerText = config.message;\n\n config.actions.forEach(({ id, text, type, payload }) => {\n const button = document.createElement('ix-button');\n button.innerText = text;\n footer.appendChild(button);\n\n if (type === 'okay') {\n button.variant = 'primary';\n button.addEventListener('click', () =>\n dialog.closeModal({\n actionId: id,\n payload,\n })\n );\n return;\n } else if (type === 'cancel') {\n button.variant = 'secondary';\n button.addEventListener('click', () =>\n dialog.dismissModal({\n actionId: id,\n payload,\n })\n );\n return;\n }\n });\n\n dialog.appendChild(header);\n dialog.appendChild(content);\n dialog.appendChild(footer);\n\n const dialogRef =\n await getCoreDelegate().attachView<HTMLIxModalElement>(dialog);\n\n dialogRef.addEventListener(\n 'dialogClose',\n (\n event: CustomEvent<{\n actionId: string;\n payload: T;\n }>\n ) => {\n onMessageAction.emit(event.detail);\n dialogRef.remove();\n }\n );\n\n dialogRef.addEventListener(\n 'dialogDismiss',\n (\n event: CustomEvent<{\n actionId: string;\n payload: T;\n }>\n ) => {\n onMessageAction.emit(event.detail);\n dialogRef.remove();\n }\n );\n\n setA11yAttributes(dialogRef, config);\n Object.assign(dialogRef, config);\n\n dialogRef.showModal();\n return onMessageAction;\n}\n\nshowMessage.info = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconInfo,\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.warning = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconWarning,\n //TODO(IX-3400): Remove warning-text when proper CSS variable is available\n iconColor: 'color-warning-text',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.error = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconError,\n iconColor: 'color-alarm',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.success = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconSuccess,\n iconColor: 'color-success',\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n\nshowMessage.question = (\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n) => {\n return showMessage({\n message,\n messageTitle: title,\n icon: iconQuestion,\n actions: createConfirmButtons(\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n ),\n });\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"notification-color.js","sourceRoot":"","sources":["../../../src/components/utils/notification-color.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Icon colors representing common notification states (e.g. alarm, info).\n */\nexport type NotificationColor =\n | 'color-std-text'\n | 'color-info'\n | 'color-critical'\n | 'color-warning'\n | 'color-success'\n | 'color-alarm'\n | 'color-neutral'\n | 'color-primary';\n"]}
1
+ {"version":3,"file":"notification-color.js","sourceRoot":"","sources":["../../../src/components/utils/notification-color.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Icon colors representing common notification states (e.g. alarm, info).\n */\nexport type NotificationColor =\n | 'color-std-text'\n | 'color-info'\n | 'color-critical'\n | 'color-warning'\n //TODO(IX-3400): Remove warning-text when proper CSS variable is available\n | 'color-warning-text'\n | 'color-success'\n | 'color-alarm'\n | 'color-neutral'\n | 'color-primary';\n"]}
@@ -23,53 +23,46 @@ class ThemeSwitcher {
23
23
  isThemeClass(className) {
24
24
  return (className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className));
25
25
  }
26
- setTheme(themeName, systemAppearance = false,
27
- /**
28
- * @deprecated In v4 setTheme will always target the document.
29
- * TODO: IX-3024
30
- */
31
- target = document.body) {
26
+ setTheme(themeName, systemAppearance = false) {
32
27
  if (this.isThemeClass(themeName)) {
33
- this.replaceBodyThemeClass(themeName);
28
+ this.replaceThemeClass(themeName);
34
29
  }
35
30
  else {
36
- target.setAttribute(dataIxTheme, themeName);
31
+ document.documentElement.setAttribute(dataIxTheme, themeName);
37
32
  }
38
33
  if (systemAppearance) {
39
34
  const currentSystemAppearance = getCurrentSystemAppearance();
40
35
  this.setVariant(currentSystemAppearance);
41
36
  }
42
37
  }
43
- replaceBodyThemeClass(themeName) {
38
+ replaceThemeClass(themeName) {
44
39
  const oldThemes = [];
45
- Array.from(document.body.classList)
40
+ Array.from(document.documentElement.classList)
46
41
  .filter((className) => className && this.isThemeClass(className))
47
42
  .forEach((className) => {
48
43
  oldThemes.push(className);
49
44
  });
50
- document.body.classList.remove(...oldThemes);
51
- document.body.classList.add(themeName);
45
+ document.documentElement.classList.remove(...oldThemes);
46
+ document.documentElement.classList.add(themeName);
52
47
  }
53
48
  toggleMode() {
54
- const elements = [document.body, document.documentElement];
55
- const elementWithSchema = elements.find((el) => this.getDataColorSchema(el));
56
- if (elementWithSchema) {
57
- const currentSchema = this.getDataColorSchema(elementWithSchema);
58
- elementWithSchema.setAttribute(dataIxColorSchema, currentSchema === 'dark' ? 'light' : 'dark');
49
+ if (document.documentElement.hasAttribute(dataIxColorSchema)) {
50
+ const currentSchema = this.getDataColorSchema(document.documentElement);
51
+ document.documentElement.setAttribute(dataIxColorSchema, currentSchema === 'dark' ? 'light' : 'dark');
59
52
  return;
60
53
  }
61
54
  const oldThemes = [];
62
- Array.from(document.body.classList)
55
+ Array.from(document.documentElement.classList)
63
56
  .filter((className) => className && this.isThemeClass(className))
64
57
  .forEach((className) => {
65
58
  oldThemes.push(className);
66
59
  });
67
60
  if (oldThemes.length === 0) {
68
- document.body.classList.add(this.getOppositeMode(this.defaultTheme));
61
+ document.documentElement.classList.add(this.getOppositeMode(this.defaultTheme));
69
62
  return;
70
63
  }
71
64
  oldThemes.forEach((themeName) => {
72
- document.body.classList.replace(themeName, this.getOppositeMode(themeName));
65
+ document.documentElement.classList.replace(themeName, this.getOppositeMode(themeName));
73
66
  });
74
67
  }
75
68
  getDataColorSchema(target) {
@@ -77,26 +70,23 @@ class ThemeSwitcher {
77
70
  }
78
71
  getCurrentTheme() {
79
72
  var _a;
80
- return ((_a = Array.from(document.body.classList).find((className) => this.isThemeClass(className))) !== null && _a !== void 0 ? _a : `theme-${document.body.getAttribute(dataIxTheme) ||
81
- document.documentElement.getAttribute(dataIxTheme) ||
82
- 'classic'}-${document.body.getAttribute(dataIxColorSchema) ||
83
- document.documentElement.getAttribute(dataIxColorSchema) ||
73
+ return ((_a = Array.from(document.documentElement.classList).find((className) => this.isThemeClass(className))) !== null && _a !== void 0 ? _a : `theme-${document.documentElement.getAttribute(dataIxTheme) || 'classic'}-${document.documentElement.getAttribute(dataIxColorSchema) ||
84
74
  getCurrentSystemAppearance()}`);
85
75
  }
86
- setVariant(variant = getCurrentSystemAppearance(), target = document.body) {
87
- if (this.getDataColorSchema(target)) {
88
- target.setAttribute(dataIxColorSchema, variant);
76
+ setVariant(variant = getCurrentSystemAppearance()) {
77
+ if (this.getDataColorSchema(document.documentElement)) {
78
+ document.documentElement.setAttribute(dataIxColorSchema, variant);
89
79
  return;
90
80
  }
91
81
  const currentTheme = this.getCurrentTheme();
92
- document.body.classList.remove(currentTheme);
82
+ document.documentElement.classList.remove(currentTheme);
93
83
  if (currentTheme.endsWith(this.suffixDark)) {
94
- document.body.classList.add(currentTheme.replace(/-dark$/g, `-${variant}`));
84
+ document.documentElement.classList.add(currentTheme.replace(/-dark$/g, `-${variant}`));
95
85
  }
96
86
  if (currentTheme.endsWith(this.suffixLight)) {
97
- document.body.classList.add(currentTheme.replace(/-light$/g, `-${variant}`));
87
+ document.documentElement.classList.add(currentTheme.replace(/-light$/g, `-${variant}`));
98
88
  }
99
- target.setAttribute(dataIxColorSchema, variant);
89
+ document.documentElement.setAttribute(dataIxColorSchema, variant);
100
90
  }
101
91
  getOppositeMode(themeName) {
102
92
  if (themeName.endsWith(this.suffixDark)) {
@@ -155,10 +145,8 @@ class ThemeSwitcher {
155
145
  this.handleClassMutations(classMutations);
156
146
  this.handleDataMutations(dataMutations);
157
147
  };
158
- this.mutationObserverDocumentElement = new MutationObserver(handleMutations);
159
- this.mutationObserverDocumentElement.observe(document.documentElement, mutationObserverConfig);
160
- this.mutationObserverBody = new MutationObserver(handleMutations);
161
- this.mutationObserverBody.observe(document.body, mutationObserverConfig);
148
+ this.mutationObserver = new MutationObserver(handleMutations);
149
+ this.mutationObserver.observe(document.documentElement, mutationObserverConfig);
162
150
  }
163
151
  constructor() {
164
152
  this.prefixTheme = 'theme-';
@@ -1 +1 @@
1
- {"version":3,"file":"theme-switcher.js","sourceRoot":"","sources":["../../../src/components/utils/theme-switcher.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { type LiteralStringUnion } from './type-helper';\nimport { TypedEvent } from './typed-event';\n\nexport type ThemeVariant = 'light' | 'dark';\n\nconst dataIxTheme = 'data-ix-theme';\nconst dataIxColorSchema = 'data-ix-color-schema';\n\nclass ThemeSwitcher {\n readonly prefixTheme = 'theme-';\n readonly suffixLight = '-light';\n readonly suffixDark = '-dark';\n readonly defaultTheme = 'theme-classic-dark';\n\n mutationObserverDocumentElement?: MutationObserver;\n mutationObserverBody?: MutationObserver;\n mutationObserverData?: MutationObserver;\n _themeChanged = new TypedEvent<string>();\n _schemaChanged = new TypedEvent<string>();\n\n public get themeChanged() {\n return this._themeChanged;\n }\n\n public get schemaChanged() {\n return this._schemaChanged;\n }\n\n public hasVariantSuffix(className: string) {\n return (\n className.endsWith(this.suffixDark) ||\n className.endsWith(this.suffixLight)\n );\n }\n\n private isThemeClass(className: string) {\n return (\n className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className)\n );\n }\n\n public setTheme(\n themeName: string,\n systemAppearance = false,\n /**\n * @deprecated In v4 setTheme will always target the document.\n * TODO: IX-3024\n */\n target = document.body\n ) {\n if (this.isThemeClass(themeName)) {\n this.replaceBodyThemeClass(themeName);\n } else {\n target.setAttribute(dataIxTheme, themeName);\n }\n\n if (systemAppearance) {\n const currentSystemAppearance = getCurrentSystemAppearance();\n this.setVariant(currentSystemAppearance);\n }\n }\n\n private replaceBodyThemeClass(themeName: string) {\n const oldThemes: string[] = [];\n Array.from(document.body.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n document.body.classList.remove(...oldThemes);\n document.body.classList.add(themeName);\n }\n\n public toggleMode() {\n const elements = [document.body, document.documentElement];\n const elementWithSchema = elements.find((el) =>\n this.getDataColorSchema(el)\n );\n if (elementWithSchema) {\n const currentSchema = this.getDataColorSchema(elementWithSchema)!;\n elementWithSchema.setAttribute(\n dataIxColorSchema,\n currentSchema === 'dark' ? 'light' : 'dark'\n );\n return;\n }\n\n const oldThemes: string[] = [];\n Array.from(document.body.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n if (oldThemes.length === 0) {\n document.body.classList.add(this.getOppositeMode(this.defaultTheme));\n return;\n }\n\n oldThemes.forEach((themeName) => {\n document.body.classList.replace(\n themeName,\n this.getOppositeMode(themeName)\n );\n });\n }\n\n private getDataColorSchema(target: HTMLElement) {\n return target.getAttribute(dataIxColorSchema);\n }\n\n public getCurrentTheme() {\n return (\n Array.from(document.body.classList).find((className) =>\n this.isThemeClass(className)\n ) ??\n `theme-${\n document.body.getAttribute(dataIxTheme) ||\n document.documentElement.getAttribute(dataIxTheme) ||\n 'classic'\n }-${\n document.body.getAttribute(dataIxColorSchema) ||\n document.documentElement.getAttribute(dataIxColorSchema) ||\n getCurrentSystemAppearance()\n }`\n );\n }\n\n public setVariant(\n variant: ThemeVariant = getCurrentSystemAppearance(),\n target = document.body\n ) {\n if (this.getDataColorSchema(target)) {\n target.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n const currentTheme = this.getCurrentTheme();\n document.body.classList.remove(currentTheme);\n\n if (currentTheme.endsWith(this.suffixDark)) {\n document.body.classList.add(\n currentTheme.replace(/-dark$/g, `-${variant}`)\n );\n }\n\n if (currentTheme.endsWith(this.suffixLight)) {\n document.body.classList.add(\n currentTheme.replace(/-light$/g, `-${variant}`)\n );\n }\n\n target.setAttribute(dataIxColorSchema, variant);\n }\n\n private getOppositeMode(themeName: string) {\n if (themeName.endsWith(this.suffixDark)) {\n return themeName.replace(/-dark$/g, this.suffixLight);\n }\n\n if (themeName.endsWith(this.suffixLight)) {\n return themeName.replace(/-light$/g, this.suffixDark);\n }\n\n return '';\n }\n\n private splitMutations(mutations: MutationRecord[]) {\n const classMutations = mutations.filter(\n (mutation) => mutation.attributeName === 'class'\n );\n\n const dataMutations = mutations.filter(\n (mutation) =>\n mutation.attributeName === dataIxTheme ||\n mutation.attributeName === dataIxColorSchema\n );\n\n return { classMutations, dataMutations };\n }\n\n private handleClassMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n (target as HTMLElement).classList.forEach((className) => {\n if (\n this.isThemeClass(className) &&\n !mutation.oldValue?.includes(className)\n ) {\n this._themeChanged.emit(className);\n }\n });\n });\n }\n\n private handleDataMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n const theme = (target as Element).attributes.getNamedItem(dataIxTheme);\n if (theme?.value && mutation.oldValue !== theme.value) {\n this._themeChanged.emit(theme.value);\n }\n\n const colorSchema = (target as Element).attributes.getNamedItem(\n dataIxColorSchema\n );\n if (colorSchema?.value && mutation.oldValue !== colorSchema.value) {\n this._schemaChanged.emit(colorSchema.value);\n }\n });\n }\n\n private registerMutationObservers() {\n if (typeof (window as any) === 'undefined') {\n return;\n }\n\n if (!('MutationObserver' in window)) {\n console.warn(\n 'ThemeSwitcher not supported by your browser. Missing MutationObserver API'\n );\n return;\n }\n\n const mutationObserverConfig = {\n attributeFilter: ['class', dataIxTheme, dataIxColorSchema],\n attributeOldValue: true,\n };\n\n const handleMutations = (mutations: MutationRecord[]) => {\n const { classMutations, dataMutations } = this.splitMutations(mutations);\n\n this.handleClassMutations(classMutations);\n this.handleDataMutations(dataMutations);\n };\n\n this.mutationObserverDocumentElement = new MutationObserver(\n handleMutations\n );\n this.mutationObserverDocumentElement.observe(\n document.documentElement,\n mutationObserverConfig\n );\n\n this.mutationObserverBody = new MutationObserver(handleMutations);\n this.mutationObserverBody.observe(document.body, mutationObserverConfig);\n }\n\n public constructor() {\n this.registerMutationObservers();\n }\n}\n\nexport type IxTheme = LiteralStringUnion<\n 'classic' | 'classic-dark' | 'classic-light'\n>;\n\nexport const getCurrentSystemAppearance = (): ThemeVariant => {\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)');\n\n if (matchMedia.matches) {\n return 'dark';\n }\n\n return 'light';\n};\n\nexport const themeSwitcher = new ThemeSwitcher();\n"]}
1
+ {"version":3,"file":"theme-switcher.js","sourceRoot":"","sources":["../../../src/components/utils/theme-switcher.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { type LiteralStringUnion } from './type-helper';\nimport { TypedEvent } from './typed-event';\n\nexport type ThemeVariant = 'light' | 'dark';\n\nconst dataIxTheme = 'data-ix-theme';\nconst dataIxColorSchema = 'data-ix-color-schema';\n\nclass ThemeSwitcher {\n readonly prefixTheme = 'theme-';\n readonly suffixLight = '-light';\n readonly suffixDark = '-dark';\n readonly defaultTheme = 'theme-classic-dark';\n\n mutationObserver?: MutationObserver;\n _themeChanged = new TypedEvent<string>();\n _schemaChanged = new TypedEvent<string>();\n\n public get themeChanged() {\n return this._themeChanged;\n }\n\n public get schemaChanged() {\n return this._schemaChanged;\n }\n\n public hasVariantSuffix(className: string) {\n return (\n className.endsWith(this.suffixDark) ||\n className.endsWith(this.suffixLight)\n );\n }\n\n private isThemeClass(className: string) {\n return (\n className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className)\n );\n }\n\n public setTheme(themeName: string, systemAppearance = false) {\n if (this.isThemeClass(themeName)) {\n this.replaceThemeClass(themeName);\n } else {\n document.documentElement.setAttribute(dataIxTheme, themeName);\n }\n\n if (systemAppearance) {\n const currentSystemAppearance = getCurrentSystemAppearance();\n this.setVariant(currentSystemAppearance);\n }\n }\n\n private replaceThemeClass(themeName: string) {\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n document.documentElement.classList.remove(...oldThemes);\n document.documentElement.classList.add(themeName);\n }\n\n public toggleMode() {\n if (document.documentElement.hasAttribute(dataIxColorSchema)) {\n const currentSchema = this.getDataColorSchema(document.documentElement)!;\n document.documentElement.setAttribute(\n dataIxColorSchema,\n currentSchema === 'dark' ? 'light' : 'dark'\n );\n return;\n }\n\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n if (oldThemes.length === 0) {\n document.documentElement.classList.add(\n this.getOppositeMode(this.defaultTheme)\n );\n return;\n }\n\n oldThemes.forEach((themeName) => {\n document.documentElement.classList.replace(\n themeName,\n this.getOppositeMode(themeName)\n );\n });\n }\n\n private getDataColorSchema(target: HTMLElement) {\n return target.getAttribute(dataIxColorSchema);\n }\n\n public getCurrentTheme() {\n return (\n Array.from(document.documentElement.classList).find((className) =>\n this.isThemeClass(className)\n ) ??\n `theme-${\n document.documentElement.getAttribute(dataIxTheme) || 'classic'\n }-${\n document.documentElement.getAttribute(dataIxColorSchema) ||\n getCurrentSystemAppearance()\n }`\n );\n }\n\n public setVariant(variant: ThemeVariant = getCurrentSystemAppearance()) {\n if (this.getDataColorSchema(document.documentElement)) {\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n const currentTheme = this.getCurrentTheme();\n document.documentElement.classList.remove(currentTheme);\n\n if (currentTheme.endsWith(this.suffixDark)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-dark$/g, `-${variant}`)\n );\n }\n\n if (currentTheme.endsWith(this.suffixLight)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-light$/g, `-${variant}`)\n );\n }\n\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n }\n\n private getOppositeMode(themeName: string) {\n if (themeName.endsWith(this.suffixDark)) {\n return themeName.replace(/-dark$/g, this.suffixLight);\n }\n\n if (themeName.endsWith(this.suffixLight)) {\n return themeName.replace(/-light$/g, this.suffixDark);\n }\n\n return '';\n }\n\n private splitMutations(mutations: MutationRecord[]) {\n const classMutations = mutations.filter(\n (mutation) => mutation.attributeName === 'class'\n );\n\n const dataMutations = mutations.filter(\n (mutation) =>\n mutation.attributeName === dataIxTheme ||\n mutation.attributeName === dataIxColorSchema\n );\n\n return { classMutations, dataMutations };\n }\n\n private handleClassMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n (target as HTMLElement).classList.forEach((className) => {\n if (\n this.isThemeClass(className) &&\n !mutation.oldValue?.includes(className)\n ) {\n this._themeChanged.emit(className);\n }\n });\n });\n }\n\n private handleDataMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n const theme = (target as Element).attributes.getNamedItem(dataIxTheme);\n if (theme?.value && mutation.oldValue !== theme.value) {\n this._themeChanged.emit(theme.value);\n }\n\n const colorSchema = (target as Element).attributes.getNamedItem(\n dataIxColorSchema\n );\n if (colorSchema?.value && mutation.oldValue !== colorSchema.value) {\n this._schemaChanged.emit(colorSchema.value);\n }\n });\n }\n\n private registerMutationObservers() {\n if (typeof (window as any) === 'undefined') {\n return;\n }\n\n if (!('MutationObserver' in window)) {\n console.warn(\n 'ThemeSwitcher not supported by your browser. Missing MutationObserver API'\n );\n return;\n }\n\n const mutationObserverConfig = {\n attributeFilter: ['class', dataIxTheme, dataIxColorSchema],\n attributeOldValue: true,\n };\n\n const handleMutations = (mutations: MutationRecord[]) => {\n const { classMutations, dataMutations } = this.splitMutations(mutations);\n\n this.handleClassMutations(classMutations);\n this.handleDataMutations(dataMutations);\n };\n\n this.mutationObserver = new MutationObserver(handleMutations);\n this.mutationObserver.observe(\n document.documentElement,\n mutationObserverConfig\n );\n }\n\n public constructor() {\n this.registerMutationObservers();\n }\n}\n\nexport type IxTheme = LiteralStringUnion<\n 'classic' | 'classic-dark' | 'classic-light'\n>;\n\nexport const getCurrentSystemAppearance = (): ThemeVariant => {\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)');\n\n if (matchMedia.matches) {\n return 'dark';\n }\n\n return 'light';\n};\n\nexport const themeSwitcher = new ThemeSwitcher();\n"]}
@@ -0,0 +1,225 @@
1
+ /*
2
+ * SPDX-FileCopyrightText: 2023 Siemens AG
3
+ *
4
+ * SPDX-License-Identifier: MIT
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ /*
10
+ * SPDX-FileCopyrightText: 2024 Siemens AG
11
+ *
12
+ * SPDX-License-Identifier: MIT
13
+ *
14
+ * This source code is licensed under the MIT license found in the
15
+ * LICENSE file in the root directory of this source tree.
16
+ */
17
+ /* Dimensions */
18
+ /* Font sizes */
19
+ /* Line heights */
20
+ /*
21
+ * SPDX-FileCopyrightText: 2024 Siemens AG
22
+ *
23
+ * SPDX-License-Identifier: MIT
24
+ *
25
+ * This source code is licensed under the MIT license found in the
26
+ * LICENSE file in the root directory of this source tree.
27
+ */
28
+ /*
29
+ * SPDX-FileCopyrightText: 2023 Siemens AG
30
+ *
31
+ * SPDX-License-Identifier: MIT
32
+ *
33
+ * This source code is licensed under the MIT license found in the
34
+ * LICENSE file in the root directory of this source tree.
35
+ */
36
+ /*
37
+ * SPDX-FileCopyrightText: 2024 Siemens AG
38
+ *
39
+ * SPDX-License-Identifier: MIT
40
+ *
41
+ * This source code is licensed under the MIT license found in the
42
+ * LICENSE file in the root directory of this source tree.
43
+ */
44
+ .text-xs {
45
+ font-family: Siemens Sans, sans-serif;
46
+ font-size: 0.625rem;
47
+ font-weight: 400;
48
+ line-height: 1.4em;
49
+ color: var(--theme-color-std-text);
50
+ -webkit-font-smoothing: antialiased;
51
+ -moz-osx-font-smooting: grayscale;
52
+ }
53
+
54
+ .text-s {
55
+ font-family: Siemens Sans, sans-serif;
56
+ font-size: 0.75rem;
57
+ font-weight: 400;
58
+ line-height: 1.5em;
59
+ color: var(--theme-color-std-text);
60
+ -webkit-font-smoothing: antialiased;
61
+ -moz-osx-font-smooting: grayscale;
62
+ }
63
+
64
+ .text-caption {
65
+ font-family: Siemens Sans, sans-serif;
66
+ font-size: 0.75rem;
67
+ font-weight: 700;
68
+ line-height: 1.5em;
69
+ color: var(--theme-color-std-text);
70
+ -webkit-font-smoothing: antialiased;
71
+ -moz-osx-font-smooting: grayscale;
72
+ }
73
+
74
+ .text-caption-single {
75
+ font-family: Siemens Sans, sans-serif;
76
+ font-size: 0.75rem;
77
+ font-weight: 700;
78
+ line-height: 1em;
79
+ color: var(--theme-color-std-text);
80
+ -webkit-font-smoothing: antialiased;
81
+ -moz-osx-font-smooting: grayscale;
82
+ }
83
+
84
+ .text-default {
85
+ font-family: Siemens Sans, sans-serif;
86
+ font-size: 0.875rem;
87
+ font-weight: 400;
88
+ line-height: 1.429em;
89
+ color: var(--theme-color-std-text);
90
+ -webkit-font-smoothing: antialiased;
91
+ -moz-osx-font-smooting: grayscale;
92
+ }
93
+
94
+ .text-default-single {
95
+ font-family: Siemens Sans, sans-serif;
96
+ font-size: 0.875rem;
97
+ font-weight: 400;
98
+ line-height: 1.143em;
99
+ color: var(--theme-color-std-text);
100
+ -webkit-font-smoothing: antialiased;
101
+ -moz-osx-font-smooting: grayscale;
102
+ }
103
+
104
+ .text-default-title {
105
+ font-family: Siemens Sans, sans-serif;
106
+ font-size: 0.875rem;
107
+ font-weight: 700;
108
+ line-height: 1.429em;
109
+ color: var(--theme-color-std-text);
110
+ -webkit-font-smoothing: antialiased;
111
+ -moz-osx-font-smooting: grayscale;
112
+ }
113
+
114
+ .text-default-title-single {
115
+ font-family: Siemens Sans, sans-serif;
116
+ font-size: 0.875rem;
117
+ font-weight: 700;
118
+ line-height: 1.143em;
119
+ color: var(--theme-color-std-text);
120
+ -webkit-font-smoothing: antialiased;
121
+ -moz-osx-font-smooting: grayscale;
122
+ }
123
+
124
+ .text-l {
125
+ font-family: Siemens Sans, sans-serif;
126
+ font-size: 1rem;
127
+ font-weight: 400;
128
+ line-height: 1.5em;
129
+ color: var(--theme-color-std-text);
130
+ -webkit-font-smoothing: antialiased;
131
+ -moz-osx-font-smooting: grayscale;
132
+ }
133
+
134
+ .text-l-single {
135
+ font-family: Siemens Sans, sans-serif;
136
+ font-size: 1rem;
137
+ font-weight: 400;
138
+ line-height: 1.25em;
139
+ color: var(--theme-color-std-text);
140
+ -webkit-font-smoothing: antialiased;
141
+ -moz-osx-font-smooting: grayscale;
142
+ }
143
+
144
+ .text-l-title {
145
+ font-family: Siemens Sans, sans-serif;
146
+ font-size: 1rem;
147
+ font-weight: 700;
148
+ line-height: 1.5em;
149
+ color: var(--theme-color-std-text);
150
+ -webkit-font-smoothing: antialiased;
151
+ -moz-osx-font-smooting: grayscale;
152
+ }
153
+
154
+ .text-l-title-single {
155
+ font-family: Siemens Sans, sans-serif;
156
+ font-size: 1rem;
157
+ font-weight: 700;
158
+ line-height: 1.25em;
159
+ color: var(--theme-color-std-text);
160
+ -webkit-font-smoothing: antialiased;
161
+ -moz-osx-font-smooting: grayscale;
162
+ }
163
+
164
+ .text-h2 {
165
+ font-family: Siemens Sans, sans-serif;
166
+ font-size: 1.375rem;
167
+ font-weight: 700;
168
+ line-height: 1.455em;
169
+ color: var(--theme-color-std-text);
170
+ -webkit-font-smoothing: antialiased;
171
+ -moz-osx-font-smooting: grayscale;
172
+ }
173
+
174
+ .text-xl {
175
+ font-family: Siemens Sans, sans-serif;
176
+ font-size: 1.375rem;
177
+ font-weight: 400;
178
+ line-height: 1.091em;
179
+ color: var(--theme-color-std-text);
180
+ -webkit-font-smoothing: antialiased;
181
+ -moz-osx-font-smooting: grayscale;
182
+ }
183
+
184
+ a {
185
+ color: var(--theme-color-primary);
186
+ }
187
+
188
+ :host {
189
+ display: inline-block;
190
+ position: relative;
191
+ width: 100%;
192
+ z-index: var(--theme-z-index-tooltip);
193
+ }
194
+ :host .validation-tooltip {
195
+ background-color: var(--theme-tooltip--background);
196
+ color: var(--theme-tooltip--color);
197
+ padding: 5px 10px;
198
+ border-radius: 4px;
199
+ font-size: 13px;
200
+ border: 1px solid var(--theme-tooltip--border-color);
201
+ box-shadow: 0 0 2px 0 rgba(0, 0, 40, 0.1), 0 4px 8px 0 rgba(0, 0, 40, 0.1), 0 12px 18px 0 rgba(0, 0, 40, 0.1);
202
+ }
203
+ :host .validation-tooltip #arrow,
204
+ :host .validation-tooltip #arrow::before {
205
+ position: absolute;
206
+ width: 8px;
207
+ height: 8px;
208
+ background: inherit;
209
+ }
210
+ :host .validation-tooltip #arrow {
211
+ visibility: hidden;
212
+ }
213
+ :host .validation-tooltip #arrow::before {
214
+ visibility: visible;
215
+ content: "";
216
+ transform: rotate(45deg);
217
+ background-color: var(--theme-tooltip--background);
218
+ }
219
+ :host .validation-tooltip > #arrow {
220
+ bottom: -5px;
221
+ }
222
+ :host .validation-tooltip > #arrow::before {
223
+ border-right: 1px solid var(--theme-tooltip--border-color);
224
+ border-bottom: 1px solid var(--theme-tooltip--border-color);
225
+ }