@siemens/ix 1.4.2 → 1.5.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (982) hide show
  1. package/dist/cjs/_commonjsHelpers-1a0c346f.js +2 -0
  2. package/dist/cjs/_commonjsHelpers-1a0c346f.js.map +1 -0
  3. package/dist/cjs/animation-d5cc0bec.js +2 -0
  4. package/dist/cjs/animation-d5cc0bec.js.map +1 -0
  5. package/dist/cjs/anime.es-8822f296.js +2 -0
  6. package/dist/cjs/anime.es-8822f296.js.map +1 -0
  7. package/dist/cjs/base-button-497db257.js +2 -0
  8. package/dist/cjs/base-button-497db257.js.map +1 -0
  9. package/dist/cjs/context-a0900b95.js +2 -0
  10. package/dist/cjs/context-a0900b95.js.map +1 -0
  11. package/dist/cjs/default-tree-item-89cd1f3f.js +2 -0
  12. package/dist/cjs/default-tree-item-89cd1f3f.js.map +1 -0
  13. package/dist/cjs/flip-tile-state-b5ff5ea0.js +2 -0
  14. package/dist/cjs/flip-tile-state-b5ff5ea0.js.map +1 -0
  15. package/dist/cjs/floating-ui.dom.esm-01fe5abe.js +2 -0
  16. package/dist/cjs/floating-ui.dom.esm-01fe5abe.js.map +1 -0
  17. package/dist/cjs/{index-f4b8e6ee.js → index-478a4b66.js} +133 -3
  18. package/dist/cjs/index-478a4b66.js.map +1 -0
  19. package/dist/cjs/index.cjs.js +12 -11
  20. package/dist/cjs/index.cjs.js.map +1 -0
  21. package/dist/cjs/ix-animated-tab_2.cjs.entry.js +3 -1
  22. package/dist/cjs/ix-animated-tab_2.cjs.entry.js.map +1 -0
  23. package/dist/cjs/ix-application-header.cjs.entry.js +3 -1
  24. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -0
  25. package/dist/cjs/ix-basic-navigation.cjs.entry.js +3 -1
  26. package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -0
  27. package/dist/cjs/ix-blind.cjs.entry.js +9 -4
  28. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -0
  29. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +4 -2
  30. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js.map +1 -0
  31. package/dist/cjs/ix-burger-menu.cjs.entry.js +3 -1
  32. package/dist/cjs/ix-burger-menu.cjs.entry.js.map +1 -0
  33. package/dist/cjs/ix-button.cjs.entry.js +3 -1
  34. package/dist/cjs/ix-button.cjs.entry.js.map +1 -0
  35. package/dist/cjs/ix-category-filter.cjs.entry.js +6 -4
  36. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -0
  37. package/dist/cjs/ix-chip.cjs.entry.js +9 -2
  38. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -0
  39. package/dist/cjs/ix-counter-pill.cjs.entry.js +3 -1
  40. package/dist/cjs/ix-counter-pill.cjs.entry.js.map +1 -0
  41. package/dist/cjs/ix-date-picker_2.cjs.entry.js +3 -1
  42. package/dist/cjs/ix-date-picker_2.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ix-date-time-card.cjs.entry.js +3 -1
  44. package/dist/cjs/ix-date-time-card.cjs.entry.js.map +1 -0
  45. package/dist/cjs/ix-datetime-picker.cjs.entry.js +6 -4
  46. package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -0
  47. package/dist/cjs/ix-divider.cjs.entry.js +3 -1
  48. package/dist/cjs/ix-divider.cjs.entry.js.map +1 -0
  49. package/dist/cjs/ix-drawer.cjs.entry.js +3 -1
  50. package/dist/cjs/ix-drawer.cjs.entry.js.map +1 -0
  51. package/dist/cjs/ix-dropdown-button.cjs.entry.js +3 -1
  52. package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -0
  53. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +3 -1
  54. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js.map +1 -0
  55. package/dist/cjs/ix-dropdown_2.cjs.entry.js +3 -1
  56. package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -0
  57. package/dist/cjs/ix-event-list_2.cjs.entry.js +3 -1
  58. package/dist/cjs/ix-event-list_2.cjs.entry.js.map +1 -0
  59. package/dist/cjs/ix-expanding-search.cjs.entry.js +14 -12
  60. package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -0
  61. package/dist/cjs/ix-filter-chip.cjs.entry.js +5 -3
  62. package/dist/cjs/ix-filter-chip.cjs.entry.js.map +1 -0
  63. package/dist/cjs/ix-flip-tile_2.cjs.entry.js +14 -3
  64. package/dist/cjs/ix-flip-tile_2.cjs.entry.js.map +1 -0
  65. package/dist/cjs/ix-group-context-menu.cjs.entry.js +3 -1
  66. package/dist/cjs/ix-group-context-menu.cjs.entry.js.map +1 -0
  67. package/dist/cjs/ix-group_3.cjs.entry.js +4 -2
  68. package/dist/cjs/ix-group_3.cjs.entry.js.map +1 -0
  69. package/dist/cjs/ix-icon-button.cjs.entry.js +3 -1
  70. package/dist/cjs/ix-icon-button.cjs.entry.js.map +1 -0
  71. package/dist/cjs/ix-icon.cjs.entry.js +3 -1
  72. package/dist/cjs/ix-icon.cjs.entry.js.map +1 -0
  73. package/dist/cjs/ix-index-button.cjs.entry.js +28 -0
  74. package/dist/cjs/ix-index-button.cjs.entry.js.map +1 -0
  75. package/dist/cjs/ix-input-group.cjs.entry.js +4 -2
  76. package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -0
  77. package/dist/cjs/ix-kpi.cjs.entry.js +3 -1
  78. package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -0
  79. package/dist/cjs/ix-map-navigation_2.cjs.entry.js +3 -1
  80. package/dist/cjs/ix-map-navigation_2.cjs.entry.js.map +1 -0
  81. package/dist/cjs/ix-menu_9.cjs.entry.js +4 -2
  82. package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -0
  83. package/dist/cjs/ix-message-bar.cjs.entry.js +3 -1
  84. package/dist/cjs/ix-message-bar.cjs.entry.js.map +1 -0
  85. package/dist/cjs/ix-modal-example.cjs.entry.js +3 -1
  86. package/dist/cjs/ix-modal-example.cjs.entry.js.map +1 -0
  87. package/dist/cjs/ix-modal_2.cjs.entry.js +208 -7
  88. package/dist/cjs/ix-modal_2.cjs.entry.js.map +1 -0
  89. package/dist/cjs/ix-pagination.cjs.entry.js +115 -0
  90. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -0
  91. package/dist/cjs/ix-pill.cjs.entry.js +3 -1
  92. package/dist/cjs/ix-pill.cjs.entry.js.map +1 -0
  93. package/dist/cjs/ix-select_2.cjs.entry.js +3 -1
  94. package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -0
  95. package/dist/cjs/ix-spinner.cjs.entry.js +3 -1
  96. package/dist/cjs/ix-spinner.cjs.entry.js.map +1 -0
  97. package/dist/cjs/ix-split-button_2.cjs.entry.js +3 -1
  98. package/dist/cjs/ix-split-button_2.cjs.entry.js.map +1 -0
  99. package/dist/cjs/ix-tab-item.cjs.entry.js +3 -1
  100. package/dist/cjs/ix-tab-item.cjs.entry.js.map +1 -0
  101. package/dist/cjs/ix-tabs.cjs.entry.js +3 -1
  102. package/dist/cjs/ix-tabs.cjs.entry.js.map +1 -0
  103. package/dist/cjs/ix-tile.cjs.entry.js +3 -1
  104. package/dist/cjs/ix-tile.cjs.entry.js.map +1 -0
  105. package/dist/cjs/ix-toast_2.cjs.entry.js +13 -2
  106. package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -0
  107. package/dist/cjs/ix-toggle.cjs.entry.js +3 -1
  108. package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -0
  109. package/dist/cjs/ix-tooltip.cjs.entry.js +3 -1
  110. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -0
  111. package/dist/cjs/ix-tree_2.cjs.entry.js +7 -1
  112. package/dist/cjs/ix-tree_2.cjs.entry.js.map +1 -0
  113. package/dist/cjs/ix-typography.cjs.entry.js +3 -1
  114. package/dist/cjs/ix-typography.cjs.entry.js.map +1 -0
  115. package/dist/cjs/ix-upload.cjs.entry.js +4 -2
  116. package/dist/cjs/ix-upload.cjs.entry.js.map +1 -0
  117. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -1
  118. package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -0
  119. package/dist/cjs/ix-workflow-step_2.cjs.entry.js +3 -1
  120. package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -0
  121. package/dist/cjs/loader.cjs.js +6 -3
  122. package/dist/cjs/loader.cjs.js.map +1 -0
  123. package/dist/cjs/{logical-filter-operator-0faf70b8.js → logical-filter-operator-20233f71.js} +5 -3
  124. package/dist/cjs/logical-filter-operator-20233f71.js.map +1 -0
  125. package/dist/cjs/modal-utils-b645989b.js +2 -0
  126. package/dist/cjs/modal-utils-b645989b.js.map +1 -0
  127. package/dist/cjs/mutation-observer-eaaa5399.js +2 -0
  128. package/dist/cjs/mutation-observer-eaaa5399.js.map +1 -0
  129. package/dist/cjs/my-component.cjs.entry.js +3 -1
  130. package/dist/cjs/my-component.cjs.entry.js.map +1 -0
  131. package/dist/cjs/rwd.util-9480f0b5.js +2 -0
  132. package/dist/cjs/rwd.util-9480f0b5.js.map +1 -0
  133. package/dist/cjs/service-18dc5907.js +2 -0
  134. package/dist/cjs/service-18dc5907.js.map +1 -0
  135. package/dist/cjs/siemens-ix.cjs.js +12 -3
  136. package/dist/cjs/siemens-ix.cjs.js.map +1 -0
  137. package/dist/cjs/{theme-switcher-67669a35.js → theme-switcher-bdbd0d30.js} +10 -8
  138. package/dist/cjs/theme-switcher-bdbd0d30.js.map +1 -0
  139. package/dist/cjs/typed-event-f0f051da.js +2 -0
  140. package/dist/cjs/typed-event-f0f051da.js.map +1 -0
  141. package/dist/cjs/upload-file-state-a79acf2b.js +2 -0
  142. package/dist/cjs/upload-file-state-a79acf2b.js.map +1 -0
  143. package/dist/collection/collection-manifest.json +14 -12
  144. package/dist/collection/components/animated-tab/animated-tab.js +1 -0
  145. package/dist/collection/components/animated-tab/animated-tab.js.map +1 -0
  146. package/dist/collection/components/animated-tabs/animated-tabs.js +1 -0
  147. package/dist/collection/components/animated-tabs/animated-tabs.js.map +1 -0
  148. package/dist/collection/components/application-header/application-header.js +1 -0
  149. package/dist/collection/components/application-header/application-header.js.map +1 -0
  150. package/dist/collection/components/basic-navigation/basic-navigation.js +1 -0
  151. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -0
  152. package/dist/collection/components/blind/blind.css +12 -6
  153. package/dist/collection/components/blind/blind.js +26 -2
  154. package/dist/collection/components/blind/blind.js.map +1 -0
  155. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -2
  156. package/dist/collection/components/breadcrumb/breadcrumb.js +1 -0
  157. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -0
  158. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +1 -0
  159. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -0
  160. package/dist/collection/components/button/base-button.js +1 -0
  161. package/dist/collection/components/button/base-button.js.map +1 -0
  162. package/dist/collection/components/button/button.js +5 -4
  163. package/dist/collection/components/button/button.js.map +1 -0
  164. package/dist/collection/components/category-filter/category-filter.js +3 -2
  165. package/dist/collection/components/category-filter/category-filter.js.map +1 -0
  166. package/dist/collection/components/category-filter/filter-state.js +1 -0
  167. package/dist/collection/components/category-filter/filter-state.js.map +1 -0
  168. package/dist/collection/components/category-filter/input-state.js +4 -3
  169. package/dist/collection/components/category-filter/input-state.js.map +1 -0
  170. package/dist/collection/components/category-filter/logical-filter-operator.js +1 -0
  171. package/dist/collection/components/category-filter/logical-filter-operator.js.map +1 -0
  172. package/dist/collection/components/chip/chip.js +28 -2
  173. package/dist/collection/components/chip/chip.js.map +1 -0
  174. package/dist/collection/components/counter-pill/counter-pill.js +1 -0
  175. package/dist/collection/components/counter-pill/counter-pill.js.map +1 -0
  176. package/dist/collection/components/date-picker/date-picker.js +10 -9
  177. package/dist/collection/components/date-picker/date-picker.js.map +1 -0
  178. package/dist/collection/components/date-time-card/date-time-card.js +6 -1
  179. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -0
  180. package/dist/collection/components/datetime-picker/datetime-picker.js +9 -11
  181. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -0
  182. package/dist/collection/components/divider/divider.js +1 -0
  183. package/dist/collection/components/divider/divider.js.map +1 -0
  184. package/dist/collection/components/drawer/drawer.js +1 -0
  185. package/dist/collection/components/drawer/drawer.js.map +1 -0
  186. package/dist/collection/components/dropdown/alignment.js +1 -0
  187. package/dist/collection/components/dropdown/alignment.js.map +1 -0
  188. package/dist/collection/components/dropdown/dropdown.css +0 -5
  189. package/dist/collection/components/dropdown/dropdown.js +3 -2
  190. package/dist/collection/components/dropdown/dropdown.js.map +1 -0
  191. package/dist/collection/components/dropdown/placement.js +1 -0
  192. package/dist/collection/components/dropdown/placement.js.map +1 -0
  193. package/dist/collection/components/dropdown-button/dropdown-button.js +5 -4
  194. package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -0
  195. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -0
  196. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -0
  197. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -0
  198. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js.map +1 -0
  199. package/dist/collection/components/event-list/event-list.js +1 -0
  200. package/dist/collection/components/event-list/event-list.js.map +1 -0
  201. package/dist/collection/components/event-list-item/event-list-item.js +1 -0
  202. package/dist/collection/components/event-list-item/event-list-item.js.map +1 -0
  203. package/dist/collection/components/expanding-search/expanding-search.js +10 -9
  204. package/dist/collection/components/expanding-search/expanding-search.js.map +1 -0
  205. package/dist/collection/components/filter-chip/filter-chip.css +14 -7
  206. package/dist/collection/components/filter-chip/filter-chip.js +2 -1
  207. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -0
  208. package/dist/collection/components/flip-tile/flip-tile-state.js +1 -0
  209. package/dist/collection/components/flip-tile/flip-tile-state.js.map +1 -0
  210. package/dist/collection/components/flip-tile/flip-tile.css +0 -4
  211. package/dist/collection/components/flip-tile/flip-tile.js +57 -2
  212. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -0
  213. package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -0
  214. package/dist/collection/components/flip-tile-content/flip-tile-content.js.map +1 -0
  215. package/dist/collection/components/group/group-context-menu.js +1 -0
  216. package/dist/collection/components/group/group-context-menu.js.map +1 -0
  217. package/dist/collection/components/group/group.js +2 -1
  218. package/dist/collection/components/group/group.js.map +1 -0
  219. package/dist/collection/components/group-dropdown-item/group-dropdown-item.js +1 -0
  220. package/dist/collection/components/group-dropdown-item/group-dropdown-item.js.map +1 -0
  221. package/dist/collection/components/group-item/group-item.js +1 -0
  222. package/dist/collection/components/group-item/group-item.js.map +1 -0
  223. package/dist/collection/components/icon/icon.js +1 -0
  224. package/dist/collection/components/icon/icon.js.map +1 -0
  225. package/dist/collection/components/icon-button/icon-button.js +8 -2
  226. package/dist/collection/components/icon-button/icon-button.js.map +1 -0
  227. package/dist/collection/components/index-button/index-button.css +31 -0
  228. package/dist/collection/components/index-button/index-button.js +83 -0
  229. package/dist/collection/components/index-button/index-button.js.map +1 -0
  230. package/dist/collection/components/input-group/input-group.css +3 -0
  231. package/dist/collection/components/input-group/input-group.js +1 -0
  232. package/dist/collection/components/input-group/input-group.js.map +1 -0
  233. package/dist/collection/components/kpi/kpi.js +1 -0
  234. package/dist/collection/components/kpi/kpi.js.map +1 -0
  235. package/dist/collection/components/map-navigation/map-navigation.js +1 -0
  236. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -0
  237. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +1 -0
  238. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js.map +1 -0
  239. package/dist/collection/components/menu/burger-menu.js +1 -0
  240. package/dist/collection/components/menu/burger-menu.js.map +1 -0
  241. package/dist/collection/components/menu/menu.js +1 -0
  242. package/dist/collection/components/menu/menu.js.map +1 -0
  243. package/dist/collection/components/menu-about/menu-about.js +1 -0
  244. package/dist/collection/components/menu-about/menu-about.js.map +1 -0
  245. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -0
  246. package/dist/collection/components/menu-about-item/menu-about-item.js.map +1 -0
  247. package/dist/collection/components/menu-about-news/menu-about-news.js +1 -0
  248. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -0
  249. package/dist/collection/components/menu-avatar/menu-avatar.js +1 -0
  250. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -0
  251. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -0
  252. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js.map +1 -0
  253. package/dist/collection/components/menu-item/menu-item.js +1 -0
  254. package/dist/collection/components/menu-item/menu-item.js.map +1 -0
  255. package/dist/collection/components/menu-settings/menu-settings.js +1 -0
  256. package/dist/collection/components/menu-settings/menu-settings.js.map +1 -0
  257. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -0
  258. package/dist/collection/components/menu-settings-item/menu-settings-item.js.map +1 -0
  259. package/dist/collection/components/message-bar/message-bar.js +1 -0
  260. package/dist/collection/components/message-bar/message-bar.js.map +1 -0
  261. package/dist/collection/components/modal/modal-utils.js +1 -0
  262. package/dist/collection/components/modal/modal-utils.js.map +1 -0
  263. package/dist/collection/components/modal/modal.js +1 -0
  264. package/dist/collection/components/modal/modal.js.map +1 -0
  265. package/dist/collection/components/modal-container/modal-container.js +6 -2
  266. package/dist/collection/components/modal-container/modal-container.js.map +1 -0
  267. package/dist/collection/components/my-component/example-modal.js +1 -0
  268. package/dist/collection/components/my-component/example-modal.js.map +1 -0
  269. package/dist/collection/components/my-component/my-component.js +1 -0
  270. package/dist/collection/components/my-component/my-component.js.map +1 -0
  271. package/dist/collection/components/pagination/pagination.css +58 -0
  272. package/dist/collection/components/pagination/pagination.js +303 -0
  273. package/dist/collection/components/pagination/pagination.js.map +1 -0
  274. package/dist/collection/components/pill/pill.js +1 -0
  275. package/dist/collection/components/pill/pill.js.map +1 -0
  276. package/dist/collection/components/select/select.js +1 -0
  277. package/dist/collection/components/select/select.js.map +1 -0
  278. package/dist/collection/components/select-item/events.js +1 -0
  279. package/dist/collection/components/select-item/events.js.map +1 -0
  280. package/dist/collection/components/select-item/select-item.js +1 -0
  281. package/dist/collection/components/select-item/select-item.js.map +1 -0
  282. package/dist/collection/components/spinner/spinner.js +1 -0
  283. package/dist/collection/components/spinner/spinner.js.map +1 -0
  284. package/dist/collection/components/split-button/split-button.js +5 -4
  285. package/dist/collection/components/split-button/split-button.js.map +1 -0
  286. package/dist/collection/components/split-button-item/split-button-item.js +1 -0
  287. package/dist/collection/components/split-button-item/split-button-item.js.map +1 -0
  288. package/dist/collection/components/tab-item/tab-item.js +1 -0
  289. package/dist/collection/components/tab-item/tab-item.js.map +1 -0
  290. package/dist/collection/components/tabs/tabs.js +1 -0
  291. package/dist/collection/components/tabs/tabs.js.map +1 -0
  292. package/dist/collection/components/tile/tile.js +1 -0
  293. package/dist/collection/components/tile/tile.js.map +1 -0
  294. package/dist/collection/components/time-picker/time-picker.js +5 -4
  295. package/dist/collection/components/time-picker/time-picker.js.map +1 -0
  296. package/dist/collection/components/toast/toast-container.js +17 -4
  297. package/dist/collection/components/toast/toast-container.js.map +1 -0
  298. package/dist/collection/components/toast/toast-utils.js +5 -1
  299. package/dist/collection/components/toast/toast-utils.js.map +1 -0
  300. package/dist/collection/components/toast/toast.js +1 -0
  301. package/dist/collection/components/toast/toast.js.map +1 -0
  302. package/dist/collection/components/toggle/toggle.js +1 -0
  303. package/dist/collection/components/toggle/toggle.js.map +1 -0
  304. package/dist/collection/components/tooltip/tooltip.js +1 -0
  305. package/dist/collection/components/tooltip/tooltip.js.map +1 -0
  306. package/dist/collection/components/tree/tree-model.js +1 -0
  307. package/dist/collection/components/tree/tree-model.js.map +1 -0
  308. package/dist/collection/components/tree/tree.js +39 -0
  309. package/dist/collection/components/tree/tree.js.map +1 -0
  310. package/dist/collection/components/tree-item/default-tree-item.js +1 -0
  311. package/dist/collection/components/tree-item/default-tree-item.js.map +1 -0
  312. package/dist/collection/components/tree-item/tree-item.js +1 -0
  313. package/dist/collection/components/tree-item/tree-item.js.map +1 -0
  314. package/dist/collection/components/typography/types.js +1 -0
  315. package/dist/collection/components/typography/types.js.map +1 -0
  316. package/dist/collection/components/typography/typography.js +1 -0
  317. package/dist/collection/components/typography/typography.js.map +1 -0
  318. package/dist/collection/components/upload/upload-file-state.js +1 -0
  319. package/dist/collection/components/upload/upload-file-state.js.map +1 -0
  320. package/dist/collection/components/upload/upload.js +2 -1
  321. package/dist/collection/components/upload/upload.js.map +1 -0
  322. package/dist/collection/components/utils/animation.js +1 -0
  323. package/dist/collection/components/utils/animation.js.map +1 -0
  324. package/dist/collection/components/utils/menu-service/menu-service.js +1 -0
  325. package/dist/collection/components/utils/menu-service/menu-service.js.map +1 -0
  326. package/dist/collection/components/utils/mutation-observer.js +1 -0
  327. package/dist/collection/components/utils/mutation-observer.js.map +1 -0
  328. package/dist/collection/components/utils/notification-color.js +1 -0
  329. package/dist/collection/components/utils/notification-color.js.map +1 -0
  330. package/dist/collection/components/utils/rwd.util.js +1 -0
  331. package/dist/collection/components/utils/rwd.util.js.map +1 -0
  332. package/dist/collection/components/utils/screen/context.js +1 -0
  333. package/dist/collection/components/utils/screen/context.js.map +1 -0
  334. package/dist/collection/components/utils/screen/index.js +1 -0
  335. package/dist/collection/components/utils/screen/index.js.map +1 -0
  336. package/dist/collection/components/utils/screen/mode.js +1 -0
  337. package/dist/collection/components/utils/screen/mode.js.map +1 -0
  338. package/dist/collection/components/utils/screen/service.js +1 -0
  339. package/dist/collection/components/utils/screen/service.js.map +1 -0
  340. package/dist/collection/components/utils/theme-switcher.js +9 -8
  341. package/dist/collection/components/utils/theme-switcher.js.map +1 -0
  342. package/dist/collection/components/utils/typed-event.js +1 -0
  343. package/dist/collection/components/utils/typed-event.js.map +1 -0
  344. package/dist/collection/components/validation-tooltip/validation-tooltip.js +1 -0
  345. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -0
  346. package/dist/collection/components/workflow-step/workflow-step.js +1 -0
  347. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -0
  348. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -0
  349. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -0
  350. package/dist/collection/index.js +11 -6
  351. package/dist/collection/index.js.map +1 -0
  352. package/dist/collection/tests/utils/test/index.js +1 -0
  353. package/dist/collection/tests/utils/test/index.js.map +1 -0
  354. package/dist/collection/tests/utils/test/page.js +1 -0
  355. package/dist/collection/tests/utils/test/page.js.map +1 -0
  356. package/dist/collection/utils/test/index.js +1 -0
  357. package/dist/collection/utils/test/index.js.map +1 -0
  358. package/dist/collection/utils/test/page.js +1 -0
  359. package/dist/collection/utils/test/page.js.map +1 -0
  360. package/dist/components/_commonjsHelpers.js +2 -0
  361. package/dist/components/_commonjsHelpers.js.map +1 -0
  362. package/dist/components/animation.js +2 -0
  363. package/dist/components/animation.js.map +1 -0
  364. package/dist/components/anime.es.js +2 -0
  365. package/dist/components/anime.es.js.map +1 -0
  366. package/dist/components/application-header.js +2 -0
  367. package/dist/components/application-header.js.map +1 -0
  368. package/dist/components/base-button.js +2 -0
  369. package/dist/components/base-button.js.map +1 -0
  370. package/dist/components/burger-menu.js +2 -0
  371. package/dist/components/burger-menu.js.map +1 -0
  372. package/dist/components/button.js +2 -0
  373. package/dist/components/button.js.map +1 -0
  374. package/dist/components/date-picker.js +2 -0
  375. package/dist/components/date-picker.js.map +1 -0
  376. package/dist/components/date-time-card.js +2 -0
  377. package/dist/components/date-time-card.js.map +1 -0
  378. package/dist/components/default-tree-item.js +22 -0
  379. package/dist/components/default-tree-item.js.map +1 -0
  380. package/dist/components/dropdown-item.js +2 -0
  381. package/dist/components/dropdown-item.js.map +1 -0
  382. package/dist/components/dropdown.js +2 -0
  383. package/dist/components/dropdown.js.map +1 -0
  384. package/dist/components/filter-chip.js +4 -2
  385. package/dist/components/filter-chip.js.map +1 -0
  386. package/dist/components/flip-tile-state.js +20 -0
  387. package/dist/components/flip-tile-state.js.map +1 -0
  388. package/dist/components/floating-ui.dom.esm.js +2 -0
  389. package/dist/components/floating-ui.dom.esm.js.map +1 -0
  390. package/dist/components/group-context-menu.js +2 -0
  391. package/dist/components/group-context-menu.js.map +1 -0
  392. package/dist/components/group-item.js +2 -0
  393. package/dist/components/group-item.js.map +1 -0
  394. package/dist/components/icon-button.js +2 -0
  395. package/dist/components/icon-button.js.map +1 -0
  396. package/dist/components/icon.js +2 -0
  397. package/dist/components/icon.js.map +1 -0
  398. package/dist/components/index-button.js +41 -0
  399. package/dist/components/index-button.js.map +1 -0
  400. package/dist/components/index.d.ts +9 -75
  401. package/dist/components/index.js +13 -76
  402. package/dist/components/index.js.map +1 -0
  403. package/dist/components/ix-animated-tab.js +2 -0
  404. package/dist/components/ix-animated-tab.js.map +1 -0
  405. package/dist/components/ix-animated-tabs.js +2 -0
  406. package/dist/components/ix-animated-tabs.js.map +1 -0
  407. package/dist/components/ix-application-header.js +2 -0
  408. package/dist/components/ix-application-header.js.map +1 -0
  409. package/dist/components/ix-basic-navigation.js +2 -0
  410. package/dist/components/ix-basic-navigation.js.map +1 -0
  411. package/dist/components/ix-blind.js +17 -5
  412. package/dist/components/ix-blind.js.map +1 -0
  413. package/dist/components/ix-breadcrumb-item.js +2 -0
  414. package/dist/components/ix-breadcrumb-item.js.map +1 -0
  415. package/dist/components/ix-breadcrumb.js +3 -1
  416. package/dist/components/ix-breadcrumb.js.map +1 -0
  417. package/dist/components/ix-burger-menu.js +2 -0
  418. package/dist/components/ix-burger-menu.js.map +1 -0
  419. package/dist/components/ix-button.js +2 -0
  420. package/dist/components/ix-button.js.map +1 -0
  421. package/dist/components/ix-category-filter.js +6 -35
  422. package/dist/components/ix-category-filter.js.map +1 -0
  423. package/dist/components/ix-chip.js +8 -1
  424. package/dist/components/ix-chip.js.map +1 -0
  425. package/dist/components/ix-counter-pill.js +2 -0
  426. package/dist/components/ix-counter-pill.js.map +1 -0
  427. package/dist/components/ix-date-picker.js +2 -0
  428. package/dist/components/ix-date-picker.js.map +1 -0
  429. package/dist/components/ix-date-time-card.js +2 -0
  430. package/dist/components/ix-date-time-card.js.map +1 -0
  431. package/dist/components/ix-datetime-picker.js +5 -3
  432. package/dist/components/ix-datetime-picker.js.map +1 -0
  433. package/dist/components/ix-divider.js +2 -0
  434. package/dist/components/ix-divider.js.map +1 -0
  435. package/dist/components/ix-drawer.js +2 -0
  436. package/dist/components/ix-drawer.js.map +1 -0
  437. package/dist/components/ix-dropdown-button.js +2 -0
  438. package/dist/components/ix-dropdown-button.js.map +1 -0
  439. package/dist/components/ix-dropdown-item.js +2 -0
  440. package/dist/components/ix-dropdown-item.js.map +1 -0
  441. package/dist/components/ix-dropdown-quick-actions.js +2 -0
  442. package/dist/components/ix-dropdown-quick-actions.js.map +1 -0
  443. package/dist/components/ix-dropdown.js +2 -0
  444. package/dist/components/ix-dropdown.js.map +1 -0
  445. package/dist/components/ix-event-list-item.js +2 -0
  446. package/dist/components/ix-event-list-item.js.map +1 -0
  447. package/dist/components/ix-event-list.js +2 -0
  448. package/dist/components/ix-event-list.js.map +1 -0
  449. package/dist/components/ix-expanding-search.js +14 -12
  450. package/dist/components/ix-expanding-search.js.map +1 -0
  451. package/dist/components/ix-filter-chip.js +2 -0
  452. package/dist/components/ix-filter-chip.js.map +1 -0
  453. package/dist/components/ix-flip-tile-content.js +2 -0
  454. package/dist/components/ix-flip-tile-content.js.map +1 -0
  455. package/dist/components/ix-flip-tile.js +17 -20
  456. package/dist/components/ix-flip-tile.js.map +1 -0
  457. package/dist/components/ix-group-context-menu.js +2 -0
  458. package/dist/components/ix-group-context-menu.js.map +1 -0
  459. package/dist/components/ix-group-dropdown-item.js +2 -0
  460. package/dist/components/ix-group-dropdown-item.js.map +1 -0
  461. package/dist/components/ix-group-item.js +2 -0
  462. package/dist/components/ix-group-item.js.map +1 -0
  463. package/dist/components/ix-group.js +3 -1
  464. package/dist/components/ix-group.js.map +1 -0
  465. package/dist/components/ix-icon-button.js +2 -0
  466. package/dist/components/ix-icon-button.js.map +1 -0
  467. package/dist/components/ix-icon.js +2 -0
  468. package/dist/components/ix-icon.js.map +1 -0
  469. package/dist/components/ix-index-button.d.ts +11 -0
  470. package/dist/components/ix-index-button.js +8 -0
  471. package/dist/components/ix-index-button.js.map +1 -0
  472. package/dist/components/ix-input-group.js +3 -1
  473. package/dist/components/ix-input-group.js.map +1 -0
  474. package/dist/components/ix-kpi.js +2 -0
  475. package/dist/components/ix-kpi.js.map +1 -0
  476. package/dist/components/ix-map-navigation-overlay.js +2 -0
  477. package/dist/components/ix-map-navigation-overlay.js.map +1 -0
  478. package/dist/components/ix-map-navigation.js +2 -0
  479. package/dist/components/ix-map-navigation.js.map +1 -0
  480. package/dist/components/ix-menu-about-item.js +2 -0
  481. package/dist/components/ix-menu-about-item.js.map +1 -0
  482. package/dist/components/ix-menu-about-news.js +2 -0
  483. package/dist/components/ix-menu-about-news.js.map +1 -0
  484. package/dist/components/ix-menu-about.js +2 -0
  485. package/dist/components/ix-menu-about.js.map +1 -0
  486. package/dist/components/ix-menu-avatar-item.js +2 -0
  487. package/dist/components/ix-menu-avatar-item.js.map +1 -0
  488. package/dist/components/ix-menu-avatar.js +2 -0
  489. package/dist/components/ix-menu-avatar.js.map +1 -0
  490. package/dist/components/ix-menu-item.js +2 -0
  491. package/dist/components/ix-menu-item.js.map +1 -0
  492. package/dist/components/ix-menu-settings-item.js +2 -0
  493. package/dist/components/ix-menu-settings-item.js.map +1 -0
  494. package/dist/components/ix-menu-settings.js +2 -0
  495. package/dist/components/ix-menu-settings.js.map +1 -0
  496. package/dist/components/ix-menu.js +4 -88
  497. package/dist/components/ix-menu.js.map +1 -0
  498. package/dist/components/ix-message-bar.js +2 -0
  499. package/dist/components/ix-message-bar.js.map +1 -0
  500. package/dist/components/ix-modal-container.js +2 -0
  501. package/dist/components/ix-modal-container.js.map +1 -0
  502. package/dist/components/ix-modal-example.js +4 -38
  503. package/dist/components/ix-modal-example.js.map +1 -0
  504. package/dist/components/ix-modal.js +2 -0
  505. package/dist/components/ix-modal.js.map +1 -0
  506. package/dist/components/ix-pagination.d.ts +11 -0
  507. package/dist/components/ix-pagination.js +185 -0
  508. package/dist/components/ix-pagination.js.map +1 -0
  509. package/dist/components/ix-pill.js +2 -0
  510. package/dist/components/ix-pill.js.map +1 -0
  511. package/dist/components/ix-select-item.js +2 -0
  512. package/dist/components/ix-select-item.js.map +1 -0
  513. package/dist/components/ix-select.js +3 -341
  514. package/dist/components/ix-select.js.map +1 -0
  515. package/dist/components/ix-spinner.js +2 -0
  516. package/dist/components/ix-spinner.js.map +1 -0
  517. package/dist/components/ix-split-button-item.js +2 -0
  518. package/dist/components/ix-split-button-item.js.map +1 -0
  519. package/dist/components/ix-split-button.js +2 -0
  520. package/dist/components/ix-split-button.js.map +1 -0
  521. package/dist/components/ix-tab-item.js +2 -0
  522. package/dist/components/ix-tab-item.js.map +1 -0
  523. package/dist/components/ix-tabs.js +2 -0
  524. package/dist/components/ix-tabs.js.map +1 -0
  525. package/dist/components/ix-tile.js +2 -0
  526. package/dist/components/ix-tile.js.map +1 -0
  527. package/dist/components/ix-time-picker.js +2 -0
  528. package/dist/components/ix-time-picker.js.map +1 -0
  529. package/dist/components/ix-toast-container.js +12 -1
  530. package/dist/components/ix-toast-container.js.map +1 -0
  531. package/dist/components/ix-toast.js +2 -0
  532. package/dist/components/ix-toast.js.map +1 -0
  533. package/dist/components/ix-toggle.js +2 -0
  534. package/dist/components/ix-toggle.js.map +1 -0
  535. package/dist/components/ix-tooltip.js +2 -0
  536. package/dist/components/ix-tooltip.js.map +1 -0
  537. package/dist/components/ix-tree-item.js +2 -0
  538. package/dist/components/ix-tree-item.js.map +1 -0
  539. package/dist/components/ix-tree.js +8 -20
  540. package/dist/components/ix-tree.js.map +1 -0
  541. package/dist/components/ix-typography.js +2 -0
  542. package/dist/components/ix-typography.js.map +1 -0
  543. package/dist/components/ix-upload.js +5 -18
  544. package/dist/components/ix-upload.js.map +1 -0
  545. package/dist/components/ix-validation-tooltip.js +2 -0
  546. package/dist/components/ix-validation-tooltip.js.map +1 -0
  547. package/dist/components/ix-workflow-step.js +2 -0
  548. package/dist/components/ix-workflow-step.js.map +1 -0
  549. package/dist/components/ix-workflow-steps.js +2 -0
  550. package/dist/components/ix-workflow-steps.js.map +1 -0
  551. package/dist/{esm/logical-filter-operator-15696001.js → components/logical-filter-operator.js} +5 -3
  552. package/dist/components/logical-filter-operator.js.map +1 -0
  553. package/dist/components/luxon.js +2 -0
  554. package/dist/components/luxon.js.map +1 -0
  555. package/dist/components/map-navigation-overlay.js +2 -0
  556. package/dist/components/map-navigation-overlay.js.map +1 -0
  557. package/dist/components/menu-avatar-item.js +2 -0
  558. package/dist/components/menu-avatar-item.js.map +1 -0
  559. package/dist/components/menu-item.js +2 -0
  560. package/dist/components/menu-item.js.map +1 -0
  561. package/dist/components/modal-container.js +2 -0
  562. package/dist/components/modal-container.js.map +1 -0
  563. package/dist/components/modal-utils.js +40 -0
  564. package/dist/components/modal-utils.js.map +1 -0
  565. package/dist/components/modal.js +2 -0
  566. package/dist/components/modal.js.map +1 -0
  567. package/dist/components/mutation-observer.js +2 -0
  568. package/dist/components/mutation-observer.js.map +1 -0
  569. package/dist/components/my-component.js +2 -0
  570. package/dist/components/my-component.js.map +1 -0
  571. package/dist/components/rwd.util.js +2 -0
  572. package/dist/components/rwd.util.js.map +1 -0
  573. package/dist/components/select-item.js +2 -0
  574. package/dist/components/select-item.js.map +1 -0
  575. package/dist/components/select.js +345 -0
  576. package/dist/components/select.js.map +1 -0
  577. package/dist/components/service.js +2 -0
  578. package/dist/components/service.js.map +1 -0
  579. package/dist/components/spinner.js +2 -0
  580. package/dist/components/spinner.js.map +1 -0
  581. package/dist/components/tab-item.js +2 -0
  582. package/dist/components/tab-item.js.map +1 -0
  583. package/dist/components/tabs.js +2 -0
  584. package/dist/components/tabs.js.map +1 -0
  585. package/dist/components/theme-switcher.js +91 -0
  586. package/dist/components/theme-switcher.js.map +1 -0
  587. package/dist/components/time-picker.js +2 -0
  588. package/dist/components/time-picker.js.map +1 -0
  589. package/dist/components/toast.js +2 -0
  590. package/dist/components/toast.js.map +1 -0
  591. package/dist/components/tree-item.js +2 -0
  592. package/dist/components/tree-item.js.map +1 -0
  593. package/dist/components/typed-event.js +2 -0
  594. package/dist/components/typed-event.js.map +1 -0
  595. package/dist/components/typography.js +2 -0
  596. package/dist/components/typography.js.map +1 -0
  597. package/dist/components/upload-file-state.js +19 -0
  598. package/dist/components/upload-file-state.js.map +1 -0
  599. package/dist/esm/_commonjsHelpers-4bc7200a.js +2 -0
  600. package/dist/esm/_commonjsHelpers-4bc7200a.js.map +1 -0
  601. package/dist/esm/animation-268dce50.js +2 -0
  602. package/dist/esm/animation-268dce50.js.map +1 -0
  603. package/dist/esm/anime.es-185e9087.js +2 -0
  604. package/dist/esm/anime.es-185e9087.js.map +1 -0
  605. package/dist/esm/base-button-5bfeb71c.js +2 -0
  606. package/dist/esm/base-button-5bfeb71c.js.map +1 -0
  607. package/dist/esm/context-f6a2b727.js +2 -0
  608. package/dist/esm/context-f6a2b727.js.map +1 -0
  609. package/dist/esm/default-tree-item-91ff2c08.js +2 -0
  610. package/dist/esm/default-tree-item-91ff2c08.js.map +1 -0
  611. package/dist/esm/flip-tile-state-051bb2fd.js +2 -0
  612. package/dist/esm/flip-tile-state-051bb2fd.js.map +1 -0
  613. package/dist/esm/floating-ui.dom.esm-3130eda0.js +2 -0
  614. package/dist/esm/floating-ui.dom.esm-3130eda0.js.map +1 -0
  615. package/dist/esm/{index-6b660a23.js → index-3d163acd.js} +133 -4
  616. package/dist/esm/index-3d163acd.js.map +1 -0
  617. package/dist/esm/index.js +9 -8
  618. package/dist/esm/index.js.map +1 -0
  619. package/dist/esm/ix-animated-tab_2.entry.js +3 -1
  620. package/dist/esm/ix-animated-tab_2.entry.js.map +1 -0
  621. package/dist/esm/ix-application-header.entry.js +3 -1
  622. package/dist/esm/ix-application-header.entry.js.map +1 -0
  623. package/dist/esm/ix-basic-navigation.entry.js +3 -1
  624. package/dist/esm/ix-basic-navigation.entry.js.map +1 -0
  625. package/dist/esm/ix-blind.entry.js +9 -4
  626. package/dist/esm/ix-blind.entry.js.map +1 -0
  627. package/dist/esm/ix-breadcrumb_2.entry.js +4 -2
  628. package/dist/esm/ix-breadcrumb_2.entry.js.map +1 -0
  629. package/dist/esm/ix-burger-menu.entry.js +3 -1
  630. package/dist/esm/ix-burger-menu.entry.js.map +1 -0
  631. package/dist/esm/ix-button.entry.js +3 -1
  632. package/dist/esm/ix-button.entry.js.map +1 -0
  633. package/dist/esm/ix-category-filter.entry.js +6 -4
  634. package/dist/esm/ix-category-filter.entry.js.map +1 -0
  635. package/dist/esm/ix-chip.entry.js +9 -2
  636. package/dist/esm/ix-chip.entry.js.map +1 -0
  637. package/dist/esm/ix-counter-pill.entry.js +3 -1
  638. package/dist/esm/ix-counter-pill.entry.js.map +1 -0
  639. package/dist/esm/ix-date-picker_2.entry.js +3 -1
  640. package/dist/esm/ix-date-picker_2.entry.js.map +1 -0
  641. package/dist/esm/ix-date-time-card.entry.js +3 -1
  642. package/dist/esm/ix-date-time-card.entry.js.map +1 -0
  643. package/dist/esm/ix-datetime-picker.entry.js +6 -4
  644. package/dist/esm/ix-datetime-picker.entry.js.map +1 -0
  645. package/dist/esm/ix-divider.entry.js +3 -1
  646. package/dist/esm/ix-divider.entry.js.map +1 -0
  647. package/dist/esm/ix-drawer.entry.js +3 -1
  648. package/dist/esm/ix-drawer.entry.js.map +1 -0
  649. package/dist/esm/ix-dropdown-button.entry.js +3 -1
  650. package/dist/esm/ix-dropdown-button.entry.js.map +1 -0
  651. package/dist/esm/ix-dropdown-quick-actions.entry.js +3 -1
  652. package/dist/esm/ix-dropdown-quick-actions.entry.js.map +1 -0
  653. package/dist/esm/ix-dropdown_2.entry.js +3 -1
  654. package/dist/esm/ix-dropdown_2.entry.js.map +1 -0
  655. package/dist/esm/ix-event-list_2.entry.js +3 -1
  656. package/dist/esm/ix-event-list_2.entry.js.map +1 -0
  657. package/dist/esm/ix-expanding-search.entry.js +14 -12
  658. package/dist/esm/ix-expanding-search.entry.js.map +1 -0
  659. package/dist/esm/ix-filter-chip.entry.js +5 -3
  660. package/dist/esm/ix-filter-chip.entry.js.map +1 -0
  661. package/dist/esm/ix-flip-tile_2.entry.js +14 -3
  662. package/dist/esm/ix-flip-tile_2.entry.js.map +1 -0
  663. package/dist/esm/ix-group-context-menu.entry.js +3 -1
  664. package/dist/esm/ix-group-context-menu.entry.js.map +1 -0
  665. package/dist/esm/ix-group_3.entry.js +4 -2
  666. package/dist/esm/ix-group_3.entry.js.map +1 -0
  667. package/dist/esm/ix-icon-button.entry.js +3 -1
  668. package/dist/esm/ix-icon-button.entry.js.map +1 -0
  669. package/dist/esm/ix-icon.entry.js +3 -1
  670. package/dist/esm/ix-icon.entry.js.map +1 -0
  671. package/dist/esm/ix-index-button.entry.js +24 -0
  672. package/dist/esm/ix-index-button.entry.js.map +1 -0
  673. package/dist/esm/ix-input-group.entry.js +4 -2
  674. package/dist/esm/ix-input-group.entry.js.map +1 -0
  675. package/dist/esm/ix-kpi.entry.js +3 -1
  676. package/dist/esm/ix-kpi.entry.js.map +1 -0
  677. package/dist/esm/ix-map-navigation_2.entry.js +3 -1
  678. package/dist/esm/ix-map-navigation_2.entry.js.map +1 -0
  679. package/dist/esm/ix-menu_9.entry.js +4 -2
  680. package/dist/esm/ix-menu_9.entry.js.map +1 -0
  681. package/dist/esm/ix-message-bar.entry.js +3 -1
  682. package/dist/esm/ix-message-bar.entry.js.map +1 -0
  683. package/dist/esm/ix-modal-example.entry.js +3 -1
  684. package/dist/esm/ix-modal-example.entry.js.map +1 -0
  685. package/dist/esm/ix-modal_2.entry.js +210 -5
  686. package/dist/esm/ix-modal_2.entry.js.map +1 -0
  687. package/dist/esm/ix-pagination.entry.js +111 -0
  688. package/dist/esm/ix-pagination.entry.js.map +1 -0
  689. package/dist/esm/ix-pill.entry.js +3 -1
  690. package/dist/esm/ix-pill.entry.js.map +1 -0
  691. package/dist/esm/ix-select_2.entry.js +3 -1
  692. package/dist/esm/ix-select_2.entry.js.map +1 -0
  693. package/dist/esm/ix-spinner.entry.js +3 -1
  694. package/dist/esm/ix-spinner.entry.js.map +1 -0
  695. package/dist/esm/ix-split-button_2.entry.js +3 -1
  696. package/dist/esm/ix-split-button_2.entry.js.map +1 -0
  697. package/dist/esm/ix-tab-item.entry.js +3 -1
  698. package/dist/esm/ix-tab-item.entry.js.map +1 -0
  699. package/dist/esm/ix-tabs.entry.js +3 -1
  700. package/dist/esm/ix-tabs.entry.js.map +1 -0
  701. package/dist/esm/ix-tile.entry.js +3 -1
  702. package/dist/esm/ix-tile.entry.js.map +1 -0
  703. package/dist/esm/ix-toast_2.entry.js +13 -2
  704. package/dist/esm/ix-toast_2.entry.js.map +1 -0
  705. package/dist/esm/ix-toggle.entry.js +3 -1
  706. package/dist/esm/ix-toggle.entry.js.map +1 -0
  707. package/dist/esm/ix-tooltip.entry.js +3 -1
  708. package/dist/esm/ix-tooltip.entry.js.map +1 -0
  709. package/dist/esm/ix-tree_2.entry.js +7 -1
  710. package/dist/esm/ix-tree_2.entry.js.map +1 -0
  711. package/dist/esm/ix-typography.entry.js +3 -1
  712. package/dist/esm/ix-typography.entry.js.map +1 -0
  713. package/dist/esm/ix-upload.entry.js +4 -2
  714. package/dist/esm/ix-upload.entry.js.map +1 -0
  715. package/dist/esm/ix-validation-tooltip.entry.js +3 -1
  716. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -0
  717. package/dist/esm/ix-workflow-step_2.entry.js +3 -1
  718. package/dist/esm/ix-workflow-step_2.entry.js.map +1 -0
  719. package/dist/esm/loader.js +6 -3
  720. package/dist/esm/loader.js.map +1 -0
  721. package/dist/esm/logical-filter-operator-92531263.js +35 -0
  722. package/dist/esm/logical-filter-operator-92531263.js.map +1 -0
  723. package/dist/esm/modal-utils-aecbcba5.js +2 -0
  724. package/dist/esm/modal-utils-aecbcba5.js.map +1 -0
  725. package/dist/esm/mutation-observer-7d01bbea.js +2 -0
  726. package/dist/esm/mutation-observer-7d01bbea.js.map +1 -0
  727. package/dist/esm/my-component.entry.js +3 -1
  728. package/dist/esm/my-component.entry.js.map +1 -0
  729. package/dist/esm/polyfills/css-shim.js +1 -1
  730. package/dist/esm/rwd.util-cfc2ea72.js +2 -0
  731. package/dist/esm/rwd.util-cfc2ea72.js.map +1 -0
  732. package/dist/esm/service-fc436c5b.js +2 -0
  733. package/dist/esm/service-fc436c5b.js.map +1 -0
  734. package/dist/esm/siemens-ix.js +9 -3
  735. package/dist/esm/siemens-ix.js.map +1 -0
  736. package/dist/esm/{theme-switcher-4b9e5cc2.js → theme-switcher-7498e4f2.js} +10 -8
  737. package/dist/esm/theme-switcher-7498e4f2.js.map +1 -0
  738. package/dist/esm/typed-event-a230184a.js +2 -0
  739. package/dist/esm/typed-event-a230184a.js.map +1 -0
  740. package/dist/esm/upload-file-state-532a36d3.js +2 -0
  741. package/dist/esm/upload-file-state-532a36d3.js.map +1 -0
  742. package/dist/siemens-ix/index.esm.js +2 -1
  743. package/dist/siemens-ix/index.esm.js.map +1 -0
  744. package/dist/siemens-ix/p-01f9f803.entry.js +2 -0
  745. package/dist/siemens-ix/p-01f9f803.entry.js.map +1 -0
  746. package/dist/siemens-ix/p-030078b4.entry.js +2 -0
  747. package/dist/siemens-ix/p-030078b4.entry.js.map +1 -0
  748. package/dist/siemens-ix/p-042b490c.entry.js +2 -0
  749. package/dist/siemens-ix/p-042b490c.entry.js.map +1 -0
  750. package/dist/siemens-ix/p-076c29d1.js +2 -1
  751. package/dist/siemens-ix/p-076c29d1.js.map +1 -0
  752. package/dist/siemens-ix/p-07fd8298.entry.js +2 -0
  753. package/dist/siemens-ix/p-07fd8298.entry.js.map +1 -0
  754. package/dist/siemens-ix/p-0e8a6997.entry.js +2 -0
  755. package/dist/siemens-ix/p-0e8a6997.entry.js.map +1 -0
  756. package/dist/siemens-ix/p-0f864265.entry.js +2 -0
  757. package/dist/siemens-ix/p-0f864265.entry.js.map +1 -0
  758. package/dist/siemens-ix/p-13adcf62.entry.js +2 -0
  759. package/dist/siemens-ix/p-13adcf62.entry.js.map +1 -0
  760. package/dist/siemens-ix/p-1572aab3.js +2 -1
  761. package/dist/siemens-ix/p-1572aab3.js.map +1 -0
  762. package/dist/siemens-ix/p-15bebd8a.js +2 -1
  763. package/dist/siemens-ix/p-15bebd8a.js.map +1 -0
  764. package/dist/siemens-ix/p-1666b0e2.entry.js +2 -0
  765. package/dist/siemens-ix/p-1666b0e2.entry.js.map +1 -0
  766. package/dist/siemens-ix/p-16ec6f50.entry.js +2 -0
  767. package/dist/siemens-ix/p-16ec6f50.entry.js.map +1 -0
  768. package/dist/siemens-ix/p-1701b127.entry.js +2 -0
  769. package/dist/siemens-ix/p-1701b127.entry.js.map +1 -0
  770. package/dist/siemens-ix/p-1a87eb66.entry.js +2 -0
  771. package/dist/siemens-ix/p-1a87eb66.entry.js.map +1 -0
  772. package/dist/siemens-ix/p-20bed29f.entry.js +2 -0
  773. package/dist/siemens-ix/p-20bed29f.entry.js.map +1 -0
  774. package/dist/siemens-ix/p-21aa3602.js +2 -1
  775. package/dist/siemens-ix/p-21aa3602.js.map +1 -0
  776. package/dist/siemens-ix/p-24d2d95e.entry.js +2 -0
  777. package/dist/siemens-ix/p-24d2d95e.entry.js.map +1 -0
  778. package/dist/siemens-ix/p-283686d7.entry.js +2 -0
  779. package/dist/siemens-ix/p-283686d7.entry.js.map +1 -0
  780. package/dist/siemens-ix/p-28f50519.entry.js +2 -0
  781. package/dist/siemens-ix/p-28f50519.entry.js.map +1 -0
  782. package/dist/siemens-ix/p-2dafa048.entry.js +2 -0
  783. package/dist/siemens-ix/p-2dafa048.entry.js.map +1 -0
  784. package/dist/siemens-ix/p-323d5529.js +2 -0
  785. package/dist/siemens-ix/p-323d5529.js.map +1 -0
  786. package/dist/siemens-ix/p-34e3a10e.entry.js +2 -0
  787. package/dist/siemens-ix/p-34e3a10e.entry.js.map +1 -0
  788. package/dist/siemens-ix/p-37417714.js +2 -1
  789. package/dist/siemens-ix/p-37417714.js.map +1 -0
  790. package/dist/siemens-ix/p-3776a37f.entry.js +2 -0
  791. package/dist/siemens-ix/p-3776a37f.entry.js.map +1 -0
  792. package/dist/siemens-ix/p-3b97bb69.js +2 -1
  793. package/dist/siemens-ix/p-3b97bb69.js.map +1 -0
  794. package/dist/siemens-ix/p-41f0a2b2.entry.js +2 -0
  795. package/dist/siemens-ix/p-41f0a2b2.entry.js.map +1 -0
  796. package/dist/siemens-ix/p-43965bd0.entry.js +2 -0
  797. package/dist/siemens-ix/p-43965bd0.entry.js.map +1 -0
  798. package/dist/siemens-ix/p-446a0a3f.entry.js +2 -0
  799. package/dist/siemens-ix/p-446a0a3f.entry.js.map +1 -0
  800. package/dist/siemens-ix/p-4ec66090.entry.js +2 -0
  801. package/dist/siemens-ix/p-4ec66090.entry.js.map +1 -0
  802. package/dist/siemens-ix/p-529d7530.js +2 -1
  803. package/dist/siemens-ix/p-529d7530.js.map +1 -0
  804. package/dist/siemens-ix/p-55d0fabf.entry.js +2 -0
  805. package/dist/siemens-ix/p-55d0fabf.entry.js.map +1 -0
  806. package/dist/siemens-ix/p-56ed024b.js +2 -1
  807. package/dist/siemens-ix/p-56ed024b.js.map +1 -0
  808. package/dist/siemens-ix/p-58ef1328.entry.js +2 -0
  809. package/dist/siemens-ix/p-58ef1328.entry.js.map +1 -0
  810. package/dist/siemens-ix/p-5b39e04e.js +2 -1
  811. package/dist/siemens-ix/p-5b39e04e.js.map +1 -0
  812. package/dist/siemens-ix/p-5d7e1440.entry.js +2 -0
  813. package/dist/siemens-ix/p-5d7e1440.entry.js.map +1 -0
  814. package/dist/siemens-ix/p-62b4d696.entry.js +2 -0
  815. package/dist/siemens-ix/p-62b4d696.entry.js.map +1 -0
  816. package/dist/siemens-ix/p-63666529.entry.js +2 -0
  817. package/dist/siemens-ix/p-63666529.entry.js.map +1 -0
  818. package/dist/siemens-ix/p-63e1264b.entry.js +2 -0
  819. package/dist/siemens-ix/p-63e1264b.entry.js.map +1 -0
  820. package/dist/siemens-ix/p-65b6330a.entry.js +2 -0
  821. package/dist/siemens-ix/p-65b6330a.entry.js.map +1 -0
  822. package/dist/siemens-ix/p-6bdfaf91.entry.js +2 -0
  823. package/dist/siemens-ix/p-6bdfaf91.entry.js.map +1 -0
  824. package/dist/siemens-ix/p-6f819085.js +2 -0
  825. package/dist/siemens-ix/p-6f819085.js.map +1 -0
  826. package/dist/siemens-ix/p-6facc3cc.entry.js +2 -0
  827. package/dist/siemens-ix/p-6facc3cc.entry.js.map +1 -0
  828. package/dist/siemens-ix/p-73f7ef87.entry.js +2 -0
  829. package/dist/siemens-ix/p-73f7ef87.entry.js.map +1 -0
  830. package/dist/siemens-ix/p-7d4a7388.entry.js +2 -0
  831. package/dist/siemens-ix/p-7d4a7388.entry.js.map +1 -0
  832. package/dist/siemens-ix/p-810b5232.js +2 -1
  833. package/dist/siemens-ix/p-810b5232.js.map +1 -0
  834. package/dist/siemens-ix/p-88a47c9b.entry.js +2 -0
  835. package/dist/siemens-ix/p-88a47c9b.entry.js.map +1 -0
  836. package/dist/siemens-ix/p-8fcd6f85.js +3 -0
  837. package/dist/siemens-ix/p-8fcd6f85.js.map +1 -0
  838. package/dist/siemens-ix/p-909ccf09.entry.js +2 -0
  839. package/dist/siemens-ix/p-909ccf09.entry.js.map +1 -0
  840. package/dist/siemens-ix/p-9546cbdd.entry.js +2 -0
  841. package/dist/siemens-ix/p-9546cbdd.entry.js.map +1 -0
  842. package/dist/siemens-ix/p-9ee41861.js +2 -1
  843. package/dist/siemens-ix/p-9ee41861.js.map +1 -0
  844. package/dist/siemens-ix/p-a30c7b5a.entry.js +2 -0
  845. package/dist/siemens-ix/p-a30c7b5a.entry.js.map +1 -0
  846. package/dist/siemens-ix/p-a4178e26.entry.js +2 -0
  847. package/dist/siemens-ix/p-a4178e26.entry.js.map +1 -0
  848. package/dist/siemens-ix/p-a4a16daa.entry.js +2 -0
  849. package/dist/siemens-ix/p-a4a16daa.entry.js.map +1 -0
  850. package/dist/siemens-ix/p-a92126b5.entry.js +2 -0
  851. package/dist/siemens-ix/p-a92126b5.entry.js.map +1 -0
  852. package/dist/siemens-ix/p-aa4141e4.entry.js +2 -0
  853. package/dist/siemens-ix/p-aa4141e4.entry.js.map +1 -0
  854. package/dist/siemens-ix/p-afd1f351.entry.js +2 -0
  855. package/dist/siemens-ix/p-afd1f351.entry.js.map +1 -0
  856. package/dist/siemens-ix/p-b14308ed.js +2 -1
  857. package/dist/siemens-ix/p-b14308ed.js.map +1 -0
  858. package/dist/siemens-ix/p-b64e82ce.entry.js +2 -0
  859. package/dist/siemens-ix/p-b64e82ce.entry.js.map +1 -0
  860. package/dist/siemens-ix/p-b9fbd029.entry.js +2 -0
  861. package/dist/siemens-ix/p-b9fbd029.entry.js.map +1 -0
  862. package/dist/siemens-ix/p-c0454c9a.js +2 -1
  863. package/dist/siemens-ix/p-c0454c9a.js.map +1 -0
  864. package/dist/siemens-ix/p-c19c2492.entry.js +2 -0
  865. package/dist/siemens-ix/p-c19c2492.entry.js.map +1 -0
  866. package/dist/siemens-ix/p-d7a3acce.entry.js +2 -0
  867. package/dist/siemens-ix/p-d7a3acce.entry.js.map +1 -0
  868. package/dist/siemens-ix/p-d7cf7a1a.entry.js +2 -0
  869. package/dist/siemens-ix/p-d7cf7a1a.entry.js.map +1 -0
  870. package/dist/siemens-ix/p-eb301ea2.entry.js +2 -0
  871. package/dist/siemens-ix/p-eb301ea2.entry.js.map +1 -0
  872. package/dist/siemens-ix/p-f34a16c6.js +2 -1
  873. package/dist/siemens-ix/p-f34a16c6.js.map +1 -0
  874. package/dist/siemens-ix/p-f6509805.entry.js +2 -0
  875. package/dist/siemens-ix/p-f6509805.entry.js.map +1 -0
  876. package/dist/siemens-ix/p-f6c54047.entry.js +2 -0
  877. package/dist/siemens-ix/p-f6c54047.entry.js.map +1 -0
  878. package/dist/siemens-ix/p-fef2f9e0.entry.js +2 -0
  879. package/dist/siemens-ix/p-fef2f9e0.entry.js.map +1 -0
  880. package/dist/siemens-ix/siemens-ix.css +79 -1092
  881. package/dist/siemens-ix/siemens-ix.esm.js +2 -1
  882. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -0
  883. package/dist/types/components/blind/blind.d.ts +5 -0
  884. package/dist/types/components/button/button.d.ts +2 -2
  885. package/dist/types/components/chip/chip.d.ts +8 -0
  886. package/dist/types/components/date-picker/date-picker.d.ts +6 -1
  887. package/dist/types/components/date-time-card/date-time-card.d.ts +4 -1
  888. package/dist/types/components/datetime-picker/datetime-picker.d.ts +8 -3
  889. package/dist/types/components/dropdown/alignment.d.ts +1 -1
  890. package/dist/types/components/dropdown/dropdown.d.ts +4 -1
  891. package/dist/types/components/dropdown-button/dropdown-button.d.ts +3 -2
  892. package/dist/types/components/flip-tile/flip-tile.d.ts +11 -0
  893. package/dist/types/components/icon-button/icon-button.d.ts +3 -2
  894. package/dist/types/components/index-button/index-button.d.ts +16 -0
  895. package/dist/types/components/modal/modal-utils.d.ts +1 -1
  896. package/dist/types/components/modal-container/modal-container.d.ts +1 -1
  897. package/dist/types/components/pagination/pagination.d.ts +55 -0
  898. package/dist/types/components/split-button/split-button.d.ts +3 -2
  899. package/dist/types/components/time-picker/time-picker.d.ts +2 -1
  900. package/dist/types/components/toast/toast-container.d.ts +3 -1
  901. package/dist/types/components/toast/toast-utils.d.ts +9 -6
  902. package/dist/types/components/tree/tree-model.d.ts +4 -4
  903. package/dist/types/components/tree/tree.d.ts +13 -0
  904. package/dist/types/components/tree-item/default-tree-item.d.ts +1 -1
  905. package/dist/types/components/typography/types.d.ts +1 -1
  906. package/dist/types/components/utils/notification-color.d.ts +1 -1
  907. package/dist/types/components/utils/screen/mode.d.ts +2 -2
  908. package/dist/types/components/utils/typed-event.d.ts +2 -2
  909. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +1 -1
  910. package/dist/types/components.d.ts +273 -20
  911. package/dist/types/index.d.ts +10 -9
  912. package/dist/types/stencil-public-runtime.d.ts +71 -15
  913. package/loader/index.d.ts +9 -0
  914. package/package.json +19 -18
  915. package/scss/components/_forms.scss +1 -1
  916. package/dist/cjs/modal-a93045dd.js +0 -211
  917. package/dist/collection/components/button/button-variants.js +0 -1
  918. package/dist/collection/components/date-picker/events.js +0 -1
  919. package/dist/collection/components/datetime-picker/event.js +0 -1
  920. package/dist/collection/components/dropdown/dropdown-trigger-event.js +0 -1
  921. package/dist/collection/env.js +0 -9
  922. package/dist/collection/exports.js +0 -17
  923. package/dist/esm/modal-64e18970.js +0 -208
  924. package/dist/siemens-ix/p-06d5ab35.entry.js +0 -1
  925. package/dist/siemens-ix/p-098e22c3.entry.js +0 -1
  926. package/dist/siemens-ix/p-0bc4408b.entry.js +0 -1
  927. package/dist/siemens-ix/p-0d619f3e.entry.js +0 -1
  928. package/dist/siemens-ix/p-0dfe994b.entry.js +0 -1
  929. package/dist/siemens-ix/p-122c7f57.entry.js +0 -1
  930. package/dist/siemens-ix/p-122cf38d.entry.js +0 -1
  931. package/dist/siemens-ix/p-165c6a82.entry.js +0 -1
  932. package/dist/siemens-ix/p-1d48ce36.entry.js +0 -1
  933. package/dist/siemens-ix/p-20c88582.entry.js +0 -1
  934. package/dist/siemens-ix/p-22e84c7c.entry.js +0 -1
  935. package/dist/siemens-ix/p-2b33ead4.js +0 -1
  936. package/dist/siemens-ix/p-346c6c2f.entry.js +0 -1
  937. package/dist/siemens-ix/p-3624a41c.entry.js +0 -1
  938. package/dist/siemens-ix/p-3cc4df65.entry.js +0 -1
  939. package/dist/siemens-ix/p-4b2265fd.entry.js +0 -1
  940. package/dist/siemens-ix/p-4da15801.entry.js +0 -1
  941. package/dist/siemens-ix/p-560cfce8.entry.js +0 -1
  942. package/dist/siemens-ix/p-5890faf9.entry.js +0 -1
  943. package/dist/siemens-ix/p-5b47360e.entry.js +0 -1
  944. package/dist/siemens-ix/p-5ca7b937.entry.js +0 -1
  945. package/dist/siemens-ix/p-5feec7a4.entry.js +0 -1
  946. package/dist/siemens-ix/p-622fb593.entry.js +0 -1
  947. package/dist/siemens-ix/p-63776469.entry.js +0 -1
  948. package/dist/siemens-ix/p-66074788.js +0 -2
  949. package/dist/siemens-ix/p-67cf5cd4.entry.js +0 -1
  950. package/dist/siemens-ix/p-68ec0b51.entry.js +0 -1
  951. package/dist/siemens-ix/p-6b463b40.entry.js +0 -1
  952. package/dist/siemens-ix/p-6be65050.entry.js +0 -1
  953. package/dist/siemens-ix/p-71c91a11.entry.js +0 -1
  954. package/dist/siemens-ix/p-72cc8632.entry.js +0 -1
  955. package/dist/siemens-ix/p-75abd144.js +0 -1
  956. package/dist/siemens-ix/p-80fe33d1.entry.js +0 -1
  957. package/dist/siemens-ix/p-8778ba75.entry.js +0 -1
  958. package/dist/siemens-ix/p-94b440bc.entry.js +0 -1
  959. package/dist/siemens-ix/p-9c8c835c.entry.js +0 -1
  960. package/dist/siemens-ix/p-9eb8347c.entry.js +0 -1
  961. package/dist/siemens-ix/p-9fa6a59b.entry.js +0 -1
  962. package/dist/siemens-ix/p-ac1d6617.entry.js +0 -1
  963. package/dist/siemens-ix/p-ae35c07f.entry.js +0 -1
  964. package/dist/siemens-ix/p-affb60fb.js +0 -1
  965. package/dist/siemens-ix/p-b0573cc6.entry.js +0 -1
  966. package/dist/siemens-ix/p-b85458fb.entry.js +0 -1
  967. package/dist/siemens-ix/p-c2b50878.entry.js +0 -1
  968. package/dist/siemens-ix/p-c4568016.entry.js +0 -1
  969. package/dist/siemens-ix/p-c92ee533.entry.js +0 -1
  970. package/dist/siemens-ix/p-d1a16c62.entry.js +0 -1
  971. package/dist/siemens-ix/p-d1a8d791.entry.js +0 -1
  972. package/dist/siemens-ix/p-d7618223.entry.js +0 -1
  973. package/dist/siemens-ix/p-e5fd4b34.entry.js +0 -1
  974. package/dist/siemens-ix/p-f3cde62f.entry.js +0 -1
  975. package/dist/siemens-ix/p-fa262af7.entry.js +0 -1
  976. package/dist/siemens-ix/p-feefa8c7.entry.js +0 -1
  977. package/dist/types/components/button/button-variants.d.ts +0 -1
  978. package/dist/types/components/date-picker/events.d.ts +0 -5
  979. package/dist/types/components/datetime-picker/event.d.ts +0 -5
  980. package/dist/types/components/dropdown/dropdown-trigger-event.d.ts +0 -4
  981. package/dist/types/env.d.ts +0 -1
  982. package/dist/types/exports.d.ts +0 -9
