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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (898) hide show
  1. package/READMEOSS.html +20 -20
  2. package/components/index.js +4 -4
  3. package/components/index.js.map +1 -1
  4. package/components/ix-action-card.js +3 -3
  5. package/components/ix-action-card.js.map +1 -1
  6. package/components/ix-application-header.js +1 -1
  7. package/components/ix-application-switch-modal.js +6 -6
  8. package/components/ix-application.js +2 -2
  9. package/components/ix-avatar.js +1 -1
  10. package/components/ix-basic-navigation.js +7 -7
  11. package/components/ix-blind.js +1 -1
  12. package/components/ix-breadcrumb-item.js +1 -1
  13. package/components/ix-breadcrumb.js +10 -10
  14. package/components/ix-breadcrumb.js.map +1 -1
  15. package/components/ix-button.js +1 -1
  16. package/components/ix-card-list.js +4 -4
  17. package/components/ix-category-filter.js +22 -13
  18. package/components/ix-category-filter.js.map +1 -1
  19. package/components/ix-checkbox-group.js +4 -4
  20. package/components/ix-checkbox.js +1 -1
  21. package/components/ix-chip.js +15 -14
  22. package/components/ix-chip.js.map +1 -1
  23. package/components/ix-content-header.js +3 -3
  24. package/components/ix-custom-field.js +4 -4
  25. package/components/ix-date-dropdown.js +20 -20
  26. package/components/ix-date-dropdown.js.map +1 -1
  27. package/components/ix-date-input.js +14 -14
  28. package/components/ix-date-input.js.map +1 -1
  29. package/components/ix-date-picker.js +1 -1
  30. package/components/ix-date-time-card.js +1 -1
  31. package/components/ix-datetime-picker.js +34 -13
  32. package/components/ix-datetime-picker.js.map +1 -1
  33. package/components/ix-drawer.js +7 -8
  34. package/components/ix-drawer.js.map +1 -1
  35. package/components/ix-dropdown-button.js +4 -4
  36. package/components/ix-dropdown-header.js +1 -1
  37. package/components/ix-dropdown.js +1 -1
  38. package/components/ix-empty-state.js +3 -3
  39. package/components/ix-event-list.js +4 -4
  40. package/components/ix-event-list.js.map +1 -1
  41. package/components/ix-expanding-search.js +2 -2
  42. package/components/ix-field-label.js +1 -1
  43. package/components/ix-field-wrapper.js +1 -1
  44. package/components/ix-filter-chip.js +1 -1
  45. package/components/ix-flip-tile.js +2 -2
  46. package/components/ix-group-context-menu.js +1 -1
  47. package/components/ix-group-item.js +1 -1
  48. package/components/ix-group.js +24 -24
  49. package/components/ix-group.js.map +1 -1
  50. package/components/ix-helper-text.js +2 -2
  51. package/components/ix-icon-button.js +1 -1
  52. package/components/ix-icon-toggle-button.js +2 -2
  53. package/components/ix-input-group.d.ts +11 -0
  54. package/components/ix-input-group.js +154 -0
  55. package/components/ix-input-group.js.map +1 -0
  56. package/components/ix-input.js +11 -11
  57. package/components/ix-input.js.map +1 -1
  58. package/components/ix-key-value-list.js +1 -1
  59. package/components/ix-key-value.js +1 -1
  60. package/components/ix-kpi.js +3 -3
  61. package/components/ix-layout-auto.js +1 -1
  62. package/components/ix-layout-grid.js +1 -1
  63. package/components/ix-link-button.js +3 -3
  64. package/components/ix-map-navigation-overlay.js +1 -1
  65. package/components/ix-map-navigation.js +9 -10
  66. package/components/ix-map-navigation.js.map +1 -1
  67. package/components/ix-menu-about-item.js +1 -1
  68. package/components/ix-menu-about-news.js +8 -8
  69. package/components/ix-menu-about.js +3 -3
  70. package/components/ix-menu-avatar-item.js +1 -1
  71. package/components/ix-menu-avatar.js +11 -11
  72. package/components/ix-menu-avatar.js.map +1 -1
  73. package/components/ix-menu-category.js +9 -9
  74. package/components/ix-menu-expand-icon.js +1 -1
  75. package/components/ix-menu-item.js +1 -1
  76. package/components/ix-menu-settings-item.js +1 -1
  77. package/components/ix-menu-settings.js +1 -1
  78. package/components/ix-menu.js +26 -21
  79. package/components/ix-menu.js.map +1 -1
  80. package/components/ix-message-bar.js +11 -8
  81. package/components/ix-message-bar.js.map +1 -1
  82. package/components/ix-modal-content.js +1 -1
  83. package/components/ix-modal-footer.js +1 -1
  84. package/components/ix-modal-header.js +1 -1
  85. package/components/ix-modal-loading.js +2 -2
  86. package/components/ix-modal.js +17 -17
  87. package/components/ix-modal.js.map +1 -1
  88. package/components/ix-number-input.js +12 -12
  89. package/components/ix-pagination.js +15 -15
  90. package/components/ix-pagination.js.map +1 -1
  91. package/components/ix-pane-layout.js +1 -1
  92. package/components/ix-pane.js +4 -4
  93. package/components/ix-pill.js +3 -3
  94. package/components/ix-pill.js.map +1 -1
  95. package/components/ix-progress-indicator.js +2 -2
  96. package/components/ix-push-card.js +5 -5
  97. package/components/ix-push-card.js.map +1 -1
  98. package/components/ix-radio-group.js +4 -4
  99. package/components/ix-radio.js +1 -1
  100. package/components/ix-select.js +1 -1
  101. package/components/ix-slider.js +2 -2
  102. package/components/ix-spinner.js +1 -1
  103. package/components/ix-split-button.js +4 -4
  104. package/components/ix-textarea.js +6 -6
  105. package/components/ix-time-input.js +20 -13
  106. package/components/ix-time-input.js.map +1 -1
  107. package/components/ix-time-picker.js +1 -1
  108. package/components/ix-toast-container.js +9 -9
  109. package/components/ix-toast-container.js.map +1 -1
  110. package/components/ix-toast.js +1 -1
  111. package/components/ix-toggle-button.js +1 -1
  112. package/components/ix-toggle.js +5 -5
  113. package/components/ix-toggle.js.map +1 -1
  114. package/components/ix-tooltip.js +1 -1
  115. package/components/ix-tree-item.js +1 -1
  116. package/components/ix-tree.js +2 -2
  117. package/components/ix-typography.js +1 -1
  118. package/components/ix-upload.js +5 -5
  119. package/components/ix-validation-tooltip.d.ts +11 -0
  120. package/components/ix-validation-tooltip.js +184 -0
  121. package/components/ix-validation-tooltip.js.map +1 -0
  122. package/components/ix-workflow-step.js +5 -4
  123. package/components/ix-workflow-step.js.map +1 -1
  124. package/components/ix-workflow-steps.js +1 -1
  125. package/components/{p-DklPCkRW.js → p-8MS-omi7.js} +3 -3
  126. package/components/{p-DklPCkRW.js.map → p-8MS-omi7.js.map} +1 -1
  127. package/components/{p-7-Wnr7e5.js → p-BFuOBAQB.js} +12 -6
  128. package/components/p-BFuOBAQB.js.map +1 -0
  129. package/components/{p-Baga5bu5.js → p-BSiqAMAr.js} +6 -6
  130. package/components/{p-Baga5bu5.js.map → p-BSiqAMAr.js.map} +1 -1
  131. package/components/{p-DE74-VWH.js → p-BYRT3Z1w.js} +12 -11
  132. package/components/p-BYRT3Z1w.js.map +1 -0
  133. package/components/{p-ts3VxLYi.js → p-BYvKfy9G.js} +6 -6
  134. package/components/{p-ts3VxLYi.js.map → p-BYvKfy9G.js.map} +1 -1
  135. package/components/{p-DOGuJxKg.js → p-BnT1mAuX.js} +6 -6
  136. package/components/{p-DOGuJxKg.js.map → p-BnT1mAuX.js.map} +1 -1
  137. package/components/{p-C8wXJCK3.js → p-BrKwrb_Z.js} +4 -4
  138. package/components/{p-C8wXJCK3.js.map → p-BrKwrb_Z.js.map} +1 -1
  139. package/components/{p-C4MK63gz.js → p-BrgHqrnH.js} +3 -3
  140. package/components/{p-C4MK63gz.js.map → p-BrgHqrnH.js.map} +1 -1
  141. package/components/{p-DaR6pX8w.js → p-C-7UhkWz.js} +8 -8
  142. package/components/{p-DaR6pX8w.js.map → p-C-7UhkWz.js.map} +1 -1
  143. package/components/{p-D3ZlTDAF.js → p-C3irznVN.js} +3 -3
  144. package/components/{p-D3ZlTDAF.js.map → p-C3irznVN.js.map} +1 -1
  145. package/components/{p-CiSM2A9Q.js → p-CAqtPJ4-.js} +3 -102
  146. package/components/p-CAqtPJ4-.js.map +1 -0
  147. package/components/p-CFRrPFxi.js +103 -0
  148. package/components/p-CFRrPFxi.js.map +1 -0
  149. package/components/{p-BmLRwuMH.js → p-CGPMGyof.js} +6 -5
  150. package/components/p-CGPMGyof.js.map +1 -0
  151. package/components/{p-DlNAQJQO.js → p-CMNpJTDF.js} +3 -3
  152. package/components/{p-DlNAQJQO.js.map → p-CMNpJTDF.js.map} +1 -1
  153. package/components/{p-uiKHewyI.js → p-CMk-tLmg.js} +4 -4
  154. package/components/{p-uiKHewyI.js.map → p-CMk-tLmg.js.map} +1 -1
  155. package/components/{p-CCyj6Nhd.js → p-CO2zhw6V.js} +3 -3
  156. package/components/{p-CCyj6Nhd.js.map → p-CO2zhw6V.js.map} +1 -1
  157. package/components/{p-BruPthTZ.js → p-CbQqqTKK.js} +71 -17
  158. package/components/p-CbQqqTKK.js.map +1 -0
  159. package/components/{p-w319yPRv.js → p-Cl420PSP.js} +6 -6
  160. package/components/{p-w319yPRv.js.map → p-Cl420PSP.js.map} +1 -1
  161. package/components/{p-C9yPT68I.js → p-CsHYWHE6.js} +25 -37
  162. package/components/p-CsHYWHE6.js.map +1 -0
  163. package/components/p-Ctze1Bh6.js +64 -0
  164. package/components/p-Ctze1Bh6.js.map +1 -0
  165. package/components/{p-BU9xngEb.js → p-CyJWaxhg.js} +9 -9
  166. package/components/{p-BU9xngEb.js.map → p-CyJWaxhg.js.map} +1 -1
  167. package/components/{p-gkooEHol.js → p-CzzcLSmV.js} +4 -4
  168. package/components/p-CzzcLSmV.js.map +1 -0
  169. package/components/{p-Cx5H0GeI.js → p-D5QNBS-J.js} +18 -21
  170. package/components/p-D5QNBS-J.js.map +1 -0
  171. package/components/{p-bBkFZC8X.js → p-D99ntB9D.js} +4 -4
  172. package/components/{p-bBkFZC8X.js.map → p-D99ntB9D.js.map} +1 -1
  173. package/components/{p-BLcKiU45.js → p-DAWZ76L0.js} +4 -4
  174. package/components/{p-BLcKiU45.js.map → p-DAWZ76L0.js.map} +1 -1
  175. package/components/{p-Ba6JlSP8.js → p-DRlGkOeX.js} +5 -5
  176. package/components/{p-Ba6JlSP8.js.map → p-DRlGkOeX.js.map} +1 -1
  177. package/components/{p-DSF854K6.js → p-DZNnQyWO.js} +4 -3
  178. package/components/p-DZNnQyWO.js.map +1 -0
  179. package/components/{p-DLcItN6d.js → p-DmTyQW2E.js} +5 -5
  180. package/components/p-DmTyQW2E.js.map +1 -0
  181. package/components/{p-Bc15ecXv.js → p-DyW_A5Tq.js} +13 -13
  182. package/components/p-DyW_A5Tq.js.map +1 -0
  183. package/components/{p-4dm0FrTr.js → p-FnN74Elm.js} +4 -3
  184. package/components/p-FnN74Elm.js.map +1 -0
  185. package/components/{p-CfOUCcs9.js → p-GkRC08qs.js} +3 -3
  186. package/components/{p-CfOUCcs9.js.map → p-GkRC08qs.js.map} +1 -1
  187. package/components/p-fef9-zXA.js +56 -0
  188. package/components/{p-R9YNQy08.js.map → p-fef9-zXA.js.map} +1 -1
  189. package/components/{p-BNYHD56q.js → p-j4BMT-Rr.js} +25 -25
  190. package/components/p-j4BMT-Rr.js.map +1 -0
  191. package/components/{p-Fbu6eUjk.js → p-s3E9saxz.js} +5 -5
  192. package/components/{p-Fbu6eUjk.js.map → p-s3E9saxz.js.map} +1 -1
  193. package/components/p-taILGXkr.js.map +1 -1
  194. package/dist/cjs/find-element-D7yD1Ukn.js +106 -0
  195. package/dist/cjs/find-element-D7yD1Ukn.js.map +1 -0
  196. package/dist/cjs/{find-element-BNZJcvT8.js → floating-ui.dom-CMzYsRR7.js} +2 -103
  197. package/dist/cjs/floating-ui.dom-CMzYsRR7.js.map +1 -0
  198. package/dist/cjs/{index-BJkiBUu0.js → index-B7AMgiIZ.js} +3 -3
  199. package/dist/cjs/{index-BJkiBUu0.js.map → index-B7AMgiIZ.js.map} +1 -1
  200. package/dist/cjs/index-DuDLgBnw.js +8 -0
  201. package/dist/cjs/index-Dyz3z1FD.js.map +1 -1
  202. package/dist/cjs/index.cjs.js +3 -3
  203. package/dist/cjs/index.cjs.js.map +1 -1
  204. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  205. package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
  206. package/dist/cjs/ix-application-header.cjs.entry.js +3 -3
  207. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
  208. package/dist/cjs/ix-application.cjs.entry.js +2 -2
  209. package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
  210. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  211. package/dist/cjs/ix-basic-navigation.cjs.entry.js +1 -1
  212. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +7 -7
  213. package/dist/cjs/ix-breadcrumb-item.entry.cjs.js.map +1 -1
  214. package/dist/cjs/ix-breadcrumb.cjs.entry.js +6 -6
  215. package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
  216. package/dist/cjs/ix-category-filter.cjs.entry.js +16 -8
  217. package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
  218. package/dist/cjs/ix-chip.cjs.entry.js +10 -9
  219. package/dist/cjs/ix-chip.entry.cjs.js.map +1 -1
  220. package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
  221. package/dist/cjs/ix-col_4.cjs.entry.js +18 -18
  222. package/dist/cjs/ix-date-dropdown.cjs.entry.js +11 -11
  223. package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
  224. package/dist/cjs/ix-date-input.cjs.entry.js +4 -4
  225. package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
  226. package/dist/cjs/ix-date-time-card.cjs.entry.js +8 -3
  227. package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
  228. package/dist/cjs/ix-datetime-picker.cjs.entry.js +21 -3
  229. package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
  230. package/dist/cjs/ix-drawer.cjs.entry.js +5 -6
  231. package/dist/cjs/ix-drawer.entry.cjs.js.map +1 -1
  232. package/dist/cjs/ix-dropdown.cjs.entry.js +8 -7
  233. package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
  234. package/dist/cjs/ix-event-list.cjs.entry.js +4 -4
  235. package/dist/cjs/ix-event-list.entry.cjs.js.map +1 -1
  236. package/dist/cjs/ix-filter-chip.ix-select-item.entry.cjs.js.map +1 -1
  237. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +1 -1
  238. package/dist/cjs/ix-group-context-menu.ix-group-item.entry.cjs.js.map +1 -1
  239. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +5 -18
  240. package/dist/cjs/ix-group.cjs.entry.js +18 -18
  241. package/dist/cjs/ix-group.entry.cjs.js.map +1 -1
  242. package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
  243. package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
  244. package/dist/cjs/ix-icon-button_2.cjs.entry.js +2 -2
  245. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  246. package/dist/cjs/ix-input-group.cjs.entry.js +130 -0
  247. package/dist/cjs/ix-input-group.entry.cjs.js.map +1 -0
  248. package/dist/cjs/ix-input.cjs.entry.js +5 -5
  249. package/dist/cjs/ix-input.entry.cjs.js.map +1 -1
  250. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  251. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  252. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  253. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  254. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  255. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  256. package/dist/cjs/ix-map-navigation.cjs.entry.js +2 -3
  257. package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
  258. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  259. package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
  260. package/dist/cjs/ix-menu-avatar.cjs.entry.js +4 -4
  261. package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
  262. package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
  263. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  264. package/dist/cjs/ix-menu-item.cjs.entry.js +4 -4
  265. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  266. package/dist/cjs/ix-menu.cjs.entry.js +20 -16
  267. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  268. package/dist/cjs/ix-message-bar.cjs.entry.js +8 -5
  269. package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
  270. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  271. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  272. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  273. package/dist/cjs/ix-modal.cjs.entry.js +14 -14
  274. package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
  275. package/dist/cjs/ix-number-input.cjs.entry.js +6 -6
  276. package/dist/cjs/ix-pagination.cjs.entry.js +5 -5
  277. package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
  278. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  279. package/dist/cjs/ix-pane.cjs.entry.js +1 -1
  280. package/dist/cjs/ix-pill.cjs.entry.js +1 -1
  281. package/dist/cjs/ix-pill.entry.cjs.js.map +1 -1
  282. package/dist/cjs/ix-push-card.cjs.entry.js +3 -3
  283. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  284. package/dist/cjs/ix-select.cjs.entry.js +8 -11
  285. package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
  286. package/dist/cjs/ix-textarea.cjs.entry.js +2 -2
  287. package/dist/cjs/ix-time-input.cjs.entry.js +9 -3
  288. package/dist/cjs/ix-time-input.entry.cjs.js.map +1 -1
  289. package/dist/cjs/ix-time-picker.cjs.entry.js +58 -10
  290. package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
  291. package/dist/cjs/ix-toast-container.cjs.entry.js +5 -5
  292. package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
  293. package/dist/cjs/ix-toast.cjs.entry.js +6 -5
  294. package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
  295. package/dist/cjs/ix-toggle.cjs.entry.js +4 -4
  296. package/dist/cjs/ix-toggle.entry.cjs.js.map +1 -1
  297. package/dist/cjs/ix-tooltip.cjs.entry.js +10 -9
  298. package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
  299. package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
  300. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  301. package/dist/cjs/ix-typography.cjs.entry.js +1 -1
  302. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  303. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +155 -0
  304. package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +1 -0
  305. package/dist/cjs/ix-workflow-step.cjs.entry.js +5 -4
  306. package/dist/cjs/ix-workflow-step.entry.cjs.js.map +1 -1
  307. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  308. package/dist/cjs/loader.cjs.js +1 -1
  309. package/dist/cjs/{modal-BdSf3C6f.js → modal-CsEGB0kd.js} +4 -3
  310. package/dist/cjs/modal-CsEGB0kd.js.map +1 -0
  311. package/dist/cjs/{service-DuiJmf7R.js → service-FGbUpQQM.js} +4 -4
  312. package/dist/cjs/service-FGbUpQQM.js.map +1 -0
  313. package/dist/cjs/siemens-ix.cjs.js +1 -1
  314. package/dist/cjs/{theme-switcher-Do9dkNUv.js → theme-switcher-76Td30il.js} +25 -37
  315. package/dist/cjs/theme-switcher-76Td30il.js.map +1 -0
  316. package/dist/collection/collection-manifest.json +2 -0
  317. package/dist/collection/components/action-card/action-card.js +2 -2
  318. package/dist/collection/components/action-card/action-card.js.map +1 -1
  319. package/dist/collection/components/avatar/avatar.js +1 -1
  320. package/dist/collection/components/avatar/avatar.js.map +1 -1
  321. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -9
  322. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  323. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +16 -16
  324. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  325. package/dist/collection/components/category-filter/category-filter.js +43 -12
  326. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  327. package/dist/collection/components/chip/chip.css +1 -1
  328. package/dist/collection/components/chip/chip.js +13 -12
  329. package/dist/collection/components/chip/chip.js.map +1 -1
  330. package/dist/collection/components/date-dropdown/date-dropdown.js +19 -19
  331. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  332. package/dist/collection/components/date-input/date-input.js +5 -5
  333. package/dist/collection/components/date-input/date-input.js.map +1 -1
  334. package/dist/collection/components/date-picker/date-picker-component.js.map +1 -1
  335. package/dist/collection/components/date-picker/date-picker.js +31 -26
  336. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  337. package/dist/collection/components/date-time-card/date-time-card.js +30 -5
  338. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  339. package/dist/collection/components/datetime-picker/datetime-picker.js +94 -7
  340. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  341. package/dist/collection/components/drawer/drawer.js +5 -6
  342. package/dist/collection/components/drawer/drawer.js.map +1 -1
  343. package/dist/collection/components/event-list/event-list.js +6 -6
  344. package/dist/collection/components/event-list/event-list.js.map +1 -1
  345. package/dist/collection/components/filter-chip/filter-chip.css +1 -0
  346. package/dist/collection/components/group/group.css +0 -12
  347. package/dist/collection/components/group/group.js +23 -23
  348. package/dist/collection/components/group/group.js.map +1 -1
  349. package/dist/collection/components/group-item/group-item.css +6 -22
  350. package/dist/collection/components/group-item/group-item.js +8 -44
  351. package/dist/collection/components/group-item/group-item.js.map +1 -1
  352. package/dist/collection/components/helper-text/helper-text.js +1 -1
  353. package/dist/collection/components/icon-button/icon-button.js +2 -2
  354. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  355. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  356. package/dist/collection/components/input/input.js +5 -5
  357. package/dist/collection/components/input/input.js.map +1 -1
  358. package/dist/collection/components/input/number-input.js +6 -6
  359. package/dist/collection/components/input/textarea.js +2 -2
  360. package/dist/collection/components/input-group/input-group.css +115 -0
  361. package/dist/collection/components/input-group/input-group.js +152 -0
  362. package/dist/collection/components/input-group/input-group.js.map +1 -0
  363. package/dist/collection/components/key-value/key-value.js +1 -1
  364. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  365. package/dist/collection/components/kpi/kpi.js +3 -3
  366. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  367. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  368. package/dist/collection/components/link-button/link-button.js +3 -3
  369. package/dist/collection/components/map-navigation/map-navigation.js +2 -3
  370. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  371. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  372. package/dist/collection/components/menu/menu-expand-icon.js +1 -1
  373. package/dist/collection/components/menu/menu.js +36 -12
  374. package/dist/collection/components/menu/menu.js.map +1 -1
  375. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  376. package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
  377. package/dist/collection/components/menu-avatar/menu-avatar.js +7 -7
  378. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  379. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  380. package/dist/collection/components/menu-category/menu-category.js +5 -5
  381. package/dist/collection/components/menu-item/menu-item.js +4 -4
  382. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  383. package/dist/collection/components/message-bar/message-bar.js +18 -12
  384. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  385. package/dist/collection/components/modal/modal.css +1 -1
  386. package/dist/collection/components/modal/modal.js +29 -29
  387. package/dist/collection/components/modal/modal.js.map +1 -1
  388. package/dist/collection/components/modal-content/modal-content.js +1 -1
  389. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  390. package/dist/collection/components/modal-header/modal-header.js +1 -1
  391. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  392. package/dist/collection/components/pagination/pagination.js +9 -9
  393. package/dist/collection/components/pagination/pagination.js.map +1 -1
  394. package/dist/collection/components/pill/pill.css +1 -1
  395. package/dist/collection/components/push-card/push-card.js +7 -7
  396. package/dist/collection/components/push-card/push-card.js.map +1 -1
  397. package/dist/collection/components/select/select.js +8 -11
  398. package/dist/collection/components/select/select.js.map +1 -1
  399. package/dist/collection/components/spinner/spinner.css +5 -5
  400. package/dist/collection/components/time-input/time-input.js +32 -3
  401. package/dist/collection/components/time-input/time-input.js.map +1 -1
  402. package/dist/collection/components/time-picker/time-picker.js +199 -14
  403. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  404. package/dist/collection/components/toast/toast-container.js +5 -5
  405. package/dist/collection/components/toast/toast-container.js.map +1 -1
  406. package/dist/collection/components/toast/toast.js +9 -8
  407. package/dist/collection/components/toast/toast.js.map +1 -1
  408. package/dist/collection/components/toggle/toggle.css +227 -0
  409. package/dist/collection/components/toggle/toggle.js +3 -3
  410. package/dist/collection/components/tooltip/tooltip.js +1 -1
  411. package/dist/collection/components/tree/tree.js +1 -1
  412. package/dist/collection/components/tree-item/tree-item.js +4 -4
  413. package/dist/collection/components/typography/typography.js +1 -1
  414. package/dist/collection/components/upload/upload.js +3 -3
  415. package/dist/collection/components/utils/application-layout/service.js +2 -2
  416. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  417. package/dist/collection/components/utils/modal/loading.js +1 -1
  418. package/dist/collection/components/utils/modal/loading.js.map +1 -1
  419. package/dist/collection/components/utils/modal/message.js +2 -1
  420. package/dist/collection/components/utils/modal/message.js.map +1 -1
  421. package/dist/collection/components/utils/notification-color.js.map +1 -1
  422. package/dist/collection/components/utils/theme-switcher.js +23 -35
  423. package/dist/collection/components/utils/theme-switcher.js.map +1 -1
  424. package/dist/collection/components/validation-tooltip/validation-tooltip.css +225 -0
  425. package/dist/collection/components/validation-tooltip/validation-tooltip.js +250 -0
  426. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -0
  427. package/dist/collection/components/workflow-step/workflow-step.js +5 -4
  428. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  429. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  430. package/dist/collection/tests/utils/test/page.js +2 -2
  431. package/dist/collection/tests/utils/test/page.js.map +1 -1
  432. package/dist/esm/find-element-CFRrPFxi.js +103 -0
  433. package/dist/esm/find-element-CFRrPFxi.js.map +1 -0
  434. package/dist/esm/{find-element-CiSM2A9Q.js → floating-ui.dom-CAqtPJ4-.js} +3 -102
  435. package/dist/esm/floating-ui.dom-CAqtPJ4-.js.map +1 -0
  436. package/dist/esm/{index-D4tQ_iTq.js → index--ZIr3Aqz.js} +3 -3
  437. package/dist/esm/{index-D4tQ_iTq.js.map → index--ZIr3Aqz.js.map} +1 -1
  438. package/dist/esm/index-Cz75KU1f.js.map +1 -1
  439. package/dist/esm/index-DGODjp4O.js +8 -0
  440. package/dist/esm/index.js +4 -4
  441. package/dist/esm/index.js.map +1 -1
  442. package/dist/esm/ix-action-card.entry.js +2 -2
  443. package/dist/esm/ix-action-card.entry.js.map +1 -1
  444. package/dist/esm/ix-application-header.entry.js +3 -3
  445. package/dist/esm/ix-application-switch-modal.entry.js +1 -1
  446. package/dist/esm/ix-application.entry.js +2 -2
  447. package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
  448. package/dist/esm/ix-avatar_2.entry.js +1 -1
  449. package/dist/esm/ix-basic-navigation.entry.js +1 -1
  450. package/dist/esm/ix-breadcrumb-item.entry.js +7 -7
  451. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  452. package/dist/esm/ix-breadcrumb.entry.js +6 -6
  453. package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
  454. package/dist/esm/ix-category-filter.entry.js +16 -8
  455. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  456. package/dist/esm/ix-chip.entry.js +10 -9
  457. package/dist/esm/ix-chip.entry.js.map +1 -1
  458. package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
  459. package/dist/esm/ix-col_4.entry.js +18 -18
  460. package/dist/esm/ix-date-dropdown.entry.js +11 -11
  461. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  462. package/dist/esm/ix-date-input.entry.js +4 -4
  463. package/dist/esm/ix-date-input.entry.js.map +1 -1
  464. package/dist/esm/ix-date-time-card.entry.js +8 -3
  465. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  466. package/dist/esm/ix-datetime-picker.entry.js +21 -3
  467. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  468. package/dist/esm/ix-drawer.entry.js +5 -6
  469. package/dist/esm/ix-drawer.entry.js.map +1 -1
  470. package/dist/esm/ix-dropdown.entry.js +2 -1
  471. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  472. package/dist/esm/ix-event-list.entry.js +4 -4
  473. package/dist/esm/ix-event-list.entry.js.map +1 -1
  474. package/dist/esm/ix-filter-chip.ix-select-item.entry.js.map +1 -1
  475. package/dist/esm/ix-filter-chip_2.entry.js +1 -1
  476. package/dist/esm/ix-group-context-menu.ix-group-item.entry.js.map +1 -1
  477. package/dist/esm/ix-group-context-menu_2.entry.js +5 -18
  478. package/dist/esm/ix-group.entry.js +19 -19
  479. package/dist/esm/ix-group.entry.js.map +1 -1
  480. package/dist/esm/ix-helper-text.entry.js +1 -1
  481. package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
  482. package/dist/esm/ix-icon-button_2.entry.js +2 -2
  483. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  484. package/dist/esm/ix-input-group.entry.js +128 -0
  485. package/dist/esm/ix-input-group.entry.js.map +1 -0
  486. package/dist/esm/ix-input.entry.js +5 -5
  487. package/dist/esm/ix-input.entry.js.map +1 -1
  488. package/dist/esm/ix-key-value-list.entry.js +1 -1
  489. package/dist/esm/ix-key-value.entry.js +1 -1
  490. package/dist/esm/ix-kpi.entry.js +3 -3
  491. package/dist/esm/ix-layout-auto.entry.js +1 -1
  492. package/dist/esm/ix-link-button.entry.js +3 -3
  493. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  494. package/dist/esm/ix-map-navigation.entry.js +2 -3
  495. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  496. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  497. package/dist/esm/ix-menu-about-news.entry.js +4 -4
  498. package/dist/esm/ix-menu-avatar.entry.js +4 -4
  499. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  500. package/dist/esm/ix-menu-category.entry.js +5 -5
  501. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  502. package/dist/esm/ix-menu-item.entry.js +4 -4
  503. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  504. package/dist/esm/ix-menu.entry.js +20 -16
  505. package/dist/esm/ix-menu.entry.js.map +1 -1
  506. package/dist/esm/ix-message-bar.entry.js +8 -5
  507. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  508. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  509. package/dist/esm/ix-modal-footer.entry.js +1 -1
  510. package/dist/esm/ix-modal-loading.entry.js +1 -1
  511. package/dist/esm/ix-modal.entry.js +14 -14
  512. package/dist/esm/ix-modal.entry.js.map +1 -1
  513. package/dist/esm/ix-number-input.entry.js +6 -6
  514. package/dist/esm/ix-pagination.entry.js +5 -5
  515. package/dist/esm/ix-pagination.entry.js.map +1 -1
  516. package/dist/esm/ix-pane-layout.entry.js +1 -1
  517. package/dist/esm/ix-pane.entry.js +1 -1
  518. package/dist/esm/ix-pill.entry.js +1 -1
  519. package/dist/esm/ix-pill.entry.js.map +1 -1
  520. package/dist/esm/ix-push-card.entry.js +3 -3
  521. package/dist/esm/ix-push-card.entry.js.map +1 -1
  522. package/dist/esm/ix-select.entry.js +8 -11
  523. package/dist/esm/ix-select.entry.js.map +1 -1
  524. package/dist/esm/ix-textarea.entry.js +2 -2
  525. package/dist/esm/ix-time-input.entry.js +9 -3
  526. package/dist/esm/ix-time-input.entry.js.map +1 -1
  527. package/dist/esm/ix-time-picker.entry.js +58 -10
  528. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  529. package/dist/esm/ix-toast-container.entry.js +5 -5
  530. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  531. package/dist/esm/ix-toast.entry.js +6 -5
  532. package/dist/esm/ix-toast.entry.js.map +1 -1
  533. package/dist/esm/ix-toggle.entry.js +4 -4
  534. package/dist/esm/ix-toggle.entry.js.map +1 -1
  535. package/dist/esm/ix-tooltip.entry.js +3 -2
  536. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  537. package/dist/esm/ix-tree-item.entry.js +4 -4
  538. package/dist/esm/ix-tree.entry.js +1 -1
  539. package/dist/esm/ix-typography.entry.js +1 -1
  540. package/dist/esm/ix-upload.entry.js +3 -3
  541. package/dist/esm/ix-validation-tooltip.entry.js +153 -0
  542. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -0
  543. package/dist/esm/ix-workflow-step.entry.js +5 -4
  544. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  545. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  546. package/dist/esm/loader.js +1 -1
  547. package/dist/esm/{modal-BQcyFJfE.js → modal-D9BaTrTa.js} +4 -3
  548. package/dist/esm/modal-D9BaTrTa.js.map +1 -0
  549. package/dist/esm/{service-Da0kv8hS.js → service-ktcE7NzB.js} +4 -4
  550. package/dist/esm/service-ktcE7NzB.js.map +1 -0
  551. package/dist/esm/siemens-ix.js +1 -1
  552. package/dist/esm/{theme-switcher-Bg6wsOIn.js → theme-switcher-DRqJGlG2.js} +25 -37
  553. package/dist/esm/theme-switcher-DRqJGlG2.js.map +1 -0
  554. package/dist/siemens-ix/index.esm.js +1 -1
  555. package/dist/siemens-ix/index.esm.js.map +1 -1
  556. package/dist/siemens-ix/ix-action-card.entry.esm.js.map +1 -1
  557. package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
  558. package/dist/siemens-ix/ix-breadcrumb-item.entry.esm.js.map +1 -1
  559. package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
  560. package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
  561. package/dist/siemens-ix/ix-chip.entry.esm.js.map +1 -1
  562. package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
  563. package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
  564. package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
  565. package/dist/siemens-ix/ix-date-time-card.entry.esm.js.map +1 -1
  566. package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
  567. package/dist/siemens-ix/ix-drawer.entry.esm.js.map +1 -1
  568. package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
  569. package/dist/siemens-ix/ix-event-list.entry.esm.js.map +1 -1
  570. package/dist/siemens-ix/ix-filter-chip.ix-select-item.entry.esm.js.map +1 -1
  571. package/dist/siemens-ix/ix-group-context-menu.ix-group-item.entry.esm.js.map +1 -1
  572. package/dist/siemens-ix/ix-group.entry.esm.js.map +1 -1
  573. package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
  574. package/dist/siemens-ix/ix-input-group.entry.esm.js.map +1 -0
  575. package/dist/siemens-ix/ix-input.entry.esm.js.map +1 -1
  576. package/dist/siemens-ix/ix-map-navigation.entry.esm.js.map +1 -1
  577. package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
  578. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  579. package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
  580. package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
  581. package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
  582. package/dist/siemens-ix/ix-pill.entry.esm.js.map +1 -1
  583. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  584. package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
  585. package/dist/siemens-ix/ix-time-input.entry.esm.js.map +1 -1
  586. package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
  587. package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
  588. package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
  589. package/dist/siemens-ix/ix-toggle.entry.esm.js.map +1 -1
  590. package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
  591. package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +1 -0
  592. package/dist/siemens-ix/ix-workflow-step.entry.esm.js.map +1 -1
  593. package/dist/siemens-ix/{p-639d0d7f.entry.js → p-02621eb8.entry.js} +2 -2
  594. package/dist/siemens-ix/p-02621eb8.entry.js.map +1 -0
  595. package/dist/siemens-ix/{p-bf2374a0.entry.js → p-0469aec7.entry.js} +2 -2
  596. package/dist/siemens-ix/{p-800f59a7.entry.js → p-09cce59e.entry.js} +2 -2
  597. package/dist/siemens-ix/p-09cce59e.entry.js.map +1 -0
  598. package/dist/siemens-ix/{p-f14790b4.entry.js → p-14fca48a.entry.js} +2 -2
  599. package/dist/siemens-ix/{p-111687a2.entry.js → p-19c2cb50.entry.js} +2 -2
  600. package/dist/siemens-ix/{p-111687a2.entry.js.map → p-19c2cb50.entry.js.map} +1 -1
  601. package/dist/siemens-ix/{p-c31b2027.entry.js → p-1ca58d8b.entry.js} +2 -2
  602. package/dist/siemens-ix/p-1d0ae43f.entry.js +2 -0
  603. package/dist/siemens-ix/p-1d0ae43f.entry.js.map +1 -0
  604. package/dist/siemens-ix/p-1fa5a3e4.entry.js +2 -0
  605. package/dist/siemens-ix/p-1fa5a3e4.entry.js.map +1 -0
  606. package/dist/siemens-ix/{p-1ac88556.entry.js → p-223c9d79.entry.js} +2 -2
  607. package/dist/siemens-ix/{p-1ac88556.entry.js.map → p-223c9d79.entry.js.map} +1 -1
  608. package/dist/siemens-ix/p-27f1d6c9.entry.js +2 -0
  609. package/dist/siemens-ix/p-27f1d6c9.entry.js.map +1 -0
  610. package/dist/siemens-ix/p-2d01c802.entry.js +2 -0
  611. package/dist/siemens-ix/p-2d01c802.entry.js.map +1 -0
  612. package/dist/siemens-ix/p-2d3f7bb5.entry.js +2 -0
  613. package/dist/siemens-ix/p-2d3f7bb5.entry.js.map +1 -0
  614. package/dist/siemens-ix/p-2d9b7dbd.entry.js +2 -0
  615. package/dist/siemens-ix/p-2d9b7dbd.entry.js.map +1 -0
  616. package/dist/siemens-ix/p-30545ef9.entry.js +2 -0
  617. package/dist/siemens-ix/{p-13fb0104.entry.js → p-3522b3af.entry.js} +2 -2
  618. package/dist/siemens-ix/{p-13fb0104.entry.js.map → p-3522b3af.entry.js.map} +1 -1
  619. package/dist/siemens-ix/{p-6645d4ee.entry.js → p-404dffde.entry.js} +2 -2
  620. package/dist/siemens-ix/{p-3f06687e.entry.js → p-42a70164.entry.js} +2 -2
  621. package/dist/siemens-ix/p-42a70164.entry.js.map +1 -0
  622. package/dist/siemens-ix/{p-2041357d.entry.js → p-48b0fef4.entry.js} +2 -2
  623. package/dist/siemens-ix/{p-ae2e5e0c.entry.js → p-4b88c430.entry.js} +2 -2
  624. package/dist/siemens-ix/{p-ae2e5e0c.entry.js.map → p-4b88c430.entry.js.map} +1 -1
  625. package/dist/siemens-ix/{p-91fa3ab0.entry.js → p-5140e6e6.entry.js} +2 -2
  626. package/dist/siemens-ix/{p-28fe8512.entry.js → p-52dc3ba0.entry.js} +2 -2
  627. package/dist/siemens-ix/{p-fbd0973d.entry.js → p-53e82da9.entry.js} +2 -2
  628. package/dist/siemens-ix/p-53e82da9.entry.js.map +1 -0
  629. package/dist/siemens-ix/p-53e9e280.entry.js +2 -0
  630. package/dist/siemens-ix/p-53e9e280.entry.js.map +1 -0
  631. package/dist/siemens-ix/p-5bed04ac.entry.js +2 -0
  632. package/dist/siemens-ix/p-5bed04ac.entry.js.map +1 -0
  633. package/dist/siemens-ix/{p-c248940f.entry.js → p-5c109476.entry.js} +2 -2
  634. package/dist/siemens-ix/p-5f72640f.entry.js +2 -0
  635. package/dist/siemens-ix/p-5f72640f.entry.js.map +1 -0
  636. package/dist/siemens-ix/{p-e3a219e3.entry.js → p-6a39d630.entry.js} +2 -2
  637. package/dist/siemens-ix/p-6c873cc5.entry.js +2 -0
  638. package/dist/siemens-ix/p-6d8e725c.entry.js +2 -0
  639. package/dist/siemens-ix/p-6d8e725c.entry.js.map +1 -0
  640. package/dist/siemens-ix/{p-e201fa04.entry.js → p-71550396.entry.js} +2 -2
  641. package/dist/siemens-ix/{p-e201fa04.entry.js.map → p-71550396.entry.js.map} +1 -1
  642. package/dist/siemens-ix/{p-32203c19.entry.js → p-71e94914.entry.js} +2 -2
  643. package/dist/siemens-ix/p-71e94914.entry.js.map +1 -0
  644. package/dist/siemens-ix/p-740420eb.entry.js +2 -0
  645. package/dist/siemens-ix/p-740420eb.entry.js.map +1 -0
  646. package/dist/siemens-ix/{p-c6ecc2e3.entry.js → p-746b04cb.entry.js} +2 -2
  647. package/dist/siemens-ix/p-78ddd5f5.entry.js +2 -0
  648. package/dist/siemens-ix/p-78ddd5f5.entry.js.map +1 -0
  649. package/dist/siemens-ix/{p-75edf091.entry.js → p-7989235e.entry.js} +2 -2
  650. package/dist/siemens-ix/p-7989235e.entry.js.map +1 -0
  651. package/dist/siemens-ix/{p-9dbfd7cd.entry.js → p-7a108b0d.entry.js} +2 -2
  652. package/dist/siemens-ix/{p-1cd4280f.entry.js → p-7d95ae34.entry.js} +2 -2
  653. package/dist/siemens-ix/{p-75f4bbb1.entry.js → p-81c8d542.entry.js} +2 -2
  654. package/dist/siemens-ix/{p-d7c7d38b.entry.js → p-8dcc6456.entry.js} +2 -2
  655. package/dist/siemens-ix/{p-d1254b5b.entry.js → p-8e48a7a1.entry.js} +2 -2
  656. package/dist/siemens-ix/{p-c413e3c4.entry.js → p-8eee6a03.entry.js} +2 -2
  657. package/dist/siemens-ix/p-90089ce1.entry.js +2 -0
  658. package/dist/siemens-ix/{p-0ba7d263.entry.js → p-90bd8d7b.entry.js} +2 -2
  659. package/dist/siemens-ix/{p-1bd1380b.entry.js → p-95d4d849.entry.js} +2 -2
  660. package/dist/siemens-ix/{p-a7cb47ca.entry.js → p-9638c57b.entry.js} +2 -2
  661. package/dist/siemens-ix/p-9638c57b.entry.js.map +1 -0
  662. package/dist/siemens-ix/p-96a20067.entry.js +2 -0
  663. package/dist/siemens-ix/{p-2355f27d.entry.js.map → p-96a20067.entry.js.map} +1 -1
  664. package/dist/siemens-ix/{p-38f9b6e2.entry.js → p-99ad8022.entry.js} +2 -2
  665. package/dist/siemens-ix/p-99ad8022.entry.js.map +1 -0
  666. package/dist/siemens-ix/p-9bd4c682.entry.js +2 -0
  667. package/dist/siemens-ix/{p-b895b3db.entry.js → p-9d7a2428.entry.js} +2 -2
  668. package/dist/siemens-ix/p-9d7a2428.entry.js.map +1 -0
  669. package/dist/siemens-ix/p-CAqtPJ4-.js +2 -0
  670. package/dist/siemens-ix/p-CAqtPJ4-.js.map +1 -0
  671. package/dist/siemens-ix/p-CFRrPFxi.js +2 -0
  672. package/dist/siemens-ix/p-CFRrPFxi.js.map +1 -0
  673. package/dist/siemens-ix/p-CpVbQsUI.js +2 -0
  674. package/dist/siemens-ix/p-CpVbQsUI.js.map +1 -0
  675. package/dist/siemens-ix/p-CsHYWHE6.js +2 -0
  676. package/dist/siemens-ix/p-CsHYWHE6.js.map +1 -0
  677. package/dist/siemens-ix/p-Cz75KU1f.js.map +1 -1
  678. package/dist/siemens-ix/{p-gkooEHol.js → p-CzzcLSmV.js} +2 -2
  679. package/dist/siemens-ix/p-CzzcLSmV.js.map +1 -0
  680. package/dist/siemens-ix/{p-CNToWy_R.js → p-DRnSC9aV.js} +2 -2
  681. package/dist/siemens-ix/{p-CNToWy_R.js.map → p-DRnSC9aV.js.map} +1 -1
  682. package/dist/siemens-ix/p-b11b63ca.entry.js +2 -0
  683. package/dist/siemens-ix/p-b11b63ca.entry.js.map +1 -0
  684. package/dist/siemens-ix/p-b59285eb.entry.js +2 -0
  685. package/dist/siemens-ix/{p-d9766334.entry.js.map → p-b59285eb.entry.js.map} +1 -1
  686. package/dist/siemens-ix/{p-c949686e.entry.js → p-b6d9c16c.entry.js} +2 -2
  687. package/dist/siemens-ix/{p-c949686e.entry.js.map → p-b6d9c16c.entry.js.map} +1 -1
  688. package/dist/siemens-ix/{p-d0213ff0.entry.js → p-b6dad40c.entry.js} +2 -2
  689. package/dist/siemens-ix/{p-331f1b60.entry.js → p-bb28a2d6.entry.js} +2 -2
  690. package/dist/siemens-ix/{p-e55cd52b.entry.js → p-bd369344.entry.js} +2 -2
  691. package/dist/siemens-ix/{p-db02f4c2.entry.js → p-c446ffdb.entry.js} +2 -2
  692. package/dist/siemens-ix/{p-96533ffc.entry.js → p-c8cf26c5.entry.js} +2 -2
  693. package/dist/siemens-ix/p-c8cf26c5.entry.js.map +1 -0
  694. package/dist/siemens-ix/{p-bb878ea4.entry.js → p-cd11dfa8.entry.js} +2 -2
  695. package/dist/siemens-ix/p-d0d972c2.entry.js +2 -0
  696. package/dist/siemens-ix/{p-5f7943f2.entry.js.map → p-d0d972c2.entry.js.map} +1 -1
  697. package/dist/siemens-ix/{p-a67bc456.entry.js → p-dc5b5c0c.entry.js} +2 -2
  698. package/dist/siemens-ix/p-ddaf98b6.entry.js +2 -0
  699. package/dist/siemens-ix/p-ddaf98b6.entry.js.map +1 -0
  700. package/dist/siemens-ix/{p-7060645f.entry.js → p-eba51393.entry.js} +2 -2
  701. package/dist/siemens-ix/p-ec8f67b0.entry.js +2 -0
  702. package/dist/siemens-ix/p-ec8f67b0.entry.js.map +1 -0
  703. package/dist/siemens-ix/{p-d585e581.entry.js → p-f112fabd.entry.js} +2 -2
  704. package/dist/siemens-ix/{p-d585e581.entry.js.map → p-f112fabd.entry.js.map} +1 -1
  705. package/dist/siemens-ix/{p-9272ae83.entry.js → p-f29eaee8.entry.js} +2 -2
  706. package/dist/siemens-ix/p-f55eef69.entry.js +2 -0
  707. package/dist/siemens-ix/p-f55eef69.entry.js.map +1 -0
  708. package/dist/siemens-ix/{p-9b88a932.entry.js → p-f6d678a6.entry.js} +2 -2
  709. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  710. package/dist/siemens-ix/siemens-ix.css +2312 -2248
  711. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  712. package/dist/siemens-ix/theme/classic-dark.css +1 -1
  713. package/dist/siemens-ix/theme/classic-light.css +1 -1
  714. package/dist/types/components/avatar/avatar.d.ts +1 -1
  715. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -1
  716. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +3 -3
  717. package/dist/types/components/category-filter/category-filter.d.ts +9 -3
  718. package/dist/types/components/chip/chip.d.ts +2 -2
  719. package/dist/types/components/date-dropdown/date-dropdown.d.ts +6 -6
  720. package/dist/types/components/date-input/date-input.d.ts +4 -0
  721. package/dist/types/components/date-picker/date-picker-component.d.ts +1 -1
  722. package/dist/types/components/date-picker/date-picker.d.ts +5 -7
  723. package/dist/types/components/date-time-card/date-time-card.d.ts +5 -1
  724. package/dist/types/components/datetime-picker/datetime-picker.d.ts +20 -2
  725. package/dist/types/components/event-list/event-list.d.ts +1 -1
  726. package/dist/types/components/group/group.d.ts +4 -4
  727. package/dist/types/components/group-item/group-item.d.ts +2 -9
  728. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  729. package/dist/types/components/input-group/input-group.d.ts +24 -0
  730. package/dist/types/components/menu/menu.d.ts +4 -0
  731. package/dist/types/components/menu-avatar/menu-avatar.d.ts +1 -1
  732. package/dist/types/components/message-bar/message-bar.d.ts +4 -3
  733. package/dist/types/components/modal/modal.d.ts +9 -9
  734. package/dist/types/components/pagination/pagination.d.ts +2 -2
  735. package/dist/types/components/push-card/push-card.d.ts +2 -2
  736. package/dist/types/components/time-input/time-input.d.ts +6 -0
  737. package/dist/types/components/time-picker/time-picker.d.ts +40 -2
  738. package/dist/types/components/toast/toast.d.ts +1 -1
  739. package/dist/types/components/utils/notification-color.d.ts +1 -1
  740. package/dist/types/components/utils/theme-switcher.d.ts +4 -11
  741. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +45 -0
  742. package/dist/types/components.d.ts +421 -197
  743. package/hydrate/index.js +714 -328
  744. package/hydrate/index.mjs +714 -328
  745. package/package.json +3 -3
  746. package/scss/_core.scss +1 -0
  747. package/scss/components/_input-group.scss +32 -0
  748. package/scss/theme/classic/dark/_variables.scss +185 -185
  749. package/scss/theme/classic/light/_variables.scss +185 -185
  750. package/scss/theme/core/_common.scss +123 -123
  751. package/scss/theme/core/components/action-card.scss +65 -65
  752. package/scss/theme/core/components/app-header.scss +3 -3
  753. package/scss/theme/core/components/avatar.scss +5 -5
  754. package/scss/theme/core/components/blind.scss +16 -16
  755. package/scss/theme/core/components/button.scss +124 -124
  756. package/scss/theme/core/components/card.scss +61 -61
  757. package/scss/theme/core/components/checkbox.scss +61 -61
  758. package/scss/theme/core/components/chip.scss +21 -21
  759. package/scss/theme/core/components/datepicker.scss +54 -54
  760. package/scss/theme/core/components/event-list.scss +14 -14
  761. package/scss/theme/core/components/flip.scss +23 -23
  762. package/scss/theme/core/components/ghost.scss +1 -1
  763. package/scss/theme/core/components/group.scss +16 -16
  764. package/scss/theme/core/components/input-helper.scss +2 -2
  765. package/scss/theme/core/components/input.scss +28 -28
  766. package/scss/theme/core/components/kpi.scss +5 -5
  767. package/scss/theme/core/components/label.scss +2 -2
  768. package/scss/theme/core/components/link.scss +6 -6
  769. package/scss/theme/core/components/map-navigation.scss +2 -2
  770. package/scss/theme/core/components/menu.scss +19 -19
  771. package/scss/theme/core/components/message-bar.scss +3 -3
  772. package/scss/theme/core/components/modal-dialog.scss +1 -1
  773. package/scss/theme/core/components/navigation.scss +11 -11
  774. package/scss/theme/core/components/pagination.scss +6 -6
  775. package/scss/theme/core/components/pane.scss +5 -5
  776. package/scss/theme/core/components/pill.scss +1 -1
  777. package/scss/theme/core/components/progress-indicator.scss +22 -22
  778. package/scss/theme/core/components/push-card.scss +124 -124
  779. package/scss/theme/core/components/radiobutton.scss +44 -44
  780. package/scss/theme/core/components/scrollbar.scss +3 -3
  781. package/scss/theme/core/components/select-list.scss +11 -11
  782. package/scss/theme/core/components/slider.scss +12 -12
  783. package/scss/theme/core/components/switch.scss +145 -109
  784. package/scss/theme/core/components/tab.scss +33 -33
  785. package/scss/theme/core/components/table.scss +30 -30
  786. package/scss/theme/core/components/tile.scss +1 -1
  787. package/scss/theme/core/components/toast.scss +5 -5
  788. package/scss/theme/core/components/tooltip.scss +2 -2
  789. package/scss/theme/core/components/tree.scss +7 -7
  790. package/scss/theme/core/components/upload.scss +4 -4
  791. package/scss/theme/core/components/workflow.scss +7 -7
  792. package/components/p-4dm0FrTr.js.map +0 -1
  793. package/components/p-7-Wnr7e5.js.map +0 -1
  794. package/components/p-BNYHD56q.js.map +0 -1
  795. package/components/p-Bc15ecXv.js.map +0 -1
  796. package/components/p-BmLRwuMH.js.map +0 -1
  797. package/components/p-BruPthTZ.js.map +0 -1
  798. package/components/p-C9yPT68I.js.map +0 -1
  799. package/components/p-CiSM2A9Q.js.map +0 -1
  800. package/components/p-Cx5H0GeI.js.map +0 -1
  801. package/components/p-DE74-VWH.js.map +0 -1
  802. package/components/p-DLcItN6d.js.map +0 -1
  803. package/components/p-DSF854K6.js.map +0 -1
  804. package/components/p-DVPJHakC.js +0 -78
  805. package/components/p-DVPJHakC.js.map +0 -1
  806. package/components/p-R9YNQy08.js +0 -56
  807. package/components/p-gkooEHol.js.map +0 -1
  808. package/dist/cjs/find-element-BNZJcvT8.js.map +0 -1
  809. package/dist/cjs/modal-BdSf3C6f.js.map +0 -1
  810. package/dist/cjs/service-DuiJmf7R.js.map +0 -1
  811. package/dist/cjs/theme-switcher-Do9dkNUv.js.map +0 -1
  812. package/dist/esm/find-element-CiSM2A9Q.js.map +0 -1
  813. package/dist/esm/modal-BQcyFJfE.js.map +0 -1
  814. package/dist/esm/service-Da0kv8hS.js.map +0 -1
  815. package/dist/esm/theme-switcher-Bg6wsOIn.js.map +0 -1
  816. package/dist/siemens-ix/p-21106fcd.entry.js +0 -2
  817. package/dist/siemens-ix/p-21106fcd.entry.js.map +0 -1
  818. package/dist/siemens-ix/p-2355f27d.entry.js +0 -2
  819. package/dist/siemens-ix/p-2b046df5.entry.js +0 -2
  820. package/dist/siemens-ix/p-2b046df5.entry.js.map +0 -1
  821. package/dist/siemens-ix/p-32200cc4.entry.js +0 -2
  822. package/dist/siemens-ix/p-32200cc4.entry.js.map +0 -1
  823. package/dist/siemens-ix/p-32203c19.entry.js.map +0 -1
  824. package/dist/siemens-ix/p-38f9b6e2.entry.js.map +0 -1
  825. package/dist/siemens-ix/p-3f06687e.entry.js.map +0 -1
  826. package/dist/siemens-ix/p-566a58f4.entry.js +0 -2
  827. package/dist/siemens-ix/p-566a58f4.entry.js.map +0 -1
  828. package/dist/siemens-ix/p-5d48f9cb.entry.js +0 -2
  829. package/dist/siemens-ix/p-5d48f9cb.entry.js.map +0 -1
  830. package/dist/siemens-ix/p-5f7943f2.entry.js +0 -2
  831. package/dist/siemens-ix/p-639d0d7f.entry.js.map +0 -1
  832. package/dist/siemens-ix/p-670d5b84.entry.js +0 -2
  833. package/dist/siemens-ix/p-670d5b84.entry.js.map +0 -1
  834. package/dist/siemens-ix/p-71a38f35.entry.js +0 -2
  835. package/dist/siemens-ix/p-75edf091.entry.js.map +0 -1
  836. package/dist/siemens-ix/p-78797f4b.entry.js +0 -2
  837. package/dist/siemens-ix/p-78797f4b.entry.js.map +0 -1
  838. package/dist/siemens-ix/p-800f59a7.entry.js.map +0 -1
  839. package/dist/siemens-ix/p-86ac2254.entry.js +0 -2
  840. package/dist/siemens-ix/p-86ac2254.entry.js.map +0 -1
  841. package/dist/siemens-ix/p-8bd3f89a.entry.js +0 -2
  842. package/dist/siemens-ix/p-8bd3f89a.entry.js.map +0 -1
  843. package/dist/siemens-ix/p-96533ffc.entry.js.map +0 -1
  844. package/dist/siemens-ix/p-98ab64dc.entry.js +0 -2
  845. package/dist/siemens-ix/p-98ab64dc.entry.js.map +0 -1
  846. package/dist/siemens-ix/p-9a8188a7.entry.js +0 -2
  847. package/dist/siemens-ix/p-9a8188a7.entry.js.map +0 -1
  848. package/dist/siemens-ix/p-C9yPT68I.js +0 -2
  849. package/dist/siemens-ix/p-C9yPT68I.js.map +0 -1
  850. package/dist/siemens-ix/p-CiSM2A9Q.js +0 -2
  851. package/dist/siemens-ix/p-CiSM2A9Q.js.map +0 -1
  852. package/dist/siemens-ix/p-DxCNpXRB.js +0 -2
  853. package/dist/siemens-ix/p-DxCNpXRB.js.map +0 -1
  854. package/dist/siemens-ix/p-a6612a5b.entry.js +0 -2
  855. package/dist/siemens-ix/p-a7cb47ca.entry.js.map +0 -1
  856. package/dist/siemens-ix/p-ac1f35ad.entry.js +0 -2
  857. package/dist/siemens-ix/p-ac1f35ad.entry.js.map +0 -1
  858. package/dist/siemens-ix/p-b895b3db.entry.js.map +0 -1
  859. package/dist/siemens-ix/p-bc7fc8b2.entry.js +0 -2
  860. package/dist/siemens-ix/p-bc7fc8b2.entry.js.map +0 -1
  861. package/dist/siemens-ix/p-c10b2e40.entry.js +0 -2
  862. package/dist/siemens-ix/p-d9766334.entry.js +0 -2
  863. package/dist/siemens-ix/p-ea435816.entry.js +0 -2
  864. package/dist/siemens-ix/p-ea435816.entry.js.map +0 -1
  865. package/dist/siemens-ix/p-fbd0973d.entry.js.map +0 -1
  866. package/dist/siemens-ix/p-fbedad11.entry.js +0 -2
  867. package/dist/siemens-ix/p-gkooEHol.js.map +0 -1
  868. /package/dist/siemens-ix/{p-bf2374a0.entry.js.map → p-0469aec7.entry.js.map} +0 -0
  869. /package/dist/siemens-ix/{p-f14790b4.entry.js.map → p-14fca48a.entry.js.map} +0 -0
  870. /package/dist/siemens-ix/{p-c31b2027.entry.js.map → p-1ca58d8b.entry.js.map} +0 -0
  871. /package/dist/siemens-ix/{p-c10b2e40.entry.js.map → p-30545ef9.entry.js.map} +0 -0
  872. /package/dist/siemens-ix/{p-6645d4ee.entry.js.map → p-404dffde.entry.js.map} +0 -0
  873. /package/dist/siemens-ix/{p-2041357d.entry.js.map → p-48b0fef4.entry.js.map} +0 -0
  874. /package/dist/siemens-ix/{p-91fa3ab0.entry.js.map → p-5140e6e6.entry.js.map} +0 -0
  875. /package/dist/siemens-ix/{p-28fe8512.entry.js.map → p-52dc3ba0.entry.js.map} +0 -0
  876. /package/dist/siemens-ix/{p-c248940f.entry.js.map → p-5c109476.entry.js.map} +0 -0
  877. /package/dist/siemens-ix/{p-e3a219e3.entry.js.map → p-6a39d630.entry.js.map} +0 -0
  878. /package/dist/siemens-ix/{p-71a38f35.entry.js.map → p-6c873cc5.entry.js.map} +0 -0
  879. /package/dist/siemens-ix/{p-c6ecc2e3.entry.js.map → p-746b04cb.entry.js.map} +0 -0
  880. /package/dist/siemens-ix/{p-9dbfd7cd.entry.js.map → p-7a108b0d.entry.js.map} +0 -0
  881. /package/dist/siemens-ix/{p-1cd4280f.entry.js.map → p-7d95ae34.entry.js.map} +0 -0
  882. /package/dist/siemens-ix/{p-75f4bbb1.entry.js.map → p-81c8d542.entry.js.map} +0 -0
  883. /package/dist/siemens-ix/{p-d7c7d38b.entry.js.map → p-8dcc6456.entry.js.map} +0 -0
  884. /package/dist/siemens-ix/{p-d1254b5b.entry.js.map → p-8e48a7a1.entry.js.map} +0 -0
  885. /package/dist/siemens-ix/{p-c413e3c4.entry.js.map → p-8eee6a03.entry.js.map} +0 -0
  886. /package/dist/siemens-ix/{p-fbedad11.entry.js.map → p-90089ce1.entry.js.map} +0 -0
  887. /package/dist/siemens-ix/{p-0ba7d263.entry.js.map → p-90bd8d7b.entry.js.map} +0 -0
  888. /package/dist/siemens-ix/{p-1bd1380b.entry.js.map → p-95d4d849.entry.js.map} +0 -0
  889. /package/dist/siemens-ix/{p-a6612a5b.entry.js.map → p-9bd4c682.entry.js.map} +0 -0
  890. /package/dist/siemens-ix/{p-d0213ff0.entry.js.map → p-b6dad40c.entry.js.map} +0 -0
  891. /package/dist/siemens-ix/{p-331f1b60.entry.js.map → p-bb28a2d6.entry.js.map} +0 -0
  892. /package/dist/siemens-ix/{p-e55cd52b.entry.js.map → p-bd369344.entry.js.map} +0 -0
  893. /package/dist/siemens-ix/{p-db02f4c2.entry.js.map → p-c446ffdb.entry.js.map} +0 -0
  894. /package/dist/siemens-ix/{p-bb878ea4.entry.js.map → p-cd11dfa8.entry.js.map} +0 -0
  895. /package/dist/siemens-ix/{p-a67bc456.entry.js.map → p-dc5b5c0c.entry.js.map} +0 -0
  896. /package/dist/siemens-ix/{p-7060645f.entry.js.map → p-eba51393.entry.js.map} +0 -0
  897. /package/dist/siemens-ix/{p-9272ae83.entry.js.map → p-f29eaee8.entry.js.map} +0 -0
  898. /package/dist/siemens-ix/{p-9b88a932.entry.js.map → p-f6d678a6.entry.js.map} +0 -0
