@siemens/ix 2.4.0 → 2.5.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 (892) hide show
  1. package/components/a11y.js +1 -1
  2. package/components/a11y.js.map +1 -1
  3. package/components/application-header.js +51 -15
  4. package/components/application-header.js.map +1 -1
  5. package/components/avatar.js +1 -1
  6. package/components/avatar.js.map +1 -1
  7. package/components/card-accordion.js +1 -1
  8. package/components/card-accordion.js.map +1 -1
  9. package/components/card-content.js +1 -1
  10. package/components/card-title.js +1 -1
  11. package/components/card.js +3 -3
  12. package/components/card.js.map +1 -1
  13. package/components/col.js.map +1 -1
  14. package/components/context.js +1 -1
  15. package/components/context.js.map +1 -1
  16. package/components/divider.js +1 -1
  17. package/components/dropdown-controller.js +140 -0
  18. package/components/dropdown-controller.js.map +1 -0
  19. package/components/dropdown-item.js +4 -4
  20. package/components/dropdown-item.js.map +1 -1
  21. package/components/dropdown.js +13 -145
  22. package/components/dropdown.js.map +1 -1
  23. package/components/filter-chip.js +1 -1
  24. package/components/floating-ui.dom.esm.js +533 -60
  25. package/components/floating-ui.dom.esm.js.map +1 -1
  26. package/components/group-context-menu.js +1 -1
  27. package/components/group-context-menu.js.map +1 -1
  28. package/components/group-item.js +4 -8
  29. package/components/group-item.js.map +1 -1
  30. package/components/index.js +1 -0
  31. package/components/index.js.map +1 -1
  32. package/components/ix-action-card.js +1 -1
  33. package/components/ix-action-card.js.map +1 -1
  34. package/components/ix-application-sidebar.js +1 -1
  35. package/components/ix-application-switch-modal.js +1 -1
  36. package/components/ix-application.js +2 -2
  37. package/components/ix-application.js.map +1 -1
  38. package/components/ix-basic-navigation.js +18 -12
  39. package/components/ix-basic-navigation.js.map +1 -1
  40. package/components/ix-blind.js.map +1 -1
  41. package/components/ix-breadcrumb.js +2 -2
  42. package/components/ix-card-list.js +6 -6
  43. package/components/ix-card-list.js.map +1 -1
  44. package/components/ix-category-filter.js +8 -4
  45. package/components/ix-category-filter.js.map +1 -1
  46. package/components/ix-chip.js +4 -4
  47. package/components/ix-chip.js.map +1 -1
  48. package/components/ix-content.js +3 -3
  49. package/components/ix-css-grid-item.js +1 -1
  50. package/components/ix-drawer.js +2 -2
  51. package/components/ix-dropdown-header.js +1 -1
  52. package/components/ix-dropdown-quick-actions.js +1 -1
  53. package/components/ix-event-list-item.js +4 -4
  54. package/components/ix-event-list.js +2 -2
  55. package/components/ix-expanding-search.js +4 -4
  56. package/components/ix-flip-tile-content.js +1 -1
  57. package/components/ix-flip-tile.js +4 -4
  58. package/components/ix-form-field.js +1 -1
  59. package/components/ix-group.js +69 -44
  60. package/components/ix-group.js.map +1 -1
  61. package/components/ix-icon-toggle-button.js +1 -1
  62. package/components/ix-input-group.js +1 -1
  63. package/components/ix-key-value-list.js +1 -1
  64. package/components/ix-kpi.js +3 -3
  65. package/components/ix-kpi.js.map +1 -1
  66. package/components/ix-link-button.js +3 -3
  67. package/components/ix-map-navigation.js +21 -15
  68. package/components/ix-map-navigation.js.map +1 -1
  69. package/components/ix-menu-about-item.js +1 -1
  70. package/components/ix-menu-about-news.js +4 -4
  71. package/components/ix-menu-avatar.js +2 -2
  72. package/components/ix-menu-category.js +5 -5
  73. package/components/ix-menu-settings-item.js +1 -1
  74. package/components/ix-menu.js +12 -12
  75. package/components/ix-menu.js.map +1 -1
  76. package/components/ix-message-bar.js +1 -1
  77. package/components/ix-modal-example.js +1 -1
  78. package/components/ix-modal-footer.js +2 -2
  79. package/components/ix-modal-footer.js.map +1 -1
  80. package/components/ix-modal-loading.js +1 -1
  81. package/components/ix-modal.js +1 -1
  82. package/components/ix-modal.js.map +1 -1
  83. package/components/ix-pagination.js +3 -3
  84. package/components/ix-pagination.js.map +1 -1
  85. package/components/ix-pane-layout.js +1 -1
  86. package/components/ix-pane.js.map +1 -1
  87. package/components/ix-pill.js +4 -4
  88. package/components/ix-pill.js.map +1 -1
  89. package/components/ix-playground-internal.js +1 -1
  90. package/components/ix-playground-internal.js.map +1 -1
  91. package/components/ix-push-card.js +1 -1
  92. package/components/ix-push-card.js.map +1 -1
  93. package/components/ix-slider.js +20 -13
  94. package/components/ix-slider.js.map +1 -1
  95. package/components/ix-split-button-item.js +1 -1
  96. package/components/ix-tile.js +4 -4
  97. package/components/ix-tile.js.map +1 -1
  98. package/components/ix-toast-container.js.map +1 -1
  99. package/components/ix-toggle-button.js +2 -2
  100. package/components/ix-toggle.js +2 -2
  101. package/components/ix-tree.js +21 -7
  102. package/components/ix-tree.js.map +1 -1
  103. package/components/ix-upload.js +3 -3
  104. package/components/ix-upload.js.map +1 -1
  105. package/components/ix-validation-tooltip.js +2 -2
  106. package/components/ix-workflow-step.js +3 -3
  107. package/components/ix-workflow-step.js.map +1 -1
  108. package/components/ix-workflow-steps.js +1 -1
  109. package/components/ix-workflow-steps.js.map +1 -1
  110. package/components/layout-grid.js +2 -2
  111. package/components/layout-grid.js.map +1 -1
  112. package/components/listener.js +1 -1
  113. package/components/listener.js.map +1 -1
  114. package/components/logical-filter-operator.js +1 -1
  115. package/components/logical-filter-operator.js.map +1 -1
  116. package/components/map-navigation-overlay.js +2 -2
  117. package/components/menu-avatar-item.js +1 -1
  118. package/components/menu-expand-icon.js +1 -1
  119. package/components/menu-expand-icon.js.map +1 -1
  120. package/components/menu-item.js +14 -14
  121. package/components/menu-item.js.map +1 -1
  122. package/components/modal-content.js +1 -1
  123. package/components/modal-content.js.map +1 -1
  124. package/components/modal-header.js +1 -1
  125. package/components/modal-header.js.map +1 -1
  126. package/components/row.js +1 -1
  127. package/components/row.js.map +1 -1
  128. package/components/select-item.js +1 -1
  129. package/components/select.js +27 -30
  130. package/components/select.js.map +1 -1
  131. package/components/service.js +2 -2
  132. package/components/service.js.map +1 -1
  133. package/components/shadow-dom.js +1 -1
  134. package/components/shadow-dom.js.map +1 -1
  135. package/components/spinner.js +1 -1
  136. package/components/tab-item.js +3 -3
  137. package/components/tab-item.js.map +1 -1
  138. package/components/tabs.js +77 -43
  139. package/components/tabs.js.map +1 -1
  140. package/components/toast.js +2 -2
  141. package/components/toast.js.map +1 -1
  142. package/components/tooltip.js +24 -22
  143. package/components/tooltip.js.map +1 -1
  144. package/components/tree-item.js +8 -8
  145. package/components/tree-item.js.map +1 -1
  146. package/dist/cjs/{a11y-d3ce56d1.js → a11y-eba397e8.js} +2 -2
  147. package/dist/cjs/{a11y-d3ce56d1.js.map → a11y-eba397e8.js.map} +1 -1
  148. package/dist/cjs/{context-98f4a0b3.js → context-938f7470.js} +2 -2
  149. package/dist/cjs/{context-98f4a0b3.js.map → context-938f7470.js.map} +1 -1
  150. package/dist/cjs/dropdown-controller-5ef3d018.js +144 -0
  151. package/dist/cjs/dropdown-controller-5ef3d018.js.map +1 -0
  152. package/dist/cjs/{floating-ui.dom.esm-94b4d17c.js → floating-ui.dom.esm-9dde6cd6.js} +534 -60
  153. package/dist/cjs/floating-ui.dom.esm-9dde6cd6.js.map +1 -0
  154. package/dist/cjs/index.cjs.js +3 -2
  155. package/dist/cjs/index.cjs.js.map +1 -1
  156. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  157. package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
  158. package/dist/cjs/ix-application-header.cjs.entry.js +35 -9
  159. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
  160. package/dist/cjs/ix-application-sidebar.cjs.entry.js +1 -1
  161. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
  162. package/dist/cjs/ix-application.cjs.entry.js +5 -5
  163. package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
  164. package/dist/cjs/ix-avatar_2.cjs.entry.js +3 -3
  165. package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
  166. package/dist/cjs/ix-basic-navigation.cjs.entry.js +4 -4
  167. package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
  168. package/dist/cjs/ix-blind.cjs.entry.js +1 -1
  169. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  170. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +1 -1
  171. package/dist/cjs/ix-breadcrumb.cjs.entry.js +3 -3
  172. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +2 -2
  173. package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
  174. package/dist/cjs/ix-card-list.cjs.entry.js +6 -6
  175. package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
  176. package/dist/cjs/ix-card_2.cjs.entry.js +4 -4
  177. package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
  178. package/dist/cjs/ix-category-filter.cjs.entry.js +9 -5
  179. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  180. package/dist/cjs/ix-chip.cjs.entry.js +4 -4
  181. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  182. package/dist/cjs/ix-col_4.cjs.entry.js +4 -4
  183. package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
  184. package/dist/cjs/ix-content.cjs.entry.js +4 -4
  185. package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
  186. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  187. package/dist/cjs/ix-drawer.cjs.entry.js +2 -2
  188. package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
  189. package/dist/cjs/ix-dropdown-item.cjs.entry.js +4 -4
  190. package/dist/cjs/ix-dropdown-item.cjs.entry.js.map +1 -1
  191. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  192. package/dist/cjs/ix-dropdown.cjs.entry.js +26 -158
  193. package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
  194. package/dist/cjs/ix-event-list-item.cjs.entry.js +5 -5
  195. package/dist/cjs/ix-event-list.cjs.entry.js +2 -2
  196. package/dist/cjs/ix-expanding-search.cjs.entry.js +4 -4
  197. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +2 -2
  198. package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
  199. package/dist/cjs/ix-flip-tile.cjs.entry.js +4 -4
  200. package/dist/cjs/ix-form-field.cjs.entry.js +1 -1
  201. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +6 -10
  202. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js.map +1 -1
  203. package/dist/cjs/ix-group.cjs.entry.js +68 -44
  204. package/dist/cjs/ix-group.cjs.entry.js.map +1 -1
  205. package/dist/cjs/ix-icon-button_2.cjs.entry.js +2 -2
  206. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +2 -2
  207. package/dist/cjs/ix-input-group.cjs.entry.js +2 -2
  208. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  209. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  210. package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
  211. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  212. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  213. package/dist/cjs/ix-map-navigation.cjs.entry.js +4 -4
  214. package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
  215. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  216. package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
  217. package/dist/cjs/ix-menu-avatar.cjs.entry.js +3 -3
  218. package/dist/cjs/ix-menu-category.cjs.entry.js +6 -6
  219. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +2 -2
  220. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js.map +1 -1
  221. package/dist/cjs/ix-menu-item.cjs.entry.js +13 -13
  222. package/dist/cjs/ix-menu-item.cjs.entry.js.map +1 -1
  223. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  224. package/dist/cjs/ix-menu.cjs.entry.js +14 -14
  225. package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
  226. package/dist/cjs/ix-message-bar.cjs.entry.js +1 -1
  227. package/dist/cjs/ix-modal-content_2.cjs.entry.js +3 -3
  228. package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
  229. package/dist/cjs/ix-modal-example.cjs.entry.js +1 -1
  230. package/dist/cjs/ix-modal-footer.cjs.entry.js +2 -2
  231. package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
  232. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  233. package/dist/cjs/ix-modal.cjs.entry.js +3 -3
  234. package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
  235. package/dist/cjs/ix-pagination.cjs.entry.js +4 -4
  236. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  237. package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -2
  238. package/dist/cjs/ix-pane.cjs.entry.js +1 -1
  239. package/dist/cjs/ix-pane.cjs.entry.js.map +1 -1
  240. package/dist/cjs/ix-pill.cjs.entry.js +4 -4
  241. package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
  242. package/dist/cjs/ix-playground-internal.cjs.entry.js +1 -1
  243. package/dist/cjs/ix-playground-internal.cjs.entry.js.map +1 -1
  244. package/dist/cjs/ix-push-card.cjs.entry.js +1 -1
  245. package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
  246. package/dist/cjs/ix-select.cjs.entry.js +28 -31
  247. package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
  248. package/dist/cjs/ix-slider.cjs.entry.js +22 -15
  249. package/dist/cjs/ix-slider.cjs.entry.js.map +1 -1
  250. package/dist/cjs/ix-split-button-item.cjs.entry.js +1 -1
  251. package/dist/cjs/ix-tab-item_2.cjs.entry.js +74 -44
  252. package/dist/cjs/ix-tab-item_2.cjs.entry.js.map +1 -1
  253. package/dist/cjs/ix-tile.cjs.entry.js +4 -4
  254. package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
  255. package/dist/cjs/ix-toast-container.cjs.entry.js.map +1 -1
  256. package/dist/cjs/ix-toast.cjs.entry.js +2 -2
  257. package/dist/cjs/ix-toast.cjs.entry.js.map +1 -1
  258. package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
  259. package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
  260. package/dist/cjs/ix-tooltip.cjs.entry.js +25 -23
  261. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  262. package/dist/cjs/ix-tree-item.cjs.entry.js +8 -8
  263. package/dist/cjs/ix-tree-item.cjs.entry.js.map +1 -1
  264. package/dist/cjs/ix-tree.cjs.entry.js +21 -7
  265. package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
  266. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  267. package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
  268. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -3
  269. package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
  270. package/dist/cjs/ix-workflow-step.cjs.entry.js.map +1 -1
  271. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  272. package/dist/cjs/ix-workflow-steps.cjs.entry.js.map +1 -1
  273. package/dist/cjs/{listener-bc3e7c0c.js → listener-a124ed49.js} +2 -2
  274. package/dist/cjs/{listener-bc3e7c0c.js.map → listener-a124ed49.js.map} +1 -1
  275. package/dist/cjs/loader.cjs.js +1 -1
  276. package/dist/cjs/{logical-filter-operator-5564322e.js → logical-filter-operator-4917393f.js} +2 -2
  277. package/dist/cjs/{logical-filter-operator-5564322e.js.map → logical-filter-operator-4917393f.js.map} +1 -1
  278. package/dist/cjs/{service-a42add5f.js → service-39a8e5fe.js} +3 -3
  279. package/dist/cjs/service-39a8e5fe.js.map +1 -0
  280. package/dist/cjs/{shadow-dom-73f9d553.js → shadow-dom-454acc38.js} +2 -2
  281. package/dist/cjs/{shadow-dom-73f9d553.js.map → shadow-dom-454acc38.js.map} +1 -1
  282. package/dist/cjs/siemens-ix.cjs.js +1 -1
  283. package/dist/collection/components/action-card/action-card.js +6 -3
  284. package/dist/collection/components/action-card/action-card.js.map +1 -1
  285. package/dist/collection/components/application/application.css +26 -6
  286. package/dist/collection/components/application/application.js +1 -1
  287. package/dist/collection/components/application/application.js.map +1 -1
  288. package/dist/collection/components/application-header/application-header.css +9 -7
  289. package/dist/collection/components/application-header/application-header.js +78 -6
  290. package/dist/collection/components/application-header/application-header.js.map +1 -1
  291. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js +1 -1
  292. package/dist/collection/components/application-sidebar/application-sidebar.js +1 -1
  293. package/dist/collection/components/avatar/avatar.css +42 -0
  294. package/dist/collection/components/basic-navigation/basic-navigation.js +7 -4
  295. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
  296. package/dist/collection/components/blind/blind.css +1 -1
  297. package/dist/collection/components/blind/blind.js +2 -2
  298. package/dist/collection/components/blind/blind.js.map +1 -1
  299. package/dist/collection/components/blind/test/blind.ct.js +1 -1
  300. package/dist/collection/components/blind/test/blind.ct.js.map +1 -1
  301. package/dist/collection/components/breadcrumb/breadcrumb.js +2 -2
  302. package/dist/collection/components/card/card.css +3 -3
  303. package/dist/collection/components/card/card.js +7 -4
  304. package/dist/collection/components/card/card.js.map +1 -1
  305. package/dist/collection/components/card-accordion/card-accordion.css +4 -4
  306. package/dist/collection/components/card-content/card-content.js +1 -1
  307. package/dist/collection/components/card-list/card-list.css +6 -0
  308. package/dist/collection/components/card-list/card-list.js +5 -5
  309. package/dist/collection/components/card-list/card-list.js.map +1 -1
  310. package/dist/collection/components/card-title/card-title.js +1 -1
  311. package/dist/collection/components/category-filter/category-filter.js +18 -13
  312. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  313. package/dist/collection/components/category-filter/logical-filter-operator.js +1 -1
  314. package/dist/collection/components/category-filter/logical-filter-operator.js.map +1 -1
  315. package/dist/collection/components/category-filter/test/category-filter.ct.js +52 -0
  316. package/dist/collection/components/category-filter/test/category-filter.ct.js.map +1 -0
  317. package/dist/collection/components/chip/chip.css +2 -2
  318. package/dist/collection/components/chip/chip.js +5 -5
  319. package/dist/collection/components/chip/chip.js.map +1 -1
  320. package/dist/collection/components/col/col.css +1 -1
  321. package/dist/collection/components/col/col.js +1 -1
  322. package/dist/collection/components/col/col.js.map +1 -1
  323. package/dist/collection/components/content/content.js +3 -3
  324. package/dist/collection/components/css-grid/css-grid-item.js +1 -1
  325. package/dist/collection/components/divider/divider.js +1 -1
  326. package/dist/collection/components/drawer/drawer.js +2 -2
  327. package/dist/collection/components/dropdown/dropdown.js +10 -6
  328. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  329. package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
  330. package/dist/collection/components/dropdown-item/dropdown-item.css +3 -3
  331. package/dist/collection/components/dropdown-item/dropdown-item.js +5 -5
  332. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  333. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -1
  334. package/dist/collection/components/event-list/event-list.js +2 -2
  335. package/dist/collection/components/event-list-item/event-list-item.js +4 -4
  336. package/dist/collection/components/expanding-search/expanding-search.js +4 -4
  337. package/dist/collection/components/filter-chip/filter-chip.js +1 -1
  338. package/dist/collection/components/flip-tile/flip-tile.js +4 -4
  339. package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
  340. package/dist/collection/components/form-field/form-field.js +1 -1
  341. package/dist/collection/components/grid/layout-grid.css +1 -1
  342. package/dist/collection/components/grid/layout-grid.js +3 -3
  343. package/dist/collection/components/grid/layout-grid.js.map +1 -1
  344. package/dist/collection/components/group/group-context-menu.css +1 -1
  345. package/dist/collection/components/group/group-context-menu.js +2 -2
  346. package/dist/collection/components/group/group-context-menu.js.map +1 -1
  347. package/dist/collection/components/group/group.css +3 -2
  348. package/dist/collection/components/group/group.js +84 -48
  349. package/dist/collection/components/group/group.js.map +1 -1
  350. package/dist/collection/components/group/test/group.ct.js +70 -2
  351. package/dist/collection/components/group/test/group.ct.js.map +1 -1
  352. package/dist/collection/components/group-item/group-item.css +0 -4
  353. package/dist/collection/components/group-item/group-item.js +9 -12
  354. package/dist/collection/components/group-item/group-item.js.map +1 -1
  355. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  356. package/dist/collection/components/input-group/input-group.js +1 -1
  357. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  358. package/dist/collection/components/kpi/kpi.css +1 -1
  359. package/dist/collection/components/kpi/kpi.js +4 -4
  360. package/dist/collection/components/kpi/kpi.js.map +1 -1
  361. package/dist/collection/components/link-button/link-button.js +3 -3
  362. package/dist/collection/components/map-navigation/map-navigation.css +3 -3
  363. package/dist/collection/components/map-navigation/map-navigation.js +2 -2
  364. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  365. package/dist/collection/components/menu/menu-expand-icon.css +1 -1
  366. package/dist/collection/components/menu/menu-expand-icon.js +3 -3
  367. package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
  368. package/dist/collection/components/menu/menu.css +4 -3
  369. package/dist/collection/components/menu/menu.js +12 -12
  370. package/dist/collection/components/menu/menu.js.map +1 -1
  371. package/dist/collection/components/menu/test/menu.ct.js +1 -1
  372. package/dist/collection/components/menu/test/menu.ct.js.map +1 -1
  373. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  374. package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
  375. package/dist/collection/components/menu-avatar/menu-avatar.js +2 -2
  376. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  377. package/dist/collection/components/menu-category/menu-category.js +5 -5
  378. package/dist/collection/components/menu-item/menu-item.js +24 -21
  379. package/dist/collection/components/menu-item/menu-item.js.map +1 -1
  380. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  381. package/dist/collection/components/message-bar/message-bar.js +1 -1
  382. package/dist/collection/components/modal/modal.css +18 -8
  383. package/dist/collection/components/modal/modal.js +1 -1
  384. package/dist/collection/components/modal/modal.js.map +1 -1
  385. package/dist/collection/components/modal/test/modal.ct.js +1 -1
  386. package/dist/collection/components/modal/test/modal.ct.js.map +1 -1
  387. package/dist/collection/components/modal-content/modal-content.css +1 -1
  388. package/dist/collection/components/modal-content/modal-content.js +1 -1
  389. package/dist/collection/components/modal-footer/modal-footer.css +1 -0
  390. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  391. package/dist/collection/components/modal-header/modal-header.js +2 -2
  392. package/dist/collection/components/modal-header/modal-header.js.map +1 -1
  393. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  394. package/dist/collection/components/pagination/pagination.js +5 -4
  395. package/dist/collection/components/pagination/pagination.js.map +1 -1
  396. package/dist/collection/components/pane/pane.css +1 -1
  397. package/dist/collection/components/pane/pane.js +1 -1
  398. package/dist/collection/components/pane/pane.js.map +1 -1
  399. package/dist/collection/components/pane/test/panes.ct.js +1 -1
  400. package/dist/collection/components/pane/test/panes.ct.js.map +1 -1
  401. package/dist/collection/components/pane-layout/pane-layout.js +1 -1
  402. package/dist/collection/components/pill/pill.css +2 -2
  403. package/dist/collection/components/pill/pill.js +5 -5
  404. package/dist/collection/components/pill/pill.js.map +1 -1
  405. package/dist/collection/components/playground/example-modal.js +1 -1
  406. package/dist/collection/components/playground/playground.js +2 -2
  407. package/dist/collection/components/playground/playground.js.map +1 -1
  408. package/dist/collection/components/push-card/push-card.js +9 -6
  409. package/dist/collection/components/push-card/push-card.js.map +1 -1
  410. package/dist/collection/components/row/row.css +1 -1
  411. package/dist/collection/components/row/row.js +2 -2
  412. package/dist/collection/components/row/row.js.map +1 -1
  413. package/dist/collection/components/select/select.js +27 -30
  414. package/dist/collection/components/select/select.js.map +1 -1
  415. package/dist/collection/components/select/test/select.ct.js +45 -1
  416. package/dist/collection/components/select/test/select.ct.js.map +1 -1
  417. package/dist/collection/components/select-item/select-item.js +1 -1
  418. package/dist/collection/components/slider/slider.css +1 -1
  419. package/dist/collection/components/slider/slider.js +23 -15
  420. package/dist/collection/components/slider/slider.js.map +1 -1
  421. package/dist/collection/components/slider/test/slider.ct.js +15 -6
  422. package/dist/collection/components/slider/test/slider.ct.js.map +1 -1
  423. package/dist/collection/components/spinner/spinner.js +1 -1
  424. package/dist/collection/components/split-button-item/split-button-item.js +1 -1
  425. package/dist/collection/components/tab-item/tab-item.js +4 -4
  426. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  427. package/dist/collection/components/tabs/tabs.css +1 -1
  428. package/dist/collection/components/tabs/tabs.js +78 -43
  429. package/dist/collection/components/tabs/tabs.js.map +1 -1
  430. package/dist/collection/components/tabs/test/tabs.ct.js +35 -9
  431. package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -1
  432. package/dist/collection/components/tile/tile.css +1 -1
  433. package/dist/collection/components/tile/tile.js +5 -5
  434. package/dist/collection/components/tile/tile.js.map +1 -1
  435. package/dist/collection/components/toast/styles/toast-container.css +1 -1
  436. package/dist/collection/components/toast/toast-container.js +1 -1
  437. package/dist/collection/components/toast/toast-container.js.map +1 -1
  438. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  439. package/dist/collection/components/toast/toast.css +1 -1
  440. package/dist/collection/components/toast/toast.js +3 -3
  441. package/dist/collection/components/toast/toast.js.map +1 -1
  442. package/dist/collection/components/toggle/toggle.js +2 -2
  443. package/dist/collection/components/toggle-button/toggle-button.js +2 -2
  444. package/dist/collection/components/tooltip/tooltip.css +15 -5
  445. package/dist/collection/components/tooltip/tooltip.js +33 -26
  446. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  447. package/dist/collection/components/tree/test/tree.ct.js +37 -1
  448. package/dist/collection/components/tree/test/tree.ct.js.map +1 -1
  449. package/dist/collection/components/tree/tree-model.js.map +1 -1
  450. package/dist/collection/components/tree/tree.css +1 -1
  451. package/dist/collection/components/tree/tree.js +26 -11
  452. package/dist/collection/components/tree/tree.js.map +1 -1
  453. package/dist/collection/components/tree-item/tree-item.css +9 -0
  454. package/dist/collection/components/tree-item/tree-item.js +13 -12
  455. package/dist/collection/components/tree-item/tree-item.js.map +1 -1
  456. package/dist/collection/components/upload/upload.js +4 -4
  457. package/dist/collection/components/upload/upload.js.map +1 -1
  458. package/dist/collection/components/utils/application-layout/service.js +2 -2
  459. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  460. package/dist/collection/components/utils/condition-checks.js +1 -1
  461. package/dist/collection/components/utils/condition-checks.js.map +1 -1
  462. package/dist/collection/components/utils/context.js +1 -1
  463. package/dist/collection/components/utils/context.js.map +1 -1
  464. package/dist/collection/components/utils/listener.js +1 -1
  465. package/dist/collection/components/utils/listener.js.map +1 -1
  466. package/dist/collection/components/utils/notification-color.js.map +1 -1
  467. package/dist/collection/components/utils/shadow-dom.js +1 -1
  468. package/dist/collection/components/utils/shadow-dom.js.map +1 -1
  469. package/dist/collection/components/validation-tooltip/validation-tooltip.js +2 -2
  470. package/dist/collection/components/workflow-step/workflow-step.css +1 -1
  471. package/dist/collection/components/workflow-step/workflow-step.js +4 -4
  472. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  473. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js +2 -2
  474. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -1
  475. package/dist/collection/components/workflow-steps/workflow-steps.css +1 -1
  476. package/dist/collection/components/workflow-steps/workflow-steps.js +2 -2
  477. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  478. package/dist/collection/index.js +1 -0
  479. package/dist/collection/index.js.map +1 -1
  480. package/dist/collection/tests/application-header/application-header.e2e.js +9 -0
  481. package/dist/collection/tests/application-header/application-header.e2e.js.map +1 -1
  482. package/dist/collection/tests/avatar/avatar.e2e.js +6 -0
  483. package/dist/collection/tests/avatar/avatar.e2e.js.map +1 -1
  484. package/dist/collection/tests/card-list/card-list.e2e.js +7 -1
  485. package/dist/collection/tests/card-list/card-list.e2e.js.map +1 -1
  486. package/dist/collection/tests/dropdown/dropdown.e2e.js +6 -0
  487. package/dist/collection/tests/dropdown/dropdown.e2e.js.map +1 -1
  488. package/dist/collection/tests/group/group.e2e.js +12 -3
  489. package/dist/collection/tests/group/group.e2e.js.map +1 -1
  490. package/dist/collection/tests/slider/slider.e2e.js +14 -0
  491. package/dist/collection/tests/slider/slider.e2e.js.map +1 -1
  492. package/dist/collection/tests/tabs/tabs.e2e.js +1 -1
  493. package/dist/collection/tests/tabs/tabs.e2e.js.map +1 -1
  494. package/dist/collection/tests/tooltip/tooltip.e2e.js +22 -0
  495. package/dist/collection/tests/tooltip/tooltip.e2e.js.map +1 -1
  496. package/dist/collection/tests/tree/tree.e2e.js +12 -0
  497. package/dist/collection/tests/tree/tree.e2e.js.map +1 -1
  498. package/dist/esm/{a11y-d5444a76.js → a11y-2e34777f.js} +2 -2
  499. package/dist/esm/{a11y-d5444a76.js.map → a11y-2e34777f.js.map} +1 -1
  500. package/dist/esm/{context-c9078420.js → context-82a1ccf8.js} +2 -2
  501. package/dist/esm/{context-c9078420.js.map → context-82a1ccf8.js.map} +1 -1
  502. package/dist/esm/dropdown-controller-95bd6750.js +140 -0
  503. package/dist/esm/dropdown-controller-95bd6750.js.map +1 -0
  504. package/dist/esm/{floating-ui.dom.esm-6e7c098f.js → floating-ui.dom.esm-d4ad786a.js} +534 -61
  505. package/dist/esm/floating-ui.dom.esm-d4ad786a.js.map +1 -0
  506. package/dist/esm/index.js +2 -2
  507. package/dist/esm/index.js.map +1 -1
  508. package/dist/esm/ix-action-card.entry.js +1 -1
  509. package/dist/esm/ix-action-card.entry.js.map +1 -1
  510. package/dist/esm/ix-application-header.entry.js +36 -10
  511. package/dist/esm/ix-application-header.entry.js.map +1 -1
  512. package/dist/esm/ix-application-sidebar.entry.js +1 -1
  513. package/dist/esm/ix-application-switch-modal.entry.js +1 -1
  514. package/dist/esm/ix-application.entry.js +5 -5
  515. package/dist/esm/ix-application.entry.js.map +1 -1
  516. package/dist/esm/ix-avatar_2.entry.js +3 -3
  517. package/dist/esm/ix-avatar_2.entry.js.map +1 -1
  518. package/dist/esm/ix-basic-navigation.entry.js +4 -4
  519. package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
  520. package/dist/esm/ix-blind.entry.js +1 -1
  521. package/dist/esm/ix-blind.entry.js.map +1 -1
  522. package/dist/esm/ix-breadcrumb-item.entry.js +1 -1
  523. package/dist/esm/ix-breadcrumb.entry.js +3 -3
  524. package/dist/esm/ix-card-accordion_2.entry.js +2 -2
  525. package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
  526. package/dist/esm/ix-card-list.entry.js +6 -6
  527. package/dist/esm/ix-card-list.entry.js.map +1 -1
  528. package/dist/esm/ix-card_2.entry.js +4 -4
  529. package/dist/esm/ix-card_2.entry.js.map +1 -1
  530. package/dist/esm/ix-category-filter.entry.js +9 -5
  531. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  532. package/dist/esm/ix-chip.entry.js +4 -4
  533. package/dist/esm/ix-chip.entry.js.map +1 -1
  534. package/dist/esm/ix-col_4.entry.js +4 -4
  535. package/dist/esm/ix-col_4.entry.js.map +1 -1
  536. package/dist/esm/ix-content.entry.js +4 -4
  537. package/dist/esm/ix-css-grid-item.entry.js +1 -1
  538. package/dist/esm/ix-divider.entry.js +1 -1
  539. package/dist/esm/ix-drawer.entry.js +2 -2
  540. package/dist/esm/ix-dropdown-header.entry.js +1 -1
  541. package/dist/esm/ix-dropdown-item.entry.js +4 -4
  542. package/dist/esm/ix-dropdown-item.entry.js.map +1 -1
  543. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  544. package/dist/esm/ix-dropdown.entry.js +12 -144
  545. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  546. package/dist/esm/ix-event-list-item.entry.js +5 -5
  547. package/dist/esm/ix-event-list.entry.js +2 -2
  548. package/dist/esm/ix-expanding-search.entry.js +4 -4
  549. package/dist/esm/ix-filter-chip_2.entry.js +2 -2
  550. package/dist/esm/ix-flip-tile-content.entry.js +1 -1
  551. package/dist/esm/ix-flip-tile.entry.js +4 -4
  552. package/dist/esm/ix-form-field.entry.js +1 -1
  553. package/dist/esm/ix-group-context-menu_2.entry.js +6 -10
  554. package/dist/esm/ix-group-context-menu_2.entry.js.map +1 -1
  555. package/dist/esm/ix-group.entry.js +68 -44
  556. package/dist/esm/ix-group.entry.js.map +1 -1
  557. package/dist/esm/ix-icon-button_2.entry.js +2 -2
  558. package/dist/esm/ix-icon-toggle-button.entry.js +2 -2
  559. package/dist/esm/ix-input-group.entry.js +2 -2
  560. package/dist/esm/ix-key-value-list.entry.js +1 -1
  561. package/dist/esm/ix-kpi.entry.js +3 -3
  562. package/dist/esm/ix-kpi.entry.js.map +1 -1
  563. package/dist/esm/ix-link-button.entry.js +3 -3
  564. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  565. package/dist/esm/ix-map-navigation.entry.js +4 -4
  566. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  567. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  568. package/dist/esm/ix-menu-about-news.entry.js +4 -4
  569. package/dist/esm/ix-menu-avatar.entry.js +3 -3
  570. package/dist/esm/ix-menu-category.entry.js +6 -6
  571. package/dist/esm/ix-menu-expand-icon.entry.js +2 -2
  572. package/dist/esm/ix-menu-expand-icon.entry.js.map +1 -1
  573. package/dist/esm/ix-menu-item.entry.js +14 -14
  574. package/dist/esm/ix-menu-item.entry.js.map +1 -1
  575. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  576. package/dist/esm/ix-menu.entry.js +14 -14
  577. package/dist/esm/ix-menu.entry.js.map +1 -1
  578. package/dist/esm/ix-message-bar.entry.js +1 -1
  579. package/dist/esm/ix-modal-content_2.entry.js +3 -3
  580. package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
  581. package/dist/esm/ix-modal-example.entry.js +1 -1
  582. package/dist/esm/ix-modal-footer.entry.js +2 -2
  583. package/dist/esm/ix-modal-footer.entry.js.map +1 -1
  584. package/dist/esm/ix-modal-loading.entry.js +1 -1
  585. package/dist/esm/ix-modal.entry.js +3 -3
  586. package/dist/esm/ix-modal.entry.js.map +1 -1
  587. package/dist/esm/ix-pagination.entry.js +4 -4
  588. package/dist/esm/ix-pagination.entry.js.map +1 -1
  589. package/dist/esm/ix-pane-layout.entry.js +2 -2
  590. package/dist/esm/ix-pane.entry.js +1 -1
  591. package/dist/esm/ix-pane.entry.js.map +1 -1
  592. package/dist/esm/ix-pill.entry.js +4 -4
  593. package/dist/esm/ix-pill.entry.js.map +1 -1
  594. package/dist/esm/ix-playground-internal.entry.js +1 -1
  595. package/dist/esm/ix-playground-internal.entry.js.map +1 -1
  596. package/dist/esm/ix-push-card.entry.js +1 -1
  597. package/dist/esm/ix-push-card.entry.js.map +1 -1
  598. package/dist/esm/ix-select.entry.js +28 -31
  599. package/dist/esm/ix-select.entry.js.map +1 -1
  600. package/dist/esm/ix-slider.entry.js +22 -15
  601. package/dist/esm/ix-slider.entry.js.map +1 -1
  602. package/dist/esm/ix-split-button-item.entry.js +1 -1
  603. package/dist/esm/ix-tab-item_2.entry.js +74 -44
  604. package/dist/esm/ix-tab-item_2.entry.js.map +1 -1
  605. package/dist/esm/ix-tile.entry.js +4 -4
  606. package/dist/esm/ix-tile.entry.js.map +1 -1
  607. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  608. package/dist/esm/ix-toast.entry.js +2 -2
  609. package/dist/esm/ix-toast.entry.js.map +1 -1
  610. package/dist/esm/ix-toggle-button.entry.js +3 -3
  611. package/dist/esm/ix-toggle.entry.js +3 -3
  612. package/dist/esm/ix-tooltip.entry.js +25 -23
  613. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  614. package/dist/esm/ix-tree-item.entry.js +8 -8
  615. package/dist/esm/ix-tree-item.entry.js.map +1 -1
  616. package/dist/esm/ix-tree.entry.js +21 -7
  617. package/dist/esm/ix-tree.entry.js.map +1 -1
  618. package/dist/esm/ix-upload.entry.js +3 -3
  619. package/dist/esm/ix-upload.entry.js.map +1 -1
  620. package/dist/esm/ix-validation-tooltip.entry.js +3 -3
  621. package/dist/esm/ix-workflow-step.entry.js +3 -3
  622. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  623. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  624. package/dist/esm/ix-workflow-steps.entry.js.map +1 -1
  625. package/dist/esm/{listener-4f3baab5.js → listener-2c562054.js} +2 -2
  626. package/dist/esm/{listener-4f3baab5.js.map → listener-2c562054.js.map} +1 -1
  627. package/dist/esm/loader.js +1 -1
  628. package/dist/esm/{logical-filter-operator-f6701df5.js → logical-filter-operator-d793d1c3.js} +2 -2
  629. package/dist/esm/{logical-filter-operator-f6701df5.js.map → logical-filter-operator-d793d1c3.js.map} +1 -1
  630. package/dist/esm/{service-02cc9011.js → service-c7fc628b.js} +3 -3
  631. package/dist/esm/service-c7fc628b.js.map +1 -0
  632. package/dist/esm/{shadow-dom-60e9243d.js → shadow-dom-cc0bc152.js} +2 -2
  633. package/dist/esm/{shadow-dom-60e9243d.js.map → shadow-dom-cc0bc152.js.map} +1 -1
  634. package/dist/esm/siemens-ix.js +1 -1
  635. package/dist/siemens-ix/index.esm.js +1 -1
  636. package/dist/siemens-ix/index.esm.js.map +1 -1
  637. package/dist/siemens-ix/p-04af3853.entry.js +2 -0
  638. package/dist/siemens-ix/p-04ec538b.entry.js +2 -0
  639. package/dist/siemens-ix/p-04ec538b.entry.js.map +1 -0
  640. package/dist/siemens-ix/{p-68644ee1.entry.js → p-05dc6b2d.entry.js} +2 -2
  641. package/dist/siemens-ix/{p-68644ee1.entry.js.map → p-05dc6b2d.entry.js.map} +1 -1
  642. package/dist/siemens-ix/{p-af099ca4.entry.js → p-0632731e.entry.js} +2 -2
  643. package/dist/siemens-ix/{p-6af4415c.entry.js → p-085d5ec2.entry.js} +2 -2
  644. package/dist/siemens-ix/{p-6af4415c.entry.js.map → p-085d5ec2.entry.js.map} +1 -1
  645. package/dist/siemens-ix/{p-0d2a6886.entry.js → p-091b036d.entry.js} +2 -2
  646. package/dist/siemens-ix/{p-453fa360.entry.js → p-0ef97555.entry.js} +2 -2
  647. package/dist/siemens-ix/{p-453fa360.entry.js.map → p-0ef97555.entry.js.map} +1 -1
  648. package/dist/siemens-ix/{p-2946fd70.entry.js → p-0fafba48.entry.js} +2 -2
  649. package/dist/siemens-ix/{p-7076210b.entry.js → p-1483f65d.entry.js} +2 -2
  650. package/dist/siemens-ix/{p-4f8ac3bf.js → p-157b1b28.js} +1 -1
  651. package/dist/siemens-ix/{p-4f8ac3bf.js.map → p-157b1b28.js.map} +1 -1
  652. package/dist/siemens-ix/p-15f44099.entry.js +2 -0
  653. package/dist/siemens-ix/{p-87e692d9.entry.js.map → p-15f44099.entry.js.map} +1 -1
  654. package/dist/siemens-ix/{p-2908cacd.entry.js → p-17a8aab2.entry.js} +2 -2
  655. package/dist/siemens-ix/{p-2908cacd.entry.js.map → p-17a8aab2.entry.js.map} +1 -1
  656. package/dist/siemens-ix/{p-c1968b80.entry.js → p-1bd98772.entry.js} +2 -2
  657. package/dist/siemens-ix/p-1c3a0b1f.js +2 -0
  658. package/dist/siemens-ix/p-1c3a0b1f.js.map +1 -0
  659. package/dist/siemens-ix/{p-8629db91.entry.js → p-25f1749c.entry.js} +2 -2
  660. package/dist/siemens-ix/{p-5696bb62.entry.js → p-306269ae.entry.js} +2 -2
  661. package/dist/siemens-ix/{p-ae7a7af4.entry.js → p-33a7a26d.entry.js} +2 -2
  662. package/dist/siemens-ix/{p-ae7a7af4.entry.js.map → p-33a7a26d.entry.js.map} +1 -1
  663. package/dist/siemens-ix/{p-712e0ee0.js → p-345e1c73.js} +1 -1
  664. package/dist/siemens-ix/{p-712e0ee0.js.map → p-345e1c73.js.map} +1 -1
  665. package/dist/siemens-ix/p-35fff1e6.entry.js +2 -0
  666. package/dist/siemens-ix/{p-9ebc4fc3.entry.js → p-37229f30.entry.js} +2 -2
  667. package/dist/siemens-ix/{p-9ebc4fc3.entry.js.map → p-37229f30.entry.js.map} +1 -1
  668. package/dist/siemens-ix/p-3dc1294b.entry.js +2 -0
  669. package/dist/siemens-ix/{p-e9a3f58a.entry.js.map → p-3dc1294b.entry.js.map} +1 -1
  670. package/dist/siemens-ix/p-3f59a3c3.entry.js +2 -0
  671. package/dist/siemens-ix/p-3f59a3c3.entry.js.map +1 -0
  672. package/dist/siemens-ix/p-411f51c5.entry.js +2 -0
  673. package/dist/siemens-ix/{p-f78246bd.entry.js → p-44a27b29.entry.js} +2 -2
  674. package/dist/siemens-ix/{p-d03df401.entry.js → p-49d3fc15.entry.js} +2 -2
  675. package/dist/siemens-ix/{p-25ee1b62.js → p-4ac31849.js} +1 -1
  676. package/dist/siemens-ix/{p-25ee1b62.js.map → p-4ac31849.js.map} +1 -1
  677. package/dist/siemens-ix/{p-112069ca.entry.js → p-4e547dd3.entry.js} +2 -2
  678. package/dist/siemens-ix/p-4e547dd3.entry.js.map +1 -0
  679. package/dist/siemens-ix/p-5099c070.entry.js +2 -0
  680. package/dist/siemens-ix/p-5099c070.entry.js.map +1 -0
  681. package/dist/siemens-ix/{p-6b928634.entry.js → p-5351225b.entry.js} +2 -2
  682. package/dist/siemens-ix/p-5351225b.entry.js.map +1 -0
  683. package/dist/siemens-ix/p-5aa0b93c.entry.js.map +1 -1
  684. package/dist/siemens-ix/{p-113cc793.entry.js → p-5af99eaa.entry.js} +2 -2
  685. package/dist/siemens-ix/{p-e30ed20a.entry.js → p-62b089b6.entry.js} +2 -2
  686. package/dist/siemens-ix/{p-e30ed20a.entry.js.map → p-62b089b6.entry.js.map} +1 -1
  687. package/dist/siemens-ix/p-63f0755e.entry.js +2 -0
  688. package/dist/siemens-ix/{p-14a41c8c.entry.js → p-6618b2db.entry.js} +2 -2
  689. package/dist/siemens-ix/{p-0653a145.entry.js → p-67f44540.entry.js} +2 -2
  690. package/dist/siemens-ix/{p-15b3c17e.entry.js → p-6e4c9e3d.entry.js} +2 -2
  691. package/dist/siemens-ix/{p-15b3c17e.entry.js.map → p-6e4c9e3d.entry.js.map} +1 -1
  692. package/dist/siemens-ix/p-7402f42a.entry.js +2 -0
  693. package/dist/siemens-ix/p-7402f42a.entry.js.map +1 -0
  694. package/dist/siemens-ix/{p-53352bfb.entry.js → p-77273517.entry.js} +2 -2
  695. package/dist/siemens-ix/{p-882a0233.entry.js → p-78ac2ff1.entry.js} +2 -2
  696. package/dist/siemens-ix/p-7947ef3d.entry.js +2 -0
  697. package/dist/siemens-ix/{p-fb47546b.entry.js → p-7c2f34f0.entry.js} +2 -2
  698. package/dist/siemens-ix/p-82d33168.entry.js +2 -0
  699. package/dist/siemens-ix/p-82f9d976.entry.js +2 -0
  700. package/dist/siemens-ix/p-82f9d976.entry.js.map +1 -0
  701. package/dist/siemens-ix/{p-85423643.entry.js → p-86bbc005.entry.js} +2 -2
  702. package/dist/siemens-ix/p-86bbc005.entry.js.map +1 -0
  703. package/dist/siemens-ix/p-86fd5922.entry.js +2 -0
  704. package/dist/siemens-ix/p-86fd5922.entry.js.map +1 -0
  705. package/dist/siemens-ix/p-89e48bea.entry.js +2 -0
  706. package/dist/siemens-ix/p-89e48bea.entry.js.map +1 -0
  707. package/dist/siemens-ix/{p-052340f9.entry.js → p-8acc09aa.entry.js} +2 -2
  708. package/dist/siemens-ix/{p-6fd7ecd0.entry.js → p-9079f6c8.entry.js} +2 -2
  709. package/dist/siemens-ix/p-928209e1.entry.js +2 -0
  710. package/dist/siemens-ix/p-928209e1.entry.js.map +1 -0
  711. package/dist/siemens-ix/{p-e8d3cf35.entry.js → p-958c5970.entry.js} +2 -2
  712. package/dist/siemens-ix/{p-e8d3cf35.entry.js.map → p-958c5970.entry.js.map} +1 -1
  713. package/dist/siemens-ix/{p-16b923e9.entry.js → p-9bdda7ff.entry.js} +2 -2
  714. package/dist/siemens-ix/p-a08efce0.entry.js +2 -0
  715. package/dist/siemens-ix/p-a08efce0.entry.js.map +1 -0
  716. package/dist/siemens-ix/p-a4755205.entry.js +2 -0
  717. package/dist/siemens-ix/p-a4755205.entry.js.map +1 -0
  718. package/dist/siemens-ix/{p-2c4c03d4.entry.js → p-aa814811.entry.js} +2 -2
  719. package/dist/siemens-ix/{p-7c36d3fa.js → p-accec846.js} +1 -1
  720. package/dist/siemens-ix/{p-7c36d3fa.js.map → p-accec846.js.map} +1 -1
  721. package/dist/siemens-ix/{p-8d599677.entry.js → p-adee6045.entry.js} +2 -2
  722. package/dist/siemens-ix/{p-8d599677.entry.js.map → p-adee6045.entry.js.map} +1 -1
  723. package/dist/siemens-ix/{p-d95cbd1f.entry.js → p-ae31be0d.entry.js} +2 -2
  724. package/dist/siemens-ix/{p-d95cbd1f.entry.js.map → p-ae31be0d.entry.js.map} +1 -1
  725. package/dist/siemens-ix/{p-feac09bc.entry.js → p-ba24e694.entry.js} +2 -2
  726. package/dist/siemens-ix/p-ba6e955a.js +2 -0
  727. package/dist/siemens-ix/p-ba6e955a.js.map +1 -0
  728. package/dist/siemens-ix/p-c022d6cc.entry.js +2 -0
  729. package/dist/siemens-ix/{p-eb6268a6.entry.js.map → p-c022d6cc.entry.js.map} +1 -1
  730. package/dist/siemens-ix/p-c05a98c8.entry.js +2 -0
  731. package/dist/siemens-ix/{p-29df2e29.entry.js → p-c072ddb5.entry.js} +2 -2
  732. package/dist/siemens-ix/p-c072ddb5.entry.js.map +1 -0
  733. package/dist/siemens-ix/p-c1fe9f3d.entry.js +2 -0
  734. package/dist/siemens-ix/p-c1fe9f3d.entry.js.map +1 -0
  735. package/dist/siemens-ix/{p-c389de85.entry.js → p-c33cee36.entry.js} +2 -2
  736. package/dist/siemens-ix/{p-c389de85.entry.js.map → p-c33cee36.entry.js.map} +1 -1
  737. package/dist/siemens-ix/{p-0b4e398e.entry.js → p-c62966f8.entry.js} +2 -2
  738. package/dist/siemens-ix/{p-0b4e398e.entry.js.map → p-c62966f8.entry.js.map} +1 -1
  739. package/dist/siemens-ix/p-c7280736.entry.js +2 -0
  740. package/dist/siemens-ix/{p-0f7ef743.entry.js.map → p-c7280736.entry.js.map} +1 -1
  741. package/dist/siemens-ix/{p-8d0758c1.entry.js → p-c7e58e9e.entry.js} +2 -2
  742. package/dist/siemens-ix/{p-4430117a.entry.js → p-c81c4b9d.entry.js} +2 -2
  743. package/dist/siemens-ix/p-cc65617d.entry.js +2 -0
  744. package/dist/siemens-ix/p-cc65617d.entry.js.map +1 -0
  745. package/dist/siemens-ix/{p-1a122c76.entry.js → p-d300b332.entry.js} +2 -2
  746. package/dist/siemens-ix/p-d6fc0727.entry.js +2 -0
  747. package/dist/siemens-ix/p-d6fc0727.entry.js.map +1 -0
  748. package/dist/siemens-ix/p-df370362.entry.js +2 -0
  749. package/dist/siemens-ix/p-df370362.entry.js.map +1 -0
  750. package/dist/siemens-ix/{p-5f25e7fd.entry.js → p-e0d03d67.entry.js} +2 -2
  751. package/dist/siemens-ix/{p-5f25e7fd.entry.js.map → p-e0d03d67.entry.js.map} +1 -1
  752. package/dist/siemens-ix/{p-ff1ac5b3.entry.js → p-e14384df.entry.js} +2 -2
  753. package/dist/siemens-ix/{p-fb2b78f7.entry.js → p-e35805d0.entry.js} +2 -2
  754. package/dist/siemens-ix/p-e35805d0.entry.js.map +1 -0
  755. package/dist/siemens-ix/{p-0c8a98cd.js → p-e948bcb0.js} +1 -1
  756. package/dist/siemens-ix/{p-0c8a98cd.js.map → p-e948bcb0.js.map} +1 -1
  757. package/dist/siemens-ix/{p-96a3a750.entry.js → p-e95a5a97.entry.js} +2 -2
  758. package/dist/siemens-ix/p-e95a5a97.entry.js.map +1 -0
  759. package/dist/siemens-ix/p-ed7e76a3.entry.js +2 -0
  760. package/dist/siemens-ix/p-ed7e76a3.entry.js.map +1 -0
  761. package/dist/siemens-ix/{p-bea7c748.entry.js → p-ee96d1eb.entry.js} +2 -2
  762. package/dist/siemens-ix/p-f001ecc1.entry.js +2 -0
  763. package/dist/siemens-ix/p-f001ecc1.entry.js.map +1 -0
  764. package/dist/siemens-ix/p-f06b21f9.entry.js +2 -0
  765. package/dist/siemens-ix/p-f06b21f9.entry.js.map +1 -0
  766. package/dist/siemens-ix/{p-702f9349.js → p-fbe017b7.js} +2 -2
  767. package/dist/siemens-ix/p-fbe017b7.js.map +1 -0
  768. package/dist/siemens-ix/{p-7750e187.entry.js → p-fd5bee44.entry.js} +2 -2
  769. package/dist/siemens-ix/p-fefd5743.entry.js +2 -0
  770. package/dist/siemens-ix/p-fefd5743.entry.js.map +1 -0
  771. package/dist/siemens-ix/{p-dcb3e5be.entry.js → p-ffa856df.entry.js} +2 -2
  772. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  773. package/dist/siemens-ix/siemens-ix.css +5 -1
  774. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  775. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  776. package/dist/types/components/action-card/action-card.d.ts +1 -0
  777. package/dist/types/components/application-header/application-header.d.ts +19 -1
  778. package/dist/types/components/basic-navigation/basic-navigation.d.ts +2 -1
  779. package/dist/types/components/card/card.d.ts +2 -1
  780. package/dist/types/components/category-filter/category-filter.d.ts +9 -9
  781. package/dist/types/components/category-filter/test/category-filter.ct.d.ts +1 -0
  782. package/dist/types/components/dropdown/dropdown.d.ts +1 -0
  783. package/dist/types/components/dropdown-item/dropdown-item.d.ts +2 -2
  784. package/dist/types/components/group/group.d.ts +7 -6
  785. package/dist/types/components/group-item/group-item.d.ts +4 -4
  786. package/dist/types/components/menu-item/menu-item.d.ts +6 -5
  787. package/dist/types/components/push-card/push-card.d.ts +4 -3
  788. package/dist/types/components/slider/slider.d.ts +3 -3
  789. package/dist/types/components/tab-item/tab-item.d.ts +1 -1
  790. package/dist/types/components/tabs/tabs.d.ts +7 -4
  791. package/dist/types/components/tooltip/tooltip.d.ts +9 -10
  792. package/dist/types/components/tree/tree.d.ts +1 -1
  793. package/dist/types/components/tree-item/tree-item.d.ts +3 -3
  794. package/dist/types/components.d.ts +83 -43
  795. package/dist/types/index.d.ts +1 -0
  796. package/hydrate/index.js +994 -416
  797. package/package.json +3 -2
  798. package/scss/_core.scss +5 -0
  799. package/dist/cjs/floating-ui.dom.esm-94b4d17c.js.map +0 -1
  800. package/dist/cjs/service-a42add5f.js.map +0 -1
  801. package/dist/esm/floating-ui.dom.esm-6e7c098f.js.map +0 -1
  802. package/dist/esm/service-02cc9011.js.map +0 -1
  803. package/dist/siemens-ix/p-0f7ef743.entry.js +0 -2
  804. package/dist/siemens-ix/p-112069ca.entry.js.map +0 -1
  805. package/dist/siemens-ix/p-1cff59db.entry.js +0 -2
  806. package/dist/siemens-ix/p-1cff59db.entry.js.map +0 -1
  807. package/dist/siemens-ix/p-1f4b8463.entry.js +0 -2
  808. package/dist/siemens-ix/p-1f4b8463.entry.js.map +0 -1
  809. package/dist/siemens-ix/p-29df2e29.entry.js.map +0 -1
  810. package/dist/siemens-ix/p-2ec7f841.entry.js +0 -2
  811. package/dist/siemens-ix/p-2ec7f841.entry.js.map +0 -1
  812. package/dist/siemens-ix/p-309ac3ad.entry.js +0 -2
  813. package/dist/siemens-ix/p-309ac3ad.entry.js.map +0 -1
  814. package/dist/siemens-ix/p-315f070d.entry.js +0 -2
  815. package/dist/siemens-ix/p-315f070d.entry.js.map +0 -1
  816. package/dist/siemens-ix/p-32375ddb.entry.js +0 -2
  817. package/dist/siemens-ix/p-427676f4.entry.js +0 -2
  818. package/dist/siemens-ix/p-427676f4.entry.js.map +0 -1
  819. package/dist/siemens-ix/p-4344ba99.entry.js +0 -2
  820. package/dist/siemens-ix/p-4344ba99.entry.js.map +0 -1
  821. package/dist/siemens-ix/p-44db3646.entry.js +0 -2
  822. package/dist/siemens-ix/p-4b3facea.entry.js +0 -2
  823. package/dist/siemens-ix/p-4b3facea.entry.js.map +0 -1
  824. package/dist/siemens-ix/p-52857629.entry.js +0 -2
  825. package/dist/siemens-ix/p-52857629.entry.js.map +0 -1
  826. package/dist/siemens-ix/p-60c16878.entry.js +0 -2
  827. package/dist/siemens-ix/p-60c16878.entry.js.map +0 -1
  828. package/dist/siemens-ix/p-6227e62b.entry.js +0 -2
  829. package/dist/siemens-ix/p-6227e62b.entry.js.map +0 -1
  830. package/dist/siemens-ix/p-6b928634.entry.js.map +0 -1
  831. package/dist/siemens-ix/p-702f9349.js.map +0 -1
  832. package/dist/siemens-ix/p-7bfd6cd2.entry.js +0 -2
  833. package/dist/siemens-ix/p-7bfd6cd2.entry.js.map +0 -1
  834. package/dist/siemens-ix/p-7faa148f.entry.js +0 -2
  835. package/dist/siemens-ix/p-85423643.entry.js.map +0 -1
  836. package/dist/siemens-ix/p-87e692d9.entry.js +0 -2
  837. package/dist/siemens-ix/p-92a18c10.entry.js +0 -2
  838. package/dist/siemens-ix/p-96a3a750.entry.js.map +0 -1
  839. package/dist/siemens-ix/p-a536adcb.entry.js +0 -2
  840. package/dist/siemens-ix/p-a536adcb.entry.js.map +0 -1
  841. package/dist/siemens-ix/p-b3b23af7.entry.js +0 -2
  842. package/dist/siemens-ix/p-b3f35666.js +0 -2
  843. package/dist/siemens-ix/p-b3f35666.js.map +0 -1
  844. package/dist/siemens-ix/p-c1222581.entry.js +0 -2
  845. package/dist/siemens-ix/p-c55db6c7.entry.js +0 -2
  846. package/dist/siemens-ix/p-c55db6c7.entry.js.map +0 -1
  847. package/dist/siemens-ix/p-d998415f.entry.js +0 -2
  848. package/dist/siemens-ix/p-d998415f.entry.js.map +0 -1
  849. package/dist/siemens-ix/p-e9a3f58a.entry.js +0 -2
  850. package/dist/siemens-ix/p-eb6268a6.entry.js +0 -2
  851. package/dist/siemens-ix/p-ebb277f0.entry.js +0 -2
  852. package/dist/siemens-ix/p-ebb277f0.entry.js.map +0 -1
  853. package/dist/siemens-ix/p-f07110c6.entry.js +0 -2
  854. package/dist/siemens-ix/p-f07110c6.entry.js.map +0 -1
  855. package/dist/siemens-ix/p-fa53933d.entry.js +0 -2
  856. package/dist/siemens-ix/p-fa53933d.entry.js.map +0 -1
  857. package/dist/siemens-ix/p-fb2b78f7.entry.js.map +0 -1
  858. package/dist/siemens-ix/p-fb4c79c6.entry.js +0 -2
  859. /package/dist/siemens-ix/{p-fb4c79c6.entry.js.map → p-04af3853.entry.js.map} +0 -0
  860. /package/dist/siemens-ix/{p-af099ca4.entry.js.map → p-0632731e.entry.js.map} +0 -0
  861. /package/dist/siemens-ix/{p-0d2a6886.entry.js.map → p-091b036d.entry.js.map} +0 -0
  862. /package/dist/siemens-ix/{p-2946fd70.entry.js.map → p-0fafba48.entry.js.map} +0 -0
  863. /package/dist/siemens-ix/{p-7076210b.entry.js.map → p-1483f65d.entry.js.map} +0 -0
  864. /package/dist/siemens-ix/{p-c1968b80.entry.js.map → p-1bd98772.entry.js.map} +0 -0
  865. /package/dist/siemens-ix/{p-8629db91.entry.js.map → p-25f1749c.entry.js.map} +0 -0
  866. /package/dist/siemens-ix/{p-5696bb62.entry.js.map → p-306269ae.entry.js.map} +0 -0
  867. /package/dist/siemens-ix/{p-b3b23af7.entry.js.map → p-35fff1e6.entry.js.map} +0 -0
  868. /package/dist/siemens-ix/{p-92a18c10.entry.js.map → p-411f51c5.entry.js.map} +0 -0
  869. /package/dist/siemens-ix/{p-f78246bd.entry.js.map → p-44a27b29.entry.js.map} +0 -0
  870. /package/dist/siemens-ix/{p-d03df401.entry.js.map → p-49d3fc15.entry.js.map} +0 -0
  871. /package/dist/siemens-ix/{p-113cc793.entry.js.map → p-5af99eaa.entry.js.map} +0 -0
  872. /package/dist/siemens-ix/{p-c1222581.entry.js.map → p-63f0755e.entry.js.map} +0 -0
  873. /package/dist/siemens-ix/{p-14a41c8c.entry.js.map → p-6618b2db.entry.js.map} +0 -0
  874. /package/dist/siemens-ix/{p-0653a145.entry.js.map → p-67f44540.entry.js.map} +0 -0
  875. /package/dist/siemens-ix/{p-53352bfb.entry.js.map → p-77273517.entry.js.map} +0 -0
  876. /package/dist/siemens-ix/{p-882a0233.entry.js.map → p-78ac2ff1.entry.js.map} +0 -0
  877. /package/dist/siemens-ix/{p-32375ddb.entry.js.map → p-7947ef3d.entry.js.map} +0 -0
  878. /package/dist/siemens-ix/{p-fb47546b.entry.js.map → p-7c2f34f0.entry.js.map} +0 -0
  879. /package/dist/siemens-ix/{p-7faa148f.entry.js.map → p-82d33168.entry.js.map} +0 -0
  880. /package/dist/siemens-ix/{p-052340f9.entry.js.map → p-8acc09aa.entry.js.map} +0 -0
  881. /package/dist/siemens-ix/{p-6fd7ecd0.entry.js.map → p-9079f6c8.entry.js.map} +0 -0
  882. /package/dist/siemens-ix/{p-16b923e9.entry.js.map → p-9bdda7ff.entry.js.map} +0 -0
  883. /package/dist/siemens-ix/{p-2c4c03d4.entry.js.map → p-aa814811.entry.js.map} +0 -0
  884. /package/dist/siemens-ix/{p-feac09bc.entry.js.map → p-ba24e694.entry.js.map} +0 -0
  885. /package/dist/siemens-ix/{p-44db3646.entry.js.map → p-c05a98c8.entry.js.map} +0 -0
  886. /package/dist/siemens-ix/{p-8d0758c1.entry.js.map → p-c7e58e9e.entry.js.map} +0 -0
  887. /package/dist/siemens-ix/{p-4430117a.entry.js.map → p-c81c4b9d.entry.js.map} +0 -0
  888. /package/dist/siemens-ix/{p-1a122c76.entry.js.map → p-d300b332.entry.js.map} +0 -0
  889. /package/dist/siemens-ix/{p-ff1ac5b3.entry.js.map → p-e14384df.entry.js.map} +0 -0
  890. /package/dist/siemens-ix/{p-bea7c748.entry.js.map → p-ee96d1eb.entry.js.map} +0 -0
  891. /package/dist/siemens-ix/{p-7750e187.entry.js.map → p-fd5bee44.entry.js.map} +0 -0
  892. /package/dist/siemens-ix/{p-dcb3e5be.entry.js.map → p-ffa856df.entry.js.map} +0 -0
