@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
@@ -1 +1 @@
1
- {"version":3,"file":"ix-map-navigation.entry.cjs.js","sources":["src/components/map-navigation/map-navigation.scss?tag=ix-map-navigation&encapsulation=shadow","src/components/map-navigation/map-navigation.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n $appHeaderHeight: 3.5rem;\n $appHeaderGradientHeight: 4rem;\n $navHeaderHeight: 11.5rem;\n $sidebarWidth: 29.75rem;\n\n display: flex;\n position: relative;\n width: 100%;\n height: 100%;\n\n .map-nav {\n display: flex;\n margin-left: 3.25rem;\n position: relative;\n height: 100%;\n flex-grow: 1;\n overflow: hidden;\n }\n\n .map-nav-sidebar {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: $sidebarWidth;\n max-width: $sidebarWidth;\n min-width: $sidebarWidth;\n height: 100%;\n left: 4rem;\n background-color: var(--theme-map-navigation--background);\n border-inline-end: 0.125rem solid\n var(--theme-map-navigation-separator--background);\n z-index: 99;\n\n &.display-none {\n display: none;\n }\n }\n\n .map-nav-sidebar-content {\n align-items: center;\n position: relative;\n overflow: auto;\n height: 100%;\n width: 100%;\n\n .map-nav-sidebar-static-content {\n @include text-h2;\n display: flex;\n justify-content: space-between;\n margin-top: 0.437rem;\n margin-bottom: 0.812rem;\n margin-left: $default-space;\n margin-right: $default-space;\n }\n }\n\n .map-nav-header {\n display: flex;\n position: relative;\n align-items: center;\n height: $appHeaderHeight;\n min-height: $appHeaderHeight;\n width: 100%;\n\n .map-nav-header-brand {\n background-color: var(--theme-map-navigation-background);\n\n padding-left: $default-space;\n padding-right: $default-space;\n padding-bottom: 0.625rem;\n height: 100%;\n width: 100%;\n --theme-app-header--color: var(--theme-map-navigation-header--color);\n --theme-app-header-logo--color: var(--theme-map-navigation-logo--color);\n\n button {\n margin-left: $default-space;\n }\n }\n }\n\n .map-nav-header-content {\n display: flex;\n height: $appHeaderHeight;\n align-items: center;\n overflow: hidden;\n padding: 0 $default-space;\n\n &.empty {\n height: 0;\n }\n }\n\n .map-nav-title {\n @include text-h2();\n\n display: flex;\n align-items: center;\n flex-grow: 1;\n }\n\n .content {\n display: block;\n flex-grow: 1;\n position: relative;\n height: 100%;\n overflow: hidden;\n z-index: calc(var(--theme-z-index-sticky) - 1);\n }\n\n ::slotted(ix-menu) {\n position: absolute;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\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"],"names":["useContextProvider","ApplicationLayoutContext","anime","h","Host","iconContextMenu"],"mappings":"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"}
1
+ {"version":3,"file":"ix-map-navigation.entry.cjs.js","sources":["src/components/map-navigation/map-navigation.scss?tag=ix-map-navigation&encapsulation=shadow","src/components/map-navigation/map-navigation.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n $appHeaderHeight: 3.5rem;\n $appHeaderGradientHeight: 4rem;\n $navHeaderHeight: 11.5rem;\n $sidebarWidth: 29.75rem;\n\n display: flex;\n position: relative;\n width: 100%;\n height: 100%;\n\n .map-nav {\n display: flex;\n margin-left: 3.25rem;\n position: relative;\n height: 100%;\n flex-grow: 1;\n overflow: hidden;\n }\n\n .map-nav-sidebar {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: $sidebarWidth;\n max-width: $sidebarWidth;\n min-width: $sidebarWidth;\n height: 100%;\n left: 4rem;\n background-color: var(--theme-map-navigation--background);\n border-inline-end: 0.125rem solid\n var(--theme-map-navigation-separator--background);\n z-index: 99;\n\n &.display-none {\n display: none;\n }\n }\n\n .map-nav-sidebar-content {\n align-items: center;\n position: relative;\n overflow: auto;\n height: 100%;\n width: 100%;\n\n .map-nav-sidebar-static-content {\n @include text-h2;\n display: flex;\n justify-content: space-between;\n margin-top: 0.437rem;\n margin-bottom: 0.812rem;\n margin-left: $default-space;\n margin-right: $default-space;\n }\n }\n\n .map-nav-header {\n display: flex;\n position: relative;\n align-items: center;\n height: $appHeaderHeight;\n min-height: $appHeaderHeight;\n width: 100%;\n\n .map-nav-header-brand {\n background-color: var(--theme-map-navigation-background);\n\n padding-left: $default-space;\n padding-right: $default-space;\n padding-bottom: 0.625rem;\n height: 100%;\n width: 100%;\n --theme-app-header--color: var(--theme-map-navigation-header--color);\n --theme-app-header-logo--color: var(--theme-map-navigation-logo--color);\n\n button {\n margin-left: $default-space;\n }\n }\n }\n\n .map-nav-header-content {\n display: flex;\n height: $appHeaderHeight;\n align-items: center;\n overflow: hidden;\n padding: 0 $default-space;\n\n &.empty {\n height: 0;\n }\n }\n\n .map-nav-title {\n @include text-h2();\n\n display: flex;\n align-items: center;\n flex-grow: 1;\n }\n\n .content {\n display: block;\n flex-grow: 1;\n position: relative;\n height: 100%;\n overflow: hidden;\n z-index: calc(var(--theme-z-index-sticky) - 1);\n }\n\n ::slotted(ix-menu) {\n position: absolute;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\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"],"names":["useContextProvider","ApplicationLayoutContext","anime","h","Host","iconContextMenu"],"mappings":"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"}
@@ -16,12 +16,10 @@ const MenuAvatar = class {
16
16
  this.i18nLogout = 'Logout';
17
17
  /**
18
18
  * Control the visibility of the logout button
19
- * @since 2.1.0
20
19
  */
21
20
  this.showLogoutButton = true;
22
21
  /**
23
22
  * Control the visibility of the dropdown menu
24
- * @since 2.1.0
25
23
  */
26
24
  this.showContextMenu = false;
27
25
  this.avatarElementId = 'ix-menu-avatar-id';
@@ -35,9 +33,9 @@ const MenuAvatar = class {
35
33
  this.showContextMenu = elements.length !== 0;
36
34
  }
37
35
  render() {
38
- return (index.h(index.Host, { key: '3bcb9db9a5f7b6e2b949a1b78d31ac4307d55a21', slot: "ix-menu-avatar" }, index.h("button", { key: '997f2a3ca9f419eb8618b7baecea9487fee4353a', class: "nav-item top-item avatar no-hover", title: this.top, id: this.avatarElementId, tabIndex: 0 }, index.h("ix-avatar", { key: '9f16020bf51db6289cdda6ec9f9576d5d1e0f30a', image: this.image, initials: this.initials }), index.h("div", { key: 'bb5bc3adb3b7ec2973e2212fc913423ae69d2796', class: "avatar-name" }, index.h("span", { key: 'efa4a3e92895392a7618db2f124228bb785717ae', class: "text-default-single", title: this.top }, this.top), index.h("span", { key: 'eff8ba846915852b97771f1610f62450496f8c33', class: "text-default-single", title: this.bottom }, this.bottom))), index.h("ix-dropdown", { key: '51e2c74f032ef5960aa1b3491728545bd3d88557', trigger: this.hostElement, placement: 'right-start', hidden: !this.showContextMenu && !this.showLogoutButton, offset: {
36
+ return (index.h(index.Host, { key: '0de17572a27311bdac05540ef99db83d45805f75', slot: "ix-menu-avatar" }, index.h("button", { key: '92f5318a7f2d858eb2c5de56dc2fb936e89287ec', class: "nav-item top-item avatar no-hover", title: this.top, id: this.avatarElementId, tabIndex: 0 }, index.h("ix-avatar", { key: '467817b892981995dad63306d86a37c319667677', image: this.image, initials: this.initials }), index.h("div", { key: '25339aa123e84ed37d4d6733c571a4b9c542b3b0', class: "avatar-name" }, index.h("span", { key: 'b4be6b9c6821461b2c01679ed5343dc233441b7c', class: "text-default-single", title: this.top }, this.top), index.h("span", { key: '1beaa9327403d4d8a5da0ca6a9ec0e546ee2172e', class: "text-default-single", title: this.bottom }, this.bottom))), index.h("ix-dropdown", { key: 'd5fcd99be86d4d13dad176354bfb7d8ba516c269', trigger: this.hostElement, placement: 'right-start', hidden: !this.showContextMenu && !this.showLogoutButton, offset: {
39
37
  mainAxis: 16,
40
- } }, index.h("slot", { key: '28605745ab13750eba6842c78e42fac4ac705a51', onSlotchange: () => this.onSlotChange() }), this.showLogoutButton ? (index.h("ix-menu-avatar-item", { label: this.i18nLogout, icon: index$1.iconLogOut, onClick: (e) => {
38
+ } }, index.h("slot", { key: 'dd3580e96699f31becd4c16705ee4275960c1442', onSlotchange: () => this.onSlotChange() }), this.showLogoutButton ? (index.h("ix-menu-avatar-item", { label: this.i18nLogout, icon: index$1.iconLogOut, onClick: (e) => {
41
39
  this.logoutClick.emit(e);
42
40
  } })) : null)));
43
41
  }
@@ -1 +1 @@
1
- {"file":"ix-menu-avatar.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,+3DAA+3D;;MC0Bx4D,UAAU,GAAA,MAAA;AALvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAgCE;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAW,QAAQ;AAErC;;;AAGG;AACK,QAAA,IAAgB,CAAA,gBAAA,GAAY,IAAI;AAExC;;;AAGG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAOjC,QAAA,IAAe,CAAA,eAAA,GAAG,mBAAmB;AAqD9C;IAnDC,YAAY,GAAA;AACV,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,IAAI,EAAE;YACT;;AAEF,QAAA,MAAM,QAAQ,GAAGA,4BAAkB,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC;;IAG9C,MAAM,GAAA;AACJ,QAAA,QACEC,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,gBAAgB,EAAA,EACzBD,OAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC,EAAA,EAEXA,OAAW,CAAA,WAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAc,CAAA,EAEnEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAA,EACtBA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAA,EAC9C,IAAI,CAAC,GAAG,CACJ,EACPA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC,EACTA,OACE,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;AACN,gBAAA,QAAQ,EAAE,EAAE;aACb,EAAA,EAEDA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,YAAY,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAS,CAAA,EACrD,IAAI,CAAC,gBAAgB,IACpBA,OAAA,CAAA,qBAAA,EAAA,EACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAEE,kBAAU,EAChB,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;aACzB,EAAA,CACoB,IACrB,IAAI,CACI,CACT;;;;;;;;","names":["getSlottedElements","h","Host","iconLogOut"],"sources":["src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=shadow","src/components/menu-avatar/menu-avatar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n margin-right: 0.75rem;\n\n .avatar {\n all: unset;\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n height: 2.5rem;\n width: 100%;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.41rem;\n margin-right: 0.35rem;\n transition: var(--theme-default-time);\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n color: var(--theme-nav-item-primary--color);\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n\n .avatar:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"version":3}
1
+ {"file":"ix-menu-avatar.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,+3DAA+3D;;MC0Bx4D,UAAU,GAAA,MAAA;AALvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AA4BE;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAW,QAAQ;AAErC;;AAEG;AACK,QAAA,IAAgB,CAAA,gBAAA,GAAY,IAAI;AAExC;;AAEG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAOjC,QAAA,IAAe,CAAA,eAAA,GAAG,mBAAmB;AAqD9C;IAnDC,YAAY,GAAA;AACV,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,IAAI,EAAE;YACT;;AAEF,QAAA,MAAM,QAAQ,GAAGA,4BAAkB,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC;;IAG9C,MAAM,GAAA;AACJ,QAAA,QACEC,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,gBAAgB,EAAA,EACzBD,OAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC,EAAA,EAEXA,OAAW,CAAA,WAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAc,CAAA,EAEnEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAA,EACtBA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAA,EAC9C,IAAI,CAAC,GAAG,CACJ,EACPA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC,EACTA,OACE,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;AACN,gBAAA,QAAQ,EAAE,EAAE;aACb,EAAA,EAEDA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,YAAY,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAS,CAAA,EACrD,IAAI,CAAC,gBAAgB,IACpBA,OAAA,CAAA,qBAAA,EAAA,EACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAEE,kBAAU,EAChB,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;aACzB,EAAA,CACoB,IACrB,IAAI,CACI,CACT;;;;;;;;","names":["getSlottedElements","h","Host","iconLogOut"],"sources":["src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=shadow","src/components/menu-avatar/menu-avatar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n margin-right: 0.75rem;\n\n .avatar {\n all: unset;\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n height: 2.5rem;\n width: 100%;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.41rem;\n margin-right: 0.35rem;\n transition: var(--theme-default-time);\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n color: var(--theme-nav-item-primary--color);\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n\n .avatar:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"version":3}
@@ -1 +1 @@
1
- {"version":3,"file":"ix-menu-avatar.entry.cjs.js","sources":["src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=shadow","src/components/menu-avatar/menu-avatar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n margin-right: 0.75rem;\n\n .avatar {\n all: unset;\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n height: 2.5rem;\n width: 100%;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.41rem;\n margin-right: 0.35rem;\n transition: var(--theme-default-time);\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n color: var(--theme-nav-item-primary--color);\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n\n .avatar:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"names":["getSlottedElements","h","Host","iconLogOut"],"mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,+3DAA+3D;;MC0Bx4D,UAAU,GAAA,MAAA;AALvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAgCE;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAW,QAAQ;AAErC;;;AAGG;AACK,QAAA,IAAgB,CAAA,gBAAA,GAAY,IAAI;AAExC;;;AAGG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAOjC,QAAA,IAAe,CAAA,eAAA,GAAG,mBAAmB;AAqD9C;IAnDC,YAAY,GAAA;AACV,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,IAAI,EAAE;YACT;;AAEF,QAAA,MAAM,QAAQ,GAAGA,4BAAkB,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC;;IAG9C,MAAM,GAAA;AACJ,QAAA,QACEC,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,gBAAgB,EAAA,EACzBD,OAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC,EAAA,EAEXA,OAAW,CAAA,WAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAc,CAAA,EAEnEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAA,EACtBA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAA,EAC9C,IAAI,CAAC,GAAG,CACJ,EACPA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC,EACTA,OACE,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;AACN,gBAAA,QAAQ,EAAE,EAAE;aACb,EAAA,EAEDA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,YAAY,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAS,CAAA,EACrD,IAAI,CAAC,gBAAgB,IACpBA,OAAA,CAAA,qBAAA,EAAA,EACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAEE,kBAAU,EAChB,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;aACzB,EAAA,CACoB,IACrB,IAAI,CACI,CACT;;;;;;;;"}
1
+ {"version":3,"file":"ix-menu-avatar.entry.cjs.js","sources":["src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=shadow","src/components/menu-avatar/menu-avatar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n margin-right: 0.75rem;\n\n .avatar {\n all: unset;\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n height: 2.5rem;\n width: 100%;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.41rem;\n margin-right: 0.35rem;\n transition: var(--theme-default-time);\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n color: var(--theme-nav-item-primary--color);\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n\n .avatar:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"names":["getSlottedElements","h","Host","iconLogOut"],"mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,+3DAA+3D;;MC0Bx4D,UAAU,GAAA,MAAA;AALvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AA4BE;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAW,QAAQ;AAErC;;AAEG;AACK,QAAA,IAAgB,CAAA,gBAAA,GAAY,IAAI;AAExC;;AAEG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAOjC,QAAA,IAAe,CAAA,eAAA,GAAG,mBAAmB;AAqD9C;IAnDC,YAAY,GAAA;AACV,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,IAAI,EAAE;YACT;;AAEF,QAAA,MAAM,QAAQ,GAAGA,4BAAkB,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC;;IAG9C,MAAM,GAAA;AACJ,QAAA,QACEC,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,gBAAgB,EAAA,EACzBD,OAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,EAAE,EAAE,IAAI,CAAC,eAAe,EACxB,QAAQ,EAAE,CAAC,EAAA,EAEXA,OAAW,CAAA,WAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAc,CAAA,EAEnEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAA,EACtBA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAA,EAC9C,IAAI,CAAC,GAAG,CACJ,EACPA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,qBAAqB,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,IACjD,IAAI,CAAC,MAAM,CACP,CACH,CACC,EACTA,OACE,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,gBAAgB,EACvD,MAAM,EAAE;AACN,gBAAA,QAAQ,EAAE,EAAE;aACb,EAAA,EAEDA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,YAAY,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAAS,CAAA,EACrD,IAAI,CAAC,gBAAgB,IACpBA,OAAA,CAAA,qBAAA,EAAA,EACE,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,IAAI,EAAEE,kBAAU,EAChB,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;aACzB,EAAA,CACoB,IACrB,IAAI,CACI,CACT;;;;;;;;"}
@@ -184,7 +184,7 @@ const MenuCategory = class {
184
184
  }
185
185
  }
186
186
  render() {
187
- return (index.h(index.Host, { key: '571bcfb41185abbb0507273605c92c808c6d5153', class: {
187
+ return (index.h(index.Host, { key: 'd72ef297d80ee26065129e05a4ce8327892efd93', class: {
188
188
  expanded: this.showItems,
189
189
  }, onPointerEnter: () => {
190
190
  this.enterLeaveDebounce.onEnter();
@@ -193,14 +193,14 @@ const MenuCategory = class {
193
193
  return;
194
194
  }
195
195
  this.enterLeaveDebounce.onLeave();
196
- } }, index.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 }, index.h("div", { key: '6b292422fa8e7ffb5fe572bef0ed94d89d2c9e15', class: "category" }, index.h("div", { key: '6c2ff8cf81035e13dcdbc0e450a99fb6397951c8', class: "category-text" }, this.label), index.h("ix-icon", { key: '8f2e7518ab754635fbadd82d54b93e441917ce7a', name: index$1.iconChevronDownSmall, class: {
196
+ } }, index.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 }, index.h("div", { key: '746cbb90fbec01530029523a49a9f0192086d701', class: "category" }, index.h("div", { key: '201db5723f9e97b8e2c98f39ea7afc4480856528', class: "category-text" }, this.label), index.h("ix-icon", { key: '5968ee754cc97aaf4947a003bf0536c09e9a156a', name: index$1.iconChevronDownSmall, class: {
197
197
  'category-chevron': true,
198
198
  'category-chevron--open': this.showItems,
199
- } }))), index.h("div", { key: 'b2f01026fcd4893f9b43ee83144f4e978f805358', ref: (ref) => (this.menuItemsContainer = ref), class: {
199
+ } }))), index.h("div", { key: '26894105c6d8355c957e30ab622658570aa62daf', ref: (ref) => (this.menuItemsContainer = ref), class: {
200
200
  'menu-items': true,
201
201
  'menu-items--expanded': this.showItems,
202
202
  'menu-items--collapsed': !this.showItems,
203
- } }, this.showItems ? index.h("slot", null) : null), index.h("ix-dropdown", { key: '5c07087f31baea26b2d7f170e9166f7758f59c0a', closeBehavior: 'both', show: this.showDropdown, onShowChanged: ({ detail: dropdownShown }) => {
203
+ } }, this.showItems ? index.h("slot", null) : null), index.h("ix-dropdown", { key: '708a0e2a15b0c67612981c84c8b854a95289a7c6', closeBehavior: 'both', show: this.showDropdown, onShowChanged: ({ detail: dropdownShown }) => {
204
204
  this.showDropdown = dropdownShown;
205
205
  }, class: 'category-dropdown', anchor: this.hostElement, placement: "right-start", offset: {
206
206
  mainAxis: 3,
@@ -213,7 +213,7 @@ const MenuCategory = class {
213
213
  e.preventDefault();
214
214
  }
215
215
  }
216
- } }, index.h("ix-dropdown-item", { key: '58082df65e185ce432b3d901c4c62894bd594790', class: 'category-dropdown-header' }, index.h("ix-typography", { key: 'a0effbd7404653428b6197652943b7a6be2cd82f', format: "label", bold: true, textColor: "std" }, this.label)), index.h("ix-divider", { key: '52a6bd0499b16717a27dc189f170fc1f7d91043a' }), index.h("slot", { key: '67e00f22fc9ae4cde06408c87357483666201723' }))));
216
+ } }, index.h("ix-dropdown-item", { key: '7a95a0c12b475aae1842ddabf1bb0c8e1bbfd8b0', class: 'category-dropdown-header' }, index.h("ix-typography", { key: 'ed99df5df58194920ea6389ebc1db8cf1df80676', format: "label", bold: true, textColor: "std" }, this.label)), index.h("ix-divider", { key: '665617271f5a9864d9b98756f484a414f2eac4fe' }), index.h("slot", { key: 'a61911819a98287b91e4d37b12799148c5a51adf' }))));
217
217
  }
218
218
  get hostElement() { return index.getElement(this); }
219
219
  };
@@ -1 +1 @@
1
- {"file":"ix-menu-category.entry.cjs.js","mappings":"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","names":["anime","closestIxMenu","createMutationObserver","h","Host","iconChevronDownSmall"],"sources":["src/components/menu-category/enter-leave.ts","src/components/menu-category/menu-category.scss?tag=ix-menu-category&encapsulation=shadow","src/components/menu-category/menu-category.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nexport function createEnterLeaveDebounce(\n enterCallback: Function,\n leaveCallback: Function,\n {\n debounceTimeEnter,\n debounceTimeLeave,\n }: {\n debounceTimeEnter: number;\n debounceTimeLeave: number;\n } = {\n debounceTimeEnter: 0,\n debounceTimeLeave: 500,\n }\n) {\n let enterTimeout: NodeJS.Timeout;\n let leaveTimeout: NodeJS.Timeout;\n\n return {\n onEnter: () => {\n clearTimeout(leaveTimeout);\n enterTimeout = setTimeout(() => {\n enterCallback();\n }, debounceTimeEnter);\n },\n onLeave: () => {\n clearTimeout(enterTimeout);\n leaveTimeout = setTimeout(() => {\n leaveCallback();\n }, debounceTimeLeave);\n },\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n\n:host {\n @include ix-component;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .category {\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n .category-text {\n width: 100%;\n padding-right: 0.25rem;\n @include ellipsis;\n }\n\n .category-chevron {\n margin-left: auto;\n margin-right: 0;\n transition: var(--theme-default-time) transform ease-in-out;\n }\n\n .category-chevron--open {\n transform: rotate(-180deg);\n }\n\n .menu-items {\n overflow: hidden;\n max-height: 0;\n transition: var(--theme-default-time) max-height ease-in-out;\n }\n\n .menu-items--expanded {\n max-height: 999999999px;\n padding: 0.25rem 0 0.25rem 1.625rem;\n }\n\n .menu-items--collapsed {\n display: none;\n }\n\n .category-dropdown {\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n }\n\n .category-dropdown-header {\n pointer-events: none;\n padding-left: 0.125rem;\n min-width: 256px;\n }\n\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n}\n\n:host(.expanded) {\n background-color: var(--theme-color-ghost--active);\n}\n\n:host {\n ::slotted(a[href]) {\n text-decoration: none !important;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"version":3}
1
+ {"file":"ix-menu-category.entry.cjs.js","mappings":";;;;;;;;;AAAA;;;;;;;AAOG;AACG,SAAU,wBAAwB,CACtC,aAAuB,EACvB,aAAuB,EACvB,EACE,iBAAiB,EACjB,iBAAiB,GAIf,GAAA;AACF,IAAA,iBAAiB,EAAE,CAAC;AACpB,IAAA,iBAAiB,EAAE,GAAG;AACvB,CAAA,EAAA;AAED,IAAA,IAAI,YAA4B;AAChC,IAAA,IAAI,YAA4B;IAEhC,OAAO;QACL,OAAO,EAAE,MAAK;YACZ,YAAY,CAAC,YAAY,CAAC;AAC1B,YAAA,YAAY,GAAG,UAAU,CAAC,MAAK;AAC7B,gBAAA,aAAa,EAAE;aAChB,EAAE,iBAAiB,CAAC;SACtB;QACD,OAAO,EAAE,MAAK;YACZ,YAAY,CAAC,YAAY,CAAC;AAC1B,YAAA,YAAY,GAAG,UAAU,CAAC,MAAK;AAC7B,gBAAA,aAAa,EAAE;aAChB,EAAE,iBAAiB,CAAC;SACtB;KACF;AACH;;ACvCA,MAAM,eAAe,GAAG,mvDAAmvD;;ACyB3wD,MAAM,uBAAuB,GAAG,EAAE;AAClC,MAAM,uBAAuB,GAAG,GAAG;MAOtB,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AA4BW,QAAA,IAAU,CAAA,UAAA,GAAG,KAAK;AAClB,QAAA,IAAS,CAAA,SAAA,GAAG,KAAK;AACjB,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK;AACpB,QAAA,IAAW,CAAA,WAAA,GAA4B,EAAE;AAM1C,QAAA,IAAA,CAAA,kBAAkB,GAAG,wBAAwB,CACnD,MAAK;YACH,IAAI,CAAC,cAAc,EAAE;SACtB,EACD,MAAK;YACH,IAAI,CAAC,cAAc,EAAE;AACvB,SAAC,CACF;AAiPF;IA/OS,kBAAkB,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC;;IAGlD,cAAc,GAAA;AACpB,QAAA,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAC9B;;IAGtB,oBAAoB,GAAA;AAC1B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE;AAEnC,QAAA,OAAO,KAAK,CAAC,MAAM,GAAG,uBAAuB;;AAGvC,IAAA,gBAAgB,CAAC,SAAkB,EAAA;QACzC,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,aAAa,EAAE;;aACf;YACL,IAAI,CAAC,cAAc,EAAE;;;IAIjB,cAAc,GAAA;QACpB,MAAM,mBAAmB,GAAG,EAAE;AAC9B,QAAAA,cAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,kBAAkB;AAChC,YAAA,QAAQ,EAAE,uBAAuB;AACjC,YAAA,MAAM,EAAE,YAAY;AACpB,YAAA,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,SAAS,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,uBAAuB,EAAE,CAAC,CAAC;YACrE,QAAQ,EAAE,MAAK;gBACb,UAAU,CAAC,MAAK;AACd,oBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,oBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC3B,iBAAC,EAAE,uBAAuB,GAAG,mBAAmB,CAAC;aAClD;AACF,SAAA,CAAC;;IAGI,aAAa,GAAA;AACnB,QAAAA,cAAK,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,kBAAkB;AAChC,YAAA,QAAQ,EAAE,uBAAuB;AACjC,YAAA,MAAM,EAAE,YAAY;AACpB,YAAA,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,SAAS,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,GAAG,uBAAuB,CAAC;YACrE,KAAK,EAAE,MAAK;AACV,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;aAC1B;AACF,SAAA,CAAC;;IAGI,cAAc,GAAA;;QACpB,IAAI,MAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM,EAAE;YACvB;;AAEF,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE;AAChC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;IAIlB,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK;;AAGnB,IAAA,eAAe,CAAC,CAAa,EAAA;;QACnC,CAAC,CAAC,eAAe,EAAE;QACnB,IAAI,MAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM,EAAE;YACvB,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC;;;AAII,IAAA,oBAAoB,CAAC,SAA4B,EAAA;AACvD,QAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM;AACpD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE;QAExC,IACE,IAAI,CAAC,SAAS;AACd,YAAA,IAAI,CAAC,kBAAkB;AACvB,YAAA,oBAAoB,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,EAChD;AACA,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,GAAG,CACxC,EAAA,IAAI,CAAC,oBAAoB,EAAE,GAAG,uBAChC,IAAI;;AAGN,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE;YACpD;;QAGF,KAAK,MAAM,QAAQ,IAAI,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAT,SAAS,GAAI,EAAE,EAAE;AACtC,YAAA,IACE,QAAQ,CAAC,aAAa,KAAK,OAAO;gBAClC,QAAQ,CAAC,MAAM,YAAY,WAAW;gBACtC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC5C;AACA,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,gBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBAC3B;;;;IAKE,yBAAyB,GAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;;IAGzE,iBAAiB,GAAA;QACf,MAAM,WAAW,GAAGC,qBAAa,CAAC,IAAI,CAAC,WAAW,CAAC;QACnD,IAAI,CAAC,WAAW,EAAE;AAChB,YAAA,MAAM,KAAK,CAAC,yDAAyD,CAAC;;AAExE,QAAA,IAAI,CAAC,MAAM,GAAG,WAAW;QAEzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;AACpC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,yBAAyB,EAAE;;IAGnD,gBAAgB,GAAA;;AACd,QAAA,IAAI,CAAC,QAAQ,GAAGC,uCAAsB,CAAC,CAAC,SAA2B,KACjE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CACrC;QAED,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;AACtC,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,OAAO,EAAE,IAAI;AACd,SAAA,CAAC;QAEF,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,oBAAoB,EAAE;AAC7B,SAAC,CAAC;AAEF,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,gBAAgB,CAC3B,cAAc,EACd,CAAC,EAAE,MAAM,EAAE,UAAU,EAAwB,KAAI;AAC/C,YAAA,IAAI,CAAC,UAAU,GAAG,UAAU;YAC5B,IAAI,CAAC,UAAU,EAAE;gBACf,IAAI,CAAC,mBAAmB,EAAE;;AAE5B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,yBAAyB,EAAE;AACnD,SAAC,CACF;;IAGH,mBAAmB,GAAA;;AACjB,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,kBAAkB,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC;AAC3D,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,kBAAkB,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC;;IAG1D,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;;;IAI9B,MAAM,GAAA;QACJ,QACEC,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI,CAAC,SAAS;aACzB,EACD,cAAc,EAAE,MAAK;AACnB,gBAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;AACnC,aAAC,EACD,cAAc,EAAE,CAAC,KAAmB,KAAI;AACtC,gBAAA,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE;oBACjC;;AAEF,gBAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;aAClC,EAAA,EAEDD,OACE,CAAA,cAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,EACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EACvC,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EACpC,UAAU,EAAA,IAAA,EAAA,EAEVA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,UAAU,EAAA,EACnBA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,eAAe,IAAE,IAAI,CAAC,KAAK,CAAO,EAC7CA,OAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAEE,4BAAoB,EAC1B,KAAK,EAAE;AACL,gBAAA,kBAAkB,EAAE,IAAI;gBACxB,wBAAwB,EAAE,IAAI,CAAC,SAAS;AACzC,aAAA,EAAA,CACQ,CACP,CACO,EACfF,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,GAAG,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,GAAG,GAAI,CAAC,EAC9C,KAAK,EAAE;AACL,gBAAA,YAAY,EAAE,IAAI;gBAClB,sBAAsB,EAAE,IAAI,CAAC,SAAS;AACtC,gBAAA,uBAAuB,EAAE,CAAC,IAAI,CAAC,SAAS;aACzC,EAEA,EAAA,IAAI,CAAC,SAAS,GAAGA,OAAA,CAAA,MAAA,EAAA,IAAA,CAAa,GAAG,IAAI,CAClC,EACNA,OAAA,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,IAAI,CAAC,YAAY,EACvB,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAwB,KAAI;AACjE,gBAAA,IAAI,CAAC,YAAY,GAAG,aAAa;AACnC,aAAC,EACD,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,IAAI,CAAC,WAAW,EACxB,SAAS,EAAC,aAAa,EACvB,MAAM,EAAE;AACN,gBAAA,QAAQ,EAAE,CAAC;AACZ,aAAA,EACD,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,EAAE;oBACnC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,cAAc,EAAE;AACvC,wBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;;yBACpB;wBACL,CAAC,CAAC,cAAc,EAAE;;;AAGxB,aAAC,EAAA,EAEDA,OAAkB,CAAA,kBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,0BAA0B,EAAA,EACjDA,OAAA,CAAA,eAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAe,MAAM,EAAC,OAAO,EAAC,IAAI,EAAC,IAAA,EAAA,SAAS,EAAC,KAAK,EAC/C,EAAA,IAAI,CAAC,KAAK,CACG,CACC,EACnBA,OAAyB,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACzBA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACD,CACT;;;;;;;;","names":["anime","closestIxMenu","createMutationObserver","h","Host","iconChevronDownSmall"],"sources":["src/components/menu-category/enter-leave.ts","src/components/menu-category/menu-category.scss?tag=ix-menu-category&encapsulation=shadow","src/components/menu-category/menu-category.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nexport function createEnterLeaveDebounce(\n enterCallback: Function,\n leaveCallback: Function,\n {\n debounceTimeEnter,\n debounceTimeLeave,\n }: {\n debounceTimeEnter: number;\n debounceTimeLeave: number;\n } = {\n debounceTimeEnter: 0,\n debounceTimeLeave: 500,\n }\n) {\n let enterTimeout: NodeJS.Timeout;\n let leaveTimeout: NodeJS.Timeout;\n\n return {\n onEnter: () => {\n clearTimeout(leaveTimeout);\n enterTimeout = setTimeout(() => {\n enterCallback();\n }, debounceTimeEnter);\n },\n onLeave: () => {\n clearTimeout(enterTimeout);\n leaveTimeout = setTimeout(() => {\n leaveCallback();\n }, debounceTimeLeave);\n },\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n\n:host {\n @include ix-component;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .category {\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n .category-text {\n width: 100%;\n padding-right: 0.25rem;\n @include ellipsis;\n }\n\n .category-chevron {\n margin-left: auto;\n margin-right: 0;\n transition: var(--theme-default-time) transform ease-in-out;\n }\n\n .category-chevron--open {\n transform: rotate(-180deg);\n }\n\n .menu-items {\n overflow: hidden;\n max-height: 0;\n transition: var(--theme-default-time) max-height ease-in-out;\n }\n\n .menu-items--expanded {\n max-height: 999999999px;\n padding: 0.25rem 0 0.25rem 1.625rem;\n }\n\n .menu-items--collapsed {\n display: none;\n }\n\n .category-dropdown {\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n }\n\n .category-dropdown-header {\n pointer-events: none;\n padding-left: 0.125rem;\n min-width: 256px;\n }\n\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n}\n\n:host(.expanded) {\n background-color: var(--theme-color-ghost--active);\n}\n\n:host {\n ::slotted(a[href]) {\n text-decoration: none !important;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"version":3}
@@ -1 +1 @@
1
- {"version":3,"file":"ix-menu-category.entry.cjs.js","sources":["src/components/menu-category/enter-leave.ts","src/components/menu-category/menu-category.scss?tag=ix-menu-category&encapsulation=shadow","src/components/menu-category/menu-category.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nexport function createEnterLeaveDebounce(\n enterCallback: Function,\n leaveCallback: Function,\n {\n debounceTimeEnter,\n debounceTimeLeave,\n }: {\n debounceTimeEnter: number;\n debounceTimeLeave: number;\n } = {\n debounceTimeEnter: 0,\n debounceTimeLeave: 500,\n }\n) {\n let enterTimeout: NodeJS.Timeout;\n let leaveTimeout: NodeJS.Timeout;\n\n return {\n onEnter: () => {\n clearTimeout(leaveTimeout);\n enterTimeout = setTimeout(() => {\n enterCallback();\n }, debounceTimeEnter);\n },\n onLeave: () => {\n clearTimeout(enterTimeout);\n leaveTimeout = setTimeout(() => {\n leaveCallback();\n }, debounceTimeLeave);\n },\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n\n:host {\n @include ix-component;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .category {\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n .category-text {\n width: 100%;\n padding-right: 0.25rem;\n @include ellipsis;\n }\n\n .category-chevron {\n margin-left: auto;\n margin-right: 0;\n transition: var(--theme-default-time) transform ease-in-out;\n }\n\n .category-chevron--open {\n transform: rotate(-180deg);\n }\n\n .menu-items {\n overflow: hidden;\n max-height: 0;\n transition: var(--theme-default-time) max-height ease-in-out;\n }\n\n .menu-items--expanded {\n max-height: 999999999px;\n padding: 0.25rem 0 0.25rem 1.625rem;\n }\n\n .menu-items--collapsed {\n display: none;\n }\n\n .category-dropdown {\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n }\n\n .category-dropdown-header {\n pointer-events: none;\n padding-left: 0.125rem;\n min-width: 256px;\n }\n\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n}\n\n:host(.expanded) {\n background-color: var(--theme-color-ghost--active);\n}\n\n:host {\n ::slotted(a[href]) {\n text-decoration: none !important;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"names":["anime","closestIxMenu","createMutationObserver","h","Host","iconChevronDownSmall"],"mappings":"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"}
1
+ {"version":3,"file":"ix-menu-category.entry.cjs.js","sources":["src/components/menu-category/enter-leave.ts","src/components/menu-category/menu-category.scss?tag=ix-menu-category&encapsulation=shadow","src/components/menu-category/menu-category.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nexport function createEnterLeaveDebounce(\n enterCallback: Function,\n leaveCallback: Function,\n {\n debounceTimeEnter,\n debounceTimeLeave,\n }: {\n debounceTimeEnter: number;\n debounceTimeLeave: number;\n } = {\n debounceTimeEnter: 0,\n debounceTimeLeave: 500,\n }\n) {\n let enterTimeout: NodeJS.Timeout;\n let leaveTimeout: NodeJS.Timeout;\n\n return {\n onEnter: () => {\n clearTimeout(leaveTimeout);\n enterTimeout = setTimeout(() => {\n enterCallback();\n }, debounceTimeEnter);\n },\n onLeave: () => {\n clearTimeout(enterTimeout);\n leaveTimeout = setTimeout(() => {\n leaveCallback();\n }, debounceTimeLeave);\n },\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/shadow-dom/component';\n@import 'mixins/text-truncation';\n\n:host {\n @include ix-component;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .category {\n display: flex;\n position: relative;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n .category-text {\n width: 100%;\n padding-right: 0.25rem;\n @include ellipsis;\n }\n\n .category-chevron {\n margin-left: auto;\n margin-right: 0;\n transition: var(--theme-default-time) transform ease-in-out;\n }\n\n .category-chevron--open {\n transform: rotate(-180deg);\n }\n\n .menu-items {\n overflow: hidden;\n max-height: 0;\n transition: var(--theme-default-time) max-height ease-in-out;\n }\n\n .menu-items--expanded {\n max-height: 999999999px;\n padding: 0.25rem 0 0.25rem 1.625rem;\n }\n\n .menu-items--collapsed {\n display: none;\n }\n\n .category-dropdown {\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n }\n\n .category-dropdown-header {\n pointer-events: none;\n padding-left: 0.125rem;\n min-width: 256px;\n }\n\n ::slotted(ix-menu-item) {\n --ix-menu-item-height: 2.5rem;\n }\n}\n\n:host(.expanded) {\n background-color: var(--theme-color-ghost--active);\n}\n\n:host {\n ::slotted(a[href]) {\n text-decoration: none !important;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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"],"names":["anime","closestIxMenu","createMutationObserver","h","Host","iconChevronDownSmall"],"mappings":"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"}
@@ -86,15 +86,15 @@ const MenuItem = class {
86
86
  slot: 'bottom',
87
87
  };
88
88
  }
89
- return (index.h(index.Host, Object.assign({ key: '338303e3fa74e42da6937c88c76aa8ae967c28cd', class: {
89
+ return (index.h(index.Host, Object.assign({ key: '7f8f0ba3e7531f61372620595c711a1b615b0aca', class: {
90
90
  disabled: this.disabled,
91
91
  'home-tab': this.home,
92
92
  'bottom-tab': this.bottom,
93
93
  active: this.active,
94
94
  'tab-nested': this.isHostedInsideCategory,
95
- } }, extendedAttributes), index.h("button", { key: 'c171aa4703864f4a8eab96e85c959292669d5e9a', class: "tab", tabIndex: this.disabled ? -1 : 0, ref: this.buttonRef }, this.icon && index.h("ix-icon", { key: 'd09d3827395b46f368d26b9a81d9da764fdaf5cb', class: 'tab-icon', name: this.icon }), this.notifications ? (index.h("div", { class: "notification" }, index.h("div", { class: "pill" }, this.notifications))) : null, index.h("span", { key: 'f9d95782c3e509252c03dcc771001ffeb9fac768', class: "tab-text text-default" }, this.label, index.h("slot", { key: '57546e469c63601edce1d37ba552bae4b6969179' }))), !this.isCategory &&
95
+ } }, extendedAttributes), index.h("button", { key: '9209b663ca49398c8329ec08ac692b00503ec31c', class: "tab", tabIndex: this.disabled ? -1 : 0, ref: this.buttonRef }, this.icon && index.h("ix-icon", { key: '00945ff44564bfac670ec600c2b1333207f100b2', class: 'tab-icon', name: this.icon }), this.notifications ? (index.h("div", { class: "notification" }, index.h("div", { class: "pill" }, this.notifications))) : null, index.h("span", { key: 'f338c56836e86831fbdbc5ce38c4435e9f46c372', class: "tab-text text-default" }, this.label, index.h("slot", { key: 'bad7031b601bd0bbd1080467163a565cd3d1115a' }))), !this.isCategory &&
96
96
  !this.isHostedInsideCategory &&
97
- !this.menuExpanded && (index.h("ix-tooltip", { key: 'c4a895fca8ba28f9a6f78596c9a32b66ca67f4bc', for: this.buttonRef.waitForCurrent(), placement: 'right', showDelay: 1000 }, this.tooltip))));
97
+ !this.menuExpanded && (index.h("ix-tooltip", { key: '38a95e7ab53b1e56d6552ecdf18f8c7121ab5393', for: this.buttonRef.waitForCurrent(), placement: 'right', showDelay: 1000 }, this.tooltip))));
98
98
  }
99
99
  get hostElement() { return index.getElement(this); }
100
100
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ix-menu-item.entry.cjs.js","mappings":"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","names":["makeRef","createMutationObserver","menuController","iconDocument","h","Host"],"sources":["src/components/menu-item/menu-item.scss?tag=ix-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n$menuItemHeight: 3rem;\n$menuItemPadding: 0.875rem;\n\n:host {\n position: relative;\n display: block;\n cursor: pointer;\n\n height: var(--ix-menu-item-height, $menuItemHeight);\n min-height: var(--ix-menu-item-height, $menuItemHeight);\n max-height: var(--ix-menu-item-height, $menuItemHeight);\n\n .tab {\n all: unset;\n box-sizing: border-box;\n display: flex;\n position: relative;\n align-items: center;\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: calc(100%);\n z-index: 500;\n padding-left: $menuItemPadding;\n\n @include ghost-hover-pressed;\n }\n\n .tab-icon {\n color: var(--theme-nav-item-primary-icon--color);\n position: relative;\n pointer-events: none;\n }\n\n .tab:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: -1px;\n }\n\n .notification {\n display: inline-flex;\n position: absolute;\n top: 0.25rem;\n left: 1.5rem;\n\n .pill {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 0.5rem;\n min-width: 1rem;\n position: relative;\n border-radius: 6.25rem;\n background-color: var(--theme-color-primary);\n font-size: 0.75rem;\n font-weight: bold;\n line-height: 1;\n font-family: Siemens Sans, Arial, sans-serif;\n color: var(--theme-color-primary--contrast);\n padding: $tiny-space;\n }\n }\n\n .tab-text {\n @include ellipsis;\n color: var(--theme-nav-item-primary--color);\n margin: 0 1rem 0 1.25rem;\n user-select: none;\n width: 100%;\n }\n}\n\n:host(.active),\n:host(.selected) {\n .tab {\n background-color: var(--theme-nav-item-primary--background--selected);\n }\n\n .tab::before {\n content: '';\n background-color: var(--theme-nav-item-primary--border-color--selected);\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: 0.25rem;\n left: 0;\n position: absolute;\n }\n\n .tab > .glyph {\n color: var(--theme-nav-item-primary-icon--color--selected);\n }\n}\n\n:host(.disabled) {\n color: var(--theme-color-weak-text);\n pointer-events: none;\n cursor: default;\n\n .tab > .tab-icon {\n color: var(--theme-color-weak-text);\n }\n\n .tab-text {\n color: var(--theme-color-weak-text);\n }\n}\n\n:host(.bottom-tab),\n:host([slot='bottom']) {\n $bottom-height: 2.25rem;\n\n min-height: $bottom-height;\n height: $bottom-height;\n max-height: $bottom-height;\n\n .tab {\n height: $bottom-height;\n }\n\n .tab::before {\n height: $bottom-height;\n background-color: transparent;\n }\n\n &.active,\n &.selected {\n &:hover {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:active {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n }\n}\n\n:host(.bottom-tab.active),\n:host(.bottom-tab.selected),\n:host(.active[slot='bottom']),\n:host(.selected[slot='bottom']) {\n .tab {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n}\n\n:host(.tab-nested) {\n .tab {\n flex-direction: row;\n padding-left: calc(0.5rem + $menuItemPadding);\n\n .notification {\n position: relative;\n top: 0;\n left: 0;\n padding-left: 0.5rem;\n }\n\n .tab-icon {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n\n .tab-text {\n margin-left: 0.5rem;\n }\n\n &::before {\n display: none;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { makeRef } from '../utils/make-ref';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { Disposable } from '../utils/typed-event';\nimport { iconDocument } from '@siemens/ix-icons/icons';\n\n/**\n * @slot menu-item-label Custom label\n */\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n shadow: true,\n})\nexport class MenuItem {\n /**\n * Label of the menu item. Will also be used as tooltip text\n *\n * @since 2.2.0\n */\n @Prop() label?: string;\n\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n */\n @Prop() bottom = false;\n\n /**\n * Name of the icon you want to display. Icon names can be resolved from the documentation @link https://ix.siemens.io/docs/icon-library/icons\n */\n @Prop({ mutable: true }) icon?: string;\n\n /**\n * Show notification count on tab\n */\n @Prop() notifications?: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean = false;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean = false;\n\n /** @internal */\n @Prop() isCategory: boolean = false;\n\n @Element() hostElement!: HTMLIxMenuItemElement;\n\n @State() tooltip?: string;\n @State() menuExpanded: boolean = false;\n\n private readonly buttonRef = makeRef<HTMLButtonElement>();\n private isHostedInsideCategory = false;\n private menuExpandedDisposer?: Disposable;\n\n private readonly observer: MutationObserver = createMutationObserver(() => {\n this.setTooltip();\n });\n\n componentWillLoad() {\n this.isHostedInsideCategory =\n !!this.hostElement.closest('ix-menu-category');\n\n this.onIconChange();\n\n this.menuExpanded = menuController.nativeElement?.expand || false;\n this.menuExpandedDisposer = menuController.expandChange.on(\n (expand) => (this.menuExpanded = expand)\n );\n }\n\n componentWillRender() {\n this.setTooltip();\n }\n\n setTooltip() {\n this.tooltip = this.label ?? this.hostElement.textContent ?? undefined;\n }\n\n connectedCallback() {\n this.observer.observe(this.hostElement, {\n subtree: true,\n childList: true,\n characterData: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n if (this.menuExpandedDisposer) {\n this.menuExpandedDisposer.dispose();\n }\n }\n\n @Watch('icon')\n onIconChange() {\n if (!this.isHostedInsideCategory && !this.hostElement.icon) {\n this.icon = iconDocument;\n }\n }\n\n render() {\n let extendedAttributes = {};\n if (this.home) {\n extendedAttributes = {\n slot: 'home',\n };\n }\n\n if (this.bottom) {\n extendedAttributes = {\n slot: 'bottom',\n };\n }\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n 'tab-nested': this.isHostedInsideCategory,\n }}\n {...extendedAttributes}\n >\n <button\n class=\"tab\"\n tabIndex={this.disabled ? -1 : 0}\n ref={this.buttonRef}\n >\n {this.icon && <ix-icon class={'tab-icon'} name={this.icon}></ix-icon>}\n {this.notifications ? (\n <div class=\"notification\">\n <div class=\"pill\">{this.notifications}</div>\n </div>\n ) : null}\n <span class=\"tab-text text-default\">\n {this.label}\n <slot></slot>\n </span>\n </button>\n {!this.isCategory &&\n !this.isHostedInsideCategory &&\n !this.menuExpanded && (\n <ix-tooltip\n for={this.buttonRef.waitForCurrent()}\n placement={'right'}\n showDelay={1000}\n >\n {this.tooltip}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-menu-item.entry.cjs.js","mappings":"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","names":["makeRef","createMutationObserver","menuController","iconDocument","h","Host"],"sources":["src/components/menu-item/menu-item.scss?tag=ix-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n$menuItemHeight: 3rem;\n$menuItemPadding: 0.875rem;\n\n:host {\n position: relative;\n display: block;\n cursor: pointer;\n\n height: var(--ix-menu-item-height, $menuItemHeight);\n min-height: var(--ix-menu-item-height, $menuItemHeight);\n max-height: var(--ix-menu-item-height, $menuItemHeight);\n\n .tab {\n all: unset;\n box-sizing: border-box;\n display: flex;\n position: relative;\n align-items: center;\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: calc(100%);\n z-index: 500;\n padding-left: $menuItemPadding;\n\n @include ghost-hover-pressed;\n }\n\n .tab-icon {\n color: var(--theme-nav-item-primary-icon--color);\n position: relative;\n pointer-events: none;\n }\n\n .tab:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: -1px;\n }\n\n .notification {\n display: inline-flex;\n position: absolute;\n top: 0.25rem;\n left: 1.5rem;\n\n .pill {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 0.5rem;\n min-width: 1rem;\n position: relative;\n border-radius: 6.25rem;\n background-color: var(--theme-color-primary);\n font-size: 0.75rem;\n font-weight: bold;\n line-height: 1;\n font-family: Siemens Sans, Arial, sans-serif;\n color: var(--theme-color-primary--contrast);\n padding: $tiny-space;\n }\n }\n\n .tab-text {\n @include ellipsis;\n color: var(--theme-nav-item-primary--color);\n margin: 0 1rem 0 1.25rem;\n user-select: none;\n width: 100%;\n }\n}\n\n:host(.active),\n:host(.selected) {\n .tab {\n background-color: var(--theme-nav-item-primary--background--selected);\n }\n\n .tab::before {\n content: '';\n background-color: var(--theme-nav-item-primary--border-color--selected);\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: 0.25rem;\n left: 0;\n position: absolute;\n }\n\n .tab > .glyph {\n color: var(--theme-nav-item-primary-icon--color--selected);\n }\n}\n\n:host(.disabled) {\n color: var(--theme-color-weak-text);\n pointer-events: none;\n cursor: default;\n\n .tab > .tab-icon {\n color: var(--theme-color-weak-text);\n }\n\n .tab-text {\n color: var(--theme-color-weak-text);\n }\n}\n\n:host(.bottom-tab),\n:host([slot='bottom']) {\n $bottom-height: 2.25rem;\n\n min-height: $bottom-height;\n height: $bottom-height;\n max-height: $bottom-height;\n\n .tab {\n height: $bottom-height;\n }\n\n .tab::before {\n height: $bottom-height;\n background-color: transparent;\n }\n\n &.active,\n &.selected {\n &:hover {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:active {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n }\n}\n\n:host(.bottom-tab.active),\n:host(.bottom-tab.selected),\n:host(.active[slot='bottom']),\n:host(.selected[slot='bottom']) {\n .tab {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n}\n\n:host(.tab-nested) {\n .tab {\n flex-direction: row;\n padding-left: calc(0.5rem + $menuItemPadding);\n\n .notification {\n position: relative;\n top: 0;\n left: 0;\n padding-left: 0.5rem;\n }\n\n .tab-icon {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n\n .tab-text {\n margin-left: 0.5rem;\n }\n\n &::before {\n display: none;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { makeRef } from '../utils/make-ref';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { Disposable } from '../utils/typed-event';\nimport { iconDocument } from '@siemens/ix-icons/icons';\n\n/**\n * @slot menu-item-label Custom label\n */\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n shadow: true,\n})\nexport class MenuItem {\n /**\n * Label of the menu item. Will also be used as tooltip text\n */\n @Prop() label?: string;\n\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n */\n @Prop() bottom = false;\n\n /**\n * Name of the icon you want to display. Icon names can be resolved from the documentation @link https://ix.siemens.io/docs/icon-library/icons\n */\n @Prop({ mutable: true }) icon?: string;\n\n /**\n * Show notification count on tab\n */\n @Prop() notifications?: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean = false;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean = false;\n\n /** @internal */\n @Prop() isCategory: boolean = false;\n\n @Element() hostElement!: HTMLIxMenuItemElement;\n\n @State() tooltip?: string;\n @State() menuExpanded: boolean = false;\n\n private readonly buttonRef = makeRef<HTMLButtonElement>();\n private isHostedInsideCategory = false;\n private menuExpandedDisposer?: Disposable;\n\n private readonly observer: MutationObserver = createMutationObserver(() => {\n this.setTooltip();\n });\n\n componentWillLoad() {\n this.isHostedInsideCategory =\n !!this.hostElement.closest('ix-menu-category');\n\n this.onIconChange();\n\n this.menuExpanded = menuController.nativeElement?.expand || false;\n this.menuExpandedDisposer = menuController.expandChange.on(\n (expand) => (this.menuExpanded = expand)\n );\n }\n\n componentWillRender() {\n this.setTooltip();\n }\n\n setTooltip() {\n this.tooltip = this.label ?? this.hostElement.textContent ?? undefined;\n }\n\n connectedCallback() {\n this.observer.observe(this.hostElement, {\n subtree: true,\n childList: true,\n characterData: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n if (this.menuExpandedDisposer) {\n this.menuExpandedDisposer.dispose();\n }\n }\n\n @Watch('icon')\n onIconChange() {\n if (!this.isHostedInsideCategory && !this.hostElement.icon) {\n this.icon = iconDocument;\n }\n }\n\n render() {\n let extendedAttributes = {};\n if (this.home) {\n extendedAttributes = {\n slot: 'home',\n };\n }\n\n if (this.bottom) {\n extendedAttributes = {\n slot: 'bottom',\n };\n }\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n 'tab-nested': this.isHostedInsideCategory,\n }}\n {...extendedAttributes}\n >\n <button\n class=\"tab\"\n tabIndex={this.disabled ? -1 : 0}\n ref={this.buttonRef}\n >\n {this.icon && <ix-icon class={'tab-icon'} name={this.icon}></ix-icon>}\n {this.notifications ? (\n <div class=\"notification\">\n <div class=\"pill\">{this.notifications}</div>\n </div>\n ) : null}\n <span class=\"tab-text text-default\">\n {this.label}\n <slot></slot>\n </span>\n </button>\n {!this.isCategory &&\n !this.isHostedInsideCategory &&\n !this.menuExpanded && (\n <ix-tooltip\n for={this.buttonRef.waitForCurrent()}\n placement={'right'}\n showDelay={1000}\n >\n {this.tooltip}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"version":3,"file":"ix-menu-item.entry.cjs.js","sources":["src/components/menu-item/menu-item.scss?tag=ix-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n$menuItemHeight: 3rem;\n$menuItemPadding: 0.875rem;\n\n:host {\n position: relative;\n display: block;\n cursor: pointer;\n\n height: var(--ix-menu-item-height, $menuItemHeight);\n min-height: var(--ix-menu-item-height, $menuItemHeight);\n max-height: var(--ix-menu-item-height, $menuItemHeight);\n\n .tab {\n all: unset;\n box-sizing: border-box;\n display: flex;\n position: relative;\n align-items: center;\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: calc(100%);\n z-index: 500;\n padding-left: $menuItemPadding;\n\n @include ghost-hover-pressed;\n }\n\n .tab-icon {\n color: var(--theme-nav-item-primary-icon--color);\n position: relative;\n pointer-events: none;\n }\n\n .tab:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: -1px;\n }\n\n .notification {\n display: inline-flex;\n position: absolute;\n top: 0.25rem;\n left: 1.5rem;\n\n .pill {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 0.5rem;\n min-width: 1rem;\n position: relative;\n border-radius: 6.25rem;\n background-color: var(--theme-color-primary);\n font-size: 0.75rem;\n font-weight: bold;\n line-height: 1;\n font-family: Siemens Sans, Arial, sans-serif;\n color: var(--theme-color-primary--contrast);\n padding: $tiny-space;\n }\n }\n\n .tab-text {\n @include ellipsis;\n color: var(--theme-nav-item-primary--color);\n margin: 0 1rem 0 1.25rem;\n user-select: none;\n width: 100%;\n }\n}\n\n:host(.active),\n:host(.selected) {\n .tab {\n background-color: var(--theme-nav-item-primary--background--selected);\n }\n\n .tab::before {\n content: '';\n background-color: var(--theme-nav-item-primary--border-color--selected);\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: 0.25rem;\n left: 0;\n position: absolute;\n }\n\n .tab > .glyph {\n color: var(--theme-nav-item-primary-icon--color--selected);\n }\n}\n\n:host(.disabled) {\n color: var(--theme-color-weak-text);\n pointer-events: none;\n cursor: default;\n\n .tab > .tab-icon {\n color: var(--theme-color-weak-text);\n }\n\n .tab-text {\n color: var(--theme-color-weak-text);\n }\n}\n\n:host(.bottom-tab),\n:host([slot='bottom']) {\n $bottom-height: 2.25rem;\n\n min-height: $bottom-height;\n height: $bottom-height;\n max-height: $bottom-height;\n\n .tab {\n height: $bottom-height;\n }\n\n .tab::before {\n height: $bottom-height;\n background-color: transparent;\n }\n\n &.active,\n &.selected {\n &:hover {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:active {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n }\n}\n\n:host(.bottom-tab.active),\n:host(.bottom-tab.selected),\n:host(.active[slot='bottom']),\n:host(.selected[slot='bottom']) {\n .tab {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n}\n\n:host(.tab-nested) {\n .tab {\n flex-direction: row;\n padding-left: calc(0.5rem + $menuItemPadding);\n\n .notification {\n position: relative;\n top: 0;\n left: 0;\n padding-left: 0.5rem;\n }\n\n .tab-icon {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n\n .tab-text {\n margin-left: 0.5rem;\n }\n\n &::before {\n display: none;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { makeRef } from '../utils/make-ref';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { Disposable } from '../utils/typed-event';\nimport { iconDocument } from '@siemens/ix-icons/icons';\n\n/**\n * @slot menu-item-label Custom label\n */\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n shadow: true,\n})\nexport class MenuItem {\n /**\n * Label of the menu item. Will also be used as tooltip text\n *\n * @since 2.2.0\n */\n @Prop() label?: string;\n\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n */\n @Prop() bottom = false;\n\n /**\n * Name of the icon you want to display. Icon names can be resolved from the documentation @link https://ix.siemens.io/docs/icon-library/icons\n */\n @Prop({ mutable: true }) icon?: string;\n\n /**\n * Show notification count on tab\n */\n @Prop() notifications?: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean = false;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean = false;\n\n /** @internal */\n @Prop() isCategory: boolean = false;\n\n @Element() hostElement!: HTMLIxMenuItemElement;\n\n @State() tooltip?: string;\n @State() menuExpanded: boolean = false;\n\n private readonly buttonRef = makeRef<HTMLButtonElement>();\n private isHostedInsideCategory = false;\n private menuExpandedDisposer?: Disposable;\n\n private readonly observer: MutationObserver = createMutationObserver(() => {\n this.setTooltip();\n });\n\n componentWillLoad() {\n this.isHostedInsideCategory =\n !!this.hostElement.closest('ix-menu-category');\n\n this.onIconChange();\n\n this.menuExpanded = menuController.nativeElement?.expand || false;\n this.menuExpandedDisposer = menuController.expandChange.on(\n (expand) => (this.menuExpanded = expand)\n );\n }\n\n componentWillRender() {\n this.setTooltip();\n }\n\n setTooltip() {\n this.tooltip = this.label ?? this.hostElement.textContent ?? undefined;\n }\n\n connectedCallback() {\n this.observer.observe(this.hostElement, {\n subtree: true,\n childList: true,\n characterData: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n if (this.menuExpandedDisposer) {\n this.menuExpandedDisposer.dispose();\n }\n }\n\n @Watch('icon')\n onIconChange() {\n if (!this.isHostedInsideCategory && !this.hostElement.icon) {\n this.icon = iconDocument;\n }\n }\n\n render() {\n let extendedAttributes = {};\n if (this.home) {\n extendedAttributes = {\n slot: 'home',\n };\n }\n\n if (this.bottom) {\n extendedAttributes = {\n slot: 'bottom',\n };\n }\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n 'tab-nested': this.isHostedInsideCategory,\n }}\n {...extendedAttributes}\n >\n <button\n class=\"tab\"\n tabIndex={this.disabled ? -1 : 0}\n ref={this.buttonRef}\n >\n {this.icon && <ix-icon class={'tab-icon'} name={this.icon}></ix-icon>}\n {this.notifications ? (\n <div class=\"notification\">\n <div class=\"pill\">{this.notifications}</div>\n </div>\n ) : null}\n <span class=\"tab-text text-default\">\n {this.label}\n <slot></slot>\n </span>\n </button>\n {!this.isCategory &&\n !this.isHostedInsideCategory &&\n !this.menuExpanded && (\n <ix-tooltip\n for={this.buttonRef.waitForCurrent()}\n placement={'right'}\n showDelay={1000}\n >\n {this.tooltip}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n"],"names":["makeRef","createMutationObserver","menuController","iconDocument","h","Host"],"mappings":";;;;;;;;;AAAA,MAAM,WAAW,GAAG,yzGAAyzG;;MCwBh0G,QAAQ,GAAA,MAAA;AALrB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAaE;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAG,KAAK;AAEpB;;;;AAIG;AACK,QAAA,IAAM,CAAA,MAAA,GAAG,KAAK;AAYtB;;AAEG;AACK,QAAA,IAAM,CAAA,MAAA,GAAY,KAAK;AAE/B;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;;AAGzB,QAAA,IAAU,CAAA,UAAA,GAAY,KAAK;AAK1B,QAAA,IAAY,CAAA,YAAA,GAAY,KAAK;AAErB,QAAA,IAAS,CAAA,SAAA,GAAGA,eAAO,EAAqB;AACjD,QAAA,IAAsB,CAAA,sBAAA,GAAG,KAAK;AAGrB,QAAA,IAAA,CAAA,QAAQ,GAAqBC,uCAAsB,CAAC,MAAK;YACxE,IAAI,CAAC,UAAU,EAAE;AACnB,SAAC,CAAC;AAqGH;IAnGC,iBAAiB,GAAA;;AACf,QAAA,IAAI,CAAC,sBAAsB;YACzB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAEhD,IAAI,CAAC,YAAY,EAAE;AAEnB,QAAA,IAAI,CAAC,YAAY,GAAG,CAAA,CAAA,EAAA,GAAAC,0BAAc,CAAC,aAAa,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM,KAAI,KAAK;QACjE,IAAI,CAAC,oBAAoB,GAAGA,0BAAc,CAAC,YAAY,CAAC,EAAE,CACxD,CAAC,MAAM,MAAM,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,CACzC;;IAGH,mBAAmB,GAAA;QACjB,IAAI,CAAC,UAAU,EAAE;;IAGnB,UAAU,GAAA;;QACR,IAAI,CAAC,OAAO,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAI,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAA,IAAI,CAAC,WAAW,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,SAAS;;IAGxE,iBAAiB,GAAA;QACf,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;AACtC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,aAAa,EAAE,IAAI;AACpB,SAAA,CAAC;;IAGJ,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;;AAG5B,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC7B,YAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE;;;IAKvC,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;AAC1D,YAAA,IAAI,CAAC,IAAI,GAAGC,oBAAY;;;IAI5B,MAAM,GAAA;QACJ,IAAI,kBAAkB,GAAG,EAAE;AAC3B,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,YAAA,kBAAkB,GAAG;AACnB,gBAAA,IAAI,EAAE,MAAM;aACb;;AAGH,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,kBAAkB,GAAG;AACnB,gBAAA,IAAI,EAAE,QAAQ;aACf;;AAEH,QAAA,QACEC,OAAA,CAACC,UAAI,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAA,EAAA,0CAAA,EACH,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,UAAU,EAAE,IAAI,CAAC,IAAI;gBACrB,YAAY,EAAE,IAAI,CAAC,MAAM;gBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,sBAAsB;AAC1C,aAAA,EAAA,EACG,kBAAkB,CAAA,EAEtBD,OACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,KAAK,EACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,EAChC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAA,EAElB,IAAI,CAAC,IAAI,IAAIA,OAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAY,CAAA,EACpE,IAAI,CAAC,aAAa,IACjBA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,cAAc,EAAA,EACvBA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,MAAM,EAAA,EAAE,IAAI,CAAC,aAAa,CAAO,CACxC,IACJ,IAAI,EACRA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,uBAAuB,EAAA,EAChC,IAAI,CAAC,KAAK,EACXA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACR,CACA,EACR,CAAC,IAAI,CAAC,UAAU;YACf,CAAC,IAAI,CAAC,sBAAsB;AAC5B,YAAA,CAAC,IAAI,CAAC,YAAY,KAChBA,OAAA,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,EACpC,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,IAAI,EAAA,EAEd,IAAI,CAAC,OAAO,CACF,CACd,CACE;;;;;;;;;;;"}
1
+ {"version":3,"file":"ix-menu-item.entry.cjs.js","sources":["src/components/menu-item/menu-item.scss?tag=ix-menu-item&encapsulation=shadow","src/components/menu-item/menu-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n$menuItemHeight: 3rem;\n$menuItemPadding: 0.875rem;\n\n:host {\n position: relative;\n display: block;\n cursor: pointer;\n\n height: var(--ix-menu-item-height, $menuItemHeight);\n min-height: var(--ix-menu-item-height, $menuItemHeight);\n max-height: var(--ix-menu-item-height, $menuItemHeight);\n\n .tab {\n all: unset;\n box-sizing: border-box;\n display: flex;\n position: relative;\n align-items: center;\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: calc(100%);\n z-index: 500;\n padding-left: $menuItemPadding;\n\n @include ghost-hover-pressed;\n }\n\n .tab-icon {\n color: var(--theme-nav-item-primary-icon--color);\n position: relative;\n pointer-events: none;\n }\n\n .tab:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: -1px;\n }\n\n .notification {\n display: inline-flex;\n position: absolute;\n top: 0.25rem;\n left: 1.5rem;\n\n .pill {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 0.5rem;\n min-width: 1rem;\n position: relative;\n border-radius: 6.25rem;\n background-color: var(--theme-color-primary);\n font-size: 0.75rem;\n font-weight: bold;\n line-height: 1;\n font-family: Siemens Sans, Arial, sans-serif;\n color: var(--theme-color-primary--contrast);\n padding: $tiny-space;\n }\n }\n\n .tab-text {\n @include ellipsis;\n color: var(--theme-nav-item-primary--color);\n margin: 0 1rem 0 1.25rem;\n user-select: none;\n width: 100%;\n }\n}\n\n:host(.active),\n:host(.selected) {\n .tab {\n background-color: var(--theme-nav-item-primary--background--selected);\n }\n\n .tab::before {\n content: '';\n background-color: var(--theme-nav-item-primary--border-color--selected);\n height: var(--ix-menu-item-height, $menuItemHeight);\n width: 0.25rem;\n left: 0;\n position: absolute;\n }\n\n .tab > .glyph {\n color: var(--theme-nav-item-primary-icon--color--selected);\n }\n}\n\n:host(.disabled) {\n color: var(--theme-color-weak-text);\n pointer-events: none;\n cursor: default;\n\n .tab > .tab-icon {\n color: var(--theme-color-weak-text);\n }\n\n .tab-text {\n color: var(--theme-color-weak-text);\n }\n}\n\n:host(.bottom-tab),\n:host([slot='bottom']) {\n $bottom-height: 2.25rem;\n\n min-height: $bottom-height;\n height: $bottom-height;\n max-height: $bottom-height;\n\n .tab {\n height: $bottom-height;\n }\n\n .tab::before {\n height: $bottom-height;\n background-color: transparent;\n }\n\n &.active,\n &.selected {\n &:hover {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:active {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n }\n}\n\n:host(.bottom-tab.active),\n:host(.bottom-tab.selected),\n:host(.active[slot='bottom']),\n:host(.selected[slot='bottom']) {\n .tab {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n}\n\n:host(.tab-nested) {\n .tab {\n flex-direction: row;\n padding-left: calc(0.5rem + $menuItemPadding);\n\n .notification {\n position: relative;\n top: 0;\n left: 0;\n padding-left: 0.5rem;\n }\n\n .tab-icon {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n\n .tab-text {\n margin-left: 0.5rem;\n }\n\n &::before {\n display: none;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { makeRef } from '../utils/make-ref';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { Disposable } from '../utils/typed-event';\nimport { iconDocument } from '@siemens/ix-icons/icons';\n\n/**\n * @slot menu-item-label Custom label\n */\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n shadow: true,\n})\nexport class MenuItem {\n /**\n * Label of the menu item. Will also be used as tooltip text\n */\n @Prop() label?: string;\n\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n */\n @Prop() bottom = false;\n\n /**\n * Name of the icon you want to display. Icon names can be resolved from the documentation @link https://ix.siemens.io/docs/icon-library/icons\n */\n @Prop({ mutable: true }) icon?: string;\n\n /**\n * Show notification count on tab\n */\n @Prop() notifications?: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean = false;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean = false;\n\n /** @internal */\n @Prop() isCategory: boolean = false;\n\n @Element() hostElement!: HTMLIxMenuItemElement;\n\n @State() tooltip?: string;\n @State() menuExpanded: boolean = false;\n\n private readonly buttonRef = makeRef<HTMLButtonElement>();\n private isHostedInsideCategory = false;\n private menuExpandedDisposer?: Disposable;\n\n private readonly observer: MutationObserver = createMutationObserver(() => {\n this.setTooltip();\n });\n\n componentWillLoad() {\n this.isHostedInsideCategory =\n !!this.hostElement.closest('ix-menu-category');\n\n this.onIconChange();\n\n this.menuExpanded = menuController.nativeElement?.expand || false;\n this.menuExpandedDisposer = menuController.expandChange.on(\n (expand) => (this.menuExpanded = expand)\n );\n }\n\n componentWillRender() {\n this.setTooltip();\n }\n\n setTooltip() {\n this.tooltip = this.label ?? this.hostElement.textContent ?? undefined;\n }\n\n connectedCallback() {\n this.observer.observe(this.hostElement, {\n subtree: true,\n childList: true,\n characterData: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n if (this.menuExpandedDisposer) {\n this.menuExpandedDisposer.dispose();\n }\n }\n\n @Watch('icon')\n onIconChange() {\n if (!this.isHostedInsideCategory && !this.hostElement.icon) {\n this.icon = iconDocument;\n }\n }\n\n render() {\n let extendedAttributes = {};\n if (this.home) {\n extendedAttributes = {\n slot: 'home',\n };\n }\n\n if (this.bottom) {\n extendedAttributes = {\n slot: 'bottom',\n };\n }\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n 'tab-nested': this.isHostedInsideCategory,\n }}\n {...extendedAttributes}\n >\n <button\n class=\"tab\"\n tabIndex={this.disabled ? -1 : 0}\n ref={this.buttonRef}\n >\n {this.icon && <ix-icon class={'tab-icon'} name={this.icon}></ix-icon>}\n {this.notifications ? (\n <div class=\"notification\">\n <div class=\"pill\">{this.notifications}</div>\n </div>\n ) : null}\n <span class=\"tab-text text-default\">\n {this.label}\n <slot></slot>\n </span>\n </button>\n {!this.isCategory &&\n !this.isHostedInsideCategory &&\n !this.menuExpanded && (\n <ix-tooltip\n for={this.buttonRef.waitForCurrent()}\n placement={'right'}\n showDelay={1000}\n >\n {this.tooltip}\n </ix-tooltip>\n )}\n </Host>\n );\n }\n}\n"],"names":["makeRef","createMutationObserver","menuController","iconDocument","h","Host"],"mappings":"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"}