@@ -0,0 +1 @@
1
+ {"version":3,"names":["categoryFilterCss","CategoryFilter","this","ID_CUSTOM_FILTER_VALUE","LogicalFilterOperator","EQUAL","watchFilterState","newValue","setFilterState","componentDidLoad","initialState","undefined","filterState","setTimeout","_a","hostElement","addEventListener","handleFormElementKeyDown","bind","_b","formElement","e","preventDefault","textInput","console","warn","hasFocus","inputValue","value","inputState","InputState","category","inputChanged","emit","handleInputElementKeyDown","state","filterTokens","token","tokens","addToken","categoryLogicalOperator","categories","id","operator","emitFilterEvent","closeDropdown","querySelector","show","code","document","activeElement","classList","contains","getAttribute","hasCategorySelection","selectCategory","focusPreviousItem","focusNextItem","sibling","previousSibling","HTMLElement","focus","nextSibling","selector","item","stopPropagation","suggestions","length","tokenCount","removeToken","filter","map","filterChanged","emitEvent","newToken","trim","find","pair","isScrollStateDirty","index","_","i","getCategoryIds","ids","Object","prototype","hasOwnProperty","call","push","resetFilter","filterMultiples","repeatCategories","isCategoryAlreadySet","filterDuplicateTokens","isTokenAlreadySet","some","filterByInput","toLowerCase","indexOf","toggleCategoryOperator","NOT_EQUAL","getFilterChipLabel","operatorString","label","_c","nonSelectableCategories","getFilteredSuggestions","displayDropdown","renderPlainSuggestions","h","class","suggestion","onClick","key","title","renderCategoryValues","tabindex","options","renderDropdownContent","renderCategorySelection","getDropdownHeader","labelCategories","i18nPlainText","componentDidRender","tmpDisableScrollIntoView","scrollIntoView","getResetButton","variant","ghost","oval","icon","size","render","Host","ref","el","hideIcon","name","toString","animate__animated","animate__fadein","onCloseClick","type","placeholder","closeBehavior","trigger","triggerEvent","header"],"sources":["./src/components/category-filter/category-filter.scss?tag=ix-category-filter&encapsulation=scoped","./src/components/category-filter/category-filter.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/fonts';\n@import 'mixins/hover';\n@import 'mixins/shadows';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n position: relative;\n\n .focus {\n border-color: var(--theme-color-primary);\n box-shadow: 0 0 $tiny-space 0 var(--theme-color-primary) !important;\n }\n\n .reset-button {\n position: absolute;\n top: $tiny-space;\n right: $tiny-space;\n }\n\n .reset-button.hide-reset-button {\n display: none;\n }\n\n .input-container {\n display: flex;\n height: 100%;\n max-height: 3.75rem;\n padding: 1px $large-space 1px $x-large-space;\n\n &.no-icon {\n padding-left: $tiny-space;\n }\n }\n\n .token-container {\n flex-grow: 1;\n overflow: hidden;\n }\n\n .text-input {\n @include ellipsis;\n @include text-default;\n background: transparent;\n flex-grow: 1;\n height: 1.75rem;\n\n &,\n &:hover,\n &:focus-visible {\n border: none;\n outline: none;\n }\n\n &.hide-placeholder::placeholder {\n opacity: 0;\n }\n }\n\n .list-unstyled {\n display: flex;\n flex-wrap: wrap;\n list-style: none;\n padding: 0;\n margin: 0;\n overflow-y: auto;\n }\n\n ix-icon {\n position: absolute;\n top: $small-space;\n left: $small-space;\n }\n\n ix-filter-chip {\n margin-right: $small-space;\n }\n\n .category-preview {\n display: flex;\n align-items: center;\n height: $large-space;\n background-color: var(--theme-bg-3);\n border-top-left-radius: $default-space;\n border-bottom-left-radius: $default-space;\n padding: $small-space;\n margin: 2px 0;\n }\n\n ul {\n height: 100%;\n }\n\n ul > li,\n input {\n padding-top: 2px;\n padding-bottom: 2px;\n }\n\n ix-dropdown {\n min-width: 10rem !important;\n\n .dropdown-item-container {\n display: flex;\n flex-direction: column;\n\n .dropdown-item {\n @include text-default-single;\n @include ellipsis;\n height: $large-control-height;\n margin: $tiny-space $small-space;\n padding-inline: $small-space;\n border-radius: 100rem;\n width: auto;\n }\n\n .category-item {\n border-end-end-radius: 0;\n border-start-end-radius: 0;\n }\n\n .category-item-value {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n }\n }\n\n .btn-toggle-operator {\n margin-inline: $small-space;\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 {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { FilterState } from './filter-state';\nimport { InputState } from './input-state';\nimport { LogicalFilterOperator } from './logical-filter-operator';\n\n@Component({\n tag: 'ix-category-filter',\n styleUrl: 'category-filter.scss',\n scoped: true,\n})\nexport class CategoryFilter {\n private readonly ID_CUSTOM_FILTER_VALUE = 'CW_CUSTOM_FILTER_VALUE';\n\n @State() private textInput?: HTMLInputElement;\n private formElement?: HTMLFormElement;\n private isScrollStateDirty: boolean;\n\n @Element() hostElement: HTMLIxCategoryFilterElement;\n\n @State() hasFocus: boolean;\n @State() categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n @State() inputValue: string;\n @State() category: string;\n @State() filterTokens: Array<{\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }> = [];\n\n /**\n * When set this will initially populate the component with the provided search criteria.\n * This will trigger all input events accordingly.\n * @deprecated Will be removed with 2.0.0. Use the member filterState instead.\n */\n @Prop() initialState: FilterState;\n\n /**\n * A set of search criteria to populate the component with.\n */\n @Prop() filterState: FilterState;\n\n /**\n * Placeholder text to be displayed in an empty input field.\n */\n @Prop() placeholder: string;\n\n /**\n * Configuration object hash used to populate the dropwdown menu for typeahead and quick selection functionality.\n * Each ID maps to an object with a label and an array of options to select from.\n */\n @Prop() categories: {\n [id: string]: {\n label: string;\n options: string[];\n };\n };\n\n /**\n * In certain use cases some categories may not be available for selection anymore.\n * To allow proper display of set filters with these categories this ID to label mapping can be populated.\n *\n * Configuration object hash used to supply labels to the filter chips in the input field.\n * Each ID maps to a string representing the label to display.\n */\n @Prop() nonSelectableCategories?: {\n [id: string]: string;\n } = {};\n\n /**\n * A list of strings that will be supplied as typeahead suggestions not tied to any categories.\n */\n @Prop() suggestions: string[];\n\n /**\n * The icon next to the actual text input\n * Defaults to 'search'\n */\n @Prop() icon = 'search';\n\n /**\n * Allows to hide the icon inside the text input.\n * Defaults to false\n */\n @Prop() hideIcon: boolean;\n\n /**\n * If set to true allows that a single category can be set more than once.\n * An already set category will not appear in the category dropdown if set to false.\n *\n * Defaults to true\n */\n @Prop() repeatCategories = true;\n\n /**\n * @internal For debugging purposes only!\n */\n @Prop() tmpDisableScrollIntoView = true;\n\n /**\n * i18n\n */\n @Prop() labelCategories = 'Categories';\n\n /**\n * i18n\n */\n @Prop() i18nPlainText = 'Filter by text';\n\n /**\n * Event dispatched whenever the text input changes.\n */\n @Event() inputChanged: EventEmitter<InputState>;\n\n /**\n * Event dispatched whenever the filter state changes.\n */\n @Event() filterChanged: EventEmitter<FilterState>;\n\n @Watch('filterState')\n watchFilterState(newValue) {\n this.setFilterState(newValue);\n }\n\n componentDidLoad() {\n if (this.initialState !== undefined) {\n this.setFilterState(this.initialState);\n } else if (this.filterState !== undefined) {\n setTimeout(() => this.setFilterState(this.filterState));\n }\n\n this.hostElement?.addEventListener(\n 'keydown',\n this.handleFormElementKeyDown.bind(this)\n );\n\n this.formElement?.addEventListener('submit', (e) => e.preventDefault());\n\n if (this.textInput == null) {\n console.warn(\n 'ix-category-filter - unable to add event listeners to native input element'\n );\n return;\n }\n\n this.textInput.addEventListener('focusin', () => {\n this.hasFocus = true;\n });\n this.textInput.addEventListener('focusout', () => (this.hasFocus = false));\n this.textInput.addEventListener('input', () => {\n this.inputValue = this.textInput.value;\n const inputState = new InputState(this.inputValue, this.category);\n this.inputChanged.emit(inputState);\n });\n this.textInput.addEventListener(\n 'keydown',\n this.handleInputElementKeyDown.bind(this)\n );\n }\n\n private setFilterState(state: FilterState) {\n this.filterTokens = [];\n\n for (const token of state.tokens) {\n this.addToken(\n token,\n this.ID_CUSTOM_FILTER_VALUE,\n this.categoryLogicalOperator,\n false\n );\n }\n\n for (const category of state.categories) {\n this.addToken(category.value, category.id, category.operator, false);\n }\n\n this.emitFilterEvent();\n }\n\n private closeDropdown() {\n this.hostElement.querySelector('ix-dropdown').show = false;\n }\n\n private handleFormElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'Enter':\n case 'NumpadEnter':\n if (!document.activeElement.classList.contains('dropdown-item')) {\n return;\n }\n\n const token = document.activeElement.getAttribute('data-id');\n\n if (this.hasCategorySelection()) {\n if (this.category) {\n this.addToken(token, this.category);\n } else if (\n document.activeElement.classList.contains('category-item-id')\n ) {\n this.selectCategory(token);\n }\n } else {\n this.addToken(token);\n }\n\n e.preventDefault();\n break;\n\n case 'ArrowUp':\n this.focusPreviousItem();\n e.preventDefault();\n break;\n\n case 'ArrowDown':\n this.focusNextItem();\n e.preventDefault();\n break;\n\n case 'Escape':\n this.closeDropdown();\n break;\n }\n }\n\n private focusPreviousItem() {\n const sibling = document.activeElement.previousSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusNextItem() {\n const sibling = document.activeElement.nextSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private handleInputElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowDown':\n const selector = `.category-item-${this.category ? 'value' : 'id'}`;\n let item = this.hostElement.querySelector(selector);\n\n if (item instanceof HTMLElement) {\n item.focus();\n e.stopPropagation();\n } else if (this.suggestions?.length) {\n item = this.hostElement.querySelector('.category-item');\n if (item instanceof HTMLElement) {\n item.focus();\n e.stopPropagation();\n }\n }\n break;\n\n case 'Backspace':\n if (this.textInput.value !== '') {\n return;\n }\n\n if (this.category) {\n this.category = undefined;\n return;\n }\n\n const tokenCount = this.filterTokens.length;\n if (tokenCount > 0) {\n this.removeToken(tokenCount - 1);\n }\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n this.addToken(this.inputValue, this.category);\n e.preventDefault();\n break;\n }\n }\n\n private emitFilterEvent() {\n const tokens = this.filterTokens\n .filter((item) => item.id === this.ID_CUSTOM_FILTER_VALUE)\n .map((item) => item.value);\n const categories = this.filterTokens.filter(\n (item) => item.id !== this.ID_CUSTOM_FILTER_VALUE\n );\n const filterState: FilterState = {\n tokens,\n categories,\n };\n\n this.filterChanged.emit(filterState);\n }\n\n private addToken(\n token: string,\n category: string = this.ID_CUSTOM_FILTER_VALUE,\n operator = this.categoryLogicalOperator,\n emitEvent = true\n ) {\n if (token === undefined || token === null) {\n return;\n }\n\n const newToken = token.trim();\n\n if (newToken === '') {\n return;\n }\n\n if (this.filterTokens.find((value) => value?.value === newToken)) {\n return;\n }\n\n const pair = { id: category, value: newToken, operator };\n this.filterTokens = [...this.filterTokens, pair];\n this.textInput.value = '';\n this.inputValue = '';\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n\n if (this.category) {\n this.category = undefined;\n }\n\n this.isScrollStateDirty = true;\n\n this.textInput.focus();\n\n if (emitEvent) {\n this.emitFilterEvent();\n }\n\n this.closeDropdown();\n }\n\n private removeToken(index: number) {\n this.filterTokens = this.filterTokens.filter((_, i) => i !== index);\n this.emitFilterEvent();\n }\n\n private getCategoryIds() {\n const ids = [];\n for (const id in this.categories) {\n if (Object.prototype.hasOwnProperty.call(this.categories, id)) {\n ids.push(id);\n }\n }\n\n return ids;\n }\n\n private selectCategory(category: string) {\n this.category = category;\n this.textInput.value = '';\n this.inputValue = '';\n this.textInput.focus();\n }\n\n private resetFilter() {\n this.closeDropdown();\n this.filterTokens = [];\n this.emitFilterEvent();\n }\n\n private filterMultiples(value: string) {\n if (this.repeatCategories) {\n return true;\n }\n\n const isCategoryAlreadySet = this.filterTokens.find(\n (token) => token.id === value\n );\n\n return !isCategoryAlreadySet;\n }\n\n private filterDuplicateTokens(value: string) {\n const isTokenAlreadySet = this.filterTokens.some(\n (token) => token.value === value\n );\n return !isTokenAlreadySet;\n }\n\n private filterByInput(value: string) {\n if (this.inputValue === undefined || this.inputValue === '') {\n return true;\n }\n\n return value.toLowerCase().indexOf(this.inputValue.toLowerCase()) !== -1;\n }\n\n private toggleCategoryOperator() {\n switch (this.categoryLogicalOperator) {\n case LogicalFilterOperator.EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.NOT_EQUAL;\n break;\n\n case LogicalFilterOperator.NOT_EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n break;\n }\n }\n\n private getFilterChipLabel(value: {\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }): string {\n if (value.id === this.ID_CUSTOM_FILTER_VALUE) {\n return value.value;\n }\n\n const operatorString =\n value.operator === LogicalFilterOperator.EQUAL ? '=' : '!=';\n const label =\n this.categories[value.id]?.label ??\n this.nonSelectableCategories[value.id] ??\n value.id;\n\n return `${label} ${operatorString} ${value.value}`;\n }\n\n private getFilteredSuggestions() {\n if (!this.suggestions?.length) {\n return [];\n }\n\n return this.suggestions\n ?.filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value));\n }\n\n private hasCategorySelection() {\n return this.categories !== undefined;\n }\n\n private displayDropdown() {\n if (this.hasCategorySelection()) {\n return true;\n }\n\n if (this.suggestions !== undefined) {\n return this.getFilteredSuggestions().length > 0;\n }\n\n return false;\n }\n\n private renderPlainSuggestions() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getFilteredSuggestions().map((suggestion) => (\n <button\n class=\"dropdown-item\"\n data-id={suggestion}\n onClick={() => this.addToken(suggestion)}\n key={suggestion}\n title={suggestion}\n >\n {suggestion}\n </button>\n ))}\n </div>\n );\n }\n\n private renderCategoryValues() {\n return (\n <div class=\"dropdown-item-container\">\n <button\n class=\"btn btn-invisible-secondary btn-icon btn-toggle-operator\"\n onClick={() => this.toggleCategoryOperator()}\n tabindex=\"-1\"\n >\n {this.categoryLogicalOperator === LogicalFilterOperator.NOT_EQUAL\n ? '='\n : '!='}\n </button>\n <div class=\"dropdown-header\">\n {this.categories[this.category]?.label}\n </div>\n {this.categories[this.category]?.options\n .filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value))\n .map((id) => (\n <button\n class=\"dropdown-item category-item-value\"\n data-id={id}\n title={id}\n key={id}\n onClick={() => this.addToken(id, this.category)}\n >\n {`${\n this.categoryLogicalOperator === LogicalFilterOperator.EQUAL\n ? '='\n : '!='\n } ${id}`}\n </button>\n ))}\n </div>\n );\n }\n\n private renderDropdownContent() {\n if (this.hasCategorySelection()) {\n if (this.category) {\n return this.renderCategoryValues();\n } else {\n return this.renderCategorySelection();\n }\n } else return this.renderPlainSuggestions();\n }\n\n private renderCategorySelection() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getCategoryIds()\n ?.filter((id) => this.filterByInput(this.categories[id].label))\n .filter((id) => this.filterMultiples(id))\n .map((id) => (\n <button\n class=\"dropdown-item category-item category-item-id\"\n data-id={id}\n title={this.categories[id].label}\n key={id}\n onClick={() => this.selectCategory(id)}\n tabindex=\"0\"\n >\n {this.categories[id]?.label}\n </button>\n ))}\n </div>\n );\n }\n\n private getDropdownHeader() {\n if (this.categories) {\n if (this.category) {\n return null;\n } else {\n return this.labelCategories;\n }\n }\n\n return this.i18nPlainText;\n }\n\n componentDidRender() {\n if (this.isScrollStateDirty) {\n if (!this.tmpDisableScrollIntoView) {\n this.textInput.scrollIntoView();\n }\n this.isScrollStateDirty = false;\n }\n }\n\n private getResetButton() {\n return (\n <ix-icon-button\n onClick={() => this.resetFilter()}\n class={{\n 'reset-button': true,\n 'hide-reset-button': !this.filterTokens.length && !this.category,\n }}\n variant=\"Primary\"\n ghost\n oval\n icon=\"clear\"\n size=\"16\"\n tabindex=\"1\"\n ></ix-icon-button>\n );\n }\n\n render() {\n return (\n <Host>\n <form ref={(el) => (this.formElement = el)}>\n <div\n class={{\n 'form-control': true,\n 'input-container': true,\n focus: this.hasFocus,\n 'no-icon': this.hideIcon,\n }}\n >\n <ix-icon\n class={{ 'd-none': this.hideIcon }}\n name={this.icon}\n size=\"16\"\n ></ix-icon>\n <div class=\"token-container\">\n <ul class=\"list-unstyled\">\n {this.filterTokens.map((value, index) => (\n <li\n key={value.toString()}\n class={{\n animate__animated: true,\n animate__fadein: true,\n }}\n >\n <ix-filter-chip\n onCloseClick={() => this.removeToken(index)}\n >\n {this.getFilterChipLabel(value)}\n </ix-filter-chip>\n </li>\n ))}\n {this.categories === undefined ? (\n ''\n ) : (\n <li\n class={{\n 'category-preview': true,\n 'd-none': !this.category,\n }}\n >\n {this.categories[this.category]?.label}\n </li>\n )}\n <input\n class={{\n 'text-input': true,\n 'hide-placeholder': this.category !== undefined,\n }}\n ref={(el) => (this.textInput = el)}\n type=\"text\"\n placeholder={this.placeholder}\n ></input>\n </ul>\n </div>\n {this.getResetButton()}\n </div>\n </form>\n\n <ix-dropdown\n closeBehavior=\"outside\"\n trigger={this.textInput}\n triggerEvent={['click', 'focus']}\n header={this.getDropdownHeader()}\n class={{ 'd-none': !this.displayDropdown() }}\n >\n {this.renderDropdownContent()}\n </ix-dropdown>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as i,h as t,H as a,g as n}from"./p-8fcd6f85.js";import{a as o}from"./p-810b5232.js";const s=".sc-ix-map-navigation-h{display:flex;position:relative;width:100%;height:100%}.sc-ix-map-navigation-h .map-nav.sc-ix-map-navigation{display:flex;margin-left:4rem;position:relative;height:100%;flex-grow:1;overflow:hidden}.sc-ix-map-navigation-h .map-nav-sidebar.sc-ix-map-navigation{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);-webkit-border-end:0.125rem solid var(--theme-map-navigation-separator--background);border-inline-end:0.125rem solid var(--theme-map-navigation-separator--background);z-index:99}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation{align-items:center;position:relative;overflow:auto;height:100%;width:100%}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation .map-nav-sidebar-static-content.sc-ix-map-navigation{-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}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation{display:flex;position:relative;align-items:center;height:3.5rem;min-height:3.5rem;width:100%}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation{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)}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation button.sc-ix-map-navigation{margin-left:1rem}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation{display:flex;height:3.5rem;align-items:center;overflow:hidden;padding:0 1rem}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation:empty{height:0}.sc-ix-map-navigation-h .map-nav-title.sc-ix-map-navigation{-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}.sc-ix-map-navigation-h .content.sc-ix-map-navigation{display:block;flex-grow:1;position:relative;height:100%;overflow:hidden;z-index:calc(var(--theme-z-index-sticky) - 1)}";const r=class{constructor(t){e(this,t);this.navigationToggled=i(this,"navigationToggled",7);this.contextMenuClick=i(this,"contextMenuClick",7);this.applicationName=undefined;this.navigationTitle=undefined;this.hideContextMenu=true;this.isSidebarOpen=true}get menu(){return this.hostElement.querySelector("ix-menu")}get menuOverlay(){return this.hostElement.querySelector("ix-menu-overlay")}get mapNavMenu(){return this.hostElement.querySelector(".map-nav-menu")}get sidebar(){return this.hostElement.querySelector(".map-nav-sidebar")}get overlay(){return this.hostElement.querySelector("#overlay")}componentDidRender(){this.appendMenu();this.closeOverlay()}appendMenu(){this.hostElement.querySelector("#menu-placeholder").appendChild(this.menu);this.menu.addEventListener("mapExpandChange",(e=>{const i=!e.detail;this.toggleSidebar(i);this.menu.toggleMapExpand(i)}));this.menu.enableMapExpand=true}toggleSidebar(e){if(e!==undefined){this.isSidebarOpen=e}else{this.isSidebarOpen=!this.isSidebarOpen}if(e){this.openSidebar()}else{this.closeSidebar()}this.navigationToggled.emit(this.isSidebarOpen)}closeSidebar(){o({targets:this.sidebar,duration:r.defaultTime,marginLeft:[0,"-29.75rem"],opacity:[1,0],easing:"easeInSine",complete:()=>{this.sidebar.classList.add("d-none")}})}openSidebar(){o({targets:this.sidebar,duration:r.defaultTime,marginLeft:["-29.75rem",0],opacity:[0,1],easing:"easeOutSine",begin:()=>{this.sidebar.classList.remove("d-none")}})}async openOverlay(e,i,t,a){o({targets:this.overlay,duration:r.slowTime,backdropFilter:[0,"blur(1rem)"],translateX:["-4rem",0],opacity:[0,1],easing:"easeOutSine",begin:()=>{this.overlay.classList.remove("d-none")}});const n=document.createElement("ix-map-navigation-overlay");n.setAttribute("color",a);n.setAttribute("name",e);n.setAttribute("icon",t);n.setAttribute("slot","overlay");n.addEventListener("closeClick",(()=>this.closeOverlay()));n.appendChild(i);this.hostElement.appendChild(n)}async closeOverlay(){o({targets:this.overlay,duration:r.slowTime,backdropFilter:["blur(1rem)",0],translateX:[0,"-4rem"],opacity:[1,0],easing:"easeInSine",complete:()=>{var e;if(!this.overlay){return}(e=this.overlay.firstChild)===null||e===void 0?void 0:e.remove();this.overlay.classList.add("d-none")}})}render(){return t(a,null,t("div",{id:"menu-placeholder"}),t("div",{class:"map-nav"},t("div",{class:"map-nav-sidebar"},t("div",{class:"map-nav-header"},t("ix-application-header",{name:this.applicationName,class:"map-nav-header-brand"},t("slot",{name:"logo"}))),t("div",{class:"map-nav-sidebar-content"},t("div",{class:"map-nav-sidebar-static-content"},t("div",{class:"map-nav-title"},this.navigationTitle),this.hideContextMenu?"":t("ix-icon-button",{icon:"context-menu",ghost:true,size:"24",variant:"Secondary",onClick:e=>this.contextMenuClick.emit()})),t("div",{class:"map-nav-sidebar-user-content"},t("slot",{name:"sidebar-content"})))),t("div",{class:"content"},t("div",{class:"map-nav-header-content bg-2"},t("slot",{name:"content-header"})),t("main",null,t("slot",null),t("slot",{name:"overlay"})))))}get hostElement(){return n(this)}};r.defaultTime=150;r.slowTime=500;r.style=s;const l=".text-xs.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.625rem;font-weight:400;line-height:1.4em;color:var(--theme-color-std-text)}.text-s.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption-single.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1em;color:var(--theme-color-std-text)}.text-default.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-single.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.143em;color:var(--theme-color-std-text)}.text-default-title.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-title-single.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.143em;color:var(--theme-color-std-text)}.text-l.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-single.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.25em;color:var(--theme-color-std-text)}.text-l-title.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-title-single.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.25em;color:var(--theme-color-std-text)}.text-h2.sc-ix-map-navigation-overlay{-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)}.text-xl.sc-ix-map-navigation-overlay{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:400;line-height:1.091em;color:var(--theme-color-std-text)}a.sc-ix-map-navigation-overlay{color:var(--theme-color-primary)}.sc-ix-map-navigation-overlay-h{position:absolute;width:100%;height:100%;z-index:2;top:0;left:0;background-color:var(--theme-overlay--background)}.sc-ix-map-navigation-overlay-h .overlay-header.sc-ix-map-navigation-overlay{display:flex;position:relative;justify-content:flex-start;align-items:center;height:3.5rem;background-color:var(--theme-overlay-header--background)}.sc-ix-map-navigation-overlay-h .overlay-header-content.sc-ix-map-navigation-overlay{display:flex;align-items:center;min-width:0}.sc-ix-map-navigation-overlay-h .overlay-header-content.sc-ix-map-navigation-overlay ix-icon.sc-ix-map-navigation-overlay{-webkit-margin-start:1rem;margin-inline-start:1rem;color:var(--theme-overlay-header--color)}.sc-ix-map-navigation-overlay-h .overlay-header-content.sc-ix-map-navigation-overlay .overlay-header-title.sc-ix-map-navigation-overlay{-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);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--theme-overlay-header--color);-webkit-margin-start:1rem;margin-inline-start:1rem}.sc-ix-map-navigation-overlay-h .color-indicator.sc-ix-map-navigation-overlay{display:inline-block;position:relative;width:0.5rem;height:100%;background-color:var(--theme-color-neutral)}.sc-ix-map-navigation-overlay-h .overlay-close.sc-ix-map-navigation-overlay{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:1rem;margin-inline-end:1rem}";const m=class{constructor(t){e(this,t);this.closeClick=i(this,"closeClick",7);this.name=undefined;this.icon=undefined;this.color=undefined}componentWillLoad(){o({targets:this.hostElement,duration:m.slowTime,backdropFilter:[0,"blur(1rem)"],translateX:["-4rem",0],opacity:[0,1],easing:"easeOutSine",begin:()=>{this.hostElement.classList.remove("d-none")}})}closeOverlay(){o({targets:this.hostElement,duration:m.slowTime,backdropFilter:["blur(1rem)",0],translateX:[0,"-4rem"],opacity:[1,0],easing:"easeInSine",complete:()=>{this.closeClick.emit();this.hostElement.classList.add("d-none")}})}render(){return t(a,null,t("div",{class:"overlay-header"},t("div",{class:{"color-indicator":true,"d-none":this.color==="undefined"||this.color===undefined},style:{"background-color":this.color?`var(--theme-${this.color})`:""}}),t("div",{class:"overlay-header-content"},t("ix-icon",{size:"32",name:this.icon}),t("span",{class:"overlay-header-title",title:this.name},this.name)),t("ix-icon-button",{class:"overlay-close",ghost:true,icon:"close",size:"24",onClick:()=>this.closeOverlay()})),t("slot",null))}get hostElement(){return n(this)}};m.slowTime=500;m.style=l;export{r as ix_map_navigation,m as ix_map_navigation_overlay};
2
+ //# sourceMappingURL=p-283686d7.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mapNavigationCss","MapNavigation","menu","this","hostElement","querySelector","menuOverlay","mapNavMenu","sidebar","overlay","componentDidRender","appendMenu","closeOverlay","appendChild","addEventListener","event","state","detail","toggleSidebar","toggleMapExpand","enableMapExpand","show","undefined","isSidebarOpen","openSidebar","closeSidebar","navigationToggled","emit","anime","targets","duration","defaultTime","marginLeft","opacity","easing","complete","classList","add","begin","remove","async","name","component","icon","color","slowTime","backdropFilter","translateX","overlayInstance","document","createElement","setAttribute","_a","firstChild","render","h","Host","id","class","applicationName","navigationTitle","hideContextMenu","ghost","size","variant","onClick","_","contextMenuClick","mapNavigationOverlayCss","MapNavigationOverlay","componentWillLoad","closeClick","style","title"],"sources":["./src/components/map-navigation/map-navigation.scss?tag=ix-map-navigation&encapsulation=scoped","./src/components/map-navigation/map-navigation.tsx","./src/components/map-navigation-overlay/map-navigation-overlay.scss?tag=ix-map-navigation-overlay&encapsulation=scoped","./src/components/map-navigation-overlay/map-navigation-overlay.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/fonts';\n@import 'mixins/text-truncation';\n\n:host {\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: 4rem;\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","/*\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';\n\n@Component({\n tag: 'ix-map-navigation',\n styleUrl: 'map-navigation.scss',\n scoped: 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 @State() isSidebarOpen = 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 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.querySelector('.map-nav-menu');\n }\n\n get sidebar() {\n return this.hostElement.querySelector('.map-nav-sidebar');\n }\n\n get overlay() {\n return this.hostElement.querySelector('#overlay');\n }\n\n componentDidRender() {\n this.appendMenu();\n this.closeOverlay();\n }\n\n private appendMenu() {\n this.hostElement.querySelector('#menu-placeholder').appendChild(this.menu);\n this.menu.addEventListener(\n 'mapExpandChange',\n (event: CustomEvent<boolean>) => {\n const state = !event.detail;\n this.toggleSidebar(state);\n this.menu.toggleMapExpand(state);\n }\n );\n this.menu.enableMapExpand = true;\n }\n\n private toggleSidebar(show: boolean) {\n if (show !== undefined) {\n this.isSidebarOpen = show;\n } else {\n this.isSidebarOpen = !this.isSidebarOpen;\n }\n\n if (show) {\n this.openSidebar();\n } else {\n this.closeSidebar();\n }\n\n this.navigationToggled.emit(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 render() {\n return (\n <Host>\n <div id=\"menu-placeholder\"></div>\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 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 class=\"map-nav-header-content bg-2\">\n <slot name=\"content-header\"></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","/*\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@import 'common-variables';\n@import 'fonts';\n@import 'mixins/text-truncation';\n\n:host {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 2;\n top: 0;\n left: 0;\n\n background-color: var(--theme-overlay--background);\n\n .overlay-header {\n display: flex;\n position: relative;\n justify-content: flex-start;\n align-items: center;\n height: 3.5rem;\n\n background-color: var(--theme-overlay-header--background);\n }\n\n .overlay-header-content {\n display: flex;\n align-items: center;\n min-width: 0;\n\n ix-icon {\n margin-inline-start: $default-space;\n color: var(--theme-overlay-header--color);\n }\n\n .overlay-header-title {\n @include text-h2;\n @include ellipsis;\n color: var(--theme-overlay-header--color);\n margin-inline-start: $default-space;\n }\n }\n\n .color-indicator {\n display: inline-block;\n position: relative;\n width: $small-space;\n height: 100%;\n background-color: var(--theme-color-neutral);\n }\n\n .overlay-close {\n margin-inline-start: auto;\n margin-inline-end: $default-space;\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} from '@stencil/core';\nimport anime from 'animejs';\n\n@Component({\n tag: 'ix-map-navigation-overlay',\n styleUrl: 'map-navigation-overlay.scss',\n scoped: true,\n})\nexport class MapNavigationOverlay {\n private static readonly slowTime = 500;\n\n @Element() hostElement: HTMLIxMapNavigationOverlayElement;\n\n /**\n * Title of overlay\n */\n @Prop() name: string;\n\n /**\n * Icon of overlay\n */\n @Prop() icon: string;\n\n /**\n * Color of icon\n */\n @Prop() color: string;\n\n /**\n * Event closed\n */\n @Event() closeClick: EventEmitter;\n\n componentWillLoad() {\n anime({\n targets: this.hostElement,\n duration: MapNavigationOverlay.slowTime,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n this.hostElement.classList.remove('d-none');\n },\n });\n }\n\n private closeOverlay() {\n anime({\n targets: this.hostElement,\n duration: MapNavigationOverlay.slowTime,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n this.closeClick.emit();\n this.hostElement.classList.add('d-none');\n },\n });\n }\n\n render() {\n return (\n <Host>\n <div class=\"overlay-header\">\n <div\n class={{\n 'color-indicator': true,\n 'd-none': this.color === 'undefined' || this.color === undefined,\n }}\n style={{\n 'background-color': this.color\n ? `var(--theme-${this.color})`\n : '',\n }}\n ></div>\n <div class=\"overlay-header-content\">\n <ix-icon size=\"32\" name={this.icon}></ix-icon>\n <span class=\"overlay-header-title\" title={this.name}>\n {this.name}\n </span>\n </div>\n <ix-icon-button\n class=\"overlay-close\"\n ghost\n icon=\"close\"\n size=\"24\"\n onClick={() => this.closeOverlay()}\n ></ix-icon-button>\n </div>\n\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as o,c as e,h as r,H as t,g as d}from"./p-8fcd6f85.js";import{f as i,i as n,s,o as a,a as p,c as l}from"./p-f34a16c6.js";const m='.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid;border-right:0.3em solid transparent;border-bottom:0;border-left:0.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:#212529;--bs-dropdown-bg:#fff;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:0.375rem;--bs-dropdown-border-width:1px;--bs-dropdown-inner-border-radius:calc(0.375rem - 1px);--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-dropdown-link-color:#212529;--bs-dropdown-link-hover-color:#1e2125;--bs-dropdown-link-hover-bg:#e9ecef;--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width: 1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0;border-right:0.3em solid transparent;border-bottom:0.3em solid;border-left:0.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0;border-bottom:0.3em solid transparent;border-left:0.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0.3em solid;border-bottom:0.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.dropdown-group{margin:0.687rem;display:block;position:relative;width:21.562rem;border-radius:0.25rem;background-color:#f8f9fa;border:solid 0.062rem rgba(0, 0, 0, 0.25)}.dropdown-group .dropdown-group-title{display:block;position:relative;font-size:0.875rem;text-align:left;margin:0.937rem 0 1.25rem 0.937rem}.dropdown-group .dropdown-group-content{position:relative;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;height:11.562rem;margin:0.937rem 0 0.937rem 0.937rem}.dropdown-group .dropdown-group-content>*{margin-bottom:1rem}.dropdown-group-submit{display:flex;justify-content:space-between;margin:0 0.687rem 0 0.687rem}.dropdown-menu{position:absolute;background-color:var(--theme-menu--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.143em;color:var(--theme-color-std-text);border:var(--theme-menu--border-thickness) solid var(--theme-menu--border--color);border-radius:var(--theme-menu--border-radius);max-width:100vw;padding:0.25rem 0;transition:background-color 150ms;box-shadow:var(--theme-menu--box-shadow)}.dropdown-menu.xl>.dropdown-item{height:2.5rem;line-height:2.187rem}.dropdown-header{display:flex;align-items:center;height:2.5rem;color:var(--theme-menu-header--color);padding:0 1rem}.dropdown-buttons{display:flex;padding:0.25rem 0.5rem}.dropdown-buttons ix-icon-button+ix-icon-button{-webkit-margin-start:0.5rem;margin-inline-start:0.5rem}.dropdown-item{display:flex;height:2.5rem;position:relative;align-items:center;cursor:pointer;padding:0 2rem;border:1px solid transparent;color:var(--theme-menu-item--color)}.dropdown-item:focus-visible{background-color:var(--theme-menu-item--background);color:var(--theme-menu-item--color)}.dropdown-item:focus-visible{outline:none;background-color:var(--theme-menu-item--background);border-color:#119fff;color:var(--theme-menu-item--color--focus)}.dropdown-item:not(.disabled):not(:disabled){cursor:pointer}.dropdown-item:not(.disabled):not(:disabled):hover{color:var(--theme-menu-item--color--hover);background-color:var(--theme-menu-item--background--hover)}.dropdown-item:not(.disabled):not(:disabled){cursor:pointer}.dropdown-item:not(.disabled):not(:disabled):active{color:var(--theme-menu-item--color--active);background-color:var(--theme-menu-item--background--active)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--theme-menu-item--color--disabled);background-color:var(--theme-menu-item--background--disabled)}.dropdown-item>a,.dropdown-item a:hover,.dropdown-item a:active{color:var(--theme-color-std-text)}.dropdown-item>.glyph{color:var(--theme-menu-item-icon--color);-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}.dropdown-item>.glyph.disabled{color:var(--color-weak-text)}.dropdown-item>.glyph.glyph-single-check{color:var(--theme-menu-item-icon-check--color)}.dropdown-item>input[type=checkbox]+label{margin-bottom:0px}.dropdown-item>input[type=checkbox]+label::before{margin-right:1rem}.dropdown-divider{border-top:1px solid var(--theme-menu-separator--background);margin:0.25rem 0}button.dropdown-toggle{position:relative;padding-right:1.5rem}button.dropdown-toggle::after{position:absolute;top:45%;right:0.5rem}:host{min-width:0px}:host(.overflow){max-height:50vh;overflow-y:auto}';const c=class{constructor(r){o(this,r);this.showChanged=e(this,"showChanged",7);this.autoUpdateCleanup=null;this.show=false;this.trigger=undefined;this.anchor=undefined;this.closeBehavior="both";this.placement="bottom-start";this.positioningStrategy="fixed";this.adjustDropdownWidthToReferenceWith=false;this.adjustDropdownWidthToReferenceWidth=false;this.header=undefined;this.offset=undefined;this.triggerEvent="click";this.overwriteDropdownStyle=undefined;this.toggleBind=this.toggle.bind(this);this.openBind=this.open.bind(this)}get dropdownItems(){return Array.from(this.hostElement.querySelectorAll("ix-dropdown-item"))}addEventListenersFor(o){switch(o){case"click":if(this.closeBehavior==="outside"){this.triggerElement.addEventListener("click",this.openBind)}else{this.triggerElement.addEventListener("click",this.toggleBind)}break;case"hover":this.triggerElement.addEventListener("mouseenter",this.openBind);break;case"focus":this.triggerElement.addEventListener("focusin",this.openBind);break}}removeEventListenersFor(o,e){switch(o){case"click":if(this.closeBehavior==="outside"){e.removeEventListener("click",this.openBind)}else{e.removeEventListener("click",this.toggleBind)}break;case"hover":e.removeEventListener("mouseenter",this.openBind);break;case"focus":e.removeEventListener("focusin",this.openBind);break}}async registerListener(o){this.triggerElement=await this.resolveElement(o);if(this.triggerElement){if(Array.isArray(this.triggerEvent)){this.triggerEvent.forEach((o=>{this.addEventListenersFor(o)}))}else{this.addEventListenersFor(this.triggerEvent)}}}async unregisterListener(o){const e=await this.resolveElement(o);if(Array.isArray(this.triggerEvent)){this.triggerEvent.forEach((o=>{this.removeEventListenersFor(o,e)}))}else{this.removeEventListenersFor(this.triggerEvent,e)}}resolveElement(o){if(typeof o!=="string"){return Promise.resolve(o)}const e=`#${o}`;return new Promise((o=>{if(document.querySelector(e)){return o(document.querySelector(e))}const r=new MutationObserver((()=>{if(document.querySelector(e)){o(document.querySelector(e));r.disconnect()}}));r.observe(document.body,{childList:true,subtree:true})}))}async changedShow(o){if(o){this.anchorElement=await(this.anchor?this.resolveElement(this.anchor):this.resolveElement(this.trigger));if(this.anchorElement){this.applyDropdownPosition()}}}changedTrigger(o,e){if(o){this.registerListener(o)}if(e){this.unregisterListener(e)}}clickOutside(o){var e,r;const t=o.target;if(this.show===false||this.closeBehavior===false||((e=this.anchorElement)===null||e===void 0?void 0:e.contains(t))||((r=this.triggerElement)===null||r===void 0?void 0:r.contains(t))){return}switch(this.closeBehavior){case"outside":if(!this.dropdownRef.contains(t)){this.close()}break;case"inside":if(this.dropdownRef.contains(t)&&this.hostElement!==t){this.close()}break;case"both":if(this.hostElement!==t)this.close();break;default:this.close()}}isNestedDropdown(o){return o.closest("ix-dropdown")}isAnchorSubmenu(){var o;const e=(o=this.anchorElement)===null||o===void 0?void 0:o.closest("ix-dropdown-item");if(!e){return false}return true}toggle(o){o===null||o===void 0?void 0:o.preventDefault();if(this.isNestedDropdown(o.target)){o===null||o===void 0?void 0:o.stopPropagation()}this.show=!this.show;this.showChanged.emit(this.show)}open(o){o===null||o===void 0?void 0:o.preventDefault();if(this.isNestedDropdown(o.target)){o===null||o===void 0?void 0:o.stopPropagation()}this.show=true;this.showChanged.emit(true)}close(o){if(o===null||o===void 0?void 0:o.defaultPrevented){return}this.show=false;this.showChanged.emit(false)}async applyDropdownPosition(){if(!this.anchorElement){return}if(!this.dropdownRef){return}const o=this.isAnchorSubmenu();let e={strategy:this.positioningStrategy,middleware:[]};if(o){e.placement="right-start"}if(this.placement.includes("auto")||o){e.middleware.push(i())}else{e.placement=this.placement}e.middleware=[...e.middleware,n(),s()];if(this.offset){e.middleware.push(a(this.offset))}if(this.autoUpdateCleanup){this.autoUpdateCleanup();this.autoUpdateCleanup=null}this.autoUpdateCleanup=p(this.anchorElement,this.dropdownRef,(async()=>{const o=await l(this.anchorElement,this.dropdownRef,e);Object.assign(this.dropdownRef.style,{top:"0",left:"0",transform:`translate(${Math.round(o.x)}px,${Math.round(o.y)}px)`});if(this.overwriteDropdownStyle){const o=await this.overwriteDropdownStyle({dropdownRef:this.dropdownRef,triggerRef:this.triggerElement});Object.assign(this.dropdownRef.style,o)}}),{ancestorResize:true,ancestorScroll:true,elementResize:true})}async componentDidLoad(){if(this.trigger){this.registerListener(this.trigger)}}async componentDidRender(){await this.applyDropdownPosition()}disconnectedCallback(){if(this.autoUpdateCleanup){this.autoUpdateCleanup()}}async updatePosition(){this.applyDropdownPosition()}render(){return r(t,{ref:o=>this.dropdownRef=o,class:{"dropdown-menu":true,show:this.show,overflow:true},style:{margin:"0",minWidth:"0px",position:this.positioningStrategy}},r("div",{style:{display:"contents"}},this.header?r("div",{class:"dropdown-header"},this.header):"",r("slot",null)))}get hostElement(){return d(this)}static get watchers(){return{show:["changedShow"],trigger:["changedTrigger"]}}};c.style=m;const h=".sc-ix-dropdown-item-h{display:block;min-width:10rem}.icon-only.sc-ix-dropdown-item-h{min-width:0}.icon-only.sc-ix-dropdown-item-h .dropdown-item.sc-ix-dropdown-item>.glyph.sc-ix-dropdown-item{-webkit-margin-end:0;margin-inline-end:0}.icon-only.sc-ix-dropdown-item-h .dropdown-item.sc-ix-dropdown-item{padding:0.25rem 0.5rem}.icon-only.sc-ix-dropdown-item-h .dropdown-item.sc-ix-dropdown-item:not(.disabled):not(:disabled):focus-visible{border-color:#199fff}.sc-ix-dropdown-item-h .sc-ix-dropdown-item:focus{background-color:transparent;color:var(--theme-menu-item--color)}.sc-ix-dropdown-item-h .checkmark.sc-ix-dropdown-item{position:absolute;left:0.5rem}.checked.sc-ix-dropdown-item-h{background-color:var(--theme-select-list-item--background--selected)}.sc-ix-dropdown-item-h .label.sc-ix-dropdown-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.disabled.sc-ix-dropdown-item-h{pointer-events:none}.sc-ix-dropdown-item-s>ix-icon{-webkit-margin-start:auto;margin-inline-start:auto}";const b=class{constructor(r){o(this,r);this.itemClick=e(this,"itemClick",7);this.label=undefined;this.icon=undefined;this.hover=false;this.disabled=false;this.checked=false}async emitItemClick(){this.itemClick.emit(this.hostElement)}render(){return r(t,{class:{checked:this.checked,"icon-text":this.label!==undefined&&this.icon!==undefined,"icon-only":this.label===undefined&&this.icon!==undefined,disabled:this.disabled}},r("button",{type:"button",class:{"dropdown-item":true,hover:this.hover,disabled:this.disabled},onClick:()=>this.emitItemClick()},this.checked?r("ix-icon",{class:"checkmark",name:"single-check",size:"16"}):null,this.icon?r("span",{class:{glyph:true,[`glyph-${this.icon}`]:true,disabled:this.disabled}}):null,this.label?r("span",{class:"label"},this.label):null,r("slot",null)))}get hostElement(){return d(this)}};b.style=h;export{c as ix_dropdown,b as ix_dropdown_item};
2
+ //# sourceMappingURL=p-28f50519.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["dropdownCss","Dropdown","constructor","hostRef","this","autoUpdateCleanup","toggleBind","toggle","bind","openBind","open","dropdownItems","Array","from","hostElement","querySelectorAll","addEventListenersFor","triggerEvent","closeBehavior","triggerElement","addEventListener","removeEventListenersFor","removeEventListener","async","element","resolveElement","isArray","forEach","trigger","Promise","resolve","selector","document","querySelector","observer","MutationObserver","disconnect","observe","body","childList","subtree","newShow","anchorElement","anchor","applyDropdownPosition","changedTrigger","newTriggerValue","oldTriggerValue","registerListener","unregisterListener","clickOutside","event","target","show","_a","contains","_b","dropdownRef","close","isNestedDropdown","closest","isAnchorSubmenu","preventDefault","stopPropagation","showChanged","emit","defaultPrevented","isSubmenu","positionConfig","strategy","positioningStrategy","middleware","placement","includes","push","flip","inline","shift","offset","autoUpdate","computeResponse","computePosition","Object","assign","style","top","left","transform","Math","round","x","y","overwriteDropdownStyle","overwriteStyle","triggerRef","ancestorResize","ancestorScroll","elementResize","disconnectedCallback","render","h","Host","ref","class","overflow","margin","minWidth","position","display","header","dropdownItemCss","DropdownItem","itemClick","checked","label","undefined","icon","disabled","type","hover","onClick","emitItemClick","name","size","glyph"],"sources":["./src/components/dropdown/dropdown.scss?tag=ix-dropdown&encapsulation=shadow","./src/components/dropdown/dropdown.tsx","./src/components/dropdown-item/dropdown-item.scss?tag=ix-dropdown-item&encapsulation=scoped","./src/components/dropdown-item/dropdown-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import '~bootstrap/scss/functions';\n@import 'common-variables';\n@import '~bootstrap/scss/variables';\n@import '~bootstrap/scss/mixins';\n@import '~bootstrap/scss/dropdown';\n\n@import 'mixins/fonts';\n@import 'mixins/text-truncation';\n@import 'components/dropdown';\n\n:host {\n min-width: 0px;\n}\n\n:host(.overflow) {\n max-height: 50vh;\n overflow-y: auto;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { BasePlacement, Placement, PlacementWithAlignment } from './placement';\n\n/**\n * @internal\n */\nexport type DropdownTriggerEvent = 'click' | 'hover' | 'focus';\n\n@Component({\n tag: 'ix-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true,\n})\nexport class Dropdown {\n @Element() hostElement!: HTMLIxDropdownElement;\n\n /**\n * Show dropdown\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Define an element that triggers the dropdown.\n * A trigger can either be a string that will be interpreted as id attribute or a DOM element.\n */\n @Prop() trigger: string | HTMLElement;\n\n /**\n * Define an anchor element\n */\n @Prop() anchor: string | HTMLElement;\n\n /**\n * Close behavior\n */\n @Prop() closeBehavior: 'inside' | 'outside' | 'both' | boolean = 'both';\n\n /**\n * Placement of the dropdown\n */\n @Prop() placement: Placement = 'bottom-start';\n\n /**\n * Position strategy\n */\n @Prop() positioningStrategy: 'absolute' | 'fixed' = 'fixed';\n\n /**\n * Adjust dropdown width to the parent width\n * @deprecated Will be removed in 2.0.0. Property has a typo use `adjustDropdownWidthToReferenceWidth` instead.\n */\n @Prop() adjustDropdownWidthToReferenceWith = false;\n\n /**\n * Adjust dropdown width to the parent width\n *\n * @deprecated Will be removed. Not used anymore\n */\n @Prop() adjustDropdownWidthToReferenceWidth = false;\n\n /**\n * An optional header shown at the top of the dropdown\n */\n @Prop() header?: string;\n\n /**\n * Move dropdown along main axis of alignment\n *\n * @internal\n */\n @Prop() offset: {\n mainAxis?: number;\n crossAxis?: number;\n alignmentAxis?: number;\n };\n\n /**\n * Define one or more events to open dropdown\n * @internal\n */\n @Prop() triggerEvent: DropdownTriggerEvent | DropdownTriggerEvent[] = 'click';\n\n /**\n * @internal\n */\n @Prop() overwriteDropdownStyle: (delegate: {\n dropdownRef: HTMLElement;\n triggerRef?: HTMLElement;\n }) => Promise<Partial<CSSStyleDeclaration>>;\n\n /**\n * Fire event after visibility of dropdown has changed\n */\n @Event() showChanged: EventEmitter<boolean>;\n\n private autoUpdateCleanup: () => void = null;\n\n private triggerElement?: Element;\n private anchorElement?: Element;\n\n private dropdownRef: HTMLElement;\n\n private toggleBind: any;\n private openBind: any;\n\n constructor() {\n this.toggleBind = this.toggle.bind(this);\n this.openBind = this.open.bind(this);\n }\n\n get dropdownItems() {\n return Array.from(this.hostElement.querySelectorAll('ix-dropdown-item'));\n }\n\n private addEventListenersFor(triggerEvent: DropdownTriggerEvent) {\n switch (triggerEvent) {\n case 'click':\n if (this.closeBehavior === 'outside') {\n this.triggerElement.addEventListener('click', this.openBind);\n } else {\n this.triggerElement.addEventListener('click', this.toggleBind);\n }\n break;\n\n case 'hover':\n this.triggerElement.addEventListener('mouseenter', this.openBind);\n break;\n\n case 'focus':\n this.triggerElement.addEventListener('focusin', this.openBind);\n break;\n }\n }\n\n private removeEventListenersFor(\n triggerEvent: DropdownTriggerEvent,\n triggerElement: Element\n ) {\n switch (triggerEvent) {\n case 'click':\n if (this.closeBehavior === 'outside') {\n triggerElement.removeEventListener('click', this.openBind);\n } else {\n triggerElement.removeEventListener('click', this.toggleBind);\n }\n break;\n\n case 'hover':\n triggerElement.removeEventListener('mouseenter', this.openBind);\n break;\n\n case 'focus':\n triggerElement.removeEventListener('focusin', this.openBind);\n break;\n }\n }\n\n private async registerListener(element: string | HTMLElement) {\n this.triggerElement = await this.resolveElement(element);\n if (this.triggerElement) {\n if (Array.isArray(this.triggerEvent)) {\n this.triggerEvent.forEach((triggerEvent) => {\n this.addEventListenersFor(triggerEvent);\n });\n } else {\n this.addEventListenersFor(this.triggerEvent);\n }\n }\n }\n\n private async unregisterListener(element: string | HTMLElement) {\n const trigger = await this.resolveElement(element);\n if (Array.isArray(this.triggerEvent)) {\n this.triggerEvent.forEach((triggerEvent) => {\n this.removeEventListenersFor(triggerEvent, trigger);\n });\n } else {\n this.removeEventListenersFor(this.triggerEvent, trigger);\n }\n }\n\n private resolveElement(element: string | HTMLElement): Promise<Element> {\n if (typeof element !== 'string') {\n return Promise.resolve(element);\n }\n\n const selector = `#${element}`;\n return new Promise((resolve) => {\n if (document.querySelector(selector)) {\n return resolve(document.querySelector(selector));\n }\n\n const observer = new MutationObserver(() => {\n if (document.querySelector(selector)) {\n resolve(document.querySelector(selector));\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n }\n\n @Watch('show')\n async changedShow(newShow: boolean) {\n if (newShow) {\n this.anchorElement = await (this.anchor\n ? this.resolveElement(this.anchor)\n : this.resolveElement(this.trigger));\n\n if (this.anchorElement) {\n this.applyDropdownPosition();\n }\n }\n }\n\n @Watch('trigger')\n changedTrigger(\n newTriggerValue: string | HTMLElement,\n oldTriggerValue: string | HTMLElement\n ) {\n if (newTriggerValue) {\n this.registerListener(newTriggerValue);\n }\n\n if (oldTriggerValue) {\n this.unregisterListener(oldTriggerValue);\n }\n }\n\n @Listen('click', {\n target: 'window',\n })\n clickOutside(event: Event) {\n const target = event.target as HTMLElement;\n\n if (\n this.show === false ||\n this.closeBehavior === false ||\n this.anchorElement?.contains(target) ||\n this.triggerElement?.contains(target)\n ) {\n return;\n }\n\n switch (this.closeBehavior) {\n case 'outside':\n if (!this.dropdownRef.contains(target)) {\n this.close();\n }\n break;\n case 'inside':\n if (this.dropdownRef.contains(target) && this.hostElement !== target) {\n this.close();\n }\n break;\n case 'both':\n if (this.hostElement !== target) this.close();\n break;\n default:\n this.close();\n }\n }\n\n private isNestedDropdown(element: Element) {\n return element.closest('ix-dropdown');\n }\n\n private isAnchorSubmenu() {\n const anchor = this.anchorElement?.closest('ix-dropdown-item');\n if (!anchor) {\n return false;\n }\n\n return true;\n }\n\n private toggle(event?: Event) {\n event?.preventDefault();\n\n if (this.isNestedDropdown(event.target as HTMLElement)) {\n event?.stopPropagation();\n }\n\n this.show = !this.show;\n this.showChanged.emit(this.show);\n }\n\n private open(event?: Event) {\n event?.preventDefault();\n\n if (this.isNestedDropdown(event.target as HTMLElement)) {\n event?.stopPropagation();\n }\n\n this.show = true;\n this.showChanged.emit(true);\n }\n\n private close(event?: Event) {\n if (event?.defaultPrevented) {\n return;\n }\n\n this.show = false;\n this.showChanged.emit(false);\n }\n\n private async applyDropdownPosition() {\n if (!this.anchorElement) {\n return;\n }\n if (!this.dropdownRef) {\n return;\n }\n const isSubmenu = this.isAnchorSubmenu();\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: this.positioningStrategy,\n middleware: [],\n };\n\n if (isSubmenu) {\n positionConfig.placement = 'right-start';\n }\n\n if (this.placement.includes('auto') || isSubmenu) {\n positionConfig.middleware.push(flip());\n } else {\n positionConfig.placement = this.placement as\n | BasePlacement\n | PlacementWithAlignment;\n }\n\n positionConfig.middleware = [\n ...positionConfig.middleware,\n inline(),\n shift(),\n ];\n\n if (this.offset) {\n positionConfig.middleware.push(offset(this.offset));\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n this.autoUpdateCleanup = null;\n }\n this.autoUpdateCleanup = autoUpdate(\n this.anchorElement,\n this.dropdownRef,\n async () => {\n const computeResponse = await computePosition(\n this.anchorElement,\n this.dropdownRef,\n positionConfig\n );\n Object.assign(this.dropdownRef.style, {\n top: '0',\n left: '0',\n transform: `translate(${Math.round(computeResponse.x)}px,${Math.round(\n computeResponse.y\n )}px)`,\n });\n if (this.overwriteDropdownStyle) {\n const overwriteStyle = await this.overwriteDropdownStyle({\n dropdownRef: this.dropdownRef,\n triggerRef: this.triggerElement as HTMLElement,\n });\n\n Object.assign(this.dropdownRef.style, overwriteStyle);\n }\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n async componentDidLoad() {\n if (this.trigger) {\n this.registerListener(this.trigger);\n }\n }\n\n async componentDidRender() {\n await this.applyDropdownPosition();\n }\n\n disconnectedCallback() {\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n /**\n * Update position of dropdown\n */\n @Method()\n async updatePosition() {\n this.applyDropdownPosition();\n }\n\n render() {\n return (\n <Host\n ref={(ref) => (this.dropdownRef = ref)}\n class={{\n 'dropdown-menu': true,\n show: this.show,\n overflow: true,\n }}\n style={{\n margin: '0',\n minWidth: '0px',\n position: this.positioningStrategy,\n }}\n >\n <div style={{ display: 'contents' }}>\n {this.header ? <div class=\"dropdown-header\">{this.header}</div> : ''}\n\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n min-width: 10rem;\n\n &.icon-only {\n min-width: 0;\n\n .dropdown-item > .glyph {\n margin-inline-end: 0;\n }\n\n .dropdown-item {\n padding: $tiny-space $small-space;\n\n @include focus-visible {\n border-color: #199fff;\n }\n }\n }\n\n :focus {\n background-color: transparent;\n color: var(--theme-menu-item--color);\n }\n\n .checkmark {\n position: absolute;\n left: $small-space;\n }\n\n &.checked {\n background-color: var(--theme-select-list-item--background--selected);\n }\n\n .label {\n @include ellipsis;\n }\n\n &.disabled {\n pointer-events: none;\n }\n}\n\n::slotted(ix-icon) {\n margin-inline-start: auto;\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} from '@stencil/core';\n\n@Component({\n tag: 'ix-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n scoped: true,\n})\nexport class DropdownItem {\n @Element() hostElement!: HTMLIxDropdownItemElement;\n\n /**\n * Label of dropdown item\n */\n @Prop() label: string;\n\n /**\n * Icon of dropdown item\n */\n @Prop() icon: string;\n\n /**\n * Display hover state\n */\n @Prop() hover = false;\n\n /**\n * Disable item and remove event listeners\n */\n @Prop() disabled = false;\n\n /**\n * Whether the item is checked or not. If true a checkmark will mark the item as checked.\n */\n @Prop() checked = false;\n\n /**\n * Click on item\n */\n @Event() itemClick: EventEmitter<HTMLIxDropdownItemElement>;\n\n /**\n * Internal usage only\n */\n @Method()\n async emitItemClick() {\n this.itemClick.emit(this.hostElement);\n }\n\n render() {\n return (\n <Host\n class={{\n checked: this.checked,\n 'icon-text': this.label !== undefined && this.icon !== undefined,\n 'icon-only': this.label === undefined && this.icon !== undefined,\n disabled: this.disabled,\n }}\n >\n <button\n type=\"button\"\n class={{\n 'dropdown-item': true,\n hover: this.hover,\n disabled: this.disabled,\n }}\n onClick={() => this.emitItemClick()}\n >\n {this.checked ? (\n <ix-icon class=\"checkmark\" name=\"single-check\" size=\"16\"></ix-icon>\n ) : null}\n\n {this.icon ? (\n <span\n class={{\n glyph: true,\n [`glyph-${this.icon}`]: true,\n disabled: this.disabled,\n }}\n ></span>\n ) : null}\n\n {this.label ? <span class=\"label\">{this.label}</span> : null}\n <slot></slot>\n </button>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as i,H as s}from"./p-8fcd6f85.js";import{g as n}from"./p-5b39e04e.js";const e=".disabled.sc-ix-icon-button-h{pointer-events:none}.sc-ix-icon-button-h .icon-button.sc-ix-icon-button{padding:0;overflow:hidden}";const o=class{constructor(i){t(this,i);this.variant="Secondary";this.outline=undefined;this.invisible=undefined;this.ghost=undefined;this.oval=undefined;this.icon=undefined;this.size="24";this.color=undefined;this.selected=false;this.disabled=false;this.type="button"}getIconButtonClasses(){return Object.assign(Object.assign({},n(this.variant,this.outline,this.ghost||this.invisible,true,this.oval,this.selected,this.disabled)),{"icon-button":true,"btn-icon-12":this.size==="12","btn-icon-16":this.size==="16","btn-icon-32":this.size==="32"||this.size==="24"||!this.size})}render(){return i(s,{class:{disabled:this.disabled}},i("button",{class:this.getIconButtonClasses(),type:this.type},i("ix-icon",{size:this.size,name:this.icon,color:this.color}),i("div",{style:{display:"none"}},i("slot",null))))}};o.style=e;export{o as ix_icon_button};
2
+ //# sourceMappingURL=p-2dafa048.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["iconButtonCss","IconButton","getIconButtonClasses","Object","assign","getButtonClasses","this","variant","outline","ghost","invisible","oval","selected","disabled","size","render","h","Host","class","type","name","icon","color","style","display"],"sources":["./src/components/icon-button/icon-button.scss?tag=ix-icon-button&encapsulation=scoped","./src/components/icon-button/icon-button.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:host {\n &.disabled {\n pointer-events: none;\n }\n\n .icon-button {\n padding: 0;\n overflow: hidden;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\nimport { getButtonClasses } from '../button/base-button';\nimport { Button, ButtonVariant } from '../button/button';\n\nexport type IconButtonVariant = ButtonVariant;\n\n@Component({\n tag: 'ix-icon-button',\n styleUrl: 'icon-button.scss',\n scoped: true,\n})\nexport class IconButton implements Button {\n /**\n * Variant of button\n */\n @Prop() variant: IconButtonVariant = 'Secondary';\n\n /**\n * Button outline\n */\n @Prop() outline: boolean;\n\n /**\n * Button invisible\n *\n * @deprecated Use ghost property\n */\n @Prop() invisible: boolean;\n\n /**\n * Button invisible\n */\n @Prop() ghost: boolean;\n\n /**\n * Button in oval shape\n */\n @Prop() oval: boolean;\n\n /**\n * Button icon\n */\n @Prop() icon: string;\n\n /**\n * Size of icon in button\n */\n @Prop() size: '32' | '24' | '16' | '12' = '24';\n\n /**\n * Color of icon in button\n */\n @Prop() color: string;\n\n /**\n * Selected state only working with outline or invisible\n */\n @Prop() selected = false;\n\n /**\n * Disabled\n */\n @Prop() disabled = false;\n\n /**\n * Type of the button\n */\n @Prop() type: 'button' | 'submit' = 'button';\n\n private getIconButtonClasses() {\n return {\n ...getButtonClasses(\n this.variant,\n this.outline,\n this.ghost || this.invisible,\n true,\n this.oval,\n this.selected,\n this.disabled\n ),\n 'icon-button': true,\n 'btn-icon-12': this.size === '12',\n 'btn-icon-16': this.size === '16',\n 'btn-icon-32': this.size === '32' || this.size === '24' || !this.size,\n };\n }\n\n render() {\n return (\n <Host class={{ disabled: this.disabled }}>\n <button class={this.getIconButtonClasses()} type={this.type}>\n <ix-icon size={this.size} name={this.icon} color={this.color} />\n <div style={{ display: 'none' }}>\n <slot></slot>\n </div>\n </button>\n </Host>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAgB,mI,MCoBTC,EAAU,M,sCAIgB,Y,uHAgCK,K,mCAUvB,M,cAKA,M,UAKiB,Q,CAE5BC,uBACN,OAAAC,OAAAC,OAAAD,OAAAC,OAAA,GACKC,EACDC,KAAKC,QACLD,KAAKE,QACLF,KAAKG,OAASH,KAAKI,UACnB,KACAJ,KAAKK,KACLL,KAAKM,SACLN,KAAKO,WACN,CACD,cAAe,KACf,cAAeP,KAAKQ,OAAS,KAC7B,cAAeR,KAAKQ,OAAS,KAC7B,cAAeR,KAAKQ,OAAS,MAAQR,KAAKQ,OAAS,OAASR,KAAKQ,M,CAIrEC,SACE,OACEC,EAACC,EAAI,CAACC,MAAO,CAAEL,SAAUP,KAAKO,WAC5BG,EAAA,UAAQE,MAAOZ,KAAKJ,uBAAwBiB,KAAMb,KAAKa,MACrDH,EAAA,WAASF,KAAMR,KAAKQ,KAAMM,KAAMd,KAAKe,KAAMC,MAAOhB,KAAKgB,QACvDN,EAAA,OAAKO,MAAO,CAAEC,QAAS,SACrBR,EAAA,e"}
@@ -0,0 +1,2 @@
1
+ import{T as t}from"./p-9ee41861.js";class e{get themeChanged(){return this._themeChanged}hasVariantSuffix(t){return t.endsWith(this.suffixDark)||t.endsWith(this.suffixLight)}isThemeClass(t){return t.startsWith(this.prefixTheme)&&this.hasVariantSuffix(t)}setTheme(t){if(!this.isThemeClass(t)){throw Error(`Provided theme name ${t} does not match our naming conventions. (theme-<name>-(dark,light))`)}const e=[];document.body.classList.forEach((t=>{if(this.isThemeClass(t)){e.push(t)}}));document.body.classList.remove(...e);document.body.classList.add(t)}toggleMode(){const t=[];document.body.classList.forEach((e=>{if(this.isThemeClass(e)){t.push(e)}}));if(t.length===0){document.body.classList.add(this.getOppositeMode(this.defaultTheme));return}t.forEach((t=>{document.body.classList.replace(t,this.getOppositeMode(t))}))}getOppositeMode(t){if(t.endsWith(this.suffixDark)){return t.replace(/-dark$/g,this.suffixLight)}if(t.endsWith(this.suffixLight)){return t.replace(/-light$/g,this.suffixDark)}}handleMutations(t){return t.forEach((t=>{const{target:e}=t;e.classList.forEach((e=>{var i;if(this.isThemeClass(e)&&!((i=t.oldValue)===null||i===void 0?void 0:i.includes(e))){this._themeChanged.emit(e)}}))}))}registerMutationObserver(){if(typeof window==="undefined"){return}if(!("MutationObserver"in window)){console.warn("ThemeSwitcher not supported by your browser. Missing MutationObserver API");return}this.mutationObserver=new MutationObserver((t=>{this.handleMutations(t)}));this.mutationObserver.observe(document.body,{attributeFilter:["class"],attributeOldValue:true})}constructor(){this.prefixTheme="theme-";this.suffixLight="-light";this.suffixDark="-dark";this.defaultTheme="theme-classic-dark";this._themeChanged=new t;this.registerMutationObserver()}}const i=new e;export{e as T,i as t};
2
+ //# sourceMappingURL=p-323d5529.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ThemeSwitcher","themeChanged","this","_themeChanged","hasVariantSuffix","className","endsWith","suffixDark","suffixLight","isThemeClass","startsWith","prefixTheme","setTheme","themeName","Error","oldThemes","document","body","classList","forEach","push","remove","add","toggleMode","length","getOppositeMode","defaultTheme","replace","handleMutations","mutations","mutation","target","_a","oldValue","includes","emit","registerMutationObserver","window","console","warn","mutationObserver","MutationObserver","observe","attributeFilter","attributeOldValue","constructor","TypedEvent","themeSwitcher"],"sources":["./src/components/utils/theme-switcher.ts"],"sourcesContent":["import { TypedEvent } from './typed-event';\n\nexport class ThemeSwitcher {\n readonly prefixTheme = 'theme-';\n readonly suffixLight = '-light';\n readonly suffixDark = '-dark';\n readonly defaultTheme = 'theme-classic-dark';\n\n mutationObserver: MutationObserver;\n _themeChanged = new TypedEvent<string>();\n\n public get themeChanged() {\n return this._themeChanged;\n }\n\n private hasVariantSuffix(className: string) {\n return (\n className.endsWith(this.suffixDark) ||\n className.endsWith(this.suffixLight)\n );\n }\n\n private isThemeClass(className: string) {\n return (\n className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className)\n );\n }\n\n public setTheme(themeName: string) {\n if (!this.isThemeClass(themeName)) {\n throw Error(\n `Provided theme name ${themeName} does not match our naming conventions. (theme-<name>-(dark,light))`\n );\n }\n\n const oldThemes: string[] = [];\n\n document.body.classList.forEach((className) => {\n if (this.isThemeClass(className)) {\n oldThemes.push(className);\n }\n });\n\n document.body.classList.remove(...oldThemes);\n document.body.classList.add(themeName);\n }\n\n public toggleMode() {\n const oldThemes: string[] = [];\n\n document.body.classList.forEach((className) => {\n if (this.isThemeClass(className)) {\n oldThemes.push(className);\n }\n });\n\n if (oldThemes.length === 0) {\n document.body.classList.add(this.getOppositeMode(this.defaultTheme));\n return;\n }\n\n oldThemes.forEach((themeName) => {\n document.body.classList.replace(\n themeName,\n this.getOppositeMode(themeName)\n );\n });\n }\n\n private getOppositeMode(themeName: string) {\n if (themeName.endsWith(this.suffixDark)) {\n return themeName.replace(/-dark$/g, this.suffixLight);\n }\n\n if (themeName.endsWith(this.suffixLight)) {\n return themeName.replace(/-light$/g, this.suffixDark);\n }\n }\n\n private handleMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n (target as HTMLElement).classList.forEach((className) => {\n if (\n this.isThemeClass(className) &&\n !mutation.oldValue?.includes(className)\n ) {\n this._themeChanged.emit(className);\n }\n });\n });\n }\n\n private registerMutationObserver() {\n if (typeof (window as any) === 'undefined') {\n return;\n }\n\n if (!('MutationObserver' in window)) {\n console.warn(\n 'ThemeSwitcher not supported by your browser. Missing MutationObserver API'\n );\n return;\n }\n\n this.mutationObserver = new MutationObserver((mutations) => {\n this.handleMutations(mutations);\n });\n\n this.mutationObserver.observe(document.body, {\n attributeFilter: ['class'],\n attributeOldValue: true,\n });\n }\n\n public constructor() {\n this.registerMutationObserver();\n }\n}\n\nexport const themeSwitcher = new ThemeSwitcher();\n"],"mappings":"0CAEaA,EASAC,mBACT,OAAOC,KAAKC,a,CAGNC,iBAAiBC,GACvB,OACEA,EAAUC,SAASJ,KAAKK,aACxBF,EAAUC,SAASJ,KAAKM,Y,CAIpBC,aAAaJ,GACnB,OACEA,EAAUK,WAAWR,KAAKS,cAAgBT,KAAKE,iBAAiBC,E,CAI7DO,SAASC,GACd,IAAKX,KAAKO,aAAaI,GAAY,CACjC,MAAMC,MACJ,uBAAuBD,uE,CAI3B,MAAME,EAAsB,GAE5BC,SAASC,KAAKC,UAAUC,SAASd,IAC/B,GAAIH,KAAKO,aAAaJ,GAAY,CAChCU,EAAUK,KAAKf,E,KAInBW,SAASC,KAAKC,UAAUG,UAAUN,GAClCC,SAASC,KAAKC,UAAUI,IAAIT,E,CAGvBU,aACL,MAAMR,EAAsB,GAE5BC,SAASC,KAAKC,UAAUC,SAASd,IAC/B,GAAIH,KAAKO,aAAaJ,GAAY,CAChCU,EAAUK,KAAKf,E,KAInB,GAAIU,EAAUS,SAAW,EAAG,CAC1BR,SAASC,KAAKC,UAAUI,IAAIpB,KAAKuB,gBAAgBvB,KAAKwB,eACtD,M,CAGFX,EAAUI,SAASN,IACjBG,SAASC,KAAKC,UAAUS,QACtBd,EACAX,KAAKuB,gBAAgBZ,GACtB,G,CAIGY,gBAAgBZ,GACtB,GAAIA,EAAUP,SAASJ,KAAKK,YAAa,CACvC,OAAOM,EAAUc,QAAQ,UAAWzB,KAAKM,Y,CAG3C,GAAIK,EAAUP,SAASJ,KAAKM,aAAc,CACxC,OAAOK,EAAUc,QAAQ,WAAYzB,KAAKK,W,EAItCqB,gBAAgBC,GACtB,OAAOA,EAAUV,SAASW,IACxB,MAAMC,OAAEA,GAAWD,EAClBC,EAAuBb,UAAUC,SAASd,I,MACzC,GACEH,KAAKO,aAAaJ,OACjB2B,EAAAF,EAASG,YAAQ,MAAAD,SAAA,SAAAA,EAAEE,SAAS7B,IAC7B,CACAH,KAAKC,cAAcgC,KAAK9B,E,IAE1B,G,CAIE+B,2BACN,UAAYC,SAAmB,YAAa,CAC1C,M,CAGF,KAAM,qBAAsBA,QAAS,CACnCC,QAAQC,KACN,6EAEF,M,CAGFrC,KAAKsC,iBAAmB,IAAIC,kBAAkBZ,IAC5C3B,KAAK0B,gBAAgBC,EAAU,IAGjC3B,KAAKsC,iBAAiBE,QAAQ1B,SAASC,KAAM,CAC3C0B,gBAAiB,CAAC,SAClBC,kBAAmB,M,CAIvBC,cAhHS3C,KAAAS,YAAc,SACdT,KAAAM,YAAc,SACdN,KAAAK,WAAa,QACbL,KAAAwB,aAAe,qBAGxBxB,KAAAC,cAAgB,IAAI2C,EA2GlB5C,KAAKkC,0B,QAIIW,EAAgB,IAAI/C,S"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as e,h as i,H as s,g as n,f as o}from"./p-8fcd6f85.js";import{m as a,h as r,i as m}from"./p-529d7530.js";import{a as h}from"./p-21aa3602.js";import{s as l}from"./p-1572aab3.js";import{t as c}from"./p-323d5529.js";import"./p-9ee41861.js";const u="ix-menu{display:flex;flex-direction:row;position:absolute;height:100%;min-height:22.75rem;z-index:var(--theme-z-index-sticky);width:auto}ix-menu .menu{display:flex;flex-direction:column;position:relative;width:4rem;height:100%;-webkit-padding-after:1rem;padding-block-end:1rem;overflow:hidden;background-color:var(--theme-nav--background);transition:width var(--animate-duration)}ix-menu .menu.expanded{box-shadow:var(--theme-navigation--box-shadow)}ix-menu .menu .burger-menu{margin:0.75rem 0 1rem 0.75rem}ix-menu .menu-overlay{display:block;position:absolute;width:calc(100vw - 4rem);height:100%;left:4rem;z-index:-1;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background-color:var(--theme-sidebar-overlay-blur);transition:all 300ms ease-out}ix-menu .menu-overlay-invisible{display:none}ix-menu .menu.expanded{width:16rem}ix-menu .menu-overlay.expanded{width:calc(100vw - 16rem);left:16rem}ix-menu #avatar-tab-placeholder{max-height:3rem}ix-menu .avatar{margin-bottom:2rem}ix-menu #cui-imprint .cui-imprint-product-name{margin-bottom:1rem}ix-menu #cui-imprint .cui-imprint-product-description{margin-bottom:2rem}ix-menu #cui-imprint .cui-imprint-link-container{display:flex;align-items:center}ix-menu .bottom-tab-divider{margin-top:auto}ix-menu.mode-mobile .menu:not(.expanded){width:0}ix-menu.mode-mobile .menu{padding-top:2rem}ix-menu.mode-mobile .menu .burger-menu{display:none}ix-menu.mode-mobile .menu-overlay{left:0px;width:100vw}a[href]:has(>ix-menu-item){text-decoration:none}";const d=class{constructor(i){t(this,i);this.expandChange=e(this,"expandChange",7);this.mapExpandChange=e(this,"mapExpandChange",7);this.domObserver=new MutationObserver(this.onDomChange.bind(this));this.isVisible=t=>{var e,i;return t.style.display!=="none"&&((i=(e=t.parentElement)===null||e===void 0?void 0:e.parentElement)===null||i===void 0?void 0:i.style.display)!=="none"};this.showSettings=false;this.showAbout=false;this.enableToggleTheme=false;this.enableSettings=true;this.enableMapExpand=false;this.applicationName=undefined;this.applicationDescription="";this.maxVisibleMenuItems=9;this.i18nLegal="About & legal information";this.i18nSettings="Settings";this.i18nToggleTheme="Toggle theme";this.i18nExpand=" Expand";this.i18nCollapse="Collapse";this.i18nMore="More…";this.expand=false;this.showMoreItems=false;this.visibleMenuItems=0;this.countMoreNotifications=0;this.mapExpand=true;this.activeTab=undefined;this.isMoreTabEmpty=false;this.mode="desktop"}onWindowResize(){this.visibleMenuItems=this.getMaxTabCount()}handleNodeMutation(t){if(!(t instanceof HTMLElement)){return}if(t.matches(".tab")){this.onWindowResize()}if(t.matches("ix-menu-about")&&this.menu.contains(t)){this.appendAbout()}if(t.matches("ix-menu-settings")&&this.menu.contains(t)){this.appendSettings()}}onDomChange(t){t.forEach((t=>{t.addedNodes.forEach(this.handleNodeMutation.bind(this));t.removedNodes.forEach(this.handleNodeMutation.bind(this))}))}get popoverArea(){return this.hostElement.querySelector("#popover-area")}get overlayContainer(){return this.hostElement.querySelector(".menu-overlay")}get invisibleContainer(){return this.hostElement.querySelector(".menu-overlay-invisible")}get menu(){return this.hostElement.querySelector(".menu")}get menuItems(){return Array.from(this.hostElement.querySelectorAll('ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot="bottom"])')).filter(this.isVisible)}get menuBottomItems(){return Array.from(this.hostElement.querySelectorAll("ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)")).filter(this.isVisible)}get homeTab(){return this.hostElement.querySelector("ix-menu-item.home-tab")}get moreItemsDropdown(){return this.hostElement.querySelector(".internal-tab ix-dropdown")}get isMoreItemsDropdownEmpty(){return this.hostElement.querySelectorAll(".internal-tab ix-dropdown .appended").length===0}get moreItemsDropdownItems(){return this.hostElement.querySelectorAll(".internal-tab ix-dropdown ix-menu-item")}get activeMoreTabContainer(){return this.hostElement.querySelector(".active-more-tab")}get activeMoreTab(){return this.hostElement.querySelector(".active-more-tab ix-menu-item")}get aboutPopoverContainer(){return this.hostElement.querySelector(".about-news")}get aboutPopover(){return document.querySelector("ix-menu-about-news")}get aboutTab(){return this.hostElement.querySelector("#aboutAndLegal")}get about(){return this.hostElement.querySelector("ix-menu-about")}get settings(){return this.hostElement.querySelector("ix-menu-settings")}get isSettingsEmpty(){return Array.from(this.hostElement.querySelectorAll("ix-menu-settings-item")).length===0}get avatarItem(){return this.hostElement.querySelector("ix-menu-avatar")}get tabsContainer(){return this.hostElement.querySelector("#menu-tabs")}showTab(t){return t+1<=this.visibleMenuItems}componentDidLoad(){var t,e,i,s;(t=this.settings)===null||t===void 0?void 0:t.addEventListener("close",(()=>{this.showSettings=false;this.settings.show=this.showSettings}));(e=this.settings)===null||e===void 0?void 0:e.addEventListener("animationend",(()=>{if(!this.showSettings){this.settings.classList.add("d-none");this.overlayContainer.classList.add("d-none")}}));(i=this.about)===null||i===void 0?void 0:i.addEventListener("close",(()=>{this.showAbout=false;this.about.show=this.showAbout}));(s=this.about)===null||s===void 0?void 0:s.addEventListener("animationend",(()=>{if(!this.showAbout){this.about.classList.add("d-none");this.overlayContainer.classList.add("d-none")}}));this.overlayContainer.classList.add("d-none");this.onWindowResize();this.domObserver.observe(this.hostElement,{attributes:false,childList:true,subtree:true})}componentWillLoad(){a.register(this.hostElement);const t=r("ix-basic-navigation",this.hostElement);if(m(t)&&t.hideHeader===false){l.onChange.on((t=>this.mode=t));this.mode=l.mode}}componentWillRender(){this.appendTabs()}componentDidRender(){this.visibleMenuItems=this.getMaxTabCount();this.appendFragments()}appendFragments(){this.appendAvatar();this.appendAbout();this.appendSettings();this.appendAboutNewsPopover();this.isMoreTabEmpty=this.isMoreItemsDropdownEmpty;this.countMoreNotifications=this.getMoreNotificationsCount()}resetActiveTab(){this.activeTab=null}isMenuItemActive(t){return t.active||t.classList.contains("active")}appendTabs(){this.activeTab=null;if(this.homeTab){this.hostElement.querySelector(".tabs-top").appendChild(this.homeTab);this.homeTab.addEventListener("click",this.resetOverlay.bind(this))}this.menuItems.forEach(((t,e)=>{var i;if(this.showTab(e)){t.classList.remove("d-none")}else{t.classList.add("d-none");if(this.isMenuItemActive(t)){this.activeTab=t}}(i=this.homeTab)===null||i===void 0?void 0:i.classList.remove("d-none");t.addEventListener("click",this.resetOverlay.bind(this))}))}appendAvatar(){var t;const e=this.avatarItem;if(e){e.style.marginBottom="1rem";(t=this.hostElement.querySelector("#avatar-tab-placeholder"))===null||t===void 0?void 0:t.appendChild(e)}}getAboutPopoverVerticalPosition(){const t=12;const e=6;const i=this.aboutTab.getBoundingClientRect();const s=window.innerHeight-(i.bottom-i.height/2+t/2+e);return h(s)}appendAboutNewsPopover(){var t;if(!this.aboutPopover){return}this.aboutPopover.style.bottom=this.getAboutPopoverVerticalPosition();if(!((t=this.popoverArea)===null||t===void 0?void 0:t.contains(this.aboutPopover))){const t=()=>{var t;if((t=this.aboutPopover)===null||t===void 0?void 0:t.aboutItemLabel){this.about.activeTabLabel=this.aboutPopover.aboutItemLabel;this.toggleAbout(true)}};this.aboutPopover.addEventListener("showMore",t.bind(this));document.body.appendChild(this.aboutPopover)}}appendSettings(){if(this.settings){this.overlayContainer.appendChild(this.settings)}}appendAbout(){if(this.about){this.overlayContainer.appendChild(this.about)}}getMoreNotificationsCount(){var t;const e=(t=this.moreItemsDropdown)===null||t===void 0?void 0:t.querySelectorAll(".appended");let i=0;e===null||e===void 0?void 0:e.forEach((t=>{if(t["notifications"]){i+=t["notifications"]}}));return i}getAvailableHeight(){const t=60;const e=72;const i=56;const s=36;let n=this.hostElement.clientHeight;n-=t;if(this.avatarItem){n-=i}if(this.homeTab){n-=e}if(this.showAbout){n-=s}if(this.showSettings){n-=s}if(this.menuBottomItems.length){n-=this.menuBottomItems.length*s}if(this.enableMapExpand){n-=s}n-=2*s;n-=16;return n}getMaxTabCount(){const t=48;const e=this.getAvailableHeight();const i=Math.floor(e/t);const s=this.menuItems.length;if(s===1){return 1}if(s<this.maxVisibleMenuItems){if(i>s){return s}return Math.min(i-2,s)}if(s===this.maxVisibleMenuItems){if(i<this.maxVisibleMenuItems){return i-2}if(i===this.maxVisibleMenuItems){return this.maxVisibleMenuItems-2}return Math.min(i,this.maxVisibleMenuItems)}if(i===this.maxVisibleMenuItems){return this.maxVisibleMenuItems-2}if(i>=this.maxVisibleMenuItems){return this.maxVisibleMenuItems-1}return Math.min(i-2,this.maxVisibleMenuItems)}async toggleMapExpand(t){this.skipAllOverlayAnimations();if(t!==undefined){this.mapExpand=t}else{this.mapExpand=!this.mapExpand}}skipAllOverlayAnimations(){if(this.about){this.skipOverlayAnimationFor(this.about)}if(this.settings){this.skipOverlayAnimationFor(this.settings)}}skipOverlayAnimationFor(t){const e="animate__animated";t===null||t===void 0?void 0:t.classList.remove(e);setTimeout((()=>{t===null||t===void 0?void 0:t.classList.add(e)}),300)}async toggleMenu(t){this.skipAllOverlayAnimations();if(t!==undefined){this.expand=t}else{this.expand=!this.expand}if(this.aboutPopover){this.aboutPopover.expanded=this.expand}this.expandChange.emit(this.expand)}async toggleSettings(t){var e;if(this.showAbout){this.skipAllOverlayAnimations()}else{this.skipOverlayAnimationFor(this.about)}(e=this.about)===null||e===void 0?void 0:e.classList.add("d-none");this.resetOverlay();this.showSettings=t;this.settings.show=this.showSettings;this.settings.classList.remove("d-none");this.overlayContainer.classList.remove("d-none")}async toggleAbout(t){var e;if(this.showSettings){this.skipAllOverlayAnimations()}else{this.skipOverlayAnimationFor(this.settings)}(e=this.settings)===null||e===void 0?void 0:e.classList.add("d-none");this.resetOverlay();this.showAbout=t;this.about.show=this.showAbout;this.about.classList.remove("d-none");this.overlayContainer.classList.remove("d-none")}resetOverlay(){this.showSettings=false;this.showAbout=false;if(this.settings){this.settings.show=this.showSettings}if(this.about){this.about.show=this.showAbout}this.toggleMenu(false)}showMoreButton(){const t=this.menuItems.length;if(t===1){return false}if(t<this.maxVisibleMenuItems){return this.visibleMenuItems<t}if(t>this.maxVisibleMenuItems){return this.visibleMenuItems<this.maxVisibleMenuItems}return this.visibleMenuItems<=this.maxVisibleMenuItems-2}getCollapseText(){return this.mapExpand?this.i18nCollapse:this.i18nExpand}getCollapseIcon(){return this.mapExpand?"double-chevron-left":"double-chevron-right"}isMenuItemClicked(t){const e=t.composedPath();const i=e.filter((t=>t.id!=="ix-menu-more-tab")).filter((t=>t.tagName==="IX-MENU-ITEM"));return i.some((t=>this.tabsContainer.contains(t)))}render(){return i(s,{class:{expanded:this.expand,[`mode-${this.mode}`]:true}},i("div",{class:{menu:true,expanded:this.expand},onClick:()=>{this.resetActiveTab()}},i("ix-burger-menu",{onClick:async()=>this.toggleMenu(),expanded:this.expand,class:{"burger-menu":true}}),i("div",{id:"avatar-tab-placeholder"}),i("div",{id:"menu-tabs",style:{display:"contents"},onClick:t=>{if(this.isMenuItemClicked(t)){this.resetOverlay()}}},i("div",{class:"tabs-top"}),i("slot",null),i("div",{class:"active-more-tab"},this.activeTab?i("ix-menu-item",{class:"internal-tab",active:true,tabIcon:this.activeTab.tabIcon},this.activeTab.innerText):null),i("ix-menu-item",{id:"ix-menu-more-tab",tabIcon:"more-menu",class:{"internal-tab":true},style:{display:this.showMoreButton()?"block":"none"},title:"Show more",notifications:this.countMoreNotifications},this.i18nMore,i("ix-dropdown",{trigger:"ix-menu-more-tab",positioningStrategy:"fixed",placement:"right-start"},this.menuItems.filter(((t,e)=>!this.showTab(e)&&!this.isMenuItemActive(t)&&this.isVisible(t))).map((t=>i("ix-menu-item",{tabIcon:t.tabIcon,active:t.active,class:"internal-tab appended",onClick:()=>{this.resetOverlay();t.dispatchEvent(new CustomEvent("click"))}},t.innerText)))))),i("div",{class:"bottom-tab-divider"}),this.enableSettings&&!this.isSettingsEmpty?i("ix-menu-item",{id:"settings",class:{"internal-tab":true,"bottom-tab":true,active:this.showSettings},tabIcon:"cogwheel",onClick:async()=>this.toggleSettings(!this.showSettings)},this.i18nSettings):null,i("slot",{name:"bottom"}),i("div",{id:"popover-area"}),this.about?i("ix-menu-item",{id:"aboutAndLegal",class:{"internal-tab":true,"bottom-tab":true,active:this.showAbout},tabIcon:"info",onClick:async()=>this.toggleAbout(!this.showAbout)},this.i18nLegal):null,this.enableToggleTheme?i("ix-menu-item",{id:"toggleTheme",onClick:()=>c.toggleMode(),class:"internal-tab bottom-tab",tabIcon:"bulb"},this.i18nToggleTheme):null,this.enableMapExpand?i("ix-menu-item",{id:"menu-collapse",onClick:()=>this.mapExpandChange.emit(this.mapExpand),class:"internal-tab bottom-tab",tabIcon:`${this.getCollapseIcon()}`},this.getCollapseText()):null),i("div",{class:{"menu-overlay":true,expanded:this.expand,"d-block":this.showAbout||this.showSettings},style:{opacity:this.showAbout||this.showSettings?"1":"0"}}),i("div",{class:"menu-overlay-invisible"}))}get hostElement(){return n(this)}};d.style=u;const b=".text-xs.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.625rem;font-weight:400;line-height:1.4em;color:var(--theme-color-std-text)}.text-s.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption-single.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1em;color:var(--theme-color-std-text)}.text-default.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-single.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.143em;color:var(--theme-color-std-text)}.text-default-title.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-title-single.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.143em;color:var(--theme-color-std-text)}.text-l.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-single.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.25em;color:var(--theme-color-std-text)}.text-l-title.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-title-single.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.25em;color:var(--theme-color-std-text)}.text-h2.sc-ix-menu-about{-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)}.text-xl.sc-ix-menu-about{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:400;line-height:1.091em;color:var(--theme-color-std-text)}a.sc-ix-menu-about{color:var(--theme-color-primary)}.sc-ix-menu-about-h{display:block;background-color:var(--theme-nav-overlay--background);padding:0.75rem 1rem 1rem 2rem;flex-grow:1;position:absolute;width:100%;height:100%}.sc-ix-menu-about-h .about-header.sc-ix-menu-about{display:flex;justify-content:space-between;flex-direction:row;align-items:center;height:2rem;margin-bottom:0.5rem}.sc-ix-menu-about-h .about-header.sc-ix-menu-about h2.sc-ix-menu-about{color:var(--theme-nav-overlay-header--color);margin-bottom:0}.sc-ix-menu-about-h .about-tabs.sc-ix-menu-about{margin-bottom:1.5rem}.sc-ix-menu-about-h ix-menu-about-item.sc-ix-menu-about{display:none}";const x=class{constructor(i){t(this,i);this.close=e(this,"close",7);this.activeTabLabel=undefined;this.label="About & legal information";this.show=false;this.labels=[]}get aboutItems(){return Array.from(this.el.querySelectorAll("ix-menu-about-item"))}setTab(t){this.activeTabLabel=t;this.aboutItems.forEach((t=>{t.style.display="none";if(t.label===this.activeTabLabel){t.style.display="block"}}))}componentWillLoad(){if(this.aboutItems.length){this.setTab(this.activeTabLabel||this.aboutItems[0].label)}}componentDidLoad(){o(this.el)}componentWillRender(){this.updateLabels()}updateLabels(){this.labels=this.aboutItems.map((t=>t.label))}watchActiveTabLabel(t){setTimeout((()=>this.setTab(t)))}getSelectedTabIndex(t){const e=this.aboutItems.find((e=>e.label===t));return this.aboutItems.indexOf(e)}getTabItems(){return this.aboutItems.map((({label:t})=>i("ix-tab-item",{class:{active:t===this.activeTabLabel},onClick:()=>this.setTab(t)},t)))}render(){return i(s,{class:{animate__animated:true,animate__fadeInLeft:this.show,animate__fadeOutLeft:!this.show}},i("div",{class:"about-header"},i("h2",{class:"text-h2"},this.label),i("ix-icon-button",{ghost:true,size:"24",icon:"close",onClick:t=>this.close.emit(t)})),i("ix-tabs",{selected:this.getSelectedTabIndex(this.activeTabLabel),class:"about-tabs"},this.getTabItems()),i("div",{class:"about-items"},i("slot",null)))}get el(){return n(this)}static get watchers(){return{activeTabLabel:["watchActiveTabLabel"]}}};x.style=b;const g=".sc-ix-menu-about-item-h{display:block}";const f=class{constructor(e){t(this,e);this.label=undefined}render(){return i(s,null,i("slot",null))}};f.style=g;const v=".sc-ix-menu-about-news-h{--margin:0.5rem;display:block;position:fixed;width:20rem;height:auto;background-color:var(--theme-color-1);border:var(--theme-weak-bdr-1);border-radius:0.25rem;padding:1rem;left:4rem;z-index:10000;transition:left var(--animate-duration);margin-left:var(--margin) !important;box-shadow:var(--theme-box-shadow-level-4)}.expanded.sc-ix-menu-about-news-h{left:calc(4rem + 12rem)}.show.sc-ix-menu-about-news-h{display:none}.sc-ix-menu-about-news-h .banner-container.sc-ix-menu-about-news{position:absolute;top:0.0625rem;left:1rem}.sc-ix-menu-about-news-h .banner-container.sc-ix-menu-about-news svg.sc-ix-menu-about-news{position:absolute;height:3.625rem;width:3rem}.sc-ix-menu-about-news-h .banner-container.sc-ix-menu-about-news svg.sc-ix-menu-about-news polygon.sc-ix-menu-about-news{fill:var(--theme-color-primary)}.sc-ix-menu-about-news-h .banner-container.sc-ix-menu-about-news ix-icon.sc-ix-menu-about-news{margin:0.5rem;position:absolute;z-index:1}.sc-ix-menu-about-news-h .cui-popover-news-header.sc-ix-menu-about-news{margin-bottom:2rem;margin-left:4rem;margin-top:-0.25rem}.sc-ix-menu-about-news-h .popover-body.sc-ix-menu-about-news{color:var(--theme-color-std-text)}.sc-ix-menu-about-news-h .cui-popover-news-footer.sc-ix-menu-about-news{display:flex;justify-content:flex-end;margin-top:1rem}.sc-ix-menu-about-news-h ix-icon-button.sc-ix-menu-about-news{top:0.5rem;right:0.5rem;position:absolute}.sc-ix-menu-about-news-h #arrow.sc-ix-menu-about-news{position:absolute;width:0.5rem;height:0.5rem;background-color:var(--theme-color-1);border-left:var(--theme-weak-bdr-1);border-bottom:var(--theme-weak-bdr-1);transform:translateX(calc(var(--margin) * -1 - 0.8rem)) rotateZ(45deg)}";const p=class{constructor(i){t(this,i);this.showMore=e(this,"showMore",7);this.closePopover=e(this,"closePopover",7);this.show=false;this.label=undefined;this.i18nShowMore="Show more";this.aboutItemLabel=undefined;this.offsetBottom=0;this.expanded=false}render(){return i(s,{class:{expanded:this.expanded,show:!this.show}},i("div",{class:"banner-container"},i("ix-icon",{color:"color-inv-contrast-text",name:"shout",size:"32"}),i("svg",{viewBox:"0 0 48 56",xmlns:"http://www.w3.org/2000/svg"},i("polygon",{points:"0 0 48 0 48 56 24 48 0 56"}))),i("div",{class:"cui-popover-news-header"},i("span",{class:"text-l-title"},this.label)),i("ix-icon-button",{size:"24",icon:"close-small",ghost:true,onClick:()=>{this.show=false;this.closePopover.emit()}}),i("slot",null),this.aboutItemLabel?i("div",{class:"cui-popover-news-footer"},i("button",{class:"btn btn-primary",onClick:t=>{this.show=false;this.showMore.emit(t)}},this.i18nShowMore)):null,i("div",{id:"arrow"}))}};p.style=v;const w=".sc-ix-menu-avatar-h{display:block;position:relative;margin-bottom:0.5rem}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar{display:flex;align-items:center;height:2.5rem;max-height:2.5rem;padding-left:0.25rem;margin-left:0.75rem;margin-right:0.75rem;transition:0.15s;border-radius:1.25rem}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar>.avatar-image.sc-ix-menu-avatar{height:2rem;width:2rem;min-height:2rem;min-width:2rem;border-radius:100px}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar>.avatar-initials.sc-ix-menu-avatar{display:flex;align-items:center;justify-content:center;height:2rem;width:2rem;min-height:2rem;min-width:2rem;border-radius:100px;background-color:var(--theme-color-component-3)}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar #avatar-path-background.sc-ix-menu-avatar{fill:var(--theme-avatar--background)}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar #avatar-path-person.sc-ix-menu-avatar{fill:var(--theme-color-4)}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar .avatar-name.sc-ix-menu-avatar{display:flex;flex-direction:column;overflow:hidden;white-space:nowrap;margin-left:1rem;line-height:1.14}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar .avatar-name.sc-ix-menu-avatar .text-default-single.sc-ix-menu-avatar{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar:not(.disabled):not(:disabled):hover{background-color:var(--theme-avatar-btn--background--hover);color:var(--theme-avatar-btn--color--hover)}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-menu-avatar-h .avatar.sc-ix-menu-avatar:not(.disabled):not(:disabled):active{background-color:var(--theme-avatar-btn--background--active);color:var(--theme-avatar-btn--color--active)}";function y(t){const{initials:e}=t;if(e){return i("div",{class:"avatar-initials"},e)}return i("svg",{class:"avatar-image",xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32"},i("g",{fill:"none","fill-rule":"evenodd"},i("path",{id:"avatar-path-background",d:"M16 0C7.163 0 0 7.163 0 16s7.163 16 16 16 16-7.163\n 16-16c0-4.243-1.686-8.313-4.686-11.314C24.314 1.686 20.244 0 16 0z"}),i("path",{id:"avatar-path-person",d:"M17.897 17.91c3.8-.018 7.358 1.875 9.485 5.046-2.417 3.999-6.734 6.434-11.382\n 6.42-4.648.014-8.965-2.421-11.382-6.42 2.127-3.171 5.685-5.064\n 9.485-5.045h3.794zM15.821 2.129c3.682 0 6.667 2.984 6.667 6.666 0 3.682-2.985\n 6.667-6.667 6.667s-6.667-2.985-6.667-6.667 2.985-6.666 6.667-6.666z"})))}const k=class{constructor(i){t(this,i);this.logoutClick=e(this,"logoutClick",7);this.avatarElementId="ix-menu-avatar-id";this.top=undefined;this.bottom=undefined;this.image=undefined;this.initials=undefined;this.i18nLogout="Logout"}render(){return i(s,null,i("li",{class:"nav-item top-item avatar no-hover",title:this.top,id:this.avatarElementId},this.image?i("img",{src:this.image,class:"avatar-image"}):i(y,{initials:this.initials}),i("div",{class:"avatar-name"},i("span",{class:"text-default-single",title:this.top},this.top),i("span",{class:"text-default-single",title:this.bottom},this.bottom))),i("ix-dropdown",{trigger:this.avatarElementId,placement:"right-start",offset:{mainAxis:12}},i("slot",null),i("ix-menu-avatar-item",{label:this.i18nLogout,icon:"log-out",onClick:t=>{this.logoutClick.emit(t)}})))}get hostElement(){return n(this)}};k.style=w;const z=".sc-ix-menu-avatar-item-h{display:block}";const S=class{constructor(i){t(this,i);this.itemClick=e(this,"itemClick",7);this.icon=undefined;this.label=undefined}render(){return i("ix-dropdown-item",{icon:this.icon,label:this.label,onClick:t=>this.itemClick.emit(t)})}get hostElement(){return n(this)}};S.style=z;const C='.sc-ix-menu-item-h{position:relative;display:block;cursor:pointer}.sc-ix-menu-item-h:not(.disabled):not(:disabled).hover,.sc-ix-menu-item-h:not(.disabled):not(:disabled):hover{background-color:var(--theme-ghost--background--hover)}.sc-ix-menu-item-h:not(.disabled):not(:disabled).active,.sc-ix-menu-item-h:not(.disabled):not(:disabled):active{background-color:var(--theme-ghost--background--active)}.sc-ix-menu-item-h .tab.sc-ix-menu-item{display:flex;position:relative;align-items:center;height:3rem;z-index:500;padding-left:1.25rem}.sc-ix-menu-item-h i.glyph.sc-ix-menu-item{color:var(--theme-nav-item-primary-icon--color);position:relative}.sc-ix-menu-item-h .tab.sc-ix-menu-item:focus-visible{outline:none}.sc-ix-menu-item-h:focus-visible{outline:none}.sc-ix-menu-item-h .tab.sc-ix-menu-item:not(:last-child){margin-bottom:0.5rem}.sc-ix-menu-item-h .notification.sc-ix-menu-item{display:inline-flex;position:absolute;top:-0.5rem;right:-50%}.sc-ix-menu-item-h .notification.sc-ix-menu-item .pill.sc-ix-menu-item{display:inline-flex;justify-content:center;align-items:center;height:1rem;min-width:1rem;position:relative;border-radius:6.25rem;background-color:var(--theme-color-primary);border-radius:6.25rem;font-size:0.75rem;font-weight:bold;line-height:1;font-family:Siemens Sans, Arial, sans-serif;color:var(--theme-color-primary--contrast);padding:0.25rem}.sc-ix-menu-item-h .tab-text.sc-ix-menu-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--theme-nav-item-primary--color);margin:0 1.25rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.active.sc-ix-menu-item-h .tab.sc-ix-menu-item,.selected.sc-ix-menu-item-h .tab.sc-ix-menu-item{background-color:var(--theme-nav-item-primary--background--selected)}.active.sc-ix-menu-item-h .tab.sc-ix-menu-item::before,.selected.sc-ix-menu-item-h .tab.sc-ix-menu-item::before{content:"";background-color:var(--theme-nav-item-primary--border-color--selected);height:3rem;width:0.25rem;left:0;position:absolute}.active.sc-ix-menu-item-h .tab.sc-ix-menu-item>.glyph.sc-ix-menu-item,.selected.sc-ix-menu-item-h .tab.sc-ix-menu-item>.glyph.sc-ix-menu-item{color:var(--theme-nav-item-primary-icon--color--selected)}.disabled.sc-ix-menu-item-h{color:var(--theme-color-weak-text);pointer-events:none;cursor:default}.disabled.sc-ix-menu-item-h .tab.sc-ix-menu-item>.glyph.sc-ix-menu-item{color:var(--theme-color-weak-text)}.disabled.sc-ix-menu-item-h .tab-text.sc-ix-menu-item{color:var(--theme-color-weak-text)}.home-tab.sc-ix-menu-item-h,[slot=home].sc-ix-menu-item-h{margin-bottom:1.5rem}.bottom-tab.sc-ix-menu-item-h,[slot=bottom].sc-ix-menu-item-h{height:2.25rem}.bottom-tab.sc-ix-menu-item-h .tab.sc-ix-menu-item,[slot=bottom].sc-ix-menu-item-h .tab.sc-ix-menu-item{height:2.25rem}.bottom-tab.sc-ix-menu-item-h .tab.sc-ix-menu-item::before,[slot=bottom].sc-ix-menu-item-h .tab.sc-ix-menu-item::before{height:2.25rem;background-color:transparent}.bottom-tab.active.sc-ix-menu-item-h .tab.sc-ix-menu-item,.bottom-tab.selected.sc-ix-menu-item-h .tab.sc-ix-menu-item,[slot=bottom].active.sc-ix-menu-item-h .tab.sc-ix-menu-item,[slot=bottom].selected.sc-ix-menu-item-h .tab.sc-ix-menu-item{background-color:var(--theme-nav-item-secondary--background--selected)}.bottom-tab.active.sc-ix-menu-item-h:hover,.bottom-tab.selected.sc-ix-menu-item-h:hover,[slot=bottom].active.sc-ix-menu-item-h:hover,[slot=bottom].selected.sc-ix-menu-item-h:hover{background-color:var(--theme-nav-item-secondary--background--selected)}.bottom-tab.active.sc-ix-menu-item-h:active,.bottom-tab.selected.sc-ix-menu-item-h:active,[slot=bottom].active.sc-ix-menu-item-h:active,[slot=bottom].selected.sc-ix-menu-item-h:active{background-color:var(--theme-nav-item-secondary--background--selected)}';const _=class{constructor(e){t(this,e);this.home=false;this.bottom=false;this.tabIcon="document";this.notifications=undefined;this.active=undefined;this.disabled=undefined;this.title=undefined}get tabLabel(){return this.hostElement.querySelector(".tab-text")}componentDidRender(){const t=this.tabLabel;const e=t.innerHTML.replace("&amp;","&");if(this.title!==e){this.title=e}}render(){return i(s,{class:{disabled:this.disabled,"home-tab":this.home,"bottom-tab":this.bottom,active:this.active}},i("li",{class:"tab",title:this.title},i("i",{class:`glyph glyph-${this.tabIcon}`},i("div",{class:"notification"},this.notifications?i("div",{class:"pill"},this.notifications):null)),i("span",{class:"tab-text text-default"},i("slot",null))))}get hostElement(){return n(this)}};_.style=C;const A=".text-xs.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.625rem;font-weight:400;line-height:1.4em;color:var(--theme-color-std-text)}.text-s.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-caption-single.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.75rem;font-weight:700;line-height:1em;color:var(--theme-color-std-text)}.text-default.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-single.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:400;line-height:1.143em;color:var(--theme-color-std-text)}.text-default-title.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.429em;color:var(--theme-color-std-text)}.text-default-title-single.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:0.875rem;font-weight:700;line-height:1.143em;color:var(--theme-color-std-text)}.text-l.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-single.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:400;line-height:1.25em;color:var(--theme-color-std-text)}.text-l-title.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text)}.text-l-title-single.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.25em;color:var(--theme-color-std-text)}.text-h2.sc-ix-menu-settings{-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)}.text-xl.sc-ix-menu-settings{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:400;line-height:1.091em;color:var(--theme-color-std-text)}a.sc-ix-menu-settings{color:var(--theme-color-primary)}.sc-ix-menu-settings-h{display:block;background-color:var(--theme-nav-overlay--background);padding:0.75rem 1rem 1rem 2rem;flex-grow:1;position:absolute;width:100%;height:100%}.sc-ix-menu-settings-h .settings-header.sc-ix-menu-settings{display:flex;justify-content:space-between;flex-direction:row;align-items:center;height:2rem;margin-bottom:0.5rem}.sc-ix-menu-settings-h .settings-header.sc-ix-menu-settings h2.sc-ix-menu-settings{color:var(--theme-nav-overlay-header--color);margin-bottom:0}.sc-ix-menu-settings-h .settings-tabs.sc-ix-menu-settings{margin-bottom:1.5rem}";const I=class{constructor(i){t(this,i);this.close=e(this,"close",7);this.activeTabLabel=undefined;this.label="Settings";this.show=false}get settingsItems(){return Array.from(this.el.querySelectorAll("ix-menu-settings-item"))}setTab(t){this.activeTabLabel=t;this.settingsItems.forEach((t=>{t.style.display="none";if(t.label===this.activeTabLabel){t.style.display="block"}}))}componentWillLoad(){if(this.settingsItems.length){this.setTab(this.activeTabLabel||this.settingsItems[0].label)}}componentDidLoad(){o(this.el)}watchActiveTabLabel(t){this.setTab(t)}getTabItems(){return this.settingsItems.map((({label:t})=>i("ix-tab-item",{class:{active:t===this.activeTabLabel},onClick:()=>this.setTab(t)},t)))}render(){return i(s,{class:{animate__animated:true,animate__fadeInLeft:this.show,animate__fadeOutLeft:!this.show}},i("div",{class:"settings-header"},i("h2",{class:"text-h2"},this.label),i("ix-icon-button",{ghost:true,size:"24",icon:"close",onClick:t=>this.close.emit(t)})),i("ix-tabs",null,this.getTabItems()),i("slot",null))}get el(){return n(this)}static get watchers(){return{activeTabLabel:["watchActiveTabLabel"]}}};I.style=A;const T=".sc-ix-menu-settings-item-h{display:block}";const M=class{constructor(e){t(this,e);this.label=undefined}render(){return i(s,null,i("slot",null))}};M.style=T;export{d as ix_menu,x as ix_menu_about,f as ix_menu_about_item,p as ix_menu_about_news,k as ix_menu_avatar,S as ix_menu_avatar_item,_ as ix_menu_item,I as ix_menu_settings,M as ix_menu_settings_item};
2
+ //# sourceMappingURL=p-34e3a10e.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["menuCss","Menu","this","domObserver","MutationObserver","onDomChange","bind","isVisible","elm","style","display","_b","_a","parentElement","onWindowResize","visibleMenuItems","getMaxTabCount","handleNodeMutation","node","HTMLElement","matches","menu","contains","appendAbout","appendSettings","mutations","forEach","mutationRecord","addedNodes","removedNodes","popoverArea","hostElement","querySelector","overlayContainer","invisibleContainer","menuItems","Array","from","querySelectorAll","filter","menuBottomItems","homeTab","moreItemsDropdown","isMoreItemsDropdownEmpty","length","moreItemsDropdownItems","activeMoreTabContainer","activeMoreTab","aboutPopoverContainer","aboutPopover","document","aboutTab","about","settings","isSettingsEmpty","avatarItem","tabsContainer","showTab","index","componentDidLoad","addEventListener","showSettings","show","classList","add","_c","showAbout","_d","observe","attributes","childList","subtree","componentWillLoad","menuController","register","layout","hostContext","isBasicNavigationLayout","hideHeader","screenMode","onChange","on","mode","componentWillRender","appendTabs","componentDidRender","appendFragments","appendAvatar","appendAboutNewsPopover","isMoreTabEmpty","countMoreNotifications","getMoreNotificationsCount","resetActiveTab","activeTab","isMenuItemActive","item","active","appendChild","resetOverlay","remove","avatar","marginBottom","getAboutPopoverVerticalPosition","heightArrow","offsetArrow","rectAbout","getBoundingClientRect","offset","window","innerHeight","bottom","height","convertToRemString","showMore","aboutItemLabel","activeTabLabel","toggleAbout","body","moreTabs","count","tab","getAvailableHeight","heightBurgerMenu","heightHome","heightAvatar","heightBottomTab","availableHeight","clientHeight","enableMapExpand","heightTab","visibleCount","Math","floor","menuItemCount","maxVisibleMenuItems","min","async","skipAllOverlayAnimations","undefined","mapExpand","skipOverlayAnimationFor","element","animateClass","setTimeout","expand","expanded","expandChange","emit","toggleMenu","showMoreButton","getCollapseText","i18nCollapse","i18nExpand","getCollapseIcon","isMenuItemClicked","event","path","composedPath","id","tagName","some","render","h","Host","class","onClick","tabIcon","innerText","title","notifications","i18nMore","trigger","positioningStrategy","placement","map","e","dispatchEvent","CustomEvent","enableSettings","toggleSettings","i18nSettings","name","i18nLegal","enableToggleTheme","themeSwitcher","toggleMode","i18nToggleTheme","mapExpandChange","opacity","menuAboutCss","MenuAbout","aboutItems","el","setTab","label","i","forceUpdate","updateLabels","labels","watchActiveTabLabel","value","getSelectedTabIndex","selectedItem","find","indexOf","getTabItems","animate__animated","animate__fadeInLeft","animate__fadeOutLeft","ghost","size","icon","close","selected","menuAboutItemCss","MenuAboutItem","menuAboutNewsCss","MenuAboutNews","color","viewBox","xmlns","points","closePopover","i18nShowMore","menuAvatarCss","DefaultAvatar","props","initials","width","fill","d","MenuAvatar","avatarElementId","top","image","src","mainAxis","i18nLogout","logoutClick","menuAvatarItemCss","MenuAvatarItem","itemClick","menuItemCss","MenuItem","tabLabel","spanElement","newTitle","innerHTML","replace","disabled","home","menuSettingsCss","settingsItems","menuSettingsItemCss","MenuSettingsItem"],"sources":["./src/components/menu/menu.scss?tag=ix-menu","./src/components/menu/menu.tsx","./src/components/menu-about/menu-about.scss?tag=ix-menu-about&encapsulation=scoped","./src/components/menu-about/menu-about.tsx","./src/components/menu-about-item/menu-about-item.css?tag=ix-menu-about-item&encapsulation=scoped","./src/components/menu-about-item/menu-about-item.tsx","./src/components/menu-about-news/menu-about-news.scss?tag=ix-menu-about-news&encapsulation=scoped","./src/components/menu-about-news/menu-about-news.tsx","./src/components/menu-avatar/menu-avatar.scss?tag=ix-menu-avatar&encapsulation=scoped","./src/components/menu-avatar/menu-avatar.tsx","./src/components/menu-avatar-item/menu-avatar-item.css?tag=ix-menu-avatar-item&encapsulation=scoped","./src/components/menu-avatar-item/menu-avatar-item.tsx","./src/components/menu-item/menu-item.scss?tag=ix-menu-item&encapsulation=scoped","./src/components/menu-item/menu-item.tsx","./src/components/menu-settings/menu-settings.scss?tag=ix-menu-settings&encapsulation=scoped","./src/components/menu-settings/menu-settings.tsx","./src/components/menu-settings-item/menu-settings-item.css?tag=ix-menu-settings-item&encapsulation=scoped","./src/components/menu-settings-item/menu-settings-item.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n\nix-menu {\n display: flex;\n flex-direction: row;\n position: absolute;\n height: 100%;\n min-height: 22.75rem;\n z-index: var(--theme-z-index-sticky);\n width: auto;\n\n .menu {\n display: flex;\n flex-direction: column;\n position: relative;\n width: 4rem;\n height: 100%;\n padding-block-end: 1rem;\n overflow: hidden;\n\n &.expanded {\n box-shadow: var(--theme-navigation--box-shadow);\n }\n\n background-color: var(--theme-nav--background);\n transition: width var(--animate-duration);\n\n .burger-menu {\n margin: 0.75rem 0 1rem 0.75rem;\n }\n }\n\n .menu-overlay {\n display: block;\n position: absolute;\n width: calc(100vw - 4rem);\n height: 100%;\n left: 4rem;\n z-index: -1;\n backdrop-filter: blur(1rem);\n background-color: var(--theme-sidebar-overlay-blur);\n transition: all $medium-time ease-out;\n }\n\n .menu-overlay-invisible {\n display: none;\n }\n\n .menu.expanded {\n width: 16rem;\n }\n\n .menu-overlay.expanded {\n width: calc(100vw - 16rem);\n left: 16rem;\n }\n\n #avatar-tab-placeholder {\n max-height: 3rem;\n }\n\n .avatar {\n margin-bottom: 2rem;\n }\n\n #cui-imprint {\n .cui-imprint-product-name {\n margin-bottom: $default-space;\n }\n\n .cui-imprint-product-description {\n margin-bottom: $x-large-space;\n }\n\n .cui-imprint-link-container {\n display: flex;\n align-items: center;\n }\n }\n\n .bottom-tab-divider {\n margin-top: auto;\n }\n}\n\nix-menu.mode-mobile {\n .menu:not(.expanded) {\n width: 0;\n }\n\n .menu {\n padding-top: 2rem;\n }\n\n .menu .burger-menu {\n display: none;\n }\n\n .menu-overlay {\n left: 0px;\n width: calc(100vw);\n }\n}\n\n// Remove text-decoration if a tag is used inside ix-menu\na[href]:has(> ix-menu-item) {\n text-decoration: none;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { hostContext, isBasicNavigationLayout } from '../utils/screen/context';\nimport { Mode } from '../utils/screen/mode';\nimport { screenMode } from '../utils/screen/service';\nimport { themeSwitcher } from '../utils/theme-switcher';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n scoped: false,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /**\n * Is settings tab is visible\n */\n @Prop() enableSettings = true;\n\n /**\n * Internal\n */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Maximum number of menu items to show in case enough vertical space is available.\n * Extra menu items will be collapsed to 'show more' menu item.\n */\n @Prop() maxVisibleMenuItems = 9;\n\n /**\n */\n @Prop() i18nLegal = 'About & legal information';\n\n /**\n */\n @Prop() i18nSettings = 'Settings';\n\n /**\n */\n @Prop() i18nToggleTheme = 'Toggle theme';\n\n /**\n */\n @Prop() i18nExpand = ' Expand';\n\n /**\n */\n @Prop() i18nCollapse = 'Collapse';\n\n /**\n */\n @Prop() i18nMore = 'More…';\n\n /**\n * Expand menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * Menu expanded\n */\n @Event() expandChange: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange: EventEmitter<boolean>;\n @State() showMoreItems = false;\n @State() visibleMenuItems = 0;\n @State() countMoreNotifications = 0;\n @State() mapExpand = true;\n @State() activeTab: HTMLIxMenuItemElement;\n @State() isMoreTabEmpty = false;\n @State() mode: Mode = 'desktop';\n\n private readonly domObserver = new MutationObserver(\n this.onDomChange.bind(this)\n );\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.visibleMenuItems = this.getMaxTabCount();\n }\n\n private handleNodeMutation(node: Node) {\n if (!(node instanceof HTMLElement)) {\n return;\n }\n\n if (node.matches('.tab')) {\n this.onWindowResize();\n }\n\n if (node.matches('ix-menu-about') && this.menu.contains(node)) {\n this.appendAbout();\n }\n\n if (node.matches('ix-menu-settings') && this.menu.contains(node)) {\n this.appendSettings();\n }\n }\n\n private onDomChange(mutations: MutationRecord[]) {\n mutations.forEach((mutationRecord) => {\n mutationRecord.addedNodes.forEach(this.handleNodeMutation.bind(this));\n mutationRecord.removedNodes.forEach(this.handleNodeMutation.bind(this));\n });\n }\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.querySelector('#popover-area');\n }\n\n get overlayContainer() {\n return this.hostElement.querySelector('.menu-overlay');\n }\n\n get invisibleContainer() {\n return this.hostElement.querySelector('.menu-overlay-invisible');\n }\n\n get menu() {\n return this.hostElement.querySelector('.menu');\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter(this.isVisible);\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter(this.isVisible);\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.querySelector('.internal-tab ix-dropdown');\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.querySelectorAll('.internal-tab ix-dropdown .appended')\n .length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.querySelector('.active-more-tab ix-menu-item');\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news');\n }\n\n get aboutPopover(): HTMLIxMenuAboutNewsElement {\n return document.querySelector('ix-menu-about-news');\n }\n\n get aboutTab(): HTMLElement {\n return this.hostElement.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(this.hostElement.querySelectorAll('ix-menu-settings-item'))\n .length === 0\n );\n }\n\n get avatarItem(): HTMLIxMenuAvatarElement {\n return this.hostElement.querySelector('ix-menu-avatar');\n }\n\n get tabsContainer(): HTMLDivElement {\n return this.hostElement.querySelector('#menu-tabs');\n }\n\n private showTab(index: number) {\n return index + 1 <= this.visibleMenuItems;\n }\n\n componentDidLoad() {\n this.settings?.addEventListener('close', () => {\n this.showSettings = false;\n this.settings.show = this.showSettings;\n });\n\n this.settings?.addEventListener('animationend', () => {\n if (!this.showSettings) {\n this.settings.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.about?.addEventListener('close', () => {\n this.showAbout = false;\n this.about.show = this.showAbout;\n });\n\n this.about?.addEventListener('animationend', () => {\n if (!this.showAbout) {\n this.about.classList.add('d-none');\n this.overlayContainer.classList.add('d-none');\n }\n });\n\n this.overlayContainer.classList.add('d-none');\n\n this.onWindowResize();\n\n this.domObserver.observe(this.hostElement, {\n attributes: false,\n childList: true,\n subtree: true,\n });\n }\n\n componentWillLoad() {\n menuController.register(this.hostElement);\n const layout = hostContext('ix-basic-navigation', this.hostElement);\n if (isBasicNavigationLayout(layout) && layout.hideHeader === false) {\n screenMode.onChange.on((mode) => (this.mode = mode));\n this.mode = screenMode.mode;\n }\n }\n\n componentWillRender() {\n this.appendTabs();\n }\n\n componentDidRender() {\n this.visibleMenuItems = this.getMaxTabCount();\n this.appendFragments();\n }\n\n private appendFragments() {\n this.appendAvatar();\n this.appendAbout();\n this.appendSettings();\n this.appendAboutNewsPopover();\n\n // This lead to none infinite-loops and other bugs.\n this.isMoreTabEmpty = this.isMoreItemsDropdownEmpty;\n\n this.countMoreNotifications = this.getMoreNotificationsCount();\n }\n\n private resetActiveTab() {\n this.activeTab = null;\n }\n\n private isMenuItemActive(item: HTMLIxMenuItemElement) {\n return item.active || item.classList.contains('active');\n }\n\n private appendTabs() {\n this.activeTab = null;\n\n if (this.homeTab) {\n this.hostElement.querySelector('.tabs-top').appendChild(this.homeTab);\n this.homeTab.addEventListener('click', this.resetOverlay.bind(this));\n }\n\n this.menuItems.forEach((item: HTMLIxMenuItemElement, index) => {\n if (this.showTab(index)) {\n item.classList.remove('d-none');\n } else {\n item.classList.add('d-none');\n\n if (this.isMenuItemActive(item)) {\n this.activeTab = item;\n }\n }\n\n // TODO: Find better solution to handle home tab\n this.homeTab?.classList.remove('d-none');\n\n item.addEventListener('click', this.resetOverlay.bind(this));\n });\n }\n\n private appendAvatar() {\n const avatar = this.avatarItem;\n if (avatar) {\n avatar.style.marginBottom = '1rem';\n this.hostElement\n .querySelector('#avatar-tab-placeholder')\n ?.appendChild(avatar);\n }\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab.getBoundingClientRect();\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutPopover) {\n return;\n }\n\n this.aboutPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutPopover)) {\n const showMore = () => {\n if (this.aboutPopover?.aboutItemLabel) {\n this.about.activeTabLabel = this.aboutPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutPopover);\n }\n }\n\n private appendSettings() {\n if (this.settings) {\n this.overlayContainer.appendChild(this.settings);\n }\n }\n\n private appendAbout() {\n if (this.about) {\n this.overlayContainer.appendChild(this.about);\n }\n }\n\n private getMoreNotificationsCount(): number {\n const moreTabs = this.moreItemsDropdown?.querySelectorAll('.appended');\n let count = 0;\n moreTabs?.forEach((tab) => {\n if (tab['notifications']) {\n count += tab['notifications'];\n }\n });\n\n return count;\n }\n\n private getAvailableHeight() {\n const heightBurgerMenu = 60;\n const heightHome = 72;\n const heightAvatar = 56;\n const heightBottomTab = 36;\n\n let availableHeight = this.hostElement.clientHeight;\n\n availableHeight -= heightBurgerMenu;\n\n if (this.avatarItem) {\n availableHeight -= heightAvatar;\n }\n\n if (this.homeTab) {\n availableHeight -= heightHome;\n }\n\n if (this.showAbout) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.showSettings) {\n availableHeight -= heightBottomTab;\n }\n\n if (this.menuBottomItems.length) {\n availableHeight -= this.menuBottomItems.length * heightBottomTab;\n }\n\n if (this.enableMapExpand) {\n availableHeight -= heightBottomTab;\n }\n\n // Subtract height of imprint and theme toggle tabs\n availableHeight -= 2 * heightBottomTab;\n\n // Subtract bottom margin of bottom tabs\n availableHeight -= 16;\n\n return availableHeight;\n }\n\n private getMaxTabCount() {\n const heightTab = 48;\n const availableHeight = this.getAvailableHeight();\n const visibleCount = Math.floor(availableHeight / heightTab);\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return 1;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n if (visibleCount > menuItemCount) {\n return menuItemCount;\n }\n\n return Math.min(visibleCount - 2, menuItemCount);\n }\n\n if (menuItemCount === this.maxVisibleMenuItems) {\n if (visibleCount < this.maxVisibleMenuItems) {\n return visibleCount - 2;\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n\n return Math.min(visibleCount, this.maxVisibleMenuItems);\n }\n\n if (visibleCount === this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 2;\n }\n if (visibleCount >= this.maxVisibleMenuItems) {\n return this.maxVisibleMenuItems - 1;\n }\n\n return Math.min(visibleCount - 2, this.maxVisibleMenuItems);\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n private skipAllOverlayAnimations() {\n if (this.about) {\n this.skipOverlayAnimationFor(this.about);\n }\n if (this.settings) {\n this.skipOverlayAnimationFor(this.settings);\n }\n }\n\n private skipOverlayAnimationFor(element: HTMLElement) {\n const animateClass = 'animate__animated';\n\n element?.classList.remove(animateClass);\n\n setTimeout(() => {\n element?.classList.add(animateClass);\n }, 300);\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n this.skipAllOverlayAnimations();\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutPopover) {\n this.aboutPopover.expanded = this.expand;\n }\n\n this.expandChange.emit(this.expand);\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (this.showAbout) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.about);\n }\n\n this.about?.classList.add('d-none');\n\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n this.settings.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (this.showSettings) {\n this.skipAllOverlayAnimations();\n } else {\n this.skipOverlayAnimationFor(this.settings);\n }\n\n this.settings?.classList.add('d-none');\n\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n this.about.classList.remove('d-none');\n this.overlayContainer.classList.remove('d-none');\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = this.showSettings;\n }\n\n if (this.about) {\n this.about.show = this.showAbout;\n }\n\n this.toggleMenu(false);\n }\n\n private showMoreButton() {\n const menuItemCount = this.menuItems.length;\n\n if (menuItemCount === 1) {\n return false;\n }\n\n if (menuItemCount < this.maxVisibleMenuItems) {\n return this.visibleMenuItems < menuItemCount;\n }\n\n if (menuItemCount > this.maxVisibleMenuItems) {\n return this.visibleMenuItems < this.maxVisibleMenuItems;\n }\n\n return this.visibleMenuItems <= this.maxVisibleMenuItems - 2;\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? 'double-chevron-left' : 'double-chevron-right';\n }\n\n private isMenuItemClicked(event: MouseEvent) {\n const path = event.composedPath();\n const menuItems = (path as HTMLElement[])\n .filter((element) => element.id !== 'ix-menu-more-tab')\n .filter((element) => {\n return element.tagName === 'IX-MENU-ITEM';\n });\n\n return menuItems.some((menu) => this.tabsContainer.contains(menu));\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`mode-${this.mode}`]: true,\n }}\n >\n <div\n class={{\n menu: true,\n expanded: this.expand,\n }}\n onClick={() => {\n this.resetActiveTab();\n }}\n >\n <ix-burger-menu\n onClick={async () => this.toggleMenu()}\n expanded={this.expand}\n class={{\n 'burger-menu': true,\n }}\n ></ix-burger-menu>\n <div id=\"avatar-tab-placeholder\"></div>\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(event) => {\n if (this.isMenuItemClicked(event)) {\n this.resetOverlay();\n }\n }}\n >\n <div class=\"tabs-top\"></div>\n <slot></slot>\n <div class=\"active-more-tab\">\n {this.activeTab ? (\n <ix-menu-item\n class=\"internal-tab\"\n active={true}\n tabIcon={this.activeTab.tabIcon}\n >\n {this.activeTab.innerText}\n </ix-menu-item>\n ) : null}\n </div>\n <ix-menu-item\n id=\"ix-menu-more-tab\"\n tabIcon=\"more-menu\"\n class={{\n 'internal-tab': true,\n }}\n style={{\n display: this.showMoreButton() ? 'block' : 'none',\n }}\n title=\"Show more\"\n notifications={this.countMoreNotifications}\n >\n {this.i18nMore}\n <ix-dropdown\n trigger={'ix-menu-more-tab'}\n positioningStrategy={'fixed'}\n placement={'right-start'}\n >\n {this.menuItems\n .filter(\n (elm: HTMLIxMenuItemElement, index) =>\n !this.showTab(index) &&\n !this.isMenuItemActive(elm) &&\n this.isVisible(elm)\n )\n .map((e: HTMLIxMenuItemElement) => {\n return (\n <ix-menu-item\n tabIcon={e.tabIcon}\n active={e.active}\n class=\"internal-tab appended\"\n onClick={() => {\n this.resetOverlay();\n e.dispatchEvent(new CustomEvent('click'));\n }}\n >\n {e.innerText}\n </ix-menu-item>\n );\n })}\n </ix-dropdown>\n </ix-menu-item>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.enableSettings && !this.isSettingsEmpty ? (\n <ix-menu-item\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n tabIcon=\"cogwheel\"\n onClick={async () => this.toggleSettings(!this.showSettings)}\n >\n {this.i18nSettings}\n </ix-menu-item>\n ) : null}\n <slot name=\"bottom\"></slot>\n <div id=\"popover-area\"></div>\n {this.about ? (\n <ix-menu-item\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n tabIcon=\"info\"\n onClick={async () => this.toggleAbout(!this.showAbout)}\n >\n {this.i18nLegal}\n </ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n tabIcon=\"bulb\"\n >\n {this.i18nToggleTheme}\n </ix-menu-item>\n ) : null}\n {this.enableMapExpand ? (\n <ix-menu-item\n id=\"menu-collapse\"\n onClick={() => this.mapExpandChange.emit(this.mapExpand)}\n class=\"internal-tab bottom-tab\"\n tabIcon={`${this.getCollapseIcon()}`}\n >\n {this.getCollapseText()}\n </ix-menu-item>\n ) : null}\n </div>\n <div\n class={{\n 'menu-overlay': true,\n expanded: this.expand,\n 'd-block': this.showAbout || this.showSettings,\n }}\n style={{\n opacity: this.showAbout || this.showSettings ? '1' : '0',\n }}\n ></div>\n <div class=\"menu-overlay-invisible\"></div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'fonts';\n\n:host {\n display: block;\n background-color: var(--theme-nav-overlay--background);\n padding: $medium-space $default-space $default-space $x-large-space;\n flex-grow: 1;\n position: absolute;\n width: 100%;\n height: 100%;\n\n .about-header {\n display: flex;\n justify-content: space-between;\n flex-direction: row;\n align-items: center;\n height: $x-large-space;\n margin-bottom: $small-space;\n\n h2 {\n color: var(--theme-nav-overlay-header--color);\n margin-bottom: 0;\n }\n }\n\n .about-tabs {\n margin-bottom: $large-space;\n }\n\n ix-menu-about-item {\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 forceUpdate,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-about',\n styleUrl: 'menu-about.scss',\n scoped: true,\n})\nexport class MenuAbout {\n /**\n * Active tab\n */\n @Prop({ mutable: true }) activeTabLabel: string;\n\n /**\n * Label of first tab\n */\n @Prop() label = 'About & legal information';\n\n /**\n * Internal\n */\n @Prop() show = false;\n\n @Element() el!: HTMLIxMenuAboutElement;\n\n /**\n * About and Legal closed\n */\n @Event() close: EventEmitter<MouseEvent>;\n\n @State() labels: string[] = [];\n\n get aboutItems(): HTMLIxMenuAboutItemElement[] {\n return Array.from(this.el.querySelectorAll('ix-menu-about-item'));\n }\n\n private setTab(label: string) {\n this.activeTabLabel = label;\n this.aboutItems.forEach((i) => {\n i.style.display = 'none';\n if (i.label === this.activeTabLabel) {\n i.style.display = 'block';\n }\n });\n }\n\n componentWillLoad() {\n if (this.aboutItems.length) {\n this.setTab(this.activeTabLabel || this.aboutItems[0].label);\n }\n }\n\n componentDidLoad() {\n forceUpdate(this.el);\n }\n\n componentWillRender() {\n this.updateLabels();\n }\n\n private updateLabels() {\n this.labels = this.aboutItems.map((i) => i.label);\n }\n\n @Watch('activeTabLabel')\n watchActiveTabLabel(value: string) {\n // Wait a DOM render cycle to get changed labels\n setTimeout(() => this.setTab(value));\n }\n\n private getSelectedTabIndex(label: string) {\n const selectedItem = this.aboutItems.find((item) => item.label === label);\n return this.aboutItems.indexOf(selectedItem);\n }\n\n private getTabItems() {\n return this.aboutItems.map(({ label }) => {\n return (\n <ix-tab-item\n class={{\n active: label === this.activeTabLabel,\n }}\n onClick={() => this.setTab(label)}\n >\n {label}\n </ix-tab-item>\n );\n });\n }\n\n render() {\n return (\n <Host\n class={{\n animate__animated: true,\n animate__fadeInLeft: this.show,\n animate__fadeOutLeft: !this.show,\n }}\n >\n <div class=\"about-header\">\n <h2 class=\"text-h2\">{this.label}</h2>\n <ix-icon-button\n ghost\n size=\"24\"\n icon=\"close\"\n onClick={(e) => this.close.emit(e)}\n ></ix-icon-button>\n </div>\n <ix-tabs\n selected={this.getSelectedTabIndex(this.activeTabLabel)}\n class=\"about-tabs\"\n >\n {this.getTabItems()}\n </ix-tabs>\n <div class=\"about-items\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\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-menu-about-item',\n styleUrl: 'menu-about-item.css',\n scoped: true,\n})\nexport class MenuAboutItem {\n /**\n * About Item label\n */\n @Prop({ reflect: true }) label: string;\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadows';\n\n:host {\n --margin: 0.5rem;\n\n $left: 4rem;\n display: block;\n position: fixed;\n width: 20rem;\n height: auto;\n background-color: var(--theme-color-1);\n border: var(--theme-weak-bdr-1);\n border-radius: $default-border-radius;\n padding: 1rem;\n left: $left;\n z-index: 10000;\n transition: left var(--animate-duration);\n\n margin-left: var(--margin) !important;\n\n @include box-shadow(4);\n\n &.expanded {\n left: calc(#{$left} + 12rem);\n }\n\n &.show {\n display: none;\n }\n\n .banner-container {\n position: absolute;\n top: 0.0625rem;\n left: $default-space;\n\n svg {\n position: absolute;\n height: 3.625rem;\n width: 3rem;\n\n polygon {\n fill: var(--theme-color-primary);\n }\n }\n\n ix-icon {\n margin: $small-space;\n position: absolute;\n z-index: 1;\n }\n }\n\n .cui-popover-news-header {\n margin-bottom: 2rem;\n margin-left: 4rem;\n margin-top: -$tiny-space;\n }\n\n .popover-body {\n color: var(--theme-color-std-text);\n }\n\n .cui-popover-news-footer {\n display: flex;\n justify-content: flex-end;\n margin-top: 1rem;\n }\n\n ix-icon-button {\n top: $small-space;\n right: $small-space;\n position: absolute;\n }\n\n #arrow {\n position: absolute;\n width: 0.5rem;\n height: 0.5rem;\n background-color: var(--theme-color-1);\n border-left: var(--theme-weak-bdr-1);\n border-bottom: var(--theme-weak-bdr-1);\n transform: translateX(calc(var(--margin) * -1 - 0.8rem)) rotateZ(45deg);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-about-news',\n styleUrl: 'menu-about-news.scss',\n scoped: true,\n})\nexport class MenuAboutNews {\n /**\n * Show about news\n */\n @Prop({ mutable: true, reflect: true }) show = false;\n\n /**\n * Title of the about news\n */\n @Prop() label: string;\n\n /**\n *\n */\n @Prop() i18nShowMore = 'Show more';\n\n /**\n * Subtitle of the about news\n */\n @Prop() aboutItemLabel: string;\n\n /**\n * Bottom offset\n */\n @Prop() offsetBottom = 0;\n\n /**\n * Show More button is pressed\n */\n @Event() showMore: EventEmitter<MouseEvent>;\n\n /**\n * Popover closed\n */\n @Event() closePopover: EventEmitter<void>;\n\n /**\n * Internal\n */\n @Prop() expanded = false;\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expanded,\n show: !this.show,\n }}\n >\n <div class=\"banner-container\">\n <ix-icon\n color=\"color-inv-contrast-text\"\n name=\"shout\"\n size=\"32\"\n ></ix-icon>\n <svg viewBox=\"0 0 48 56\" xmlns=\"http://www.w3.org/2000/svg\">\n <polygon points=\"0 0 48 0 48 56 24 48 0 56\" />\n </svg>\n </div>\n\n <div class=\"cui-popover-news-header\">\n <span class=\"text-l-title\">{this.label}</span>\n </div>\n\n <ix-icon-button\n size=\"24\"\n icon=\"close-small\"\n ghost\n onClick={() => {\n this.show = false;\n this.closePopover.emit();\n }}\n ></ix-icon-button>\n <slot></slot>\n {this.aboutItemLabel ? (\n <div class=\"cui-popover-news-footer\">\n <button\n class=\"btn btn-primary\"\n onClick={(e) => {\n this.show = false;\n this.showMore.emit(e);\n }}\n >\n {this.i18nShowMore}\n </button>\n </div>\n ) : null}\n <div id=\"arrow\"></div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n@import 'mixins/hover';\n\n:host {\n display: block;\n position: relative;\n margin-bottom: 0.5rem;\n\n .avatar {\n display: flex;\n align-items: center;\n height: 2.5rem;\n max-height: 2.5rem;\n padding-left: 0.25rem;\n margin-left: 0.75rem;\n margin-right: 0.75rem;\n transition: 0.15s;\n\n > .avatar-image {\n height: 2rem;\n width: 2rem;\n min-height: 2rem;\n min-width: 2rem;\n border-radius: 100px;\n }\n\n > .avatar-initials {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 2rem;\n width: 2rem;\n min-height: 2rem;\n min-width: 2rem;\n border-radius: 100px;\n background-color: var(--theme-color-component-3);\n }\n\n #avatar-path-background {\n fill: var(--theme-avatar--background);\n }\n\n #avatar-path-person {\n fill: var(--theme-color-4);\n }\n\n .avatar-name {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n margin-left: $default-space;\n line-height: 1.14;\n\n .text-default-single {\n @include ellipsis;\n }\n }\n\n border-radius: 1.25rem;\n\n @include hover {\n background-color: var(--theme-avatar-btn--background--hover);\n color: var(--theme-avatar-btn--color--hover);\n }\n\n @include active {\n background-color: var(--theme-avatar-btn--background--active);\n color: var(--theme-avatar-btn--color--active);\n }\n }\n}\n","/*\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\nfunction DefaultAvatar(props: { initials?: string }) {\n const { initials } = props;\n\n if (initials) {\n return <div class={'avatar-initials'}>{initials}</div>;\n }\n\n return (\n <svg\n class={'avatar-image'}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"32\"\n height=\"32\"\n viewBox=\"0 0 32 32\"\n >\n <g fill=\"none\" fill-rule=\"evenodd\">\n <path\n id=\"avatar-path-background\"\n d=\"M16 0C7.163 0 0 7.163 0 16s7.163 16 16 16 16-7.163\n 16-16c0-4.243-1.686-8.313-4.686-11.314C24.314 1.686 20.244 0 16 0z\"\n />\n <path\n id=\"avatar-path-person\"\n d=\"M17.897 17.91c3.8-.018 7.358 1.875 9.485 5.046-2.417 3.999-6.734 6.434-11.382\n 6.42-4.648.014-8.965-2.421-11.382-6.42 2.127-3.171 5.685-5.064\n 9.485-5.045h3.794zM15.821 2.129c3.682 0 6.667 2.984 6.667 6.666 0 3.682-2.985\n 6.667-6.667 6.667s-6.667-2.985-6.667-6.667 2.985-6.666 6.667-6.666z\"\n />\n </g>\n </svg>\n );\n}\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-avatar',\n styleUrl: 'menu-avatar.scss',\n scoped: true,\n})\nexport class MenuAvatar {\n @Element() hostElement: HTMLIxMenuAvatarElement;\n\n /**\n * First line of text\n */\n @Prop() top: string;\n\n /**\n * Second line of text\n */\n @Prop() bottom: string;\n\n /**\n * Display a avatar image\n *\n * @since 1.4.0\n */\n @Prop() image: string;\n\n /**\n * Display the initials of the user. Will be overwritten by image\n *\n * @since 1.4.0\n */\n @Prop() initials: string;\n\n /**\n * Use for translation\n */\n @Prop() i18nLogout = 'Logout';\n\n /**\n * Logout click\n */\n @Event() logoutClick: EventEmitter;\n\n private avatarElementId = 'ix-menu-avatar-id';\n\n render() {\n return (\n <Host>\n <li\n class=\"nav-item top-item avatar no-hover\"\n title={this.top}\n id={this.avatarElementId}\n >\n {this.image ? (\n <img src={this.image} class=\"avatar-image\"></img>\n ) : (\n <DefaultAvatar initials={this.initials} />\n )}\n <div class=\"avatar-name\">\n <span class=\"text-default-single\" title={this.top}>\n {this.top}\n </span>\n <span class=\"text-default-single\" title={this.bottom}>\n {this.bottom}\n </span>\n </div>\n </li>\n <ix-dropdown\n trigger={this.avatarElementId}\n placement={'right-start'}\n offset={{\n mainAxis: 12,\n }}\n >\n <slot></slot>\n <ix-menu-avatar-item\n label={this.i18nLogout}\n icon=\"log-out\"\n onClick={(e) => {\n this.logoutClick.emit(e);\n }}\n ></ix-menu-avatar-item>\n </ix-dropdown>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\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 Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-avatar-item',\n styleUrl: 'menu-avatar-item.css',\n scoped: true,\n})\nexport class MenuAvatarItem {\n /**\n * Avatar dropdown icon\n */\n @Prop() icon: string;\n\n /**\n * Avatar dropdown label\n */\n @Prop() label: string;\n\n /**\n * Avatar dropdown item clicked\n */\n @Event() itemClick: EventEmitter<MouseEvent>;\n\n @Element() hostElement: HTMLIxMenuAvatarItemElement;\n\n render() {\n return (\n <ix-dropdown-item\n icon={this.icon}\n label={this.label}\n onClick={(e) => this.itemClick.emit(e)}\n ></ix-dropdown-item>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n:host {\n position: relative;\n display: block;\n cursor: pointer;\n @include ghost-hover-pressed;\n\n .tab {\n display: flex;\n position: relative;\n align-items: center;\n height: 3rem;\n z-index: 500;\n padding-left: 1.25rem;\n }\n\n i.glyph {\n color: var(--theme-nav-item-primary-icon--color);\n position: relative;\n }\n\n .tab:focus-visible {\n outline: none;\n }\n\n &:focus-visible {\n outline: none;\n }\n\n .tab:not(:last-child) {\n margin-bottom: $small-space;\n }\n\n .notification {\n display: inline-flex;\n position: absolute;\n top: -$small-space;\n right: -50%;\n\n .pill {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 1rem;\n min-width: 1rem;\n position: relative;\n border-radius: 6.25rem;\n background-color: var(--theme-color-primary);\n border-radius: 6.25rem;\n font-size: 0.75rem;\n font-weight: bold;\n line-height: 1;\n font-family: Siemens Sans, Arial, sans-serif;\n color: var(--theme-color-primary--contrast);\n padding: $tiny-space;\n }\n }\n\n .tab-text {\n @include ellipsis;\n color: var(--theme-nav-item-primary--color);\n margin: 0 1.25rem;\n user-select: none;\n }\n\n &.active,\n &.selected {\n .tab {\n background-color: var(--theme-nav-item-primary--background--selected);\n }\n\n .tab::before {\n content: '';\n background-color: var(--theme-nav-item-primary--border-color--selected);\n height: 3rem;\n width: 0.25rem;\n left: 0;\n position: absolute;\n }\n\n .tab > .glyph {\n color: var(--theme-nav-item-primary-icon--color--selected);\n }\n }\n\n &.disabled {\n color: var(--theme-color-weak-text);\n pointer-events: none;\n cursor: default;\n\n .tab > .glyph {\n color: var(--theme-color-weak-text);\n }\n\n .tab-text {\n color: var(--theme-color-weak-text);\n }\n }\n\n &.home-tab,\n &[slot='home'] {\n margin-bottom: 1.5rem;\n }\n\n &.bottom-tab,\n &[slot='bottom'] {\n $bottom-height: 2.25rem;\n\n height: $bottom-height;\n\n .tab {\n height: $bottom-height;\n }\n\n .tab::before {\n height: $bottom-height;\n background-color: transparent;\n }\n\n &.active,\n &.selected {\n .tab {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:hover {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n\n &:active {\n background-color: var(--theme-nav-item-secondary--background--selected);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-item',\n styleUrl: 'menu-item.scss',\n scoped: true,\n})\nexport class MenuItem {\n /**\n * Move the Tab to a top position.\n */\n @Prop() home = false;\n\n /**\n * Caution: this is no longer working. Please use slot=\"bottom\" instead.\n *\n * Place tab on bottom\n *\n * @deprecated Will be removed in 2.0.0. Replaced by slot based implementation\n */\n @Prop() bottom = false;\n\n /**\n * Icon name from @siemens/ix-icons\n */\n @Prop() tabIcon = 'document';\n\n /**\n * Show notification cound on tab\n */\n @Prop() notifications: number;\n\n /**\n * State to display active\n */\n @Prop() active: boolean;\n\n /**\n * Disable tab and remove event handlers\n */\n @Prop() disabled: boolean;\n\n @Element() hostElement: HTMLIxMenuItemElement;\n\n @State() title: string;\n\n get tabLabel() {\n return this.hostElement.querySelector('.tab-text');\n }\n\n componentDidRender() {\n const spanElement = this.tabLabel;\n const newTitle = spanElement.innerHTML.replace('&amp;', '&');\n if (this.title !== newTitle) {\n this.title = newTitle;\n }\n }\n\n render() {\n return (\n <Host\n class={{\n disabled: this.disabled,\n 'home-tab': this.home,\n 'bottom-tab': this.bottom,\n active: this.active,\n }}\n >\n <li class=\"tab\" title={this.title}>\n <i class={`glyph glyph-${this.tabIcon}`}>\n <div class=\"notification\">\n {this.notifications ? (\n <div class=\"pill\">{this.notifications}</div>\n ) : null}\n </div>\n </i>\n <span class=\"tab-text text-default\">\n <slot></slot>\n </span>\n </li>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'fonts';\n\n:host {\n display: block;\n background-color: var(--theme-nav-overlay--background);\n padding: $medium-space $default-space $default-space $x-large-space;\n flex-grow: 1;\n position: absolute;\n width: 100%;\n height: 100%;\n\n .settings-header {\n display: flex;\n justify-content: space-between;\n flex-direction: row;\n align-items: center;\n height: $x-large-space;\n margin-bottom: $small-space;\n\n h2 {\n color: var(--theme-nav-overlay-header--color);\n margin-bottom: 0;\n }\n }\n\n .settings-tabs {\n margin-bottom: $large-space;\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 forceUpdate,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-menu-settings',\n styleUrl: 'menu-settings.scss',\n scoped: true,\n})\nexport class MenuAbout {\n /**\n * active tab\n */\n @Prop({ mutable: true }) activeTabLabel: string;\n\n /**\n * Label\n */\n @Prop() label = 'Settings';\n\n /**\n * Internal\n */\n @Prop() show = false;\n\n @Element() el!: HTMLIxMenuSettingsElement;\n\n /**\n * Popover closed\n */\n @Event() close: EventEmitter<MouseEvent>;\n\n get settingsItems(): HTMLIxMenuSettingsItemElement[] {\n return Array.from(this.el.querySelectorAll('ix-menu-settings-item'));\n }\n\n private setTab(label: string) {\n this.activeTabLabel = label;\n this.settingsItems.forEach((i) => {\n i.style.display = 'none';\n\n if (i.label === this.activeTabLabel) {\n i.style.display = 'block';\n }\n });\n }\n\n componentWillLoad() {\n if (this.settingsItems.length) {\n this.setTab(this.activeTabLabel || this.settingsItems[0].label);\n }\n }\n\n componentDidLoad() {\n forceUpdate(this.el);\n }\n\n @Watch('activeTabLabel')\n watchActiveTabLabel(value: string) {\n this.setTab(value);\n }\n\n private getTabItems() {\n return this.settingsItems.map(({ label }) => {\n return (\n <ix-tab-item\n class={{\n active: label === this.activeTabLabel,\n }}\n onClick={() => this.setTab(label)}\n >\n {label}\n </ix-tab-item>\n );\n });\n }\n\n render() {\n return (\n <Host\n class={{\n animate__animated: true,\n animate__fadeInLeft: this.show,\n animate__fadeOutLeft: !this.show,\n }}\n >\n <div class=\"settings-header\">\n <h2 class=\"text-h2\">{this.label}</h2>\n <ix-icon-button\n ghost\n size=\"24\"\n icon=\"close\"\n onClick={(e) => this.close.emit(e)}\n ></ix-icon-button>\n </div>\n <ix-tabs>{this.getTabItems()}</ix-tabs>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\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-menu-settings-item',\n styleUrl: 'menu-settings-item.css',\n scoped: true,\n})\nexport class MenuSettingsItem {\n /**\n * Label\n */\n @Prop() label: string;\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1 +1,2 @@
1
- function r(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}function n(r,n,e){return r(e={path:n,exports:{},require:function(){return t()}},e.exports),e.exports}function t(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}export{t as a,n as c,r as g}
1
+ function r(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r["default"]:r}function n(r,n,e){return e={path:n,exports:{},require:function(r,n){return t()}},r(e,e.exports),e.exports}function t(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}export{t as a,n as c,r as g};
2
+ //# sourceMappingURL=p-37417714.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{r,h as o,H as s}from"./p-8fcd6f85.js";const e=":host{display:block;position:relative;width:100%;border:0.0625rem solid var(--theme-color-x-weak-bdr);margin:0.25rem 0px}";const t=class{constructor(o){r(this,o)}render(){return o(s,null)}};t.style=e;export{t as ix_divider};
2
+ //# sourceMappingURL=p-3776a37f.entry.js.map