@siemens/ix 3.0.0-alpha.4 → 3.0.0

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 (1093) hide show
  1. package/components/ix-action-card.js +4 -4
  2. package/components/ix-action-card.js.map +1 -1
  3. package/components/ix-application-header.js +1 -1
  4. package/components/ix-application-switch-modal.js +4 -4
  5. package/components/ix-application.js +3 -3
  6. package/components/ix-application.js.map +1 -1
  7. package/components/ix-avatar.js +1 -1
  8. package/components/ix-basic-navigation.js +5 -5
  9. package/components/ix-blind.js +6 -7
  10. package/components/ix-blind.js.map +1 -1
  11. package/components/ix-breadcrumb.js +3 -5
  12. package/components/ix-breadcrumb.js.map +1 -1
  13. package/components/ix-button.js +1 -1
  14. package/components/ix-card-accordion.js +1 -1
  15. package/components/ix-card-content.js +1 -1
  16. package/components/ix-card-list.js +9 -11
  17. package/components/ix-card-list.js.map +1 -1
  18. package/components/ix-card-title.js +1 -1
  19. package/components/ix-card.js +1 -1
  20. package/components/ix-category-filter.js +6 -6
  21. package/components/ix-category-filter.js.map +1 -1
  22. package/components/ix-checkbox-group.js +55 -8
  23. package/components/ix-checkbox-group.js.map +1 -1
  24. package/components/ix-checkbox.js +15 -7
  25. package/components/ix-checkbox.js.map +1 -1
  26. package/components/ix-chip.js +8 -7
  27. package/components/ix-chip.js.map +1 -1
  28. package/components/ix-col.js +1 -1
  29. package/components/ix-content-header.js +2 -2
  30. package/components/ix-content.js +4 -4
  31. package/components/ix-content.js.map +1 -1
  32. package/components/ix-custom-field.js +6 -6
  33. package/components/ix-custom-field.js.map +1 -1
  34. package/components/ix-date-dropdown.js +12 -16
  35. package/components/ix-date-dropdown.js.map +1 -1
  36. package/components/ix-date-input.js +14 -14
  37. package/components/ix-date-input.js.map +1 -1
  38. package/components/ix-date-picker.js +1 -1
  39. package/components/ix-date-time-card.js +1 -1
  40. package/components/ix-datetime-picker.js +12 -22
  41. package/components/ix-datetime-picker.js.map +1 -1
  42. package/components/ix-divider.js +1 -1
  43. package/components/ix-drawer.js +1 -1
  44. package/components/ix-dropdown-button.js +5 -6
  45. package/components/ix-dropdown-button.js.map +1 -1
  46. package/components/ix-dropdown-header.js +2 -2
  47. package/components/ix-dropdown-header.js.map +1 -1
  48. package/components/ix-dropdown-quick-actions.js +1 -1
  49. package/components/ix-dropdown-quick-actions.js.map +1 -1
  50. package/components/ix-dropdown.js +1 -1
  51. package/components/ix-empty-state.js +3 -3
  52. package/components/ix-empty-state.js.map +1 -1
  53. package/components/ix-expanding-search.js +5 -6
  54. package/components/ix-expanding-search.js.map +1 -1
  55. package/components/ix-field-label.js +1 -1
  56. package/components/ix-field-wrapper.js +1 -1
  57. package/components/ix-filter-chip.js +1 -1
  58. package/components/ix-flip-tile.js +5 -7
  59. package/components/ix-flip-tile.js.map +1 -1
  60. package/components/ix-group-context-menu.js +1 -1
  61. package/components/ix-group.js +2 -2
  62. package/components/ix-helper-text.js +2 -2
  63. package/components/ix-icon-button.js +1 -1
  64. package/components/ix-icon-toggle-button.js +1 -1
  65. package/components/ix-icon-toggle-button.js.map +1 -1
  66. package/components/ix-input-group.js +1 -1
  67. package/components/ix-input-group.js.map +1 -1
  68. package/components/ix-input.js +18 -11
  69. package/components/ix-input.js.map +1 -1
  70. package/components/ix-key-value-list.js +1 -1
  71. package/components/ix-key-value-list.js.map +1 -1
  72. package/components/ix-key-value.js +1 -1
  73. package/components/ix-key-value.js.map +1 -1
  74. package/components/ix-layout-auto.js +1 -1
  75. package/components/ix-layout-auto.js.map +1 -1
  76. package/components/ix-layout-grid.js +1 -1
  77. package/components/ix-link-button.js +3 -3
  78. package/components/ix-link-button.js.map +1 -1
  79. package/components/ix-map-navigation-overlay.js +1 -1
  80. package/components/ix-map-navigation.js +8 -9
  81. package/components/ix-map-navigation.js.map +1 -1
  82. package/components/ix-menu-about-news.js +3 -3
  83. package/components/ix-menu-about.js +4 -4
  84. package/components/ix-menu-avatar.js +6 -8
  85. package/components/ix-menu-avatar.js.map +1 -1
  86. package/components/ix-menu-category.js +10 -10
  87. package/components/ix-menu-category.js.map +1 -1
  88. package/components/ix-menu-expand-icon.js +1 -1
  89. package/components/ix-menu-item.js +1 -1
  90. package/components/ix-menu-settings.js +1 -1
  91. package/components/ix-menu.js +17 -19
  92. package/components/ix-menu.js.map +1 -1
  93. package/components/ix-message-bar.js +1 -1
  94. package/components/ix-modal-content.js +1 -1
  95. package/components/ix-modal-footer.js +1 -1
  96. package/components/ix-modal-footer.js.map +1 -1
  97. package/components/ix-modal-header.js +1 -1
  98. package/components/ix-modal.js +3 -7
  99. package/components/ix-modal.js.map +1 -1
  100. package/components/ix-number-input.js +20 -15
  101. package/components/ix-number-input.js.map +1 -1
  102. package/components/ix-pagination.js +10 -10
  103. package/components/ix-pagination.js.map +1 -1
  104. package/components/ix-pane-layout.js +1 -1
  105. package/components/ix-pane-layout.js.map +1 -1
  106. package/components/ix-pane.js +8 -8
  107. package/components/ix-pane.js.map +1 -1
  108. package/components/ix-pill.js +2 -2
  109. package/components/ix-push-card.js +6 -7
  110. package/components/ix-push-card.js.map +1 -1
  111. package/components/ix-radio-group.js +37 -11
  112. package/components/ix-radio-group.js.map +1 -1
  113. package/components/ix-radio.js +25 -7
  114. package/components/ix-radio.js.map +1 -1
  115. package/components/ix-row.js +1 -1
  116. package/components/ix-select.js +1 -1
  117. package/components/ix-slider.js +8 -8
  118. package/components/ix-slider.js.map +1 -1
  119. package/components/ix-split-button.js +4 -5
  120. package/components/ix-split-button.js.map +1 -1
  121. package/components/ix-tab-item.js +1 -1
  122. package/components/ix-tabs.js +1 -1
  123. package/components/ix-textarea.js +8 -8
  124. package/components/ix-textarea.js.map +1 -1
  125. package/components/ix-time-picker.js +1 -1
  126. package/components/ix-toast-container.js +2 -2
  127. package/components/ix-toast.js +1 -1
  128. package/components/ix-toggle-button.js +3 -3
  129. package/components/ix-toggle-button.js.map +1 -1
  130. package/components/ix-toggle.js +38 -5
  131. package/components/ix-toggle.js.map +1 -1
  132. package/components/ix-tooltip.js +1 -1
  133. package/components/ix-tree.js +56 -52
  134. package/components/ix-tree.js.map +1 -1
  135. package/components/ix-typography.js +1 -1
  136. package/components/ix-upload.js +1 -1
  137. package/components/ix-validation-tooltip.js +3 -5
  138. package/components/ix-validation-tooltip.js.map +1 -1
  139. package/components/{p-DFQ_caA4.js → p-8eL4ti2y.js} +4 -4
  140. package/components/{p-DFQ_caA4.js.map → p-8eL4ti2y.js.map} +1 -1
  141. package/components/{p-Dfzl82x1.js → p-B19EzNYi.js} +3 -3
  142. package/components/{p-Dfzl82x1.js.map → p-B19EzNYi.js.map} +1 -1
  143. package/components/{p-B9lvhAOc.js → p-B60BmY2x.js} +3 -3
  144. package/components/{p-B9lvhAOc.js.map → p-B60BmY2x.js.map} +1 -1
  145. package/components/{p-BuK5WByk.js → p-B9XDeCpV.js} +4 -4
  146. package/components/{p-BuK5WByk.js.map → p-B9XDeCpV.js.map} +1 -1
  147. package/components/{p-12nKYxsa.js → p-BPVegBx7.js} +9 -11
  148. package/components/p-BPVegBx7.js.map +1 -0
  149. package/components/{p-C8vn2GFY.js → p-BRCAzgk8.js} +4 -4
  150. package/components/p-BRCAzgk8.js.map +1 -0
  151. package/components/{p-iEAZQC4t.js → p-BXPo5zF6.js} +3 -3
  152. package/components/{p-iEAZQC4t.js.map → p-BXPo5zF6.js.map} +1 -1
  153. package/components/{p-CB1ADCkU.js → p-B_C2-EkQ.js} +4 -5
  154. package/components/p-B_C2-EkQ.js.map +1 -0
  155. package/components/{p-DIzxAERt.js → p-Bcmjgmqd.js} +4 -5
  156. package/components/p-Bcmjgmqd.js.map +1 -0
  157. package/components/{p-bM5r59DG.js → p-Bw3J9644.js} +5 -5
  158. package/components/{p-bM5r59DG.js.map → p-Bw3J9644.js.map} +1 -1
  159. package/components/{p-DylMlJTZ.js → p-C8xOvcAt.js} +4 -7
  160. package/components/p-C8xOvcAt.js.map +1 -0
  161. package/components/{p-2g5-4fWy.js → p-CGLA6FT7.js} +5 -6
  162. package/components/p-CGLA6FT7.js.map +1 -0
  163. package/components/{p-C7EBCKmV.js → p-CKoR0lxP.js} +3 -3
  164. package/components/{p-C7EBCKmV.js.map → p-CKoR0lxP.js.map} +1 -1
  165. package/components/{p-pyY5jSfE.js → p-CPs2id8p.js} +5 -5
  166. package/components/{p-pyY5jSfE.js.map → p-CPs2id8p.js.map} +1 -1
  167. package/components/{p-CniBfLG8.js → p-CTuKljhZ.js} +3 -3
  168. package/components/{p-CniBfLG8.js.map → p-CTuKljhZ.js.map} +1 -1
  169. package/components/{p-CVSy9bZ3.js → p-ClepN0Ea.js} +3 -3
  170. package/components/{p-CVSy9bZ3.js.map → p-ClepN0Ea.js.map} +1 -1
  171. package/components/{p-DXzHgqiB.js → p-Cu4GsGII.js} +3 -3
  172. package/components/p-Cu4GsGII.js.map +1 -0
  173. package/components/{p-C1BF91hb.js → p-CufZ3bGn.js} +3 -3
  174. package/components/{p-C1BF91hb.js.map → p-CufZ3bGn.js.map} +1 -1
  175. package/components/{p-0nVQO6bk.js → p-CwYYFZjd.js} +7 -7
  176. package/components/{p-0nVQO6bk.js.map → p-CwYYFZjd.js.map} +1 -1
  177. package/components/{p-BwyqOnwc.js → p-CxztL6IE.js} +18 -25
  178. package/components/p-CxztL6IE.js.map +1 -0
  179. package/components/{p-B-zHEqXz.js → p-Cyxle5Ec.js} +5 -5
  180. package/components/{p-B-zHEqXz.js.map → p-Cyxle5Ec.js.map} +1 -1
  181. package/components/{p-DPZsirnB.js → p-DAYuUWi5.js} +5 -5
  182. package/components/{p-DPZsirnB.js.map → p-DAYuUWi5.js.map} +1 -1
  183. package/components/{p-B55mem60.js → p-DPZN-4Ph.js} +4 -4
  184. package/components/{p-B55mem60.js.map → p-DPZN-4Ph.js.map} +1 -1
  185. package/components/{p-BgpUzYBq.js → p-DUuL9bnV.js} +3 -3
  186. package/components/{p-BgpUzYBq.js.map → p-DUuL9bnV.js.map} +1 -1
  187. package/components/{p-BBSHeR_p.js → p-DVOgkNlf.js} +3 -3
  188. package/components/p-DVOgkNlf.js.map +1 -0
  189. package/components/p-Dn_WjwtW.js.map +1 -1
  190. package/components/{p-D0LdqSVb.js → p-FayACwNG.js} +10 -18
  191. package/components/p-FayACwNG.js.map +1 -0
  192. package/components/{p-CjvgrV9j.js → p-QHGR-zzJ.js} +3 -3
  193. package/components/{p-CjvgrV9j.js.map → p-QHGR-zzJ.js.map} +1 -1
  194. package/components/{p-DDisdyRU.js → p-R4QcECdA.js} +5 -5
  195. package/components/{p-DDisdyRU.js.map → p-R4QcECdA.js.map} +1 -1
  196. package/components/{p-Bnux5wOx.js → p-UMH0sD7L.js} +5 -5
  197. package/components/{p-Bnux5wOx.js.map → p-UMH0sD7L.js.map} +1 -1
  198. package/components/{p-DM43N7pD.js → p-VXLdiXU0.js} +11 -19
  199. package/components/p-VXLdiXU0.js.map +1 -0
  200. package/components/{p-DGeWaNlt.js → p-aw_FhcJ5.js} +4 -2
  201. package/components/p-aw_FhcJ5.js.map +1 -0
  202. package/components/{p-D_wwWxx8.js → p-d7CnwTHv.js} +3 -6
  203. package/components/p-d7CnwTHv.js.map +1 -0
  204. package/components/{p-Dy35mbzK.js → p-uhiF1LKf.js} +4 -6
  205. package/components/p-uhiF1LKf.js.map +1 -0
  206. package/components/{p-qnnCtPgc.js → p-zx7LlxPa.js} +3 -3
  207. package/components/{p-qnnCtPgc.js.map → p-zx7LlxPa.js.map} +1 -1
  208. package/dist/cjs/index-DIFIjYrm.js.map +1 -1
  209. package/dist/cjs/{input.util-DuJG4-L-.js → input.util-DOEvwiFv.js} +4 -4
  210. package/dist/cjs/input.util-DOEvwiFv.js.map +1 -0
  211. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  212. package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
  213. package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
  214. package/dist/cjs/ix-application-header.cjs.entry.js +3 -5
  215. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
  216. package/dist/cjs/ix-application-header.entry.cjs.js.map +1 -1
  217. package/dist/cjs/ix-application.cjs.entry.js +3 -3
  218. package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
  219. package/dist/cjs/ix-application.entry.cjs.js.map +1 -1
  220. package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
  221. package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
  222. package/dist/cjs/ix-blind.cjs.entry.js +5 -6
  223. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  224. package/dist/cjs/ix-blind.entry.cjs.js.map +1 -1
  225. package/dist/cjs/ix-breadcrumb.cjs.entry.js +2 -4
  226. package/dist/cjs/ix-breadcrumb.cjs.entry.js.map +1 -1
  227. package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
  228. package/dist/cjs/ix-button.cjs.entry.js +2 -5
  229. package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
  230. package/dist/cjs/ix-button.entry.cjs.js.map +1 -1
  231. package/dist/cjs/ix-card-accordion.ix-card-title.entry.cjs.js.map +1 -1
  232. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +4 -5
  233. package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
  234. package/dist/cjs/ix-card-list.cjs.entry.js +4 -6
  235. package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
  236. package/dist/cjs/ix-card-list.entry.cjs.js.map +1 -1
  237. package/dist/cjs/ix-card.ix-card-content.entry.cjs.js.map +1 -1
  238. package/dist/cjs/ix-card_2.cjs.entry.js +4 -4
  239. package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
  240. package/dist/cjs/ix-category-filter.cjs.entry.js +3 -3
  241. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  242. package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
  243. package/dist/cjs/ix-checkbox-group.cjs.entry.js +47 -3
  244. package/dist/cjs/ix-checkbox-group.cjs.entry.js.map +1 -1
  245. package/dist/cjs/ix-checkbox-group.entry.cjs.js.map +1 -1
  246. package/dist/cjs/ix-checkbox.cjs.entry.js +12 -5
  247. package/dist/cjs/ix-checkbox.cjs.entry.js.map +1 -1
  248. package/dist/cjs/ix-checkbox.entry.cjs.js.map +1 -1
  249. package/dist/cjs/ix-chip.cjs.entry.js +5 -4
  250. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  251. package/dist/cjs/ix-chip.entry.cjs.js.map +1 -1
  252. package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
  253. package/dist/cjs/ix-col_4.cjs.entry.js +9 -17
  254. package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
  255. package/dist/cjs/ix-content.cjs.entry.js +4 -4
  256. package/dist/cjs/ix-content.cjs.entry.js.map +1 -1
  257. package/dist/cjs/ix-content.entry.cjs.js.map +1 -1
  258. package/dist/cjs/ix-custom-field.cjs.entry.js +2 -2
  259. package/dist/cjs/ix-custom-field.cjs.entry.js.map +1 -1
  260. package/dist/cjs/ix-custom-field.entry.cjs.js.map +1 -1
  261. package/dist/cjs/ix-date-dropdown.cjs.entry.js +4 -8
  262. package/dist/cjs/ix-date-dropdown.cjs.entry.js.map +1 -1
  263. package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
  264. package/dist/cjs/ix-date-input.cjs.entry.js +5 -5
  265. package/dist/cjs/ix-date-input.cjs.entry.js.map +1 -1
  266. package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
  267. package/dist/cjs/ix-date-time-card.cjs.entry.js +1 -1
  268. package/dist/cjs/ix-date-time-card.cjs.entry.js.map +1 -1
  269. package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
  270. package/dist/cjs/ix-datetime-picker.cjs.entry.js +2 -12
  271. package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -1
  272. package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
  273. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  274. package/dist/cjs/ix-divider.cjs.entry.js.map +1 -1
  275. package/dist/cjs/ix-divider.entry.cjs.js.map +1 -1
  276. package/dist/cjs/ix-dropdown-button.cjs.entry.js +2 -3
  277. package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -1
  278. package/dist/cjs/ix-dropdown-button.entry.cjs.js.map +1 -1
  279. package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
  280. package/dist/cjs/ix-dropdown-header.cjs.entry.js.map +1 -1
  281. package/dist/cjs/ix-dropdown-header.entry.cjs.js.map +1 -1
  282. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  283. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js.map +1 -1
  284. package/dist/cjs/ix-dropdown-quick-actions.entry.cjs.js.map +1 -1
  285. package/dist/cjs/ix-dropdown.cjs.entry.js +2 -4
  286. package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
  287. package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
  288. package/dist/cjs/ix-empty-state.cjs.entry.js +1 -1
  289. package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -1
  290. package/dist/cjs/ix-empty-state.entry.cjs.js.map +1 -1
  291. package/dist/cjs/ix-expanding-search.cjs.entry.js +4 -5
  292. package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
  293. package/dist/cjs/ix-expanding-search.entry.cjs.js.map +1 -1
  294. package/dist/cjs/ix-field-label.ix-field-wrapper.entry.cjs.js.map +1 -1
  295. package/dist/cjs/ix-field-label_2.cjs.entry.js +1 -1
  296. package/dist/cjs/ix-field-label_2.cjs.entry.js.map +1 -1
  297. package/dist/cjs/ix-filter-chip.ix-select-item.entry.cjs.js.map +1 -1
  298. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +1 -2
  299. package/dist/cjs/ix-filter-chip_2.cjs.entry.js.map +1 -1
  300. package/dist/cjs/ix-flip-tile.cjs.entry.js +4 -6
  301. package/dist/cjs/ix-flip-tile.cjs.entry.js.map +1 -1
  302. package/dist/cjs/ix-flip-tile.entry.cjs.js.map +1 -1
  303. package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
  304. package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
  305. package/dist/cjs/ix-icon-button_2.cjs.entry.js +1 -4
  306. package/dist/cjs/ix-icon-button_2.cjs.entry.js.map +1 -1
  307. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  308. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -1
  309. package/dist/cjs/ix-icon-toggle-button.entry.cjs.js.map +1 -1
  310. package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
  311. package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
  312. package/dist/cjs/ix-input-group.entry.cjs.js.map +1 -1
  313. package/dist/cjs/ix-input.cjs.entry.js +12 -6
  314. package/dist/cjs/ix-input.cjs.entry.js.map +1 -1
  315. package/dist/cjs/ix-input.entry.cjs.js.map +1 -1
  316. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  317. package/dist/cjs/ix-key-value-list.cjs.entry.js.map +1 -1
  318. package/dist/cjs/ix-key-value-list.entry.cjs.js.map +1 -1
  319. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  320. package/dist/cjs/ix-key-value.cjs.entry.js.map +1 -1
  321. package/dist/cjs/ix-key-value.entry.cjs.js.map +1 -1
  322. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  323. package/dist/cjs/ix-layout-auto.cjs.entry.js.map +1 -1
  324. package/dist/cjs/ix-layout-auto.entry.cjs.js.map +1 -1
  325. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  326. package/dist/cjs/ix-link-button.cjs.entry.js.map +1 -1
  327. package/dist/cjs/ix-link-button.entry.cjs.js.map +1 -1
  328. package/dist/cjs/ix-map-navigation.cjs.entry.js +2 -3
  329. package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
  330. package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
  331. package/dist/cjs/ix-menu-avatar.cjs.entry.js +2 -4
  332. package/dist/cjs/ix-menu-avatar.cjs.entry.js.map +1 -1
  333. package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
  334. package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
  335. package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -1
  336. package/dist/cjs/ix-menu-category.entry.cjs.js.map +1 -1
  337. package/dist/cjs/ix-menu-item.cjs.entry.js +3 -3
  338. package/dist/cjs/ix-menu-item.cjs.entry.js.map +1 -1
  339. package/dist/cjs/ix-menu-item.entry.cjs.js.map +1 -1
  340. package/dist/cjs/ix-menu.cjs.entry.js +12 -14
  341. package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
  342. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  343. package/dist/cjs/ix-modal-content.ix-modal-header.entry.cjs.js.map +1 -1
  344. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  345. package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
  346. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  347. package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
  348. package/dist/cjs/ix-modal-footer.entry.cjs.js.map +1 -1
  349. package/dist/cjs/ix-modal.cjs.entry.js +3 -7
  350. package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
  351. package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
  352. package/dist/cjs/ix-number-input.cjs.entry.js +14 -10
  353. package/dist/cjs/ix-number-input.cjs.entry.js.map +1 -1
  354. package/dist/cjs/ix-number-input.entry.cjs.js.map +1 -1
  355. package/dist/cjs/ix-pagination.cjs.entry.js +2 -2
  356. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  357. package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
  358. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  359. package/dist/cjs/ix-pane-layout.cjs.entry.js.map +1 -1
  360. package/dist/cjs/ix-pane-layout.entry.cjs.js.map +1 -1
  361. package/dist/cjs/ix-pane.cjs.entry.js +6 -6
  362. package/dist/cjs/ix-pane.cjs.entry.js.map +1 -1
  363. package/dist/cjs/ix-pane.entry.cjs.js.map +1 -1
  364. package/dist/cjs/ix-push-card.cjs.entry.js +1 -2
  365. package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
  366. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  367. package/dist/cjs/ix-radio-group.cjs.entry.js +29 -6
  368. package/dist/cjs/ix-radio-group.cjs.entry.js.map +1 -1
  369. package/dist/cjs/ix-radio-group.entry.cjs.js.map +1 -1
  370. package/dist/cjs/ix-radio.cjs.entry.js +23 -6
  371. package/dist/cjs/ix-radio.cjs.entry.js.map +1 -1
  372. package/dist/cjs/ix-radio.entry.cjs.js.map +1 -1
  373. package/dist/cjs/ix-select.cjs.entry.js +9 -16
  374. package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
  375. package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
  376. package/dist/cjs/ix-slider.cjs.entry.js +6 -6
  377. package/dist/cjs/ix-slider.cjs.entry.js.map +1 -1
  378. package/dist/cjs/ix-slider.entry.cjs.js.map +1 -1
  379. package/dist/cjs/ix-split-button.cjs.entry.js +1 -2
  380. package/dist/cjs/ix-split-button.cjs.entry.js.map +1 -1
  381. package/dist/cjs/ix-split-button.entry.cjs.js.map +1 -1
  382. package/dist/cjs/ix-tab-item.ix-tabs.entry.cjs.js.map +1 -1
  383. package/dist/cjs/ix-tab-item_2.cjs.entry.js +5 -5
  384. package/dist/cjs/ix-tab-item_2.cjs.entry.js.map +1 -1
  385. package/dist/cjs/ix-textarea.cjs.entry.js +4 -4
  386. package/dist/cjs/ix-textarea.cjs.entry.js.map +1 -1
  387. package/dist/cjs/ix-textarea.entry.cjs.js.map +1 -1
  388. package/dist/cjs/ix-time-picker.cjs.entry.js +4 -12
  389. package/dist/cjs/ix-time-picker.cjs.entry.js.map +1 -1
  390. package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
  391. package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
  392. package/dist/cjs/ix-toggle-button.cjs.entry.js.map +1 -1
  393. package/dist/cjs/ix-toggle-button.entry.cjs.js.map +1 -1
  394. package/dist/cjs/ix-toggle.cjs.entry.js +35 -3
  395. package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
  396. package/dist/cjs/ix-toggle.entry.cjs.js.map +1 -1
  397. package/dist/cjs/ix-tooltip.cjs.entry.js +1 -2
  398. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  399. package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
  400. package/dist/cjs/ix-tree.cjs.entry.js +55 -51
  401. package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
  402. package/dist/cjs/ix-tree.entry.cjs.js.map +1 -1
  403. package/dist/cjs/ix-typography.cjs.entry.js +1 -1
  404. package/dist/cjs/ix-typography.cjs.entry.js.map +1 -1
  405. package/dist/cjs/ix-typography.entry.cjs.js.map +1 -1
  406. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -5
  407. package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -1
  408. package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +1 -1
  409. package/dist/cjs/loader.cjs.js +1 -1
  410. package/dist/cjs/siemens-ix.cjs.js +1 -1
  411. package/dist/cjs/{validation-B-wzGaWF.js → validation-othAjI_Z.js} +4 -2
  412. package/dist/cjs/validation-othAjI_Z.js.map +1 -0
  413. package/dist/collection/components/action-card/action-card.js +1 -4
  414. package/dist/collection/components/action-card/action-card.js.map +1 -1
  415. package/dist/collection/components/application/application.js +3 -6
  416. package/dist/collection/components/application/application.js.map +1 -1
  417. package/dist/collection/components/application-header/application-header.js +5 -13
  418. package/dist/collection/components/application-header/application-header.js.map +1 -1
  419. package/dist/collection/components/avatar/avatar.js +2 -11
  420. package/dist/collection/components/avatar/avatar.js.map +1 -1
  421. package/dist/collection/components/blind/blind.js +8 -18
  422. package/dist/collection/components/blind/blind.js.map +1 -1
  423. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -8
  424. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  425. package/dist/collection/components/button/button.js +4 -13
  426. package/dist/collection/components/button/button.js.map +1 -1
  427. package/dist/collection/components/card/card.js +5 -11
  428. package/dist/collection/components/card/card.js.map +1 -1
  429. package/dist/collection/components/card-accordion/card-accordion.js +4 -11
  430. package/dist/collection/components/card-accordion/card-accordion.js.map +1 -1
  431. package/dist/collection/components/card-content/card-content.js +1 -4
  432. package/dist/collection/components/card-content/card-content.js.map +1 -1
  433. package/dist/collection/components/card-list/card-list.js +5 -13
  434. package/dist/collection/components/card-list/card-list.js.map +1 -1
  435. package/dist/collection/components/card-title/card-title.js +1 -3
  436. package/dist/collection/components/card-title/card-title.js.map +1 -1
  437. package/dist/collection/components/category-filter/category-filter.js +4 -7
  438. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  439. package/dist/collection/components/checkbox/checkbox.js +47 -7
  440. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  441. package/dist/collection/components/checkbox-group/checkbox-group.js +115 -5
  442. package/dist/collection/components/checkbox-group/checkbox-group.js.map +1 -1
  443. package/dist/collection/components/checkbox-group/test/checkbox-group.ct.js +48 -0
  444. package/dist/collection/components/checkbox-group/test/checkbox-group.ct.js.map +1 -0
  445. package/dist/collection/components/chip/chip.js +6 -8
  446. package/dist/collection/components/chip/chip.js.map +1 -1
  447. package/dist/collection/components/col/col.js +1 -4
  448. package/dist/collection/components/col/col.js.map +1 -1
  449. package/dist/collection/components/content/content.css +1 -3
  450. package/dist/collection/components/content/content.js +3 -4
  451. package/dist/collection/components/content/content.js.map +1 -1
  452. package/dist/collection/components/custom-field/custom-field.js +1 -4
  453. package/dist/collection/components/custom-field/custom-field.js.map +1 -1
  454. package/dist/collection/components/date-dropdown/date-dropdown.js +7 -23
  455. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  456. package/dist/collection/components/date-input/date-input.js +6 -9
  457. package/dist/collection/components/date-input/date-input.js.map +1 -1
  458. package/dist/collection/components/date-picker/date-picker.js +15 -53
  459. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  460. package/dist/collection/components/date-time-card/date-time-card.css +2 -2
  461. package/dist/collection/components/datetime-picker/datetime-picker.css +4 -0
  462. package/dist/collection/components/datetime-picker/datetime-picker.js +15 -67
  463. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  464. package/dist/collection/components/divider/divider.js +1 -4
  465. package/dist/collection/components/divider/divider.js.map +1 -1
  466. package/dist/collection/components/dropdown/dropdown.js +3 -8
  467. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  468. package/dist/collection/components/dropdown-button/dropdown-button.js +4 -14
  469. package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
  470. package/dist/collection/components/dropdown-header/dropdown-header.js +1 -4
  471. package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -1
  472. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -4
  473. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js.map +1 -1
  474. package/dist/collection/components/empty-state/empty-state.js +1 -4
  475. package/dist/collection/components/empty-state/empty-state.js.map +1 -1
  476. package/dist/collection/components/expanding-search/expanding-search.js +5 -9
  477. package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
  478. package/dist/collection/components/filter-chip/filter-chip.js +2 -6
  479. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
  480. package/dist/collection/components/flip-tile/flip-tile.js +6 -14
  481. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
  482. package/dist/collection/components/icon-button/icon-button.js +4 -16
  483. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  484. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -4
  485. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -1
  486. package/dist/collection/components/input/input.fc.js +1 -1
  487. package/dist/collection/components/input/input.fc.js.map +1 -1
  488. package/dist/collection/components/input/input.js +32 -6
  489. package/dist/collection/components/input/input.js.map +1 -1
  490. package/dist/collection/components/input/number-input.js +35 -10
  491. package/dist/collection/components/input/number-input.js.map +1 -1
  492. package/dist/collection/components/input/tests/form-ready.ct.js +10 -0
  493. package/dist/collection/components/input/tests/form-ready.ct.js.map +1 -1
  494. package/dist/collection/components/input/tests/validation.ct.js +48 -8
  495. package/dist/collection/components/input/tests/validation.ct.js.map +1 -1
  496. package/dist/collection/components/input/textarea.js +3 -4
  497. package/dist/collection/components/input/textarea.js.map +1 -1
  498. package/dist/collection/components/input-group/input-group.js +2 -2
  499. package/dist/collection/components/input-group/input-group.js.map +1 -1
  500. package/dist/collection/components/key-value/key-value.js +1 -3
  501. package/dist/collection/components/key-value/key-value.js.map +1 -1
  502. package/dist/collection/components/key-value-list/key-value-list.js +1 -4
  503. package/dist/collection/components/key-value-list/key-value-list.js.map +1 -1
  504. package/dist/collection/components/layout-auto/layout-auto.js +1 -4
  505. package/dist/collection/components/layout-auto/layout-auto.js.map +1 -1
  506. package/dist/collection/components/layout-grid/layout-grid.js +2 -5
  507. package/dist/collection/components/layout-grid/layout-grid.js.map +1 -1
  508. package/dist/collection/components/link-button/link-button.js +3 -6
  509. package/dist/collection/components/link-button/link-button.js.map +1 -1
  510. package/dist/collection/components/map-navigation/map-navigation.js +2 -6
  511. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  512. package/dist/collection/components/menu/menu.js +13 -18
  513. package/dist/collection/components/menu/menu.js.map +1 -1
  514. package/dist/collection/components/menu-avatar/menu-avatar.js +5 -16
  515. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  516. package/dist/collection/components/menu-category/menu-category.js +5 -8
  517. package/dist/collection/components/menu-category/menu-category.js.map +1 -1
  518. package/dist/collection/components/menu-item/menu-item.js +4 -7
  519. package/dist/collection/components/menu-item/menu-item.js.map +1 -1
  520. package/dist/collection/components/modal/modal.js +5 -15
  521. package/dist/collection/components/modal/modal.js.map +1 -1
  522. package/dist/collection/components/modal-content/modal-content.js +1 -4
  523. package/dist/collection/components/modal-content/modal-content.js.map +1 -1
  524. package/dist/collection/components/modal-footer/modal-footer.js +1 -4
  525. package/dist/collection/components/modal-footer/modal-footer.js.map +1 -1
  526. package/dist/collection/components/modal-header/modal-header.js +1 -4
  527. package/dist/collection/components/modal-header/modal-header.js.map +1 -1
  528. package/dist/collection/components/pagination/pagination.js +2 -5
  529. package/dist/collection/components/pagination/pagination.js.map +1 -1
  530. package/dist/collection/components/pane/pane.js +6 -9
  531. package/dist/collection/components/pane/pane.js.map +1 -1
  532. package/dist/collection/components/pane-layout/pane-layout.js +1 -4
  533. package/dist/collection/components/pane-layout/pane-layout.js.map +1 -1
  534. package/dist/collection/components/push-card/push-card.js +2 -9
  535. package/dist/collection/components/push-card/push-card.js.map +1 -1
  536. package/dist/collection/components/radio/radio.js +61 -8
  537. package/dist/collection/components/radio/radio.js.map +1 -1
  538. package/dist/collection/components/radio-group/radio-group.js +96 -7
  539. package/dist/collection/components/radio-group/radio-group.js.map +1 -1
  540. package/dist/collection/components/radio-group/test/radio-group.ct.js +17 -0
  541. package/dist/collection/components/radio-group/test/radio-group.ct.js.map +1 -1
  542. package/dist/collection/components/row/row.js +1 -4
  543. package/dist/collection/components/row/row.js.map +1 -1
  544. package/dist/collection/components/select/select.js +25 -80
  545. package/dist/collection/components/select/select.js.map +1 -1
  546. package/dist/collection/components/slider/slider.js +6 -8
  547. package/dist/collection/components/slider/slider.js.map +1 -1
  548. package/dist/collection/components/split-button/split-button.js +2 -6
  549. package/dist/collection/components/split-button/split-button.js.map +1 -1
  550. package/dist/collection/components/tab-item/tab-item.js +4 -7
  551. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  552. package/dist/collection/components/tabs/tabs.js +3 -6
  553. package/dist/collection/components/tabs/tabs.js.map +1 -1
  554. package/dist/collection/components/time-picker/time-picker.js +8 -28
  555. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  556. package/dist/collection/components/toggle/toggle.js +63 -5
  557. package/dist/collection/components/toggle/toggle.js.map +1 -1
  558. package/dist/collection/components/toggle-button/toggle-button.css +15 -0
  559. package/dist/collection/components/toggle-button/toggle-button.js +2 -5
  560. package/dist/collection/components/toggle-button/toggle-button.js.map +1 -1
  561. package/dist/collection/components/tooltip/tooltip.js +2 -8
  562. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  563. package/dist/collection/components/tree/tree.js +68 -61
  564. package/dist/collection/components/tree/tree.js.map +1 -1
  565. package/dist/collection/components/typography/typography.js +1 -4
  566. package/dist/collection/components/typography/typography.js.map +1 -1
  567. package/dist/collection/components/utils/input/index.js.map +1 -1
  568. package/dist/collection/components/utils/input/validation.js +2 -0
  569. package/dist/collection/components/utils/input/validation.js.map +1 -1
  570. package/dist/collection/components/validation-tooltip/validation-tooltip.css +1 -0
  571. package/dist/collection/components/validation-tooltip/validation-tooltip.js +5 -8
  572. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
  573. package/dist/esm/index-CrTP-icT.js.map +1 -1
  574. package/dist/esm/{input.util-DpnoI5lb.js → input.util-DORL_qfP.js} +4 -4
  575. package/dist/esm/input.util-DORL_qfP.js.map +1 -0
  576. package/dist/esm/ix-action-card.entry.js +1 -1
  577. package/dist/esm/ix-action-card.entry.js.map +1 -1
  578. package/dist/esm/ix-application-header.entry.js +3 -5
  579. package/dist/esm/ix-application-header.entry.js.map +1 -1
  580. package/dist/esm/ix-application.entry.js +3 -3
  581. package/dist/esm/ix-application.entry.js.map +1 -1
  582. package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
  583. package/dist/esm/ix-avatar_2.entry.js.map +1 -1
  584. package/dist/esm/ix-blind.entry.js +5 -6
  585. package/dist/esm/ix-blind.entry.js.map +1 -1
  586. package/dist/esm/ix-breadcrumb.entry.js +2 -4
  587. package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
  588. package/dist/esm/ix-button.entry.js +2 -5
  589. package/dist/esm/ix-button.entry.js.map +1 -1
  590. package/dist/esm/ix-card-accordion.ix-card-title.entry.js.map +1 -1
  591. package/dist/esm/ix-card-accordion_2.entry.js +4 -5
  592. package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
  593. package/dist/esm/ix-card-list.entry.js +4 -6
  594. package/dist/esm/ix-card-list.entry.js.map +1 -1
  595. package/dist/esm/ix-card.ix-card-content.entry.js.map +1 -1
  596. package/dist/esm/ix-card_2.entry.js +4 -4
  597. package/dist/esm/ix-card_2.entry.js.map +1 -1
  598. package/dist/esm/ix-category-filter.entry.js +3 -3
  599. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  600. package/dist/esm/ix-checkbox-group.entry.js +47 -3
  601. package/dist/esm/ix-checkbox-group.entry.js.map +1 -1
  602. package/dist/esm/ix-checkbox.entry.js +12 -5
  603. package/dist/esm/ix-checkbox.entry.js.map +1 -1
  604. package/dist/esm/ix-chip.entry.js +5 -4
  605. package/dist/esm/ix-chip.entry.js.map +1 -1
  606. package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
  607. package/dist/esm/ix-col_4.entry.js +9 -17
  608. package/dist/esm/ix-col_4.entry.js.map +1 -1
  609. package/dist/esm/ix-content.entry.js +4 -4
  610. package/dist/esm/ix-content.entry.js.map +1 -1
  611. package/dist/esm/ix-custom-field.entry.js +2 -2
  612. package/dist/esm/ix-custom-field.entry.js.map +1 -1
  613. package/dist/esm/ix-date-dropdown.entry.js +4 -8
  614. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  615. package/dist/esm/ix-date-input.entry.js +5 -5
  616. package/dist/esm/ix-date-input.entry.js.map +1 -1
  617. package/dist/esm/ix-date-time-card.entry.js +1 -1
  618. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  619. package/dist/esm/ix-datetime-picker.entry.js +2 -12
  620. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  621. package/dist/esm/ix-divider.entry.js +1 -1
  622. package/dist/esm/ix-divider.entry.js.map +1 -1
  623. package/dist/esm/ix-dropdown-button.entry.js +2 -3
  624. package/dist/esm/ix-dropdown-button.entry.js.map +1 -1
  625. package/dist/esm/ix-dropdown-header.entry.js +1 -1
  626. package/dist/esm/ix-dropdown-header.entry.js.map +1 -1
  627. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  628. package/dist/esm/ix-dropdown-quick-actions.entry.js.map +1 -1
  629. package/dist/esm/ix-dropdown.entry.js +2 -4
  630. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  631. package/dist/esm/ix-empty-state.entry.js +1 -1
  632. package/dist/esm/ix-empty-state.entry.js.map +1 -1
  633. package/dist/esm/ix-expanding-search.entry.js +4 -5
  634. package/dist/esm/ix-expanding-search.entry.js.map +1 -1
  635. package/dist/esm/ix-field-label.ix-field-wrapper.entry.js.map +1 -1
  636. package/dist/esm/ix-field-label_2.entry.js +1 -1
  637. package/dist/esm/ix-field-label_2.entry.js.map +1 -1
  638. package/dist/esm/ix-filter-chip.ix-select-item.entry.js.map +1 -1
  639. package/dist/esm/ix-filter-chip_2.entry.js +1 -2
  640. package/dist/esm/ix-filter-chip_2.entry.js.map +1 -1
  641. package/dist/esm/ix-flip-tile.entry.js +4 -6
  642. package/dist/esm/ix-flip-tile.entry.js.map +1 -1
  643. package/dist/esm/ix-helper-text.entry.js +1 -1
  644. package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
  645. package/dist/esm/ix-icon-button_2.entry.js +1 -4
  646. package/dist/esm/ix-icon-button_2.entry.js.map +1 -1
  647. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  648. package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -1
  649. package/dist/esm/ix-input-group.entry.js +1 -1
  650. package/dist/esm/ix-input-group.entry.js.map +1 -1
  651. package/dist/esm/ix-input.entry.js +12 -6
  652. package/dist/esm/ix-input.entry.js.map +1 -1
  653. package/dist/esm/ix-key-value-list.entry.js +1 -1
  654. package/dist/esm/ix-key-value-list.entry.js.map +1 -1
  655. package/dist/esm/ix-key-value.entry.js +1 -1
  656. package/dist/esm/ix-key-value.entry.js.map +1 -1
  657. package/dist/esm/ix-layout-auto.entry.js +1 -1
  658. package/dist/esm/ix-layout-auto.entry.js.map +1 -1
  659. package/dist/esm/ix-link-button.entry.js +3 -3
  660. package/dist/esm/ix-link-button.entry.js.map +1 -1
  661. package/dist/esm/ix-map-navigation.entry.js +2 -3
  662. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  663. package/dist/esm/ix-menu-avatar.entry.js +2 -4
  664. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  665. package/dist/esm/ix-menu-category.entry.js +5 -5
  666. package/dist/esm/ix-menu-category.entry.js.map +1 -1
  667. package/dist/esm/ix-menu-item.entry.js +3 -3
  668. package/dist/esm/ix-menu-item.entry.js.map +1 -1
  669. package/dist/esm/ix-menu.entry.js +12 -14
  670. package/dist/esm/ix-menu.entry.js.map +1 -1
  671. package/dist/esm/ix-modal-content.ix-modal-header.entry.js.map +1 -1
  672. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  673. package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
  674. package/dist/esm/ix-modal-footer.entry.js +1 -1
  675. package/dist/esm/ix-modal-footer.entry.js.map +1 -1
  676. package/dist/esm/ix-modal.entry.js +3 -7
  677. package/dist/esm/ix-modal.entry.js.map +1 -1
  678. package/dist/esm/ix-number-input.entry.js +14 -10
  679. package/dist/esm/ix-number-input.entry.js.map +1 -1
  680. package/dist/esm/ix-pagination.entry.js +2 -2
  681. package/dist/esm/ix-pagination.entry.js.map +1 -1
  682. package/dist/esm/ix-pane-layout.entry.js +1 -1
  683. package/dist/esm/ix-pane-layout.entry.js.map +1 -1
  684. package/dist/esm/ix-pane.entry.js +6 -6
  685. package/dist/esm/ix-pane.entry.js.map +1 -1
  686. package/dist/esm/ix-push-card.entry.js +1 -2
  687. package/dist/esm/ix-push-card.entry.js.map +1 -1
  688. package/dist/esm/ix-radio-group.entry.js +29 -6
  689. package/dist/esm/ix-radio-group.entry.js.map +1 -1
  690. package/dist/esm/ix-radio.entry.js +23 -6
  691. package/dist/esm/ix-radio.entry.js.map +1 -1
  692. package/dist/esm/ix-select.entry.js +9 -16
  693. package/dist/esm/ix-select.entry.js.map +1 -1
  694. package/dist/esm/ix-slider.entry.js +6 -6
  695. package/dist/esm/ix-slider.entry.js.map +1 -1
  696. package/dist/esm/ix-split-button.entry.js +1 -2
  697. package/dist/esm/ix-split-button.entry.js.map +1 -1
  698. package/dist/esm/ix-tab-item.ix-tabs.entry.js.map +1 -1
  699. package/dist/esm/ix-tab-item_2.entry.js +5 -5
  700. package/dist/esm/ix-tab-item_2.entry.js.map +1 -1
  701. package/dist/esm/ix-textarea.entry.js +4 -4
  702. package/dist/esm/ix-textarea.entry.js.map +1 -1
  703. package/dist/esm/ix-time-picker.entry.js +4 -12
  704. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  705. package/dist/esm/ix-toggle-button.entry.js +3 -3
  706. package/dist/esm/ix-toggle-button.entry.js.map +1 -1
  707. package/dist/esm/ix-toggle.entry.js +35 -3
  708. package/dist/esm/ix-toggle.entry.js.map +1 -1
  709. package/dist/esm/ix-tooltip.entry.js +1 -2
  710. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  711. package/dist/esm/ix-tree.entry.js +55 -51
  712. package/dist/esm/ix-tree.entry.js.map +1 -1
  713. package/dist/esm/ix-typography.entry.js +1 -1
  714. package/dist/esm/ix-typography.entry.js.map +1 -1
  715. package/dist/esm/ix-validation-tooltip.entry.js +3 -5
  716. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -1
  717. package/dist/esm/loader.js +1 -1
  718. package/dist/esm/siemens-ix.js +1 -1
  719. package/dist/esm/{validation-C_w_pHgR.js → validation-CS0nhfz1.js} +4 -2
  720. package/dist/esm/validation-CS0nhfz1.js.map +1 -0
  721. package/dist/siemens-ix/ix-action-card.entry.esm.js.map +1 -1
  722. package/dist/siemens-ix/ix-application-header.entry.esm.js.map +1 -1
  723. package/dist/siemens-ix/ix-application.entry.esm.js.map +1 -1
  724. package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
  725. package/dist/siemens-ix/ix-blind.entry.esm.js.map +1 -1
  726. package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
  727. package/dist/siemens-ix/ix-button.entry.esm.js.map +1 -1
  728. package/dist/siemens-ix/ix-card-accordion.ix-card-title.entry.esm.js.map +1 -1
  729. package/dist/siemens-ix/ix-card-list.entry.esm.js.map +1 -1
  730. package/dist/siemens-ix/ix-card.ix-card-content.entry.esm.js.map +1 -1
  731. package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
  732. package/dist/siemens-ix/ix-checkbox-group.entry.esm.js.map +1 -1
  733. package/dist/siemens-ix/ix-checkbox.entry.esm.js.map +1 -1
  734. package/dist/siemens-ix/ix-chip.entry.esm.js.map +1 -1
  735. package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
  736. package/dist/siemens-ix/ix-content.entry.esm.js.map +1 -1
  737. package/dist/siemens-ix/ix-custom-field.entry.esm.js.map +1 -1
  738. package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
  739. package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
  740. package/dist/siemens-ix/ix-date-time-card.entry.esm.js.map +1 -1
  741. package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
  742. package/dist/siemens-ix/ix-divider.entry.esm.js.map +1 -1
  743. package/dist/siemens-ix/ix-dropdown-button.entry.esm.js.map +1 -1
  744. package/dist/siemens-ix/ix-dropdown-header.entry.esm.js.map +1 -1
  745. package/dist/siemens-ix/ix-dropdown-quick-actions.entry.esm.js.map +1 -1
  746. package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
  747. package/dist/siemens-ix/ix-empty-state.entry.esm.js.map +1 -1
  748. package/dist/siemens-ix/ix-expanding-search.entry.esm.js.map +1 -1
  749. package/dist/siemens-ix/ix-field-label.ix-field-wrapper.entry.esm.js.map +1 -1
  750. package/dist/siemens-ix/ix-filter-chip.ix-select-item.entry.esm.js.map +1 -1
  751. package/dist/siemens-ix/ix-flip-tile.entry.esm.js.map +1 -1
  752. package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
  753. package/dist/siemens-ix/ix-icon-toggle-button.entry.esm.js.map +1 -1
  754. package/dist/siemens-ix/ix-input-group.entry.esm.js.map +1 -1
  755. package/dist/siemens-ix/ix-input.entry.esm.js.map +1 -1
  756. package/dist/siemens-ix/ix-key-value-list.entry.esm.js.map +1 -1
  757. package/dist/siemens-ix/ix-key-value.entry.esm.js.map +1 -1
  758. package/dist/siemens-ix/ix-layout-auto.entry.esm.js.map +1 -1
  759. package/dist/siemens-ix/ix-link-button.entry.esm.js.map +1 -1
  760. package/dist/siemens-ix/ix-map-navigation.entry.esm.js.map +1 -1
  761. package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
  762. package/dist/siemens-ix/ix-menu-category.entry.esm.js.map +1 -1
  763. package/dist/siemens-ix/ix-menu-item.entry.esm.js.map +1 -1
  764. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  765. package/dist/siemens-ix/ix-modal-content.ix-modal-header.entry.esm.js.map +1 -1
  766. package/dist/siemens-ix/ix-modal-footer.entry.esm.js.map +1 -1
  767. package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
  768. package/dist/siemens-ix/ix-number-input.entry.esm.js.map +1 -1
  769. package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
  770. package/dist/siemens-ix/ix-pane-layout.entry.esm.js.map +1 -1
  771. package/dist/siemens-ix/ix-pane.entry.esm.js.map +1 -1
  772. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  773. package/dist/siemens-ix/ix-radio-group.entry.esm.js.map +1 -1
  774. package/dist/siemens-ix/ix-radio.entry.esm.js.map +1 -1
  775. package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
  776. package/dist/siemens-ix/ix-slider.entry.esm.js.map +1 -1
  777. package/dist/siemens-ix/ix-split-button.entry.esm.js.map +1 -1
  778. package/dist/siemens-ix/ix-tab-item.ix-tabs.entry.esm.js.map +1 -1
  779. package/dist/siemens-ix/ix-textarea.entry.esm.js.map +1 -1
  780. package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
  781. package/dist/siemens-ix/ix-toggle-button.entry.esm.js.map +1 -1
  782. package/dist/siemens-ix/ix-toggle.entry.esm.js.map +1 -1
  783. package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
  784. package/dist/siemens-ix/ix-tree.entry.esm.js.map +1 -1
  785. package/dist/siemens-ix/ix-typography.entry.esm.js.map +1 -1
  786. package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +1 -1
  787. package/dist/siemens-ix/{p-0c830977.entry.js → p-04338b3f.entry.js} +2 -2
  788. package/dist/siemens-ix/p-04338b3f.entry.js.map +1 -0
  789. package/dist/siemens-ix/p-0443dc8d.entry.js +2 -0
  790. package/dist/siemens-ix/p-0443dc8d.entry.js.map +1 -0
  791. package/dist/siemens-ix/p-054136c2.entry.js +2 -0
  792. package/dist/siemens-ix/{p-518b1e6b.entry.js.map → p-054136c2.entry.js.map} +1 -1
  793. package/dist/siemens-ix/{p-0488a734.entry.js → p-06843648.entry.js} +2 -2
  794. package/dist/siemens-ix/{p-0488a734.entry.js.map → p-06843648.entry.js.map} +1 -1
  795. package/dist/siemens-ix/{p-ff2171f6.entry.js → p-071f63d6.entry.js} +2 -2
  796. package/dist/siemens-ix/p-071f63d6.entry.js.map +1 -0
  797. package/dist/siemens-ix/{p-c7384379.entry.js → p-07c17517.entry.js} +2 -2
  798. package/dist/siemens-ix/p-07c17517.entry.js.map +1 -0
  799. package/dist/siemens-ix/{p-5fef5328.entry.js → p-09b83f0e.entry.js} +2 -2
  800. package/dist/siemens-ix/p-09b83f0e.entry.js.map +1 -0
  801. package/dist/siemens-ix/p-144e4ad0.entry.js +2 -0
  802. package/dist/siemens-ix/p-144e4ad0.entry.js.map +1 -0
  803. package/dist/siemens-ix/{p-19ae7d99.entry.js → p-158d9068.entry.js} +2 -2
  804. package/dist/siemens-ix/p-158d9068.entry.js.map +1 -0
  805. package/dist/siemens-ix/{p-ac5f5042.entry.js → p-18a47d9f.entry.js} +2 -2
  806. package/dist/siemens-ix/p-18a47d9f.entry.js.map +1 -0
  807. package/dist/siemens-ix/{p-96bbbbcb.entry.js → p-1d28d516.entry.js} +2 -2
  808. package/dist/siemens-ix/p-1d28d516.entry.js.map +1 -0
  809. package/dist/siemens-ix/{p-9e3a36df.entry.js → p-1ff3556a.entry.js} +2 -2
  810. package/dist/siemens-ix/p-1ff3556a.entry.js.map +1 -0
  811. package/dist/siemens-ix/{p-08931f8c.entry.js → p-215df096.entry.js} +2 -2
  812. package/dist/siemens-ix/p-215df096.entry.js.map +1 -0
  813. package/dist/siemens-ix/{p-d1cf2407.entry.js → p-23a50a0c.entry.js} +2 -2
  814. package/dist/siemens-ix/p-23a50a0c.entry.js.map +1 -0
  815. package/dist/siemens-ix/{p-3e1a9763.entry.js → p-24339d35.entry.js} +2 -2
  816. package/dist/siemens-ix/p-24339d35.entry.js.map +1 -0
  817. package/dist/siemens-ix/{p-28055ea5.entry.js → p-27b13c4c.entry.js} +2 -2
  818. package/dist/siemens-ix/p-27b13c4c.entry.js.map +1 -0
  819. package/dist/siemens-ix/{p-3138015e.entry.js → p-27cc0e94.entry.js} +2 -2
  820. package/dist/siemens-ix/{p-3138015e.entry.js.map → p-27cc0e94.entry.js.map} +1 -1
  821. package/dist/siemens-ix/{p-eb5da5a0.entry.js → p-2b496519.entry.js} +2 -2
  822. package/dist/siemens-ix/{p-eb5da5a0.entry.js.map → p-2b496519.entry.js.map} +1 -1
  823. package/dist/siemens-ix/{p-d3f99d59.entry.js → p-32488953.entry.js} +2 -2
  824. package/dist/siemens-ix/p-32488953.entry.js.map +1 -0
  825. package/dist/siemens-ix/p-34824a84.entry.js +2 -0
  826. package/dist/siemens-ix/p-34824a84.entry.js.map +1 -0
  827. package/dist/siemens-ix/{p-4b0c3eeb.entry.js → p-356b0c5c.entry.js} +2 -2
  828. package/dist/siemens-ix/p-356b0c5c.entry.js.map +1 -0
  829. package/dist/siemens-ix/{p-93ba92af.entry.js → p-37f6a541.entry.js} +2 -2
  830. package/dist/siemens-ix/p-37f6a541.entry.js.map +1 -0
  831. package/dist/siemens-ix/p-387fd147.entry.js +2 -0
  832. package/dist/siemens-ix/p-387fd147.entry.js.map +1 -0
  833. package/dist/siemens-ix/{p-c675b650.entry.js → p-44670707.entry.js} +2 -2
  834. package/dist/siemens-ix/p-44670707.entry.js.map +1 -0
  835. package/dist/siemens-ix/p-47a889ca.entry.js +2 -0
  836. package/dist/siemens-ix/{p-b01c5093.entry.js.map → p-47a889ca.entry.js.map} +1 -1
  837. package/dist/siemens-ix/p-4cc099ea.entry.js +2 -0
  838. package/dist/siemens-ix/{p-b39463a7.entry.js.map → p-4cc099ea.entry.js.map} +1 -1
  839. package/dist/siemens-ix/{p-f8a852c3.entry.js → p-4dac8359.entry.js} +2 -2
  840. package/dist/siemens-ix/p-4dac8359.entry.js.map +1 -0
  841. package/dist/siemens-ix/{p-576fade1.entry.js → p-521dfa2a.entry.js} +2 -2
  842. package/dist/siemens-ix/p-521dfa2a.entry.js.map +1 -0
  843. package/dist/siemens-ix/p-6de38c2a.entry.js +2 -0
  844. package/dist/siemens-ix/p-6de38c2a.entry.js.map +1 -0
  845. package/dist/siemens-ix/{p-34ff567f.entry.js → p-70cbacb8.entry.js} +2 -2
  846. package/dist/siemens-ix/p-70cbacb8.entry.js.map +1 -0
  847. package/dist/siemens-ix/{p-f8b08d7b.entry.js → p-71b2c8cd.entry.js} +2 -2
  848. package/dist/siemens-ix/{p-f8b08d7b.entry.js.map → p-71b2c8cd.entry.js.map} +1 -1
  849. package/dist/siemens-ix/{p-e365aee3.entry.js → p-7535cbf6.entry.js} +2 -2
  850. package/dist/siemens-ix/{p-ce0642f0.entry.js → p-76565681.entry.js} +2 -2
  851. package/dist/siemens-ix/p-76565681.entry.js.map +1 -0
  852. package/dist/siemens-ix/{p-f7bfd5f6.entry.js → p-781e0057.entry.js} +2 -2
  853. package/dist/siemens-ix/p-781e0057.entry.js.map +1 -0
  854. package/dist/siemens-ix/{p-2295246b.entry.js → p-78b7ce69.entry.js} +2 -2
  855. package/dist/siemens-ix/p-78b7ce69.entry.js.map +1 -0
  856. package/dist/siemens-ix/p-78f99962.entry.js.map +1 -1
  857. package/dist/siemens-ix/{p-f3f6e45d.entry.js → p-827653a3.entry.js} +2 -2
  858. package/dist/siemens-ix/p-827653a3.entry.js.map +1 -0
  859. package/dist/siemens-ix/{p-cd52e37a.entry.js → p-83367279.entry.js} +2 -2
  860. package/dist/siemens-ix/p-83367279.entry.js.map +1 -0
  861. package/dist/siemens-ix/{p-c80dddf1.entry.js → p-8804a378.entry.js} +2 -2
  862. package/dist/siemens-ix/p-8804a378.entry.js.map +1 -0
  863. package/dist/siemens-ix/p-8df5873d.entry.js +2 -0
  864. package/dist/siemens-ix/p-8df5873d.entry.js.map +1 -0
  865. package/dist/siemens-ix/{p-575b3137.entry.js → p-8e525190.entry.js} +2 -2
  866. package/dist/siemens-ix/p-8e525190.entry.js.map +1 -0
  867. package/dist/siemens-ix/{p-3283a5f3.entry.js → p-94b89b14.entry.js} +2 -2
  868. package/dist/siemens-ix/p-94b89b14.entry.js.map +1 -0
  869. package/dist/siemens-ix/{p-f0575255.entry.js → p-9646b346.entry.js} +2 -2
  870. package/dist/siemens-ix/p-9646b346.entry.js.map +1 -0
  871. package/dist/siemens-ix/{p-273bd3ab.entry.js → p-9920ec79.entry.js} +2 -2
  872. package/dist/siemens-ix/{p-273bd3ab.entry.js.map → p-9920ec79.entry.js.map} +1 -1
  873. package/dist/siemens-ix/{p-734bcb23.entry.js → p-9bac6252.entry.js} +2 -2
  874. package/dist/siemens-ix/p-9bac6252.entry.js.map +1 -0
  875. package/dist/siemens-ix/{p-9a679e62.entry.js → p-9bbca220.entry.js} +2 -2
  876. package/dist/siemens-ix/p-9bbca220.entry.js.map +1 -0
  877. package/dist/siemens-ix/p-CASZsflI.js +2 -0
  878. package/dist/siemens-ix/p-CASZsflI.js.map +1 -0
  879. package/dist/siemens-ix/p-CrTP-icT.js.map +1 -1
  880. package/dist/siemens-ix/p-DHml78Yc.js +2 -0
  881. package/dist/siemens-ix/p-DHml78Yc.js.map +1 -0
  882. package/dist/siemens-ix/{p-3a0a5bc2.entry.js → p-a289764d.entry.js} +2 -2
  883. package/dist/siemens-ix/p-a289764d.entry.js.map +1 -0
  884. package/dist/siemens-ix/{p-e6c7e87a.entry.js → p-ac4548a8.entry.js} +2 -2
  885. package/dist/siemens-ix/p-ac4548a8.entry.js.map +1 -0
  886. package/dist/siemens-ix/{p-aee95ea9.entry.js → p-aca27756.entry.js} +2 -2
  887. package/dist/siemens-ix/p-aca27756.entry.js.map +1 -0
  888. package/dist/siemens-ix/{p-c0e4bf8a.entry.js → p-b35df537.entry.js} +2 -2
  889. package/dist/siemens-ix/{p-c0e4bf8a.entry.js.map → p-b35df537.entry.js.map} +1 -1
  890. package/dist/siemens-ix/{p-c93a8094.entry.js → p-b6966cc0.entry.js} +2 -2
  891. package/dist/siemens-ix/p-b6966cc0.entry.js.map +1 -0
  892. package/dist/siemens-ix/{p-9e83986f.entry.js → p-b78847d5.entry.js} +2 -2
  893. package/dist/siemens-ix/{p-9e83986f.entry.js.map → p-b78847d5.entry.js.map} +1 -1
  894. package/dist/siemens-ix/{p-3edc7dd2.entry.js → p-beed1dd8.entry.js} +2 -2
  895. package/dist/siemens-ix/p-beed1dd8.entry.js.map +1 -0
  896. package/dist/siemens-ix/p-c1b10464.entry.js +2 -0
  897. package/dist/siemens-ix/{p-3db26a34.entry.js.map → p-c1b10464.entry.js.map} +1 -1
  898. package/dist/siemens-ix/{p-87b30e60.entry.js → p-c76e3ee3.entry.js} +2 -2
  899. package/dist/siemens-ix/p-c76e3ee3.entry.js.map +1 -0
  900. package/dist/siemens-ix/{p-66fb6549.entry.js → p-c8fe1a7e.entry.js} +2 -2
  901. package/dist/siemens-ix/p-c8fe1a7e.entry.js.map +1 -0
  902. package/dist/siemens-ix/{p-89edecbd.entry.js → p-ca8a2b16.entry.js} +2 -2
  903. package/dist/siemens-ix/p-ca8a2b16.entry.js.map +1 -0
  904. package/dist/siemens-ix/p-cb7de112.entry.js +2 -0
  905. package/dist/siemens-ix/p-cb7de112.entry.js.map +1 -0
  906. package/dist/siemens-ix/{p-aeb1eb75.entry.js → p-cbf6c3bf.entry.js} +2 -2
  907. package/dist/siemens-ix/p-cbf6c3bf.entry.js.map +1 -0
  908. package/dist/siemens-ix/{p-3d8a3b8a.entry.js → p-cca07b68.entry.js} +2 -2
  909. package/dist/siemens-ix/{p-3d8a3b8a.entry.js.map → p-cca07b68.entry.js.map} +1 -1
  910. package/dist/siemens-ix/{p-20d1d114.entry.js → p-ccec1de1.entry.js} +2 -2
  911. package/dist/siemens-ix/p-ccec1de1.entry.js.map +1 -0
  912. package/dist/siemens-ix/p-d6caa4f4.entry.js +2 -0
  913. package/dist/siemens-ix/p-d6caa4f4.entry.js.map +1 -0
  914. package/dist/siemens-ix/p-da040b8b.entry.js +2 -0
  915. package/dist/siemens-ix/p-da040b8b.entry.js.map +1 -0
  916. package/dist/siemens-ix/{p-000cfb14.entry.js → p-dd11dd49.entry.js} +2 -2
  917. package/dist/siemens-ix/{p-000cfb14.entry.js.map → p-dd11dd49.entry.js.map} +1 -1
  918. package/dist/siemens-ix/{p-2290614f.entry.js → p-e09ab46a.entry.js} +2 -2
  919. package/dist/siemens-ix/{p-2290614f.entry.js.map → p-e09ab46a.entry.js.map} +1 -1
  920. package/dist/siemens-ix/{p-5963369c.entry.js → p-e3c930ac.entry.js} +2 -2
  921. package/dist/siemens-ix/p-e3c930ac.entry.js.map +1 -0
  922. package/dist/siemens-ix/{p-933f6e1f.entry.js → p-ea310106.entry.js} +2 -2
  923. package/dist/siemens-ix/p-ea310106.entry.js.map +1 -0
  924. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  925. package/dist/siemens-ix/siemens-ix.css +174 -0
  926. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  927. package/dist/types/components/action-card/action-card.d.ts +0 -3
  928. package/dist/types/components/application/application.d.ts +0 -3
  929. package/dist/types/components/application-header/application-header.d.ts +0 -4
  930. package/dist/types/components/avatar/avatar.d.ts +0 -7
  931. package/dist/types/components/blind/blind.d.ts +0 -3
  932. package/dist/types/components/breadcrumb/breadcrumb.d.ts +0 -2
  933. package/dist/types/components/button/button.d.ts +0 -3
  934. package/dist/types/components/card/card.d.ts +1 -4
  935. package/dist/types/components/card-accordion/card-accordion.d.ts +0 -4
  936. package/dist/types/components/card-content/card-content.d.ts +0 -3
  937. package/dist/types/components/card-list/card-list.d.ts +0 -5
  938. package/dist/types/components/card-title/card-title.d.ts +0 -2
  939. package/dist/types/components/category-filter/category-filter.d.ts +0 -2
  940. package/dist/types/components/checkbox/checkbox.d.ts +8 -2
  941. package/dist/types/components/checkbox-group/checkbox-group.d.ts +21 -2
  942. package/dist/types/components/checkbox-group/test/checkbox-group.ct.d.ts +1 -0
  943. package/dist/types/components/chip/chip.d.ts +1 -2
  944. package/dist/types/components/col/col.d.ts +0 -3
  945. package/dist/types/components/content/content.d.ts +0 -1
  946. package/dist/types/components/custom-field/custom-field.d.ts +0 -3
  947. package/dist/types/components/date-dropdown/date-dropdown.d.ts +0 -9
  948. package/dist/types/components/date-input/date-input.d.ts +2 -4
  949. package/dist/types/components/date-picker/date-picker.d.ts +0 -20
  950. package/dist/types/components/datetime-picker/datetime-picker.d.ts +0 -29
  951. package/dist/types/components/divider/divider.d.ts +0 -3
  952. package/dist/types/components/dropdown/dropdown.d.ts +0 -2
  953. package/dist/types/components/dropdown-button/dropdown-button.d.ts +0 -6
  954. package/dist/types/components/dropdown-header/dropdown-header.d.ts +0 -3
  955. package/dist/types/components/dropdown-quick-actions/dropdown-quick-actions.d.ts +0 -3
  956. package/dist/types/components/empty-state/empty-state.d.ts +0 -3
  957. package/dist/types/components/expanding-search/expanding-search.d.ts +0 -1
  958. package/dist/types/components/filter-chip/filter-chip.d.ts +0 -1
  959. package/dist/types/components/flip-tile/flip-tile.d.ts +0 -2
  960. package/dist/types/components/icon-button/icon-button.d.ts +0 -5
  961. package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +0 -3
  962. package/dist/types/components/input/input.d.ts +5 -2
  963. package/dist/types/components/input/input.fc.d.ts +5 -4
  964. package/dist/types/components/input/number-input.d.ts +7 -2
  965. package/dist/types/components/input/textarea.d.ts +1 -2
  966. package/dist/types/components/input-group/input-group.d.ts +1 -1
  967. package/dist/types/components/key-value/key-value.d.ts +0 -2
  968. package/dist/types/components/key-value-list/key-value-list.d.ts +0 -3
  969. package/dist/types/components/layout-auto/layout-auto.d.ts +0 -3
  970. package/dist/types/components/layout-grid/layout-grid.d.ts +0 -3
  971. package/dist/types/components/link-button/link-button.d.ts +0 -3
  972. package/dist/types/components/map-navigation/map-navigation.d.ts +0 -1
  973. package/dist/types/components/menu/menu.d.ts +0 -2
  974. package/dist/types/components/menu-avatar/menu-avatar.d.ts +0 -6
  975. package/dist/types/components/menu-category/menu-category.d.ts +0 -3
  976. package/dist/types/components/menu-item/menu-item.d.ts +0 -2
  977. package/dist/types/components/modal/modal.d.ts +0 -4
  978. package/dist/types/components/modal-content/modal-content.d.ts +0 -3
  979. package/dist/types/components/modal-footer/modal-footer.d.ts +0 -3
  980. package/dist/types/components/modal-header/modal-header.d.ts +0 -3
  981. package/dist/types/components/pagination/pagination.d.ts +0 -3
  982. package/dist/types/components/pane/pane.d.ts +0 -3
  983. package/dist/types/components/pane-layout/pane-layout.d.ts +0 -3
  984. package/dist/types/components/push-card/push-card.d.ts +0 -4
  985. package/dist/types/components/radio/radio.d.ts +13 -5
  986. package/dist/types/components/radio-group/radio-group.d.ts +15 -3
  987. package/dist/types/components/row/row.d.ts +0 -3
  988. package/dist/types/components/select/select.d.ts +1 -32
  989. package/dist/types/components/slider/slider.d.ts +0 -2
  990. package/dist/types/components/split-button/split-button.d.ts +0 -1
  991. package/dist/types/components/tab-item/tab-item.d.ts +0 -2
  992. package/dist/types/components/tabs/tabs.d.ts +0 -2
  993. package/dist/types/components/time-picker/time-picker.d.ts +0 -8
  994. package/dist/types/components/toggle/toggle.d.ts +10 -2
  995. package/dist/types/components/toggle-button/toggle-button.d.ts +0 -3
  996. package/dist/types/components/tooltip/tooltip.d.ts +0 -3
  997. package/dist/types/components/tree/tree.d.ts +4 -6
  998. package/dist/types/components/typography/typography.d.ts +0 -3
  999. package/dist/types/components/utils/input/index.d.ts +1 -1
  1000. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +2 -2
  1001. package/dist/types/components.d.ts +110 -673
  1002. package/hydrate/index.js +435 -467
  1003. package/hydrate/index.mjs +435 -467
  1004. package/package.json +3 -3
  1005. package/scss/_core.scss +2 -0
  1006. package/scss/components/_button-group.scss +13 -0
  1007. package/components/p-12nKYxsa.js.map +0 -1
  1008. package/components/p-2g5-4fWy.js.map +0 -1
  1009. package/components/p-BBSHeR_p.js.map +0 -1
  1010. package/components/p-BwyqOnwc.js.map +0 -1
  1011. package/components/p-C8vn2GFY.js.map +0 -1
  1012. package/components/p-CB1ADCkU.js.map +0 -1
  1013. package/components/p-D0LdqSVb.js.map +0 -1
  1014. package/components/p-DGeWaNlt.js.map +0 -1
  1015. package/components/p-DIzxAERt.js.map +0 -1
  1016. package/components/p-DM43N7pD.js.map +0 -1
  1017. package/components/p-DXzHgqiB.js.map +0 -1
  1018. package/components/p-D_wwWxx8.js.map +0 -1
  1019. package/components/p-Dy35mbzK.js.map +0 -1
  1020. package/components/p-DylMlJTZ.js.map +0 -1
  1021. package/dist/cjs/input.util-DuJG4-L-.js.map +0 -1
  1022. package/dist/cjs/validation-B-wzGaWF.js.map +0 -1
  1023. package/dist/esm/input.util-DpnoI5lb.js.map +0 -1
  1024. package/dist/esm/validation-C_w_pHgR.js.map +0 -1
  1025. package/dist/siemens-ix/p-08931f8c.entry.js.map +0 -1
  1026. package/dist/siemens-ix/p-0c830977.entry.js.map +0 -1
  1027. package/dist/siemens-ix/p-19ae7d99.entry.js.map +0 -1
  1028. package/dist/siemens-ix/p-20d1d114.entry.js.map +0 -1
  1029. package/dist/siemens-ix/p-2295246b.entry.js.map +0 -1
  1030. package/dist/siemens-ix/p-28055ea5.entry.js.map +0 -1
  1031. package/dist/siemens-ix/p-2j3Ly91D.js +0 -2
  1032. package/dist/siemens-ix/p-2j3Ly91D.js.map +0 -1
  1033. package/dist/siemens-ix/p-3283a5f3.entry.js.map +0 -1
  1034. package/dist/siemens-ix/p-34ff567f.entry.js.map +0 -1
  1035. package/dist/siemens-ix/p-37fa26f9.entry.js +0 -2
  1036. package/dist/siemens-ix/p-37fa26f9.entry.js.map +0 -1
  1037. package/dist/siemens-ix/p-3a0a5bc2.entry.js.map +0 -1
  1038. package/dist/siemens-ix/p-3db26a34.entry.js +0 -2
  1039. package/dist/siemens-ix/p-3e1a9763.entry.js.map +0 -1
  1040. package/dist/siemens-ix/p-3edc7dd2.entry.js.map +0 -1
  1041. package/dist/siemens-ix/p-4b0c3eeb.entry.js.map +0 -1
  1042. package/dist/siemens-ix/p-518b1e6b.entry.js +0 -2
  1043. package/dist/siemens-ix/p-575b3137.entry.js.map +0 -1
  1044. package/dist/siemens-ix/p-576fade1.entry.js.map +0 -1
  1045. package/dist/siemens-ix/p-5963369c.entry.js.map +0 -1
  1046. package/dist/siemens-ix/p-5b1d3595.entry.js +0 -2
  1047. package/dist/siemens-ix/p-5b1d3595.entry.js.map +0 -1
  1048. package/dist/siemens-ix/p-5fef5328.entry.js.map +0 -1
  1049. package/dist/siemens-ix/p-6691703e.entry.js +0 -2
  1050. package/dist/siemens-ix/p-6691703e.entry.js.map +0 -1
  1051. package/dist/siemens-ix/p-66fb6549.entry.js.map +0 -1
  1052. package/dist/siemens-ix/p-6d197072.entry.js +0 -2
  1053. package/dist/siemens-ix/p-6d197072.entry.js.map +0 -1
  1054. package/dist/siemens-ix/p-734bcb23.entry.js.map +0 -1
  1055. package/dist/siemens-ix/p-7abb0f0c.entry.js +0 -2
  1056. package/dist/siemens-ix/p-7abb0f0c.entry.js.map +0 -1
  1057. package/dist/siemens-ix/p-87b30e60.entry.js.map +0 -1
  1058. package/dist/siemens-ix/p-87c777a1.entry.js +0 -2
  1059. package/dist/siemens-ix/p-87c777a1.entry.js.map +0 -1
  1060. package/dist/siemens-ix/p-89edecbd.entry.js.map +0 -1
  1061. package/dist/siemens-ix/p-933f6e1f.entry.js.map +0 -1
  1062. package/dist/siemens-ix/p-93ba92af.entry.js.map +0 -1
  1063. package/dist/siemens-ix/p-96bbbbcb.entry.js.map +0 -1
  1064. package/dist/siemens-ix/p-9a679e62.entry.js.map +0 -1
  1065. package/dist/siemens-ix/p-9e3a36df.entry.js.map +0 -1
  1066. package/dist/siemens-ix/p-BPfEX8mR.js +0 -2
  1067. package/dist/siemens-ix/p-BPfEX8mR.js.map +0 -1
  1068. package/dist/siemens-ix/p-ac5f5042.entry.js.map +0 -1
  1069. package/dist/siemens-ix/p-aeb1eb75.entry.js.map +0 -1
  1070. package/dist/siemens-ix/p-aee95ea9.entry.js.map +0 -1
  1071. package/dist/siemens-ix/p-b01c5093.entry.js +0 -2
  1072. package/dist/siemens-ix/p-b39463a7.entry.js +0 -2
  1073. package/dist/siemens-ix/p-c675b650.entry.js.map +0 -1
  1074. package/dist/siemens-ix/p-c7384379.entry.js.map +0 -1
  1075. package/dist/siemens-ix/p-c80dddf1.entry.js.map +0 -1
  1076. package/dist/siemens-ix/p-c93a8094.entry.js.map +0 -1
  1077. package/dist/siemens-ix/p-cd52e37a.entry.js.map +0 -1
  1078. package/dist/siemens-ix/p-ce0642f0.entry.js.map +0 -1
  1079. package/dist/siemens-ix/p-d1cf2407.entry.js.map +0 -1
  1080. package/dist/siemens-ix/p-d3f99d59.entry.js.map +0 -1
  1081. package/dist/siemens-ix/p-e501b6ca.entry.js +0 -2
  1082. package/dist/siemens-ix/p-e501b6ca.entry.js.map +0 -1
  1083. package/dist/siemens-ix/p-e6c7e87a.entry.js.map +0 -1
  1084. package/dist/siemens-ix/p-f0575255.entry.js.map +0 -1
  1085. package/dist/siemens-ix/p-f3022851.entry.js +0 -2
  1086. package/dist/siemens-ix/p-f3022851.entry.js.map +0 -1
  1087. package/dist/siemens-ix/p-f3f6e45d.entry.js.map +0 -1
  1088. package/dist/siemens-ix/p-f7bfd5f6.entry.js.map +0 -1
  1089. package/dist/siemens-ix/p-f81de54a.entry.js +0 -2
  1090. package/dist/siemens-ix/p-f81de54a.entry.js.map +0 -1
  1091. package/dist/siemens-ix/p-f8a852c3.entry.js.map +0 -1
  1092. package/dist/siemens-ix/p-ff2171f6.entry.js.map +0 -1
  1093. /package/dist/siemens-ix/{p-e365aee3.entry.js.map → p-7535cbf6.entry.js.map} +0 -0