@@ -246,15 +246,15 @@ const DateInput = class {
246
246
  const invalidText = this.isInputInvalid
247
247
  ? this.i18nErrorDateUnparsable
248
248
  : this.invalidText;
249
- return (h(Host, { key: '00644497cf3410dff8025cd84e012617d88c4bad', class: {
249
+ return (h(Host, { key: '5c7284b0afd8b3ee906370beb4b7e872a849f5cb', class: {
250
250
  disabled: this.disabled,
251
251
  readonly: this.readonly,
252
- } }, h("ix-field-wrapper", { key: '73aa5675f617a35479465eacc2959391f57e78e9', label: this.label, helperText: this.helperText, isInvalid: this.isInvalid, invalidText: invalidText, infoText: this.infoText, isInfo: this.isInfo, isWarning: this.isWarning, warningText: this.warningText, isValid: this.isValid, validText: this.validText, showTextAsTooltip: this.showTextAsTooltip, required: this.required, controlRef: this.inputElementRef }, this.renderInput()), h("ix-dropdown", { key: '6b219ac0027370f8c140feb9c438750259f93ef8', "data-testid": "date-dropdown", trigger: this.inputElementRef.waitForCurrent(), ref: this.dropdownElementRef, closeBehavior: "outside", suppressOverflowBehavior: true, show: this.show, onShowChanged: (event) => {
252
+ } }, h("ix-field-wrapper", { key: '5e8c3a6dd37625cb818438fd8e0c7bef6daa46a1', label: this.label, helperText: this.helperText, isInvalid: this.isInvalid, invalidText: invalidText, infoText: this.infoText, isInfo: this.isInfo, isWarning: this.isWarning, warningText: this.warningText, isValid: this.isValid, validText: this.validText, showTextAsTooltip: this.showTextAsTooltip, required: this.required, controlRef: this.inputElementRef }, this.renderInput()), h("ix-dropdown", { key: '5bffd40d906d1e1e929b4a6041ff2cec6f857d34', "data-testid": "date-dropdown", trigger: this.inputElementRef.waitForCurrent(), ref: this.dropdownElementRef, closeBehavior: "outside", suppressOverflowBehavior: true, show: this.show, onShowChanged: (event) => {
253
253
  this.show = event.detail;
254
- } }, h("ix-date-picker", { key: '17919c46d19510dbf091683c3d5de81f0bbbb591', ref: this.datepickerRef, format: this.format, locale: this.locale, singleSelection: true, from: (_a = this.from) !== null && _a !== void 0 ? _a : '', minDate: this.minDate, maxDate: this.maxDate, onDateChange: (event) => {
254
+ } }, h("ix-date-picker", { key: '56b7f9d28a733952ee5ea0e1555f88295f10f50e', ref: this.datepickerRef, format: this.format, locale: this.locale, range: false, from: (_a = this.from) !== null && _a !== void 0 ? _a : '', minDate: this.minDate, maxDate: this.maxDate, onDateChange: (event) => {
255
255
  const { from } = event.detail;
256
256
  this.onInput(from);
257
- }, showWeekNumbers: this.showWeekNumbers, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, embedded: true }))));
257
+ }, showWeekNumbers: this.showWeekNumbers, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, standaloneAppearance: false }))));
258
258
  }
