@siemens/ix 5.2.0 → 5.2.1

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 (437) hide show
  1. package/READMEOSS.html +1 -1
  2. package/components/index.js +1 -1
  3. package/components/ix-action-card.js +1 -1
  4. package/components/ix-application-header.js +1 -1
  5. package/components/ix-application-switch-modal.js +1 -1
  6. package/components/ix-avatar.js +1 -1
  7. package/components/ix-badge.js +1 -1
  8. package/components/ix-blind.js +1 -1
  9. package/components/ix-breadcrumb-item.js +1 -1
  10. package/components/ix-breadcrumb.js +1 -1
  11. package/components/ix-button.js +1 -1
  12. package/components/ix-card-accordion.js +1 -1
  13. package/components/ix-card-list.js +1 -1
  14. package/components/ix-category-filter.js +1 -1
  15. package/components/ix-chat-attachment.js +1 -1
  16. package/components/ix-chat-input.js +1 -1
  17. package/components/ix-checkbox-group.js +1 -1
  18. package/components/ix-checkbox.js +1 -1
  19. package/components/ix-chip.js +1 -1
  20. package/components/ix-content-header.js +1 -1
  21. package/components/ix-custom-field.js +1 -1
  22. package/components/ix-date-dropdown.js +1 -1
  23. package/components/ix-date-input.js +1 -1
  24. package/components/ix-date-picker.js +1 -1
  25. package/components/ix-datetime-input.js +1 -1
  26. package/components/ix-datetime-picker.js +1 -1
  27. package/components/ix-dropdown-button.js +1 -1
  28. package/components/ix-dropdown-item.js +1 -1
  29. package/components/ix-dropdown.js +1 -1
  30. package/components/ix-empty-state.js +1 -1
  31. package/components/ix-event-list-item.js +1 -1
  32. package/components/ix-event-list.js +1 -1
  33. package/components/ix-expanding-search.js +1 -1
  34. package/components/ix-field-label.js +1 -1
  35. package/components/ix-field-wrapper.js +1 -1
  36. package/components/ix-filter-chip.js +1 -1
  37. package/components/ix-flip-tile.js +1 -1
  38. package/components/ix-group-context-menu.js +1 -1
  39. package/components/ix-group.js +1 -1
  40. package/components/ix-helper-text.js +1 -1
  41. package/components/ix-icon-button.js +1 -1
  42. package/components/ix-icon-toggle-button.js +1 -1
  43. package/components/ix-input.js +1 -1
  44. package/components/ix-menu-about-news.js +1 -1
  45. package/components/ix-menu-about.js +1 -1
  46. package/components/ix-menu-avatar-item.js +1 -1
  47. package/components/ix-menu-avatar.js +1 -1
  48. package/components/ix-menu-category.js +1 -1
  49. package/components/ix-menu-expand-icon.js +1 -1
  50. package/components/ix-menu-item.js +1 -1
  51. package/components/ix-menu-settings.js +1 -1
  52. package/components/ix-menu.js +1 -1
  53. package/components/ix-message-bar.js +1 -1
  54. package/components/ix-modal-header.js +1 -1
  55. package/components/ix-modal-loading.js +1 -1
  56. package/components/ix-modal.js +1 -1
  57. package/components/ix-number-input.js +1 -1
  58. package/components/ix-pagination.js +1 -1
  59. package/components/ix-pane.js +1 -1
  60. package/components/ix-pill.js +1 -1
  61. package/components/ix-popover-header.js +1 -1
  62. package/components/ix-popover.js +1 -1
  63. package/components/ix-progress-indicator.js +1 -1
  64. package/components/ix-push-card.js +1 -1
  65. package/components/ix-radio-group.js +1 -1
  66. package/components/ix-radio.js +1 -1
  67. package/components/ix-select-item.js +1 -1
  68. package/components/ix-select.js +1 -1
  69. package/components/ix-slider.js +1 -1
  70. package/components/ix-spinner.js +1 -1
  71. package/components/ix-split-button.js +1 -1
  72. package/components/ix-tab-item.js +1 -1
  73. package/components/ix-tabs.js +1 -1
  74. package/components/ix-textarea.js +1 -1
  75. package/components/ix-time-input.js +1 -1
  76. package/components/ix-time-picker.js +1 -1
  77. package/components/ix-toast-container.js +1 -1
  78. package/components/ix-toast.js +1 -1
  79. package/components/ix-toggle-button.js +1 -1
  80. package/components/ix-toggle.js +1 -1
  81. package/components/ix-tooltip.js +1 -1
  82. package/components/ix-upload.js +1 -1
  83. package/components/ix-workflow-step.js +1 -1
  84. package/components/{p-Bs5X90wM.js → p-B3ZUi0gM.js} +1 -1
  85. package/components/p-BE708_H3.js +1 -0
  86. package/components/p-BF2IsI5j.js +1 -0
  87. package/components/{p-l9UTiHpM.js → p-BGpGr8Qv.js} +1 -1
  88. package/components/{p-CEE0wwD3.js → p-BKCLcJ_A.js} +1 -1
  89. package/components/{p-D7sEY2UQ.js → p-BKVBe7Co.js} +1 -1
  90. package/components/{p-3U_cSqu_.js → p-BOImZPcG.js} +1 -1
  91. package/components/{p-CtZAuwv3.js → p-BpE93ty6.js} +1 -1
  92. package/components/p-BqeSHO6C.js +1 -0
  93. package/components/{p-BGOtCwtj.js → p-CAd-WgR8.js} +1 -1
  94. package/components/p-CFH9HkmQ.js +1 -0
  95. package/components/p-CGGWaScq.js +1 -0
  96. package/components/{p-WisOWbJ8.js → p-CHJbp28K.js} +1 -1
  97. package/components/{p-BQ-hS49k.js → p-CRbQNmxe.js} +1 -1
  98. package/components/{p-DmtgI24u.js → p-CYgC-XN6.js} +1 -1
  99. package/components/p-CiP3eKpd.js +1 -0
  100. package/components/{p-OxstEnSC.js → p-CqWfy46u.js} +1 -1
  101. package/components/p-D5-dW4IM.js +1 -0
  102. package/components/p-DB-zpRCO.js +1 -0
  103. package/components/{p-C21npbUc.js → p-DD206pTM.js} +1 -1
  104. package/components/{p-D_HzQCU-.js → p-DIq_C5Sa.js} +1 -1
  105. package/components/p-DKU5FVxI.js +1 -0
  106. package/components/{p-snX1FfdL.js → p-DLgZfUmI.js} +1 -1
  107. package/components/p-DXmwthlZ.js +1 -0
  108. package/components/p-D_VBAyPm.js +1 -0
  109. package/components/p-DcOoa9vE.js +1 -0
  110. package/components/{p-CatmTvkh.js → p-DyC90hvu.js} +1 -1
  111. package/components/p-DzDB4UBp.js +1 -0
  112. package/components/p-QnnFQ3fz.js +1 -0
  113. package/components/p-WX1HYV2-.js +1 -0
  114. package/components/{p-BC2PyjjU.js → p-_irxfS9S.js} +1 -1
  115. package/components/{p-CUpOF7jN.js → p-n2_EOgMr.js} +1 -1
  116. package/components/p-q_MHsaAK.js +1 -0
  117. package/components/{p-eGuQ8D3W.js → p-viP8I2_s.js} +1 -1
  118. package/dist/cjs/{a11y-_XjpTo2w.js → a11y--G19CFwe.js} +1 -0
  119. package/dist/cjs/{animation-hxDbANsw.js → animation-BIfSQAkX.js} +8 -12
  120. package/dist/cjs/{base-button-BP6iIMR7.js → base-button-DIhNZecD.js} +1 -1
  121. package/dist/cjs/{base-icon-button-BmiGQb9v.js → base-icon-button-DASKxRmK.js} +1 -1
  122. package/dist/cjs/{focus-visible.mixin-1V7Eldn_.js → focus-visible.mixin-GrZAmMez.js} +1 -1
  123. package/dist/cjs/{helper-text-util-Ci_KFQZ4.js → helper-text-util-EAfzAOH6.js} +1 -1
  124. package/dist/cjs/index.cjs.js +1 -1
  125. package/dist/cjs/inherit-aria-attributes.mixin-DZ_vNjkJ.js +306 -0
  126. package/dist/cjs/{input.fc-xGzM_I6q.js → input.fc-ellguRiE.js} +8 -3
  127. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  128. package/dist/cjs/ix-application-header.cjs.entry.js +1 -1
  129. package/dist/cjs/ix-avatar_2.cjs.entry.js +2 -2
  130. package/dist/cjs/ix-badge.cjs.entry.js +8 -159
  131. package/dist/cjs/ix-blind.cjs.entry.js +13 -7
  132. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +4 -157
  133. package/dist/cjs/ix-breadcrumb.cjs.entry.js +1 -1
  134. package/dist/cjs/ix-button.cjs.entry.js +4 -157
  135. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +7 -4
  136. package/dist/cjs/ix-category-filter.cjs.entry.js +7 -7
  137. package/dist/cjs/ix-chat-input.cjs.entry.js +8 -8
  138. package/dist/cjs/ix-checkbox-group.cjs.entry.js +1 -1
  139. package/dist/cjs/ix-checkbox.cjs.entry.js +1 -1
  140. package/dist/cjs/ix-chip.cjs.entry.js +2 -157
  141. package/dist/cjs/ix-col_4.cjs.entry.js +5 -5
  142. package/dist/cjs/ix-date-dropdown.cjs.entry.js +6 -6
  143. package/dist/cjs/ix-date-input.cjs.entry.js +3 -3
  144. package/dist/cjs/ix-date-picker.cjs.entry.js +15 -11
  145. package/dist/cjs/ix-datetime-input.cjs.entry.js +3 -3
  146. package/dist/cjs/ix-dropdown-button.cjs.entry.js +9 -6
  147. package/dist/cjs/ix-dropdown_2.cjs.entry.js +13 -7
  148. package/dist/cjs/ix-event-list-item.cjs.entry.js +1 -1
  149. package/dist/cjs/ix-event-list.cjs.entry.js +6 -2
  150. package/dist/cjs/ix-field-label_2.cjs.entry.js +2 -2
  151. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +2 -2
  152. package/dist/cjs/ix-flip-tile.cjs.entry.js +1 -1
  153. package/dist/cjs/ix-group.cjs.entry.js +9 -9
  154. package/dist/cjs/ix-helper-text.cjs.entry.js +2 -2
  155. package/dist/cjs/ix-icon-button_2.cjs.entry.js +5 -160
  156. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +5 -160
  157. package/dist/cjs/ix-input.cjs.entry.js +3 -3
  158. package/dist/cjs/ix-menu-avatar.cjs.entry.js +1 -1
  159. package/dist/cjs/ix-menu-category.cjs.entry.js +24 -166
  160. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +3 -3
  161. package/dist/cjs/ix-menu-item.cjs.entry.js +11 -160
  162. package/dist/cjs/ix-menu.cjs.entry.js +40 -18
  163. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  164. package/dist/cjs/ix-modal.cjs.entry.js +15 -8
  165. package/dist/cjs/ix-number-input.cjs.entry.js +16 -13
  166. package/dist/cjs/ix-pagination.cjs.entry.js +3 -3
  167. package/dist/cjs/ix-pane.cjs.entry.js +2 -2
  168. package/dist/cjs/ix-pill_4.cjs.entry.js +12 -160
  169. package/dist/cjs/ix-popover-header.cjs.entry.js +1 -1
  170. package/dist/cjs/ix-popover.cjs.entry.js +5 -156
  171. package/dist/cjs/ix-radio.cjs.entry.js +1 -1
  172. package/dist/cjs/ix-select.cjs.entry.js +10 -10
  173. package/dist/cjs/ix-slider.cjs.entry.js +1 -1
  174. package/dist/cjs/ix-textarea.cjs.entry.js +3 -3
  175. package/dist/cjs/ix-time-input.cjs.entry.js +3 -3
  176. package/dist/cjs/ix-toggle-button.cjs.entry.js +4 -159
  177. package/dist/cjs/ix-toggle.cjs.entry.js +2 -155
  178. package/dist/cjs/ix-tooltip.cjs.entry.js +6 -2
  179. package/dist/cjs/ix-tree.cjs.entry.js +1 -0
  180. package/dist/cjs/ix-upload.cjs.entry.js +1 -1
  181. package/dist/cjs/ix-workflow-step.cjs.entry.js +11 -5
  182. package/dist/cjs/loader.cjs.js +1 -1
  183. package/dist/cjs/siemens-ix.cjs.js +1 -1
  184. package/dist/collection/components/badge/badge.js +7 -5
  185. package/dist/collection/components/badge/test/badge.page.js +6 -2
  186. package/dist/collection/components/blind/blind.js +11 -5
  187. package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +108 -0
  188. package/dist/collection/components/button/button.css +54 -0
  189. package/dist/collection/components/card-accordion/card-accordion.js +7 -4
  190. package/dist/collection/components/category-filter/category-filter.css +54 -0
  191. package/dist/collection/components/category-filter/category-filter.js +4 -4
  192. package/dist/collection/components/chat-input/chat-input.js +8 -8
  193. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
  194. package/dist/collection/components/date-dropdown/date-dropdown.js +4 -4
  195. package/dist/collection/components/date-picker/date-picker.js +15 -11
  196. package/dist/collection/components/dropdown/dropdown.js +11 -5
  197. package/dist/collection/components/dropdown-button/dropdown-button.css +9 -180
  198. package/dist/collection/components/dropdown-button/dropdown-button.js +7 -4
  199. package/dist/collection/components/event-list/event-list.js +6 -2
  200. package/dist/collection/components/group/group.js +9 -9
  201. package/dist/collection/components/icon-button/icon-button.css +54 -0
  202. package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +54 -0
  203. package/dist/collection/components/input/input.util.js +6 -1
  204. package/dist/collection/components/input/number-input.js +13 -10
  205. package/dist/collection/components/menu/menu-expand-icon.css +6 -0
  206. package/dist/collection/components/menu/menu.js +39 -17
  207. package/dist/collection/components/menu-category/menu-category.js +22 -11
  208. package/dist/collection/components/menu-item/menu-item.js +9 -5
  209. package/dist/collection/components/modal/modal.js +13 -6
  210. package/dist/collection/components/modal-header/modal-header.js +2 -2
  211. package/dist/collection/components/pagination/pagination.css +54 -0
  212. package/dist/collection/components/popover/popover.js +3 -1
  213. package/dist/collection/components/popover/test/popover.page.js +3 -2
  214. package/dist/collection/components/select/select.js +9 -9
  215. package/dist/collection/components/tabs/tabs.js +10 -5
  216. package/dist/collection/components/time-picker/test/expect-defined.js +13 -0
  217. package/dist/collection/components/time-picker/time-picker.js +5 -5
  218. package/dist/collection/components/toggle-button/toggle-button.css +54 -0
  219. package/dist/collection/components/tooltip/tooltip.js +6 -2
  220. package/dist/collection/components/utils/a11y.js +1 -1
  221. package/dist/collection/components/utils/animation.js +8 -12
  222. package/dist/collection/components/utils/internal/mixins/accessibility/aria-attribute-observer.js +106 -0
  223. package/dist/collection/components/utils/internal/mixins/accessibility/inherit-aria-attributes.mixin.js +175 -166
  224. package/dist/collection/components/utils/lazy-list/lazy.js +1 -0
  225. package/dist/collection/components/workflow-step/workflow-step.css +2 -2
  226. package/dist/collection/components/workflow-step/workflow-step.js +10 -4
  227. package/dist/collection/tests/utils/test/page.js +3 -0
  228. package/dist/esm/{a11y-C21npbUc.js → a11y-DD206pTM.js} +1 -1
  229. package/dist/esm/{animation-DNIQ2C1K.js → animation-BqeSHO6C.js} +8 -12
  230. package/dist/esm/{base-button-DZdtpLxn.js → base-button-Oanl-VqF.js} +1 -1
  231. package/dist/esm/{base-icon-button-DufFLJC-.js → base-icon-button-CxmfMOOd.js} +1 -1
  232. package/dist/esm/{focus-visible.mixin-CaRK3Ex_.js → focus-visible.mixin-DNYMa4dY.js} +1 -1
  233. package/dist/esm/{helper-text-util-sQKO6RPJ.js → helper-text-util-BJ-ZMW2J.js} +1 -1
  234. package/dist/esm/index.js +1 -1
  235. package/dist/esm/inherit-aria-attributes.mixin-BmTKblYV.js +304 -0
  236. package/dist/esm/{input.fc-DliqEtCM.js → input.fc-Cwmx0lGN.js} +8 -3
  237. package/dist/esm/ix-action-card.entry.js +1 -1
  238. package/dist/esm/ix-application-header.entry.js +1 -1
  239. package/dist/esm/ix-avatar_2.entry.js +2 -2
  240. package/dist/esm/ix-badge.entry.js +8 -159
  241. package/dist/esm/ix-blind.entry.js +13 -7
  242. package/dist/esm/ix-breadcrumb-item.entry.js +4 -157
  243. package/dist/esm/ix-breadcrumb.entry.js +1 -1
  244. package/dist/esm/ix-button.entry.js +4 -157
  245. package/dist/esm/ix-card-accordion_2.entry.js +7 -4
  246. package/dist/esm/ix-category-filter.entry.js +7 -7
  247. package/dist/esm/ix-chat-input.entry.js +8 -8
  248. package/dist/esm/ix-checkbox-group.entry.js +1 -1
  249. package/dist/esm/ix-checkbox.entry.js +1 -1
  250. package/dist/esm/ix-chip.entry.js +2 -157
  251. package/dist/esm/ix-col_4.entry.js +5 -5
  252. package/dist/esm/ix-date-dropdown.entry.js +6 -6
  253. package/dist/esm/ix-date-input.entry.js +3 -3
  254. package/dist/esm/ix-date-picker.entry.js +15 -11
  255. package/dist/esm/ix-datetime-input.entry.js +3 -3
  256. package/dist/esm/ix-dropdown-button.entry.js +9 -6
  257. package/dist/esm/ix-dropdown_2.entry.js +13 -7
  258. package/dist/esm/ix-event-list-item.entry.js +1 -1
  259. package/dist/esm/ix-event-list.entry.js +6 -2
  260. package/dist/esm/ix-field-label_2.entry.js +2 -2
  261. package/dist/esm/ix-filter-chip_2.entry.js +2 -2
  262. package/dist/esm/ix-flip-tile.entry.js +1 -1
  263. package/dist/esm/ix-group.entry.js +9 -9
  264. package/dist/esm/ix-helper-text.entry.js +2 -2
  265. package/dist/esm/ix-icon-button_2.entry.js +5 -160
  266. package/dist/esm/ix-icon-toggle-button.entry.js +5 -160
  267. package/dist/esm/ix-input.entry.js +3 -3
  268. package/dist/esm/ix-menu-avatar.entry.js +1 -1
  269. package/dist/esm/ix-menu-category.entry.js +24 -166
  270. package/dist/esm/ix-menu-expand-icon.entry.js +3 -3
  271. package/dist/esm/ix-menu-item.entry.js +11 -160
  272. package/dist/esm/ix-menu.entry.js +40 -18
  273. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  274. package/dist/esm/ix-modal.entry.js +15 -8
  275. package/dist/esm/ix-number-input.entry.js +16 -13
  276. package/dist/esm/ix-pagination.entry.js +3 -3
  277. package/dist/esm/ix-pane.entry.js +2 -2
  278. package/dist/esm/ix-pill_4.entry.js +12 -160
  279. package/dist/esm/ix-popover-header.entry.js +1 -1
  280. package/dist/esm/ix-popover.entry.js +5 -156
  281. package/dist/esm/ix-radio.entry.js +1 -1
  282. package/dist/esm/ix-select.entry.js +10 -10
  283. package/dist/esm/ix-slider.entry.js +1 -1
  284. package/dist/esm/ix-textarea.entry.js +3 -3
  285. package/dist/esm/ix-time-input.entry.js +3 -3
  286. package/dist/esm/ix-toggle-button.entry.js +4 -159
  287. package/dist/esm/ix-toggle.entry.js +2 -155
  288. package/dist/esm/ix-tooltip.entry.js +6 -2
  289. package/dist/esm/ix-tree.entry.js +1 -0
  290. package/dist/esm/ix-upload.entry.js +1 -1
  291. package/dist/esm/ix-workflow-step.entry.js +11 -5
  292. package/dist/esm/loader.js +1 -1
  293. package/dist/esm/siemens-ix.js +1 -1
  294. package/dist/siemens-ix/index.esm.js +1 -1
  295. package/dist/siemens-ix/p-0409f281.entry.js +1 -0
  296. package/dist/siemens-ix/{p-2e780c86.entry.js → p-0819923e.entry.js} +1 -1
  297. package/dist/siemens-ix/p-0b875bbd.entry.js +1 -0
  298. package/dist/siemens-ix/p-1a7b51d8.entry.js +1 -0
  299. package/dist/siemens-ix/{p-2b0ffba0.entry.js → p-1aef893c.entry.js} +1 -1
  300. package/dist/siemens-ix/{p-03745110.entry.js → p-213059a9.entry.js} +1 -1
  301. package/dist/siemens-ix/p-24138425.entry.js +1 -0
  302. package/dist/siemens-ix/{p-29e8126a.entry.js → p-32104d25.entry.js} +1 -1
  303. package/dist/siemens-ix/{p-447d52de.entry.js → p-35042cda.entry.js} +1 -1
  304. package/dist/siemens-ix/p-351e8732.entry.js +1 -0
  305. package/dist/siemens-ix/{p-884fd236.entry.js → p-38eef16a.entry.js} +1 -1
  306. package/dist/siemens-ix/p-3a60004f.entry.js +1 -0
  307. package/dist/siemens-ix/p-3ad11c04.entry.js +1 -0
  308. package/dist/siemens-ix/p-3c92d126.entry.js +1 -0
  309. package/dist/siemens-ix/{p-d0649c07.entry.js → p-3fe85552.entry.js} +1 -1
  310. package/dist/siemens-ix/{p-f4575603.entry.js → p-40239cf6.entry.js} +1 -1
  311. package/dist/siemens-ix/{p-a92495b8.entry.js → p-403b7d10.entry.js} +1 -1
  312. package/dist/siemens-ix/p-4739e88e.entry.js +1 -0
  313. package/dist/siemens-ix/p-4c765c73.entry.js +1 -0
  314. package/dist/siemens-ix/{p-0b10bb78.entry.js → p-50ece3e2.entry.js} +1 -1
  315. package/dist/siemens-ix/p-53319a22.entry.js +1 -0
  316. package/dist/siemens-ix/{p-1fbb010f.entry.js → p-571a1628.entry.js} +1 -1
  317. package/dist/siemens-ix/{p-4079292f.entry.js → p-60f7be48.entry.js} +1 -1
  318. package/dist/siemens-ix/p-643ed439.entry.js +1 -0
  319. package/dist/siemens-ix/p-6505e43d.entry.js +1 -0
  320. package/dist/siemens-ix/{p-217dc62a.entry.js → p-675e2aa8.entry.js} +1 -1
  321. package/dist/siemens-ix/{p-99b97922.entry.js → p-79a08a2a.entry.js} +1 -1
  322. package/dist/siemens-ix/p-83827bb2.entry.js +1 -0
  323. package/dist/siemens-ix/p-859294b4.entry.js +1 -0
  324. package/dist/siemens-ix/p-8af23465.entry.js +1 -0
  325. package/dist/siemens-ix/{p-6ffe8ec7.entry.js → p-8bc225b7.entry.js} +1 -1
  326. package/dist/siemens-ix/p-9254cb19.entry.js +1 -0
  327. package/dist/siemens-ix/p-9c6e5dcc.entry.js +1 -0
  328. package/dist/siemens-ix/{p-bf827cb3.entry.js → p-9df616d3.entry.js} +1 -1
  329. package/dist/siemens-ix/p-Bemn50Nk.js +1 -0
  330. package/dist/siemens-ix/p-BqeSHO6C.js +1 -0
  331. package/dist/siemens-ix/{p-HpQs38Y0.js → p-CDKWxg_L.js} +1 -1
  332. package/dist/siemens-ix/{p-CXbob2Ew.js → p-CLxF-dX8.js} +1 -1
  333. package/dist/siemens-ix/p-Cv_omozQ.js +1 -0
  334. package/dist/siemens-ix/{p-C21npbUc.js → p-DD206pTM.js} +1 -1
  335. package/dist/siemens-ix/p-a05bf6b5.entry.js +1 -0
  336. package/dist/siemens-ix/p-a4c3f3d3.entry.js +1 -0
  337. package/dist/siemens-ix/{p-836df58e.entry.js → p-aa0770ab.entry.js} +1 -1
  338. package/dist/siemens-ix/{p-89f6329b.entry.js → p-b5bf48cb.entry.js} +1 -1
  339. package/dist/siemens-ix/p-b9dcbd84.entry.js +1 -0
  340. package/dist/siemens-ix/{p-f3528209.entry.js → p-c393c20e.entry.js} +1 -1
  341. package/dist/siemens-ix/{p-b3eaf43d.entry.js → p-caac5984.entry.js} +1 -1
  342. package/dist/siemens-ix/p-cfd75035.entry.js +1 -0
  343. package/dist/siemens-ix/{p-47e2c5a1.entry.js → p-d4d99140.entry.js} +1 -1
  344. package/dist/siemens-ix/p-d94ad8f8.entry.js +1 -0
  345. package/dist/siemens-ix/p-da700215.entry.js +1 -0
  346. package/dist/siemens-ix/p-ddb49318.entry.js +1 -0
  347. package/dist/siemens-ix/{p-1afa8fb3.entry.js → p-de9a4607.entry.js} +1 -1
  348. package/dist/siemens-ix/{p-4b85292e.entry.js → p-e2e7c16a.entry.js} +1 -1
  349. package/dist/siemens-ix/p-e5239c6d.entry.js +1 -0
  350. package/dist/siemens-ix/p-e87e947c.entry.js +1 -0
  351. package/dist/siemens-ix/p-e8d73d19.entry.js +1 -0
  352. package/dist/siemens-ix/{p-0329eb6e.entry.js → p-e8f5519f.entry.js} +1 -1
  353. package/dist/siemens-ix/{p-92804589.entry.js → p-f7f6cf46.entry.js} +1 -1
  354. package/dist/siemens-ix/{p-bd2f7002.entry.js → p-fcfecc91.entry.js} +1 -1
  355. package/dist/siemens-ix/{p-kmPsIcs5.js → p-rgh7lt60.js} +1 -1
  356. package/dist/siemens-ix/p-xptA1Kt1.js +1 -0
  357. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  358. package/dist/types/components/badge/badge.d.ts +1 -16
  359. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +1 -16
  360. package/dist/types/components/button/button.d.ts +1 -16
  361. package/dist/types/components/chip/chip.d.ts +1 -16
  362. package/dist/types/components/dropdown/dropdown-focus.d.ts +1 -1
  363. package/dist/types/components/group/group.d.ts +1 -1
  364. package/dist/types/components/icon-button/icon-button.d.ts +2 -17
  365. package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +1 -16
  366. package/dist/types/components/input/input.util.d.ts +2 -3
  367. package/dist/types/components/input/number-input.d.ts +1 -0
  368. package/dist/types/components/menu/menu.d.ts +1 -1
  369. package/dist/types/components/menu-category/menu-category.d.ts +2 -17
  370. package/dist/types/components/menu-item/menu-item.d.ts +1 -16
  371. package/dist/types/components/modal/modal.d.ts +1 -0
  372. package/dist/types/components/modal-header/modal-header.d.ts +1 -1
  373. package/dist/types/components/popover/popover.d.ts +1 -16
  374. package/dist/types/components/tabs/tabs.d.ts +3 -16
  375. package/dist/types/components/time-picker/test/expect-defined.d.ts +1 -0
  376. package/dist/types/components/toggle/toggle.d.ts +1 -16
  377. package/dist/types/components/toggle-button/toggle-button.d.ts +1 -16
  378. package/dist/types/components/tree/tree.d.ts +1 -1
  379. package/dist/types/components/utils/a11y.d.ts +1 -0
  380. package/dist/types/components/utils/internal/mixins/accessibility/aria-attribute-observer.d.ts +7 -0
  381. package/dist/types/components/utils/internal/mixins/accessibility/inherit-aria-attributes.mixin.d.ts +7 -18
  382. package/dist/types/components/utils/shadow-dom.d.ts +1 -1
  383. package/dist/types/components/workflow-step/workflow-step.d.ts +1 -0
  384. package/hydrate/index.js +535 -2015
  385. package/hydrate/index.mjs +535 -2015
  386. package/package.json +1 -1
  387. package/components/p-1FBWW6v2.js +0 -1
  388. package/components/p-BDnx22Gp.js +0 -1
  389. package/components/p-BHoJOFM-.js +0 -1
  390. package/components/p-BST8QY5w.js +0 -1
  391. package/components/p-BcbFeRB0.js +0 -1
  392. package/components/p-CLDB-pmj.js +0 -1
  393. package/components/p-CRtj-KBq.js +0 -1
  394. package/components/p-CTRSoM-z.js +0 -1
  395. package/components/p-CgPr717U.js +0 -1
  396. package/components/p-CvAmaEU2.js +0 -1
  397. package/components/p-DNIQ2C1K.js +0 -1
  398. package/components/p-DdlGyKd2.js +0 -1
  399. package/components/p-DtWFUcZO.js +0 -1
  400. package/components/p-DylHkzl6.js +0 -1
  401. package/components/p-NXyac9kC.js +0 -1
  402. package/components/p-hf_zqlB1.js +0 -1
  403. package/dist/cjs/inherit-aria-attributes.mixin-EyRU0cDO.js +0 -36
  404. package/dist/esm/inherit-aria-attributes.mixin-nCmPujqf.js +0 -34
  405. package/dist/siemens-ix/p-0555a6fb.entry.js +0 -1
  406. package/dist/siemens-ix/p-05c35730.entry.js +0 -1
  407. package/dist/siemens-ix/p-0f2ac675.entry.js +0 -1
  408. package/dist/siemens-ix/p-12bce791.entry.js +0 -1
  409. package/dist/siemens-ix/p-30008054.entry.js +0 -1
  410. package/dist/siemens-ix/p-488b7074.entry.js +0 -1
  411. package/dist/siemens-ix/p-49d8b129.entry.js +0 -1
  412. package/dist/siemens-ix/p-55a57ce6.entry.js +0 -1
  413. package/dist/siemens-ix/p-55ae6204.entry.js +0 -1
  414. package/dist/siemens-ix/p-55e8ad3b.entry.js +0 -1
  415. package/dist/siemens-ix/p-5f48d238.entry.js +0 -1
  416. package/dist/siemens-ix/p-64432fa0.entry.js +0 -1
  417. package/dist/siemens-ix/p-6ebf66b8.entry.js +0 -1
  418. package/dist/siemens-ix/p-7690a56d.entry.js +0 -1
  419. package/dist/siemens-ix/p-80d7a07a.entry.js +0 -1
  420. package/dist/siemens-ix/p-816bcf01.entry.js +0 -1
  421. package/dist/siemens-ix/p-86ad005e.entry.js +0 -1
  422. package/dist/siemens-ix/p-8c3e7613.entry.js +0 -1
  423. package/dist/siemens-ix/p-8df1362f.entry.js +0 -1
  424. package/dist/siemens-ix/p-9094212f.entry.js +0 -1
  425. package/dist/siemens-ix/p-99df3561.entry.js +0 -1
  426. package/dist/siemens-ix/p-B4oiZyZC.js +0 -1
  427. package/dist/siemens-ix/p-DNIQ2C1K.js +0 -1
  428. package/dist/siemens-ix/p-a1d79970.entry.js +0 -1
  429. package/dist/siemens-ix/p-a7d695f5.entry.js +0 -1
  430. package/dist/siemens-ix/p-baf74d39.entry.js +0 -1
  431. package/dist/siemens-ix/p-bf75d77b.entry.js +0 -1
  432. package/dist/siemens-ix/p-cddc43e2.entry.js +0 -1
  433. package/dist/siemens-ix/p-cfd83faa.entry.js +0 -1
  434. package/dist/siemens-ix/p-fff1f8b1.entry.js +0 -1
  435. package/dist/siemens-ix/p-vphIrWGB.js +0 -1
  436. package/dist/siemens-ix/p-yUgQMMln.js +0 -1
  437. /package/dist/siemens-ix/{p-383e95ad.entry.js → p-f4d8f94b.entry.js} +0 -0