@@ -56,7 +56,6 @@ export class MapNavigation {
56
56
  * Change the visibility of the sidebar
57
57
  *
58
58
  * @param show new visibility state
59
- * @since 1.6.0
60
59
  */
61
60
  async toggleSidebar(show) {
62
61
  if (show !== undefined) {
@@ -157,11 +156,11 @@ export class MapNavigation {
157
156
  this.hasContentHeader = (nodes === null || nodes === void 0 ? void 0 : nodes.length) !== 0;
158
157
  }
159
158
  render() {
160
- return (h(Host, { key: '3e3241827aec837fdc348cf5d1213691f5780428' }, h("slot", { key: '5bd3dae6dd41bd53eed1551c8398ca302bab573c', name: "menu" }), h("div", { key: 'd6fb088fbedee4cd01cc83b8feedd5017f07060f', class: "map-nav" }, h("div", { key: '0e777bcbf889c0a101f6c4e44363b4d176813d47', class: "map-nav-sidebar" }, h("div", { key: '12de7debb9766ada7f0c5c26378d6cafab118cda', class: "map-nav-header" }, h("ix-application-header", { key: '74c65d9fb6b7be6b522411509fa8a5a71afc2244', name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { key: '3513d27e844f2f5c0ae2052d64fd8f3f9cea70a7', slot: "logo", name: "logo" }))), h("div", { key: '3abae9f99b74404df5cd23f5d0b9715cbdd0b371', class: "map-nav-sidebar-content" }, h("div", { key: '5f62402dc4f5c3743a3fd79d5160b9ab75b132c6', class: "map-nav-sidebar-static-content" }, h("div", { key: '715c115bdf5178a311b04037005efc3230529b0c', class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: iconContextMenu, ghost: true, size: "24", variant: "secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { key: 'ea4894c17a372c76fc74680cddfd79a645391a76', class: "map-nav-sidebar-user-content" }, h("slot", { key: 'bb86645cbf9f71c710f12f78b68858fab7bdd38d', name: "sidebar-content" })))), h("div", { key: 'fbee95f2bac6e72acf639d4e788063e8cf36d528', class: "content" }, h("div", { key: 'dbadf99583818d8f62866e5073caa53e09d97a74', class: {
159
+ return (h(Host, { key: '86b303027d0bc3436690ab9a53be5f929a3e98c0' }, h("slot", { key: '76fd7b86f876de37b7f82d4f3c4fc3d1c2772cb9', name: "menu" }), h("div", { key: 'bce1a6bec7505a6f5616fdda27f7c4b5eec97d34', class: "map-nav" }, h("div", { key: 'c4a57979251db5730c8e236313daea06d21aad60', class: "map-nav-sidebar" }, h("div", { key: '5951cd2e9a57b02e5ed024051511f1b8535b2a67', class: "map-nav-header" }, h("ix-application-header", { key: 'f2a18de8a2ed086b0872d69470431276dad54190', name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { key: 'c2d62404affd9a3b0bc0ae19858d7a2deb2f2a21', slot: "logo", name: "logo" }))), h("div", { key: 'f3fdec6225aefa7576d18937e4af6266c4ff5cb4', class: "map-nav-sidebar-content" }, h("div", { key: 'a79157817ca415b33e5d0b3d19921ddf06195032', class: "map-nav-sidebar-static-content" }, h("div", { key: '214b4a053bac581586ac2e31fd81c6b830aace41', class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: iconContextMenu, ghost: true, size: "24", variant: "secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { key: 'a5c3ffcfc3ac1bab6e348bb86f90269d0772741c', class: "map-nav-sidebar-user-content" }, h("slot", { key: '7e4db742cf074e15353294fe550e4173232f6f65', name: "sidebar-content" })))), h("div", { key: '4b1ac28c5296879b2bd5150262d0950c4fa38bd6', class: "content" }, h("div", { key: 'f137a4a85c8eabd754b069ca85164fc86ac11405', class: {
161
160
  'map-nav-header-content': true,
162
161
  'bg-2': true,
163
162
  empty: !this.hasContentHeader,
164
- } }, h("slot", { key: '32fdf4eed811b0bc4b6f043ae98e16b05ed2e267', name: "content-header", onSlotchange: (e) => this.checkHasContentHeader(e) })), h("main", { key: 'ef909703d699998939dc77a96c9e2cebae80f300' }, h("slot", { key: '2dc6375d4004990560852d1e0497b6fe9ad6cbc6' }), h("slot", { key: '4f6fc515a05d2ff8feceb0381ffa6d80ea46ae5a', name: "overlay" }))))));
163
+ } }, h("slot", { key: '968a6f87d40d5f89b273065a020da8e09614c0ac', name: "content-header", onSlotchange: (e) => this.checkHasContentHeader(e) })), h("main", { key: '2a5a269b7f9677f897fe6c81374e963dbc79c7d6' }, h("slot", { key: 'b91df811ab59da3a93d27c351cf7a5c50ca44f7f' }), h("slot", { key: '30973907e9335d11781d2cfaac17f6c5d3092aed', name: "overlay" }))))));
165
164
  }
166
165
  static get is() { return "ix-map-navigation"; }
167
166
  static get encapsulation() { return "shadow"; }
@@ -299,9 +298,6 @@ export class MapNavigation {
299
298
  "tags": [{
300
299
  "name": "param",
301
300
  "text": "show new visibility state"
302
- }, {
303
- "name": "since",
304
- "text": "1.6.0"
305
301
  }]
306
302
  }
307
303
  },
@@ -1 +1 @@
1
- {"version":3,"file":"map-navigation.js","sourceRoot":"","sources":["../../../src/components/map-navigation/map-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { useContextProvider } from '../utils/context';\nimport { iconContextMenu } from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-map-navigation',\n styleUrl: 'map-navigation.scss',\n shadow: true,\n})\nexport class MapNavigation {\n private static readonly defaultTime = 150;\n private static readonly slowTime = 500;\n\n @Element() hostElement!: HTMLIxMapNavigationElement;\n\n /**\n * Application name\n */\n @Prop() applicationName?: string;\n\n /**\n * Navigation title\n */\n @Prop() navigationTitle?: string;\n\n /**\n * Hide the sidebar context menu button when set to true\n */\n @Prop() hideContextMenu = true;\n\n /**\n * Navigation toggled\n */\n @Event() navigationToggled!: EventEmitter<boolean>;\n\n /**\n * Context menu clicked\n */\n @Event() contextMenuClick!: EventEmitter<void>;\n\n @State() isSidebarOpen = true;\n @State() hasContentHeader = false;\n\n get menu() {\n return this.hostElement.querySelector('ix-menu')!;\n }\n\n get menuOverlay() {\n return this.hostElement.querySelector('ix-menu-overlay')!;\n }\n\n get mapNavMenu() {\n return this.hostElement.shadowRoot!.querySelector('.map-nav-menu')!;\n }\n\n get sidebar() {\n return this.hostElement.shadowRoot!.querySelector('.map-nav-sidebar')!;\n }\n\n get overlay() {\n return this.hostElement.shadowRoot!.querySelector('#overlay')!;\n }\n\n componentDidRender() {\n this.appendMenu();\n this.closeOverlay();\n }\n\n componentWillLoad() {\n useContextProvider(this.hostElement, ApplicationLayoutContext, {\n hideHeader: false,\n host: 'map-navigation',\n });\n }\n\n private appendMenu() {\n this.menu.addEventListener(\n 'mapExpandChange',\n (event: CustomEvent<boolean>) => {\n const state = !event.detail;\n this.toggleSidebar(state);\n }\n );\n this.menu.enableMapExpand = true;\n }\n\n /**\n * Change the visibility of the sidebar\n *\n * @param show new visibility state\n * @since 1.6.0\n */\n @Method()\n async toggleSidebar(show?: boolean) {\n if (show !== undefined) {\n this.isSidebarOpen = show;\n } else {\n this.isSidebarOpen = !this.isSidebarOpen;\n }\n\n if (this.isSidebarOpen) {\n this.openSidebar();\n } else {\n this.closeSidebar();\n }\n\n this.navigationToggled.emit(this.isSidebarOpen);\n this.menu.toggleMapExpand(this.isSidebarOpen);\n }\n\n private closeSidebar() {\n anime({\n targets: this.sidebar,\n duration: MapNavigation.defaultTime,\n marginLeft: [0, '-29.75rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n this.sidebar.classList.add('display-none');\n },\n });\n }\n\n private openSidebar() {\n anime({\n targets: this.sidebar,\n duration: MapNavigation.defaultTime,\n marginLeft: ['-29.75rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n this.sidebar.classList.remove('display-none');\n },\n });\n }\n\n /**\n * Open a overlay inside content area\n * @deprecated Will be removed in 2.0.0. Use slot based approach\n *\n * @param name\n * @param component\n * @param icon\n * @param color\n */\n @Method()\n async openOverlay(\n name: string,\n component: HTMLElement,\n icon?: string,\n color?: string\n ) {\n anime({\n targets: this.overlay,\n duration: MapNavigation.slowTime,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n this.overlay.classList.remove('display-none');\n },\n });\n\n const overlayInstance = document.createElement('ix-map-navigation-overlay');\n overlayInstance.setAttribute('color', color ?? '');\n overlayInstance.setAttribute('name', name);\n overlayInstance.setAttribute('icon', icon ?? '');\n overlayInstance.setAttribute('slot', 'overlay');\n overlayInstance.addEventListener('closeClick', () => this.closeOverlay());\n overlayInstance.appendChild(component);\n this.hostElement.appendChild(overlayInstance);\n }\n\n /**\n * Close current shown overlay\n * @deprecated Will be removed in 2.0.0. Use slot based approach\n */\n @Method()\n async closeOverlay() {\n anime({\n targets: this.overlay,\n duration: MapNavigation.slowTime,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n if (!this.overlay) {\n return;\n }\n this.overlay.firstChild?.remove();\n this.overlay.classList.add('display-none');\n },\n });\n }\n\n private checkHasContentHeader(e: Event) {\n const nodes = (e.currentTarget as HTMLSlotElement).assignedNodes({\n flatten: true,\n });\n\n this.hasContentHeader = nodes?.length !== 0;\n }\n\n render() {\n return (\n <Host>\n <slot name=\"menu\"></slot>\n <div class=\"map-nav\">\n <div class=\"map-nav-sidebar\">\n <div class=\"map-nav-header\">\n <ix-application-header\n name={this.applicationName}\n class=\"map-nav-header-brand\"\n >\n <slot slot=\"logo\" name=\"logo\"></slot>\n </ix-application-header>\n </div>\n <div class=\"map-nav-sidebar-content\">\n <div class=\"map-nav-sidebar-static-content\">\n <div class=\"map-nav-title\">{this.navigationTitle}</div>\n {this.hideContextMenu ? (\n ''\n ) : (\n <ix-icon-button\n icon={iconContextMenu}\n ghost\n size=\"24\"\n variant=\"secondary\"\n onClick={(_) => this.contextMenuClick.emit()}\n ></ix-icon-button>\n )}\n </div>\n <div class=\"map-nav-sidebar-user-content\">\n <slot name=\"sidebar-content\"></slot>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div\n class={{\n 'map-nav-header-content': true,\n 'bg-2': true,\n empty: !this.hasContentHeader,\n }}\n >\n <slot\n name=\"content-header\"\n onSlotchange={(e) => this.checkHasContentHeader(e)}\n ></slot>\n </div>\n <main>\n <slot></slot>\n <slot name=\"overlay\"></slot>\n </main>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"map-navigation.js","sourceRoot":"","sources":["../../../src/components/map-navigation/map-navigation.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAO1D,MAAM,OAAO,aAAa;IAL1B;QAqBE;;WAEG;QACK,oBAAe,GAAG,IAAI,CAAC;QAYtB,kBAAa,GAAG,IAAI,CAAC;QACrB,qBAAgB,GAAG,KAAK,CAAC;KA2NnC;IAzNC,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CAAE,CAAC;IACpD,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,iBAAiB,CAAE,CAAC;IAC5D,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,eAAe,CAAE,CAAC;IACtE,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,kBAAkB,CAAE,CAAC;IACzE,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,UAAU,CAAE,CAAC;IACjE,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,iBAAiB;QACf,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,wBAAwB,EAAE;YAC7D,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,gBAAgB;SACvB,CAAC,CAAC;IACL,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CACxB,iBAAiB,EACjB,CAAC,KAA2B,EAAE,EAAE;YAC9B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CACF,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;;;OAIG;IAEH,KAAK,CAAC,aAAa,CAAC,IAAc;QAChC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAEO,YAAY;QAClB,KAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,aAAa,CAAC,WAAW;YACnC,UAAU,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC;YAC5B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,WAAW;QACjB,KAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,aAAa,CAAC,WAAW;YACnC,UAAU,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAC5B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,GAAG,EAAE;gBACV,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAChD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IAEH,KAAK,CAAC,WAAW,CACf,IAAY,EACZ,SAAsB,EACtB,IAAa,EACb,KAAc;QAEd,KAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC;YACjC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACxB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,aAAa;YACrB,KAAK,EAAE,GAAG,EAAE;gBACV,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAChD,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;QAC5E,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAC;QACnD,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3C,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC;QACjD,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAChD,eAAe,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1E,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IAEH,KAAK,CAAC,YAAY;QAChB,KAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,cAAc,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;YACjC,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC;YACxB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,GAAG,EAAE;;gBACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,OAAO;gBACT,CAAC;gBACD,MAAA,IAAI,CAAC,OAAO,CAAC,UAAU,0CAAE,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC7C,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,CAAQ;QACpC,MAAM,KAAK,GAAI,CAAC,CAAC,aAAiC,CAAC,aAAa,CAAC;YAC/D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,MAAK,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,6DAAM,IAAI,EAAC,MAAM,GAAQ;YACzB,4DAAK,KAAK,EAAC,SAAS;gBAClB,4DAAK,KAAK,EAAC,iBAAiB;oBAC1B,4DAAK,KAAK,EAAC,gBAAgB;wBACzB,8EACE,IAAI,EAAE,IAAI,CAAC,eAAe,EAC1B,KAAK,EAAC,sBAAsB;4BAE5B,6DAAM,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,GAAQ,CACf,CACpB;oBACN,4DAAK,KAAK,EAAC,yBAAyB;wBAClC,4DAAK,KAAK,EAAC,gCAAgC;4BACzC,4DAAK,KAAK,EAAC,eAAe,IAAE,IAAI,CAAC,eAAe,CAAO;4BACtD,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CACtB,EAAE,CACH,CAAC,CAAC,CAAC,CACF,sBACE,IAAI,EAAE,eAAe,EACrB,KAAK,QACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAC5B,CACnB,CACG;wBACN,4DAAK,KAAK,EAAC,8BAA8B;4BACvC,6DAAM,IAAI,EAAC,iBAAiB,GAAQ,CAChC,CACF,CACF;gBACN,4DAAK,KAAK,EAAC,SAAS;oBAClB,4DACE,KAAK,EAAE;4BACL,wBAAwB,EAAE,IAAI;4BAC9B,MAAM,EAAE,IAAI;4BACZ,KAAK,EAAE,CAAC,IAAI,CAAC,gBAAgB;yBAC9B;wBAED,6DACE,IAAI,EAAC,gBAAgB,EACrB,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAC5C,CACJ;oBACN;wBACE,8DAAa;wBACb,6DAAM,IAAI,EAAC,SAAS,GAAQ,CACvB,CACH,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAzPuB,yBAAW,GAAG,GAAG,AAAN,CAAO;AAClB,sBAAQ,GAAG,GAAG,AAAN,CAAO","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { useContextProvider } from '../utils/context';\nimport { iconContextMenu } from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-map-navigation',\n styleUrl: 'map-navigation.scss',\n shadow: true,\n})\nexport class MapNavigation {\n private static readonly defaultTime = 150;\n private static readonly slowTime = 500;\n\n @Element() hostElement!: HTMLIxMapNavigationElement;\n\n /**\n * Application name\n */\n @Prop() applicationName?: string;\n\n /**\n * Navigation title\n */\n @Prop() navigationTitle?: string;\n\n /**\n * Hide the sidebar context menu button when set to true\n */\n @Prop() hideContextMenu = true;\n\n /**\n * Navigation toggled\n */\n @Event() navigationToggled!: EventEmitter<boolean>;\n\n /**\n * Context menu clicked\n */\n @Event() contextMenuClick!: EventEmitter<void>;\n\n @State() isSidebarOpen = true;\n @State() hasContentHeader = false;\n\n get menu() {\n return this.hostElement.querySelector('ix-menu')!;\n }\n\n get menuOverlay() {\n return this.hostElement.querySelector('ix-menu-overlay')!;\n }\n\n get mapNavMenu() {\n return this.hostElement.shadowRoot!.querySelector('.map-nav-menu')!;\n }\n\n get sidebar() {\n return this.hostElement.shadowRoot!.querySelector('.map-nav-sidebar')!;\n }\n\n get overlay() {\n return this.hostElement.shadowRoot!.querySelector('#overlay')!;\n }\n\n componentDidRender() {\n this.appendMenu();\n this.closeOverlay();\n }\n\n componentWillLoad() {\n useContextProvider(this.hostElement, ApplicationLayoutContext, {\n hideHeader: false,\n host: 'map-navigation',\n });\n }\n\n private appendMenu() {\n this.menu.addEventListener(\n 'mapExpandChange',\n (event: CustomEvent<boolean>) => {\n const state = !event.detail;\n this.toggleSidebar(state);\n }\n );\n this.menu.enableMapExpand = true;\n }\n\n /**\n * Change the visibility of the sidebar\n *\n * @param show new visibility state\n */\n @Method()\n async toggleSidebar(show?: boolean) {\n if (show !== undefined) {\n this.isSidebarOpen = show;\n } else {\n this.isSidebarOpen = !this.isSidebarOpen;\n }\n\n if (this.isSidebarOpen) {\n this.openSidebar();\n } else {\n this.closeSidebar();\n }\n\n this.navigationToggled.emit(this.isSidebarOpen);\n this.menu.toggleMapExpand(this.isSidebarOpen);\n }\n\n private closeSidebar() {\n anime({\n targets: this.sidebar,\n duration: MapNavigation.defaultTime,\n marginLeft: [0, '-29.75rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n this.sidebar.classList.add('display-none');\n },\n });\n }\n\n private openSidebar() {\n anime({\n targets: this.sidebar,\n duration: MapNavigation.defaultTime,\n marginLeft: ['-29.75rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n this.sidebar.classList.remove('display-none');\n },\n });\n }\n\n /**\n * Open a overlay inside content area\n * @deprecated Will be removed in 2.0.0. Use slot based approach\n *\n * @param name\n * @param component\n * @param icon\n * @param color\n */\n @Method()\n async openOverlay(\n name: string,\n component: HTMLElement,\n icon?: string,\n color?: string\n ) {\n anime({\n targets: this.overlay,\n duration: MapNavigation.slowTime,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n this.overlay.classList.remove('display-none');\n },\n });\n\n const overlayInstance = document.createElement('ix-map-navigation-overlay');\n overlayInstance.setAttribute('color', color ?? '');\n overlayInstance.setAttribute('name', name);\n overlayInstance.setAttribute('icon', icon ?? '');\n overlayInstance.setAttribute('slot', 'overlay');\n overlayInstance.addEventListener('closeClick', () => this.closeOverlay());\n overlayInstance.appendChild(component);\n this.hostElement.appendChild(overlayInstance);\n }\n\n /**\n * Close current shown overlay\n * @deprecated Will be removed in 2.0.0. Use slot based approach\n */\n @Method()\n async closeOverlay() {\n anime({\n targets: this.overlay,\n duration: MapNavigation.slowTime,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n if (!this.overlay) {\n return;\n }\n this.overlay.firstChild?.remove();\n this.overlay.classList.add('display-none');\n },\n });\n }\n\n private checkHasContentHeader(e: Event) {\n const nodes = (e.currentTarget as HTMLSlotElement).assignedNodes({\n flatten: true,\n });\n\n this.hasContentHeader = nodes?.length !== 0;\n }\n\n render() {\n return (\n <Host>\n <slot name=\"menu\"></slot>\n <div class=\"map-nav\">\n <div class=\"map-nav-sidebar\">\n <div class=\"map-nav-header\">\n <ix-application-header\n name={this.applicationName}\n class=\"map-nav-header-brand\"\n >\n <slot slot=\"logo\" name=\"logo\"></slot>\n </ix-application-header>\n </div>\n <div class=\"map-nav-sidebar-content\">\n <div class=\"map-nav-sidebar-static-content\">\n <div class=\"map-nav-title\">{this.navigationTitle}</div>\n {this.hideContextMenu ? (\n ''\n ) : (\n <ix-icon-button\n icon={iconContextMenu}\n ghost\n size=\"24\"\n variant=\"secondary\"\n onClick={(_) => this.contextMenuClick.emit()}\n ></ix-icon-button>\n )}\n </div>\n <div class=\"map-nav-sidebar-user-content\">\n <slot name=\"sidebar-content\"></slot>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div\n class={{\n 'map-nav-header-content': true,\n 'bg-2': true,\n empty: !this.hasContentHeader,\n }}\n >\n <slot\n name=\"content-header\"\n onSlotchange={(e) => this.checkHasContentHeader(e)}\n ></slot>\n </div>\n <main>\n <slot></slot>\n <slot name=\"overlay\"></slot>\n </main>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -51,8 +51,6 @@ export class Menu {
51
51
  this.expand = false;
52
52
  /**
53
53
  * If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'.
54
- *
55
- * @since 2.2.0
56
54
  */
57
55
  this.startExpanded = false;
58
56
  /**
@@ -443,44 +441,44 @@ export class Menu {
443
441
  }
444
442
  render() {
445
443
  var _a, _b;
446
- return (h(Host, { key: '399b24ede589bfad9528bea4392c9054b3d0461b', class: {
444
+ return (h(Host, { key: '650164a77e7a09f6a7cde22aa1886e2919f539fe', class: {
447
445
  expanded: this.expand,
448
446
  [`breakpoint-${this.breakpoint}`]: true,
449
- }, slot: "menu" }, h("nav", { key: '90d7abe543d3626c562c97637f186227a07d8a80', class: {
447
+ }, slot: "menu" }, h("nav", { key: '2ef8fc642f5fa12590c70834fce0d0755dae4df9', class: {
450
448
  menu: true,
451
449
  expanded: this.expand,
452
- } }, h("div", { key: '73c45171a05831f52ec82f67212c00e22445643d', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: 'a60fed4a2191b18903a1bb3a1805e67eda925a00', breakpoint: this.breakpoint, expanded: this.expand, pinned: this.pinned, class: "menu-expand-icon", ixAriaLabel: this.i18nExpandSidebar, onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
453
- ((_a = this.applicationLayoutContext) === null || _a === void 0 ? void 0 : _a.appSwitchConfig) && (h("ix-icon-button", { key: 'eeac468e4edf2bc90d52e5f6c1b5ec33b673400d', onClick: () => {
450
+ } }, h("div", { key: 'b9c8b63f54d33243bb2d863a7d399f723296e03d', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: '6ebfb8c0c7f662b0186d7ca519f9a85ada839c42', breakpoint: this.breakpoint, expanded: this.expand, pinned: this.pinned, class: "menu-expand-icon", ixAriaLabel: this.i18nExpandSidebar, onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
451
+ ((_a = this.applicationLayoutContext) === null || _a === void 0 ? void 0 : _a.appSwitchConfig) && (h("ix-icon-button", { key: 'b5104d73c83bdcdd159a8c1bfe2e304221934f65', onClick: () => {
454
452
  this.showAppSwitch();
455
- }, icon: iconApps, ghost: true }))), h("div", { key: '14b0349a9f7fd7fb92dffd69d0ce2882e627d29e', id: "menu-tabs", style: {
453
+ }, icon: iconApps, ghost: true }))), h("div", { key: 'f2680bb0281da2d5ceb6cbfbbc40baf1eafbb4ae', id: "menu-tabs", style: {
456
454
  display: 'contents',
457
- }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: 'dca30d5bf98b83e776fafe7708586a204bbd5de1', class: "tabs-shadow-container" }, h("div", { key: 'cb243ca034e6612dad9107a9f53d22e833bee9a3', class: {
455
+ }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: '9daceab8d810b2671805fcdb213944719704ea68', class: "tabs-shadow-container" }, h("div", { key: '0b45dc060f10698a8ff196c4a57f1c429e68067f', class: {
458
456
  'tabs--shadow': true,
459
457
  'tabs--shadow-top': true,
460
458
  'tabs--shadow--show': this.itemsScrollShadowTop,
461
- } }), h("div", { key: '997a2f8f8762c25d0e92f223f119af436e6fd4b7', class: {
459
+ } }), h("div", { key: 'b49d5755eeb03be99dc66877bca949d4248731fe', class: {
462
460
  tabs: true,
463
461
  'show-scrollbar': this.expand,
464
- }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: '8685278d96b4afce9e68fe780907c1385ad3e730', class: "menu-avatar" }, h("slot", { key: '9d8b09624ae560118a5677c3978d24364b988319', name: "ix-menu-avatar" })), h("slot", { key: 'd0098a9a68369713a02e4118ed10abed5fbd64f3', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: '031fe38db543f6661dd6e950825ecd311752c2bd', class: {
462
+ }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: 'a7a223f13b0277243b5ffe876ada6dc40c93a323', class: "menu-avatar" }, h("slot", { key: 'f2c0cb7167d80de7a942815f1ef256e10c990320', name: "ix-menu-avatar" })), h("slot", { key: 'f5910904de6a0f4028baedd528a81ec16931a6a7', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: 'f5a57d190a8d5657aaebcc06dc5f452347886710', class: {
465
463
  'tabs--shadow': true,
466
464
  'tabs--shadow-bottom': true,
467
465
  'tabs--shadow--show': this.itemsScrollShadowBottom,
468
- } }))), h("div", { key: 'c02ca069adbc019601db85ba560c303209fc2e3a', class: "bottom-tab-divider" }), this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
466
+ } }))), h("div", { key: '8fcf9b0a984596b72bbf4c3b91cd2e27ed57253e', class: "bottom-tab-divider" }), this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
469
467
  'internal-tab': true,
470
468
  'bottom-tab': true,
471
469
  active: this.showSettings,
472
- }, icon: iconCogwheel, onClick: async () => this.toggleSettings(!this.showSettings), label: this.i18nSettings })) : null, h("div", { key: '017d2aff04ec6763938d344c18293dccbff99356', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: 'a224710759e1a84f500b50497ff0cf442f656ae3', name: "bottom" })), h("div", { key: 'ea74cad15c8c3aaff02c7230a9d8298212e2b05a', id: "popover-area" }), this.about ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "aboutAndLegal", class: {
470
+ }, icon: iconCogwheel, onClick: async () => this.toggleSettings(!this.showSettings), label: this.i18nSettings })) : null, h("div", { key: '9e3a3a85ebb22fd46e7f9bf92f0acd5c6495c7ba', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: '4e8f72485d82247ecb304a1a4ae80c28c0384ac9', name: "bottom" })), h("div", { key: '02951c7908b3f9e2a59349b6a8ed1aed19ca7107', id: "popover-area" }), this.about ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "aboutAndLegal", class: {
473
471
  'internal-tab': true,
474
472
  'bottom-tab': true,
475
473
  active: this.showAbout,
476
- }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal })) : null, this.enableToggleTheme ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "toggleTheme", onClick: () => themeSwitcher.toggleMode(), class: "internal-tab bottom-tab", icon: iconLightDark, label: this.i18nToggleTheme })) : null, this.enableMapExpand || ((_b = this.applicationLayoutContext) === null || _b === void 0 ? void 0 : _b.sidebar) ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "menu-collapse", onClick: () => this.sidebarToggle(), class: "internal-tab bottom-tab", icon: `${this.getCollapseIcon()}`, label: this.getCollapseText() })) : null), h("div", { key: '04b30df0d35054be5ef65d8fab91a6b92c225fb9', class: {
474
+ }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal })) : null, this.enableToggleTheme ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "toggleTheme", onClick: () => themeSwitcher.toggleMode(), class: "internal-tab bottom-tab", icon: iconLightDark, label: this.i18nToggleTheme })) : null, this.enableMapExpand || ((_b = this.applicationLayoutContext) === null || _b === void 0 ? void 0 : _b.sidebar) ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "menu-collapse", onClick: () => this.sidebarToggle(), class: "internal-tab bottom-tab", icon: `${this.getCollapseIcon()}`, label: this.getCollapseText() })) : null), h("div", { key: '7a0ce4f3b2e926c02d29663fb143af90939d9516', class: {
477
475
  'menu-overlay': true,
478
476
  visible: this.isOverlayVisible(),
479
477
  expanded: this.expand,
480
478
  }, onTransitionEnd: () => {
481
479
  this.isTransitionDisabled = true;
482
480
  this.checkTransition();
483
- } }, h("div", { key: '95534ab84a9e2f3d30a1be08b2dd45b4d526a844', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '3d4f4bf7ef1debe0e46b00740298fb6519900acd', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
481
+ } }, h("div", { key: '727628ba3d30f395e0d27a1d1f095c561ae5265d', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '953cb3d35ad5f60a8db131ee5131c403bf05900c', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
484
482
  }
485
483
  static get is() { return "ix-menu"; }
486
484
  static get encapsulation() { return "shadow"; }
@@ -690,10 +688,7 @@ export class Menu {
690
688
  "required": false,
691
689
  "optional": false,
692
690
  "docs": {
693
- "tags": [{
694
- "name": "since",
695
- "text": "2.2.0"
696
- }],
691
+ "tags": [],
697
692
  "text": "If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'."
698
693
  },
699
694
  "getter": false,
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { ApplicationSidebarToggleEvent } from '../application-sidebar/events';\nimport { showAppSwitch } from '../utils/app-switch';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { applicationLayoutService } from '../utils/application-layout/service';\nimport { Breakpoint } from '../utils/breakpoints';\nimport { ContextType, useContextConsumer } from '../utils/context';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { themeSwitcher } from '../utils/theme-switcher';\nimport {\n iconApps,\n iconCogwheel,\n iconInfo,\n iconLightDark,\n iconNavigationLeft,\n iconNavigationRight,\n} from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n shadow: true,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /**\n * Is settings tab is visible\n */\n @Prop() enableSettings = true;\n\n /** @internal */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName?: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Accessibility i18n label for the burger menu of the sidebar\n */\n @Prop() i18nExpandSidebar = 'Expand sidebar';\n\n /**\n * Toggle the expand state of the menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'.\n *\n * @since 2.2.0\n */\n @Prop() startExpanded = false;\n\n /**\n * Menu stays pinned to the left\n */\n @Prop() pinned = false;\n\n @Watch('pinned')\n pinnedChange(newPinned: boolean) {\n if (this.applicationLayoutContext?.host === 'map-navigation') {\n console.warn('ix-map-navigation does not support pinning of the menu');\n return;\n }\n this.setPinned(this.pinned);\n if (newPinned) {\n applicationLayoutService.disableBreakpointDetection();\n applicationLayoutService.setBreakpoint('lg');\n return;\n }\n\n applicationLayoutService.enableBreakpointDetection();\n }\n\n /**\n */\n @Prop() i18nLegal = 'About & legal information';\n\n /**\n */\n @Prop() i18nSettings = 'Settings';\n\n /**\n */\n @Prop() i18nToggleTheme = 'Toggle theme';\n\n /**\n */\n @Prop() i18nExpand = ' Expand';\n\n /**\n */\n @Prop() i18nCollapse = 'Collapse';\n\n /**\n * Menu expanded\n */\n @Event() expandChange!: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange!: EventEmitter<boolean>;\n\n /**\n * Event emitted when the app switch button is clicked\n *\n * @since 3.0.0\n */\n @Event() openAppSwitch!: EventEmitter<void>;\n\n /**\n * Event emitted when the settings button is clicked\n * @since 3.0.0\n */\n @Event() openSettings!: EventEmitter<void>;\n\n /**\n * Event emitted when the about button is clicked\n * @since 3.0.0\n */\n @Event() openAbout!: EventEmitter<void>;\n\n @State() showPinned = false;\n @State() mapExpand = true;\n @State() breakpoint: Breakpoint = 'lg';\n @State() itemsScrollShadowTop = false;\n @State() itemsScrollShadowBottom = false;\n @State() applicationLayoutContext?: ContextType<\n typeof ApplicationLayoutContext\n >;\n private isTransitionDisabled = false;\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.shadowRoot!.querySelector('#popover-area');\n }\n\n get menu() {\n return this.hostElement.shadowRoot!.querySelector('.menu');\n }\n\n get menuItemsContainer(): HTMLDivElement {\n return this.menu!.querySelector('.tabs')!;\n }\n\n get overlayContainer() {\n return this.hostElement.shadowRoot!.querySelector(\n '.menu-overlay'\n ) as HTMLDivElement;\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector(\n '.internal-tab ix-dropdown'\n )!;\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown .appended'\n ).length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.shadowRoot!.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.shadowRoot!.querySelector(\n '.active-more-tab ix-menu-item'\n );\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news')!;\n }\n\n get aboutNewsPopover(): HTMLIxMenuAboutNewsElement {\n return (\n document.querySelector('ix-menu-about-news') ??\n this.hostElement.querySelector('ix-menu-about-news')!\n );\n }\n\n get aboutTab(): HTMLElement | null {\n return this.hostElement.shadowRoot!.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement | null {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement | null {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(\n this.hostElement.shadowRoot!.querySelectorAll('ix-menu-settings-item')\n ).length === 0\n );\n }\n\n get tabsContainer() {\n return this.hostElement;\n }\n\n componentDidLoad() {\n requestAnimationFrame(() => {\n this.handleOverflowIndicator();\n });\n\n if (this.pinned) {\n this.pinnedChange(this.pinned);\n }\n }\n\n componentWillLoad() {\n useContextConsumer(\n this.hostElement,\n ApplicationLayoutContext,\n (ctx) => {\n this.applicationLayoutContext = ctx;\n if (ctx.hideHeader === true) {\n this.onBreakpointChange('md');\n return;\n }\n\n this.onBreakpointChange(applicationLayoutService.breakpoint);\n },\n true\n );\n\n menuController.register(this.hostElement);\n applicationLayoutService.onChange.on((breakpoint) =>\n this.onBreakpointChange(breakpoint)\n );\n this.onBreakpointChange(applicationLayoutService.breakpoint, true);\n }\n\n componentDidRender() {\n if (!this.about && this.aboutNewsPopover) {\n this.aboutNewsPopover.show = false;\n }\n this.appendFragments();\n }\n\n private setPinned(pinned: boolean) {\n this.showPinned = pinned;\n menuController.setIsPinned(pinned);\n }\n\n private onBreakpointChange(mode: Breakpoint, initial = false) {\n if (!this.applicationLayoutContext && mode === 'sm') {\n return;\n }\n if (this.applicationLayoutContext?.host === 'map-navigation') {\n this.breakpoint = 'md';\n return;\n }\n if (!this.applicationLayoutContext) {\n return;\n }\n\n if (this.applicationLayoutContext.hideHeader && mode === 'sm') {\n return;\n }\n\n this.setPinned(mode === 'lg');\n if (initial || mode !== this.breakpoint)\n this.toggleMenu(mode === 'lg' && this.startExpanded);\n\n this.breakpoint = mode;\n }\n\n private appendFragments() {\n this.appendAboutNewsPopover();\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab?.getBoundingClientRect() || {\n bottom: -window.innerHeight,\n height: 0,\n };\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutNewsPopover || !this.about) {\n return;\n }\n\n this.aboutNewsPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutNewsPopover)) {\n const showMore = () => {\n if (this.aboutNewsPopover?.aboutItemLabel && this.about) {\n this.about.activeTabLabel = this.aboutNewsPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutNewsPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutNewsPopover);\n }\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n const oldExpand = this.expand;\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = this.expand;\n }\n\n const { defaultPrevented } = this.expandChange.emit(this.expand);\n\n if (defaultPrevented) {\n this.expand = oldExpand;\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = oldExpand;\n }\n\n return;\n }\n\n this.isTransitionDisabled = false;\n this.checkTransition();\n\n if (this.breakpoint == 'sm' && this.expand) {\n setTimeout(() => {\n this.handleOverflowIndicator();\n }, 100);\n }\n }\n\n /**\n * Disable transition of overlay while menu animation is running.\n */\n private checkTransition() {\n const container = this.overlayContainer;\n\n if (!container) {\n return;\n }\n\n if (this.isTransitionDisabled) {\n container.style.transitionProperty = 'left';\n } else {\n container.style.transitionProperty = 'all';\n }\n }\n\n private isOverlayVisible() {\n return this.showAbout || this.showSettings;\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (!this.settings) {\n return;\n }\n\n const { defaultPrevented } = this.openSettings.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n } else {\n this.onOverlayClose();\n }\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (!this.about) {\n return;\n }\n\n const { defaultPrevented } = this.openAbout.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n } else {\n this.onOverlayClose();\n }\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = false;\n }\n\n if (this.about) {\n this.about.show = false;\n }\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? iconNavigationLeft : iconNavigationRight;\n }\n\n private isMenuItemClicked(event: Event) {\n if (event.target instanceof HTMLElement) {\n return event.target.tagName === 'IX-MENU-ITEM';\n }\n\n return false;\n }\n\n @Listen('resize', { target: 'window' })\n private handleOverflowIndicator() {\n const { clientHeight, scrollTop, scrollHeight } = this.menuItemsContainer;\n this.itemsScrollShadowTop = scrollTop > 0;\n this.itemsScrollShadowBottom =\n Math.round(scrollTop + clientHeight) < scrollHeight;\n }\n\n @Listen('close')\n onOverlayClose() {\n this.animateOverlayFadeOut(() => {\n this.resetOverlay();\n });\n }\n\n private animateOverlayFadeIn() {\n requestAnimationFrame(() => {\n anime({\n targets: this.overlayContainer,\n duration: 300,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeInSine',\n begin: () => {\n if (this.showPinned) {\n return;\n }\n\n this.toggleMenu(false);\n },\n });\n });\n }\n\n private animateOverlayFadeOut(onComplete: Function) {\n requestAnimationFrame(() => {\n anime({\n targets: this.overlayContainer,\n duration: 300,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => onComplete(),\n });\n });\n }\n\n private onMenuItemsClick(event: Event) {\n if (this.isMenuItemClicked(event)) {\n if (!this.showPinned) {\n this.toggleMenu(false);\n }\n this.onOverlayClose();\n }\n }\n\n private isHiddenFromViewport() {\n return this.breakpoint === 'sm' && this.expand === false;\n }\n\n private sidebarToggle() {\n this.mapExpandChange.emit(this.mapExpand);\n\n this.hostElement.dispatchEvent(\n new ApplicationSidebarToggleEvent(this.mapExpand)\n );\n }\n\n private async showAppSwitch() {\n const { defaultPrevented } = this.openAppSwitch.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (this.applicationLayoutContext?.appSwitchConfig) {\n showAppSwitch(this.applicationLayoutContext.appSwitchConfig);\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`breakpoint-${this.breakpoint}`]: true,\n }}\n slot=\"menu\"\n >\n <nav\n class={{\n menu: true,\n expanded: this.expand,\n }}\n >\n <div class=\"menu-buttons\">\n {this.breakpoint !== 'sm' && (\n <ix-menu-expand-icon\n breakpoint={this.breakpoint}\n expanded={this.expand}\n pinned={this.pinned}\n class=\"menu-expand-icon\"\n ixAriaLabel={this.i18nExpandSidebar}\n onClick={async () => this.toggleMenu()}\n data-testid=\"expand-collapse-menu\"\n ></ix-menu-expand-icon>\n )}\n {this.breakpoint === 'sm' &&\n this.applicationLayoutContext?.appSwitchConfig && (\n <ix-icon-button\n onClick={() => {\n this.showAppSwitch();\n }}\n icon={iconApps}\n ghost\n ></ix-icon-button>\n )}\n </div>\n\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(e) => this.onMenuItemsClick(e)}\n >\n <div class=\"tabs-shadow-container\">\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-top': true,\n 'tabs--shadow--show': this.itemsScrollShadowTop,\n }}\n ></div>\n <div\n class={{\n tabs: true,\n 'show-scrollbar': this.expand,\n }}\n onScroll={() => this.handleOverflowIndicator()}\n >\n <div class=\"menu-avatar\">\n <slot name=\"ix-menu-avatar\"></slot>\n </div>\n <slot name=\"home\"></slot>\n {this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (\n <slot></slot>\n ) : null}\n </div>\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-bottom': true,\n 'tabs--shadow--show': this.itemsScrollShadowBottom,\n }}\n ></div>\n </div>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.settings ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n icon={iconCogwheel}\n onClick={async () => this.toggleSettings(!this.showSettings)}\n label={this.i18nSettings}\n ></ix-menu-item>\n ) : null}\n <div onClick={(e) => this.onMenuItemsClick(e)}>\n <slot name=\"bottom\"></slot>\n </div>\n\n <div id=\"popover-area\"></div>\n {this.about ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n icon={iconInfo}\n onClick={async () => this.toggleAbout(!this.showAbout)}\n label={this.i18nLegal}\n ></ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n icon={iconLightDark}\n label={this.i18nToggleTheme}\n ></ix-menu-item>\n ) : null}\n {this.enableMapExpand || this.applicationLayoutContext?.sidebar ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"menu-collapse\"\n onClick={() => this.sidebarToggle()}\n class=\"internal-tab bottom-tab\"\n icon={`${this.getCollapseIcon()}`}\n label={this.getCollapseText()}\n ></ix-menu-item>\n ) : null}\n </nav>\n <div\n class={{\n 'menu-overlay': true,\n visible: this.isOverlayVisible(),\n expanded: this.expand,\n }}\n onTransitionEnd={() => {\n this.isTransitionDisabled = true;\n this.checkTransition();\n }}\n >\n <div class={'menu-overlay-container'}>\n {this.showSettings ? <slot name=\"ix-menu-settings\"></slot> : null}\n </div>\n <div class={'menu-overlay-container'}>\n {this.showAbout ? <slot name=\"ix-menu-about\"></slot> : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { ApplicationSidebarToggleEvent } from '../application-sidebar/events';\nimport { showAppSwitch } from '../utils/app-switch';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { applicationLayoutService } from '../utils/application-layout/service';\nimport { Breakpoint } from '../utils/breakpoints';\nimport { ContextType, useContextConsumer } from '../utils/context';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { themeSwitcher } from '../utils/theme-switcher';\nimport {\n iconApps,\n iconCogwheel,\n iconInfo,\n iconLightDark,\n iconNavigationLeft,\n iconNavigationRight,\n} from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n shadow: true,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /**\n * Is settings tab is visible\n */\n @Prop() enableSettings = true;\n\n /** @internal */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName?: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Accessibility i18n label for the burger menu of the sidebar\n */\n @Prop() i18nExpandSidebar = 'Expand sidebar';\n\n /**\n * Toggle the expand state of the menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'.\n */\n @Prop() startExpanded = false;\n\n /**\n * Menu stays pinned to the left\n */\n @Prop() pinned = false;\n\n @Watch('pinned')\n pinnedChange(newPinned: boolean) {\n if (this.applicationLayoutContext?.host === 'map-navigation') {\n console.warn('ix-map-navigation does not support pinning of the menu');\n return;\n }\n this.setPinned(this.pinned);\n if (newPinned) {\n applicationLayoutService.disableBreakpointDetection();\n applicationLayoutService.setBreakpoint('lg');\n return;\n }\n\n applicationLayoutService.enableBreakpointDetection();\n }\n\n /**\n */\n @Prop() i18nLegal = 'About & legal information';\n\n /**\n */\n @Prop() i18nSettings = 'Settings';\n\n /**\n */\n @Prop() i18nToggleTheme = 'Toggle theme';\n\n /**\n */\n @Prop() i18nExpand = ' Expand';\n\n /**\n */\n @Prop() i18nCollapse = 'Collapse';\n\n /**\n * Menu expanded\n */\n @Event() expandChange!: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange!: EventEmitter<boolean>;\n\n /**\n * Event emitted when the app switch button is clicked\n *\n * @since 3.0.0\n */\n @Event() openAppSwitch!: EventEmitter<void>;\n\n /**\n * Event emitted when the settings button is clicked\n * @since 3.0.0\n */\n @Event() openSettings!: EventEmitter<void>;\n\n /**\n * Event emitted when the about button is clicked\n * @since 3.0.0\n */\n @Event() openAbout!: EventEmitter<void>;\n\n @State() showPinned = false;\n @State() mapExpand = true;\n @State() breakpoint: Breakpoint = 'lg';\n @State() itemsScrollShadowTop = false;\n @State() itemsScrollShadowBottom = false;\n @State() applicationLayoutContext?: ContextType<\n typeof ApplicationLayoutContext\n >;\n private isTransitionDisabled = false;\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.shadowRoot!.querySelector('#popover-area');\n }\n\n get menu() {\n return this.hostElement.shadowRoot!.querySelector('.menu');\n }\n\n get menuItemsContainer(): HTMLDivElement {\n return this.menu!.querySelector('.tabs')!;\n }\n\n get overlayContainer() {\n return this.hostElement.shadowRoot!.querySelector(\n '.menu-overlay'\n ) as HTMLDivElement;\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector(\n '.internal-tab ix-dropdown'\n )!;\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown .appended'\n ).length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.shadowRoot!.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.shadowRoot!.querySelector(\n '.active-more-tab ix-menu-item'\n );\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news')!;\n }\n\n get aboutNewsPopover(): HTMLIxMenuAboutNewsElement {\n return (\n document.querySelector('ix-menu-about-news') ??\n this.hostElement.querySelector('ix-menu-about-news')!\n );\n }\n\n get aboutTab(): HTMLElement | null {\n return this.hostElement.shadowRoot!.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement | null {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement | null {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(\n this.hostElement.shadowRoot!.querySelectorAll('ix-menu-settings-item')\n ).length === 0\n );\n }\n\n get tabsContainer() {\n return this.hostElement;\n }\n\n componentDidLoad() {\n requestAnimationFrame(() => {\n this.handleOverflowIndicator();\n });\n\n if (this.pinned) {\n this.pinnedChange(this.pinned);\n }\n }\n\n componentWillLoad() {\n useContextConsumer(\n this.hostElement,\n ApplicationLayoutContext,\n (ctx) => {\n this.applicationLayoutContext = ctx;\n if (ctx.hideHeader === true) {\n this.onBreakpointChange('md');\n return;\n }\n\n this.onBreakpointChange(applicationLayoutService.breakpoint);\n },\n true\n );\n\n menuController.register(this.hostElement);\n applicationLayoutService.onChange.on((breakpoint) =>\n this.onBreakpointChange(breakpoint)\n );\n this.onBreakpointChange(applicationLayoutService.breakpoint, true);\n }\n\n componentDidRender() {\n if (!this.about && this.aboutNewsPopover) {\n this.aboutNewsPopover.show = false;\n }\n this.appendFragments();\n }\n\n private setPinned(pinned: boolean) {\n this.showPinned = pinned;\n menuController.setIsPinned(pinned);\n }\n\n private onBreakpointChange(mode: Breakpoint, initial = false) {\n if (!this.applicationLayoutContext && mode === 'sm') {\n return;\n }\n if (this.applicationLayoutContext?.host === 'map-navigation') {\n this.breakpoint = 'md';\n return;\n }\n if (!this.applicationLayoutContext) {\n return;\n }\n\n if (this.applicationLayoutContext.hideHeader && mode === 'sm') {\n return;\n }\n\n this.setPinned(mode === 'lg');\n if (initial || mode !== this.breakpoint)\n this.toggleMenu(mode === 'lg' && this.startExpanded);\n\n this.breakpoint = mode;\n }\n\n private appendFragments() {\n this.appendAboutNewsPopover();\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab?.getBoundingClientRect() || {\n bottom: -window.innerHeight,\n height: 0,\n };\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutNewsPopover || !this.about) {\n return;\n }\n\n this.aboutNewsPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutNewsPopover)) {\n const showMore = () => {\n if (this.aboutNewsPopover?.aboutItemLabel && this.about) {\n this.about.activeTabLabel = this.aboutNewsPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutNewsPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutNewsPopover);\n }\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n const oldExpand = this.expand;\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = this.expand;\n }\n\n const { defaultPrevented } = this.expandChange.emit(this.expand);\n\n if (defaultPrevented) {\n this.expand = oldExpand;\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = oldExpand;\n }\n\n return;\n }\n\n this.isTransitionDisabled = false;\n this.checkTransition();\n\n if (this.breakpoint == 'sm' && this.expand) {\n setTimeout(() => {\n this.handleOverflowIndicator();\n }, 100);\n }\n }\n\n /**\n * Disable transition of overlay while menu animation is running.\n */\n private checkTransition() {\n const container = this.overlayContainer;\n\n if (!container) {\n return;\n }\n\n if (this.isTransitionDisabled) {\n container.style.transitionProperty = 'left';\n } else {\n container.style.transitionProperty = 'all';\n }\n }\n\n private isOverlayVisible() {\n return this.showAbout || this.showSettings;\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (!this.settings) {\n return;\n }\n\n const { defaultPrevented } = this.openSettings.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n } else {\n this.onOverlayClose();\n }\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (!this.about) {\n return;\n }\n\n const { defaultPrevented } = this.openAbout.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n } else {\n this.onOverlayClose();\n }\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = false;\n }\n\n if (this.about) {\n this.about.show = false;\n }\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? iconNavigationLeft : iconNavigationRight;\n }\n\n private isMenuItemClicked(event: Event) {\n if (event.target instanceof HTMLElement) {\n return event.target.tagName === 'IX-MENU-ITEM';\n }\n\n return false;\n }\n\n @Listen('resize', { target: 'window' })\n private handleOverflowIndicator() {\n const { clientHeight, scrollTop, scrollHeight } = this.menuItemsContainer;\n this.itemsScrollShadowTop = scrollTop > 0;\n this.itemsScrollShadowBottom =\n Math.round(scrollTop + clientHeight) < scrollHeight;\n }\n\n @Listen('close')\n onOverlayClose() {\n this.animateOverlayFadeOut(() => {\n this.resetOverlay();\n });\n }\n\n private animateOverlayFadeIn() {\n requestAnimationFrame(() => {\n anime({\n targets: this.overlayContainer,\n duration: 300,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeInSine',\n begin: () => {\n if (this.showPinned) {\n return;\n }\n\n this.toggleMenu(false);\n },\n });\n });\n }\n\n private animateOverlayFadeOut(onComplete: Function) {\n requestAnimationFrame(() => {\n anime({\n targets: this.overlayContainer,\n duration: 300,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => onComplete(),\n });\n });\n }\n\n private onMenuItemsClick(event: Event) {\n if (this.isMenuItemClicked(event)) {\n if (!this.showPinned) {\n this.toggleMenu(false);\n }\n this.onOverlayClose();\n }\n }\n\n private isHiddenFromViewport() {\n return this.breakpoint === 'sm' && this.expand === false;\n }\n\n private sidebarToggle() {\n this.mapExpandChange.emit(this.mapExpand);\n\n this.hostElement.dispatchEvent(\n new ApplicationSidebarToggleEvent(this.mapExpand)\n );\n }\n\n private async showAppSwitch() {\n const { defaultPrevented } = this.openAppSwitch.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (this.applicationLayoutContext?.appSwitchConfig) {\n showAppSwitch(this.applicationLayoutContext.appSwitchConfig);\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`breakpoint-${this.breakpoint}`]: true,\n }}\n slot=\"menu\"\n >\n <nav\n class={{\n menu: true,\n expanded: this.expand,\n }}\n >\n <div class=\"menu-buttons\">\n {this.breakpoint !== 'sm' && (\n <ix-menu-expand-icon\n breakpoint={this.breakpoint}\n expanded={this.expand}\n pinned={this.pinned}\n class=\"menu-expand-icon\"\n ixAriaLabel={this.i18nExpandSidebar}\n onClick={async () => this.toggleMenu()}\n data-testid=\"expand-collapse-menu\"\n ></ix-menu-expand-icon>\n )}\n {this.breakpoint === 'sm' &&\n this.applicationLayoutContext?.appSwitchConfig && (\n <ix-icon-button\n onClick={() => {\n this.showAppSwitch();\n }}\n icon={iconApps}\n ghost\n ></ix-icon-button>\n )}\n </div>\n\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(e) => this.onMenuItemsClick(e)}\n >\n <div class=\"tabs-shadow-container\">\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-top': true,\n 'tabs--shadow--show': this.itemsScrollShadowTop,\n }}\n ></div>\n <div\n class={{\n tabs: true,\n 'show-scrollbar': this.expand,\n }}\n onScroll={() => this.handleOverflowIndicator()}\n >\n <div class=\"menu-avatar\">\n <slot name=\"ix-menu-avatar\"></slot>\n </div>\n <slot name=\"home\"></slot>\n {this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (\n <slot></slot>\n ) : null}\n </div>\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-bottom': true,\n 'tabs--shadow--show': this.itemsScrollShadowBottom,\n }}\n ></div>\n </div>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.settings ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n icon={iconCogwheel}\n onClick={async () => this.toggleSettings(!this.showSettings)}\n label={this.i18nSettings}\n ></ix-menu-item>\n ) : null}\n <div onClick={(e) => this.onMenuItemsClick(e)}>\n <slot name=\"bottom\"></slot>\n </div>\n\n <div id=\"popover-area\"></div>\n {this.about ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n icon={iconInfo}\n onClick={async () => this.toggleAbout(!this.showAbout)}\n label={this.i18nLegal}\n ></ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n icon={iconLightDark}\n label={this.i18nToggleTheme}\n ></ix-menu-item>\n ) : null}\n {this.enableMapExpand || this.applicationLayoutContext?.sidebar ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"menu-collapse\"\n onClick={() => this.sidebarToggle()}\n class=\"internal-tab bottom-tab\"\n icon={`${this.getCollapseIcon()}`}\n label={this.getCollapseText()}\n ></ix-menu-item>\n ) : null}\n </nav>\n <div\n class={{\n 'menu-overlay': true,\n visible: this.isOverlayVisible(),\n expanded: this.expand,\n }}\n onTransitionEnd={() => {\n this.isTransitionDisabled = true;\n this.checkTransition();\n }}\n >\n <div class={'menu-overlay-container'}>\n {this.showSettings ? <slot name=\"ix-menu-settings\"></slot> : null}\n </div>\n <div class={'menu-overlay-container'}>\n {this.showAbout ? <slot name=\"ix-menu-about\"></slot> : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -17,12 +17,10 @@ export class MenuAvatar {
17
17
  this.i18nLogout = 'Logout';
18
18
  /**
19
19
  * Control the visibility of the logout button
20
- * @since 2.1.0
21
20
  */
22
21
  this.showLogoutButton = true;
23
22
  /**
24
23
  * Control the visibility of the dropdown menu
25
- * @since 2.1.0
26
24
  */
27
25
  this.showContextMenu = false;
28
26
  this.avatarElementId = 'ix-menu-avatar-id';
@@ -36,9 +34,9 @@ export class MenuAvatar {
36
34
  this.showContextMenu = elements.length !== 0;
37
35
  }
38
36
  render() {
39
- return (h(Host, { key: '3bcb9db9a5f7b6e2b949a1b78d31ac4307d55a21', slot: "ix-menu-avatar" }, h("button", { key: '997f2a3ca9f419eb8618b7baecea9487fee4353a', class: "nav-item top-item avatar no-hover", title: this.top, id: this.avatarElementId, tabIndex: 0 }, h("ix-avatar", { key: '9f16020bf51db6289cdda6ec9f9576d5d1e0f30a', image: this.image, initials: this.initials }), h("div", { key: 'bb5bc3adb3b7ec2973e2212fc913423ae69d2796', class: "avatar-name" }, h("span", { key: 'efa4a3e92895392a7618db2f124228bb785717ae', class: "text-default-single", title: this.top }, this.top), h("span", { key: 'eff8ba846915852b97771f1610f62450496f8c33', class: "text-default-single", title: this.bottom }, this.bottom))), h("ix-dropdown", { key: '51e2c74f032ef5960aa1b3491728545bd3d88557', trigger: this.hostElement, placement: 'right-start', hidden: !this.showContextMenu && !this.showLogoutButton, offset: {
37
+ return (h(Host, { key: '0de17572a27311bdac05540ef99db83d45805f75', slot: "ix-menu-avatar" }, h("button", { key: '92f5318a7f2d858eb2c5de56dc2fb936e89287ec', class: "nav-item top-item avatar no-hover", title: this.top, id: this.avatarElementId, tabIndex: 0 }, h("ix-avatar", { key: '467817b892981995dad63306d86a37c319667677', image: this.image, initials: this.initials }), h("div", { key: '25339aa123e84ed37d4d6733c571a4b9c542b3b0', class: "avatar-name" }, h("span", { key: 'b4be6b9c6821461b2c01679ed5343dc233441b7c', class: "text-default-single", title: this.top }, this.top), h("span", { key: '1beaa9327403d4d8a5da0ca6a9ec0e546ee2172e', class: "text-default-single", title: this.bottom }, this.bottom))), h("ix-dropdown", { key: 'd5fcd99be86d4d13dad176354bfb7d8ba516c269', trigger: this.hostElement, placement: 'right-start', hidden: !this.showContextMenu && !this.showLogoutButton, offset: {
40
38
  mainAxis: 16,
41
- } }, h("slot", { key: '28605745ab13750eba6842c78e42fac4ac705a51', onSlotchange: () => this.onSlotChange() }), this.showLogoutButton ? (h("ix-menu-avatar-item", { label: this.i18nLogout, icon: iconLogOut, onClick: (e) => {
39
+ } }, h("slot", { key: 'dd3580e96699f31becd4c16705ee4275960c1442', onSlotchange: () => this.onSlotChange() }), this.showLogoutButton ? (h("ix-menu-avatar-item", { label: this.i18nLogout, icon: iconLogOut, onClick: (e) => {
42
40
  this.logoutClick.emit(e);
43
41
  } })) : null)));
44
42
  }
@@ -106,10 +104,7 @@ export class MenuAvatar {
106
104
  "required": false,
107
105
  "optional": true,
108
106
  "docs": {
109
- "tags": [{
110
- "name": "since",
111
- "text": "1.4.0"
112
- }],
107
+ "tags": [],
113
108
  "text": "Display a avatar image"
114
109
  },
115
110
  "getter": false,
@@ -128,10 +123,7 @@ export class MenuAvatar {
128
123
  "required": false,
129
124
  "optional": true,
130
125
  "docs": {
131
- "tags": [{
132
- "name": "since",
133
- "text": "1.4.0"
134
- }],
126
+ "tags": [],
135
127
  "text": "Display the initials of the user. Will be overwritten by image"
136
128
  },
137
129
  "getter": false,
@@ -170,10 +162,7 @@ export class MenuAvatar {
170
162
  "required": false,
171
163
  "optional": false,
172
164
  "docs": {
173
- "tags": [{
174
- "name": "since",
175
- "text": "2.1.0"
176
- }],
165
+ "tags": [],
177
166
  "text": "Control the visibility of the logout button"
178
167
  },
179
168
  "getter": false,
@@ -1 +1 @@
1
- {"version":3,"file":"menu-avatar.js","sourceRoot":"","sources":["../../../src/components/menu-avatar/menu-avatar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAOrD,MAAM,OAAO,UAAU;IALvB;QAgCE;;WAEG;QACK,eAAU,GAAW,QAAQ,CAAC;QAEtC;;;WAGG;QACK,qBAAgB,GAAY,IAAI,CAAC;QAEzC;;;WAGG;QACM,oBAAe,GAAY,KAAK,CAAC;QAOlC,oBAAe,GAAG,mBAAmB,CAAC;KAqD/C;IAnDC,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,IAAI,EAAC,gBAAgB;YACzB,+DACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC;gBAEX,kEAAW,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAc;gBAEnE,4DAAK,KAAK,EAAC,aAAa;oBACtB,6DAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAC9C,IAAI,CAAC,GAAG,CACJ;oBACP,6DAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC;YACT,oEACE,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;oBACN,QAAQ,EAAE,EAAE;iBACb;gBAED,6DAAM,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,GAAS;gBACrD,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACvB,2BACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;wBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC3B,CAAC,GACoB,CACxB,CAAC,CAAC,CAAC,IAAI,CACI,CACT,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport { getSlottedElements } from '../utils/shadow-dom';\nimport { iconLogOut } from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-menu-avatar',\n styleUrl: 'menu-avatar.scss',\n shadow: true,\n})\nexport class MenuAvatar {\n @Element() hostElement!: HTMLIxMenuAvatarElement;\n\n /**\n * First line of text\n */\n @Prop() top?: string;\n\n /**\n * Second line of text\n */\n @Prop() bottom?: string;\n\n /**\n * Display a avatar image\n *\n * @since 1.4.0\n */\n @Prop() image?: string;\n\n /**\n * Display the initials of the user. Will be overwritten by image\n *\n * @since 1.4.0\n */\n @Prop() initials?: string;\n\n /**\n * Use for translation\n */\n @Prop() i18nLogout: string = 'Logout';\n\n /**\n * Control the visibility of the logout button\n * @since 2.1.0\n */\n @Prop() showLogoutButton: boolean = true;\n\n /**\n * Control the visibility of the dropdown menu\n * @since 2.1.0\n */\n @State() showContextMenu: boolean = false;\n\n /**\n * Logout click\n */\n @Event() logoutClick!: EventEmitter;\n\n private avatarElementId = 'ix-menu-avatar-id';\n\n onSlotChange() {\n const slot = this.hostElement.shadowRoot!.querySelector('slot');\n if (!slot) {\n return;\n }\n const elements = getSlottedElements(slot);\n this.showContextMenu = elements.length !== 0;\n }\n\n render() {\n return (\n <Host slot=\"ix-menu-avatar\">\n <button\n class=\"nav-item top-item avatar no-hover\"\n title={this.top}\n id={this.avatarElementId}\n tabIndex={0}\n >\n <ix-avatar image={this.image} initials={this.initials}></ix-avatar>\n\n <div class=\"avatar-name\">\n <span class=\"text-default-single\" title={this.top}>\n {this.top}\n </span>\n <span class=\"text-default-single\" title={this.bottom}>\n {this.bottom}\n </span>\n </div>\n </button>\n <ix-dropdown\n trigger={this.hostElement}\n placement={'right-start'}\n hidden={!this.showContextMenu && !this.showLogoutButton}\n offset={{\n mainAxis: 16,\n }}\n >\n <slot onSlotchange={() => this.onSlotChange()}></slot>\n {this.showLogoutButton ? (\n <ix-menu-avatar-item\n label={this.i18nLogout}\n icon={iconLogOut}\n onClick={(e) => {\n this.logoutClick.emit(e);\n }}\n ></ix-menu-avatar-item>\n ) : null}\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"menu-avatar.js","sourceRoot":"","sources":["../../../src/components/menu-avatar/menu-avatar.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAOrD,MAAM,OAAO,UAAU;IALvB;QA4BE;;WAEG;QACK,eAAU,GAAW,QAAQ,CAAC;QAEtC;;WAEG;QACK,qBAAgB,GAAY,IAAI,CAAC;QAEzC;;WAEG;QACM,oBAAe,GAAY,KAAK,CAAC;QAOlC,oBAAe,GAAG,mBAAmB,CAAC;KAqD/C;IAnDC,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,IAAI,EAAC,gBAAgB;YACzB,+DACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC;gBAEX,kEAAW,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAc;gBAEnE,4DAAK,KAAK,EAAC,aAAa;oBACtB,6DAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAC9C,IAAI,CAAC,GAAG,CACJ;oBACP,6DAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC;YACT,oEACE,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;oBACN,QAAQ,EAAE,EAAE;iBACb;gBAED,6DAAM,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,GAAS;gBACrD,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACvB,2BACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;wBACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC3B,CAAC,GACoB,CACxB,CAAC,CAAC,CAAC,IAAI,CACI,CACT,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport { getSlottedElements } from '../utils/shadow-dom';\nimport { iconLogOut } from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-menu-avatar',\n styleUrl: 'menu-avatar.scss',\n shadow: true,\n})\nexport class MenuAvatar {\n @Element() hostElement!: HTMLIxMenuAvatarElement;\n\n /**\n * First line of text\n */\n @Prop() top?: string;\n\n /**\n * Second line of text\n */\n @Prop() bottom?: string;\n\n /**\n * Display a avatar image\n */\n @Prop() image?: string;\n\n /**\n * Display the initials of the user. Will be overwritten by image\n */\n @Prop() initials?: string;\n\n /**\n * Use for translation\n */\n @Prop() i18nLogout: string = 'Logout';\n\n /**\n * Control the visibility of the logout button\n */\n @Prop() showLogoutButton: boolean = true;\n\n /**\n * Control the visibility of the dropdown menu\n */\n @State() showContextMenu: boolean = false;\n\n /**\n * Logout click\n */\n @Event() logoutClick!: EventEmitter;\n\n private avatarElementId = 'ix-menu-avatar-id';\n\n onSlotChange() {\n const slot = this.hostElement.shadowRoot!.querySelector('slot');\n if (!slot) {\n return;\n }\n const elements = getSlottedElements(slot);\n this.showContextMenu = elements.length !== 0;\n }\n\n render() {\n return (\n <Host slot=\"ix-menu-avatar\">\n <button\n class=\"nav-item top-item avatar no-hover\"\n title={this.top}\n id={this.avatarElementId}\n tabIndex={0}\n >\n <ix-avatar image={this.image} initials={this.initials}></ix-avatar>\n\n <div class=\"avatar-name\">\n <span class=\"text-default-single\" title={this.top}>\n {this.top}\n </span>\n <span class=\"text-default-single\" title={this.bottom}>\n {this.bottom}\n </span>\n </div>\n </button>\n <ix-dropdown\n trigger={this.hostElement}\n placement={'right-start'}\n hidden={!this.showContextMenu && !this.showLogoutButton}\n offset={{\n mainAxis: 16,\n }}\n >\n <slot onSlotchange={() => this.onSlotChange()}></slot>\n {this.showLogoutButton ? (\n <ix-menu-avatar-item\n label={this.i18nLogout}\n icon={iconLogOut}\n onClick={(e) => {\n this.logoutClick.emit(e);\n }}\n ></ix-menu-avatar-item>\n ) : null}\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
@@ -14,9 +14,6 @@ import { createEnterLeaveDebounce } from "./enter-leave";
14
14
  import { iconChevronDownSmall } from "@siemens/ix-icons/icons";
15
15
  const DefaultIxMenuItemHeight = 40;
16
16
  const DefaultAnimationTimeout = 150;
17
- /**
18
- * @since 2.0.0
19
- */
20
17
  export class MenuCategory {
21
18
  constructor() {
22
19
  this.menuExpand = false;
@@ -158,7 +155,7 @@ export class MenuCategory {
158
155
  }
159
156
  }
160
157
  render() {
161
- return (h(Host, { key: '571bcfb41185abbb0507273605c92c808c6d5153', class: {
158
+ return (h(Host, { key: 'd72ef297d80ee26065129e05a4ce8327892efd93', class: {
162
159
  expanded: this.showItems,
163
160
  }, onPointerEnter: () => {
164
161
  this.enterLeaveDebounce.onEnter();
@@ -167,14 +164,14 @@ export class MenuCategory {
167
164
  return;
168
165
  }
169
166
  this.enterLeaveDebounce.onLeave();
170
- } }, h("ix-menu-item", { key: '8bccb98e2774f6ab46fa42ef6ef349464940dd2f', class: 'category-parent', active: this.isNestedItemActive(), notifications: this.notifications, icon: this.icon, onClick: (e) => this.onCategoryClick(e), onFocus: () => this.onPointerEnter(), isCategory: true }, h("div", { key: '6b292422fa8e7ffb5fe572bef0ed94d89d2c9e15', class: "category" }, h("div", { key: '6c2ff8cf81035e13dcdbc0e450a99fb6397951c8', class: "category-text" }, this.label), h("ix-icon", { key: '8f2e7518ab754635fbadd82d54b93e441917ce7a', name: iconChevronDownSmall, class: {
167
+ } }, h("ix-menu-item", { key: 'fa772d59cc0dbbf554287fdd351b650288c8253d', class: 'category-parent', active: this.isNestedItemActive(), notifications: this.notifications, icon: this.icon, onClick: (e) => this.onCategoryClick(e), onFocus: () => this.onPointerEnter(), isCategory: true }, h("div", { key: '746cbb90fbec01530029523a49a9f0192086d701', class: "category" }, h("div", { key: '201db5723f9e97b8e2c98f39ea7afc4480856528', class: "category-text" }, this.label), h("ix-icon", { key: '5968ee754cc97aaf4947a003bf0536c09e9a156a', name: iconChevronDownSmall, class: {
171
168
  'category-chevron': true,
172
169
  'category-chevron--open': this.showItems,
173
- } }))), h("div", { key: 'b2f01026fcd4893f9b43ee83144f4e978f805358', ref: (ref) => (this.menuItemsContainer = ref), class: {
170
+ } }))), h("div", { key: '26894105c6d8355c957e30ab622658570aa62daf', ref: (ref) => (this.menuItemsContainer = ref), class: {
174
171
  'menu-items': true,
175
172
  'menu-items--expanded': this.showItems,
176
173
  'menu-items--collapsed': !this.showItems,
177
- } }, this.showItems ? h("slot", null) : null), h("ix-dropdown", { key: '5c07087f31baea26b2d7f170e9166f7758f59c0a', closeBehavior: 'both', show: this.showDropdown, onShowChanged: ({ detail: dropdownShown }) => {
174
+ } }, this.showItems ? h("slot", null) : null), h("ix-dropdown", { key: '708a0e2a15b0c67612981c84c8b854a95289a7c6', closeBehavior: 'both', show: this.showDropdown, onShowChanged: ({ detail: dropdownShown }) => {
178
175
  this.showDropdown = dropdownShown;
179
176
  }, class: 'category-dropdown', anchor: this.hostElement, placement: "right-start", offset: {
180
177
  mainAxis: 3,
@@ -187,7 +184,7 @@ export class MenuCategory {
187
184
  e.preventDefault();
188
185
  }
189
186
  }
190
- } }, h("ix-dropdown-item", { key: '58082df65e185ce432b3d901c4c62894bd594790', class: 'category-dropdown-header' }, h("ix-typography", { key: 'a0effbd7404653428b6197652943b7a6be2cd82f', format: "label", bold: true, textColor: "std" }, this.label)), h("ix-divider", { key: '52a6bd0499b16717a27dc189f170fc1f7d91043a' }), h("slot", { key: '67e00f22fc9ae4cde06408c87357483666201723' }))));
187
+ } }, h("ix-dropdown-item", { key: '7a95a0c12b475aae1842ddabf1bb0c8e1bbfd8b0', class: 'category-dropdown-header' }, h("ix-typography", { key: 'ed99df5df58194920ea6389ebc1db8cf1df80676', format: "label", bold: true, textColor: "std" }, this.label)), h("ix-divider", { key: '665617271f5a9864d9b98756f484a414f2eac4fe' }), h("slot", { key: 'a61911819a98287b91e4d37b12799148c5a51adf' }))));
191
188
  }
192
189
  static get is() { return "ix-menu-category"; }
193
190
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"menu-category.js","sourceRoot":"","sources":["../../../src/components/menu-category/menu-category.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n h,\n Host,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { closestIxMenu } from '../utils/application-layout/context';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { createEnterLeaveDebounce } from './enter-leave';\nimport { iconChevronDownSmall } from '@siemens/ix-icons/icons';\n\nconst DefaultIxMenuItemHeight = 40;\nconst DefaultAnimationTimeout = 150;\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-menu-category',\n styleUrl: 'menu-category.scss',\n shadow: true,\n})\nexport class MenuCategory {\n @Element() hostElement!: HTMLIxMenuCategoryElement;\n\n /**\n * Display name of the category\n */\n @Prop() label?: string;\n\n /**\n * Icon of the category\n */\n @Prop() icon?: string;\n\n /**\n * Show notification count on the category\n */\n @Prop() notifications?: number;\n\n /** @internal */\n // eslint-disable-next-line @stencil-community/decorators-style\n @Event({ bubbles: true, cancelable: true })\n closeOtherCategories!: EventEmitter;\n\n @State() menuExpand = false;\n @State() showItems = false;\n @State() showDropdown = false;\n @State() nestedItems: HTMLIxMenuItemElement[] = [];\n\n private observer?: MutationObserver;\n private menuItemsContainer?: HTMLDivElement;\n private ixMenu?: HTMLIxMenuElement;\n\n private enterLeaveDebounce = createEnterLeaveDebounce(\n () => {\n this.onPointerEnter();\n },\n () => {\n this.onPointerLeave();\n }\n );\n\n private isNestedItemActive() {\n return this.getNestedItems().some((item) => item.active);\n }\n\n private getNestedItems() {\n return Array.from(\n this.hostElement.querySelectorAll(':scope ix-menu-item')\n ) as HTMLIxMenuItemElement[];\n }\n\n private getNestedItemsHeight() {\n const items = this.getNestedItems();\n\n return items.length * DefaultIxMenuItemHeight;\n }\n\n private onExpandCategory(showItems: boolean) {\n if (showItems) {\n this.animateFadeIn();\n } else {\n this.animateFadeOut();\n }\n }\n\n private animateFadeOut() {\n const slotHideThresholdMs = 25;\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [1, 0],\n maxHeight: [this.getNestedItemsHeight() + DefaultIxMenuItemHeight, 0],\n complete: () => {\n setTimeout(() => {\n this.showItems = false;\n this.showDropdown = false;\n }, DefaultAnimationTimeout + slotHideThresholdMs);\n },\n });\n }\n\n private animateFadeIn() {\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [0, 1],\n maxHeight: [0, this.getNestedItemsHeight() + DefaultIxMenuItemHeight],\n begin: () => {\n this.showItems = true;\n this.showDropdown = false;\n },\n });\n }\n\n private onPointerEnter() {\n if (this.ixMenu?.expand) {\n return;\n }\n this.closeOtherCategories.emit();\n this.showDropdown = true;\n }\n\n @Listen('closeOtherCategories', { target: 'window' })\n private onPointerLeave() {\n this.showDropdown = false;\n }\n\n private onCategoryClick(e: MouseEvent) {\n e.stopPropagation();\n if (this.ixMenu?.expand) {\n this.onExpandCategory(!this.showItems);\n return;\n }\n }\n\n private onNestedItemsChanged(mutations?: MutationRecord[]) {\n const oldNestedItemsLength = this.nestedItems.length;\n this.nestedItems = this.getNestedItems();\n\n if (\n this.showItems &&\n this.menuItemsContainer &&\n oldNestedItemsLength !== this.nestedItems.length\n ) {\n this.menuItemsContainer.style.maxHeight = `${\n this.getNestedItemsHeight() + DefaultIxMenuItemHeight\n }px`;\n }\n\n if (!this.menuExpand || this.showItems || !mutations) {\n return;\n }\n\n for (const mutation of mutations ?? []) {\n if (\n mutation.attributeName === 'class' &&\n mutation.target instanceof HTMLElement &&\n mutation.target.classList.contains('active')\n ) {\n this.showItems = true;\n this.onExpandCategory(true);\n return;\n }\n }\n }\n\n private isCategoryItemListVisible() {\n return this.menuExpand && (this.showItems || this.isNestedItemActive());\n }\n\n componentWillLoad() {\n const closestMenu = closestIxMenu(this.hostElement);\n if (!closestMenu) {\n throw Error('ix-menu-category can only be used as a child of ix-menu');\n }\n this.ixMenu = closestMenu;\n\n this.menuExpand = this.ixMenu.expand;\n this.showItems = this.isCategoryItemListVisible();\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver((mutations: MutationRecord[]) =>\n this.onNestedItemsChanged(mutations)\n );\n\n this.observer.observe(this.hostElement, {\n attributes: true,\n childList: true,\n subtree: true,\n });\n\n requestAnimationFrame(() => {\n this.onNestedItemsChanged();\n });\n\n this.ixMenu?.addEventListener(\n 'expandChange',\n ({ detail: menuExpand }: CustomEvent<boolean>) => {\n this.menuExpand = menuExpand;\n if (!menuExpand) {\n this.clearMenuItemStyles();\n }\n this.showItems = this.isCategoryItemListVisible();\n }\n );\n }\n\n clearMenuItemStyles() {\n this.menuItemsContainer?.style.removeProperty('max-height');\n this.menuItemsContainer?.style.removeProperty('opacity');\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.showItems,\n }}\n onPointerEnter={() => {\n this.enterLeaveDebounce.onEnter();\n }}\n onPointerLeave={(event: PointerEvent) => {\n if (event.pointerType === 'touch') {\n return;\n }\n this.enterLeaveDebounce.onLeave();\n }}\n >\n <ix-menu-item\n class={'category-parent'}\n active={this.isNestedItemActive()}\n notifications={this.notifications}\n icon={this.icon}\n onClick={(e) => this.onCategoryClick(e)}\n onFocus={() => this.onPointerEnter()}\n isCategory\n >\n <div class=\"category\">\n <div class=\"category-text\">{this.label}</div>\n <ix-icon\n name={iconChevronDownSmall}\n class={{\n 'category-chevron': true,\n 'category-chevron--open': this.showItems,\n }}\n ></ix-icon>\n </div>\n </ix-menu-item>\n <div\n ref={(ref) => (this.menuItemsContainer = ref!)}\n class={{\n 'menu-items': true,\n 'menu-items--expanded': this.showItems,\n 'menu-items--collapsed': !this.showItems,\n }}\n >\n {this.showItems ? <slot></slot> : null}\n </div>\n <ix-dropdown\n closeBehavior={'both'}\n show={this.showDropdown}\n onShowChanged={({ detail: dropdownShown }: CustomEvent<boolean>) => {\n this.showDropdown = dropdownShown;\n }}\n class={'category-dropdown'}\n anchor={this.hostElement}\n placement=\"right-start\"\n offset={{\n mainAxis: 3,\n }}\n onClick={(e) => {\n if (e.target instanceof HTMLElement) {\n if (e.target.tagName === 'IX-MENU-ITEM') {\n this.showDropdown = false;\n } else {\n e.preventDefault();\n }\n }\n }}\n >\n <ix-dropdown-item class={'category-dropdown-header'}>\n <ix-typography format=\"label\" bold textColor=\"std\">\n {this.label}\n </ix-typography>\n </ix-dropdown-item>\n <ix-divider></ix-divider>\n <slot></slot>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"menu-category.js","sourceRoot":"","sources":["../../../src/components/menu-category/menu-category.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n Component,\n Element,\n h,\n Host,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n} from '@stencil/core';\nimport anime from 'animejs';\nimport { closestIxMenu } from '../utils/application-layout/context';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { createEnterLeaveDebounce } from './enter-leave';\nimport { iconChevronDownSmall } from '@siemens/ix-icons/icons';\n\nconst DefaultIxMenuItemHeight = 40;\nconst DefaultAnimationTimeout = 150;\n\n@Component({\n tag: 'ix-menu-category',\n styleUrl: 'menu-category.scss',\n shadow: true,\n})\nexport class MenuCategory {\n @Element() hostElement!: HTMLIxMenuCategoryElement;\n\n /**\n * Display name of the category\n */\n @Prop() label?: string;\n\n /**\n * Icon of the category\n */\n @Prop() icon?: string;\n\n /**\n * Show notification count on the category\n */\n @Prop() notifications?: number;\n\n /** @internal */\n // eslint-disable-next-line @stencil-community/decorators-style\n @Event({ bubbles: true, cancelable: true })\n closeOtherCategories!: EventEmitter;\n\n @State() menuExpand = false;\n @State() showItems = false;\n @State() showDropdown = false;\n @State() nestedItems: HTMLIxMenuItemElement[] = [];\n\n private observer?: MutationObserver;\n private menuItemsContainer?: HTMLDivElement;\n private ixMenu?: HTMLIxMenuElement;\n\n private enterLeaveDebounce = createEnterLeaveDebounce(\n () => {\n this.onPointerEnter();\n },\n () => {\n this.onPointerLeave();\n }\n );\n\n private isNestedItemActive() {\n return this.getNestedItems().some((item) => item.active);\n }\n\n private getNestedItems() {\n return Array.from(\n this.hostElement.querySelectorAll(':scope ix-menu-item')\n ) as HTMLIxMenuItemElement[];\n }\n\n private getNestedItemsHeight() {\n const items = this.getNestedItems();\n\n return items.length * DefaultIxMenuItemHeight;\n }\n\n private onExpandCategory(showItems: boolean) {\n if (showItems) {\n this.animateFadeIn();\n } else {\n this.animateFadeOut();\n }\n }\n\n private animateFadeOut() {\n const slotHideThresholdMs = 25;\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [1, 0],\n maxHeight: [this.getNestedItemsHeight() + DefaultIxMenuItemHeight, 0],\n complete: () => {\n setTimeout(() => {\n this.showItems = false;\n this.showDropdown = false;\n }, DefaultAnimationTimeout + slotHideThresholdMs);\n },\n });\n }\n\n private animateFadeIn() {\n anime({\n targets: this.menuItemsContainer,\n duration: DefaultAnimationTimeout,\n easing: 'easeInSine',\n opacity: [0, 1],\n maxHeight: [0, this.getNestedItemsHeight() + DefaultIxMenuItemHeight],\n begin: () => {\n this.showItems = true;\n this.showDropdown = false;\n },\n });\n }\n\n private onPointerEnter() {\n if (this.ixMenu?.expand) {\n return;\n }\n this.closeOtherCategories.emit();\n this.showDropdown = true;\n }\n\n @Listen('closeOtherCategories', { target: 'window' })\n private onPointerLeave() {\n this.showDropdown = false;\n }\n\n private onCategoryClick(e: MouseEvent) {\n e.stopPropagation();\n if (this.ixMenu?.expand) {\n this.onExpandCategory(!this.showItems);\n return;\n }\n }\n\n private onNestedItemsChanged(mutations?: MutationRecord[]) {\n const oldNestedItemsLength = this.nestedItems.length;\n this.nestedItems = this.getNestedItems();\n\n if (\n this.showItems &&\n this.menuItemsContainer &&\n oldNestedItemsLength !== this.nestedItems.length\n ) {\n this.menuItemsContainer.style.maxHeight = `${\n this.getNestedItemsHeight() + DefaultIxMenuItemHeight\n }px`;\n }\n\n if (!this.menuExpand || this.showItems || !mutations) {\n return;\n }\n\n for (const mutation of mutations ?? []) {\n if (\n mutation.attributeName === 'class' &&\n mutation.target instanceof HTMLElement &&\n mutation.target.classList.contains('active')\n ) {\n this.showItems = true;\n this.onExpandCategory(true);\n return;\n }\n }\n }\n\n private isCategoryItemListVisible() {\n return this.menuExpand && (this.showItems || this.isNestedItemActive());\n }\n\n componentWillLoad() {\n const closestMenu = closestIxMenu(this.hostElement);\n if (!closestMenu) {\n throw Error('ix-menu-category can only be used as a child of ix-menu');\n }\n this.ixMenu = closestMenu;\n\n this.menuExpand = this.ixMenu.expand;\n this.showItems = this.isCategoryItemListVisible();\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver((mutations: MutationRecord[]) =>\n this.onNestedItemsChanged(mutations)\n );\n\n this.observer.observe(this.hostElement, {\n attributes: true,\n childList: true,\n subtree: true,\n });\n\n requestAnimationFrame(() => {\n this.onNestedItemsChanged();\n });\n\n this.ixMenu?.addEventListener(\n 'expandChange',\n ({ detail: menuExpand }: CustomEvent<boolean>) => {\n this.menuExpand = menuExpand;\n if (!menuExpand) {\n this.clearMenuItemStyles();\n }\n this.showItems = this.isCategoryItemListVisible();\n }\n );\n }\n\n clearMenuItemStyles() {\n this.menuItemsContainer?.style.removeProperty('max-height');\n this.menuItemsContainer?.style.removeProperty('opacity');\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.showItems,\n }}\n onPointerEnter={() => {\n this.enterLeaveDebounce.onEnter();\n }}\n onPointerLeave={(event: PointerEvent) => {\n if (event.pointerType === 'touch') {\n return;\n }\n this.enterLeaveDebounce.onLeave();\n }}\n >\n <ix-menu-item\n class={'category-parent'}\n active={this.isNestedItemActive()}\n notifications={this.notifications}\n icon={this.icon}\n onClick={(e) => this.onCategoryClick(e)}\n onFocus={() => this.onPointerEnter()}\n isCategory\n >\n <div class=\"category\">\n <div class=\"category-text\">{this.label}</div>\n <ix-icon\n name={iconChevronDownSmall}\n class={{\n 'category-chevron': true,\n 'category-chevron--open': this.showItems,\n }}\n ></ix-icon>\n </div>\n </ix-menu-item>\n <div\n ref={(ref) => (this.menuItemsContainer = ref!)}\n class={{\n 'menu-items': true,\n 'menu-items--expanded': this.showItems,\n 'menu-items--collapsed': !this.showItems,\n }}\n >\n {this.showItems ? <slot></slot> : null}\n </div>\n <ix-dropdown\n closeBehavior={'both'}\n show={this.showDropdown}\n onShowChanged={({ detail: dropdownShown }: CustomEvent<boolean>) => {\n this.showDropdown = dropdownShown;\n }}\n class={'category-dropdown'}\n anchor={this.hostElement}\n placement=\"right-start\"\n offset={{\n mainAxis: 3,\n }}\n onClick={(e) => {\n if (e.target instanceof HTMLElement) {\n if (e.target.tagName === 'IX-MENU-ITEM') {\n this.showDropdown = false;\n } else {\n e.preventDefault();\n }\n }\n }}\n >\n <ix-dropdown-item class={'category-dropdown-header'}>\n <ix-typography format=\"label\" bold textColor=\"std\">\n {this.label}\n </ix-typography>\n </ix-dropdown-item>\n <ix-divider></ix-divider>\n <slot></slot>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}