@siemens/ix 1.5.0-beta.1 → 1.5.0-beta.2

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 (260) hide show
  1. package/dist/cjs/index-478a4b66.js.map +1 -1
  2. package/dist/cjs/ix-blind.cjs.entry.js +24 -6
  3. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ix-category-filter.cjs.entry.js +17 -3
  5. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ix-date-picker_2.cjs.entry.js +62 -43
  7. package/dist/cjs/ix-date-picker_2.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ix-datetime-picker.cjs.entry.js +2 -2
  9. package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ix-dropdown_2.cjs.entry.js +4 -3
  11. package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ix-group_3.cjs.entry.js +33 -11
  13. package/dist/cjs/ix-group_3.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ix-modal_2.cjs.entry.js +17 -5
  15. package/dist/cjs/ix-modal_2.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ix-pagination.cjs.entry.js +17 -9
  17. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ix-select_2.cjs.entry.js +54 -35
  19. package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ix-toggle.cjs.entry.js +1 -1
  21. package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ix-tooltip.cjs.entry.js +34 -10
  23. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ix-workflow-step_2.cjs.entry.js +51 -36
  25. package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -1
  26. package/dist/cjs/loader.cjs.js +2 -2
  27. package/dist/cjs/loader.cjs.js.map +1 -1
  28. package/dist/cjs/siemens-ix.cjs.js +2 -2
  29. package/dist/cjs/siemens-ix.cjs.js.map +1 -1
  30. package/dist/collection/collection-manifest.json +1 -1
  31. package/dist/collection/components/blind/blind.css +10 -2
  32. package/dist/collection/components/blind/blind.js +12 -5
  33. package/dist/collection/components/blind/blind.js.map +1 -1
  34. package/dist/collection/components/category-filter/category-filter.js +17 -3
  35. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  36. package/dist/collection/components/date-picker/date-picker.css +3 -0
  37. package/dist/collection/components/date-picker/date-picker.js +64 -45
  38. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  39. package/dist/collection/components/datetime-picker/datetime-picker.css +6 -5
  40. package/dist/collection/components/datetime-picker/datetime-picker.js +1 -1
  41. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  42. package/dist/collection/components/dropdown/dropdown.js +2 -1
  43. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  44. package/dist/collection/components/dropdown-item/dropdown-item.css +0 -1
  45. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
  46. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  47. package/dist/collection/components/group/group.css +21 -12
  48. package/dist/collection/components/group/group.js +34 -10
  49. package/dist/collection/components/group/group.js.map +1 -1
  50. package/dist/collection/components/group-item/group-item.css +8 -4
  51. package/dist/collection/components/modal/modal.js +6 -1
  52. package/dist/collection/components/modal/modal.js.map +1 -1
  53. package/dist/collection/components/modal-container/modal-container.js +11 -4
  54. package/dist/collection/components/modal-container/modal-container.js.map +1 -1
  55. package/dist/collection/components/pagination/pagination.css +1 -1
  56. package/dist/collection/components/pagination/pagination.js +17 -9
  57. package/dist/collection/components/pagination/pagination.js.map +1 -1
  58. package/dist/collection/components/select/select.css +4 -1
  59. package/dist/collection/components/select/select.js +96 -34
  60. package/dist/collection/components/select/select.js.map +1 -1
  61. package/dist/collection/components/select-item/select-item.css +0 -3
  62. package/dist/collection/components/select-item/select-item.js +1 -1
  63. package/dist/collection/components/select-item/select-item.js.map +1 -1
  64. package/dist/collection/components/toggle/toggle.css +7 -4
  65. package/dist/collection/components/tooltip/tooltip.js +55 -10
  66. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  67. package/dist/collection/components/utils/a11y.js +10 -0
  68. package/dist/collection/components/utils/a11y.js.map +1 -0
  69. package/dist/collection/components/workflow-step/workflow-step.css +6 -3
  70. package/dist/collection/components/workflow-step/workflow-step.js +45 -6
  71. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  72. package/dist/collection/components/workflow-steps/workflow-steps.css +0 -3
  73. package/dist/collection/components/workflow-steps/workflow-steps.js +48 -39
  74. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  75. package/dist/collection/tests/utils/test/page.js +29 -1
  76. package/dist/collection/tests/utils/test/page.js.map +1 -1
  77. package/dist/components/application-header.js +1 -1
  78. package/dist/components/burger-menu.js +1 -1
  79. package/dist/components/button.js +1 -1
  80. package/dist/components/date-picker.js +63 -44
  81. package/dist/components/date-picker.js.map +1 -1
  82. package/dist/components/date-time-card.js +1 -1
  83. package/dist/components/dropdown-item.js +3 -3
  84. package/dist/components/dropdown-item.js.map +1 -1
  85. package/dist/components/dropdown.js +3 -2
  86. package/dist/components/dropdown.js.map +1 -1
  87. package/dist/components/filter-chip.js +1 -1
  88. package/dist/components/group-context-menu.js +1 -1
  89. package/dist/components/group-item.js +2 -2
  90. package/dist/components/group-item.js.map +1 -1
  91. package/dist/components/icon-button.js +1 -1
  92. package/dist/components/icon.js +1 -1
  93. package/dist/components/index-button.js +1 -1
  94. package/dist/components/ix-animated-tab.js +1 -1
  95. package/dist/components/ix-animated-tabs.js +1 -1
  96. package/dist/components/ix-basic-navigation.js +1 -1
  97. package/dist/components/ix-blind.js +26 -7
  98. package/dist/components/ix-blind.js.map +1 -1
  99. package/dist/components/ix-breadcrumb-item.js +1 -1
  100. package/dist/components/ix-breadcrumb.js +1 -1
  101. package/dist/components/ix-category-filter.js +18 -4
  102. package/dist/components/ix-category-filter.js.map +1 -1
  103. package/dist/components/ix-chip.js +1 -1
  104. package/dist/components/ix-counter-pill.js +1 -1
  105. package/dist/components/ix-datetime-picker.js +3 -3
  106. package/dist/components/ix-datetime-picker.js.map +1 -1
  107. package/dist/components/ix-divider.js +1 -1
  108. package/dist/components/ix-drawer.js +1 -1
  109. package/dist/components/ix-dropdown-button.js +1 -1
  110. package/dist/components/ix-dropdown-quick-actions.js +1 -1
  111. package/dist/components/ix-event-list-item.js +1 -1
  112. package/dist/components/ix-event-list.js +1 -1
  113. package/dist/components/ix-expanding-search.js +1 -1
  114. package/dist/components/ix-flip-tile-content.js +1 -1
  115. package/dist/components/ix-flip-tile.js +1 -1
  116. package/dist/components/ix-group-dropdown-item.js +1 -1
  117. package/dist/components/ix-group.js +36 -12
  118. package/dist/components/ix-group.js.map +1 -1
  119. package/dist/components/ix-input-group.js +1 -1
  120. package/dist/components/ix-kpi.js +1 -1
  121. package/dist/components/ix-map-navigation.js +1 -1
  122. package/dist/components/ix-menu-about-item.js +1 -1
  123. package/dist/components/ix-menu-about-news.js +1 -1
  124. package/dist/components/ix-menu-about.js +1 -1
  125. package/dist/components/ix-menu-avatar.js +1 -1
  126. package/dist/components/ix-menu-settings-item.js +1 -1
  127. package/dist/components/ix-menu-settings.js +1 -1
  128. package/dist/components/ix-menu.js +1 -1
  129. package/dist/components/ix-message-bar.js +1 -1
  130. package/dist/components/ix-modal-example.js +1 -1
  131. package/dist/components/ix-pagination.js +18 -10
  132. package/dist/components/ix-pagination.js.map +1 -1
  133. package/dist/components/ix-pill.js +1 -1
  134. package/dist/components/ix-split-button-item.js +1 -1
  135. package/dist/components/ix-split-button.js +1 -1
  136. package/dist/components/ix-tile.js +1 -1
  137. package/dist/components/ix-toast-container.js +1 -1
  138. package/dist/components/ix-toggle.js +2 -2
  139. package/dist/components/ix-toggle.js.map +1 -1
  140. package/dist/components/ix-tooltip.js +36 -11
  141. package/dist/components/ix-tooltip.js.map +1 -1
  142. package/dist/components/ix-tree.js +1 -1
  143. package/dist/components/ix-upload.js +1 -1
  144. package/dist/components/ix-validation-tooltip.js +1 -1
  145. package/dist/components/ix-workflow-step.js +10 -4
  146. package/dist/components/ix-workflow-step.js.map +1 -1
  147. package/dist/components/ix-workflow-steps.js +45 -36
  148. package/dist/components/ix-workflow-steps.js.map +1 -1
  149. package/dist/components/map-navigation-overlay.js +1 -1
  150. package/dist/components/menu-avatar-item.js +1 -1
  151. package/dist/components/menu-item.js +1 -1
  152. package/dist/components/modal-container.js +12 -5
  153. package/dist/components/modal-container.js.map +1 -1
  154. package/dist/components/modal.js +7 -2
  155. package/dist/components/modal.js.map +1 -1
  156. package/dist/components/my-component.js +1 -1
  157. package/dist/components/select-item.js +3 -3
  158. package/dist/components/select-item.js.map +1 -1
  159. package/dist/components/select.js +55 -34
  160. package/dist/components/select.js.map +1 -1
  161. package/dist/components/spinner.js +1 -1
  162. package/dist/components/tab-item.js +1 -1
  163. package/dist/components/tabs.js +1 -1
  164. package/dist/components/time-picker.js +1 -1
  165. package/dist/components/toast.js +1 -1
  166. package/dist/components/tree-item.js +1 -1
  167. package/dist/components/typography.js +1 -1
  168. package/dist/esm/index-3d163acd.js.map +1 -1
  169. package/dist/esm/ix-blind.entry.js +24 -6
  170. package/dist/esm/ix-blind.entry.js.map +1 -1
  171. package/dist/esm/ix-category-filter.entry.js +17 -3
  172. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  173. package/dist/esm/ix-date-picker_2.entry.js +62 -43
  174. package/dist/esm/ix-date-picker_2.entry.js.map +1 -1
  175. package/dist/esm/ix-datetime-picker.entry.js +2 -2
  176. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  177. package/dist/esm/ix-dropdown_2.entry.js +4 -3
  178. package/dist/esm/ix-dropdown_2.entry.js.map +1 -1
  179. package/dist/esm/ix-group_3.entry.js +33 -11
  180. package/dist/esm/ix-group_3.entry.js.map +1 -1
  181. package/dist/esm/ix-modal_2.entry.js +17 -5
  182. package/dist/esm/ix-modal_2.entry.js.map +1 -1
  183. package/dist/esm/ix-pagination.entry.js +18 -10
  184. package/dist/esm/ix-pagination.entry.js.map +1 -1
  185. package/dist/esm/ix-select_2.entry.js +54 -35
  186. package/dist/esm/ix-select_2.entry.js.map +1 -1
  187. package/dist/esm/ix-toggle.entry.js +1 -1
  188. package/dist/esm/ix-toggle.entry.js.map +1 -1
  189. package/dist/esm/ix-tooltip.entry.js +34 -10
  190. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  191. package/dist/esm/ix-workflow-step_2.entry.js +52 -37
  192. package/dist/esm/ix-workflow-step_2.entry.js.map +1 -1
  193. package/dist/esm/loader.js +2 -2
  194. package/dist/esm/loader.js.map +1 -1
  195. package/dist/esm/siemens-ix.js +2 -2
  196. package/dist/esm/siemens-ix.js.map +1 -1
  197. package/dist/siemens-ix/{p-41f0a2b2.entry.js → p-2ea2fc07.entry.js} +2 -2
  198. package/dist/siemens-ix/{p-41f0a2b2.entry.js.map → p-2ea2fc07.entry.js.map} +1 -1
  199. package/dist/siemens-ix/p-33160fe4.entry.js +2 -0
  200. package/dist/siemens-ix/p-33160fe4.entry.js.map +1 -0
  201. package/dist/siemens-ix/p-4c8d5207.entry.js +2 -0
  202. package/dist/siemens-ix/p-4c8d5207.entry.js.map +1 -0
  203. package/dist/siemens-ix/p-53c69375.entry.js +2 -0
  204. package/dist/siemens-ix/p-53c69375.entry.js.map +1 -0
  205. package/dist/siemens-ix/p-626b3af5.entry.js +2 -0
  206. package/dist/siemens-ix/p-626b3af5.entry.js.map +1 -0
  207. package/dist/siemens-ix/p-663724a8.entry.js +2 -0
  208. package/dist/siemens-ix/p-663724a8.entry.js.map +1 -0
  209. package/dist/siemens-ix/p-7fb5fa79.entry.js +2 -0
  210. package/dist/siemens-ix/p-7fb5fa79.entry.js.map +1 -0
  211. package/dist/siemens-ix/p-8fcd6f85.js.map +1 -1
  212. package/dist/siemens-ix/p-b998abe4.entry.js +2 -0
  213. package/dist/siemens-ix/p-b998abe4.entry.js.map +1 -0
  214. package/dist/siemens-ix/{p-24d2d95e.entry.js → p-c9c9f2b5.entry.js} +2 -2
  215. package/dist/siemens-ix/p-c9c9f2b5.entry.js.map +1 -0
  216. package/dist/siemens-ix/p-caae2fa5.entry.js +2 -0
  217. package/dist/siemens-ix/p-caae2fa5.entry.js.map +1 -0
  218. package/dist/siemens-ix/{p-01f9f803.entry.js → p-cdb54f7c.entry.js} +2 -2
  219. package/dist/siemens-ix/p-cdb54f7c.entry.js.map +1 -0
  220. package/dist/siemens-ix/{p-28f50519.entry.js → p-eb799bdd.entry.js} +2 -2
  221. package/dist/siemens-ix/p-eb799bdd.entry.js.map +1 -0
  222. package/dist/siemens-ix/siemens-ix.css +15 -0
  223. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  224. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  225. package/dist/types/components/blind/blind.d.ts +1 -0
  226. package/dist/types/components/category-filter/category-filter.d.ts +1 -0
  227. package/dist/types/components/date-picker/date-picker.d.ts +4 -3
  228. package/dist/types/components/group/group.d.ts +4 -0
  229. package/dist/types/components/modal/modal.d.ts +1 -0
  230. package/dist/types/components/modal-container/modal-container.d.ts +1 -0
  231. package/dist/types/components/pagination/pagination.d.ts +2 -0
  232. package/dist/types/components/select/select.d.ts +17 -1
  233. package/dist/types/components/tooltip/tooltip.d.ts +8 -0
  234. package/dist/types/components/utils/a11y.d.ts +1 -0
  235. package/dist/types/components/workflow-step/workflow-step.d.ts +9 -1
  236. package/dist/types/components/workflow-steps/workflow-steps.d.ts +6 -2
  237. package/dist/types/components.d.ts +49 -9
  238. package/dist/types/tests/utils/test/page.d.ts +5 -0
  239. package/loader/index.d.ts +1 -1
  240. package/package.json +5 -5
  241. package/scss/components/_forms.scss +6 -0
  242. package/dist/siemens-ix/p-01f9f803.entry.js.map +0 -1
  243. package/dist/siemens-ix/p-030078b4.entry.js +0 -2
  244. package/dist/siemens-ix/p-030078b4.entry.js.map +0 -1
  245. package/dist/siemens-ix/p-24d2d95e.entry.js.map +0 -1
  246. package/dist/siemens-ix/p-28f50519.entry.js.map +0 -1
  247. package/dist/siemens-ix/p-446a0a3f.entry.js +0 -2
  248. package/dist/siemens-ix/p-446a0a3f.entry.js.map +0 -1
  249. package/dist/siemens-ix/p-58ef1328.entry.js +0 -2
  250. package/dist/siemens-ix/p-58ef1328.entry.js.map +0 -1
  251. package/dist/siemens-ix/p-6facc3cc.entry.js +0 -2
  252. package/dist/siemens-ix/p-6facc3cc.entry.js.map +0 -1
  253. package/dist/siemens-ix/p-73f7ef87.entry.js +0 -2
  254. package/dist/siemens-ix/p-73f7ef87.entry.js.map +0 -1
  255. package/dist/siemens-ix/p-a4178e26.entry.js +0 -2
  256. package/dist/siemens-ix/p-a4178e26.entry.js.map +0 -1
  257. package/dist/siemens-ix/p-a92126b5.entry.js +0 -2
  258. package/dist/siemens-ix/p-a92126b5.entry.js.map +0 -1
  259. package/dist/siemens-ix/p-b64e82ce.entry.js +0 -2
  260. package/dist/siemens-ix/p-b64e82ce.entry.js.map +0 -1