259
259
  static get formAssociated() { return true; }
260
260
  get hostElement() { return getElement(this); }
@@ -1 +1 @@
1
- {"version":3,"file":"ix-date-input.entry.js","sources":["src/components/date-input/date-input.scss?tag=ix-date-input&encapsulation=shadow","src/components/date-input/date-input.tsx"],"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@use 'mixins/shadow-dom/component';\n@use 'mixins/input';\n@use './../input/input.mixins.scss' as input-mixins;\n\n@include input-mixins.input-field;\n\n:host {\n display: inline-block;\n position: relative;\n\n @include component.ix-component;\n\n input {\n width: 100%;\n height: 100%;\n }\n\n .calendar-hidden {\n display: none;\n }\n}\n\n:host(.readonly) {\n input {\n pointer-events: none;\n }\n}\n","/*\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 { iconCalendar } from '@siemens/ix-icons/icons';\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n Watch,\n h,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { SlotEnd, SlotStart } from '../input/input.fc';\nimport {\n DisposableChangesAndVisibilityObservers,\n addDisposableChangesAndVisibilityObservers,\n adjustPaddingForStartAndEnd,\n} from '../input/input.util';\nimport {\n ClassMutationObserver,\n HookValidationLifecycle,\n IxInputFieldComponent,\n ValidationResults,\n createClassMutationObserver,\n} from '../utils/input';\nimport { makeRef } from '../utils/make-ref';\nimport type { DateInputValidityState } from './date-input.types';\nimport {\n closeDropdown as closeDropdownUtil,\n createValidityState,\n handleIconClick,\n openDropdown as openDropdownUtil,\n} from '../utils/input/picker-input.util';\n\n/**\n * @form-ready\n *\n * @slot start - Element will be displayed at the start of the input\n * @slot end - Element will be displayed at the end of the input\n */\n@Component({\n tag: 'ix-date-input',\n styleUrl: 'date-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class DateInput implements IxInputFieldComponent<string | undefined> {\n @Element() hostElement!: HTMLIxDateInputElement;\n @AttachInternals() formInternals!: ElementInternals;\n\n /**\n * Name of the input element\n */\n @Prop({ reflect: true }) name?: string;\n\n /**\n * Placeholder of the input element\n */\n @Prop({ reflect: true }) placeholder?: string;\n\n /**\n * Value of the input element\n */\n @Prop({ reflect: true, mutable: true }) value?: string = '';\n\n @Watch('value') watchValuePropHandler(newValue: string) {\n this.onInput(newValue);\n }\n\n /**\n * The earliest date that can be selected by the date input/picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate = '';\n\n /**\n * The latest date that can be selected by the date input/picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n */\n @Prop() locale?: 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() format: string = 'yyyy/LL/dd';\n\n /**\n * Required attribute\n */\n @Prop() required?: boolean;\n\n /**\n * Helper text below the input field\n */\n @Prop() helperText?: string;\n\n /**\n * Label of the input field\n */\n @Prop() label?: string;\n\n /**\n * ARIA label for the calendar icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCalendarButton?: string;\n\n /**\n * Error text below the input field\n */\n @Prop({ reflect: true }) invalidText?: string;\n\n /**\n * Readonly attribute\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Disabled attribute\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Info text below the input field\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text below the input field\n */\n @Prop() warningText?: string;\n\n /**\n * Valid text below the input field\n */\n @Prop() validText?: string;\n\n /**\n * Show text as tooltip\n */\n @Prop() showTextAsTooltip?: boolean;\n\n /**\n * I18n string for the error message when the date is not parsable\n */\n @Prop({ attribute: 'i18n-error-date-unparsable' }) i18nErrorDateUnparsable =\n 'Date is not valid';\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 * 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 * 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 * Input change event.\n */\n @Event({ cancelable: false }) valueChange!: EventEmitter<string | undefined>;\n\n /**\n * Validation state change event.\n */\n @Event() validityStateChange!: EventEmitter<DateInputValidityState>;\n\n /** @internal */\n @Event() ixFocus!: EventEmitter<void>;\n\n /** @internal */\n @Event() ixBlur!: EventEmitter<void>;\n\n @State() show = false;\n @State() from?: string | null = null;\n @State() isInputInvalid = false;\n @State() isInvalid = false;\n @State() isValid = false;\n @State() isInfo = false;\n @State() isWarning = false;\n @State() focus = false;\n\n private readonly slotStartRef = makeRef<HTMLDivElement>();\n private readonly slotEndRef = makeRef<HTMLDivElement>();\n\n private readonly datepickerRef = makeRef<HTMLIxDatePickerElement>();\n\n private readonly inputElementRef = makeRef<HTMLInputElement>();\n private readonly dropdownElementRef = makeRef<HTMLIxDropdownElement>();\n private classObserver?: ClassMutationObserver;\n private invalidReason?: string;\n private touched = false;\n\n private disposableChangesAndVisibilityObservers?: DisposableChangesAndVisibilityObservers;\n\n updateFormInternalValue(value: string | undefined): void {\n if (value) {\n this.formInternals.setFormValue(value);\n } else {\n this.formInternals.setFormValue(null);\n }\n this.value = value;\n }\n\n connectedCallback(): void {\n this.classObserver = createClassMutationObserver(this.hostElement, () =>\n this.checkClassList()\n );\n\n this.disposableChangesAndVisibilityObservers =\n addDisposableChangesAndVisibilityObservers(\n this.hostElement,\n this.updatePaddings.bind(this)\n );\n }\n\n componentWillLoad(): void {\n this.onInput(this.value);\n if (this.isInputInvalid) {\n this.from = null;\n } else {\n this.watchValue();\n }\n\n this.checkClassList();\n this.updateFormInternalValue(this.value);\n }\n\n private updatePaddings() {\n adjustPaddingForStartAndEnd(\n this.slotStartRef.current,\n this.slotEndRef.current,\n this.inputElementRef.current\n );\n }\n\n disconnectedCallback(): void {\n this.classObserver?.destroy();\n this.disposableChangesAndVisibilityObservers?.();\n }\n\n @Watch('value')\n watchValue() {\n this.from = this.value;\n }\n\n /** @internal */\n @Method()\n hasValidValue(): Promise<boolean> {\n return Promise.resolve(!!this.value);\n }\n\n /** @internal */\n @Method()\n getAssociatedFormElement(): Promise<HTMLFormElement | null> {\n return Promise.resolve(this.formInternals.form);\n }\n\n async onInput(value: string | undefined) {\n this.value = value;\n if (!value) {\n this.valueChange.emit(value);\n return;\n }\n\n if (!this.format) {\n return;\n }\n\n const date = DateTime.fromFormat(value, this.format);\n const minDate = DateTime.fromFormat(this.minDate, this.format);\n const maxDate = DateTime.fromFormat(this.maxDate, this.format);\n\n this.isInputInvalid = !date.isValid || date < minDate || date > maxDate;\n\n if (this.isInputInvalid) {\n this.invalidReason = date.invalidReason || undefined;\n this.from = undefined;\n } else {\n this.updateFormInternalValue(value);\n this.closeDropdown();\n }\n\n this.valueChange.emit(value);\n }\n\n onCalenderClick(event: Event) {\n handleIconClick(\n event,\n this.show,\n () => this.openDropdown(),\n this.inputElementRef\n );\n }\n\n async openDropdown() {\n return openDropdownUtil(this.dropdownElementRef);\n }\n\n async closeDropdown() {\n return closeDropdownUtil(this.dropdownElementRef);\n }\n\n private checkClassList() {\n this.isInvalid = this.hostElement.classList.contains('ix-invalid');\n }\n\n private renderInput() {\n return (\n <div class=\"input-wrapper\">\n <SlotStart\n slotStartRef={this.slotStartRef}\n onSlotChange={() => this.updatePaddings()}\n ></SlotStart>\n <input\n autoComplete=\"off\"\n class={{\n 'is-invalid': this.isInputInvalid,\n }}\n disabled={this.disabled}\n readOnly={this.readonly}\n readonly={this.readonly}\n required={this.required}\n ref={this.inputElementRef}\n type=\"text\"\n value={this.value ?? ''}\n placeholder={this.placeholder}\n name={this.name}\n onInput={(event) => {\n const target = event.target as HTMLInputElement;\n this.onInput(target.value);\n }}\n onClick={(event) => {\n if (this.show) {\n event.stopPropagation();\n event.preventDefault();\n }\n }}\n onFocus={async () => {\n this.openDropdown();\n this.ixFocus.emit();\n }}\n onBlur={() => {\n this.ixBlur.emit();\n this.touched = true;\n }}\n ></input>\n <SlotEnd\n slotEndRef={this.slotEndRef}\n onSlotChange={() => this.updatePaddings()}\n >\n <ix-icon-button\n data-testid=\"open-calendar\"\n class={{ 'calendar-hidden': this.disabled || this.readonly }}\n variant=\"subtle-tertiary\"\n icon={iconCalendar}\n onClick={(event) => this.onCalenderClick(event)}\n aria-label={this.ariaLabelCalendarButton}\n ></ix-icon-button>\n </SlotEnd>\n </div>\n );\n }\n\n @HookValidationLifecycle()\n hookValidationLifecycle({\n isInfo,\n isInvalid,\n isInvalidByRequired,\n isValid,\n isWarning,\n }: ValidationResults) {\n this.isInvalid = isInvalid || isInvalidByRequired || this.isInputInvalid;\n this.isInfo = isInfo;\n this.isValid = isValid;\n this.isWarning = isWarning;\n }\n\n @Watch('isInputInvalid')\n async onInputValidationChange() {\n const state = await this.getValidityState();\n this.validityStateChange.emit({\n patternMismatch: state.patternMismatch,\n invalidReason: this.invalidReason,\n });\n }\n\n /** @internal */\n @Method()\n getValidityState(): Promise<ValidityState> {\n return Promise.resolve(\n createValidityState(this.isInputInvalid, !!this.required, this.value)\n );\n }\n\n /**\n * Get the native input element\n */\n @Method()\n getNativeInputElement(): Promise<HTMLInputElement> {\n return this.inputElementRef.waitForCurrent();\n }\n\n /**\n * Focuses the input field\n */\n @Method()\n async focusInput(): Promise<void> {\n return (await this.getNativeInputElement()).focus();\n }\n\n /**\n * Returns whether the text field has been touched.\n * @internal\n */\n @Method()\n isTouched(): Promise<boolean> {\n return Promise.resolve(this.touched);\n }\n\n render() {\n const invalidText = this.isInputInvalid\n ? this.i18nErrorDateUnparsable\n : this.invalidText;\n\n return (\n <Host\n class={{\n disabled: this.disabled,\n readonly: this.readonly,\n }}\n >\n <ix-field-wrapper\n label={this.label}\n helperText={this.helperText}\n isInvalid={this.isInvalid}\n invalidText={invalidText}\n infoText={this.infoText}\n isInfo={this.isInfo}\n isWarning={this.isWarning}\n warningText={this.warningText}\n isValid={this.isValid}\n validText={this.validText}\n showTextAsTooltip={this.showTextAsTooltip}\n required={this.required}\n controlRef={this.inputElementRef}\n >\n {this.renderInput()}\n </ix-field-wrapper>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n trigger={this.inputElementRef.waitForCurrent()}\n ref={this.dropdownElementRef}\n closeBehavior=\"outside\"\n suppressOverflowBehavior={true}\n show={this.show}\n onShowChanged={(event) => {\n this.show = event.detail;\n }}\n >\n <ix-date-picker\n ref={this.datepickerRef}\n format={this.format}\n locale={this.locale}\n singleSelection\n from={this.from ?? ''}\n minDate={this.minDate}\n maxDate={this.maxDate}\n onDateChange={(event) => {\n const { from } = event.detail;\n this.onInput(from);\n }}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n embedded\n ></ix-date-picker>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"names":["openDropdownUtil","closeDropdownUtil"],"mappings":"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"}
1
+ {"version":3,"file":"ix-date-input.entry.js","sources":["src/components/date-input/date-input.scss?tag=ix-date-input&encapsulation=shadow","src/components/date-input/date-input.tsx"],"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@use 'mixins/shadow-dom/component';\n@use 'mixins/input';\n@use './../input/input.mixins.scss' as input-mixins;\n\n@include input-mixins.input-field;\n\n:host {\n display: inline-block;\n position: relative;\n\n @include component.ix-component;\n\n input {\n width: 100%;\n height: 100%;\n }\n\n .calendar-hidden {\n display: none;\n }\n}\n\n:host(.readonly) {\n input {\n pointer-events: none;\n }\n}\n","/*\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 { iconCalendar } from '@siemens/ix-icons/icons';\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n Watch,\n h,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { SlotEnd, SlotStart } from '../input/input.fc';\nimport {\n DisposableChangesAndVisibilityObservers,\n addDisposableChangesAndVisibilityObservers,\n adjustPaddingForStartAndEnd,\n} from '../input/input.util';\nimport {\n ClassMutationObserver,\n HookValidationLifecycle,\n IxInputFieldComponent,\n ValidationResults,\n createClassMutationObserver,\n} from '../utils/input';\nimport { makeRef } from '../utils/make-ref';\nimport type { DateInputValidityState } from './date-input.types';\nimport {\n closeDropdown as closeDropdownUtil,\n createValidityState,\n handleIconClick,\n openDropdown as openDropdownUtil,\n} from '../utils/input/picker-input.util';\n\n/**\n * @form-ready\n *\n * @slot start - Element will be displayed at the start of the input\n * @slot end - Element will be displayed at the end of the input\n */\n@Component({\n tag: 'ix-date-input',\n styleUrl: 'date-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class DateInput implements IxInputFieldComponent<string | undefined> {\n @Element() hostElement!: HTMLIxDateInputElement;\n @AttachInternals() formInternals!: ElementInternals;\n\n /**\n * Name of the input element\n */\n @Prop({ reflect: true }) name?: string;\n\n /**\n * Placeholder of the input element\n */\n @Prop({ reflect: true }) placeholder?: string;\n\n /**\n * Value of the input element\n */\n @Prop({ reflect: true, mutable: true }) value?: string = '';\n\n @Watch('value') watchValuePropHandler(newValue: string) {\n this.onInput(newValue);\n }\n\n /**\n * The earliest date that can be selected by the date input/picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate = '';\n\n /**\n * The latest date that can be selected by the date input/picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n * The locale is used to translate the labels for weekdays and months.\n * It also determines the default order of weekdays based on the locale's conventions.\n * When the locale changes, the weekday labels are rotated according to the `weekStartIndex`.\n * It does not affect the values returned by methods and events.\n */\n @Prop() locale?: 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() format: string = 'yyyy/LL/dd';\n\n /**\n * Required attribute\n */\n @Prop() required?: boolean;\n\n /**\n * Helper text below the input field\n */\n @Prop() helperText?: string;\n\n /**\n * Label of the input field\n */\n @Prop() label?: string;\n\n /**\n * ARIA label for the calendar icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCalendarButton?: string;\n\n /**\n * Error text below the input field\n */\n @Prop({ reflect: true }) invalidText?: string;\n\n /**\n * Readonly attribute\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Disabled attribute\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Info text below the input field\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text below the input field\n */\n @Prop() warningText?: string;\n\n /**\n * Valid text below the input field\n */\n @Prop() validText?: string;\n\n /**\n * Show text as tooltip\n */\n @Prop() showTextAsTooltip?: boolean;\n\n /**\n * I18n string for the error message when the date is not parsable\n */\n @Prop({ attribute: 'i18n-error-date-unparsable' }) i18nErrorDateUnparsable =\n 'Date is not valid';\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 * 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 * 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 * Input change event.\n */\n @Event({ cancelable: false }) valueChange!: EventEmitter<string | undefined>;\n\n /**\n * Validation state change event.\n */\n @Event() validityStateChange!: EventEmitter<DateInputValidityState>;\n\n /** @internal */\n @Event() ixFocus!: EventEmitter<void>;\n\n /** @internal */\n @Event() ixBlur!: EventEmitter<void>;\n\n @State() show = false;\n @State() from?: string | null = null;\n @State() isInputInvalid = false;\n @State() isInvalid = false;\n @State() isValid = false;\n @State() isInfo = false;\n @State() isWarning = false;\n @State() focus = false;\n\n private readonly slotStartRef = makeRef<HTMLDivElement>();\n private readonly slotEndRef = makeRef<HTMLDivElement>();\n\n private readonly datepickerRef = makeRef<HTMLIxDatePickerElement>();\n\n private readonly inputElementRef = makeRef<HTMLInputElement>();\n private readonly dropdownElementRef = makeRef<HTMLIxDropdownElement>();\n private classObserver?: ClassMutationObserver;\n private invalidReason?: string;\n private touched = false;\n\n private disposableChangesAndVisibilityObservers?: DisposableChangesAndVisibilityObservers;\n\n updateFormInternalValue(value: string | undefined): void {\n if (value) {\n this.formInternals.setFormValue(value);\n } else {\n this.formInternals.setFormValue(null);\n }\n this.value = value;\n }\n\n connectedCallback(): void {\n this.classObserver = createClassMutationObserver(this.hostElement, () =>\n this.checkClassList()\n );\n\n this.disposableChangesAndVisibilityObservers =\n addDisposableChangesAndVisibilityObservers(\n this.hostElement,\n this.updatePaddings.bind(this)\n );\n }\n\n componentWillLoad(): void {\n this.onInput(this.value);\n if (this.isInputInvalid) {\n this.from = null;\n } else {\n this.watchValue();\n }\n\n this.checkClassList();\n this.updateFormInternalValue(this.value);\n }\n\n private updatePaddings() {\n adjustPaddingForStartAndEnd(\n this.slotStartRef.current,\n this.slotEndRef.current,\n this.inputElementRef.current\n );\n }\n\n disconnectedCallback(): void {\n this.classObserver?.destroy();\n this.disposableChangesAndVisibilityObservers?.();\n }\n\n @Watch('value')\n watchValue() {\n this.from = this.value;\n }\n\n /** @internal */\n @Method()\n hasValidValue(): Promise<boolean> {\n return Promise.resolve(!!this.value);\n }\n\n /** @internal */\n @Method()\n getAssociatedFormElement(): Promise<HTMLFormElement | null> {\n return Promise.resolve(this.formInternals.form);\n }\n\n async onInput(value: string | undefined) {\n this.value = value;\n if (!value) {\n this.valueChange.emit(value);\n return;\n }\n\n if (!this.format) {\n return;\n }\n\n const date = DateTime.fromFormat(value, this.format);\n const minDate = DateTime.fromFormat(this.minDate, this.format);\n const maxDate = DateTime.fromFormat(this.maxDate, this.format);\n\n this.isInputInvalid = !date.isValid || date < minDate || date > maxDate;\n\n if (this.isInputInvalid) {\n this.invalidReason = date.invalidReason || undefined;\n this.from = undefined;\n } else {\n this.updateFormInternalValue(value);\n this.closeDropdown();\n }\n\n this.valueChange.emit(value);\n }\n\n onCalenderClick(event: Event) {\n handleIconClick(\n event,\n this.show,\n () => this.openDropdown(),\n this.inputElementRef\n );\n }\n\n async openDropdown() {\n return openDropdownUtil(this.dropdownElementRef);\n }\n\n async closeDropdown() {\n return closeDropdownUtil(this.dropdownElementRef);\n }\n\n private checkClassList() {\n this.isInvalid = this.hostElement.classList.contains('ix-invalid');\n }\n\n private renderInput() {\n return (\n <div class=\"input-wrapper\">\n <SlotStart\n slotStartRef={this.slotStartRef}\n onSlotChange={() => this.updatePaddings()}\n ></SlotStart>\n <input\n autoComplete=\"off\"\n class={{\n 'is-invalid': this.isInputInvalid,\n }}\n disabled={this.disabled}\n readOnly={this.readonly}\n readonly={this.readonly}\n required={this.required}\n ref={this.inputElementRef}\n type=\"text\"\n value={this.value ?? ''}\n placeholder={this.placeholder}\n name={this.name}\n onInput={(event) => {\n const target = event.target as HTMLInputElement;\n this.onInput(target.value);\n }}\n onClick={(event) => {\n if (this.show) {\n event.stopPropagation();\n event.preventDefault();\n }\n }}\n onFocus={async () => {\n this.openDropdown();\n this.ixFocus.emit();\n }}\n onBlur={() => {\n this.ixBlur.emit();\n this.touched = true;\n }}\n ></input>\n <SlotEnd\n slotEndRef={this.slotEndRef}\n onSlotChange={() => this.updatePaddings()}\n >\n <ix-icon-button\n data-testid=\"open-calendar\"\n class={{ 'calendar-hidden': this.disabled || this.readonly }}\n variant=\"subtle-tertiary\"\n icon={iconCalendar}\n onClick={(event) => this.onCalenderClick(event)}\n aria-label={this.ariaLabelCalendarButton}\n ></ix-icon-button>\n </SlotEnd>\n </div>\n );\n }\n\n @HookValidationLifecycle()\n hookValidationLifecycle({\n isInfo,\n isInvalid,\n isInvalidByRequired,\n isValid,\n isWarning,\n }: ValidationResults) {\n this.isInvalid = isInvalid || isInvalidByRequired || this.isInputInvalid;\n this.isInfo = isInfo;\n this.isValid = isValid;\n this.isWarning = isWarning;\n }\n\n @Watch('isInputInvalid')\n async onInputValidationChange() {\n const state = await this.getValidityState();\n this.validityStateChange.emit({\n patternMismatch: state.patternMismatch,\n invalidReason: this.invalidReason,\n });\n }\n\n /** @internal */\n @Method()\n getValidityState(): Promise<ValidityState> {\n return Promise.resolve(\n createValidityState(this.isInputInvalid, !!this.required, this.value)\n );\n }\n\n /**\n * Get the native input element\n */\n @Method()\n getNativeInputElement(): Promise<HTMLInputElement> {\n return this.inputElementRef.waitForCurrent();\n }\n\n /**\n * Focuses the input field\n */\n @Method()\n async focusInput(): Promise<void> {\n return (await this.getNativeInputElement()).focus();\n }\n\n /**\n * Returns whether the text field has been touched.\n * @internal\n */\n @Method()\n isTouched(): Promise<boolean> {\n return Promise.resolve(this.touched);\n }\n\n render() {\n const invalidText = this.isInputInvalid\n ? this.i18nErrorDateUnparsable\n : this.invalidText;\n\n return (\n <Host\n class={{\n disabled: this.disabled,\n readonly: this.readonly,\n }}\n >\n <ix-field-wrapper\n label={this.label}\n helperText={this.helperText}\n isInvalid={this.isInvalid}\n invalidText={invalidText}\n infoText={this.infoText}\n isInfo={this.isInfo}\n isWarning={this.isWarning}\n warningText={this.warningText}\n isValid={this.isValid}\n validText={this.validText}\n showTextAsTooltip={this.showTextAsTooltip}\n required={this.required}\n controlRef={this.inputElementRef}\n >\n {this.renderInput()}\n </ix-field-wrapper>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n trigger={this.inputElementRef.waitForCurrent()}\n ref={this.dropdownElementRef}\n closeBehavior=\"outside\"\n suppressOverflowBehavior={true}\n show={this.show}\n onShowChanged={(event) => {\n this.show = event.detail;\n }}\n >\n <ix-date-picker\n ref={this.datepickerRef}\n format={this.format}\n locale={this.locale}\n range={false}\n from={this.from ?? ''}\n minDate={this.minDate}\n maxDate={this.maxDate}\n onDateChange={(event) => {\n const { from } = event.detail;\n this.onInput(from);\n }}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n standaloneAppearance={false}\n ></ix-date-picker>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"names":["openDropdownUtil","closeDropdownUtil"],"mappings":"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"}
@@ -15,15 +15,20 @@ const DateTimeCard = class {
15
15
  * Display footer
16
16
  */
17
17
  this.hasFooter = false;
18
+ /**
19
+ * set styles
20
+ */
21
+ this.individual = true;
18
22
  /**
19
23
  * Set corners style
20
24
  */
21
25
  this.corners = 'rounded';
22
26
  }
23
27
  cardClasses() {
28
+ var _a;
24
29
  return {
25
30
  card: true,
26
- standaloneAppearance: this.embedded === false,
31
+ standaloneAppearance: (_a = this.standaloneAppearance) !== null && _a !== void 0 ? _a : this.individual,
27
32
  rounded: this.corners === 'rounded',
28
33
  left: this.corners === 'left',
29
34
  right: this.corners === 'right',
@@ -31,10 +36,10 @@ const DateTimeCard = class {
31
36
  };
32
37
  }
33
38
  render() {
34
- return (h(Host, { key: '0429648eb4c31bde407975b519809a5a6fd8043a' }, h("div", { key: '21434d00d886949b32554468fdca445b2b5cf76f', class: this.cardClasses() }, !this.hideHeader && (h("div", { key: '7ef2b75a31b0e75646010e7f02a8dc338117d627', class: "header-container" }, h("div", { key: 'bb3e80cbc6b1c9b5c9171638726074122cd91908', class: "header" }, h("slot", { key: '6ae65febb1ee7862df7dcc781fa68286bd0b7d5e', name: "header" })), h("div", { key: 'd4d63d904222fbc638a04ee16e11ceea03f03e0e', class: "separator" }))), h("div", { key: '0f299d9c0743f2b9e0c9f7a0e2504e51471d4475', class: {
39
+ return (h(Host, { key: '1917611940e9015bd69c54a4d727490e32c6296a' }, h("div", { key: 'd962cf1ab891fb257bdef627c19bf5265ac7ad06', class: this.cardClasses() }, !this.hideHeader && (h("div", { key: '97ede2ac6f96e0802cd47deaa2ac19a6ffbb5d9c', class: "header-container" }, h("div", { key: '14dc85b4c1141543db4069245981712e4ddc6632', class: "header" }, h("slot", { key: '2f1656c886787682ed7b6c6cc340476664f61cee', name: "header" })), h("div", { key: '6e5931822bd606f3c5851528ba2a61dde147eabc', class: "separator" }))), h("div", { key: '1c90b793333c65471f03a8201206968b7f9e754c', class: {
35
40
  content: true,
36
41
  'content--time-picker': this.timePickerAppearance,
37
- } }, h("slot", { key: '6c955414005a3d9e004f1f69ded181f60f59dee5' })), this.hasFooter && (h("div", { key: '09348617c1986599e342b209518727bd65976078', class: "footer-container" }, h("div", { key: 'c3b84578c1acf0f8c9f01dcf8b9ec30364408a89', class: "separator" }), h("div", { key: '2cd97f773f26fb1e48fa4f5bf459c3531379b22b', class: "footer" }, h("slot", { key: 'f079e60d93d18c34030ff23f0d8f2043b9a2d85e', name: "footer" })))))));
42
+ } }, h("slot", { key: '9048c1df91da871f53bc050a83c50ccdc94cbaf4' })), this.hasFooter && (h("div", { key: 'e3dcb1d1dc3aaaef5e7fca2456dd8fa84d0d5b05', class: "footer-container" }, h("div", { key: '6f1433df5e0a8fcc4ecc5b49312e84ace6c25a2c', class: "separator" }), h("div", { key: 'fa7fd4952aeb197504dd660857846c7d50146ebe', class: "footer" }, h("slot", { key: '0493e93bf1fc30281bfe9e1e0fdc051d68edba61', name: "footer" })))))));
38
43
  }
39
44
  };
40
45
  DateTimeCard.style = dateTimeCardCss;
@@ -1 +1 @@
1
- {"version":3,"file":"ix-date-time-card.entry.js","sources":["src/components/date-time-card/date-time-card.scss?tag=ix-date-time-card&encapsulation=shadow","src/components/date-time-card/date-time-card.tsx"],"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\n@use './common-variables' as vars;\n@use 'mixins/shadow-dom/component';\n\n:host {\n @include component.ix-component;\n\n .card {\n background-color: var(--theme-menu--background);\n width: 100%;\n box-shadow: none;\n border: none;\n border-radius: unset;\n display: flex;\n flex-direction: column;\n\n &.standaloneAppearance {\n box-shadow: var(--theme-shadow-4);\n border-radius: 0.25rem;\n }\n\n &.rounded {\n border-radius: 4px;\n }\n\n &.left {\n border-radius: 4px 0 0 4px;\n height: 100%;\n }\n\n &.right {\n border-radius: 0 4px 4px 0;\n height: 100%;\n }\n\n &.straight {\n border-radius: 0;\n }\n\n .header-container {\n width: 100%;\n\n .header {\n padding: vars.$default-space;\n flex: 0 1 auto;\n }\n }\n\n .separator {\n border: 1px solid var(--theme-datepicker-separator--background);\n width: 100%;\n flex: 0 1 auto;\n }\n\n .content {\n padding: 0 vars.$default-space vars.$default-space vars.$default-space;\n flex: 1 1 auto;\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n &--time-picker {\n padding: 0 vars.$default-space;\n }\n }\n\n .footer-container {\n width: 100%;\n\n .footer {\n padding: vars.$default-space;\n }\n }\n }\n}\n","/*\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, h, Host, Prop } from '@stencil/core';\nimport type { DateTimeCardCorners } from './date-time-card.types';\n\n/**\n * @internal\n */\n@Component({\n tag: 'ix-date-time-card',\n styleUrl: 'date-time-card.scss',\n shadow: true,\n})\nexport class DateTimeCard {\n /** @internal */\n @Prop() embedded?: boolean;\n\n /** Timepicker specific styling */\n @Prop() timePickerAppearance: boolean = false;\n\n /**\n * Hide header\n */\n @Prop() hideHeader: boolean = false;\n\n /**\n * Display footer\n */\n @Prop() hasFooter: boolean = false;\n\n /**\n * Set corners style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n private cardClasses() {\n return {\n card: true,\n standaloneAppearance: this.embedded === false,\n rounded: this.corners === 'rounded',\n left: this.corners === 'left',\n right: this.corners === 'right',\n straight: this.corners === 'straight',\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClasses()}>\n {!this.hideHeader && (\n <div class=\"header-container\">\n <div class=\"header\">\n <slot name=\"header\"></slot>\n </div>\n <div class=\"separator\"></div>\n </div>\n )}\n\n <div\n class={{\n content: true,\n 'content--time-picker': this.timePickerAppearance,\n }}\n >\n <slot></slot>\n </div>\n\n {this.hasFooter && (\n <div class=\"footer-container\">\n <div class=\"separator\"></div>\n <div class=\"footer\">\n <slot name=\"footer\"></slot>\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,eAAe,GAAG,6pDAA6pD;;MCoBxqD,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAUU,QAAA,IAAoB,CAAA,oBAAA,GAAY,KAAK;AAE7C;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAY,KAAK;AAEnC;;AAEG;AACK,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK;AAElC;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAwB,SAAS;AA+CjD;IA7CS,WAAW,GAAA;QACjB,OAAO;AACL,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,oBAAoB,EAAE,IAAI,CAAC,QAAQ,KAAK,KAAK;AAC7C,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;AAC7B,YAAA,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;AAC/B,YAAA,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,UAAU;SACtC;;IAGH,MAAM,GAAA;QACJ,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAC3B,CAAC,IAAI,CAAC,UAAU,KACf,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EAAA,EACjB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,QAAQ,EAAA,CAAQ,CACvB,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,WAAW,EAAA,CAAO,CACzB,CACP,EAED,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE;AACL,gBAAA,OAAO,EAAE,IAAI;gBACb,sBAAsB,EAAE,IAAI,CAAC,oBAAoB;AAClD,aAAA,EAAA,EAED,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,EAEL,IAAI,CAAC,SAAS,KACb,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,WAAW,EAAO,CAAA,EAC7B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EAAA,EACjB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,QAAQ,EAAQ,CAAA,CACvB,CACF,CACP,CACG,CACD;;;;;;;"}
1
+ {"version":3,"file":"ix-date-time-card.entry.js","sources":["src/components/date-time-card/date-time-card.scss?tag=ix-date-time-card&encapsulation=shadow","src/components/date-time-card/date-time-card.tsx"],"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\n@use './common-variables' as vars;\n@use 'mixins/shadow-dom/component';\n\n:host {\n @include component.ix-component;\n\n .card {\n background-color: var(--theme-menu--background);\n width: 100%;\n box-shadow: none;\n border: none;\n border-radius: unset;\n display: flex;\n flex-direction: column;\n\n &.standaloneAppearance {\n box-shadow: var(--theme-shadow-4);\n border-radius: 0.25rem;\n }\n\n &.rounded {\n border-radius: 4px;\n }\n\n &.left {\n border-radius: 4px 0 0 4px;\n height: 100%;\n }\n\n &.right {\n border-radius: 0 4px 4px 0;\n height: 100%;\n }\n\n &.straight {\n border-radius: 0;\n }\n\n .header-container {\n width: 100%;\n\n .header {\n padding: vars.$default-space;\n flex: 0 1 auto;\n }\n }\n\n .separator {\n border: 1px solid var(--theme-datepicker-separator--background);\n width: 100%;\n flex: 0 1 auto;\n }\n\n .content {\n padding: 0 vars.$default-space vars.$default-space vars.$default-space;\n flex: 1 1 auto;\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n &--time-picker {\n padding: 0 vars.$default-space;\n }\n }\n\n .footer-container {\n width: 100%;\n\n .footer {\n padding: vars.$default-space;\n }\n }\n }\n}\n","/*\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, h, Host, Prop } from '@stencil/core';\nimport type { DateTimeCardCorners } from './date-time-card.types';\n\n/**\n * @internal\n */\n@Component({\n tag: 'ix-date-time-card',\n styleUrl: 'date-time-card.scss',\n shadow: true,\n})\nexport class DateTimeCard {\n /** @internal */\n @Prop() standaloneAppearance?: boolean;\n\n /** Timepicker specific styling */\n @Prop() timePickerAppearance: boolean = false;\n\n /**\n * Hide header\n */\n @Prop() hideHeader: boolean = false;\n\n /**\n * Display footer\n */\n @Prop() hasFooter: boolean = false;\n\n /**\n * set styles\n */\n @Prop() individual: boolean = true;\n\n /**\n * Set corners style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n private cardClasses() {\n return {\n card: true,\n standaloneAppearance: this.standaloneAppearance ?? this.individual,\n rounded: this.corners === 'rounded',\n left: this.corners === 'left',\n right: this.corners === 'right',\n straight: this.corners === 'straight',\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClasses()}>\n {!this.hideHeader && (\n <div class=\"header-container\">\n <div class=\"header\">\n <slot name=\"header\"></slot>\n </div>\n <div class=\"separator\"></div>\n </div>\n )}\n\n <div\n class={{\n content: true,\n 'content--time-picker': this.timePickerAppearance,\n }}\n >\n <slot></slot>\n </div>\n\n {this.hasFooter && (\n <div class=\"footer-container\">\n <div class=\"separator\"></div>\n <div class=\"footer\">\n <slot name=\"footer\"></slot>\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,eAAe,GAAG,6pDAA6pD;;MCoBxqD,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAUU,QAAA,IAAoB,CAAA,oBAAA,GAAY,KAAK;AAE7C;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAY,KAAK;AAEnC;;AAEG;AACK,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK;AAElC;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAY,IAAI;AAElC;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAwB,SAAS;AA+CjD;IA7CS,WAAW,GAAA;;QACjB,OAAO;AACL,YAAA,IAAI,EAAE,IAAI;YACV,oBAAoB,EAAE,MAAA,IAAI,CAAC,oBAAoB,MAAI,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAA,IAAI,CAAC,UAAU;AAClE,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;AAC7B,YAAA,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;AAC/B,YAAA,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,UAAU;SACtC;;IAGH,MAAM,GAAA;QACJ,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAC3B,CAAC,IAAI,CAAC,UAAU,KACf,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EAAA,EACjB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,QAAQ,EAAA,CAAQ,CACvB,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,WAAW,EAAA,CAAO,CACzB,CACP,EAED,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE;AACL,gBAAA,OAAO,EAAE,IAAI;gBACb,sBAAsB,EAAE,IAAI,CAAC,oBAAoB;AAClD,aAAA,EAAA,EAED,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,EAEL,IAAI,CAAC,SAAS,KACb,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,WAAW,EAAO,CAAA,EAC7B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EAAA,EACjB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,QAAQ,EAAQ,CAAA,CACvB,CACF,CACP,CACG,CACD;;;;;;;"}
@@ -9,9 +9,27 @@ const DatetimePicker = class {
9
9
  this.dateChange = createEvent(this, "dateChange", 7);
10
10
  this.dateSelect = createEvent(this, "dateSelect", 7);
11
11
  /**
12
- * If true disables date range selection (from/to).
12
+ * If true a date-range can be selected (from/to).
13
13
  */
14
- this.singleSelection = false;
14
+ this.range = true;
15
+ /**
16
+ * Show hour input
17
+ *
18
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
19
+ */
20
+ this.showHour = true;
21
+ /**
22
+ * Show minutes input
23
+ *
24
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
25
+ */
26
+ this.showMinutes = true;
27
+ /**
28
+ * Show seconds input
29
+ *
30
+ * @deprecated This is now determined by the format that is used. Will be removed in 4.0.0
31
+ */
32
+ this.showSeconds = true;
15
33
  /**
16
34
  * Date format string.
17
35
  * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.
@@ -72,7 +90,7 @@ const DatetimePicker = class {
72
90
  this.timeChange.emit(time);
73
91
  }
74
92
  render() {
75
- 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)))))));
93
+ 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)))))));
76
94
  }
77
95
  };
78
96
  DatetimePicker.style = datetimePickerCss;
@@ -1 +1 @@
1
- {"version":3,"file":"ix-datetime-picker.entry.js","sources":["src/components/datetime-picker/datetime-picker.scss?tag=ix-datetime-picker&encapsulation=shadow","src/components/datetime-picker/datetime-picker.tsx"],"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\n@use './common-variables' as vars;\n@use 'mixins/shadow-dom/component';\n\n:host {\n display: block;\n background-color: var(--theme-menu--background);\n border-radius: 4px;\n position: relative;\n width: min-content;\n\n @include component.ix-component;\n\n ix-layout-grid {\n border-radius: 0.25rem;\n box-shadow: var(--theme-shadow-4);\n }\n\n ix-time-picker {\n width: 100%;\n }\n\n .no-padding {\n padding: 0;\n }\n\n ix-col {\n display: flex;\n flex-direction: column;\n padding: 0;\n }\n\n .flex {\n display: flex;\n justify-content: center;\n flex-direction: column;\n }\n\n @media (min-width: 576px) {\n min-width: max-content;\n\n .btn-select-date-container {\n display: inline-flex;\n flex-grow: 1;\n\n ix-button {\n margin-left: auto;\n margin-top: auto;\n }\n }\n\n .min-width {\n width: min-content;\n }\n\n ix-time-picker {\n width: initial;\n }\n }\n\n .individual {\n box-shadow: none;\n border: none;\n }\n\n .btn-select-date-container {\n padding: 0 vars.$default-space vars.$default-space;\n\n @media (max-width: 576px) {\n & .btn-select-date {\n width: 100%;\n }\n }\n }\n}\n","/*\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"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ix-datetime-picker.entry.js","sources":["src/components/datetime-picker/datetime-picker.scss?tag=ix-datetime-picker&encapsulation=shadow","src/components/datetime-picker/datetime-picker.tsx"],"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\n@use './common-variables' as vars;\n@use 'mixins/shadow-dom/component';\n\n:host {\n display: block;\n background-color: var(--theme-menu--background);\n border-radius: 4px;\n position: relative;\n width: min-content;\n\n @include component.ix-component;\n\n ix-layout-grid {\n border-radius: 0.25rem;\n box-shadow: var(--theme-shadow-4);\n }\n\n ix-time-picker {\n width: 100%;\n }\n\n .no-padding {\n padding: 0;\n }\n\n ix-col {\n display: flex;\n flex-direction: column;\n padding: 0;\n }\n\n .flex {\n display: flex;\n justify-content: center;\n flex-direction: column;\n }\n\n @media (min-width: 576px) {\n min-width: max-content;\n\n .btn-select-date-container {\n display: inline-flex;\n flex-grow: 1;\n\n ix-button {\n margin-left: auto;\n margin-top: auto;\n }\n }\n\n .min-width {\n width: min-content;\n }\n\n ix-time-picker {\n width: initial;\n }\n }\n\n .individual {\n box-shadow: none;\n border: none;\n }\n\n .btn-select-date-container {\n padding: 0 vars.$default-space vars.$default-space;\n\n @media (max-width: 576px) {\n & .btn-select-date {\n width: 100%;\n }\n }\n }\n}\n","/*\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"],"names":[],"mappings":"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"}
@@ -17,7 +17,6 @@ const Drawer = class {
17
17
  /**
18
18
  * Fired in case of an outside click during drawer showed state
19
19
  */
20
- // eslint-disable-next-line @stencil-community/ban-default-true
21
20
  this.closeOnClickOutside = true;
22
21
  /**
23
22
  * Render the drawer with maximum height
@@ -128,7 +127,7 @@ const Drawer = class {
128
127
  this.toggleDrawer(this.show);
129
128
  }
130
129
  render() {
131
- return (h(Host, { key: '16521422bdb7a66912901a8d1d156772c31c588a', class: {
130
+ return (h(Host, { key: '7be961a99e8e7ada4525260428b8cb05e9699813', class: {
132
131
  'drawer-container': true,
133
132
  'display-none': true,
134
133
  }, style: {
@@ -136,15 +135,15 @@ const Drawer = class {
136
135
  'max-width': `${this.maxWidth}rem`,
137
136
  height: this.fullHeight ? '100%' : 'auto',
138
137
  overflow: 'hidden',
139
- }, ref: (el) => (this.divElement = el), "data-testid": "container", id: "div-container" }, h("div", { key: '8f1c103f6bb03c362a492031e2ad92bcf25d89cc', style: {
138
+ }, ref: (el) => (this.divElement = el), "data-testid": "container", id: "div-container" }, h("div", { key: '5c2b3998afbfb0d0f01b2a2634c6e6d28077af27', style: {
140
139
  width: this.width === 'auto'
141
140
  ? 'auto'
142
141
  : `${this.getConstrainedWidth(this.width)}rem`,
143
- } }, 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: {
142
+ } }, 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: {
144
143
  display: this.showContent ? 'block' : 'none',
145
- }, 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: {
144
+ }, 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: {
146
145
  display: this.showContent ? 'block' : 'none',
147
- } }, h("slot", { key: 'aea1e984256bb60bcb6c6a6721988b86decdfca0' })))));
146
+ } }, h("slot", { key: 'c1506217b6b73a685df75906356c3c1f29470d46' })))));
148
147
  }
149
148
  static get watchers() { return {
150
149
  "show": ["onShowChanged"]
@@ -1 +1 @@
1
- {"version":3,"file":"ix-drawer.entry.js","sources":["src/components/drawer/drawer.scss?tag=ix-drawer&encapsulation=shadow","src/components/drawer/drawer.tsx"],"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@use 'mixins/shadow-dom/component';\n@use 'mixins/shadows';\n@use './common-variables' as vars;\n\n:host {\n\n top: 0;\n right: 0;\n\n display: block;\n position: absolute;\n justify-content: flex-start;\n align-items: center;\n opacity: 0;\n\n max-height: 100vh;\n min-height: vars.$large-space;\n background-color: var(--theme-color-1);\n border-radius: vars.$default-border-radius;\n\n @include shadows.box-shadow(3);\n @include component.ix-component;\n\n .drawer-container {\n z-index: 100;\n }\n\n .header {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-end;\n padding: 0.5rem;\n width: 100%;\n order: 1;\n\n .header-content {\n flex-grow: 1;\n margin-right: vars.$default-space;\n }\n }\n\n .content {\n position: relative;\n flex: 1;\n order: 2;\n height: 100%;\n width: 100%;\n overflow-y: auto;\n }\n}\n\n:host(.display-none) {\n display: none;\n}\n","/*\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"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ix-drawer.entry.js","sources":["src/components/drawer/drawer.scss?tag=ix-drawer&encapsulation=shadow","src/components/drawer/drawer.tsx"],"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@use 'mixins/shadow-dom/component';\n@use 'mixins/shadows';\n@use './common-variables' as vars;\n\n:host {\n\n top: 0;\n right: 0;\n\n display: block;\n position: absolute;\n justify-content: flex-start;\n align-items: center;\n opacity: 0;\n\n max-height: 100vh;\n min-height: vars.$large-space;\n background-color: var(--theme-color-1);\n border-radius: vars.$default-border-radius;\n\n @include shadows.box-shadow(3);\n @include component.ix-component;\n\n .drawer-container {\n z-index: 100;\n }\n\n .header {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: flex-end;\n padding: 0.5rem;\n width: 100%;\n order: 1;\n\n .header-content {\n flex-grow: 1;\n margin-right: vars.$default-space;\n }\n }\n\n .content {\n position: relative;\n flex: 1;\n order: 2;\n height: 100%;\n width: 100%;\n overflow-y: auto;\n }\n}\n\n:host(.display-none) {\n display: none;\n}\n","/*\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"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-DGODjp4O.js';
2
- import { f as findElement, a as flip, i as inline, s as shift, o as offset, b as autoUpdate, c as computePosition } from './find-element-CiSM2A9Q.js';
2
+ import { f as flip, i as inline, s as shift, o as offset, a as autoUpdate, c as computePosition } from './floating-ui.dom-CAqtPJ4-.js';
3
3
  import { A as ArrowFocusController } from './focus-BAKpVknt.js';
4
4
  import { d as dropdownController, h as hasDropdownItemWrapperImplemented } from './dropdown-controller-D3K9vmFp.js';
5
+ import { f as findElement } from './find-element-CFRrPFxi.js';
5
6
  import { a as addDisposableEventListener } from './disposable-event-listener-CKoABG1h.js';
6
7
 
7
8
  const dropdownCss = ":host{background-color:var(--theme-color-2);border-radius:var(--theme-default-border-radius);min-width:0px;z-index:var(--theme-z-index-dropdown);box-shadow:var(--theme-shadow-4);padding:0.25rem 0px}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host{}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host{}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host{}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host{}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .dropdown-header{display:flex;align-items:center;height:2.5rem;color:var(--theme-menu-header--color);padding:0 1rem}:host(.overflow){max-height:calc(50vh - 3rem);overflow-y:auto}:host(:not(.show)){display:none}";
@@ -1 +1 @@
1
- {"version":3,"file":"ix-dropdown.entry.js","sources":["src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.tsx"],"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\n@use './common-variables' as vars;\n\n@use 'legacy/mixins/fonts';\n@use 'mixins/text-truncation';\n@use 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n @include component.ix-component;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: vars.$large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 vars.$default-space;\n }\n}\n\n$dropdown-offset: 3rem;\n\n:host(.overflow) {\n max-height: calc(50vh - $dropdown-offset);\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport { ArrowFocusController } from '../utils/focus';\nimport {\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\nimport { findElement } from '../utils/find-element';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { ElementReference } from '../utils/element-reference';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger?: ElementReference;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor?: ElementReference;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset?: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle?: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialization of this dropdown is expected to be deferred submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /** @internal */\n @Prop() ignoreRelatedSubmenu = false;\n\n /** @internal */\n @Prop() suppressOverflowBehavior = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged!: EventEmitter<boolean>;\n\n private autoUpdateCleanup?: () => void;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n private arrowFocusController?: ArrowFocusController;\n\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n private itemObserver? = new MutationObserver(() => {\n if (this.arrowFocusController) {\n this.arrowFocusController.items = this.dropdownItems;\n }\n });\n\n connectedCallback(): void {\n dropdownController.connected(this);\n\n if (this.trigger != undefined) {\n this.registerListener(this.trigger);\n }\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n dropdownController.dismiss(this);\n dropdownController.disconnected(this);\n\n if (this.arrowFocusController) {\n this.arrowFocusController?.disconnect();\n this.arrowFocusController = undefined;\n }\n\n if (this.itemObserver) {\n this.itemObserver.disconnect();\n this.itemObserver = undefined;\n }\n\n if (this.disposeClickListener) {\n this.disposeClickListener();\n this.disposeClickListener = undefined;\n }\n\n if (this.disposeKeyListener) {\n this.disposeKeyListener();\n this.disposeKeyListener = undefined;\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot!.querySelector('slot');\n }\n\n private disposeClickListener?: DisposableEventListener;\n private disposeKeyListener?: DisposableEventListener;\n\n private addEventListenersFor() {\n this.disposeClickListener?.();\n this.disposeKeyListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeClickListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: Event) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: true,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private registerKeyListener() {\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeKeyListener = addDisposableEventListener(\n this.triggerElement,\n 'keydown',\n ((event: KeyboardEvent) => {\n if (event.key !== 'ArrowDown') {\n return;\n }\n\n if (document.activeElement !== this.triggerElement) {\n return;\n }\n\n dropdownController.present(this);\n\n setTimeout(() => {\n this.focusDropdownItem(0);\n });\n }) as EventListener\n );\n }\n\n private async registerListener(element: ElementReference) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(element: ElementReference) {\n const el = await findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element?: Element) {\n if (!element) {\n return undefined;\n }\n\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private async resolveAnchorElement() {\n if (this.anchor) {\n this.anchorElement = await this.resolveElement(this.anchor);\n } else if (this.trigger) {\n this.anchorElement = await this.resolveElement(this.trigger);\n }\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n await this.resolveAnchorElement();\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n\n this.arrowFocusController = new ArrowFocusController(\n this.dropdownItems,\n this.hostElement,\n (index) => this.focusDropdownItem(index)\n );\n\n this.itemObserver?.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n\n this.registerKeyListener();\n } else {\n this.destroyAutoUpdate();\n this.arrowFocusController?.disconnect();\n this.itemObserver?.disconnect();\n this.disposeKeyListener?.();\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: ElementReference) {\n this.registerListener(newTriggerValue);\n }\n\n private destroyAutoUpdate() {\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.show) {\n return;\n }\n if (!this.anchorElement) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware?.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...(positionConfig.middleware?.filter(Boolean) || []),\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n this.destroyAutoUpdate();\n\n if (!this.anchorElement) {\n return;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.hostElement,\n async () => {\n if (this.anchorElement) {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.hostElement,\n positionConfig\n );\n Object.assign(this.hostElement.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(\n computeResponse.x\n )}px,${Math.round(computeResponse.y)}px)`,\n });\n }\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.hostElement,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.hostElement.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private focusDropdownItem(index: number) {\n requestAnimationFrame(() => {\n const button =\n this.dropdownItems[index]?.shadowRoot?.querySelector('button');\n\n if (button) {\n button.focus();\n }\n });\n }\n\n async componentDidLoad() {\n if (!this.trigger) {\n return;\n }\n\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n await this.resolveAnchorElement();\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n const target = dropdownController.pathIncludesTrigger(event.composedPath());\n if (target) {\n if (target !== this.triggerElement) {\n event.preventDefault();\n }\n\n if (this.isTriggerElement(target)) {\n if (this.closeBehavior === 'outside') {\n event.preventDefault();\n }\n return;\n }\n }\n\n if (\n !event.defaultPrevented &&\n (this.closeBehavior === 'inside' || this.closeBehavior === 'both')\n ) {\n dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);\n return;\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: !this.suppressOverflowBehavior,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n {this.show && <slot></slot>}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ix-dropdown.entry.js","sources":["src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","src/components/dropdown/dropdown.tsx"],"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\n@use './common-variables' as vars;\n\n@use 'legacy/mixins/fonts';\n@use 'mixins/text-truncation';\n@use 'mixins/shadow-dom/component';\n\n:host {\n background-color: var(--theme-color-2);\n border-radius: var(--theme-default-border-radius);\n min-width: 0px;\n z-index: var(--theme-z-index-dropdown);\n box-shadow: var(--theme-shadow-4);\n\n padding: 0.25rem 0px;\n\n @include component.ix-component;\n\n .dropdown-header {\n display: flex;\n align-items: center;\n height: vars.$large-control-height;\n color: var(--theme-menu-header--color);\n padding: 0 vars.$default-space;\n }\n}\n\n$dropdown-offset: 3rem;\n\n:host(.overflow) {\n max-height: calc(50vh - $dropdown-offset);\n overflow-y: auto;\n}\n\n:host(:not(.show)) {\n display: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { ComponentInterface } from '@stencil/core/internal';\nimport { ArrowFocusController } from '../utils/focus';\nimport {\n CloseBehavior,\n dropdownController,\n DropdownInterface,\n hasDropdownItemWrapperImplemented,\n} from './dropdown-controller';\nimport { AlignedPlacement } from './placement';\nimport { findElement } from '../utils/find-element';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { ElementReference } from '../utils/element-reference';\n\nlet sequenceId = 0;\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown implements ComponentInterface, DropdownInterface {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Suppress the automatic placement of the dropdown.\n */\n @Prop() suppressAutomaticPlacement = false;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger?: ElementReference;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor?: ElementReference;\n\n /**\n * Controls if the dropdown will be closed in response to a click event depending on the position of the event relative to the dropdown.\n * If the dropdown is a child of another one, it will be closed with the parent, regardless of its own close behavior.\n */\n @Prop() closeBehavior: CloseBehavior = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: AlignedPlacement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset?: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle?: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * @internal\n * If initialization of this dropdown is expected to be deferred submenu discovery will have to be re-run globally by the controller.\n * This property indicates the need for that to the controller.\n */\n @Prop() discoverAllSubmenus = false;\n\n /** @internal */\n @Prop() ignoreRelatedSubmenu = false;\n\n /** @internal */\n @Prop() suppressOverflowBehavior = false;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged!: EventEmitter<boolean>;\n\n private autoUpdateCleanup?: () => void;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n private arrowFocusController?: ArrowFocusController;\n\n private localUId = `dropdown-${sequenceId++}`;\n private assignedSubmenu: string[] = [];\n\n private itemObserver? = new MutationObserver(() => {\n if (this.arrowFocusController) {\n this.arrowFocusController.items = this.dropdownItems;\n }\n });\n\n connectedCallback(): void {\n dropdownController.connected(this);\n\n if (this.trigger != undefined) {\n this.registerListener(this.trigger);\n }\n }\n\n @Listen('ix-assign-sub-menu')\n cacheSubmenuId(event: CustomEvent<string>) {\n event.stopImmediatePropagation();\n event.preventDefault();\n\n const { detail } = event;\n\n if (this.assignedSubmenu.indexOf(detail) === -1) {\n this.assignedSubmenu.push(detail);\n }\n }\n\n disconnectedCallback() {\n dropdownController.dismiss(this);\n dropdownController.disconnected(this);\n\n if (this.arrowFocusController) {\n this.arrowFocusController?.disconnect();\n this.arrowFocusController = undefined;\n }\n\n if (this.itemObserver) {\n this.itemObserver.disconnect();\n this.itemObserver = undefined;\n }\n\n if (this.disposeClickListener) {\n this.disposeClickListener();\n this.disposeClickListener = undefined;\n }\n\n if (this.disposeKeyListener) {\n this.disposeKeyListener();\n this.disposeKeyListener = undefined;\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n getAssignedSubmenuIds() {\n return this.assignedSubmenu;\n }\n\n isPresent() {\n return this.show;\n }\n\n present() {\n this.show = true;\n }\n\n dismiss() {\n this.show = false;\n }\n\n getId() {\n return this.localUId;\n }\n\n willDismiss() {\n const { defaultPrevented } = this.showChanged.emit(false);\n return !defaultPrevented;\n }\n\n willPresent() {\n const { defaultPrevented } = this.showChanged.emit(true);\n return !defaultPrevented;\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n get slotElement() {\n return this.hostElement.shadowRoot!.querySelector('slot');\n }\n\n private disposeClickListener?: DisposableEventListener;\n private disposeKeyListener?: DisposableEventListener;\n\n private addEventListenersFor() {\n this.disposeClickListener?.();\n this.disposeKeyListener?.();\n\n const toggleController = () => {\n if (!this.isPresent()) {\n dropdownController.present(this);\n } else {\n dropdownController.dismiss(this);\n }\n\n dropdownController.dismissOthers(this.getId());\n };\n\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeClickListener = addDisposableEventListener(\n this.triggerElement,\n 'click',\n (event: Event) => {\n if (!event.defaultPrevented) {\n toggleController();\n }\n }\n );\n\n this.triggerElement?.setAttribute(\n 'data-ix-dropdown-trigger',\n this.localUId\n );\n }\n\n /** @internal */\n @Method()\n async discoverSubmenu() {\n this.triggerElement?.dispatchEvent(\n new CustomEvent('ix-assign-sub-menu', {\n bubbles: true,\n composed: true,\n cancelable: true,\n detail: this.localUId,\n })\n );\n }\n\n private registerKeyListener() {\n if (!this.triggerElement) {\n return;\n }\n\n this.disposeKeyListener = addDisposableEventListener(\n this.triggerElement,\n 'keydown',\n ((event: KeyboardEvent) => {\n if (event.key !== 'ArrowDown') {\n return;\n }\n\n if (document.activeElement !== this.triggerElement) {\n return;\n }\n\n dropdownController.present(this);\n\n setTimeout(() => {\n this.focusDropdownItem(0);\n });\n }) as EventListener\n );\n }\n\n private async registerListener(element: ElementReference) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n this.addEventListenersFor();\n this.discoverSubmenu();\n }\n }\n\n private async resolveElement(element: ElementReference) {\n const el = await findElement(element);\n\n return this.checkForSubmenuAnchor(el);\n }\n\n private async checkForSubmenuAnchor(element?: Element) {\n if (!element) {\n return undefined;\n }\n\n if (hasDropdownItemWrapperImplemented(element)) {\n const dropdownItem = await element.getDropdownItemElement();\n dropdownItem.isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n if (element.tagName === 'IX-DROPDOWN-ITEM') {\n (element as HTMLIxDropdownItemElement).isSubMenu = true;\n this.hostElement.style.zIndex = `var(--theme-z-index-dropdown)`;\n }\n\n return element;\n }\n\n private async resolveAnchorElement() {\n if (this.anchor) {\n this.anchorElement = await this.resolveElement(this.anchor);\n } else if (this.trigger) {\n this.anchorElement = await this.resolveElement(this.trigger);\n }\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n await this.resolveAnchorElement();\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n\n this.arrowFocusController = new ArrowFocusController(\n this.dropdownItems,\n this.hostElement,\n (index) => this.focusDropdownItem(index)\n );\n\n this.itemObserver?.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n\n this.registerKeyListener();\n } else {\n this.destroyAutoUpdate();\n this.arrowFocusController?.disconnect();\n this.itemObserver?.disconnect();\n this.disposeKeyListener?.();\n }\n }\n\n @Watch('trigger')\n changedTrigger(newTriggerValue: ElementReference) {\n this.registerListener(newTriggerValue);\n }\n\n private destroyAutoUpdate() {\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = undefined;\n }\n }\n\n private isAnchorSubmenu(): boolean {\n if (!hasDropdownItemWrapperImplemented(this.anchorElement)) {\n // Is no official dropdown-item, but check if any dropdown-item\n // is placed somewhere up the DOM\n return !!this.anchorElement?.closest('ix-dropdown-item');\n }\n\n return true;\n }\n\n private async applyDropdownPosition() {\n if (!this.show) {\n return;\n }\n if (!this.anchorElement) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware?.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n\n positionConfig.placement = isSubmenu ? 'right-start' : this.placement;\n\n positionConfig.middleware = [\n ...(positionConfig.middleware?.filter(Boolean) || []),\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n this.destroyAutoUpdate();\n\n if (!this.anchorElement) {\n return;\n }\n\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.hostElement,\n async () => {\n if (this.anchorElement) {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.hostElement,\n positionConfig\n );\n Object.assign(this.hostElement.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(\n computeResponse.x\n )}px,${Math.round(computeResponse.y)}px)`,\n });\n }\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.hostElement,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.hostElement.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n private focusDropdownItem(index: number) {\n requestAnimationFrame(() => {\n const button =\n this.dropdownItems[index]?.shadowRoot?.querySelector('button');\n\n if (button) {\n button.focus();\n }\n });\n }\n\n async componentDidLoad() {\n if (!this.trigger) {\n return;\n }\n\n this.changedTrigger(this.trigger);\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n await this.resolveAnchorElement();\n }\n\n private isTriggerElement(element: HTMLElement) {\n const trigger = !!element.hasAttribute('data-ix-dropdown-trigger');\n\n return trigger;\n }\n\n private onDropdownClick(event: PointerEvent) {\n const target = dropdownController.pathIncludesTrigger(event.composedPath());\n if (target) {\n if (target !== this.triggerElement) {\n event.preventDefault();\n }\n\n if (this.isTriggerElement(target)) {\n if (this.closeBehavior === 'outside') {\n event.preventDefault();\n }\n return;\n }\n }\n\n if (\n !event.defaultPrevented &&\n (this.closeBehavior === 'inside' || this.closeBehavior === 'both')\n ) {\n dropdownController.dismissAll([this.getId()], this.ignoreRelatedSubmenu);\n return;\n }\n\n dropdownController.dismissOthers(this.getId());\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n data-ix-dropdown={this.localUId}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: !this.suppressOverflowBehavior,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n role=\"list\"\n onClick={(event: PointerEvent) => this.onDropdownClick(event)}\n >\n <div style={{ display: 'contents' }}>\n {this.header && <div class=\"dropdown-header\">{this.header}</div>}\n {this.show && <slot></slot>}\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -21,9 +21,9 @@ const EventList = class {
21
21
  */
22
22
  this.compact = false;
23
23
  /**
24
- * Animate state change transitions. Defaults to 'false'.
24
+ * Animate state change transitions. Defaults to 'true'.
25
25
  */
26
- this.animated = false;
26
+ this.animated = true;
27
27
  /**
28
28
  * Display a chevron icon in list items. Defaults to 'false'
29
29
  */
@@ -124,11 +124,11 @@ const EventList = class {
124
124
  });
125
125
  }
126
126
  render() {
127
- return (h(Host, { key: '700b662ebfba2754f0c4c0d3bf09e95c5277760d', class: {
127
+ return (h(Host, { key: '754948a81d85157177bfff7afeee4f4851540c4d', class: {
128
128
  'item-size-s': this.itemHeight === 'S',
129
129
  'item-size-l': this.itemHeight === 'L',
130
130
  compact: this.compact,
131
- } }, h("div", { key: 'ebfed96ff53b21d49c9b9464978c79faa22210e0', role: "list" }, h("slot", { key: '4df468a4c4cc9643dae0b13f7b88df3402e3beaf' }))));
131
+ } }, h("div", { key: '27c68dcf3eeddc91e31bd1bb3abd3f933aa3cbdf', role: "list" }, h("slot", { key: '828bb7c4b9b39cfb6aff66f0cbe35b0705ae6419' }))));
132
132
  }
133
133
  get hostElement() { return getElement(this); }
134
134
  static get watchers() { return {