@@ -361,6 +361,12 @@
361
361
  color: var(--theme-btn-primary--color--active);
362
362
  }
363
363
 
364
+ :host(.active:not(.disabled)) .btn-primary:not(.disabled):not(:disabled) {
365
+ border-color: var(--theme-btn-primary--border-color--active);
366
+ background-color: var(--theme-btn-primary--background--active);
367
+ color: var(--theme-btn-primary--color--active);
368
+ }
369
+
364
370
  :host(.disabled) {
365
371
  pointer-events: none;
366
372
  }
@@ -423,6 +429,12 @@
423
429
  color: var(--theme-btn-secondary--color--active);
424
430
  }
425
431
 
432
+ :host(.active:not(.disabled)) .btn-secondary:not(.disabled):not(:disabled) {
433
+ border-color: var(--theme-btn-secondary--border-color--active);
434
+ background-color: var(--theme-btn-secondary--background--active);
435
+ color: var(--theme-btn-secondary--color--active);
436
+ }
437
+
426
438
  :host(.disabled) {
427
439
  pointer-events: none;
428
440
  }
@@ -485,6 +497,12 @@
485
497
  color: var(--theme-btn-tertiary--color--active);
486
498
  }
487
499
 
500
+ :host(.active:not(.disabled)) .btn-tertiary:not(.disabled):not(:disabled) {
501
+ border-color: var(--theme-btn-tertiary--border-color--active);
502
+ background-color: var(--theme-btn-tertiary--background--active);
503
+ color: var(--theme-btn-tertiary--color--active);
504
+ }
505
+
488
506
  :host(.disabled) {
489
507
  pointer-events: none;
490
508
  }
