@siemens/ix 0.0.0-20240508065324 → 0.0.0-20240522073858

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 (518) hide show
  1. package/components/base-button.js +26 -3
  2. package/components/base-button.js.map +1 -1
  3. package/components/breadcrumb-item.js +1 -1
  4. package/components/breadcrumb-item.js.map +1 -1
  5. package/components/button.js +3 -3
  6. package/components/button.js.map +1 -1
  7. package/components/date-picker.js +4 -4
  8. package/components/date-picker.js.map +1 -1
  9. package/components/dropdown.js +29 -12
  10. package/components/dropdown.js.map +1 -1
  11. package/components/icon-button.js +2 -2
  12. package/components/icon-button.js.map +1 -1
  13. package/components/ix-blind.js +1 -1
  14. package/components/ix-blind.js.map +1 -1
  15. package/components/ix-category-filter.js +1 -1
  16. package/components/ix-category-filter.js.map +1 -1
  17. package/components/ix-date-dropdown.js +14 -5
  18. package/components/ix-date-dropdown.js.map +1 -1
  19. package/components/ix-icon-toggle-button.js +1 -1
  20. package/components/ix-icon-toggle-button.js.map +1 -1
  21. package/components/ix-menu.js +3 -3
  22. package/components/ix-menu.js.map +1 -1
  23. package/components/ix-pagination.js +1 -1
  24. package/components/ix-pagination.js.map +1 -1
  25. package/components/ix-workflow-step.js +4 -4
  26. package/components/ix-workflow-step.js.map +1 -1
  27. package/components/ix-workflow-steps.js +1 -1
  28. package/components/ix-workflow-steps.js.map +1 -1
  29. package/components/tooltip.js +5 -2
  30. package/components/tooltip.js.map +1 -1
  31. package/dist/cjs/{app-globals-7ea20f68.js → app-globals-5cfdf2a0.js} +2 -2
  32. package/dist/cjs/{app-globals-7ea20f68.js.map → app-globals-5cfdf2a0.js.map} +1 -1
  33. package/dist/cjs/{base-button-2f74b19d.js → base-button-7c45a6c4.js} +27 -4
  34. package/dist/cjs/base-button-7c45a6c4.js.map +1 -0
  35. package/dist/cjs/{base-icon-button-848c77f2.js → base-icon-button-ac2fcf4b.js} +2 -2
  36. package/dist/cjs/{base-icon-button-848c77f2.js.map → base-icon-button-ac2fcf4b.js.map} +1 -1
  37. package/dist/cjs/{core-js-a890bac8.js → core-js-2fc351ee.js} +1 -1
  38. package/dist/cjs/{core-js-a890bac8.js.map → core-js-2fc351ee.js.map} +1 -1
  39. package/dist/cjs/dom-83fb07d8.js.map +1 -1
  40. package/dist/cjs/{index.es2017-0db94b91.js → index.es2017-0c2b80b6.js} +3 -3
  41. package/dist/cjs/{index.es2017-0db94b91.js.map → index.es2017-0c2b80b6.js.map} +1 -1
  42. package/dist/cjs/ix-avatar_2.cjs.entry.js +1 -1
  43. package/dist/cjs/ix-blind.cjs.entry.js +1 -1
  44. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +2 -2
  46. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ix-button.cjs.entry.js +4 -4
  48. package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ix-category-filter.cjs.entry.js +2 -2
  50. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ix-col_4.cjs.entry.js +4 -4
  52. package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ix-date-dropdown.cjs.entry.js +11 -4
  54. package/dist/cjs/ix-date-dropdown.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ix-dropdown.cjs.entry.js +28 -12
  56. package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ix-icon-button_2.cjs.entry.js +4 -4
  58. package/dist/cjs/ix-icon-button_2.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +3 -3
  60. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ix-icon.entry-e95ddded.js +1533 -0
  62. package/dist/cjs/ix-icon.entry-e95ddded.js.map +1 -0
  63. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +1 -1
  64. package/dist/cjs/ix-menu.cjs.entry.js +3 -3
  65. package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ix-pagination.cjs.entry.js +2 -2
  67. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ix-toggle-button.cjs.entry.js +1 -1
  69. package/dist/cjs/ix-tooltip.cjs.entry.js +5 -2
  70. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ix-workflow-step.cjs.entry.js +4 -4
  72. package/dist/cjs/ix-workflow-step.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  74. package/dist/cjs/ix-workflow-steps.cjs.entry.js.map +1 -1
  75. package/dist/cjs/loader.cjs.js +2 -2
  76. package/dist/cjs/siemens-ix.cjs.js +2 -2
  77. package/dist/collection/components/action-card/action-card.js.map +1 -1
  78. package/dist/collection/components/application/application.js.map +1 -1
  79. package/dist/collection/components/application-header/application-header.js.map +1 -1
  80. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js.map +1 -1
  81. package/dist/collection/components/application-header/test/application-header.ct.js.map +1 -1
  82. package/dist/collection/components/application-sidebar/application-sidebar.js.map +1 -1
  83. package/dist/collection/components/application-sidebar/events.js.map +1 -1
  84. package/dist/collection/components/avatar/avatar.js.map +1 -1
  85. package/dist/collection/components/avatar/test/avatar.ct.js.map +1 -1
  86. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
  87. package/dist/collection/components/blind/blind.css +1 -1
  88. package/dist/collection/components/blind/blind.js.map +1 -1
  89. package/dist/collection/components/blind/test/blind.ct.js.map +1 -1
  90. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  91. package/dist/collection/components/breadcrumb/test/breadcrumb.ct.js.map +1 -1
  92. package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +181 -0
  93. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  94. package/dist/collection/components/button/base-button.js +25 -2
  95. package/dist/collection/components/button/base-button.js.map +1 -1
  96. package/dist/collection/components/button/button.css +181 -0
  97. package/dist/collection/components/button/button.js +7 -4
  98. package/dist/collection/components/button/button.js.map +1 -1
  99. package/dist/collection/components/button/test/button.ct.js +11 -0
  100. package/dist/collection/components/button/test/button.ct.js.map +1 -1
  101. package/dist/collection/components/button/test/button.spec.js.map +1 -1
  102. package/dist/collection/components/card/card.js.map +1 -1
  103. package/dist/collection/components/card-accordion/card-accordion.js.map +1 -1
  104. package/dist/collection/components/card-content/card-content.js.map +1 -1
  105. package/dist/collection/components/card-list/card-list.js.map +1 -1
  106. package/dist/collection/components/card-title/card-title.js.map +1 -1
  107. package/dist/collection/components/category-filter/category-filter.css +181 -0
  108. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  109. package/dist/collection/components/category-filter/filter-state.js.map +1 -1
  110. package/dist/collection/components/category-filter/input-state.js.map +1 -1
  111. package/dist/collection/components/category-filter/logical-filter-operator.js.map +1 -1
  112. package/dist/collection/components/chip/chip.js.map +1 -1
  113. package/dist/collection/components/col/col.js.map +1 -1
  114. package/dist/collection/components/content/content.js.map +1 -1
  115. package/dist/collection/components/content-header/content-header.js.map +1 -1
  116. package/dist/collection/components/css-grid/builder.js.map +1 -1
  117. package/dist/collection/components/css-grid/css-grid-item.js.map +1 -1
  118. package/dist/collection/components/css-grid/css-grid.js.map +1 -1
  119. package/dist/collection/components/date-dropdown/date-dropdown.js +33 -3
  120. package/dist/collection/components/date-dropdown/date-dropdown.js.map +1 -1
  121. package/dist/collection/components/date-dropdown/test/date-dropdown.ct.js +43 -0
  122. package/dist/collection/components/date-dropdown/test/date-dropdown.ct.js.map +1 -1
  123. package/dist/collection/components/date-picker/date-picker.js +4 -4
  124. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  125. package/dist/collection/components/date-picker/test/date-picker.ct.js.map +1 -1
  126. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  127. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  128. package/dist/collection/components/datetime-picker/test/datetime-picker.ct.js.map +1 -1
  129. package/dist/collection/components/divider/divider.js.map +1 -1
  130. package/dist/collection/components/drawer/drawer.js.map +1 -1
  131. package/dist/collection/components/drawer/test/drawer.ct.js.map +1 -1
  132. package/dist/collection/components/drawer/test/drawer.spec.js.map +1 -1
  133. package/dist/collection/components/dropdown/dropdown-controller.js +19 -6
  134. package/dist/collection/components/dropdown/dropdown-controller.js.map +1 -1
  135. package/dist/collection/components/dropdown/dropdown.js +30 -6
  136. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  137. package/dist/collection/components/dropdown/placement.js.map +1 -1
  138. package/dist/collection/components/dropdown/test/dropdown-controller.spec.js.map +1 -1
  139. package/dist/collection/components/dropdown/test/dropdown.ct.js.map +1 -1
  140. package/dist/collection/components/dropdown-button/dropdown-button.js +1 -1
  141. package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
  142. package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -1
  143. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  144. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js.map +1 -1
  145. package/dist/collection/components/empty-state/empty-state.js.map +1 -1
  146. package/dist/collection/components/event-list/event-list.js.map +1 -1
  147. package/dist/collection/components/event-list/test/event-list.ct.js.map +1 -1
  148. package/dist/collection/components/event-list/test/event-list.spec.js.map +1 -1
  149. package/dist/collection/components/event-list-item/event-list-item.js.map +1 -1
  150. package/dist/collection/components/event-list-item/test/event-list-item.spec.js.map +1 -1
  151. package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
  152. package/dist/collection/components/expanding-search/test/expanding-search.ct.js.map +1 -1
  153. package/dist/collection/components/expanding-search/test/expanding-search.spec.js.map +1 -1
  154. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
  155. package/dist/collection/components/flip-tile/flip-tile-state.js.map +1 -1
  156. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
  157. package/dist/collection/components/flip-tile/test/flip-tile.ct.js.map +1 -1
  158. package/dist/collection/components/flip-tile-content/flip-tile-content.js.map +1 -1
  159. package/dist/collection/components/form-field/form-field.js.map +1 -1
  160. package/dist/collection/components/grid/layout-grid.js.map +1 -1
  161. package/dist/collection/components/group/group-context-menu.js.map +1 -1
  162. package/dist/collection/components/group/group.js.map +1 -1
  163. package/dist/collection/components/group/test/group.ct.js.map +1 -1
  164. package/dist/collection/components/group-item/group-item.js.map +1 -1
  165. package/dist/collection/components/icon-button/base-icon-button.js.map +1 -1
  166. package/dist/collection/components/icon-button/icon-button.css +181 -0
  167. package/dist/collection/components/icon-button/icon-button.js +6 -3
  168. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  169. package/dist/collection/components/icon-button/test/icon-button.ct.js.map +1 -1
  170. package/dist/collection/components/icon-button/test/icon-button.spec.js.map +1 -1
  171. package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +181 -0
  172. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  173. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -1
  174. package/dist/collection/components/input-group/input-group.js.map +1 -1
  175. package/dist/collection/components/input-group/tests/input-group.ct.js.map +1 -1
  176. package/dist/collection/components/key-value/key-value.js.map +1 -1
  177. package/dist/collection/components/key-value-list/key-value-list.js.map +1 -1
  178. package/dist/collection/components/kpi/kpi.js.map +1 -1
  179. package/dist/collection/components/link-button/link-button.js.map +1 -1
  180. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  181. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js.map +1 -1
  182. package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
  183. package/dist/collection/components/menu/menu.js +3 -3
  184. package/dist/collection/components/menu/menu.js.map +1 -1
  185. package/dist/collection/components/menu/test/menu.ct.js.map +1 -1
  186. package/dist/collection/components/menu-about/menu-about.js.map +1 -1
  187. package/dist/collection/components/menu-about-item/menu-about-item.js.map +1 -1
  188. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
  189. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  190. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js.map +1 -1
  191. package/dist/collection/components/menu-avatar-item/test/menu-avatar-item.ct.js.map +1 -1
  192. package/dist/collection/components/menu-category/enter-leave.js.map +1 -1
  193. package/dist/collection/components/menu-category/menu-category.js.map +1 -1
  194. package/dist/collection/components/menu-category/test/menu-category.ct.js.map +1 -1
  195. package/dist/collection/components/menu-item/menu-item.js.map +1 -1
  196. package/dist/collection/components/menu-item/test/menu-item.ct.js.map +1 -1
  197. package/dist/collection/components/menu-settings/menu-settings.js.map +1 -1
  198. package/dist/collection/components/menu-settings-item/menu-settings-item.js.map +1 -1
  199. package/dist/collection/components/message-bar/message-bar.js.map +1 -1
  200. package/dist/collection/components/message-bar/test/message-bar.spec.js.map +1 -1
  201. package/dist/collection/components/modal/modal.js.map +1 -1
  202. package/dist/collection/components/modal/test/modal.ct.js.map +1 -1
  203. package/dist/collection/components/modal-content/modal-content.js.map +1 -1
  204. package/dist/collection/components/modal-footer/modal-footer.js.map +1 -1
  205. package/dist/collection/components/modal-header/modal-header.js.map +1 -1
  206. package/dist/collection/components/modal-loading/modal-loading.js.map +1 -1
  207. package/dist/collection/components/pagination/pagination.css +181 -0
  208. package/dist/collection/components/pagination/pagination.js.map +1 -1
  209. package/dist/collection/components/pagination/test/pagination.ct.js.map +1 -1
  210. package/dist/collection/components/pagination/test/pagination.spec.js.map +1 -1
  211. package/dist/collection/components/pane/pane.js.map +1 -1
  212. package/dist/collection/components/pane/test/panes.ct.js.map +1 -1
  213. package/dist/collection/components/pane-layout/pane-layout.js.map +1 -1
  214. package/dist/collection/components/pane-layout/test/pane-layout.ct.js.map +1 -1
  215. package/dist/collection/components/pill/pill.js.map +1 -1
  216. package/dist/collection/components/playground/example-modal.js.map +1 -1
  217. package/dist/collection/components/playground/playground.js.map +1 -1
  218. package/dist/collection/components/push-card/push-card.js.map +1 -1
  219. package/dist/collection/components/row/row.js.map +1 -1
  220. package/dist/collection/components/select/select.js.map +1 -1
  221. package/dist/collection/components/select/test/select.ct.js.map +1 -1
  222. package/dist/collection/components/select-item/events.js.map +1 -1
  223. package/dist/collection/components/select-item/select-item.js.map +1 -1
  224. package/dist/collection/components/select-item/test/select-item.spec.js.map +1 -1
  225. package/dist/collection/components/slider/slider.js.map +1 -1
  226. package/dist/collection/components/slider/test/slider.ct.js.map +1 -1
  227. package/dist/collection/components/spinner/spinner.js.map +1 -1
  228. package/dist/collection/components/split-button/split-button.js +1 -1
  229. package/dist/collection/components/split-button/split-button.js.map +1 -1
  230. package/dist/collection/components/split-button-item/split-button-item.js.map +1 -1
  231. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  232. package/dist/collection/components/tabs/tabs.js.map +1 -1
  233. package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -1
  234. package/dist/collection/components/tile/tile.js.map +1 -1
  235. package/dist/collection/components/time-picker/test/time-picker.ct.js.map +1 -1
  236. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  237. package/dist/collection/components/toast/toast-container.js.map +1 -1
  238. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  239. package/dist/collection/components/toast/toast.js.map +1 -1
  240. package/dist/collection/components/toggle/test/toggle.ct.js.map +1 -1
  241. package/dist/collection/components/toggle/toggle.js.map +1 -1
  242. package/dist/collection/components/toggle-button/toggle-button.js +1 -1
  243. package/dist/collection/components/toggle-button/toggle-button.js.map +1 -1
  244. package/dist/collection/components/tooltip/test/tooltip.ct.js.map +1 -1
  245. package/dist/collection/components/tooltip/tooltip-controller.js.map +1 -1
  246. package/dist/collection/components/tooltip/tooltip.js +5 -2
  247. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  248. package/dist/collection/components/tree/test/tree.ct.js.map +1 -1
  249. package/dist/collection/components/tree/tree-model.js.map +1 -1
  250. package/dist/collection/components/tree/tree.js.map +1 -1
  251. package/dist/collection/components/tree-item/default-tree-item.js.map +1 -1
  252. package/dist/collection/components/tree-item/tree-item.js.map +1 -1
  253. package/dist/collection/components/typography/test/ix-typography.spec.js.map +1 -1
  254. package/dist/collection/components/typography/type-mapping.js.map +1 -1
  255. package/dist/collection/components/typography/typography.js.map +1 -1
  256. package/dist/collection/components/upload/upload-file-state.js.map +1 -1
  257. package/dist/collection/components/upload/upload.js.map +1 -1
  258. package/dist/collection/components/utils/a11y.js.map +1 -1
  259. package/dist/collection/components/utils/animation.js.map +1 -1
  260. package/dist/collection/components/utils/app-switch/index.js.map +1 -1
  261. package/dist/collection/components/utils/application-layout/context.js.map +1 -1
  262. package/dist/collection/components/utils/application-layout/index.js.map +1 -1
  263. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  264. package/dist/collection/components/utils/breakpoints.js.map +1 -1
  265. package/dist/collection/components/utils/condition-checks.js.map +1 -1
  266. package/dist/collection/components/utils/context.js.map +1 -1
  267. package/dist/collection/components/utils/debounce.js.map +1 -1
  268. package/dist/collection/components/utils/delegate.js.map +1 -1
  269. package/dist/collection/components/utils/focus.js.map +1 -1
  270. package/dist/collection/components/utils/internal/component.js.map +1 -1
  271. package/dist/collection/components/utils/internal/index.js.map +1 -1
  272. package/dist/collection/components/utils/listener.js.map +1 -1
  273. package/dist/collection/components/utils/make-ref.js.map +1 -1
  274. package/dist/collection/components/utils/menu-service/menu-service.js.map +1 -1
  275. package/dist/collection/components/utils/menu-tabs/menu-tabs-fc.js.map +1 -1
  276. package/dist/collection/components/utils/menu-tabs/menu-tabs-utils.js.map +1 -1
  277. package/dist/collection/components/utils/modal/index.js.map +1 -1
  278. package/dist/collection/components/utils/modal/loading.js.map +1 -1
  279. package/dist/collection/components/utils/modal/message.js.map +1 -1
  280. package/dist/collection/components/utils/modal/modal.js.map +1 -1
  281. package/dist/collection/components/utils/mutation-observer.js.map +1 -1
  282. package/dist/collection/components/utils/notification-color.js.map +1 -1
  283. package/dist/collection/components/utils/overlay.js.map +1 -1
  284. package/dist/collection/components/utils/requestAnimationFrame.js.map +1 -1
  285. package/dist/collection/components/utils/rwd.util.js.map +1 -1
  286. package/dist/collection/components/utils/shadow-dom.js.map +1 -1
  287. package/dist/collection/components/utils/theme-switcher.js.map +1 -1
  288. package/dist/collection/components/utils/typed-event.js.map +1 -1
  289. package/dist/collection/components/utils/waitForElement.js.map +1 -1
  290. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
  291. package/dist/collection/components/workflow-step/workflow-step.css +27 -7
  292. package/dist/collection/components/workflow-step/workflow-step.js +3 -3
  293. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  294. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -1
  295. package/dist/collection/components/workflow-steps/test/workflow-steps.spec.js.map +1 -1
  296. package/dist/collection/components/workflow-steps/workflow-steps.css +9 -1
  297. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  298. package/dist/collection/index.js.map +1 -1
  299. package/dist/collection/setup.js.map +1 -1
  300. package/dist/collection/tests/action-card/action-card.e2e.js.map +1 -1
  301. package/dist/collection/tests/application/application.e2e.js.map +1 -1
  302. package/dist/collection/tests/application-header/application-header.e2e.js.map +1 -1
  303. package/dist/collection/tests/avatar/avatar.e2e.js.map +1 -1
  304. package/dist/collection/tests/basic-navigation/basic-navigation.e2e.js.map +1 -1
  305. package/dist/collection/tests/blind/blind.e2e.js.map +1 -1
  306. package/dist/collection/tests/breadcrumb/breadcrumb.e2e.js.map +1 -1
  307. package/dist/collection/tests/button/button.e2e.js.map +1 -1
  308. package/dist/collection/tests/card/card.e2e.js.map +1 -1
  309. package/dist/collection/tests/card-list/card-list.e2e.js.map +1 -1
  310. package/dist/collection/tests/category-filter/category-filter.e2e.js.map +1 -1
  311. package/dist/collection/tests/checkbox/checkbox.e2e.js.map +1 -1
  312. package/dist/collection/tests/chip/chip.e2e.js.map +1 -1
  313. package/dist/collection/tests/content-header/content-header.e2e.js.map +1 -1
  314. package/dist/collection/tests/date-dropdown/date-dropdown.e2e.js.map +1 -1
  315. package/dist/collection/tests/date-picker/date-picker.e2e.js.map +1 -1
  316. package/dist/collection/tests/date-picker-rework/date-picker-rework.e2e.js.map +1 -1
  317. package/dist/collection/tests/datetime-picker/datetime-picker.e2e.js.map +1 -1
  318. package/dist/collection/tests/datetime-picker-rework/datetime-picker-rework.e2e.js.map +1 -1
  319. package/dist/collection/tests/divider/divider.e2e.js.map +1 -1
  320. package/dist/collection/tests/drawer/drawer.e2e.js.map +1 -1
  321. package/dist/collection/tests/dropdown/dropdown.e2e.js.map +1 -1
  322. package/dist/collection/tests/dropdown-button/dropdown-button.e2e.js.map +1 -1
  323. package/dist/collection/tests/dropdown-quick-actions/dropdown-quick-actions.e2e.js.map +1 -1
  324. package/dist/collection/tests/empty-state/empty-state.e2e.js.map +1 -1
  325. package/dist/collection/tests/event-list/event-list.e2e.js.map +1 -1
  326. package/dist/collection/tests/expanding-search/expanding-search.e2e.js.map +1 -1
  327. package/dist/collection/tests/flip-tile/flip-tile.e2e.js.map +1 -1
  328. package/dist/collection/tests/fonts/fonts.e2e.js.map +1 -1
  329. package/dist/collection/tests/group/group.e2e.js.map +1 -1
  330. package/dist/collection/tests/html-table/html-table.e2e.js.map +1 -1
  331. package/dist/collection/tests/icon/icon.e2e.js.map +1 -1
  332. package/dist/collection/tests/icon-button/icon-button.e2e.js +34 -2
  333. package/dist/collection/tests/icon-button/icon-button.e2e.js.map +1 -1
  334. package/dist/collection/tests/icon-toggle-button/toggle-button.e2e.js.map +1 -1
  335. package/dist/collection/tests/input/input.e2e.js.map +1 -1
  336. package/dist/collection/tests/input-group/input-group.e2e.js.map +1 -1
  337. package/dist/collection/tests/key-value/key-value.e2e.js.map +1 -1
  338. package/dist/collection/tests/key-value-list/key-value-list.e2e.js.map +1 -1
  339. package/dist/collection/tests/kpi/kpi.e2e.js.map +1 -1
  340. package/dist/collection/tests/layout-grid/layout-grid.e2e.js.map +1 -1
  341. package/dist/collection/tests/link-button/link-button.e2e.js.map +1 -1
  342. package/dist/collection/tests/map-navigation/map-navigation.e2e.js.map +1 -1
  343. package/dist/collection/tests/map-navigation-overlay/map-navigation.e2e.js.map +1 -1
  344. package/dist/collection/tests/menu/menu.e2e.js.map +1 -1
  345. package/dist/collection/tests/menu-about/menu-about.e2e.js.map +1 -1
  346. package/dist/collection/tests/menu-about-news/menu-about-news.e2e.js.map +1 -1
  347. package/dist/collection/tests/menu-avatar/menu-avatar.e2e.js.map +1 -1
  348. package/dist/collection/tests/menu-settings/menu-settings.e2e.js.map +1 -1
  349. package/dist/collection/tests/message-bar/message-bar.e2e.js.map +1 -1
  350. package/dist/collection/tests/modal/modal.e2e.js.map +1 -1
  351. package/dist/collection/tests/pagination/pagination.e2e.js.map +1 -1
  352. package/dist/collection/tests/panes/panes.e2e.js.map +1 -1
  353. package/dist/collection/tests/pill/pill.e2e.js.map +1 -1
  354. package/dist/collection/tests/push-card/push-card.e2e.js.map +1 -1
  355. package/dist/collection/tests/radiobutton/radiobutton.e2e.js.map +1 -1
  356. package/dist/collection/tests/select/select.e2e.js.map +1 -1
  357. package/dist/collection/tests/slider/slider.e2e.js.map +1 -1
  358. package/dist/collection/tests/spinner/spinner.e2e.js.map +1 -1
  359. package/dist/collection/tests/split-button/split-button.e2e.js.map +1 -1
  360. package/dist/collection/tests/tabs/tabs.e2e.js.map +1 -1
  361. package/dist/collection/tests/textarea/textarea.e2e.js.map +1 -1
  362. package/dist/collection/tests/tile/tile.e2e.js.map +1 -1
  363. package/dist/collection/tests/time-picker-rework/time-picker-rework.e2e.js.map +1 -1
  364. package/dist/collection/tests/toast/toast.e2e.js.map +1 -1
  365. package/dist/collection/tests/toggle/toggle.e2e.js.map +1 -1
  366. package/dist/collection/tests/toggle-button/toggle-button.e2e.js.map +1 -1
  367. package/dist/collection/tests/tooltip/tooltip.e2e.js.map +1 -1
  368. package/dist/collection/tests/tree/tree.e2e.js.map +1 -1
  369. package/dist/collection/tests/typography/typography.e2e.js.map +1 -1
  370. package/dist/collection/tests/upload/upload.e2e.js.map +1 -1
  371. package/dist/collection/tests/utils/test/index.js.map +1 -1
  372. package/dist/collection/tests/utils/test/page.js.map +1 -1
  373. package/dist/collection/tests/workflow-steps/workflow-steps.e2e.js.map +1 -1
  374. package/dist/esm/{app-globals-bdfc5499.js → app-globals-0cd07cd9.js} +2 -2
  375. package/dist/esm/{app-globals-bdfc5499.js.map → app-globals-0cd07cd9.js.map} +1 -1
  376. package/dist/esm/{base-button-37b915d6.js → base-button-3ac703a7.js} +27 -4
  377. package/dist/esm/base-button-3ac703a7.js.map +1 -0
  378. package/dist/esm/{base-icon-button-976ef0f6.js → base-icon-button-59eb1fe5.js} +2 -2
  379. package/dist/esm/{base-icon-button-976ef0f6.js.map → base-icon-button-59eb1fe5.js.map} +1 -1
  380. package/dist/esm/{core-js-1c33b685.js → core-js-78b486a8.js} +1 -1
  381. package/dist/esm/{core-js-1c33b685.js.map → core-js-78b486a8.js.map} +1 -1
  382. package/dist/esm/dom-64ac48b5.js.map +1 -1
  383. package/dist/esm/{index.es2017-45304832.js → index.es2017-93ac816c.js} +3 -3
  384. package/dist/esm/{index.es2017-45304832.js.map → index.es2017-93ac816c.js.map} +1 -1
  385. package/dist/esm/ix-avatar_2.entry.js +1 -1
  386. package/dist/esm/ix-blind.entry.js +1 -1
  387. package/dist/esm/ix-blind.entry.js.map +1 -1
  388. package/dist/esm/ix-breadcrumb-item.entry.js +2 -2
  389. package/dist/esm/ix-breadcrumb-item.entry.js.map +1 -1
  390. package/dist/esm/ix-button.entry.js +4 -4
  391. package/dist/esm/ix-button.entry.js.map +1 -1
  392. package/dist/esm/ix-category-filter.entry.js +2 -2
  393. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  394. package/dist/esm/ix-col_4.entry.js +4 -4
  395. package/dist/esm/ix-col_4.entry.js.map +1 -1
  396. package/dist/esm/ix-date-dropdown.entry.js +11 -4
  397. package/dist/esm/ix-date-dropdown.entry.js.map +1 -1
  398. package/dist/esm/ix-dropdown.entry.js +28 -12
  399. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  400. package/dist/esm/ix-icon-button_2.entry.js +4 -4
  401. package/dist/esm/ix-icon-button_2.entry.js.map +1 -1
  402. package/dist/esm/ix-icon-toggle-button.entry.js +3 -3
  403. package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -1
  404. package/dist/esm/ix-icon.entry-621b700a.js +1531 -0
  405. package/dist/esm/ix-icon.entry-621b700a.js.map +1 -0
  406. package/dist/esm/ix-menu-expand-icon.entry.js +1 -1
  407. package/dist/esm/ix-menu.entry.js +3 -3
  408. package/dist/esm/ix-menu.entry.js.map +1 -1
  409. package/dist/esm/ix-pagination.entry.js +2 -2
  410. package/dist/esm/ix-pagination.entry.js.map +1 -1
  411. package/dist/esm/ix-toggle-button.entry.js +1 -1
  412. package/dist/esm/ix-tooltip.entry.js +5 -2
  413. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  414. package/dist/esm/ix-workflow-step.entry.js +4 -4
  415. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  416. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  417. package/dist/esm/ix-workflow-steps.entry.js.map +1 -1
  418. package/dist/esm/loader.js +2 -2
  419. package/dist/esm/siemens-ix.js +2 -2
  420. package/dist/siemens-ix/p-01b8b98c.entry.js +2 -0
  421. package/dist/siemens-ix/{p-8d161202.entry.js.map → p-01b8b98c.entry.js.map} +1 -1
  422. package/dist/siemens-ix/p-0fee2dd5.entry.js +2 -0
  423. package/dist/siemens-ix/p-0fee2dd5.entry.js.map +1 -0
  424. package/dist/siemens-ix/p-18a1c4dd.entry.js +2 -0
  425. package/dist/siemens-ix/p-18a1c4dd.entry.js.map +1 -0
  426. package/dist/siemens-ix/p-18a27007.entry.js +2 -0
  427. package/dist/siemens-ix/p-18a27007.entry.js.map +1 -0
  428. package/dist/siemens-ix/{p-84430d2c.js → p-1f6df0c6.js} +2 -2
  429. package/dist/siemens-ix/{p-84430d2c.js.map → p-1f6df0c6.js.map} +1 -1
  430. package/dist/siemens-ix/p-213f16d5.entry.js +2 -0
  431. package/dist/siemens-ix/{p-64c895ac.entry.js.map → p-213f16d5.entry.js.map} +1 -1
  432. package/dist/siemens-ix/{p-7702a8c2.js → p-235c14ca.js} +2 -2
  433. package/dist/siemens-ix/p-2459f98f.entry.js +2 -0
  434. package/dist/siemens-ix/p-2459f98f.entry.js.map +1 -0
  435. package/dist/siemens-ix/p-2c14670e.entry.js +2 -0
  436. package/dist/siemens-ix/p-2c14670e.entry.js.map +1 -0
  437. package/dist/siemens-ix/{p-af74fc62.entry.js → p-306c5ab2.entry.js} +2 -2
  438. package/dist/siemens-ix/{p-0b7741b7.entry.js → p-493cb880.entry.js} +2 -2
  439. package/dist/siemens-ix/p-493cb880.entry.js.map +1 -0
  440. package/dist/siemens-ix/{p-bd310180.entry.js → p-4cf6e817.entry.js} +2 -2
  441. package/dist/siemens-ix/p-5d43cae8.js.map +1 -1
  442. package/dist/siemens-ix/p-8362e966.js +2 -0
  443. package/dist/siemens-ix/p-8362e966.js.map +1 -0
  444. package/dist/siemens-ix/p-a147b152.entry.js +2 -0
  445. package/dist/siemens-ix/p-a147b152.entry.js.map +1 -0
  446. package/dist/siemens-ix/{p-b5c53faf.js → p-a2200306.js} +1 -1
  447. package/dist/siemens-ix/{p-b5c53faf.js.map → p-a2200306.js.map} +1 -1
  448. package/dist/siemens-ix/p-a8838a77.js +2 -0
  449. package/dist/siemens-ix/p-bd576793.entry.js +2 -0
  450. package/dist/siemens-ix/p-bd576793.entry.js.map +1 -0
  451. package/dist/siemens-ix/p-bdc57334.entry.js +2 -0
  452. package/dist/siemens-ix/{p-f7e82b50.entry.js.map → p-bdc57334.entry.js.map} +1 -1
  453. package/dist/siemens-ix/{p-262026ab.entry.js → p-cf546284.entry.js} +2 -2
  454. package/dist/siemens-ix/p-cf546284.entry.js.map +1 -0
  455. package/dist/siemens-ix/{p-ac1d46d6.entry.js → p-def8b3a4.entry.js} +2 -2
  456. package/dist/siemens-ix/{p-ac1d46d6.entry.js.map → p-def8b3a4.entry.js.map} +1 -1
  457. package/dist/siemens-ix/p-e4e24f59.entry.js +2 -0
  458. package/dist/siemens-ix/{p-c29aff68.entry.js.map → p-e4e24f59.entry.js.map} +1 -1
  459. package/dist/siemens-ix/{p-b02fd2c5.entry.js → p-fb55854a.entry.js} +2 -2
  460. package/dist/siemens-ix/p-fe87443e.js +2 -0
  461. package/dist/siemens-ix/p-fe87443e.js.map +1 -0
  462. package/dist/siemens-ix/siemens-ix.css +72 -0
  463. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  464. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  465. package/dist/siemens-ix/theme/classic-dark.css +1 -1
  466. package/dist/siemens-ix/theme/classic-light.css +1 -1
  467. package/dist/types/components/button/base-button.d.ts +3 -0
  468. package/dist/types/components/button/button.d.ts +2 -1
  469. package/dist/types/components/date-dropdown/date-dropdown.d.ts +7 -0
  470. package/dist/types/components/dropdown/dropdown-controller.d.ts +2 -2
  471. package/dist/types/components/dropdown/dropdown.d.ts +2 -0
  472. package/dist/types/components/icon-button/icon-button.d.ts +1 -0
  473. package/dist/types/components.d.ts +15 -0
  474. package/package.json +1 -1
  475. package/scss/theme/classic-dark/_color.scss +36 -0
  476. package/scss/theme/classic-light/_color.scss +36 -0
  477. package/dist/cjs/base-button-2f74b19d.js.map +0 -1
  478. package/dist/cjs/ix-icon.entry-01b3822b.js +0 -1487
  479. package/dist/cjs/ix-icon.entry-01b3822b.js.map +0 -1
  480. package/dist/esm/base-button-37b915d6.js.map +0 -1
  481. package/dist/esm/ix-icon.entry-9fafcf35.js +0 -1485
  482. package/dist/esm/ix-icon.entry-9fafcf35.js.map +0 -1
  483. package/dist/playwright-ct.config.js +0 -23
  484. package/dist/playwright-ct.config.js.map +0 -1
  485. package/dist/playwright.config.js +0 -75
  486. package/dist/playwright.config.js.map +0 -1
  487. package/dist/siemens-ix/p-0b7741b7.entry.js.map +0 -1
  488. package/dist/siemens-ix/p-16826ff7.js +0 -2
  489. package/dist/siemens-ix/p-16d378f3.js +0 -2
  490. package/dist/siemens-ix/p-16d378f3.js.map +0 -1
  491. package/dist/siemens-ix/p-262026ab.entry.js.map +0 -1
  492. package/dist/siemens-ix/p-29b0bef3.entry.js +0 -2
  493. package/dist/siemens-ix/p-29b0bef3.entry.js.map +0 -1
  494. package/dist/siemens-ix/p-64c895ac.entry.js +0 -2
  495. package/dist/siemens-ix/p-6f097cae.entry.js +0 -2
  496. package/dist/siemens-ix/p-6f097cae.entry.js.map +0 -1
  497. package/dist/siemens-ix/p-8d161202.entry.js +0 -2
  498. package/dist/siemens-ix/p-a039faa9.entry.js +0 -2
  499. package/dist/siemens-ix/p-a039faa9.entry.js.map +0 -1
  500. package/dist/siemens-ix/p-a4e489ea.js +0 -2
  501. package/dist/siemens-ix/p-a4e489ea.js.map +0 -1
  502. package/dist/siemens-ix/p-acdeb192.entry.js +0 -2
  503. package/dist/siemens-ix/p-acdeb192.entry.js.map +0 -1
  504. package/dist/siemens-ix/p-c29aff68.entry.js +0 -2
  505. package/dist/siemens-ix/p-c4d3f089.entry.js +0 -2
  506. package/dist/siemens-ix/p-c4d3f089.entry.js.map +0 -1
  507. package/dist/siemens-ix/p-dbf234e5.entry.js +0 -2
  508. package/dist/siemens-ix/p-dbf234e5.entry.js.map +0 -1
  509. package/dist/siemens-ix/p-f7e82b50.entry.js +0 -2
  510. package/dist/siemens-ix/p-fe273de4.entry.js +0 -2
  511. package/dist/siemens-ix/p-fe273de4.entry.js.map +0 -1
  512. package/dist/types/Users/daniel/dev/oss/ix/packages/core/.stencil/playwright-ct.config.d.ts +0 -7
  513. package/dist/types/Users/daniel/dev/oss/ix/packages/core/.stencil/playwright.config.d.ts +0 -7
  514. /package/dist/siemens-ix/{p-7702a8c2.js.map → p-235c14ca.js.map} +0 -0
  515. /package/dist/siemens-ix/{p-af74fc62.entry.js.map → p-306c5ab2.entry.js.map} +0 -0
  516. /package/dist/siemens-ix/{p-bd310180.entry.js.map → p-4cf6e817.entry.js.map} +0 -0
  517. /package/dist/siemens-ix/{p-16826ff7.js.map → p-a8838a77.js.map} +0 -0
  518. /package/dist/siemens-ix/{p-b02fd2c5.entry.js.map → p-fb55854a.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"date-dropdown.ct.js","sourceRoot":"","sources":["../../../../../src/components/date-dropdown/test/date-dropdown.ct.ts"],"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 */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\nimport { DateTime } from 'luxon';\nimport { DateDropdownOption } from '../date-dropdown';\n\nconst DATE_DROPDOWN_SELECTOR = 'ix-date-dropdown';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-date-dropdown></ix-date-dropdown>`);\n const dateDropdown = page.locator(DATE_DROPDOWN_SELECTOR);\n await expect(dateDropdown).toHaveClass(/hydrated/);\n});\n\ntest.describe('date dropdown tests', () => {\n test.beforeEach(async ({ mount, page }) => {\n await mount(`<ix-date-dropdown from=\"2023/11/01\"></ix-date-dropdown>`);\n\n const today = DateTime.now();\n const format = 'yyyy/LL/dd';\n const prevWeek = today.minus({\n day: 7,\n });\n\n const dateDropdown = page.locator('ix-date-dropdown');\n\n const rangeOptions: DateDropdownOption[] = [\n {\n id: 'no-time',\n label: 'No time limit',\n from: undefined,\n to: today.toFormat(format),\n },\n {\n id: 'today',\n label: 'Today',\n from: today.toFormat(format),\n to: today.toFormat(format),\n },\n {\n id: 'last-7-days',\n label: 'Last 7 days',\n from: today\n .minus({\n day: 7,\n })\n .toFormat(format),\n to: today.toFormat(format),\n },\n {\n id: 'last-week',\n label: 'Last week',\n from: prevWeek.startOf('week').toFormat(format),\n to: prevWeek.endOf('week').toFormat(format),\n },\n {\n id: 'current-month',\n label: 'Current month',\n from: today.startOf('month').toFormat(format),\n to: today.endOf('month').toFormat(format),\n },\n ];\n\n await dateDropdown.evaluate(\n (el, [dateRangeOptions]) => {\n const elementToTest = el as HTMLIxDateDropdownElement;\n\n elementToTest.dateRangeId = 'today';\n elementToTest.customRangeAllowed = true;\n elementToTest.dateRangeOptions = dateRangeOptions;\n },\n [rangeOptions]\n );\n });\n\n test('select different date interval and get date', async ({ page }) => {\n const dateDropdown = page.locator('ix-date-dropdown');\n await dateDropdown.click();\n\n const intervalOptionsButton = dateDropdown.getByRole('button', {\n name: 'Last 7 days',\n });\n await intervalOptionsButton.click();\n\n const button = dateDropdown.locator('ix-button');\n await expect(button).toContainText(/Last 7 days/);\n\n const selectedDateRange = await dateDropdown.evaluate(\n (el: HTMLIxDateDropdownElement) => el.getDateRange()\n );\n const endDate = DateTime.now();\n const startDate = endDate.minus({\n day: 7,\n });\n\n expect(selectedDateRange).toStrictEqual({\n from: startDate.toFormat('yyyy/LL/dd'),\n to: endDate.toFormat('yyyy/LL/dd'),\n id: 'last-7-days',\n label: 'Last 7 days',\n });\n });\n\n test('select custom date interval and get time', async ({ page }) => {\n const dateDropDownButton = page.locator('ix-date-dropdown');\n await dateDropDownButton.click();\n\n const dropdown = dateDropDownButton.locator('ix-dropdown');\n await expect(dropdown).toHaveClass(/show/);\n\n const customItem = dateDropDownButton.getByText('Custom...');\n await customItem.click();\n\n const datepicker = dateDropDownButton.locator('ix-date-picker');\n await expect(datepicker).toBeVisible();\n\n const startDay = datepicker\n .locator('[date-calender-day]')\n .getByText('3', { exact: true });\n const endDay = datepicker\n .locator('[date-calender-day]')\n .getByText('11', { exact: true });\n\n await startDay.click();\n await endDay.click();\n\n const dateDoneButton = dateDropDownButton.getByRole('button', {\n name: 'Done',\n });\n\n await dateDoneButton.click();\n await expect(datepicker).not.toBeVisible();\n\n const button = dateDropDownButton.locator('[data-date-dropdown-trigger]');\n await expect(button).toHaveText(/2023\\/11\\/03 \\- 2023\\/11\\/11/);\n });\n\n test('check if dateRangeChange event is fired', async ({ page }) => {\n const today = DateTime.now();\n const format = 'yyyy/LL/dd';\n\n const dateDropdown = page.locator('ix-date-dropdown');\n await expect(dateDropdown).toHaveClass(/hydrated/);\n\n const eventPromise = dateDropdown.evaluate((e) => {\n return new Promise<any>((resolve) => {\n e.addEventListener('dateRangeChange', (event: any) =>\n // Using JSON.stringify to deserialize js object between chrome instance and test\n resolve(JSON.stringify(event.detail))\n );\n });\n });\n\n await dateDropdown.click();\n const intervalOptionsButton = page.locator(\n 'ix-dropdown-item div.dropdown-item-text:has-text(\"Last 7 days\")'\n );\n await intervalOptionsButton.click();\n\n const dateRangeChangeEvent = await eventPromise;\n expect(JSON.parse(dateRangeChangeEvent)).toStrictEqual({\n from: today\n .minus({\n day: 7,\n })\n .toFormat(format),\n to: today.toFormat(format),\n id: 'last-7-days',\n label: 'Last 7 days',\n });\n });\n\n test('check initial date', async ({ page }) => {\n const dateDropDownButton = page.locator(DATE_DROPDOWN_SELECTOR);\n await expect(dateDropDownButton).toHaveClass(/hydrated/);\n\n const initialSetDate = await dateDropDownButton.evaluate(\n (el: HTMLIxDateDropdownElement) => el.getDateRange()\n );\n\n const endDate = DateTime.now();\n const startDate = endDate;\n\n expect(initialSetDate).toEqual({\n from: startDate.toFormat('yyyy/LL/dd'),\n to: endDate.toFormat('yyyy/LL/dd'),\n id: 'today',\n label: 'Today',\n });\n });\n});\n\ntest('set date from a button', async ({ mount, page }) => {\n await mount(\n `<ix-date-dropdown from=\"2024/02/16\"></ix-date-dropdown><ix-button id=\"set-tomorrow\"></ix-button>`\n );\n const dateDropdown = page.locator(DATE_DROPDOWN_SELECTOR);\n const setButton = page.locator('#set-tomorrow');\n await expect(dateDropdown).toHaveClass(/hydrated/);\n\n await setButton.click();\n\n await dateDropdown.evaluate((el: HTMLIxDateDropdownElement) => {\n el.from = '2024/02/17';\n el.to = '2024/02/27';\n return el.getDateRange();\n });\n const button = dateDropdown.locator('[data-date-dropdown-trigger]');\n await expect(button).toHaveText(/2024\\/02\\/17 \\- 2024\\/02\\/27/);\n});\n"]}
