@siemens/ix 0.0.0-pr-2166-20251001134702 → 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-c10b2e40.entry.js +0 -2
  860. package/dist/siemens-ix/p-d4b0b3d1.entry.js +0 -2
  861. package/dist/siemens-ix/p-d4b0b3d1.entry.js.map +0 -1
  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
@@ -10,9 +10,27 @@ import { h, Host } from "@stencil/core";
10
10
  export class DatetimePicker {
11
11
  constructor() {
12
12
  /**
13
- * If true disables date range selection (from/to).
13
+ * If true a date-range can be selected (from/to).
14
14
  */
15
- this.singleSelection = false;
15
+ this.range = true;
16
+ /**
17
+ * Show hour input
18
+ *
19
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
20
+ */
21
+ this.showHour = true;
22
+ /**
23
+ * Show minutes input
24
+ *
25
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
26
+ */
27
+ this.showMinutes = true;
28
+ /**
29
+ * Show seconds input
30
+ *
31
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
32
+ */
33
+ this.showSeconds = true;
16
34
  /**
17
35
  * Date format string.
18
36
  * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.
@@ -73,7 +91,7 @@ export class DatetimePicker {
73
91
  this.timeChange.emit(time);
74
92
  }
75
93
  render() {
76
- return (h(Host, { key: '91fb1dbd40b48c37c207de3f173e19ed72f3b6c3' }, h("ix-layout-grid", { key: '0a9fc8ae63d59ba14185a12d3eb126351f4f67c4', class: "no-padding" }, h("ix-row", { key: '31e56d9e8a7ca4a6afd5754f0caf28eb494d68cd' }, h("ix-col", { key: '1df4729e7703d4f48d19233774a8fead11b74553' }, h("ix-date-picker", { key: '80923eee970fc1c163a94986c109e13f09d3a606', ref: (ref) => (this.datePickerElement = ref), corners: "left", singleSelection: this.singleSelection, onDateChange: (event) => this.onDateChange(event), from: this.from, to: this.to, format: this.dateFormat, minDate: this.minDate, maxDate: this.maxDate, weekStartIndex: this.weekStartIndex, embedded: true, locale: this.locale, showWeekNumbers: this.showWeekNumbers, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton })), h("ix-col", { key: 'd081455e2f00a9917e11902a70cb882a84e23615' }, h("ix-time-picker", { key: '4602c3ca1b899ec283aa9469ce5fcdf4ba4a70fc', class: "min-width", ref: (ref) => (this.timePickerElement = ref), embedded: true, dateTimePickerAppearance: true, onTimeChange: (event) => this.onTimeChange(event), format: this.timeFormat, time: this.time }), h("div", { key: '1329ef1e1af1b22de5f4754ee02452a4d1aabb6b', class: "btn-select-date-container" }, h("ix-button", { key: '01efc3c5d4f72bd74a670a267a28e864c3e643fe', class: "btn-select-date", onClick: () => this.onDone() }, this.i18nDone)))))));
94
+ return (h(Host, { key: '92375c17933eb17041b078bbf8622552ded46226' }, h("ix-layout-grid", { key: '012e77c15f250b7290926ef0cc9ea65ddfdc556f', class: "no-padding" }, h("ix-row", { key: 'f495ce2c17a5ae0614be00b56a8be1214848e1cb' }, h("ix-col", { key: 'd2863b9d3b90ed0e5d301ae595aec677f01a835f' }, h("ix-date-picker", { key: '6586694bc13fc752d2fb29f2728ceb37ca31c336', ref: (ref) => (this.datePickerElement = ref), corners: "left", range: this.range, onDateChange: (event) => this.onDateChange(event), from: this.from, to: this.to, format: this.dateFormat, minDate: this.minDate, maxDate: this.maxDate, weekStartIndex: this.weekStartIndex, standaloneAppearance: false, locale: this.locale, showWeekNumbers: this.showWeekNumbers, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton })), h("ix-col", { key: 'e8ea30ea905b964be809634e21f17a57d664c62d' }, h("ix-time-picker", { key: '106449dfab4cc641f179aea35068f36e95f50140', class: "min-width", ref: (ref) => (this.timePickerElement = ref), standaloneAppearance: false, dateTimePickerAppearance: true, onTimeChange: (event) => this.onTimeChange(event), format: this.timeFormat, textTime: this.i18nTime, time: this.time, showHour: this.showHour, showMinutes: this.showMinutes, showSeconds: this.showSeconds }), h("div", { key: 'f4c41e1e9e9513a6a37b7f0111d64ef9e6be1adf', class: "btn-select-date-container" }, h("ix-button", { key: '9fc8c6549c17e40a062e8e8a387e564822de4842', class: "btn-select-date", onClick: () => this.onDone() }, this.i18nDone)))))));
77
95
  }
78
96
  static get is() { return "ix-datetime-picker"; }
79
97
  static get encapsulation() { return "shadow"; }
@@ -89,9 +107,9 @@ export class DatetimePicker {
89
107
  }
90
108
  static get properties() {
91
109
  return {
92
- "singleSelection": {
110
+ "range": {
93
111
  "type": "boolean",
94
- "attribute": "single-selection",
112
+ "attribute": "range",
95
113
  "mutable": false,
96
114
  "complexType": {
97
115
  "original": "boolean",
@@ -102,12 +120,81 @@ export class DatetimePicker {
102
120
  "optional": false,
103
121
  "docs": {
104
122
  "tags": [],
105
- "text": "If true disables date range selection (from/to)."
123
+ "text": "If true a date-range can be selected (from/to)."
106
124
  },
107
125
  "getter": false,
108
126
  "setter": false,
109
127
  "reflect": false,
110
- "defaultValue": "false"
128
+ "defaultValue": "true"
129
+ },
130
+ "showHour": {
131
+ "type": "boolean",
132
+ "attribute": "show-hour",
133
+ "mutable": false,
134
+ "complexType": {
135
+ "original": "boolean",
136
+ "resolved": "boolean",
137
+ "references": {}
138
+ },
139
+ "required": false,
140
+ "optional": false,
141
+ "docs": {
142
+ "tags": [{
143
+ "name": "deprecated",
144
+ "text": "This is now determined by the format that is used. Will be removed in 4.0.0"
145
+ }],
146
+ "text": "Show hour input"
147
+ },
148
+ "getter": false,
149
+ "setter": false,
150
+ "reflect": false,
151
+ "defaultValue": "true"
152
+ },
153
+ "showMinutes": {
154
+ "type": "boolean",
155
+ "attribute": "show-minutes",
156
+ "mutable": false,
157
+ "complexType": {
158
+ "original": "boolean",
159
+ "resolved": "boolean",
160
+ "references": {}
161
+ },
162
+ "required": false,
163
+ "optional": false,
164
+ "docs": {
165
+ "tags": [{
166
+ "name": "deprecated",
167
+ "text": "This is now determined by the format that is used. Will be removed in 4.0.0"
168
+ }],
169
+ "text": "Show minutes input"
170
+ },
171
+ "getter": false,
172
+ "setter": false,
173
+ "reflect": false,
174
+ "defaultValue": "true"
175
+ },
176
+ "showSeconds": {
177
+ "type": "boolean",
178
+ "attribute": "show-seconds",
179
+ "mutable": false,
180
+ "complexType": {
181
+ "original": "boolean",
182
+ "resolved": "boolean",
183
+ "references": {}
184
+ },
185
+ "required": false,
186
+ "optional": false,
187
+ "docs": {
188
+ "tags": [{
189
+ "name": "deprecated",
190
+ "text": "This is now determined by the format that is used. Will be removed in 4.0.0"
191
+ }],
192
+ "text": "Show seconds input"
193
+ },
194
+ "getter": false,
195
+ "setter": false,
196
+ "reflect": false,
197
+ "defaultValue": "true"
111
198
  },
112
199
  "minDate": {
113
200
  "type": "string",
@@ -1 +1 @@
1
- {"version":3,"file":"datetime-picker.js","sourceRoot":"","sources":["../../../src/components/datetime-picker/datetime-picker.tsx"],"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 { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport type { DateChangeEvent } from '../date-picker/date-picker.events';\nimport { IxDatePickerComponent } from '../date-picker/date-picker-component';\nimport type {\n DateTimeDateChangeEvent,\n DateTimeSelectEvent,\n} from './datetime-picker.types';\n\n@Component({\n tag: 'ix-datetime-picker',\n styleUrl: 'datetime-picker.scss',\n shadow: true,\n})\nexport class DatetimePicker\n implements Omit<IxDatePickerComponent, 'corners' | 'format'>\n{\n /**\n * If true disables date range selection (from/to).\n */\n @Prop() singleSelection = false;\n\n /**\n * The earliest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate?: string;\n\n /**\n * The latest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate?: string;\n\n /**\n * Date format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() dateFormat: string = 'yyyy/LL/dd';\n\n /**\n * Time format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() timeFormat: string = 'HH:mm:ss';\n\n /**\n * The selected starting date. If the picker is not in range mode this is the selected date.\n * Format has to match the `format` property.\n */\n @Prop() from?: string;\n\n /**\n * The selected end date. If the the picker is not in range mode this property has no impact.\n * Format has to match the `format` property.\n */\n @Prop() to?: string;\n\n /**\n * Select time with format string\n */\n @Prop() time?: string;\n\n /**\n * Show time reference input\n * Time reference is default aligned with @see {this.timeFormat}\n */\n @Prop() showTimeReference: boolean = false;\n\n /**\n * Set time reference\n */\n @Prop() timeReference?: 'AM' | 'PM';\n\n /**\n * Text of date select button\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone: string = 'Done';\n\n /**\n * Top label of time picker\n *\n * @since 3.0.0\n */\n @Prop({ attribute: 'i18n-time' }) i18nTime: string = 'Time';\n\n /**\n * ARIA label for the previous month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelPreviousMonthButton?: string;\n\n /**\n * ARIA label for the next month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelNextMonthButton?: string;\n\n /**\n * The index of which day to start the week on, based on the Locale#weekdays array.\n * E.g. if the locale is en-us, weekStartIndex = 1 results in starting the week on monday.\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() locale?: string;\n\n /**\n * Shows week numbers displayed on the left side of the date picker\n *\n * @since 3.0.0\n */\n @Prop() showWeekNumbers = false;\n\n /**\n * Time change\n */\n @Event() timeChange!: EventEmitter<string>;\n\n /**\n * Date change\n */\n @Event() dateChange!: EventEmitter<DateTimeDateChangeEvent>;\n\n /**\n * Datetime selection event is fired after confirm button is pressed\n */\n @Event() dateSelect!: EventEmitter<DateTimeSelectEvent>;\n\n private datePickerElement?: HTMLIxDatePickerElement;\n private timePickerElement?: HTMLIxTimePickerElement;\n\n private async onDone() {\n const date = await this.datePickerElement?.getCurrentDate();\n const time = await this.timePickerElement?.getCurrentTime();\n\n this.dateSelect.emit({\n from: date?.from ?? '',\n to: date?.to ?? '',\n time: time ?? '',\n });\n }\n\n private async onDateChange(event: CustomEvent<string | DateChangeEvent>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: date } = event;\n this.dateChange.emit(date);\n }\n\n private async onTimeChange(event: CustomEvent<string>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: time } = event;\n this.timeChange.emit(time);\n }\n\n render() {\n return (\n <Host>\n <ix-layout-grid class=\"no-padding\">\n <ix-row>\n <ix-col>\n <ix-date-picker\n ref={(ref) => (this.datePickerElement = ref)}\n corners=\"left\"\n singleSelection={this.singleSelection}\n onDateChange={(event) => this.onDateChange(event)}\n from={this.from}\n to={this.to}\n format={this.dateFormat}\n minDate={this.minDate}\n maxDate={this.maxDate}\n weekStartIndex={this.weekStartIndex}\n embedded\n locale={this.locale}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ></ix-date-picker>\n </ix-col>\n\n <ix-col>\n <ix-time-picker\n class=\"min-width\"\n ref={(ref) => (this.timePickerElement = ref)}\n embedded\n dateTimePickerAppearance={true}\n onTimeChange={(event) => this.onTimeChange(event)}\n format={this.timeFormat}\n time={this.time}\n ></ix-time-picker>\n <div class=\"btn-select-date-container\">\n <ix-button\n class=\"btn-select-date\"\n onClick={() => this.onDone()}\n >\n {this.i18nDone}\n </ix-button>\n </div>\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"datetime-picker.js","sourceRoot":"","sources":["../../../src/components/datetime-picker/datetime-picker.tsx"],"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 { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport type { DateChangeEvent } from '../date-picker/date-picker.events';\nimport { IxDatePickerComponent } from '../date-picker/date-picker-component';\nimport type {\n DateTimeDateChangeEvent,\n DateTimeSelectEvent,\n} from './datetime-picker.types';\n\n@Component({\n tag: 'ix-datetime-picker',\n styleUrl: 'datetime-picker.scss',\n shadow: true,\n})\nexport class DatetimePicker\n implements Omit<IxDatePickerComponent, 'corners' | 'format'>\n{\n /**\n * If true a date-range can be selected (from/to).\n */\n @Prop() range = true;\n\n /**\n * Show hour input\n *\n * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0\n */\n @Prop() showHour = true;\n\n /**\n * Show minutes input\n *\n * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0\n */\n @Prop() showMinutes = true;\n\n /**\n * Show seconds input\n *\n * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0\n */\n @Prop() showSeconds = true;\n\n /**\n * The earliest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate?: string;\n\n /**\n * The latest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate?: string;\n\n /**\n * Date format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() dateFormat: string = 'yyyy/LL/dd';\n\n /**\n * Time format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() timeFormat: string = 'HH:mm:ss';\n\n /**\n * The selected starting date. If the picker is not in range mode this is the selected date.\n * Format has to match the `format` property.\n */\n @Prop() from?: string;\n\n /**\n * The selected end date. If the the picker is not in range mode this property has no impact.\n * Format has to match the `format` property.\n */\n @Prop() to?: string;\n\n /**\n * Select time with format string\n */\n @Prop() time?: string;\n\n /**\n * Show time reference input\n * Time reference is default aligned with @see {this.timeFormat}\n */\n @Prop() showTimeReference: boolean = false;\n\n /**\n * Set time reference\n */\n @Prop() timeReference?: 'AM' | 'PM';\n\n /**\n * Text of date select button\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone: string = 'Done';\n\n /**\n * Top label of time picker\n *\n * @since 3.0.0\n */\n @Prop({ attribute: 'i18n-time' }) i18nTime: string = 'Time';\n\n /**\n * ARIA label for the previous month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelPreviousMonthButton?: string;\n\n /**\n * ARIA label for the next month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelNextMonthButton?: string;\n\n /**\n * The index of which day to start the week on, based on the Locale#weekdays array.\n * E.g. if the locale is en-us, weekStartIndex = 1 results in starting the week on monday.\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() locale?: string;\n\n /**\n * Shows week numbers displayed on the left side of the date picker\n *\n * @since 3.0.0\n */\n @Prop() showWeekNumbers = false;\n\n /**\n * Time change\n */\n @Event() timeChange!: EventEmitter<string>;\n\n /**\n * Date change\n */\n @Event() dateChange!: EventEmitter<DateTimeDateChangeEvent>;\n\n /**\n * Datetime selection event is fired after confirm button is pressed\n */\n @Event() dateSelect!: EventEmitter<DateTimeSelectEvent>;\n\n private datePickerElement?: HTMLIxDatePickerElement;\n private timePickerElement?: HTMLIxTimePickerElement;\n\n private async onDone() {\n const date = await this.datePickerElement?.getCurrentDate();\n const time = await this.timePickerElement?.getCurrentTime();\n\n this.dateSelect.emit({\n from: date?.from ?? '',\n to: date?.to ?? '',\n time: time ?? '',\n });\n }\n\n private async onDateChange(event: CustomEvent<string | DateChangeEvent>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: date } = event;\n this.dateChange.emit(date);\n }\n\n private async onTimeChange(event: CustomEvent<string>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: time } = event;\n this.timeChange.emit(time);\n }\n\n render() {\n return (\n <Host>\n <ix-layout-grid class=\"no-padding\">\n <ix-row>\n <ix-col>\n <ix-date-picker\n ref={(ref) => (this.datePickerElement = ref)}\n corners=\"left\"\n range={this.range}\n onDateChange={(event) => this.onDateChange(event)}\n from={this.from}\n to={this.to}\n format={this.dateFormat}\n minDate={this.minDate}\n maxDate={this.maxDate}\n weekStartIndex={this.weekStartIndex}\n standaloneAppearance={false}\n locale={this.locale}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ></ix-date-picker>\n </ix-col>\n\n <ix-col>\n <ix-time-picker\n class=\"min-width\"\n ref={(ref) => (this.timePickerElement = ref)}\n standaloneAppearance={false}\n dateTimePickerAppearance={true}\n onTimeChange={(event) => this.onTimeChange(event)}\n format={this.timeFormat}\n textTime={this.i18nTime}\n time={this.time}\n showHour={this.showHour}\n showMinutes={this.showMinutes}\n showSeconds={this.showSeconds}\n ></ix-time-picker>\n <div class=\"btn-select-date-container\">\n <ix-button\n class=\"btn-select-date\"\n onClick={() => this.onDone()}\n >\n {this.i18nDone}\n </ix-button>\n </div>\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </Host>\n );\n }\n}\n"]}
@@ -22,7 +22,6 @@ export class Drawer {
22
22
  /**
23
23
  * Fired in case of an outside click during drawer showed state
24
24
  */
25
- // eslint-disable-next-line @stencil-community/ban-default-true
26
25
  this.closeOnClickOutside = true;
27
26
  /**
28
27
  * Render the drawer with maximum height
@@ -133,7 +132,7 @@ export class Drawer {
133
132
  this.toggleDrawer(this.show);
134
133
  }
135
134
  render() {
136
- return (h(Host, { key: '16521422bdb7a66912901a8d1d156772c31c588a', class: {
135
+ return (h(Host, { key: '7be961a99e8e7ada4525260428b8cb05e9699813', class: {
137
136
  'drawer-container': true,
138
137
  'display-none': true,
139
138
  }, style: {
@@ -141,15 +140,15 @@ export class Drawer {
141
140
  'max-width': `${this.maxWidth}rem`,
142
141
  height: this.fullHeight ? '100%' : 'auto',
143
142
  overflow: 'hidden',
144
- }, ref: (el) => (this.divElement = el), "data-testid": "container", id: "div-container" }, h("div", { key: '8f1c103f6bb03c362a492031e2ad92bcf25d89cc', style: {
143
+ }, ref: (el) => (this.divElement = el), "data-testid": "container", id: "div-container" }, h("div", { key: '5c2b3998afbfb0d0f01b2a2634c6e6d28077af27', style: {
145
144
  width: this.width === 'auto'
146
145
  ? 'auto'
147
146
  : `${this.getConstrainedWidth(this.width)}rem`,
148
- } }, h("div", { key: '7ff4e51b1f93fb7f686db4915ee838f32f61ae86', class: "header" }, h("div", { key: '7c748e9f1e9c2b5468fd524844dfc761069572f2', class: "header-content" }, h("slot", { key: 'ea0ef18347626104852b149f3944165932f9d661', name: "header" })), h("ix-icon-button", { key: 'a446d3e8cb7648d320cd4ea31899d2b289afbabe', class: "close-button", style: {
147
+ } }, h("div", { key: 'b82cde6e8125ea023a8d553434ec399f681038a9', class: "header" }, h("div", { key: '5aa258a2f3cdcb742993993ea0ed9bca152c2db3', class: "header-content" }, h("slot", { key: 'ef89dbef6fbc0cad872effee17836f82be5dc219', name: "header" })), h("ix-icon-button", { key: '461b4ece5fb4933b84174f51ee25d7de19de3843', class: "close-button", style: {
149
148
  display: this.showContent ? 'block' : 'none',
150
- }, icon: iconClose, iconColor: "color-soft-text", size: "24", variant: "tertiary", onClick: () => this.onCloseClicked(), "data-testid": "close-button", "aria-label": this.ariaLabelCloseButton })), h("div", { key: '87f799aa707aceefa145a0b547761f587593d8e2', class: "content", style: {
149
+ }, icon: iconClose, iconColor: "color-soft-text", size: "24", variant: "tertiary", onClick: () => this.onCloseClicked(), "data-testid": "close-button", "aria-label": this.ariaLabelCloseButton })), h("div", { key: 'f1d1735e2ae9d8ee33771bd3d11459bb3ac84d65', class: "content", style: {
151
150
  display: this.showContent ? 'block' : 'none',
152
- } }, h("slot", { key: 'aea1e984256bb60bcb6c6a6721988b86decdfca0' })))));
151
+ } }, h("slot", { key: 'c1506217b6b73a685df75906356c3c1f29470d46' })))));
153
152
  }
154
153
  static get is() { return "ix-drawer"; }
155
154
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../src/components/drawer/drawer.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EACL,SAAS,EACT,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C;;GAEG;AAMH,MAAM,OAAO,MAAM;IALnB;QAME;;WAEG;QACsB,SAAI,GAAG,KAAK,CAAC;QAEtC;;WAEG;QACH,+DAA+D;QACvD,wBAAmB,GAAG,IAAI,CAAC;QAEnC;;WAEG;QACK,eAAU,GAAG,KAAK,CAAC;QAE3B;;WAEG;QACK,aAAQ,GAAG,EAAE,CAAC;QAEtB;;WAEG;QACK,aAAQ,GAAG,EAAE,CAAC;QAEtB;;WAEG;QACK,UAAK,GAAoB,IAAI,CAAC,QAAQ,CAAC;QAoB/C,WAAM,GAAG,KAAK,CAAC;QAEP,aAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAGzC,gBAAW,GAAG,IAAI,CAAC;KA8K7B;IA3KC,aAAa,CAAC,QAAiB,EAAE,QAAkB;QACjD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IAEH,KAAK,CAAC,YAAY,CAAC,IAAc;QAC/B,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAE1B,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAE9C,IAAI,gBAAgB,EAAE,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACnC,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACtD,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAErD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAElB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;QAExB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAEO,cAAc,CAAC,GAAQ;QAC7B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAE1C,IACE,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;YAC5B,cAAc,KAAK,IAAI,CAAC,UAAU;YAClC,MAAM,KAAK,GAAG,EACd,CAAC;YACD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,KAAa;QACvC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IAEO,aAAa,CAAC,EAAe;QACnC,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAC9C,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CACnD,KAAK,CAAC;QAEP,OAAO,CAAC,EAAE,EAAE;YACV,QAAQ,EAAE,SAAS,CAAC,UAAU;YAC9B,KAAK,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;YACxB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,UAAU,EAAE,GAAG,EAAE;gBACf,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACnC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,EAAe;QAClC,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAC7C,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CACnD,KAAK,CAAC;QAEP,OAAO,CAAC,EAAE,EAAE;YACV,QAAQ,EAAE,SAAS,CAAC,UAAU;YAC9B,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC;YACvB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,GAAG,EAAE;gBACZ,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACtC,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,kBAAkB,EAAE,IAAI;gBACxB,cAAc,EAAE,IAAI;aACrB,EACD,KAAK,EAAE;gBACL,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,KAAK;gBAClC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBACzC,QAAQ,EAAE,QAAQ;aACnB,EACD,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,EAAiB,CAAC,iBACtC,WAAW,EACvB,EAAE,EAAC,eAAe;YAElB,4DACE,KAAK,EAAE;oBACL,KAAK,EACH,IAAI,CAAC,KAAK,KAAK,MAAM;wBACnB,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK;iBACnD;gBAED,4DAAK,KAAK,EAAC,QAAQ;oBACjB,4DAAK,KAAK,EAAC,gBAAgB;wBACzB,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB;oBACN,uEACE,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE;4BACL,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;yBAC7C,EACD,IAAI,EAAE,SAAS,EACf,SAAS,EAAC,iBAAiB,EAC3B,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,UAAU,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,iBACxB,cAAc,gBACd,IAAI,CAAC,oBAAoB,GACrB,CACd;gBACN,4DACE,KAAK,EAAC,SAAS,EACf,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;qBAC7C;oBAED,8DAAa,CACT,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","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 { iconClose } from '@siemens/ix-icons/icons';\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { animate } from 'animejs';\nimport Animation from '../utils/animation';\n\n/**\n * @deprecated Will be removed with 5.0.0, use ix-pane as successor\n */\n@Component({\n tag: 'ix-drawer',\n styleUrl: 'drawer.scss',\n shadow: true,\n})\nexport class Drawer {\n /**\n * Show or hide the drawer\n */\n @Prop({ mutable: true }) show = false;\n\n /**\n * Fired in case of an outside click during drawer showed state\n */\n // eslint-disable-next-line @stencil-community/ban-default-true\n @Prop() closeOnClickOutside = true;\n\n /**\n * Render the drawer with maximum height\n */\n @Prop() fullHeight = false;\n\n /**\n * Min width interpreted as REM\n */\n @Prop() minWidth = 16;\n\n /**\n * Max width interpreted as REM\n */\n @Prop() maxWidth = 28;\n\n /**\n * Width interpreted as REM if not set to 'auto'\n */\n @Prop() width: number | 'auto' = this.minWidth;\n\n /**\n * ARIA label for the close icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCloseButton?: string;\n\n /**\n * Fire event after drawer is open\n */\n @Event() open!: EventEmitter;\n\n /**\n * Fire event after drawer is close\n */\n @Event() drawerClose!: EventEmitter;\n\n toggle = false;\n\n private callback = this.clickedOutside.bind(this);\n private divElement?: HTMLElement;\n\n @State() showContent = true;\n\n @Watch('show')\n onShowChanged(newValue: boolean, oldValue?: boolean) {\n if (newValue === oldValue) {\n return;\n }\n\n this.toggleDrawer(newValue);\n }\n\n /**\n * Toggle or define show state of drawer\n * @param show Overwrite toggle state with boolean\n */\n @Method()\n async toggleDrawer(show?: boolean): Promise<void> {\n show = show ?? !this.show;\n\n if (show) {\n const { defaultPrevented } = this.open.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n this.show = true;\n if (!this.toggle && this.divElement) {\n this.slideInRight(this.divElement);\n setTimeout(() => {\n window.addEventListener('mousedown', this.callback);\n }, Animation.mediumTime);\n }\n } else {\n const { defaultPrevented } = this.drawerClose.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n this.show = false;\n\n if (this.toggle && this.divElement) {\n this.slideOutRight(this.divElement);\n }\n\n window.removeEventListener('mousedown', this.callback);\n }\n\n this.toggle = this.show;\n\n return Promise.resolve();\n }\n\n private onCloseClicked() {\n this.toggleDrawer(false);\n }\n\n private clickedOutside(evt: any) {\n if (!this.closeOnClickOutside) {\n return;\n }\n\n const target = evt.target;\n const closestElement = target.closest('#div-container');\n const btn = target.closest('#drawer-btn');\n\n if (\n evt.target.type !== 'button' &&\n closestElement !== this.divElement &&\n target !== btn\n ) {\n this.show = false;\n }\n }\n\n private getConstrainedWidth(width: number) {\n return Math.min(Math.max(width, this.minWidth), this.maxWidth);\n }\n\n private slideOutRight(el: HTMLElement) {\n const initialWidth = `${this.getConstrainedWidth(\n this.width === 'auto' ? this.minWidth : this.width\n )}rem`;\n\n animate(el, {\n duration: Animation.mediumTime,\n width: [initialWidth, 0],\n opacity: [1, 0],\n easing: 'easeInSine',\n onComplete: () => {\n el.classList.add('display-none');\n },\n });\n }\n\n private slideInRight(el: HTMLElement) {\n const targetWidth = `${this.getConstrainedWidth(\n this.width === 'auto' ? this.minWidth : this.width\n )}rem`;\n\n animate(el, {\n duration: Animation.mediumTime,\n width: [0, targetWidth],\n opacity: [0, 1],\n easing: 'easeOutSine',\n onBegin: () => {\n el.classList.remove('display-none');\n },\n onComplete: () => {\n this.showContent = true;\n },\n });\n }\n\n componentDidLoad() {\n this.toggleDrawer(this.show);\n }\n\n render() {\n return (\n <Host\n class={{\n 'drawer-container': true,\n 'display-none': true,\n }}\n style={{\n width: '0',\n 'max-width': `${this.maxWidth}rem`,\n height: this.fullHeight ? '100%' : 'auto',\n overflow: 'hidden',\n }}\n ref={(el) => (this.divElement = el as HTMLElement)}\n data-testid=\"container\"\n id=\"div-container\"\n >\n <div\n style={{\n width:\n this.width === 'auto'\n ? 'auto'\n : `${this.getConstrainedWidth(this.width)}rem`,\n }}\n >\n <div class=\"header\">\n <div class=\"header-content\">\n <slot name=\"header\"></slot>\n </div>\n <ix-icon-button\n class=\"close-button\"\n style={{\n display: this.showContent ? 'block' : 'none',\n }}\n icon={iconClose}\n iconColor=\"color-soft-text\"\n size=\"24\"\n variant=\"tertiary\"\n onClick={() => this.onCloseClicked()}\n data-testid=\"close-button\"\n aria-label={this.ariaLabelCloseButton}\n ></ix-icon-button>\n </div>\n <div\n class=\"content\"\n style={{\n display: this.showContent ? 'block' : 'none',\n }}\n >\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../src/components/drawer/drawer.tsx"],"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 { iconClose } from '@siemens/ix-icons/icons';\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { animate } from 'animejs';\nimport Animation from '../utils/animation';\n\n/**\n * @deprecated Will be removed with 5.0.0, use ix-pane as successor\n */\n@Component({\n tag: 'ix-drawer',\n styleUrl: 'drawer.scss',\n shadow: true,\n})\nexport class Drawer {\n /**\n * Show or hide the drawer\n */\n @Prop({ mutable: true }) show = false;\n\n /**\n * Fired in case of an outside click during drawer showed state\n */\n @Prop() closeOnClickOutside = true;\n\n /**\n * Render the drawer with maximum height\n */\n @Prop() fullHeight = false;\n\n /**\n * Min width interpreted as REM\n */\n @Prop() minWidth = 16;\n\n /**\n * Max width interpreted as REM\n */\n @Prop() maxWidth = 28;\n\n /**\n * Width interpreted as REM if not set to 'auto'\n */\n @Prop() width: number | 'auto' = this.minWidth;\n\n /**\n * ARIA label for the close icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCloseButton?: string;\n\n /**\n * Fire event after drawer is open\n */\n @Event() open!: EventEmitter;\n\n /**\n * Fire event after drawer is close\n */\n @Event() drawerClose!: EventEmitter;\n\n toggle = false;\n\n private callback = this.clickedOutside.bind(this);\n private divElement?: HTMLElement;\n\n @State() showContent = true;\n\n @Watch('show')\n onShowChanged(newValue: boolean, oldValue?: boolean) {\n if (newValue === oldValue) {\n return;\n }\n\n this.toggleDrawer(newValue);\n }\n\n /**\n * Toggle or define show state of drawer\n * @param show Overwrite toggle state with boolean\n */\n @Method()\n async toggleDrawer(show?: boolean): Promise<void> {\n show = show ?? !this.show;\n\n if (show) {\n const { defaultPrevented } = this.open.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n this.show = true;\n if (!this.toggle && this.divElement) {\n this.slideInRight(this.divElement);\n setTimeout(() => {\n window.addEventListener('mousedown', this.callback);\n }, Animation.mediumTime);\n }\n } else {\n const { defaultPrevented } = this.drawerClose.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n this.show = false;\n\n if (this.toggle && this.divElement) {\n this.slideOutRight(this.divElement);\n }\n\n window.removeEventListener('mousedown', this.callback);\n }\n\n this.toggle = this.show;\n\n return Promise.resolve();\n }\n\n private onCloseClicked() {\n this.toggleDrawer(false);\n }\n\n private clickedOutside(evt: any) {\n if (!this.closeOnClickOutside) {\n return;\n }\n\n const target = evt.target;\n const closestElement = target.closest('#div-container');\n const btn = target.closest('#drawer-btn');\n\n if (\n evt.target.type !== 'button' &&\n closestElement !== this.divElement &&\n target !== btn\n ) {\n this.show = false;\n }\n }\n\n private getConstrainedWidth(width: number) {\n return Math.min(Math.max(width, this.minWidth), this.maxWidth);\n }\n\n private slideOutRight(el: HTMLElement) {\n const initialWidth = `${this.getConstrainedWidth(\n this.width === 'auto' ? this.minWidth : this.width\n )}rem`;\n\n animate(el, {\n duration: Animation.mediumTime,\n width: [initialWidth, 0],\n opacity: [1, 0],\n easing: 'easeInSine',\n onComplete: () => {\n el.classList.add('display-none');\n },\n });\n }\n\n private slideInRight(el: HTMLElement) {\n const targetWidth = `${this.getConstrainedWidth(\n this.width === 'auto' ? this.minWidth : this.width\n )}rem`;\n\n animate(el, {\n duration: Animation.mediumTime,\n width: [0, targetWidth],\n opacity: [0, 1],\n easing: 'easeOutSine',\n onBegin: () => {\n el.classList.remove('display-none');\n },\n onComplete: () => {\n this.showContent = true;\n },\n });\n }\n\n componentDidLoad() {\n this.toggleDrawer(this.show);\n }\n\n render() {\n return (\n <Host\n class={{\n 'drawer-container': true,\n 'display-none': true,\n }}\n style={{\n width: '0',\n 'max-width': `${this.maxWidth}rem`,\n height: this.fullHeight ? '100%' : 'auto',\n overflow: 'hidden',\n }}\n ref={(el) => (this.divElement = el as HTMLElement)}\n data-testid=\"container\"\n id=\"div-container\"\n >\n <div\n style={{\n width:\n this.width === 'auto'\n ? 'auto'\n : `${this.getConstrainedWidth(this.width)}rem`,\n }}\n >\n <div class=\"header\">\n <div class=\"header-content\">\n <slot name=\"header\"></slot>\n </div>\n <ix-icon-button\n class=\"close-button\"\n style={{\n display: this.showContent ? 'block' : 'none',\n }}\n icon={iconClose}\n iconColor=\"color-soft-text\"\n size=\"24\"\n variant=\"tertiary\"\n onClick={() => this.onCloseClicked()}\n data-testid=\"close-button\"\n aria-label={this.ariaLabelCloseButton}\n ></ix-icon-button>\n </div>\n <div\n class=\"content\"\n style={{\n display: this.showContent ? 'block' : 'none',\n }}\n >\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -25,9 +25,9 @@ export class EventList {
25
25
  */
26
26
  this.compact = false;
27
27
  /**
28
- * Animate state change transitions. Defaults to 'false'.
28
+ * Animate state change transitions. Defaults to 'true'.
29
29
  */
30
- this.animated = false;
30
+ this.animated = true;
31
31
  /**
32
32
  * Display a chevron icon in list items. Defaults to 'false'
33
33
  */
@@ -128,11 +128,11 @@ export class EventList {
128
128
  });
129
129
  }
130
130
  render() {
131
- return (h(Host, { key: '700b662ebfba2754f0c4c0d3bf09e95c5277760d', class: {
131
+ return (h(Host, { key: '754948a81d85157177bfff7afeee4f4851540c4d', class: {
132
132
  'item-size-s': this.itemHeight === 'S',
133
133
  'item-size-l': this.itemHeight === 'L',
134
134
  compact: this.compact,
135
- } }, h("div", { key: 'ebfed96ff53b21d49c9b9464978c79faa22210e0', role: "list" }, h("slot", { key: '4df468a4c4cc9643dae0b13f7b88df3402e3beaf' }))));
135
+ } }, h("div", { key: '27c68dcf3eeddc91e31bd1bb3abd3f933aa3cbdf', role: "list" }, h("slot", { key: '828bb7c4b9b39cfb6aff66f0cbe35b0705ae6419' }))));
136
136
  }
137
137
  static get is() { return "ix-event-list"; }
138
138
  static get encapsulation() { return "shadow"; }
@@ -201,12 +201,12 @@ export class EventList {
201
201
  "optional": false,
202
202
  "docs": {
203
203
  "tags": [],
204
- "text": "Animate state change transitions. Defaults to 'false'."
204
+ "text": "Animate state change transitions. Defaults to 'true'."
205
205
  },
206
206
  "getter": false,
207
207
  "setter": false,
208
208
  "reflect": false,
209
- "defaultValue": "false"
209
+ "defaultValue": "true"
210
210
  },
211
211
  "chevron": {
212
212
  "type": "boolean",
@@ -1 +1 @@
1
- {"version":3,"file":"event-list.js","sourceRoot":"","sources":["../../../src/components/event-list/event-list.tsx"],"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 { Component, Element, h, Host, Prop, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { animate } from 'animejs';\n\n@Component({\n tag: 'ix-event-list',\n styleUrl: 'event-list.scss',\n shadow: true,\n})\nexport class EventList {\n private readonly mutationObserver = createMutationObserver(\n this.onMutation.bind(this)\n );\n\n private static readonly fadeOutDuration = 50;\n private static readonly fadeInDuration = 150;\n\n @Element() hostElement!: HTMLIxEventListElement;\n\n /**\n * Determines the height of list items.\n * This can either be one of two predefined sizes ('S' or 'L') or an absolute pixel value.\n * In case a number is supplied it will get converted to rem internally.\n * Defaults to 'S'.\n */\n @Prop() itemHeight: 'S' | 'L' | number = 'S';\n\n /**\n * Make event-list items more compact\n */\n @Prop() compact = false;\n\n /**\n * Animate state change transitions. Defaults to 'false'.\n */\n @Prop() animated = false;\n\n /**\n * Display a chevron icon in list items. Defaults to 'false'\n */\n @Prop() chevron = false;\n\n @Watch('chevron')\n watchChevron(chevron: boolean | undefined) {\n this.handleChevron(chevron);\n }\n\n componentDidLoad() {\n if (this.animated) {\n this.triggerFadeIn();\n }\n\n if (!Number.isNaN(Number(this.itemHeight))) {\n const height = convertToRemString(this.itemHeight as number);\n this.hostElement\n .querySelectorAll('ix-event-list-item')\n .forEach((item) => {\n this.setCustomHeight(item as HTMLElement, height);\n });\n }\n\n this.handleChevron(this.chevron);\n\n this.mutationObserver.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n }\n\n private onMutation(mutationRecords: Array<MutationRecord>) {\n this.triggerFadeOut().then(() => {\n if (!Number.isNaN(Number(this.itemHeight))) {\n const height = convertToRemString(this.itemHeight as number);\n const eventListItems = this.findEventListItems(mutationRecords);\n eventListItems.forEach((item) => this.setCustomHeight(item, height));\n }\n\n this.handleChevron(this.chevron);\n this.triggerFadeIn();\n });\n }\n\n private findEventListItems(mutationRecords: MutationRecord[]): HTMLElement[] {\n const eventListItems: HTMLElement[] = [];\n\n mutationRecords.forEach((mutation) => {\n if (mutation.type !== 'childList') {\n return;\n }\n\n mutation.addedNodes.forEach((node) => {\n const element = node as HTMLElement;\n\n if (element.tagName === 'IX-EVENT-LIST-ITEM') {\n eventListItems.push(element);\n }\n });\n });\n\n return eventListItems;\n }\n\n private setCustomHeight(item: HTMLElement, height: string) {\n item.style.setProperty('--event-list-item-height', height);\n }\n\n private triggerFadeOut(): Promise<void> {\n return new Promise((resolve) => {\n if (!this.animated) {\n resolve();\n }\n\n const listElement = this.hostElement.shadowRoot!.querySelector('ul');\n\n animate(listElement!, {\n opacity: [{ opacity: 1, easing: 'easeInSine' }, { opacity: 0 }],\n duration: EventList.fadeOutDuration,\n onComplete: () => {\n resolve();\n },\n });\n });\n }\n\n private triggerFadeIn() {\n if (!this.animated) {\n return;\n }\n\n const listItems = this.hostElement.querySelectorAll('ix-event-list-item');\n listItems.forEach((e, i) => {\n const delay = i * 80;\n const offset = delay / (delay + EventList.fadeInDuration);\n animate(e, {\n offset: offset,\n duration: EventList.fadeInDuration + delay,\n opacity: [0, 1],\n easing: 'easeInOutSine',\n delay: delay,\n autoplay: true,\n });\n });\n }\n\n private handleChevron(chevron: boolean | undefined): void {\n const listItems = this.hostElement.querySelectorAll('ix-event-list-item');\n\n listItems.forEach((e) => {\n if (chevron) {\n e.setAttribute('chevron', 'true');\n } else if (chevron !== undefined) {\n e.removeAttribute('chevron');\n }\n });\n }\n\n render() {\n return (\n <Host\n class={{\n 'item-size-s': this.itemHeight === 'S',\n 'item-size-l': this.itemHeight === 'L',\n compact: this.compact,\n }}\n >\n <div role=\"list\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"event-list.js","sourceRoot":"","sources":["../../../src/components/event-list/event-list.tsx"],"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 { Component, Element, h, Host, Prop, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { animate } from 'animejs';\n\n@Component({\n tag: 'ix-event-list',\n styleUrl: 'event-list.scss',\n shadow: true,\n})\nexport class EventList {\n private readonly mutationObserver = createMutationObserver(\n this.onMutation.bind(this)\n );\n\n private static readonly fadeOutDuration = 50;\n private static readonly fadeInDuration = 150;\n\n @Element() hostElement!: HTMLIxEventListElement;\n\n /**\n * Determines the height of list items.\n * This can either be one of two predefined sizes ('S' or 'L') or an absolute pixel value.\n * In case a number is supplied it will get converted to rem internally.\n * Defaults to 'S'.\n */\n @Prop() itemHeight: 'S' | 'L' | number = 'S';\n\n /**\n * Make event-list items more compact\n */\n @Prop() compact = false;\n\n /**\n * Animate state change transitions. Defaults to 'true'.\n */\n @Prop() animated = true;\n\n /**\n * Display a chevron icon in list items. Defaults to 'false'\n */\n @Prop() chevron = false;\n\n @Watch('chevron')\n watchChevron(chevron: boolean | undefined) {\n this.handleChevron(chevron);\n }\n\n componentDidLoad() {\n if (this.animated) {\n this.triggerFadeIn();\n }\n\n if (!Number.isNaN(Number(this.itemHeight))) {\n const height = convertToRemString(this.itemHeight as number);\n this.hostElement\n .querySelectorAll('ix-event-list-item')\n .forEach((item) => {\n this.setCustomHeight(item as HTMLElement, height);\n });\n }\n\n this.handleChevron(this.chevron);\n\n this.mutationObserver.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n }\n\n private onMutation(mutationRecords: Array<MutationRecord>) {\n this.triggerFadeOut().then(() => {\n if (!Number.isNaN(Number(this.itemHeight))) {\n const height = convertToRemString(this.itemHeight as number);\n const eventListItems = this.findEventListItems(mutationRecords);\n eventListItems.forEach((item) => this.setCustomHeight(item, height));\n }\n\n this.handleChevron(this.chevron);\n this.triggerFadeIn();\n });\n }\n\n private findEventListItems(mutationRecords: MutationRecord[]): HTMLElement[] {\n const eventListItems: HTMLElement[] = [];\n\n mutationRecords.forEach((mutation) => {\n if (mutation.type !== 'childList') {\n return;\n }\n\n mutation.addedNodes.forEach((node) => {\n const element = node as HTMLElement;\n\n if (element.tagName === 'IX-EVENT-LIST-ITEM') {\n eventListItems.push(element);\n }\n });\n });\n\n return eventListItems;\n }\n\n private setCustomHeight(item: HTMLElement, height: string) {\n item.style.setProperty('--event-list-item-height', height);\n }\n\n private triggerFadeOut(): Promise<void> {\n return new Promise((resolve) => {\n if (!this.animated) {\n resolve();\n }\n\n const listElement = this.hostElement.shadowRoot!.querySelector('ul');\n\n animate(listElement!, {\n opacity: [{ opacity: 1, easing: 'easeInSine' }, { opacity: 0 }],\n duration: EventList.fadeOutDuration,\n onComplete: () => {\n resolve();\n },\n });\n });\n }\n\n private triggerFadeIn() {\n if (!this.animated) {\n return;\n }\n\n const listItems = this.hostElement.querySelectorAll('ix-event-list-item');\n listItems.forEach((e, i) => {\n const delay = i * 80;\n const offset = delay / (delay + EventList.fadeInDuration);\n animate(e, {\n offset: offset,\n duration: EventList.fadeInDuration + delay,\n opacity: [0, 1],\n easing: 'easeInOutSine',\n delay: delay,\n autoplay: true,\n });\n });\n }\n\n private handleChevron(chevron: boolean | undefined): void {\n const listItems = this.hostElement.querySelectorAll('ix-event-list-item');\n\n listItems.forEach((e) => {\n if (chevron) {\n e.setAttribute('chevron', 'true');\n } else if (chevron !== undefined) {\n e.removeAttribute('chevron');\n }\n });\n }\n\n render() {\n return (\n <Host\n class={{\n 'item-size-s': this.itemHeight === 'S',\n 'item-size-l': this.itemHeight === 'L',\n compact: this.compact,\n }}\n >\n <div role=\"list\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -111,6 +111,7 @@
111
111
  overflow: hidden;
112
112
  text-overflow: ellipsis;
113
113
  white-space: nowrap;
114
+ line-height: 1.5rem;
114
115
  }
115
116
  :host .slot-container :host-context(.disabled) {
116
117
  background-color: var(--theme-color-ghost);
@@ -89,22 +89,10 @@
89
89
  background-color: var(--theme-group-item--background--selected);
90
90
  }
91
91
  :host .group-header:not(.disabled):not(:disabled):focus-visible {
92
- height: calc(4rem - 2px);
93
- min-height: calc(4rem - 2px);
94
92
  border: 1px solid var(--theme-color-focus-bdr);
95
93
  border-radius: var(--theme-default-border-radius) var(--theme-default-border-radius) 0px 0px;
96
94
  outline: none;
97
95
  }
98
- :host .group-header:not(.disabled):not(:disabled):focus-visible .group-header-selection-indicator {
99
- width: calc(0.25rem - 1px);
100
- }
101
- :host .group-header:not(.disabled):not(:disabled):focus-visible .group-header-content {
102
- padding: calc(0.5rem - 1px) calc(0.5rem - 1px) calc(0.5rem - 1px) 0;
103
- }
104
- :host .group-header:not(.disabled):not(:disabled):focus-visible .btn-expand-header {
105
- margin-top: calc(0.5rem - 1px);
106
- margin-bottom: calc(0.5rem - 1px);
107
- }
108
96
  :host .group-header.selected {
109
97
  background-color: var(--theme-group-item--background--selected);
110
98
  }
@@ -17,9 +17,9 @@ export class Group {
17
17
  */
18
18
  this.suppressHeaderSelection = false;
19
19
  /**
20
- * Whether the group is expanded or collapsed. Defaults to false.
20
+ * Whether the group is collapsed or expanded. Defaults to true.
21
21
  */
22
- this.expanded = false;
22
+ this.collapsed = true;
23
23
  /**
24
24
  * Whether the group is selected.
25
25
  */
@@ -51,12 +51,12 @@ export class Group {
51
51
  return (_a = this.hostElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.group-content');
52
52
  }
53
53
  onExpandClick(event) {
54
- const oldExpanded = this.expanded;
55
- this.expanded = !this.expanded;
56
- const { defaultPrevented } = this.expandedChanged.emit(this.expanded);
54
+ const oldCollapsed = this.collapsed;
55
+ this.collapsed = !this.collapsed;
56
+ const { defaultPrevented } = this.collapsedChanged.emit(this.collapsed);
57
57
  event.stopPropagation();
58
58
  if (defaultPrevented) {
59
- this.expanded = oldExpanded;
59
+ this.collapsed = oldCollapsed;
60
60
  }
61
61
  }
62
62
  onHeaderClick(event) {
@@ -137,27 +137,27 @@ export class Group {
137
137
  }
138
138
  }
139
139
  render() {
140
- return (h(Host, { key: '3f0490f98871cd258f1a7735587c5c994787b5f3' }, h("div", { key: '85a820e8677768ac5952862d6860bf67ddddd06b', class: {
140
+ return (h(Host, { key: '58701d250c8e595737fa95f9981e788298e26c2a' }, h("div", { key: '0f754f0be1fe8278e882447cd95f84384b82c467', class: {
141
141
  'group-header': true,
142
- expand: this.expanded,
142
+ expand: !this.collapsed,
143
143
  selected: this.selected,
144
- }, tabindex: "0" }, h("div", { key: 'eb02896f695cf74d19a0c17e732886ba2791cae8', class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { key: '6c361a6e2bb2b9e9614f726c72d943bb540c6e6f', class: {
144
+ }, tabindex: "0" }, h("div", { key: 'b15eddf0aa21c1f392c49974624c4d66f7ca441f', class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { key: '5987826be949fabd86fe4ab2d5da9f6ee92becde', class: {
145
145
  'group-header-selection-indicator': true,
146
146
  'group-header-selection-indicator-item-selected': this.itemSelected,
147
- } }), h("div", { key: '957fddd2512cb0004889bb8627dca06a24172678', class: "btn-expand-header" }, h("ix-icon", { key: '5e6d9f54bd16530b6ee35be0ae2429075574f7af', "data-testid": "expand-collapsed-icon", class: {
147
+ } }), h("div", { key: 'fb364b83a2dff3fcacbd661e6093ce8b975e3930', class: "btn-expand-header" }, h("ix-icon", { key: 'd308f69c7d8e12d34d3442ce9a318a91b67c2033', "data-testid": "expand-collapsed-icon", class: {
148
148
  hidden: !this.showExpandCollapsedIcon,
149
- }, name: this.expanded ? iconChevronUpSmall : iconChevronDownSmall, onClick: (event) => this.onExpandClick(event) })), h("div", { key: '7afbcddcae71944c3d89f4671c52faec405072da', class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { key: '434daedde0c193250cc55ecef24a648427d93521', name: "header" }))), this.hasDropdown && (h("ix-group-context-menu", { key: '4c3e93b8fe830a7d3e40c9560b5821a44e82a076' }, h("slot", { key: '509f13fadad10aa375da8d823692c869031e51c5', name: "dropdown" })))), h("div", { key: '1fbc03459ee2ce55b44f2393898ced6fd8d767ca', class: {
149
+ }, name: this.collapsed ? iconChevronDownSmall : iconChevronUpSmall, onClick: (event) => this.onExpandClick(event) })), h("div", { key: 'c5bad9a9cb3d025b5ea2bf1b85f471687959c69b', class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { key: '2b7b1d241e9a33609d5b28653aaeeb4a51bb64af', name: "header" }))), this.hasDropdown && (h("ix-group-context-menu", { key: 'eb3c896e413299db1b9ce93173b9d926d938e3e1' }, h("slot", { key: '35670588a1f87409787c75fc32d34bfa9355d160', name: "dropdown" })))), h("div", { key: '11254313bc4e541b69f38071c027cdfd0ef735f5', class: {
150
150
  'group-content': true,
151
- } }, h("div", { key: 'e5c7ab27d286eb9a3e56d906cff40009fcd9c317', style: {
152
- display: this.expanded ? 'contents' : 'none',
153
- } }, h("slot", { key: '270b3877b50ad67ad95ef1bf6ac28aa7a6bfc1ae', onSlotchange: () => {
151
+ } }, h("div", { key: '0c24d4903f217ded9c6330b349de13abc77b464b', style: {
152
+ display: this.collapsed ? 'none' : 'contents',
153
+ } }, h("slot", { key: '45e1064fa54bb32ad27ac9f502cb4ec9a38963bf', onSlotchange: () => {
154
154
  var _a;
155
155
  const slot = (_a = this.hostElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot:not([name])');
156
156
  this.showExpandCollapsedIcon = hasSlottedElements(slot);
157
- } }), h("ix-group-item", { key: '1a44451e3855c4e7fa22d1aefa4df34692dc3453', class: {
157
+ } }), h("ix-group-item", { key: '81b3018f3cbafbcaf8c7ec0bad46b538944423b0', suppressSelection: true, focusable: false, class: {
158
158
  footer: true,
159
159
  'footer-visible': this.footerVisible,
160
- }, groupFooter: true, suppressSelection: true }, h("slot", { key: '221292d8be0d15548275e6a24e4f3fcbccd3d2dc', name: "footer", onSlotchange: () => this.onSlotChange() }))))));
160
+ } }, h("slot", { key: 'e39c3a323325c7b6b1a2bc02c3c3fa47ad421a5d', name: "footer", onSlotchange: () => this.onSlotChange() }))))));
161
161
  }
162
162
  static get is() { return "ix-group"; }
163
163
  static get encapsulation() { return "shadow"; }
@@ -231,9 +231,9 @@ export class Group {
231
231
  "setter": false,
232
232
  "reflect": false
233
233
  },
234
- "expanded": {
234
+ "collapsed": {
235
235
  "type": "boolean",
236
- "attribute": "expanded",
236
+ "attribute": "collapsed",
237
237
  "mutable": true,
238
238
  "complexType": {
239
239
  "original": "boolean",
@@ -244,12 +244,12 @@ export class Group {
244
244
  "optional": false,
245
245
  "docs": {
246
246
  "tags": [],
247
- "text": "Whether the group is expanded or collapsed. Defaults to false."
247
+ "text": "Whether the group is collapsed or expanded. Defaults to true."
248
248
  },
249
249
  "getter": false,
250
250
  "setter": false,
251
251
  "reflect": true,
252
- "defaultValue": "false"
252
+ "defaultValue": "true"
253
253
  },
254
254
  "selected": {
255
255
  "type": "boolean",
@@ -353,14 +353,14 @@ export class Group {
353
353
  "references": {}
354
354
  }
355
355
  }, {
356
- "method": "expandedChanged",
357
- "name": "expandedChanged",
356
+ "method": "collapsedChanged",
357
+ "name": "collapsedChanged",
358
358
  "bubbles": true,
359
359
  "cancelable": true,
360
360
  "composed": true,
361
361
  "docs": {
362
362
  "tags": [],
363
- "text": "Group expanded"
363
+ "text": "Group collapsed"
364
364
  },
365
365
  "complexType": {
366
366
  "original": "boolean",
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../../../src/components/group/group.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,OAAO,KAAK;IALlB;QAQE;;WAEG;QACK,4BAAuB,GAAG,KAAK,CAAC;QAYxC;;WAEG;QACqC,aAAQ,GAAG,KAAK,CAAC;QAEzD;;WAEG;QACqC,aAAQ,GAAG,KAAK,CAAC;QAQzD;;WAEG;QACK,wBAAmB,GAAG,KAAK,CAAC;QAiB3B,iBAAY,GAAG,KAAK,CAAC;QACrB,aAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAClC,kBAAa,GAAG,KAAK,CAAC;QAEtB,4BAAuB,GAAG,KAAK,CAAC;QAEhC,gBAAW,GAAG,KAAK,CAAC;QAErB,aAAQ,GAAqB,IAAK,CAAC;KA6N5C;IA1NC,eAAe,CAAC,WAAoB;QAClC,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QACf,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAChE,CAAC;IACJ,CAAC;IAED,IAAI,YAAY;;QACd,OAAO,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAEO,aAAa,CAAC,KAAY;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtE,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAC9B,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,KAAY;QAChC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,qBAAqB,CAAC,YAAqB;QACjD,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1C,MAAM,mBAAmB,GAAG,YAAY,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC;QACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAExE,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC;YACpC,OAAO;QACT,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,KAAc;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QAE1D,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;QAC9B,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAEO,YAAY;;QAClB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CACrD,qBAAqB,CACtB,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC3E,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;YACvC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAGD,aAAa,CAAC,KAAkB;QAC9B,IAAI,KAAK,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAgC,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,4DACE,KAAK,EAAE;oBACL,cAAc,EAAE,IAAI;oBACpB,MAAM,EAAE,IAAI,CAAC,QAAQ;oBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,EACD,QAAQ,EAAC,GAAG;gBAEZ,4DACE,KAAK,EAAC,wBAAwB,EAC9B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;oBAErC,4DACE,KAAK,EAAE;4BACL,kCAAkC,EAAE,IAAI;4BACxC,gDAAgD,EAC9C,IAAI,CAAC,YAAY;yBACpB,GACI;oBACP,4DAAK,KAAK,EAAC,mBAAmB;wBAC5B,+EACc,uBAAuB,EACnC,KAAK,EAAE;gCACL,MAAM,EAAE,CAAC,IAAI,CAAC,uBAAuB;6BACtC,EACD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,EAC/D,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAC3C,CACP;oBAEN,4DAAK,KAAK,EAAC,sBAAsB;wBAC9B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACb,WAAK,KAAK,EAAC,8BAA8B;4BACvC,WAAK,KAAK,EAAC,oBAAoB;gCAC7B,YAAM,KAAK,EAAE,IAAI,CAAC,MAAM,IAAG,IAAI,CAAC,MAAM,CAAQ,CAC1C;4BACN,WAAK,KAAK,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,IAC/C,IAAI,CAAC,SAAS,CACX,CACF,CACP,CAAC,CAAC,CAAC,IAAI;wBACR,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACF;gBACL,IAAI,CAAC,WAAW,IAAI,CACnB;oBACE,6DAAM,IAAI,EAAC,UAAU,GAAQ,CACP,CACzB,CACG;YACN,4DACE,KAAK,EAAE;oBACL,eAAe,EAAE,IAAI;iBACtB;gBAED,4DACE,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;qBAC7C;oBAED,6DACE,YAAY,EAAE,GAAG,EAAE;;4BACjB,MAAM,IAAI,GACR,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CACxC,kBAAkB,CACnB,CAAC;4BACJ,IAAI,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;wBAC1D,CAAC,GACK;oBACR,sEACE,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;4BACZ,gBAAgB,EAAE,IAAI,CAAC,aAAa;yBACrC,EACD,WAAW,QACX,iBAAiB;wBAEjB,6DACE,IAAI,EAAC,QAAQ,EACb,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,GACjC,CACM,CACZ,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","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\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { hasSlottedElements } from '../utils/shadow-dom';\nimport {\n iconChevronDownSmall,\n iconChevronUpSmall,\n} from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-group',\n styleUrl: 'group.scss',\n shadow: true,\n})\nexport class Group {\n @Element() hostElement!: HTMLIxGroupElement;\n\n /**\n * Prevent header from being selectable\n */\n @Prop() suppressHeaderSelection = false;\n\n /**\n * Group header\n */\n @Prop() header?: string;\n\n /**\n * Group header subtitle\n */\n @Prop() subHeader?: string;\n\n /**\n * Whether the group is expanded or collapsed. Defaults to false.\n */\n @Prop({ mutable: true, reflect: true }) expanded = false;\n\n /**\n * Whether the group is selected.\n */\n @Prop({ mutable: true, reflect: true }) selected = false;\n\n /**\n * The index of the selected group entry.\n * If undefined no group item is selected.\n */\n @Prop({ mutable: true, reflect: true }) index?: number;\n\n /**\n * Expand the group if the header is clicked\n */\n @Prop() expandOnHeaderClick = false;\n\n /**\n * Emits when whole group gets selected.\n */\n @Event() selectGroup!: EventEmitter<boolean>;\n\n /**\n * Emits when group item gets selected.\n */\n @Event() selectItem!: EventEmitter<number>;\n\n /**\n * Group expanded\n */\n @Event() expandedChanged!: EventEmitter<boolean>;\n\n @State() itemSelected = false;\n @State() slotSize = this.groupItems.length;\n @State() footerVisible = false;\n\n @State() showExpandCollapsedIcon = false;\n\n @State() hasDropdown = false;\n\n private observer: MutationObserver = null!;\n\n @Watch('selected')\n selectedChanged(newSelected: boolean) {\n if (newSelected === false) {\n this.changeItemIndex();\n }\n }\n\n get dropdownItems() {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-dropdown-item')\n );\n }\n\n get groupItems(): Array<HTMLIxGroupItemElement> {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-item:not(.footer)')\n );\n }\n\n get groupContent() {\n return this.hostElement.shadowRoot?.querySelector('.group-content');\n }\n\n private onExpandClick(event: Event) {\n const oldExpanded = this.expanded;\n this.expanded = !this.expanded;\n const { defaultPrevented } = this.expandedChanged.emit(this.expanded);\n event.stopPropagation();\n\n if (defaultPrevented) {\n this.expanded = oldExpanded;\n }\n }\n\n private onHeaderClick(event: Event) {\n if (this.suppressHeaderSelection) {\n this.onExpandClick(event);\n return;\n }\n\n this.changeHeaderSelection(!this.selected);\n this.changeItemIndex();\n }\n\n private changeHeaderSelection(newSelection: boolean) {\n const oldIsHeaderSelected = this.selected;\n const newIsHeaderSelected = newSelection;\n this.selected = newIsHeaderSelected;\n const { defaultPrevented } = this.selectGroup.emit(newIsHeaderSelected);\n\n if (defaultPrevented) {\n this.selected = oldIsHeaderSelected;\n return;\n }\n }\n\n private changeItemIndex(index?: number) {\n const oldIndex = this.index;\n const newIndex = index === this.index ? undefined : index;\n\n if (this.index === newIndex) {\n return;\n }\n\n this.index = newIndex;\n const { defaultPrevented } = this.selectItem.emit(newIndex);\n if (defaultPrevented) {\n this.index = oldIndex;\n return;\n }\n\n const items = this.groupItems;\n items.forEach((item, i) => {\n item.selected = i === this.index;\n });\n\n this.itemSelected = items.some((item) => item.selected);\n }\n\n private onSlotChange() {\n const slot = this.hostElement.shadowRoot?.querySelector(\n 'slot[name=\"footer\"]'\n );\n\n if (slot) {\n this.footerVisible = hasSlottedElements(slot);\n }\n }\n\n private checkDropdownSlot() {\n this.hasDropdown = !!this.hostElement.querySelector('[slot=\"dropdown\"]');\n }\n\n componentWillRender() {\n this.groupItems.forEach((item, index) => {\n item.selected = index === this.index;\n item.index = index;\n });\n this.checkDropdownSlot();\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver(() => {\n this.slotSize = this.groupItems.length;\n });\n if (!this.groupContent) {\n return;\n }\n this.observer.observe(this.groupContent, {\n childList: true,\n });\n this.checkDropdownSlot();\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n @Listen('selectedChanged')\n onItemClicked(event: CustomEvent) {\n if (event.target instanceof HTMLElement) {\n const item = event.target as HTMLIxGroupItemElement;\n const index = this.groupItems.indexOf(item);\n this.changeItemIndex(index);\n }\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'group-header': true,\n expand: this.expanded,\n selected: this.selected,\n }}\n tabindex=\"0\"\n >\n <div\n class=\"group-header-clickable\"\n onClick={(e) => this.onHeaderClick(e)}\n >\n <div\n class={{\n 'group-header-selection-indicator': true,\n 'group-header-selection-indicator-item-selected':\n this.itemSelected,\n }}\n ></div>\n <div class=\"btn-expand-header\">\n <ix-icon\n data-testid=\"expand-collapsed-icon\"\n class={{\n hidden: !this.showExpandCollapsedIcon,\n }}\n name={this.expanded ? iconChevronUpSmall : iconChevronDownSmall}\n onClick={(event: Event) => this.onExpandClick(event)}\n ></ix-icon>\n </div>\n\n <div class=\"group-header-content\">\n {this.header ? (\n <div class=\"group-header-props-container\">\n <div class=\"group-header-title\">\n <span title={this.header}>{this.header}</span>\n </div>\n <div class=\"group-subheader\" title={this.subHeader}>\n {this.subHeader}\n </div>\n </div>\n ) : null}\n <slot name=\"header\"></slot>\n </div>\n </div>\n {this.hasDropdown && (\n <ix-group-context-menu>\n <slot name=\"dropdown\"></slot>\n </ix-group-context-menu>\n )}\n </div>\n <div\n class={{\n 'group-content': true,\n }}\n >\n <div\n style={{\n display: this.expanded ? 'contents' : 'none',\n }}\n >\n <slot\n onSlotchange={() => {\n const slot =\n this.hostElement.shadowRoot?.querySelector(\n 'slot:not([name])'\n );\n this.showExpandCollapsedIcon = hasSlottedElements(slot);\n }}\n ></slot>\n <ix-group-item\n class={{\n footer: true,\n 'footer-visible': this.footerVisible,\n }}\n groupFooter\n suppressSelection\n >\n <slot\n name=\"footer\"\n onSlotchange={() => this.onSlotChange()}\n ></slot>\n </ix-group-item>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"group.js","sourceRoot":"","sources":["../../../src/components/group/group.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,OAAO,KAAK;IALlB;QAQE;;WAEG;QACK,4BAAuB,GAAG,KAAK,CAAC;QAYxC;;WAEG;QACqC,cAAS,GAAG,IAAI,CAAC;QAEzD;;WAEG;QACqC,aAAQ,GAAG,KAAK,CAAC;QAQzD;;WAEG;QACK,wBAAmB,GAAG,KAAK,CAAC;QAiB3B,iBAAY,GAAG,KAAK,CAAC;QACrB,aAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAClC,kBAAa,GAAG,KAAK,CAAC;QAEtB,4BAAuB,GAAG,KAAK,CAAC;QAEhC,gBAAW,GAAG,KAAK,CAAC;QAErB,aAAQ,GAAqB,IAAK,CAAC;KA+N5C;IA5NC,eAAe,CAAC,WAAoB;QAClC,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QACf,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAChE,CAAC;IACJ,CAAC;IAED,IAAI,YAAY;;QACd,OAAO,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAEO,aAAa,CAAC,KAAY;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxE,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;QAChC,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,KAAY;QAChC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,qBAAqB,CAAC,YAAqB;QACjD,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1C,MAAM,mBAAmB,GAAG,YAAY,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC;QACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAExE,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC;YACpC,OAAO;QACT,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,KAAc;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QAE1D,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;QAC9B,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAEO,YAAY;;QAClB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CACrD,qBAAqB,CACtB,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC3E,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;YACvC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAGD,aAAa,CAAC,KAAkB;QAC9B,IAAI,KAAK,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAgC,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,4DACE,KAAK,EAAE;oBACL,cAAc,EAAE,IAAI;oBACpB,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;oBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,EACD,QAAQ,EAAC,GAAG;gBAEZ,4DACE,KAAK,EAAC,wBAAwB,EAC9B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;oBAErC,4DACE,KAAK,EAAE;4BACL,kCAAkC,EAAE,IAAI;4BACxC,gDAAgD,EAC9C,IAAI,CAAC,YAAY;yBACpB,GACI;oBACP,4DAAK,KAAK,EAAC,mBAAmB;wBAC5B,+EACc,uBAAuB,EACnC,KAAK,EAAE;gCACL,MAAM,EAAE,CAAC,IAAI,CAAC,uBAAuB;6BACtC,EACD,IAAI,EACF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,kBAAkB,EAE5D,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAC3C,CACP;oBAEN,4DAAK,KAAK,EAAC,sBAAsB;wBAC9B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACb,WAAK,KAAK,EAAC,8BAA8B;4BACvC,WAAK,KAAK,EAAC,oBAAoB;gCAC7B,YAAM,KAAK,EAAE,IAAI,CAAC,MAAM,IAAG,IAAI,CAAC,MAAM,CAAQ,CAC1C;4BACN,WAAK,KAAK,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,IAC/C,IAAI,CAAC,SAAS,CACX,CACF,CACP,CAAC,CAAC,CAAC,IAAI;wBACR,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACF;gBACL,IAAI,CAAC,WAAW,IAAI,CACnB;oBACE,6DAAM,IAAI,EAAC,UAAU,GAAQ,CACP,CACzB,CACG;YACN,4DACE,KAAK,EAAE;oBACL,eAAe,EAAE,IAAI;iBACtB;gBAED,4DACE,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;qBAC9C;oBAED,6DACE,YAAY,EAAE,GAAG,EAAE;;4BACjB,MAAM,IAAI,GACR,MAAA,IAAI,CAAC,WAAW,CAAC,UAAU,0CAAE,aAAa,CACxC,kBAAkB,CACnB,CAAC;4BACJ,IAAI,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;wBAC1D,CAAC,GACK;oBACR,sEACE,iBAAiB,EAAE,IAAI,EACvB,SAAS,EAAE,KAAK,EAChB,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;4BACZ,gBAAgB,EAAE,IAAI,CAAC,aAAa;yBACrC;wBAED,6DACE,IAAI,EAAC,QAAQ,EACb,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,GACjC,CACM,CACZ,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","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\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { hasSlottedElements } from '../utils/shadow-dom';\nimport {\n iconChevronDownSmall,\n iconChevronUpSmall,\n} from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-group',\n styleUrl: 'group.scss',\n shadow: true,\n})\nexport class Group {\n @Element() hostElement!: HTMLIxGroupElement;\n\n /**\n * Prevent header from being selectable\n */\n @Prop() suppressHeaderSelection = false;\n\n /**\n * Group header\n */\n @Prop() header?: string;\n\n /**\n * Group header subtitle\n */\n @Prop() subHeader?: string;\n\n /**\n * Whether the group is collapsed or expanded. Defaults to true.\n */\n @Prop({ mutable: true, reflect: true }) collapsed = true;\n\n /**\n * Whether the group is selected.\n */\n @Prop({ mutable: true, reflect: true }) selected = false;\n\n /**\n * The index of the selected group entry.\n * If undefined no group item is selected.\n */\n @Prop({ mutable: true, reflect: true }) index?: number;\n\n /**\n * Expand the group if the header is clicked\n */\n @Prop() expandOnHeaderClick = false;\n\n /**\n * Emits when whole group gets selected.\n */\n @Event() selectGroup!: EventEmitter<boolean>;\n\n /**\n * Emits when group item gets selected.\n */\n @Event() selectItem!: EventEmitter<number>;\n\n /**\n * Group collapsed\n */\n @Event() collapsedChanged!: EventEmitter<boolean>;\n\n @State() itemSelected = false;\n @State() slotSize = this.groupItems.length;\n @State() footerVisible = false;\n\n @State() showExpandCollapsedIcon = false;\n\n @State() hasDropdown = false;\n\n private observer: MutationObserver = null!;\n\n @Watch('selected')\n selectedChanged(newSelected: boolean) {\n if (newSelected === false) {\n this.changeItemIndex();\n }\n }\n\n get dropdownItems() {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-dropdown-item')\n );\n }\n\n get groupItems(): Array<HTMLIxGroupItemElement> {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-item:not(.footer)')\n );\n }\n\n get groupContent() {\n return this.hostElement.shadowRoot?.querySelector('.group-content');\n }\n\n private onExpandClick(event: Event) {\n const oldCollapsed = this.collapsed;\n this.collapsed = !this.collapsed;\n const { defaultPrevented } = this.collapsedChanged.emit(this.collapsed);\n event.stopPropagation();\n\n if (defaultPrevented) {\n this.collapsed = oldCollapsed;\n }\n }\n\n private onHeaderClick(event: Event) {\n if (this.suppressHeaderSelection) {\n this.onExpandClick(event);\n return;\n }\n\n this.changeHeaderSelection(!this.selected);\n this.changeItemIndex();\n }\n\n private changeHeaderSelection(newSelection: boolean) {\n const oldIsHeaderSelected = this.selected;\n const newIsHeaderSelected = newSelection;\n this.selected = newIsHeaderSelected;\n const { defaultPrevented } = this.selectGroup.emit(newIsHeaderSelected);\n\n if (defaultPrevented) {\n this.selected = oldIsHeaderSelected;\n return;\n }\n }\n\n private changeItemIndex(index?: number) {\n const oldIndex = this.index;\n const newIndex = index === this.index ? undefined : index;\n\n if (this.index === newIndex) {\n return;\n }\n\n this.index = newIndex;\n const { defaultPrevented } = this.selectItem.emit(newIndex);\n if (defaultPrevented) {\n this.index = oldIndex;\n return;\n }\n\n const items = this.groupItems;\n items.forEach((item, i) => {\n item.selected = i === this.index;\n });\n\n this.itemSelected = items.some((item) => item.selected);\n }\n\n private onSlotChange() {\n const slot = this.hostElement.shadowRoot?.querySelector(\n 'slot[name=\"footer\"]'\n );\n\n if (slot) {\n this.footerVisible = hasSlottedElements(slot);\n }\n }\n\n private checkDropdownSlot() {\n this.hasDropdown = !!this.hostElement.querySelector('[slot=\"dropdown\"]');\n }\n\n componentWillRender() {\n this.groupItems.forEach((item, index) => {\n item.selected = index === this.index;\n item.index = index;\n });\n this.checkDropdownSlot();\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver(() => {\n this.slotSize = this.groupItems.length;\n });\n if (!this.groupContent) {\n return;\n }\n this.observer.observe(this.groupContent, {\n childList: true,\n });\n this.checkDropdownSlot();\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n @Listen('selectedChanged')\n onItemClicked(event: CustomEvent) {\n if (event.target instanceof HTMLElement) {\n const item = event.target as HTMLIxGroupItemElement;\n const index = this.groupItems.indexOf(item);\n this.changeItemIndex(index);\n }\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'group-header': true,\n expand: !this.collapsed,\n selected: this.selected,\n }}\n tabindex=\"0\"\n >\n <div\n class=\"group-header-clickable\"\n onClick={(e) => this.onHeaderClick(e)}\n >\n <div\n class={{\n 'group-header-selection-indicator': true,\n 'group-header-selection-indicator-item-selected':\n this.itemSelected,\n }}\n ></div>\n <div class=\"btn-expand-header\">\n <ix-icon\n data-testid=\"expand-collapsed-icon\"\n class={{\n hidden: !this.showExpandCollapsedIcon,\n }}\n name={\n this.collapsed ? iconChevronDownSmall : iconChevronUpSmall\n }\n onClick={(event: Event) => this.onExpandClick(event)}\n ></ix-icon>\n </div>\n\n <div class=\"group-header-content\">\n {this.header ? (\n <div class=\"group-header-props-container\">\n <div class=\"group-header-title\">\n <span title={this.header}>{this.header}</span>\n </div>\n <div class=\"group-subheader\" title={this.subHeader}>\n {this.subHeader}\n </div>\n </div>\n ) : null}\n <slot name=\"header\"></slot>\n </div>\n </div>\n {this.hasDropdown && (\n <ix-group-context-menu>\n <slot name=\"dropdown\"></slot>\n </ix-group-context-menu>\n )}\n </div>\n <div\n class={{\n 'group-content': true,\n }}\n >\n <div\n style={{\n display: this.collapsed ? 'none' : 'contents',\n }}\n >\n <slot\n onSlotchange={() => {\n const slot =\n this.hostElement.shadowRoot?.querySelector(\n 'slot:not([name])'\n );\n this.showExpandCollapsedIcon = hasSlottedElements(slot);\n }}\n ></slot>\n <ix-group-item\n suppressSelection={true}\n focusable={false}\n class={{\n footer: true,\n 'footer-visible': this.footerVisible,\n }}\n >\n <slot\n name=\"footer\"\n onSlotchange={() => this.onSlotChange()}\n ></slot>\n </ix-group-item>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}