@@ -547,6 +565,12 @@
547
565
  color: var(--theme-btn-subtle-primary--color--active);
548
566
  }
549
567
 
568
+ :host(.active:not(.disabled)) .btn-subtle-primary:not(.disabled):not(:disabled) {
569
+ border-color: var(--theme-btn-subtle-primary--border-color--active);
570
+ background-color: var(--theme-btn-subtle-primary--background--active);
571
+ color: var(--theme-btn-subtle-primary--color--active);
572
+ }
573
+
550
574
  :host(.disabled) {
551
575
  pointer-events: none;
552
576
  }
@@ -609,6 +633,12 @@
609
633
  color: var(--theme-btn-subtle-secondary--color--active);
610
634
  }
611
635
 
636
+ :host(.active:not(.disabled)) .btn-subtle-secondary:not(.disabled):not(:disabled) {
637
+ border-color: var(--theme-btn-subtle-secondary--border-color--active);
638
+ background-color: var(--theme-btn-subtle-secondary--background--active);
639
+ color: var(--theme-btn-subtle-secondary--color--active);
640
+ }
641
+
612
642
  :host(.disabled) {
613
643
  pointer-events: none;
614
644
  }
@@ -671,6 +701,12 @@
671
701
  color: var(--theme-btn-subtle-tertiary--color--active);