1
+ {"version":3,"file":"date-dropdown.ct.js","sourceRoot":"","sources":["../../../../src/components/date-dropdown/test/date-dropdown.ct.ts"],"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 */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\nimport { DateTime } from 'luxon';\nimport { DateDropdownOption } from '../date-dropdown';\n\nconst DATE_DROPDOWN_SELECTOR = 'ix-date-dropdown';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-date-dropdown></ix-date-dropdown>`);\n const dateDropdown = page.locator(DATE_DROPDOWN_SELECTOR);\n await expect(dateDropdown).toHaveClass(/hydrated/);\n});\n\ntest.describe('date dropdown tests', () => {\n test.beforeEach(async ({ mount, page }) => {\n await mount(`<ix-date-dropdown from=\"2023/11/01\"></ix-date-dropdown>`);\n\n const today = DateTime.now();\n const format = 'yyyy/LL/dd';\n const prevWeek = today.minus({\n day: 7,\n });\n\n const dateDropdown = page.locator('ix-date-dropdown');\n\n const rangeOptions: DateDropdownOption[] = [\n {\n id: 'no-time',\n label: 'No time limit',\n from: undefined,\n to: today.toFormat(format),\n },\n {\n id: 'today',\n label: 'Today',\n from: today.toFormat(format),\n to: today.toFormat(format),\n },\n {\n id: 'last-7-days',\n label: 'Last 7 days',\n from: today\n .minus({\n day: 7,\n })\n .toFormat(format),\n to: today.toFormat(format),\n },\n {\n id: 'last-week',\n label: 'Last week',\n from: prevWeek.startOf('week').toFormat(format),\n to: prevWeek.endOf('week').toFormat(format),\n },\n {\n id: 'current-month',\n label: 'Current month',\n from: today.startOf('month').toFormat(format),\n to: today.endOf('month').toFormat(format),\n },\n ];\n\n await dateDropdown.evaluate(\n (el, [dateRangeOptions]) => {\n const elementToTest = el as HTMLIxDateDropdownElement;\n\n elementToTest.dateRangeId = 'today';\n elementToTest.customRangeAllowed = true;\n elementToTest.dateRangeOptions = dateRangeOptions;\n },\n [rangeOptions]\n );\n });\n\n test('select different date interval and get date', async ({ page }) => {\n const dateDropdown = page.locator('ix-date-dropdown');\n await dateDropdown.click();\n\n const intervalOptionsButton = dateDropdown.getByRole('button', {\n name: 'Last 7 days',\n });\n await intervalOptionsButton.click();\n\n const button = dateDropdown.locator('ix-button');\n await expect(button).toContainText(/Last 7 days/);\n\n const selectedDateRange = await dateDropdown.evaluate(\n (el: HTMLIxDateDropdownElement) => el.getDateRange()\n );\n const endDate = DateTime.now();\n const startDate = endDate.minus({\n day: 7,\n });\n\n expect(selectedDateRange).toStrictEqual({\n from: startDate.toFormat('yyyy/LL/dd'),\n to: endDate.toFormat('yyyy/LL/dd'),\n id: 'last-7-days',\n label: 'Last 7 days',\n });\n });\n\n test('select custom date interval and get time', async ({ page }) => {\n const dateDropDownButton = page.locator('ix-date-dropdown');\n await dateDropDownButton.click();\n\n const dropdown = dateDropDownButton.locator('ix-dropdown');\n await expect(dropdown).toHaveClass(/show/);\n\n const customItem = dateDropDownButton.getByText('Custom...');\n await customItem.click();\n\n const datepicker = dateDropDownButton.locator('ix-date-picker');\n await expect(datepicker).toBeVisible();\n\n const startDay = datepicker\n .locator('[date-calender-day]')\n .getByText('3', { exact: true });\n const endDay = datepicker\n .locator('[date-calender-day]')\n .getByText('11', { exact: true });\n\n await startDay.click();\n await endDay.click();\n\n const dateDoneButton = dateDropDownButton.getByRole('button', {\n name: 'Done',\n });\n\n await dateDoneButton.click();\n await expect(datepicker).not.toBeVisible();\n\n const button = dateDropDownButton.locator('[data-date-dropdown-trigger]');\n await expect(button).toHaveText(/2023\\/11\\/03 \\- 2023\\/11\\/11/);\n });\n\n test('check if dateRangeChange event is fired', async ({ page }) => {\n const today = DateTime.now();\n const format = 'yyyy/LL/dd';\n\n const dateDropdown = page.locator('ix-date-dropdown');\n await expect(dateDropdown).toHaveClass(/hydrated/);\n\n const eventPromise = dateDropdown.evaluate((e) => {\n return new Promise<any>((resolve) => {\n e.addEventListener('dateRangeChange', (event: any) =>\n // Using JSON.stringify to deserialize js object between chrome instance and test\n resolve(JSON.stringify(event.detail))\n );\n });\n });\n\n await dateDropdown.click();\n const intervalOptionsButton = page.locator(\n 'ix-dropdown-item div.dropdown-item-text:has-text(\"Last 7 days\")'\n );\n await intervalOptionsButton.click();\n\n const dateRangeChangeEvent = await eventPromise;\n expect(JSON.parse(dateRangeChangeEvent)).toStrictEqual({\n from: today\n .minus({\n day: 7,\n })\n .toFormat(format),\n to: today.toFormat(format),\n id: 'last-7-days',\n label: 'Last 7 days',\n });\n });\n\n test('check initial date', async ({ page }) => {\n const dateDropDownButton = page.locator(DATE_DROPDOWN_SELECTOR);\n await expect(dateDropDownButton).toHaveClass(/hydrated/);\n\n const initialSetDate = await dateDropDownButton.evaluate(\n (el: HTMLIxDateDropdownElement) => el.getDateRange()\n );\n\n const endDate = DateTime.now();\n const startDate = endDate;\n\n expect(initialSetDate).toEqual({\n from: startDate.toFormat('yyyy/LL/dd'),\n to: endDate.toFormat('yyyy/LL/dd'),\n id: 'today',\n label: 'Today',\n });\n });\n});\n\ntest('set date from a button', async ({ mount, page }) => {\n await mount(\n `<ix-date-dropdown from=\"2024/02/16\"></ix-date-dropdown><ix-button id=\"set-tomorrow\"></ix-button>`\n );\n const dateDropdown = page.locator(DATE_DROPDOWN_SELECTOR);\n const setButton = page.locator('#set-tomorrow');\n await expect(dateDropdown).toHaveClass(/hydrated/);\n\n await setButton.click();\n\n await dateDropdown.evaluate((el: HTMLIxDateDropdownElement) => {\n el.from = '2024/02/17';\n el.to = '2024/02/27';\n return el.getDateRange();\n });\n const button = dateDropdown.locator('[data-date-dropdown-trigger]');\n await expect(button).toHaveText(/2024\\/02\\/17 \\- 2024\\/02\\/27/);\n});\n\ntest('select different year', async ({ mount, page }) => {\n await mount(`<ix-date-dropdown from=\"2024/02/16\"></ix-date-dropdown>`);\n const dateDropdown = page.locator(DATE_DROPDOWN_SELECTOR);\n\n await expect(dateDropdown).toHaveClass(/hydrated/);\n await expect(dateDropdown).toBeVisible();\n\n const dateDropdownTrigger = dateDropdown.getByTestId('date-dropdown-trigger');\n await dateDropdownTrigger.click();\n await expect(dateDropdownTrigger).toBeVisible();\n\n const datePickerDropdown = dateDropdown.getByTestId('date-dropdown');\n await expect(datePickerDropdown).toBeVisible();\n\n const datepicker = datePickerDropdown.locator('ix-date-picker');\n const yearMonthButton = datepicker.getByTestId('year-month-button');\n await yearMonthButton.click();\n\n const yearMonthDropdown = datepicker.getByTestId('year-month-dropdown');\n await expect(yearMonthDropdown).toBeVisible();\n\n const yearContainer = yearMonthDropdown.getByTestId('year-container');\n const year2020 = yearContainer.getByText('2020');\n\n await year2020.click();\n\n const monthContainer = yearMonthDropdown.getByTestId('month-container');\n const march2020 = monthContainer.getByText('March 2020');\n\n await march2020.click();\n\n await expect(yearMonthDropdown).not.toBeVisible();\n await expect(yearMonthButton).toHaveText('March 2020');\n});\n\ntest('disable', async ({ mount, page }) => {\n await mount(`<ix-date-dropdown disabled></ix-date-dropdown>`);\n const dateDropdown = page.locator('ix-date-dropdown');\n\n const trigger = page.locator('[data-date-dropdown-trigger]');\n await expect(trigger).toHaveAttribute('disabled');\n\n await dateDropdown.click();\n\n const dropdown = dateDropdown.locator('[data-date-dropdown]');\n await expect(dropdown).not.toBeVisible();\n});\n\ntest('close dropdown after disabled property = true', async ({\n mount,\n page,\n}) => {\n await mount(`<ix-date-dropdown></ix-date-dropdown>`);\n const dateDropdown = page.locator('ix-date-dropdown');\n await dateDropdown.click();\n await dateDropdown.evaluate((dd: HTMLIxDateDropdownElement) => {\n dd.disabled = true;\n });\n const dropdown = dateDropdown.locator('[data-date-dropdown]');\n await expect(dropdown).not.toBeVisible();\n});\n"]}
@@ -427,7 +427,7 @@ export class DatePicker {
427
427
  return rows;
428
428
  }
