@siemens/ix 0.0.0-pr-2155-20250929074944 → 0.0.0-pr-2166-20251001134702

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 (771) 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.js +4 -4
  38. package/components/ix-event-list.js.map +1 -1
  39. package/components/ix-expanding-search.js +1 -1
  40. package/components/ix-field-label.js +1 -1
  41. package/components/ix-field-wrapper.js +1 -1
  42. package/components/ix-filter-chip.js +1 -1
  43. package/components/ix-flip-tile.js +1 -1
  44. package/components/ix-group-context-menu.js +1 -1
  45. package/components/ix-group-item.js +1 -1
  46. package/components/ix-group.js +23 -23
  47. package/components/ix-group.js.map +1 -1
  48. package/components/ix-helper-text.js +2 -2
  49. package/components/ix-icon-button.js +1 -1
  50. package/components/ix-icon-toggle-button.js +1 -1
  51. package/components/ix-input.js +9 -9
  52. package/components/ix-key-value-list.js +1 -1
  53. package/components/ix-key-value.js +1 -1
  54. package/components/ix-kpi.js +3 -3
  55. package/components/ix-layout-auto.js +1 -1
  56. package/components/ix-layout-grid.js +1 -1
  57. package/components/ix-link-button.js +3 -3
  58. package/components/ix-map-navigation-overlay.js +1 -1
  59. package/components/ix-map-navigation.js +9 -8
  60. package/components/ix-map-navigation.js.map +1 -1
  61. package/components/ix-menu-about-item.js +1 -1
  62. package/components/ix-menu-about-news.js +8 -8
  63. package/components/ix-menu-about-news.js.map +1 -1
  64. package/components/ix-menu-about.js +2 -2
  65. package/components/ix-menu-avatar-item.js +1 -1
  66. package/components/ix-menu-avatar.js +12 -12
  67. package/components/ix-menu-avatar.js.map +1 -1
  68. package/components/ix-menu-category.js +9 -9
  69. package/components/ix-menu-expand-icon.js +1 -1
  70. package/components/ix-menu-item.js +1 -1
  71. package/components/ix-menu-settings-item.js +1 -1
  72. package/components/ix-menu-settings.js +1 -1
  73. package/components/ix-menu.js +29 -29
  74. package/components/ix-menu.js.map +1 -1
  75. package/components/ix-message-bar.js +6 -8
  76. package/components/ix-message-bar.js.map +1 -1
  77. package/components/ix-modal-content.js +1 -1
  78. package/components/ix-modal-footer.js +1 -1
  79. package/components/ix-modal-header.js +1 -1
  80. package/components/ix-modal-loading.js +1 -1
  81. package/components/ix-modal.js +16 -16
  82. package/components/ix-modal.js.map +1 -1
  83. package/components/ix-number-input.js +11 -11
  84. package/components/ix-pagination.js +20 -21
  85. package/components/ix-pagination.js.map +1 -1
  86. package/components/ix-pane-layout.js +1 -1
  87. package/components/ix-pane.js +3 -3
  88. package/components/ix-pill.js +2 -2
  89. package/components/ix-progress-indicator.js +2 -2
  90. package/components/ix-push-card.js +5 -5
  91. package/components/ix-push-card.js.map +1 -1
  92. package/components/ix-radio-group.js +4 -4
  93. package/components/ix-radio.js +1 -1
  94. package/components/ix-select.js +1 -1
  95. package/components/ix-slider.js +3 -3
  96. package/components/ix-slider.js.map +1 -1
  97. package/components/ix-split-button.js +2 -2
  98. package/components/ix-textarea.js +6 -6
  99. package/components/ix-time-input.js +9 -9
  100. package/components/ix-time-input.js.map +1 -1
  101. package/components/ix-time-picker.js +1 -1
  102. package/components/ix-toast-container.js +8 -8
  103. package/components/ix-toast-container.js.map +1 -1
  104. package/components/ix-toast.js +1 -1
  105. package/components/ix-toggle.js +4 -4
  106. package/components/ix-tooltip.js +1 -1
  107. package/components/ix-tree-item.js +1 -1
  108. package/components/ix-tree.js +2 -2
  109. package/components/ix-typography.js +1 -1
  110. package/components/ix-upload.js +5 -5
  111. package/components/ix-upload.js.map +1 -1
  112. package/components/ix-workflow-step.js +3 -3
  113. package/components/ix-workflow-steps.js +1 -1
  114. package/components/{p-BFuOBAQB.js → p-7-Wnr7e5.js} +6 -12
  115. package/components/p-7-Wnr7e5.js.map +1 -0
  116. package/components/{p-DG42PUVX.js → p-BLcKiU45.js} +3 -3
  117. package/components/{p-DG42PUVX.js.map → p-BLcKiU45.js.map} +1 -1
  118. package/components/{p-DJ6v85WG.js → p-BNYHD56q.js} +23 -23
  119. package/components/p-BNYHD56q.js.map +1 -0
  120. package/components/{p-Dauav1c7.js → p-BU9xngEb.js} +7 -7
  121. package/components/{p-Dauav1c7.js.map → p-BU9xngEb.js.map} +1 -1
  122. package/components/{p-DRlGkOeX.js → p-Ba6JlSP8.js} +5 -5
  123. package/components/{p-DRlGkOeX.js.map → p-Ba6JlSP8.js.map} +1 -1
  124. package/components/{p-BSiqAMAr.js → p-Baga5bu5.js} +6 -6
  125. package/components/{p-BSiqAMAr.js.map → p-Baga5bu5.js.map} +1 -1
  126. package/components/{p-B3IsQckh.js → p-Bc15ecXv.js} +12 -12
  127. package/components/p-Bc15ecXv.js.map +1 -0
  128. package/components/{p-CGPMGyof.js → p-BmLRwuMH.js} +5 -6
  129. package/components/p-BmLRwuMH.js.map +1 -0
  130. package/components/{p-B5cVFUyk.js → p-BruPthTZ.js} +15 -69
  131. package/components/p-BruPthTZ.js.map +1 -0
  132. package/components/{p-BrgHqrnH.js → p-C4MK63gz.js} +3 -3
  133. package/components/{p-BrgHqrnH.js.map → p-C4MK63gz.js.map} +1 -1
  134. package/components/{p-CrIOsOo-.js → p-C8wXJCK3.js} +3 -3
  135. package/components/{p-CrIOsOo-.js.map → p-C8wXJCK3.js.map} +1 -1
  136. package/components/{p-GkRC08qs.js → p-CfOUCcs9.js} +3 -3
  137. package/components/{p-GkRC08qs.js.map → p-CfOUCcs9.js.map} +1 -1
  138. package/{dist/esm/floating-ui.dom-CAqtPJ4-.js → components/p-CiSM2A9Q.js} +102 -3
  139. package/components/p-CiSM2A9Q.js.map +1 -0
  140. package/components/{p-BpW9tS2k.js → p-Cx5H0GeI.js} +21 -21
  141. package/components/p-Cx5H0GeI.js.map +1 -0
  142. package/components/{p-C3irznVN.js → p-D3ZlTDAF.js} +3 -3
  143. package/components/{p-C3irznVN.js.map → p-D3ZlTDAF.js.map} +1 -1
  144. package/components/{p-CwwKrs4u.js → p-DE74-VWH.js} +9 -9
  145. package/components/p-DE74-VWH.js.map +1 -0
  146. package/components/{p-Bquk45CV.js → p-DLcItN6d.js} +3 -3
  147. package/components/{p-Bquk45CV.js.map → p-DLcItN6d.js.map} +1 -1
  148. package/components/{p-BybP_RcT.js → p-DOGuJxKg.js} +5 -5
  149. package/components/{p-BybP_RcT.js.map → p-DOGuJxKg.js.map} +1 -1
  150. package/components/{p-DZNnQyWO.js → p-DSF854K6.js} +3 -4
  151. package/components/p-DSF854K6.js.map +1 -0
  152. package/components/p-DVPJHakC.js +78 -0
  153. package/components/p-DVPJHakC.js.map +1 -0
  154. package/components/{p-C-7UhkWz.js → p-DaR6pX8w.js} +8 -8
  155. package/components/{p-C-7UhkWz.js.map → p-DaR6pX8w.js.map} +1 -1
  156. package/components/{p-8MS-omi7.js → p-DklPCkRW.js} +3 -3
  157. package/components/{p-8MS-omi7.js.map → p-DklPCkRW.js.map} +1 -1
  158. package/components/{p-BeegOhta.js → p-Fbu6eUjk.js} +4 -4
  159. package/components/{p-BeegOhta.js.map → p-Fbu6eUjk.js.map} +1 -1
  160. package/components/{p-ma_KYqKk.js → p-bBkFZC8X.js} +3 -3
  161. package/components/{p-ma_KYqKk.js.map → p-bBkFZC8X.js.map} +1 -1
  162. package/components/{p-CzzcLSmV.js → p-gkooEHol.js} +4 -4
  163. package/components/p-gkooEHol.js.map +1 -0
  164. package/components/{p-ClGItuSn.js → p-ts3VxLYi.js} +5 -5
  165. package/components/{p-ClGItuSn.js.map → p-ts3VxLYi.js.map} +1 -1
  166. package/components/{p-CMk-tLmg.js → p-uiKHewyI.js} +4 -4
  167. package/components/{p-CMk-tLmg.js.map → p-uiKHewyI.js.map} +1 -1
  168. package/components/{p-fDEynhA5.js → p-w319yPRv.js} +5 -5
  169. package/components/{p-fDEynhA5.js.map → p-w319yPRv.js.map} +1 -1
  170. package/dist/cjs/{floating-ui.dom-CMzYsRR7.js → find-element-BNZJcvT8.js} +103 -2
  171. package/dist/cjs/find-element-BNZJcvT8.js.map +1 -0
  172. package/dist/cjs/index-DuDLgBnw.js +0 -8
  173. package/dist/cjs/index.cjs.js +1 -1
  174. package/dist/cjs/index.cjs.js.map +1 -1
  175. package/dist/cjs/ix-application-header.cjs.entry.js +1 -1
  176. package/dist/cjs/ix-application.cjs.entry.js +1 -1
  177. package/dist/cjs/ix-avatar.ix-menu-avatar-item.entry.cjs.js.map +1 -1
  178. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  179. package/dist/cjs/ix-basic-navigation.cjs.entry.js +1 -1
  180. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +7 -7
  181. package/dist/cjs/ix-breadcrumb-item.entry.cjs.js.map +1 -1
  182. package/dist/cjs/ix-breadcrumb.cjs.entry.js +6 -6
  183. package/dist/cjs/ix-breadcrumb.entry.cjs.js.map +1 -1
  184. package/dist/cjs/ix-card-list.cjs.entry.js +4 -4
  185. package/dist/cjs/ix-card-list.entry.cjs.js.map +1 -1
  186. package/dist/cjs/ix-category-filter.cjs.entry.js +9 -17
  187. package/dist/cjs/ix-category-filter.entry.cjs.js.map +1 -1
  188. package/dist/cjs/ix-chip.cjs.entry.js +8 -9
  189. package/dist/cjs/ix-chip.entry.cjs.js.map +1 -1
  190. package/dist/cjs/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.cjs.js.map +1 -1
  191. package/dist/cjs/ix-col_4.cjs.entry.js +18 -18
  192. package/dist/cjs/ix-date-dropdown.cjs.entry.js +11 -11
  193. package/dist/cjs/ix-date-dropdown.entry.cjs.js.map +1 -1
  194. package/dist/cjs/ix-date-input.cjs.entry.js +2 -2
  195. package/dist/cjs/ix-date-input.entry.cjs.js.map +1 -1
  196. package/dist/cjs/ix-date-time-card.cjs.entry.js +3 -8
  197. package/dist/cjs/ix-date-time-card.entry.cjs.js.map +1 -1
  198. package/dist/cjs/ix-datetime-picker.cjs.entry.js +3 -21
  199. package/dist/cjs/ix-datetime-picker.entry.cjs.js.map +1 -1
  200. package/dist/cjs/ix-drawer.cjs.entry.js +6 -5
  201. package/dist/cjs/ix-drawer.entry.cjs.js.map +1 -1
  202. package/dist/cjs/ix-dropdown.cjs.entry.js +7 -8
  203. package/dist/cjs/ix-dropdown.entry.cjs.js.map +1 -1
  204. package/dist/cjs/ix-event-list.cjs.entry.js +4 -4
  205. package/dist/cjs/ix-event-list.entry.cjs.js.map +1 -1
  206. package/dist/cjs/ix-group-context-menu.ix-group-item.entry.cjs.js.map +1 -1
  207. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +18 -5
  208. package/dist/cjs/ix-group.cjs.entry.js +18 -18
  209. package/dist/cjs/ix-group.entry.cjs.js.map +1 -1
  210. package/dist/cjs/ix-helper-text.cjs.entry.js +1 -1
  211. package/dist/cjs/ix-icon-button.ix-spinner.entry.cjs.js.map +1 -1
  212. package/dist/cjs/ix-icon-button_2.cjs.entry.js +1 -1
  213. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +1 -1
  214. package/dist/cjs/ix-input.cjs.entry.js +4 -4
  215. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  216. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  217. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  218. package/dist/cjs/ix-layout-auto.cjs.entry.js +1 -1
  219. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  220. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  221. package/dist/cjs/ix-map-navigation.cjs.entry.js +3 -2
  222. package/dist/cjs/ix-map-navigation.entry.cjs.js.map +1 -1
  223. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  224. package/dist/cjs/ix-menu-about-news.cjs.entry.js +5 -5
  225. package/dist/cjs/ix-menu-about-news.entry.cjs.js.map +1 -1
  226. package/dist/cjs/ix-menu-avatar.cjs.entry.js +5 -5
  227. package/dist/cjs/ix-menu-avatar.entry.cjs.js.map +1 -1
  228. package/dist/cjs/ix-menu-category.cjs.entry.js +5 -5
  229. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  230. package/dist/cjs/ix-menu-item.cjs.entry.js +4 -4
  231. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  232. package/dist/cjs/ix-menu.cjs.entry.js +18 -17
  233. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  234. package/dist/cjs/ix-message-bar.cjs.entry.js +4 -6
  235. package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
  236. package/dist/cjs/ix-modal-content_2.cjs.entry.js +2 -2
  237. package/dist/cjs/ix-modal-footer.cjs.entry.js +1 -1
  238. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  239. package/dist/cjs/ix-modal.cjs.entry.js +13 -13
  240. package/dist/cjs/ix-modal.entry.cjs.js.map +1 -1
  241. package/dist/cjs/ix-number-input.cjs.entry.js +6 -6
  242. package/dist/cjs/ix-pagination.cjs.entry.js +8 -9
  243. package/dist/cjs/ix-pagination.entry.cjs.js.map +1 -1
  244. package/dist/cjs/ix-pane-layout.cjs.entry.js +1 -1
  245. package/dist/cjs/ix-pane.cjs.entry.js +1 -1
  246. package/dist/cjs/ix-push-card.cjs.entry.js +3 -3
  247. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  248. package/dist/cjs/ix-select.cjs.entry.js +8 -8
  249. package/dist/cjs/ix-select.entry.cjs.js.map +1 -1
  250. package/dist/cjs/ix-slider.cjs.entry.js +1 -1
  251. package/dist/cjs/ix-slider.entry.cjs.js.map +1 -1
  252. package/dist/cjs/ix-textarea.cjs.entry.js +2 -2
  253. package/dist/cjs/ix-time-input.cjs.entry.js +1 -1
  254. package/dist/cjs/ix-time-input.entry.cjs.js.map +1 -1
  255. package/dist/cjs/ix-time-picker.cjs.entry.js +10 -58
  256. package/dist/cjs/ix-time-picker.entry.cjs.js.map +1 -1
  257. package/dist/cjs/ix-toast-container.cjs.entry.js +5 -5
  258. package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
  259. package/dist/cjs/ix-toast.cjs.entry.js +4 -4
  260. package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
  261. package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
  262. package/dist/cjs/ix-tooltip.cjs.entry.js +9 -10
  263. package/dist/cjs/ix-tooltip.entry.cjs.js.map +1 -1
  264. package/dist/cjs/ix-tree-item.cjs.entry.js +4 -4
  265. package/dist/cjs/ix-tree.cjs.entry.js +1 -1
  266. package/dist/cjs/ix-typography.cjs.entry.js +1 -1
  267. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  268. package/dist/cjs/ix-upload.entry.cjs.js.map +1 -1
  269. package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
  270. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  271. package/dist/cjs/loader.cjs.js +1 -1
  272. package/dist/cjs/{service-FGbUpQQM.js → service-DuiJmf7R.js} +4 -4
  273. package/dist/cjs/service-DuiJmf7R.js.map +1 -0
  274. package/dist/cjs/siemens-ix.cjs.js +1 -1
  275. package/dist/collection/collection-manifest.json +0 -2
  276. package/dist/collection/components/avatar/avatar.js +1 -1
  277. package/dist/collection/components/avatar/avatar.js.map +1 -1
  278. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -9
  279. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  280. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +16 -16
  281. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  282. package/dist/collection/components/card-list/card-list.js +6 -6
  283. package/dist/collection/components/card-list/card-list.js.map +1 -1
  284. package/dist/collection/components/category-filter/category-filter.js +15 -46
  285. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  286. package/dist/collection/components/chip/chip.js +12 -13
  287. package/dist/collection/components/chip/chip.js.map +1 -1
  288. package/dist/collection/components/date-dropdown/date-dropdown.js +19 -19
  289. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  290. package/dist/collection/components/date-input/date-input.js +2 -2
  291. package/dist/collection/components/date-input/date-input.js.map +1 -1
  292. package/dist/collection/components/date-picker/date-picker-component.js.map +1 -1
  293. package/dist/collection/components/date-picker/date-picker.js +23 -23
  294. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  295. package/dist/collection/components/date-time-card/date-time-card.js +5 -30
  296. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  297. package/dist/collection/components/datetime-picker/datetime-picker.js +8 -95
  298. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  299. package/dist/collection/components/drawer/drawer.js +6 -5
  300. package/dist/collection/components/drawer/drawer.js.map +1 -1
  301. package/dist/collection/components/event-list/event-list.js +6 -6
  302. package/dist/collection/components/event-list/event-list.js.map +1 -1
  303. package/dist/collection/components/group/group.css +12 -0
  304. package/dist/collection/components/group/group.js +23 -23
  305. package/dist/collection/components/group/group.js.map +1 -1
  306. package/dist/collection/components/group-item/group-item.css +22 -6
  307. package/dist/collection/components/group-item/group-item.js +44 -8
  308. package/dist/collection/components/group-item/group-item.js.map +1 -1
  309. package/dist/collection/components/helper-text/helper-text.js +1 -1
  310. package/dist/collection/components/icon-button/icon-button.js +2 -2
  311. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  312. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  313. package/dist/collection/components/input/input.js +4 -4
  314. package/dist/collection/components/input/number-input.js +6 -6
  315. package/dist/collection/components/input/textarea.js +2 -2
  316. package/dist/collection/components/key-value/key-value.js +1 -1
  317. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  318. package/dist/collection/components/kpi/kpi.js +3 -3
  319. package/dist/collection/components/layout-auto/layout-auto.js +1 -1
  320. package/dist/collection/components/layout-grid/layout-grid.js +2 -2
  321. package/dist/collection/components/link-button/link-button.js +3 -3
  322. package/dist/collection/components/map-navigation/map-navigation.js +3 -2
  323. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  324. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  325. package/dist/collection/components/menu/menu-expand-icon.js +1 -1
  326. package/dist/collection/components/menu/menu.js +28 -47
  327. package/dist/collection/components/menu/menu.js.map +1 -1
  328. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  329. package/dist/collection/components/menu-about-news/menu-about-news.js +7 -7
  330. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
  331. package/dist/collection/components/menu-avatar/menu-avatar.js +10 -10
  332. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  333. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  334. package/dist/collection/components/menu-category/menu-category.js +5 -5
  335. package/dist/collection/components/menu-item/menu-item.js +4 -4
  336. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  337. package/dist/collection/components/message-bar/message-bar.js +11 -16
  338. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  339. package/dist/collection/components/modal/modal.js +29 -29
  340. package/dist/collection/components/modal/modal.js.map +1 -1
  341. package/dist/collection/components/modal-content/modal-content.js +1 -1
  342. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  343. package/dist/collection/components/modal-header/modal-header.js +1 -1
  344. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  345. package/dist/collection/components/pagination/pagination.js +18 -19
  346. package/dist/collection/components/pagination/pagination.js.map +1 -1
  347. package/dist/collection/components/push-card/push-card.js +7 -7
  348. package/dist/collection/components/push-card/push-card.js.map +1 -1
  349. package/dist/collection/components/select/select.js +12 -12
  350. package/dist/collection/components/select/select.js.map +1 -1
  351. package/dist/collection/components/slider/slider.css +1 -3
  352. package/dist/collection/components/time-input/time-input.js +1 -1
  353. package/dist/collection/components/time-input/time-input.js.map +1 -1
  354. package/dist/collection/components/time-picker/time-picker.js +14 -199
  355. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  356. package/dist/collection/components/toast/toast-container.js +5 -5
  357. package/dist/collection/components/toast/toast-container.js.map +1 -1
  358. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  359. package/dist/collection/components/toast/toast.js +7 -7
  360. package/dist/collection/components/toast/toast.js.map +1 -1
  361. package/dist/collection/components/toggle/toggle.js +3 -3
  362. package/dist/collection/components/tooltip/tooltip.js +1 -1
  363. package/dist/collection/components/tree/tree.js +1 -1
  364. package/dist/collection/components/tree-item/tree-item.js +4 -4
  365. package/dist/collection/components/typography/typography.js +1 -1
  366. package/dist/collection/components/upload/upload.js +5 -5
  367. package/dist/collection/components/upload/upload.js.map +1 -1
  368. package/dist/collection/components/utils/application-layout/service.js +2 -2
  369. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  370. package/dist/collection/components/utils/modal/loading.js +1 -1
  371. package/dist/collection/components/utils/modal/loading.js.map +1 -1
  372. package/dist/collection/components/workflow-step/workflow-step.js +3 -3
  373. package/dist/collection/components/workflow-steps/workflow-steps.js +1 -1
  374. package/dist/collection/tests/utils/test/page.js +2 -2
  375. package/dist/collection/tests/utils/test/page.js.map +1 -1
  376. package/{components/p-CAqtPJ4-.js → dist/esm/find-element-CiSM2A9Q.js} +102 -3
  377. package/dist/esm/find-element-CiSM2A9Q.js.map +1 -0
  378. package/dist/esm/index-DGODjp4O.js +0 -8
  379. package/dist/esm/index.js +1 -1
  380. package/dist/esm/index.js.map +1 -1
  381. package/dist/esm/ix-application-header.entry.js +1 -1
  382. package/dist/esm/ix-application.entry.js +1 -1
  383. package/dist/esm/ix-avatar.ix-menu-avatar-item.entry.js.map +1 -1
  384. package/dist/esm/ix-avatar_2.entry.js +1 -1
  385. package/dist/esm/ix-basic-navigation.entry.js +1 -1
  386. package/dist/esm/ix-breadcrumb-item.entry.js +7 -7
  387. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  388. package/dist/esm/ix-breadcrumb.entry.js +6 -6
  389. package/dist/esm/ix-breadcrumb.entry.js.map +1 -1
  390. package/dist/esm/ix-card-list.entry.js +4 -4
  391. package/dist/esm/ix-card-list.entry.js.map +1 -1
  392. package/dist/esm/ix-category-filter.entry.js +9 -17
  393. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  394. package/dist/esm/ix-chip.entry.js +8 -9
  395. package/dist/esm/ix-chip.entry.js.map +1 -1
  396. package/dist/esm/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.js.map +1 -1
  397. package/dist/esm/ix-col_4.entry.js +18 -18
  398. package/dist/esm/ix-date-dropdown.entry.js +11 -11
  399. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  400. package/dist/esm/ix-date-input.entry.js +2 -2
  401. package/dist/esm/ix-date-input.entry.js.map +1 -1
  402. package/dist/esm/ix-date-time-card.entry.js +3 -8
  403. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  404. package/dist/esm/ix-datetime-picker.entry.js +3 -21
  405. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  406. package/dist/esm/ix-drawer.entry.js +6 -5
  407. package/dist/esm/ix-drawer.entry.js.map +1 -1
  408. package/dist/esm/ix-dropdown.entry.js +1 -2
  409. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  410. package/dist/esm/ix-event-list.entry.js +4 -4
  411. package/dist/esm/ix-event-list.entry.js.map +1 -1
  412. package/dist/esm/ix-group-context-menu.ix-group-item.entry.js.map +1 -1
  413. package/dist/esm/ix-group-context-menu_2.entry.js +18 -5
  414. package/dist/esm/ix-group.entry.js +19 -19
  415. package/dist/esm/ix-group.entry.js.map +1 -1
  416. package/dist/esm/ix-helper-text.entry.js +1 -1
  417. package/dist/esm/ix-icon-button.ix-spinner.entry.js.map +1 -1
  418. package/dist/esm/ix-icon-button_2.entry.js +1 -1
  419. package/dist/esm/ix-icon-toggle-button.entry.js +1 -1
  420. package/dist/esm/ix-input.entry.js +4 -4
  421. package/dist/esm/ix-key-value-list.entry.js +1 -1
  422. package/dist/esm/ix-key-value.entry.js +1 -1
  423. package/dist/esm/ix-kpi.entry.js +3 -3
  424. package/dist/esm/ix-layout-auto.entry.js +1 -1
  425. package/dist/esm/ix-link-button.entry.js +3 -3
  426. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  427. package/dist/esm/ix-map-navigation.entry.js +3 -2
  428. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  429. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  430. package/dist/esm/ix-menu-about-news.entry.js +5 -5
  431. package/dist/esm/ix-menu-about-news.entry.js.map +1 -1
  432. package/dist/esm/ix-menu-avatar.entry.js +5 -5
  433. package/dist/esm/ix-menu-avatar.entry.js.map +1 -1
  434. package/dist/esm/ix-menu-category.entry.js +5 -5
  435. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  436. package/dist/esm/ix-menu-item.entry.js +4 -4
  437. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  438. package/dist/esm/ix-menu.entry.js +18 -17
  439. package/dist/esm/ix-menu.entry.js.map +1 -1
  440. package/dist/esm/ix-message-bar.entry.js +4 -6
  441. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  442. package/dist/esm/ix-modal-content_2.entry.js +2 -2
  443. package/dist/esm/ix-modal-footer.entry.js +1 -1
  444. package/dist/esm/ix-modal-loading.entry.js +1 -1
  445. package/dist/esm/ix-modal.entry.js +13 -13
  446. package/dist/esm/ix-modal.entry.js.map +1 -1
  447. package/dist/esm/ix-number-input.entry.js +6 -6
  448. package/dist/esm/ix-pagination.entry.js +8 -9
  449. package/dist/esm/ix-pagination.entry.js.map +1 -1
  450. package/dist/esm/ix-pane-layout.entry.js +1 -1
  451. package/dist/esm/ix-pane.entry.js +1 -1
  452. package/dist/esm/ix-push-card.entry.js +3 -3
  453. package/dist/esm/ix-push-card.entry.js.map +1 -1
  454. package/dist/esm/ix-select.entry.js +8 -8
  455. package/dist/esm/ix-select.entry.js.map +1 -1
  456. package/dist/esm/ix-slider.entry.js +1 -1
  457. package/dist/esm/ix-slider.entry.js.map +1 -1
  458. package/dist/esm/ix-textarea.entry.js +2 -2
  459. package/dist/esm/ix-time-input.entry.js +1 -1
  460. package/dist/esm/ix-time-input.entry.js.map +1 -1
  461. package/dist/esm/ix-time-picker.entry.js +10 -58
  462. package/dist/esm/ix-time-picker.entry.js.map +1 -1
  463. package/dist/esm/ix-toast-container.entry.js +5 -5
  464. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  465. package/dist/esm/ix-toast.entry.js +4 -4
  466. package/dist/esm/ix-toast.entry.js.map +1 -1
  467. package/dist/esm/ix-toggle.entry.js +3 -3
  468. package/dist/esm/ix-tooltip.entry.js +2 -3
  469. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  470. package/dist/esm/ix-tree-item.entry.js +4 -4
  471. package/dist/esm/ix-tree.entry.js +1 -1
  472. package/dist/esm/ix-typography.entry.js +1 -1
  473. package/dist/esm/ix-upload.entry.js +3 -3
  474. package/dist/esm/ix-upload.entry.js.map +1 -1
  475. package/dist/esm/ix-workflow-step.entry.js +3 -3
  476. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  477. package/dist/esm/loader.js +1 -1
  478. package/dist/esm/{service-ktcE7NzB.js → service-Da0kv8hS.js} +4 -4
  479. package/dist/esm/service-Da0kv8hS.js.map +1 -0
  480. package/dist/esm/siemens-ix.js +1 -1
  481. package/dist/siemens-ix/index.esm.js +1 -1
  482. package/dist/siemens-ix/index.esm.js.map +1 -1
  483. package/dist/siemens-ix/ix-avatar.ix-menu-avatar-item.entry.esm.js.map +1 -1
  484. package/dist/siemens-ix/ix-breadcrumb-item.entry.esm.js.map +1 -1
  485. package/dist/siemens-ix/ix-breadcrumb.entry.esm.js.map +1 -1
  486. package/dist/siemens-ix/ix-card-list.entry.esm.js.map +1 -1
  487. package/dist/siemens-ix/ix-category-filter.entry.esm.js.map +1 -1
  488. package/dist/siemens-ix/ix-chip.entry.esm.js.map +1 -1
  489. package/dist/siemens-ix/ix-col.ix-date-picker.ix-layout-grid.ix-row.entry.esm.js.map +1 -1
  490. package/dist/siemens-ix/ix-date-dropdown.entry.esm.js.map +1 -1
  491. package/dist/siemens-ix/ix-date-input.entry.esm.js.map +1 -1
  492. package/dist/siemens-ix/ix-date-time-card.entry.esm.js.map +1 -1
  493. package/dist/siemens-ix/ix-datetime-picker.entry.esm.js.map +1 -1
  494. package/dist/siemens-ix/ix-drawer.entry.esm.js.map +1 -1
  495. package/dist/siemens-ix/ix-dropdown.entry.esm.js.map +1 -1
  496. package/dist/siemens-ix/ix-event-list.entry.esm.js.map +1 -1
  497. package/dist/siemens-ix/ix-group-context-menu.ix-group-item.entry.esm.js.map +1 -1
  498. package/dist/siemens-ix/ix-group.entry.esm.js.map +1 -1
  499. package/dist/siemens-ix/ix-icon-button.ix-spinner.entry.esm.js.map +1 -1
  500. package/dist/siemens-ix/ix-map-navigation.entry.esm.js.map +1 -1
  501. package/dist/siemens-ix/ix-menu-about-news.entry.esm.js.map +1 -1
  502. package/dist/siemens-ix/ix-menu-avatar.entry.esm.js.map +1 -1
  503. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  504. package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
  505. package/dist/siemens-ix/ix-modal.entry.esm.js.map +1 -1
  506. package/dist/siemens-ix/ix-pagination.entry.esm.js.map +1 -1
  507. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  508. package/dist/siemens-ix/ix-select.entry.esm.js.map +1 -1
  509. package/dist/siemens-ix/ix-slider.entry.esm.js.map +1 -1
  510. package/dist/siemens-ix/ix-time-input.entry.esm.js.map +1 -1
  511. package/dist/siemens-ix/ix-time-picker.entry.esm.js.map +1 -1
  512. package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
  513. package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
  514. package/dist/siemens-ix/ix-tooltip.entry.esm.js.map +1 -1
  515. package/dist/siemens-ix/ix-upload.entry.esm.js.map +1 -1
  516. package/dist/siemens-ix/{p-90bd8d7b.entry.js → p-0ba7d263.entry.js} +2 -2
  517. package/dist/siemens-ix/{p-f455c56a.entry.js → p-111687a2.entry.js} +2 -2
  518. package/dist/siemens-ix/{p-c418674c.entry.js → p-13fb0104.entry.js} +2 -2
  519. package/dist/siemens-ix/{p-c418674c.entry.js.map → p-13fb0104.entry.js.map} +1 -1
  520. package/dist/siemens-ix/{p-8b3cfb2d.entry.js → p-1ac88556.entry.js} +2 -2
  521. package/dist/siemens-ix/{p-95d4d849.entry.js → p-1bd1380b.entry.js} +2 -2
  522. package/dist/siemens-ix/{p-5849a210.entry.js → p-1cd4280f.entry.js} +2 -2
  523. package/dist/siemens-ix/{p-48b0fef4.entry.js → p-2041357d.entry.js} +2 -2
  524. package/dist/siemens-ix/{p-fbd896c5.entry.js → p-21106fcd.entry.js} +2 -2
  525. package/dist/siemens-ix/p-21106fcd.entry.js.map +1 -0
  526. package/dist/siemens-ix/{p-52dc3ba0.entry.js → p-28fe8512.entry.js} +2 -2
  527. package/dist/siemens-ix/{p-4263f3b6.entry.js → p-2b046df5.entry.js} +2 -2
  528. package/dist/siemens-ix/{p-71e94914.entry.js → p-32203c19.entry.js} +2 -2
  529. package/dist/siemens-ix/p-32203c19.entry.js.map +1 -0
  530. package/dist/siemens-ix/{p-1b2e4b8f.entry.js → p-331f1b60.entry.js} +2 -2
  531. package/dist/siemens-ix/{p-99ad8022.entry.js → p-38f9b6e2.entry.js} +2 -2
  532. package/dist/siemens-ix/p-38f9b6e2.entry.js.map +1 -0
  533. package/dist/siemens-ix/p-3f06687e.entry.js +2 -0
  534. package/dist/siemens-ix/p-3f06687e.entry.js.map +1 -0
  535. package/dist/siemens-ix/{p-92032674.entry.js → p-566a58f4.entry.js} +2 -2
  536. package/dist/siemens-ix/p-566a58f4.entry.js.map +1 -0
  537. package/dist/siemens-ix/p-5d48f9cb.entry.js +2 -0
  538. package/dist/siemens-ix/p-5d48f9cb.entry.js.map +1 -0
  539. package/dist/siemens-ix/p-5f7943f2.entry.js +2 -0
  540. package/dist/siemens-ix/{p-d0d972c2.entry.js.map → p-5f7943f2.entry.js.map} +1 -1
  541. package/dist/siemens-ix/{p-85727880.entry.js → p-639d0d7f.entry.js} +2 -2
  542. package/dist/siemens-ix/p-639d0d7f.entry.js.map +1 -0
  543. package/dist/siemens-ix/{p-faa47c0e.entry.js → p-6645d4ee.entry.js} +2 -2
  544. package/dist/siemens-ix/p-670d5b84.entry.js +2 -0
  545. package/dist/siemens-ix/p-670d5b84.entry.js.map +1 -0
  546. package/dist/siemens-ix/{p-eba51393.entry.js → p-7060645f.entry.js} +2 -2
  547. package/dist/siemens-ix/p-71a38f35.entry.js +2 -0
  548. package/dist/siemens-ix/{p-416886d6.entry.js → p-75edf091.entry.js} +2 -2
  549. package/dist/siemens-ix/p-75edf091.entry.js.map +1 -0
  550. package/dist/siemens-ix/{p-81c8d542.entry.js → p-75f4bbb1.entry.js} +2 -2
  551. package/dist/siemens-ix/{p-03c6893a.entry.js → p-78797f4b.entry.js} +2 -2
  552. package/dist/siemens-ix/p-78797f4b.entry.js.map +1 -0
  553. package/dist/siemens-ix/{p-09cce59e.entry.js → p-800f59a7.entry.js} +2 -2
  554. package/dist/siemens-ix/p-800f59a7.entry.js.map +1 -0
  555. package/dist/siemens-ix/p-86ac2254.entry.js +2 -0
  556. package/dist/siemens-ix/p-86ac2254.entry.js.map +1 -0
  557. package/dist/siemens-ix/p-8bd3f89a.entry.js +2 -0
  558. package/dist/siemens-ix/p-8bd3f89a.entry.js.map +1 -0
  559. package/dist/siemens-ix/{p-a76a69fb.entry.js → p-8c612656.entry.js} +2 -2
  560. package/dist/siemens-ix/{p-5140e6e6.entry.js → p-91fa3ab0.entry.js} +2 -2
  561. package/dist/siemens-ix/{p-f29eaee8.entry.js → p-9272ae83.entry.js} +2 -2
  562. package/dist/siemens-ix/{p-c8cf26c5.entry.js → p-96533ffc.entry.js} +2 -2
  563. package/dist/siemens-ix/p-96533ffc.entry.js.map +1 -0
  564. package/dist/siemens-ix/p-98ab64dc.entry.js +2 -0
  565. package/dist/siemens-ix/p-98ab64dc.entry.js.map +1 -0
  566. package/dist/siemens-ix/p-9a8188a7.entry.js +2 -0
  567. package/dist/siemens-ix/p-9a8188a7.entry.js.map +1 -0
  568. package/dist/siemens-ix/{p-f6d678a6.entry.js → p-9b88a932.entry.js} +2 -2
  569. package/dist/siemens-ix/{p-7a108b0d.entry.js → p-9dbfd7cd.entry.js} +2 -2
  570. package/dist/siemens-ix/p-CiSM2A9Q.js +2 -0
  571. package/dist/siemens-ix/p-CiSM2A9Q.js.map +1 -0
  572. package/dist/siemens-ix/p-a6612a5b.entry.js +2 -0
  573. package/dist/siemens-ix/{p-00a10004.entry.js → p-a7cb47ca.entry.js} +2 -2
  574. package/dist/siemens-ix/p-a7cb47ca.entry.js.map +1 -0
  575. package/dist/siemens-ix/p-ac1f35ad.entry.js +2 -0
  576. package/dist/siemens-ix/p-ac1f35ad.entry.js.map +1 -0
  577. package/dist/siemens-ix/{p-4b88c430.entry.js → p-ae2e5e0c.entry.js} +2 -2
  578. package/dist/siemens-ix/{p-4b88c430.entry.js.map → p-ae2e5e0c.entry.js.map} +1 -1
  579. package/dist/siemens-ix/{p-6c2818da.entry.js → p-b895b3db.entry.js} +2 -2
  580. package/dist/siemens-ix/p-b895b3db.entry.js.map +1 -0
  581. package/dist/siemens-ix/{p-cd11dfa8.entry.js → p-bb878ea4.entry.js} +2 -2
  582. package/dist/siemens-ix/{p-0469aec7.entry.js → p-bf2374a0.entry.js} +2 -2
  583. package/dist/siemens-ix/p-c10b2e40.entry.js +2 -0
  584. package/dist/siemens-ix/{p-5c109476.entry.js → p-c248940f.entry.js} +2 -2
  585. package/dist/siemens-ix/{p-1ca58d8b.entry.js → p-c31b2027.entry.js} +2 -2
  586. package/dist/siemens-ix/{p-8eee6a03.entry.js → p-c413e3c4.entry.js} +2 -2
  587. package/dist/siemens-ix/{p-746b04cb.entry.js → p-c6ecc2e3.entry.js} +2 -2
  588. package/dist/siemens-ix/{p-01656234.entry.js → p-c949686e.entry.js} +2 -2
  589. package/dist/siemens-ix/{p-b6dad40c.entry.js → p-d0213ff0.entry.js} +2 -2
  590. package/dist/siemens-ix/{p-8e48a7a1.entry.js → p-d1254b5b.entry.js} +2 -2
  591. package/dist/siemens-ix/p-d4b0b3d1.entry.js +2 -0
  592. package/dist/siemens-ix/p-d4b0b3d1.entry.js.map +1 -0
  593. package/dist/siemens-ix/{p-a0d7af11.entry.js → p-d585e581.entry.js} +2 -2
  594. package/dist/siemens-ix/p-d6b9e253.entry.js +2 -0
  595. package/dist/siemens-ix/{p-c8ad32c5.entry.js.map → p-d6b9e253.entry.js.map} +1 -1
  596. package/dist/siemens-ix/{p-dd82ebbc.entry.js → p-d7c7d38b.entry.js} +2 -2
  597. package/dist/siemens-ix/{p-c446ffdb.entry.js → p-db02f4c2.entry.js} +2 -2
  598. package/dist/siemens-ix/{p-4573a8de.entry.js → p-e201fa04.entry.js} +2 -2
  599. package/dist/siemens-ix/{p-4573a8de.entry.js.map → p-e201fa04.entry.js.map} +1 -1
  600. package/dist/siemens-ix/{p-6a39d630.entry.js → p-e3a219e3.entry.js} +2 -2
  601. package/dist/siemens-ix/{p-bd369344.entry.js → p-e55cd52b.entry.js} +2 -2
  602. package/dist/siemens-ix/p-ea435816.entry.js +2 -0
  603. package/dist/siemens-ix/p-ea435816.entry.js.map +1 -0
  604. package/dist/siemens-ix/{p-14fca48a.entry.js → p-f14790b4.entry.js} +2 -2
  605. package/dist/siemens-ix/{p-53e82da9.entry.js → p-fbd0973d.entry.js} +2 -2
  606. package/dist/siemens-ix/p-fbd0973d.entry.js.map +1 -0
  607. package/dist/siemens-ix/p-fbedad11.entry.js +2 -0
  608. package/dist/siemens-ix/{p-CzzcLSmV.js → p-gkooEHol.js} +2 -2
  609. package/dist/siemens-ix/p-gkooEHol.js.map +1 -0
  610. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  611. package/dist/siemens-ix/siemens-ix.css +0 -28
  612. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  613. package/dist/types/components/avatar/avatar.d.ts +1 -1
  614. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -1
  615. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +3 -3
  616. package/dist/types/components/category-filter/category-filter.d.ts +4 -10
  617. package/dist/types/components/chip/chip.d.ts +2 -2
  618. package/dist/types/components/date-dropdown/date-dropdown.d.ts +6 -6
  619. package/dist/types/components/date-picker/date-picker-component.d.ts +1 -1
  620. package/dist/types/components/date-picker/date-picker.d.ts +3 -3
  621. package/dist/types/components/date-time-card/date-time-card.d.ts +1 -5
  622. package/dist/types/components/datetime-picker/datetime-picker.d.ts +2 -20
  623. package/dist/types/components/event-list/event-list.d.ts +1 -1
  624. package/dist/types/components/group/group.d.ts +4 -4
  625. package/dist/types/components/group-item/group-item.d.ts +9 -2
  626. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  627. package/dist/types/components/menu/menu.d.ts +5 -4
  628. package/dist/types/components/menu-about-news/menu-about-news.d.ts +1 -1
  629. package/dist/types/components/menu-avatar/menu-avatar.d.ts +2 -2
  630. package/dist/types/components/message-bar/message-bar.d.ts +3 -4
  631. package/dist/types/components/modal/modal.d.ts +9 -9
  632. package/dist/types/components/pagination/pagination.d.ts +5 -6
  633. package/dist/types/components/push-card/push-card.d.ts +2 -2
  634. package/dist/types/components/time-picker/time-picker.d.ts +2 -40
  635. package/dist/types/components/toast/toast-utils.d.ts +24 -0
  636. package/dist/types/components/toast/toast.d.ts +1 -1
  637. package/dist/types/components.d.ts +214 -414
  638. package/hydrate/index.js +312 -699
  639. package/hydrate/index.mjs +312 -699
  640. package/package.json +1 -1
  641. package/scss/_core.scss +0 -1
  642. package/components/ix-input-group.d.ts +0 -11
  643. package/components/ix-input-group.js +0 -154
  644. package/components/ix-input-group.js.map +0 -1
  645. package/components/ix-validation-tooltip.d.ts +0 -11
  646. package/components/ix-validation-tooltip.js +0 -184
  647. package/components/ix-validation-tooltip.js.map +0 -1
  648. package/components/p-B3IsQckh.js.map +0 -1
  649. package/components/p-B5cVFUyk.js.map +0 -1
  650. package/components/p-BFuOBAQB.js.map +0 -1
  651. package/components/p-BpW9tS2k.js.map +0 -1
  652. package/components/p-CAqtPJ4-.js.map +0 -1
  653. package/components/p-CFRrPFxi.js +0 -103
  654. package/components/p-CFRrPFxi.js.map +0 -1
  655. package/components/p-CGPMGyof.js.map +0 -1
  656. package/components/p-Ctze1Bh6.js +0 -64
  657. package/components/p-Ctze1Bh6.js.map +0 -1
  658. package/components/p-CwwKrs4u.js.map +0 -1
  659. package/components/p-CzzcLSmV.js.map +0 -1
  660. package/components/p-DJ6v85WG.js.map +0 -1
  661. package/components/p-DZNnQyWO.js.map +0 -1
  662. package/dist/cjs/find-element-D7yD1Ukn.js +0 -106
  663. package/dist/cjs/find-element-D7yD1Ukn.js.map +0 -1
  664. package/dist/cjs/floating-ui.dom-CMzYsRR7.js.map +0 -1
  665. package/dist/cjs/ix-input-group.cjs.entry.js +0 -130
  666. package/dist/cjs/ix-input-group.entry.cjs.js.map +0 -1
  667. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +0 -155
  668. package/dist/cjs/ix-validation-tooltip.entry.cjs.js.map +0 -1
  669. package/dist/cjs/service-FGbUpQQM.js.map +0 -1
  670. package/dist/collection/components/input-group/input-group.css +0 -115
  671. package/dist/collection/components/input-group/input-group.js +0 -152
  672. package/dist/collection/components/input-group/input-group.js.map +0 -1
  673. package/dist/collection/components/validation-tooltip/validation-tooltip.css +0 -225
  674. package/dist/collection/components/validation-tooltip/validation-tooltip.js +0 -250
  675. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +0 -1
  676. package/dist/esm/find-element-CFRrPFxi.js +0 -103
  677. package/dist/esm/find-element-CFRrPFxi.js.map +0 -1
  678. package/dist/esm/floating-ui.dom-CAqtPJ4-.js.map +0 -1
  679. package/dist/esm/ix-input-group.entry.js +0 -128
  680. package/dist/esm/ix-input-group.entry.js.map +0 -1
  681. package/dist/esm/ix-validation-tooltip.entry.js +0 -153
  682. package/dist/esm/ix-validation-tooltip.entry.js.map +0 -1
  683. package/dist/esm/service-ktcE7NzB.js.map +0 -1
  684. package/dist/siemens-ix/ix-input-group.entry.esm.js.map +0 -1
  685. package/dist/siemens-ix/ix-validation-tooltip.entry.esm.js.map +0 -1
  686. package/dist/siemens-ix/p-00a10004.entry.js.map +0 -1
  687. package/dist/siemens-ix/p-03c6893a.entry.js.map +0 -1
  688. package/dist/siemens-ix/p-09cce59e.entry.js.map +0 -1
  689. package/dist/siemens-ix/p-1d0ae43f.entry.js +0 -2
  690. package/dist/siemens-ix/p-1d0ae43f.entry.js.map +0 -1
  691. package/dist/siemens-ix/p-2d3f7bb5.entry.js +0 -2
  692. package/dist/siemens-ix/p-2d3f7bb5.entry.js.map +0 -1
  693. package/dist/siemens-ix/p-2d9b7dbd.entry.js +0 -2
  694. package/dist/siemens-ix/p-2d9b7dbd.entry.js.map +0 -1
  695. package/dist/siemens-ix/p-30545ef9.entry.js +0 -2
  696. package/dist/siemens-ix/p-30728d2c.entry.js +0 -2
  697. package/dist/siemens-ix/p-30728d2c.entry.js.map +0 -1
  698. package/dist/siemens-ix/p-3dc1d85b.entry.js +0 -2
  699. package/dist/siemens-ix/p-3dc1d85b.entry.js.map +0 -1
  700. package/dist/siemens-ix/p-416886d6.entry.js.map +0 -1
  701. package/dist/siemens-ix/p-48f01149.entry.js +0 -2
  702. package/dist/siemens-ix/p-48f01149.entry.js.map +0 -1
  703. package/dist/siemens-ix/p-53e82da9.entry.js.map +0 -1
  704. package/dist/siemens-ix/p-5bed04ac.entry.js +0 -2
  705. package/dist/siemens-ix/p-5bed04ac.entry.js.map +0 -1
  706. package/dist/siemens-ix/p-5f72640f.entry.js +0 -2
  707. package/dist/siemens-ix/p-5f72640f.entry.js.map +0 -1
  708. package/dist/siemens-ix/p-6c2818da.entry.js.map +0 -1
  709. package/dist/siemens-ix/p-6c873cc5.entry.js +0 -2
  710. package/dist/siemens-ix/p-71e94914.entry.js.map +0 -1
  711. package/dist/siemens-ix/p-740420eb.entry.js +0 -2
  712. package/dist/siemens-ix/p-740420eb.entry.js.map +0 -1
  713. package/dist/siemens-ix/p-85727880.entry.js.map +0 -1
  714. package/dist/siemens-ix/p-90089ce1.entry.js +0 -2
  715. package/dist/siemens-ix/p-92032674.entry.js.map +0 -1
  716. package/dist/siemens-ix/p-99ad8022.entry.js.map +0 -1
  717. package/dist/siemens-ix/p-9bd4c682.entry.js +0 -2
  718. package/dist/siemens-ix/p-CAqtPJ4-.js +0 -2
  719. package/dist/siemens-ix/p-CAqtPJ4-.js.map +0 -1
  720. package/dist/siemens-ix/p-CFRrPFxi.js +0 -2
  721. package/dist/siemens-ix/p-CFRrPFxi.js.map +0 -1
  722. package/dist/siemens-ix/p-CzzcLSmV.js.map +0 -1
  723. package/dist/siemens-ix/p-c8ad32c5.entry.js +0 -2
  724. package/dist/siemens-ix/p-c8cf26c5.entry.js.map +0 -1
  725. package/dist/siemens-ix/p-d0d972c2.entry.js +0 -2
  726. package/dist/siemens-ix/p-ddaf98b6.entry.js +0 -2
  727. package/dist/siemens-ix/p-ddaf98b6.entry.js.map +0 -1
  728. package/dist/siemens-ix/p-e9de8dd5.entry.js +0 -2
  729. package/dist/siemens-ix/p-e9de8dd5.entry.js.map +0 -1
  730. package/dist/siemens-ix/p-f55eef69.entry.js +0 -2
  731. package/dist/siemens-ix/p-f55eef69.entry.js.map +0 -1
  732. package/dist/siemens-ix/p-fbd896c5.entry.js.map +0 -1
  733. package/dist/types/components/input-group/input-group.d.ts +0 -24
  734. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +0 -45
  735. package/scss/components/_input-group.scss +0 -32
  736. /package/dist/siemens-ix/{p-90bd8d7b.entry.js.map → p-0ba7d263.entry.js.map} +0 -0
  737. /package/dist/siemens-ix/{p-f455c56a.entry.js.map → p-111687a2.entry.js.map} +0 -0
  738. /package/dist/siemens-ix/{p-8b3cfb2d.entry.js.map → p-1ac88556.entry.js.map} +0 -0
  739. /package/dist/siemens-ix/{p-95d4d849.entry.js.map → p-1bd1380b.entry.js.map} +0 -0
  740. /package/dist/siemens-ix/{p-5849a210.entry.js.map → p-1cd4280f.entry.js.map} +0 -0
  741. /package/dist/siemens-ix/{p-48b0fef4.entry.js.map → p-2041357d.entry.js.map} +0 -0
  742. /package/dist/siemens-ix/{p-52dc3ba0.entry.js.map → p-28fe8512.entry.js.map} +0 -0
  743. /package/dist/siemens-ix/{p-4263f3b6.entry.js.map → p-2b046df5.entry.js.map} +0 -0
  744. /package/dist/siemens-ix/{p-1b2e4b8f.entry.js.map → p-331f1b60.entry.js.map} +0 -0
  745. /package/dist/siemens-ix/{p-faa47c0e.entry.js.map → p-6645d4ee.entry.js.map} +0 -0
  746. /package/dist/siemens-ix/{p-eba51393.entry.js.map → p-7060645f.entry.js.map} +0 -0
  747. /package/dist/siemens-ix/{p-6c873cc5.entry.js.map → p-71a38f35.entry.js.map} +0 -0
  748. /package/dist/siemens-ix/{p-81c8d542.entry.js.map → p-75f4bbb1.entry.js.map} +0 -0
  749. /package/dist/siemens-ix/{p-a76a69fb.entry.js.map → p-8c612656.entry.js.map} +0 -0
  750. /package/dist/siemens-ix/{p-5140e6e6.entry.js.map → p-91fa3ab0.entry.js.map} +0 -0
  751. /package/dist/siemens-ix/{p-f29eaee8.entry.js.map → p-9272ae83.entry.js.map} +0 -0
  752. /package/dist/siemens-ix/{p-f6d678a6.entry.js.map → p-9b88a932.entry.js.map} +0 -0
  753. /package/dist/siemens-ix/{p-7a108b0d.entry.js.map → p-9dbfd7cd.entry.js.map} +0 -0
  754. /package/dist/siemens-ix/{p-9bd4c682.entry.js.map → p-a6612a5b.entry.js.map} +0 -0
  755. /package/dist/siemens-ix/{p-cd11dfa8.entry.js.map → p-bb878ea4.entry.js.map} +0 -0
  756. /package/dist/siemens-ix/{p-0469aec7.entry.js.map → p-bf2374a0.entry.js.map} +0 -0
  757. /package/dist/siemens-ix/{p-30545ef9.entry.js.map → p-c10b2e40.entry.js.map} +0 -0
  758. /package/dist/siemens-ix/{p-5c109476.entry.js.map → p-c248940f.entry.js.map} +0 -0
  759. /package/dist/siemens-ix/{p-1ca58d8b.entry.js.map → p-c31b2027.entry.js.map} +0 -0
  760. /package/dist/siemens-ix/{p-8eee6a03.entry.js.map → p-c413e3c4.entry.js.map} +0 -0
  761. /package/dist/siemens-ix/{p-746b04cb.entry.js.map → p-c6ecc2e3.entry.js.map} +0 -0
  762. /package/dist/siemens-ix/{p-01656234.entry.js.map → p-c949686e.entry.js.map} +0 -0
  763. /package/dist/siemens-ix/{p-b6dad40c.entry.js.map → p-d0213ff0.entry.js.map} +0 -0
  764. /package/dist/siemens-ix/{p-8e48a7a1.entry.js.map → p-d1254b5b.entry.js.map} +0 -0
  765. /package/dist/siemens-ix/{p-a0d7af11.entry.js.map → p-d585e581.entry.js.map} +0 -0
  766. /package/dist/siemens-ix/{p-dd82ebbc.entry.js.map → p-d7c7d38b.entry.js.map} +0 -0
  767. /package/dist/siemens-ix/{p-c446ffdb.entry.js.map → p-db02f4c2.entry.js.map} +0 -0
  768. /package/dist/siemens-ix/{p-6a39d630.entry.js.map → p-e3a219e3.entry.js.map} +0 -0
  769. /package/dist/siemens-ix/{p-bd369344.entry.js.map → p-e55cd52b.entry.js.map} +0 -0
  770. /package/dist/siemens-ix/{p-14fca48a.entry.js.map → p-f14790b4.entry.js.map} +0 -0
  771. /package/dist/siemens-ix/{p-90089ce1.entry.js.map → p-fbedad11.entry.js.map} +0 -0
