@siemens/ix 0.0.0-pr-2155-20250924075220 → 0.0.0-pr-2166-20251001083917

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 (786) hide show
  1. package/components/index.js +1 -1
  2. package/components/index.js.map +1 -1
  3. package/components/ix-action-card.js +1 -1
  4. package/components/ix-application-header.js +1 -1
  5. package/components/ix-application-switch-modal.js +4 -4
  6. package/components/ix-application.js +1 -1
  7. package/components/ix-avatar.js +1 -1
  8. package/components/ix-basic-navigation.js +6 -6
  9. package/components/ix-blind.js +1 -1
  10. package/components/ix-breadcrumb-item.js +1 -1
  11. package/components/ix-breadcrumb.js +9 -9
  12. package/components/ix-breadcrumb.js.map +1 -1
  13. package/components/ix-card-list.js +8 -8
  14. package/components/ix-card-list.js.map +1 -1
  15. package/components/ix-category-filter.js +14 -23
  16. package/components/ix-category-filter.js.map +1 -1
  17. package/components/ix-checkbox-group.js +4 -4
  18. package/components/ix-checkbox.js +1 -1
  19. package/components/ix-chip.js +12 -13
  20. package/components/ix-chip.js.map +1 -1
  21. package/components/ix-content-header.js +2 -2
  22. package/components/ix-custom-field.js +4 -4
  23. package/components/ix-date-dropdown.js +18 -18
  24. package/components/ix-date-dropdown.js.map +1 -1
  25. package/components/ix-date-input.js +10 -10
  26. package/components/ix-date-input.js.map +1 -1
  27. package/components/ix-date-picker.js +1 -1
  28. package/components/ix-date-time-card.js +1 -1
  29. package/components/ix-datetime-picker.js +12 -33
  30. package/components/ix-datetime-picker.js.map +1 -1
  31. package/components/ix-drawer.js +7 -6
  32. package/components/ix-drawer.js.map +1 -1
  33. package/components/ix-dropdown-button.js +2 -2
  34. package/components/ix-dropdown-header.js +1 -1
  35. package/components/ix-dropdown.js +1 -1
  36. package/components/ix-empty-state.js +1 -1
  37. package/components/ix-event-list-item.js.map +1 -1
  38. package/components/ix-event-list.js +4 -4
  39. package/components/ix-event-list.js.map +1 -1
  40. package/components/ix-expanding-search.js +1 -1
  41. package/components/ix-field-label.js +1 -1
  42. package/components/ix-field-wrapper.js +1 -1
  43. package/components/ix-filter-chip.js +1 -1
  44. package/components/ix-flip-tile.js +1 -1
  45. package/components/ix-group-context-menu.js +1 -1
  46. package/components/ix-group-item.js +1 -1
  47. package/components/ix-group.js +23 -23
  48. package/components/ix-group.js.map +1 -1
  49. package/components/ix-helper-text.js +2 -2
  50. package/components/ix-icon-button.js +1 -1
  51. package/components/ix-icon-toggle-button.js +1 -1
  52. package/components/ix-input.js +9 -9
  53. package/components/ix-key-value-list.js +1 -1
  54. package/components/ix-key-value.js +1 -1
  55. package/components/ix-kpi.js +3 -3
  56. package/components/ix-layout-auto.js +1 -1
  57. package/components/ix-layout-grid.js +1 -1
  58. package/components/ix-link-button.js +3 -3
  59. package/components/ix-map-navigation-overlay.js +1 -1
  60. package/components/ix-map-navigation.js +9 -8
  61. package/components/ix-map-navigation.js.map +1 -1
  62. package/components/ix-menu-about-item.js +1 -1
  63. package/components/ix-menu-about-news.js +8 -8
  64. package/components/ix-menu-about-news.js.map +1 -1
  65. package/components/ix-menu-about.js +2 -2
  66. package/components/ix-menu-avatar-item.js +1 -1
  67. package/components/ix-menu-avatar.js +12 -12
  68. package/components/ix-menu-avatar.js.map +1 -1
  69. package/components/ix-menu-category.js +9 -9
  70. package/components/ix-menu-expand-icon.js +1 -1
  71. package/components/ix-menu-item.js +1 -1
  72. package/components/ix-menu-settings-item.js +1 -1
  73. package/components/ix-menu-settings.js +1 -1
  74. package/components/ix-menu.js +29 -29
  75. package/components/ix-menu.js.map +1 -1
  76. package/components/ix-message-bar.js +6 -8
  77. package/components/ix-message-bar.js.map +1 -1
  78. package/components/ix-modal-content.js +1 -1
  79. package/components/ix-modal-footer.js +1 -1
  80. package/components/ix-modal-header.js +1 -1
  81. package/components/ix-modal-loading.js +1 -1
  82. package/components/ix-modal.js +16 -16
  83. package/components/ix-modal.js.map +1 -1
  84. package/components/ix-number-input.js +11 -11
  85. package/components/ix-pagination.js +20 -21
  86. package/components/ix-pagination.js.map +1 -1
  87. package/components/ix-pane-layout.js +1 -1
  88. package/components/ix-pane.js +9 -9
  89. package/components/ix-pane.js.map +1 -1
  90. package/components/ix-pill.js +2 -2
  91. package/components/ix-progress-indicator.js +2 -2
  92. package/components/ix-push-card.js +5 -5
  93. package/components/ix-push-card.js.map +1 -1
  94. package/components/ix-radio-group.js +4 -4
  95. package/components/ix-radio.js +1 -1
  96. package/components/ix-select.js +1 -1
  97. package/components/ix-slider.js +3 -3
  98. package/components/ix-slider.js.map +1 -1
  99. package/components/ix-split-button.js +2 -2
  100. package/components/ix-textarea.js +6 -6
  101. package/components/ix-time-input.js +9 -9
  102. package/components/ix-time-input.js.map +1 -1
  103. package/components/ix-time-picker.js +1 -1
  104. package/components/ix-toast-container.js +8 -8
  105. package/components/ix-toast-container.js.map +1 -1
  106. package/components/ix-toast.js +1 -1
  107. package/components/ix-toggle.js +4 -4
  108. package/components/ix-tooltip.js +1 -1
  109. package/components/ix-tree-item.js +1 -1
  110. package/components/ix-tree.js +2 -2
  111. package/components/ix-typography.js +1 -1
  112. package/components/ix-upload.js +5 -5
  113. package/components/ix-upload.js.map +1 -1
  114. package/components/ix-workflow-step.js +3 -3
  115. package/components/ix-workflow-steps.js +1 -1
  116. package/components/{p-BFuOBAQB.js → p-7-Wnr7e5.js} +6 -12
  117. package/components/p-7-Wnr7e5.js.map +1 -0
  118. package/components/{p-DG42PUVX.js → p-BLcKiU45.js} +3 -3
  119. package/components/{p-DG42PUVX.js.map → p-BLcKiU45.js.map} +1 -1
  120. package/components/{p-DJ6v85WG.js → p-BNYHD56q.js} +23 -23
  121. package/components/p-BNYHD56q.js.map +1 -0
  122. package/components/{p-Dauav1c7.js → p-BU9xngEb.js} +7 -7
  123. package/components/{p-Dauav1c7.js.map → p-BU9xngEb.js.map} +1 -1
  124. package/components/{p-DRlGkOeX.js → p-Ba6JlSP8.js} +5 -5
  125. package/components/{p-DRlGkOeX.js.map → p-Ba6JlSP8.js.map} +1 -1
  126. package/components/{p-BSiqAMAr.js → p-Baga5bu5.js} +6 -6
  127. package/components/{p-BSiqAMAr.js.map → p-Baga5bu5.js.map} +1 -1
  128. package/components/{p-B3IsQckh.js → p-Bc15ecXv.js} +12 -12
  129. package/components/p-Bc15ecXv.js.map +1 -0
  130. package/components/{p-CGPMGyof.js → p-BmLRwuMH.js} +5 -6
  131. package/components/p-BmLRwuMH.js.map +1 -0
  132. package/components/{p-B5cVFUyk.js → p-BruPthTZ.js} +15 -69
  133. package/components/p-BruPthTZ.js.map +1 -0
  134. package/components/{p-BrgHqrnH.js → p-C4MK63gz.js} +3 -3
  135. package/components/{p-BrgHqrnH.js.map → p-C4MK63gz.js.map} +1 -1
  136. package/components/{p-CrIOsOo-.js → p-C8wXJCK3.js} +3 -3
  137. package/components/{p-CrIOsOo-.js.map → p-C8wXJCK3.js.map} +1 -1
  138. package/components/{p-GkRC08qs.js → p-CfOUCcs9.js} +3 -3
  139. package/components/{p-GkRC08qs.js.map → p-CfOUCcs9.js.map} +1 -1
  140. package/{dist/esm/floating-ui.dom-CAqtPJ4-.js → components/p-CiSM2A9Q.js} +102 -3
  141. package/components/p-CiSM2A9Q.js.map +1 -0
  142. package/components/{p-BpW9tS2k.js → p-Cx5H0GeI.js} +21 -21
  143. package/components/p-Cx5H0GeI.js.map +1 -0
  144. package/components/{p-C3irznVN.js → p-D3ZlTDAF.js} +3 -3
  145. package/components/{p-C3irznVN.js.map → p-D3ZlTDAF.js.map} +1 -1
  146. package/components/{p-CwwKrs4u.js → p-DE74-VWH.js} +9 -9
  147. package/components/p-DE74-VWH.js.map +1 -0
  148. package/components/{p-Bquk45CV.js → p-DLcItN6d.js} +3 -3
  149. package/components/{p-Bquk45CV.js.map → p-DLcItN6d.js.map} +1 -1
  150. package/components/{p-BybP_RcT.js → p-DOGuJxKg.js} +5 -5
  151. package/components/{p-BybP_RcT.js.map → p-DOGuJxKg.js.map} +1 -1
  152. package/components/{p-DZNnQyWO.js → p-DSF854K6.js} +3 -4
  153. package/components/p-DSF854K6.js.map +1 -0
  154. package/components/p-DVPJHakC.js +78 -0
  155. package/components/p-DVPJHakC.js.map +1 -0
  156. package/components/{p-C-7UhkWz.js → p-DaR6pX8w.js} +8 -8
  157. package/components/{p-C-7UhkWz.js.map → p-DaR6pX8w.js.map} +1 -1
  158. package/components/{p-8MS-omi7.js → p-DklPCkRW.js} +3 -3
  159. package/components/{p-8MS-omi7.js.map → p-DklPCkRW.js.map} +1 -1
  160. package/components/{p-BeegOhta.js → p-Fbu6eUjk.js} +4 -4
  161. package/components/{p-BeegOhta.js.map → p-Fbu6eUjk.js.map} +1 -1
  162. package/components/{p-ma_KYqKk.js → p-bBkFZC8X.js} +3 -3
  163. package/components/{p-ma_KYqKk.js.map → p-bBkFZC8X.js.map} +1 -1
  164. package/components/{p-CzzcLSmV.js → p-gkooEHol.js} +4 -4
  165. package/components/p-gkooEHol.js.map +1 -0
  166. package/components/{p-ClGItuSn.js → p-ts3VxLYi.js} +5 -5
  167. package/components/{p-ClGItuSn.js.map → p-ts3VxLYi.js.map} +1 -1
  168. package/components/{p-CMk-tLmg.js → p-uiKHewyI.js} +4 -4
  169. package/components/{p-CMk-tLmg.js.map → p-uiKHewyI.js.map} +1 -1
  170. package/components/{p-fDEynhA5.js → p-w319yPRv.js} +5 -5
  171. package/components/{p-fDEynhA5.js.map → p-w319yPRv.js.map} +1 -1
  172. package/dist/cjs/{floating-ui.dom-CMzYsRR7.js → find-element-BNZJcvT8.js} +103 -2
  173. package/dist/cjs/find-element-BNZJcvT8.js.map +1 -0
  174. package/dist/cjs/index-DuDLgBnw.js +0 -8
  175. package/dist/cjs/index.cjs.js +1 -1
  176. package/dist/cjs/index.cjs.js.map +1 -1
  177. package/dist/cjs/ix-application-header.cjs.entry.js +1 -1
  178. package/dist/cjs/ix-application.cjs.entry.js +1 -1
  179. package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
  180. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  181. package/dist/cjs/ix-basic-navigation.cjs.entry.js +1 -1
  182. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +7 -7
  183. package/dist/cjs/ix-breadcrumb-item.entry.cjs.js.map +1 -1
  184. package/dist/cjs/ix-breadcrumb.cjs.entry.js +6 -6
  185. package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
  186. package/dist/cjs/ix-card-list.cjs.entry.js +4 -4
  187. package/dist/cjs/ix-card-list.entry.cjs.js.map +1 -1
  188. package/dist/cjs/ix-category-filter.cjs.entry.js +9 -17
  189. package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
  190. package/dist/cjs/ix-chip.cjs.entry.js +8 -9
  191. package/dist/cjs/ix-chip.entry.cjs.js.map +1 -1
  192. package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
  193. package/dist/cjs/ix-col_4.cjs.entry.js +18 -18
  194. package/dist/cjs/ix-date-dropdown.cjs.entry.js +11 -11
  195. package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
  196. package/dist/cjs/ix-date-input.cjs.entry.js +2 -2
  197. package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
  198. package/dist/cjs/ix-date-time-card.cjs.entry.js +3 -8
  199. package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
  200. package/dist/cjs/ix-datetime-picker.cjs.entry.js +3 -21
  201. package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
  202. package/dist/cjs/ix-drawer.cjs.entry.js +6 -5
  203. package/dist/cjs/ix-drawer.entry.cjs.js.map +1 -1
  204. package/dist/cjs/ix-dropdown.cjs.entry.js +7 -8
  205. package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
  206. package/dist/cjs/ix-event-list-item.entry.cjs.js.map +1 -1
  207. package/dist/cjs/ix-event-list.cjs.entry.js +4 -4
  208. package/dist/cjs/ix-event-list.entry.cjs.js.map +1 -1
  209. package/dist/cjs/ix-group-context-menu.ix-group-item.entry.cjs.js.map +1 -1
  210. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +18 -5
  211. package/dist/cjs/ix-group.cjs.entry.js +18 -18
  212. package/dist/cjs/ix-group.entry.cjs.js.map +1 -1
  213. package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
  214. package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
  215. package/dist/cjs/ix-icon-button_2.cjs.entry.js +1 -1
  216. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  217. package/dist/cjs/ix-input.cjs.entry.js +4 -4
  218. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  219. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  220. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  221. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  222. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  223. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  224. package/dist/cjs/ix-map-navigation.cjs.entry.js +3 -2
  225. package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
  226. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  227. package/dist/cjs/ix-menu-about-news.cjs.entry.js +5 -5
  228. package/dist/cjs/ix-menu-about-news.entry.cjs.js.map +1 -1
  229. package/dist/cjs/ix-menu-avatar.cjs.entry.js +5 -5
  230. package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
  231. package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
  232. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  233. package/dist/cjs/ix-menu-item.cjs.entry.js +4 -4
  234. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  235. package/dist/cjs/ix-menu.cjs.entry.js +18 -17
  236. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  237. package/dist/cjs/ix-message-bar.cjs.entry.js +4 -6
  238. package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
  239. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  240. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  241. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  242. package/dist/cjs/ix-modal.cjs.entry.js +13 -13
  243. package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
  244. package/dist/cjs/ix-number-input.cjs.entry.js +6 -6
  245. package/dist/cjs/ix-pagination.cjs.entry.js +8 -9
  246. package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
  247. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  248. package/dist/cjs/ix-pane.cjs.entry.js +7 -7
  249. package/dist/cjs/ix-pane.entry.cjs.js.map +1 -1
  250. package/dist/cjs/ix-push-card.cjs.entry.js +3 -3
  251. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  252. package/dist/cjs/ix-select.cjs.entry.js +8 -8
  253. package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
  254. package/dist/cjs/ix-slider.cjs.entry.js +1 -1
  255. package/dist/cjs/ix-slider.entry.cjs.js.map +1 -1
  256. package/dist/cjs/ix-textarea.cjs.entry.js +2 -2
  257. package/dist/cjs/ix-time-input.cjs.entry.js +1 -1
  258. package/dist/cjs/ix-time-input.entry.cjs.js.map +1 -1
  259. package/dist/cjs/ix-time-picker.cjs.entry.js +10 -58
  260. package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
  261. package/dist/cjs/ix-toast-container.cjs.entry.js +5 -5
  262. package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
  263. package/dist/cjs/ix-toast.cjs.entry.js +4 -4
  264. package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
  265. package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
  266. package/dist/cjs/ix-tooltip.cjs.entry.js +9 -10
  267. package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
  268. package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
  269. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  270. package/dist/cjs/ix-typography.cjs.entry.js +1 -1
  271. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  272. package/dist/cjs/ix-upload.entry.cjs.js.map +1 -1
  273. package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
  274. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  275. package/dist/cjs/loader.cjs.js +1 -1
  276. package/dist/cjs/{service-FGbUpQQM.js → service-DuiJmf7R.js} +4 -4
  277. package/dist/cjs/service-DuiJmf7R.js.map +1 -0
  278. package/dist/cjs/siemens-ix.cjs.js +1 -1
  279. package/dist/collection/collection-manifest.json +0 -2
  280. package/dist/collection/components/avatar/avatar.js +1 -1
  281. package/dist/collection/components/avatar/avatar.js.map +1 -1
  282. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -9
  283. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  284. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +16 -16
  285. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  286. package/dist/collection/components/card-list/card-list.js +6 -6
  287. package/dist/collection/components/card-list/card-list.js.map +1 -1
  288. package/dist/collection/components/category-filter/category-filter.js +15 -46
  289. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  290. package/dist/collection/components/chip/chip.js +12 -13
  291. package/dist/collection/components/chip/chip.js.map +1 -1
  292. package/dist/collection/components/date-dropdown/date-dropdown.js +19 -19
  293. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  294. package/dist/collection/components/date-input/date-input.js +2 -2
  295. package/dist/collection/components/date-input/date-input.js.map +1 -1
  296. package/dist/collection/components/date-picker/date-picker-component.js.map +1 -1
  297. package/dist/collection/components/date-picker/date-picker.js +23 -23
  298. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  299. package/dist/collection/components/date-time-card/date-time-card.js +5 -30
  300. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  301. package/dist/collection/components/datetime-picker/datetime-picker.js +8 -95
  302. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  303. package/dist/collection/components/drawer/drawer.js +6 -5
  304. package/dist/collection/components/drawer/drawer.js.map +1 -1
  305. package/dist/collection/components/event-list/event-list.js +6 -6
  306. package/dist/collection/components/event-list/event-list.js.map +1 -1
  307. package/dist/collection/components/group/group.css +12 -0
  308. package/dist/collection/components/group/group.js +23 -23
  309. package/dist/collection/components/group/group.js.map +1 -1
  310. package/dist/collection/components/group-item/group-item.css +22 -6
  311. package/dist/collection/components/group-item/group-item.js +44 -8
  312. package/dist/collection/components/group-item/group-item.js.map +1 -1
  313. package/dist/collection/components/helper-text/helper-text.js +1 -1
  314. package/dist/collection/components/icon-button/icon-button.js +2 -2
  315. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  316. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  317. package/dist/collection/components/input/input.js +4 -4
  318. package/dist/collection/components/input/number-input.js +6 -6
  319. package/dist/collection/components/input/textarea.js +2 -2
  320. package/dist/collection/components/key-value/key-value.js +1 -1
  321. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  322. package/dist/collection/components/kpi/kpi.js +3 -3
  323. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  324. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  325. package/dist/collection/components/link-button/link-button.js +3 -3
  326. package/dist/collection/components/map-navigation/map-navigation.js +3 -2
  327. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  328. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  329. package/dist/collection/components/menu/menu-expand-icon.js +1 -1
  330. package/dist/collection/components/menu/menu.js +28 -47
  331. package/dist/collection/components/menu/menu.js.map +1 -1
  332. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  333. package/dist/collection/components/menu-about-news/menu-about-news.js +7 -7
  334. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
  335. package/dist/collection/components/menu-avatar/menu-avatar.js +10 -10
  336. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  337. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  338. package/dist/collection/components/menu-category/menu-category.js +5 -5
  339. package/dist/collection/components/menu-item/menu-item.js +4 -4
  340. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  341. package/dist/collection/components/message-bar/message-bar.js +11 -16
  342. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  343. package/dist/collection/components/modal/modal.js +29 -29
  344. package/dist/collection/components/modal/modal.js.map +1 -1
  345. package/dist/collection/components/modal-content/modal-content.js +1 -1
  346. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  347. package/dist/collection/components/modal-header/modal-header.js +1 -1
  348. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  349. package/dist/collection/components/pagination/pagination.js +18 -19
  350. package/dist/collection/components/pagination/pagination.js.map +1 -1
  351. package/dist/collection/components/pane/pane.js +6 -6
  352. package/dist/collection/components/pane/pane.js.map +1 -1
  353. package/dist/collection/components/push-card/push-card.js +7 -7
  354. package/dist/collection/components/push-card/push-card.js.map +1 -1
  355. package/dist/collection/components/select/select.js +12 -12
  356. package/dist/collection/components/select/select.js.map +1 -1
  357. package/dist/collection/components/slider/slider.css +3 -3
  358. package/dist/collection/components/time-input/time-input.js +1 -1
  359. package/dist/collection/components/time-input/time-input.js.map +1 -1
  360. package/dist/collection/components/time-picker/time-picker.js +14 -199
  361. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  362. package/dist/collection/components/toast/toast-container.js +5 -5
  363. package/dist/collection/components/toast/toast-container.js.map +1 -1
  364. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  365. package/dist/collection/components/toast/toast.js +7 -7
  366. package/dist/collection/components/toast/toast.js.map +1 -1
  367. package/dist/collection/components/toggle/toggle.js +3 -3
  368. package/dist/collection/components/tooltip/tooltip.js +1 -1
  369. package/dist/collection/components/tree/tree.js +1 -1
  370. package/dist/collection/components/tree-item/tree-item.js +4 -4
  371. package/dist/collection/components/typography/typography.js +1 -1
  372. package/dist/collection/components/upload/upload.js +5 -5
  373. package/dist/collection/components/upload/upload.js.map +1 -1
  374. package/dist/collection/components/utils/application-layout/service.js +2 -2
  375. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  376. package/dist/collection/components/utils/modal/loading.js +1 -1
  377. package/dist/collection/components/utils/modal/loading.js.map +1 -1
  378. package/dist/collection/components/workflow-step/workflow-step.js +3 -3
  379. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  380. package/dist/collection/tests/utils/test/page.js +2 -2
  381. package/dist/collection/tests/utils/test/page.js.map +1 -1
  382. package/{components/p-CAqtPJ4-.js → dist/esm/find-element-CiSM2A9Q.js} +102 -3
  383. package/dist/esm/find-element-CiSM2A9Q.js.map +1 -0
  384. package/dist/esm/index-DGODjp4O.js +0 -8
  385. package/dist/esm/index.js +1 -1
  386. package/dist/esm/index.js.map +1 -1
  387. package/dist/esm/ix-application-header.entry.js +1 -1
  388. package/dist/esm/ix-application.entry.js +1 -1
  389. package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
  390. package/dist/esm/ix-avatar_2.entry.js +1 -1
  391. package/dist/esm/ix-basic-navigation.entry.js +1 -1
  392. package/dist/esm/ix-breadcrumb-item.entry.js +7 -7
  393. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  394. package/dist/esm/ix-breadcrumb.entry.js +6 -6
  395. package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
  396. package/dist/esm/ix-card-list.entry.js +4 -4
  397. package/dist/esm/ix-card-list.entry.js.map +1 -1
  398. package/dist/esm/ix-category-filter.entry.js +9 -17
  399. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  400. package/dist/esm/ix-chip.entry.js +8 -9
  401. package/dist/esm/ix-chip.entry.js.map +1 -1
  402. package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
  403. package/dist/esm/ix-col_4.entry.js +18 -18
  404. package/dist/esm/ix-date-dropdown.entry.js +11 -11
  405. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  406. package/dist/esm/ix-date-input.entry.js +2 -2
  407. package/dist/esm/ix-date-input.entry.js.map +1 -1
  408. package/dist/esm/ix-date-time-card.entry.js +3 -8
  409. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  410. package/dist/esm/ix-datetime-picker.entry.js +3 -21
  411. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  412. package/dist/esm/ix-drawer.entry.js +6 -5
  413. package/dist/esm/ix-drawer.entry.js.map +1 -1
  414. package/dist/esm/ix-dropdown.entry.js +1 -2
  415. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  416. package/dist/esm/ix-event-list-item.entry.js.map +1 -1
  417. package/dist/esm/ix-event-list.entry.js +4 -4
  418. package/dist/esm/ix-event-list.entry.js.map +1 -1
  419. package/dist/esm/ix-group-context-menu.ix-group-item.entry.js.map +1 -1
  420. package/dist/esm/ix-group-context-menu_2.entry.js +18 -5
  421. package/dist/esm/ix-group.entry.js +19 -19
  422. package/dist/esm/ix-group.entry.js.map +1 -1
  423. package/dist/esm/ix-helper-text.entry.js +1 -1
  424. package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
  425. package/dist/esm/ix-icon-button_2.entry.js +1 -1
  426. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  427. package/dist/esm/ix-input.entry.js +4 -4
  428. package/dist/esm/ix-key-value-list.entry.js +1 -1
  429. package/dist/esm/ix-key-value.entry.js +1 -1
  430. package/dist/esm/ix-kpi.entry.js +3 -3
  431. package/dist/esm/ix-layout-auto.entry.js +1 -1
  432. package/dist/esm/ix-link-button.entry.js +3 -3
  433. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  434. package/dist/esm/ix-map-navigation.entry.js +3 -2
  435. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  436. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  437. package/dist/esm/ix-menu-about-news.entry.js +5 -5
  438. package/dist/esm/ix-menu-about-news.entry.js.map +1 -1
  439. package/dist/esm/ix-menu-avatar.entry.js +5 -5
  440. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  441. package/dist/esm/ix-menu-category.entry.js +5 -5
  442. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  443. package/dist/esm/ix-menu-item.entry.js +4 -4
  444. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  445. package/dist/esm/ix-menu.entry.js +18 -17
  446. package/dist/esm/ix-menu.entry.js.map +1 -1
  447. package/dist/esm/ix-message-bar.entry.js +4 -6
  448. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  449. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  450. package/dist/esm/ix-modal-footer.entry.js +1 -1
  451. package/dist/esm/ix-modal-loading.entry.js +1 -1
  452. package/dist/esm/ix-modal.entry.js +13 -13
  453. package/dist/esm/ix-modal.entry.js.map +1 -1
  454. package/dist/esm/ix-number-input.entry.js +6 -6
  455. package/dist/esm/ix-pagination.entry.js +8 -9
  456. package/dist/esm/ix-pagination.entry.js.map +1 -1
  457. package/dist/esm/ix-pane-layout.entry.js +1 -1
  458. package/dist/esm/ix-pane.entry.js +7 -7
  459. package/dist/esm/ix-pane.entry.js.map +1 -1
  460. package/dist/esm/ix-push-card.entry.js +3 -3
  461. package/dist/esm/ix-push-card.entry.js.map +1 -1
  462. package/dist/esm/ix-select.entry.js +8 -8
  463. package/dist/esm/ix-select.entry.js.map +1 -1
  464. package/dist/esm/ix-slider.entry.js +1 -1
  465. package/dist/esm/ix-slider.entry.js.map +1 -1
  466. package/dist/esm/ix-textarea.entry.js +2 -2
  467. package/dist/esm/ix-time-input.entry.js +1 -1
  468. package/dist/esm/ix-time-input.entry.js.map +1 -1
  469. package/dist/esm/ix-time-picker.entry.js +10 -58
  470. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  471. package/dist/esm/ix-toast-container.entry.js +5 -5
  472. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  473. package/dist/esm/ix-toast.entry.js +4 -4
  474. package/dist/esm/ix-toast.entry.js.map +1 -1
  475. package/dist/esm/ix-toggle.entry.js +3 -3
  476. package/dist/esm/ix-tooltip.entry.js +2 -3
  477. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  478. package/dist/esm/ix-tree-item.entry.js +4 -4
  479. package/dist/esm/ix-tree.entry.js +1 -1
  480. package/dist/esm/ix-typography.entry.js +1 -1
  481. package/dist/esm/ix-upload.entry.js +3 -3
  482. package/dist/esm/ix-upload.entry.js.map +1 -1
  483. package/dist/esm/ix-workflow-step.entry.js +3 -3
  484. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  485. package/dist/esm/loader.js +1 -1
  486. package/dist/esm/{service-ktcE7NzB.js → service-Da0kv8hS.js} +4 -4
  487. package/dist/esm/service-Da0kv8hS.js.map +1 -0
  488. package/dist/esm/siemens-ix.js +1 -1
  489. package/dist/siemens-ix/index.esm.js +1 -1
  490. package/dist/siemens-ix/index.esm.js.map +1 -1
  491. package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
  492. package/dist/siemens-ix/ix-breadcrumb-item.entry.esm.js.map +1 -1
  493. package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
  494. package/dist/siemens-ix/ix-card-list.entry.esm.js.map +1 -1
  495. package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
  496. package/dist/siemens-ix/ix-chip.entry.esm.js.map +1 -1
  497. package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
  498. package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
  499. package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
  500. package/dist/siemens-ix/ix-date-time-card.entry.esm.js.map +1 -1
  501. package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
  502. package/dist/siemens-ix/ix-drawer.entry.esm.js.map +1 -1
  503. package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
  504. package/dist/siemens-ix/ix-event-list-item.entry.esm.js.map +1 -1
  505. package/dist/siemens-ix/ix-event-list.entry.esm.js.map +1 -1
  506. package/dist/siemens-ix/ix-group-context-menu.ix-group-item.entry.esm.js.map +1 -1
  507. package/dist/siemens-ix/ix-group.entry.esm.js.map +1 -1
  508. package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
  509. package/dist/siemens-ix/ix-map-navigation.entry.esm.js.map +1 -1
  510. package/dist/siemens-ix/ix-menu-about-news.entry.esm.js.map +1 -1
  511. package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
  512. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  513. package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
  514. package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
  515. package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
  516. package/dist/siemens-ix/ix-pane.entry.esm.js.map +1 -1
  517. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  518. package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
  519. package/dist/siemens-ix/ix-slider.entry.esm.js.map +1 -1
  520. package/dist/siemens-ix/ix-time-input.entry.esm.js.map +1 -1
  521. package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
  522. package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
  523. package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
  524. package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
  525. package/dist/siemens-ix/ix-upload.entry.esm.js.map +1 -1
  526. package/dist/siemens-ix/{p-90bd8d7b.entry.js → p-0ba7d263.entry.js} +2 -2
  527. package/dist/siemens-ix/{p-f455c56a.entry.js → p-111687a2.entry.js} +2 -2
  528. package/dist/siemens-ix/{p-c418674c.entry.js → p-13fb0104.entry.js} +2 -2
  529. package/dist/siemens-ix/{p-c418674c.entry.js.map → p-13fb0104.entry.js.map} +1 -1
  530. package/dist/siemens-ix/{p-8b3cfb2d.entry.js → p-1ac88556.entry.js} +2 -2
  531. package/dist/siemens-ix/{p-95d4d849.entry.js → p-1bd1380b.entry.js} +2 -2
  532. package/dist/siemens-ix/{p-5849a210.entry.js → p-1cd4280f.entry.js} +2 -2
  533. package/dist/siemens-ix/{p-48b0fef4.entry.js → p-2041357d.entry.js} +2 -2
  534. package/dist/siemens-ix/{p-fbd896c5.entry.js → p-21106fcd.entry.js} +2 -2
  535. package/dist/siemens-ix/p-21106fcd.entry.js.map +1 -0
  536. package/dist/siemens-ix/{p-52dc3ba0.entry.js → p-28fe8512.entry.js} +2 -2
  537. package/dist/siemens-ix/{p-4263f3b6.entry.js → p-2b046df5.entry.js} +2 -2
  538. package/dist/siemens-ix/{p-71e94914.entry.js → p-32203c19.entry.js} +2 -2
  539. package/dist/siemens-ix/p-32203c19.entry.js.map +1 -0
  540. package/dist/siemens-ix/{p-1b2e4b8f.entry.js → p-331f1b60.entry.js} +2 -2
  541. package/dist/siemens-ix/{p-99ad8022.entry.js → p-38f9b6e2.entry.js} +2 -2
  542. package/dist/siemens-ix/p-38f9b6e2.entry.js.map +1 -0
  543. package/dist/siemens-ix/p-3f06687e.entry.js +2 -0
  544. package/dist/siemens-ix/p-3f06687e.entry.js.map +1 -0
  545. package/dist/siemens-ix/{p-92032674.entry.js → p-566a58f4.entry.js} +2 -2
  546. package/dist/siemens-ix/p-566a58f4.entry.js.map +1 -0
  547. package/dist/siemens-ix/p-5d48f9cb.entry.js +2 -0
  548. package/dist/siemens-ix/p-5d48f9cb.entry.js.map +1 -0
  549. package/dist/siemens-ix/p-5f7943f2.entry.js +2 -0
  550. package/dist/siemens-ix/{p-d0d972c2.entry.js.map → p-5f7943f2.entry.js.map} +1 -1
  551. package/dist/siemens-ix/{p-85727880.entry.js → p-639d0d7f.entry.js} +2 -2
  552. package/dist/siemens-ix/p-639d0d7f.entry.js.map +1 -0
  553. package/dist/siemens-ix/{p-faa47c0e.entry.js → p-6645d4ee.entry.js} +2 -2
  554. package/dist/siemens-ix/p-670d5b84.entry.js +2 -0
  555. package/dist/siemens-ix/p-670d5b84.entry.js.map +1 -0
  556. package/dist/siemens-ix/{p-eba51393.entry.js → p-7060645f.entry.js} +2 -2
  557. package/dist/siemens-ix/p-71a38f35.entry.js +2 -0
  558. package/dist/siemens-ix/{p-416886d6.entry.js → p-75edf091.entry.js} +2 -2
  559. package/dist/siemens-ix/p-75edf091.entry.js.map +1 -0
  560. package/dist/siemens-ix/{p-81c8d542.entry.js → p-75f4bbb1.entry.js} +2 -2
  561. package/dist/siemens-ix/{p-03c6893a.entry.js → p-78797f4b.entry.js} +2 -2
  562. package/dist/siemens-ix/p-78797f4b.entry.js.map +1 -0
  563. package/dist/siemens-ix/{p-09cce59e.entry.js → p-800f59a7.entry.js} +2 -2
  564. package/dist/siemens-ix/p-800f59a7.entry.js.map +1 -0
  565. package/dist/siemens-ix/p-86ac2254.entry.js +2 -0
  566. package/dist/siemens-ix/p-86ac2254.entry.js.map +1 -0
  567. package/dist/siemens-ix/p-8bd3f89a.entry.js +2 -0
  568. package/dist/siemens-ix/p-8bd3f89a.entry.js.map +1 -0
  569. package/dist/siemens-ix/{p-a76a69fb.entry.js → p-8c612656.entry.js} +2 -2
  570. package/dist/siemens-ix/{p-5140e6e6.entry.js → p-91fa3ab0.entry.js} +2 -2
  571. package/dist/siemens-ix/{p-f29eaee8.entry.js → p-9272ae83.entry.js} +2 -2
  572. package/dist/siemens-ix/{p-c8cf26c5.entry.js → p-96533ffc.entry.js} +2 -2
  573. package/dist/siemens-ix/p-96533ffc.entry.js.map +1 -0
  574. package/dist/siemens-ix/p-98ab64dc.entry.js +2 -0
  575. package/dist/siemens-ix/p-98ab64dc.entry.js.map +1 -0
  576. package/dist/siemens-ix/p-9a8188a7.entry.js +2 -0
  577. package/dist/siemens-ix/p-9a8188a7.entry.js.map +1 -0
  578. package/dist/siemens-ix/{p-f6d678a6.entry.js → p-9b88a932.entry.js} +2 -2
  579. package/dist/siemens-ix/{p-7a108b0d.entry.js → p-9dbfd7cd.entry.js} +2 -2
  580. package/dist/siemens-ix/p-CiSM2A9Q.js +2 -0
  581. package/dist/siemens-ix/p-CiSM2A9Q.js.map +1 -0
  582. package/dist/siemens-ix/p-a6612a5b.entry.js +2 -0
  583. package/dist/siemens-ix/{p-00a10004.entry.js → p-a7cb47ca.entry.js} +2 -2
  584. package/dist/siemens-ix/p-a7cb47ca.entry.js.map +1 -0
  585. package/dist/siemens-ix/p-ac1f35ad.entry.js +2 -0
  586. package/dist/siemens-ix/p-ac1f35ad.entry.js.map +1 -0
  587. package/dist/siemens-ix/{p-4b88c430.entry.js → p-ae2e5e0c.entry.js} +2 -2
  588. package/dist/siemens-ix/{p-4b88c430.entry.js.map → p-ae2e5e0c.entry.js.map} +1 -1
  589. package/dist/siemens-ix/{p-6c2818da.entry.js → p-b895b3db.entry.js} +2 -2
  590. package/dist/siemens-ix/p-b895b3db.entry.js.map +1 -0
  591. package/dist/siemens-ix/{p-cd11dfa8.entry.js → p-bb878ea4.entry.js} +2 -2
  592. package/dist/siemens-ix/p-bc7fc8b2.entry.js +2 -0
  593. package/dist/siemens-ix/p-bc7fc8b2.entry.js.map +1 -0
  594. package/dist/siemens-ix/{p-0469aec7.entry.js → p-bf2374a0.entry.js} +2 -2
  595. package/dist/siemens-ix/p-c10b2e40.entry.js +2 -0
  596. package/dist/siemens-ix/{p-5c109476.entry.js → p-c248940f.entry.js} +2 -2
  597. package/dist/siemens-ix/{p-162a1f2e.entry.js → p-c31b2027.entry.js} +2 -2
  598. package/dist/siemens-ix/{p-162a1f2e.entry.js.map → p-c31b2027.entry.js.map} +1 -1
  599. package/dist/siemens-ix/{p-8eee6a03.entry.js → p-c413e3c4.entry.js} +2 -2
  600. package/dist/siemens-ix/{p-746b04cb.entry.js → p-c6ecc2e3.entry.js} +2 -2
  601. package/dist/siemens-ix/{p-01656234.entry.js → p-c949686e.entry.js} +2 -2
  602. package/dist/siemens-ix/{p-b6dad40c.entry.js → p-d0213ff0.entry.js} +2 -2
  603. package/dist/siemens-ix/{p-8e48a7a1.entry.js → p-d1254b5b.entry.js} +2 -2
  604. package/dist/siemens-ix/{p-a0d7af11.entry.js → p-d585e581.entry.js} +2 -2
  605. package/dist/siemens-ix/p-d6b9e253.entry.js +2 -0
  606. package/dist/siemens-ix/{p-30df3f84.entry.js.map → p-d6b9e253.entry.js.map} +1 -1
  607. package/dist/siemens-ix/{p-dd82ebbc.entry.js → p-d7c7d38b.entry.js} +2 -2
  608. package/dist/siemens-ix/{p-c446ffdb.entry.js → p-db02f4c2.entry.js} +2 -2
  609. package/dist/siemens-ix/{p-4573a8de.entry.js → p-e201fa04.entry.js} +2 -2
  610. package/dist/siemens-ix/{p-4573a8de.entry.js.map → p-e201fa04.entry.js.map} +1 -1
  611. package/dist/siemens-ix/{p-6a39d630.entry.js → p-e3a219e3.entry.js} +2 -2
  612. package/dist/siemens-ix/{p-bd369344.entry.js → p-e55cd52b.entry.js} +2 -2
  613. package/dist/siemens-ix/p-ea435816.entry.js +2 -0
  614. package/dist/siemens-ix/p-ea435816.entry.js.map +1 -0
  615. package/dist/siemens-ix/{p-14fca48a.entry.js → p-f14790b4.entry.js} +2 -2
  616. package/dist/siemens-ix/{p-53e82da9.entry.js → p-fbd0973d.entry.js} +2 -2
  617. package/dist/siemens-ix/p-fbd0973d.entry.js.map +1 -0
  618. package/dist/siemens-ix/p-fbedad11.entry.js +2 -0
  619. package/dist/siemens-ix/{p-CzzcLSmV.js → p-gkooEHol.js} +2 -2
  620. package/dist/siemens-ix/p-gkooEHol.js.map +1 -0
  621. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  622. package/dist/siemens-ix/siemens-ix.css +25 -87
  623. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  624. package/dist/types/components/avatar/avatar.d.ts +1 -1
  625. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -1
  626. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +3 -3
  627. package/dist/types/components/category-filter/category-filter.d.ts +4 -10
  628. package/dist/types/components/chip/chip.d.ts +2 -2
  629. package/dist/types/components/date-dropdown/date-dropdown.d.ts +6 -6
  630. package/dist/types/components/date-picker/date-picker-component.d.ts +1 -1
  631. package/dist/types/components/date-picker/date-picker.d.ts +3 -3
  632. package/dist/types/components/date-time-card/date-time-card.d.ts +1 -5
  633. package/dist/types/components/datetime-picker/datetime-picker.d.ts +2 -20
  634. package/dist/types/components/event-list/event-list.d.ts +1 -1
  635. package/dist/types/components/group/group.d.ts +4 -4
  636. package/dist/types/components/group-item/group-item.d.ts +9 -2
  637. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  638. package/dist/types/components/menu/menu.d.ts +5 -4
  639. package/dist/types/components/menu-about-news/menu-about-news.d.ts +1 -1
  640. package/dist/types/components/menu-avatar/menu-avatar.d.ts +2 -2
  641. package/dist/types/components/message-bar/message-bar.d.ts +3 -4
  642. package/dist/types/components/modal/modal.d.ts +9 -9
  643. package/dist/types/components/pagination/pagination.d.ts +5 -6
  644. package/dist/types/components/push-card/push-card.d.ts +2 -2
  645. package/dist/types/components/time-picker/time-picker.d.ts +2 -40
  646. package/dist/types/components/toast/toast-utils.d.ts +24 -0
  647. package/dist/types/components/toast/toast.d.ts +1 -1
  648. package/dist/types/components.d.ts +214 -414
  649. package/hydrate/index.js +318 -705
  650. package/hydrate/index.mjs +318 -705
  651. package/package.json +1 -1
  652. package/scss/_core.scss +0 -1
  653. package/scss/theme/core/_components.scss +0 -2
  654. package/scss/theme/core/components/checkbox.scss +12 -12
  655. package/scss/theme/core/components/radiobutton.scss +12 -12
  656. package/scss/theme/core/components/slider.scss +1 -1
  657. package/components/ix-input-group.d.ts +0 -11
  658. package/components/ix-input-group.js +0 -154
  659. package/components/ix-input-group.js.map +0 -1
  660. package/components/ix-validation-tooltip.d.ts +0 -11
  661. package/components/ix-validation-tooltip.js +0 -184
  662. package/components/ix-validation-tooltip.js.map +0 -1
  663. package/components/p-B3IsQckh.js.map +0 -1
  664. package/components/p-B5cVFUyk.js.map +0 -1
  665. package/components/p-BFuOBAQB.js.map +0 -1
  666. package/components/p-BpW9tS2k.js.map +0 -1
  667. package/components/p-CAqtPJ4-.js.map +0 -1
  668. package/components/p-CFRrPFxi.js +0 -103
  669. package/components/p-CFRrPFxi.js.map +0 -1
  670. package/components/p-CGPMGyof.js.map +0 -1
  671. package/components/p-Ctze1Bh6.js +0 -64
  672. package/components/p-Ctze1Bh6.js.map +0 -1
  673. package/components/p-CwwKrs4u.js.map +0 -1
  674. package/components/p-CzzcLSmV.js.map +0 -1
  675. package/components/p-DJ6v85WG.js.map +0 -1
  676. package/components/p-DZNnQyWO.js.map +0 -1
  677. package/dist/cjs/find-element-D7yD1Ukn.js +0 -106
  678. package/dist/cjs/find-element-D7yD1Ukn.js.map +0 -1
  679. package/dist/cjs/floating-ui.dom-CMzYsRR7.js.map +0 -1
  680. package/dist/cjs/ix-input-group.cjs.entry.js +0 -130
  681. package/dist/cjs/ix-input-group.entry.cjs.js.map +0 -1
  682. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +0 -155
  683. package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +0 -1
  684. package/dist/cjs/service-FGbUpQQM.js.map +0 -1
  685. package/dist/collection/components/input-group/input-group.css +0 -115
  686. package/dist/collection/components/input-group/input-group.js +0 -152
  687. package/dist/collection/components/input-group/input-group.js.map +0 -1
  688. package/dist/collection/components/validation-tooltip/validation-tooltip.css +0 -225
  689. package/dist/collection/components/validation-tooltip/validation-tooltip.js +0 -250
  690. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +0 -1
  691. package/dist/esm/find-element-CFRrPFxi.js +0 -103
  692. package/dist/esm/find-element-CFRrPFxi.js.map +0 -1
  693. package/dist/esm/floating-ui.dom-CAqtPJ4-.js.map +0 -1
  694. package/dist/esm/ix-input-group.entry.js +0 -128
  695. package/dist/esm/ix-input-group.entry.js.map +0 -1
  696. package/dist/esm/ix-validation-tooltip.entry.js +0 -153
  697. package/dist/esm/ix-validation-tooltip.entry.js.map +0 -1
  698. package/dist/esm/service-ktcE7NzB.js.map +0 -1
  699. package/dist/siemens-ix/ix-input-group.entry.esm.js.map +0 -1
  700. package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +0 -1
  701. package/dist/siemens-ix/p-00a10004.entry.js.map +0 -1
  702. package/dist/siemens-ix/p-03c6893a.entry.js.map +0 -1
  703. package/dist/siemens-ix/p-09cce59e.entry.js.map +0 -1
  704. package/dist/siemens-ix/p-1d0ae43f.entry.js +0 -2
  705. package/dist/siemens-ix/p-1d0ae43f.entry.js.map +0 -1
  706. package/dist/siemens-ix/p-2d3f7bb5.entry.js +0 -2
  707. package/dist/siemens-ix/p-2d3f7bb5.entry.js.map +0 -1
  708. package/dist/siemens-ix/p-2d9b7dbd.entry.js +0 -2
  709. package/dist/siemens-ix/p-2d9b7dbd.entry.js.map +0 -1
  710. package/dist/siemens-ix/p-30545ef9.entry.js +0 -2
  711. package/dist/siemens-ix/p-30728d2c.entry.js +0 -2
  712. package/dist/siemens-ix/p-30728d2c.entry.js.map +0 -1
  713. package/dist/siemens-ix/p-30df3f84.entry.js +0 -2
  714. package/dist/siemens-ix/p-3dc1d85b.entry.js +0 -2
  715. package/dist/siemens-ix/p-3dc1d85b.entry.js.map +0 -1
  716. package/dist/siemens-ix/p-416886d6.entry.js.map +0 -1
  717. package/dist/siemens-ix/p-48f01149.entry.js +0 -2
  718. package/dist/siemens-ix/p-48f01149.entry.js.map +0 -1
  719. package/dist/siemens-ix/p-53e82da9.entry.js.map +0 -1
  720. package/dist/siemens-ix/p-5bed04ac.entry.js +0 -2
  721. package/dist/siemens-ix/p-5bed04ac.entry.js.map +0 -1
  722. package/dist/siemens-ix/p-5f72640f.entry.js +0 -2
  723. package/dist/siemens-ix/p-5f72640f.entry.js.map +0 -1
  724. package/dist/siemens-ix/p-6c2818da.entry.js.map +0 -1
  725. package/dist/siemens-ix/p-6c873cc5.entry.js +0 -2
  726. package/dist/siemens-ix/p-71e94914.entry.js.map +0 -1
  727. package/dist/siemens-ix/p-740420eb.entry.js +0 -2
  728. package/dist/siemens-ix/p-740420eb.entry.js.map +0 -1
  729. package/dist/siemens-ix/p-85727880.entry.js.map +0 -1
  730. package/dist/siemens-ix/p-90089ce1.entry.js +0 -2
  731. package/dist/siemens-ix/p-92032674.entry.js.map +0 -1
  732. package/dist/siemens-ix/p-99ad8022.entry.js.map +0 -1
  733. package/dist/siemens-ix/p-9bd4c682.entry.js +0 -2
  734. package/dist/siemens-ix/p-CAqtPJ4-.js +0 -2
  735. package/dist/siemens-ix/p-CAqtPJ4-.js.map +0 -1
  736. package/dist/siemens-ix/p-CFRrPFxi.js +0 -2
  737. package/dist/siemens-ix/p-CFRrPFxi.js.map +0 -1
  738. package/dist/siemens-ix/p-CzzcLSmV.js.map +0 -1
  739. package/dist/siemens-ix/p-c8cf26c5.entry.js.map +0 -1
  740. package/dist/siemens-ix/p-d0d972c2.entry.js +0 -2
  741. package/dist/siemens-ix/p-ddaf98b6.entry.js +0 -2
  742. package/dist/siemens-ix/p-ddaf98b6.entry.js.map +0 -1
  743. package/dist/siemens-ix/p-e9de8dd5.entry.js +0 -2
  744. package/dist/siemens-ix/p-e9de8dd5.entry.js.map +0 -1
  745. package/dist/siemens-ix/p-f55eef69.entry.js +0 -2
  746. package/dist/siemens-ix/p-f55eef69.entry.js.map +0 -1
  747. package/dist/siemens-ix/p-fbd896c5.entry.js.map +0 -1
  748. package/dist/types/components/input-group/input-group.d.ts +0 -24
  749. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +0 -45
  750. package/scss/components/_input-group.scss +0 -32
  751. package/scss/theme/core/components/breadcrumb.scss +0 -37
  752. /package/dist/siemens-ix/{p-90bd8d7b.entry.js.map → p-0ba7d263.entry.js.map} +0 -0
  753. /package/dist/siemens-ix/{p-f455c56a.entry.js.map → p-111687a2.entry.js.map} +0 -0
  754. /package/dist/siemens-ix/{p-8b3cfb2d.entry.js.map → p-1ac88556.entry.js.map} +0 -0
  755. /package/dist/siemens-ix/{p-95d4d849.entry.js.map → p-1bd1380b.entry.js.map} +0 -0
  756. /package/dist/siemens-ix/{p-5849a210.entry.js.map → p-1cd4280f.entry.js.map} +0 -0
  757. /package/dist/siemens-ix/{p-48b0fef4.entry.js.map → p-2041357d.entry.js.map} +0 -0
  758. /package/dist/siemens-ix/{p-52dc3ba0.entry.js.map → p-28fe8512.entry.js.map} +0 -0
  759. /package/dist/siemens-ix/{p-4263f3b6.entry.js.map → p-2b046df5.entry.js.map} +0 -0
  760. /package/dist/siemens-ix/{p-1b2e4b8f.entry.js.map → p-331f1b60.entry.js.map} +0 -0
  761. /package/dist/siemens-ix/{p-faa47c0e.entry.js.map → p-6645d4ee.entry.js.map} +0 -0
  762. /package/dist/siemens-ix/{p-eba51393.entry.js.map → p-7060645f.entry.js.map} +0 -0
  763. /package/dist/siemens-ix/{p-6c873cc5.entry.js.map → p-71a38f35.entry.js.map} +0 -0
  764. /package/dist/siemens-ix/{p-81c8d542.entry.js.map → p-75f4bbb1.entry.js.map} +0 -0
  765. /package/dist/siemens-ix/{p-a76a69fb.entry.js.map → p-8c612656.entry.js.map} +0 -0
  766. /package/dist/siemens-ix/{p-5140e6e6.entry.js.map → p-91fa3ab0.entry.js.map} +0 -0
  767. /package/dist/siemens-ix/{p-f29eaee8.entry.js.map → p-9272ae83.entry.js.map} +0 -0
  768. /package/dist/siemens-ix/{p-f6d678a6.entry.js.map → p-9b88a932.entry.js.map} +0 -0
  769. /package/dist/siemens-ix/{p-7a108b0d.entry.js.map → p-9dbfd7cd.entry.js.map} +0 -0
  770. /package/dist/siemens-ix/{p-9bd4c682.entry.js.map → p-a6612a5b.entry.js.map} +0 -0
  771. /package/dist/siemens-ix/{p-cd11dfa8.entry.js.map → p-bb878ea4.entry.js.map} +0 -0
  772. /package/dist/siemens-ix/{p-0469aec7.entry.js.map → p-bf2374a0.entry.js.map} +0 -0
  773. /package/dist/siemens-ix/{p-30545ef9.entry.js.map → p-c10b2e40.entry.js.map} +0 -0
  774. /package/dist/siemens-ix/{p-5c109476.entry.js.map → p-c248940f.entry.js.map} +0 -0
  775. /package/dist/siemens-ix/{p-8eee6a03.entry.js.map → p-c413e3c4.entry.js.map} +0 -0
  776. /package/dist/siemens-ix/{p-746b04cb.entry.js.map → p-c6ecc2e3.entry.js.map} +0 -0
  777. /package/dist/siemens-ix/{p-01656234.entry.js.map → p-c949686e.entry.js.map} +0 -0
  778. /package/dist/siemens-ix/{p-b6dad40c.entry.js.map → p-d0213ff0.entry.js.map} +0 -0
  779. /package/dist/siemens-ix/{p-8e48a7a1.entry.js.map → p-d1254b5b.entry.js.map} +0 -0
  780. /package/dist/siemens-ix/{p-a0d7af11.entry.js.map → p-d585e581.entry.js.map} +0 -0
  781. /package/dist/siemens-ix/{p-dd82ebbc.entry.js.map → p-d7c7d38b.entry.js.map} +0 -0
  782. /package/dist/siemens-ix/{p-c446ffdb.entry.js.map → p-db02f4c2.entry.js.map} +0 -0
  783. /package/dist/siemens-ix/{p-6a39d630.entry.js.map → p-e3a219e3.entry.js.map} +0 -0
  784. /package/dist/siemens-ix/{p-bd369344.entry.js.map → p-e55cd52b.entry.js.map} +0 -0
  785. /package/dist/siemens-ix/{p-14fca48a.entry.js.map → p-f14790b4.entry.js.map} +0 -0
  786. /package/dist/siemens-ix/{p-90089ce1.entry.js.map → p-fbedad11.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"category-filter.js","sourceRoot":"","sources":["../../../src/components/category-filter/category-filter.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { BaseButton, BaseButtonProps } from '../button/base-button';\nimport { FilterState } from './filter-state';\nimport { InputState } from './input-state';\nimport { LogicalFilterOperator } from './logical-filter-operator';\nimport { iconClear, iconSearch } from '@siemens/ix-icons/icons';\nimport { makeRef } from '../utils/make-ref';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { A11yAttributes, a11yHostAttributes } from '../utils/a11y';\n\n@Component({\n tag: 'ix-category-filter',\n styleUrl: 'category-filter.scss',\n shadow: true,\n})\nexport class CategoryFilter {\n private readonly ID_CUSTOM_FILTER_VALUE = 'CW_CUSTOM_FILTER_VALUE';\n\n private formKeyDownListener?: DisposableEventListener;\n private preventDefaultListener?: DisposableEventListener;\n private inputKeyDownListener?: DisposableEventListener;\n private focusInListener?: DisposableEventListener;\n private focusOutListener?: DisposableEventListener;\n private inputListener?: DisposableEventListener;\n\n private readonly textInput? = makeRef<HTMLInputElement>();\n private formElement?: HTMLFormElement;\n private isScrollStateDirty?: boolean;\n private a11yAttributes?: A11yAttributes;\n\n @Element() hostElement!: HTMLIxCategoryFilterElement;\n\n @State() showDropdown = false;\n @State() hasFocus = false;\n @State() categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n @State() inputValue: string = '';\n @State() category: string = '';\n @State() filterTokens: Array<{\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }> = [];\n\n /**\n * If true the filter will be in disabled state\n */\n @Prop() disabled = false;\n\n /**\n * If true the filter will be in readonly mode\n */\n @Prop() readonly = false;\n\n /**\n * A set of search criteria to populate the component with.\n */\n @Prop() filterState?: FilterState;\n\n /**\n * Placeholder text to be displayed in an empty input field.\n */\n @Prop() placeholder?: string;\n\n /**\n * Configuration object hash used to populate the dropdown menu for type-ahead and quick selection functionality.\n * Each ID maps to an object with a label and an array of options to select from.\n */\n @Prop() categories?: {\n [id: string]: {\n label: string;\n options: string[];\n };\n };\n\n /**\n * In certain use cases some categories may not be available for selection anymore.\n * To allow proper display of set filters with these categories this ID to label mapping can be populated.\n *\n * Configuration object hash used to supply labels to the filter chips in the input field.\n * Each ID maps to a string representing the label to display.\n */\n @Prop() nonSelectableCategories?: {\n [id: string]: string;\n } = {};\n\n /**\n * A list of strings that will be supplied as type-ahead suggestions not tied to any categories.\n */\n @Prop() suggestions?: string[];\n\n /**\n * The icon next to the actual text input\n * Defaults to 'search'\n */\n @Prop() icon?: string;\n\n /**\n * Allows to hide the icon inside the text input.\n * Defaults to false\n */\n @Prop() hideIcon: boolean = false;\n\n /**\n * If set categories will always be filtered via the respective logical operator.\n * Toggling of the operator will not be available to the user.\n */\n @Prop() staticOperator?: LogicalFilterOperator;\n\n /**\n * If set to true, allows that a single category can be set more than once.\n * An already set category will not appear in the category dropdown if set to false.\n *\n * Defaults to true\n */\n @Prop() repeatCategories = true;\n\n /**\n * @internal For debugging purposes only!\n */\n @Prop() tmpDisableScrollIntoView = true;\n\n /**\n * i18n\n */\n @Prop() labelCategories = 'Categories';\n\n /**\n * i18n\n */\n @Prop() i18nPlainText = 'Filter by text';\n\n /**\n * ARIA label for the reset button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelResetButton?: string;\n\n /**\n * ARIA label for the operator button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelOperatorButton?: string;\n\n /**\n * ARIA label for the filter input\n * Will be set as aria-label on the nested HTML input element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelFilterInput?: string;\n\n /**\n * Event dispatched whenever a category gets selected in the dropdown\n */\n @Event() categoryChanged!: EventEmitter<string>;\n\n /**\n * Event dispatched whenever the text input changes.\n */\n @Event() inputChanged!: EventEmitter<InputState>;\n\n /**\n * Event dispatched whenever the filter state changes.\n */\n @Event() filterChanged!: EventEmitter<FilterState>;\n\n /**\n * Event dispatched whenever the filter gets cleared.\n */\n @Event() filterCleared!: EventEmitter<void>;\n\n get dropdown() {\n return this.hostElement.shadowRoot!.querySelector('ix-dropdown');\n }\n\n @Watch('filterState')\n watchFilterState(newValue: FilterState) {\n this.setFilterState(newValue);\n }\n\n private preventDefault(e: Event) {\n e.preventDefault();\n }\n\n private onFocusIn() {\n this.hasFocus = true;\n }\n\n private onFocusOut() {\n this.hasFocus = false;\n }\n\n private onInput() {\n this.inputValue = this.textInput?.current?.value ?? '';\n const inputState = new InputState(this.inputValue, this.category);\n this.inputChanged.emit(inputState);\n\n if (!this.dropdown?.show) {\n this.openDropdown();\n }\n }\n\n componentWillLoad() {\n this.a11yAttributes = a11yHostAttributes(this.hostElement);\n }\n\n componentDidLoad() {\n setTimeout(() => {\n if (this.filterState !== undefined) {\n this.setFilterState(this.filterState);\n }\n });\n\n if (this.formElement !== undefined) {\n this.formKeyDownListener = addDisposableEventListener(\n this.formElement,\n 'keydown',\n ((e: KeyboardEvent) =>\n this.handleFormElementKeyDown(e)) as EventListener\n );\n\n this.preventDefaultListener = addDisposableEventListener(\n this.formElement,\n 'submit',\n this.preventDefault\n );\n }\n\n if (this.textInput?.current == null) {\n console.warn(\n 'ix-category-filter - unable to add event listeners to native input element'\n );\n return;\n }\n\n this.inputKeyDownListener = addDisposableEventListener(\n this.textInput.current,\n 'keydown',\n ((e: KeyboardEvent) => this.handleInputElementKeyDown(e)) as EventListener\n );\n\n this.focusInListener = addDisposableEventListener(\n this.textInput.current,\n 'focusin',\n () => this.onFocusIn()\n );\n\n this.focusOutListener = addDisposableEventListener(\n this.textInput.current,\n 'focusout',\n () => this.onFocusOut()\n );\n\n this.inputListener = addDisposableEventListener(\n this.textInput.current,\n 'input',\n () => this.onInput()\n );\n }\n\n private setFilterState(state: FilterState) {\n this.filterTokens = [];\n\n for (const token of state.tokens) {\n this.addToken(\n token,\n this.ID_CUSTOM_FILTER_VALUE,\n this.categoryLogicalOperator,\n false\n );\n }\n\n for (const category of state.categories) {\n this.addToken(category.value, category.id, category.operator, false);\n }\n\n this.emitFilterEvent();\n }\n\n private closeDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = false;\n }\n }\n\n private openDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = true;\n }\n }\n\n private handleFormElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'Enter':\n case 'NumpadEnter':\n if (!document.activeElement?.classList.contains('dropdown-item')) {\n return;\n }\n\n const token = document.activeElement.getAttribute('data-id');\n\n if (token === null) {\n break;\n }\n\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n this.addToken(token, this.category);\n } else if (\n document.activeElement.classList.contains('category-item-id')\n ) {\n this.selectCategory(token);\n }\n } else {\n this.addToken(token);\n }\n\n e.preventDefault();\n break;\n\n case 'ArrowUp':\n this.focusPreviousItem();\n e.preventDefault();\n break;\n\n case 'ArrowDown':\n this.showDropdown = true;\n this.focusNextItem();\n e.preventDefault();\n break;\n\n case 'Escape':\n this.closeDropdown();\n break;\n }\n }\n\n private focusPreviousItem() {\n const sibling = document.activeElement?.previousSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusNextItem() {\n const sibling = document.activeElement?.nextSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusElement(selector: string): boolean {\n const item = this.hostElement.shadowRoot!.querySelector(selector);\n if (item instanceof HTMLElement) {\n item.focus();\n return true;\n }\n return false;\n }\n\n private onArrowDown(e: KeyboardEvent) {\n const baseSelector = `.category-item-${\n this.category !== '' ? 'value' : 'id'\n }`;\n const fallbackSelector = '.category-item';\n\n if (this.focusElement(baseSelector)) {\n e.stopPropagation();\n return;\n }\n\n if (this.suggestions?.length && this.focusElement(fallbackSelector)) {\n e.stopPropagation();\n }\n }\n\n private handleInputElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowDown': {\n this.onArrowDown(e);\n break;\n }\n\n case 'Backspace':\n if (this.textInput?.current?.value !== '') {\n return;\n }\n\n if (this.category !== '') {\n this.category = '';\n return;\n }\n\n const tokenCount = this.filterTokens.length;\n if (tokenCount > 0) {\n this.removeToken(tokenCount - 1);\n }\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n this.addToken(\n this.inputValue,\n this.category || this.ID_CUSTOM_FILTER_VALUE\n );\n e.preventDefault();\n break;\n }\n }\n\n private emitFilterEvent() {\n const tokens = this.filterTokens\n .filter((item) => item.id === this.ID_CUSTOM_FILTER_VALUE)\n .map((item) => item.value);\n const categories = this.filterTokens.filter(\n (item) => item.id !== this.ID_CUSTOM_FILTER_VALUE\n );\n const filterState: FilterState = {\n tokens,\n categories,\n };\n\n this.filterChanged.emit(filterState);\n }\n\n private addToken(\n token: string,\n category: string = this.ID_CUSTOM_FILTER_VALUE,\n operator = this.categoryLogicalOperator,\n emitEvent = true\n ) {\n if (token === undefined || token === null) {\n return;\n }\n\n const newToken = token.trim();\n\n if (newToken === '') {\n return;\n }\n\n if (this.hasToken(newToken)) {\n return;\n }\n\n const pair = { id: category, value: newToken, operator };\n this.filterTokens = [...this.filterTokens, pair];\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n\n if (this.category !== '') {\n this.category = '';\n }\n\n this.isScrollStateDirty = true;\n\n this.textInput?.current?.focus();\n\n if (emitEvent) {\n this.emitFilterEvent();\n }\n }\n\n private removeToken(index: number) {\n this.filterTokens = this.filterTokens.filter((_, i) => i !== index);\n this.emitFilterEvent();\n }\n\n private getCategoryIds() {\n const ids = [];\n for (const id in this.categories) {\n if (Object.prototype.hasOwnProperty.call(this.categories, id)) {\n ids.push(id);\n }\n }\n\n return ids;\n }\n\n private selectCategory(category: string) {\n this.category = category;\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.textInput?.current?.focus();\n this.categoryChanged.emit(category);\n }\n\n private resetFilter(e: Event) {\n const { defaultPrevented } = this.filterCleared.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n e.stopPropagation();\n this.closeDropdown();\n this.filterTokens = [];\n if (this.category) {\n this.category = '';\n this.categoryChanged.emit(undefined);\n }\n\n this.emitFilterEvent();\n }\n\n private filterMultiples(value: string) {\n if (this.repeatCategories) {\n return true;\n }\n\n const isCategoryAlreadySet = this.filterTokens.find(\n (token) => token.id === value\n );\n\n return !isCategoryAlreadySet;\n }\n\n private hasToken(token: string) {\n return this.filterTokens.some((filterToken) => {\n const hasSameValue = filterToken.value === token;\n\n if (!hasSameValue) {\n return false;\n }\n\n if (this.category !== '') {\n return this.category === filterToken.id;\n }\n\n if (filterToken.id) {\n return filterToken.id === this.ID_CUSTOM_FILTER_VALUE;\n }\n\n return hasSameValue;\n });\n }\n\n private filterDuplicateTokens(value: string) {\n return !this.hasToken(value);\n }\n\n private filterByInput(value: string) {\n if (this.inputValue === undefined || this.inputValue === '') {\n return true;\n }\n\n return value.toLowerCase().indexOf(this.inputValue.toLowerCase()) !== -1;\n }\n\n private toggleCategoryOperator() {\n switch (this.categoryLogicalOperator) {\n case LogicalFilterOperator.EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.NOT_EQUAL;\n break;\n\n case LogicalFilterOperator.NOT_EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n break;\n }\n }\n\n private getFilterChipLabel(value: {\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }): string {\n if (value.id === this.ID_CUSTOM_FILTER_VALUE) {\n return value.value;\n }\n\n const operatorString =\n value.operator === LogicalFilterOperator.EQUAL ? '=' : '!=';\n const label =\n this.categories?.[value.id]?.label ??\n this.nonSelectableCategories?.[value.id] ??\n value.id;\n\n return `${label} ${operatorString} ${value.value}`;\n }\n\n private getFilteredSuggestions() {\n if (!this.suggestions?.length) {\n return [];\n }\n\n return this.suggestions\n ?.filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value));\n }\n\n private hasCategorySelection() {\n return this.categories !== undefined;\n }\n\n private renderPlainSuggestions() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getFilteredSuggestions().map((suggestion) => (\n <button\n class=\"dropdown-item\"\n data-id={suggestion}\n onClick={() => this.addToken(suggestion)}\n key={suggestion}\n title={suggestion}\n >\n {suggestion}\n </button>\n ))}\n </div>\n );\n }\n\n private renderOperatorButton() {\n if (this.staticOperator) {\n return '';\n }\n\n const params: BaseButtonProps = {\n type: 'button',\n variant: 'subtle-tertiary',\n iconOnly: true,\n iconOval: false,\n selected: false,\n disabled: this.disabled || this.staticOperator !== undefined,\n loading: false,\n icon: '',\n onClick: (e: Event) => {\n e.stopPropagation();\n this.toggleCategoryOperator();\n },\n extraClasses: {\n 'btn-icon-32': true,\n 'btn-toggle-operator': true,\n },\n ariaAttributes: { 'aria-label': this.ariaLabelOperatorButton },\n };\n\n return (\n <BaseButton {...params}>\n {this.categoryLogicalOperator === LogicalFilterOperator.NOT_EQUAL\n ? '='\n : '!='}\n </BaseButton>\n );\n }\n\n private getFilterOperatorString() {\n let operator: LogicalFilterOperator;\n if (this.staticOperator !== undefined) {\n operator = this.staticOperator;\n } else {\n operator = this.categoryLogicalOperator;\n }\n return `${operator === LogicalFilterOperator.EQUAL ? '=' : '!='} `;\n }\n\n private renderCategoryValues() {\n if (this.categories === undefined) {\n return;\n }\n\n return (\n <div class=\"dropdown-item-container\">\n {this.renderOperatorButton()}\n <div class=\"dropdown-header\">\n {this.categories[this.category]?.label}\n </div>\n {this.categories[this.category]?.options\n .filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value))\n .map((id) => (\n <button\n class=\"dropdown-item category-item-value\"\n data-id={id}\n title={id}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.addToken(id, this.category);\n }}\n >\n {`${this.getFilterOperatorString()} ${id}`}\n </button>\n ))}\n </div>\n );\n }\n\n private renderDropdownContent() {\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n return this.renderCategoryValues();\n } else {\n return this.renderCategorySelection();\n }\n } else return this.renderPlainSuggestions();\n }\n\n private renderCategorySelection() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getCategoryIds()\n ?.filter(\n (id) =>\n this.categories && this.filterByInput(this.categories[id].label)\n )\n .filter((id) => this.filterMultiples(id))\n .map((id) => (\n <button\n class=\"dropdown-item category-item category-item-id\"\n data-id={id}\n title={this.categories?.[id]?.label}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.selectCategory(id);\n }}\n tabindex=\"0\"\n >\n {this.categories?.[id]?.label}\n </button>\n ))}\n </div>\n );\n }\n\n private getDropdownHeader() {\n if (this.categories !== undefined) {\n if (this.category !== '') {\n return undefined;\n } else {\n return this.labelCategories;\n }\n }\n\n return this.i18nPlainText;\n }\n\n componentDidRender() {\n if (this.isScrollStateDirty) {\n if (!this.tmpDisableScrollIntoView) {\n this.textInput?.current?.scrollIntoView();\n }\n this.isScrollStateDirty = false;\n }\n }\n\n disconnectedCallback() {\n if (this.preventDefaultListener) {\n this.preventDefaultListener();\n }\n if (this.formKeyDownListener) {\n this.formKeyDownListener();\n }\n if (this.inputKeyDownListener) {\n this.inputKeyDownListener?.();\n }\n if (this.focusInListener) {\n this.focusInListener();\n }\n if (this.focusOutListener) {\n this.focusOutListener();\n }\n if (this.inputListener) {\n this.inputListener();\n }\n }\n\n private getResetButton() {\n return (\n <ix-icon-button\n onClick={(e) => this.resetFilter(e)}\n class={{\n 'reset-button': true,\n 'hide-reset-button':\n !this.filterTokens.length && this.category === '',\n }}\n variant=\"tertiary\"\n oval\n icon={iconClear}\n iconColor=\"color-soft-text\"\n size=\"16\"\n aria-label={this.ariaLabelResetButton}\n ></ix-icon-button>\n );\n }\n\n private getIconColor() {\n if (this.disabled) {\n return 'color-componentn-1';\n }\n\n if (this.readonly) {\n return 'color-std-txt';\n }\n\n return 'color-primary';\n }\n\n render() {\n return (\n <Host>\n <form ref={(el) => (this.formElement = el)}>\n <div\n read-only={this.readonly}\n class={{\n 'input-container': true,\n disabled: this.disabled,\n focus: this.hasFocus,\n readonly: this.readonly,\n 'no-icon': this.hideIcon,\n }}\n >\n <ix-icon\n color={this.getIconColor()}\n class={{ 'display-none': this.hideIcon }}\n name={this.icon ?? iconSearch}\n size=\"16\"\n ></ix-icon>\n <div class=\"token-container\">\n <div class=\"list-unstyled\">\n {this.filterTokens.map((value, index) => (\n <span\n key={value.toString()}\n class={{\n animate__animated: true,\n animate__fadein: true,\n }}\n >\n <ix-filter-chip\n disabled={this.disabled}\n readonly={this.readonly}\n onClick={(e) => e.stopPropagation()}\n onCloseClick={() => this.removeToken(index)}\n >\n {this.getFilterChipLabel(value)}\n </ix-filter-chip>\n </span>\n ))}\n {this.categories === undefined ? (\n ''\n ) : (\n <span\n class={{\n 'category-preview': true,\n 'display-none': this.category === '',\n }}\n >\n {this.categories[this.category]?.label}\n </span>\n )}\n <input\n class={{\n 'text-input': true,\n 'hide-placeholder':\n this.readonly || this.disabled || this.category !== '',\n }}\n autocomplete=\"off\"\n name=\"category-filter-input\"\n disabled={this.disabled}\n readonly={this.readonly}\n ref={this.textInput}\n type=\"text\"\n placeholder={this.placeholder}\n {...this.a11yAttributes}\n aria-label={this.ariaLabelFilterInput}\n ></input>\n </div>\n </div>\n {!this.readonly && !this.disabled && this.getResetButton()}\n </div>\n </form>\n\n {this.disabled || this.readonly ? (\n ''\n ) : (\n <ix-dropdown\n show={this.showDropdown}\n closeBehavior=\"outside\"\n offset={{ mainAxis: 2 }}\n anchor={this.textInput?.waitForCurrent()}\n trigger={this.hostElement}\n header={this.getDropdownHeader()}\n >\n {this.renderDropdownContent()}\n </ix-dropdown>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"category-filter.js","sourceRoot":"","sources":["../../../src/components/category-filter/category-filter.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { BaseButton, BaseButtonProps } from '../button/base-button';\nimport { FilterState } from './filter-state';\nimport { InputState } from './input-state';\nimport { LogicalFilterOperator } from './logical-filter-operator';\nimport { iconClear, iconSearch } from '@siemens/ix-icons/icons';\nimport { makeRef } from '../utils/make-ref';\nimport {\n addDisposableEventListener,\n DisposableEventListener,\n} from '../utils/disposable-event-listener';\nimport { A11yAttributes, a11yHostAttributes } from '../utils/a11y';\n\n@Component({\n tag: 'ix-category-filter',\n styleUrl: 'category-filter.scss',\n shadow: true,\n})\nexport class CategoryFilter {\n private readonly ID_CUSTOM_FILTER_VALUE = 'CW_CUSTOM_FILTER_VALUE';\n\n private formKeyDownListener?: DisposableEventListener;\n private preventDefaultListener?: DisposableEventListener;\n private inputKeyDownListener?: DisposableEventListener;\n private focusInListener?: DisposableEventListener;\n private focusOutListener?: DisposableEventListener;\n private inputListener?: DisposableEventListener;\n\n private readonly textInput? = makeRef<HTMLInputElement>();\n private formElement?: HTMLFormElement;\n private isScrollStateDirty?: boolean;\n private a11yAttributes?: A11yAttributes;\n\n @Element() hostElement!: HTMLIxCategoryFilterElement;\n\n @State() showDropdown = false;\n @State() hasFocus = false;\n @State() categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n @State() inputValue: string = '';\n @State() category: string = '';\n @State() filterTokens: Array<{\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }> = [];\n\n /**\n * If true the filter will be in disabled state\n */\n @Prop() disabled = false;\n\n /**\n * If true the filter will be in readonly mode\n */\n @Prop() readonly = false;\n\n /**\n * A set of search criteria to populate the component with.\n */\n @Prop() filterState?: FilterState;\n\n /**\n * Placeholder text to be displayed in an empty input field.\n */\n @Prop() placeholder?: string;\n\n /**\n * Configuration object hash used to populate the dropdown menu for type-ahead and quick selection functionality.\n * Each ID maps to an object with a label and an array of options to select from.\n */\n @Prop() categories?: {\n [id: string]: {\n label: string;\n options: string[];\n };\n };\n\n /**\n * In certain use cases some categories may not be available for selection anymore.\n * To allow proper display of set filters with these categories this ID to label mapping can be populated.\n *\n * Configuration object hash used to supply labels to the filter chips in the input field.\n * Each ID maps to a string representing the label to display.\n */\n @Prop() nonSelectableCategories?: {\n [id: string]: string;\n } = {};\n\n /**\n * A list of strings that will be supplied as type-ahead suggestions not tied to any categories.\n */\n @Prop() suggestions?: string[];\n\n /**\n * The icon next to the actual text input\n * Defaults to 'search'\n */\n @Prop() icon?: string;\n\n /**\n * Allows to hide the icon inside the text input.\n * Defaults to false\n */\n @Prop() hideIcon: boolean = false;\n\n /**\n * If set categories will always be filtered via the respective logical operator.\n * Toggling of the operator will not be available to the user.\n */\n @Prop() staticOperator?: LogicalFilterOperator;\n\n /**\n * If set to true, prevents that a single category can be set more than once.\n * An already set category will not appear in the category dropdown if set to true.\n */\n @Prop() uniqueCategories = false;\n\n /**\n * i18n\n */\n @Prop() labelCategories = 'Categories';\n\n /**\n * i18n label for 'Filter by text'\n */\n @Prop({ attribute: 'i18n-plain-text' }) i18nPlainText = 'Filter by text';\n\n /**\n * ARIA label for the reset button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelResetButton?: string;\n\n /**\n * ARIA label for the operator button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelOperatorButton?: string;\n\n /**\n * ARIA label for the filter input\n * Will be set as aria-label on the nested HTML input element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelFilterInput?: string;\n\n /**\n * Event dispatched whenever a category gets selected in the dropdown\n */\n @Event() categoryChanged!: EventEmitter<string>;\n\n /**\n * Event dispatched whenever the text input changes.\n */\n @Event() inputChanged!: EventEmitter<InputState>;\n\n /**\n * Event dispatched whenever the filter state changes.\n */\n @Event() filterChanged!: EventEmitter<FilterState>;\n\n /**\n * Event dispatched whenever the filter gets cleared.\n */\n @Event() filterCleared!: EventEmitter<void>;\n\n get dropdown() {\n return this.hostElement.shadowRoot!.querySelector('ix-dropdown');\n }\n\n @Watch('filterState')\n watchFilterState(newValue: FilterState) {\n this.setFilterState(newValue);\n }\n\n private preventDefault(e: Event) {\n e.preventDefault();\n }\n\n private onFocusIn() {\n this.hasFocus = true;\n }\n\n private onFocusOut() {\n this.hasFocus = false;\n }\n\n private onInput() {\n this.inputValue = this.textInput?.current?.value ?? '';\n const inputState = new InputState(this.inputValue, this.category);\n this.inputChanged.emit(inputState);\n\n if (!this.dropdown?.show) {\n this.openDropdown();\n }\n }\n\n componentWillLoad() {\n this.a11yAttributes = a11yHostAttributes(this.hostElement);\n }\n\n componentDidLoad() {\n setTimeout(() => {\n if (this.filterState !== undefined) {\n this.setFilterState(this.filterState);\n }\n });\n\n if (this.formElement !== undefined) {\n this.formKeyDownListener = addDisposableEventListener(\n this.formElement,\n 'keydown',\n ((e: KeyboardEvent) =>\n this.handleFormElementKeyDown(e)) as EventListener\n );\n\n this.preventDefaultListener = addDisposableEventListener(\n this.formElement,\n 'submit',\n this.preventDefault\n );\n }\n\n if (this.textInput?.current == null) {\n console.warn(\n 'ix-category-filter - unable to add event listeners to native input element'\n );\n return;\n }\n\n this.inputKeyDownListener = addDisposableEventListener(\n this.textInput.current,\n 'keydown',\n ((e: KeyboardEvent) => this.handleInputElementKeyDown(e)) as EventListener\n );\n\n this.focusInListener = addDisposableEventListener(\n this.textInput.current,\n 'focusin',\n () => this.onFocusIn()\n );\n\n this.focusOutListener = addDisposableEventListener(\n this.textInput.current,\n 'focusout',\n () => this.onFocusOut()\n );\n\n this.inputListener = addDisposableEventListener(\n this.textInput.current,\n 'input',\n () => this.onInput()\n );\n }\n\n private setFilterState(state: FilterState) {\n this.filterTokens = [];\n\n for (const token of state.tokens) {\n this.addToken(\n token,\n this.ID_CUSTOM_FILTER_VALUE,\n this.categoryLogicalOperator,\n false\n );\n }\n\n for (const category of state.categories) {\n this.addToken(category.value, category.id, category.operator, false);\n }\n\n this.emitFilterEvent();\n }\n\n private closeDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = false;\n }\n }\n\n private openDropdown() {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.dropdown) {\n this.dropdown.show = true;\n }\n }\n\n private handleFormElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'Enter':\n case 'NumpadEnter':\n if (!document.activeElement?.classList.contains('dropdown-item')) {\n return;\n }\n\n const token = document.activeElement.getAttribute('data-id');\n\n if (token === null) {\n break;\n }\n\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n this.addToken(token, this.category);\n } else if (\n document.activeElement.classList.contains('category-item-id')\n ) {\n this.selectCategory(token);\n }\n } else {\n this.addToken(token);\n }\n\n e.preventDefault();\n break;\n\n case 'ArrowUp':\n this.focusPreviousItem();\n e.preventDefault();\n break;\n\n case 'ArrowDown':\n this.showDropdown = true;\n this.focusNextItem();\n e.preventDefault();\n break;\n\n case 'Escape':\n this.closeDropdown();\n break;\n }\n }\n\n private focusPreviousItem() {\n const sibling = document.activeElement?.previousSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusNextItem() {\n const sibling = document.activeElement?.nextSibling;\n if (sibling instanceof HTMLElement) {\n sibling.focus();\n }\n }\n\n private focusElement(selector: string): boolean {\n const item = this.hostElement.shadowRoot!.querySelector(selector);\n if (item instanceof HTMLElement) {\n item.focus();\n return true;\n }\n return false;\n }\n\n private onArrowDown(e: KeyboardEvent) {\n const baseSelector = `.category-item-${\n this.category !== '' ? 'value' : 'id'\n }`;\n const fallbackSelector = '.category-item';\n\n if (this.focusElement(baseSelector)) {\n e.stopPropagation();\n return;\n }\n\n if (this.suggestions?.length && this.focusElement(fallbackSelector)) {\n e.stopPropagation();\n }\n }\n\n private handleInputElementKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowDown': {\n this.onArrowDown(e);\n break;\n }\n\n case 'Backspace':\n if (this.textInput?.current?.value !== '') {\n return;\n }\n\n if (this.category !== '') {\n this.category = '';\n return;\n }\n\n const tokenCount = this.filterTokens.length;\n if (tokenCount > 0) {\n this.removeToken(tokenCount - 1);\n }\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n this.addToken(\n this.inputValue,\n this.category || this.ID_CUSTOM_FILTER_VALUE\n );\n e.preventDefault();\n break;\n }\n }\n\n private emitFilterEvent() {\n const tokens = this.filterTokens\n .filter((item) => item.id === this.ID_CUSTOM_FILTER_VALUE)\n .map((item) => item.value);\n const categories = this.filterTokens.filter(\n (item) => item.id !== this.ID_CUSTOM_FILTER_VALUE\n );\n const filterState: FilterState = {\n tokens,\n categories,\n };\n\n this.filterChanged.emit(filterState);\n }\n\n private addToken(\n token: string,\n category: string = this.ID_CUSTOM_FILTER_VALUE,\n operator = this.categoryLogicalOperator,\n emitEvent = true\n ) {\n if (token === undefined || token === null) {\n return;\n }\n\n const newToken = token.trim();\n\n if (newToken === '') {\n return;\n }\n\n if (this.hasToken(newToken)) {\n return;\n }\n\n const pair = { id: category, value: newToken, operator };\n this.filterTokens = [...this.filterTokens, pair];\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n\n if (this.category !== '') {\n this.category = '';\n }\n\n this.isScrollStateDirty = true;\n\n this.textInput?.current?.focus();\n\n if (emitEvent) {\n this.emitFilterEvent();\n }\n }\n\n private removeToken(index: number) {\n this.filterTokens = this.filterTokens.filter((_, i) => i !== index);\n this.emitFilterEvent();\n }\n\n private getCategoryIds() {\n const ids = [];\n for (const id in this.categories) {\n if (Object.prototype.hasOwnProperty.call(this.categories, id)) {\n ids.push(id);\n }\n }\n\n return ids;\n }\n\n private selectCategory(category: string) {\n this.category = category;\n if (this.textInput?.current) {\n this.textInput.current.value = '';\n }\n this.inputValue = '';\n this.textInput?.current?.focus();\n this.categoryChanged.emit(category);\n }\n\n private resetFilter(e: Event) {\n const { defaultPrevented } = this.filterCleared.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n e.stopPropagation();\n this.closeDropdown();\n this.filterTokens = [];\n if (this.category) {\n this.category = '';\n this.categoryChanged.emit(undefined);\n }\n\n this.emitFilterEvent();\n }\n\n private filterMultiples(value: string) {\n if (!this.uniqueCategories) {\n return true;\n }\n\n const isCategoryAlreadySet = this.filterTokens.find(\n (token) => token.id === value\n );\n\n return !isCategoryAlreadySet;\n }\n\n private hasToken(token: string) {\n return this.filterTokens.some((filterToken) => {\n const hasSameValue = filterToken.value === token;\n\n if (!hasSameValue) {\n return false;\n }\n\n if (this.category !== '') {\n return this.category === filterToken.id;\n }\n\n if (filterToken.id) {\n return filterToken.id === this.ID_CUSTOM_FILTER_VALUE;\n }\n\n return hasSameValue;\n });\n }\n\n private filterDuplicateTokens(value: string) {\n return !this.hasToken(value);\n }\n\n private filterByInput(value: string) {\n if (this.inputValue === undefined || this.inputValue === '') {\n return true;\n }\n\n return value.toLowerCase().indexOf(this.inputValue.toLowerCase()) !== -1;\n }\n\n private toggleCategoryOperator() {\n switch (this.categoryLogicalOperator) {\n case LogicalFilterOperator.EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.NOT_EQUAL;\n break;\n\n case LogicalFilterOperator.NOT_EQUAL:\n this.categoryLogicalOperator = LogicalFilterOperator.EQUAL;\n break;\n }\n }\n\n private getFilterChipLabel(value: {\n id: string;\n value: string;\n operator: LogicalFilterOperator;\n }): string {\n if (value.id === this.ID_CUSTOM_FILTER_VALUE) {\n return value.value;\n }\n\n const operatorString =\n value.operator === LogicalFilterOperator.EQUAL ? '=' : '!=';\n const label =\n this.categories?.[value.id]?.label ??\n this.nonSelectableCategories?.[value.id] ??\n value.id;\n\n return `${label} ${operatorString} ${value.value}`;\n }\n\n private getFilteredSuggestions() {\n if (!this.suggestions?.length) {\n return [];\n }\n\n return this.suggestions\n ?.filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value));\n }\n\n private hasCategorySelection() {\n return this.categories !== undefined;\n }\n\n private renderPlainSuggestions() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getFilteredSuggestions().map((suggestion) => (\n <button\n class=\"dropdown-item\"\n data-id={suggestion}\n onClick={() => this.addToken(suggestion)}\n key={suggestion}\n title={suggestion}\n >\n {suggestion}\n </button>\n ))}\n </div>\n );\n }\n\n private renderOperatorButton() {\n if (this.staticOperator) {\n return '';\n }\n\n const params: BaseButtonProps = {\n type: 'button',\n variant: 'subtle-tertiary',\n iconOnly: true,\n iconOval: false,\n selected: false,\n disabled: this.disabled || this.staticOperator !== undefined,\n loading: false,\n icon: '',\n onClick: (e: Event) => {\n e.stopPropagation();\n this.toggleCategoryOperator();\n },\n extraClasses: {\n 'btn-icon-32': true,\n 'btn-toggle-operator': true,\n },\n ariaAttributes: { 'aria-label': this.ariaLabelOperatorButton },\n };\n\n return (\n <BaseButton {...params}>\n {this.categoryLogicalOperator === LogicalFilterOperator.NOT_EQUAL\n ? '='\n : '!='}\n </BaseButton>\n );\n }\n\n private getFilterOperatorString() {\n let operator: LogicalFilterOperator;\n if (this.staticOperator !== undefined) {\n operator = this.staticOperator;\n } else {\n operator = this.categoryLogicalOperator;\n }\n return `${operator === LogicalFilterOperator.EQUAL ? '=' : '!='} `;\n }\n\n private renderCategoryValues() {\n if (this.categories === undefined) {\n return;\n }\n\n return (\n <div class=\"dropdown-item-container\">\n {this.renderOperatorButton()}\n <div class=\"dropdown-header\">\n {this.categories[this.category]?.label}\n </div>\n {this.categories[this.category]?.options\n .filter((value) => this.filterByInput(value))\n .filter((value) => this.filterDuplicateTokens(value))\n .map((id) => (\n <button\n class=\"dropdown-item category-item-value\"\n data-id={id}\n title={id}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.addToken(id, this.category);\n }}\n >\n {`${this.getFilterOperatorString()} ${id}`}\n </button>\n ))}\n </div>\n );\n }\n\n private renderDropdownContent() {\n if (this.hasCategorySelection()) {\n if (this.category !== '') {\n return this.renderCategoryValues();\n } else {\n return this.renderCategorySelection();\n }\n } else return this.renderPlainSuggestions();\n }\n\n private renderCategorySelection() {\n return (\n <div class=\"dropdown-item-container\">\n {this.getCategoryIds()\n ?.filter(\n (id) =>\n this.categories && this.filterByInput(this.categories[id].label)\n )\n .filter((id) => this.filterMultiples(id))\n .map((id) => (\n <button\n class=\"dropdown-item category-item category-item-id\"\n data-id={id}\n title={this.categories?.[id]?.label}\n key={id}\n onClick={(e) => {\n e.preventDefault();\n this.selectCategory(id);\n }}\n tabindex=\"0\"\n >\n {this.categories?.[id]?.label}\n </button>\n ))}\n </div>\n );\n }\n\n private getDropdownHeader() {\n if (this.categories !== undefined) {\n if (this.category !== '') {\n return undefined;\n } else {\n return this.labelCategories;\n }\n }\n\n return this.i18nPlainText;\n }\n\n componentDidRender() {\n if (this.isScrollStateDirty) {\n this.textInput?.current?.scrollIntoView();\n this.isScrollStateDirty = false;\n }\n }\n\n disconnectedCallback() {\n if (this.preventDefaultListener) {\n this.preventDefaultListener();\n }\n if (this.formKeyDownListener) {\n this.formKeyDownListener();\n }\n if (this.inputKeyDownListener) {\n this.inputKeyDownListener?.();\n }\n if (this.focusInListener) {\n this.focusInListener();\n }\n if (this.focusOutListener) {\n this.focusOutListener();\n }\n if (this.inputListener) {\n this.inputListener();\n }\n }\n\n private getResetButton() {\n return (\n <ix-icon-button\n onClick={(e) => this.resetFilter(e)}\n class={{\n 'reset-button': true,\n 'hide-reset-button':\n !this.filterTokens.length && this.category === '',\n }}\n variant=\"tertiary\"\n oval\n icon={iconClear}\n iconColor=\"color-soft-text\"\n size=\"16\"\n aria-label={this.ariaLabelResetButton}\n ></ix-icon-button>\n );\n }\n\n private getIconColor() {\n if (this.disabled) {\n return 'color-componentn-1';\n }\n\n if (this.readonly) {\n return 'color-std-txt';\n }\n\n return 'color-primary';\n }\n\n render() {\n return (\n <Host>\n <form ref={(el) => (this.formElement = el)}>\n <div\n read-only={this.readonly}\n class={{\n 'input-container': true,\n disabled: this.disabled,\n focus: this.hasFocus,\n readonly: this.readonly,\n 'no-icon': this.hideIcon,\n }}\n >\n <ix-icon\n color={this.getIconColor()}\n class={{ 'display-none': this.hideIcon }}\n name={this.icon ?? iconSearch}\n size=\"16\"\n ></ix-icon>\n <div class=\"token-container\">\n <div class=\"list-unstyled\">\n {this.filterTokens.map((value, index) => (\n <span\n key={value.toString()}\n class={{\n animate__animated: true,\n animate__fadein: true,\n }}\n >\n <ix-filter-chip\n disabled={this.disabled}\n readonly={this.readonly}\n onClick={(e) => e.stopPropagation()}\n onCloseClick={() => this.removeToken(index)}\n >\n {this.getFilterChipLabel(value)}\n </ix-filter-chip>\n </span>\n ))}\n {this.categories === undefined ? (\n ''\n ) : (\n <span\n class={{\n 'category-preview': true,\n 'display-none': this.category === '',\n }}\n >\n {this.categories[this.category]?.label}\n </span>\n )}\n <input\n class={{\n 'text-input': true,\n 'hide-placeholder':\n this.readonly || this.disabled || this.category !== '',\n }}\n autocomplete=\"off\"\n name=\"category-filter-input\"\n disabled={this.disabled}\n readonly={this.readonly}\n ref={this.textInput}\n type=\"text\"\n placeholder={this.placeholder}\n {...this.a11yAttributes}\n aria-label={this.ariaLabelFilterInput}\n ></input>\n </div>\n </div>\n {!this.readonly && !this.disabled && this.getResetButton()}\n </div>\n </form>\n\n {this.disabled || this.readonly ? (\n ''\n ) : (\n <ix-dropdown\n show={this.showDropdown}\n closeBehavior=\"outside\"\n offset={{ mainAxis: 2 }}\n anchor={this.textInput?.waitForCurrent()}\n trigger={this.hostElement}\n header={this.getDropdownHeader()}\n >\n {this.renderDropdownContent()}\n </ix-dropdown>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -16,10 +16,10 @@ export class Chip {
16
16
  */
17
17
  this.variant = 'primary';
18
18
  /**
19
- * Determines if the chip is interactive. If false no user input (e.g. mouse states, keyboard navigation)
19
+ * Determines if the chip is interactive. If true no user input (e.g. mouse states, keyboard navigation)
20
20
  * will be possible and also the close button will not be present.
21
21
  */
22
- this.active = true;
22
+ this.inactive = false;
23
23
  /**
24
24
  * Show close icon
25
25
  */
@@ -60,7 +60,6 @@ export class Chip {
60
60
  return (h("ix-tooltip", { for: this.containerElementRef.waitForCurrent() }, text));
61
61
  }
62
62
  render() {
63
- const isInactive = this.active === false;
64
63
  let customStyle = {};
65
64
  if (this.variant === 'custom') {
66
65
  customStyle = {
@@ -68,16 +67,16 @@ export class Chip {
68
67
  [this.outline ? 'borderColor' : 'backgroundColor']: this.background,
69
68
  };
70
69
  }
71
- return (h(Host, { key: '615e9cde354e947cfedf93f5d7049a55acd742f9', tabIndex: "-1", class: {
72
- inactive: isInactive,
70
+ return (h(Host, { key: 'a9d49af6fa315e993d7e6968037eec933ac7beb4', tabIndex: "-1", class: {
71
+ inactive: this.inactive,
73
72
  }, style: this.variant === 'custom'
74
73
  ? {
75
74
  '--ix-icon-button-color': this.chipColor,
76
75
  }
77
- : {} }, h("div", { key: '64c04ae766296f7913ea662db14b5ec3e3828193', ref: this.containerElementRef, style: Object.assign({}, customStyle), class: {
76
+ : {} }, h("div", { key: '68e9b1b7cdcd51c0ea62d1e907749d6019346411', ref: this.containerElementRef, style: Object.assign({}, customStyle), class: {
78
77
  container: true,
79
78
  outline: this.outline,
80
- inactive: isInactive,
79
+ inactive: this.inactive,
81
80
  alarm: this.variant === 'alarm',
82
81
  critical: this.variant === 'critical',
83
82
  info: this.variant === 'info',
@@ -89,11 +88,11 @@ export class Chip {
89
88
  closable: this.closable,
90
89
  icon: !!this.icon,
91
90
  centerContent: this.centerContent,
92
- } }, h("div", { key: 'b56a1240130fb26f2d31a946e1d1b3199e851836', class: "content-wrapper" }, this.icon && (h("ix-icon", { key: '546438997d8e9727f9d410c9c3a7be16a0f9c858', class: {
91
+ } }, h("div", { key: '6880ba6bb16fb14ce2e3fb6e3575539a5c1c182a', class: "content-wrapper" }, this.icon && (h("ix-icon", { key: '85ede4a45b6705d95e0d3d2ff602a75bce77c4fa', class: {
93
92
  'with-icon': true,
94
93
  }, name: this.icon, size: '24', style: this.variant === 'custom'
95
94
  ? { color: this.outline ? this.background : this.chipColor }
96
- : undefined })), h("span", { key: '0b7f723b1a687a0377f6b1d128d167c24c0ee43a', class: "slot-container" }, h("slot", { key: '11dd6b1a9c781500c96d37563279f0359276c26d' }))), isInactive === false && this.closable ? this.getCloseButton() : null), this.getTooltip()));
95
+ : undefined })), h("span", { key: '3b7bd50643a4f5b3ba25c612eb29cbd8218d0aa2', class: "slot-container" }, h("slot", { key: '0d282990c3bbc56eb96dd9373ff66b61fac0b1f9' }))), this.inactive === false && this.closable && this.getCloseButton()), this.getTooltip()));
97
96
  }
98
97
  static get is() { return "ix-chip"; }
99
98
  static get encapsulation() { return "shadow"; }
@@ -129,9 +128,9 @@ export class Chip {
129
128
  "reflect": true,
130
129
  "defaultValue": "'primary'"
131
130
  },
132
- "active": {
131
+ "inactive": {
133
132
  "type": "boolean",
134
- "attribute": "active",
133
+ "attribute": "inactive",
135
134
  "mutable": false,
136
135
  "complexType": {
137
136
  "original": "boolean",
@@ -142,12 +141,12 @@ export class Chip {
142
141
  "optional": false,
143
142
  "docs": {
144
143
  "tags": [],
145
- "text": "Determines if the chip is interactive. If false no user input (e.g. mouse states, keyboard navigation)\nwill be possible and also the close button will not be present."
144
+ "text": "Determines if the chip is interactive. If true no user input (e.g. mouse states, keyboard navigation)\nwill be possible and also the close button will not be present."
146
145
  },
147
146
  "getter": false,
148
147
  "setter": false,
149
148
  "reflect": false,
150
- "defaultValue": "true"
149
+ "defaultValue": "false"
151
150
  },
152
151
  "closable": {
153
152
  "type": "boolean",
@@ -1 +1 @@
1
- {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { iconCloseSmall } from '@siemens/ix-icons/icons';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\nimport { makeRef } from '../utils/make-ref';\n\n@Component({\n tag: 'ix-chip',\n styleUrl: 'chip.scss',\n shadow: true,\n})\nexport class Chip {\n @Element() hostElement!: HTMLIxChipElement;\n\n /**\n * Chip variant\n */\n @Prop({ reflect: true }) variant:\n | 'primary'\n | 'alarm'\n | 'critical'\n | 'warning'\n | 'info'\n | 'neutral'\n | 'success'\n | 'custom' = 'primary';\n\n /**\n * Determines if the chip is interactive. If false no user input (e.g. mouse states, keyboard navigation)\n * will be possible and also the close button will not be present.\n */\n @Prop() active = true;\n\n /**\n * Show close icon\n */\n @Prop() closable = false;\n\n /**\n * Show icon\n */\n @Prop() icon?: string;\n\n /**\n * Custom background color.\n * Only has an effect on chips with `variant='custom'`\n */\n @Prop() background: string | undefined;\n\n /**\n * Custom font and icon color.\n * Only has an effect on chips with `variant='custom'`\n */\n @Prop() chipColor: string | undefined;\n\n /**\n * Show chip with outline style\n */\n @Prop() outline = false;\n\n /**\n * Display a tooltip. By default, no tooltip will be displayed.\n * Add the attribute to display the text content of the component as a tooltip or use a string to display a custom text.\n *\n * @since 3.0.0\n */\n @Prop() tooltipText: string | boolean = false;\n\n /**\n * Center the content of the chip.\n * Set to false to disable centering.\n * @since 3.2.0\n */\n @Prop() centerContent = false;\n\n /**\n * ARIA label for the close button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelCloseButton?: string;\n\n /**\n * Fire event if close button is clicked\n */\n @Event() closeChip!: EventEmitter;\n\n private readonly containerElementRef = makeRef<HTMLElement>();\n\n private getCloseButton() {\n return (\n <div class=\"close-button-container\">\n <ix-icon-button\n type=\"button\"\n variant=\"subtle-tertiary\"\n icon={iconCloseSmall}\n class=\"close-button\"\n oval\n size=\"16\"\n style={this.variant === 'custom' ? { color: this.chipColor } : {}}\n onClick={(event) => {\n this.closeChip.emit(event);\n event.stopPropagation();\n }}\n aria-label={this.ariaLabelCloseButton}\n ></ix-icon-button>\n </div>\n );\n }\n\n private getTooltip() {\n if (!this.tooltipText && !this.hostElement.hasAttribute('tooltip-text')) {\n return null;\n }\n\n const text =\n typeof this.tooltipText === 'string' && this.tooltipText.trim()\n ? this.tooltipText\n : this.hostElement.textContent?.trim();\n\n return (\n <ix-tooltip for={this.containerElementRef.waitForCurrent()}>\n {text}\n </ix-tooltip>\n );\n }\n\n render() {\n const isInactive = this.active === false;\n\n let customStyle = {};\n\n if (this.variant === 'custom') {\n customStyle = {\n color: this.chipColor,\n [this.outline ? 'borderColor' : 'backgroundColor']: this.background,\n };\n }\n\n return (\n <Host\n tabIndex=\"-1\"\n class={{\n inactive: isInactive,\n }}\n style={\n this.variant === 'custom'\n ? {\n '--ix-icon-button-color': this.chipColor,\n }\n : {}\n }\n >\n <div\n ref={this.containerElementRef}\n style={{ ...customStyle }}\n class={{\n container: true,\n outline: this.outline,\n inactive: isInactive,\n alarm: this.variant === 'alarm',\n critical: this.variant === 'critical',\n info: this.variant === 'info',\n neutral: this.variant === 'neutral',\n primary: this.variant === 'primary',\n success: this.variant === 'success',\n warning: this.variant === 'warning',\n custom: this.variant === 'custom',\n closable: this.closable,\n icon: !!this.icon,\n centerContent: this.centerContent,\n }}\n >\n <div class=\"content-wrapper\">\n {this.icon && (\n <ix-icon\n class={{\n 'with-icon': true,\n }}\n name={this.icon}\n size={'24'}\n style={\n this.variant === 'custom'\n ? { color: this.outline ? this.background : this.chipColor }\n : undefined\n }\n />\n )}\n <span class=\"slot-container\">\n <slot></slot>\n </span>\n </div>\n {isInactive === false && this.closable ? this.getCloseButton() : null}\n </div>\n {this.getTooltip()}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { iconCloseSmall } from '@siemens/ix-icons/icons';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\nimport { makeRef } from '../utils/make-ref';\n\n@Component({\n tag: 'ix-chip',\n styleUrl: 'chip.scss',\n shadow: true,\n})\nexport class Chip {\n @Element() hostElement!: HTMLIxChipElement;\n\n /**\n * Chip variant\n */\n @Prop({ reflect: true }) variant:\n | 'primary'\n | 'alarm'\n | 'critical'\n | 'warning'\n | 'info'\n | 'neutral'\n | 'success'\n | 'custom' = 'primary';\n\n /**\n * Determines if the chip is interactive. If true no user input (e.g. mouse states, keyboard navigation)\n * will be possible and also the close button will not be present.\n */\n @Prop() inactive = false;\n\n /**\n * Show close icon\n */\n @Prop() closable = false;\n\n /**\n * Show icon\n */\n @Prop() icon?: string;\n\n /**\n * Custom background color.\n * Only has an effect on chips with `variant='custom'`\n */\n @Prop() background: string | undefined;\n\n /**\n * Custom font and icon color.\n * Only has an effect on chips with `variant='custom'`\n */\n @Prop() chipColor: string | undefined;\n\n /**\n * Show chip with outline style\n */\n @Prop() outline = false;\n\n /**\n * Display a tooltip. By default, no tooltip will be displayed.\n * Add the attribute to display the text content of the component as a tooltip or use a string to display a custom text.\n *\n * @since 3.0.0\n */\n @Prop() tooltipText: string | boolean = false;\n\n /**\n * Center the content of the chip.\n * Set to false to disable centering.\n * @since 3.2.0\n */\n @Prop() centerContent = false;\n\n /**\n * ARIA label for the close button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelCloseButton?: string;\n\n /**\n * Fire event if close button is clicked\n */\n @Event() closeChip!: EventEmitter;\n\n private readonly containerElementRef = makeRef<HTMLElement>();\n\n private getCloseButton() {\n return (\n <div class=\"close-button-container\">\n <ix-icon-button\n type=\"button\"\n variant=\"subtle-tertiary\"\n icon={iconCloseSmall}\n class=\"close-button\"\n oval\n size=\"16\"\n style={this.variant === 'custom' ? { color: this.chipColor } : {}}\n onClick={(event) => {\n this.closeChip.emit(event);\n event.stopPropagation();\n }}\n aria-label={this.ariaLabelCloseButton}\n ></ix-icon-button>\n </div>\n );\n }\n\n private getTooltip() {\n if (!this.tooltipText && !this.hostElement.hasAttribute('tooltip-text')) {\n return null;\n }\n\n const text =\n typeof this.tooltipText === 'string' && this.tooltipText.trim()\n ? this.tooltipText\n : this.hostElement.textContent?.trim();\n\n return (\n <ix-tooltip for={this.containerElementRef.waitForCurrent()}>\n {text}\n </ix-tooltip>\n );\n }\n\n render() {\n let customStyle = {};\n\n if (this.variant === 'custom') {\n customStyle = {\n color: this.chipColor,\n [this.outline ? 'borderColor' : 'backgroundColor']: this.background,\n };\n }\n\n return (\n <Host\n tabIndex=\"-1\"\n class={{\n inactive: this.inactive,\n }}\n style={\n this.variant === 'custom'\n ? {\n '--ix-icon-button-color': this.chipColor,\n }\n : {}\n }\n >\n <div\n ref={this.containerElementRef}\n style={{ ...customStyle }}\n class={{\n container: true,\n outline: this.outline,\n inactive: this.inactive,\n alarm: this.variant === 'alarm',\n critical: this.variant === 'critical',\n info: this.variant === 'info',\n neutral: this.variant === 'neutral',\n primary: this.variant === 'primary',\n success: this.variant === 'success',\n warning: this.variant === 'warning',\n custom: this.variant === 'custom',\n closable: this.closable,\n icon: !!this.icon,\n centerContent: this.centerContent,\n }}\n >\n <div class=\"content-wrapper\">\n {this.icon && (\n <ix-icon\n class={{\n 'with-icon': true,\n }}\n name={this.icon}\n size={'24'}\n style={\n this.variant === 'custom'\n ? { color: this.outline ? this.background : this.chipColor }\n : undefined\n }\n />\n )}\n <span class=\"slot-container\">\n <slot></slot>\n </span>\n </div>\n {this.inactive === false && this.closable && this.getCloseButton()}\n </div>\n {this.getTooltip()}\n </Host>\n );\n }\n}\n"]}
@@ -22,9 +22,9 @@ export class DateDropdown {
22
22
  */
23
23
  this.format = 'yyyy/LL/dd';
24
24
  /**
25
- * If true a range of dates can be selected.
25
+ * If true disables date range selection (from/to).
26
26
  */
27
- this.range = true;
27
+ this.singleSelection = false;
28
28
  /**
29
29
  * Picker date. If the picker is in range mode this property is the start date.
30
30
  * If set to `null` no default start date will be pre-selected.
@@ -69,11 +69,11 @@ export class DateDropdown {
69
69
  */
70
70
  this.showWeekNumbers = false;
71
71
  /**
72
- * Controls whether the user is allowed to pick custom date ranges in the component.
73
- * When set to 'true', the user can select a custom date range using the date picker.
74
- * When set to 'false', only predefined time date ranges are available for selection.
72
+ * Controls whether custom date range selection is disabled in the component.
73
+ * When set to 'false', the user can select a custom date range using the date picker.
74
+ * When set to 'true', only predefined time date ranges are available for selection.
75
75
  */
76
- this.customRangeAllowed = true;
76
+ this.customRangeDisabled = false;
77
77
  /**
78
78
  * An array of predefined date range options for the date picker.
79
79
  * Each option is an object with a label describing the range and a function
@@ -147,7 +147,7 @@ export class DateDropdown {
147
147
  initialize() {
148
148
  const isCustomRange = this.dateRangeId === 'custom' ||
149
149
  (!this.dateRangeId && !!this.from && !!this.to);
150
- if (isCustomRange && this.customRangeAllowed) {
150
+ if (isCustomRange && !this.customRangeDisabled) {
151
151
  this.selectedDateRangeId = 'custom';
152
152
  this.updateCurrentDate();
153
153
  return;
@@ -217,21 +217,21 @@ export class DateDropdown {
217
217
  }
218
218
  render() {
219
219
  var _a, _b, _c;
220
- return (h(Host, { key: 'b977b971c393e2decb1ee6b5d9a0f289b97a9d49' }, h("ix-button", { key: 'bb9b321daff499f439d555a5bdaca1beac6d945c', "data-testid": "date-dropdown-trigger", "data-date-dropdown-trigger": true, variant: this.variant, loading: this.loading, icon: iconHistory, ref: this.triggerRef, disabled: this.disabled, ariaLabel: this.ariaLabelDropdownButton }, this.getButtonLabel()), h("ix-dropdown", { key: 'a9b816ca1356acaf7de353b30bfd0b248adddb67', "data-testid": "date-dropdown", "data-date-dropdown": true, class: "min-width max-height", trigger: this.triggerRef.waitForCurrent(), closeBehavior: "outside", placement: "bottom-start", onShowChanged: ({ detail: show }) => {
220
+ return (h(Host, { key: 'b0c80bf0c01f34eccf3ffd03cab8cb4598122b8e' }, h("ix-button", { key: '19fc20d03477850083cc6274ea8b4269fb827365', "data-testid": "date-dropdown-trigger", "data-date-dropdown-trigger": true, variant: this.variant, loading: this.loading, icon: iconHistory, ref: this.triggerRef, disabled: this.disabled, ariaLabel: this.ariaLabelDropdownButton }, this.getButtonLabel()), h("ix-dropdown", { key: '8b0260dd47fd1e6267b539ef0f12a544f3817c93', "data-testid": "date-dropdown", "data-date-dropdown": true, class: "min-width max-height", trigger: this.triggerRef.waitForCurrent(), closeBehavior: "outside", placement: "bottom-start", onShowChanged: ({ detail: show }) => {
221
221
  if (!show &&
222
222
  this.selectedDateRangeId === 'custom' &&
223
223
  this.datePickerTouched &&
224
224
  this.currentRangeValue) {
225
225
  this.onDateSelect(this.currentRangeValue);
226
226
  }
227
- } }, h("ix-layout-grid", { key: '506cb9851836d4afd5cd3389392134711dbf6d06', noMargin: true }, h("ix-row", { key: '3535f191761b9eba9acce33a00cfb0e57fb8dfcf' }, ((_a = this.dateRangeOptions) === null || _a === void 0 ? void 0 : _a.length) > 1 && (h("ix-col", { key: '18aa27777967221e10c5e64463b2f06d00f5cb86', class: {
227
+ } }, h("ix-layout-grid", { key: '827aa5f75b7351f7194800e5d08e99be05550674', noMargin: true }, h("ix-row", { key: '31a94fc990f9f4a30f3259e1148e897d512b3408' }, ((_a = this.dateRangeOptions) === null || _a === void 0 ? void 0 : _a.length) > 1 && (h("ix-col", { key: '4c6222ffde5a8f8644f7e4030f5942e148014e2f', class: {
228
228
  'no-margin': true,
229
229
  'border-right': this.selectedDateRangeId === 'custom',
230
- } }, this.dateRangeOptions.map((dateRangeOption) => (h("ix-dropdown-item", { label: dateRangeOption.label, onClick: () => this.onRangeListSelect(dateRangeOption.id), checked: this.selectedDateRangeId === dateRangeOption.id }))), h("div", { key: '99819aa2022de83a79f9a405e875dd0749ce7e8c', hidden: !this.customRangeAllowed }, h("ix-dropdown-item", { key: 'd60f7d8ada6b1a8835289b39f70c4a2082c3bddc', label: this.i18nCustomItem, checked: this.selectedDateRangeId === 'custom', onClick: () => this.onRangeListSelect('custom') })))), h("ix-col", { key: 'b20fd6accb39f3f91450c9474b726ec5cd80a7e7', class: "no-margin" }, this.selectedDateRangeId === 'custom' && (h(Fragment, { key: '69fe830b8d426b735274ada9e2d600dd0b402f42' }, h("ix-date-picker", { key: 'bcfd9bcfa0517dfd8947ce39668bfd2a9e732708', standaloneAppearance: false, locale: this.locale, onDateChange: (e) => {
230
+ } }, this.dateRangeOptions.map((dateRangeOption) => (h("ix-dropdown-item", { label: dateRangeOption.label, onClick: () => this.onRangeListSelect(dateRangeOption.id), checked: this.selectedDateRangeId === dateRangeOption.id }))), h("div", { key: '7c6e52ce4e81ba257925eaf9dae155d1fff0bcf1', hidden: this.customRangeDisabled }, h("ix-dropdown-item", { key: '6be7c3b1b827a75c51f82edd8971b3cc53f8167c', label: this.i18nCustomItem, checked: this.selectedDateRangeId === 'custom', onClick: () => this.onRangeListSelect('custom') })))), h("ix-col", { key: 'a8119f9199cb8e4e162688bfdcf4f91242fbd5b7', class: "no-margin" }, this.selectedDateRangeId === 'custom' && (h(Fragment, { key: 'bd24f234a02cc55ed73df93ca6d6791d11d9ad77' }, h("ix-date-picker", { key: '0aaf7e9c3ee79d9d232eed14fb840e246caddd20', embedded: true, locale: this.locale, onDateChange: (e) => {
231
231
  e.stopPropagation();
232
232
  this.currentRangeValue = Object.assign(Object.assign({}, e.detail), { id: 'custom' });
233
233
  this.datePickerTouched = true;
234
- }, onDateRangeChange: (e) => e.stopPropagation(), format: this.format, range: this.range, from: this.from || ((_b = this.currentRangeValue) === null || _b === void 0 ? void 0 : _b.from), to: this.to || ((_c = this.currentRangeValue) === null || _c === void 0 ? void 0 : _c.to), minDate: this.minDate, maxDate: this.maxDate, today: this.today, weekStartIndex: this.weekStartIndex, showWeekNumbers: this.showWeekNumbers }), h("div", { key: '08f452db2c829fbb0e6e25e0c3ea38bb0c4a5361', class: "pull-right" }, h("ix-button", { key: '33b0f283488347219afb840cfcdf92e308da58de', onClick: () => {
234
+ }, onDateRangeChange: (e) => e.stopPropagation(), format: this.format, singleSelection: this.singleSelection, from: this.from || ((_b = this.currentRangeValue) === null || _b === void 0 ? void 0 : _b.from), to: this.to || ((_c = this.currentRangeValue) === null || _c === void 0 ? void 0 : _c.to), minDate: this.minDate, maxDate: this.maxDate, today: this.today, weekStartIndex: this.weekStartIndex, showWeekNumbers: this.showWeekNumbers }), h("div", { key: 'f2bd49f4ca5012eb32fc4e859bb6e9da2cd25f3d', class: "pull-right" }, h("ix-button", { key: '18cb506d16700b59884660c4d8afb63c6e66400b', onClick: () => {
235
235
  if (this.currentRangeValue) {
236
236
  this.onDateSelect(this.currentRangeValue);
237
237
  }
@@ -291,9 +291,9 @@ export class DateDropdown {
291
291
  "reflect": false,
292
292
  "defaultValue": "'yyyy/LL/dd'"
293
293
  },
294
- "range": {
294
+ "singleSelection": {
295
295
  "type": "boolean",
296
- "attribute": "range",
296
+ "attribute": "single-selection",
297
297
  "mutable": false,
298
298
  "complexType": {
299
299
  "original": "boolean",
@@ -304,12 +304,12 @@ export class DateDropdown {
304
304
  "optional": false,
305
305
  "docs": {
306
306
  "tags": [],
307
- "text": "If true a range of dates can be selected."
307
+ "text": "If true disables date range selection (from/to)."
308
308
  },
309
309
  "getter": false,
310
310
  "setter": false,
311
311
  "reflect": false,
312
- "defaultValue": "true"
312
+ "defaultValue": "false"
313
313
  },
314
314
  "from": {
315
315
  "type": "string",
@@ -499,9 +499,9 @@ export class DateDropdown {
499
499
  "setter": false,
500
500
  "reflect": false
501
501
  },
502
- "customRangeAllowed": {
502
+ "customRangeDisabled": {
503
503
  "type": "boolean",
504
- "attribute": "custom-range-allowed",
504
+ "attribute": "custom-range-disabled",
505
505
  "mutable": false,
506
506
  "complexType": {
507
507
  "original": "boolean",
@@ -512,12 +512,12 @@ export class DateDropdown {
512
512
  "optional": false,
513
513
  "docs": {
514
514
  "tags": [],
515
- "text": "Controls whether the user is allowed to pick custom date ranges in the component.\nWhen set to 'true', the user can select a custom date range using the date picker.\nWhen set to 'false', only predefined time date ranges are available for selection."
515
+ "text": "Controls whether custom date range selection is disabled in the component.\nWhen set to 'false', the user can select a custom date range using the date picker.\nWhen set to 'true', only predefined time date ranges are available for selection."
516
516
  },
517
517
  "getter": false,
518
518
  "setter": false,
519
519
  "reflect": false,
520
- "defaultValue": "true"
520
+ "defaultValue": "false"
521
521
  },
522
522
  "dateRangeOptions": {
523
523
  "type": "unknown",
@@ -1 +1 @@
1
- {"version":3,"file":"date-dropdown.js","sourceRoot":"","sources":["../../../src/components/date-dropdown/date-dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { type LiteralStringUnion } from '../utils/type-helper';\nimport { IxDatePickerComponent } from '../date-picker/date-picker-component';\nimport { makeRef } from '../utils/make-ref';\nimport { ButtonVariant } from '../button/button';\nimport { IxButtonComponent } from '../button/button-component';\nimport { iconHistory } from '@siemens/ix-icons/icons';\nimport type {\n DateDropdownOption,\n DateRangeChangeEvent,\n} from './date-dropdown.types';\n\n@Component({\n tag: 'ix-date-dropdown',\n styleUrl: 'date-dropdown.scss',\n shadow: true,\n})\nexport class DateDropdown\n implements\n Omit<IxDatePickerComponent, 'corners'>,\n Omit<IxButtonComponent, 'type' | 'icon'>\n{\n @Element() hostElement!: HTMLIxDateDropdownElement;\n\n /**\n * Disable the button that opens the dropdown containing the date picker.\n */\n @Prop() disabled = false;\n\n /**\n * Date format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() format = 'yyyy/LL/dd';\n\n /**\n * If true a range of dates can be selected.\n */\n @Prop() range = true;\n\n /**\n * Picker date. If the picker is in range mode this property is the start date.\n * If set to `null` no default start date will be pre-selected.\n *\n * Format is based on `format`\n */\n @Prop() from = '';\n\n /**\n * Picker date. If the picker is in range mode this property is the end date.\n * If the picker is not in range mode leave this value `null`\n *\n * Format is based on `format`\n */\n @Prop() to = '';\n\n /**\n * The earliest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate = '';\n\n /**\n * The latest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Used to set the initial select date range as well as the button name,\n * if not set or no according date range label is found, nothing will be selected\n */\n @Prop() dateRangeId = 'custom';\n\n /**\n * Button variant\n */\n @Prop() variant: ButtonVariant = 'primary';\n\n /**\n * Loading button\n */\n @Prop() loading: boolean = false;\n\n /**\n * Shows week numbers displayed on the left side of the date picker\n *\n * @since 3.0.0\n */\n @Prop() showWeekNumbers = false;\n\n /**\n * ARIA label for the dropdown\n * Will be set as aria-label on the nested HTML button element that will trigger the dropdown\n */\n @Prop() ariaLabelDropdownButton?: string;\n\n @Watch('dateRangeId')\n @Watch('to')\n @Watch('from')\n onDateRangeIdChange() {\n this.onRangeListSelect(this.dateRangeId);\n this.updateCurrentDate();\n this.setDateRangeSelection(this.dateRangeId);\n\n if (!this.currentRangeValue) {\n return;\n }\n\n this.onDateSelect({\n from: this.currentRangeValue.from,\n to: this.currentRangeValue.to,\n id: this.currentRangeValue.id,\n });\n }\n\n /**\n * Controls whether the user is allowed to pick custom date ranges in the component.\n * When set to 'true', the user can select a custom date range using the date picker.\n * When set to 'false', only predefined time date ranges are available for selection.\n */\n @Prop() customRangeAllowed = true;\n\n /**\n * An array of predefined date range options for the date picker.\n * Each option is an object with a label describing the range and a function\n * that returns the start and end dates of the range as a DateRangeOption object.\n *\n * Example format:\n * {\n * id: 'some unique id',\n * label: 'Name of the range',\n * from: undefined, to: '2023/03/29'\n * },\n * // ... other predefined date range options ...\n */\n @Prop() dateRangeOptions: DateDropdownOption[] = [];\n\n @Watch('dateRangeOptions')\n onDateRangeOptionsChange() {\n this.initialize();\n this.onDateRangeIdChange();\n }\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n */\n @Prop() locale?: string;\n\n /**\n * The index of which day to start the week on, based on the Locale#weekdays array.\n * E.g. if the locale is en-us, weekStartIndex = 1 results in starting the week on monday.\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Text for custom dropdown item. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-custom-item' }) i18nCustomItem = 'Custom...';\n\n /**\n * Text for the done button. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone = 'Done';\n\n /**\n * Text for the done button. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-no-range' }) i18nNoRange = 'No range set';\n\n /** @internal */\n @Prop() today = DateTime.now().toISO();\n\n /**\n * EventEmitter for date range change events.\n *\n * This event is emitted when the date range changes within the component.\n * The event payload contains information about the selected date range.\n */\n @Event()\n private readonly dateRangeChange!: EventEmitter<DateRangeChangeEvent>;\n\n @State() private selectedDateRangeId: LiteralStringUnion<'custom'> = '';\n @State() private currentRangeValue?: {\n from?: string;\n to?: string;\n id: string;\n };\n private readonly triggerRef = makeRef<HTMLElement>();\n\n @Watch('disabled')\n onDisabledChange() {\n if (this.disabled) {\n this.closeDropdown();\n }\n }\n\n private datePickerTouched = false;\n\n componentWillLoad() {\n this.initialize();\n this.setDateRangeSelection(this.dateRangeId);\n }\n\n /**\n * Retrieves the currently selected date range from the component.\n * This method returns the selected date range as a `DateChangeEvent` object.\n */\n @Method()\n public async getDateRange(): Promise<DateRangeChangeEvent> {\n return this.currentRangeValue || { id: '', from: '', to: '' };\n }\n\n private initialize() {\n const isCustomRange =\n this.dateRangeId === 'custom' ||\n (!this.dateRangeId && !!this.from && !!this.to);\n\n if (isCustomRange && this.customRangeAllowed) {\n this.selectedDateRangeId = 'custom';\n this.updateCurrentDate();\n\n return;\n }\n const isValidConfiguration = !isCustomRange && !this.from;\n if (!isValidConfiguration) {\n console.warn(\n '\"from\" and \"range-date-id\" is provided this is an invalid combination. Using \"custom\".'\n );\n\n this.selectedDateRangeId = 'custom';\n this.updateCurrentDate();\n\n return;\n }\n }\n\n private updateCurrentDate() {\n this.currentRangeValue = {\n id: this.selectedDateRangeId,\n from: this.from,\n to: this.to,\n };\n }\n\n private onDateSelect(\n rangeValue: { from?: string; to?: string; id: string },\n preserveDropdown = true\n ) {\n this.dateRangeChange.emit(rangeValue);\n\n if (preserveDropdown) {\n this.closeDropdown();\n }\n\n this.datePickerTouched = false;\n }\n\n private onRangeListSelect(id: string) {\n if (this.setDateRangeSelection(id) && this.currentRangeValue) {\n this.onDateSelect(this.currentRangeValue);\n }\n }\n\n private setDateRangeSelection(id: string) {\n this.selectedDateRangeId = id;\n const option = this.dateRangeOptions.find((range) => range.id === id);\n\n if (option) {\n this.currentRangeValue = option;\n }\n\n return option;\n }\n\n private closeDropdown() {\n const dropdown = this.hostElement.shadowRoot!.querySelector('ix-dropdown');\n\n if (dropdown) {\n dropdown.show = false;\n }\n }\n\n private getButtonLabel() {\n if (this.selectedDateRangeId === 'custom' && this.currentRangeValue?.from) {\n let range = this.currentRangeValue.from;\n\n if (this.currentRangeValue.to) {\n range += ` - ${this.currentRangeValue.to}`;\n }\n\n return range;\n }\n\n if (!this.selectedDateRangeId) {\n return this.i18nNoRange;\n }\n\n if (!this.dateRangeOptions || this.dateRangeOptions?.length === 0) {\n return this.i18nNoRange;\n }\n\n const option = this.dateRangeOptions.find(\n (option) => option.id === this.selectedDateRangeId\n );\n\n if (!option) {\n console.error(\n `Cannot find range option with id ${this.selectedDateRangeId}`\n );\n return this.i18nNoRange;\n }\n\n return option.label;\n }\n\n render() {\n return (\n <Host>\n <ix-button\n data-testid=\"date-dropdown-trigger\"\n data-date-dropdown-trigger\n variant={this.variant}\n loading={this.loading}\n icon={iconHistory}\n ref={this.triggerRef}\n disabled={this.disabled}\n ariaLabel={this.ariaLabelDropdownButton}\n >\n {this.getButtonLabel()}\n </ix-button>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n data-date-dropdown\n class=\"min-width max-height\"\n trigger={this.triggerRef.waitForCurrent()}\n closeBehavior=\"outside\"\n placement=\"bottom-start\"\n onShowChanged={({ detail: show }) => {\n if (\n !show &&\n this.selectedDateRangeId === 'custom' &&\n this.datePickerTouched &&\n this.currentRangeValue\n ) {\n this.onDateSelect(this.currentRangeValue);\n }\n }}\n >\n <ix-layout-grid noMargin>\n <ix-row>\n {this.dateRangeOptions?.length > 1 && (\n <ix-col\n class={{\n 'no-margin': true,\n 'border-right': this.selectedDateRangeId === 'custom',\n }}\n >\n {this.dateRangeOptions.map((dateRangeOption) => (\n <ix-dropdown-item\n label={dateRangeOption.label}\n onClick={() => this.onRangeListSelect(dateRangeOption.id)}\n checked={this.selectedDateRangeId === dateRangeOption.id}\n ></ix-dropdown-item>\n ))}\n <div hidden={!this.customRangeAllowed}>\n <ix-dropdown-item\n label={this.i18nCustomItem}\n checked={this.selectedDateRangeId === 'custom'}\n onClick={() => this.onRangeListSelect('custom')}\n ></ix-dropdown-item>\n </div>\n </ix-col>\n )}\n <ix-col class=\"no-margin\">\n {this.selectedDateRangeId === 'custom' && (\n <Fragment>\n <ix-date-picker\n standaloneAppearance={false}\n locale={this.locale}\n onDateChange={(e) => {\n e.stopPropagation();\n this.currentRangeValue = {\n ...e.detail,\n id: 'custom',\n };\n this.datePickerTouched = true;\n }}\n onDateRangeChange={(e) => e.stopPropagation()}\n format={this.format}\n range={this.range}\n from={this.from || this.currentRangeValue?.from}\n to={this.to || this.currentRangeValue?.to}\n minDate={this.minDate}\n maxDate={this.maxDate}\n today={this.today}\n weekStartIndex={this.weekStartIndex}\n showWeekNumbers={this.showWeekNumbers}\n ></ix-date-picker>\n <div class=\"pull-right\">\n <ix-button\n onClick={() => {\n if (this.currentRangeValue) {\n this.onDateSelect(this.currentRangeValue);\n }\n }}\n >\n {this.i18nDone}\n </ix-button>\n </div>\n </Fragment>\n )}\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"date-dropdown.js","sourceRoot":"","sources":["../../../src/components/date-dropdown/date-dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { type LiteralStringUnion } from '../utils/type-helper';\nimport { IxDatePickerComponent } from '../date-picker/date-picker-component';\nimport { makeRef } from '../utils/make-ref';\nimport { ButtonVariant } from '../button/button';\nimport { IxButtonComponent } from '../button/button-component';\nimport { iconHistory } from '@siemens/ix-icons/icons';\nimport type {\n DateDropdownOption,\n DateRangeChangeEvent,\n} from './date-dropdown.types';\n\n@Component({\n tag: 'ix-date-dropdown',\n styleUrl: 'date-dropdown.scss',\n shadow: true,\n})\nexport class DateDropdown\n implements\n Omit<IxDatePickerComponent, 'corners'>,\n Omit<IxButtonComponent, 'type' | 'icon'>\n{\n @Element() hostElement!: HTMLIxDateDropdownElement;\n\n /**\n * Disable the button that opens the dropdown containing the date picker.\n */\n @Prop() disabled = false;\n\n /**\n * Date format string.\n * See {@link https://moment.github.io/luxon/#/formatting?id=table-of-tokens} for all available tokens.\n */\n @Prop() format = 'yyyy/LL/dd';\n\n /**\n * If true disables date range selection (from/to).\n */\n @Prop() singleSelection = false;\n\n /**\n * Picker date. If the picker is in range mode this property is the start date.\n * If set to `null` no default start date will be pre-selected.\n *\n * Format is based on `format`\n */\n @Prop() from = '';\n\n /**\n * Picker date. If the picker is in range mode this property is the end date.\n * If the picker is not in range mode leave this value `null`\n *\n * Format is based on `format`\n */\n @Prop() to = '';\n\n /**\n * The earliest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() minDate = '';\n\n /**\n * The latest date that can be selected by the date picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Used to set the initial select date range as well as the button name,\n * if not set or no according date range label is found, nothing will be selected\n */\n @Prop() dateRangeId = 'custom';\n\n /**\n * Button variant\n */\n @Prop() variant: ButtonVariant = 'primary';\n\n /**\n * Loading button\n */\n @Prop() loading: boolean = false;\n\n /**\n * Shows week numbers displayed on the left side of the date picker\n *\n * @since 3.0.0\n */\n @Prop() showWeekNumbers = false;\n\n /**\n * ARIA label for the dropdown\n * Will be set as aria-label on the nested HTML button element that will trigger the dropdown\n */\n @Prop() ariaLabelDropdownButton?: string;\n\n @Watch('dateRangeId')\n @Watch('to')\n @Watch('from')\n onDateRangeIdChange() {\n this.onRangeListSelect(this.dateRangeId);\n this.updateCurrentDate();\n this.setDateRangeSelection(this.dateRangeId);\n\n if (!this.currentRangeValue) {\n return;\n }\n\n this.onDateSelect({\n from: this.currentRangeValue.from,\n to: this.currentRangeValue.to,\n id: this.currentRangeValue.id,\n });\n }\n\n /**\n * Controls whether custom date range selection is disabled in the component.\n * When set to 'false', the user can select a custom date range using the date picker.\n * When set to 'true', only predefined time date ranges are available for selection.\n */\n @Prop() customRangeDisabled = false;\n\n /**\n * An array of predefined date range options for the date picker.\n * Each option is an object with a label describing the range and a function\n * that returns the start and end dates of the range as a DateRangeOption object.\n *\n * Example format:\n * {\n * id: 'some unique id',\n * label: 'Name of the range',\n * from: undefined, to: '2023/03/29'\n * },\n * // ... other predefined date range options ...\n */\n @Prop() dateRangeOptions: DateDropdownOption[] = [];\n\n @Watch('dateRangeOptions')\n onDateRangeOptionsChange() {\n this.initialize();\n this.onDateRangeIdChange();\n }\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n */\n @Prop() locale?: string;\n\n /**\n * The index of which day to start the week on, based on the Locale#weekdays array.\n * E.g. if the locale is en-us, weekStartIndex = 1 results in starting the week on monday.\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Text for custom dropdown item. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-custom-item' }) i18nCustomItem = 'Custom...';\n\n /**\n * Text for the done button. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone = 'Done';\n\n /**\n * Text for the done button. Will be used for translation.\n */\n @Prop({ attribute: 'i18n-no-range' }) i18nNoRange = 'No range set';\n\n /** @internal */\n @Prop() today = DateTime.now().toISO();\n\n /**\n * EventEmitter for date range change events.\n *\n * This event is emitted when the date range changes within the component.\n * The event payload contains information about the selected date range.\n */\n @Event()\n private readonly dateRangeChange!: EventEmitter<DateRangeChangeEvent>;\n\n @State() private selectedDateRangeId: LiteralStringUnion<'custom'> = '';\n @State() private currentRangeValue?: {\n from?: string;\n to?: string;\n id: string;\n };\n private readonly triggerRef = makeRef<HTMLElement>();\n\n @Watch('disabled')\n onDisabledChange() {\n if (this.disabled) {\n this.closeDropdown();\n }\n }\n\n private datePickerTouched = false;\n\n componentWillLoad() {\n this.initialize();\n this.setDateRangeSelection(this.dateRangeId);\n }\n\n /**\n * Retrieves the currently selected date range from the component.\n * This method returns the selected date range as a `DateChangeEvent` object.\n */\n @Method()\n public async getDateRange(): Promise<DateRangeChangeEvent> {\n return this.currentRangeValue || { id: '', from: '', to: '' };\n }\n\n private initialize() {\n const isCustomRange =\n this.dateRangeId === 'custom' ||\n (!this.dateRangeId && !!this.from && !!this.to);\n\n if (isCustomRange && !this.customRangeDisabled) {\n this.selectedDateRangeId = 'custom';\n this.updateCurrentDate();\n\n return;\n }\n const isValidConfiguration = !isCustomRange && !this.from;\n if (!isValidConfiguration) {\n console.warn(\n '\"from\" and \"range-date-id\" is provided this is an invalid combination. Using \"custom\".'\n );\n\n this.selectedDateRangeId = 'custom';\n this.updateCurrentDate();\n\n return;\n }\n }\n\n private updateCurrentDate() {\n this.currentRangeValue = {\n id: this.selectedDateRangeId,\n from: this.from,\n to: this.to,\n };\n }\n\n private onDateSelect(\n rangeValue: { from?: string; to?: string; id: string },\n preserveDropdown = true\n ) {\n this.dateRangeChange.emit(rangeValue);\n\n if (preserveDropdown) {\n this.closeDropdown();\n }\n\n this.datePickerTouched = false;\n }\n\n private onRangeListSelect(id: string) {\n if (this.setDateRangeSelection(id) && this.currentRangeValue) {\n this.onDateSelect(this.currentRangeValue);\n }\n }\n\n private setDateRangeSelection(id: string) {\n this.selectedDateRangeId = id;\n const option = this.dateRangeOptions.find((range) => range.id === id);\n\n if (option) {\n this.currentRangeValue = option;\n }\n\n return option;\n }\n\n private closeDropdown() {\n const dropdown = this.hostElement.shadowRoot!.querySelector('ix-dropdown');\n\n if (dropdown) {\n dropdown.show = false;\n }\n }\n\n private getButtonLabel() {\n if (this.selectedDateRangeId === 'custom' && this.currentRangeValue?.from) {\n let range = this.currentRangeValue.from;\n\n if (this.currentRangeValue.to) {\n range += ` - ${this.currentRangeValue.to}`;\n }\n\n return range;\n }\n\n if (!this.selectedDateRangeId) {\n return this.i18nNoRange;\n }\n\n if (!this.dateRangeOptions || this.dateRangeOptions?.length === 0) {\n return this.i18nNoRange;\n }\n\n const option = this.dateRangeOptions.find(\n (option) => option.id === this.selectedDateRangeId\n );\n\n if (!option) {\n console.error(\n `Cannot find range option with id ${this.selectedDateRangeId}`\n );\n return this.i18nNoRange;\n }\n\n return option.label;\n }\n\n render() {\n return (\n <Host>\n <ix-button\n data-testid=\"date-dropdown-trigger\"\n data-date-dropdown-trigger\n variant={this.variant}\n loading={this.loading}\n icon={iconHistory}\n ref={this.triggerRef}\n disabled={this.disabled}\n ariaLabel={this.ariaLabelDropdownButton}\n >\n {this.getButtonLabel()}\n </ix-button>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n data-date-dropdown\n class=\"min-width max-height\"\n trigger={this.triggerRef.waitForCurrent()}\n closeBehavior=\"outside\"\n placement=\"bottom-start\"\n onShowChanged={({ detail: show }) => {\n if (\n !show &&\n this.selectedDateRangeId === 'custom' &&\n this.datePickerTouched &&\n this.currentRangeValue\n ) {\n this.onDateSelect(this.currentRangeValue);\n }\n }}\n >\n <ix-layout-grid noMargin>\n <ix-row>\n {this.dateRangeOptions?.length > 1 && (\n <ix-col\n class={{\n 'no-margin': true,\n 'border-right': this.selectedDateRangeId === 'custom',\n }}\n >\n {this.dateRangeOptions.map((dateRangeOption) => (\n <ix-dropdown-item\n label={dateRangeOption.label}\n onClick={() => this.onRangeListSelect(dateRangeOption.id)}\n checked={this.selectedDateRangeId === dateRangeOption.id}\n ></ix-dropdown-item>\n ))}\n <div hidden={this.customRangeDisabled}>\n <ix-dropdown-item\n label={this.i18nCustomItem}\n checked={this.selectedDateRangeId === 'custom'}\n onClick={() => this.onRangeListSelect('custom')}\n ></ix-dropdown-item>\n </div>\n </ix-col>\n )}\n <ix-col class=\"no-margin\">\n {this.selectedDateRangeId === 'custom' && (\n <Fragment>\n <ix-date-picker\n embedded\n locale={this.locale}\n onDateChange={(e) => {\n e.stopPropagation();\n this.currentRangeValue = {\n ...e.detail,\n id: 'custom',\n };\n this.datePickerTouched = true;\n }}\n onDateRangeChange={(e) => e.stopPropagation()}\n format={this.format}\n singleSelection={this.singleSelection}\n from={this.from || this.currentRangeValue?.from}\n to={this.to || this.currentRangeValue?.to}\n minDate={this.minDate}\n maxDate={this.maxDate}\n today={this.today}\n weekStartIndex={this.weekStartIndex}\n showWeekNumbers={this.showWeekNumbers}\n ></ix-date-picker>\n <div class=\"pull-right\">\n <ix-button\n onClick={() => {\n if (this.currentRangeValue) {\n this.onDateSelect(this.currentRangeValue);\n }\n }}\n >\n {this.i18nDone}\n </ix-button>\n </div>\n </Fragment>\n )}\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
@@ -237,10 +237,10 @@ export class DateInput {
237
237
  readonly: this.readonly,
238
238
  } }, h("ix-field-wrapper", { key: '73aa5675f617a35479465eacc2959391f57e78e9', label: this.label, helperText: this.helperText, isInvalid: this.isInvalid, invalidText: invalidText, infoText: this.infoText, isInfo: this.isInfo, isWarning: this.isWarning, warningText: this.warningText, isValid: this.isValid, validText: this.validText, showTextAsTooltip: this.showTextAsTooltip, required: this.required, controlRef: this.inputElementRef }, this.renderInput()), h("ix-dropdown", { key: '6b219ac0027370f8c140feb9c438750259f93ef8', "data-testid": "date-dropdown", trigger: this.inputElementRef.waitForCurrent(), ref: this.dropdownElementRef, closeBehavior: "outside", suppressOverflowBehavior: true, show: this.show, onShowChanged: (event) => {
239
239
  this.show = event.detail;
240
- } }, h("ix-date-picker", { key: '91dc533bd42ce5f118c73f0ea8641dd7098e082d', ref: this.datepickerRef, format: this.format, locale: this.locale, range: false, from: (_a = this.from) !== null && _a !== void 0 ? _a : '', minDate: this.minDate, maxDate: this.maxDate, onDateChange: (event) => {
240
+ } }, h("ix-date-picker", { key: '17919c46d19510dbf091683c3d5de81f0bbbb591', ref: this.datepickerRef, format: this.format, locale: this.locale, singleSelection: true, from: (_a = this.from) !== null && _a !== void 0 ? _a : '', minDate: this.minDate, maxDate: this.maxDate, onDateChange: (event) => {
241
241
  const { from } = event.detail;
242
242
  this.onInput(from);
243
- }, showWeekNumbers: this.showWeekNumbers, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, standaloneAppearance: false }))));
243
+ }, showWeekNumbers: this.showWeekNumbers, ariaLabelNextMonthButton: this.ariaLabelNextMonthButton, ariaLabelPreviousMonthButton: this.ariaLabelPreviousMonthButton, embedded: true }))));
244
244
  }
245
245
  static get is() { return "ix-date-input"; }
246
246
  static get encapsulation() { return "shadow"; }