672
702
  }
673
703
 
704
+ :host(.active:not(.disabled)) .btn-subtle-tertiary:not(.disabled):not(:disabled) {
705
+ border-color: var(--theme-btn-subtle-tertiary--border-color--active);
706
+ background-color: var(--theme-btn-subtle-tertiary--background--active);
707
+ color: var(--theme-btn-subtle-tertiary--color--active);
708
+ }
709
+
674
710
  :host(.disabled) {
675
711
  pointer-events: none;
676
712
  }
@@ -733,6 +769,12 @@
733
769
  color: var(--theme-btn-danger-primary--color--active);
734
770
  }
735
771
 
772
+ :host(.active:not(.disabled)) .btn-danger-primary:not(.disabled):not(:disabled) {
773
+ border-color: var(--theme-btn-danger-primary--border-color--active);
774
+ background-color: var(--theme-btn-danger-primary--background--active);
775
+ color: var(--theme-btn-danger-primary--color--active);
776
+ }
777
+
736
778
  :host(.disabled) {
737
779
  pointer-events: none;
738
780
  }
@@ -795,6 +837,12 @@
795
837
  color: var(--theme-btn-danger-secondary--color--active);
796
838
  }
797
839
 
840
+ :host(.active:not(.disabled)) .btn-danger-secondary:not(.disabled):not(:disabled) {
841
+ border-color: var(--theme-btn-danger-secondary--border-color--active);
842
+ background-color: var(--theme-btn-danger-secondary--background--active);
843
+ color: var(--theme-btn-danger-secondary--color--active);
844
+ }
845
+
798
846
  :host(.disabled) {
799
847
  pointer-events: none;
800
848
  }
@@ -857,6 +905,12 @@
857
905
  color: var(--theme-btn-danger-tertiary--color--active);
858
906
  }
859
907
 
908
+ :host(.active:not(.disabled)) .btn-danger-tertiary:not(.disabled):not(:disabled) {
909
+ border-color: var(--theme-btn-danger-tertiary--border-color--active);
910
+ background-color: var(--theme-btn-danger-tertiary--background--active);
911
+ color: var(--theme-btn-danger-tertiary--color--active);
912
+ }
913
+
860
914
  :host(.disabled) {
861
915
  pointer-events: none;
862
916
  }
