@siemens/ix 2.6.1 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1128) hide show
  1. package/components/a11y.js.map +1 -1
  2. package/components/application-header.js +20 -11
  3. package/components/application-header.js.map +1 -1
  4. package/components/avatar.js.map +1 -1
  5. package/components/breadcrumb-item.js.map +1 -1
  6. package/components/button.js +2 -2
  7. package/components/button.js.map +1 -1
  8. package/components/card-content.js +2 -2
  9. package/components/card-content.js.map +1 -1
  10. package/components/card-title.js +2 -2
  11. package/components/card-title.js.map +1 -1
  12. package/components/card.js +1 -1
  13. package/components/card.js.map +1 -1
  14. package/components/date-picker.js +4 -4
  15. package/components/date-picker.js.map +1 -1
  16. package/components/divider.js +1 -1
  17. package/components/dropdown-item.js +3 -3
  18. package/components/dropdown.js +2 -2
  19. package/components/field-label.js +1 -1
  20. package/components/field-wrapper.js +2 -2
  21. package/components/filter-chip.js +2 -2
  22. package/components/filter-chip.js.map +1 -1
  23. package/components/group-context-menu.js +1 -1
  24. package/components/group-context-menu.js.map +1 -1
  25. package/components/group-item.js +2 -2
  26. package/components/icon-button.js +4 -4
  27. package/components/icon-button.js.map +1 -1
  28. package/components/index.js +4 -0
  29. package/components/index.js.map +1 -1
  30. package/components/index2.js +4 -0
  31. package/components/index2.js.map +1 -1
  32. package/components/input.util.js +26 -2
  33. package/components/input.util.js.map +1 -1
  34. package/components/ix-application-switch-modal.js +1 -1
  35. package/components/ix-application-switch-modal.js.map +1 -1
  36. package/components/ix-application.js +7 -3
  37. package/components/ix-application.js.map +1 -1
  38. package/components/ix-basic-navigation.js +2 -2
  39. package/components/ix-basic-navigation.js.map +1 -1
  40. package/components/ix-card-list.js +6 -6
  41. package/components/ix-card-list.js.map +1 -1
  42. package/components/ix-category-filter.js +4 -4
  43. package/components/ix-category-filter.js.map +1 -1
  44. package/components/ix-checkbox-group.js +2 -2
  45. package/components/ix-checkbox.js +5 -4
  46. package/components/ix-checkbox.js.map +1 -1
  47. package/components/ix-chip.js +5 -5
  48. package/components/ix-chip.js.map +1 -1
  49. package/components/ix-content.js +3 -3
  50. package/components/ix-css-grid-item.js +1 -1
  51. package/components/ix-css-grid-item.js.map +1 -1
  52. package/components/ix-custom-field.js +1 -1
  53. package/components/ix-date-dropdown.js +13 -5
  54. package/components/ix-date-dropdown.js.map +1 -1
  55. package/components/ix-date-input.js +10 -11
  56. package/components/ix-date-input.js.map +1 -1
  57. package/components/ix-drawer.js +2 -2
  58. package/components/ix-dropdown-header.js +1 -1
  59. package/components/ix-dropdown-header.js.map +1 -1
  60. package/components/ix-dropdown-quick-actions.js +1 -1
  61. package/components/ix-empty-state.js +1 -1
  62. package/components/ix-empty-state.js.map +1 -1
  63. package/components/ix-event-list-item.js +4 -4
  64. package/components/ix-event-list.js +2 -2
  65. package/components/ix-expanding-search.js +10 -4
  66. package/components/ix-expanding-search.js.map +1 -1
  67. package/components/ix-flip-tile-content.js +1 -1
  68. package/components/ix-flip-tile.js +6 -5
  69. package/components/ix-flip-tile.js.map +1 -1
  70. package/components/ix-group.js +8 -8
  71. package/components/ix-group.js.map +1 -1
  72. package/components/ix-helper-text.js +1 -1
  73. package/components/ix-icon-toggle-button.js +1 -1
  74. package/components/ix-icon-toggle-button.js.map +1 -1
  75. package/components/ix-input-group.js +1 -1
  76. package/components/ix-input-group.js.map +1 -1
  77. package/components/ix-input.js +12 -7
  78. package/components/ix-input.js.map +1 -1
  79. package/components/ix-key-value-list.js +2 -2
  80. package/components/ix-key-value-list.js.map +1 -1
  81. package/components/ix-key-value.js +1 -1
  82. package/components/ix-key-value.js.map +1 -1
  83. package/components/ix-kpi.js +3 -3
  84. package/components/ix-kpi.js.map +1 -1
  85. package/components/ix-layout-auto.js +1 -1
  86. package/components/ix-link-button.js +3 -3
  87. package/components/ix-link-button.js.map +1 -1
  88. package/components/ix-map-navigation.js +4 -4
  89. package/components/ix-map-navigation.js.map +1 -1
  90. package/components/ix-menu-about-item.js +1 -1
  91. package/components/ix-menu-about-item.js.map +1 -1
  92. package/components/ix-menu-about-news.js +4 -4
  93. package/components/ix-menu-about-news.js.map +1 -1
  94. package/components/ix-menu-about.js +1 -1
  95. package/components/ix-menu-about.js.map +1 -1
  96. package/components/ix-menu-avatar.js +2 -2
  97. package/components/ix-menu-avatar.js.map +1 -1
  98. package/components/ix-menu-category.js +28 -13
  99. package/components/ix-menu-category.js.map +1 -1
  100. package/components/ix-menu-settings-item.js +1 -1
  101. package/components/ix-menu-settings-item.js.map +1 -1
  102. package/components/ix-menu.js +24 -16
  103. package/components/ix-menu.js.map +1 -1
  104. package/components/ix-message-bar.js +4 -2
  105. package/components/ix-message-bar.js.map +1 -1
  106. package/components/ix-modal-footer.js +1 -1
  107. package/components/ix-modal-loading.js +1 -1
  108. package/components/ix-modal.js +3 -3
  109. package/components/ix-modal.js.map +1 -1
  110. package/components/ix-number-input.js +14 -9
  111. package/components/ix-number-input.js.map +1 -1
  112. package/components/ix-pagination.js +8 -5
  113. package/components/ix-pagination.js.map +1 -1
  114. package/components/ix-pane-layout.js +1 -1
  115. package/components/ix-pill.js +19 -8
  116. package/components/ix-pill.js.map +1 -1
  117. package/components/ix-push-card.js +1 -1
  118. package/components/ix-push-card.js.map +1 -1
  119. package/components/ix-radio-group.js +2 -2
  120. package/components/ix-radio.js +6 -5
  121. package/components/ix-radio.js.map +1 -1
  122. package/components/ix-split-button-item.js +1 -1
  123. package/components/ix-split-button-item.js.map +1 -1
  124. package/components/ix-split-button.js +1 -1
  125. package/components/ix-split-button.js.map +1 -1
  126. package/components/ix-textarea.js +1 -1
  127. package/components/ix-textarea.js.map +1 -1
  128. package/components/ix-tile.js +4 -4
  129. package/components/ix-tile.js.map +1 -1
  130. package/components/ix-toast-container.js +10 -6
  131. package/components/ix-toast-container.js.map +1 -1
  132. package/components/ix-toggle-button.js +2 -2
  133. package/components/ix-toggle-button.js.map +1 -1
  134. package/components/ix-toggle.js +3 -3
  135. package/components/ix-tree.js +1 -1
  136. package/components/ix-tree.js.map +1 -1
  137. package/components/ix-upload.js +3 -3
  138. package/components/ix-validation-tooltip.js +5 -2
  139. package/components/ix-validation-tooltip.js.map +1 -1
  140. package/components/ix-workflow-step.js +4 -3
  141. package/components/ix-workflow-step.js.map +1 -1
  142. package/components/ix-workflow-steps.js +1 -1
  143. package/components/ix-workflow-steps.js.map +1 -1
  144. package/components/layout-grid.js +2 -2
  145. package/components/make-ref.js.map +1 -1
  146. package/components/map-navigation-overlay.js +2 -2
  147. package/components/map-navigation-overlay.js.map +1 -1
  148. package/components/menu-avatar-item.js +1 -1
  149. package/components/menu-avatar-item.js.map +1 -1
  150. package/components/menu-expand-icon.js +1 -1
  151. package/components/menu-expand-icon.js.map +1 -1
  152. package/components/menu-item.js +3 -3
  153. package/components/menu-tabs-fc.js +10 -3
  154. package/components/menu-tabs-fc.js.map +1 -1
  155. package/components/modal-content.js +1 -1
  156. package/components/modal-header.js +1 -1
  157. package/components/row.js +1 -1
  158. package/components/select-item.js +1 -1
  159. package/components/select.js +39 -17
  160. package/components/select.js.map +1 -1
  161. package/components/shadow-dom.js.map +1 -1
  162. package/components/spinner.js +1 -1
  163. package/components/tabs.js +2 -2
  164. package/components/time-picker.js +1 -1
  165. package/components/time-picker.js.map +1 -1
  166. package/components/toast.js +2 -2
  167. package/components/toast.js.map +1 -1
  168. package/components/tooltip.js +2 -2
  169. package/components/tree-item.js +4 -4
  170. package/components/validation.js +1 -7
  171. package/components/validation.js.map +1 -1
  172. package/dist/cjs/a11y-ae470f01.js.map +1 -1
  173. package/dist/cjs/{app-globals-4d8f1524.js → app-globals-ca59f3ec.js} +2 -2
  174. package/dist/cjs/{app-globals-4d8f1524.js.map → app-globals-ca59f3ec.js.map} +1 -1
  175. package/dist/cjs/{index-492e6488.js → index-12d386cf.js} +5 -1
  176. package/dist/cjs/index-12d386cf.js.map +1 -0
  177. package/dist/cjs/index.cjs.js +5 -1
  178. package/dist/cjs/index.cjs.js.map +1 -1
  179. package/dist/cjs/{input.util-54d161e6.js → input.util-dee6616a.js} +28 -3
  180. package/dist/cjs/input.util-dee6616a.js.map +1 -0
  181. package/dist/cjs/ix-application-header.cjs.entry.js +21 -12
  182. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
  183. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
  184. package/dist/cjs/ix-application-switch-modal.cjs.entry.js.map +1 -1
  185. package/dist/cjs/ix-application.cjs.entry.js +7 -3
  186. package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
  187. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  188. package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
  189. package/dist/cjs/ix-basic-navigation.cjs.entry.js +2 -2
  190. package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
  191. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js.map +1 -1
  192. package/dist/cjs/ix-button.cjs.entry.js +2 -2
  193. package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
  194. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +2 -2
  195. package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
  196. package/dist/cjs/ix-card-list.cjs.entry.js +6 -6
  197. package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
  198. package/dist/cjs/ix-card_2.cjs.entry.js +3 -3
  199. package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
  200. package/dist/cjs/ix-category-filter.cjs.entry.js +4 -4
  201. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  202. package/dist/cjs/ix-checkbox-group.cjs.entry.js +3 -3
  203. package/dist/cjs/ix-checkbox.cjs.entry.js +6 -5
  204. package/dist/cjs/ix-checkbox.cjs.entry.js.map +1 -1
  205. package/dist/cjs/ix-chip.cjs.entry.js +5 -5
  206. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  207. package/dist/cjs/ix-col_4.cjs.entry.js +7 -7
  208. package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
  209. package/dist/cjs/ix-content.cjs.entry.js +3 -3
  210. package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
  211. package/dist/cjs/ix-css-grid-item.cjs.entry.js.map +1 -1
  212. package/dist/cjs/ix-custom-field.cjs.entry.js +2 -2
  213. package/dist/cjs/ix-date-dropdown.cjs.entry.js +9 -5
  214. package/dist/cjs/ix-date-dropdown.cjs.entry.js.map +1 -1
  215. package/dist/cjs/ix-date-input.cjs.entry.js +12 -12
  216. package/dist/cjs/ix-date-input.cjs.entry.js.map +1 -1
  217. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  218. package/dist/cjs/ix-drawer.cjs.entry.js +2 -2
  219. package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
  220. package/dist/cjs/ix-dropdown-header.cjs.entry.js.map +1 -1
  221. package/dist/cjs/ix-dropdown-item.cjs.entry.js +3 -3
  222. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  223. package/dist/cjs/ix-dropdown.cjs.entry.js +2 -2
  224. package/dist/cjs/ix-empty-state.cjs.entry.js +1 -1
  225. package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -1
  226. package/dist/cjs/ix-event-list-item.cjs.entry.js +4 -4
  227. package/dist/cjs/ix-event-list.cjs.entry.js +2 -2
  228. package/dist/cjs/ix-expanding-search.cjs.entry.js +7 -4
  229. package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
  230. package/dist/cjs/ix-field-label_3.cjs.entry.js +6 -6
  231. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +3 -3
  232. package/dist/cjs/ix-filter-chip_2.cjs.entry.js.map +1 -1
  233. package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
  234. package/dist/cjs/ix-flip-tile.cjs.entry.js +6 -5
  235. package/dist/cjs/ix-flip-tile.cjs.entry.js.map +1 -1
  236. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +3 -3
  237. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js.map +1 -1
  238. package/dist/cjs/ix-group.cjs.entry.js +8 -8
  239. package/dist/cjs/ix-group.cjs.entry.js.map +1 -1
  240. package/dist/cjs/ix-helper-text.cjs.entry.js +2 -2
  241. package/dist/cjs/ix-icon-button_2.cjs.entry.js +5 -5
  242. package/dist/cjs/ix-icon-button_2.cjs.entry.js.map +1 -1
  243. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  244. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -1
  245. package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
  246. package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
  247. package/dist/cjs/ix-input.cjs.entry.js +14 -8
  248. package/dist/cjs/ix-input.cjs.entry.js.map +1 -1
  249. package/dist/cjs/ix-key-value-list.cjs.entry.js +2 -2
  250. package/dist/cjs/ix-key-value-list.cjs.entry.js.map +1 -1
  251. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  252. package/dist/cjs/ix-key-value.cjs.entry.js.map +1 -1
  253. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  254. package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
  255. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  256. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  257. package/dist/cjs/ix-link-button.cjs.entry.js.map +1 -1
  258. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  259. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js.map +1 -1
  260. package/dist/cjs/ix-map-navigation.cjs.entry.js +4 -4
  261. package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
  262. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  263. package/dist/cjs/ix-menu-about-item.cjs.entry.js.map +1 -1
  264. package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
  265. package/dist/cjs/ix-menu-about-news.cjs.entry.js.map +1 -1
  266. package/dist/cjs/ix-menu-about.cjs.entry.js +2 -2
  267. package/dist/cjs/ix-menu-about.cjs.entry.js.map +1 -1
  268. package/dist/cjs/ix-menu-avatar.cjs.entry.js +2 -2
  269. package/dist/cjs/ix-menu-avatar.cjs.entry.js.map +1 -1
  270. package/dist/cjs/ix-menu-category.cjs.entry.js +28 -13
  271. package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -1
  272. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  273. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js.map +1 -1
  274. package/dist/cjs/ix-menu-item.cjs.entry.js +3 -3
  275. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  276. package/dist/cjs/ix-menu-settings-item.cjs.entry.js.map +1 -1
  277. package/dist/cjs/ix-menu-settings.cjs.entry.js +1 -1
  278. package/dist/cjs/ix-menu.cjs.entry.js +25 -17
  279. package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
  280. package/dist/cjs/ix-message-bar.cjs.entry.js +4 -2
  281. package/dist/cjs/ix-message-bar.cjs.entry.js.map +1 -1
  282. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  283. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  284. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  285. package/dist/cjs/ix-modal.cjs.entry.js +3 -3
  286. package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
  287. package/dist/cjs/ix-number-input.cjs.entry.js +16 -10
  288. package/dist/cjs/ix-number-input.cjs.entry.js.map +1 -1
  289. package/dist/cjs/ix-pagination.cjs.entry.js +8 -5
  290. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  291. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  292. package/dist/cjs/ix-pill.cjs.entry.js +17 -7
  293. package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
  294. package/dist/cjs/ix-push-card.cjs.entry.js +1 -1
  295. package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
  296. package/dist/cjs/ix-radio-group.cjs.entry.js +3 -3
  297. package/dist/cjs/ix-radio.cjs.entry.js +6 -5
  298. package/dist/cjs/ix-radio.cjs.entry.js.map +1 -1
  299. package/dist/cjs/ix-select.cjs.entry.js +38 -18
  300. package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
  301. package/dist/cjs/ix-split-button-item.cjs.entry.js +1 -1
  302. package/dist/cjs/ix-split-button-item.cjs.entry.js.map +1 -1
  303. package/dist/cjs/ix-split-button.cjs.entry.js +1 -1
  304. package/dist/cjs/ix-split-button.cjs.entry.js.map +1 -1
  305. package/dist/cjs/ix-tab-item_2.cjs.entry.js +2 -2
  306. package/dist/cjs/ix-textarea.cjs.entry.js +4 -3
  307. package/dist/cjs/ix-textarea.cjs.entry.js.map +1 -1
  308. package/dist/cjs/ix-tile.cjs.entry.js +4 -4
  309. package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
  310. package/dist/cjs/ix-time-picker.cjs.entry.js +1 -1
  311. package/dist/cjs/ix-time-picker.cjs.entry.js.map +1 -1
  312. package/dist/cjs/ix-toast-container.cjs.entry.js +10 -6
  313. package/dist/cjs/ix-toast-container.cjs.entry.js.map +1 -1
  314. package/dist/cjs/ix-toast.cjs.entry.js +2 -2
  315. package/dist/cjs/ix-toast.cjs.entry.js.map +1 -1
  316. package/dist/cjs/ix-toggle-button.cjs.entry.js +2 -2
  317. package/dist/cjs/ix-toggle-button.cjs.entry.js.map +1 -1
  318. package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
  319. package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
  320. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  321. package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
  322. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  323. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +5 -2
  324. package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -1
  325. package/dist/cjs/ix-workflow-step.cjs.entry.js +4 -3
  326. package/dist/cjs/ix-workflow-step.cjs.entry.js.map +1 -1
  327. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  328. package/dist/cjs/ix-workflow-steps.cjs.entry.js.map +1 -1
  329. package/dist/cjs/loader.cjs.js +3 -3
  330. package/dist/cjs/make-ref-499e1e41.js.map +1 -1
  331. package/dist/cjs/{menu-tabs-fc-eb899b0d.js → menu-tabs-fc-a9f928f5.js} +11 -4
  332. package/dist/cjs/menu-tabs-fc-a9f928f5.js.map +1 -0
  333. package/dist/cjs/{setup-cc07fbfc.js → setup-49660b91.js} +12 -2
  334. package/dist/cjs/setup-49660b91.js.map +1 -0
  335. package/dist/cjs/shadow-dom-454acc38.js.map +1 -1
  336. package/dist/cjs/siemens-ix.cjs.js +3 -3
  337. package/dist/cjs/{validation-1e3dd5ee.js → validation-cb884b13.js} +2 -8
  338. package/dist/cjs/validation-cb884b13.js.map +1 -0
  339. package/dist/collection/components/action-card/action-card.js +3 -3
  340. package/dist/collection/components/application/application.js +12 -8
  341. package/dist/collection/components/application/application.js.map +1 -1
  342. package/dist/collection/components/application-header/application-header.js +39 -13
  343. package/dist/collection/components/application-header/application-header.js.map +1 -1
  344. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js +3 -3
  345. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js.map +1 -1
  346. package/dist/collection/components/application-header/test/application-header.ct.js +2 -2
  347. package/dist/collection/components/application-header/test/application-header.ct.js.map +1 -1
  348. package/dist/collection/components/avatar/avatar.js +4 -4
  349. package/dist/collection/components/avatar/avatar.js.map +1 -1
  350. package/dist/collection/components/basic-navigation/basic-navigation.js +5 -5
  351. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
  352. package/dist/collection/components/blind/blind.js +3 -3
  353. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +4 -4
  354. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  355. package/dist/collection/components/button/button-component.js +2 -0
  356. package/dist/collection/components/button/button-component.js.map +1 -0
  357. package/dist/collection/components/button/button.js +3 -3
  358. package/dist/collection/components/button/button.js.map +1 -1
  359. package/dist/collection/components/button/test/button.spec.js.map +1 -1
  360. package/dist/collection/components/card/card.css +7 -0
  361. package/dist/collection/components/card-content/card-content.css +13 -5
  362. package/dist/collection/components/card-content/card-content.js +1 -1
  363. package/dist/collection/components/card-content/card-content.js.map +1 -1
  364. package/dist/collection/components/card-list/card-list.css +1 -0
  365. package/dist/collection/components/card-list/card-list.js +7 -7
  366. package/dist/collection/components/card-list/card-list.js.map +1 -1
  367. package/dist/collection/components/card-title/card-title.css +2 -2
  368. package/dist/collection/components/card-title/card-title.js +1 -1
  369. package/dist/collection/components/category-filter/category-filter.css +3 -3
  370. package/dist/collection/components/category-filter/category-filter.js +9 -9
  371. package/dist/collection/components/category-filter/filter-state.js +4 -0
  372. package/dist/collection/components/category-filter/filter-state.js.map +1 -1
  373. package/dist/collection/components/checkbox/checkbox.css +216 -91
  374. package/dist/collection/components/checkbox/checkbox.js +7 -6
  375. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  376. package/dist/collection/components/checkbox/tests/checkbox.ct.js +20 -0
  377. package/dist/collection/components/checkbox/tests/checkbox.ct.js.map +1 -1
  378. package/dist/collection/components/checkbox-group/checkbox-group.js +8 -8
  379. package/dist/collection/components/chip/chip.js +10 -10
  380. package/dist/collection/components/chip/chip.js.map +1 -1
  381. package/dist/collection/components/chip/test/chip.ct.js +4 -2
  382. package/dist/collection/components/chip/test/chip.ct.js.map +1 -1
  383. package/dist/collection/components/col/col.js +4 -4
  384. package/dist/collection/components/content/content.js +3 -3
  385. package/dist/collection/components/content-header/content-header.js +2 -2
  386. package/dist/collection/components/css-grid/css-grid-item.js +2 -2
  387. package/dist/collection/components/css-grid/css-grid-item.js.map +1 -1
  388. package/dist/collection/components/css-grid/css-grid.js +1 -1
  389. package/dist/collection/components/custom-field/custom-field.js +8 -8
  390. package/dist/collection/components/date-dropdown/date-dropdown.js +88 -6
  391. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  392. package/dist/collection/components/date-dropdown/test/date-dropdown.ct.js +1 -0
  393. package/dist/collection/components/date-dropdown/test/date-dropdown.ct.js.map +1 -1
  394. package/dist/collection/components/date-input/date-input.css +6 -6
  395. package/dist/collection/components/date-input/date-input.js +22 -23
  396. package/dist/collection/components/date-input/date-input.js.map +1 -1
  397. package/dist/collection/components/date-picker/date-picker.js +9 -9
  398. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  399. package/dist/collection/components/date-time-card/date-time-card.js +1 -1
  400. package/dist/collection/components/datetime-picker/datetime-picker.js +8 -8
  401. package/dist/collection/components/divider/divider.js +1 -1
  402. package/dist/collection/components/drawer/drawer.js +3 -3
  403. package/dist/collection/components/dropdown/dropdown.js +7 -7
  404. package/dist/collection/components/dropdown/test/dropdown.ct.js.map +1 -1
  405. package/dist/collection/components/dropdown-button/dropdown-button.js +3 -3
  406. package/dist/collection/components/dropdown-header/dropdown-header.js +3 -3
  407. package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -1
  408. package/dist/collection/components/dropdown-item/dropdown-item.js +5 -5
  409. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -1
  410. package/dist/collection/components/empty-state/empty-state.js +7 -7
  411. package/dist/collection/components/empty-state/empty-state.js.map +1 -1
  412. package/dist/collection/components/event-list/event-list.js +2 -2
  413. package/dist/collection/components/event-list-item/event-list-item.js +6 -6
  414. package/dist/collection/components/expanding-search/expanding-search.js +67 -4
  415. package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
  416. package/dist/collection/components/expanding-search/test/expanding-search.spec.js +5 -4
  417. package/dist/collection/components/expanding-search/test/expanding-search.spec.js.map +1 -1
  418. package/dist/collection/components/field-label/field-label.js +4 -4
  419. package/dist/collection/components/field-label/tests/field-label.ct.js +2 -2
  420. package/dist/collection/components/field-label/tests/field-label.ct.js.map +1 -1
  421. package/dist/collection/components/field-wrapper/field-wrapper.js +10 -10
  422. package/dist/collection/components/filter-chip/filter-chip.js +2 -2
  423. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
  424. package/dist/collection/components/flip-tile/flip-tile.js +8 -7
  425. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
  426. package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
  427. package/dist/collection/components/group/group-context-menu.js +1 -1
  428. package/dist/collection/components/group/group-context-menu.js.map +1 -1
  429. package/dist/collection/components/group/group.js +11 -11
  430. package/dist/collection/components/group/group.js.map +1 -1
  431. package/dist/collection/components/group-item/group-item.js +6 -6
  432. package/dist/collection/components/helper-text/helper-text.js +7 -7
  433. package/dist/collection/components/icon-button/icon-button.js +18 -15
  434. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  435. package/dist/collection/components/icon-button/test/icon-button.spec.js +16 -33
  436. package/dist/collection/components/icon-button/test/icon-button.spec.js.map +1 -1
  437. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +3 -3
  438. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -1
  439. package/dist/collection/components/input/input.css +6 -6
  440. package/dist/collection/components/input/input.js +25 -20
  441. package/dist/collection/components/input/input.js.map +1 -1
  442. package/dist/collection/components/input/input.util.js +25 -1
  443. package/dist/collection/components/input/input.util.js.map +1 -1
  444. package/dist/collection/components/input/number-input.css +3 -3
  445. package/dist/collection/components/input/number-input.js +29 -24
  446. package/dist/collection/components/input/number-input.js.map +1 -1
  447. package/dist/collection/components/input/tests/validation.ct.js +21 -0
  448. package/dist/collection/components/input/tests/validation.ct.js.map +1 -0
  449. package/dist/collection/components/input/textarea.css +3 -3
  450. package/dist/collection/components/input/textarea.js +16 -16
  451. package/dist/collection/components/input-group/input-group.js +1 -1
  452. package/dist/collection/components/input-group/input-group.js.map +1 -1
  453. package/dist/collection/components/key-value/key-value.js +5 -5
  454. package/dist/collection/components/key-value/key-value.js.map +1 -1
  455. package/dist/collection/components/key-value-list/key-value-list.js +4 -3
  456. package/dist/collection/components/key-value-list/key-value-list.js.map +1 -1
  457. package/dist/collection/components/kpi/kpi.js +9 -9
  458. package/dist/collection/components/kpi/kpi.js.map +1 -1
  459. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  460. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  461. package/dist/collection/components/link-button/link-button.js +5 -5
  462. package/dist/collection/components/link-button/link-button.js.map +1 -1
  463. package/dist/collection/components/map-navigation/map-navigation.js +11 -11
  464. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  465. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +10 -10
  466. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js.map +1 -1
  467. package/dist/collection/components/menu/menu-expand-icon.js +3 -3
  468. package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
  469. package/dist/collection/components/menu/menu.js +44 -19
  470. package/dist/collection/components/menu/menu.js.map +1 -1
  471. package/dist/collection/components/menu-about/menu-about.js +3 -3
  472. package/dist/collection/components/menu-about/menu-about.js.map +1 -1
  473. package/dist/collection/components/menu-about-item/menu-about-item.js +3 -3
  474. package/dist/collection/components/menu-about-item/menu-about-item.js.map +1 -1
  475. package/dist/collection/components/menu-about-news/menu-about-news.js +8 -8
  476. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
  477. package/dist/collection/components/menu-avatar/menu-avatar.js +10 -10
  478. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  479. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +5 -5
  480. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js.map +1 -1
  481. package/dist/collection/components/menu-category/menu-category.js +34 -19
  482. package/dist/collection/components/menu-category/menu-category.js.map +1 -1
  483. package/dist/collection/components/menu-item/menu-item.js +7 -7
  484. package/dist/collection/components/menu-settings/menu-settings.js +3 -3
  485. package/dist/collection/components/menu-settings/menu-settings.js.map +1 -1
  486. package/dist/collection/components/menu-settings-item/menu-settings-item.js +3 -3
  487. package/dist/collection/components/menu-settings-item/menu-settings-item.js.map +1 -1
  488. package/dist/collection/components/message-bar/message-bar.js +4 -2
  489. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  490. package/dist/collection/components/message-bar/test/message-bar.spec.js.map +1 -1
  491. package/dist/collection/components/modal/modal.js +6 -6
  492. package/dist/collection/components/modal/modal.js.map +1 -1
  493. package/dist/collection/components/modal-content/modal-content.js +1 -1
  494. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  495. package/dist/collection/components/modal-header/modal-header.js +3 -3
  496. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  497. package/dist/collection/components/pagination/pagination.js +10 -6
  498. package/dist/collection/components/pagination/pagination.js.map +1 -1
  499. package/dist/collection/components/pagination/test/pagination.ct.js +1 -1
  500. package/dist/collection/components/pagination/test/pagination.ct.js.map +1 -1
  501. package/dist/collection/components/pagination/test/pagination.spec.js.map +1 -1
  502. package/dist/collection/components/pane/pane.js +2 -2
  503. package/dist/collection/components/pane-layout/pane-layout.js +1 -1
  504. package/dist/collection/components/pill/pill.css +14 -1
  505. package/dist/collection/components/pill/pill.js +25 -10
  506. package/dist/collection/components/pill/pill.js.map +1 -1
  507. package/dist/collection/components/pill/tests/pill.ct.js +23 -0
  508. package/dist/collection/components/pill/tests/pill.ct.js.map +1 -0
  509. package/dist/collection/components/push-card/push-card.css +8 -1
  510. package/dist/collection/components/push-card/push-card.js +4 -4
  511. package/dist/collection/components/radio/radio.css +0 -16
  512. package/dist/collection/components/radio/radio.js +9 -8
  513. package/dist/collection/components/radio/radio.js.map +1 -1
  514. package/dist/collection/components/radio/test/radio.ct.js +19 -0
  515. package/dist/collection/components/radio/test/radio.ct.js.map +1 -1
  516. package/dist/collection/components/radio-group/radio-group.js +10 -10
  517. package/dist/collection/components/row/row.js +1 -1
  518. package/dist/collection/components/select/select.css +3 -0
  519. package/dist/collection/components/select/select.js +86 -26
  520. package/dist/collection/components/select/select.js.map +1 -1
  521. package/dist/collection/components/select/test/select-keyboard.ct.js +379 -0
  522. package/dist/collection/components/select/test/select-keyboard.ct.js.map +1 -0
  523. package/dist/collection/components/select/test/select.ct.js +106 -258
  524. package/dist/collection/components/select/test/select.ct.js.map +1 -1
  525. package/dist/collection/components/select-item/select-item.js +3 -3
  526. package/dist/collection/components/select-item/test/select-item.spec.js +3 -6
  527. package/dist/collection/components/select-item/test/select-item.spec.js.map +1 -1
  528. package/dist/collection/components/slider/slider.js +2 -2
  529. package/dist/collection/components/spinner/spinner.js +1 -1
  530. package/dist/collection/components/split-button/split-button.js +3 -3
  531. package/dist/collection/components/split-button/split-button.js.map +1 -1
  532. package/dist/collection/components/split-button-item/split-button-item.js +5 -5
  533. package/dist/collection/components/split-button-item/split-button-item.js.map +1 -1
  534. package/dist/collection/components/tab-item/tab-item.js +1 -1
  535. package/dist/collection/components/tabs/tabs.js +2 -2
  536. package/dist/collection/components/tile/tile.js +4 -4
  537. package/dist/collection/components/tile/tile.js.map +1 -1
  538. package/dist/collection/components/time-picker/time-picker.css +3 -3
  539. package/dist/collection/components/time-picker/time-picker.js +4 -4
  540. package/dist/collection/components/toast/toast-container.js +10 -6
  541. package/dist/collection/components/toast/toast-container.js.map +1 -1
  542. package/dist/collection/components/toast/toast.js +8 -8
  543. package/dist/collection/components/toast/toast.js.map +1 -1
  544. package/dist/collection/components/toggle/toggle.js +5 -5
  545. package/dist/collection/components/toggle-button/toggle-button.js +4 -4
  546. package/dist/collection/components/toggle-button/toggle-button.js.map +1 -1
  547. package/dist/collection/components/tooltip/tooltip.js +4 -4
  548. package/dist/collection/components/tree/test/tree.ct.js.map +1 -1
  549. package/dist/collection/components/tree/tree.js +2 -2
  550. package/dist/collection/components/tree/tree.js.map +1 -1
  551. package/dist/collection/components/tree-item/tree-item.js +6 -6
  552. package/dist/collection/components/typography/typography.js +3 -3
  553. package/dist/collection/components/upload/upload.js +4 -4
  554. package/dist/collection/components/utils/a11y.js.map +1 -1
  555. package/dist/collection/components/utils/app-switch/index.js +4 -0
  556. package/dist/collection/components/utils/app-switch/index.js.map +1 -1
  557. package/dist/collection/components/utils/input/validation.js +1 -7
  558. package/dist/collection/components/utils/input/validation.js.map +1 -1
  559. package/dist/collection/components/utils/lazy-list/lazy.js.map +1 -1
  560. package/dist/collection/components/utils/make-ref.js.map +1 -1
  561. package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js +5 -1
  562. package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js.map +1 -1
  563. package/dist/collection/components/utils/menu-tabs/menu-tabs-utils.js +4 -1
  564. package/dist/collection/components/utils/menu-tabs/menu-tabs-utils.js.map +1 -1
  565. package/dist/collection/components/utils/shadow-dom.js.map +1 -1
  566. package/dist/collection/components/validation-tooltip/validation-tooltip.js +7 -4
  567. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
  568. package/dist/collection/components/workflow-step/workflow-step.js +4 -3
  569. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  570. package/dist/collection/components/workflow-steps/test/workflow-steps.spec.js.map +1 -1
  571. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  572. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  573. package/dist/collection/setup.ct.js +18 -0
  574. package/dist/collection/setup.ct.js.map +1 -0
  575. package/dist/collection/setup.js +11 -1
  576. package/dist/collection/setup.js.map +1 -1
  577. package/dist/collection/tests/application-header/application-header.e2e.js.map +1 -1
  578. package/dist/collection/tests/button/button.e2e.js.map +1 -1
  579. package/dist/collection/tests/card/card.e2e.js +6 -0
  580. package/dist/collection/tests/card/card.e2e.js.map +1 -1
  581. package/dist/collection/tests/date-dropdown/date-dropdown.e2e.js +3 -3
  582. package/dist/collection/tests/date-dropdown/date-dropdown.e2e.js.map +1 -1
  583. package/dist/collection/tests/date-input/date-input.e2e.js +17 -0
  584. package/dist/collection/tests/date-input/date-input.e2e.js.map +1 -0
  585. package/dist/collection/tests/expanding-search/expanding-search.e2e.js +1 -1
  586. package/dist/collection/tests/expanding-search/expanding-search.e2e.js.map +1 -1
  587. package/dist/collection/tests/icon-toggle-button/toggle-button.e2e.js.map +1 -1
  588. package/dist/collection/tests/input-common/input-common.e2e.js +27 -0
  589. package/dist/collection/tests/input-common/input-common.e2e.js.map +1 -0
  590. package/dist/collection/tests/menu/menu.e2e.js +11 -0
  591. package/dist/collection/tests/menu/menu.e2e.js.map +1 -1
  592. package/dist/collection/tests/push-card/push-card.e2e.js +6 -0
  593. package/dist/collection/tests/push-card/push-card.e2e.js.map +1 -1
  594. package/dist/collection/tests/toggle-button/toggle-button.e2e.js.map +1 -1
  595. package/dist/collection/tests/upload/upload.e2e.js +1 -1
  596. package/dist/collection/tests/upload/upload.e2e.js.map +1 -1
  597. package/dist/collection/tests/utils/test/page.js +37 -5
  598. package/dist/collection/tests/utils/test/page.js.map +1 -1
  599. package/dist/collection/tests/workflow-steps/workflow-steps.e2e.js +4 -3
  600. package/dist/collection/tests/workflow-steps/workflow-steps.e2e.js.map +1 -1
  601. package/dist/esm/a11y-b10c12e0.js.map +1 -1
  602. package/dist/esm/app-globals-c85c7809.js +7 -0
  603. package/dist/esm/{app-globals-40082a83.js.map → app-globals-c85c7809.js.map} +1 -1
  604. package/dist/esm/{index-7421df0c.js → index-f8425403.js} +5 -1
  605. package/dist/esm/index-f8425403.js.map +1 -0
  606. package/dist/esm/index.js +5 -1
  607. package/dist/esm/index.js.map +1 -1
  608. package/dist/esm/{input.util-c855b2ed.js → input.util-deca1217.js} +28 -4
  609. package/dist/esm/input.util-deca1217.js.map +1 -0
  610. package/dist/esm/ix-application-header.entry.js +21 -12
  611. package/dist/esm/ix-application-header.entry.js.map +1 -1
  612. package/dist/esm/ix-application-switch-modal.entry.js +1 -1
  613. package/dist/esm/ix-application-switch-modal.entry.js.map +1 -1
  614. package/dist/esm/ix-application.entry.js +7 -3
  615. package/dist/esm/ix-application.entry.js.map +1 -1
  616. package/dist/esm/ix-avatar_2.entry.js +1 -1
  617. package/dist/esm/ix-avatar_2.entry.js.map +1 -1
  618. package/dist/esm/ix-basic-navigation.entry.js +2 -2
  619. package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
  620. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  621. package/dist/esm/ix-button.entry.js +2 -2
  622. package/dist/esm/ix-button.entry.js.map +1 -1
  623. package/dist/esm/ix-card-accordion_2.entry.js +2 -2
  624. package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
  625. package/dist/esm/ix-card-list.entry.js +6 -6
  626. package/dist/esm/ix-card-list.entry.js.map +1 -1
  627. package/dist/esm/ix-card_2.entry.js +3 -3
  628. package/dist/esm/ix-card_2.entry.js.map +1 -1
  629. package/dist/esm/ix-category-filter.entry.js +4 -4
  630. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  631. package/dist/esm/ix-checkbox-group.entry.js +3 -3
  632. package/dist/esm/ix-checkbox.entry.js +6 -5
  633. package/dist/esm/ix-checkbox.entry.js.map +1 -1
  634. package/dist/esm/ix-chip.entry.js +5 -5
  635. package/dist/esm/ix-chip.entry.js.map +1 -1
  636. package/dist/esm/ix-col_4.entry.js +7 -7
  637. package/dist/esm/ix-col_4.entry.js.map +1 -1
  638. package/dist/esm/ix-content.entry.js +3 -3
  639. package/dist/esm/ix-css-grid-item.entry.js +1 -1
  640. package/dist/esm/ix-css-grid-item.entry.js.map +1 -1
  641. package/dist/esm/ix-custom-field.entry.js +2 -2
  642. package/dist/esm/ix-date-dropdown.entry.js +9 -5
  643. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  644. package/dist/esm/ix-date-input.entry.js +12 -12
  645. package/dist/esm/ix-date-input.entry.js.map +1 -1
  646. package/dist/esm/ix-divider.entry.js +1 -1
  647. package/dist/esm/ix-drawer.entry.js +2 -2
  648. package/dist/esm/ix-dropdown-header.entry.js +1 -1
  649. package/dist/esm/ix-dropdown-header.entry.js.map +1 -1
  650. package/dist/esm/ix-dropdown-item.entry.js +3 -3
  651. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  652. package/dist/esm/ix-dropdown.entry.js +2 -2
  653. package/dist/esm/ix-empty-state.entry.js +1 -1
  654. package/dist/esm/ix-empty-state.entry.js.map +1 -1
  655. package/dist/esm/ix-event-list-item.entry.js +4 -4
  656. package/dist/esm/ix-event-list.entry.js +2 -2
  657. package/dist/esm/ix-expanding-search.entry.js +7 -4
  658. package/dist/esm/ix-expanding-search.entry.js.map +1 -1
  659. package/dist/esm/ix-field-label_3.entry.js +6 -6
  660. package/dist/esm/ix-filter-chip_2.entry.js +3 -3
  661. package/dist/esm/ix-filter-chip_2.entry.js.map +1 -1
  662. package/dist/esm/ix-flip-tile-content.entry.js +1 -1
  663. package/dist/esm/ix-flip-tile.entry.js +6 -5
  664. package/dist/esm/ix-flip-tile.entry.js.map +1 -1
  665. package/dist/esm/ix-group-context-menu_2.entry.js +3 -3
  666. package/dist/esm/ix-group-context-menu_2.entry.js.map +1 -1
  667. package/dist/esm/ix-group.entry.js +8 -8
  668. package/dist/esm/ix-group.entry.js.map +1 -1
  669. package/dist/esm/ix-helper-text.entry.js +2 -2
  670. package/dist/esm/ix-icon-button_2.entry.js +5 -5
  671. package/dist/esm/ix-icon-button_2.entry.js.map +1 -1
  672. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  673. package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -1
  674. package/dist/esm/ix-input-group.entry.js +1 -1
  675. package/dist/esm/ix-input-group.entry.js.map +1 -1
  676. package/dist/esm/ix-input.entry.js +14 -8
  677. package/dist/esm/ix-input.entry.js.map +1 -1
  678. package/dist/esm/ix-key-value-list.entry.js +2 -2
  679. package/dist/esm/ix-key-value-list.entry.js.map +1 -1
  680. package/dist/esm/ix-key-value.entry.js +1 -1
  681. package/dist/esm/ix-key-value.entry.js.map +1 -1
  682. package/dist/esm/ix-kpi.entry.js +3 -3
  683. package/dist/esm/ix-kpi.entry.js.map +1 -1
  684. package/dist/esm/ix-layout-auto.entry.js +1 -1
  685. package/dist/esm/ix-link-button.entry.js +3 -3
  686. package/dist/esm/ix-link-button.entry.js.map +1 -1
  687. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  688. package/dist/esm/ix-map-navigation-overlay.entry.js.map +1 -1
  689. package/dist/esm/ix-map-navigation.entry.js +4 -4
  690. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  691. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  692. package/dist/esm/ix-menu-about-item.entry.js.map +1 -1
  693. package/dist/esm/ix-menu-about-news.entry.js +4 -4
  694. package/dist/esm/ix-menu-about-news.entry.js.map +1 -1
  695. package/dist/esm/ix-menu-about.entry.js +2 -2
  696. package/dist/esm/ix-menu-about.entry.js.map +1 -1
  697. package/dist/esm/ix-menu-avatar.entry.js +2 -2
  698. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  699. package/dist/esm/ix-menu-category.entry.js +28 -13
  700. package/dist/esm/ix-menu-category.entry.js.map +1 -1
  701. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  702. package/dist/esm/ix-menu-expand-icon.entry.js.map +1 -1
  703. package/dist/esm/ix-menu-item.entry.js +3 -3
  704. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  705. package/dist/esm/ix-menu-settings-item.entry.js.map +1 -1
  706. package/dist/esm/ix-menu-settings.entry.js +1 -1
  707. package/dist/esm/ix-menu.entry.js +25 -17
  708. package/dist/esm/ix-menu.entry.js.map +1 -1
  709. package/dist/esm/ix-message-bar.entry.js +4 -2
  710. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  711. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  712. package/dist/esm/ix-modal-footer.entry.js +1 -1
  713. package/dist/esm/ix-modal-loading.entry.js +1 -1
  714. package/dist/esm/ix-modal.entry.js +3 -3
  715. package/dist/esm/ix-modal.entry.js.map +1 -1
  716. package/dist/esm/ix-number-input.entry.js +16 -10
  717. package/dist/esm/ix-number-input.entry.js.map +1 -1
  718. package/dist/esm/ix-pagination.entry.js +8 -5
  719. package/dist/esm/ix-pagination.entry.js.map +1 -1
  720. package/dist/esm/ix-pane-layout.entry.js +1 -1
  721. package/dist/esm/ix-pill.entry.js +17 -7
  722. package/dist/esm/ix-pill.entry.js.map +1 -1
  723. package/dist/esm/ix-push-card.entry.js +1 -1
  724. package/dist/esm/ix-push-card.entry.js.map +1 -1
  725. package/dist/esm/ix-radio-group.entry.js +3 -3
  726. package/dist/esm/ix-radio.entry.js +6 -5
  727. package/dist/esm/ix-radio.entry.js.map +1 -1
  728. package/dist/esm/ix-select.entry.js +38 -18
  729. package/dist/esm/ix-select.entry.js.map +1 -1
  730. package/dist/esm/ix-split-button-item.entry.js +1 -1
  731. package/dist/esm/ix-split-button-item.entry.js.map +1 -1
  732. package/dist/esm/ix-split-button.entry.js +1 -1
  733. package/dist/esm/ix-split-button.entry.js.map +1 -1
  734. package/dist/esm/ix-tab-item_2.entry.js +2 -2
  735. package/dist/esm/ix-textarea.entry.js +4 -3
  736. package/dist/esm/ix-textarea.entry.js.map +1 -1
  737. package/dist/esm/ix-tile.entry.js +4 -4
  738. package/dist/esm/ix-tile.entry.js.map +1 -1
  739. package/dist/esm/ix-time-picker.entry.js +1 -1
  740. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  741. package/dist/esm/ix-toast-container.entry.js +10 -6
  742. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  743. package/dist/esm/ix-toast.entry.js +2 -2
  744. package/dist/esm/ix-toast.entry.js.map +1 -1
  745. package/dist/esm/ix-toggle-button.entry.js +2 -2
  746. package/dist/esm/ix-toggle-button.entry.js.map +1 -1
  747. package/dist/esm/ix-toggle.entry.js +3 -3
  748. package/dist/esm/ix-tree-item.entry.js +4 -4
  749. package/dist/esm/ix-tree.entry.js +1 -1
  750. package/dist/esm/ix-tree.entry.js.map +1 -1
  751. package/dist/esm/ix-upload.entry.js +3 -3
  752. package/dist/esm/ix-validation-tooltip.entry.js +5 -2
  753. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -1
  754. package/dist/esm/ix-workflow-step.entry.js +4 -3
  755. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  756. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  757. package/dist/esm/ix-workflow-steps.entry.js.map +1 -1
  758. package/dist/esm/loader.js +3 -3
  759. package/dist/esm/make-ref-4b76e9b5.js.map +1 -1
  760. package/dist/esm/{menu-tabs-fc-563a74d9.js → menu-tabs-fc-43b4155d.js} +11 -4
  761. package/dist/esm/menu-tabs-fc-43b4155d.js.map +1 -0
  762. package/dist/esm/{setup-9c5fe321.js → setup-3a3f57db.js} +12 -2
  763. package/dist/esm/setup-3a3f57db.js.map +1 -0
  764. package/dist/esm/shadow-dom-cc0bc152.js.map +1 -1
  765. package/dist/esm/siemens-ix.js +3 -3
  766. package/dist/esm/{validation-45aa490c.js → validation-54137eaa.js} +2 -8
  767. package/dist/esm/validation-54137eaa.js.map +1 -0
  768. package/dist/siemens-ix/index.esm.js +1 -1
  769. package/dist/siemens-ix/index.esm.js.map +1 -1
  770. package/dist/siemens-ix/{p-bd4c1a44.entry.js → p-03136fc0.entry.js} +2 -2
  771. package/dist/siemens-ix/p-03136fc0.entry.js.map +1 -0
  772. package/dist/siemens-ix/{p-22cba43a.entry.js → p-060d5c58.entry.js} +2 -2
  773. package/dist/siemens-ix/{p-475ac85f.entry.js → p-08168e53.entry.js} +2 -2
  774. package/dist/siemens-ix/{p-475ac85f.entry.js.map → p-08168e53.entry.js.map} +1 -1
  775. package/dist/siemens-ix/p-088ad2da.entry.js +2 -0
  776. package/dist/siemens-ix/p-088ad2da.entry.js.map +1 -0
  777. package/dist/siemens-ix/p-0c8a6f43.entry.js +2 -0
  778. package/dist/siemens-ix/{p-0be907d4.entry.js.map → p-0c8a6f43.entry.js.map} +1 -1
  779. package/dist/siemens-ix/{p-8457d846.entry.js → p-0cb18eff.entry.js} +2 -2
  780. package/dist/siemens-ix/p-0cb18eff.entry.js.map +1 -0
  781. package/dist/siemens-ix/{p-2a34a0c2.entry.js → p-0f44ccd1.entry.js} +2 -2
  782. package/dist/siemens-ix/{p-2a34a0c2.entry.js.map → p-0f44ccd1.entry.js.map} +1 -1
  783. package/dist/siemens-ix/p-14d038c6.entry.js +2 -0
  784. package/dist/siemens-ix/p-14d038c6.entry.js.map +1 -0
  785. package/dist/siemens-ix/{p-6722bcff.entry.js → p-16055d56.entry.js} +2 -2
  786. package/dist/siemens-ix/{p-6722bcff.entry.js.map → p-16055d56.entry.js.map} +1 -1
  787. package/dist/siemens-ix/p-177268f7.entry.js +2 -0
  788. package/dist/siemens-ix/p-177268f7.entry.js.map +1 -0
  789. package/dist/siemens-ix/{p-f97a15c4.js → p-186a1f30.js} +2 -2
  790. package/dist/siemens-ix/p-186a1f30.js.map +1 -0
  791. package/dist/siemens-ix/{p-42320fb3.entry.js → p-19d1c463.entry.js} +2 -2
  792. package/dist/siemens-ix/{p-2d3a6d29.entry.js → p-1bff0a1f.entry.js} +2 -2
  793. package/dist/siemens-ix/{p-8da941cd.entry.js → p-1c74bd8b.entry.js} +2 -2
  794. package/dist/siemens-ix/{p-8da941cd.entry.js.map → p-1c74bd8b.entry.js.map} +1 -1
  795. package/dist/siemens-ix/{p-a4dc6824.entry.js → p-1d545640.entry.js} +2 -2
  796. package/dist/siemens-ix/p-1d545640.entry.js.map +1 -0
  797. package/dist/siemens-ix/p-21a8aeaf.js +2 -0
  798. package/dist/siemens-ix/p-21a8aeaf.js.map +1 -0
  799. package/dist/siemens-ix/p-227b0ddd.entry.js +2 -0
  800. package/dist/siemens-ix/p-227b0ddd.entry.js.map +1 -0
  801. package/dist/siemens-ix/{p-63dd987f.entry.js → p-22fc61c9.entry.js} +2 -2
  802. package/dist/siemens-ix/p-22fc61c9.entry.js.map +1 -0
  803. package/dist/siemens-ix/{p-ede52531.entry.js → p-2396b68a.entry.js} +2 -2
  804. package/dist/siemens-ix/p-2396b68a.entry.js.map +1 -0
  805. package/dist/siemens-ix/{p-b2a06e46.entry.js → p-27befdd7.entry.js} +2 -2
  806. package/dist/siemens-ix/p-27befdd7.entry.js.map +1 -0
  807. package/dist/siemens-ix/{p-286feb7e.entry.js → p-297cd68a.entry.js} +2 -2
  808. package/dist/siemens-ix/{p-6bae4e9b.entry.js → p-2f29e208.entry.js} +2 -2
  809. package/dist/siemens-ix/{p-6bae4e9b.entry.js.map → p-2f29e208.entry.js.map} +1 -1
  810. package/dist/siemens-ix/p-309b82ec.entry.js +2 -0
  811. package/dist/siemens-ix/{p-4ec6ddfb.entry.js → p-30a24560.entry.js} +2 -2
  812. package/dist/siemens-ix/p-30a24560.entry.js.map +1 -0
  813. package/dist/siemens-ix/{p-37af7117.entry.js → p-327a1655.entry.js} +2 -2
  814. package/dist/siemens-ix/p-327a1655.entry.js.map +1 -0
  815. package/dist/siemens-ix/p-345e1c73.js.map +1 -1
  816. package/dist/siemens-ix/{p-6624076c.entry.js → p-353f081a.entry.js} +2 -2
  817. package/dist/siemens-ix/p-37eadb06.entry.js +2 -0
  818. package/dist/siemens-ix/{p-ffca56d6.entry.js.map → p-37eadb06.entry.js.map} +1 -1
  819. package/dist/siemens-ix/{p-dfb181c1.entry.js → p-37f1d0ed.entry.js} +2 -2
  820. package/dist/siemens-ix/p-37f1d0ed.entry.js.map +1 -0
  821. package/dist/siemens-ix/{p-5c1b136c.entry.js → p-388b9368.entry.js} +2 -2
  822. package/dist/siemens-ix/{p-5c1b136c.entry.js.map → p-388b9368.entry.js.map} +1 -1
  823. package/dist/siemens-ix/{p-d929f23d.entry.js → p-3fd2bacd.entry.js} +2 -2
  824. package/dist/siemens-ix/{p-d929f23d.entry.js.map → p-3fd2bacd.entry.js.map} +1 -1
  825. package/dist/siemens-ix/{p-ee0645f8.entry.js → p-40da22b1.entry.js} +2 -2
  826. package/dist/siemens-ix/p-40da22b1.entry.js.map +1 -0
  827. package/dist/siemens-ix/{p-4cc79e8f.entry.js → p-44425604.entry.js} +2 -2
  828. package/dist/siemens-ix/{p-05839c77.entry.js → p-48d6554c.entry.js} +2 -2
  829. package/dist/siemens-ix/p-49ca9211.entry.js +2 -0
  830. package/dist/siemens-ix/{p-fe396297.entry.js.map → p-49ca9211.entry.js.map} +1 -1
  831. package/dist/siemens-ix/{p-0b2f0536.entry.js → p-4cb35508.entry.js} +2 -2
  832. package/dist/siemens-ix/p-4e51d716.entry.js.map +1 -1
  833. package/dist/siemens-ix/p-559cdf73.js +2 -0
  834. package/dist/siemens-ix/p-559cdf73.js.map +1 -0
  835. package/dist/siemens-ix/p-5767345b.entry.js +2 -0
  836. package/dist/siemens-ix/p-5b86301e.js +2 -0
  837. package/dist/siemens-ix/p-5b86301e.js.map +1 -0
  838. package/dist/siemens-ix/p-5fe87e71.js.map +1 -1
  839. package/dist/siemens-ix/{p-cbfca958.entry.js → p-617b3d78.entry.js} +2 -2
  840. package/dist/siemens-ix/{p-654f91f2.entry.js → p-623297ef.entry.js} +2 -2
  841. package/dist/siemens-ix/p-623297ef.entry.js.map +1 -0
  842. package/dist/siemens-ix/p-637df471.entry.js +2 -0
  843. package/dist/siemens-ix/p-637df471.entry.js.map +1 -0
  844. package/dist/siemens-ix/p-6635972c.entry.js +2 -0
  845. package/dist/siemens-ix/p-6635972c.entry.js.map +1 -0
  846. package/dist/siemens-ix/{p-48718dc1.entry.js → p-67209151.entry.js} +2 -2
  847. package/dist/siemens-ix/p-67209151.entry.js.map +1 -0
  848. package/dist/siemens-ix/{p-1c5ebea3.entry.js → p-676a4bd0.entry.js} +2 -2
  849. package/dist/siemens-ix/{p-1c5ebea3.entry.js.map → p-676a4bd0.entry.js.map} +1 -1
  850. package/dist/siemens-ix/{p-bfe469e4.entry.js → p-6af64cf4.entry.js} +2 -2
  851. package/dist/siemens-ix/{p-bfe469e4.entry.js.map → p-6af64cf4.entry.js.map} +1 -1
  852. package/dist/siemens-ix/{p-392b4297.entry.js → p-6b84501c.entry.js} +2 -2
  853. package/dist/siemens-ix/{p-392b4297.entry.js.map → p-6b84501c.entry.js.map} +1 -1
  854. package/dist/siemens-ix/{p-484aa96b.js → p-6ccf39dd.js} +2 -2
  855. package/dist/siemens-ix/p-6ccf39dd.js.map +1 -0
  856. package/dist/siemens-ix/{p-66178fe6.entry.js → p-6f3b0a66.entry.js} +2 -2
  857. package/dist/siemens-ix/{p-66178fe6.entry.js.map → p-6f3b0a66.entry.js.map} +1 -1
  858. package/dist/siemens-ix/{p-edc1d44a.entry.js → p-6f970ba4.entry.js} +2 -2
  859. package/dist/siemens-ix/p-6f970ba4.entry.js.map +1 -0
  860. package/dist/siemens-ix/{p-af7c4b16.entry.js → p-71a4590c.entry.js} +2 -2
  861. package/dist/siemens-ix/{p-be860121.entry.js → p-790709c5.entry.js} +2 -2
  862. package/dist/siemens-ix/p-790709c5.entry.js.map +1 -0
  863. package/dist/siemens-ix/{p-d9b654af.entry.js → p-7b65535a.entry.js} +2 -2
  864. package/dist/siemens-ix/p-7b65535a.entry.js.map +1 -0
  865. package/dist/siemens-ix/{p-e7ac5657.entry.js → p-7e91e565.entry.js} +2 -2
  866. package/dist/siemens-ix/p-7e91e565.entry.js.map +1 -0
  867. package/dist/siemens-ix/p-8039ec6b.entry.js +2 -0
  868. package/dist/siemens-ix/p-8039ec6b.entry.js.map +1 -0
  869. package/dist/siemens-ix/p-8964b303.entry.js +2 -0
  870. package/dist/siemens-ix/p-8964b303.entry.js.map +1 -0
  871. package/dist/siemens-ix/p-89734934.js +2 -0
  872. package/dist/siemens-ix/{p-d2f21544.js.map → p-89734934.js.map} +1 -1
  873. package/dist/siemens-ix/{p-b74a8cdc.entry.js → p-8a6d403c.entry.js} +2 -2
  874. package/dist/siemens-ix/p-8a6d403c.entry.js.map +1 -0
  875. package/dist/siemens-ix/{p-afb4565c.entry.js → p-8df3318f.entry.js} +2 -2
  876. package/dist/siemens-ix/p-8df3318f.entry.js.map +1 -0
  877. package/dist/siemens-ix/p-8efd9181.entry.js +2 -0
  878. package/dist/siemens-ix/p-8efd9181.entry.js.map +1 -0
  879. package/dist/siemens-ix/{p-d0b38ae2.entry.js → p-9213afda.entry.js} +2 -2
  880. package/dist/siemens-ix/{p-d0b38ae2.entry.js.map → p-9213afda.entry.js.map} +1 -1
  881. package/dist/siemens-ix/p-93fab3c7.entry.js +2 -0
  882. package/dist/siemens-ix/{p-c236cf18.entry.js.map → p-93fab3c7.entry.js.map} +1 -1
  883. package/dist/siemens-ix/{p-b62f8f62.entry.js → p-988ca463.entry.js} +2 -2
  884. package/dist/siemens-ix/{p-83da8f11.entry.js → p-9c63869a.entry.js} +2 -2
  885. package/dist/siemens-ix/p-9dd344d4.entry.js +2 -0
  886. package/dist/siemens-ix/{p-2643f32a.entry.js.map → p-9dd344d4.entry.js.map} +1 -1
  887. package/dist/siemens-ix/{p-815699d1.entry.js → p-9df683f8.entry.js} +2 -2
  888. package/dist/siemens-ix/p-9df683f8.entry.js.map +1 -0
  889. package/dist/siemens-ix/{p-c530de51.entry.js → p-a36ee7b7.entry.js} +2 -2
  890. package/dist/siemens-ix/p-a36ee7b7.entry.js.map +1 -0
  891. package/dist/siemens-ix/p-aac089f0.entry.js +2 -0
  892. package/dist/siemens-ix/p-aac089f0.entry.js.map +1 -0
  893. package/dist/siemens-ix/p-ac9bb8be.entry.js +2 -0
  894. package/dist/siemens-ix/{p-9f960c0b.entry.js → p-af565741.entry.js} +2 -2
  895. package/dist/siemens-ix/p-af565741.entry.js.map +1 -0
  896. package/dist/siemens-ix/p-b00f255c.entry.js +2 -0
  897. package/dist/siemens-ix/{p-a36ad7c7.entry.js → p-b8b7aa8e.entry.js} +2 -2
  898. package/dist/siemens-ix/{p-97d4b3bd.entry.js → p-ba1aeecb.entry.js} +2 -2
  899. package/dist/siemens-ix/p-ba1aeecb.entry.js.map +1 -0
  900. package/dist/siemens-ix/{p-df7060ae.entry.js → p-ba60132f.entry.js} +2 -2
  901. package/dist/siemens-ix/{p-54efe56b.entry.js → p-bb33784f.entry.js} +2 -2
  902. package/dist/siemens-ix/{p-2d7ea063.entry.js → p-bb99415f.entry.js} +2 -2
  903. package/dist/siemens-ix/p-bb99415f.entry.js.map +1 -0
  904. package/dist/siemens-ix/{p-2db63240.entry.js → p-bc05aafe.entry.js} +2 -2
  905. package/dist/siemens-ix/p-bc05aafe.entry.js.map +1 -0
  906. package/dist/siemens-ix/{p-d19b52bd.entry.js → p-bf01468d.entry.js} +2 -2
  907. package/dist/siemens-ix/{p-8c2b62c3.entry.js → p-c272dbbd.entry.js} +2 -2
  908. package/dist/siemens-ix/p-c272dbbd.entry.js.map +1 -0
  909. package/dist/siemens-ix/p-c4b75f38.entry.js +2 -0
  910. package/dist/siemens-ix/{p-caf49e00.entry.js → p-c7c8e52b.entry.js} +2 -2
  911. package/dist/siemens-ix/{p-57e60a06.entry.js → p-ca95654f.entry.js} +2 -2
  912. package/dist/siemens-ix/{p-57e60a06.entry.js.map → p-ca95654f.entry.js.map} +1 -1
  913. package/dist/siemens-ix/p-ce563a48.js.map +1 -1
  914. package/dist/siemens-ix/{p-3f367d44.entry.js → p-d489e0b3.entry.js} +2 -2
  915. package/dist/siemens-ix/{p-3f367d44.entry.js.map → p-d489e0b3.entry.js.map} +1 -1
  916. package/dist/siemens-ix/p-d70eb520.entry.js +2 -0
  917. package/dist/siemens-ix/p-d70eb520.entry.js.map +1 -0
  918. package/dist/siemens-ix/p-d8c93983.entry.js +2 -0
  919. package/dist/siemens-ix/{p-243e8b32.entry.js.map → p-d8c93983.entry.js.map} +1 -1
  920. package/dist/siemens-ix/{p-9d323232.entry.js → p-d9b3c267.entry.js} +2 -2
  921. package/dist/siemens-ix/{p-9d323232.entry.js.map → p-d9b3c267.entry.js.map} +1 -1
  922. package/dist/siemens-ix/{p-5fbdff13.entry.js → p-dcc76d47.entry.js} +2 -2
  923. package/dist/siemens-ix/{p-0f2bf43d.entry.js → p-e09995d4.entry.js} +2 -2
  924. package/dist/siemens-ix/{p-0b5c9f33.entry.js → p-e1e48602.entry.js} +2 -2
  925. package/dist/siemens-ix/p-ebfaeb95.entry.js +2 -0
  926. package/dist/siemens-ix/{p-c6796e64.entry.js.map → p-ebfaeb95.entry.js.map} +1 -1
  927. package/dist/siemens-ix/{p-bc272f75.entry.js → p-f023b24b.entry.js} +2 -2
  928. package/dist/siemens-ix/p-f023b24b.entry.js.map +1 -0
  929. package/dist/siemens-ix/p-f5ccceb6.entry.js +2 -0
  930. package/dist/siemens-ix/p-f5ccceb6.entry.js.map +1 -0
  931. package/dist/siemens-ix/p-f815f96e.entry.js +2 -0
  932. package/dist/siemens-ix/p-f815f96e.entry.js.map +1 -0
  933. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  934. package/dist/siemens-ix/siemens-ix.css +3 -3
  935. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  936. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  937. package/dist/types/components/application/application.d.ts +4 -4
  938. package/dist/types/components/application-header/application-header.d.ts +8 -2
  939. package/dist/types/components/application-header/application-switch-modal/application-switch-modal.d.ts +1 -1
  940. package/dist/types/components/application-sidebar/events.d.ts +2 -2
  941. package/dist/types/components/basic-navigation/basic-navigation.d.ts +3 -3
  942. package/dist/types/components/blind/blind.d.ts +1 -1
  943. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +2 -2
  944. package/dist/types/components/button/base-button.d.ts +1 -1
  945. package/dist/types/components/button/button-component.d.ts +31 -0
  946. package/dist/types/components/button/button.d.ts +2 -1
  947. package/dist/types/components/card-accordion/card-accordion.d.ts +1 -1
  948. package/dist/types/components/category-filter/category-filter.d.ts +1 -1
  949. package/dist/types/components/chip/chip.d.ts +2 -2
  950. package/dist/types/components/date-dropdown/date-dropdown.d.ts +19 -1
  951. package/dist/types/components/date-input/date-input.d.ts +1 -1
  952. package/dist/types/components/date-picker/date-picker.d.ts +2 -2
  953. package/dist/types/components/dropdown/dropdown-controller.d.ts +2 -2
  954. package/dist/types/components/dropdown/dropdown.d.ts +1 -1
  955. package/dist/types/components/dropdown-header/dropdown-header.d.ts +1 -1
  956. package/dist/types/components/empty-state/empty-state.d.ts +3 -3
  957. package/dist/types/components/expanding-search/expanding-search.d.ts +15 -1
  958. package/dist/types/components/field-wrapper/helper-text-util.d.ts +1 -1
  959. package/dist/types/components/filter-chip/filter-chip.d.ts +1 -1
  960. package/dist/types/components/flip-tile/flip-tile.d.ts +2 -2
  961. package/dist/types/components/group/group.d.ts +1 -1
  962. package/dist/types/components/icon-button/icon-button.d.ts +4 -4
  963. package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +1 -1
  964. package/dist/types/components/input/input.d.ts +3 -1
  965. package/dist/types/components/input/input.util.d.ts +2 -0
  966. package/dist/types/components/input/number-input.d.ts +3 -1
  967. package/dist/types/components/input/tests/validation.ct.d.ts +1 -0
  968. package/dist/types/components/input-group/input-group.d.ts +1 -1
  969. package/dist/types/components/key-value/key-value.d.ts +2 -2
  970. package/dist/types/components/kpi/kpi.d.ts +3 -3
  971. package/dist/types/components/link-button/link-button.d.ts +1 -1
  972. package/dist/types/components/map-navigation/map-navigation.d.ts +2 -2
  973. package/dist/types/components/map-navigation-overlay/map-navigation-overlay.d.ts +4 -4
  974. package/dist/types/components/menu/menu-expand-icon.d.ts +1 -1
  975. package/dist/types/components/menu/menu.d.ts +12 -5
  976. package/dist/types/components/menu-about/menu-about.d.ts +1 -1
  977. package/dist/types/components/menu-about-item/menu-about-item.d.ts +1 -1
  978. package/dist/types/components/menu-about-news/menu-about-news.d.ts +2 -2
  979. package/dist/types/components/menu-avatar/menu-avatar.d.ts +4 -4
  980. package/dist/types/components/menu-avatar-item/menu-avatar-item.d.ts +3 -3
  981. package/dist/types/components/menu-category/menu-category.d.ts +6 -6
  982. package/dist/types/components/menu-settings/menu-settings.d.ts +1 -1
  983. package/dist/types/components/menu-settings-item/menu-settings-item.d.ts +1 -1
  984. package/dist/types/components/message-bar/message-bar.d.ts +2 -2
  985. package/dist/types/components/modal/modal.d.ts +2 -2
  986. package/dist/types/components/pane/pane.d.ts +1 -1
  987. package/dist/types/components/pill/pill.d.ts +6 -2
  988. package/dist/types/components/pill/tests/pill.ct.d.ts +1 -0
  989. package/dist/types/components/select/select.d.ts +16 -1
  990. package/dist/types/components/select/test/select-keyboard.ct.d.ts +1 -0
  991. package/dist/types/components/select-item/select-item.d.ts +1 -1
  992. package/dist/types/components/slider/slider.d.ts +1 -1
  993. package/dist/types/components/split-button/split-button.d.ts +3 -3
  994. package/dist/types/components/split-button-item/split-button-item.d.ts +2 -2
  995. package/dist/types/components/tabs/tabs.d.ts +1 -1
  996. package/dist/types/components/time-picker/time-picker.d.ts +1 -1
  997. package/dist/types/components/toast/toast.d.ts +3 -3
  998. package/dist/types/components/toggle-button/toggle-button.d.ts +1 -1
  999. package/dist/types/components/tree/tree.d.ts +1 -1
  1000. package/dist/types/components/utils/a11y.d.ts +1 -1
  1001. package/dist/types/components/utils/application-layout/context.d.ts +3 -3
  1002. package/dist/types/components/utils/application-layout/service.d.ts +1 -1
  1003. package/dist/types/components/utils/context.d.ts +2 -2
  1004. package/dist/types/components/utils/find-element.d.ts +1 -1
  1005. package/dist/types/components/utils/lazy-list/lazy.d.ts +1 -1
  1006. package/dist/types/components/utils/make-ref.d.ts +1 -1
  1007. package/dist/types/components/utils/menu-service/menu-service.d.ts +1 -1
  1008. package/dist/types/components/utils/modal/message.d.ts +5 -5
  1009. package/dist/types/components/utils/shadow-dom.d.ts +2 -2
  1010. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +7 -7
  1011. package/dist/types/components/workflow-steps/workflow-steps.d.ts +1 -1
  1012. package/dist/types/components.d.ts +147 -59
  1013. package/dist/types/setup.ct.d.ts +1 -0
  1014. package/dist/types/setup.d.ts +1 -0
  1015. package/dist/types/tests/utils/test/index.d.ts +1 -1
  1016. package/dist/types/tests/utils/test/page.d.ts +12 -2
  1017. package/hydrate/index.js +429 -295
  1018. package/package.json +3 -4
  1019. package/scss/components/form/_input.scss +4 -1
  1020. package/dist/cjs/index-492e6488.js.map +0 -1
  1021. package/dist/cjs/input.util-54d161e6.js.map +0 -1
  1022. package/dist/cjs/menu-tabs-fc-eb899b0d.js.map +0 -1
  1023. package/dist/cjs/setup-cc07fbfc.js.map +0 -1
  1024. package/dist/cjs/validation-1e3dd5ee.js.map +0 -1
  1025. package/dist/esm/app-globals-40082a83.js +0 -7
  1026. package/dist/esm/index-7421df0c.js.map +0 -1
  1027. package/dist/esm/input.util-c855b2ed.js.map +0 -1
  1028. package/dist/esm/menu-tabs-fc-563a74d9.js.map +0 -1
  1029. package/dist/esm/setup-9c5fe321.js.map +0 -1
  1030. package/dist/esm/validation-45aa490c.js.map +0 -1
  1031. package/dist/siemens-ix/p-08463669.entry.js +0 -2
  1032. package/dist/siemens-ix/p-08463669.entry.js.map +0 -1
  1033. package/dist/siemens-ix/p-0be907d4.entry.js +0 -2
  1034. package/dist/siemens-ix/p-18542846.entry.js +0 -2
  1035. package/dist/siemens-ix/p-18542846.entry.js.map +0 -1
  1036. package/dist/siemens-ix/p-20938f73.entry.js +0 -2
  1037. package/dist/siemens-ix/p-20938f73.entry.js.map +0 -1
  1038. package/dist/siemens-ix/p-243e8b32.entry.js +0 -2
  1039. package/dist/siemens-ix/p-2643f32a.entry.js +0 -2
  1040. package/dist/siemens-ix/p-2b367b12.entry.js +0 -2
  1041. package/dist/siemens-ix/p-2b367b12.entry.js.map +0 -1
  1042. package/dist/siemens-ix/p-2b9c5f59.entry.js +0 -2
  1043. package/dist/siemens-ix/p-2d7ea063.entry.js.map +0 -1
  1044. package/dist/siemens-ix/p-2db63240.entry.js.map +0 -1
  1045. package/dist/siemens-ix/p-37af7117.entry.js.map +0 -1
  1046. package/dist/siemens-ix/p-3aaecbd9.js +0 -2
  1047. package/dist/siemens-ix/p-3aaecbd9.js.map +0 -1
  1048. package/dist/siemens-ix/p-40dc610f.entry.js +0 -2
  1049. package/dist/siemens-ix/p-40dc610f.entry.js.map +0 -1
  1050. package/dist/siemens-ix/p-451551d1.js +0 -2
  1051. package/dist/siemens-ix/p-451551d1.js.map +0 -1
  1052. package/dist/siemens-ix/p-484aa96b.js.map +0 -1
  1053. package/dist/siemens-ix/p-48718dc1.entry.js.map +0 -1
  1054. package/dist/siemens-ix/p-4a631d9c.entry.js +0 -2
  1055. package/dist/siemens-ix/p-4a631d9c.entry.js.map +0 -1
  1056. package/dist/siemens-ix/p-4a9330a5.entry.js +0 -2
  1057. package/dist/siemens-ix/p-4a9330a5.entry.js.map +0 -1
  1058. package/dist/siemens-ix/p-4ec6ddfb.entry.js.map +0 -1
  1059. package/dist/siemens-ix/p-52928e21.entry.js +0 -2
  1060. package/dist/siemens-ix/p-52928e21.entry.js.map +0 -1
  1061. package/dist/siemens-ix/p-53fd545a.entry.js +0 -2
  1062. package/dist/siemens-ix/p-53fd545a.entry.js.map +0 -1
  1063. package/dist/siemens-ix/p-63dd987f.entry.js.map +0 -1
  1064. package/dist/siemens-ix/p-654f91f2.entry.js.map +0 -1
  1065. package/dist/siemens-ix/p-66559451.entry.js +0 -2
  1066. package/dist/siemens-ix/p-6e3f1de3.entry.js +0 -2
  1067. package/dist/siemens-ix/p-6e3f1de3.entry.js.map +0 -1
  1068. package/dist/siemens-ix/p-7aa07d9b.entry.js +0 -2
  1069. package/dist/siemens-ix/p-7af324e9.entry.js +0 -2
  1070. package/dist/siemens-ix/p-7af324e9.entry.js.map +0 -1
  1071. package/dist/siemens-ix/p-815699d1.entry.js.map +0 -1
  1072. package/dist/siemens-ix/p-8457d846.entry.js.map +0 -1
  1073. package/dist/siemens-ix/p-897c8e5b.entry.js +0 -2
  1074. package/dist/siemens-ix/p-897c8e5b.entry.js.map +0 -1
  1075. package/dist/siemens-ix/p-8c2b62c3.entry.js.map +0 -1
  1076. package/dist/siemens-ix/p-97d4b3bd.entry.js.map +0 -1
  1077. package/dist/siemens-ix/p-9f960c0b.entry.js.map +0 -1
  1078. package/dist/siemens-ix/p-a4dc6824.entry.js.map +0 -1
  1079. package/dist/siemens-ix/p-a61ed462.entry.js +0 -2
  1080. package/dist/siemens-ix/p-afb4565c.entry.js.map +0 -1
  1081. package/dist/siemens-ix/p-b2a06e46.entry.js.map +0 -1
  1082. package/dist/siemens-ix/p-b74a8cdc.entry.js.map +0 -1
  1083. package/dist/siemens-ix/p-bc272f75.entry.js.map +0 -1
  1084. package/dist/siemens-ix/p-bd4c1a44.entry.js.map +0 -1
  1085. package/dist/siemens-ix/p-be860121.entry.js.map +0 -1
  1086. package/dist/siemens-ix/p-c07557b0.entry.js +0 -2
  1087. package/dist/siemens-ix/p-c07557b0.entry.js.map +0 -1
  1088. package/dist/siemens-ix/p-c236cf18.entry.js +0 -2
  1089. package/dist/siemens-ix/p-c3ca17fc.js +0 -2
  1090. package/dist/siemens-ix/p-c3ca17fc.js.map +0 -1
  1091. package/dist/siemens-ix/p-c530de51.entry.js.map +0 -1
  1092. package/dist/siemens-ix/p-c6796e64.entry.js +0 -2
  1093. package/dist/siemens-ix/p-d01f05cf.entry.js +0 -2
  1094. package/dist/siemens-ix/p-d2f21544.js +0 -2
  1095. package/dist/siemens-ix/p-d9b654af.entry.js.map +0 -1
  1096. package/dist/siemens-ix/p-dfb181c1.entry.js.map +0 -1
  1097. package/dist/siemens-ix/p-e7ac5657.entry.js.map +0 -1
  1098. package/dist/siemens-ix/p-edc1d44a.entry.js.map +0 -1
  1099. package/dist/siemens-ix/p-ede52531.entry.js.map +0 -1
  1100. package/dist/siemens-ix/p-ee0645f8.entry.js.map +0 -1
  1101. package/dist/siemens-ix/p-f97a15c4.js.map +0 -1
  1102. package/dist/siemens-ix/p-fe396297.entry.js +0 -2
  1103. package/dist/siemens-ix/p-ffca56d6.entry.js +0 -2
  1104. /package/dist/siemens-ix/{p-22cba43a.entry.js.map → p-060d5c58.entry.js.map} +0 -0
  1105. /package/dist/siemens-ix/{p-42320fb3.entry.js.map → p-19d1c463.entry.js.map} +0 -0
  1106. /package/dist/siemens-ix/{p-2d3a6d29.entry.js.map → p-1bff0a1f.entry.js.map} +0 -0
  1107. /package/dist/siemens-ix/{p-286feb7e.entry.js.map → p-297cd68a.entry.js.map} +0 -0
  1108. /package/dist/siemens-ix/{p-2b9c5f59.entry.js.map → p-309b82ec.entry.js.map} +0 -0
  1109. /package/dist/siemens-ix/{p-6624076c.entry.js.map → p-353f081a.entry.js.map} +0 -0
  1110. /package/dist/siemens-ix/{p-4cc79e8f.entry.js.map → p-44425604.entry.js.map} +0 -0
  1111. /package/dist/siemens-ix/{p-05839c77.entry.js.map → p-48d6554c.entry.js.map} +0 -0
  1112. /package/dist/siemens-ix/{p-0b2f0536.entry.js.map → p-4cb35508.entry.js.map} +0 -0
  1113. /package/dist/siemens-ix/{p-a61ed462.entry.js.map → p-5767345b.entry.js.map} +0 -0
  1114. /package/dist/siemens-ix/{p-cbfca958.entry.js.map → p-617b3d78.entry.js.map} +0 -0
  1115. /package/dist/siemens-ix/{p-af7c4b16.entry.js.map → p-71a4590c.entry.js.map} +0 -0
  1116. /package/dist/siemens-ix/{p-b62f8f62.entry.js.map → p-988ca463.entry.js.map} +0 -0
  1117. /package/dist/siemens-ix/{p-83da8f11.entry.js.map → p-9c63869a.entry.js.map} +0 -0
  1118. /package/dist/siemens-ix/{p-7aa07d9b.entry.js.map → p-ac9bb8be.entry.js.map} +0 -0
  1119. /package/dist/siemens-ix/{p-d01f05cf.entry.js.map → p-b00f255c.entry.js.map} +0 -0
  1120. /package/dist/siemens-ix/{p-a36ad7c7.entry.js.map → p-b8b7aa8e.entry.js.map} +0 -0
  1121. /package/dist/siemens-ix/{p-df7060ae.entry.js.map → p-ba60132f.entry.js.map} +0 -0
  1122. /package/dist/siemens-ix/{p-54efe56b.entry.js.map → p-bb33784f.entry.js.map} +0 -0
  1123. /package/dist/siemens-ix/{p-d19b52bd.entry.js.map → p-bf01468d.entry.js.map} +0 -0
  1124. /package/dist/siemens-ix/{p-66559451.entry.js.map → p-c4b75f38.entry.js.map} +0 -0
  1125. /package/dist/siemens-ix/{p-caf49e00.entry.js.map → p-c7c8e52b.entry.js.map} +0 -0
  1126. /package/dist/siemens-ix/{p-5fbdff13.entry.js.map → p-dcc76d47.entry.js.map} +0 -0
  1127. /package/dist/siemens-ix/{p-0f2bf43d.entry.js.map → p-e09995d4.entry.js.map} +0 -0
  1128. /package/dist/siemens-ix/{p-0b5c9f33.entry.js.map → p-e1e48602.entry.js.map} +0 -0