@@ -6,7 +6,7 @@ import { d as defineCustomElement$4 } from './group-item.js';
6
6
  import { d as defineCustomElement$3 } from './icon-button.js';
7
7
  import { d as defineCustomElement$2 } from './spinner.js';
8
8
 
9
- const groupCss = ":host{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column;position:relative;max-width:19.75rem;border-color:var(--theme-group-item--border-color)}:host .group-header{height:4rem;min-height:4rem;max-height:4rem;border-radius:var(--theme-group--border-radius) var(--theme-group--border-radius) 0 0;display:flex;background-color:var(--theme-group-item--background);color:var(--theme-group-header--color);cursor:pointer}:host .group-header:not(.disabled):not(:disabled){cursor:pointer}:host .group-header:not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover)}:host .group-header:not(.disabled):not(:disabled):hover.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header:not(.disabled):not(:disabled){cursor:pointer}:host .group-header:not(.disabled):not(:disabled):active,:host .group-header:not(.disabled):not(:disabled).active{background-color:var(--theme-group-item--background--active)}:host .group-header:not(.disabled):not(:disabled):active.selected,:host .group-header:not(.disabled):not(:disabled).active.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header:not(.disabled):not(:disabled):focus-visible{border:1px solid var(--theme-color-focus-bdr);border-radius:var(--theme-default-border-radius) var(--theme-default-border-radius) 0px 0px;outline:none}:host .group-header.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header.selected .group-header-selection-indicator{background-color:var(--theme-group-item-indicator--background--selected)}:host .group-header .group-header-selection-indicator{background-color:var(--theme-color-input--focus)}:host .group-header .group-header-selection-indicator.group-header-selection-indicator-item-selected{background-color:var(--theme-group-item-indicator--background--selected)}:host .group-header-clickable{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;width:100%;min-width:0}:host .group-header-selection-indicator{width:0.25rem;border-top-left-radius:var(--theme-group--border-radius)}:host .group-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:row;justify-content:space-between;min-width:0;flex-grow:1;flex-basis:0;padding:0.5rem;padding-left:0}:host .group-header-content .group-header-props-container{width:100%}:host .group-header-content .group-header-title{display:flex;align-items:center;font-size:1rem;font-weight:700;height:1.5rem}:host .group-header-content .group-header-title>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:0}:host .group-header-content .group-subheader{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:1.25rem;font-size:0.875rem;color:var(--theme-group-subheader--color)}:host .expand-icon{padding:0.125rem 0.437rem;color:var(--theme-color-std-text)}:host .btn-expand-header{margin:0.5rem;margin-inline-end:0.25rem;min-width:1.5rem}:host .group-content{display:flex;flex-direction:column;gap:1px;margin-top:1px}:host .footer{visibility:collapse;height:auto;min-height:0}:host .footer-visible{visibility:visible}:host .hidden{display:none}";
9
+ const groupCss = ":host{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column;position:relative;width:19.75rem;min-width:12rem;border-color:var(--theme-group-item--border-color)}:host .group-header{height:4rem;min-height:4rem;max-height:4rem;border-radius:var(--theme-group--border-radius) var(--theme-group--border-radius) 0 0;display:flex;background-color:var(--theme-group-item--background);color:var(--theme-group-header--color);cursor:pointer}:host .group-header:not(.disabled):not(:disabled){cursor:pointer}:host .group-header:not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover)}:host .group-header:not(.disabled):not(:disabled):hover.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header:not(.disabled):not(:disabled){cursor:pointer}:host .group-header:not(.disabled):not(:disabled):active,:host .group-header:not(.disabled):not(:disabled).active{background-color:var(--theme-group-item--background--active)}:host .group-header:not(.disabled):not(:disabled):active.selected,:host .group-header:not(.disabled):not(:disabled).active.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header:not(.disabled):not(:disabled):focus-visible{border:1px solid var(--theme-color-focus-bdr);border-radius:var(--theme-default-border-radius) var(--theme-default-border-radius) 0px 0px;outline:none}:host .group-header.selected{background-color:var(--theme-group-item--background--selected)}:host .group-header.selected .group-header-selection-indicator{background-color:var(--theme-group-item-indicator--background--selected)}:host .group-header .group-header-selection-indicator{background-color:var(--theme-color-input--focus)}:host .group-header .group-header-selection-indicator.group-header-selection-indicator-item-selected{background-color:var(--theme-group-item-indicator--background--selected)}:host .group-header-clickable{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;width:100%;min-width:0}:host .group-header-selection-indicator{width:0.25rem;border-top-left-radius:var(--theme-group--border-radius)}:host .group-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:row;justify-content:space-between;min-width:0;flex-grow:1;flex-basis:0;padding:0.5rem;padding-left:0}:host .group-header-content .group-header-props-container{width:100%}:host .group-header-content .group-header-title{display:flex;align-items:center;font-size:1rem;font-weight:700;height:1.5rem}:host .group-header-content .group-header-title>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:0}:host .group-header-content .group-subheader{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:1.25rem;font-size:0.875rem;color:var(--theme-group-subheader--color)}:host .expand-icon{padding:0.125rem 0.437rem;color:var(--theme-color-std-text)}:host .btn-expand-header{margin:0.5rem;margin-inline-end:0.25rem;min-width:1.5rem}:host .group-content{display:flex;flex-direction:column;gap:1px;margin-top:1px}:host .footer{visibility:collapse;height:auto;min-height:0}:host .footer-visible{visibility:visible}:host .hidden{display:none}";
10
10
  const IxGroupStyle0 = groupCss;