@@ -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":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,QAAQ,EACR,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAWtD,MAAM,OAAO,YAAY;IALzB;QAYE;;WAEG;QACK,aAAQ,GAAG,KAAK,CAAC;QAEzB;;;WAGG;QACK,WAAM,GAAG,YAAY,CAAC;QAE9B;;WAEG;QACK,UAAK,GAAG,IAAI,CAAC;QAErB;;;;;WAKG;QACK,SAAI,GAAG,EAAE,CAAC;QAElB;;;;;WAKG;QACK,OAAE,GAAG,EAAE,CAAC;QAEhB;;;WAGG;QACK,YAAO,GAAG,EAAE,CAAC;QAErB;;;WAGG;QACK,YAAO,GAAG,EAAE,CAAC;QAErB;;;WAGG;QACK,gBAAW,GAAG,QAAQ,CAAC;QAE/B;;WAEG;QACK,YAAO,GAAkB,SAAS,CAAC;QAE3C;;WAEG;QACK,YAAO,GAAY,KAAK,CAAC;QAEjC;;;;WAIG;QACK,oBAAe,GAAG,KAAK,CAAC;QA2BhC;;;;WAIG;QACK,uBAAkB,GAAG,IAAI,CAAC;QAElC;;;;;;;;;;;;WAYG;QACK,qBAAgB,GAAyB,EAAE,CAAC;QAapD;;;WAGG;QACK,mBAAc,GAAG,CAAC,CAAC;QAE3B;;WAEG;QACsC,mBAAc,GAAG,WAAW,CAAC;QAEtE;;WAEG;QAC+B,aAAQ,GAAG,MAAM,CAAC;QAEpD;;WAEG;QACmC,gBAAW,GAAG,cAAc,CAAC;QAEnE,gBAAgB;QACR,UAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;QAWtB,wBAAmB,GAAiC,EAAE,CAAC;QAMvD,eAAU,GAAG,OAAO,EAAe,CAAC;QAS7C,sBAAiB,GAAG,KAAK,CAAC;KA8NnC;IA/TC,mBAAmB;QACjB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE7C,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;YACjC,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE;YAC7B,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;IAyBD,wBAAwB;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAiDD,gBAAgB;QACd,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAID,iBAAiB;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IAEI,KAAK,CAAC,YAAY;QACvB,OAAO,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAChE,CAAC;IAEO,UAAU;QAChB,MAAM,aAAa,GACjB,IAAI,CAAC,WAAW,KAAK,QAAQ;YAC7B,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElD,IAAI,aAAa,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7C,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;YACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,OAAO;QACT,CAAC;QACD,MAAM,oBAAoB,GAAG,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CACV,wFAAwF,CACzF,CAAC;YAEF,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;YACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,OAAO;QACT,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,iBAAiB,GAAG;YACvB,EAAE,EAAE,IAAI,CAAC,mBAAmB;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;SACZ,CAAC;IACJ,CAAC;IAEO,YAAY,CAClB,UAAsD,EACtD,gBAAgB,GAAG,IAAI;QAEvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtC,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACjC,CAAC;IAEO,iBAAiB,CAAC,EAAU;QAClC,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,EAAU;QACtC,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAEtE,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAClC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,aAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,UAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAE3E,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,cAAc;;QACpB,IAAI,IAAI,CAAC,mBAAmB,KAAK,QAAQ,KAAI,MAAA,IAAI,CAAC,iBAAiB,0CAAE,IAAI,CAAA,EAAE,CAAC;YAC1E,IAAI,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAExC,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;gBAC9B,KAAK,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;YAC7C,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAA,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM,MAAK,CAAC,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACvC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,mBAAmB,CACnD,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CACX,oCAAoC,IAAI,CAAC,mBAAmB,EAAE,CAC/D,CAAC;YACF,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,MAAM;;QACJ,OAAO,CACL,EAAC,IAAI;YACH,iFACc,uBAAuB,sCAEnC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,IAAI,CAAC,UAAU,EACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,SAAS,EAAE,IAAI,CAAC,uBAAuB,IAEtC,IAAI,CAAC,cAAc,EAAE,CACZ;YACZ,mFACc,eAAe,8BAE3B,KAAK,EAAC,sBAAsB,EAC5B,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,EACzC,aAAa,EAAC,SAAS,EACvB,SAAS,EAAC,cAAc,EACxB,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;oBAClC,IACE,CAAC,IAAI;wBACL,IAAI,CAAC,mBAAmB,KAAK,QAAQ;wBACrC,IAAI,CAAC,iBAAiB;wBACtB,IAAI,CAAC,iBAAiB,EACtB,CAAC;wBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBAED,uEAAgB,QAAQ;oBACtB;wBACG,CAAA,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM,IAAG,CAAC,IAAI,CACpC,+DACE,KAAK,EAAE;gCACL,WAAW,EAAE,IAAI;gCACjB,cAAc,EAAE,IAAI,CAAC,mBAAmB,KAAK,QAAQ;6BACtD;4BAEA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAC9C,wBACE,KAAK,EAAE,eAAe,CAAC,KAAK,EAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC,EACzD,OAAO,EAAE,IAAI,CAAC,mBAAmB,KAAK,eAAe,CAAC,EAAE,GACtC,CACrB,CAAC;4BACF,4DAAK,MAAM,EAAE,CAAC,IAAI,CAAC,kBAAkB;gCACnC,yEACE,KAAK,EAAE,IAAI,CAAC,cAAc,EAC1B,OAAO,EAAE,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAC7B,CAChB,CACC,CACV;wBACD,+DAAQ,KAAK,EAAC,WAAW,IACtB,IAAI,CAAC,mBAAmB,KAAK,QAAQ,IAAI,CACxC,EAAC,QAAQ;4BACP,uEACE,oBAAoB,EAAE,KAAK,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;oCAClB,CAAC,CAAC,eAAe,EAAE,CAAC;oCACpB,IAAI,CAAC,iBAAiB,mCACjB,CAAC,CAAC,MAAM,KACX,EAAE,EAAE,QAAQ,GACb,CAAC;oCACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gCAChC,CAAC,EACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EAC7C,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,KAAI,MAAA,IAAI,CAAC,iBAAiB,0CAAE,IAAI,CAAA,EAC/C,EAAE,EAAE,IAAI,CAAC,EAAE,KAAI,MAAA,IAAI,CAAC,iBAAiB,0CAAE,EAAE,CAAA,EACzC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,eAAe,EAAE,IAAI,CAAC,eAAe,GACrB;4BAClB,4DAAK,KAAK,EAAC,YAAY;gCACrB,kEACE,OAAO,EAAE,GAAG,EAAE;wCACZ,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;4CAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wCAC5C,CAAC;oCACH,CAAC,IAEA,IAAI,CAAC,QAAQ,CACJ,CACR,CACG,CACZ,CACM,CACF,CACM,CACL,CACT,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","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"; }
@@ -1 +1 @@
1
- {"version":3,"file":"date-input.js","sourceRoot":"","sources":["../../../src/components/date-input/date-input.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 { iconCalendar } from '@siemens/ix-icons/icons';\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n Watch,\n h,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { SlotEnd, SlotStart } from '../input/input.fc';\nimport {\n DisposableChangesAndVisibilityObservers,\n addDisposableChangesAndVisibilityObservers,\n adjustPaddingForStartAndEnd,\n} from '../input/input.util';\nimport {\n ClassMutationObserver,\n HookValidationLifecycle,\n IxInputFieldComponent,\n ValidationResults,\n createClassMutationObserver,\n} from '../utils/input';\nimport { makeRef } from '../utils/make-ref';\nimport type { DateInputValidityState } from './date-input.types';\nimport {\n closeDropdown as closeDropdownUtil,\n createValidityState,\n handleIconClick,\n openDropdown as openDropdownUtil,\n} from '../utils/input/picker-input.util';\n\n/**\n * @form-ready\n *\n * @slot start - Element will be displayed at the start of the input\n * @slot end - Element will be displayed at the end of the input\n */\n@Component({\n tag: 'ix-date-input',\n styleUrl: 'date-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class DateInput implements IxInputFieldComponent<string | undefined> {\n @Element() hostElement!: HTMLIxDateInputElement;\n @AttachInternals() formInternals!: ElementInternals;\n\n /**\n * Name of the input element\n */\n @Prop({ reflect: true }) name?: string;\n\n /**\n * Placeholder of the input element\n */\n @Prop({ reflect: true }) placeholder?: string;\n\n /**\n * Value of the input element\n */\n @Prop({ reflect: true, mutable: true }) value?: string = '';\n\n @Watch('value') watchValuePropHandler(newValue: string) {\n this.onInput(newValue);\n }\n\n /**\n * The earliest date that can be selected by the date input/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 input/picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n */\n @Prop() locale?: string;\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: string = 'yyyy/LL/dd';\n\n /**\n * Required attribute\n */\n @Prop() required?: boolean;\n\n /**\n * Helper text below the input field\n */\n @Prop() helperText?: string;\n\n /**\n * Label of the input field\n */\n @Prop() label?: string;\n\n /**\n * ARIA label for the calendar icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCalendarButton?: string;\n\n /**\n * Error text below the input field\n */\n @Prop({ reflect: true }) invalidText?: string;\n\n /**\n * Readonly attribute\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Disabled attribute\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Info text below the input field\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text below the input field\n */\n @Prop() warningText?: string;\n\n /**\n * Valid text below the input field\n */\n @Prop() validText?: string;\n\n /**\n * Show text as tooltip\n */\n @Prop() showTextAsTooltip?: boolean;\n\n /**\n * I18n string for the error message when the date is not parsable\n */\n @Prop({ attribute: 'i18n-error-date-unparsable' }) i18nErrorDateUnparsable =\n 'Date is not valid';\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 * 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 * ARIA label for the previous month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelPreviousMonthButton?: string;\n\n /**\n * ARIA label for the next month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelNextMonthButton?: string;\n\n /**\n * Input change event.\n */\n @Event({ cancelable: false }) valueChange!: EventEmitter<string | undefined>;\n\n /**\n * Validation state change event.\n */\n @Event() validityStateChange!: EventEmitter<DateInputValidityState>;\n\n /** @internal */\n @Event() ixFocus!: EventEmitter<void>;\n\n /** @internal */\n @Event() ixBlur!: EventEmitter<void>;\n\n @State() show = false;\n @State() from?: string | null = null;\n @State() isInputInvalid = false;\n @State() isInvalid = false;\n @State() isValid = false;\n @State() isInfo = false;\n @State() isWarning = false;\n @State() focus = false;\n\n private readonly slotStartRef = makeRef<HTMLDivElement>();\n private readonly slotEndRef = makeRef<HTMLDivElement>();\n\n private readonly datepickerRef = makeRef<HTMLIxDatePickerElement>();\n\n private readonly inputElementRef = makeRef<HTMLInputElement>();\n private readonly dropdownElementRef = makeRef<HTMLIxDropdownElement>();\n private classObserver?: ClassMutationObserver;\n private invalidReason?: string;\n private touched = false;\n\n private disposableChangesAndVisibilityObservers?: DisposableChangesAndVisibilityObservers;\n\n updateFormInternalValue(value: string | undefined): void {\n if (value) {\n this.formInternals.setFormValue(value);\n } else {\n this.formInternals.setFormValue(null);\n }\n this.value = value;\n }\n\n connectedCallback(): void {\n this.classObserver = createClassMutationObserver(this.hostElement, () =>\n this.checkClassList()\n );\n\n this.disposableChangesAndVisibilityObservers =\n addDisposableChangesAndVisibilityObservers(\n this.hostElement,\n this.updatePaddings.bind(this)\n );\n }\n\n componentWillLoad(): void {\n this.onInput(this.value);\n if (this.isInputInvalid) {\n this.from = null;\n } else {\n this.watchValue();\n }\n\n this.checkClassList();\n this.updateFormInternalValue(this.value);\n }\n\n private updatePaddings() {\n adjustPaddingForStartAndEnd(\n this.slotStartRef.current,\n this.slotEndRef.current,\n this.inputElementRef.current\n );\n }\n\n disconnectedCallback(): void {\n this.classObserver?.destroy();\n this.disposableChangesAndVisibilityObservers?.();\n }\n\n @Watch('value')\n watchValue() {\n this.from = this.value;\n }\n\n /** @internal */\n @Method()\n hasValidValue(): Promise<boolean> {\n return Promise.resolve(!!this.value);\n }\n\n /** @internal */\n @Method()\n getAssociatedFormElement(): Promise<HTMLFormElement | null> {\n return Promise.resolve(this.formInternals.form);\n }\n\n async onInput(value: string | undefined) {\n this.value = value;\n if (!value) {\n this.valueChange.emit(value);\n return;\n }\n\n if (!this.format) {\n return;\n }\n\n const date = DateTime.fromFormat(value, this.format);\n const minDate = DateTime.fromFormat(this.minDate, this.format);\n const maxDate = DateTime.fromFormat(this.maxDate, this.format);\n\n this.isInputInvalid = !date.isValid || date < minDate || date > maxDate;\n\n if (this.isInputInvalid) {\n this.invalidReason = date.invalidReason || undefined;\n this.from = undefined;\n } else {\n this.updateFormInternalValue(value);\n this.closeDropdown();\n }\n\n this.valueChange.emit(value);\n }\n\n onCalenderClick(event: Event) {\n handleIconClick(\n event,\n this.show,\n () => this.openDropdown(),\n this.inputElementRef\n );\n }\n\n async openDropdown() {\n return openDropdownUtil(this.dropdownElementRef);\n }\n\n async closeDropdown() {\n return closeDropdownUtil(this.dropdownElementRef);\n }\n\n private checkClassList() {\n this.isInvalid = this.hostElement.classList.contains('ix-invalid');\n }\n\n private renderInput() {\n return (\n <div class=\"input-wrapper\">\n <SlotStart\n slotStartRef={this.slotStartRef}\n onSlotChange={() => this.updatePaddings()}\n ></SlotStart>\n <input\n autoComplete=\"off\"\n class={{\n 'is-invalid': this.isInputInvalid,\n }}\n disabled={this.disabled}\n readOnly={this.readonly}\n readonly={this.readonly}\n required={this.required}\n ref={this.inputElementRef}\n type=\"text\"\n value={this.value ?? ''}\n placeholder={this.placeholder}\n name={this.name}\n onInput={(event) => {\n const target = event.target as HTMLInputElement;\n this.onInput(target.value);\n }}\n onClick={(event) => {\n if (this.show) {\n event.stopPropagation();\n event.preventDefault();\n }\n }}\n onFocus={async () => {\n this.openDropdown();\n this.ixFocus.emit();\n }}\n onBlur={() => {\n this.ixBlur.emit();\n this.touched = true;\n }}\n ></input>\n <SlotEnd\n slotEndRef={this.slotEndRef}\n onSlotChange={() => this.updatePaddings()}\n >\n <ix-icon-button\n data-testid=\"open-calendar\"\n class={{ 'calendar-hidden': this.disabled || this.readonly }}\n variant=\"subtle-tertiary\"\n icon={iconCalendar}\n onClick={(event) => this.onCalenderClick(event)}\n aria-label={this.ariaLabelCalendarButton}\n ></ix-icon-button>\n </SlotEnd>\n </div>\n );\n }\n\n @HookValidationLifecycle()\n hookValidationLifecycle({\n isInfo,\n isInvalid,\n isInvalidByRequired,\n isValid,\n isWarning,\n }: ValidationResults) {\n this.isInvalid = isInvalid || isInvalidByRequired || this.isInputInvalid;\n this.isInfo = isInfo;\n this.isValid = isValid;\n this.isWarning = isWarning;\n }\n\n @Watch('isInputInvalid')\n async onInputValidationChange() {\n const state = await this.getValidityState();\n this.validityStateChange.emit({\n patternMismatch: state.patternMismatch,\n invalidReason: this.invalidReason,\n });\n }\n\n /** @internal */\n @Method()\n getValidityState(): Promise<ValidityState> {\n return Promise.resolve(\n createValidityState(this.isInputInvalid, !!this.required, this.value)\n );\n }\n\n /**\n * Get the native input element\n */\n @Method()\n getNativeInputElement(): Promise<HTMLInputElement> {\n return this.inputElementRef.waitForCurrent();\n }\n\n /**\n * Focuses the input field\n */\n @Method()\n async focusInput(): Promise<void> {\n return (await this.getNativeInputElement()).focus();\n }\n\n /**\n * Returns whether the text field has been touched.\n * @internal\n */\n @Method()\n isTouched(): Promise<boolean> {\n return Promise.resolve(this.touched);\n }\n\n render() {\n const invalidText = this.isInputInvalid\n ? this.i18nErrorDateUnparsable\n : this.invalidText;\n\n return (\n <Host\n class={{\n disabled: this.disabled,\n readonly: this.readonly,\n }}\n >\n <ix-field-wrapper\n label={this.label}\n helperText={this.helperText}\n isInvalid={this.isInvalid}\n invalidText={invalidText}\n infoText={this.infoText}\n isInfo={this.isInfo}\n isWarning={this.isWarning}\n warningText={this.warningText}\n isValid={this.isValid}\n validText={this.validText}\n showTextAsTooltip={this.showTextAsTooltip}\n required={this.required}\n controlRef={this.inputElementRef}\n >\n {this.renderInput()}\n </ix-field-wrapper>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n trigger={this.inputElementRef.waitForCurrent()}\n ref={this.dropdownElementRef}\n closeBehavior=\"outside\"\n suppressOverflowBehavior={true}\n show={this.show}\n onShowChanged={(event) => {\n this.show = event.detail;\n }}\n >\n <ix-date-picker\n ref={this.datepickerRef}\n format={this.format}\n locale={this.locale}\n range={false}\n from={this.from ?? ''}\n minDate={this.minDate}\n maxDate={this.maxDate}\n onDateChange={(event) => {\n const { from } = event.detail;\n this.onInput(from);\n }}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n standaloneAppearance={false}\n ></ix-date-picker>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"date-input.js","sourceRoot":"","sources":["../../../src/components/date-input/date-input.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 { iconCalendar } from '@siemens/ix-icons/icons';\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n Watch,\n h,\n} from '@stencil/core';\nimport { DateTime } from 'luxon';\nimport { SlotEnd, SlotStart } from '../input/input.fc';\nimport {\n DisposableChangesAndVisibilityObservers,\n addDisposableChangesAndVisibilityObservers,\n adjustPaddingForStartAndEnd,\n} from '../input/input.util';\nimport {\n ClassMutationObserver,\n HookValidationLifecycle,\n IxInputFieldComponent,\n ValidationResults,\n createClassMutationObserver,\n} from '../utils/input';\nimport { makeRef } from '../utils/make-ref';\nimport type { DateInputValidityState } from './date-input.types';\nimport {\n closeDropdown as closeDropdownUtil,\n createValidityState,\n handleIconClick,\n openDropdown as openDropdownUtil,\n} from '../utils/input/picker-input.util';\n\n/**\n * @form-ready\n *\n * @slot start - Element will be displayed at the start of the input\n * @slot end - Element will be displayed at the end of the input\n */\n@Component({\n tag: 'ix-date-input',\n styleUrl: 'date-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class DateInput implements IxInputFieldComponent<string | undefined> {\n @Element() hostElement!: HTMLIxDateInputElement;\n @AttachInternals() formInternals!: ElementInternals;\n\n /**\n * Name of the input element\n */\n @Prop({ reflect: true }) name?: string;\n\n /**\n * Placeholder of the input element\n */\n @Prop({ reflect: true }) placeholder?: string;\n\n /**\n * Value of the input element\n */\n @Prop({ reflect: true, mutable: true }) value?: string = '';\n\n @Watch('value') watchValuePropHandler(newValue: string) {\n this.onInput(newValue);\n }\n\n /**\n * The earliest date that can be selected by the date input/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 input/picker.\n * If not set there will be no restriction.\n */\n @Prop() maxDate = '';\n\n /**\n * Locale identifier (e.g. 'en' or 'de').\n */\n @Prop() locale?: string;\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: string = 'yyyy/LL/dd';\n\n /**\n * Required attribute\n */\n @Prop() required?: boolean;\n\n /**\n * Helper text below the input field\n */\n @Prop() helperText?: string;\n\n /**\n * Label of the input field\n */\n @Prop() label?: string;\n\n /**\n * ARIA label for the calendar icon button\n * Will be set as aria-label on the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelCalendarButton?: string;\n\n /**\n * Error text below the input field\n */\n @Prop({ reflect: true }) invalidText?: string;\n\n /**\n * Readonly attribute\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Disabled attribute\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Info text below the input field\n */\n @Prop() infoText?: string;\n\n /**\n * Warning text below the input field\n */\n @Prop() warningText?: string;\n\n /**\n * Valid text below the input field\n */\n @Prop() validText?: string;\n\n /**\n * Show text as tooltip\n */\n @Prop() showTextAsTooltip?: boolean;\n\n /**\n * I18n string for the error message when the date is not parsable\n */\n @Prop({ attribute: 'i18n-error-date-unparsable' }) i18nErrorDateUnparsable =\n 'Date is not valid';\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 * 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 * ARIA label for the previous month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelPreviousMonthButton?: string;\n\n /**\n * ARIA label for the next month icon button\n * Will be set as aria-label on the nested HTML button element\n */\n @Prop() ariaLabelNextMonthButton?: string;\n\n /**\n * Input change event.\n */\n @Event({ cancelable: false }) valueChange!: EventEmitter<string | undefined>;\n\n /**\n * Validation state change event.\n */\n @Event() validityStateChange!: EventEmitter<DateInputValidityState>;\n\n /** @internal */\n @Event() ixFocus!: EventEmitter<void>;\n\n /** @internal */\n @Event() ixBlur!: EventEmitter<void>;\n\n @State() show = false;\n @State() from?: string | null = null;\n @State() isInputInvalid = false;\n @State() isInvalid = false;\n @State() isValid = false;\n @State() isInfo = false;\n @State() isWarning = false;\n @State() focus = false;\n\n private readonly slotStartRef = makeRef<HTMLDivElement>();\n private readonly slotEndRef = makeRef<HTMLDivElement>();\n\n private readonly datepickerRef = makeRef<HTMLIxDatePickerElement>();\n\n private readonly inputElementRef = makeRef<HTMLInputElement>();\n private readonly dropdownElementRef = makeRef<HTMLIxDropdownElement>();\n private classObserver?: ClassMutationObserver;\n private invalidReason?: string;\n private touched = false;\n\n private disposableChangesAndVisibilityObservers?: DisposableChangesAndVisibilityObservers;\n\n updateFormInternalValue(value: string | undefined): void {\n if (value) {\n this.formInternals.setFormValue(value);\n } else {\n this.formInternals.setFormValue(null);\n }\n this.value = value;\n }\n\n connectedCallback(): void {\n this.classObserver = createClassMutationObserver(this.hostElement, () =>\n this.checkClassList()\n );\n\n this.disposableChangesAndVisibilityObservers =\n addDisposableChangesAndVisibilityObservers(\n this.hostElement,\n this.updatePaddings.bind(this)\n );\n }\n\n componentWillLoad(): void {\n this.onInput(this.value);\n if (this.isInputInvalid) {\n this.from = null;\n } else {\n this.watchValue();\n }\n\n this.checkClassList();\n this.updateFormInternalValue(this.value);\n }\n\n private updatePaddings() {\n adjustPaddingForStartAndEnd(\n this.slotStartRef.current,\n this.slotEndRef.current,\n this.inputElementRef.current\n );\n }\n\n disconnectedCallback(): void {\n this.classObserver?.destroy();\n this.disposableChangesAndVisibilityObservers?.();\n }\n\n @Watch('value')\n watchValue() {\n this.from = this.value;\n }\n\n /** @internal */\n @Method()\n hasValidValue(): Promise<boolean> {\n return Promise.resolve(!!this.value);\n }\n\n /** @internal */\n @Method()\n getAssociatedFormElement(): Promise<HTMLFormElement | null> {\n return Promise.resolve(this.formInternals.form);\n }\n\n async onInput(value: string | undefined) {\n this.value = value;\n if (!value) {\n this.valueChange.emit(value);\n return;\n }\n\n if (!this.format) {\n return;\n }\n\n const date = DateTime.fromFormat(value, this.format);\n const minDate = DateTime.fromFormat(this.minDate, this.format);\n const maxDate = DateTime.fromFormat(this.maxDate, this.format);\n\n this.isInputInvalid = !date.isValid || date < minDate || date > maxDate;\n\n if (this.isInputInvalid) {\n this.invalidReason = date.invalidReason || undefined;\n this.from = undefined;\n } else {\n this.updateFormInternalValue(value);\n this.closeDropdown();\n }\n\n this.valueChange.emit(value);\n }\n\n onCalenderClick(event: Event) {\n handleIconClick(\n event,\n this.show,\n () => this.openDropdown(),\n this.inputElementRef\n );\n }\n\n async openDropdown() {\n return openDropdownUtil(this.dropdownElementRef);\n }\n\n async closeDropdown() {\n return closeDropdownUtil(this.dropdownElementRef);\n }\n\n private checkClassList() {\n this.isInvalid = this.hostElement.classList.contains('ix-invalid');\n }\n\n private renderInput() {\n return (\n <div class=\"input-wrapper\">\n <SlotStart\n slotStartRef={this.slotStartRef}\n onSlotChange={() => this.updatePaddings()}\n ></SlotStart>\n <input\n autoComplete=\"off\"\n class={{\n 'is-invalid': this.isInputInvalid,\n }}\n disabled={this.disabled}\n readOnly={this.readonly}\n readonly={this.readonly}\n required={this.required}\n ref={this.inputElementRef}\n type=\"text\"\n value={this.value ?? ''}\n placeholder={this.placeholder}\n name={this.name}\n onInput={(event) => {\n const target = event.target as HTMLInputElement;\n this.onInput(target.value);\n }}\n onClick={(event) => {\n if (this.show) {\n event.stopPropagation();\n event.preventDefault();\n }\n }}\n onFocus={async () => {\n this.openDropdown();\n this.ixFocus.emit();\n }}\n onBlur={() => {\n this.ixBlur.emit();\n this.touched = true;\n }}\n ></input>\n <SlotEnd\n slotEndRef={this.slotEndRef}\n onSlotChange={() => this.updatePaddings()}\n >\n <ix-icon-button\n data-testid=\"open-calendar\"\n class={{ 'calendar-hidden': this.disabled || this.readonly }}\n variant=\"subtle-tertiary\"\n icon={iconCalendar}\n onClick={(event) => this.onCalenderClick(event)}\n aria-label={this.ariaLabelCalendarButton}\n ></ix-icon-button>\n </SlotEnd>\n </div>\n );\n }\n\n @HookValidationLifecycle()\n hookValidationLifecycle({\n isInfo,\n isInvalid,\n isInvalidByRequired,\n isValid,\n isWarning,\n }: ValidationResults) {\n this.isInvalid = isInvalid || isInvalidByRequired || this.isInputInvalid;\n this.isInfo = isInfo;\n this.isValid = isValid;\n this.isWarning = isWarning;\n }\n\n @Watch('isInputInvalid')\n async onInputValidationChange() {\n const state = await this.getValidityState();\n this.validityStateChange.emit({\n patternMismatch: state.patternMismatch,\n invalidReason: this.invalidReason,\n });\n }\n\n /** @internal */\n @Method()\n getValidityState(): Promise<ValidityState> {\n return Promise.resolve(\n createValidityState(this.isInputInvalid, !!this.required, this.value)\n );\n }\n\n /**\n * Get the native input element\n */\n @Method()\n getNativeInputElement(): Promise<HTMLInputElement> {\n return this.inputElementRef.waitForCurrent();\n }\n\n /**\n * Focuses the input field\n */\n @Method()\n async focusInput(): Promise<void> {\n return (await this.getNativeInputElement()).focus();\n }\n\n /**\n * Returns whether the text field has been touched.\n * @internal\n */\n @Method()\n isTouched(): Promise<boolean> {\n return Promise.resolve(this.touched);\n }\n\n render() {\n const invalidText = this.isInputInvalid\n ? this.i18nErrorDateUnparsable\n : this.invalidText;\n\n return (\n <Host\n class={{\n disabled: this.disabled,\n readonly: this.readonly,\n }}\n >\n <ix-field-wrapper\n label={this.label}\n helperText={this.helperText}\n isInvalid={this.isInvalid}\n invalidText={invalidText}\n infoText={this.infoText}\n isInfo={this.isInfo}\n isWarning={this.isWarning}\n warningText={this.warningText}\n isValid={this.isValid}\n validText={this.validText}\n showTextAsTooltip={this.showTextAsTooltip}\n required={this.required}\n controlRef={this.inputElementRef}\n >\n {this.renderInput()}\n </ix-field-wrapper>\n <ix-dropdown\n data-testid=\"date-dropdown\"\n trigger={this.inputElementRef.waitForCurrent()}\n ref={this.dropdownElementRef}\n closeBehavior=\"outside\"\n suppressOverflowBehavior={true}\n show={this.show}\n onShowChanged={(event) => {\n this.show = event.detail;\n }}\n >\n <ix-date-picker\n ref={this.datepickerRef}\n format={this.format}\n locale={this.locale}\n singleSelection\n from={this.from ?? ''}\n minDate={this.minDate}\n maxDate={this.maxDate}\n onDateChange={(event) => {\n const { from } = event.detail;\n this.onInput(from);\n }}\n showWeekNumbers={this.showWeekNumbers}\n ariaLabelNextMonthButton={this.ariaLabelNextMonthButton}\n ariaLabelPreviousMonthButton={this.ariaLabelPreviousMonthButton}\n embedded\n ></ix-date-picker>\n </ix-dropdown>\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker-component.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker-component.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG","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 type { DateTimeCardCorners } from '../date-time-card/date-time-card.types';\n\nexport interface IxDatePickerComponent {\n /**\n * Annotate with @Prop() decorator\n */\n format: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n range: boolean;\n\n /**\n * Annotate with @Prop() decorator\n */\n corners: DateTimeCardCorners;\n\n /**\n * Annotate with @Prop() decorator\n */\n from?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n to?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n minDate?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n maxDate?: string;\n\n /**\n * Annotate with @Prop({ attribute: 'i18n-done' }) decorator\n */\n i18nDone: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n weekStartIndex: number;\n\n /**\n * Annotate with @Prop() decorator\n */\n locale?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n showWeekNumbers: boolean;\n}\n"]}
1
+ {"version":3,"file":"date-picker-component.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker-component.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG","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 type { DateTimeCardCorners } from '../date-time-card/date-time-card.types';\n\nexport interface IxDatePickerComponent {\n /**\n * Annotate with @Prop() decorator\n */\n format: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n singleSelection: boolean;\n\n /**\n * Annotate with @Prop() decorator\n */\n corners: DateTimeCardCorners;\n\n /**\n * Annotate with @Prop() decorator\n */\n from?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n to?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n minDate?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n maxDate?: string;\n\n /**\n * Annotate with @Prop({ attribute: 'i18n-done' }) decorator\n */\n i18nDone: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n weekStartIndex: number;\n\n /**\n * Annotate with @Prop() decorator\n */\n locale?: string;\n\n /**\n * Annotate with @Prop() decorator\n */\n showWeekNumbers: boolean;\n}\n"]}
@@ -29,9 +29,9 @@ export class DatePicker {
29
29
  */
30
30
  this.format = 'yyyy/LL/dd';
31
31
  /**
32
- * If true a date-range can be selected (from/to).
32
+ * If true disables date range selection (from/to).
33
33
  */
34
- this.range = true;
34
+ this.singleSelection = false;
35
35
  /**
36
36
  * Corner style
37
37
  */
@@ -62,7 +62,7 @@ export class DatePicker {
62
62
  */
63
63
  this.showWeekNumbers = false;
64
64
  /** @internal */
65
- this.standaloneAppearance = true;
65
+ this.embedded = false;
66
66
  /** @internal */
67
67
  this.today = DateTime.now().toISO();
68
68
  this.selectedYear = 0;
@@ -118,7 +118,7 @@ export class DatePicker {
118
118
  const _to = ((_c = this.currToDate) === null || _c === void 0 ? void 0 : _c.isValid)
119
119
  ? (_d = this.currToDate) === null || _d === void 0 ? void 0 : _d.toFormat(this.format)
120
120
  : undefined;
121
- if (this.range) {
121
+ if (!this.singleSelection) {
122
122
  return {
123
123
  from: _from,
124
124
  to: _to,
@@ -368,7 +368,7 @@ export class DatePicker {
368
368
  return;
369
369
  }
370
370
  const date = DateTime.fromJSDate(new Date(this.selectedYear, this.selectedMonth, selectedDay));
371
- if (!this.range || this.currFromDate === undefined) {
371
+ if (this.singleSelection || this.currFromDate === undefined) {
372
372
  this.currFromDate = date;
373
373
  this.onDateChange();
374
374
  return;
@@ -394,7 +394,7 @@ export class DatePicker {
394
394
  onDateChange() {
395
395
  this.getCurrentDate().then((date) => {
396
396
  this.dateChange.emit(date);
397
- if (this.range) {
397
+ if (!this.singleSelection) {
398
398
  this.dateRangeChange.emit(date);
399
399
  }
400
400
  });
@@ -407,12 +407,12 @@ export class DatePicker {
407
407
  'calendar-item': true,
408
408
  'empty-day': day === undefined,
409
409
  today: todayObj.hasSame(selectedDayObj, 'day'),
410
- selected: ((_a = this.currFromDate) === null || _a === void 0 ? void 0 : _a.hasSame(selectedDayObj, 'day')) ||
411
- ((_b = this.currToDate) === null || _b === void 0 ? void 0 : _b.hasSame(selectedDayObj, 'day')),
412
- range: this.currFromDate &&
410
+ selected: !!(((_a = this.currFromDate) === null || _a === void 0 ? void 0 : _a.hasSame(selectedDayObj, 'day')) ||
411
+ ((_b = this.currToDate) === null || _b === void 0 ? void 0 : _b.hasSame(selectedDayObj, 'day'))),
412
+ range: !!(this.currFromDate &&
413
413
  selectedDayObj.startOf('day') > this.currFromDate.startOf('day') &&
414
414
  this.currToDate !== undefined &&
415
- selectedDayObj.startOf('day') < ((_c = this.currToDate) === null || _c === void 0 ? void 0 : _c.startOf('day')),
415
+ selectedDayObj.startOf('day') < ((_c = this.currToDate) === null || _c === void 0 ? void 0 : _c.startOf('day'))),
416
416
  disabled: !this.isWithinMinMaxDate(selectedDayObj),
417
417
  };
418
418
  }
@@ -479,7 +479,7 @@ export class DatePicker {
479
479
  return rows;
480
480
  }
481
481
  render() {
482
- return (h(Host, { key: '975fb147a2e9f2752199791804b9ea69e40bfff3' }, h("ix-date-time-card", { key: '5ffd6210644679e39b1f836d17af315b507814d4', corners: this.corners, standaloneAppearance: this.standaloneAppearance }, h("div", { key: '09ac296549f7a5f8f4b2f2ecd4bf114fb3756072', class: "header", slot: "header" }, h("ix-icon-button", { key: '10c413f54aaf109e30dfef6b520701d3f4e2260c', onClick: () => this.changeToAdjacentMonth(-1), icon: iconChevronLeftSmall, variant: "tertiary", class: "arrows", "aria-label": this.ariaLabelPreviousMonthButton }), h("div", { key: 'f724f1591b6f55bbed459db1cde01849e80532e3', class: "selector" }, h("ix-button", { key: 'fe8920851cd29e3a82ec4db028f851789b97d2ed', variant: "tertiary", ref: this.dropdownButtonRef, "data-testid": "year-month-button" }, h("span", { key: 'bfba53e439f706ce78c6c2f6b558fe5e0f8cb56d', class: "fontSize capitalize" }, this.monthNames[this.selectedMonth], " ", this.selectedYear)), h("ix-dropdown", { key: 'ee3ee120dc36d979179c47e2c6cd88975f1c304b', "data-testid": "year-month-dropdown", class: "dropdown", trigger: this.dropdownButtonRef.waitForCurrent(), ignoreRelatedSubmenu: true, placement: "bottom-start" }, h("div", { key: '647082563320b63a7af68a6c55a0cf60bc570b87', class: "wrapper" }, h("div", { key: 'a33071bb2dcc27e1932f675663f3c93a9ceac842', "data-testid": "year-container", class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: this.yearContainerRef }, this.renderYears()), h("div", { key: 'c06c111bd3981a698f49a352551186615e963dbe', class: "overflow", "data-testid": "month-container" }, this.monthNames.map((month, index) => (h("div", { key: month, ref: (ref) => {
482
+ return (h(Host, { key: 'd727f1c1934317b469131c5166c8577a2f1f59c9' }, h("ix-date-time-card", { key: '7cd812f351930d12fd4a8ca1862414b25559844a', corners: this.corners, embedded: this.embedded }, h("div", { key: '40a266a3cc994f81fa272a7fbe77825d55577a12', class: "header", slot: "header" }, h("ix-icon-button", { key: '9700361e0dc914242fbe5fed38eae0e4d4f428eb', onClick: () => this.changeToAdjacentMonth(-1), icon: iconChevronLeftSmall, variant: "tertiary", class: "arrows", "aria-label": this.ariaLabelPreviousMonthButton }), h("div", { key: '731ae8fda3b949093f68cd8eb70467f083e75a2f', class: "selector" }, h("ix-button", { key: '7c4f782cdbcfbf7ab621256acd21f1aec818bf11', variant: "tertiary", ref: this.dropdownButtonRef, "data-testid": "year-month-button" }, h("span", { key: '31802a1b2cafdf865c74ab6a1ed6131fba9cd801', class: "fontSize capitalize" }, this.monthNames[this.selectedMonth], " ", this.selectedYear)), h("ix-dropdown", { key: '5587ea0df4d233aceb16bb0597613924dffeae22', "data-testid": "year-month-dropdown", class: "dropdown", trigger: this.dropdownButtonRef.waitForCurrent(), ignoreRelatedSubmenu: true, placement: "bottom-start" }, h("div", { key: 'ce87c3e8db04f3832c4f7a6bfdaa9313d7b588b5', class: "wrapper" }, h("div", { key: '35b2e7d378e53692c6f59e01653456ecf512d524', "data-testid": "year-container", class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: this.yearContainerRef }, this.renderYears()), h("div", { key: '77028f922e3f68711ebef26d16fa2fb1b163c6a7', class: "overflow", "data-testid": "month-container" }, this.monthNames.map((month, index) => (h("div", { key: month, ref: (ref) => {
483
483
  if (month === this.monthNames[0]) {
484
484
  this.firstMonthRef(ref);
485
485
  }
@@ -493,10 +493,10 @@ export class DatePicker {
493
493
  hidden: this.tempYear !== this.selectedYear ||
494
494
  this.tempMonth !== index,
495
495
  checkPosition: true,
496
- }, name: iconSingleCheck, size: "16" }), h("div", null, h("span", { class: "capitalize monthMargin" }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { key: 'fa52a159878c21efdd07e70715869c19543761eb', onClick: () => this.changeToAdjacentMonth(1), icon: iconChevronRightSmall, variant: "tertiary", class: "arrows", "aria-label": this.ariaLabelNextMonthButton })), h("div", { key: '15b80a79336357653e270527e270db642f708062', class: {
496
+ }, name: iconSingleCheck, size: "16" }), h("div", null, h("span", { class: "capitalize monthMargin" }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { key: 'b99ec1b3e4945ee45ed04c863464b1dbc294a278', onClick: () => this.changeToAdjacentMonth(1), icon: iconChevronRightSmall, variant: "tertiary", class: "arrows", "aria-label": this.ariaLabelNextMonthButton })), h("div", { key: 'c2b7f963615d5c5f14d4e6bf17ccf1cbc35c43e0', class: {
497
497
  grid: true,
498
498
  'grid--show-week-numbers': this.showWeekNumbers,
499
- } }, this.showWeekNumbers && h("div", { key: '2b457bd79d5c84c786aa0eb633f7d94190ab9a55', class: "calendar-item week-day" }), this.dayNames.map((name) => (h("div", { key: name, class: "calendar-item week-day" }, h("div", { class: "overflow" }, name.slice(0, 3))))), this.calendar.map((week) => {
499
+ } }, this.showWeekNumbers && h("div", { key: '20b70eccd88974f3ce79be65136d130a77ebf62c', class: "calendar-item week-day" }), this.dayNames.map((name) => (h("div", { key: name, class: "calendar-item week-day" }, h("div", { class: "overflow" }, name.slice(0, 3))))), this.calendar.map((week) => {
500
500
  return (h(Fragment, null, this.showWeekNumbers && (h("div", { class: "calendar-item week-number" }, week.weekNumber)), week.dayNumbers.map((day) => {
501
501
  return day ? (h("div", { key: day, id: `day-cell-${day}`, "date-calender-day": true, class: this.getDayClasses(day), onClick: (e) => {
502
502
  const target = e.currentTarget;
@@ -508,10 +508,10 @@ export class DatePicker {
508
508
  }
509
509
  }, tabIndex: day === this.focusedDay ? 0 : -1, onFocus: () => this.onDayFocus(), onBlur: () => this.onDayBlur(), "aria-label": `${this.selectedMonth}: ${day}` }, day)) : (h("div", null));
510
510
  })));
511
- })), h("div", { key: 'a6a2f628600653041dfdfd48019a64b13d30d7ae', class: {
511
+ })), h("div", { key: 'e23666d293faa6b8b47cb274c31e29a6c91b3ba9', class: {
512
512
  button: true,
513
- hidden: !this.range || !this.standaloneAppearance,
514
- } }, h("ix-button", { key: '185f2c6cec57d002ac22ce0a4b9f765faf00e5f7', onClick: () => this.onDone() }, this.i18nDone)))));
513
+ hidden: this.singleSelection || this.embedded,
514
+ } }, h("ix-button", { key: '7b3acc93968e06769d451c06f3b63544af09d3ee', onClick: () => this.onDone() }, this.i18nDone)))));
515
515
  }
516
516
  static get is() { return "ix-date-picker"; }
517
517
  static get encapsulation() { return "shadow"; }
@@ -547,9 +547,9 @@ export class DatePicker {
547
547
  "reflect": false,
548
548
  "defaultValue": "'yyyy/LL/dd'"
549
549
  },
550
- "range": {
550
+ "singleSelection": {
551
551
  "type": "boolean",
552
- "attribute": "range",
552
+ "attribute": "single-selection",
553
553
  "mutable": false,
554
554
  "complexType": {
555
555
  "original": "boolean",
@@ -560,12 +560,12 @@ export class DatePicker {
560
560
  "optional": false,
561
561
  "docs": {
562
562
  "tags": [],
563
- "text": "If true a date-range can be selected (from/to)."
563
+ "text": "If true disables date range selection (from/to)."
564
564
  },
565
565
  "getter": false,
566
566
  "setter": false,
567
567
  "reflect": false,
568
- "defaultValue": "true"
568
+ "defaultValue": "false"
569
569
  },
570
570
  "corners": {
571
571
  "type": "string",
@@ -791,9 +791,9 @@ export class DatePicker {
791
791
  "reflect": false,
792
792
  "defaultValue": "false"
793
793
  },
794
- "standaloneAppearance": {
794
+ "embedded": {
795
795
  "type": "boolean",
796
- "attribute": "standalone-appearance",
796
+ "attribute": "embedded",
797
797
  "mutable": false,
798
798
  "complexType": {
799
799
  "original": "boolean",
@@ -812,7 +812,7 @@ export class DatePicker {
812
812
  "getter": false,
813
813
  "setter": false,
814
814
  "reflect": false,
815
- "defaultValue": "true"
815
+ "defaultValue": "false"
816
816
  },
817
817
  "today": {
818
818
  "type": "string",