@@ -49,11 +49,11 @@ const Toast = class {
49
49
  animationPlayState: this.touched ? 'paused' : 'running',
50
50
  };
51
51
  progressBarClass.push('toast-progress-bar--animated');
52
- return (h(Host, { key: '2022423ee116c3f35018039cc13e7f9a72e94eb5', class: "animate__animated animate__fadeIn" }, h("div", { key: '07da49dc05174eec9e39094feebb318fc04e8f03', class: "toast-body", onPointerLeave: () => {
52
+ return (h(Host, { key: 'a8a6c1a009529dd1c61942c40a6d6d7081b319a0', class: "animate__animated animate__fadeIn" }, h("div", { key: 'fd011b4e26627fee1ee2917d7c22cbd039b67b67', class: "toast-body", onPointerLeave: () => {
53
53
  this.touched = false;
54
54
  }, onPointerEnter: () => {
55
55
  this.touched = true;
56
- } }, this.type || this.icon ? (h("div", { class: "toast-icon" }, this.getIcon())) : null, h("div", { key: '6576125656b21e9164c8757d30b6e4872e694e6c', class: "toast-content" }, this.toastTitle ? (h("div", { class: "toast-title" }, this.toastTitle)) : null, h("div", { key: '12e7f65bdba5f4eab21d58680175709f39ced6fd', class: "toast-message" }, h("slot", { key: '42998feff3becd6ff8367b8f558ff117f7b722c4' }))), h("div", { key: '245d19c09984ef510a0107a055cf27aa10ceadaf', class: "toast-close" }, h("ix-icon-button", { key: '5836ce63a661084488454de0e5c632ef94c95905', icon: 'close', size: "24", ghost: true, onClick: () => this.closeToast.emit() }))), this.autoClose ? (h("div", { class: progressBarClass.join(' '), style: progressBarStyle, onAnimationEnd: () => {
56
+ } }, this.type || this.icon ? (h("div", { class: "toast-icon" }, this.getIcon())) : null, h("div", { key: '6ed6ffca2d27cd6e42c79d2250a1ec509db35ab5', class: "toast-content" }, this.toastTitle ? (h("div", { class: "toast-title" }, this.toastTitle)) : null, h("div", { key: '05f32e01c33421dc2356455d76805782d24f2164', class: "toast-message" }, h("slot", { key: 'e3d2457ca46a93df01d1dc69be829f30c40b9e8d' }))), h("div", { key: '55420cc44284a05c47069b55877233fbb9ce814c', class: "toast-close" }, h("ix-icon-button", { key: 'cd492967fb66313cb94ab460881e4c7275e03d9e', icon: 'close', size: "24", ghost: true, onClick: () => this.closeToast.emit() }))), this.autoClose ? (h("div", { class: progressBarClass.join(' '), style: progressBarStyle, onAnimationEnd: () => {
57
57
  this.close();
58
58
  }, onTransitionEnd: () => {
59
59
  if (this.progress === 0) {
@@ -1 +1 @@
1
- {"file":"ix-toast.entry.js","mappings":"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","names":[],"sources":["src/components/toast/toast.scss?tag=ix-toast&encapsulation=shadow","src/components/toast/toast.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n@import 'legacy/mixins/fonts';\n\n:host {\n @include ix-component;\n\n display: flex;\n flex-direction: column;\n position: relative;\n min-width: 17.5rem;\n max-width: 17.5rem;\n min-height: 3.5rem;\n\n pointer-events: all;\n\n background-color: var(--theme-toast--background);\n border: var(--theme-toast--border-thickness) solid\n var(--theme-toast--border-color);\n border-radius: var(--theme-toast--border-radius);\n box-shadow: var(--theme-toast--box-shadow);\n\n --animate-duration: #{$medium-time};\n\n .toast-body {\n display: flex;\n position: relative;\n min-height: 3.5rem;\n width: 100%;\n flex-grow: 1;\n padding: 0.75rem;\n\n .toast-icon {\n display: flex;\n align-items: flex-start;\n margin-right: $default-space;\n }\n\n .toast-content {\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n width: 100%;\n\n .toast-title {\n @include text-default-title-single;\n margin: 0.25rem 0px;\n }\n\n .toast-message {\n min-width: 0;\n\n @include text-default;\n }\n }\n\n .toast-icon + .toast-content {\n max-width: 10.25rem;\n }\n }\n\n .toast-close {\n display: flex;\n position: relative;\n pointer-events: all;\n margin-left: auto;\n margin-right: 0px;\n }\n\n .toast-progress-bar {\n position: absolute;\n bottom: 0;\n height: $tiny-space;\n width: 100%;\n background-color: var(--theme-toast-timer-value--background);\n transform-origin: left;\n\n &--animated {\n animation: trackProgress linear 1 forwards;\n }\n }\n\n @keyframes trackProgress {\n 0% {\n transform: scaleX(1);\n }\n 100% {\n transform: scaleX(0);\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport { ToastType } from './toast-utils';\n\n@Component({\n tag: 'ix-toast',\n styleUrl: 'toast.scss',\n shadow: true,\n})\nexport class Toast {\n /**\n * Toast type\n */\n @Prop() type: ToastType = 'info';\n\n /**\n * Toast title\n */\n @Prop() toastTitle: string;\n\n /**\n * Autoclose title after delay\n */\n @Prop() autoCloseDelay = 5000;\n\n /**\n * Autoclose behavior\n */\n @Prop() autoClose = true;\n\n /**\n * Icon of toast\n */\n @Prop() icon: string;\n\n /**\n * Icon color of toast\n */\n @Prop() iconColor: string;\n\n /**\n * Toast closed\n */\n @Event() closeToast: EventEmitter;\n\n @State() progress = 0;\n @State() touched = false;\n\n @Element() hostElement!: HTMLIxToastElement;\n\n private getIcon() {\n if (this.icon) {\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={this.icon}\n color={this.iconColor}\n size=\"24\"\n />\n );\n }\n\n switch (this.type) {\n case 'info':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'info'}\n size=\"24\"\n color=\"color-std-text\"\n />\n );\n\n case 'error':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'error'}\n size=\"24\"\n color=\"color-alarm\"\n />\n );\n\n case 'success':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'success'}\n size=\"24\"\n color=\"color-success\"\n />\n );\n\n case 'warning':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'warning'}\n size=\"24\"\n color=\"color-warning\"\n />\n );\n\n default:\n return '';\n }\n }\n\n private close() {\n if (this.hostElement) {\n this.hostElement.classList.add('animate__fadeOut');\n }\n setTimeout(() => {\n this.closeToast.emit();\n }, 250);\n }\n\n render() {\n let progressBarStyle: Record<string, string> = {};\n\n const progressBarClass = ['toast-progress-bar'];\n\n progressBarStyle = {\n animationDuration: `${this.autoCloseDelay}ms`,\n animationPlayState: this.touched ? 'paused' : 'running',\n };\n\n progressBarClass.push('toast-progress-bar--animated');\n\n return (\n <Host class=\"animate__animated animate__fadeIn\">\n <div\n class=\"toast-body\"\n onPointerLeave={() => {\n this.touched = false;\n }}\n onPointerEnter={() => {\n this.touched = true;\n }}\n >\n {this.type || this.icon ? (\n <div class=\"toast-icon\">{this.getIcon()}</div>\n ) : null}\n <div class=\"toast-content\">\n {this.toastTitle ? (\n <div class=\"toast-title\">{this.toastTitle}</div>\n ) : null}\n <div class=\"toast-message\">\n <slot></slot>\n </div>\n </div>\n <div class=\"toast-close\">\n <ix-icon-button\n icon={'close'}\n size=\"24\"\n ghost\n onClick={() => this.closeToast.emit()}\n />\n </div>\n </div>\n {this.autoClose ? (\n <div\n class={progressBarClass.join(' ')}\n style={progressBarStyle}\n onAnimationEnd={() => {\n this.close();\n }}\n onTransitionEnd={() => {\n if (this.progress === 0) {\n this.close();\n }\n }}\n ></div>\n ) : null}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-toast.entry.js","mappings":"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","names":[],"sources":["src/components/toast/toast.scss?tag=ix-toast&encapsulation=shadow","src/components/toast/toast.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n@import 'mixins/shadow-dom/component';\n@import 'legacy/mixins/fonts';\n\n:host {\n @include ix-component;\n\n display: flex;\n flex-direction: column;\n position: relative;\n min-width: 17.5rem;\n max-width: 17.5rem;\n min-height: 3.5rem;\n\n pointer-events: all;\n\n background-color: var(--theme-toast--background);\n border: var(--theme-toast--border-thickness) solid\n var(--theme-toast--border-color);\n border-radius: var(--theme-toast--border-radius);\n box-shadow: var(--theme-toast--box-shadow);\n\n --animate-duration: #{$medium-time};\n\n .toast-body {\n display: flex;\n position: relative;\n min-height: 3.5rem;\n width: 100%;\n flex-grow: 1;\n padding: 0.75rem;\n\n .toast-icon {\n display: flex;\n align-items: flex-start;\n margin-right: $default-space;\n }\n\n .toast-content {\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n width: 100%;\n\n .toast-title {\n @include text-default-title-single;\n margin: 0.25rem 0px;\n }\n\n .toast-message {\n min-width: 0;\n\n @include text-default;\n }\n }\n\n .toast-icon + .toast-content {\n max-width: 10.25rem;\n }\n }\n\n .toast-close {\n display: flex;\n position: relative;\n pointer-events: all;\n margin-left: auto;\n margin-right: 0px;\n }\n\n .toast-progress-bar {\n position: absolute;\n bottom: 0;\n height: $tiny-space;\n width: 100%;\n background-color: var(--theme-toast-timer-value--background);\n transform-origin: left;\n\n &--animated {\n animation: trackProgress linear 1 forwards;\n }\n }\n\n @keyframes trackProgress {\n 0% {\n transform: scaleX(1);\n }\n 100% {\n transform: scaleX(0);\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\nimport { ToastType } from './toast-utils';\n\n@Component({\n tag: 'ix-toast',\n styleUrl: 'toast.scss',\n shadow: true,\n})\nexport class Toast {\n /**\n * Toast type\n */\n @Prop() type: ToastType = 'info';\n\n /**\n * Toast title\n */\n @Prop() toastTitle?: string;\n\n /**\n * Autoclose title after delay\n */\n @Prop() autoCloseDelay = 5000;\n\n /**\n * Autoclose behavior\n */\n @Prop() autoClose = true;\n\n /**\n * Icon of toast\n */\n @Prop() icon?: string;\n\n /**\n * Icon color of toast\n */\n @Prop() iconColor?: string;\n\n /**\n * Toast closed\n */\n @Event() closeToast!: EventEmitter;\n\n @State() progress = 0;\n @State() touched = false;\n\n @Element() hostElement!: HTMLIxToastElement;\n\n private getIcon() {\n if (this.icon) {\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={this.icon}\n color={this.iconColor}\n size=\"24\"\n />\n );\n }\n\n switch (this.type) {\n case 'info':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'info'}\n size=\"24\"\n color=\"color-std-text\"\n />\n );\n\n case 'error':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'error'}\n size=\"24\"\n color=\"color-alarm\"\n />\n );\n\n case 'success':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'success'}\n size=\"24\"\n color=\"color-success\"\n />\n );\n\n case 'warning':\n return (\n <ix-icon\n data-testid=\"toast-icon\"\n name={'warning'}\n size=\"24\"\n color=\"color-warning\"\n />\n );\n\n default:\n return '';\n }\n }\n\n private close() {\n if (this.hostElement) {\n this.hostElement.classList.add('animate__fadeOut');\n }\n setTimeout(() => {\n this.closeToast.emit();\n }, 250);\n }\n\n render() {\n let progressBarStyle: Record<string, string> = {};\n\n const progressBarClass = ['toast-progress-bar'];\n\n progressBarStyle = {\n animationDuration: `${this.autoCloseDelay}ms`,\n animationPlayState: this.touched ? 'paused' : 'running',\n };\n\n progressBarClass.push('toast-progress-bar--animated');\n\n return (\n <Host class=\"animate__animated animate__fadeIn\">\n <div\n class=\"toast-body\"\n onPointerLeave={() => {\n this.touched = false;\n }}\n onPointerEnter={() => {\n this.touched = true;\n }}\n >\n {this.type || this.icon ? (\n <div class=\"toast-icon\">{this.getIcon()}</div>\n ) : null}\n <div class=\"toast-content\">\n {this.toastTitle ? (\n <div class=\"toast-title\">{this.toastTitle}</div>\n ) : null}\n <div class=\"toast-message\">\n <slot></slot>\n </div>\n </div>\n <div class=\"toast-close\">\n <ix-icon-button\n icon={'close'}\n size=\"24\"\n ghost\n onClick={() => this.closeToast.emit()}\n />\n </div>\n </div>\n {this.autoClose ? (\n <div\n class={progressBarClass.join(' ')}\n style={progressBarStyle}\n onAnimationEnd={() => {\n this.close();\n }}\n onTransitionEnd={() => {\n if (this.progress === 0) {\n this.close();\n }\n }}\n ></div>\n ) : null}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -57,9 +57,9 @@ const ToggleButton = class {
57
57
  'aria-pressed': a11yBoolean(this.pressed),
58
58
  },
59
59
  };
60
- return (h(Host, { key: '9927083c0c3ac1ce93333d41d60c4069bec42c2a', class: {
60
+ return (h(Host, { key: '6e4c00d9254141696c832a3102fb02615af91c62', class: {
61
61
  disabled: this.disabled || this.loading,
62
- } }, h(BaseButton, Object.assign({ key: '78d27ae9c94500d658d1bb773ff6bb1350934fed' }, baseButtonProps), h("slot", { key: '8ffb2bb3726742fc00be381212fa50e5331b05e0' }))));
62
+ } }, h(BaseButton, Object.assign({ key: '60ccac36e5c7f72ca72ad06ba685eacca7fb6c34' }, baseButtonProps), h("slot", { key: 'fe9a17c7cb02ada4a100aaf2cbc4e8390fecc7b9' }))));
63
63
  }
64
64
  static get watchers() { return {
65
65
  "variant": ["onVariantChange"],
@@ -1 +1 @@
1
- {"file":"ix-toggle-button.entry.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,g7aAAg7a,CAAC;AACz8a,6BAAe,eAAe;;MC6BjB,YAAY;;;;uBAKU,WAAW;uBAK1B,KAAK;qBAKP,KAAK;wBAKe,KAAK;uBAKd,KAAK;;uBAUd,KAAK;;IAOf,2BAA2B;QACjC,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;KACnE;IAEO,gBAAgB;QACtB,OAAO,CAAC,IAAI,CACV,yHAAyH,CAC1H,CAAC;KACH;IAGD,eAAe;QACb,IAAI,IAAI,CAAC,2BAA2B,EAAE,EAAE;YACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;KACF;IAGD,aAAa;QACX,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAGD,eAAe;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,gBAAgB;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAEO,qBAAqB;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACxC;IAED,MAAM;QACJ,MAAM,eAAe,GAAoB;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,MAAM,IAAI,CAAC,qBAAqB,EAAE;YAC3C,IAAI,EAAE,QAAQ;YACd,cAAc,EAAE;gBACd,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;aAC1C;SACF,CAAC;QAEF,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;aACxC,IAED,EAAC,UAAU,qEAAK,eAAe,GAC7B,8DAAa,CACF,CACR,EACP;KACH;;;;;;;;;;;","names":[],"sources":["src/components/toggle-button/toggle-button.scss?tag=ix-toggle-button&encapsulation=shadow","src/components/toggle-button/toggle-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\n@import 'common-variables';\n@import 'legacy/components/buttons';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: inline-block;\n width: auto;\n height: $x-large-space;\n vertical-align: middle;\n\n .btn {\n width: 100%;\n height: 100%;\n }\n\n button:not(:disabled) {\n cursor: pointer;\n }\n}\n\n:host(.disabled) {\n pointer-events: 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 Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { BaseButton, BaseButtonProps } from '../button/base-button';\nimport { ButtonVariant } from '../button/button';\nimport { a11yBoolean } from '../utils/a11y';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-toggle-button',\n shadow: true,\n styleUrl: './toggle-button.scss',\n})\nexport class ToggleButton {\n /**\n * Button variant.\n * Important: Variant 'primary' can only be combined with either outline or ghost.\n */\n @Prop() variant: ButtonVariant = 'secondary';\n\n /**\n * Outline button\n */\n @Prop() outline = false;\n\n /**\n * Button with no background or outline\n */\n @Prop() ghost = false;\n\n /**\n * Disable the button\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Loading button\n */\n @Prop() loading: boolean = false;\n\n /**\n * Icon name\n */\n @Prop() icon: string;\n\n /**\n * Show button as pressed\n */\n @Prop() pressed = false;\n\n /**\n * Pressed change event\n */\n @Event() pressedChange: EventEmitter<boolean>;\n\n private isIllegalToggleButtonConfig() {\n return this.variant === 'primary' && (this.outline || this.ghost);\n }\n\n private logIllegalConfig() {\n console.warn(\n 'iX toggle button with illegal configuration detected. Variant \"primary\" can only be combined with \"outline\" or \"ghost\".'\n );\n }\n\n @Watch('variant')\n onVariantChange() {\n if (this.isIllegalToggleButtonConfig()) {\n this.logIllegalConfig();\n }\n }\n\n @Watch('ghost')\n onGhostChange() {\n this.onVariantChange();\n }\n\n @Watch('outline')\n onOutlineChange() {\n this.onVariantChange();\n }\n\n componentDidLoad() {\n this.onVariantChange();\n }\n\n private dispatchPressedChange() {\n this.pressedChange.emit(!this.pressed);\n }\n\n render() {\n const baseButtonProps: BaseButtonProps = {\n variant: this.variant,\n outline: this.outline,\n ghost: this.ghost,\n iconOnly: false,\n iconOval: false,\n selected: this.pressed,\n disabled: this.disabled || this.loading,\n icon: this.icon,\n loading: this.loading,\n onClick: () => this.dispatchPressedChange(),\n type: 'button',\n ariaAttributes: {\n 'aria-pressed': a11yBoolean(this.pressed),\n },\n };\n\n return (\n <Host\n class={{\n disabled: this.disabled || this.loading,\n }}\n >\n <BaseButton {...baseButtonProps}>\n <slot></slot>\n </BaseButton>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-toggle-button.entry.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,g7aAAg7a,CAAC;AACz8a,6BAAe,eAAe;;MC6BjB,YAAY;;;;uBAKU,WAAW;uBAK1B,KAAK;qBAKP,KAAK;wBAKe,KAAK;uBAKd,KAAK;;uBAUd,KAAK;;IAOf,2BAA2B;QACjC,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;KACnE;IAEO,gBAAgB;QACtB,OAAO,CAAC,IAAI,CACV,yHAAyH,CAC1H,CAAC;KACH;IAGD,eAAe;QACb,IAAI,IAAI,CAAC,2BAA2B,EAAE,EAAE;YACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;KACF;IAGD,aAAa;QACX,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAGD,eAAe;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,gBAAgB;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAEO,qBAAqB;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACxC;IAED,MAAM;QACJ,MAAM,eAAe,GAAoB;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,MAAM,IAAI,CAAC,qBAAqB,EAAE;YAC3C,IAAI,EAAE,QAAQ;YACd,cAAc,EAAE;gBACd,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;aAC1C;SACF,CAAC;QAEF,QACE,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;aACxC,IAED,EAAC,UAAU,qEAAK,eAAe,GAC7B,8DAAa,CACF,CACR,EACP;KACH;;;;;;;;;;;","names":[],"sources":["src/components/toggle-button/toggle-button.scss?tag=ix-toggle-button&encapsulation=shadow","src/components/toggle-button/toggle-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\n@import 'common-variables';\n@import 'legacy/components/buttons';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: inline-block;\n width: auto;\n height: $x-large-space;\n vertical-align: middle;\n\n .btn {\n width: 100%;\n height: 100%;\n }\n\n button:not(:disabled) {\n cursor: pointer;\n }\n}\n\n:host(.disabled) {\n pointer-events: 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 Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { BaseButton, BaseButtonProps } from '../button/base-button';\nimport { ButtonVariant } from '../button/button';\nimport { a11yBoolean } from '../utils/a11y';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-toggle-button',\n shadow: true,\n styleUrl: './toggle-button.scss',\n})\nexport class ToggleButton {\n /**\n * Button variant.\n * Important: Variant 'primary' can only be combined with either outline or ghost.\n */\n @Prop() variant: ButtonVariant = 'secondary';\n\n /**\n * Outline button\n */\n @Prop() outline = false;\n\n /**\n * Button with no background or outline\n */\n @Prop() ghost = false;\n\n /**\n * Disable the button\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Loading button\n */\n @Prop() loading: boolean = false;\n\n /**\n * Icon name\n */\n @Prop() icon?: string;\n\n /**\n * Show button as pressed\n */\n @Prop() pressed = false;\n\n /**\n * Pressed change event\n */\n @Event() pressedChange!: EventEmitter<boolean>;\n\n private isIllegalToggleButtonConfig() {\n return this.variant === 'primary' && (this.outline || this.ghost);\n }\n\n private logIllegalConfig() {\n console.warn(\n 'iX toggle button with illegal configuration detected. Variant \"primary\" can only be combined with \"outline\" or \"ghost\".'\n );\n }\n\n @Watch('variant')\n onVariantChange() {\n if (this.isIllegalToggleButtonConfig()) {\n this.logIllegalConfig();\n }\n }\n\n @Watch('ghost')\n onGhostChange() {\n this.onVariantChange();\n }\n\n @Watch('outline')\n onOutlineChange() {\n this.onVariantChange();\n }\n\n componentDidLoad() {\n this.onVariantChange();\n }\n\n private dispatchPressedChange() {\n this.pressedChange.emit(!this.pressed);\n }\n\n render() {\n const baseButtonProps: BaseButtonProps = {\n variant: this.variant,\n outline: this.outline,\n ghost: this.ghost,\n iconOnly: false,\n iconOval: false,\n selected: this.pressed,\n disabled: this.disabled || this.loading,\n icon: this.icon,\n loading: this.loading,\n onClick: () => this.dispatchPressedChange(),\n type: 'button',\n ariaAttributes: {\n 'aria-pressed': a11yBoolean(this.pressed),\n },\n };\n\n return (\n <Host\n class={{\n disabled: this.disabled || this.loading,\n }}\n >\n <BaseButton {...baseButtonProps}>\n <slot></slot>\n </BaseButton>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -67,13 +67,13 @@ const Toggle = class {
67
67
  if (this.indeterminate) {
68
68
  toggleText = this.textIndeterminate;
69
69
  }
70
- return (h(Host, { key: '326e2301e2d731f943233771e66c80680fc77f71', class: {
70
+ return (h(Host, { key: '508fa5cd92f3b3707823b13175a6e243def7d61f', class: {
71
71
  disabled: this.disabled,
72
- } }, h("label", { key: '1498ebf0357541fca93abab9e774c274f2b65702', class: "wrapper" }, h("button", { key: '97825608357f5a2fc9b000aa33b7d2a77f540362', role: "switch", "aria-checked": a11yBoolean(this.checked), class: {
72
+ } }, h("label", { key: 'b01e8a3e4fb781dc979ebf915aa71055a688d0da', class: "wrapper" }, h("button", { key: '22301abf1c108d18d8c73d5288f9b6cceb6f4992', role: "switch", "aria-checked": a11yBoolean(this.checked), class: {
73
73
  switch: true,
74
74
  checked: this.checked,
75
75
  indeterminate: this.indeterminate,
76
- }, onClick: () => this.onCheckedChange(!this.checked) }, h("div", { key: '644322fb450d6836be5260c1191c8b3ec36ecdaa', class: "slider" })), h("input", { key: 'db434f5b8caf0be198cdabca153c6b2308d6df11', type: "checkbox", disabled: this.disabled, indeterminate: this.indeterminate, checked: this.checked, tabindex: 0, "aria-hidden": a11yBoolean(true), "aria-checked": a11yBoolean(this.checked), onChange: (event) => this.onCheckedChange(event.target.checked) }), !this.hideText && (h("ix-typography", { key: '401fce46a2f766b62e06c13d8a571bfbe931bb42', class: "label" }, toggleText)))));
76
+ }, onClick: () => this.onCheckedChange(!this.checked) }, h("div", { key: '2f0a33aa378f39f77f7905028884b93b530e9c5e', class: "slider" })), h("input", { key: 'f5bb8b2a44d5881f769d2306b5eeadac9481dc46', type: "checkbox", disabled: this.disabled, indeterminate: this.indeterminate, checked: this.checked, tabindex: 0, "aria-hidden": a11yBoolean(true), "aria-checked": a11yBoolean(this.checked), onChange: (event) => this.onCheckedChange(event.target.checked) }), !this.hideText && (h("ix-typography", { key: 'd631ef3c16f5df85c752534b4f1c798f520678d3', class: "label" }, toggleText)))));
77
77
  }
78
78
  static get formAssociated() { return true; }
79
79
  get hostElement() { return getElement(this); }
@@ -15,16 +15,16 @@ const TreeItem = class {
15
15
  }
16
16
  render() {
17
17
  var _a, _b, _c;
18
- return (h(Host, { key: '6fffa2b53d684d4b512c8f12c50a7ff6f436fd6a', class: {
18
+ return (h(Host, { key: 'bb6da9e7cfe6133c51d8aa4a6eebfb8e7fdb68b2', class: {
19
19
  selected: !!((_a = this.context) === null || _a === void 0 ? void 0 : _a.isSelected),
20
- } }, h("div", { key: 'b6859cc2ae9b42f7da94a0d69a5d285b617ce1f1', class: "icon-toggle-container", onClick: (e) => {
20
+ } }, h("div", { key: '8c6046145871b5b27731d78150ce8db3a3d5d5ad', class: "icon-toggle-container", onClick: (e) => {
21
21
  e.preventDefault();
22
22
  this.toggle.emit();
23
23
  } }, this.hasChildren ? (h("ix-icon", { name: iconChevronRight, size: "16", class: {
24
24
  ['icon-toggle-down']: !!((_b = this.context) === null || _b === void 0 ? void 0 : _b.isExpanded),
25
- }, color: `color-${((_c = this.context) === null || _c === void 0 ? void 0 : _c.isExpanded) ? 'primary' : 'std-text'}` })) : null), h("div", { key: 'bcc331825f22ae1e470a3a03708261984c203368', class: "tree-node-container", onClick: () => {
25
+ }, color: `color-${((_c = this.context) === null || _c === void 0 ? void 0 : _c.isExpanded) ? 'primary' : 'std-text'}` })) : null), h("div", { key: '54dde9d64be32bcc705ca8503ceb23146e70e7b7', class: "tree-node-container", onClick: () => {
26
26
  this.itemClick.emit();
27
- } }, h("div", { key: '9298a6130fbd9bb6c0f064e7cc1c35ef7cf417ba', class: "tree-node-text" }, this.text), h("slot", { key: 'ee7cbdaaa22dde0b6ed599a1c9d20909f639d3db' }))));
27
+ } }, h("div", { key: '91747fdc39f9e1207200639d1ef1d0d4cb582947', class: "tree-node-text" }, this.text), h("slot", { key: 'bacce3961714116f77a23657c30437ac719916de' }))));
28
28
  }
29
29
  };
30
30
  TreeItem.style = IxTreeItemStyle0;
@@ -543,7 +543,7 @@ const Tree = class {
543
543
  this.hyperlist = new VirtualList(this.hostElement, config);
544
544
  }
545
545
  render() {
546
- return (h(Host, { key: '23855bc97fd2eceb9af149d6b39e32ccb930b1d9' }, h("slot", { key: '1fe905f3ded4b94af84d2e827f6056914c14fc45' })));
546
+ return (h(Host, { key: 'f07f8e18cb87e576426b1ba321d8d198712db756' }, h("slot", { key: 'c2f1bfa0cb99eeac46d11270d22e949a4d8674c3' })));
547
547
  }
548
548
  get hostElement() { return getElement(this); }
549
549
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ix-tree.entry.js","mappings":"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","names":[],"sources":["src/components/utils/lazy-list/lazy.ts","src/components/tree/tree.css?tag=ix-tree&encapsulation=shadow","src/components/tree/tree.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n// Manually forked from https://github.com/tbranyen/hyperlist to remove\n// features a direct document calls\n//\n// Hyperlist is licensed MIT. https://github.com/tbranyen/hyperlist\n\nexport type VirtualListConfig = {\n applyPatch?: (\n element: HTMLElement,\n fragment: DocumentFragment | DocumentFragment[]\n ) => void;\n overrideScrollPosition?: () => void;\n rowClassName?: string;\n scrollContainer?: HTMLElement;\n width: string;\n height: string;\n afterRender?: () => void;\n scrollerTagName?: string;\n scroller?: HTMLElement;\n useFragment?: boolean;\n generate?: (index: number) => HTMLElement;\n total?: number;\n itemHeight?: number;\n horizontal?: boolean;\n};\n\nconst isNumber = (input: unknown) => !Number.isNaN(Number(input));\n\nconst addClass = (element: HTMLElement, className: string) => {\n element.classList.add(className);\n};\n\nexport class VirtualList {\n _config: VirtualListConfig;\n _lastRepaint: null;\n _maxElementHeight: number;\n _renderAnimationFrame: number;\n _averageHeight: number;\n\n static readonly defaultConfig: VirtualListConfig = {\n width: '100%',\n height: '100%',\n };\n _element: any;\n _scroller: any;\n _itemHeights: number[];\n _containerSize: number | string;\n _scrollPaddingBottom: number;\n _scrollPaddingTop: number;\n _scrollHeight: any;\n _itemPositions: any;\n _screenItemsLen: number;\n _lastFrom: number;\n _cachedItemsLen: any;\n\n static create(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n return new VirtualList(element, userProvidedConfig);\n }\n\n static mergeStyle(element: HTMLElement, style) {\n for (let i in style) {\n if (element.style[i] !== style[i]) {\n element.style[i] = style[i];\n }\n }\n }\n\n static getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n const wrapper = document.createElement('div');\n const fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n VirtualList.mergeStyle(wrapper, {\n position: 'absolute',\n height: '1px',\n opacity: 0,\n });\n VirtualList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n const maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n\n constructor(element: HTMLElement, userProvidedConfig: VirtualListConfig) {\n this._lastRepaint = null;\n this._maxElementHeight = VirtualList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n const config = this._config;\n\n // Create internal render loop.\n const render = () => {\n const scrollTop = this._getScrollPosition();\n const lastRepaint = this._lastRepaint;\n\n this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n const diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > this._averageHeight) {\n let rendered = this._renderChunk();\n\n this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n\n refresh(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n this._config = userProvidedConfig;\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n const config = this._config;\n\n const scroller =\n this._scroller ||\n config.scroller ||\n document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error(\n `\n Invalid required \\`itemHeight\\` value, expected number or array\n `.trim()\n );\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = [config.itemHeight];\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(VirtualList.defaultConfig)\n .filter((prop) => prop in config)\n .forEach((prop) => {\n const value = config[prop];\n const isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n let msg = `Invalid optional \\`${prop}\\`, expected string or number`;\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = `${value}px`;\n }\n });\n\n const isHorizontal = Boolean(config.horizontal);\n const value = config[isHorizontal ? 'width' : 'height'];\n\n if (value) {\n const isValueNumber = isNumber(value);\n const isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n const numberValue = isValueNumber\n ? parseInt(value, 10)\n : parseInt(value.replace(/px|%/, ''), 10);\n const innerSize = window[isHorizontal ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = (innerSize * numberValue) / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n const scrollContainer = config.scrollContainer;\n const scrollerHeight = config.itemHeight * config.total;\n const maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(\n [\n 'HyperList: The maximum element height',\n maxElementHeight + 'px has',\n 'been exceeded; please reduce your item height.',\n ].join(' ')\n );\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n const elementStyle = {\n width: `${config.width}`,\n height: scrollContainer ? `${scrollerHeight}px` : `${config.height}`,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative',\n };\n\n VirtualList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n VirtualList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n const scrollerStyle = {\n opacity: '0',\n position: 'absolute',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollerHeight}px`,\n };\n\n VirtualList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n const padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n\n _getRow(i) {\n const config = this._config;\n let item = config.generate(i) as any;\n let height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight();\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error(`Generator did not return a DOM Node for index: ${i}`);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n const top = this._itemPositions[i] + this._scrollPaddingTop;\n\n VirtualList.mergeStyle(item, {\n position: 'absolute',\n [config.horizontal ? 'left' : 'top']: `${top}px`,\n });\n\n return item;\n }\n\n _getScrollPosition() {\n const config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n\n _renderChunk(force: boolean = false) {\n const config = this._config;\n const element = this._element;\n const scrollTop = this._getScrollPosition();\n const total = config.total;\n\n let from = this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n let to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n const fragment = config.useFragment\n ? document.createDocumentFragment()\n : [\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n ];\n\n // The element that forces the container to scroll.\n const scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (let i = from; i < to; i++) {\n let row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n\n _computePositions(from = 1) {\n const config = this._config;\n const total = config.total;\n\n if (from < 1) {\n from = 1;\n }\n\n for (let i = from; i < total; i++) {\n this._itemPositions[i] =\n this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n\n _computeScrollHeight() {\n const config = this._config;\n const isHorizontal = Boolean(config.horizontal);\n const total = config.total;\n const scrollHeight =\n this._itemHeights.reduce((a, b) => a + b, 0) +\n this._scrollPaddingBottom +\n this._scrollPaddingTop;\n\n VirtualList.mergeStyle(this._scroller, {\n opacity: 0,\n position: 'absolute',\n top: '0px',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollHeight}px`,\n });\n\n // Calculate the height median\n const sortedItemHeights = this._itemHeights.slice(0).sort((a, b) => a - b);\n const middle = Math.floor(total / 2);\n const averageHeight =\n total % 2 === 0\n ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2\n : sortedItemHeights[middle];\n\n const clientProp = isHorizontal ? 'clientWidth' : 'clientHeight';\n const element = config.scrollContainer\n ? config.scrollContainer\n : this._element;\n const containerHeight = element[clientProp]\n ? element[clientProp]\n : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(\n this._cachedItemsLen || 0,\n this._screenItemsLen * 3\n );\n this._averageHeight = averageHeight;\n\n return scrollHeight;\n }\n\n _computeScrollPadding() {\n const config = this._config;\n const isHoriz = Boolean(config.horizontal);\n const styles = window.getComputedStyle(this._element);\n\n const padding = (location: string) => {\n const cssValue = styles.getPropertyValue(`padding-${location}`);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left'),\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top'),\n };\n }\n }\n\n _getFrom(scrollTop: number) {\n let i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { VirtualList, VirtualListConfig } from './../utils/lazy-list';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\nimport { dropdownController } from '../dropdown/dropdown-controller';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n shadow: true,\n})\nexport class Tree {\n @Element() hostElement!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root!: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any> = {};\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem?: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange!: EventEmitter<TreeContext>;\n\n /**\n * Node toggled event\n * @since 1.5.0\n */\n @Event() nodeToggled!: EventEmitter<{ id: string; isExpaned: boolean }>;\n\n /**\n * Node clicked event\n * @since 1.5.0\n */\n @Event() nodeClicked!: EventEmitter<string>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved!: EventEmitter<any>;\n\n private hyperlist: VirtualList;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n private observer!: MutationObserver;\n private hasFirstRender = false;\n\n private updatePadding(element: HTMLElement, item: TreeItemVisual<unknown>) {\n element.style.paddingLeft = item.level + 'rem';\n }\n\n private getVirtualizerOptions(): VirtualListConfig {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n width: '100%',\n height: '100%',\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n\n const renderedTreeItem = this.hostElement.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n\n if (doUpdate) {\n doUpdate(item, { ...this.context });\n }\n }\n\n this.updatePadding(renderedTreeItem, item);\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingRight = '1rem';\n this.updatePadding(el, item);\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (event: Event) => {\n const path = event.composedPath();\n const treeIndex = path.indexOf(this.hostElement);\n const treePath = path.slice(0, treeIndex);\n const hasTrigger = dropdownController.pathIncludesTrigger(treePath);\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (hasTrigger) {\n return;\n }\n\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n this.nodeClicked.emit(item.id);\n };\n el.addEventListener('toggle', (event) => {\n event.preventDefault();\n });\n el.addEventListener('click', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed: unknown[] = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.hostElement, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist?.destroy();\n this.observer?.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n //@ts-ignore\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.hostElement, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n if (!this.model) {\n return;\n }\n\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new VirtualList(this.hostElement, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-tree.entry.js","mappings":";;;;AAAA;;;;;;;;AAQA;AACA;AACA;AACA;AAsBA,MAAM,QAAQ,GAAG,CAAC,KAAc,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAElE,MAAM,QAAQ,GAAG,CAAC,OAAoB,EAAE,SAAiB;IACvD,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC,CAAC;MAEW,WAAW;IAuBtB,OAAO,MAAM,CACX,OAAoB,EACpB,qBAAwC,WAAW,CAAC,aAAa;QAEjE,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;KACrD;IAED,OAAO,UAAU,CAAC,OAAoB,EAAE,KAAU;QAChD,KAAK,IAAI,CAAC,IAAI,KAAK,EAAE;YACnB,IAAI,OAAO,CAAC,KAAK,CAAC,CAAQ,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE;gBACxC,OAAO,CAAC,KAAK,CAAC,CAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;aACpC;SACF;KACF;IAED,OAAO,mBAAmB;;;;;QAKxB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;;;QAI9C,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE;YAC9B,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QACH,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;;QAGrD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;;QAG7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;;QAGnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;;QAG9C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,OAAO,gBAAgB,CAAC;KACzB;IAED,YAAY,OAAoB,EAAE,kBAAqC;QACrE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAE3D,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAE1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;;QAG5B,MAAM,MAAM,GAAG;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;YAEtC,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAElE,IAAI,SAAS,KAAK,WAAW,EAAE;gBAC7B,OAAO;aACR;YAED,MAAM,IAAI,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,CAAC,CAAC;YACvD,IAAI,CAAC,WAAW,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE;gBAC1D,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAEnC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAE9B,IAAI,QAAQ,KAAK,KAAK,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE;oBAClE,MAAM,CAAC,WAAW,EAAE,CAAC;iBACtB;aACF;SACF,CAAC;QAEF,MAAM,EAAE,CAAC;KACV;IAED,OAAO;QACL,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;KACzD;IAED,OAAO,CACL,OAAoB,EACpB,qBAAwC,WAAW,CAAC,aAAa;QAEjE,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC;QAElC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE;YACtC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;SAClE;QAED,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAc,CAAC;QAEnC,MAAM,QAAQ,GACZ,IAAI,CAAC,SAAS;YACd,MAAM,CAAC,QAAQ;YACf,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC;;QAGzD,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE;YAC3C,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;SACjC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YACrE,MAAM,IAAI,KAAK,CACb;;OAED,CAAC,IAAI,EAAE,CACP,CAAC;SACH;aAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YACtC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACjE;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,CAAC,UAAiB,CAAC,CAAC;SAChD;;;QAID,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;aACnC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC;aAChC,OAAO,CAAC,CAAC,IAAI;YACZ,MAAM,KAAK,GAAG,MAAM,CAAC,IAAW,CAAC,CAAC;YAClC,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEtC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBACnE,IAAI,GAAG,GAAG,sBAAsB,IAAI,+BAA+B,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM,IAAI,aAAa,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC;aAC7B;SACF,CAAC,CAAC;QAEL,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;QAExD,IAAI,KAAK,EAAE;YACT,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,cAAc,GAAG,aAAa,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;;YAEvE,MAAM,WAAW,GAAG,aAAa;kBAC7B,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;kBACnB,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;YAEtE,IAAI,cAAc,EAAE;gBAClB,IAAI,CAAC,cAAc,GAAG,CAAC,SAAS,GAAG,WAAW,IAAI,GAAG,CAAC;aACvD;iBAAM;gBACL,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,WAAW,CAAC;aAC7D;SACF;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;QACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEhD,IAAI,cAAc,GAAG,gBAAgB,EAAE;YACrC,OAAO,CAAC,IAAI,CACV;gBACE,uCAAuC;gBACvC,gBAAgB,GAAG,QAAQ;gBAC3B,gDAAgD;aACjD,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;SACH;;;QAID,MAAM,YAAY,GAAG;YACnB,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE;YACxB,MAAM,EAAE,eAAe,GAAG,GAAG,cAAc,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE;YACpE,QAAQ,EAAE,eAAe,GAAG,MAAM,GAAG,MAAM;YAC3C,QAAQ,EAAE,UAAU;SACrB,CAAC;QAEF,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAE9C,IAAI,eAAe,EAAE;YACnB,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;SACtE;QAED,MAAM,aAAa,GAAG;YACpB,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE,UAAU;YACpB,CAAC,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK;YAC1C,CAAC,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,GAAG,cAAc,IAAI;SAC3D,CAAC;QAEF,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;;QAGhD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC;;QAGrC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;;QAGjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;QAGzE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;;QAG1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;QAE9C,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE;YAC5C,MAAM,CAAC,WAAW,EAAE,CAAC;SACtB;KACF;IAED,OAAO,CAAC,CAAS;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,OAAc,CAAC;QACnC,IAAI,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAQ,CAAC;QACrC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAEzB,IAAI,MAAM,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YAC5C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;;YAGpB,IAAI,MAAM,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;gBACnC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;aAClD;SACF;aAAM;YACL,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;SAC/B;QAED,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,EAAE,CAAC,CAAC;SACxE;QAED,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;QAE9C,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAE5D,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE;YAC3B,QAAQ,EAAE,UAAU;YACpB,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,KAAK,GAAG,GAAG,GAAG,IAAI;SACjD,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;KACb;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IAAI,OAAO,MAAM,CAAC,sBAAsB,KAAK,UAAU,EAAE;YACvD,OAAO,MAAM,CAAC,sBAAsB,EAAE,CAAC;SACxC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,YAAY,GAAG,WAAW,CAAC,CAAC;KACtE;IAED,YAAY,CAAC,QAAiB,KAAK;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAW,MAAM,CAAC,KAAM,CAAC;QAEpC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE;YAC/C,IAAI,GAAG,CAAC,CAAC;SACV;QAED,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;QAErC,IAAI,EAAE,GAAG,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,KAAK,EAAE;YACnD,EAAE,GAAG,KAAK,CAAC;SACZ;;;QAID,MAAM,QAAQ,GAAQ,MAAM,CAAC,WAAW;cACpC,QAAQ,CAAC,sBAAsB,EAAE;cACjC;;;aAGC,CAAC;;QAGN,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;;QAGhC,QAAQ,CAAC,MAAM,CAAC,WAAW,GAAG,aAAa,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;QAEhE,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;YAC9B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAE1B,QAAQ,CAAC,MAAM,CAAC,WAAW,GAAG,aAAa,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;SAC5D;QAED,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,OAAO,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;SAC7C;QAED,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;QACvB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;KAC/B;IAED,iBAAiB,CAAC,IAAI,GAAG,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAM,CAAC;QAE5B,IAAI,IAAI,GAAG,CAAC,EAAE;YACZ,IAAI,GAAG,CAAC,CAAC;SACV;QAED,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YACjC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACzD;KACF;IAED,oBAAoB;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAc,CAAC;QACnC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,YAAY,GAChB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB;YACzB,IAAI,CAAC,iBAAiB,CAAC;QAEzB,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE;YACrC,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,UAAU;YACpB,GAAG,EAAE,KAAK;YACV,CAAC,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK;YAC1C,CAAC,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,GAAG,YAAY,IAAI;SACzD,CAAC,CAAC;;QAGH,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACrC,MAAM,aAAa,GACjB,KAAK,GAAG,CAAC,KAAK,CAAC;cACX,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC;cAC/D,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAEhC,MAAM,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,cAAc,CAAC;QACjE,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe;cAClC,MAAM,CAAC,eAAe;cACtB,IAAI,CAAC,QAAQ,CAAC;QAClB,MAAM,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;cACvC,OAAO,CAAC,UAAU,CAAC;cACnB,IAAI,CAAC,cAAc,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC;;QAGtC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAC7B,IAAI,CAAC,eAAe,IAAI,CAAC,EACzB,IAAI,CAAC,eAAe,GAAG,CAAC,CACzB,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QAEpC,OAAO,YAAY,CAAC;KACrB;IAED,qBAAqB;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtD,MAAM,OAAO,GAAG,CAAC,QAAgB;YAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;YAChE,OAAO,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;SACpC,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC;gBACxB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;aACrB,CAAC;SACH;aAAM;YACL,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC;gBACzB,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;aACpB,CAAC;SACH;KACF;IAED,QAAQ,CAAC,SAAiB;QACxB,IAAI,CAAC,GAAG,CAAC,CAAC;QAEV,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE;YACzC,CAAC,EAAE,CAAC;SACL;QAED,OAAO,CAAC,CAAC;KACV;;AAhbe,yBAAa,GAAsB;IACjD,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;CACf;;ACjDH,MAAM,OAAO,GAAG,sBAAsB,CAAC;AACvC,qBAAe,OAAO;;MCmCT,IAAI;;;;;;;QAqDP,mBAAc,GAAG,IAAI,GAAG,EAAyB,CAAC;QAClD,sBAAiB,GAAG,IAAI,GAAG,EAAyB,CAAC;QACrD,YAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;QAE5C,mBAAc,GAAG,KAAK,CAAC;;qBA9CC,EAAE;;uBAgBc,EAAE;;IAgC1C,aAAa,CAAC,OAAoB,EAAE,IAA6B;QACvE,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KAChD;IAEO,qBAAqB;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEvD,IAAI,iBAAiB,GAAG,CACtB,IAAyB,EACzB,EAAe,EACf,KAAa;YAEb,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBACpD,MAAM,cAAc,GAAG,CAAC,CAAQ;oBAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,CAAC,CAAC,eAAe,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBAChD,OAAO,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;oBACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;iBACnC,CAAC;gBACF,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC9C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;aAC7C;SACF,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,EAAE;YACd,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,QAAQ,EAAE,CAAC,KAAa;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CACrD,uBAAuB,IAAI,CAAC,EAAE,IAAI,CACV,CAAC;gBAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEzC,IAAI,gBAAgB,EAAE;oBACpB,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;oBAChD,gBAAgB,CAAC,OAAO,qBAAQ,OAAO,CAAE,CAAC;oBAE1C,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;oBAEjD,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;wBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAE3C,IAAI,QAAQ,EAAE;4BACZ,QAAQ,CAAC,IAAI,oBAAO,IAAI,CAAC,OAAO,EAAG,CAAC;yBACrC;qBACF;oBAED,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;oBAC3C,OAAO,gBAAgB,CAAC;iBACzB;gBAED,MAAM,MAAM,GAAG,CAAC,QAAwB;oBACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;iBACrC,CAAC;gBAEF,IAAI,YAAY,GAAuB,IAAI,CAAC;gBAC5C,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnB,YAAY,GAAG,IAAI,CAAC,UAAU,CAC5B,KAAK,EACL,IAAI,EACJ,IAAI,oBACC,IAAI,CAAC,OAAO,GACjB,MAAM,CACP,CAAC;iBACH;gBAED,IAAI,YAAY,KAAK,IAAI,EAAE;oBACzB,YAAY,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;iBACzD;gBAED,MAAM,EAAE,GAAG,YAAY,CAAC;gBACxB,EAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9C,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;gBAC/B,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAE7B,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBACnC,MAAM,iBAAiB,GAAG,CAAC,KAAY;wBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;wBAClC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;wBAC1C,MAAM,UAAU,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;wBAEpE,IAAI,KAAK,CAAC,gBAAgB,EAAE;4BAC1B,OAAO;yBACR;wBAED,IAAI,UAAU,EAAE;4BACd,OAAO;yBACR;wBAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC;wBACnE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACzC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;wBAClC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;qBAChC,CAAC;oBACF,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK;wBAClC,KAAK,CAAC,cAAc,EAAE,CAAC;qBACxB,CAAC,CAAC;oBACH,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;oBAChD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;iBACnD;gBAED,iBAAiB,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;gBAEnC,OAAO,EAAE,CAAC;aACX;SACF,CAAC;KACH;IAEO,UAAU,CAAC,EAAU,EAAE,OAAwB;QACrD,IAAI,CAAC,OAAO,mCACP,IAAI,CAAC,OAAO,KACf,CAAC,EAAE,GAAG,OAAO,GACd,CAAC;QAEF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACvC;IAEO,UAAU,CAAC,EAAU;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO;gBACL,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;aAClB,CAAC;SACH;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACrB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG;gBACjB,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;aAClB,CAAC;SACH;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;KACzB;IAEO,aAAa,CACnB,IAAmB,EACnB,QAAgB,CAAC;QAEjB,MAAM,QAAQ,GAA0B,EAAE,CAAC;QAE3C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAE;YACrB,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAU;gBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACpC,QAAQ,CAAC,IAAI,iCAAM,IAAI,KAAE,KAAK,IAAG,CAAC;gBAClC,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,UAAU,EAAE;oBAC1C,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;iBACtD;aACF,CAAC,CAAC;SACJ;QAED,OAAO,QAAQ,CAAC;KACjB;IAED,gBAAgB;QACd,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,OAAO;YAC3C,IAAI,OAAO,GAAc,EAAE,CAAC;YAE5B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM;gBACrB,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBAE3D,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE;oBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAClC,IAAI,KAAK,IAAI,CAAC,EAAE;wBACd,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAC1B;iBACF,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAChC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACtC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;KACJ;IAED,mBAAmB;QACjB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAE3B,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE;YAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;KACF;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,SAAS,0CAAE,OAAO,EAAE,CAAC;QAC1B,MAAA,IAAI,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAC;KAC7B;IAGD,WAAW;QACT,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE;YACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;KACF;IAEO,iBAAiB;;;QAEvB,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,SAAS,0CAAE,cAAc,CAAC;QAErD,QACE,aAAa,KAAK,SAAS;YAC3B,aAAa,CAAC,MAAM;YACpB,EAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAClB,CAAC,IAAY,KAAK,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAC3D,CAAA,EACD;KACH;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;SACxE;KACF;IAEO,QAAQ;;QACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO;SACR;QAED,MAAA,IAAI,CAAC,SAAS,0CAAE,OAAO,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;KAC5D;IAED,MAAM;QACJ,QACE,EAAC,IAAI,uDACH,8DAAa,CACR,EACP;KACH;;;;;;;;;;","names":[],"sources":["src/components/utils/lazy-list/lazy.ts","src/components/tree/tree.css?tag=ix-tree&encapsulation=shadow","src/components/tree/tree.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n// Manually forked from https://github.com/tbranyen/hyperlist to remove\n// features a direct document calls\n//\n// Hyperlist is licensed MIT. https://github.com/tbranyen/hyperlist\n\nexport type VirtualListConfig = {\n applyPatch?: (\n element: HTMLElement,\n fragment: DocumentFragment | DocumentFragment[]\n ) => void;\n overrideScrollPosition?: () => void;\n rowClassName?: string;\n scrollContainer?: HTMLElement;\n width: string;\n height: string;\n afterRender?: () => void;\n scrollerTagName?: string;\n scroller?: HTMLElement;\n useFragment?: boolean;\n generate?: (index: number) => HTMLElement;\n total?: number;\n itemHeight?: number;\n horizontal?: boolean;\n};\n\nconst isNumber = (input: unknown) => !Number.isNaN(Number(input));\n\nconst addClass = (element: HTMLElement, className: string) => {\n element.classList.add(className);\n};\n\nexport class VirtualList {\n _config!: VirtualListConfig;\n _lastRepaint: null;\n _maxElementHeight: number;\n _renderAnimationFrame!: number;\n _averageHeight!: number;\n\n static readonly defaultConfig: VirtualListConfig = {\n width: '100%',\n height: '100%',\n };\n _element: any;\n _scroller: any;\n _itemHeights!: number[];\n _containerSize!: number | string;\n _scrollPaddingBottom!: number;\n _scrollPaddingTop!: number;\n _scrollHeight: any;\n _itemPositions: any;\n _screenItemsLen!: number;\n _lastFrom!: number;\n _cachedItemsLen: any;\n\n static create(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n return new VirtualList(element, userProvidedConfig);\n }\n\n static mergeStyle(element: HTMLElement, style: any) {\n for (let i in style) {\n if (element.style[i as any] !== style[i]) {\n element.style[i as any] = style[i];\n }\n }\n }\n\n static getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n const wrapper = document.createElement('div');\n const fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n VirtualList.mergeStyle(wrapper, {\n position: 'absolute',\n height: '1px',\n opacity: 0,\n });\n VirtualList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n const maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n\n constructor(element: HTMLElement, userProvidedConfig: VirtualListConfig) {\n this._lastRepaint = null;\n this._maxElementHeight = VirtualList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n const config = this._config;\n\n // Create internal render loop.\n const render = () => {\n const scrollTop = this._getScrollPosition();\n const lastRepaint = this._lastRepaint;\n\n this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n const diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > this._averageHeight) {\n let rendered = this._renderChunk();\n\n this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n\n refresh(\n element: HTMLElement,\n userProvidedConfig: VirtualListConfig = VirtualList.defaultConfig\n ) {\n this._config = userProvidedConfig;\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n const config = this._config as any;\n\n const scroller =\n this._scroller ||\n config.scroller ||\n document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error(\n `\n Invalid required \\`itemHeight\\` value, expected number or array\n `.trim()\n );\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = [config.itemHeight as any];\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(VirtualList.defaultConfig)\n .filter((prop) => prop in config)\n .forEach((prop) => {\n const value = config[prop as any];\n const isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n let msg = `Invalid optional \\`${prop}\\`, expected string or number`;\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = `${value}px`;\n }\n });\n\n const isHorizontal = Boolean(config.horizontal);\n const value = config[isHorizontal ? 'width' : 'height'];\n\n if (value) {\n const isValueNumber = isNumber(value);\n const isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n const numberValue = isValueNumber\n ? parseInt(value, 10)\n : parseInt(value.replace(/px|%/, ''), 10);\n const innerSize = window[isHorizontal ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = (innerSize * numberValue) / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n const scrollContainer = config.scrollContainer;\n const scrollerHeight = config.itemHeight * config.total;\n const maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(\n [\n 'HyperList: The maximum element height',\n maxElementHeight + 'px has',\n 'been exceeded; please reduce your item height.',\n ].join(' ')\n );\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n const elementStyle = {\n width: `${config.width}`,\n height: scrollContainer ? `${scrollerHeight}px` : `${config.height}`,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative',\n };\n\n VirtualList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n VirtualList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n const scrollerStyle = {\n opacity: '0',\n position: 'absolute',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollerHeight}px`,\n };\n\n VirtualList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n const padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n\n _getRow(i: number) {\n const config = this._config as any;\n let item = config.generate(i) as any;\n let height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight();\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error(`Generator did not return a DOM Node for index: ${i}`);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n const top = this._itemPositions[i] + this._scrollPaddingTop;\n\n VirtualList.mergeStyle(item, {\n position: 'absolute',\n [config.horizontal ? 'left' : 'top']: `${top}px`,\n });\n\n return item;\n }\n\n _getScrollPosition() {\n const config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n\n _renderChunk(force: boolean = false) {\n const config = this._config;\n const element = this._element;\n const scrollTop = this._getScrollPosition();\n const total: number = config.total!;\n\n let from = this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n let to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n const fragment: any = config.useFragment\n ? document.createDocumentFragment()\n : [\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n ];\n\n // The element that forces the container to scroll.\n const scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (let i = from; i < to; i++) {\n let row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n\n _computePositions(from = 1) {\n const config = this._config;\n const total = config.total!;\n\n if (from < 1) {\n from = 1;\n }\n\n for (let i = from; i < total; i++) {\n this._itemPositions[i] =\n this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n\n _computeScrollHeight() {\n const config = this._config as any;\n const isHorizontal = Boolean(config.horizontal);\n const total = config.total;\n const scrollHeight =\n this._itemHeights.reduce((a, b) => a + b, 0) +\n this._scrollPaddingBottom +\n this._scrollPaddingTop;\n\n VirtualList.mergeStyle(this._scroller, {\n opacity: 0,\n position: 'absolute',\n top: '0px',\n [isHorizontal ? 'height' : 'width']: '1px',\n [isHorizontal ? 'width' : 'height']: `${scrollHeight}px`,\n });\n\n // Calculate the height median\n const sortedItemHeights = this._itemHeights.slice(0).sort((a, b) => a - b);\n const middle = Math.floor(total / 2);\n const averageHeight =\n total % 2 === 0\n ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2\n : sortedItemHeights[middle];\n\n const clientProp = isHorizontal ? 'clientWidth' : 'clientHeight';\n const element = config.scrollContainer\n ? config.scrollContainer\n : this._element;\n const containerHeight = element[clientProp]\n ? element[clientProp]\n : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(\n this._cachedItemsLen || 0,\n this._screenItemsLen * 3\n );\n this._averageHeight = averageHeight;\n\n return scrollHeight;\n }\n\n _computeScrollPadding() {\n const config = this._config;\n const isHoriz = Boolean(config.horizontal);\n const styles = window.getComputedStyle(this._element);\n\n const padding = (location: string) => {\n const cssValue = styles.getPropertyValue(`padding-${location}`);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left'),\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top'),\n };\n }\n }\n\n _getFrom(scrollTop: number) {\n let i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { VirtualList, VirtualListConfig } from './../utils/lazy-list';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\nimport { dropdownController } from '../dropdown/dropdown-controller';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n shadow: true,\n})\nexport class Tree {\n @Element() hostElement!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root!: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any> = {};\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem?: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange!: EventEmitter<TreeContext>;\n\n /**\n * Node toggled event\n * @since 1.5.0\n */\n @Event() nodeToggled!: EventEmitter<{ id: string; isExpaned: boolean }>;\n\n /**\n * Node clicked event\n * @since 1.5.0\n */\n @Event() nodeClicked!: EventEmitter<string>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved!: EventEmitter<any>;\n\n private hyperlist?: VirtualList;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n private observer!: MutationObserver;\n private hasFirstRender = false;\n\n private updatePadding(element: HTMLElement, item: TreeItemVisual<unknown>) {\n element.style.paddingLeft = item.level + 'rem';\n }\n\n private getVirtualizerOptions(): VirtualListConfig {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n width: '100%',\n height: '100%',\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n\n const renderedTreeItem = this.hostElement.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n\n if (doUpdate) {\n doUpdate(item, { ...this.context });\n }\n }\n\n this.updatePadding(renderedTreeItem, item);\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingRight = '1rem';\n this.updatePadding(el, item);\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (event: Event) => {\n const path = event.composedPath();\n const treeIndex = path.indexOf(this.hostElement);\n const treePath = path.slice(0, treeIndex);\n const hasTrigger = dropdownController.pathIncludesTrigger(treePath);\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (hasTrigger) {\n return;\n }\n\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n this.nodeClicked.emit(item.id);\n };\n el.addEventListener('toggle', (event) => {\n event.preventDefault();\n });\n el.addEventListener('click', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed: unknown[] = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.hostElement, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist?.destroy();\n this.observer?.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n //@ts-ignore\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.hostElement, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n if (!this.model) {\n return;\n }\n\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new VirtualList(this.hostElement, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -137,7 +137,7 @@ const Upload = class {
137
137
  render() {
138
138
  const disabled = this.disabled || this.state === UploadFileState.LOADING;
139
139
  const _a = this.a11y, { 'aria-label': ariaLabel = 'Upload files' } = _a, a11y = __rest(_a, ['aria-label']);
140
- return (h(Host, Object.assign({ key: '82579837d4c9dcc86fb8fe7573cf648c21712c59' }, a11y, { "aria-disabled": disabled }), h("div", { key: '8a749068bbf88d95be15c870dc8c35ab6f46f738', class: {
140
+ return (h(Host, Object.assign({ key: '3a55e79e4811a751f14647902d8c1c282211c26e' }, a11y, { "aria-disabled": disabled }), h("div", { key: '82ac8595fbb714efcb3cb580ce14c20079076151', class: {
141
141
  'file-upload-area': true,
142
142
  'file-over': this.state !== UploadFileState.LOADING && this.isFileOver,
143
143
  checking: this.state === UploadFileState.LOADING,
@@ -147,9 +147,9 @@ const Upload = class {
147
147
  if (this.state !== UploadFileState.LOADING) {
148
148
  this.fileDropped(e);
149
149
  }
150
- }, onDragOver: (e) => this.fileOver(e), onDragLeave: () => this.fileLeave(), draggable: !this.disabled }, this.renderUploadState(), h("div", { key: '7f7bdb5b79ad62d6f42ecc260bb229f73eeeb055' }, h("input", { key: '86b5dd7603c671a897e4b2dbdedb024d83cbfd34', "aria-label": ariaLabel, "aria-disabled": disabled, multiple: this.multiple, type: "file", class: "upload-browser", id: "upload-browser", onChange: (e) => {
150
+ }, onDragOver: (e) => this.fileOver(e), onDragLeave: () => this.fileLeave(), draggable: !this.disabled }, this.renderUploadState(), h("div", { key: '10a744ae27d99947d1f3bf45149c596e78d50490' }, h("input", { key: '2ec73592d331cc04ab37a587d450de8d80aa2c1f', "aria-label": ariaLabel, "aria-disabled": disabled, multiple: this.multiple, type: "file", class: "upload-browser", id: "upload-browser", onChange: (e) => {
151
151
  this.fileChangeEvent(e);
152
- }, accept: this.accept, disabled: disabled }), h("ix-button", { key: 'f0cfc2789b73110afd9b5f11c98a1b29fd10a55c', tabindex: "-1", outline: true, onClick: () => this.inputElement.click(), disabled: disabled }, this.i18nUploadFile)))));
152
+ }, accept: this.accept, disabled: disabled }), h("ix-button", { key: '4129829189afc794863da9271db0d4d5f2564e4e', tabindex: "-1", outline: true, onClick: () => this.inputElement.click(), disabled: disabled }, this.i18nUploadFile)))));
153
153
  }
154
154
  get hostElement() { return getElement(this); }
155
155
  };
@@ -49,6 +49,9 @@ const ValidationTooltip = class {
49
49
  }),
50
50
  ],
51
51
  };
52
+ if (!positionConfig.middleware) {
53
+ positionConfig.middleware = [];
54
+ }
52
55
  if (!this.suppressAutomaticPlacement) {
53
56
  positionConfig.middleware.push(flip({ fallbackStrategy: 'initialPlacement' }));
54
57
  }
@@ -129,13 +132,13 @@ const ValidationTooltip = class {
129
132
  }
130
133
  render() {
131
134
  var _a, _b;
132
- return (h(Host, { key: '460aa78f5dd3391a92b14828692f2fa110793b13' }, h("slot", { key: '37e66c6a6bc556d95717378e974a0f991317e66f' }), h("div", { key: 'cde0b66e90021043c49614a8b76a97e07b72d318', role: "tooltip", style: {
135
+ return (h(Host, { key: 'fce95b6a9df85da12c742a92ae5af48c15f5a04b' }, h("slot", { key: 'c70130b23d312a884677e0aea4cf54158ebb36e4' }), h("div", { key: '551b30175043178ead3068637b7525fcf2378623', role: "tooltip", style: {
133
136
  display: 'none',
134
137
  position: 'fixed',
135
138
  top: '0',
136
139
  left: '0',
137
140
  transform: `translate(${Math.round(((_a = this.tooltipPosition) === null || _a === void 0 ? void 0 : _a.x) || 0)}px,${Math.round(((_b = this.tooltipPosition) === null || _b === void 0 ? void 0 : _b.y) || 0)}px)`,
138
- }, class: "validation-tooltip text-default" }, this.message, h("slot", { key: 'b933fa0044dda7b423ed095c1c6f142bd4cbb32b', name: "tooltip-message" }), h("div", { key: '26fd0871dee60e14fc3a4c4c8fb42afb67758cd4', id: "arrow" }))));
141
+ }, class: "validation-tooltip text-default" }, this.message, h("slot", { key: 'f9af434ac0ae7710dccca7ffc6fb6a6b71546fc3', name: "tooltip-message" }), h("div", { key: '66da811f499a7a995149e3575ef95b8eb5eac8e7', id: "arrow" }))));
139
142
  }
140
143
  get hostElement() { return getElement(this); }
141
144
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ix-validation-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/validation-tooltip/validation-tooltip.scss?tag=ix-validation-tooltip&encapsulation=shadow","src/components/validation-tooltip/validation-tooltip.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/fonts';\n\n:host {\n display: inline-block;\n position: relative;\n $padding: 5px;\n width: 100%;\n\n .validation-tooltip {\n background-color: var(--theme-tootlip--background);\n color: var(--theme-tooltip--color);\n padding: $padding 10px;\n border-radius: 4px;\n font-size: 13px;\n border: 1px solid var(--theme-tooltip--border-color);\n box-shadow: 0 0 2px 0 rgba(0, 0, 40, 0.1), 0 4px 8px 0 rgba(0, 0, 40, 0.1),\n 0 12px 18px 0 rgba(0, 0, 40, 0.1);\n\n #arrow,\n #arrow::before {\n position: absolute;\n width: 8px;\n height: 8px;\n background: inherit;\n }\n\n #arrow {\n visibility: hidden;\n }\n\n #arrow::before {\n visibility: visible;\n content: '';\n transform: rotate(45deg);\n background-color: var(--theme-tootlip--background);\n }\n }\n\n .validation-tooltip > #arrow {\n bottom: -5px;\n\n &::before {\n border-right: 1px solid var(--theme-tooltip--border-color);\n border-bottom: 1px solid var(--theme-tooltip--border-color);\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 */\nimport {\n arrow,\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { Side } from '../dropdown/placement';\n\ntype Position = { x: number; y: number };\n\n/**\n * @slot tooltip-message - Custom tooltip message with html support\n */\n@Component({\n tag: 'ix-validation-tooltip',\n styleUrl: 'validation-tooltip.scss',\n shadow: true,\n})\nexport class ValidationTooltip {\n @Element() hostElement: HTMLIxValidationTooltipElement;\n\n /**\n * Message of the tooltip\n */\n @Prop() message: string;\n\n /**\n * Placement of the tooltip\n */\n @Prop() placement: Side = 'top';\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n @State() isInputValid = true;\n @State() tooltipPosition: Position;\n @State() arrowPosition: Position;\n\n private onSubmitBind = this.onSubmit.bind(this);\n private onInputFocusBind = this.onInputFocus.bind(this);\n private autoUpdateCleanup: () => void;\n private observer: MutationObserver;\n\n get arrow() {\n return this.hostElement.shadowRoot.querySelector('#arrow') as HTMLElement;\n }\n\n get inputElement() {\n return this.hostElement.querySelector('input');\n }\n\n get formElement() {\n return this.inputElement?.form;\n }\n\n get tooltipElement(): HTMLElement {\n return this.hostElement.shadowRoot.querySelector('.validation-tooltip');\n }\n\n private destroyAutoUpdate() {\n if (this.tooltipElement) {\n this.tooltipElement.style.display = 'none';\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n private applyTooltipPosition() {\n this.tooltipElement.style.display = 'block';\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: 'fixed',\n middleware: [\n inline(),\n shift(),\n offset({\n mainAxis: 8,\n }),\n ],\n };\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n positionConfig.placement = this.placement;\n\n this.autoUpdateCleanup = autoUpdate(\n this.inputElement,\n this.tooltipElement,\n async () => {\n positionConfig.middleware = [\n ...positionConfig.middleware,\n arrow({\n element: this.arrow,\n }),\n ];\n const computeResponse = await computePosition(\n this.inputElement,\n this.tooltipElement,\n positionConfig\n );\n\n if (computeResponse.middlewareData.arrow) {\n const { x, y } = computeResponse.middlewareData.arrow;\n this.arrowPosition = {\n x,\n y,\n };\n Object.assign(this.arrow.style, {\n left: x != null ? `${x}px` : '',\n top: y != null ? `${y}px` : '',\n });\n }\n\n this.tooltipPosition = {\n x: computeResponse.x,\n y: computeResponse.y,\n };\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n componentDidLoad() {\n if (!this.inputElement) {\n throw Error(\n 'Validation tooltip is only working with an direct input child.'\n );\n }\n\n if (!this.formElement) {\n throw Error('Validation tooltip is only working with an form element.');\n }\n\n this.formElement.addEventListener('submit', this.onSubmitBind);\n this.inputElement.addEventListener('focus', this.onInputFocusBind);\n\n this.observer = new MutationObserver(() => {\n if (this.inputElement.classList.contains('is-invalid')) {\n this.isInputValid = false;\n this.validationChanged();\n }\n });\n\n this.observer.observe(this.inputElement, {\n childList: false,\n subtree: false,\n attributes: true,\n attributeFilter: ['class'],\n });\n }\n\n private onInputFocus() {\n this.isInputValid = true;\n }\n\n private onSubmit() {\n if (this.formElement.classList.contains('needs-validation')) {\n this.isInputValid = this.inputElement.validity.valid;\n }\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n this.destroyAutoUpdate();\n\n this.formElement?.removeEventListener('submit', this.onSubmitBind);\n this.inputElement?.removeEventListener('focus', this.onInputFocusBind);\n }\n\n @Watch('isInputValid')\n validationChanged() {\n if (!this.isInputValid) {\n this.applyTooltipPosition();\n } else {\n this.destroyAutoUpdate();\n }\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n <div\n role=\"tooltip\"\n style={{\n display: 'none',\n position: 'fixed',\n top: '0',\n left: '0',\n transform: `translate(${Math.round(\n this.tooltipPosition?.x || 0\n )}px,${Math.round(this.tooltipPosition?.y || 0)}px)`,\n }}\n class=\"validation-tooltip text-default\"\n >\n {this.message}\n <slot name=\"tooltip-message\"></slot>\n <div id=\"arrow\"></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-validation-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/validation-tooltip/validation-tooltip.scss?tag=ix-validation-tooltip&encapsulation=shadow","src/components/validation-tooltip/validation-tooltip.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'legacy/fonts';\n\n:host {\n display: inline-block;\n position: relative;\n $padding: 5px;\n width: 100%;\n\n .validation-tooltip {\n background-color: var(--theme-tootlip--background);\n color: var(--theme-tooltip--color);\n padding: $padding 10px;\n border-radius: 4px;\n font-size: 13px;\n border: 1px solid var(--theme-tooltip--border-color);\n box-shadow: 0 0 2px 0 rgba(0, 0, 40, 0.1), 0 4px 8px 0 rgba(0, 0, 40, 0.1),\n 0 12px 18px 0 rgba(0, 0, 40, 0.1);\n\n #arrow,\n #arrow::before {\n position: absolute;\n width: 8px;\n height: 8px;\n background: inherit;\n }\n\n #arrow {\n visibility: hidden;\n }\n\n #arrow::before {\n visibility: visible;\n content: '';\n transform: rotate(45deg);\n background-color: var(--theme-tootlip--background);\n }\n }\n\n .validation-tooltip > #arrow {\n bottom: -5px;\n\n &::before {\n border-right: 1px solid var(--theme-tooltip--border-color);\n border-bottom: 1px solid var(--theme-tooltip--border-color);\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 */\nimport {\n arrow,\n autoUpdate,\n computePosition,\n ComputePositionConfig,\n flip,\n inline,\n offset,\n shift,\n} from '@floating-ui/dom';\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { Side } from '../dropdown/placement';\n\ntype Position = { x: number; y: number };\n\n/**\n * @slot tooltip-message - Custom tooltip message with html support\n */\n@Component({\n tag: 'ix-validation-tooltip',\n styleUrl: 'validation-tooltip.scss',\n shadow: true,\n})\nexport class ValidationTooltip {\n @Element() hostElement!: HTMLIxValidationTooltipElement;\n\n /**\n * Message of the tooltip\n */\n @Prop() message?: string;\n\n /**\n * Placement of the tooltip\n */\n @Prop() placement: Side = 'top';\n\n /**\n * Suppress the automatic placement of the dropdown.\n *\n * @since 2.0.0\n */\n @Prop() suppressAutomaticPlacement = false;\n\n @State() isInputValid = true;\n @State() tooltipPosition?: Position;\n @State() arrowPosition?: Position;\n\n private onSubmitBind = this.onSubmit.bind(this);\n private onInputFocusBind = this.onInputFocus.bind(this);\n private autoUpdateCleanup?: () => void;\n private observer?: MutationObserver;\n\n get arrow() {\n return this.hostElement.shadowRoot!.querySelector('#arrow') as HTMLElement;\n }\n\n get inputElement() {\n return this.hostElement.querySelector('input');\n }\n\n get formElement() {\n return this.inputElement?.form;\n }\n\n get tooltipElement(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector('.validation-tooltip')!;\n }\n\n private destroyAutoUpdate() {\n if (this.tooltipElement) {\n this.tooltipElement.style.display = 'none';\n }\n\n if (this.autoUpdateCleanup) {\n this.autoUpdateCleanup();\n }\n }\n\n private applyTooltipPosition() {\n this.tooltipElement.style.display = 'block';\n\n let positionConfig: Partial<ComputePositionConfig> = {\n strategy: 'fixed',\n middleware: [\n inline(),\n shift(),\n offset({\n mainAxis: 8,\n }),\n ],\n };\n\n if (!positionConfig.middleware) {\n positionConfig.middleware = [];\n }\n\n if (!this.suppressAutomaticPlacement) {\n positionConfig.middleware.push(\n flip({ fallbackStrategy: 'initialPlacement' })\n );\n }\n positionConfig.placement = this.placement;\n\n this.autoUpdateCleanup = autoUpdate(\n this.inputElement!,\n this.tooltipElement,\n async () => {\n positionConfig.middleware = [\n ...positionConfig.middleware!,\n arrow({\n element: this.arrow,\n }),\n ];\n const computeResponse = await computePosition(\n this.inputElement!,\n this.tooltipElement,\n positionConfig\n );\n\n if (computeResponse.middlewareData.arrow) {\n const { x, y } = computeResponse.middlewareData.arrow as {\n x: number;\n y: number;\n };\n this.arrowPosition = {\n x,\n y,\n };\n Object.assign(this.arrow.style, {\n left: x != null ? `${x}px` : '',\n top: y != null ? `${y}px` : '',\n });\n }\n\n this.tooltipPosition = {\n x: computeResponse.x,\n y: computeResponse.y,\n };\n },\n {\n ancestorResize: true,\n ancestorScroll: true,\n elementResize: true,\n }\n );\n }\n\n componentDidLoad() {\n if (!this.inputElement) {\n throw Error(\n 'Validation tooltip is only working with an direct input child.'\n );\n }\n\n if (!this.formElement) {\n throw Error('Validation tooltip is only working with an form element.');\n }\n\n this.formElement.addEventListener('submit', this.onSubmitBind);\n this.inputElement.addEventListener('focus', this.onInputFocusBind);\n\n this.observer = new MutationObserver(() => {\n if (this.inputElement!.classList.contains('is-invalid')) {\n this.isInputValid = false;\n this.validationChanged();\n }\n });\n\n this.observer.observe(this.inputElement, {\n childList: false,\n subtree: false,\n attributes: true,\n attributeFilter: ['class'],\n });\n }\n\n private onInputFocus() {\n this.isInputValid = true;\n }\n\n private onSubmit() {\n if (this.formElement!.classList.contains('needs-validation')) {\n this.isInputValid = this.inputElement!.validity.valid;\n }\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n this.destroyAutoUpdate();\n\n this.formElement?.removeEventListener('submit', this.onSubmitBind);\n this.inputElement?.removeEventListener('focus', this.onInputFocusBind);\n }\n\n @Watch('isInputValid')\n validationChanged() {\n if (!this.isInputValid) {\n this.applyTooltipPosition();\n } else {\n this.destroyAutoUpdate();\n }\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n <div\n role=\"tooltip\"\n style={{\n display: 'none',\n position: 'fixed',\n top: '0',\n left: '0',\n transform: `translate(${Math.round(\n this.tooltipPosition?.x || 0\n )}px,${Math.round(this.tooltipPosition?.y || 0)}px)`,\n }}\n class=\"validation-tooltip text-default\"\n >\n {this.message}\n <slot name=\"tooltip-message\"></slot>\n <div id=\"arrow\"></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -7,6 +7,7 @@ const WorkflowStep = class {
7
7
  constructor(hostRef) {
8
8
  registerInstance(this, hostRef);
9
9
  this.selectedChanged = createEvent(this, "selectedChanged", 7);
10
+ this.customIconSlot = false;
10
11
  this.vertical = false;
11
12
  this.disabled = false;
12
13
  this.status = 'open';
@@ -68,18 +69,18 @@ const WorkflowStep = class {
68
69
  }
69
70
  render() {
70
71
  const icons = !this.customIconSlot ? (h(Fragment, null, h("ix-icon", { color: "color-1", name: this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled', class: "absolute", size: "24" }), h("ix-icon", { color: this.iconColor, name: this.iconName, class: "absolute", size: "24" }))) : null;
71
- return (h(Host, { key: 'c7a9468843919209ac0aea64ec545b06b1ff1c94', class: { 'host-vertical': this.vertical }, onClick: () => this.onStepClick() }, h("div", { key: '8ed70b6fe5c65b483da3fbf557dc175bc7c3d526', tabIndex: 0, class: {
72
+ return (h(Host, { key: '484ce65ed951050c54a3daf605449e09308acb7c', class: { 'host-vertical': this.vertical }, onClick: () => this.onStepClick() }, h("div", { key: '490aeaf08167b8f09e1f190d530852d09bb7ff14', tabIndex: 0, class: {
72
73
  step: true,
73
74
  selected: this.selected,
74
75
  vertical: this.vertical,
75
76
  disabled: this.disabled,
76
77
  clickable: this.clickable && !this.disabled,
77
- } }, h("div", { key: '11667e23f833fc8a05092d13e1df7d3eef0b7e10', class: "wrapper" }, h("div", { key: '0861c819a27d729817f5394c2e79772a38930f5d', class: {
78
+ } }, h("div", { key: '7316aeceb9d686c1a374301c6b3a189c0cf99b81', class: "wrapper" }, h("div", { key: '632b86d733ea490271b55e35709754f2ec45538f', class: {
78
79
  line: true,
79
80
  selected: this.selected,
80
81
  [this.status]: true,
81
82
  [this.position]: true,
82
- } }), h("div", { key: '1a60733de3019590a691c9d46db45369a8b8eca6', class: "iconWrapper" }, icons, h("slot", { key: '031bc2ce3930fb0692bad430e54fffda8d609997', name: "custom-icon" }))), h("div", { key: 'b6dec2578d5517d27c255460d089221f0e2a6ea2', class: "text" }, h("slot", { key: 'dbeb4ebe5075bb2fa92b93978b6864b05154791f' })))));
83
+ } }), h("div", { key: '0f46b7b348bb7592b5fef581b8732ec6e6863c4d', class: "iconWrapper" }, icons, h("slot", { key: '051b8c00079203a2eb57a52104b54c2fc6107a86', name: "custom-icon" }))), h("div", { key: 'd7048ea95b804bc074d35a20d39605928b4c0e93', class: "text" }, h("slot", { key: 'e583bc0231a1aede593925c1f93ea5bb38020938' })))));
83
84
  }
84
85
  get hostElement() { return getElement(this); }
85
86
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ix-workflow-step.entry.js","mappings":"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","names":[],"sources":["src/components/workflow-step/workflow-step.scss?tag=ix-workflow-step&encapsulation=shadow","src/components/workflow-step/workflow-step.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host(:not(.host-vertical)) {\n width: 12rem;\n height: 4rem;\n min-width: 2rem;\n min-height: 4rem;\n max-width: 12rem;\n}\n\n:host(.host-vertical) {\n width: 100%;\n height: 4rem;\n min-width: 4rem;\n min-height: 2rem;\n max-height: 12rem;\n}\n\n:host {\n @include ix-component;\n display: inline-block;\n position: relative;\n\n .step {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: var(--theme-workflow-step--background);\n border-radius: var(--theme-workflow--border-radius);\n padding: 1.125rem 0 $small-space 0;\n\n .wrapper {\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: center;\n position: relative;\n\n .line {\n width: 100%;\n height: 0.125rem;\n background-color: var(--theme-workflow-step-icon-default--color);\n\n &.first,\n &.last {\n width: 50%;\n margin: 0 0 0 auto;\n }\n\n &.last {\n margin: 0 auto 0 0;\n }\n\n &.single {\n width: 0;\n }\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-default--color--selected\n );\n }\n\n &.done {\n background-color: var(--theme-workflow-step-icon-done--color);\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-done--color--selected\n );\n }\n }\n\n &.warning {\n background-color: var(--theme-color-warning);\n }\n\n &.success {\n background-color: var(--theme-color-success);\n }\n\n &.error {\n background-color: var(--theme-color-alarm);\n }\n }\n\n .iconWrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n\n .absolute {\n position: absolute;\n }\n }\n }\n\n .text {\n margin-top: $default-space;\n width: 100%;\n padding: 0 $small-space;\n\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: center;\n }\n\n &.vertical {\n flex-direction: row;\n padding: 0;\n height: 100%;\n\n .wrapper {\n width: auto;\n padding-left: 1.125rem;\n height: 100%;\n\n .line {\n width: 0.125rem;\n height: 100%;\n\n &.first,\n &.last {\n height: 50%;\n margin: auto 0 0 0;\n }\n\n &.last {\n margin: 0 0 auto 0;\n }\n\n &.single {\n width: 0;\n }\n }\n }\n\n .text {\n margin: 0 $default-space;\n padding: 0;\n width: auto;\n }\n }\n\n &.clickable {\n &:hover {\n background-color: var(--theme-workflow-step--background--hover);\n }\n\n &:active {\n background-color: var(--theme-workflow-step--background--active);\n }\n }\n\n &:focus-visible {\n outline: 1px solid var(--focus--border-color);\n border-radius: 0;\n }\n\n &.selected {\n background-color: var(--theme-workflow-step--background--selected);\n }\n\n &.disabled {\n background-color: var(--theme-workflow-step--background--disabled);\n\n .line {\n background-color: var(\n --theme-workflow-step-icon-default--color--disabled\n ) !important;\n }\n\n .text {\n color: var(--theme-workflow-step--color--disabled);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n shadow: true,\n})\nexport class WorkflowStep {\n @Element() hostElement: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop() selected: boolean = false;\n\n /**\n * Activate navigation click\n *\n * @internal\n */\n @Prop() position: 'first' | 'last' | 'single' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n /**\n * @internal\n */\n @Event() selectedChanged: EventEmitter<HTMLIxWorkflowStepElement>;\n\n private customIconSlot: boolean;\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('disabled')\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentWillLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n onStepClick() {\n if (!this.disabled && this.clickable) {\n this.selectedChanged.emit(this.hostElement);\n }\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : null;\n\n return (\n <Host\n class={{ 'host-vertical': this.vertical }}\n onClick={() => this.onStepClick()}\n >\n <div\n tabIndex={0}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n clickable: this.clickable && !this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-workflow-step.entry.js","mappings":"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","names":[],"sources":["src/components/workflow-step/workflow-step.scss?tag=ix-workflow-step&encapsulation=shadow","src/components/workflow-step/workflow-step.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host(:not(.host-vertical)) {\n width: 12rem;\n height: 4rem;\n min-width: 2rem;\n min-height: 4rem;\n max-width: 12rem;\n}\n\n:host(.host-vertical) {\n width: 100%;\n height: 4rem;\n min-width: 4rem;\n min-height: 2rem;\n max-height: 12rem;\n}\n\n:host {\n @include ix-component;\n display: inline-block;\n position: relative;\n\n .step {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: var(--theme-workflow-step--background);\n border-radius: var(--theme-workflow--border-radius);\n padding: 1.125rem 0 $small-space 0;\n\n .wrapper {\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: center;\n position: relative;\n\n .line {\n width: 100%;\n height: 0.125rem;\n background-color: var(--theme-workflow-step-icon-default--color);\n\n &.first,\n &.last {\n width: 50%;\n margin: 0 0 0 auto;\n }\n\n &.last {\n margin: 0 auto 0 0;\n }\n\n &.single {\n width: 0;\n }\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-default--color--selected\n );\n }\n\n &.done {\n background-color: var(--theme-workflow-step-icon-done--color);\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-done--color--selected\n );\n }\n }\n\n &.warning {\n background-color: var(--theme-color-warning);\n }\n\n &.success {\n background-color: var(--theme-color-success);\n }\n\n &.error {\n background-color: var(--theme-color-alarm);\n }\n }\n\n .iconWrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n\n .absolute {\n position: absolute;\n }\n }\n }\n\n .text {\n margin-top: $default-space;\n width: 100%;\n padding: 0 $small-space;\n\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: center;\n }\n\n &.vertical {\n flex-direction: row;\n padding: 0;\n height: 100%;\n\n .wrapper {\n width: auto;\n padding-left: 1.125rem;\n height: 100%;\n\n .line {\n width: 0.125rem;\n height: 100%;\n\n &.first,\n &.last {\n height: 50%;\n margin: auto 0 0 0;\n }\n\n &.last {\n margin: 0 0 auto 0;\n }\n\n &.single {\n width: 0;\n }\n }\n }\n\n .text {\n margin: 0 $default-space;\n padding: 0;\n width: auto;\n }\n }\n\n &.clickable {\n &:hover {\n background-color: var(--theme-workflow-step--background--hover);\n }\n\n &:active {\n background-color: var(--theme-workflow-step--background--active);\n }\n }\n\n &:focus-visible {\n outline: 1px solid var(--focus--border-color);\n border-radius: 0;\n }\n\n &.selected {\n background-color: var(--theme-workflow-step--background--selected);\n }\n\n &.disabled {\n background-color: var(--theme-workflow-step--background--disabled);\n\n .line {\n background-color: var(\n --theme-workflow-step-icon-default--color--disabled\n ) !important;\n }\n\n .text {\n color: var(--theme-workflow-step--color--disabled);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n shadow: true,\n})\nexport class WorkflowStep {\n @Element() hostElement!: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop() selected: boolean = false;\n\n /**\n * Activate navigation click\n *\n * @internal\n */\n @Prop() position: 'first' | 'last' | 'single' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n /**\n * @internal\n */\n @Event() selectedChanged!: EventEmitter<HTMLIxWorkflowStepElement>;\n\n private customIconSlot: boolean = false;\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('disabled')\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentWillLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n onStepClick() {\n if (!this.disabled && this.clickable) {\n this.selectedChanged.emit(this.hostElement);\n }\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : null;\n\n return (\n <Host\n class={{ 'host-vertical': this.vertical }}\n onClick={() => this.onStepClick()}\n >\n <div\n tabIndex={0}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n clickable: this.clickable && !this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -70,7 +70,7 @@ const WorkflowSteps = class {
70
70
  this.updateSteps();
71
71
  }
72
72
  render() {
73
- return (h(Host, { key: '66d54af6c64b30b77aeb613c12fca16b9f4db815' }, h("div", { key: 'c808cfa588110a8df4d2266cc55e6211a0afb697', class: { steps: true, vertical: this.vertical } }, h("slot", { key: 'f713ffae56fdb063c5161965581f19eaef5798d3' }))));
73
+ return (h(Host, { key: '192c534bab7bc83c33b9c479817b9bec7967f759' }, h("div", { key: '9b35cb1aa638c73acf3cca0fb359e4b26ed8004e', class: { steps: true, vertical: this.vertical } }, h("slot", { key: '5feb3ad4a26faed8f4071673980ab1bb3fe27970' }))));
74
74
  }
75
75
  get hostElement() { return getElement(this); }
76
76
  };