11
11
 
12
12
  const Group = /*@__PURE__*/ proxyCustomElement(class Group extends HTMLElement {
@@ -17,19 +17,24 @@ const Group = /*@__PURE__*/ proxyCustomElement(class Group extends HTMLElement {
17
17
  this.selectGroup = createEvent(this, "selectGroup", 7);
18
18
  this.selectItem = createEvent(this, "selectItem", 7);
19
19
  this.collapsedChanged = createEvent(this, "collapsedChanged", 7);
20
+ this.observer = null;
20
21
  this.suppressHeaderSelection = false;
21
22
  this.header = undefined;
22
23
  this.subHeader = undefined;
23
24
  this.collapsed = true;
24
- this.selected = undefined;
25
+ this.selected = false;
25
26
  this.index = undefined;
26
27
  this.expandOnHeaderClick = false;
27
28
  this.itemSelected = false;
28
- this.dropdownTriggerRef = undefined;
29
29
  this.slotSize = this.groupItems.length;
30
30
  this.footerVisible = false;
31
31
  this.showExpandCollapsedIcon = false;
32
32
  }
33
+ selectedChanged(newSelected) {
34
+ if (newSelected === false) {
35
+ this.changeItemIndex();
36
+ }
37
+ }
33
38
  get dropdownItems() {
34
39
  return Array.from(this.hostElement.querySelectorAll('ix-group-dropdown-item'));
35
40
  }
@@ -37,55 +42,63 @@ const Group = /*@__PURE__*/ proxyCustomElement(class Group extends HTMLElement {
37
42
  return Array.from(this.hostElement.querySelectorAll('ix-group-item:not(.footer)'));
38
43
  }
39
44
  get groupContent() {
40
- return this.hostElement.shadowRoot.querySelector('.group-content');
45
+ var _a;
46
+ return (_a = this.hostElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.group-content');
41
47
  }
42
48
  onExpandClick(event) {
49
+ const oldCollapsed = this.collapsed;
43
50
  this.collapsed = !this.collapsed;
44
- this.collapsedChanged.emit(this.collapsed);
51
+ const { defaultPrevented } = this.collapsedChanged.emit(this.collapsed);
45
52
  event.stopPropagation();
53
+ if (defaultPrevented) {
54
+ this.collapsed = oldCollapsed;
55
+ }
46
56
  }
47
57
  onHeaderClick(event) {
48
- this.setGroupSelection(!this.selected);
49
58
  if (this.suppressHeaderSelection) {
50
59
  this.onExpandClick(event);
60
+ return;
51
61
  }
62
+ this.changeHeaderSelection(!this.selected);
63
+ this.changeItemIndex();
52
64
  }
53
- onItemClick(index) {
54
- if (index === this.index) {
55
- this.index = undefined;
56
- this.selectItem.emit(undefined);
65
+ changeHeaderSelection(newSelection) {
66
+ const oldIsHeaderSelected = this.selected;
67
+ const newIsHeaderSelected = newSelection;
68
+ this.selected = newIsHeaderSelected;
69
+ const { defaultPrevented } = this.selectGroup.emit(newIsHeaderSelected);
70
+ if (defaultPrevented) {
71
+ this.selected = oldIsHeaderSelected;
72
+ return;
57
73
  }
58
- else {
59
- this.index = index;
60
- this.selectItem.emit(index);
61
- }
62
- if (this.index >= 0) {
63
- this.itemSelected = true;
74
+ }
75
+ changeItemIndex(index) {
76
+ const oldIndex = this.index;
77
+ const newIndex = index === this.index ? undefined : index;
78
+ if (this.index === newIndex) {
79
+ return;
64
80
  }
65
- else
66
- this.itemSelected = false;
67
- this.setGroupSelection(false);
68
- }
69
- setGroupSelection(selection) {
70
- if (!this.suppressHeaderSelection) {
71
- this.selected = selection;
72
- this.selectGroup.emit(this.selected);
81
+ this.index = newIndex;
82
+ const { defaultPrevented } = this.selectItem.emit(newIndex);
83
+ if (defaultPrevented) {
84
+ this.index = oldIndex;
85
+ return;
73
86
  }
87
+ const items = this.groupItems;
88
+ items.forEach((item, i) => {
89
+ item.selected = i === this.index;
90
+ });
91
+ this.itemSelected = items.some((item) => item.selected);
74
92
  }
75
93
  onSlotChange() {
76
- const slot = this.hostElement.shadowRoot.querySelector('slot[name="footer"]');
94
+ var _a;
95
+ const slot = (_a = this.hostElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="footer"]');
77
96
  if (slot) {
78
97
  this.footerVisible = hasSlottedElements(slot);
79
98
  }
80
99
  }
81
100
  componentWillRender() {
82
101
  this.groupItems.forEach((item, index) => {
83
- if (this.selected === true) {
84
- item.selected = false;
85
- this.index = undefined;
86
- this.itemSelected = false;
87
- return;
88
- }
89
102
  item.selected = index === this.index;
90
103
  item.index = index;
91
104
  });
@@ -94,41 +107,52 @@ const Group = /*@__PURE__*/ proxyCustomElement(class Group extends HTMLElement {
94
107
  this.observer = createMutationObserver(() => {
95
108
  this.slotSize = this.groupItems.length;
96
109
  });
110
+ if (!this.groupContent) {
111
+ return;
112
+ }
97
113
  this.observer.observe(this.groupContent, {
98
114
  childList: true,
99
115
  });
100
- this.groupContent.addEventListener('selectedChanged', (evt) => {
101
- this.onItemClick(evt.detail.index);
102
- });
103
116
  }
104
117
  disconnectedCallback() {
105
118
  if (this.observer) {
106
119
  this.observer.disconnect();
107
120
  }
108
121
  }
122
+ onItemClicked(event) {
123
+ if (event.target instanceof HTMLElement) {
124
+ const item = event.target;
125
+ const index = this.groupItems.indexOf(item);
126
+ this.changeItemIndex(index);
127
+ }
128
+ }
109
129
  render() {
110
- return (h(Host, { key: 'a6c09009cd058c03a46699d1514a51e5befb5018' }, h("div", { key: '7d0802bd7566f7d47062e91a8264b6d783a8a44b', class: {
130
+ return (h(Host, { key: '812601d494909804a300f73d14e2e423e2c5cce9' }, h("div", { key: '2725ce086aee61abdfbf9e2db6bb1c1c1f936cc9', class: {
111
131
  'group-header': true,
112
132
  expand: !this.collapsed,
113
133
  selected: this.selected,
114
- }, tabindex: "0" }, h("div", { key: '3f2e851b6d35893c2a3393348474e6cefa06ae79', class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { key: 'dfed4e7962f4f3b071cc6b8d64b4efa06f139ebb', class: {
134
+ }, tabindex: "0" }, h("div", { key: '359308aacda0079e12bb33273b93aad571b2568e', class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { key: 'e770dd6b563036aef00730a5d497cc8b777bf1f9', class: {
115
135
  'group-header-selection-indicator': true,
116
136
  'group-header-selection-indicator-item-selected': this.itemSelected,
117
- } }), h("div", { key: 'afe8c9b382b2506f1c86a56abe4b29da07c52b9f', class: "btn-expand-header" }, h("ix-icon", { key: 'de63d1492943de8e4bcf2f1f76b61feab1beea50', "data-testid": "expand-collapsed-icon", class: {
137
+ } }), h("div", { key: '52d7d439f1f2af260bfa707a418bdfe5979ade02', class: "btn-expand-header" }, h("ix-icon", { key: 'ab70e0357f2cd002412f950b6a770825f73e481d', "data-testid": "expand-collapsed-icon", class: {
118
138
  hidden: !this.showExpandCollapsedIcon,
119
- }, name: this.collapsed ? 'chevron-right-small' : 'chevron-down-small', onClick: (e) => this.onExpandClick(e) })), h("div", { key: '5ca15ab167295402b4fc5f226b14697777b3abba', class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { key: '2f78d4b163682214e6325b49ce69f2f737da0399', name: "header" }))), h("ix-group-context-menu", { key: '56a4bcd4e623012de4a7a1bcc66bb1f280f66e90' }, h("slot", { key: '439f0ba04c6ec4543f740ca70b965cd50eae669f', name: "dropdown" }))), h("div", { key: '3cd56e5f026a12ad05ccf85760d2bb4a72ad47d4', class: {
139
+ }, name: this.collapsed ? 'chevron-right-small' : 'chevron-down-small', onClick: (e) => this.onExpandClick(e) })), h("div", { key: 'ec04f3094c5949cd96dc1bcbf00434dff3012be4', class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { key: '3a056192f8217060b9ef9f90cba385028b26c04e', name: "header" }))), h("ix-group-context-menu", { key: 'd3d14e900f4e6f6cbbbf27d76eab427f5149f900' }, h("slot", { key: 'c538f3b3fd67f4d486a94c304f9cd938f0337af2', name: "dropdown" }))), h("div", { key: 'ee27945481e3994204885fd6e0e6bd6f1601aaf5', class: {
120
140
  'group-content': true,
121
- } }, h("div", { key: 'c4fb98c378079efb91edc03c5e88e7a01b33a223', style: {
141
+ } }, h("div", { key: '5cd463be44651ec638b54ea469aa3dc077e3b04f', style: {
122
142
  display: this.collapsed ? 'none' : 'contents',
123
- } }, h("slot", { key: 'f77631e111614e753f99ec942ff88142c2739c36', onSlotchange: () => {
124
- const slot = this.hostElement.shadowRoot.querySelector('slot:not([name])');
143
+ } }, h("slot", { key: '1565d5c06d317e41f4d4851c69cd38af88e4918c', onSlotchange: () => {
144
+ var _a;
145
+ const slot = (_a = this.hostElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot:not([name])');
125
146
  this.showExpandCollapsedIcon = hasSlottedElements(slot);
126
- } }), h("ix-group-item", { key: '9f84823ab01988af424b0b3beff5acc7ec963d01', suppressSelection: true, focusable: false, class: {
147
+ } }), h("ix-group-item", { key: '5d5632cba350db31eb5fa1f64fe3d33e6e0e2748', suppressSelection: true, focusable: false, class: {
127
148
  footer: true,
128
149
  'footer-visible': this.footerVisible,
129
- } }, h("slot", { key: '14b0b37dfd590c88021c8c4c714a362dc0e82188', name: "footer", onSlotchange: () => this.onSlotChange() }))))));
150
+ } }, h("slot", { key: '13741bc640b4bed51ffaa9e414cfc0c9efe06444', name: "footer", onSlotchange: () => this.onSlotChange() }))))));
130
151
  }
131
152
  get hostElement() { return this; }
153
+ static get watchers() { return {
154
+ "selected": ["selectedChanged"]
155
+ }; }
132
156
  static get style() { return IxGroupStyle0; }
133
157
  }, [1, "ix-group", {
134
158
  "suppressHeaderSelection": [4, "suppress-header-selection"],
@@ -139,10 +163,11 @@ const Group = /*@__PURE__*/ proxyCustomElement(class Group extends HTMLElement {
139
163
  "index": [1538],
140
164
  "expandOnHeaderClick": [4, "expand-on-header-click"],
141
165
  "itemSelected": [32],
142
- "dropdownTriggerRef": [32],
143
166
  "slotSize": [32],
144
167
  "footerVisible": [32],
145
168
  "showExpandCollapsedIcon": [32]
169
+ }, [[0, "selectedChanged", "onItemClicked"]], {
170
+ "selected": ["selectedChanged"]
146
171
  }]);
147
172
  function defineCustomElement$1() {
148
173
  if (typeof customElements === "undefined") {
@@ -1 +1 @@
1
- {"file":"ix-group.js","mappings":";;;;;;;;AAAA,MAAM,QAAQ,GAAG,irGAAirG,CAAC;AACnsG,sBAAe,QAAQ;;MC0BV,KAAK;;;;;;;;uCAMkB,KAAK;;;yBAea,IAAI;;;mCAgB1B,KAAK;4BAiBX,KAAK;;wBAET,IAAI,CAAC,UAAU,CAAC,MAAM;6BACjB,KAAK;uCAEK,KAAK;;IAIxC,IAAI,aAAa;QACf,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAC5D,CAAC;KACH;IAED,IAAI,UAAU;QACZ,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAChE,CAAC;KACH;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;KACpE;IAEO,aAAa,CAAC,KAAY;QAChC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QAEjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB;IAEO,aAAa,CAAC,KAAY;QAChC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,IAAI,CAAC,uBAAuB,EAAE;YAChC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SAC3B;KACF;IAEO,WAAW,CAAC,KAAa;QAC/B,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC7B;QAED,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;YACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B;;YAAM,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAEjC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;KAC/B;IAEO,iBAAiB,CAAC,SAAkB;QAC1C,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACjC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtC;KACF;IAEO,YAAY;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CACpD,qBAAqB,CACtB,CAAC;QAEF,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;SAC/C;KACF;IAED,mBAAmB;QACjB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK;YAClC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;gBAC1B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,OAAO;aACR;YACD,IAAI,CAAC,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACpB,CAAC,CAAC;KACJ;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC;YACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SACxC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;YACvC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAChC,iBAAiB,EACjB,CAAC,GAAwC;YACvC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACpC,CACF,CAAC;KACH;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;SAC5B;KACF;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,4DACE,KAAK,EAAE;gBACL,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,EACD,QAAQ,EAAC,GAAG,IAEZ,4DACE,KAAK,EAAC,wBAAwB,EAC9B,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAErC,4DACE,KAAK,EAAE;gBACL,kCAAkC,EAAE,IAAI;gBACxC,gDAAgD,EAC9C,IAAI,CAAC,YAAY;aACpB,GACI,EACP,4DAAK,KAAK,EAAC,mBAAmB,IAC5B,+EACc,uBAAuB,EACnC,KAAK,EAAE;gBACL,MAAM,EAAE,CAAC,IAAI,CAAC,uBAAuB;aACtC,EACD,IAAI,EACF,IAAI,CAAC,SAAS,GAAG,qBAAqB,GAAG,oBAAoB,EAE/D,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAC5B,CACP,EAEN,4DAAK,KAAK,EAAC,sBAAsB,IAC9B,IAAI,CAAC,MAAM,IACV,WAAK,KAAK,EAAC,8BAA8B,IACvC,WAAK,KAAK,EAAC,oBAAoB,IAC7B,YAAM,KAAK,EAAE,IAAI,CAAC,MAAM,IAAG,IAAI,CAAC,MAAM,CAAQ,CAC1C,EACN,WAAK,KAAK,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,IAC/C,IAAI,CAAC,SAAS,CACX,CACF,IACJ,IAAI,EACR,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACF,EACN,gFACE,6DAAM,IAAI,EAAC,UAAU,GAAQ,CACP,CACpB,EACN,4DACE,KAAK,EAAE;gBACL,eAAe,EAAE,IAAI;aACtB,IAED,4DACE,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,UAAU;aAC9C,IAED,6DACE,YAAY,EAAE;gBACZ,MAAM,IAAI,GACR,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;gBAChE,IAAI,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;aACzD,GACK,EACR,sEACE,iBAAiB,EAAE,IAAI,EACvB,SAAS,EAAE,KAAK,EAChB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,gBAAgB,EAAE,IAAI,CAAC,aAAa;aACrC,IAED,6DACE,IAAI,EAAC,QAAQ,EACb,YAAY,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,GACjC,CACM,CACZ,CACF,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/group/group.scss?tag=ix-group&encapsulation=shadow","src/components/group/group.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/hover';\n@import 'mixins/text-truncation';\n\n:host {\n @include ellipsis;\n\n display: flex;\n flex-direction: column;\n position: relative;\n max-width: 19.75rem;\n border-color: var(--theme-group-item--border-color);\n\n .group-header {\n height: 4rem;\n min-height: 4rem;\n max-height: 4rem;\n border-radius: var(--theme-group--border-radius)\n var(--theme-group--border-radius) 0 0;\n display: flex;\n background-color: var(--theme-group-item--background);\n color: var(--theme-group-header--color);\n\n cursor: pointer;\n\n @include hover {\n background-color: var(--theme-group-item--background--hover);\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n }\n }\n\n @include active {\n background-color: var(--theme-group-item--background--active);\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n }\n }\n\n @include focus-visible {\n border: 1px solid var(--theme-color-focus-bdr);\n border-radius: var(--theme-default-border-radius)\n var(--theme-default-border-radius) 0px 0px;\n outline: none;\n }\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n\n .group-header-selection-indicator {\n background-color: var(\n --theme-group-item-indicator--background--selected\n );\n }\n }\n\n .group-header-selection-indicator {\n background-color: var(--theme-color-input--focus);\n\n &.group-header-selection-indicator-item-selected {\n background-color: var(\n --theme-group-item-indicator--background--selected\n );\n }\n }\n }\n\n .group-header-clickable {\n @include ellipsis;\n\n display: flex;\n width: 100%;\n min-width: 0;\n }\n\n .group-header-selection-indicator {\n width: $tiny-space;\n border-top-left-radius: var(--theme-group--border-radius);\n }\n\n .group-header-content {\n @include ellipsis;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n min-width: 0;\n flex-grow: 1;\n flex-basis: 0;\n padding: 0.5rem;\n padding-left: 0;\n\n .group-header-props-container {\n width: 100%;\n }\n\n .group-header-title {\n display: flex;\n align-items: center;\n font-size: 1rem;\n font-weight: $font-weight-bold;\n height: 1.5rem;\n\n & > * {\n @include ellipsis;\n\n min-width: 0;\n padding-right: 0;\n }\n }\n\n .group-subheader {\n @include ellipsis();\n\n height: 1.25rem;\n font-size: 0.875rem;\n color: var(--theme-group-subheader--color);\n }\n }\n\n .expand-icon {\n padding: 0.125rem 0.437rem;\n color: var(--theme-color-std-text);\n }\n\n .btn-expand-header {\n margin: $small-space;\n margin-inline-end: $tiny-space;\n min-width: 1.5rem;\n }\n\n .group-content {\n display: flex;\n flex-direction: column;\n gap: 1px;\n margin-top: 1px;\n }\n\n .footer {\n visibility: collapse;\n height: auto;\n min-height: 0;\n }\n\n .footer-visible {\n visibility: visible;\n }\n\n .hidden {\n display: none;\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 Prop,\n State,\n} from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { hasSlottedElements } from '../utils/shadow-dom';\n\n@Component({\n tag: 'ix-group',\n styleUrl: 'group.scss',\n shadow: true,\n})\nexport class Group {\n @Element() hostElement!: HTMLIxGroupElement;\n\n /**\n * Prevent header from being selectable\n */\n @Prop() suppressHeaderSelection = false;\n\n /**\n * Group header\n */\n @Prop() header: string;\n\n /**\n * Group header subtitle\n */\n @Prop() subHeader: string;\n\n /**\n * Whether the group is collapsed or expanded. Defaults to true.\n */\n @Prop({ mutable: true, reflect: true }) collapsed = true;\n\n /**\n * Whether the group is selected.\n */\n @Prop({ mutable: true, reflect: true }) selected: boolean;\n\n /**\n * The index of the selected group entry.\n * If undefined no group item is selected.\n */\n @Prop({ mutable: true, reflect: true }) index: number;\n\n /**\n * Expand the group if the header is clicked\n */\n @Prop() expandOnHeaderClick = false;\n\n /**\n * Emits when whole group gets selected.\n */\n @Event() selectGroup: EventEmitter<boolean>;\n\n /**\n * Emits when group item gets selected.\n */\n @Event() selectItem: EventEmitter<number>;\n\n /**\n * Group collapsed\n */\n @Event() collapsedChanged: EventEmitter<boolean>;\n\n @State() itemSelected = false;\n @State() dropdownTriggerRef: HTMLElement;\n @State() slotSize = this.groupItems.length;\n @State() footerVisible = false;\n\n @State() showExpandCollapsedIcon = false;\n\n private observer: MutationObserver;\n\n get dropdownItems() {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-dropdown-item')\n );\n }\n\n get groupItems(): Array<HTMLIxGroupItemElement> {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-item:not(.footer)')\n );\n }\n\n get groupContent() {\n return this.hostElement.shadowRoot.querySelector('.group-content');\n }\n\n private onExpandClick(event: Event) {\n this.collapsed = !this.collapsed;\n\n this.collapsedChanged.emit(this.collapsed);\n event.stopPropagation();\n }\n\n private onHeaderClick(event: Event) {\n this.setGroupSelection(!this.selected);\n\n if (this.suppressHeaderSelection) {\n this.onExpandClick(event);\n }\n }\n\n private onItemClick(index: number) {\n if (index === this.index) {\n this.index = undefined;\n this.selectItem.emit(undefined);\n } else {\n this.index = index;\n this.selectItem.emit(index);\n }\n\n if (this.index >= 0) {\n this.itemSelected = true;\n } else this.itemSelected = false;\n\n this.setGroupSelection(false);\n }\n\n private setGroupSelection(selection: boolean) {\n if (!this.suppressHeaderSelection) {\n this.selected = selection;\n this.selectGroup.emit(this.selected);\n }\n }\n\n private onSlotChange() {\n const slot = this.hostElement.shadowRoot.querySelector(\n 'slot[name=\"footer\"]'\n );\n\n if (slot) {\n this.footerVisible = hasSlottedElements(slot);\n }\n }\n\n componentWillRender() {\n this.groupItems.forEach((item, index) => {\n if (this.selected === true) {\n item.selected = false;\n this.index = undefined;\n this.itemSelected = false;\n return;\n }\n item.selected = index === this.index;\n item.index = index;\n });\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver(() => {\n this.slotSize = this.groupItems.length;\n });\n\n this.observer.observe(this.groupContent, {\n childList: true,\n });\n\n this.groupContent.addEventListener(\n 'selectedChanged',\n (evt: CustomEvent<HTMLIxGroupItemElement>) => {\n this.onItemClick(evt.detail.index);\n }\n );\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'group-header': true,\n expand: !this.collapsed,\n selected: this.selected,\n }}\n tabindex=\"0\"\n >\n <div\n class=\"group-header-clickable\"\n onClick={(e) => this.onHeaderClick(e)}\n >\n <div\n class={{\n 'group-header-selection-indicator': true,\n 'group-header-selection-indicator-item-selected':\n this.itemSelected,\n }}\n ></div>\n <div class=\"btn-expand-header\">\n <ix-icon\n data-testid=\"expand-collapsed-icon\"\n class={{\n hidden: !this.showExpandCollapsedIcon,\n }}\n name={\n this.collapsed ? 'chevron-right-small' : 'chevron-down-small'\n }\n onClick={(e) => this.onExpandClick(e)}\n ></ix-icon>\n </div>\n\n <div class=\"group-header-content\">\n {this.header ? (\n <div class=\"group-header-props-container\">\n <div class=\"group-header-title\">\n <span title={this.header}>{this.header}</span>\n </div>\n <div class=\"group-subheader\" title={this.subHeader}>\n {this.subHeader}\n </div>\n </div>\n ) : null}\n <slot name=\"header\"></slot>\n </div>\n </div>\n <ix-group-context-menu>\n <slot name=\"dropdown\"></slot>\n </ix-group-context-menu>\n </div>\n <div\n class={{\n 'group-content': true,\n }}\n >\n <div\n style={{\n display: this.collapsed ? 'none' : 'contents',\n }}\n >\n <slot\n onSlotchange={() => {\n const slot =\n this.hostElement.shadowRoot.querySelector('slot:not([name])');\n this.showExpandCollapsedIcon = hasSlottedElements(slot);\n }}\n ></slot>\n <ix-group-item\n suppressSelection={true}\n focusable={false}\n class={{\n footer: true,\n 'footer-visible': this.footerVisible,\n }}\n >\n <slot\n name=\"footer\"\n onSlotchange={() => this.onSlotChange()}\n ></slot>\n </ix-group-item>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-group.js","mappings":"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","names":[],"sources":["src/components/group/group.scss?tag=ix-group&encapsulation=shadow","src/components/group/group.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/mixins/fonts';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n:host {\n @include ellipsis;\n\n display: flex;\n flex-direction: column;\n position: relative;\n width: 19.75rem;\n min-width: 12rem;\n border-color: var(--theme-group-item--border-color);\n\n .group-header {\n height: 4rem;\n min-height: 4rem;\n max-height: 4rem;\n border-radius: var(--theme-group--border-radius)\n var(--theme-group--border-radius) 0 0;\n display: flex;\n background-color: var(--theme-group-item--background);\n color: var(--theme-group-header--color);\n\n cursor: pointer;\n\n @include hover {\n background-color: var(--theme-group-item--background--hover);\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n }\n }\n\n @include active {\n background-color: var(--theme-group-item--background--active);\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n }\n }\n\n @include focus-visible {\n border: 1px solid var(--theme-color-focus-bdr);\n border-radius: var(--theme-default-border-radius)\n var(--theme-default-border-radius) 0px 0px;\n outline: none;\n }\n\n &.selected {\n background-color: var(--theme-group-item--background--selected);\n\n .group-header-selection-indicator {\n background-color: var(\n --theme-group-item-indicator--background--selected\n );\n }\n }\n\n .group-header-selection-indicator {\n background-color: var(--theme-color-input--focus);\n\n &.group-header-selection-indicator-item-selected {\n background-color: var(\n --theme-group-item-indicator--background--selected\n );\n }\n }\n }\n\n .group-header-clickable {\n @include ellipsis;\n\n display: flex;\n width: 100%;\n min-width: 0;\n }\n\n .group-header-selection-indicator {\n width: $tiny-space;\n border-top-left-radius: var(--theme-group--border-radius);\n }\n\n .group-header-content {\n @include ellipsis;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n min-width: 0;\n flex-grow: 1;\n flex-basis: 0;\n padding: 0.5rem;\n padding-left: 0;\n\n .group-header-props-container {\n width: 100%;\n }\n\n .group-header-title {\n display: flex;\n align-items: center;\n font-size: 1rem;\n font-weight: $font-weight-bold;\n height: 1.5rem;\n\n & > * {\n @include ellipsis;\n\n min-width: 0;\n padding-right: 0;\n }\n }\n\n .group-subheader {\n @include ellipsis();\n\n height: 1.25rem;\n font-size: 0.875rem;\n color: var(--theme-group-subheader--color);\n }\n }\n\n .expand-icon {\n padding: 0.125rem 0.437rem;\n color: var(--theme-color-std-text);\n }\n\n .btn-expand-header {\n margin: $small-space;\n margin-inline-end: $tiny-space;\n min-width: 1.5rem;\n }\n\n .group-content {\n display: flex;\n flex-direction: column;\n gap: 1px;\n margin-top: 1px;\n }\n\n .footer {\n visibility: collapse;\n height: auto;\n min-height: 0;\n }\n\n .footer-visible {\n visibility: visible;\n }\n\n .hidden {\n display: none;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\nimport { hasSlottedElements } from '../utils/shadow-dom';\n\n@Component({\n tag: 'ix-group',\n styleUrl: 'group.scss',\n shadow: true,\n})\nexport class Group {\n @Element() hostElement!: HTMLIxGroupElement;\n\n /**\n * Prevent header from being selectable\n */\n @Prop() suppressHeaderSelection = false;\n\n /**\n * Group header\n */\n @Prop() header?: string;\n\n /**\n * Group header subtitle\n */\n @Prop() subHeader?: string;\n\n /**\n * Whether the group is collapsed or expanded. Defaults to true.\n */\n @Prop({ mutable: true, reflect: true }) collapsed = true;\n\n /**\n * Whether the group is selected.\n */\n @Prop({ mutable: true, reflect: true }) selected = false;\n\n /**\n * The index of the selected group entry.\n * If undefined no group item is selected.\n */\n @Prop({ mutable: true, reflect: true }) index?: number;\n\n /**\n * Expand the group if the header is clicked\n */\n @Prop() expandOnHeaderClick = false;\n\n /**\n * Emits when whole group gets selected.\n */\n @Event() selectGroup!: EventEmitter<boolean>;\n\n /**\n * Emits when group item gets selected.\n */\n @Event() selectItem!: EventEmitter<number>;\n\n /**\n * Group collapsed\n */\n @Event() collapsedChanged!: EventEmitter<boolean>;\n\n @State() itemSelected = false;\n @State() slotSize = this.groupItems.length;\n @State() footerVisible = false;\n\n @State() showExpandCollapsedIcon = false;\n\n private observer: MutationObserver = null!;\n\n @Watch('selected')\n selectedChanged(newSelected: boolean) {\n if (newSelected === false) {\n this.changeItemIndex();\n }\n }\n\n get dropdownItems() {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-dropdown-item')\n );\n }\n\n get groupItems(): Array<HTMLIxGroupItemElement> {\n return Array.from(\n this.hostElement.querySelectorAll('ix-group-item:not(.footer)')\n );\n }\n\n get groupContent() {\n return this.hostElement.shadowRoot?.querySelector('.group-content');\n }\n\n private onExpandClick(event: Event) {\n const oldCollapsed = this.collapsed;\n this.collapsed = !this.collapsed;\n const { defaultPrevented } = this.collapsedChanged.emit(this.collapsed);\n event.stopPropagation();\n\n if (defaultPrevented) {\n this.collapsed = oldCollapsed;\n }\n }\n\n private onHeaderClick(event: Event) {\n if (this.suppressHeaderSelection) {\n this.onExpandClick(event);\n return;\n }\n\n this.changeHeaderSelection(!this.selected);\n this.changeItemIndex();\n }\n\n private changeHeaderSelection(newSelection: boolean) {\n const oldIsHeaderSelected = this.selected;\n const newIsHeaderSelected = newSelection;\n this.selected = newIsHeaderSelected;\n const { defaultPrevented } = this.selectGroup.emit(newIsHeaderSelected);\n\n if (defaultPrevented) {\n this.selected = oldIsHeaderSelected;\n return;\n }\n }\n\n private changeItemIndex(index?: number) {\n const oldIndex = this.index;\n const newIndex = index === this.index ? undefined : index;\n\n if (this.index === newIndex) {\n return;\n }\n\n this.index = newIndex;\n const { defaultPrevented } = this.selectItem.emit(newIndex);\n if (defaultPrevented) {\n this.index = oldIndex;\n return;\n }\n\n const items = this.groupItems;\n items.forEach((item, i) => {\n item.selected = i === this.index;\n });\n\n this.itemSelected = items.some((item) => item.selected);\n }\n\n private onSlotChange() {\n const slot = this.hostElement.shadowRoot?.querySelector(\n 'slot[name=\"footer\"]'\n );\n\n if (slot) {\n this.footerVisible = hasSlottedElements(slot);\n }\n }\n\n componentWillRender() {\n this.groupItems.forEach((item, index) => {\n item.selected = index === this.index;\n item.index = index;\n });\n }\n\n componentDidLoad() {\n this.observer = createMutationObserver(() => {\n this.slotSize = this.groupItems.length;\n });\n if (!this.groupContent) {\n return;\n }\n this.observer.observe(this.groupContent, {\n childList: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n @Listen('selectedChanged')\n onItemClicked(event: CustomEvent) {\n if (event.target instanceof HTMLElement) {\n const item = event.target as HTMLIxGroupItemElement;\n const index = this.groupItems.indexOf(item);\n this.changeItemIndex(index);\n }\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'group-header': true,\n expand: !this.collapsed,\n selected: this.selected,\n }}\n tabindex=\"0\"\n >\n <div\n class=\"group-header-clickable\"\n onClick={(e) => this.onHeaderClick(e)}\n >\n <div\n class={{\n 'group-header-selection-indicator': true,\n 'group-header-selection-indicator-item-selected':\n this.itemSelected,\n }}\n ></div>\n <div class=\"btn-expand-header\">\n <ix-icon\n data-testid=\"expand-collapsed-icon\"\n class={{\n hidden: !this.showExpandCollapsedIcon,\n }}\n name={\n this.collapsed ? 'chevron-right-small' : 'chevron-down-small'\n }\n onClick={(e) => this.onExpandClick(e)}\n ></ix-icon>\n </div>\n\n <div class=\"group-header-content\">\n {this.header ? (\n <div class=\"group-header-props-container\">\n <div class=\"group-header-title\">\n <span title={this.header}>{this.header}</span>\n </div>\n <div class=\"group-subheader\" title={this.subHeader}>\n {this.subHeader}\n </div>\n </div>\n ) : null}\n <slot name=\"header\"></slot>\n </div>\n </div>\n <ix-group-context-menu>\n <slot name=\"dropdown\"></slot>\n </ix-group-context-menu>\n </div>\n <div\n class={{\n 'group-content': true,\n }}\n >\n <div\n style={{\n display: this.collapsed ? 'none' : 'contents',\n }}\n >\n <slot\n onSlotchange={() => {\n const slot =\n this.hostElement.shadowRoot?.querySelector(\n 'slot:not([name])'\n );\n this.showExpandCollapsedIcon = hasSlottedElements(slot);\n }}\n ></slot>\n <ix-group-item\n suppressSelection={true}\n focusable={false}\n class={{\n footer: true,\n 'footer-visible': this.footerVisible,\n }}\n >\n <slot\n name=\"footer\"\n onSlotchange={() => this.onSlotChange()}\n ></slot>\n </ix-group-item>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -71,7 +71,7 @@ const IconToggleButton = /*@__PURE__*/ proxyCustomElement(class IconToggleButton
71
71
  extraClasses: Object.assign({ 'icon-button': true }, this.getIconSizeClass()),
72
72
  };
73
73
  console.log(baseButtonProps, this.disabled, this.loading);
74
- return (h(Host, { key: '8e9838c22d5fced8887a6d6381394875b81433ac', class: Object.assign(Object.assign({}, this.getIconSizeClass()), { disabled: this.disabled || this.loading }) }, h(BaseIconButton, Object.assign({ key: '5d758620c26f25e52825a2319320a770406a4cb7' }, baseButtonProps))));
74
+ return (h(Host, { key: 'd20169e8c23f65f145a9c7029a2691c84a3e9933', class: Object.assign(Object.assign({}, this.getIconSizeClass()), { disabled: this.disabled || this.loading }) }, h(BaseIconButton, Object.assign({ key: '07e82b2f5e78c8705500cfdece4ceb57c14b8aa0' }, baseButtonProps))));
75
75
  }
76
76
  get hostElement() { return this; }
77
77
  static get watchers() { return {
@@ -123,7 +123,7 @@ const InputGroup = /*@__PURE__*/ proxyCustomElement(class InputGroup extends HTM
123
123
  return width;
124
124
  }
125
125
  render() {
126
- return (h(Host, { key: '94b064c7c5cb011576c94a27846843f3c919ceac', class: { disabled: this.disabled } }, h("div", { key: 'a35679f97300d5070505e07c1a67591a578864b5', class: "group group-start" }, h("slot", { key: '6c1541e103b20d36ddc024399cc55284bebe239e', name: "input-start" })), h("slot", { key: 'a1d004e8ced49abd3ed2f861018af0d954e294f7' }), h("div", { key: '6e712535611adcfd25e91f1136c7a89808edaf0a', class: "group group-end" }, h("slot", { key: 'bf4302e8ecf94f5a83db1c5e3c9636c6c8a2e67e', name: "input-end" }))));
126
+ return (h(Host, { key: '604ccecde3e72a8c5ff1eed248433d820ddaca17', class: { disabled: this.disabled } }, h("div", { key: '6ce2ae4b208e39806e1b8c56007284fad21d76f8', class: "group group-start" }, h("slot", { key: '742724f4b4451a95a0703475956958008be8891c', name: "input-start" })), h("slot", { key: 'c1bfd62e16fbab1a74ed1c14f2eed18bfdad01f9' }), h("div", { key: '0b7a3a9990f3d8d7575d54dcb9bbadbba7c76ee8', class: "group group-end" }, h("slot", { key: 'bae1040ab929585017edcbc77d2e618c688910c8', name: "input-end" }))));
127
127
  }
128
128
  get hostElement() { return this; }
129
129
  static get style() { return IxInputGroupStyle0; }
@@ -11,7 +11,7 @@ const KeyValueList = /*@__PURE__*/ proxyCustomElement(class KeyValueList extends
11
11
  this.striped = undefined;
12
12
  }
13
13
  render() {
14
- return (h(Host, { key: 'f33fc856c54a05f54dff4184c275c8cac7f18426', class: { keyValueList: true, 'keyValueList--striped': this.striped } }, h("slot", { key: '75c282f8c79a273477382e250157aef6865e6d8d' })));
14
+ return (h(Host, { key: '41f224f172d1d9ed9a1eab8c1e1c434fa2e4e1c9', class: { keyValueList: true, 'keyValueList--striped': this.striped } }, h("slot", { key: '400532fe69d357f8bde037257f4397723c8129a0' })));
15
15
  }
16
16
  static get style() { return IxKeyValueListStyle0; }
17
17
  }, [1, "ix-key-value-list", {
@@ -32,13 +32,13 @@ const Kpi = /*@__PURE__*/ proxyCustomElement(class Kpi extends HTMLElement {
32
32
  return tooltip;
33
33
  }
34
34
  render() {
35
- return (h(Host, { key: 'd55ca486905d0294052dcb2ce5dca5e82a8c7566', title: this.getTooltipText(), tabindex: "1", class: {
35
+ return (h(Host, { key: '8bd4d575bc630ca0e55365b87842f138d3e214e2', title: this.getTooltipText(), tabindex: "1", class: {
36
36
  stacked: this.orientation === 'vertical',
37
- } }, h("div", { key: '99f29f60ed8257b14dd062d13813d2078ae5c8b0', class: {
37
+ } }, h("div", { key: '6e68fc8f36b4b55510d960ea0ec7546448b2d7eb', class: {
38
38
  'kpi-container': true,
39
39
  alarm: this.state === 'alarm',
40
40
  warning: this.state === 'warning',
41
- } }, h("span", { key: '49d9bbffb0b97df9dea86542347bb5defe46728e', class: "kpi-label" }, this.getStateIcon(), h("span", { key: '5947f6b00f33857cf93c1bb161734a6505b5cb3c', class: "kpi-label-text" }, this.label)), h("span", { key: '55a429623ac5bcf1e3884d5af539e03b8e51605a', class: "kpi-value-container" }, h("span", { key: '3569aac806ad75bb105290c55a14aa297d47662e', class: "kpi-value" }, this.value), this.unit ? h("span", { class: "kpi-unit" }, this.unit) : ''))));
41
+ } }, h("span", { key: 'b99e39255dfeb1cf2b5a7cbd6d3c59376dbd7d3a', class: "kpi-label" }, this.getStateIcon(), h("span", { key: 'aba4b1311cd4230a20c7b65fb72d59aeb48c4e8e', class: "kpi-label-text" }, this.label)), h("span", { key: '2bc45831f6b3015bee224f521680242db7a0bd9c', class: "kpi-value-container" }, h("span", { key: '36fef5f214e0075dd4f9c996aeb787e34a27982e', class: "kpi-value" }, this.value), this.unit ? h("span", { class: "kpi-unit" }, this.unit) : ''))));
42
42
  }
43
43
  static get style() { return IxKpiStyle0; }
44
44
  }, [1, "ix-kpi", {
@@ -1 +1 @@
1
- {"file":"ix-kpi.js","mappings":";;AAAA,MAAM,MAAM,GAAG,wgFAAwgF,CAAC;AACxhF,oBAAe,MAAM;;MCeR,GAAG;;;;;;;;qBAmBmC,SAAS;2BAKT,YAAY;;IAErD,YAAY;QAClB,QAAQ,IAAI,CAAC,KAAK;YAChB,KAAK,OAAO;gBACV,QACE,eACE,KAAK,EAAC,yBAAyB,EAC/B,IAAI,EAAE,OAAO,EACb,IAAI,EAAC,IAAI,GACA,EACX;YAEJ,KAAK,SAAS;gBACZ,QACE,eACE,KAAK,EAAC,yBAAyB,EAC/B,IAAI,EAAE,SAAS,EACf,IAAI,EAAC,IAAI,GACA,EACX;YAEJ;gBACE,OAAO,EAAE,CAAC;SACb;KACF;IAEO,cAAc;QACpB,IAAI,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SAC3C;QAED,OAAO,OAAO,CAAC;KAChB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,EAC5B,QAAQ,EAAC,GAAG,EACZ,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;aACzC,IAED,4DACE,KAAK,EAAE;gBACL,eAAe,EAAE,IAAI;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,OAAO;gBAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;aAClC,IAED,6DAAM,KAAK,EAAC,WAAW,IACpB,IAAI,CAAC,YAAY,EAAE,EACpB,6DAAM,KAAK,EAAC,gBAAgB,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC3C,EACP,6DAAM,KAAK,EAAC,qBAAqB,IAC/B,6DAAM,KAAK,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAQ,EAC1C,IAAI,CAAC,IAAI,GAAG,YAAM,KAAK,EAAC,UAAU,IAAE,IAAI,CAAC,IAAI,CAAQ,GAAG,EAAE,CACtD,CACH,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/kpi/kpi.scss?tag=ix-kpi&encapsulation=shadow","src/components/kpi/kpi.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/hover';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: flex;\n flex-grow: 1;\n height: $large-control-height;\n border-radius: var(--theme-kpi--border-radius);\n padding: 0.375rem $tiny-space;\n min-width: 0;\n\n span {\n @include ellipsis;\n }\n\n .kpi-container {\n display: flex;\n height: 100%;\n width: 100%;\n border-block-end: 2px solid grey;\n\n &.alarm {\n border-block-end-color: var(--theme-color-alarm);\n }\n\n &.warning {\n border-block-end-color: var(--theme-color-warning);\n }\n\n .kpi-label {\n display: flex;\n align-items: center;\n color: var(--theme-kpi-display-label--color);\n flex-grow: 1;\n flex-shrink: 9999;\n\n ix-icon {\n margin-inline-end: $tiny-space;\n }\n }\n\n .kpi-value-container {\n display: flex;\n align-items: flex-end;\n }\n\n .kpi-value {\n @include text-xl;\n\n color: var(--theme-kpi-display-value--color);\n }\n\n .kpi-unit {\n margin-inline-start: $small-space;\n color: var(--theme-kpi-display-units--color);\n }\n\n .kpi-label,\n .kpi-unit {\n margin-block-start: 0.125rem;\n }\n }\n\n @include hover {\n background-color: var(--theme-kpi-display--background--hover);\n }\n\n @include active {\n background-color: var(--theme-kpi-display--background--active);\n }\n\n @include focus-visible {\n outline: 1px solid var(--focus--border-color);\n }\n}\n\n:host(.stacked) {\n height: 3.75rem;\n\n .kpi-container {\n justify-content: center;\n flex-wrap: wrap;\n\n .kpi-label {\n width: 100%;\n justify-content: center;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ix-kpi',\n styleUrl: 'kpi.scss',\n shadow: true,\n})\nexport class Kpi {\n /**\n *\n */\n @Prop() label: string;\n\n /**\n *\n */\n @Prop() value: string | number;\n\n /**\n *\n */\n @Prop() unit: string;\n\n /**\n *\n */\n @Prop() state: 'neutral' | 'warning' | 'alarm' = 'neutral';\n\n /**\n *\n */\n @Prop() orientation: 'horizontal' | 'vertical' = 'horizontal';\n\n private getStateIcon() {\n switch (this.state) {\n case 'alarm':\n return (\n <ix-icon\n color=\"kpi-display-icon--color\"\n name={'alarm'}\n size=\"16\"\n ></ix-icon>\n );\n\n case 'warning':\n return (\n <ix-icon\n color=\"kpi-display-icon--color\"\n name={'warning'}\n size=\"16\"\n ></ix-icon>\n );\n\n default:\n return '';\n }\n }\n\n private getTooltipText() {\n let tooltip = `${this.label}: ${this.value}`;\n\n if (this.unit) {\n tooltip = tooltip.concat(` ${this.unit}`);\n }\n\n return tooltip;\n }\n\n render() {\n return (\n <Host\n title={this.getTooltipText()}\n tabindex=\"1\"\n class={{\n stacked: this.orientation === 'vertical',\n }}\n >\n <div\n class={{\n 'kpi-container': true,\n alarm: this.state === 'alarm',\n warning: this.state === 'warning',\n }}\n >\n <span class=\"kpi-label\">\n {this.getStateIcon()}\n <span class=\"kpi-label-text\">{this.label}</span>\n </span>\n <span class=\"kpi-value-container\">\n <span class=\"kpi-value\">{this.value}</span>\n {this.unit ? <span class=\"kpi-unit\">{this.unit}</span> : ''}\n </span>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-kpi.js","mappings":";;AAAA,MAAM,MAAM,GAAG,wgFAAwgF,CAAC;AACxhF,oBAAe,MAAM;;MCeR,GAAG;;;;;;;;qBAmBmC,SAAS;2BAKT,YAAY;;IAErD,YAAY;QAClB,QAAQ,IAAI,CAAC,KAAK;YAChB,KAAK,OAAO;gBACV,QACE,eACE,KAAK,EAAC,yBAAyB,EAC/B,IAAI,EAAE,OAAO,EACb,IAAI,EAAC,IAAI,GACA,EACX;YAEJ,KAAK,SAAS;gBACZ,QACE,eACE,KAAK,EAAC,yBAAyB,EAC/B,IAAI,EAAE,SAAS,EACf,IAAI,EAAC,IAAI,GACA,EACX;YAEJ;gBACE,OAAO,EAAE,CAAC;SACb;KACF;IAEO,cAAc;QACpB,IAAI,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SAC3C;QAED,OAAO,OAAO,CAAC;KAChB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,EAC5B,QAAQ,EAAC,GAAG,EACZ,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;aACzC,IAED,4DACE,KAAK,EAAE;gBACL,eAAe,EAAE,IAAI;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,OAAO;gBAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;aAClC,IAED,6DAAM,KAAK,EAAC,WAAW,IACpB,IAAI,CAAC,YAAY,EAAE,EACpB,6DAAM,KAAK,EAAC,gBAAgB,IAAE,IAAI,CAAC,KAAK,CAAQ,CAC3C,EACP,6DAAM,KAAK,EAAC,qBAAqB,IAC/B,6DAAM,KAAK,EAAC,WAAW,IAAE,IAAI,CAAC,KAAK,CAAQ,EAC1C,IAAI,CAAC,IAAI,GAAG,YAAM,KAAK,EAAC,UAAU,IAAE,IAAI,CAAC,IAAI,CAAQ,GAAG,EAAE,CACtD,CACH,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/kpi/kpi.scss?tag=ix-kpi&encapsulation=shadow","src/components/kpi/kpi.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/mixins/fonts';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: flex;\n flex-grow: 1;\n height: $large-control-height;\n border-radius: var(--theme-kpi--border-radius);\n padding: 0.375rem $tiny-space;\n min-width: 0;\n\n span {\n @include ellipsis;\n }\n\n .kpi-container {\n display: flex;\n height: 100%;\n width: 100%;\n border-block-end: 2px solid grey;\n\n &.alarm {\n border-block-end-color: var(--theme-color-alarm);\n }\n\n &.warning {\n border-block-end-color: var(--theme-color-warning);\n }\n\n .kpi-label {\n display: flex;\n align-items: center;\n color: var(--theme-kpi-display-label--color);\n flex-grow: 1;\n flex-shrink: 9999;\n\n ix-icon {\n margin-inline-end: $tiny-space;\n }\n }\n\n .kpi-value-container {\n display: flex;\n align-items: flex-end;\n }\n\n .kpi-value {\n @include text-xl;\n\n color: var(--theme-kpi-display-value--color);\n }\n\n .kpi-unit {\n margin-inline-start: $small-space;\n color: var(--theme-kpi-display-units--color);\n }\n\n .kpi-label,\n .kpi-unit {\n margin-block-start: 0.125rem;\n }\n }\n\n @include hover {\n background-color: var(--theme-kpi-display--background--hover);\n }\n\n @include active {\n background-color: var(--theme-kpi-display--background--active);\n }\n\n @include focus-visible {\n outline: 1px solid var(--focus--border-color);\n }\n}\n\n:host(.stacked) {\n height: 3.75rem;\n\n .kpi-container {\n justify-content: center;\n flex-wrap: wrap;\n\n .kpi-label {\n width: 100%;\n justify-content: center;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ix-kpi',\n styleUrl: 'kpi.scss',\n shadow: true,\n})\nexport class Kpi {\n /**\n *\n */\n @Prop() label: string;\n\n /**\n *\n */\n @Prop() value: string | number;\n\n /**\n *\n */\n @Prop() unit: string;\n\n /**\n *\n */\n @Prop() state: 'neutral' | 'warning' | 'alarm' = 'neutral';\n\n /**\n *\n */\n @Prop() orientation: 'horizontal' | 'vertical' = 'horizontal';\n\n private getStateIcon() {\n switch (this.state) {\n case 'alarm':\n return (\n <ix-icon\n color=\"kpi-display-icon--color\"\n name={'alarm'}\n size=\"16\"\n ></ix-icon>\n );\n\n case 'warning':\n return (\n <ix-icon\n color=\"kpi-display-icon--color\"\n name={'warning'}\n size=\"16\"\n ></ix-icon>\n );\n\n default:\n return '';\n }\n }\n\n private getTooltipText() {\n let tooltip = `${this.label}: ${this.value}`;\n\n if (this.unit) {\n tooltip = tooltip.concat(` ${this.unit}`);\n }\n\n return tooltip;\n }\n\n render() {\n return (\n <Host\n title={this.getTooltipText()}\n tabindex=\"1\"\n class={{\n stacked: this.orientation === 'vertical',\n }}\n >\n <div\n class={{\n 'kpi-container': true,\n alarm: this.state === 'alarm',\n warning: this.state === 'warning',\n }}\n >\n <span class=\"kpi-label\">\n {this.getStateIcon()}\n <span class=\"kpi-label-text\">{this.label}</span>\n </span>\n <span class=\"kpi-value-container\">\n <span class=\"kpi-value\">{this.value}</span>\n {this.unit ? <span class=\"kpi-unit\">{this.unit}</span> : ''}\n </span>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -13,13 +13,13 @@ const LinkButton = /*@__PURE__*/ proxyCustomElement(class LinkButton extends HTM
13
13
  this.target = '_self';
14
14
  }
15
15
  render() {
16
- return (h(Host, { key: 'c0753708c00f43909af85a98f619b407545a69a2' }, h("a", { key: 'a7935cfb13d2743192bd678bf99e7e2dc09657f5', title: this.url, tabindex: "0", class: {
16
+ return (h(Host, { key: 'a6bb7077867b0a9e30a02d02b7fbc97fb747235d' }, h("a", { key: '2a433a6a960e2daebb282e1059a8e461446660ec', title: this.url, tabindex: "0", class: {
17
17
  'link-button': true,
18
18
  disabled: this.disabled,
19
- }, href: this.disabled ? undefined : this.url, target: this.target }, h("ix-icon", { key: 'e18e4e6c7f69fce4cf7c9708f3ec18a14e825b3f', class: "icon", name: 'chevron-right-small', size: "16" }), h("div", { key: '20d6785d5ecd08978bdb8a58c0e11b85584143f8', class: {
19
+ }, href: this.disabled ? undefined : this.url, target: this.target }, h("ix-icon", { key: '43a87812bddd34d6e82eb174ba35844fa618e1b7', class: "icon", name: 'chevron-right-small', size: "16" }), h("div", { key: '8ca27684566c0fe53cc572169c5c38f508d7d83d', class: {
20
20
  link: true,
21
21
  disabled: this.disabled,
22
- } }, h("slot", { key: '6d5ac72219c3565dc5c3adec23b59e6d0bdf93a7' })))));
22
+ } }, h("slot", { key: '8d8de54a124c5348d046dfc8ddf83fcb06ddbcc8' })))));
23
23
  }
24
24
  static get style() { return IxLinkButtonStyle0; }
25
25
  }, [1, "ix-link-button", {
@@ -1,14 +1,15 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { a as anime } from './anime.es.js';
3
3
  import { u as useContextProvider, A as ApplicationLayoutContext } from './context.js';
4
- import { d as defineCustomElement$7 } from './application-header.js';
5
- import { d as defineCustomElement$6 } from './dropdown.js';
6
- import { d as defineCustomElement$5 } from './icon-button.js';
7
- import { d as defineCustomElement$4 } from './map-navigation-overlay.js';
8
- import { d as defineCustomElement$3 } from './menu-expand-icon.js';
9
- import { d as defineCustomElement$2 } from './spinner.js';
4
+ import { d as defineCustomElement$8 } from './application-header.js';
5
+ import { d as defineCustomElement$7 } from './dropdown.js';
6
+ import { d as defineCustomElement$6 } from './icon-button.js';
7
+ import { d as defineCustomElement$5 } from './map-navigation-overlay.js';
8
+ import { d as defineCustomElement$4 } from './menu-expand-icon.js';
9
+ import { d as defineCustomElement$3 } from './spinner.js';
10
+ import { d as defineCustomElement$2 } from './typography.js';
10
11
 
11
- const mapNavigationCss = ":host{display:flex;position:relative;width:100%;height:100%}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .map-nav{display:flex;margin-left:3.25rem;position:relative;height:100%;flex-grow:1;overflow:hidden}:host .map-nav-sidebar{display:flex;flex-direction:column;align-items:center;width:29.75rem;max-width:29.75rem;min-width:29.75rem;height:100%;left:4rem;background-color:var(--theme-map-navigation--background);border-inline-end:0.125rem solid var(--theme-map-navigation-separator--background);z-index:99}:host .map-nav-sidebar-content{align-items:center;position:relative;overflow:auto;height:100%;width:100%}:host .map-nav-sidebar-content .map-nav-sidebar-static-content{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;justify-content:space-between;margin-top:0.437rem;margin-bottom:0.812rem;margin-left:1rem;margin-right:1rem}:host .map-nav-header{display:flex;position:relative;align-items:center;height:3.5rem;min-height:3.5rem;width:100%}:host .map-nav-header .map-nav-header-brand{background-color:var(--theme-map-navigation-background);display:flex;align-items:center;height:100%;width:100%;padding:0 1rem;--theme-app-header--color:var(--theme-map-navigation-header--color);--theme-app-header-logo--color:var(--theme-map-navigation-logo--color)}:host .map-nav-header .map-nav-header-brand button{margin-left:1rem}:host .map-nav-header-content{display:flex;height:3.5rem;align-items:center;overflow:hidden;padding:0 1rem}:host .map-nav-header-content.empty{height:0}:host .map-nav-title{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;align-items:center;flex-grow:1}:host .content{display:block;flex-grow:1;position:relative;height:100%;overflow:hidden;z-index:calc(var(--theme-z-index-sticky) - 1)}:host ::slotted(ix-menu){position:absolute}";
12
+ const mapNavigationCss = ":host{display:flex;position:relative;width:100%;height:100%}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .map-nav{display:flex;margin-left:3.25rem;position:relative;height:100%;flex-grow:1;overflow:hidden}:host .map-nav-sidebar{display:flex;flex-direction:column;align-items:center;width:29.75rem;max-width:29.75rem;min-width:29.75rem;height:100%;left:4rem;background-color:var(--theme-map-navigation--background);border-inline-end:0.125rem solid var(--theme-map-navigation-separator--background);z-index:99}:host .map-nav-sidebar-content{align-items:center;position:relative;overflow:auto;height:100%;width:100%}:host .map-nav-sidebar-content .map-nav-sidebar-static-content{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;justify-content:space-between;margin-top:0.437rem;margin-bottom:0.812rem;margin-left:1rem;margin-right:1rem}:host .map-nav-header{display:flex;position:relative;align-items:center;height:3.5rem;min-height:3.5rem;width:100%}:host .map-nav-header .map-nav-header-brand{background-color:var(--theme-map-navigation-background);padding-left:1rem;padding-right:1rem;padding-bottom:0.625rem;height:100%;width:100%;--theme-app-header--color:var(--theme-map-navigation-header--color);--theme-app-header-logo--color:var(--theme-map-navigation-logo--color)}:host .map-nav-header .map-nav-header-brand button{margin-left:1rem}:host .map-nav-header-content{display:flex;height:3.5rem;align-items:center;overflow:hidden;padding:0 1rem}:host .map-nav-header-content.empty{height:0}:host .map-nav-title{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;align-items:center;flex-grow:1}:host .content{display:block;flex-grow:1;position:relative;height:100%;overflow:hidden;z-index:calc(var(--theme-z-index-sticky) - 1)}:host ::slotted(ix-menu){position:absolute}";
12
13
  const IxMapNavigationStyle0 = mapNavigationCss;
13
14
 
14
15
  const MapNavigation = /*@__PURE__*/ proxyCustomElement(class MapNavigation extends HTMLElement {
@@ -161,11 +162,11 @@ const MapNavigation = /*@__PURE__*/ proxyCustomElement(class MapNavigation exten
161
162
  this.hasContentHeader = (nodes === null || nodes === void 0 ? void 0 : nodes.length) !== 0;
162
163
  }
163
164
  render() {
164
- return (h(Host, { key: '65d980effdeeac98d92a0c8d150cf96d9b9beb3d' }, h("slot", { key: '822f13c097836e57452c453d9b45e4774d7394ed', name: "menu" }), h("div", { key: '8f58c729f86f0e3b6d6083b5f0f0fda28e74c9eb', class: "map-nav" }, h("div", { key: '0f979e624122ce789aa094bf428dc39414d66207', class: "map-nav-sidebar" }, h("div", { key: 'a8cf78610ff79460f00716f52968f18f0fc83859', class: "map-nav-header" }, h("ix-application-header", { key: '98c2b5e98691c1505879a3ed2d1f3cdba4c94a62', name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { key: 'b9036cd5a8873b9562d58783264286bb74cf08f7', slot: "logo", name: "logo" }))), h("div", { key: '42a13b7c8ee93cf69b06c12a3fb600f740555d1b', class: "map-nav-sidebar-content" }, h("div", { key: 'd4e0218e43cabf84bd7faa2c38a7e17074982ba2', class: "map-nav-sidebar-static-content" }, h("div", { key: '0b1add8805f5b3d37a546d20fa6e99a1d6bf35ac', class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: 'context-menu', ghost: true, size: "24", variant: "secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { key: 'b2e15f627226c8d01e7f1e73f14d40ebb58e151d', class: "map-nav-sidebar-user-content" }, h("slot", { key: 'cb26bf448b02c54e46398d65b0361e453115c20d', name: "sidebar-content" })))), h("div", { key: '8fe42e8570256b4f09874100e2d34d323e22ac0d', class: "content" }, h("div", { key: '17a816d735d80ebca9e6cc7a7e9c6671e2e9a059', class: {
165
+ return (h(Host, { key: 'cb5c6f39555fbd806f1eca16919c277843a23351' }, h("slot", { key: '9da04acd9ef3e5b8f322669406f9ad4b812c9c79', name: "menu" }), h("div", { key: 'dced8e859776aa7d9923156a91fb149e9409af31', class: "map-nav" }, h("div", { key: '97fb4b6ff84005e96873680cfe32c7a2b33b7c0e', class: "map-nav-sidebar" }, h("div", { key: '1f069b0b89c0993df6ad24fba1335a5cb2cd2083', class: "map-nav-header" }, h("ix-application-header", { key: 'bbb0e01ae9194aed17711514b70124704831f7ac', name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { key: '78b9d282b03368708a5a4a6197fccfcd586ae16f', slot: "logo", name: "logo" }))), h("div", { key: '061ae2f057117ac51f9baa296940cddc66c89d23', class: "map-nav-sidebar-content" }, h("div", { key: 'f5d5adb2daf4ba5212e7bf66ddc860431e453f1b', class: "map-nav-sidebar-static-content" }, h("div", { key: '07f6bebd3988744a4e03b61a5f30ecce310bba85', class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: 'context-menu', ghost: true, size: "24", variant: "secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { key: '2ac8e086d83fc82409f5bfd1ecea2ba66eb06606', class: "map-nav-sidebar-user-content" }, h("slot", { key: 'f447fb6a5995ddb0ea0c08e3101c2d7ab29805f4', name: "sidebar-content" })))), h("div", { key: 'be19906feccbba5e0fd4736df63afa4584b2ab1f', class: "content" }, h("div", { key: 'bf1127e632cc4b7ee9f5afb8cc51aabc8abe5600', class: {
165
166
  'map-nav-header-content': true,
166
167
  'bg-2': true,
167
168
  empty: !this.hasContentHeader,
168
- } }, h("slot", { key: '734a74f600419d597f306638cbe97c5504a2e15d', name: "content-header", onSlotchange: (e) => this.checkHasContentHeader(e) })), h("main", { key: '76d831c62b3a1339e18ab4f4b77c2dd73b915118' }, h("slot", { key: '5ec164d85791363dc232b3861458446c2a9787dc' }), h("slot", { key: 'cc823b370d2b9f0f7151388ebedcd4958277422c', name: "overlay" }))))));
169
+ } }, h("slot", { key: '803807a9158ad13f04e6e66c5472c527dde93a4a', name: "content-header", onSlotchange: (e) => this.checkHasContentHeader(e) })), h("main", { key: 'ae117dd7c985f85cede7303f459c9a00b1981ba0' }, h("slot", { key: 'b3d43c7ab67a52d5bfe07c63da2197fa0db1b9f4' }), h("slot", { key: 'eac80e880d505ca915b96c01aedddd2685c41ad7', name: "overlay" }))))));
169
170
  }
170
171
  get hostElement() { return this; }
171
172
  static get style() { return IxMapNavigationStyle0; }
@@ -185,7 +186,7 @@ function defineCustomElement$1() {
185
186
  if (typeof customElements === "undefined") {
186
187
  return;
187
188
  }
188
- const components = ["ix-map-navigation", "ix-application-header", "ix-dropdown", "ix-icon-button", "ix-map-navigation-overlay", "ix-menu-expand-icon", "ix-spinner"];
189
+ const components = ["ix-map-navigation", "ix-application-header", "ix-dropdown", "ix-icon-button", "ix-map-navigation-overlay", "ix-menu-expand-icon", "ix-spinner", "ix-typography"];
189
190
  components.forEach(tagName => { switch (tagName) {
190
191
  case "ix-map-navigation":
191
192
  if (!customElements.get(tagName)) {
@@ -194,30 +195,35 @@ function defineCustomElement$1() {
194
195
  break;
195
196
  case "ix-application-header":
196
197
  if (!customElements.get(tagName)) {
197
- defineCustomElement$7();
198
+ defineCustomElement$8();
198
199
  }
199
200
  break;
200
201
  case "ix-dropdown":
201
202
  if (!customElements.get(tagName)) {
202
- defineCustomElement$6();
203
+ defineCustomElement$7();
203
204
  }
204
205
  break;
205
206
  case "ix-icon-button":
206
207
  if (!customElements.get(tagName)) {
207
- defineCustomElement$5();
208
+ defineCustomElement$6();
208
209
  }
209
210
  break;
210
211
  case "ix-map-navigation-overlay":
211
212
  if (!customElements.get(tagName)) {
212
- defineCustomElement$4();
213
+ defineCustomElement$5();
213
214
  }
214
215
  break;
215
216
  case "ix-menu-expand-icon":
216
217
  if (!customElements.get(tagName)) {
217
- defineCustomElement$3();
218
+ defineCustomElement$4();
218
219
  }
219
220
  break;
220
221
  case "ix-spinner":
222
+ if (!customElements.get(tagName)) {
223
+ defineCustomElement$3();
224
+ }
225
+ break;
226
+ case "ix-typography":
221
227
  if (!customElements.get(tagName)) {
222
228
  defineCustomElement$2();
223
229
  }
@@ -1 +1 @@
1
- {"file":"ix-map-navigation.js","mappings":"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","names":[],"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\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 display: flex;\n align-items: center;\n height: 100%;\n width: 100%;\n padding: 0 $default-space;\n\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';\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('d-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('d-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('d-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('d-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={'context-menu'}\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"],"version":3}
1
+ {"file":"ix-map-navigation.js","mappings":"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","names":[],"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\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';\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('d-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('d-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('d-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('d-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={'context-menu'}\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"],"version":3}
@@ -19,7 +19,7 @@ const MenuAboutItem = /*@__PURE__*/ proxyCustomElement(class MenuAboutItem exten
19
19
  });
20
20
  }
21
21
  render() {
22
- return (h(Host, { key: '8f4b3c1bc410eaf0fde9247cd99c18bba78fc628' }, h("slot", { key: '86fee42e74eb5ed0511c2fa3ae62efa57817fffa' })));
22
+ return (h(Host, { key: '50457bcc0164d0923b4a360819e4759583d4f535' }, h("slot", { key: '1f5acfdce0e58ab137145a7322e8a0348456a81e' })));
23
23
  }
24
24
  static get watchers() { return {
25
25
  "label": ["watchLabel"]