@@ -6,9 +6,6 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- /*
10
- * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.
11
- */
12
9
  import { Fragment, h, Host, } from '@stencil/core';
13
10
  export class WorkflowStep {
14
11
  constructor() {
@@ -74,6 +71,11 @@ export class WorkflowStep {
74
71
  this.selectedHandler();
75
72
  this.customIconSlot = !!this.hostElement.querySelector('[slot="custom-icon"]');
76
73
  }
74
+ clickFunction() {
75
+ if (!this.disabled && this.clickable) {
76
+ this.selectedChanged.emit(this.hostElement);
77
+ }
78
+ }
77
79
  render() {
78
80
  const icons = !this.customIconSlot ? (h(Fragment, null, h("ix-icon", { color: "color-1", name: this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled', class: "absolute", size: "24" }), h("ix-icon", { color: this.iconColor, name: this.iconName, class: "absolute", size: "24" }))) : ('');
79
81
  return (h(Host, null, h("div", { tabIndex: 0, onClick: () => this.select(), class: {
@@ -196,14 +198,17 @@ export class WorkflowStep {
196
198
  "type": "string",
197
199
  "mutable": false,
198
200
  "complexType": {
199
- "original": "'first' | 'last' | 'undefined'",
200
- "resolved": "\"first\" | \"last\" | \"undefined\"",
201
+ "original": "'first' | 'last' | 'single' | 'undefined'",
202
+ "resolved": "\"first\" | \"last\" | \"single\" | \"undefined\"",
201
203
  "references": {}
202
204
  },
203
205
  "required": false,
204
206
  "optional": false,
205
207
  "docs": {
206
- "tags": [],
208
+ "tags": [{
209
+ "name": "deprecated",
210
+ "text": "Will be changed to '@internal' in 2.0.0"
211
+ }],
207
212
  "text": "Activate navigation click"
208
213
  },
209
214
  "attribute": "position",
@@ -218,6 +223,31 @@ export class WorkflowStep {
218
223
  "iconColor": {}
219
224
  };
220
225
  }
226
+ static get events() {
227
+ return [{
228
+ "method": "selectedChanged",
229
+ "name": "selectedChanged",
230
+ "bubbles": true,
231
+ "cancelable": true,
232
+ "composed": true,
233
+ "docs": {
234
+ "tags": [{
235
+ "name": "internal",
236
+ "text": undefined
237
+ }],
238
+ "text": ""
239
+ },
240
+ "complexType": {
241
+ "original": "HTMLIxWorkflowStepElement",
242
+ "resolved": "HTMLIxWorkflowStepElement",
243
+ "references": {
244
+ "HTMLIxWorkflowStepElement": {
245
+ "location": "global"
246
+ }
247
+ }
248
+ }
249
+ }];
250
+ }
221
251
  static get elementRef() { return "hostElement"; }
222
252
  static get watchers() {
223
253
  return [{
@@ -228,5 +258,14 @@ export class WorkflowStep {
228
258
  "methodName": "watchPropHandler"
229
259
  }];
230
260
  }
261
+ static get listeners() {
262
+ return [{
263
+ "name": "click",
264
+ "method": "clickFunction",
265
+ "target": undefined,
266
+ "capture": false,
267
+ "passive": true
268
+ }];
269
+ }
231
270
  }
232
271
  //# sourceMappingURL=workflow-step.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-step.js","sourceRoot":"","sources":["../../../src/components/workflow-step/workflow-step.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\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n scoped: true,\n})\nexport class WorkflowStep {\n @Element() hostElement: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop({ mutable: true }) selected: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() position: 'first' | 'last' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n private customIconSlot: boolean;\n\n private select() {\n if (!this.clickable) return;\n if (this.disabled) return;\n\n this.selected = true;\n this.selectedHandler();\n }\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentDidLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : (\n ''\n );\n\n return (\n <Host>\n <div\n tabIndex={0}\n onClick={() => this.select()}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"workflow-step.js","sourceRoot":"","sources":["../../../src/components/workflow-step/workflow-step.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 Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n scoped: true,\n})\nexport class WorkflowStep {\n @Element() hostElement: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop({ mutable: true }) selected: boolean = false;\n\n /**\n * Activate navigation click\n *\n * @deprecated Will be changed to '@internal' in 2.0.0\n */\n @Prop() position: 'first' | 'last' | 'single' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n /**\n * @internal\n */\n @Event() selectedChanged: EventEmitter<HTMLIxWorkflowStepElement>;\n\n private customIconSlot: boolean;\n\n private select() {\n if (!this.clickable) return;\n if (this.disabled) return;\n\n this.selected = true;\n this.selectedHandler();\n }\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentDidLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n @Listen('click', { passive: true })\n clickFunction() {\n if (!this.disabled && this.clickable) {\n this.selectedChanged.emit(this.hostElement);\n }\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : (\n ''\n );\n\n return (\n <Host>\n <div\n tabIndex={0}\n onClick={() => this.select()}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -6,9 +6,6 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- /*
10
- * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.
11
- */
12
9
  /*
13
10
  * SPDX-FileCopyrightText: 2023 Siemens AG
14
11
  *
@@ -6,10 +6,8 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- /*
10
- * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.
11
- */
12
9
  import { h, Host, } from '@stencil/core';
10
+ import { createMutationObserver } from '../utils/mutation-observer';
13
11
  export class WorkflowSteps {
14
12
  constructor() {
15
13
  this.vertical = false;
@@ -20,48 +18,56 @@ export class WorkflowSteps {
20
18
  getSteps() {
21
19
  return Array.from(this.hostElement.querySelectorAll('ix-workflow-step'));
22
20
  }
23
- deselectAll() {
24
- const steps = this.getSteps();
25
- steps.forEach((element) => {
26
- element.setAttribute('selected', 'false');
27
- });
21
+ get stepsContent() {
22
+ return this.hostElement.querySelector('.steps');
28
23
  }
29
- componentDidRender() {
30
- const steps = this.getSteps();
24
+ updateSteps() {
25
+ let steps = this.getSteps();
31
26
  steps.forEach((element, index) => {
32
- element.setAttribute('vertical', this.vertical === true ? 'true' : 'false');
33
- element.setAttribute('clickable', this.clickable === true ? 'true' : 'false');
34
- element.setAttribute('selected', this.selectedIndex === index ? 'true' : 'false');
35
- if (index === 0)
36
- element.setAttribute('position', 'first');
37
- if (index === steps.length - 1)
38
- element.setAttribute('position', 'last');
27
+ element.vertical = this.vertical;
28
+ element.clickable = this.clickable;
29
+ element.selected = this.selectedIndex === index;
30
+ if (steps.length === 1) {
31
+ element.position = 'single';
32
+ return;
33
+ }
34
+ if (index === 0) {
35
+ element.position = 'first';
36
+ }
37
+ else if (index === steps.length - 1) {
38
+ element.position = 'last';
39
+ }
40
+ else {
41
+ element.position = 'undefined';
42
+ }
39
43
  });
40
44
  }
41
- componentWillRender() {
42
- const steps = this.getSteps();
43
- steps.forEach((element, index) => {
44
- element.addEventListener('click', () => {
45
- if (!this.clickable)
46
- return;
47
- const previousElement = steps[index - 1];
48
- if (this.linear &&
49
- previousElement &&
50
- !['done', 'success'].includes(previousElement === null || previousElement === void 0 ? void 0 : previousElement.status)) {
51
- return element.setAttribute('selected', 'false');
45
+ componentDidLoad() {
46
+ this.stepsContent.addEventListener('selectedChanged', (event) => {
47
+ const steps = this.getSteps();
48
+ steps.forEach((element) => {
49
+ if (element !== event.target) {
50
+ element.selected = false;
52
51
  }
53
- this.deselectAll();
54
- element.setAttribute('selected', 'true');
55
- this.stepSelected.emit(index);
56
52
  });
57
- // const isEnabled = element.getAttribute('first');
58
- // if(isEnabled){
59
- // }
60
- // console.log(isEnabled)
61
- // const isDisabled = element.getAttribute('disabled') !== null;
62
- // if (!isDisabled) element.addEventListener('click', () => '');
63
- //element.addEventListener('mousedown', event => this.clicked(element, index));
64
53
  });
54
+ const slotDiv = this.hostElement.querySelector('.steps');
55
+ this.observer = createMutationObserver((mutations) => {
56
+ for (let mutation of mutations) {
57
+ if (mutation.type === 'childList') {
58
+ this.updateSteps();
59
+ }
60
+ }
61
+ });
62
+ this.observer.observe(slotDiv, { childList: true });
63
+ }
64
+ disconnectedCallback() {
65
+ if (this.observer) {
66
+ this.observer.disconnect();
67
+ }
68
+ }
69
+ componentDidRender() {
70
+ this.updateSteps();
65
71
  }
66
72
  render() {
67
73
  return (h(Host, null, h("div", { class: { steps: true, vertical: this.vertical } }, h("slot", null))));
@@ -109,7 +115,10 @@ export class WorkflowSteps {
109
115
  "required": false,
110
116
  "optional": false,
111
117
  "docs": {
112
- "tags": [],
118
+ "tags": [{
119
+ "name": "deprecated",
120
+ "text": "Has no effect on component. Will get removed in 2.0.0"
121
+ }],
113
122
  "text": "Select linear mode"
114
123
  },
115
124
  "attribute": "linear",
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-steps.js","sourceRoot":"","sources":["../../../src/components/workflow-steps/workflow-steps.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\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-steps',\n styleUrl: 'workflow-steps.scss',\n scoped: true,\n})\nexport class WorkflowSteps {\n @Element() hostElement!: HTMLIxWorkflowStepsElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Select linear mode\n */\n @Prop() linear: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() selectedIndex: number = 0;\n\n /**\n * On step selected event\n */\n @Event() stepSelected: EventEmitter<number>;\n\n private getSteps() {\n return Array.from(this.hostElement.querySelectorAll('ix-workflow-step'));\n }\n\n private deselectAll() {\n const steps = this.getSteps();\n steps.forEach((element) => {\n element.setAttribute('selected', 'false');\n });\n }\n\n componentDidRender() {\n const steps = this.getSteps();\n\n steps.forEach((element, index) => {\n element.setAttribute(\n 'vertical',\n this.vertical === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'clickable',\n this.clickable === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'selected',\n this.selectedIndex === index ? 'true' : 'false'\n );\n if (index === 0) element.setAttribute('position', 'first');\n if (index === steps.length - 1) element.setAttribute('position', 'last');\n });\n }\n\n componentWillRender() {\n const steps = this.getSteps();\n steps.forEach((element, index) => {\n element.addEventListener('click', () => {\n if (!this.clickable) return;\n const previousElement = steps[index - 1];\n if (\n this.linear &&\n previousElement &&\n !['done', 'success'].includes(previousElement?.status)\n ) {\n return element.setAttribute('selected', 'false');\n }\n this.deselectAll();\n element.setAttribute('selected', 'true');\n this.stepSelected.emit(index);\n });\n // const isEnabled = element.getAttribute('first');\n // if(isEnabled){\n\n // }\n // console.log(isEnabled)\n // const isDisabled = element.getAttribute('disabled') !== null;\n // if (!isDisabled) element.addEventListener('click', () => '');\n //element.addEventListener('mousedown', event => this.clicked(element, index));\n });\n }\n\n render() {\n return (\n <Host>\n <div class={{ steps: true, vertical: this.vertical }}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"workflow-steps.js","sourceRoot":"","sources":["../../../src/components/workflow-steps/workflow-steps.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\nimport { createMutationObserver } from '../utils/mutation-observer';\n\n@Component({\n tag: 'ix-workflow-steps',\n styleUrl: 'workflow-steps.scss',\n scoped: true,\n})\nexport class WorkflowSteps {\n @Element() hostElement!: HTMLIxWorkflowStepsElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Select linear mode\n * @deprecated Has no effect on component. Will get removed in 2.0.0\n */\n @Prop() linear: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() selectedIndex: number = 0;\n\n /**\n * On step selected event\n */\n @Event() stepSelected: EventEmitter<number>;\n\n private getSteps() {\n return Array.from(this.hostElement.querySelectorAll('ix-workflow-step'));\n }\n\n get stepsContent() {\n return this.hostElement.querySelector('.steps');\n }\n\n updateSteps() {\n let steps = this.getSteps();\n steps.forEach((element, index) => {\n element.vertical = this.vertical;\n element.clickable = this.clickable;\n element.selected = this.selectedIndex === index;\n\n if (steps.length === 1) {\n element.position = 'single';\n return;\n }\n\n if (index === 0) {\n element.position = 'first';\n } else if (index === steps.length - 1) {\n element.position = 'last';\n } else {\n element.position = 'undefined';\n }\n });\n }\n\n private observer: MutationObserver;\n\n componentDidLoad() {\n this.stepsContent.addEventListener(\n 'selectedChanged',\n (event: CustomEvent<HTMLIxWorkflowStepElement>) => {\n const steps = this.getSteps();\n steps.forEach((element) => {\n if (element !== event.target) {\n element.selected = false;\n }\n });\n }\n );\n\n const slotDiv = this.hostElement.querySelector('.steps');\n\n this.observer = createMutationObserver((mutations) => {\n for (let mutation of mutations) {\n if (mutation.type === 'childList') {\n this.updateSteps();\n }\n }\n });\n\n this.observer.observe(slotDiv, { childList: true });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n componentDidRender() {\n this.updateSteps();\n }\n\n render() {\n return (\n <Host>\n <div class={{ steps: true, vertical: this.vertical }}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -15,7 +15,6 @@ async function extendPageFixture(page, testInfo) {
15
15
  });
16
16
  page.goto = async (url, options) => {
17
17
  const response = await originalGoto(`http://127.0.0.1:8080/src/tests/${url}?theme=${theme}`, options);
18
- // Inital timeout for webKit to render Web Components
19
18
  await page.waitForTimeout(1000);
20
19
  return response;
21
20
  };
@@ -27,4 +26,33 @@ export const regressionTest = base.extend({
27
26
  await use(page);
28
27
  },
29
28
  });
29
+ export const test = base.extend({
30
+ createElement: async ({ page }, use) => {
31
+ use((selector, appendTo) => page.evaluateHandle(async ({ selector, appendTo }) => {
32
+ const elm = document.createElement(selector);
33
+ if (appendTo) {
34
+ appendTo.appendChild(elm);
35
+ }
36
+ return elm;
37
+ }, {
38
+ selector,
39
+ appendTo,
40
+ }));
41
+ },
42
+ mount: async ({ page }, use, testInfo) => {
43
+ const theme = testInfo.project.metadata.theme;
44
+ testInfo.annotations.push({
45
+ type: theme,
46
+ });
47
+ await page.goto(`http://127.0.0.1:8080/src/tests/utils/ct/index.html?theme=${theme}`);
48
+ use((selector) => {
49
+ return page.evaluateHandle(async ({ componentSelector }) => {
50
+ await window.customElements.whenDefined('ix-button');
51
+ const mount = document.querySelector('#mount');
52
+ mount.innerHTML = componentSelector;
53
+ return mount.children.item(0);
54
+ }, { componentSelector: selector });
55
+ });
56
+ },
57
+ });
30
58
  //# sourceMappingURL=page.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../src/tests/utils/test/page.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,IAAI,IAAI,IAAI,EAAY,MAAM,kBAAkB,CAAC;AAEhE,KAAK,UAAU,iBAAiB,CAAC,IAAU,EAAE,QAAkB;EAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;EAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;EAC9C,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;IACxB,IAAI,EAAE,KAAK;GACZ,CAAC,CAAC;EACH,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,GAAW,EAAE,OAAO,EAAE,EAAE;IACzC,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC,mCAAmC,GAAG,UAAU,KAAK,EAAE,EACvD,OAAO,CACR,CAAC;IAEF,qDAAqD;IACrD,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,QAAQ,CAAC;EAClB,CAAC,CAAC;EAEF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;EACxC,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;IACtC,IAAI,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;EAClB,CAAC;CACF,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\nimport { Page, test as base, TestInfo } from '@playwright/test';\n\nasync function extendPageFixture(page: Page, testInfo: TestInfo) {\n const originalGoto = page.goto.bind(page);\n const theme = testInfo.project.metadata.theme;\n testInfo.annotations.push({\n type: theme,\n });\n page.goto = async (url: string, options) => {\n const response = await originalGoto(\n `http://127.0.0.1:8080/src/tests/${url}?theme=${theme}`,\n options\n );\n\n // Inital timeout for webKit to render Web Components\n await page.waitForTimeout(1000);\n return response;\n };\n\n return page;\n}\n\nexport const regressionTest = base.extend({\n page: async ({ page }, use, testInfo) => {\n page = await extendPageFixture(page, testInfo);\n await use(page);\n },\n});\n"]}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../src/tests/utils/test/page.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAuB,IAAI,IAAI,IAAI,EAAY,MAAM,kBAAkB,CAAC;AAE/E,KAAK,UAAU,iBAAiB,CAAC,IAAU,EAAE,QAAkB;EAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;EAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;EAC9C,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;IACxB,IAAI,EAAE,KAAK;GACZ,CAAC,CAAC;EACH,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,GAAW,EAAE,OAAO,EAAE,EAAE;IACzC,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC,mCAAmC,GAAG,UAAU,KAAK,EAAE,EACvD,OAAO,CACR,CAAC;IAEF,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,QAAQ,CAAC;EAClB,CAAC,CAAC;EAEF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;EACxC,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;IACtC,IAAI,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;EAClB,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAM5B;EACD,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;IACrC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CACzB,IAAI,CAAC,cAAc,CACjB,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;MAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;MAE7C,IAAI,QAAQ,EAAE;QACZ,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;OAC3B;MAED,OAAO,GAAG,CAAC;IACb,CAAC,EACD;MACE,QAAQ;MACR,QAAQ;KACT,CACF,CACF,CAAC;EACJ,CAAC;EACD,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;IACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC9C,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;MACxB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,IAAI,CACb,6DAA6D,KAAK,EAAE,CACrE,CAAC;IACF,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;MACf,OAAO,IAAI,CAAC,cAAc,CACxB,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE;QAC9B,MAAM,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC;QACpC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAgB,CAAC;MAC/C,CAAC,EACD,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAChC,CAAC;IACJ,CAAC,CAAC,CAAC;EACL,CAAC;CACF,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 { ElementHandle, Page, test as base, TestInfo } from '@playwright/test';\n\nasync function extendPageFixture(page: Page, testInfo: TestInfo) {\n const originalGoto = page.goto.bind(page);\n const theme = testInfo.project.metadata.theme;\n testInfo.annotations.push({\n type: theme,\n });\n page.goto = async (url: string, options) => {\n const response = await originalGoto(\n `http://127.0.0.1:8080/src/tests/${url}?theme=${theme}`,\n options\n );\n\n await page.waitForTimeout(1000);\n return response;\n };\n\n return page;\n}\n\nexport const regressionTest = base.extend({\n page: async ({ page }, use, testInfo) => {\n page = await extendPageFixture(page, testInfo);\n await use(page);\n },\n});\n\nexport const test = base.extend<{\n mount: (selector: string) => Promise<ElementHandle<HTMLElement>>;\n createElement: (\n selector: string,\n appendTo?: ElementHandle<Element>\n ) => Promise<ElementHandle<HTMLElement>>;\n}>({\n createElement: async ({ page }, use) => {\n use((selector, appendTo) =>\n page.evaluateHandle(\n async ({ selector, appendTo }) => {\n const elm = document.createElement(selector);\n\n if (appendTo) {\n appendTo.appendChild(elm);\n }\n\n return elm;\n },\n {\n selector,\n appendTo,\n }\n )\n );\n },\n mount: async ({ page }, use, testInfo) => {\n const theme = testInfo.project.metadata.theme;\n testInfo.annotations.push({\n type: theme,\n });\n await page.goto(\n `http://127.0.0.1:8080/src/tests/utils/ct/index.html?theme=${theme}`\n );\n use((selector) => {\n return page.evaluateHandle(\n async ({ componentSelector }) => {\n await window.customElements.whenDefined('ix-button');\n const mount = document.querySelector('#mount');\n mount.innerHTML = componentSelector;\n return mount.children.item(0) as HTMLElement;\n },\n { componentSelector: selector }\n );\n });\n },\n});\n"]}
@@ -4,7 +4,7 @@ import { d as defineCustomElement$1 } from './burger-menu.js';
4
4
 
5
5
  const applicationHeaderCss = ":host{display:flex;align-items:center;position:relative;width:100%;height:2.75rem;padding-left:1rem;color:var(--theme-app-header--color);background-color:var(--theme-app-header--background);border-bottom:var(--theme-app-header--border-width) solid var(--theme-app-header--border-color)}:host .name{margin-left:2.5rem;margin-right:2.5rem;color:var(--theme-app-header--color)}:host .logo{display:inline-flex;align-items:center;position:relative;height:32px;overflow:hidden;line-height:0rem;color:var(--theme-app-header-logo--color)}:host(.mode-mobile){padding-left:0.5rem}:host(.mode-mobile) .logo{margin-left:0.5rem}";
6
6
 
7
- const ApplicationHeader = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ const ApplicationHeader = /*@__PURE__*/ proxyCustomElement(class ApplicationHeader extends HTMLElement {
8
8
  constructor() {
9
9
  super();
10
10
  this.__registerHost();
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
 
3
3
  const burgerMenuCss = ":host{display:flex;justify-content:center;align-items:center;height:2rem;width:2.5rem;border-radius:var(--theme-btn--border-radius)}:host svg{display:inline-block;position:relative}:host .line{fill:var(--theme-menu-btn--color);opacity:1;x:2px;transition:x 0.075s ease-in 0.15s, transform 0.075s ease-in-out 0.075s, y 0.075s ease-in-out, opacity 0.075s linear 0.075s;transform-origin:center}:host(:hover){background-color:var(--theme-menu-btn--background--hover);border-radius:var(--theme-btn--border-radius)}:host(:active){background-color:var(--theme-menu-btn--background--active);border-radius:var(--theme-btn--border-radius)}:host(.expanded) svg .line-1{opacity:1;transform:rotate(-45deg);y:11px}:host(.expanded) svg .line-2{opacity:0;x:9}:host(.expanded) svg .line-3{opacity:1;transform:rotate(45deg);y:11px}";
4
4
 
5
- const BurgerMenu = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
5
+ const BurgerMenu = /*@__PURE__*/ proxyCustomElement(class BurgerMenu extends HTMLElement {
6
6
  constructor() {
7
7
  super();
8
8
  this.__registerHost();
@@ -3,7 +3,7 @@ import { g as getButtonClasses } from './base-button.js';
3
3
 
4
4
  const buttonCss = ".sc-ix-button-h{display:inline-block;width:auto;height:2rem}.disabled.sc-ix-button-h{pointer-events:none}.sc-ix-button-h .btn.sc-ix-button{width:100%;height:100%}";
5
5
 
6
- const Button = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ const Button = /*@__PURE__*/ proxyCustomElement(class Button extends HTMLElement {
7
7
  constructor() {
8
8
  super();
9
9
  this.__registerHost();
@@ -6,9 +6,9 @@ import { d as defineCustomElement$3 } from './dropdown.js';
6
6
  import { d as defineCustomElement$2 } from './icon.js';
7
7
  import { d as defineCustomElement$1 } from './icon-button.js';
8
8
 
9
- const datePickerCss = ".sc-ix-date-picker-h .header.sc-ix-date-picker{display:flex;align-items:center;justify-content:space-between}.sc-ix-date-picker-h .selector.sc-ix-date-picker{flex-basis:100%;display:flex;align-items:center;justify-content:center;padding:0.25rem 1rem}.sc-ix-date-picker-h .selector.sc-ix-date-picker .dropdown.sc-ix-date-picker{color:var(--theme-menu-item--color);font-size:14px;line-height:20px}.sc-ix-date-picker-h .selector.sc-ix-date-picker .fontSize.sc-ix-date-picker{font-size:16px}.sc-ix-date-picker-h .selector.sc-ix-date-picker .capitalize.sc-ix-date-picker{text-transform:capitalize}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker{display:flex;position:relative;padding:0.75rem 2rem;align-items:center;cursor:pointer}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker:hover{background-color:var(--theme-select-list-item--background--hover)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.selected.sc-ix-date-picker{background-color:var(--theme-select-list-item--background--selected)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .arrowPosition.sc-ix-date-picker{position:absolute;left:calc(1rem - 6px);top:calc(50% - 6px)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .checkPosition.sc-ix-date-picker{position:absolute;left:calc(1rem - 6px);top:calc(50% - 8px)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .monthMargin.sc-ix-date-picker{margin-left:10px}.sc-ix-date-picker-h .wrapper.sc-ix-date-picker{display:flex}.sc-ix-date-picker-h .wrapper.sc-ix-date-picker .overflow.sc-ix-date-picker{overflow-y:scroll;max-height:250px}.sc-ix-date-picker-h .grid.sc-ix-date-picker{display:grid;grid-template-columns:repeat(8, 40px);grid-template-rows:repeat(7, 40px);align-items:center;justify-items:center;justify-content:center;color:var(--theme-datepicker-today--color)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker{position:relative;display:flex;justify-content:center;align-items:center;background-color:var(--theme-datepicker-day--background);border:1px solid var(--theme-datepicker-day--background);width:40px;height:40px;cursor:pointer}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker{border:1px solid var(--theme-datepicker-today--border-color)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker{box-shadow:inset 0 0 0 1px white}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--selected-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);border:1px solid var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range);border:1px solid var(--theme-datepicker-today--border-color--range);box-shadow:inset 0 0 0 1px white}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--range-hover);border:1px solid var(--theme-datepicker-today--border-color--range-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--range-active);border:1px solid var(--theme-datepicker-today--border-color--range-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.disabled.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled);border:1px solid var(--theme-datepicker-today--border-color--range-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default;pointer-events:none}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--selected);color:var(--theme-datepicker-day--color--selected);border:1px solid var(--theme-datepicker-day--background--selected)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--selected-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--range-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--range-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.week-day.sc-ix-date-picker{color:var(--theme-datepicker-weekday--color);font-size:12px;line-height:20px;border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.empty-day.sc-ix-date-picker{border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.week-number.sc-ix-date-picker{font-size:10px;line-height:14px;color:var(--theme-datepicker-ix--color);border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:focus-visible{background-color:var(--theme-datepicker-day--background--selected);border:inset 1px solid var(--theme-datepicker-day--border-color--selected);color:var(--theme-datepicker-day--color--selected);font-size:14px;line-height:20px;letter-spacing:0}.sc-ix-date-picker-h .button.sc-ix-date-picker{display:flex;justify-content:flex-end}.sc-ix-date-picker-h .hidden.sc-ix-date-picker{display:none}";
9
+ const datePickerCss = ".sc-ix-date-picker-h ix-date-time-card.sc-ix-date-picker{display:inline-block}.sc-ix-date-picker-h .header.sc-ix-date-picker{display:flex;align-items:center;justify-content:space-between}.sc-ix-date-picker-h .selector.sc-ix-date-picker{flex-basis:100%;display:flex;align-items:center;justify-content:center;padding:0.25rem 1rem}.sc-ix-date-picker-h .selector.sc-ix-date-picker .dropdown.sc-ix-date-picker{color:var(--theme-menu-item--color);font-size:14px;line-height:20px}.sc-ix-date-picker-h .selector.sc-ix-date-picker .fontSize.sc-ix-date-picker{font-size:16px}.sc-ix-date-picker-h .selector.sc-ix-date-picker .capitalize.sc-ix-date-picker{text-transform:capitalize}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker{display:flex;position:relative;padding:0.75rem 2rem;align-items:center;cursor:pointer}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker:hover{background-color:var(--theme-select-list-item--background--hover)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.selected.sc-ix-date-picker{background-color:var(--theme-select-list-item--background--selected)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .arrowPosition.sc-ix-date-picker{position:absolute;left:calc(1rem - 6px);top:calc(50% - 6px)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .checkPosition.sc-ix-date-picker{position:absolute;left:calc(1rem - 6px);top:calc(50% - 8px)}.sc-ix-date-picker-h .selector.sc-ix-date-picker .arrowYear.sc-ix-date-picker .monthMargin.sc-ix-date-picker{margin-left:10px}.sc-ix-date-picker-h .wrapper.sc-ix-date-picker{display:flex}.sc-ix-date-picker-h .wrapper.sc-ix-date-picker .overflow.sc-ix-date-picker{overflow-y:scroll;max-height:250px}.sc-ix-date-picker-h .grid.sc-ix-date-picker{display:grid;grid-template-columns:repeat(8, 40px);grid-template-rows:repeat(7, 40px);align-items:center;justify-items:center;justify-content:center;color:var(--theme-datepicker-today--color)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker{position:relative;display:flex;justify-content:center;align-items:center;background-color:var(--theme-datepicker-day--background);border:1px solid var(--theme-datepicker-day--background);width:40px;height:40px;cursor:pointer}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker{border:1px solid var(--theme-datepicker-today--border-color)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker{box-shadow:inset 0 0 0 1px white}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--selected-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.selected.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);border:1px solid var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range);border:1px solid var(--theme-datepicker-today--border-color--range);box-shadow:inset 0 0 0 1px white}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--range-hover);border:1px solid var(--theme-datepicker-today--border-color--range-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--range-active);border:1px solid var(--theme-datepicker-today--border-color--range-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.range.disabled.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled);border:1px solid var(--theme-datepicker-today--border-color--range-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.today.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default;pointer-events:none}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--selected);color:var(--theme-datepicker-day--color--selected);border:1px solid var(--theme-datepicker-day--background--selected)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--selected-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.selected.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker:hover{background-color:var(--theme-datepicker-day--background--range-hover)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.sc-ix-date-picker:active{background-color:var(--theme-datepicker-day--background--range-active)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.range.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.disabled.sc-ix-date-picker{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled)}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.week-day.sc-ix-date-picker{color:var(--theme-datepicker-weekday--color);font-size:12px;line-height:20px;border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.empty-day.sc-ix-date-picker{border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.week-number.sc-ix-date-picker{font-size:10px;line-height:14px;color:var(--theme-datepicker-ix--color);border:none;background:none;cursor:initial}.sc-ix-date-picker-h .grid.sc-ix-date-picker .calendar-item.sc-ix-date-picker:focus-visible{background-color:var(--theme-datepicker-day--background--selected);border:inset 1px solid var(--theme-datepicker-day--border-color--selected);color:var(--theme-datepicker-day--color--selected);font-size:14px;line-height:20px;letter-spacing:0}.sc-ix-date-picker-h .button.sc-ix-date-picker{display:flex;justify-content:flex-end}.sc-ix-date-picker-h .hidden.sc-ix-date-picker{display:none}";
10
10
 
11
- const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
11
+ const DatePicker = /*@__PURE__*/ proxyCustomElement(class DatePicker extends HTMLElement {
12
12
  constructor() {
13
13
  super();
14
14
  this.__registerHost();
@@ -48,13 +48,22 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
48
48
  this.yearContainerRef = undefined;
49
49
  }
50
50
  get year() {
51
- return luxon.DateTime.fromFormat(this.from, this.format).year;
51
+ if (this.from !== null) {
52
+ return luxon.DateTime.fromFormat(this.from, this.format).year;
53
+ }
54
+ return luxon.DateTime.now().year;
52
55
  }
53
56
  get day() {
54
- return luxon.DateTime.fromFormat(this.from, this.format).day;
57
+ if (this.from !== null) {
58
+ return luxon.DateTime.fromFormat(this.from, this.format).day;
59
+ }
60
+ return null;
55
61
  }
56
62
  get month() {
57
- return luxon.DateTime.fromFormat(this.from, this.format).month;
63
+ if (this.from !== null) {
64
+ return luxon.DateTime.fromFormat(this.from, this.format).month;
65
+ }
66
+ return luxon.DateTime.now().month;
58
67
  }
59
68
  onDone() {
60
69
  var _a, _b;
@@ -65,20 +74,24 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
65
74
  });
66
75
  }
67
76
  onDateChange() {
68
- var _a, _b, _c, _d;
77
+ var _a, _b;
78
+ const from = (_a = this.start) === null || _a === void 0 ? void 0 : _a.toFormat(this.format);
79
+ const to = (_b = this.end) === null || _b === void 0 ? void 0 : _b.toFormat(this.format);
80
+ this.from = from;
81
+ this.to = to;
69
82
  if (this.eventDelimiter) {
70
83
  this.dateChange.emit(this.getOutputFormat());
71
84
  }
72
85
  else {
73
86
  this.dateChange.emit({
74
- from: (_a = this.start) === null || _a === void 0 ? void 0 : _a.toFormat(this.format),
75
- to: (_b = this.end) === null || _b === void 0 ? void 0 : _b.toFormat(this.format),
87
+ from,
88
+ to,
76
89
  });
77
90
  }
78
91
  if (this.range) {
79
92
  this.dateRangeChange.emit({
80
- from: (_c = this.start) === null || _c === void 0 ? void 0 : _c.toFormat(this.format),
81
- to: (_d = this.end) === null || _d === void 0 ? void 0 : _d.toFormat(this.format),
93
+ from,
94
+ to,
82
95
  });
83
96
  }
84
97
  }
@@ -174,54 +187,57 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
174
187
  event.stopPropagation();
175
188
  this.tempYear = year;
176
189
  }
177
- todayClass(day) {
178
- const today = luxon.DateTime.local();
179
- const daaay = luxon.DateTime.local(this.yearValue, this.monthValue, day);
180
- const isToday = Math.ceil(daaay.diff(today, 'days').days) === 0;
190
+ getDayClasses(day) {
191
+ var _a, _b;
192
+ if (!day) {
193
+ return;
194
+ }
195
+ const todayLocal = luxon.DateTime.local();
196
+ const dayLocal = luxon.DateTime.local(this.yearValue, this.monthValue, day);
197
+ const dayIso = dayLocal.toISO();
198
+ const startIso = (_a = this.start) === null || _a === void 0 ? void 0 : _a.toISO();
199
+ const endIso = (_b = this.end) === null || _b === void 0 ? void 0 : _b.toISO();
200
+ const isToday = Math.ceil(dayLocal.diff(todayLocal, 'days').days) === 0;
181
201
  return {
182
202
  'calendar-item': true,
183
203
  'empty-day': day === undefined,
184
204
  today: isToday,
185
- selected: (this.start && daaay.toISO() === this.start.toISO()) ||
186
- (this.end && daaay.toISO() === this.end.toISO()),
187
- range: this.start &&
188
- this.end &&
189
- daaay.toISO() > this.start.toISO() &&
190
- daaay.toISO() < this.end.toISO(),
191
- disabled: !this.isWithinMinMax(daaay) ||
192
- (this.start &&
193
- daaay.toISO() < this.start.toISO() &&
194
- this.end === null &&
195
- this.range),
205
+ selected: (this.start && dayIso === startIso) || (this.end && dayIso === endIso),
206
+ range: this.start && this.end && dayIso > startIso && dayIso < endIso,
207
+ disabled: !this.isWithinMinMax(dayLocal),
196
208
  };
197
209
  }
198
210
  selectDay(day) {
199
211
  const date = luxon.DateTime.local(this.yearValue, this.monthValue, day);
200
- const isNotDay = day === undefined;
201
- const isFirstDay = this.start === null;
202
- const isLastDay = this.end === null;
203
- const isPeriod = this.start !== null && this.end !== null;
204
212
  const isStartBeforeEnd = this.start && this.start.toISO() < date.toISO();
205
213
  const isSameDay = this.start && !this.end && this.start.toISO() === date.toISO();
206
- if (isNotDay)
214
+ if (day === undefined)
207
215
  return;
208
216
  if (isSameDay) {
209
217
  this.start = null;
210
218
  this.onDateChange();
211
219
  return;
212
220
  }
213
- if (!this.range) {
214
- this.start = date;
215
- }
216
- if (this.range && isFirstDay) {
217
- this.start = date;
218
- }
219
- if (this.range && isLastDay && isStartBeforeEnd) {
220
- this.end = date;
221
+ if (this.range) {
222
+ if (this.start === null) {
223
+ this.start = date;
224
+ }
225
+ else if (this.end === null) {
226
+ if (isStartBeforeEnd) {
227
+ this.end = date;
228
+ }
229
+ else {
230
+ this.end = this.start;
231
+ this.start = date;
232
+ }
233
+ }
234
+ else {
235
+ this.start = date;
236
+ this.end = null;
237
+ }
221
238
  }
222
- if (this.range && isPeriod) {
239
+ else {
223
240
  this.start = date;
224
- this.end = null;
225
241
  }
226
242
  this.onDateChange();
227
243
  }
@@ -249,6 +265,9 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
249
265
  (!_maxDate || _maxDate.toISO() >= dateIso));
250
266
  }
251
267
  componentWillLoad() {
268
+ if (this.from === null) {
269
+ this.start = null;
270
+ }
252
271
  if (this.year !== null) {
253
272
  this.yearValue = this.year;
254
273
  }
@@ -270,17 +289,17 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
270
289
  };
271
290
  }
272
291
  render() {
273
- return (h(Host, null, h("ix-date-time-card", { individual: this.individual, corners: this.corners }, h("div", { class: "header", slot: "header" }, h("ix-icon-button", { onClick: () => this.changeMonth(-1), ghost: true, icon: "chevron-left", variant: "Primary", class: "arrows" }), h("div", { class: "selector" }, h("ix-button", { ghost: true, ref: (ref) => (this.dropdownButtonRef = ref) }, h("span", { class: "fontSize capitalize" }, this.monthNames[this.monthValue - 1], " ", this.yearValue)), h("ix-dropdown", { class: "dropdown", trigger: this.dropdownButtonRef, placement: "bottom" }, h("div", { class: "wrapper" }, h("div", { class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: (ref) => (this.yearContainerRef = ref) }, this.years.map((year) => (h("div", { class: { arrowYear: true }, onClick: (event) => this.selectTempYear(event, year) }, h("ix-icon", { class: {
292
+ return (h(Host, null, h("ix-date-time-card", { individual: this.individual, corners: this.corners }, h("div", { class: "header", slot: "header" }, h("ix-icon-button", { onClick: () => this.changeMonth(-1), ghost: true, icon: "chevron-left", variant: "Primary", class: "arrows" }), h("div", { class: "selector" }, h("ix-button", { ghost: true, ref: (ref) => (this.dropdownButtonRef = ref) }, h("span", { class: "fontSize capitalize" }, this.monthNames[this.monthValue - 1], " ", this.yearValue)), h("ix-dropdown", { class: "dropdown", trigger: this.dropdownButtonRef, placement: "bottom" }, h("div", { class: "wrapper" }, h("div", { class: "overflow", onScroll: () => this.infiniteScrollYears(), ref: (ref) => (this.yearContainerRef = ref) }, this.years.map((year) => (h("div", { key: year, class: { arrowYear: true }, onClick: (event) => this.selectTempYear(event, year) }, h("ix-icon", { class: {
274
293
  hidden: this.tempYear !== year,
275
294
  arrowPosition: true,
276
- }, name: "chevron-right", size: "12" }), h("div", { style: { 'min-width': 'max-content' } }, `${year}`))))), h("div", { class: "overflow" }, this.monthNames.map((month, index) => (h("div", { class: {
295
+ }, name: "chevron-right", size: "12" }), h("div", { style: { 'min-width': 'max-content' } }, `${year}`))))), h("div", { class: "overflow" }, this.monthNames.map((month, index) => (h("div", { key: month, class: {
277
296
  arrowYear: true,
278
297
  selected: this.tempMonth - 1 === index,
279
298
  }, onClick: () => this.selectMonth((index + 1)) }, h("ix-icon", { class: {
280
299
  hidden: this.tempMonth - 1 !== index,
281
300
  checkPosition: true,
282
- }, name: "single-check", size: "16" }), h("div", null, h("span", { class: { capitalize: true, monthMargin: true } }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { onClick: () => this.changeMonth(1), ghost: true, icon: "chevron-right", variant: "Primary", class: "arrows" })), h("div", { class: "grid" }, h("div", { class: "calendar-item week-day" }), this.dayNames.map((name) => (h("div", { class: "calendar-item week-day" }, name.slice(0, 3)))), this.calendar.map((week) => {
283
- return (h(Fragment, null, h("div", { class: "calendar-item week-number" }, week[0]), week[1].map((day) => (h("div", { class: this.todayClass(day), onClick: () => this.selectDay(day) }, day)))));
301
+ }, name: "single-check", size: "16" }), h("div", null, h("span", { class: { capitalize: true, monthMargin: true } }, `${month} ${this.tempYear}`))))))))), h("ix-icon-button", { onClick: () => this.changeMonth(1), ghost: true, icon: "chevron-right", variant: "Primary", class: "arrows" })), h("div", { class: "grid" }, h("div", { 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) => {
302
+ return (h(Fragment, null, h("div", { class: "calendar-item week-number" }, week[0]), week[1].map((day) => (h("div", { key: day, class: this.getDayClasses(day), onClick: () => this.selectDay(day) }, day)))));
284
303
  })), h("div", { class: { button: true, hidden: !this.individual } }, h("ix-button", { onClick: () => this.onDone() }, this.textSelectDate)))));
285
304
  }
286
305
  static get style() { return datePickerCss; }