@@ -148,7 +148,12 @@ export function onInputFocus(comp, currentValue) {
148
148
  export function onInputBlurWithChange(comp, input, currentValue) {
149
149
  onInputBlur(comp, input);
150
150
  if (comp.initialValue !== currentValue) {
151
- comp.ixChange.emit(currentValue);
151
+ if (currentValue === undefined) {
152
+ comp.ixChange.emit();
153
+ }
154
+ else {
155
+ comp.ixChange.emit(currentValue);
156
+ }
152
157
  comp.initialValue = currentValue;
153
158
  }
154
159
  }
@@ -156,13 +156,13 @@ export class NumberInput {
156
156
  initialValue;
157
157
  disposableChangesAndVisibilityObservers;
158
158
  onValueChange(newValue) {
159
- this.updateFormInternalValue(newValue);
159
+ this.updateOptionalFormInternalValue(newValue);
160
160
  }
161
161
  updateClassMappings(result) {
162
162
  mapValidationResult(this, result);
163
163
  }
164
164
  componentWillLoad() {
165
- this.updateFormInternalValue(this.value);
165
+ this.updateOptionalFormInternalValue(this.value);
166
166
  }
167
167
  connectedCallback() {
168
168
  this.disposableChangesAndVisibilityObservers =
@@ -195,6 +195,9 @@ export class NumberInput {
195
195
  this.valueChange.emit(this.allowEmptyValueChange ? value : (value ?? 0));
196
196
  }
197
197
  updateFormInternalValue(value) {
198
+ this.updateOptionalFormInternalValue(value);
199
+ }
200
+ updateOptionalFormInternalValue(value) {
198
201
  const formValue = value !== undefined && value !== null ? value.toString() : '';
199
202
  this.formInternals.setFormValue(formValue);
200
203
  this.value = value;
@@ -215,11 +218,11 @@ export class NumberInput {
215
218
  return;
216
219
  const inputValue = this.inputRef.current.value;
217
220
  const parsedValue = this.convertNumberStringToFloat(inputValue);
218
- this.updateFormInternalValue(parsedValue);
221
+ this.updateOptionalFormInternalValue(parsedValue);
219
222
  if (parsedValue !== undefined && this.inputRef.current) {
220
223
  this.inputRef.current.value = this.formatValue(parsedValue);
221
224
  }
222
- this.updateFormInternalValue(parsedValue);
225
+ this.updateOptionalFormInternalValue(parsedValue);
223
226
  onInputBlurWithChange(this, this.inputRef.current, parsedValue);
224
227
  this.touched = true;
225
228
  };
@@ -337,13 +340,13 @@ export class NumberInput {
337
340
  }
338
341
  render() {
339
342
  const showStepperButtons = this.showStepperButtons && (this.disabled || this.readonly) === false;
340
- return (h(Host, { key: '0c2af6d414c208f7ef1d32e09fe74ee2c5d4950a', class: {
343
+ return (h(Host, { key: 'd7300e47cdcb3c0923b9a72874ed62e4bb1461d3', class: {
341
344
  disabled: this.disabled,
342
345
  readonly: this.readonly,
343
- } }, h("ix-field-wrapper", { key: '9319df314ff21bb6c812143ba94237531a538b43', id: this.numberInputId, required: this.required, label: this.label, helperText: this.helperText, invalidText: this.invalidText, infoText: this.infoText, warningText: this.warningText, validText: this.validText, showTextAsTooltip: this.showTextAsTooltip, isInvalid: this.isInvalid, isValid: this.isValid, isInfo: this.isInfo, isWarning: this.isWarning, controlRef: this.inputRef }, h("div", { key: '0c34666c47d8c40fd7e5f2028025d64ce67f436f', class: {
346
+ } }, h("ix-field-wrapper", { key: '2f970edda1da48d2075ab520e17668e3a0bce8ab', id: this.numberInputId, required: this.required, label: this.label, helperText: this.helperText, invalidText: this.invalidText, infoText: this.infoText, warningText: this.warningText, validText: this.validText, showTextAsTooltip: this.showTextAsTooltip, isInvalid: this.isInvalid, isValid: this.isValid, isInfo: this.isInfo, isWarning: this.isWarning, controlRef: this.inputRef }, h("div", { key: '20b3fe528654eba138465af45233bfc2e842b7de', class: {
344
347
  'input-wrapper': true,
345
348
  'show-stepper-buttons': !!this.showStepperButtons,
346
- } }, h(SlotStart, { key: '9408c97e2d796ae15548715ad754b88bf5d1e9b0', slotStartRef: this.slotStartRef, onSlotChange: () => this.updatePaddings() }), h(InputElement, { key: '30a21cb357e62ca8d5a6858674fdbf303b3ffa3b', id: this.numberInputId, readonly: this.readonly, disabled: this.disabled, step: this.step, min: this.min, max: this.max, pattern: this.pattern, type: 'number', isInvalid: this.isInvalid, required: this.required, value: this.formatValue(this.value), placeholder: this.placeholder, inputRef: this.inputRef, onKeyPress: (event) => checkAllowedKeys(this, event), onKeyDown: (event) => this.handleKeyDown(event), onBeforeInput: (event) => this.handleBeforeInput(event), onPaste: (event) => this.handlePaste(event), onFocus: () => onInputFocus(this, this.value), onEnterKeyChange: (event) => onEnterKeyChangeEmit(event, this, this.value), valueChange: this.handleInputChange, updateFormInternalValue: (value) => {
349
+ } }, h(SlotStart, { key: '37d19aa438f13b76faf7dc79d3a64ac1a4c856e8', slotStartRef: this.slotStartRef, onSlotChange: () => this.updatePaddings() }), h(InputElement, { key: '89493aabca135cb7a6ee332d017c3d973fe44ef7', id: this.numberInputId, readonly: this.readonly, disabled: this.disabled, step: this.step, min: this.min, max: this.max, pattern: this.pattern, type: 'number', isInvalid: this.isInvalid, required: this.required, value: this.formatValue(this.value), placeholder: this.placeholder, inputRef: this.inputRef, onKeyPress: (event) => checkAllowedKeys(this, event), onKeyDown: (event) => this.handleKeyDown(event), onBeforeInput: (event) => this.handleBeforeInput(event), onPaste: (event) => this.handlePaste(event), onFocus: () => onInputFocus(this, this.value), onEnterKeyChange: (event) => onEnterKeyChangeEmit(event, this, this.value), valueChange: this.handleInputChange, updateFormInternalValue: (value) => {
347
350
  const parsedValue = this.convertNumberStringToFloat(value);
348
351
  const isScientificNotation = this.isScientificNotation(value.trim());
349
352
  if (isScientificNotation) {
@@ -353,12 +356,12 @@ export class NumberInput {
353
356
  this.value = parsedValue;
354
357
  }
355
358
  else {
356
- this.updateFormInternalValue(parsedValue);
359
+ this.updateOptionalFormInternalValue(parsedValue);
357
360
  }
358
- }, onBlur: this.handleBlur, form: this.formInternals.form ?? undefined, suppressSubmitOnEnter: this.suppressSubmitOnEnter, textAlignment: this.textAlignment }), h(SlotEnd, { key: '260756858357f96bf468348af5907e5fac7bd471', slotEndRef: this.slotEndRef, onSlotChange: () => this.updatePaddings() }, h("div", { key: '90264008de7532c8f6220abcea4fd6b69bd1d605', class: {
361
+ }, onBlur: this.handleBlur, form: this.formInternals.form ?? undefined, suppressSubmitOnEnter: this.suppressSubmitOnEnter, textAlignment: this.textAlignment }), h(SlotEnd, { key: 'f23f2c74423302aab3a4257858e5dac5b27fd5d1', slotEndRef: this.slotEndRef, onSlotChange: () => this.updatePaddings() }, h("div", { key: '98452a75169f12a0d156d07601fd8305e4cc1129', class: {
359
362
  'number-stepper-container': true,
360
363
  'container-hidden': !showStepperButtons,
361
- } }, h("ix-icon-button", { key: '35ad3af7d1c6925dd014f721165ff68e5f768bb5', variant: "subtle-tertiary", icon: iconMinus, size: "16", class: "number-stepper-button step-minus", "aria-label": "decrement number", onClick: () => this.handleStepOperation('down') }), h("ix-icon-button", { key: '627f6b42c4dab1517bfca5059daebb0d5d8d363d', variant: "subtle-tertiary", icon: iconPlus, size: "16", class: "number-stepper-button step-plus", "aria-label": "increment number", onClick: () => this.handleStepOperation('up') })))))));
364
+ } }, h("ix-icon-button", { key: '1245a51baa0f92b48b75caae24bc04f7ca159fa3', variant: "subtle-tertiary", icon: iconMinus, size: "16", class: "number-stepper-button step-minus", "aria-label": "decrement number", onClick: () => this.handleStepOperation('down') }), h("ix-icon-button", { key: '491dec7ae6b0f7a709f6e0a8c7ffcf4c3a5fd3de', variant: "subtle-tertiary", icon: iconPlus, size: "16", class: "number-stepper-button step-plus", "aria-label": "increment number", onClick: () => this.handleStepOperation('up') })))))));
362
365
  }
363
366
  static get is() { return "ix-number-input"; }
364
367
  static get encapsulation() { return "shadow"; }
@@ -234,6 +234,12 @@
234
234
  color: var(--theme-btn-subtle-tertiary--color--active);
235
235
  }
236
236
 
237
+ :host(.active:not(.disabled)) .btn-subtle-tertiary:not(.disabled):not(:disabled) {
238
+ border-color: var(--theme-btn-subtle-tertiary--border-color--active);
239
+ background-color: var(--theme-btn-subtle-tertiary--background--active);
240
+ color: var(--theme-btn-subtle-tertiary--color--active);
241
+ }
242
+
237
243
  :host(.disabled) {
238
244
  pointer-events: none;
239
245
  }
@@ -154,10 +154,22 @@ export class Menu {
154
154
  return this.hostElement.shadowRoot.querySelector('.menu');
155
155
  }
156
156
  get menuItemsContainer() {
157
- return this.menu.querySelector('.tabs');
157
+ const menuItemsContainer = this.menu?.querySelector('.tabs');
158
+ if (!menuItemsContainer) {
159
+ throw new Error('Menu items container not found');
160
+ }
161
+ return menuItemsContainer;
158
162
  }
159
163
  get menuNavigationContainer() {
160
- return this.menu.querySelector('.menu-navigation');
164
+ const menu = this.menu;
165
+ if (!menu) {
166
+ throw new Error('Menu element not found');
167
+ }
168
+ const menuNavigationContainer = menu.querySelector('.menu-navigation');
169
+ if (!menuNavigationContainer) {
170
+ throw new Error('Menu navigation container not found');
171
+ }
172
+ return menuNavigationContainer;
161
173
  }
162
174
  get overlayContainer() {
163
175
  return this.hostElement.shadowRoot.querySelector('.menu-overlay');
@@ -461,7 +473,11 @@ export class Menu {
461
473
  }
462
474
  animateOverlayFadeIn() {
463
475
  requestAnimationFrame(() => {
464
- animate(this.overlayContainer, {
476
+ const overlayContainer = this.overlayContainer;
477
+ if (!overlayContainer) {
478
+ return;
479
+ }
480
+ animate(overlayContainer, {
465
481
  duration: Animation.mediumTime,
466
482
  backdropFilter: [0, 'blur(1rem)'],
467
483
  translateX: ['-4rem', 0],
@@ -478,7 +494,12 @@ export class Menu {
478
494
  }
479
495
  animateOverlayFadeOut(onComplete) {
480
496
  requestAnimationFrame(() => {
481
- animate(this.overlayContainer, {
497
+ const overlayContainer = this.overlayContainer;
498
+ if (!overlayContainer) {
499
+ onComplete();
500
+ return;
501
+ }
502
+ animate(overlayContainer, {
482
503
  duration: Animation.mediumTime,
483
504
  backdropFilter: ['blur(1rem)', 0],
484
505
  translateX: [0, '-4rem'],
@@ -584,7 +605,8 @@ export class Menu {
584
605
  }
585
606
  event.preventDefault();
586
607
  if (isMenuNavigationFocused) {
587
- let index = items.indexOf(this.lastFocusedMenuItem);
608
+ const lastFocusedMenuItem = this.lastFocusedMenuItem;
609
+ let index = lastFocusedMenuItem ? items.indexOf(lastFocusedMenuItem) : -1;
588
610
  if (event.key === 'Home') {
589
611
  index = 0;
590
612
  }
@@ -643,32 +665,32 @@ export class Menu {
643
665
  else if (this.showAbout) {
644
666
  overlayLabel = this.i18nLegal;
645
667
  }
646
- return (h(Host, { key: '5f6815b9abd45243d81f776dd85efd9aab656588', class: {
668
+ return (h(Host, { key: '449ca7a0f94dfaf9394fdeaaa6e56d974fe9aea8', class: {
647
669
  expanded: this.expand,
648
670
  [`breakpoint-${this.breakpoint}`]: true,
649
- }, slot: "menu" }, h("nav", { key: '7015050bc75040e5b8108a69192a1bdcbff57846', "aria-label": this.applicationName, class: {
671
+ }, slot: "menu" }, h("nav", { key: 'bb57a2c2efc023be57d3d0038c60e62ab8eb6b49', "aria-label": this.applicationName, class: {
650
672
  menu: true,
651
673
  expanded: this.expand,
652
- } }, h("div", { key: '3a114469dd32955a38cdca3a5e2e03cd5b2471db', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: '89f1c89efa15f828a257d275850dd26de4ee36b2', breakpoint: this.breakpoint, expanded: this.expand, "i18n-expand": this.i18nExpand, "i18n-collapse": this.i18nCollapse, pinned: this.pinned, class: "menu-expand-icon", onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
653
- this.applicationLayoutContext?.appSwitchConfig && (h("ix-icon-button", { key: '469adcac94c793d8d23296a97037e33027ef6101', onClick: () => {
674
+ } }, h("div", { key: '0fcf66d57abbaad7223bdd9e5feb4b77bafd9431', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: '89c12c219b3fb73b0de5dc6ae3d0c6d10bb64758', breakpoint: this.breakpoint, expanded: this.expand, "i18n-expand": this.i18nExpand, "i18n-collapse": this.i18nCollapse, pinned: this.pinned, class: "menu-expand-icon", onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
675
+ this.applicationLayoutContext?.appSwitchConfig && (h("ix-icon-button", { key: '51f3c2912ebb9b09c0af23079c66be10affd6960', onClick: () => {
654
676
  this.showAppSwitch();
655
- }, icon: iconApps, variant: "subtle-tertiary" }))), h("div", { key: 'd7845606dc164ac287c1eb9fbbbc5182df51b3d6', role: "menubar", "aria-orientation": "vertical", "aria-label": this.i18nAriaLabelMenu, "aria-description": this.i18nNavigationHint, class: {
677
+ }, icon: iconApps, variant: "subtle-tertiary" }))), h("div", { key: '57d9f0e01c35828de9d4fad3cfdcca2fe517b7be', role: "menubar", "aria-orientation": "vertical", "aria-label": this.i18nAriaLabelMenu, "aria-description": this.i18nNavigationHint, class: {
656
678
  'menu-navigation': true,
657
679
  'menu-navigation--fill': this.shouldFillMenuNavigation,
658
- }, tabIndex: 0, onKeyDown: (e) => this.handleMenuKeyDown(e), onFocusin: (e) => this.handleMenuFocusIn(e), onFocusout: () => this.resetRovingTabIndex() }, h("div", { key: 'a9b2b9fb987fe35e89c79d48084188d352186a5d', id: "menu-tabs", style: {
680
+ }, tabIndex: 0, onKeyDown: (e) => this.handleMenuKeyDown(e), onFocusin: (e) => this.handleMenuFocusIn(e), onFocusout: () => this.resetRovingTabIndex() }, h("div", { key: '59e46b324cbd55621602a2181226bc68d90387e0', id: "menu-tabs", style: {
659
681
  display: 'contents',
660
- }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: '9873540581ae3a56946aa25df1226f49cd8263dd', class: "tabs-shadow-container" }, h("div", { key: '455bab2823a08e5986b49cddee42f4ab6693fdf5', class: {
682
+ }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: '0de02c5ad2c3542e2d151749f03b3fb146bf2af8', class: "tabs-shadow-container" }, h("div", { key: '5e0d14aa34ed1eeb8e73d584736cadeb61bb8470', class: {
661
683
  'tabs--shadow': true,
662
684
  'tabs--shadow-top': true,
663
685
  'tabs--shadow--show': this.itemsScrollShadowTop,
664
- } }), h("div", { key: 'f9bfcef1a3c9da55668a9fcd3d1525eb93027c7a', class: {
686
+ } }), h("div", { key: '7155a5ce55051a5af41d9d10846dea97c709195f', class: {
665
687
  tabs: true,
666
688
  'show-scrollbar': this.expand,
667
- }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: '02b8d8fc871e63599af9da6671add34cdb6d44e9', class: "menu-avatar" }, h("slot", { key: 'd09ba12af87e88c37ef4191a93cf34e020b81697', name: "ix-menu-avatar" })), h("slot", { key: 'a5ba3a6342eb7fed67c335ce3e78827c5177cc00', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: 'e1a3055be90a4db89191c93fccd7639191864c92', class: {
689
+ }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: '517ce6c97a8849e3b5fe6fa94709961d405d4c31', class: "menu-avatar" }, h("slot", { key: '88390e60feda388e9a8111e79b3a6dc580b5c245', name: "ix-menu-avatar" })), h("slot", { key: 'd78f3b4d691725a0a40900f7ea1320ac9559337f', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: '148bb19403ce4054bfc9203daecf9170345cfb44', class: {
668
690
  'tabs--shadow': true,
669
691
  'tabs--shadow-bottom': true,
670
692
  'tabs--shadow--show': this.itemsScrollShadowBottom,
671
- } }))), h("div", { key: '47ad3e4151532503b1615f09bd72ce817ac9cf78', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: '06f18d87d99292f05df3456f0b6fb51df2635a4d', name: "bottom", onSlotchange: () => this.updateBottomSlotState() })), h("div", { key: '538aa364e048d96ecca787ce0e38e8307af99ef5', class: "bottom-tab-divider" }), h("div", { key: '3452cd5dcea04f81b23fe9ee7d761dcd8f34936f', class: "menu-utility-controls" }, this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
693
+ } }))), h("div", { key: '39d0cf6c66d182b50f2e557a3b6a90da69d4ee79', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: 'cb990a09fb2691d7773acf6da632bce51376a93f', name: "bottom", onSlotchange: () => this.updateBottomSlotState() })), h("div", { key: '864ddfdd85e2262151aea546e9c9c8e754d70d58', class: "bottom-tab-divider" }), h("div", { key: '73ee7628abee073af7f8479e4aba31dc7319ba6d', class: "menu-utility-controls" }, this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
672
694
  'internal-tab': true,
673
695
  'bottom-tab': true,
674
696
  active: this.showSettings,
@@ -676,14 +698,14 @@ export class Menu {
676
698
  'internal-tab': true,
677
699
  'bottom-tab': true,
678
700
  active: this.showAbout,
679
- }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal, "aria-haspopup": "dialog", "aria-expanded": this.showAbout.toString(), "aria-controls": "menu-overlay" })) : null)), h("div", { key: 'b5b1d58232534c81c79591bf0df1c5e508551394', id: "popover-area" })), h("section", { key: 'e8b48131b814163ab7c23637e55b6991b7e2a3cb', id: "menu-overlay", role: "dialog", "aria-label": overlayLabel, class: {
701
+ }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal, "aria-haspopup": "dialog", "aria-expanded": this.showAbout.toString(), "aria-controls": "menu-overlay" })) : null)), h("div", { key: 'cb0da1257fdf75a09a878c5be78065f0936238f1', id: "popover-area" })), h("section", { key: 'c0baf0bd660819f8039a0ee8dcf4b7866e80f02c', id: "menu-overlay", role: "dialog", "aria-label": overlayLabel, class: {
680
702
  'menu-overlay': true,
681
703
  visible: this.isOverlayVisible(),
682
704
  expanded: this.expand,
683
705
  }, onTransitionEnd: () => {
684
706
  this.isTransitionDisabled = true;
685
707
  this.checkTransition();
686
- } }, h("div", { key: '10e5137c8069b962c9114033c404f54bb9c60a63', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '975b5fdb40e76a00061e9e9744a53df4ea2055fb', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
708
+ } }, h("div", { key: '22297492769c540256fdf4b508ec8fec904886bf', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '271f5f0e12d342e41d439113e69d5820e885522b', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
687
709
  }
688
710
  static get is() { return "ix-menu"; }
689
711
  static get encapsulation() { return "shadow"; }
@@ -92,6 +92,9 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
92
92
  }
93
93
  animateFadeOut() {
94
94
  const slotHideThresholdMs = 25;
95
+ if (!this.menuItemsContainer) {
96
+ return;
97
+ }
95
98
  animate(this.menuItemsContainer, {
96
99
  duration: DefaultAnimationTimeout,
97
100
  easing: 'easeInSine',
@@ -108,11 +111,17 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
108
111
  animateFadeIn() {
109
112
  this.showItems = true;
110
113
  this.showDropdown = false;
114
+ if (!this.menuItemsContainer) {
115
+ return;
116
+ }
111
117
  animate(this.menuItemsContainer, {
112
118
  duration: DefaultAnimationTimeout,
113
119
  easing: 'easeInSine',
114
120
  opacity: [0, 1],
115
121
  maxHeight: [0, this.getNestedItemsHeight() + DefaultIxMenuItemHeight],
122
+ onComplete: () => {
123
+ this.clearMenuItemsContainerStyles();
124
+ },
116
125
  });
117
126
  }
118
127
  showMenuItemDropdown() {
@@ -120,8 +129,9 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
120
129
  return;
121
130
  }
122
131
  this.closeOtherCategories.emit(this.categoryId);
123
- if (this.dropdownRef.current) {
124
- const ref = dropdownController.getDropdownById(this.dropdownRef.current.dataset.ixDropdown);
132
+ const dropdownId = this.dropdownRef.current?.dataset.ixDropdown;
133
+ if (dropdownId) {
134
+ const ref = dropdownController.getDropdownById(dropdownId);
125
135
  if (ref) {
126
136
  dropdownController.present(ref);
127
137
  }
@@ -131,8 +141,9 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
131
141
  if (event?.detail === this.categoryId) {
132
142
  return;
133
143
  }
134
- if (this.dropdownRef.current) {
135
- const ref = dropdownController.getDropdownById(this.dropdownRef.current.dataset.ixDropdown);
144
+ const dropdownId = this.dropdownRef.current?.dataset.ixDropdown;
145
+ if (dropdownId) {
146
+ const ref = dropdownController.getDropdownById(dropdownId);
136
147
  if (ref) {
137
148
  dropdownController.dismiss(ref);
138
149
  }
@@ -302,12 +313,12 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
302
313
  this.ixMenu?.addEventListener('expandChange', ({ detail: menuExpand }) => {
303
314
  this.menuExpand = menuExpand;
304
315
  if (!menuExpand) {
305
- this.clearMenuItemStyles();
316
+ this.clearMenuItemsContainerStyles();
306
317
  }
307
318
  this.showItems = this.isCategoryItemListVisible();
308
319
  });
309
320
  }
310
- clearMenuItemStyles() {
321
+ clearMenuItemsContainerStyles() {
311
322
  this.menuItemsContainer?.style.removeProperty('max-height');
312
323
  this.menuItemsContainer?.style.removeProperty('opacity');
313
324
  }
@@ -327,7 +338,7 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
327
338
  ...this.inheritAriaAttributes,
328
339
  };
329
340
  delete inheritedA11yWithoutRole.role;
330
- return (h(Host, { key: '16e92aa31c97226ac110248e58ee4e8cf6e686cb', class: {
341
+ return (h(Host, { key: '0b54b4b98d9630b70224a566eb6b6abd86f69139', class: {
331
342
  expanded: this.showItems,
332
343
  }, onIxMenuCategoryItemSelect: () => this.onNestedItemSelect(), onPointerEnter: () => {
333
344
  this.showMenuItemDropdown();
@@ -336,14 +347,14 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
336
347
  return;
337
348
  }
338
349
  this.hideMenuItemDropdown();
339
- } }, h("ix-menu-item", { key: 'bfce7e95d4e994a53d20016b1108f26248c19de9', ...inheritedA11yWithoutRole, "aria-haspopup": 'menu', "aria-expanded": this.showItems || this.showDropdown ? 'true' : 'false', id: this.categoryId, ref: this.categoryParentRef, class: 'category-parent', active: this.isNestedItemActive(), notifications: this.notifications, icon: this.icon, onClick: (e) => this.onCategoryClick(e), onKeyDown: (event) => this.onKeyDown(event), tooltipText: this.tooltipText, isCategory: true, menuCategoryLabel: this.label }, h("span", { key: '1700d1f6d3c93e66ede8e96ab6f6ed126b255220', class: "category" }, h("span", { key: '6f56b33cbf5be34051d2466c9b99d012664ad1c9', class: "category-text" }, this.label), h("ix-icon", { key: 'b971ca95e49344cc3f60c72430701c6a8c06a21c', name: iconChevronDownSmall, class: {
350
+ } }, h("ix-menu-item", { key: '50e63e3d3002e6551336d04e608f8c3f7d51ff3d', ...inheritedA11yWithoutRole, "aria-haspopup": 'menu', "aria-expanded": this.showItems || this.showDropdown ? 'true' : 'false', id: this.categoryId, ref: this.categoryParentRef, class: 'category-parent', active: this.isNestedItemActive(), notifications: this.notifications, icon: this.icon, onClick: (e) => this.onCategoryClick(e), onKeyDown: (event) => this.onKeyDown(event), tooltipText: this.tooltipText, isCategory: true, menuCategoryLabel: this.label }, h("span", { key: 'feeb581bf824de38b25d164e9c8ddabb5afbea51', class: "category" }, h("span", { key: '096f4f45fadd93317bc67be9d449c1d610096155', class: "category-text" }, this.label), h("ix-icon", { key: '03c15e2624ed0580e513c2d361af37f02afd9c9c', name: iconChevronDownSmall, class: {
340
351
  'category-chevron': true,
341
352
  'category-chevron--open': this.showItems,
342
- }, "aria-hidden": "true" }))), h("div", { key: '36f61ae3b2b0e52fa67380216d46b5386c446f30', ref: (ref) => (this.menuItemsContainer = ref), class: {
353
+ }, "aria-hidden": "true" }))), h("div", { key: '4c2a38f8d7f63cb0d400983a70c2ca0cbc7d7da9', ref: (ref) => (this.menuItemsContainer = ref), class: {
343
354
  'menu-items': true,
344
355
  'menu-items--expanded': this.showItems,
345
356
  'menu-items--collapsed': !this.showItems,
346
- }, role: "menu", "aria-labelledby": this.categoryId, onKeyDown: (e) => this.onMenuItemsKeyDown(e) }, this.showItems ? h("slot", null) : null), h("ix-dropdown", { key: 'a89d90584e563751f4e8c5705be94e2e52cd801a', ref: this.dropdownRef, hostRole: "menu", "aria-label": this.label, closeBehavior: 'both', show: this.showDropdown, onShowChange: ({ detail }) => this.onDropdownShowChange(detail), onShowChanged: ({ detail }) => this.onDropdownShowChanged(detail), class: 'category-dropdown', anchor: this.hostElement, placement: "right-start", offset: {
357
+ }, role: "menu", "aria-labelledby": this.categoryId, onKeyDown: (e) => this.onMenuItemsKeyDown(e) }, this.showItems ? h("slot", null) : null), h("ix-dropdown", { key: '541fc21db5cf52b0854a517525a636a8bd82d436', ref: this.dropdownRef, hostRole: "menu", "aria-label": this.label, closeBehavior: 'both', show: this.showDropdown, onShowChange: ({ detail }) => this.onDropdownShowChange(detail), onShowChanged: ({ detail }) => this.onDropdownShowChanged(detail), class: 'category-dropdown', anchor: this.hostElement, placement: "right-start", offset: {
347
358
  mainAxis: 3,
348
359
  }, focusHost: this.hostElement, onClick: (e) => {
349
360
  if (e.target instanceof HTMLElement) {
@@ -354,7 +365,7 @@ export class MenuCategory extends Mixin(...DefaultMixins, InheritAriaAttributesM
354
365
  e.preventDefault();
355
366
  }
356
367
  }
357
- }, onFocusout: () => this.onDropdownFocusOut() }, h("ix-dropdown-item", { key: '437c4dfccac1e17d515cc1095b9b2d2ded520ae6', class: 'category-dropdown-header', tabindex: -1, "aria-hidden": "true" }, h("ix-typography", { key: 'a72c3c3f9db4d7330f7876518f2e0d26b3718f02', format: "label", bold: true, textColor: "std" }, this.label)), h("ix-divider", { key: 'f743e54cbdbd27b56030f2a8f44073fe12ea1564' }), h("slot", { key: '37394a8edb8a0eeffa8b2ed4aaeb5d913249f2d5' }))));
368
+ }, onFocusout: () => this.onDropdownFocusOut() }, h("ix-dropdown-item", { key: 'b277224530668e11c773ba48ef6a9c16e65a872d', class: 'category-dropdown-header', tabindex: -1, "aria-hidden": "true" }, h("ix-typography", { key: '4727fd4f5311c9aacdf5bf6745c625906e0ea6e5', format: "label", bold: true, textColor: "std" }, this.label)), h("ix-divider", { key: 'e9aef75055efc7168309041d981596a817e21fc9' }), h("slot", { key: '13c5d736008e47b8359877e3efb7d5db3c4b1018' }))));
358
369
  }
359
370
  static get is() { return "ix-menu-category"; }
360
371
  static get encapsulation() { return "shadow"; }
@@ -125,6 +125,7 @@ export class MenuItem extends Mixin(...DefaultMixins, InheritAriaAttributesMixin
125
125
  undefined;
126
126
  }
127
127
  connectedCallback() {
128
+ super.connectedCallback();
128
129
  this.observer.observe(this.hostElement, {
129
130
  subtree: true,
130
131
  childList: true,
@@ -158,7 +159,10 @@ export class MenuItem extends Mixin(...DefaultMixins, InheritAriaAttributesMixin
158
159
  this.tooltipText !== this.label &&
159
160
  this.tooltipText !== this.hostElement.textContent;
160
161
  if (hasDistinctTooltip) {
161
- return `${this.label ?? this.menuCategoryLabel ?? this.hostElement.textContent ?? ''} ${this.tooltipText}`;
162
+ return `${this.label ??
163
+ this.menuCategoryLabel ??
164
+ this.hostElement.textContent ??
165
+ ''} ${this.tooltipText}`;
162
166
  }
163
167
  return undefined;
164
168
  }
@@ -196,12 +200,12 @@ export class MenuItem extends Mixin(...DefaultMixins, InheritAriaAttributesMixin
196
200
  ...inheritedA11yWithoutRole,
197
201
  };
198
202
  const menuContent = [
199
- this.icon && (h("ix-icon", { key: 'e319ac5c518ad11e6dee70251088c6f327f49827', class: 'tab-icon', name: this.icon, "aria-hidden": "true" })),
203
+ this.icon && (h("ix-icon", { key: 'a419f5c94d24c852e00387f916108cefae727cf0', class: 'tab-icon', name: this.icon, "aria-hidden": "true" })),
200
204
  this.notifications ? (h("div", { class: "notification" }, h("div", { class: "pill" }, this.notifications))) : null,
201
- h("span", { key: 'c8e17fa4cb154eff4a2c524bc2118acb694d5d25', id: this.internalItemId, class: "tab-text text-default" }, this.label, h("slot", { key: 'd747ad50df0926969025d4aaa60d0c47b7ca2602' })),
205
+ h("span", { key: '95833b6a1e057c688a612455889aee0f6aab388e', id: this.internalItemId, class: "tab-text text-default" }, this.label, h("slot", { key: '94628460eddc3c008ce9878a3cfd275fe2ced889' })),
202
206
  ];
203
207
  const ariaLabel = this.getAriaLabel();
204
- return (h(Host, { key: '38dbbe9a89ab0a1063063d986c107eb0b4ecb92d', class: {
208
+ return (h(Host, { key: 'dd42494be7e2e0d4a109e137f53a21c05696a3b9', class: {
205
209
  disabled: this.disabled,
206
210
  'home-tab': this.home,
207
211
  'bottom-tab': this.bottom,
@@ -217,7 +221,7 @@ export class MenuItem extends Mixin(...DefaultMixins, InheritAriaAttributesMixin
217
221
  }
218
222
  }, "aria-disabled": a11yBoolean(this.disabled), "aria-label": ariaLabel, "aria-current": this.active ? 'page' : undefined }, menuContent)) : (h("button", { ...commonAttributes, role: effectiveRole, tabIndex: this.isInMenuContext || this.isCategory
219
223
  ? this.hostTabIndex
220
- : undefined, ref: this.buttonRef, onKeyDown: (e) => this.handleCategoryKeyDown(e), "aria-disabled": a11yBoolean(this.disabled), "aria-label": ariaLabel, "aria-current": this.active ? 'page' : undefined }, menuContent)), h("ix-tooltip", { key: '4fdc4aa9b1944ec3f43d12b71c81e0518d29ae75', for: this.buttonRef.waitForCurrent(), placement: 'right', showDelay: 1000, interactive: false, "aria-hidden": "true", "aria-labelledby": this.internalItemId }, this.tooltip)));
224
+ : undefined, ref: this.buttonRef, onKeyDown: (e) => this.handleCategoryKeyDown(e), "aria-disabled": a11yBoolean(this.disabled), "aria-label": ariaLabel, "aria-current": this.active ? 'page' : undefined }, menuContent)), h("ix-tooltip", { key: '4323e540c6d50894126a913ea1eb2a6101c27777', for: this.buttonRef.waitForCurrent(), placement: 'right', showDelay: 1000, interactive: false, "aria-hidden": "true", "aria-labelledby": this.internalItemId }, this.tooltip)));
221
225
  }
222
226
  static get is() { return "ix-menu-item"; }
223
227
  static get encapsulation() { return "shadow"; }
@@ -65,8 +65,15 @@ export class Modal {
65
65
  get dialog() {
66
66
  return this.hostElement.shadowRoot.querySelector('dialog');
67
67
  }
68
- slideInModal() {
68
+ getDialogElement() {
69
69
  const dialog = this.dialog;
70
+ if (!dialog) {
71
+ throw new Error('Modal dialog element not found');
72
+ }
73
+ return dialog;
74
+ }
75
+ slideInModal() {
76
+ const dialog = this.getDialogElement();
70
77
  dialog.classList.remove('modal-open-settled');
71
78
  const duration = this.disableAnimation ? 0 : Animation.mediumTime;
72
79
  const translateY = this.centered ? ['-90%', '-50%'] : [0, 40];
@@ -84,7 +91,7 @@ export class Modal {
84
91
  }
85
92
  }
86
93
  slideOutModal(completeCallback) {
87
- const dialog = this.dialog;
94
+ const dialog = this.getDialogElement();
88
95
  dialog.classList.remove('modal-open-settled');
89
96
  const duration = this.disableAnimation ? 0 : Animation.mediumTime;
90
97
  const translateY = this.centered ? ['-50%', '-90%'] : [40, 0];
@@ -104,7 +111,7 @@ export class Modal {
104
111
  closeDialog(type, reason, emitter) {
105
112
  this.slideOutModal(() => {
106
113
  this.modalVisible = false;
107
- this.dialog.close(JSON.stringify({ type, reason }, null, 2));
114
+ this.getDialogElement().close(JSON.stringify({ type, reason }, null, 2));
108
115
  emitter.emit(reason);
109
116
  });
110
117
  }
@@ -200,12 +207,12 @@ export class Modal {
200
207
  this.ariaAttributes = a11yHostAttributes(this.hostElement);
201
208
  }
202
209
  render() {
203
- return (h(Host, { key: '1b9c4c03e9fad75ac84ab6854f51c4ff9cbf752a', class: {
210
+ return (h(Host, { key: '2180a5dec01b447918c6a62820ebdebb32bbfb69', class: {
204
211
  visible: this.modalVisible,
205
212
  'no-backdrop': this.hideBackdrop,
206
213
  'align-center': this.centered,
207
214
  'non-blocking': this.isNonBlocking,
208
- } }, h("div", { key: 'd5f089500fae809e0080a262d5a4d54101fee727', class: "dialog-backdrop" }, h("dialog", { key: '1a124dda3c4961c8cdc0c81a5698f5f932145f22', "aria-modal": a11yBoolean(!this.isNonBlocking), "aria-describedby": this.ariaAttributes['aria-describedby'], "aria-labelledby": this.ariaAttributes['aria-labelledby'], class: {
215
+ } }, h("div", { key: '132b7e41099bf050a6f1fc5a212b836c7be4ac1e', class: "dialog-backdrop" }, h("dialog", { key: '07ade6cf27df03233bd1755f2a7fc427e28c6a78', "aria-modal": a11yBoolean(!this.isNonBlocking), "aria-describedby": this.ariaAttributes['aria-describedby'], "aria-labelledby": this.ariaAttributes['aria-labelledby'], class: {
209
216
  modal: true,
210
217
  [`modal-size-${this.size}`]: true,
211
218
  }, onClose: () => this.dismissModal(), onMouseDown: (event) => this.onMouseDown(event), onMouseUp: (event) => this.onMouseUp(event), onKeyDown: (e) => {
@@ -217,7 +224,7 @@ export class Modal {
217
224
  }, onCancel: (e) => {
218
225
  e.preventDefault();
219
226
  void this.dismissModal();
220
- } }, h("slot", { key: 'd24dd84c8f50b1542b4c992af079b0cdfbc50e15' })))));
227
+ } }, h("slot", { key: '09b7b0f877ce103d4af3f10e1c774b19c1201322' })))));
221
228
  }
222
229
  static get is() { return "ix-modal"; }
223
230
  static get encapsulation() { return "shadow"; }
@@ -62,10 +62,10 @@ export class ModalHeader {
62
62
  if (ce.defaultPrevented || event.defaultPrevented) {
63
63
  return;
64
64
  }
65
- this.parentDialog.dismissModal();
65
+ this.parentDialog?.dismissModal();
66
66
  }
67
67
  render() {
68
- return (h(Host, { key: '507ee77667cf755dd2c36c02437b8c345bd9dffb' }, this.icon ? (h("ix-icon", { name: this.icon, color: this.iconColor, size: "32", "aria-label": this.ariaLabelIcon })) : null, h("div", { key: 'e525b0e45c254793c69263f6f910255b96b99909', class: "modal-title" }, h("ix-typography", { key: 'bff18e37ae4ff51bdbac61adb7e16e13f8be7612', format: "h5" }, h("slot", { key: '2081bf8ae9df7f5b3d6c74e8cd4c2842202696f4' }))), !this.hideClose ? (h("ix-icon-button", { class: "modal-close", onClick: (event) => this.onCloseClick(event), variant: "tertiary", icon: iconClose, iconColor: "color-soft-text", "aria-label": this.ariaLabelCloseIconButton })) : null));
68
+ return (h(Host, { key: '9f03264844ac63ce55494f2177d1ea38179e736a' }, this.icon ? (h("ix-icon", { name: this.icon, color: this.iconColor, size: "32", "aria-label": this.ariaLabelIcon })) : null, h("div", { key: '62cd301023d42678376d6c064f280970185f29d3', class: "modal-title" }, h("ix-typography", { key: '7d816462cfca738fca02746590548256bd0d529f', format: "h5" }, h("slot", { key: '946ddbbb1dfc674038d618a68e7c4a204d69d6e1' }))), !this.hideClose ? (h("ix-icon-button", { class: "modal-close", onClick: (event) => this.onCloseClick(event), variant: "tertiary", icon: iconClose, iconColor: "color-soft-text", "aria-label": this.ariaLabelCloseIconButton })) : null));
69
69
  }
70
70
  static get is() { return "ix-modal-header"; }
71
71
  static get encapsulation() { return "shadow"; }