429
429
  render() {
430
- return (h(Host, { key: 'e0df5b93b72e32d28ca514b5476f9846b22677c6' }, h("ix-date-time-card", { key: '774585ed8c03e12463112ca9e9e44bc30975e8fc', corners: this.corners, standaloneAppearance: this.standaloneAppearance }, h("div", { key: 'c3710f386338c7410ecb72b42e1a9d4e1d35a3f1', class: "header", slot: "header" }, h("ix-icon-button", { key: '70f05d88185459dae9b43e07cc353e61744958b5', onClick: () => this.changeToAdjacentMonth(-1), ghost: true, icon: "chevron-left", variant: "primary", class: "arrows" }), h("div", { key: 'a2237156758b789edd16a2328d12240a74a36d58', class: "selector" }, h("ix-button", { key: '297934668f6bbbdd31f28bc16de75e00c2bc9698', ghost: true, ref: (ref) => (this.dropdownButtonRef = ref) }, h("span", { key: '6cccf46d9712970aa98416aec50727796835953e', class: "fontSize capitalize" }, this.monthNames[this.selectedMonth], " ", this.selectedYear)), h("ix-dropdown", { key: '85057c5a516639057dd3ee3923243f0d0aecac49', class: "dropdown", trigger: this.dropdownButtonRef, placement: "bottom-start" }, h("div", { key: '5afeb00b22a6e13918da4e45b1ba3ea526fadf37', class: "wrapper" }, h("div", { key: '3193106b8758960329bd9627599e748bd30b3793', class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: (ref) => (this.yearContainerRef = ref) }, this.renderYears()), h("div", { key: '57c3e7de1f03942e1022f5d6a72cc066265ed92b', class: "overflow" }, this.monthNames.map((month, index) => (h("div", { key: month, ref: (ref) => {
430
+ return (h(Host, { key: 'e0df5b93b72e32d28ca514b5476f9846b22677c6' }, h("ix-date-time-card", { key: '774585ed8c03e12463112ca9e9e44bc30975e8fc', corners: this.corners, standaloneAppearance: this.standaloneAppearance }, h("div", { key: 'c3710f386338c7410ecb72b42e1a9d4e1d35a3f1', class: "header", slot: "header" }, h("ix-icon-button", { key: '70f05d88185459dae9b43e07cc353e61744958b5', onClick: () => this.changeToAdjacentMonth(-1), ghost: true, icon: "chevron-left", variant: "primary", class: "arrows" }), h("div", { key: 'a2237156758b789edd16a2328d12240a74a36d58', class: "selector" }, h("ix-button", { key: 'c6457d065b4847de944ca1e32d72591fc1531c15', ghost: true, ref: (ref) => (this.dropdownButtonRef = ref), "data-testid": "year-month-button" }, h("span", { key: '7ac517ad997291ce595e65a926223a2448c17e89', class: "fontSize capitalize" }, this.monthNames[this.selectedMonth], " ", this.selectedYear)), h("ix-dropdown", { key: '476fef76809be47bceefe2c37c355aebd32eaafe', "data-testid": "year-month-dropdown", class: "dropdown", trigger: this.dropdownButtonRef, ignoreRelatedSubmenu: true, placement: "bottom-start" }, h("div", { key: 'a3a8f2eb8154f7a88ceac13e86406df70d70d3c6', class: "wrapper" }, h("div", { key: 'ee6e1d288d11d95c953ff0e7c81a247939b2aa9d', "data-testid": "year-container", class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: (ref) => (this.yearContainerRef = ref) }, this.renderYears()), h("div", { key: '7d1630d48c7934698cf4dbaa3fcd90c9873e6dff', class: "overflow", "data-testid": "month-container" }, this.monthNames.map((month, index) => (h("div", { key: month, ref: (ref) => {
431
431
  if (month === this.monthNames[0]) {
432
432
  this.firstMonthRef = ref;
433
433
  }
@@ -441,12 +441,12 @@ export class DatePicker {
441
441
  hidden: this.tempYear !== this.selectedYear ||
442
442
  this.tempMonth !== index,
443
443
  checkPosition: true,
444
- }, name: "single-check", size: "16" }), h("div", null, h("span", { class: "capitalize monthMargin" }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { key: '89642ef180a0f2fbf8ef3d9e89e7a81110715a83', onClick: () => this.changeToAdjacentMonth(1), ghost: true, icon: "chevron-right", variant: "primary", class: "arrows" })), h("div", { key: '0b5d707534c8f295f408f0cafe73a8ab7d3cd20b', class: "grid" }, h("div", { key: 'b90abf2daf7a3481071dcf2b7bf94c329bed7b05', class: "calendar-item week-day" }), this.dayNames.map((name) => (h("div", { key: name, class: "calendar-item week-day" }, name.slice(0, 3)))), this.calendar.map((week) => {
444
+ }, name: "single-check", size: "16" }), h("div", null, h("span", { class: "capitalize monthMargin" }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { key: '8526edfce43dd656bc563143497be067752f1072', onClick: () => this.changeToAdjacentMonth(1), ghost: true, icon: "chevron-right", variant: "primary", class: "arrows" })), h("div", { key: '42a4cd7d42d633f3e1fb44a0d6630744a24ff6b2', class: "grid" }, h("div", { key: 'bf5925eb777f1f751b26044811bb9cff880811bf', class: "calendar-item week-day" }), this.dayNames.map((name) => (h("div", { key: name, class: "calendar-item week-day" }, name.slice(0, 3)))), this.calendar.map((week) => {
445
445
  return (h(Fragment, null, h("div", { class: "calendar-item week-number" }, week.weekNumber), week.dayNumbers.map((day) => (h("div", { key: day, id: `day-cell-${day}`, "date-calender-day": true, class: this.getDayClasses(day), onClick: () => this.selectDay(day), onKeyUp: (e) => e.key === 'Enter' && this.selectDay(day), tabIndex: day === this.focusedDay ? 0 : -1, onFocus: () => this.onDayFocus(), onBlur: () => this.onDayBlur() }, day)))));
446
- })), h("div", { key: '8c2f0d4b2943b55fb7597d935ed594c33f2d99ce', class: {
446
+ })), h("div", { key: '2d8f75a01a7d2f9b02293bf7fa1402bec6ee4420', class: {
447
447
  button: true,
448
448
  hidden: !this.range || !this.standaloneAppearance,
449
- } }, h("ix-button", { key: '68a8f6aafb0b2e12bfd26008891ef16a2e026813', onClick: () => this.onDone() }, this.textSelectDate || this.i18nDone)))));
449
+ } }, h("ix-button", { key: '8aef28eca063bcda077e0590758c0bd17d16428f', onClick: () => this.onDone() }, this.textSelectDate || this.i18nDone)))));
450
450
  }
451
451
  static get is() { return "ix-date-picker"; }
452
452
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../../../src/components/date-picker/date-picker.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 { DateTimeCardCorners } from '../date-time-card/date-time-card';\n\nimport { DateTime, Info } from 'luxon';\nimport { OnListener } from '../utils/listener';\n\nexport type DateChangeEvent = {\n from: string;\n to: string;\n};\n\nexport type DateTimeCorners = DateTimeCardCorners;\n\ninterface CalendarWeek {\n weekNumber: number;\n dayNumbers: number[];\n}\n\n@Component({\n tag: 'ix-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n})\nexport class DatePicker {\n @Element() hostElement: HTMLIxDatePickerElement;\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 * If true a date-range can be selected (from/to).\n */\n @Prop() range: boolean = true;\n\n /**\n * Corner style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n /**\n * The selected starting date. If the date-picker-rework is not in range mode this is the selected date.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() from: string | undefined;\n\n @Watch('from')\n watchFromPropHandler(newValue: string) {\n this.currFromDate = newValue\n ? DateTime.fromFormat(newValue, this.format)\n : undefined;\n\n if (this.currFromDate?.isValid) {\n this.selectedYear = this.currFromDate.year;\n this.selectedMonth = this.currFromDate.month - 1;\n }\n }\n\n /**\n * The selected end date. If the the date-picker-rework is not in range mode this property has no impact.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() to: string | undefined;\n\n @Watch('to')\n watchToPropHandler(newValue: string) {\n this.currToDate = newValue\n ? DateTime.fromFormat(newValue, this.format)\n : undefined;\n\n if (this.currToDate?.isValid) {\n this.selectedYear = this.currToDate.year;\n this.selectedMonth = this.currToDate.month - 1;\n }\n }\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 * @since 1.1.0\n */\n @Prop() minDate: string;\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 * @since 1.1.0\n */\n @Prop() maxDate: string;\n\n /**\n * Text of the button that confirms date selection.\n *\n * @since 1.1.0\n * @deprecated since 2.1.0. Use `i18nDone`\n */\n @Prop() textSelectDate: string;\n\n /**\n * Text of date select button\n *\n * @since 2.1.0\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone = 'Done';\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 * @since 2.1.0\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 2.1.0\n */\n @Prop() locale: string = undefined;\n @Watch('locale')\n onLocaleChange() {\n this.setTranslations();\n }\n\n /**\n * @deprecated Not supported since 2.0.0.\n */\n @Prop() individual: boolean = true;\n\n /**\n * Default behavior of the done event is to join the two events (date and time) into one combined string output.\n * This combination can be configured over the delimiter\n *\n * @since 1.1.0\n * @deprecated Not used anymore see `this.dateChange`\n */\n @Prop() eventDelimiter = ' - ';\n\n /** @internal */\n @Prop() standaloneAppearance = true;\n\n /** @internal */\n @Prop() today = DateTime.now().toISO();\n\n /**\n * Triggers if the date selection changes.\n * Note: Since 2.0.0 `dateChange` does not dispatch detail property as `string`\n *\n * @since 2.1.0\n */\n @Event() dateChange: EventEmitter<DateChangeEvent>;\n\n /**\n * Triggers if the date selection changes.\n * Only triggered if date-picker-rework is in range mode.\n *\n * @since 2.1.0\n */\n @Event() dateRangeChange: EventEmitter<DateChangeEvent>;\n\n /**\n * Date selection confirmed via button action\n *\n * @since 1.1.0\n */\n @Event() dateSelect: EventEmitter<DateChangeEvent>;\n\n /**\n * Date selection confirmed via button action\n *\n * @deprecated NOT getting dispatched after 2.0.0. Use `dateSelect`.\n */\n @Event() done: EventEmitter<string>;\n\n /**\n * Get the currently selected date-range.\n */\n @Method()\n async getCurrentDate() {\n const _from = this.currFromDate?.isValid\n ? this.currFromDate?.toFormat(this.format)\n : undefined;\n const _to = this.currToDate?.isValid\n ? this.currToDate?.toFormat(this.format)\n : undefined;\n\n if (this.range) {\n return {\n from: _from,\n to: _to,\n };\n }\n\n return {\n from: _from,\n to: undefined,\n };\n }\n\n @State() currFromDate: DateTime;\n @State() currToDate: DateTime;\n\n @State() selectedYear: number;\n @State() tempYear: number;\n @State() startYear: number;\n @State() endYear: number;\n @State() selectedMonth: number;\n @State() tempMonth: number;\n\n @State() dropdownButtonRef: HTMLElement;\n @State() yearContainerRef: HTMLElement;\n\n @State() dayNames: string[];\n @State() monthNames: string[];\n @State() firstMonthRef: HTMLElement;\n @State() focusedDay: number = 1;\n @State() focusedDayElem: HTMLElement;\n\n private isDayFocus: boolean;\n private monthChangedFromFocus: boolean;\n private readonly DAYS_IN_WEEK = 7;\n private calendar: CalendarWeek[];\n\n @OnListener<DatePicker>('keydown')\n handleKeyUp(event: KeyboardEvent) {\n if (!this.isDayFocus) {\n return;\n }\n\n let _focusedDay = this.focusedDay;\n\n switch (event.key) {\n case 'ArrowLeft':\n _focusedDay--;\n break;\n case 'ArrowRight':\n _focusedDay++;\n break;\n case 'ArrowUp':\n _focusedDay = _focusedDay - 7;\n break;\n case 'ArrowDown':\n _focusedDay = _focusedDay + 7;\n break;\n default:\n return;\n }\n\n if (_focusedDay > this.getDaysInCurrentMonth()) {\n _focusedDay = _focusedDay - this.getDaysInCurrentMonth();\n this.changeToAdjacentMonth(1);\n this.monthChangedFromFocus = true;\n } else if (_focusedDay < 1) {\n this.changeToAdjacentMonth(-1);\n _focusedDay = _focusedDay + this.getDaysInCurrentMonth();\n this.monthChangedFromFocus = true;\n }\n\n this.focusedDay = _focusedDay;\n }\n\n private getDaysInCurrentMonth(): number {\n return DateTime.utc(this.selectedYear, this.selectedMonth + 1).daysInMonth;\n }\n\n private getDateTimeNow() {\n return DateTime.fromISO(this.today);\n }\n\n onDayBlur() {\n this.isDayFocus = false;\n }\n\n onDayFocus() {\n this.isDayFocus = true;\n }\n\n componentWillLoad() {\n this.setTranslations();\n\n this.currFromDate = this.from\n ? DateTime.fromFormat(this.from, this.format)\n : undefined;\n this.currToDate = this.to\n ? DateTime.fromFormat(this.to, this.format)\n : undefined;\n\n const year = this.currFromDate?.year ?? this.getDateTimeNow().year;\n this.startYear = year - 5;\n this.endYear = year + 5;\n\n this.selectedMonth =\n (this.currFromDate?.month ?? this.getDateTimeNow().month) - 1;\n this.selectedYear = year;\n this.tempMonth = this.selectedMonth;\n this.tempYear = this.selectedYear;\n }\n\n componentWillRender() {\n this.calculateCalendar();\n }\n\n componentDidRender() {\n if (!this.monthChangedFromFocus && !this.isDayFocus) {\n return;\n }\n\n const dayElem = this.hostElement.shadowRoot.querySelector(\n `[id=day-cell-${this.focusedDay}]`\n ) as HTMLElement;\n dayElem.focus();\n }\n\n private setTranslations() {\n this.dayNames = this.rotateWeekDayNames(\n Info.weekdays('long', {\n locale: this.locale,\n }),\n this.weekStartIndex\n );\n\n this.monthNames = Info.months('long', {\n locale: this.locale,\n });\n }\n\n /**\n * Rotate the WeekdayNames array.\n * Based on the position that should be the new 0-index.\n */\n private rotateWeekDayNames(weekdays: string[], index: number): string[] {\n const clone = [...weekdays];\n\n if (index === 0) {\n return clone;\n }\n\n index = -index;\n const len = weekdays.length;\n\n clone.push(...clone.splice(0, ((-index % len) + len) % len));\n return clone;\n }\n\n private async onDone() {\n const date = await this.getCurrentDate();\n this.dateSelect.emit(date);\n }\n\n private calculateCalendar() {\n const calendar: CalendarWeek[] = [];\n const month = DateTime.utc(this.selectedYear, this.selectedMonth + 1);\n const monthStart = month.startOf('month');\n const monthEnd = month.endOf('month');\n let startWeek = monthStart.weekNumber;\n let endWeek = monthEnd.weekNumber;\n let monthStartWeekDayIndex = monthStart.weekday - 1;\n let monthEndWeekDayIndex = monthEnd.weekday - 1;\n\n if (this.weekStartIndex !== 0) {\n // Find the positions where to start/stop counting the day-numbers based on which day the week starts\n const weekdays = Info.weekdays();\n const monthStartWeekDayName = weekdays[monthStart.weekday];\n\n monthStartWeekDayIndex = this.dayNames.findIndex(\n (d) => d === monthStartWeekDayName\n );\n const monthEndWeekDayName = weekdays[monthEnd.weekday];\n monthEndWeekDayIndex = this.dayNames.findIndex(\n (d) => d === monthEndWeekDayName\n );\n }\n\n let correctLastWeek = false;\n if (endWeek === 1) {\n endWeek = monthEnd.weeksInWeekYear + 1;\n correctLastWeek = true;\n }\n\n let correctFirstWeek = false;\n if (startWeek === monthStart.weeksInWeekYear) {\n startWeek = 1;\n endWeek++;\n\n correctFirstWeek = true;\n }\n\n let currDayNumber = 1;\n for (\n let weekIndex = startWeek;\n weekIndex <= endWeek && currDayNumber <= 31;\n weekIndex++\n ) {\n const daysArr: number[] = [];\n\n for (let j = 0; j < this.DAYS_IN_WEEK && currDayNumber <= 31; j++) {\n // Display empty cells until the calender starts/has ended\n if (\n (weekIndex === startWeek && j < monthStartWeekDayIndex) ||\n (weekIndex === endWeek && j > monthEndWeekDayIndex)\n ) {\n daysArr.push(undefined);\n } else {\n daysArr.push(currDayNumber++);\n }\n }\n\n if (correctFirstWeek || correctLastWeek) {\n if (weekIndex === 1) {\n calendar.push({\n weekNumber: monthStart.weeksInWeekYear,\n dayNumbers: daysArr,\n });\n } else if (weekIndex === monthEnd.weekNumber) {\n calendar.push({\n weekNumber: 1,\n dayNumbers: daysArr,\n });\n } else {\n calendar.push({\n weekNumber: weekIndex - 1,\n dayNumbers: daysArr,\n });\n }\n continue;\n }\n\n calendar.push({\n weekNumber: weekIndex,\n dayNumbers: daysArr,\n });\n }\n\n this.calendar = calendar;\n }\n\n private selectTempYear(event: MouseEvent, year: number) {\n event?.stopPropagation();\n this.tempYear = year;\n }\n\n private focusMonth() {\n this.firstMonthRef.focus();\n }\n\n private infiniteScrollYears() {\n const scroll = this.yearContainerRef.scrollTop;\n const maxScroll = this.yearContainerRef.scrollHeight;\n const atTop = scroll === 0;\n const atBottom =\n Math.round(scroll + this.yearContainerRef.offsetHeight) >= maxScroll;\n const limit = 200;\n\n if (this.endYear - this.startYear > limit) return;\n\n if (atTop) {\n const first = this.yearContainerRef.firstElementChild as HTMLElement;\n this.startYear -= 5;\n this.yearContainerRef.scrollTo(0, first.offsetTop);\n\n return;\n }\n\n if (atBottom) {\n const last = this.yearContainerRef.lastElementChild as HTMLElement;\n this.endYear += 5;\n this.yearContainerRef.scrollTo(0, last.offsetTop);\n }\n }\n\n private selectMonth(month: number) {\n this.selectedMonth = month;\n this.selectedYear = this.tempYear;\n this.tempMonth = month;\n\n this.hostElement.shadowRoot.querySelector('ix-dropdown').show = false;\n }\n\n private changeToAdjacentMonth(number: -1 | 1) {\n if (this.selectedMonth + number < 0) {\n this.selectedYear--;\n this.selectedMonth = 11;\n } else if (this.selectedMonth + number > 11) {\n this.selectedYear++;\n this.selectedMonth = 0;\n } else {\n this.selectedMonth += number;\n }\n }\n\n private selectDay(selectedDay: number) {\n const date = DateTime.fromJSDate(\n new Date(this.selectedYear, this.selectedMonth, selectedDay)\n );\n\n if (!this.range || this.currFromDate === undefined) {\n this.currFromDate = date;\n this.onDateChange();\n\n return;\n }\n\n // Reset the range selection\n if (this.currToDate !== undefined) {\n this.currFromDate = date;\n this.currToDate = undefined;\n this.onDateChange();\n\n return;\n }\n\n // Swap from/to if the second date is before the current date\n if (date < this.currFromDate) {\n this.currToDate = this.currFromDate;\n this.currFromDate = date;\n this.onDateChange();\n\n return;\n }\n\n // Set the range normally\n this.currToDate = date;\n this.onDateChange();\n }\n\n private onDateChange() {\n this.getCurrentDate().then((date) => {\n this.dateChange.emit(date);\n if (this.range) {\n this.dateRangeChange.emit(date);\n }\n });\n }\n\n private getDayClasses(day: number): any {\n if (!day) {\n return;\n }\n\n const todayObj = this.getDateTimeNow();\n const selectedDayObj = DateTime.fromJSDate(\n new Date(this.selectedYear, this.selectedMonth, day)\n );\n\n return {\n 'calendar-item': true,\n 'empty-day': day === undefined,\n today: todayObj.hasSame(selectedDayObj, 'day'),\n selected:\n this.currFromDate?.hasSame(selectedDayObj, 'day') ||\n this.currToDate?.hasSame(selectedDayObj, 'day'),\n range:\n selectedDayObj.startOf('day') > this.currFromDate?.startOf('day') &&\n this.currToDate !== undefined &&\n selectedDayObj.startOf('day') < this.currToDate?.startOf('day'),\n disabled: !this.isWithinMinMaxDate(selectedDayObj),\n };\n }\n\n private isWithinMinMaxYear(year: number): boolean {\n const minDateYear = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format).year\n : undefined;\n const maxDateYear = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format).year\n : undefined;\n const isBefore = minDateYear ? year < minDateYear : false;\n const isAfter = maxDateYear ? year > maxDateYear : false;\n\n return !isBefore && !isAfter;\n }\n\n private isWithinMinMaxMonth(month: number): boolean {\n const minDateObj = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format)\n : undefined;\n const maxDateObj = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format)\n : undefined;\n const minDateMonth = minDateObj?.month;\n const maxDateMonth = maxDateObj?.month;\n const isBefore = minDateMonth\n ? this.tempYear === minDateObj.year && month < minDateMonth\n : false;\n const isAfter = maxDateMonth\n ? this.tempYear === maxDateObj.year && month > maxDateMonth\n : false;\n\n return !isBefore && !isAfter;\n }\n\n private isWithinMinMaxDate(date: DateTime): boolean {\n const _minDate = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format)\n : undefined;\n const _maxDate = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format)\n : undefined;\n const isBefore = _minDate\n ? date.startOf('day') < _minDate.startOf('day')\n : false;\n const isAfter = _maxDate\n ? date.startOf('day') > _maxDate.startOf('day')\n : false;\n\n return !isBefore && !isAfter;\n }\n\n private renderYears(): any[] {\n const rows = [];\n\n for (let year = this.startYear; year <= this.endYear; year++) {\n rows.push(\n <div\n key={year}\n class={{\n arrowYear: true,\n 'month-dropdown-item': true,\n 'disabled-item': !this.isWithinMinMaxYear(year),\n }}\n onClick={(event) => this.selectTempYear(event, year)}\n onKeyUp={(event) => {\n if (event.key === 'Enter') {\n this.selectTempYear(null, year);\n this.focusMonth();\n }\n }}\n tabIndex={0}\n >\n <ix-icon\n class={{\n hidden: this.tempYear !== year,\n arrowPosition: true,\n }}\n name=\"chevron-right\"\n size=\"12\"\n ></ix-icon>\n <div style={{ 'min-width': 'max-content' }}>{`${year}`}</div>\n </div>\n );\n }\n\n return rows;\n }\n\n render() {\n return (\n <Host>\n <ix-date-time-card\n corners={this.corners}\n standaloneAppearance={this.standaloneAppearance}\n >\n <div class=\"header\" slot=\"header\">\n <ix-icon-button\n onClick={() => this.changeToAdjacentMonth(-1)}\n ghost\n icon=\"chevron-left\"\n variant=\"primary\"\n class=\"arrows\"\n ></ix-icon-button>\n <div class=\"selector\">\n <ix-button ghost ref={(ref) => (this.dropdownButtonRef = ref)}>\n <span class=\"fontSize capitalize\">\n {this.monthNames[this.selectedMonth]} {this.selectedYear}\n </span>\n </ix-button>\n <ix-dropdown\n class=\"dropdown\"\n trigger={this.dropdownButtonRef}\n placement=\"bottom-start\"\n >\n <div class=\"wrapper\">\n <div\n class=\"overflow\"\n onScroll={() => this.infiniteScrollYears()}\n ref={(ref) => (this.yearContainerRef = ref)}\n >\n {this.renderYears()}\n </div>\n <div class=\"overflow\">\n {this.monthNames.map((month, index) => (\n <div\n key={month}\n ref={(ref) => {\n if (month === this.monthNames[0]) {\n this.firstMonthRef = ref as HTMLElement;\n }\n }}\n class={{\n arrowYear: true,\n 'month-dropdown-item': true,\n selected:\n this.tempYear === this.selectedYear &&\n this.tempMonth === index,\n 'disabled-item': !this.isWithinMinMaxMonth(index),\n }}\n onClick={() => this.selectMonth(index)}\n onKeyUp={(event) =>\n event.key === 'Enter' && this.selectMonth(index)\n }\n tabIndex={0}\n >\n <ix-icon\n class={{\n hidden:\n this.tempYear !== this.selectedYear ||\n this.tempMonth !== index,\n checkPosition: true,\n }}\n name=\"single-check\"\n size=\"16\"\n ></ix-icon>\n <div>\n <span class=\"capitalize monthMargin\">{`${month} ${this.tempYear}`}</span>\n </div>\n </div>\n ))}\n </div>\n </div>\n </ix-dropdown>\n </div>\n <ix-icon-button\n onClick={() => this.changeToAdjacentMonth(1)}\n ghost\n icon=\"chevron-right\"\n variant=\"primary\"\n class=\"arrows\"\n ></ix-icon-button>\n </div>\n <div class=\"grid\">\n <div class=\"calendar-item week-day\"></div>\n {this.dayNames.map((name) => (\n <div key={name} class=\"calendar-item week-day\">\n {name.slice(0, 3)}\n </div>\n ))}\n {this.calendar.map((week) => {\n return (\n <Fragment>\n <div class=\"calendar-item week-number\">{week.weekNumber}</div>\n {week.dayNumbers.map((day) => (\n <div\n key={day}\n id={`day-cell-${day}`}\n date-calender-day\n class={this.getDayClasses(day)}\n onClick={() => this.selectDay(day)}\n onKeyUp={(e) => e.key === 'Enter' && this.selectDay(day)}\n tabIndex={day === this.focusedDay ? 0 : -1}\n onFocus={() => this.onDayFocus()}\n onBlur={() => this.onDayBlur()}\n >\n {day}\n </div>\n ))}\n </Fragment>\n );\n })}\n </div>\n <div\n class={{\n button: true,\n hidden: !this.range || !this.standaloneAppearance,\n }}\n >\n <ix-button onClick={() => this.onDone()}>\n {this.textSelectDate || this.i18nDone}\n </ix-button>\n </div>\n </ix-date-time-card>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.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 { DateTimeCardCorners } from '../date-time-card/date-time-card';\n\nimport { DateTime, Info } from 'luxon';\nimport { OnListener } from '../utils/listener';\n\nexport type DateChangeEvent = {\n from: string;\n to: string;\n};\n\nexport type DateTimeCorners = DateTimeCardCorners;\n\ninterface CalendarWeek {\n weekNumber: number;\n dayNumbers: number[];\n}\n\n@Component({\n tag: 'ix-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n})\nexport class DatePicker {\n @Element() hostElement: HTMLIxDatePickerElement;\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 * If true a date-range can be selected (from/to).\n */\n @Prop() range: boolean = true;\n\n /**\n * Corner style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n /**\n * The selected starting date. If the date-picker-rework is not in range mode this is the selected date.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() from: string | undefined;\n\n @Watch('from')\n watchFromPropHandler(newValue: string) {\n this.currFromDate = newValue\n ? DateTime.fromFormat(newValue, this.format)\n : undefined;\n\n if (this.currFromDate?.isValid) {\n this.selectedYear = this.currFromDate.year;\n this.selectedMonth = this.currFromDate.month - 1;\n }\n }\n\n /**\n * The selected end date. If the the date-picker-rework is not in range mode this property has no impact.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() to: string | undefined;\n\n @Watch('to')\n watchToPropHandler(newValue: string) {\n this.currToDate = newValue\n ? DateTime.fromFormat(newValue, this.format)\n : undefined;\n\n if (this.currToDate?.isValid) {\n this.selectedYear = this.currToDate.year;\n this.selectedMonth = this.currToDate.month - 1;\n }\n }\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 * @since 1.1.0\n */\n @Prop() minDate: string;\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 * @since 1.1.0\n */\n @Prop() maxDate: string;\n\n /**\n * Text of the button that confirms date selection.\n *\n * @since 1.1.0\n * @deprecated since 2.1.0. Use `i18nDone`\n */\n @Prop() textSelectDate: string;\n\n /**\n * Text of date select button\n *\n * @since 2.1.0\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone = 'Done';\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 * @since 2.1.0\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 2.1.0\n */\n @Prop() locale: string = undefined;\n @Watch('locale')\n onLocaleChange() {\n this.setTranslations();\n }\n\n /**\n * @deprecated Not supported since 2.0.0.\n */\n @Prop() individual: boolean = true;\n\n /**\n * Default behavior of the done event is to join the two events (date and time) into one combined string output.\n * This combination can be configured over the delimiter\n *\n * @since 1.1.0\n * @deprecated Not used anymore see `this.dateChange`\n */\n @Prop() eventDelimiter = ' - ';\n\n /** @internal */\n @Prop() standaloneAppearance = true;\n\n /** @internal */\n @Prop() today = DateTime.now().toISO();\n\n /**\n * Triggers if the date selection changes.\n * Note: Since 2.0.0 `dateChange` does not dispatch detail property as `string`\n *\n * @since 2.1.0\n */\n @Event() dateChange: EventEmitter<DateChangeEvent>;\n\n /**\n * Triggers if the date selection changes.\n * Only triggered if date-picker-rework is in range mode.\n *\n * @since 2.1.0\n */\n @Event() dateRangeChange: EventEmitter<DateChangeEvent>;\n\n /**\n * Date selection confirmed via button action\n *\n * @since 1.1.0\n */\n @Event() dateSelect: EventEmitter<DateChangeEvent>;\n\n /**\n * Date selection confirmed via button action\n *\n * @deprecated NOT getting dispatched after 2.0.0. Use `dateSelect`.\n */\n @Event() done: EventEmitter<string>;\n\n /**\n * Get the currently selected date-range.\n */\n @Method()\n async getCurrentDate() {\n const _from = this.currFromDate?.isValid\n ? this.currFromDate?.toFormat(this.format)\n : undefined;\n const _to = this.currToDate?.isValid\n ? this.currToDate?.toFormat(this.format)\n : undefined;\n\n if (this.range) {\n return {\n from: _from,\n to: _to,\n };\n }\n\n return {\n from: _from,\n to: undefined,\n };\n }\n\n @State() currFromDate: DateTime;\n @State() currToDate: DateTime;\n\n @State() selectedYear: number;\n @State() tempYear: number;\n @State() startYear: number;\n @State() endYear: number;\n @State() selectedMonth: number;\n @State() tempMonth: number;\n\n @State() dropdownButtonRef: HTMLElement;\n @State() yearContainerRef: HTMLElement;\n\n @State() dayNames: string[];\n @State() monthNames: string[];\n @State() firstMonthRef: HTMLElement;\n @State() focusedDay: number = 1;\n @State() focusedDayElem: HTMLElement;\n\n private isDayFocus: boolean;\n private monthChangedFromFocus: boolean;\n private readonly DAYS_IN_WEEK = 7;\n private calendar: CalendarWeek[];\n\n @OnListener<DatePicker>('keydown')\n handleKeyUp(event: KeyboardEvent) {\n if (!this.isDayFocus) {\n return;\n }\n\n let _focusedDay = this.focusedDay;\n\n switch (event.key) {\n case 'ArrowLeft':\n _focusedDay--;\n break;\n case 'ArrowRight':\n _focusedDay++;\n break;\n case 'ArrowUp':\n _focusedDay = _focusedDay - 7;\n break;\n case 'ArrowDown':\n _focusedDay = _focusedDay + 7;\n break;\n default:\n return;\n }\n\n if (_focusedDay > this.getDaysInCurrentMonth()) {\n _focusedDay = _focusedDay - this.getDaysInCurrentMonth();\n this.changeToAdjacentMonth(1);\n this.monthChangedFromFocus = true;\n } else if (_focusedDay < 1) {\n this.changeToAdjacentMonth(-1);\n _focusedDay = _focusedDay + this.getDaysInCurrentMonth();\n this.monthChangedFromFocus = true;\n }\n\n this.focusedDay = _focusedDay;\n }\n\n private getDaysInCurrentMonth(): number {\n return DateTime.utc(this.selectedYear, this.selectedMonth + 1).daysInMonth;\n }\n\n private getDateTimeNow() {\n return DateTime.fromISO(this.today);\n }\n\n onDayBlur() {\n this.isDayFocus = false;\n }\n\n onDayFocus() {\n this.isDayFocus = true;\n }\n\n componentWillLoad() {\n this.setTranslations();\n\n this.currFromDate = this.from\n ? DateTime.fromFormat(this.from, this.format)\n : undefined;\n this.currToDate = this.to\n ? DateTime.fromFormat(this.to, this.format)\n : undefined;\n\n const year = this.currFromDate?.year ?? this.getDateTimeNow().year;\n this.startYear = year - 5;\n this.endYear = year + 5;\n\n this.selectedMonth =\n (this.currFromDate?.month ?? this.getDateTimeNow().month) - 1;\n this.selectedYear = year;\n this.tempMonth = this.selectedMonth;\n this.tempYear = this.selectedYear;\n }\n\n componentWillRender() {\n this.calculateCalendar();\n }\n\n componentDidRender() {\n if (!this.monthChangedFromFocus && !this.isDayFocus) {\n return;\n }\n\n const dayElem = this.hostElement.shadowRoot.querySelector(\n `[id=day-cell-${this.focusedDay}]`\n ) as HTMLElement;\n dayElem.focus();\n }\n\n private setTranslations() {\n this.dayNames = this.rotateWeekDayNames(\n Info.weekdays('long', {\n locale: this.locale,\n }),\n this.weekStartIndex\n );\n\n this.monthNames = Info.months('long', {\n locale: this.locale,\n });\n }\n\n /**\n * Rotate the WeekdayNames array.\n * Based on the position that should be the new 0-index.\n */\n private rotateWeekDayNames(weekdays: string[], index: number): string[] {\n const clone = [...weekdays];\n\n if (index === 0) {\n return clone;\n }\n\n index = -index;\n const len = weekdays.length;\n\n clone.push(...clone.splice(0, ((-index % len) + len) % len));\n return clone;\n }\n\n private async onDone() {\n const date = await this.getCurrentDate();\n this.dateSelect.emit(date);\n }\n\n private calculateCalendar() {\n const calendar: CalendarWeek[] = [];\n const month = DateTime.utc(this.selectedYear, this.selectedMonth + 1);\n const monthStart = month.startOf('month');\n const monthEnd = month.endOf('month');\n let startWeek = monthStart.weekNumber;\n let endWeek = monthEnd.weekNumber;\n let monthStartWeekDayIndex = monthStart.weekday - 1;\n let monthEndWeekDayIndex = monthEnd.weekday - 1;\n\n if (this.weekStartIndex !== 0) {\n // Find the positions where to start/stop counting the day-numbers based on which day the week starts\n const weekdays = Info.weekdays();\n const monthStartWeekDayName = weekdays[monthStart.weekday];\n\n monthStartWeekDayIndex = this.dayNames.findIndex(\n (d) => d === monthStartWeekDayName\n );\n const monthEndWeekDayName = weekdays[monthEnd.weekday];\n monthEndWeekDayIndex = this.dayNames.findIndex(\n (d) => d === monthEndWeekDayName\n );\n }\n\n let correctLastWeek = false;\n if (endWeek === 1) {\n endWeek = monthEnd.weeksInWeekYear + 1;\n correctLastWeek = true;\n }\n\n let correctFirstWeek = false;\n if (startWeek === monthStart.weeksInWeekYear) {\n startWeek = 1;\n endWeek++;\n\n correctFirstWeek = true;\n }\n\n let currDayNumber = 1;\n for (\n let weekIndex = startWeek;\n weekIndex <= endWeek && currDayNumber <= 31;\n weekIndex++\n ) {\n const daysArr: number[] = [];\n\n for (let j = 0; j < this.DAYS_IN_WEEK && currDayNumber <= 31; j++) {\n // Display empty cells until the calender starts/has ended\n if (\n (weekIndex === startWeek && j < monthStartWeekDayIndex) ||\n (weekIndex === endWeek && j > monthEndWeekDayIndex)\n ) {\n daysArr.push(undefined);\n } else {\n daysArr.push(currDayNumber++);\n }\n }\n\n if (correctFirstWeek || correctLastWeek) {\n if (weekIndex === 1) {\n calendar.push({\n weekNumber: monthStart.weeksInWeekYear,\n dayNumbers: daysArr,\n });\n } else if (weekIndex === monthEnd.weekNumber) {\n calendar.push({\n weekNumber: 1,\n dayNumbers: daysArr,\n });\n } else {\n calendar.push({\n weekNumber: weekIndex - 1,\n dayNumbers: daysArr,\n });\n }\n continue;\n }\n\n calendar.push({\n weekNumber: weekIndex,\n dayNumbers: daysArr,\n });\n }\n\n this.calendar = calendar;\n }\n\n private selectTempYear(event: MouseEvent, year: number) {\n event?.stopPropagation();\n this.tempYear = year;\n }\n\n private focusMonth() {\n this.firstMonthRef.focus();\n }\n\n private infiniteScrollYears() {\n const scroll = this.yearContainerRef.scrollTop;\n const maxScroll = this.yearContainerRef.scrollHeight;\n const atTop = scroll === 0;\n const atBottom =\n Math.round(scroll + this.yearContainerRef.offsetHeight) >= maxScroll;\n const limit = 200;\n\n if (this.endYear - this.startYear > limit) return;\n\n if (atTop) {\n const first = this.yearContainerRef.firstElementChild as HTMLElement;\n this.startYear -= 5;\n this.yearContainerRef.scrollTo(0, first.offsetTop);\n\n return;\n }\n\n if (atBottom) {\n const last = this.yearContainerRef.lastElementChild as HTMLElement;\n this.endYear += 5;\n this.yearContainerRef.scrollTo(0, last.offsetTop);\n }\n }\n\n private selectMonth(month: number) {\n this.selectedMonth = month;\n this.selectedYear = this.tempYear;\n this.tempMonth = month;\n\n this.hostElement.shadowRoot.querySelector('ix-dropdown').show = false;\n }\n\n private changeToAdjacentMonth(number: -1 | 1) {\n if (this.selectedMonth + number < 0) {\n this.selectedYear--;\n this.selectedMonth = 11;\n } else if (this.selectedMonth + number > 11) {\n this.selectedYear++;\n this.selectedMonth = 0;\n } else {\n this.selectedMonth += number;\n }\n }\n\n private selectDay(selectedDay: number) {\n const date = DateTime.fromJSDate(\n new Date(this.selectedYear, this.selectedMonth, selectedDay)\n );\n\n if (!this.range || this.currFromDate === undefined) {\n this.currFromDate = date;\n this.onDateChange();\n\n return;\n }\n\n // Reset the range selection\n if (this.currToDate !== undefined) {\n this.currFromDate = date;\n this.currToDate = undefined;\n this.onDateChange();\n\n return;\n }\n\n // Swap from/to if the second date is before the current date\n if (date < this.currFromDate) {\n this.currToDate = this.currFromDate;\n this.currFromDate = date;\n this.onDateChange();\n\n return;\n }\n\n // Set the range normally\n this.currToDate = date;\n this.onDateChange();\n }\n\n private onDateChange() {\n this.getCurrentDate().then((date) => {\n this.dateChange.emit(date);\n if (this.range) {\n this.dateRangeChange.emit(date);\n }\n });\n }\n\n private getDayClasses(day: number): any {\n if (!day) {\n return;\n }\n\n const todayObj = this.getDateTimeNow();\n const selectedDayObj = DateTime.fromJSDate(\n new Date(this.selectedYear, this.selectedMonth, day)\n );\n\n return {\n 'calendar-item': true,\n 'empty-day': day === undefined,\n today: todayObj.hasSame(selectedDayObj, 'day'),\n selected:\n this.currFromDate?.hasSame(selectedDayObj, 'day') ||\n this.currToDate?.hasSame(selectedDayObj, 'day'),\n range:\n selectedDayObj.startOf('day') > this.currFromDate?.startOf('day') &&\n this.currToDate !== undefined &&\n selectedDayObj.startOf('day') < this.currToDate?.startOf('day'),\n disabled: !this.isWithinMinMaxDate(selectedDayObj),\n };\n }\n\n private isWithinMinMaxYear(year: number): boolean {\n const minDateYear = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format).year\n : undefined;\n const maxDateYear = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format).year\n : undefined;\n const isBefore = minDateYear ? year < minDateYear : false;\n const isAfter = maxDateYear ? year > maxDateYear : false;\n\n return !isBefore && !isAfter;\n }\n\n private isWithinMinMaxMonth(month: number): boolean {\n const minDateObj = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format)\n : undefined;\n const maxDateObj = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format)\n : undefined;\n const minDateMonth = minDateObj?.month;\n const maxDateMonth = maxDateObj?.month;\n const isBefore = minDateMonth\n ? this.tempYear === minDateObj.year && month < minDateMonth\n : false;\n const isAfter = maxDateMonth\n ? this.tempYear === maxDateObj.year && month > maxDateMonth\n : false;\n\n return !isBefore && !isAfter;\n }\n\n private isWithinMinMaxDate(date: DateTime): boolean {\n const _minDate = this.minDate\n ? DateTime.fromFormat(this.minDate, this.format)\n : undefined;\n const _maxDate = this.maxDate\n ? DateTime.fromFormat(this.maxDate, this.format)\n : undefined;\n const isBefore = _minDate\n ? date.startOf('day') < _minDate.startOf('day')\n : false;\n const isAfter = _maxDate\n ? date.startOf('day') > _maxDate.startOf('day')\n : false;\n\n return !isBefore && !isAfter;\n }\n\n private renderYears(): any[] {\n const rows = [];\n\n for (let year = this.startYear; year <= this.endYear; year++) {\n rows.push(\n <div\n key={year}\n class={{\n arrowYear: true,\n 'month-dropdown-item': true,\n 'disabled-item': !this.isWithinMinMaxYear(year),\n }}\n onClick={(event) => this.selectTempYear(event, year)}\n onKeyUp={(event) => {\n if (event.key === 'Enter') {\n this.selectTempYear(null, year);\n this.focusMonth();\n }\n }}\n tabIndex={0}\n >\n <ix-icon\n class={{\n hidden: this.tempYear !== year,\n arrowPosition: true,\n }}\n name=\"chevron-right\"\n size=\"12\"\n ></ix-icon>\n <div style={{ 'min-width': 'max-content' }}>{`${year}`}</div>\n </div>\n );\n }\n\n return rows;\n }\n\n render() {\n return (\n <Host>\n <ix-date-time-card\n corners={this.corners}\n standaloneAppearance={this.standaloneAppearance}\n >\n <div class=\"header\" slot=\"header\">\n <ix-icon-button\n onClick={() => this.changeToAdjacentMonth(-1)}\n ghost\n icon=\"chevron-left\"\n variant=\"primary\"\n class=\"arrows\"\n ></ix-icon-button>\n <div class=\"selector\">\n <ix-button\n ghost\n ref={(ref) => (this.dropdownButtonRef = ref)}\n data-testid=\"year-month-button\"\n >\n <span class=\"fontSize capitalize\">\n {this.monthNames[this.selectedMonth]} {this.selectedYear}\n </span>\n </ix-button>\n <ix-dropdown\n data-testid=\"year-month-dropdown\"\n class=\"dropdown\"\n trigger={this.dropdownButtonRef}\n ignoreRelatedSubmenu\n placement=\"bottom-start\"\n >\n <div class=\"wrapper\">\n <div\n data-testid=\"year-container\"\n class=\"overflow\"\n onScroll={() => this.infiniteScrollYears()}\n ref={(ref) => (this.yearContainerRef = ref)}\n >\n {this.renderYears()}\n </div>\n <div class=\"overflow\" data-testid=\"month-container\">\n {this.monthNames.map((month, index) => (\n <div\n key={month}\n ref={(ref) => {\n if (month === this.monthNames[0]) {\n this.firstMonthRef = ref as HTMLElement;\n }\n }}\n class={{\n arrowYear: true,\n 'month-dropdown-item': true,\n selected:\n this.tempYear === this.selectedYear &&\n this.tempMonth === index,\n 'disabled-item': !this.isWithinMinMaxMonth(index),\n }}\n onClick={() => this.selectMonth(index)}\n onKeyUp={(event) =>\n event.key === 'Enter' && this.selectMonth(index)\n }\n tabIndex={0}\n >\n <ix-icon\n class={{\n hidden:\n this.tempYear !== this.selectedYear ||\n this.tempMonth !== index,\n checkPosition: true,\n }}\n name=\"single-check\"\n size=\"16\"\n ></ix-icon>\n <div>\n <span class=\"capitalize monthMargin\">{`${month} ${this.tempYear}`}</span>\n </div>\n </div>\n ))}\n </div>\n </div>\n </ix-dropdown>\n </div>\n <ix-icon-button\n onClick={() => this.changeToAdjacentMonth(1)}\n ghost\n icon=\"chevron-right\"\n variant=\"primary\"\n class=\"arrows\"\n ></ix-icon-button>\n </div>\n <div class=\"grid\">\n <div class=\"calendar-item week-day\"></div>\n {this.dayNames.map((name) => (\n <div key={name} class=\"calendar-item week-day\">\n {name.slice(0, 3)}\n </div>\n ))}\n {this.calendar.map((week) => {\n return (\n <Fragment>\n <div class=\"calendar-item week-number\">{week.weekNumber}</div>\n {week.dayNumbers.map((day) => (\n <div\n key={day}\n id={`day-cell-${day}`}\n date-calender-day\n class={this.getDayClasses(day)}\n onClick={() => this.selectDay(day)}\n onKeyUp={(e) => e.key === 'Enter' && this.selectDay(day)}\n tabIndex={day === this.focusedDay ? 0 : -1}\n onFocus={() => this.onDayFocus()}\n onBlur={() => this.onDayBlur()}\n >\n {day}\n </div>\n ))}\n </Fragment>\n );\n })}\n </div>\n <div\n class={{\n button: true,\n hidden: !this.range || !this.standaloneAppearance,\n }}\n >\n <ix-button onClick={() => this.onDone()}>\n {this.textSelectDate || this.i18nDone}\n </ix-button>\n </div>\n </ix-date-time-card>\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.ct.js","sourceRoot":"","sources":["../../../../../src/components/date-picker/test/date-picker.ct.ts"],"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 */\nimport { expect, Page } from '@playwright/test';\nimport { test } from '@utils/test';\n\nconst DATE_PICKER_REWORK_SELECTOR = 'ix-date-picker';\nconst getDateObj = async (page: Page) => {\n return await page.$$eval(DATE_PICKER_REWORK_SELECTOR, (elements) => {\n return Promise.all(elements.map((elem) => elem.getCurrentDate()));\n });\n};\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-date-picker></ix-date-picker>`);\n const datePicker = page.locator(DATE_PICKER_REWORK_SELECTOR);\n await expect(datePicker).toHaveClass(/hydrated/);\n});\n\ntest('translation', async ({ mount, page }) => {\n await mount(`<ix-date-picker from=\"2023/01/01\"></ix-date-picker>`);\n\n await page.$eval(\n DATE_PICKER_REWORK_SELECTOR,\n (el: HTMLIxDatePickerElement) => {\n el.locale = 'de';\n }\n );\n\n const header = page.getByText('Januar 2023').nth(0);\n await expect(header).toHaveCount(1);\n});\n\ntest.describe('date picker tests single', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `<ix-date-picker from=\"2023/09/05\" range=\"false\"></ix-date-picker>`\n );\n });\n\n test('date is selected', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/05',\n to: undefined,\n });\n });\n\n test('select different date', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n await page.getByText(/^19$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/19',\n to: undefined,\n });\n });\n\n test('select different date in next month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.locator('ix-icon-button').nth(1).click();\n await page.getByText(/^31$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/10/31',\n to: undefined,\n });\n });\n\n test('select different date in previous month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.locator('ix-icon-button').nth(0).click();\n await page\n .locator('.calendar-item:not(.week-number)')\n .getByText(/^31$/)\n .nth(0)\n .click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/08/31',\n to: undefined,\n });\n });\n\n test('select different date from specific month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page\n .locator('ix-button')\n .filter({ hasText: /^September 2023$/ })\n .locator('span')\n .click();\n\n await page\n .locator('div')\n .filter({ hasText: /^2021$/ })\n .first()\n .click();\n\n await page\n .locator('div')\n .filter({ hasText: /^January 2021$/ })\n .first()\n .click();\n\n await page.getByText(/^1$/).nth(0).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2021/01/01',\n to: undefined,\n });\n });\n\n test('select different date fires dateChange event', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const eventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^19$/).click();\n\n expect(await eventPromise).toBeTruthy();\n });\n});\n\ntest.describe('date picker tests range', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `<ix-date-picker from=\"2023/09/05\" to=\"2023/09/10\"></ix-date-picker>`\n );\n });\n\n test('range is selected', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/05',\n to: '2023/09/10',\n });\n });\n\n test('select different range', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.getByText(/^12$/).click();\n await page.getByText(/^17$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/12',\n to: '2023/09/17',\n });\n });\n\n test('select range spanning over 2 months', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.getByText(/^28$/).click();\n await page.locator('ix-icon-button').nth(1).click();\n await page.getByText(/^5$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/28',\n to: '2023/10/05',\n });\n });\n\n test('select different range fires dateChange and dateRangeChange event', async ({\n page,\n }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateChangeEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n const dateRangeChangeEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateRangeChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^12$/).click();\n await page.getByText(/^17$/).click();\n\n expect(await dateChangeEventPromise).toBeTruthy();\n expect(await dateRangeChangeEventPromise).toBeTruthy();\n });\n\n test('done click fires dateSelect event', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateSelectEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateSelect', (data) => f(data));\n });\n });\n\n await page.getByText('Done').click();\n\n expect(await dateSelectEventPromise).toBeTruthy();\n });\n});\n"]}
1
+ {"version":3,"file":"date-picker.ct.js","sourceRoot":"","sources":["../../../../src/components/date-picker/test/date-picker.ct.ts"],"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 */\nimport { expect, Page } from '@playwright/test';\nimport { test } from '@utils/test';\n\nconst DATE_PICKER_REWORK_SELECTOR = 'ix-date-picker';\nconst getDateObj = async (page: Page) => {\n return await page.$$eval(DATE_PICKER_REWORK_SELECTOR, (elements) => {\n return Promise.all(elements.map((elem) => elem.getCurrentDate()));\n });\n};\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-date-picker></ix-date-picker>`);\n const datePicker = page.locator(DATE_PICKER_REWORK_SELECTOR);\n await expect(datePicker).toHaveClass(/hydrated/);\n});\n\ntest('translation', async ({ mount, page }) => {\n await mount(`<ix-date-picker from=\"2023/01/01\"></ix-date-picker>`);\n\n await page.$eval(\n DATE_PICKER_REWORK_SELECTOR,\n (el: HTMLIxDatePickerElement) => {\n el.locale = 'de';\n }\n );\n\n const header = page.getByText('Januar 2023').nth(0);\n await expect(header).toHaveCount(1);\n});\n\ntest.describe('date picker tests single', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `<ix-date-picker from=\"2023/09/05\" range=\"false\"></ix-date-picker>`\n );\n });\n\n test('date is selected', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/05',\n to: undefined,\n });\n });\n\n test('select different date', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n await page.getByText(/^19$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/19',\n to: undefined,\n });\n });\n\n test('select different date in next month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.locator('ix-icon-button').nth(1).click();\n await page.getByText(/^31$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/10/31',\n to: undefined,\n });\n });\n\n test('select different date in previous month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.locator('ix-icon-button').nth(0).click();\n await page\n .locator('.calendar-item:not(.week-number)')\n .getByText(/^31$/)\n .nth(0)\n .click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/08/31',\n to: undefined,\n });\n });\n\n test('select different date from specific month', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page\n .locator('ix-button')\n .filter({ hasText: /^September 2023$/ })\n .locator('span')\n .click();\n\n await page\n .locator('div')\n .filter({ hasText: /^2021$/ })\n .first()\n .click();\n\n await page\n .locator('div')\n .filter({ hasText: /^January 2021$/ })\n .first()\n .click();\n\n await page.getByText(/^1$/).nth(0).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2021/01/01',\n to: undefined,\n });\n });\n\n test('select different date fires dateChange event', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const eventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^19$/).click();\n\n expect(await eventPromise).toBeTruthy();\n });\n});\n\ntest.describe('date picker tests range', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `<ix-date-picker from=\"2023/09/05\" to=\"2023/09/10\"></ix-date-picker>`\n );\n });\n\n test('range is selected', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/05',\n to: '2023/09/10',\n });\n });\n\n test('select different range', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.getByText(/^12$/).click();\n await page.getByText(/^17$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/12',\n to: '2023/09/17',\n });\n });\n\n test('select range spanning over 2 months', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n await page.getByText(/^28$/).click();\n await page.locator('ix-icon-button').nth(1).click();\n await page.getByText(/^5$/).click();\n\n expect((await getDateObj(page))[0]).toEqual({\n from: '2023/09/28',\n to: '2023/10/05',\n });\n });\n\n test('select different range fires dateChange and dateRangeChange event', async ({\n page,\n }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateChangeEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n const dateRangeChangeEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateRangeChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^12$/).click();\n await page.getByText(/^17$/).click();\n\n expect(await dateChangeEventPromise).toBeTruthy();\n expect(await dateRangeChangeEventPromise).toBeTruthy();\n });\n\n test('done click fires dateSelect event', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateSelectEventPromise = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateSelect', (data) => f(data));\n });\n });\n\n await page.getByText('Done').click();\n\n expect(await dateSelectEventPromise).toBeTruthy();\n });\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-card.js","sourceRoot":"","sources":["../../../../src/components/date-time-card/date-time-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAIzD;;GAEG;AAMH,MAAM,OAAO,YAAY;;oCAEQ,SAAS;0BAKV,IAAI;uBAKK,SAAS;;IAExC,WAAW;QACjB,OAAO;YACL,IAAI,EAAE,IAAI;YACV,oBAAoB,EAClB,IAAI,CAAC,oBAAoB,KAAK,SAAS;gBACrC,CAAC,CAAC,IAAI,CAAC,oBAAoB;gBAC3B,CAAC,CAAC,IAAI,CAAC,UAAU;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;YAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;SAChC,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC5B,4DAAK,KAAK,EAAC,QAAQ;oBACjB,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB;gBAEN,4DAAK,KAAK,EAAC,WAAW,GAAO;gBAE7B,4DAAK,KAAK,EAAC,SAAS;oBAClB,8DAAa,CACT,CACF,CACD,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 { Component, h, Host, Prop } from '@stencil/core';\n\nexport type DateTimeCardCorners = 'rounded' | 'left' | 'right' | 'straight';\n\n/**\n * @internal\n */\n@Component({\n tag: 'ix-date-time-card',\n styleUrl: 'date-time-card.scss',\n shadow: true,\n})\nexport class DateTimeCard {\n /** @internal */\n @Prop() standaloneAppearance = undefined;\n\n /**\n * set styles\n */\n @Prop() individual: boolean = true;\n\n /**\n * Set corners style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n private cardClasses() {\n return {\n card: true,\n standaloneAppearance:\n this.standaloneAppearance !== undefined\n ? this.standaloneAppearance\n : this.individual,\n rounded: this.corners === 'rounded',\n left: this.corners === 'left',\n right: this.corners === 'right',\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClasses()}>\n <div class=\"header\">\n <slot name=\"header\"></slot>\n </div>\n\n <div class=\"separator\"></div>\n\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"date-time-card.js","sourceRoot":"","sources":["../../../src/components/date-time-card/date-time-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAIzD;;GAEG;AAMH,MAAM,OAAO,YAAY;;oCAEQ,SAAS;0BAKV,IAAI;uBAKK,SAAS;;IAExC,WAAW;QACjB,OAAO;YACL,IAAI,EAAE,IAAI;YACV,oBAAoB,EAClB,IAAI,CAAC,oBAAoB,KAAK,SAAS;gBACrC,CAAC,CAAC,IAAI,CAAC,oBAAoB;gBAC3B,CAAC,CAAC,IAAI,CAAC,UAAU;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;YAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;SAChC,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC5B,4DAAK,KAAK,EAAC,QAAQ;oBACjB,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB;gBAEN,4DAAK,KAAK,EAAC,WAAW,GAAO;gBAE7B,4DAAK,KAAK,EAAC,SAAS;oBAClB,8DAAa,CACT,CACF,CACD,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 { Component, h, Host, Prop } from '@stencil/core';\n\nexport type DateTimeCardCorners = 'rounded' | 'left' | 'right' | 'straight';\n\n/**\n * @internal\n */\n@Component({\n tag: 'ix-date-time-card',\n styleUrl: 'date-time-card.scss',\n shadow: true,\n})\nexport class DateTimeCard {\n /** @internal */\n @Prop() standaloneAppearance = undefined;\n\n /**\n * set styles\n */\n @Prop() individual: boolean = true;\n\n /**\n * Set corners style\n */\n @Prop() corners: DateTimeCardCorners = 'rounded';\n\n private cardClasses() {\n return {\n card: true,\n standaloneAppearance:\n this.standaloneAppearance !== undefined\n ? this.standaloneAppearance\n : this.individual,\n rounded: this.corners === 'rounded',\n left: this.corners === 'left',\n right: this.corners === 'right',\n };\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClasses()}>\n <div class=\"header\">\n <slot name=\"header\"></slot>\n </div>\n\n <div class=\"separator\"></div>\n\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"datetime-picker.js","sourceRoot":"","sources":["../../../../src/components/datetime-picker/datetime-picker.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 { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport type { DateChangeEvent } from '../date-picker/date-picker';\n\nexport type DateTimeSelectEvent = {\n from: string;\n to: string;\n time: string;\n};\n\nexport type DateTimeDateChangeEvent =\n | string\n | Omit<DateTimeSelectEvent, 'time'>;\n\n@Component({\n tag: 'ix-datetime-picker',\n styleUrl: 'datetime-picker.scss',\n shadow: true,\n})\nexport class DatetimePicker {\n /**\n * If true a date-range can be selected (from/to).\n */\n @Prop() range = true;\n\n /**\n * Show hour input\n */\n @Prop() showHour = true;\n\n /**\n * Show minutes input\n */\n @Prop() showMinutes = true;\n\n /**\n * Show seconds input\n */\n @Prop() showSeconds = true;\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 * @since 1.1.0\n */\n @Prop() minDate: string;\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 * @since 1.1.0\n */\n @Prop() maxDate: 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 * @since 1.1.0\n */\n @Prop() dateFormat: string = 'yyyy/LL/dd';\n\n /**\n * Time format string.\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 1.1.0\n */\n @Prop() timeFormat: string = 'HH:mm:ss';\n\n /**\n * The selected starting date. If the picker is not in range mode this is the selected date.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() from: string | undefined;\n\n /**\n * The selected end date. If the the picker is not in range mode this property has no impact.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() to: string | undefined;\n\n /**\n * Select time with format string\n *\n * @since 1.1.0\n */\n @Prop() time: string;\n\n /**\n * Show time reference input\n * Time reference is default aligned with @see {this.timeFormat}\n *\n * @since 1.1.0\n */\n @Prop() showTimeReference = undefined;\n\n /**\n * Set time reference\n */\n @Prop() timeReference: 'AM' | 'PM';\n\n /**\n * Text of date select button\n *\n * @since 1.1.0\n * @deprecated since 2.1.0. Use `i18nDone`\n */\n @Prop() textSelectDate: string;\n\n /**\n * Text of date select button\n *\n * @since 2.1.0\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone: string = 'Done';\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 * @since 2.1.0\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 2.1.0\n */\n @Prop() locale: string = undefined;\n\n /**\n * Default behavior of the done event is to join the two events (date and time) into one combined string output.\n * This combination can be configured over the delimiter\n *\n * @since 1.1.0\n * @deprecated Not used anymore see `done` event\n */\n @Prop() eventDelimiter = ' - ';\n\n /**\n * Done event\n *\n * Set `doneEventDelimiter` to null or undefine to get the typed event\n * @deprecated Use `this.dateChange`\n */\n @Event() done: EventEmitter<string>;\n\n /**\n * Time change\n *\n * @since 1.1.0\n */\n @Event() timeChange: EventEmitter<string>;\n\n /**\n * Date change\n *\n * @since 1.1.0\n */\n @Event() dateChange: EventEmitter<DateTimeDateChangeEvent>;\n\n /**\n * Datetime selection event is fired after confirm button is pressed\n *\n * @since 1.1.0\n */\n @Event() dateSelect: EventEmitter<DateTimeSelectEvent>;\n\n private datePickerElement: HTMLIxDatePickerElement;\n private timePickerElement: HTMLIxTimePickerElement;\n\n private async onDone() {\n const date = await this.datePickerElement.getCurrentDate();\n const time = await this.timePickerElement.getCurrentTime();\n\n this.dateSelect.emit({\n from: date.from,\n to: date.to,\n time: time,\n });\n\n this.done.emit([date.from, date.to ?? '', time].join(this.eventDelimiter));\n }\n\n private async onDateChange(event: CustomEvent<string | DateChangeEvent>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: date } = event;\n this.dateChange.emit(date);\n }\n\n private async onTimeChange(event: CustomEvent<string>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: time } = event;\n this.timeChange.emit(time);\n }\n\n render() {\n return (\n <Host>\n <ix-layout-grid class=\"no-padding\">\n <ix-row>\n <ix-col class=\"no-padding\">\n <ix-date-picker\n ref={(ref) => (this.datePickerElement = ref)}\n corners=\"left\"\n range={this.range}\n onDateChange={(event) => this.onDateChange(event)}\n from={this.from}\n to={this.to}\n format={this.dateFormat}\n minDate={this.minDate}\n maxDate={this.maxDate}\n weekStartIndex={this.weekStartIndex}\n standaloneAppearance={false}\n locale={this.locale}\n ></ix-date-picker>\n </ix-col>\n\n <ix-col class=\"no-padding\">\n <ix-time-picker\n class=\"min-width\"\n ref={(ref) => (this.timePickerElement = ref)}\n corners=\"right\"\n standaloneAppearance={false}\n showHour={this.showHour}\n showMinutes={this.showMinutes}\n showSeconds={this.showSeconds}\n onTimeChange={(event) => this.onTimeChange(event)}\n format={this.timeFormat}\n time={this.time}\n ></ix-time-picker>\n </ix-col>\n </ix-row>\n <ix-row>\n <ix-col>\n <ix-button\n class=\"btn-select-date btn-md-width\"\n onClick={() => this.onDone()}\n >\n {this.textSelectDate || this.i18nDone}\n </ix-button>\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"datetime-picker.js","sourceRoot":"","sources":["../../../src/components/datetime-picker/datetime-picker.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 { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport type { DateChangeEvent } from '../date-picker/date-picker';\n\nexport type DateTimeSelectEvent = {\n from: string;\n to: string;\n time: string;\n};\n\nexport type DateTimeDateChangeEvent =\n | string\n | Omit<DateTimeSelectEvent, 'time'>;\n\n@Component({\n tag: 'ix-datetime-picker',\n styleUrl: 'datetime-picker.scss',\n shadow: true,\n})\nexport class DatetimePicker {\n /**\n * If true a date-range can be selected (from/to).\n */\n @Prop() range = true;\n\n /**\n * Show hour input\n */\n @Prop() showHour = true;\n\n /**\n * Show minutes input\n */\n @Prop() showMinutes = true;\n\n /**\n * Show seconds input\n */\n @Prop() showSeconds = true;\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 * @since 1.1.0\n */\n @Prop() minDate: string;\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 * @since 1.1.0\n */\n @Prop() maxDate: 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 * @since 1.1.0\n */\n @Prop() dateFormat: string = 'yyyy/LL/dd';\n\n /**\n * Time format string.\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 1.1.0\n */\n @Prop() timeFormat: string = 'HH:mm:ss';\n\n /**\n * The selected starting date. If the picker is not in range mode this is the selected date.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() from: string | undefined;\n\n /**\n * The selected end date. If the the picker is not in range mode this property has no impact.\n * Format has to match the `format` property.\n *\n * @since 1.1.0\n */\n @Prop() to: string | undefined;\n\n /**\n * Select time with format string\n *\n * @since 1.1.0\n */\n @Prop() time: string;\n\n /**\n * Show time reference input\n * Time reference is default aligned with @see {this.timeFormat}\n *\n * @since 1.1.0\n */\n @Prop() showTimeReference = undefined;\n\n /**\n * Set time reference\n */\n @Prop() timeReference: 'AM' | 'PM';\n\n /**\n * Text of date select button\n *\n * @since 1.1.0\n * @deprecated since 2.1.0. Use `i18nDone`\n */\n @Prop() textSelectDate: string;\n\n /**\n * Text of date select button\n *\n * @since 2.1.0\n */\n @Prop({ attribute: 'i18n-done' }) i18nDone: string = 'Done';\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 * @since 2.1.0\n */\n @Prop() weekStartIndex = 0;\n\n /**\n * Format of time string\n * See {@link \"https://moment.github.io/luxon/#/formatting?id=table-of-tokens\"} for all available tokens.\n *\n * @since 2.1.0\n */\n @Prop() locale: string = undefined;\n\n /**\n * Default behavior of the done event is to join the two events (date and time) into one combined string output.\n * This combination can be configured over the delimiter\n *\n * @since 1.1.0\n * @deprecated Not used anymore see `done` event\n */\n @Prop() eventDelimiter = ' - ';\n\n /**\n * Done event\n *\n * Set `doneEventDelimiter` to null or undefine to get the typed event\n * @deprecated Use `this.dateChange`\n */\n @Event() done: EventEmitter<string>;\n\n /**\n * Time change\n *\n * @since 1.1.0\n */\n @Event() timeChange: EventEmitter<string>;\n\n /**\n * Date change\n *\n * @since 1.1.0\n */\n @Event() dateChange: EventEmitter<DateTimeDateChangeEvent>;\n\n /**\n * Datetime selection event is fired after confirm button is pressed\n *\n * @since 1.1.0\n */\n @Event() dateSelect: EventEmitter<DateTimeSelectEvent>;\n\n private datePickerElement: HTMLIxDatePickerElement;\n private timePickerElement: HTMLIxTimePickerElement;\n\n private async onDone() {\n const date = await this.datePickerElement.getCurrentDate();\n const time = await this.timePickerElement.getCurrentTime();\n\n this.dateSelect.emit({\n from: date.from,\n to: date.to,\n time: time,\n });\n\n this.done.emit([date.from, date.to ?? '', time].join(this.eventDelimiter));\n }\n\n private async onDateChange(event: CustomEvent<string | DateChangeEvent>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: date } = event;\n this.dateChange.emit(date);\n }\n\n private async onTimeChange(event: CustomEvent<string>) {\n event.preventDefault();\n event.stopPropagation();\n\n const { detail: time } = event;\n this.timeChange.emit(time);\n }\n\n render() {\n return (\n <Host>\n <ix-layout-grid class=\"no-padding\">\n <ix-row>\n <ix-col class=\"no-padding\">\n <ix-date-picker\n ref={(ref) => (this.datePickerElement = ref)}\n corners=\"left\"\n range={this.range}\n onDateChange={(event) => this.onDateChange(event)}\n from={this.from}\n to={this.to}\n format={this.dateFormat}\n minDate={this.minDate}\n maxDate={this.maxDate}\n weekStartIndex={this.weekStartIndex}\n standaloneAppearance={false}\n locale={this.locale}\n ></ix-date-picker>\n </ix-col>\n\n <ix-col class=\"no-padding\">\n <ix-time-picker\n class=\"min-width\"\n ref={(ref) => (this.timePickerElement = ref)}\n corners=\"right\"\n standaloneAppearance={false}\n showHour={this.showHour}\n showMinutes={this.showMinutes}\n showSeconds={this.showSeconds}\n onTimeChange={(event) => this.onTimeChange(event)}\n format={this.timeFormat}\n time={this.time}\n ></ix-time-picker>\n </ix-col>\n </ix-row>\n <ix-row>\n <ix-col>\n <ix-button\n class=\"btn-select-date btn-md-width\"\n onClick={() => this.onDone()}\n >\n {this.textSelectDate || this.i18nDone}\n </ix-button>\n </ix-col>\n </ix-row>\n </ix-layout-grid>\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"datetime-picker.ct.js","sourceRoot":"","sources":["../../../../../src/components/datetime-picker/test/datetime-picker.ct.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,yBAAyB,GAAG,oBAAoB,CAAC;AAEvD,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACxC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC3D,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACjD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QAClC,MAAM,KAAK,CACT;;;;;;;;;OASC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAC9C,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAEhD,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,CACvB,MAAM,IAAI,CAAC,EAAE,CAAC,mCAAmC,CAAC,CACnD,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEd,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QAED,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC,UAAU,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACrC,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAEhD,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;QAErC,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC,UAAU,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","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 */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\n\nconst DATE_TIME_PICKER_SELECTOR = 'ix-datetime-picker';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-datetime-picker></ix-datetime-picker>`);\n const datePicker = page.locator(DATE_TIME_PICKER_SELECTOR);\n await expect(datePicker).toHaveClass(/hydrated/);\n});\n\ntest.describe('datetime picker tests single', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `\n <ix-datetime-picker\n range=\"false\"\n from=\"1990/03/29\"\n date-format=\"yyyy/LL/dd\"\n time=\"09:10:12\"\n time-format=\"HH:mm:ss\"\n week-start-index=\"1\"\n ></ix-datetime-picker>\n `\n );\n });\n\n test('increment time units', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const timeChangeEvent = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('timeChange', (data) => f(data));\n });\n });\n\n const incrementButtons = (\n await page.$$('ix-icon-button.arrows:first-child')\n ).slice(0, 3);\n\n for (const button of incrementButtons) {\n await button.click();\n }\n\n expect(await timeChangeEvent).toBeTruthy;\n });\n\n test('change date', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateChangeEvent = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^17$/).click();\n\n expect(await dateChangeEvent).toBeTruthy;\n });\n});\n"]}
1
+ {"version":3,"file":"datetime-picker.ct.js","sourceRoot":"","sources":["../../../../src/components/datetime-picker/test/datetime-picker.ct.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,yBAAyB,GAAG,oBAAoB,CAAC;AAEvD,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACxC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC3D,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACjD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QAClC,MAAM,KAAK,CACT;;;;;;;;;OASC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAC9C,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAEhD,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,CACvB,MAAM,IAAI,CAAC,EAAE,CAAC,mCAAmC,CAAC,CACnD,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEd,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QAED,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC,UAAU,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACrC,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAEhD,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;QAErC,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC,UAAU,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","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 */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\n\nconst DATE_TIME_PICKER_SELECTOR = 'ix-datetime-picker';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-datetime-picker></ix-datetime-picker>`);\n const datePicker = page.locator(DATE_TIME_PICKER_SELECTOR);\n await expect(datePicker).toHaveClass(/hydrated/);\n});\n\ntest.describe('datetime picker tests single', () => {\n test.beforeEach(async ({ mount }) => {\n await mount(\n `\n <ix-datetime-picker\n range=\"false\"\n from=\"1990/03/29\"\n date-format=\"yyyy/LL/dd\"\n time=\"09:10:12\"\n time-format=\"HH:mm:ss\"\n week-start-index=\"1\"\n ></ix-datetime-picker>\n `\n );\n });\n\n test('increment time units', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const timeChangeEvent = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('timeChange', (data) => f(data));\n });\n });\n\n const incrementButtons = (\n await page.$$('ix-icon-button.arrows:first-child')\n ).slice(0, 3);\n\n for (const button of incrementButtons) {\n await button.click();\n }\n\n expect(await timeChangeEvent).toBeTruthy;\n });\n\n test('change date', async ({ page }) => {\n await page.waitForSelector('ix-date-time-card');\n\n const dateChangeEvent = page.evaluate(() => {\n return new Promise((f) => {\n document.addEventListener('dateChange', (data) => f(data));\n });\n });\n\n await page.getByText(/^17$/).click();\n\n expect(await dateChangeEvent).toBeTruthy;\n });\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"divider.js","sourceRoot":"","sources":["../../../../src/components/divider/divider.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AAMH,MAAM,OAAO,OAAO;IAClB,MAAM;QACJ,OAAO,EAAC,IAAI,sDAAQ,CAAC;IACvB,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 */\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 1.4.0\n */\n@Component({\n tag: 'ix-divider',\n styleUrl: 'divider.scss',\n shadow: true,\n})\nexport class Divider {\n render() {\n return <Host></Host>;\n }\n}\n"]}
1
+ {"version":3,"file":"divider.js","sourceRoot":"","sources":["../../../src/components/divider/divider.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AAMH,MAAM,OAAO,OAAO;IAClB,MAAM;QACJ,OAAO,EAAC,IAAI,sDAAQ,CAAC;IACvB,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 */\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 1.4.0\n */\n@Component({\n tag: 'ix-divider',\n styleUrl: 'divider.scss',\n shadow: true,\n})\nexport class Divider {\n render() {\n return <Host></Host>;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../../src/components/drawer/drawer.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 Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport anime from 'animejs';\n\n@Component({\n tag: 'ix-drawer',\n styleUrl: 'drawer.scss',\n shadow: true,\n})\nexport class Drawer {\n /**\n * Show or hide the drawer\n */\n @Prop({ mutable: true }) show = false;\n\n /**\n * Fired in case of an outside click during drawer showed state\n */\n @Prop() closeOnClickOutside = true;\n\n /**\n * Render the drawer with maximum height\n */\n @Prop() fullHeight = false;\n\n /**\n * Min width interpreted as REM\n */\n @Prop() minWidth = 16;\n\n /**\n * Max width interpreted as REM\n */\n @Prop() maxWidth = 28;\n\n /**\n * Width interpreted as REM if not set to 'auto'\n */\n @Prop() width: number | 'auto' = this.minWidth;\n\n /**\n * Fire event after drawer is open\n */\n @Event() open: EventEmitter;\n\n /**\n * Fire event after drawer is close\n */\n @Event() drawerClose: EventEmitter;\n\n private static duration = 300;\n private callback = this.clickedOutside.bind(this);\n private divElement?: HTMLElement;\n\n @Watch('show')\n onShowChanged(newValue: boolean) {\n this.show = newValue !== undefined ? newValue : !this.show;\n this.toggleDrawer(this.show);\n }\n\n /**\n * Toggle or define show state of drawer\n * @param show Overwrite toggle state with boolean\n */\n @Method()\n async toggleDrawer(show?: boolean): Promise<void> {\n this.show = show !== undefined ? show : !this.show;\n\n if (show) {\n this.open.emit();\n this.slideInRight(this.divElement);\n setTimeout(() => {\n window.addEventListener('mousedown', this.callback);\n }, 300);\n } else {\n this.drawerClose.emit();\n this.slideOutRight(this.divElement);\n window.removeEventListener('mousedown', this.callback);\n }\n\n return Promise.resolve();\n }\n\n private onCloseClicked() {\n this.show = false;\n }\n\n private clickedOutside(evt: any) {\n if (!this.closeOnClickOutside) {\n return;\n }\n\n const target = evt.target;\n const closestElement = target.closest('#div-container');\n const btn = target.closest('#drawer-btn');\n\n if (\n evt.target.type !== 'button' &&\n closestElement !== this.divElement &&\n target !== btn\n ) {\n this.show = false;\n }\n }\n\n private slideOutRight(el: HTMLElement) {\n anime({\n targets: el,\n duration: Drawer.duration,\n translateX: [0, '16rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n el.classList.add('d-none');\n },\n });\n }\n\n private slideInRight(el: HTMLElement) {\n anime({\n targets: el,\n duration: Drawer.duration,\n translateX: ['16rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n el.classList.remove('d-none');\n },\n });\n }\n\n componentDidLoad() {\n this.onShowChanged(this.show);\n }\n\n render() {\n return (\n <Host\n class={{\n 'drawer-container': true,\n toggle: this.show,\n 'full-height': this.fullHeight,\n 'd-none': true,\n }}\n style={{\n width: this.width === 'auto' ? this.width : `${this.width}rem`,\n 'min-width': `${this.minWidth}rem`,\n 'max-width': `${this.maxWidth}rem`,\n }}\n ref={(el) => (this.divElement = el as HTMLElement)}\n data-testid=\"container\"\n id=\"div-container\"\n >\n <div class=\"header\">\n <div class=\"header-content\">\n <slot name=\"header\"></slot>\n </div>\n <ix-icon-button\n class=\"close-button\"\n icon={'close'}\n size=\"24\"\n ghost\n onClick={() => this.onCloseClicked()}\n data-testid=\"close-button\"\n ></ix-icon-button>\n </div>\n <div class=\"content\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../src/components/drawer/drawer.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 Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n Watch,\n} from '@stencil/core';\nimport anime from 'animejs';\n\n@Component({\n tag: 'ix-drawer',\n styleUrl: 'drawer.scss',\n shadow: true,\n})\nexport class Drawer {\n /**\n * Show or hide the drawer\n */\n @Prop({ mutable: true }) show = false;\n\n /**\n * Fired in case of an outside click during drawer showed state\n */\n @Prop() closeOnClickOutside = true;\n\n /**\n * Render the drawer with maximum height\n */\n @Prop() fullHeight = false;\n\n /**\n * Min width interpreted as REM\n */\n @Prop() minWidth = 16;\n\n /**\n * Max width interpreted as REM\n */\n @Prop() maxWidth = 28;\n\n /**\n * Width interpreted as REM if not set to 'auto'\n */\n @Prop() width: number | 'auto' = this.minWidth;\n\n /**\n * Fire event after drawer is open\n */\n @Event() open: EventEmitter;\n\n /**\n * Fire event after drawer is close\n */\n @Event() drawerClose: EventEmitter;\n\n private static duration = 300;\n private callback = this.clickedOutside.bind(this);\n private divElement?: HTMLElement;\n\n @Watch('show')\n onShowChanged(newValue: boolean) {\n this.show = newValue !== undefined ? newValue : !this.show;\n this.toggleDrawer(this.show);\n }\n\n /**\n * Toggle or define show state of drawer\n * @param show Overwrite toggle state with boolean\n */\n @Method()\n async toggleDrawer(show?: boolean): Promise<void> {\n this.show = show !== undefined ? show : !this.show;\n\n if (show) {\n this.open.emit();\n this.slideInRight(this.divElement);\n setTimeout(() => {\n window.addEventListener('mousedown', this.callback);\n }, 300);\n } else {\n this.drawerClose.emit();\n this.slideOutRight(this.divElement);\n window.removeEventListener('mousedown', this.callback);\n }\n\n return Promise.resolve();\n }\n\n private onCloseClicked() {\n this.show = false;\n }\n\n private clickedOutside(evt: any) {\n if (!this.closeOnClickOutside) {\n return;\n }\n\n const target = evt.target;\n const closestElement = target.closest('#div-container');\n const btn = target.closest('#drawer-btn');\n\n if (\n evt.target.type !== 'button' &&\n closestElement !== this.divElement &&\n target !== btn\n ) {\n this.show = false;\n }\n }\n\n private slideOutRight(el: HTMLElement) {\n anime({\n targets: el,\n duration: Drawer.duration,\n translateX: [0, '16rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n complete: () => {\n el.classList.add('d-none');\n },\n });\n }\n\n private slideInRight(el: HTMLElement) {\n anime({\n targets: el,\n duration: Drawer.duration,\n translateX: ['16rem', 0],\n opacity: [0, 1],\n easing: 'easeOutSine',\n begin: () => {\n el.classList.remove('d-none');\n },\n });\n }\n\n componentDidLoad() {\n this.onShowChanged(this.show);\n }\n\n render() {\n return (\n <Host\n class={{\n 'drawer-container': true,\n toggle: this.show,\n 'full-height': this.fullHeight,\n 'd-none': true,\n }}\n style={{\n width: this.width === 'auto' ? this.width : `${this.width}rem`,\n 'min-width': `${this.minWidth}rem`,\n 'max-width': `${this.maxWidth}rem`,\n }}\n ref={(el) => (this.divElement = el as HTMLElement)}\n data-testid=\"container\"\n id=\"div-container\"\n >\n <div class=\"header\">\n <div class=\"header-content\">\n <slot name=\"header\"></slot>\n </div>\n <ix-icon-button\n class=\"close-button\"\n icon={'close'}\n size=\"24\"\n ghost\n onClick={() => this.onCloseClicked()}\n data-testid=\"close-button\"\n ></ix-icon-button>\n </div>\n <div class=\"content\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.ct.js","sourceRoot":"","sources":["../../../../../src/components/drawer/test/drawer.ct.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACxC,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IAC3D,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACjD,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,CACpE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACnD,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,CACpE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,KAAK,CAAC,CACrE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-drawer>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).not.toBeVisible();\n});\n\ntest('show by property (initial)', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n});\n\ntest('show by property', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = true)\n );\n\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n});\n\ntest('toggle by property', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = true)\n );\n\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = false)\n );\n\n await expect(drawer).not.toBeVisible();\n});\n"]}
1
+ {"version":3,"file":"drawer.ct.js","sourceRoot":"","sources":["../../../../src/components/drawer/test/drawer.ct.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACxC,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IAC3D,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACjD,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,CACpE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;IACnD,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,CACpE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnC,MAAM,MAAM,CAAC,QAAQ,CACnB,CAAC,aAAkC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,GAAG,KAAK,CAAC,CACrE,CAAC;IAEF,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { expect } from '@playwright/test';\nimport { test } from '@utils/test';\n\ntest('renders', async ({ mount, page }) => {\n await mount(`<ix-drawer>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).not.toBeVisible();\n});\n\ntest('show by property (initial)', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n});\n\ntest('show by property', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = true)\n );\n\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n});\n\ntest('toggle by property', async ({ mount, page }) => {\n await mount(`<ix-drawer show>Content</ix-drawer>`);\n const drawer = page.locator('ix-drawer');\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = true)\n );\n\n await expect(drawer).toHaveClass(/hydrated/);\n await expect(drawer).toBeVisible();\n\n await drawer.evaluate(\n (drawerElement: HTMLIxDrawerElement) => (drawerElement.show = false)\n );\n\n await expect(drawer).not.toBeVisible();\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.spec.js","sourceRoot":"","sources":["../../../../../src/components/drawer/test/drawer.spec.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 { newSpecPage } from '@stencil/core/testing';\nimport { fireEvent } from '@testing-library/dom';\nimport { Drawer } from '../drawer';\n\ndescribe('ix-drawer', () => {\n let page: any;\n let drawer: HTMLIxDrawerElement;\n let container: HTMLDivElement;\n\n beforeEach(async () => {\n page = await newSpecPage({\n components: [Drawer],\n html: '<ix-drawer>Example Content</ix-drawer>',\n });\n\n drawer = document.querySelector('ix-drawer');\n container = document.querySelector('[data-testid=\"container\"]');\n });\n\n it('opens the drawer', async () => {\n drawer.show = true;\n await page.waitForChanges();\n\n expect(drawer.show).toBeTruthy();\n\n await page.waitForChanges();\n expect(drawer.innerText).toContain('Example Content');\n });\n\n it('closes the drawer', async () => {\n drawer.show = true;\n await page.waitForChanges();\n\n const closeButton = drawer.shadowRoot.querySelector(\n '[data-testid=\"close-button\"]'\n );\n fireEvent.click(closeButton);\n await page.waitForChanges();\n expect(drawer.show).toBeFalsy();\n expect(drawer.innerHTML).not.toContain('toggle');\n });\n\n it('drawer is displayed at full height, if fullHeight is set to true', async () => {\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n drawer.fullHeight = true;\n await page.waitForChanges();\n\n expect(container.classList.contains('full-height')).toBeTruthy();\n });\n\n it('drawer is NOT displayed at full height, if fullHeight is set to false', async () => {\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n drawer.fullHeight = false;\n await page.waitForChanges();\n\n expect(container.classList.contains('full-height')).toBeFalsy();\n });\n\n it('emits an event, when show changed', async () => {\n const mockCallback = jest.fn();\n window.addEventListener('open', mockCallback);\n\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n const closeButton = drawer.shadowRoot.querySelector(\n '[data-testid=\"close-button\"]'\n );\n fireEvent.click(closeButton);\n\n window.removeEventListener('open', mockCallback);\n expect(mockCallback).toHaveBeenCalled();\n });\n});\n"]}
1
+ {"version":3,"file":"drawer.spec.js","sourceRoot":"","sources":["../../../../src/components/drawer/test/drawer.spec.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 { newSpecPage } from '@stencil/core/testing';\nimport { fireEvent } from '@testing-library/dom';\nimport { Drawer } from '../drawer';\n\ndescribe('ix-drawer', () => {\n let page: any;\n let drawer: HTMLIxDrawerElement;\n let container: HTMLDivElement;\n\n beforeEach(async () => {\n page = await newSpecPage({\n components: [Drawer],\n html: '<ix-drawer>Example Content</ix-drawer>',\n });\n\n drawer = document.querySelector('ix-drawer');\n container = document.querySelector('[data-testid=\"container\"]');\n });\n\n it('opens the drawer', async () => {\n drawer.show = true;\n await page.waitForChanges();\n\n expect(drawer.show).toBeTruthy();\n\n await page.waitForChanges();\n expect(drawer.innerText).toContain('Example Content');\n });\n\n it('closes the drawer', async () => {\n drawer.show = true;\n await page.waitForChanges();\n\n const closeButton = drawer.shadowRoot.querySelector(\n '[data-testid=\"close-button\"]'\n );\n fireEvent.click(closeButton);\n await page.waitForChanges();\n expect(drawer.show).toBeFalsy();\n expect(drawer.innerHTML).not.toContain('toggle');\n });\n\n it('drawer is displayed at full height, if fullHeight is set to true', async () => {\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n drawer.fullHeight = true;\n await page.waitForChanges();\n\n expect(container.classList.contains('full-height')).toBeTruthy();\n });\n\n it('drawer is NOT displayed at full height, if fullHeight is set to false', async () => {\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n drawer.fullHeight = false;\n await page.waitForChanges();\n\n expect(container.classList.contains('full-height')).toBeFalsy();\n });\n\n it('emits an event, when show changed', async () => {\n const mockCallback = jest.fn();\n window.addEventListener('open', mockCallback);\n\n drawer.toggleDrawer();\n await page.waitForChanges();\n\n const closeButton = drawer.shadowRoot.querySelector(\n '[data-testid=\"close-button\"]'\n );\n fireEvent.click(closeButton);\n\n window.removeEventListener('open', mockCallback);\n expect(mockCallback).toHaveBeenCalled();\n });\n});\n"]}